Агат/ЯБ3.089.026 ТО Ячейка процессора, памяти и интерфейса

Материал из Emuverse
(перенаправлено с «Агат/ЯБ3.089.026 ТО»)
Данный материал защищён авторскими правами!

Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей.


1. Введение

2. Назначение

3. Технические данные

4. Устройство и работа ячейки

4.1. Структурная оргнинизация ячейки

4.2. Узел центрального процессора

4.2.1. Микропроцессор

4.2.2. Адресное пространство ПЭВМ

4.2.3. Шинные формирователи адреса и данных

4.2.4. Схема синхронизации

4.2.5. Управление режимами работы ПЭВМ

Примечание: В исходном документе названия сигналов ПМ и ПА перепутаны!

Схема управления режимами работы ПЭВМ (СУУР) построена на двух R-S триггерах Д53.1 и Д53.2 и комбинационной логике Д89.3, Д90.5 и Д92.4 и предназначена для обеспечения работы ПЭВМ в двух режимах: режиме "Агат" и режиме "Apple" (рис.5).

Функции управления режимами работы ПЭВМ выполняют два формируемых СУУР сигнала ПМ и ПА ПА и ПМ, причем первый сигнал управляет оперативной памятью, а второй — работой дисплейного контроллера.

  • ПМ — признак машины ПА — признак "Apple" (вывод Д53.8). Высокий уровень сигнала переводит оперативную память на работу в режиме "Apple".
  • ПА — признак "Apple" ПМ — признак машины. Высокий уровень сигнала переводит ДК в режим отображения информации ПЭВМ "Агат"; при ПА=0 ПМ=0 отображение информации будет осуществляться в режимах "Apple".

При включении питания ПЭВМ входы триггеров Д53.4 и Д53.10 с помощью R-C цепочки (R28 и С2) удерживаются на низком уровне на время, достаточное для стабилизации питающих напряжений, и тем самым обеспечивают начальную установку ПЭВМ в режим "Агат" (ПМ=0 и ПА=1 ПА=0 и ПМ=1).

Переключение режимов работы осуществляется с помощью адресных обращений к СУУР по адресам из области адресов ввода/вывода. Принятые в ячейке схемотехнические решения обеспечивают переход ПЭВМ в режим "Apple" (ПМ=1, ПА=0 ПА=1, ПМ=0) без обратного выхода в режим "Агат". Эти меры предприняты для предотвращения случайного переключения в режим "Агат" программами, написанными для ПЭВМ семейства "Apple". В режиме "Apple" ПЭВМ программно совместима с персональными машинами Apple-II, "Правец". Выход ПЭВМ в режим "Apple" осуществляется в два приёма.

Сперва по операции записи по любому адресу из диапазона C050–C05F в этот режим переводится работа с памятью (сигнал ПМ=1 ПА=1). Значение записываемого байта информации несущественно, так как управление регистром осуществляется только адресом.

По этой команде на тактовом входе триггера Д53.2 формируется импульс отрицательной полярности, по заднему фронту которого выход Д53.9 установится в низкий уровень. На втором этапе в режим "Apple" переводится ДК. Для этого достаточно обратиться к СУУР по одному из адресов C050–C057 или C700–C7FF с помощью операций чтения (или записи).

В обоих случаях на выходе триггера Д53.5 (сигнал ПА ПМ) установится низкий уровень.

При работе памяти ПЭВМ в режиме "Агат" (ПМ=0 ПА=0) ДК в зависимости от уровня сигнала ПА ПМ может отображать информацию как в режимах "Агат", так и в режимах "Apple".

При высоком уровне сигнала ПА ПМ программно и аппаратно совместима со своими предыдущими моделями и имеет два новых режима отображения информации (высокоразрешающая монохромная графика 512×256 точек и цветная графика 256×256 точек, 4 цвета). Переключение ДК в этот режим производится операциями обращения ЦП по адресам из диапазона C700–C7FF. В этом случае на старших 8 разрядах адреса A15–A8 ША ЦП устанавливается код C7 (1100 0111), обеспечивающий формирование на тактовом входе Д53.3 импульса отрицательной полярности, по заднему фронту которого в триггер (выход Д53.5) записывается 1 (если ПМ=1 ПА=1 то запишется 0) и ДК переводится в режим "Агат".

При обращении к СУУР по одному из адресов C050–C057 триггер будет сброшен (установится ПА=0 ПМ=0) и ДК переводится в режим "Apple".

4.3. Организация оперативной памяти

По функциональным признакам в оперативной памяти (ОП) можно выделить (рис.8) устройство распределения памяти, узел управления памятью и модуль ОП, включающий непосредственно элементы памяти, мультиплексоры адреса и буферные регистры данных ЦП и ДК.

