Воскресенье, 20.08.2017, 14:47

..



Главная Регистрация Вход
Приветствую Вас, Гость · Браузер: « v»
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Всё об «Электроника БК0010(-01), БК0011(М)»! » Железо » Носители информации » Жёсткий диск 3'5 (HDD 3'5) » СМК.Режимы работы и распределение памяти (СМК)
СМК.Режимы работы и распределение памяти
CD-IncДата: Среда, 13.02.2013, 21:51 | Сообщение # 1
Оператор Машинного Доения
Группа: Администраторы
Сообщений: 28
Репутация: 2
Статус: Offline
дока PDF

СМК. Режимы работы и распределение памяти.

Память в контроллерах "АльтПро" разбита на страницы по 32 Кб, части (сегменты) одной такой страницы подключаются в области адресов
100000-177777, сегменты разных страниц одновременно подключить нельзя. Сегментами ниже называются фрагменты памяти по 10000 байт.
Сегмент с номером X=0...7 может быть подключен либо с адреса 1X0000, либо с адреса 1X0000+-40000 в зависимости от номера режима.
Распределение памяти в различных режимах приведено в табл.1, затем следуют пояснения общего характера, которые рекомендуется
прочитать, и примечания специального характера, которые понадобятся тем, кто пишет некорректные программы; тем, кто пишет корректные
программы, рекомендуем пользоваться запросами BIOS, значительно упрощающими работу с доп. памятью и предотвращающими конфликты.


ПОЯСНЕНИЯ

Буква 'W' после номера сегмента означает, что ОЗУ доступно только по записи, 'R' - только по чтению, через дробную черту - старая
версия контроллеров / новая (по номеру версии ПЗУ не определяется), '-' - не подключается ничего.
ПЗУ в контроллерах имеет объем 10000 байт, в режиме SYS одно и то же ПЗУ подключается и со 160000, и со 170000 (благодаря этому
изменяется адрес запуска компьютера).
В контроллерах "SMK" ("винтовых")  во  всех  режимах,  кроме SYS, в адресах 170000-177000 подключено ОЗУ, в дисководных - нет,
выше 177000 - во всех одинаково.
Внутри таблицы в рамки выделены группы режимов и адресов, используемые при пересылке данных для доступа ко всем 8 сегментам
страницы памяти (одна рамка для БК10, другая - БК11М: это области, неперекрывающиеся с ПЗУ и охватывающие  всю  страницу).
Однако при размещении и вызовах подпрограмм на БК11М RAM-BIOS использует два первых режима (SYS и Std10) в окне
120000-140000, т.к. для работы с подпрограммами необходимо наличие ROM-BIOS в адресном пространстве.

РАСШИФРОВКА РЕЖИМОВ:

SYS - используется для запуска, пересылки данных на БК10 и RAM-BIOS'ом (он - всегда в 0-й странице);
Std10, Std11 - стандартные, традиционные режимы работы для БК10 и 11М соответственно, Std10 используется также для
пересылки данных на БК10;
ОЗУ10 - вместо монитора БК10 и ПЗУ-160000 подключается ОЗУ (на многих БК10 требуется простая доработка, иначе доп. ОЗУ
подключается параллельно ПЗУ монитора и приходится записывать в это ОЗУ копию монитора); используется также для доступа
к доп. памяти на БК11М;
All - позволяет на БК10 подключить ОЗУ ко всему адресному пространству, что используется для загрузки  копии  Вильнюсского
Бейсика; применяется также для доступа к доп. памяти на БК11М;
ОЗУ11 - подключение ОЗУ вместо ПЗУ на БК11М, для отключения ПЗУ монитора БК11М простая доработка требуется всегда;
Hlt10, Hlt11 - открывают доступ к  HALT-режиму процессора на БК10 и БК11М соответственно. Максимально "продвинутые" режимы:
везде, где можно, подключается ОЗУ вместо ПЗУ и на БК10 нижняя часть ОЗУ монитора защищена от записи (квази-ПЗУ) для
повышения глюкоустойчивости.

Доработки для отключения ПЗУ монитора описаны в файле "СХЕМЫ.EDP".

На контроллерах с доп. ОЗУ менее 256 Кб на БК10 может быть подключено ПЗУ Бейсика традиционно записью #10 в 177130,
правда на режимы ОЗУ это никак не влияет.
При подключении ОЗУ параллельно чему-либо (ПЗУ, регистры) в случае конфликта данных (в одном - 0, в другом - 1) в
подавляющем большинстве случаев читается 1 (для микросхем такой конфликт не страшен, все они имеют внутреннюю
защиту - хотя, конечно, конфликты снижают помехоустойчивость и потому нежелательны).
Поэтому при параллельном подключении ОЗУ и ПЗУ в ОЗУ надо предварительно записывать копию ПЗУ, а при параллельном
подключении ОЗУ и регистров в ОЗУ должны быть нули.

При включении режима "All" из режимов Hlt10, Hlt11 (а на "старых" контроллерах еще и из режима ОЗУ10) в ОЗУ режима  "All"
по адресу 177130 вписывается <20 + код страницы>; при использовании запросов BIOS таких переключений не бывает.


КОДЫ ПОДКЛЮЧЕНИЯ СТРАНИЦ ОЗУ:
64 Кб - 0,2000;
128 Кб - 0,2000,4,2004;
256 Кб - 0,2000,4,2004,10,2010,14,2014;
512 Кб - 0,2000,4,2004,10,2010,14,2014,
1,2001,5,2005,11,2011,15,2015.

Объем памяти можно определить по байту 167777 ПЗУ контроллера.

При переключениях коды режима и страницы необходимо складывать по BIS.

Кодировка версии контроллера.

Номер версии доступен программно - он содержится в последнем слове ПЗУ (по адресу 167776). В старшем байте
содержится ключ и информация об объеме дополнительной памяти, в младшем байте - информация о типе контроллера
и номере версии ПЗУ.

174000 - A16;
174400 - A16 + контроллер "винта" с доп. ОЗУ 4 Кб (170-177000);
175000 - A16M;
175400 - не используется;

176000 - 64 Кб
176400 - 128 Кб
177000 - 256 Кб
177400 - 512 Кб    если младший байт > 0 -  то  это  старая версия ПЗУ совмещенного контр. винчестера и дисковода SMK64 - ее нужно
заменить (ПЗУ установлено на панелях);

если младший байт имеет значение от 200 до  300 – то это контроллер SMK, если >  300  -  это  дисководный  контроллер A64M-A512M.

В старой версии ПЗУ ( мл. байт > 0 ) ROM-BIOS отсутствует.

Проверка на наличие не менее 64 Кб и современной версии ПЗУ осуществляется одной командой:

CMP @#167776,#176200 \ BHIS - Ok

Внимание!  Программисты, загружающие в ОЗУ с адреса 160000 свою версию драйверов, должны область 167460-170000 (точки
входа BIOS и номер версии контроллера) копировать 1:1 из ПЗУ !
 
CD-IncДата: Четверг, 14.02.2013, 00:20 | Сообщение # 2
Оператор Машинного Доения
Группа: Администраторы
Сообщений: 28
Репутация: 2
Статус: Offline
 
Всё об «Электроника БК0010(-01), БК0011(М)»! » Железо » Носители информации » Жёсткий диск 3'5 (HDD 3'5) » СМК.Режимы работы и распределение памяти (СМК)
Страница 1 из 11
Поиск:

-=RUS=-
ICQ: 320867225