Схема ПК ALESTE 520EX содержит
следующие узлы:
D1-D8 - ОЗУ (четный байт).
D9-D16 - ОЗУ (нечетный байт).
D17 - Программируемый параллельный
интерфейс.
D18 - Музыкальный процессор.
D19 - Энергонезависимое ОЗУ SETUPа и часы реального
времени.
D20-D24 - Адресные мультиплексоры.
D25 - Видеоконтроллер.
D26, D28, D85.3,
D87-D89 - Маппер
(коммутатор страниц ОЗУ).
D29.1, D29.2 - Формирователи сигналов -IORD,-IOWR.
D30 - Центральный процессор.
D31 - ПЗУ 64K ( BASIC, AMSTRAD BIOS,
AMSTRAD DISC
BIOS, ALESTE
SETUP, загрузчик MSX DOS ).
D32 - Регистр режимов графики, режима маппера,
управление
гашением изображения, выборки часов
и таймера.
D33 - Программируемый таймер.
D34 - Программируемый последовательный
интерфейс.
D35.1, D35.2,
D44.3, D44.4 - Сxема
формирования сигналов 8ST, 4ST, MVI.
D35.3, D35.4 - Формирование номера страницы ПЗУ.
D36.1, D36.2 - Тактовый генератор для режима AMSTRAD и
схемы
контроллера дисковода.
D36.4, D36.5 - Тактовый генератор для режима ALESTE.
D37 - Делитель частоты.
D38 - Переключатель режимов графики высокого/низкого
разрешения.
D39 - Формирователь сигналов RAS, CAS, CLK.
D40, D75.1,
D41.1, D41.2,
D42.4, D44.1 - Формирователь сигналов WE0, WE1, DIS,
-DIS.
D41.3 - Инвертор сигнала FUTURE.
D41.4 - Формирователь выборки
видеоконтроллера.
D42.1, D42.2 - Формирователь сигналов RESET, -RESET.
D42.3 - Формирователь выборки программируемого
таймера.
D42.5, D85.2,
D36.3, D36.6,
D43.1, D43,2 - Схема формирования сигналов S0, -WAIT, VBUF,
CBUF, -VCLK, VCLK.
D42.6 - Формирователь сигнала
-STROBE на принтер.
D43.4 - Формирователь сигнала гашения BLANK.
D44.2 - Формирователь записи в регистр режимов
ALESTE.
D45, D46 - Буферные регистры четного и нечетного
байта
видеоданных
соответственно.
D47, D48 - Буферные регистры четного и нечетного
байта
данных для CPU
соответственно.
D49, D77.2 - Схема формирования сигналов PAGE, -PAGE,
HIGHT, SYNC.
D50, D51 - Сдвиговые регистры видеоданных.
D52, D53 - Комммутаторы
видеорежимов.
D54 - Формирователь записи в регистры видеорежимов,
цвета бордюра, маппера, номера цвета, ОЗУ
перепрогромирования цветов.
D55 - Регистр видеорежимов, адреса подключения
страниц ПЗУ,
состояния светодиодов RUS/LAT,
CAPS.
D56 - Регистр номера цвета, управление записью в
регистр цвета
бордюра/ОЗУ перепрогромирования
цветов.
D57, D29.4 - Регистр конфигурации страниц ПЗУ.
D58 - Регистр цвета бордюра.
D59 - Выходной регистр цветов.
D60, D61 - ОЗУ перепрогромирование
цветов.
D62 - Усилитель шины
данных на вывод, кодировщик
цветов в режиме
AMSTRAD, коммутатор страниц
ПЗУ.
D63, D64, D77.1 - Схема
формирования сигналов 1-3CY, MK0-3 для
перекодировщика клавиатуры, адресов на ПЗУ D65.
D65 - Таблицы для формирования сигналов SYNC*, HY*,
SINT*, данные
о матрице клавиатуры
для
перекодировщика.
D66, D29.3,
D43.3, D85.4 - Схема формирования сигнала -INT.
D67 - Формирователь сигналов BUFER0, BUFER1, -ROMEN,
-RAMEN.
D68, D69,
D71.1, D73.1 - Цифровая
ФАПЧ, формирователь сигналов
WRC,
RDD,
начального сигнала DW.
D70 - Контроллер дисковода.
D71.2 - Триггер сигнала
MOTOR-DSKRDY.
D72 - Делитель
частоты для цифровой
ФАПЧ,
контроллера
дисковода, программируемого
таймера,
последовательного интерфейса,
окончательное формирование сигнала
DW
( частоты для
преобразователя напряжения ).
D73.4 - D73.6 - Инверторы выходных
сигналов с дисковода.
D74 - Дешифратор адресов,
формирователь выборки
контроллера
дисковода, записи в регистр
расширенного
режима, записи в триггер сигнала
MOTOR-DSKRDY.
D75.3, D76.3,
D73.2, D73.3 - Схема формирования сигналов -DRIVE0, -DRIVE1.
D75.2 - Формирователь сигнала -STEP.
D76.1, D76.2,
D76.4 - D76.6 - Инверторы-усилители сигналов
на дисковод.
D78.3 - Формирователь сигнала выборки
джойстика COMMON.
D78.4 - Формирователь сигнала записи в ОЗУ
матрицы
клавиатуры -3CY.
D79 - Регистр,
устраняющий "иголки" с
выхода ПЗУ и
хранения номера
считываемого столбца матрицы
клавиатуры.
D80, D75.4 - Дешифратор строк матрицы клавиатуры.
D81 - Мультиплексор считываемого столбца матрицы
клавиатуры.
D82,D83 - ОЗУ клавиатурного перекодировщика для хранения
информации о
состоянии матрицы клавиатуры.
D84,
D78.1, D78.2 - Сдвиговый
регистр-накопитель данных с матрицы
клавиатуры и
формирователь записи в него.
D85.1 - Формирователь сигнала TRK0.
D86 - Формирователь сигналов DTR*, TXD*.
VT1 - Формирователь выборки D19.
VT2 - Формирователь сигнала на ч/б монитор.
VT3 - Инвертор-ограничитель
сигнала данных со входа
последовательного интерфейса
( с выхода
"мыши" и др. ).
VT4 - Преобразователь напряжения +12В, -12В.
VT5 - Инвертор-ограничитель сигнала DSR*.
ВНИМАНИЕ ! В данном описании символ "-" перед
именем сигнала
означает что данный сигнал
инверсный.
Описание работы отдельных узлов схемы.
На
элементах D36.1 и D36.2 собран тактовый генератор на
частоту 16
МГц, использующийся в
режиме AMSTRAD и для
тактирования схемы
контроллера дисковода. На элементах D36.4 и
D36.5 собран
генератор на частоту 13,333 МГц, использующийся в
расширенном режиме ALESTE.
Микросхема D37 - это обычный делитель
частоты. Микросхема
D38 переключает по сигналу HIGHT
режимы :
0 - AMSTRAD / 1 -
ALESTE. При этом меняются частоты, идущие на
формирователь сигналов
CLK, RAS, CAS -
D39; делитель - D37;
схему формирования
сигналов VBUF - запись видеоданных из ОЗУ в
буферные регистры D45, D46; CBUF - запись данных для
CPU из ОЗУ
в буферные
регистры D47, D48; сигнала -WAIT;
меняется частота
сигнала VCLK
- выдача на сдвиговые регистры D50, D51 четного
байта видеоданных и -VCLK - нечетного байта
видеоданных; сигнал
V1113, идущий
на адресный мультиплексор
D24. Сигнал CBUF
одновременно является тактовой частотой для
видеоконтроллера. В
цепи сигнала -WAIT стоит
резистор для того, чтобы внешняя плата,
подключенная к
системному разъему, могла безпрепятственно
замыкать его
на GND. Сигналы
-WAIT и CBUF
идентичны, но
замыкание сигнала
-WAIT на GND влияло бы на сигнал
CBUF, если
брать сигнал
-WAIT с того
же выхода. Узел на элементах D40,
D75.1, D41.1,
D41.2, D42.4, D44.1 формирует сигналы записи в
ОЗУ: если А0=0 - WE0 (четный байт), А0=1 - WE1
(нечетный байт),
а также
сигналы DIS и -DIS. Когда DIS=0 к
адресным входам ОЗУ
подключены адреса
от процессора и маппера, а когда DIS=1 от
видеоконтроллера. Причем,
если процессор не обращается к ОЗУ, то
сигнал DIS никогда не станет равным 0. Это позволяет
подключать
к системномы разъему
контроллер прямого доступа в память (ПДП).
В противном
случае от момента перехода
процессора в состояние
"ЗАХВАТ" до
выдачи адресов контроллером ПДП на шину адреса, на
входах адресных
мультиплексоров (все еще подключенных к шине
адреса процессора)
были бы неопределенные уровни, что вызывало
бы сбои
информации в ОЗУ. В данной схеме
этого не происходит.
Все сигналы,
кроме данных, подаются
на ОЗУ через резисторы,
которые вместе с емкостью входов образуют фильтры,
что повышает
помехозащищенность ОЗУ.
D77.2 и D49
формируют сигналы PAGE,
-PAGE, HIGHT,
SYNC. Когда PAGE=0
к выходному регистру
подключается регистр цвета бордюра, а когда PAGE=1 -
выходы ОЗУ
перепрограммирования цветов. Сигнал синхронизации SYNC подается
на монитор через буферный
регистр D49.
Клавиатурный перекодировщик
работает следующим образом :
в момент
строчного гасящего импульса
на выходе регистра D79
появляется номер
опрашиваемого столбца имеющейся матрицы, причем
KW3 =
1; затем на выходе ПЗУ D65
появляется номер строки и на
выходе дешифратора
D80, D75.4 появляется 0 в соответствующем
разряде; информация
об опрашиваемой кнопке
записывается в
регистр D84.
После
опроса второй кнопки,
информация о первой
сдвигается, а на ее место
попадает информация о второй. В момент
опроса восьмой
кнопки KW3 становится равным 0, на адреса ОЗУ
матрицы клавиатуры
D82, D83 выставляется
номер столбца
клавиатуры, требуемый
стандартными программам AMSTRADа и после
записи ее
состояния в регистр D84, сформированная информация о
восьми кнопках
сигналом -3CY записывается
в ОЗУ матрицы
клавиатуры.
За
128 строк заполняются все ячейки ОЗУ и если теперь
какая-нибудь программа выставит на вторых адресных входах
номер
столбца стандартной
матрицы AMSTRADа, на вторых выходах данных
появится информация
как будто со строк стандартной матрицы. За
один кадр,
клавиатура опрашивается один
раз. Таким образом
оказалось возможным
подключать любую матрицу
клавиатуры,
размером не более 8 х 11
клавиш не изменяя схему, а меняя всего
несколько десятков байт в ПЗУ D65. 6 вторых выходов ОЗУ
матрицы
клавиатуры D82,
D83 подключены через резисторы, для того чтобы
при нажатии одновременно даже 4 кнопок на
джойстике ( например:
вверх, вправо,
FIRE1, FIRE2 ) выход
элемента D78.3 COMMON
( выборка джойстика ) смог
сформировать логический ноль.
Узел
на элементах D66,
D29.3, D43.3, D85.4 формирует
прерывание -INT.
Прерывание формируется через 52 строки экрана
начиная с 18 строки.
Таким образом за
кадр формируется 6
прерываний. Но это справедливо в том случае, если
подтверждение
прерывания приходит не
позже чем через 26 строк после -INT. Если
же подтверждение приходит позже, то все
следующие сдвигаются на
26 строк.
На диаграмме видно: 2 и 3 -INT
формируются через 52
строки после предыдущего, а
4 -INT задерживается на 26 строк. То
есть схема следит чтобы между окончанием сигнала
-INT и началом
следующего было не менее 26
строк. Элементы D85.4 и D43.3 служат
для присинхронизации первого
прерывания к началу
кадра и
задержки формирования
следующего сигнала -INT в случае прихода
подтверждения прерывания
позже чем через 26 строк после начала
текущего сигнала
-INT. Мы не знаем почему это
было сделано в
фирменном компьютере, но пока мы этого не сделали система CP/M
нормально не работала. По какой именно причине не работала CP/M
мы не разбирались.
На
регистры D32, D55, D56 подан сигнал -RESET для того,
чтобы в момент после сброса включалась стандартная
конфигурация
AMSTRAD.
ПЗУ
D65 формирует также
сигнал HY*. Это было сделано
потому, что
микросхемы видеоконтроллера D25
- М6845 разных
фирм-изготовителей, имеющиеся
у нас, формировали
сигнал HY
разной длительности - у
одних она совпадала с длительностью HY в
фирменном компьютере
AMSTRAD CPC 6128, а у других она была иной.
Поэтому если
какая-то программа присинхронизировалась к
окончанию импульса
HY, опрашивая разряд
PB0 паралельного
интерфейса D17, то в ее
работе были бы сбои. "Иголки" на сигнале
HY* устраняются
конденсатором.
ПЗУ
D67 формирует сигналы
чтения данных для CPU из
буферных регистров
ОЗУ D47, D48 - BUFER0 (четный байт), BUFER1
(нечетный); -ROMEN
- показывающий, что
сейчас к шине данных
подключено ПЗУ
D31; -RAMEN - показывающий, что сейчас к шине
данных может быть подключен
один из буферных регистров D47, D48.
При подаче
на вход RAMDIS логической единицы сигналы BUFER0,
BUFER1 перестают
формироваться, но сигнал -RAMEN продолжает. Это
позволяет подключать
к системномы
разъему внешнее ОЗУ. Сигнал
ROMDIS=1 отключает
внутреннее ПЗУ. Сигналы
PROM0, PROM1
подключают логическим нулем
страницы ПЗУ с адресов 0000H и C000H
соответственно. Элементы
D35.3, D35.4 запрещают
подключение с
адреса 0000H ненулевых
страниц ПЗУ.
ПЗУ
D62 выполняет несколько функций : буферирует шину
данных на
вывод; кодирует цвета в режиме AMSTRAD; перекодирует
номера страниц
ПЗУ. В фирменном компьютере AMSTRAD емкость ПЗУ
была 48К,
(32+16) причем их
номера шли не подряд. В нашем
компьютере установлено
одно ПЗУ емкостью 64К. Поэтому возникла
необходимость изменить
схему выбора страниц ПЗУ. С этой
целью
входы данных
регистра D57 подключены не непосредственно к шине
данных, а
к выводам ПЗУ
D62, которое перекодирует
номера
стандартных страниц
ПЗУ компьютера AMSTRAD
в номера страниц
нашего ПЗУ. При записи номера страницы 3 -
подключится страница
3 нашего
ПЗУ, номера 7 -
страница 2 нашего ПЗУ, в остальных
случаях будет подключена страница 1 нашего ПЗУ. Таким
образом с
адреса 0000H может быть подключена только страница 0
нашего ПЗУ
(в ней
находится AMSTRAD BIOS),
а с адреса C000H - только
страницы 1,2,3.
При запуске компьютера после сброса с адреса
0000H подключается AMSTRAD
BIOS, которая начинает
последовательно подключать
с адреса C000H страницы с номерами от
0 до
15. При записи
номера 0 подключается страница 1 (в ней
находится BASIC)
и управление передается
туда. После
инициализации BASICа происходит
возврат в AMSTRAD BIOS, которая
подключает страницу
1. BASIC снова
получает управление,
обнаруживает что уже была инициализация и возвращает
управление
AMSTRAD BIOS. Та подключает страницу 2 и процесс
повторяется. В
фирменном компьютере
AMSTRAD CPC 6128 такое повторялось со всеми
страницами кроме
7 - там находиться AMSTRAD DISK BIOS, у нас в
странице 3
находиться загрузчик MSX
DOS и программа ALESTE
SETUP. Как
только страница 3 получает управление, происходит
анализ удерживаемых кнопок
и соответствующее действие.
Встроенный интерпретатор BASIC
обрабатывает номера
физических цветов от 0 до
26. Действительно, 3 уровня напряжения
на каждый
луч ( так было в фирменном компьютере AMSTRAD ) дают
27 цветов, но для
кодирования чисел от 0 до 26 необходимо 5 бит,
а 5
бит дают 32
комбинации, поэтому некоторые
комбинации
дублируются. А 3 уровня напряжения на каждый луч требуют 2
бита
- всего 6 бит на 3
луча. ПЗУ D62 и перекодирует 5-битовый
номер
физического цвета в
6-битовый код для резисторного ЦАП на выходе
регистра D59. Так как
номиналы резисторов на каждых двух выходах
отдельных лучей
разные (в компьютере AMSTRAD они
одинаковые),
то есть
4 уровня наряжения на
каждый луч, что
позволило
увеличить общее количество физических цветов в режиме
ALESTE до
64. В
этом режиме сигнал MAPMOD=1 и ПЗУ
D62 просто пропускает
младшие 6
бит шины данных
для упрощения работы с 64 цветами
(хотя следует отметить что на самом деле это не так
- и в том и
в другом
режимах при работе с цветами ПЗУ D62 меняет местами
биты 5,4 с битами 1,0 соответственно, но если вы
воспользуетесь
описанием портов и захотите в режиме ALESTE установить
какую-то
яркость луча
B - биты
1 и 0, то
именно это и произойдет,
несмотря на
то что в
выходном регистре цветов D59 за
луч B
отвечают биты
5 и 4.
Т.е. можно сказать что для
программ,
считающих что
биты R, G,
B расположены так как написано в
описании портов,
ПЗУ D62 действительно в режиме
ALESTE просто
пропускает 6 бит шины
данных, а в режиме AMSTRAD выставляет цвет
требуемый стандартными
программами. Это было сделано после того,
как выяснилось
что стандартным программам требуется чтобы биты
R, G, B были расположены в
байте от старших к младшим, а у нас в
схеме было
сделано наоборот -
R и B были поменяны местами.
Оказалось проще
сменить прошивку ПЗУ,
чем менять цоколевку
разъема, которая совпадала состандартной цоколевкой
монитора. ).
Вообще в
компьютере AMSTRAD CPC весьма
сложное преобразование
5-битового номера
цвета в 6-битовый
код для ЦАП происходило
внутри заказной
БИС и собирать
подобную схему на отдельных
микросхемах было нецелесообразно, поэтому мы и решили
применить
ПЗУ -
именно такова основная цель ПЗУ D62, которое к тому же
выполняет и другие функции.
На элементах D87 - D89, D26, D85.3, D28
собран маппер -
устройство управляющее
конфигурацией страниц ОЗУ. Сигнал MAPMOD,
поступающий на
микросхему D26, служит для блокировки маппера
в
режиме AMSTRAD.
В этом режиме
существуют стандартные
распределения памяти,
которые не меняются.
ПЗУ D28 и
обеспечивает эти
распределения. В режиме ALESTE
распределение
памяти программируется, т.е.
все адресное пространство
процессора 64К
делится на 4
страницы и в каждую
из этих
логических страниц можно подключить любую из 32
физических. Для
этого сигнал
MAPMOD=1 поступает на ПЗУ D28 и D26. При записи
физического номера
страницы сигнал -IORQ=0
и то, в
какую
логическую страницу она будет подключена зависит от
адресов А8,
А9. При
обращении к памяти сигнал -IORQ=1
и на адресные входы
ОЗУ D87,
D88 проходят адреса
А14, А15. В
зависимости от
состояния А14, А15
выбирается адрес ячеек ОЗУ D87, D88 в которых
записан номер физической страницы памяти. Физические
страницы с
номерами 0 - 3 являются
страницами видеопамяти и при подключении
какой-либо из
этих страниц в
адресное пространство ПЗУ D62
устанавливает сигнал
VRAMACC в "1". Если
при этом сигнал
HIGHTY=1, то
при обращении процессора
к видеопамяти будет
происходить перекодирование адресов.
Наличие двух сигналов
HIGHTX и HIGHTY позволяет в
режиме низкого разрешения (HIGHTX=0)
разместить в
видеопамяти изображение для
режима высокого
разрешения (при
этом HIGHTY должен быть =1) и затем включить
режим высокого
разрешения ( HIGHTX=1 ). Т.е.
сигнал HIGHTY =1
означает что
адреса в видеопамяти
для процессора будут
перекодированы. При перекодировании для процессора адреса А11
и
А14 в видеопамяти меняются местами. Распределение
видеопамяти в
разных режимах описано в
другом разделе документации. D89 служит
для чтения
состояния маппера, при
этом А8, А9
определяют
состояние какой
из логических страниц будет прочитано. Таким
образом всегда можно узнать
какая физическая страница подключена
в каждой
из четырех логических.
Маппер действует в пределах
512К. Сигнал
MAPBLK=1 блокирует маппер, что позволяет внешним
платам доступаться
ко всей памяти.
Шины
данных D18, D19,
D33 подключены к
каналу А
паралельного
интерфейса. Это разгружает шину
данных и экономит
адреса в
адресном пространстве, хотя
работа с D19
и D33
несколько усложняется.
Сигнал CSCT=1 выбирает часы, а
CS53=1
выбирает таймер.
Входная частота таймера
и тактовая частота
последовательного интерфейса
4МГц. Канал 0
таймера - задает
скорость приема
данных, канал 1
таймера - скорость передачи
данных. Канал
2 выполняет весьма специфическую функцию. На его
счетный вход подан сигнал HX, а на вход разрешения
счета сигнал
CURSOR. Сигнал
с выхода канала 2 проходя через
инвертор D41.3
попадает на
входы D52. Это
позволяет в монохромном
и
четырехцветных режимах
увеличить количество цветов на экране в 2
раза. В
16-цветных режимах канал
2 влияния не оказывает. В
монохромном режиме
кроме логических цветов
0 и 1 появляются
логические цвета
2 и 3; в
четырехцветном кроме 0, 1, 2, 3 -
появляются логические
цвета 4, 5, 6, 7. Причем, смена цветов
происходит начиная
с любой экранной строки в любом непрерывном
количестве строк.
Достигается это следующим
образом : в
видеоконтоллере программируются
начало и конец курсора; позиция
курсора - т.е. строка с
которой начнется смена цветов; в счетчик
канала 2 таймера (
запрограммированного в режим 1 ) записывается
число строк, в течении
которых логические цвета 0 и 1 ( 0, 1, 2,
3 ) будут заменены на
логические цвета 2 и 3 ( 4, 5, 6, 7 ). Так
как любому из 16 логических цветов может быть
присвоен любой из
64 физических то, даже в
монохромном режиме на экране может быть
4 различных цвета. Конечно,
можно перепрограммировать цвета и по
прерываниям, но это целиком зависело бы от работы
процессора, а
данная схема
легко позволяет получить
на экране необходимое
изображение независящее
от работы процессора. Для того,
чтобы
схема не оказывала влияния, необходимо чтобы сигнал
-FUTURE был
равен 0. Для этого нужно
запрограммировать канал 2 в режим 3, но
не загружать
его счетчик - при
этом на выходе гарантировано
установится 1, а на входах
мультиплексора D52 соответственно 0
(только поэтому и нужен
инвертор D41.3 ). Такой метод увеличения
количества цветов
применен, в частности, в текстовом редакторе
"POWER WRITER".
К разъему последовательного интерфейса,
можно подключить
IBM "мышь". На
транзисторе VT4 собран преобразователь напряжения
+-12В. Элементы
D42.1, D42.2 формируют
сигналы сброса для
процессора, музыкального
процессора, контроллера дисковода,
последовательного и паралельного
портов, регистров режимов.
Сигнал сброса для
видеоконтроллера -RESET2 формируется отдельно.
Это сделано
для того, чтобы во время нажатия кнопки RESET не
исчезала регенерация
ОЗУ и не
портилась информация на
электронном диске.
Видеоинформация со
сдвиговых регистров D50,
D51
поступает на
мультиплексоры графических режимов
D52, D53.
Сигналы MODE0, MODE1,
определяют графический режим. Информация о
логическом цвете
точки PX0, PX1, PX2, PX3 поступает
на вторые
адресные входы ОЗУ
перепрограммирования цветов D60, D61, которые
образуют "программируемую палитру". На вторых выходах данных,
появляется код
физического цвета C0,
C1, C2, C3,
C4, C5
соответствующий поданому логическому.
Сигнал NCOLOR4, определяет куда будет
вестись запись - в
регистр цвета
бордюра или в ОЗУ перепрограммирования цветов.
Порт В
музыкального процессора D18 может работать как на вывод
так и на ввод. Это
позволяет подключать к разъему принтера самые
различные устройства :
принтер, картридж, устройство
предэкранного ввода, ЦАП, АЦП, программатор и др.
Узел
на элементах D68, D69, D71.1, D73.1 обеспечивает
цифровую ФАПЧ при чтении данных с диска и формирует
сигнал WRC,
при записи на диск. Так как выводы 33, 37
контроллера дисковода
D70 могут
менять свое назначение
в зависимости от состояния
сигнала RW/S, сигналы от/на них проходят через
элементы D85.1 и
D75.2. На вход RDY
контроллера D70 подан сигнал с выхода тригера
D71.2, который
одновременно управляет состоянием
мотора
дисковода. Это
сделано для того, чтобы можно было программно
прекратить выполнение
команд контроллером. Иначе при попытке
записать что-либо
на диск при не вставленном диске,
программа
возвратила бы
через время тайм-аута
ошибку, но контроллер
остался бы
в прежнем состоянии
и последующие обращения
воспринимал бы как данные записи. Дело в том, что
отечественные
диководы 5.25 дюйма неправильно формируют сигнал
"ГОТОВНОСТЬ",
которого не
должно быть при
незакрытом дисководе, а другого
способа прекратить выполнне команды кроме как снять готовность в
контроллере не
предусмотрено. Сигнал с выхода INT контроллера,
подан на
разряд PB1 паралельного интерфейса
для упрощения
операций позиционирования
головки дисковода.
В фирменном компьютере AMSTRAD
применен 40-дорожечный
односторонний дисковод
и двухсторонние переворачиваемые
диски
диаметром 3,00 (!)
дюйма. Емкость одной стороны диска при
этом
равна 180К. Для
более полного использования
применяемых нами
дисков 3,5
дюйма, которые не
переворачиваются и будут
использоваться в режиме
AMSTRAD лишь на четверть, можно сделать
переключатель сторон;
это позволит в 2 раза увеличить
емкость
диска. Как это сделать
описано в другом разделе документации.
Выходная шина
данных ОЗУ D1
- D16 разделена.
Это
позволяет за одно обращение
считывать по 2 байта. При этом время
цикла записи-чтения
даже в режиме ALESTE позволило применить
микросхемы ОЗУ
типа 565РУ7В. В режиме AMSTRAD будут работать
любые микросхемы 565РУ7. То, что ОЗУ работает в
обычном режиме,
существенно повысило
надежность работы ОЗУ и компьютера в целом.
Если бы выходная шина данных ОЗУ была
восьмиразрядной, пришлось
бы применять страничный режим работы, что было
бы менее надежно
при использовании
565РУ7 ( хотя в
фирменном компьютере он и
применен, но там и
микросхемы ОЗУ фирменные ).
Диаграмма формирования прерываний.
18стр.
26 строк
──────┼─┼─────────┤
│ │ │
├─┼─────┐ │
HY ───┘ │ └───┼──────────────────────────────────────────────────────────────────────────
├─┐ ├─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐
SINT ─────┘ └───────┘
└───────┘
└───────┘
└───────┘
└───────┘
└───────┘
└───────┘
└───────┘
└──
─────┐ ┌───────────────┐ ┌────────────────┐ ┌──────────────┐ ┌─────────
LOP └───┘ └──┘ └──────────────┘ └────┘
┌─────────┐ ┌─────────┐ ┌───────────────────┐ ┌─────────┐
D66/5 ─────┘ └─────────┘ └─────────┘ └─────────┘ └────
─────┐
1┌────────────────┐2┌─────────────────┐ 3 ┌───────────────┐
4 ┌──────────
-INT ├──┘ ├─┘ ├─────────────┘ ├───┘
─────┼──┐┌───────────────┼─┐┌────────────────┼─────────────┐┌──────────────┼───┐┌─────────
-INTA │
└┘ │
└┘ │ └┘ │ └┘
│ 52 строки │
52 строки │ 52 + 26 строк │
├───────────────────┼───────────────────┼─────────────────────────────┤