При обмене информацией с оперативной памятью микропроцессор не может прямо адресоваться ко всей памяти, так как объем оперативного запоминающего устройства (ОЗУ), установленного на ячейке (128К байт), в 2 раза превышает адресное пространство МП.

Чтобы обеспечить микропроцессору доступ ко всему объему ОЗУ, на ячейке реализована архитектура с гибким распределением памяти, по построению близкая к концепции виртуальной памяти. Это достигается введением специального устройства распределения памяти, содержащего таблицу соответствия между зонами адресного пространства МП (сегментами) и оперативной памятью, разделенной на банки. Хранение таблицы в специальных регистрах позволяет микропроцессору с ограниченным адресным пространством (64К) произвольно обращаться к любому банку ОЗУ, расширяя тем самым память, доступную ЦП до 128К байт (и выше при установке ячеек дополнительной памяти).

Узел управления памятью реализует разделение адресного пространства микропроцессора на области ОЗУ, ввода/вывода и ПЗУ (рис.4), определяя правила доступа к ОП и ПЗУ в зависимости от адреса, формируемого микропроцессором, и от сигналов блокировки памяти, формируемых внешними устройствами (например, ячейками дополнительной памяти).

4.3.1. Распределение оперативной памяти

Устройство распределения памяти (УРП) построено на мультиплексоре К555КП11 (Д11), микросхеме статического ОЗУ 16×4 КР531РУ8 (Д21) и 4-х элементах НЕ (Д16.1–Д16.4, рис.9). Назначение УРП, как указывалось выше, заключается в расширении шины адреса до 17 разрядов с целью обеспечения доступа ЦП к любой части ОЗУ.

Такая организация памяти достигнута следующими средствами. Всё адресное пространство ЦП разбивается на восемь адресных сегментов (зон) по 8К байт адресов: адреса 0000–1FFF соответствуют нулевому сегменту, адреса 2000–3FFF — первому и т.д. ОЗУ ячейки ёмкостью 128К делится на 16 эквивалентных друг другу банков памяти по 8К байт в каждом. Непосредственно на память выведены 13 младших разрядов шины адреса (A12–A0), обеспечивающие адресацию 8К ячеек ОЗУ. Оставшиеся старшие три разряда шины адреса (A15–A13), определяющие номер адресного сегмента, через мультиплексор Д11 подключены к адресным входам статического ОЗУ (Д21), хранящего в шестнадцати 4-разрядных регистрах номера банков ОЗУ.

При обращении к оперативной памяти (любой адрес, кроме адресов из C000–CFFF) эти три разряда адреса выбирают один из первых 8 регистров статического ОЗУ, находящегося в режиме чтения. Номер выбранного регистра равен номеру сегмента адресного пространства ЦП. В результате на выходах статического ОЗУ (выводы 5, 7, 9, 11) формируется код номера банка (старшие четыре разряда адреса ОЗУ ячейки), подключаемого к текущему адресному сегменту.

При таком способе адресации любые 8 из 16 банков ОЗУ могут быть подключены к 8 адресным сегментам ЦП по 8К байт адресов в каждом, а соответствие между их номерами задается в первых восьми регистрах статического ОЗУ. Пример варианта распределения памяти показан на рис.10.

Начальное распределение памяти устанавливается программой "Системный монитор", записанной в ПЗУ Д6, сразу по включении питания ПЭВМ. Оно обеспечивает подключение к нулевому сегменту нулевого банка, к первому сегменту первого банка и т. д. Последние восемь банков с номерами от 8 до F остаются неподключенными.

Перераспределение соответствия банков и сегментов осуществляется ЦП обращением по специальным адресам, отведённым в области ввода/вывода — C100–C1FF. Изменения в таблицу распределения вносятся выполнением операции записи по адресу C1mn, где m — номер сегмента (m=0–7), а n — номер банка (n=0–F). При выполнении операции записи по адресу C1mn происходит переключение мультиплексора Д11 на передачу кода m (разряды A4–A6 ША ЦП), определяющего регистр, в который будет записан проинвертированный код n в качестве нового содержимого. Инверсия кода n необходима вследствие наличия инверсных выходов у микросхемы статического ОЗУ КР531РУ8.

Содержимое таблицы распределения памяти может быть прочитано по тем же адресам. Для этого ЦП должен выполнить операцию чтения по адресу соответствующего сегмента — C1mX, где X обозначает любой из 16 адресов 0–F. В результате выполнения такой операции в ЦП по шине данных поступит код mn, т.е. номер банка n занимающего сегмент m.

