Агат/ЯБ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, регистр, которому разрешена выдача информации на виду данных, находится в прозрачном режиме, когда состояние выхода регистра полностью определяется состоянием его входов.