Для считывания текущего распределения предназначен мультиплексор передачи состояний (МПС), состоящий из двух микросхем К555КП11 (Д22, Д23). В случае обращения ЦП по адресу C1mX (т.е. при выполнении операции чтения по любому из адресов C1m0–C1mF) МПС обеспечивает передачу на шину данных кода номера сегмента m (на разряды D4–D6 ШД ЦП) и содержимого регистра, указывающего код номера банка, подключенного на данный сегмент (на разряды D0–D3).

В работе УУП используются два управляющих сигнала: "РП" (разделение памяти) и "ПМ" (признак машины) "ПА" (признак "Apple"). Первый практически всегда равен 0 и становится равным 1 только при работе ПЭВМ в режиме "Apple", когда ЦП обращается к ПЗУ. В этом случае ПЗУ, содержащее программы режима "Агат", должно быть отключено, а вместо него процессору подставляется тот банк ОЗУ, в который перед переходом в режим "Apple" были загружены программы, размещаемые в ПЗУ эмулируемой ПЭВМ (Apple II, Правец). Номера этих банков записываются перед переходом в режим "Apple" в регистры с номерами E и F, соответствующие номерам адресных сегментов ПЗУ плюс 8. Второй сигнал блокирует запись в D21 при работе ПЭВМ в режиме "Apple" (блокировка осуществляется логическим сложением на элементе D7.4).

4.3.2. Управление памятью

Как было указано ранее, адреса D000–FFFF в адресном пространстве ЦП отводятся под системное ПЗУ. На ячейке использование этой части адресного пространства возможно в двух режимах:

  • в режиме обычного ПЗУ, когда на эти адреса подключено реальное ПЗУ, реализованное на микросхемах D5 и D6;
  • в режиме псевдо-ПЗУ, когда на эти адреса подключается часть оперативной памяти, блокируя при этом чтение из микросхем ПЗУ.

Для того, чтобы обеспечить переход области адресов ПЗУ из режима в режим, а также для обеспечения разделения адресного пространства на соответствующие зоны, на ячейке имеется специальный узел управления памятью (УУП, рис. 11), выполненный на двух микросхемах ПЗУ (D3 и D14), триггерах К555ТМ9 (D8) и элементах логики (D1.2, D24.1).

На элементах Д3 и Д6 выполнено специальное устройство управления состоянием псевдо‑ПЗУ, известное в ПЭВМ Apple как “Language Card” (LC), обеспечивающее, по желанию пользователя, подключение на адреса D000‑FFFF либо ПЗУ (Д5 или Д6), либо части оперативной памяти, расположенной на плате.

Состояние LC характеризуется тремя параметрами: состоянием чтения (ЧТ), состоянием записи (ЗП) и номером банка D (D).

Сигнал “ЧТ” (выход D8.12) высоким уровнем разрешает чтение памяти LC и запрещает чтение ПЗУ (выход Д5 в третьем состоянии). При низком уровне сигнала разрешено чтение ПЗУ, заменяющего его в режиме Apple ОЗУ, и запрещено чтение памяти LC.

Сигнал “ЗП” (выход D8.10) высоким уровнем запрещает запись в память LC и низким разрешает; таким образом, при высоком уровне сигнала память работает в режиме ПЗУ, и запись по адресам D000‑FFFF вообще невозможна.

При обращении к ОП через адреса 6 сегмента (рис. 10) есть особенность, заключающаяся в том, что из‑за постоянного и неизменного наличия в адресах C000‑CFFF области ввода/вывода доступ к подключенному к этому сегменту банку памяти емкостью 8К разрешен только через адреса D000‑DFFF. С целью полного использования всей памяти ПЭВМ предусмотрена возможность разделить банк, подключенный к 6 сегменту, на две части по 4К байт с возможностью подключения каждой из них к адресам D000‑DFFF. Для этого используется сигнал “D” (выход D8.15), уровень которого показывает, какая половина банка ОЗУ подключена к адресам D000‑DFFF.

Управление LC в режиме “Агат” осуществляется операциями записи по адресам C080‑C08F в соответствии с табл. 2.

Таблица 2  
--------------------------------------------------------------------
операции    |  вырабатываемые сигналы  |      режимы работы
записи по   |-------------------------------------------------------
адресу      |    D    |  ЧТ    |  ЗП   |  ПЗУ  |     память LC  
------------|---------|--------|-------|-------|--------------------
С080/С088   |   0/1   |    1   |   1   | откл. | чтение разрешено  
            |         |        |       |       | запись запрещена  
--------------------------------------------------------------------
С081/С089   |   0/1   |    0   |   0   | вкл.  | чтение запрещено  
            |         |        |       |       | запись разрешена  
--------------------------------------------------------------------
С082/С08А   |   0/1   |    1   |   0   | откл. | чтение разрешено  
            |         |        |       |       | запись запрещена  
--------------------------------------------------------------------
С083/С08В   |   0/1   |    1   |   0   | откл. | чтение разрешено  
            |         |        |       |       | запись разрешена  
--------------------------------------------------------------------

В режиме "Apple" управление LC осуществляется аналогично, но только выполнением операции чтения ЦП по адресам С080–С08В в соответствии с табл.3.

Таблица 3  
----------------------------------------------------------------------
операции    |   вырабатываемые сигналы   |    режимы работы  
чтения по   |---------------------------------------------------------
адресу      |     D    |   ЧТ   |   ЗП   |   ПЗУ  | память LC  
------------|----------|--------|--------|--------|-------------------  
С080/С088   |   0/1    |    1   |    1   | откл.  | чтение разрешено  
            |          |        |        |        | запись запрещена  
----------------------------------------------------------------------
С081+С081   |   0/1    |    0   |    0   | вкл.   | чтение запрещено  
/C089+C089  |          |        |        |        | запись разрешена  
----------------------------------------------------------------------
С082/С08А   |   0/1    |    0   |    1   | вкл.   | чтение запрещено  
            |          |        |        |        | запись запрещена  
----------------------------------------------------------------------
С083+С083   |   0/1    |    1   |    0   | откл.  | чтение разрешено  
/С08В+С08В  |          |        |        |        | запись разрешена  
----------------------------------------------------------------------

Примечание: обозначения вида С083+С083 предполагают обязательное двукратное выполнение операции чтения по адресу С083.

Операции чтения LC (в режиме "Apple" одновременно с изменением ее состояния) позволяют получить на шине данных ее подавляющее состояние. Для этого в LC используется мультиплексор ДБ4 и элемент д.б.6, обеспечивающий выдачу сигнала ЗП в шину данных инверсным кодом.

Непосредственное формирование сигналов управления осуществляется в ПЗУ Д14, на входы которого подаются старшие разряды шины адреса, сигналы состояния LC, R/W, блокировки ОЗУ (БЛОЗУ), блокировки ПЗУ (БЛПЗУ) и признак машины (ПМ) признак "Apple" (ПА).

Сигналы БЛОЗУ и БЛПЗУ имеют обычно высокий уровень. Низкий уровень сигнала БЛОЗУ означает, что внешнее устройство, например ячейка дополнительной памяти, установило блокировку ОЗУ и при обращении к нему по адресу 0000–BFFF. Аналогично БЛПЗУ значит, что ПЗУ и ОЗУ частично отключаются при адресных обращениях к адресам постоянной памяти.

Выходы Д14 определяются через входные сигналы по формулам:

A12Ф = A12 & AD + AD & D & (1 - ЧТ & ЗП)

W = 1 - R/W & (БЛОЗУ & АОЗУ + БЛПЗУ & АПЗУ & ЗП)

ВКОЗУ = (1 - БЛОЗУ & АОЗУ) & (1 - БЛПЗУ & АПЗУ & (R/W & (ПМ + ПМ & ЧТ) + R/W & ЗП))

F = 1 - БЛПЗУ & AF & ПМ & R/W & ЧТ

C = A15 & A14 & A13 & A12

РП = ПМ & АПЗУ & R/W & ЧТ

DE = 1 - БЛПЗУ & ADE & ПМ & R/W & ЧТ

ВКПЗУ = 1 - БДПЗУ & АПЗУ & ПМ & R/W & ЧТ

где

АОЗУ = A15 & A14

АПЗУ = A15 & A14 & (1 - A13 & A12)

AF = A15 & A14 & A13 & A12

AD = A15 & A14 & A13 & A12

ADE = A15 & A14 & (A13 & A12 + A13 & A12)

Примечание: знаки + и & обозначают соответственно логическое сложение и умножение, а 1-х обозначает дополнение x до 1.

назначение выходных сигналов следующее:

A12Ф — модифицированный 12-й разряд адреса, используемый в качестве 12-го разряда адресного входа ОЗУ ячеек. A12Ф совпадает с A12 шины адреса при обращении ЦП по любым адресам кроме D000–DFFF. В противном случае A12Ф совпадает с номером банка D, заданного в LC.

W — разрешение записи в ОЗУ ячейки (активный уровень низкий). Разрешение записи в ОЗУ при операциях записи (R/W=0) по адресам 0000–BFFF, если нет блокировки ОЗУ, или по адресам D000–FFFF, если нет блокировки ПЗУ и разрешена запись в память LC.

ВКOЗУ — выбор ОЗУ (активный уровень низкий). Высокий уровень сигнала блокирует формирование строба выборки строк (RAS) микросхем памяти и устанавливает в третье состояние буферные регистры D47–D48. ВКОЗУ=0 при обращении ЦП по адресам 0000–BFFF, если нет блокировки ОЗУ, или при обращении ЦП по адресам D000–FFFF, если нет блокировки ПЗУ и LC разрешает работу (ЦП выполняет операцию чтения при ЧТ=1 или операцию записи при ЗП=0). При чтении в режиме "Apple" ВКОЗУ=0 независимо от состояния сигнала ЧТ.

F — сигнал разрешения выборки ПЗУ D6 (активный уровень низкий). Разрешает выборку ПЗУ при операциях чтения по адресам F000–FFFF, если нет блокировки ПЗУ и запрещено чтение памяти LC. В режиме "Apple" выборка ПЗУ запрещена независимо от состояния LC.

C — признак обращения ЦП к адресам ввода/вывода (активный уровень высокий). С помощью элементов D24.1–3 этот сигнал стробируется по фазе тактового сигнала Ф0 (для формирования сигналов управления вводом/выводом) и из него выделяется строб ПЗУ ввода/вывода (I/O STB), совпадающий с низким уровнем сигнала ПЗУ при наличии на адресной шине кода адреса в диапазоне С800–CFFF.

РП — признак разделения памяти (активный уровень высокий). Формируется только при работе ПЗВМ в режиме "Apple", когда ЦП читает по адресам D000–FFFF, LC запрещает чтение ОЗУ (ЧТ=0). В этом режиме узел управления поддерживает ЦП число ПЗУ дополнительных банков ОЗУ, номер которого записан в LC и соответствует номеру сегмента адресного пространства +8 (см. п. 4.3.1). Режим разделения памяти введен для обеспечения загрузки системного программного обеспечения перед Apple-II.

DE — сигнал разрешения выборки ПЗУ D6 (активный уровень низкий). Аналогичен сигналу "F", но не действует при операциях чтения по адресам D000–EFFF.

ВКПЗУ — сигнал разрешения выборки ПЗУ (D5 или D6). Низким уровнем запрещает работу шины формирования данных Д4, переводя ее выходы в третье состояние. Одновременно, в зависимости от адреса на адресных шинах, формируется сигнал "F" или DE. Сигнал формируется только в режиме "Агага" при операциях чтения по адресам D000–FFFF, если нет блокировки ПЗУ (БЛПЗУ=1) и запрещено чтение памяти LC.

Цикл управления памятью в входном такте формирует управляющие сигналы сразу после установления кода адреса на ША ЦП в течение Ф0=0 (рис.2). Это позволяет формировать на мультиплексорах адреса всю адресную часть микросхем динамической памяти, при этом на выходах устанавливается код начала микропроцессорного фазы (Ф0=1) и тем самым подготовить ОЗУ к процессу чтения/записи данных.

4.3.3. Операции чтения/записи

Доступ ЦП к ОЗУ ячейки осуществляется во время положительной фазы сигнала Ф0 (рис.12). Эта фаза (фаза процессора) переключает мультиплексоры адреса D25–D29 в режим передачи ОЗУ адресов, поступивших от ЦП (A1–A12), узла распределения памяти (A13–A15) и узла управления (A12Ф). При этом к ША ОЗУ подключаются разряды A8–A11, A12Ф, Q0–Q2, передающие младшие 8 разрядов адреса ОЗУ (код номера строки ячейки, выбираемой на микросхемы памяти D31–D46). На выходах сигналов RAS эти 8 разрядов адреса запоминаются в регистрах микросхем. После этого, по сигналу переключения адреса SWA (входы D25.14–D29.14) к шине адреса ОЗУ подключаются остальные 8 разрядов адреса, задающие код номера столбца, и по заднему фронту сигнала CAS на входы микросхем устанавливается внутренняя часть адреса памяти. На этом адресная часть цикла обращения к памяти заканчивается.

В операциях чтения ОЗУ высокий уровень сигнала "W", подаваемый со входа D30.2 на D14.10, обеспечивает работу микросхем D31–D46 на выдачу информации. Через время, равное времени выборки адреса, на их выходах устанавливается код, соответствующий содержимому адресуемой ячейки ОЗУ и через буферные регистры D47, D48 (БРП1 и БРП2), передается в шину данных ЦП. Управление выдачей информации с буферных регистров осуществляется с помощью дешифратора D30, обеспечивающего по значению младшего разряда адреса A0 разрешение выдачи только одному из них. При A0=0 выдача разрешена первому регистру (D47) и при A0=1 второму. При наличии высокого уровня стробирующего сигнала на входе C, регистр, которому разрешена выдача информации на виду данных, находится в прозрачном режиме, когда состояние выхода регистра полностью определяется состоянием его входов.

По следу стробирующего сигнала в регистре фиксируется его состояние, что гарантирует выдачу на шину считанного из ОЗУ кода до окончания фазы процессора. На этом операция чтения заканчивается. При выполнении операции записи узел управления памяти устанавливает на входе D30.2 низкий уровень сигнала "W", который переводит один из массивов ОЗУ (первый для A0=0 и второй для A0=1) в режим записи. Запись байта данных, поступающего с ЦП, производится по низкому уровню сигнала CAS в соответствующий массив ОЗУ. При этом буферные регистры остаются отключенными, и их выходы находятся в третьем состоянии.

4.3.4. Обращение ДК к памяти

ОЗУ обслуживает двух пользователей: системную магистраль (ЦП и активные внешние устройства) и дисплейный контроллер. Их обслуживание осуществляется попеременно на основе способа разделения фазы, предусматривающего разделение периода импульсов основной тактовой частоты (сигнал Ф0) на две равные части — фазу процессора и фазу ДК. Дисплейный контроллер получает доступ к ОЗУ во время фазы Ф0=0. На это время все микросхемы памяти переводятся в режим считывания, а буферные регистры D47 и D48 отключаются. Шина ДК переключает мультиплексоры адреса на адреса, поступающие от ДК. Сначала к шине ОЗУ подключаются 8 разрядов шины ДК, соответствующие сигналу RAS. После этого к шине ОЗУ по сигналу переключения адресов SWA подключаются остальные 8 разрядов адреса шины ДК и запоминаются внутренней частью регистров микросхем памяти по заднему фронту сигнала CAS. Это время, равное времени выборки относительно сигнала CAS, два байта информации из адресуемых ячеек обоих массивов ОЗУ поступают на 16-разрядный буферный регистр данных, выполненный на двух микросхемах К555ИР23 (149 и 150), и запоминаются на выходах по фронту сигнала RAS.

На этом цикл обращения дисплейного контроллера к ОЗУ заканчивается. Временные диаграммы чтения памяти дисплейным контроллером аналогичны диаграммам, приведенным на рис. 12.

4.3.5. Регенерация памяти

Используемые в ячейке микросхемы динамической памяти требуют 128 циклов регенерации, осуществляемой перебором младших семи разрядов адреса на входы ОЗУ по сигналу RAS. Время регенерации должно превышать 2 мс. Особенности работы ДК при формировании изображений на экране видеоконтрольного устройства позволяют совместить регенерацию памяти с обращением ДК к ОЗУ. Это позволяет избежать использования для организации регенерации каких-либо специальных аппаратных и временных затрат.

4.4. Дисплейный контроллер

4.4.1. Общие принципы работы ДК

Процесс формирования изображения дисплейным контроллером основывается на развертке (или как его еще называют растром телевизионном) принципе развертки изображения, что предопределяет жесткую последовательность работы всех функциональных узлов ДК. Поэтому, прежде чем перейти к описанию работы ДК, необходимо напомнить основные положения растрового принципа развертки:

  • изображение на экране складывается из последовательности отдельных кадров следующих с частотой кадровой развертки равной 50 Гц (построчной развертка), что есть время развертки одного кадра составляет 20 мс;
  • каждый кадр изображения образуется из отдельных строк в последовательностью развертки слева направо сверху вниз;
  • частота строчной развертки составляет 15625 Гц, то есть время развертки одной строки 64 мкс;
  • изображение формируется на экране в течение прямого хода луча по строке и по кадру, на время обратного хода луча, в течение которого происходит возврат луча в исходное положение, изображение гасится;
  • изображение формируется по мере продвижения луча (лучей) по строке - засветкой в нужный момент требуемых точек экрана заданным цветом.

Исходя из этих положений, можно сформулировать основные задачи возлагаемые на ДК.

  • формирование строчной и кадровых синхроимпульсов требуемой частоты и длительности для обеспечения растрового принципа.
  • последовательное формирование адресов для обращения в нужную область памяти экрана по мере развертки изображения;
  • преобразование информации, поступающей из памяти, в вида способным непосредственно управлять лучами ВКУ в соответствии с требуемым режимом отображения информации;
  • гашение изображения на время обратного хода луча по строке и по кадру, то есть формирование рабочего поля экрана в соответствии с требуемым форматом.

Процесс формирования изображения дисплейным контроллером определяется также и особенностями каждого из требуемых режимов отображения информации, которые наряду с основными параметрами развертки, ГЦР и ЦК, составляют задания на ДК. Эти задания включают вид развертки, порядок и способы формирования адресов информации об изображении, каким образом считанная из памяти информация трансформируется в изображение, как задается цветовая окраска изображения.

4.4.2. Режимы отображения информации на экране.

Содержимое любой части оперативной памяти (исключения будут оговорены отдельно) может быть отображено на экране ВКУ в одном из 8 возможных режимов отображения. Размер отображаемой области ОП (памяти экрана) зависит от режима отображения. Основные характеристики режимов приведены в табл.4.

Таблица 4

| Режим | Режим          | Формат      | Размер     | Число цвет- | Объем      |
| работы| отображения    | изображения | элемента   | ных/палитр- | видео-     |
| ДК ПВМ|                | (элементов  | разложения | ных эле-    | ОЗУ        |
|       |                | разложения) | (точек)    | ментов      | разложения |
|       |                |             |            | разложения  | (байт)     |
|-------|----------------|-------------|------------|-------------|------------|
| "Agat"| Графический    | 512x256     |    1x1     |   2/4       |  16 K      |
|       | МГДП           |             |            |             |            |
|       | Графический    | 256x256     |    1x1     |   2/4       |   8 K      |
|       | МГВР           |             |            |             |            |
|       | Графический    | 256x256     |    1x1     |   4/4       |  16 K      |
|       | ЦГВР           |             |            |             |            |
|       | Графический    | 128x128     |    2x2     |    16       |   8 K      |
|       | ЦГCР           |             |            |             |            |
|       | Текстовый      | 32х32       | знакоместо |   8/4       |   2 K      |
|       | Т32            | знакоместа  |     7x8    |             |            |
|       |                |             | символ 5х7 |             |            |
|       | Текстовый      | 64х32       | знакоместо |   2/4       |   2 K      |
|       | Т64            | знакоместа  |     7x8    |             |            |
|       |                |             | символ 5х7 |             |            |
|-------|----------------|-------------|------------|-------------|------------|
|"Apple"| Графический    | 280x192     |    1x1     | 6 с огра-   |  7.5 K     |
|       | HGR            |             |            | ничениями   |            |
|       | Текстовый      | 40х24       | знакоместо |   2/4       |  1 K       |
|       | Т40            |             |     7x8    |             |            |
|       |                |             | символ 5х7 |             |            |
|       | Смешанный      | 280x160     |            |             |            |
|       | графика HGR и  | точек       |            |             |            |
|       | 4 строки текста| 40х4        |            |             |            |
|       |                | знакоместа  |            |             |            |
|-------|----------------|-------------|------------|-------------|------------|

4.4.3. Отображение информации в режиме "Agat"

4.4.3.1 Цветные графические режимы

Дисплейный контроллер в режиме "Agat" имеет два цветных графических режима: среднего (ЦГСР) и высокого (ЦВГР) разрешения.

Режим ЦГСР иногда называют псевдографическим, так как элементом разложения в этом режиме является не точка, а некоторая совокупность точек, размером 2x2, засвечиваемая на экране одним цветом и получившая название блок (pixel).

Формат изображений на экране: 128 строк по 128 блоков в строке. В этом случае каждый байт в памяти экрана разделяется на две тетрады, которые содержат код цвета соответствующего блока. Старшая тетрада первого байта экранной строки (разряды 4-7) содержит код цвета блока, расположенного с левого края экрана. Младшая тетрада (разряды 0-3) содержит код цвета следующего по строке блока и т. д. Для отображения одной строки блока требуется 64 байта. Выборка информации из памяти экрана первого последовательно: первые 64 байта хранят информацию для первой строки блоков, вторые 64 байта для второй строки и т. д. Для отображения одного полного кадра требуется памяти экрана в объеме 8 Кбайт (рис. 13). Четыре разряда кода цвета позволяют иметь для каждого блока 16 различных цветов. Возможные коды цвета и их кодировка приводятся в табл.5.

Таблица 5

Код цвета |   | Цвет      | Код цвета     | Цвет
0000      | 0 | черный    | 1000      | 8 | черный
0001      | 1 | красный   | 1001      | 9 | коричневый
0010      | 2 | салатовый | 1010      | A | зеленый
0011      | 3 | желтый    | 1011      | B | хаки
0100      | 4 | синий     | 1100      | C | темно-синий
0101      | 5 | сиреневый | 1101      | D | фиолетовый
0110      | 6 | голубой   | 1110      | E | бирюзовый
0111      | 7 | белый     | 1111      | F | серый

Цветной графический режим высокого разрешения обеспечивает отображение в пределах рабочего поля экрана 65534 точек в виде матрицы из 256 рядов по 256 точек в ряду (рис. 14). Каждой точке изображения на экране соответствуют два бита в памяти экрана. Каждый байт в памяти экрана хранит 2-разрядные коды для засветки 4-х точек. Старшие два разряда (6, 7) первого байта экранной строки задают код цвета точки, расположенной с левого края экрана. Разряды 4 и 5 задают код цвета следующей точки и т. д. Для отображения одной строки требуется 64 байта.

Для отображения одного полного кадра требуется 16К байт памяти экрана, которая разделяется на две равные части, соответствующие двум соседним банкам физической оперативной памяти. Банк с четным номером (0, 2 и т.д.) обеспечивает хранение четных строк развертки, а банк с нечетным номером (1, 3 и т.д.) нечетных строк.

Два разряда кода цвета дают возможность засвечивать точки в 4-х цветах. Соответствие цветов отображаемых на экране точек кодам цвета в памяти экрана (палитра) можно программно изменять. Всего имеется четыре палитры. Цвет точки, в зависимости от палитры приведен в табл.11.

4.4.3.2. Монохромные графические режимы

Монохромных графических режимов также два: монохромный графический режим высокого разрешения (МГВР) и монохромный графический режим удвоенной плотности (МГП).

Режим МГВР имеет такой же формат изображения, что и цветной графический режим высокого разрешения 256х256. Но в этом режиме, в отличие от режима ЦГВР, каждой точке экрана соответствует не два бита в памяти экрана, а всего лишь один, и 1 засвечивает соответствующую точку цветом, указанным в табл.11, а "0" гасит ее (выводит в цвете фона). Соответственно вдвое уменьшается и объем памяти экрана: для отображения одной экранной строки требуется всего 32 байта, а для полного кадра 8 Кбайт. Старший бит первого байта экранной строки определяет цвет точки с левого края экрана, следующие разряды задают цвета второй точки и т. д.

Режим (0) первого байта отображает данные для следующего банке 0. Так по нулевой и 64-й строке занято 64 байта строки (рис.15). Соответствие цветов каждого определяет цвет засветки точки на экране в зависимости от палитры в соответствии с табл.11.

В монохромном графическом режиме удвоенной плотности (МГП), в отличие от режима МГВР, формат изображения по горизонтали имеет удвоенное число точек — 512 (рис.16). Соответственно вдвое увеличивается и объем памяти экрана: до 64 байт на строку и до 16К байт на полный кадр. Также как и в режиме ЦГВР память экрана делится на две равные части, соответствующие банкам оперативной памяти: банк с четным номером обеспечивает хранение четных экранных строк, а банк с нечетным номером — нечетных строк. Цвет засветки точек также зависит от палитры в соответствии с табл. 11.

4.4.3.3. Текстовые режимы.

Работа ДК в этих режимах основывается на традиционном знакоместном методе формирования изображения с использованием ПЗУ знакогенератора. В этих режимах все рабочее поле экрана разбивается на знакоместа размером 7х8 (8 строк по 7 точек в строке). На каждом знакоместе может быть расположен либо один алфавитно-цифровой символ, размер которого составляет обычно 5х7 точек, либо графический символ размером равным размеру знакоместа (7х8). Полиграммы (точечные матрицы) символов хранятся в ПЗУ знакогенератора. В памяти экрана хранится только код тех символов, вывод которых предполагается на соответствующих знакоместах. Набор и количество возможных символов определяется объемом ПЗУ знакогенератора и числом разрядов, используемых для задания кода различных символов. Набор символов и их коды приводятся в табл. 6.

Таблица 6

00 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
20 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
40 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
60 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
80 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
A0 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
C0 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
E0 : □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □

В цветном текстовом режиме (Т32) каждому знакоместу экрана соответствуют 2 байта в памяти экрана (рис.17). На экране при этом располагается 1024 знакоместа (32 строки по 32 символа). Первый (четный) байт, когда A0=0, содержит код символа, по КОН-8, который должен быть выведен на данном знакоместе. Второй (нечетный) байт, когда A0=1, содержит следующую управляющую информацию:

R,G,B (0-й, 1-й и 2-й биты) — разряд кода цвета символа. Четыре палитры позволяют менять цвет фона в соответствии с табл.11.

INV (5-й бит) — разряд инверсии подсветки, задает режим вывода символа на экран: нормальный или инверсный. В нормальном режиме выводится на темном фоне тем цветом, код которого задан в разрядах цвета. Инверсный символ выводится черным на фоне цветного знакоместа, цвет которого задан теми же разрядами цвета.

ME (3-й бит) — разряд мерцания, задает режим мерцания, в результате символ остается подобен то инверсии, то нормальным с частотой переключени 5 Гц.