Диспетчер памяти эвм
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может найти применение при построении внутристанционных эмуляторов для отладки микропроцессорных систем . Цель изобретения - расширение области применения за счет возможности использования для реализации эмуляторов. Диспетчер памяти ЭВМ содержит первый
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (19) (11) (51>s G 06 F 13/00
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4781689/24 (22) 15.01.90 (46) 07.03,92, Бюл. М 9 (75) А, А. Гаврилов (53) 681.3(088.8) (56) Авторское свидетельство СССР
N- 1246712, кл. G 06 F 13/00, 1982.
Авторское свидетельство СССР
М 1363223, кл, G 06 F 13/00, 1986, (54) ДИСПЕТЧЕР ПАМЯТИ ЭВМ (57) Изобретение относится к вычислительной технике и может найти применение при построении внутристанционных эмуляторов для отладки микропроцессорных систем. Цель изобретения — расширение области применения за счет возможности использования для реализации эмуляторов.
Диспетчер памяти ЭВМ содержит первый
1718225
16 и второй 17 дешифраторы, блок 18 памяти, первый и второй выходы которого соединены с информационными входами регистра 19, первый по шестой триггеры
20 — 25, первый по третий элементы ИЛИ 29—
31, первый элемент HE 32. Новым s диспетчере памяти 3BI является введение
Изобретение относится к вычислительной технике и может быть использовано при построении внутрисхемных эмуляторов для отладки микропроцессорных систем, В устройстве "Микро-ЭВМ" АС 1246772
СССР блок переключения обеспечивает двойное расширение адресного пространства микропроцессора как при обращении к памяти, так и при обращении к портам ввода-вывода, Обеспечивается разделение адресного пространства на два уровня: уровень пользователя и уровень супервизора, Устройство "Диспетчер памяти ЭВМ", АС 1363223 СССР, (прототип) также обеспечивает расширение адресного пространства микропроцессора как при обращении к памяти, так и при обращении к портам ввода-вывода. Обеспечивается разделение адресного пространства на два уровня: уровень пользователя и уровень супервизора., Недостаток обоих устройств: невозмож-. ность использования для реализации эмулятора, в котором адресное пространство должно быть разделено на три уровня: уровень супервизора, на котором реализуются системные функции, уровень эмулятора, на котором выполняются программы пользователя в среде эмулятора, уровень пользователя, на котором выполняются программы пользователя в среде аппаратуры пользователя, невозможность подмены памяти пользователя памятью эмулятора; невозможность подмены портою ввода-вывода, так как у аналога и у прототипа принадлежность портов ввода-вывода совпадает с принадлежностью памяти кодов; не обеспечивается возмс>кность работы с микропроцессорами 8085, КР1821ВМ85, ZHO и др. и в системах, не использующих контроллер прерываний
8259 (КР580В НБЭ), Цель изобретения — расширение области применения устройства за счет возможности его использования при построении эмуляторов и для использования не только с микропроцессорами 8080А и
КР580ВМ80А, но и с 8085, КР1821ВМ85, Z80, что обспечивается разделением адресного пространства микпропроцессора на
40 второго 33 и третьего 34 элементов НЕ, выходы которых соединены с входами седьмого триггера 35, четвертого элемента
ИЛИ 36, четвертого элемента И 37, восьмого 38 и девятого 39 триггеров, третьего дешифратора 40 и пятого элемента ИЛИ
41, 8 ил. три уровня, возможностью подмены памяти и портов ввода-вывода в динамическом режиме в зависимости от текущего машинного цикла, определяемого статусной информацией.
Цель достигается тем, что в устройство, содержащее два дешифратора, блок памяти, регистр, шесть триггеров, три элемента
И, три элемента ИЛИ, элемент НЕ причем вход синхронизации устройства соединен с тактовым входом первого триггера, первый вход переключения режима устройства соединен с первым входом первого элемента И и тактовым входом второго триггера, второй вход переключения режима устройства соединен с вторым входом первого элемента И и с первым входом второго элемента И, выход которого соединен с входом сброса второго триггера, вход сброса устройства соединен с входами сброса третьего и шестого триггеров, регистра, вторым входом второго элемента И, адресные входы устройства соединены с первыми информационными входами первого дешифратора, входы данных устройства соединены с адресными входами блока памяти, один из разрядов входа данных устройства соединен с информационным входом шестого триггера, вход записи устройства соединен с входом разрешения первого дешифратора, а первый вход чтения устройства соединен с тактовыми входами регистра и четвертого триггера, входы статуса устройства соединены с первыми входами второго дешифратора, один из разрядов входа статуса устройства соединен с первым входом первого элемента ИЛИ и входом первого элемента Н Е, выход которого соединен с входом разрешения блока памяти и входом загрузки регистра, информационные входы которого соединены с первым и вторым выходами блока памяти, третий выход блока памяти соединен с информационным входом четвертого триггера, выход и вход сброса которого соединены с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом третьего триггера, инверсный выход третьего триггера соединен с вторым входом второго дешифратора, информационный вход
1718225 третьего триггера соединен с выходом второго триггера, вход установки которого соединен с - первым выходом первого дешифратора, второй выход первого дешифратора соединен с тактовым входом шестого триггера, инверсный выход котброго соединен с третьим входом второго дешифратора, выход первого элемента ИЛИ соединен с входом установки четвертого триггера, выход регистра соединен с информационным входом первого триггера, выход второго дешифратора соединен с вторым информационным входом первого дешифратора и с первым адресным выходом устройства, введены третий дешифратор, четвертый и пятый элементы ИЛИ, второй и третий элементы НЕ, четвертый элемент И, седьмой, восьмой и девятый триггеры. При этом первыйвходтретьегодешифраторасоединен с входом статуса устройства, второй и третий входы третьего дешифратора соединены с первым и вторым входами управления устройства, вход синхронизации устройства через второй элемент НЕ соединен с тактовым входом седьмого триггера, вход сброса седьмого триггера соединен с выходом первого элемента И, информационный вход седьмого триггера соединен с выходом третьего элемента НЕ, вход которого соединен с выходом регистра и с вторым входом первого элемента ИЛИ, выход седьмого триггера соединен с первым входом третьего элемента ИЛИ, второй вход которого соединен с инверсным выходом третьего триггера, тактовый вход третьего триггера соединен с выходом третьего элемента И, первый и второй входы которого соединены соответственно с выходом третьего элемента ИЛИ и с выходом пятого триггера, вход сброса пятого триггера соединен с первым выходом первого дешифратора, тактовый вход пятого триггера соединен с выходом второго элемента ИЛИ, входы сброса первого и девятого триггеров и вход установки пятого триггера соединены с входом сброса устройства, тактовый вход девятого триггера соединен с первым входом чтения устройства, выход первого триггера соединен с четвертым входом второго дешифратора, пятый вход которого соединен с выходом четвертого элемента
ИЛИ, первый вход четвертого элемента
ИЛИ соединен с выходом восьмого триггера, а второй вход четвертого элемента ИЛИ вЂ” с выходом девятого триггера, информационный вход которого соединен с выходом третьего триггера, информационный вход восьмого триггера соединен с третьим выходом первого дешифратора, а тактовый вход — с выходом четвертого элемента И, первый вход которого соединен с входом записи устройства,. второй вход — с вторым входом чтения устройства, выход третьего дешифратора соединен с первым входом пятого элемента ИЛИ, второй вход которого
-соединен с выходом второго дешифратора, выход пятого элемента ИЛИ соединен с вторым адресным выходом устройства.
В прототипе обеспечивается работа на уровне супервизора и уровне пользователя, но не обеспечивается возможность подмены ресурсов пользователя ресурсами эмулятора. Кроме того, принадлежность портов
15 ввода-вывода всегда совпадает с принадлежностью памяти кодов, т.е, отсутствует доступ к портам ввода-вывода пользователя с уровня супервизора, что является для эмуляторов обязательным условием, например, 20 для чтения состояния портов или записи в них новых данных. Также прототип ориентирован на использование в составе микропроцессора 8080А или КР580ВМ80А, а также на использование в микропроцессор8259 или КР580ВН59.
В заявляемом устройстве обеспечивается разделение на три уровня: уровень супервизора, на котором выполняются системные программы управления работой эмулятора, уровень пользователя и уровень эмулятора, на котором выполняются (отлаживаются) программы пользователя. Обеспечивается подмена- памяти пользователя памятью эмулятора, для чего вырабатывается соответствующий выходной сигнал, который изменяет свое состояние динамически в зависимости от статусной информации и от состояния двух входных сигналов, форми30
40 руемых стандартной схемой MEMORY MAP и 10 МАР (подмена памяти и ввода-вывода), например, как это реализовано в эмуляторе
ICE — 85 фирмы INTEL. Также обеспечивается возможность обращения к портам вводавывода пользователя-эмулятора с уровня супервизора, что не имело место в прототипе, в котором принадлежность кодов и ввода-вывода совпадала, Для этого введены два триггера (восьмой и девятый), элемент И и элемент ИЛИ.
Необходимо обратить внимание на то, что, если в дальнейшем говорится о том, что система, использующая заявляемое устройство, работает на уровне супервизора, то это значит, что коды принадлежат уровню супервизора, а если система работает на уровне пользователя-эмулятора, то коды принадлежат уровню пользователя-супервизора.
Уровень супервизора — системный уровень, на котором выполняются системные
25 ной системе с контроллером прерываний
1718225 программы, например программа управления процессом эмуляции, Уровень пользователя и уравень эмулятора служат для возможности динамической подмены памяти и ввода-вывода между ресурсами пользователя и ресурсами эмулятора (ресурсы для подмены). Сигналы, формируемые заявляемым устройством, разделяют ресурсы процессора на ресурсы супервизора, эмулятора и пользователя.
На фиг. 1 приведена блок-схема устройства; на фиг. 2 — схема третьего дешифратора; на фиг. 3 — схема второго дешифратора; на фиг, 4, 5, 6 — временные диаграммы работы устройства; на фиг. 7 — содержимое блока памяти; на фиг. 8 — соответствие статусной информации типам машинных циклов для микропроцессоров 8080 и 8085.
На фиг, 1 — 3 изображены 1 — вход синхронизации устройства, 2 — первый вход переключения режима, 3 — второй вход переключения режима, 4 — вход сброса, 5— адресные входы, 6 — входы данных, 7 — входы статуса, 8 — вход записи, 9 — первый вход чтения, 10 второй вход чтения, 11 — первый адресный выход устройства, 12 — второй адресный выход устройства, 13 и 14 — первый и второй входы управления, 15 — выход третьего дешифратора 16 и 17 — первый и второй дешифраторы, 18 — блок памяти, 19 — регистр (регистр сдвига), 20 — 25- первыйшестой триггеры (О-триггеры), 26 — 28 — первый-третий элементы И, 29 — 31 первый-третий элементы ИЛИ, 32 — 34 — первый-третий элементы Н Е, 35 — седьмой триггер (JK-триггер), 36 — четвертый элемент
ИЛИ;, 37 — четвертый элемент И, 38 и 39— восьмой и девятый триггеры, 40 — третий дешифратор, 41.— пятый элемент ИЛИ, 42— первый выход дешифратора 16, 43 — 46 — второй-пятый входы дешифратора 18, 47 — вход первого элемента НЕ 32, 48, 49 — элементы
ИЛИ вЂ” НЕ, 50 — элемент НЕ, 51 — 56 — элементы И, 57 — элемент ИЛИ, 58, 59 — элементы
ИЛИ-НЕ, 60 — элемент ИЛИ, 61 — 65 — элементы И, 66 — элемент НЕ, Вход 8 — вход записи в порт — подключается к выходу 10W процессора, вход 10— вход чтения порта — к выходу 10R, вход 9— к выходу DBIN для микропроцессора 8080 или к RD для 8085, вход 1 — к входу SYNG для 8080 или к ALE для 8085, Выход 11 является дополнительным адресным входом для памяти и устройств ввода-вывода, подключаемых к процессору, выход 12 — сигнал переключения (коммутации) между ресурсами эмулятора и ресурсами системы пользователя, Сигнал переключения супервизор— пользователь-эмулятор и обратно формиру5
II 5
55 ется на выходе 11 устройства. Переключение ресурсов пользователя и эмулятора осуществляется с помощью дешифратора 40.
Если сигнал на выходе 11 определяет принадлежность текущего машинного цикла уровню пользователя ("0"), то сигнал на выходе 12 принимает значения сигнала на выходе 15, а если сигнал на выходе 11 определяет принадлежность к уровню супервизора ("1"), то сигнал на выходе 12 определяет принадлежность к уровню эмулятора ("1") независимо от состояния сигнала на выходе 15, Сигнал на выходе 15 определяет принадлежность ресурсов к уровню пользователя ("0") или эмулятора (" 1 "), Сигнал на выходе 11 является дополнительным адресным сигналом для памяти и портов ввода-вывода ресурсов супервизора и эмулятора. Сигнал с выхода 12 служит для коммутации между ресурсами эмулятора и ресурсами системы пользователя, т.е, îí определяет, какие ресурсы подключаются к процессору в текущем машинном цикле.
Процессор переключения с уровня супервизора на уровень пользователя-эмулятора; команда OUT адр., 1 — запрос на переключение на уровень пользователя-эмулятора; ряд команд, за исключением команд перехода; команда JMP адр. 2 — переход на уровень пользователя-эмулятора, адр, 2 — точка входа в программу пользователя.
Процесс переключения с уровня пользователя-эмулятора на уровень супервизора: команда DUT о (вход 3) — переключение на уровень супервизора; адрес входа на уровень супервизора, например, 38Н (по команде RSR7), т.е, когда по переключению на уровень супервизора формируется команда
RST7, которая и обеспечивает переход в определенную точку входа; можно также использовать контроллер прерываний, например, 8259 (KP580B Н59), тогда переход происходит по команде CALL, по входу 2 (например, от схемы обнаружения точек останова; см. например АС
1305680 СССР) — переключение происходит сразу после выполнения команды, на которой пришел сигнал по входу 2; далее также, как это указано выше.
Введение триггера 35 с соответствующими связями обеспечивает то, что инициирование переключения с уровня пользователя на уровень супервизора происходит без использования сигнала INTA/, что позволяет использовать заявляемое ус1718225
10 тройство в системах, не использующих контроллер прерывания (8259), Это расширяет область применения устройства.
Содержимое блока 18 памяти приведено на фиг. 7. Блок 18 выполняется в виде
ПЗУ. Первые два разряда определяют длину команды: 00 — однобайтная, 01 — двухбайтная, 11 — трехбайтная; Третий разряд определяет команду, инициирующий переключение на уровень пользователя с уровня супервизора.
Триггеры 38 и 39 и элементы И 37 и ИЛИ
36 служат для обеспечения возможности об5
10 ращения к портам ввода-вывода пользователя с уровня супервизора (когда память кодов определена как принадлежащая к уровню супервизора). Схема из указанных
15 элементов обеспечивает одно обращение к снимается с третьего выхода дешифратора
16).
Схема работает следующим образом.
Команда запроса на обращение к порту ввода-вывода пользователя переключает триггер 38 в состояние "1". Переключение происходит по заднему фронту сигнала с входа 8 или 10 (выход элемента И 37). При этом на выходе элемента ИЛИ 36 появляется "1", которая указывает на принадлежность портов ввода-вывода к уровню
30 пользователя. Следующий цикл обращения к порту ввода-вывода выполняется на уровне пользователя, а по конце сигнала обращения к порту(выход элемента И 37) триггер
38 возвращается в состояние "0".
При работе на уровне пользователя в
"1" находится триггер 39, так как на выходе
35 триггера 22 — "1" (память кодов принадлежит уровню пользователя), т.е. триггер 39
40 принимает значение триггера 22.
Дешифратор 17 (фиг, 3) выполняет функцию формирования сигнала на выходе 11 (сигнал, определяющий принадлежность текущего машинного цикла к уровню супервизора или к уровню пользователя-эмулятора) в зависимости от состояния статуса, определяющего тип машинного цикла, дополнительных сигналов статуса (обращение к стеку) и сигналов принадлежности к уровню супервизора или к уровню пользователяэмулятора. Статус присутствует постоянно в течение машинного. цикла и может меняться в момент действия тактового сигнала на входе 1. Статусная информация снимается с входом 7 устройства, дополнительная статусная информация — с триггера 20 (циклы обращения к кодам). Информация о принадлежности снимается с триггера 22 (принад50
55 порту ввода-вывода пользователя после посылки с уровня супервизора команды запро- 20 са на данное обращение (команда лежность кодов), триггера 25 (принадлежность данных и стека), с элемента ИЛИ 36 (принадлежность ввода-вывода). Если статусная информация указывает на цикл образения к данным ии стеку, то на выход 11 дешифратор 17 пропускает значение сигнала с триггера 25, если цикл обращения к кодам команд, — с триггера 22, если цикл обращения к портам ввода-вывода, — с выхода элемента ИЛИ 36.
Переключение супервизор — пользователь-эмулятор происходит в соответствии с фиг. 4. Осуществляется запрос на переключение (команда OUT адрес — первый выход дешифратора 16), а фактическое переключение на уровень пользователя-эмулятора осуществляется по команде JMP (после ее окончения).
Переключение пользователь-эмулятор — супервизор происходит либо по сигналу с входа 3 (например, команда OUT 0 в программе пользователя), который обеспечивает инициирование переключения на уровень супервизора (фиг. 5.), либо по сигналу с входа 2, который может формироваться схемой обнаружения точек останова (происходит в соответствии с фиг. 6).
Если прерывание по входу 2 происходит на команде CALL (фиг. 6), то переключение принадлежности кодов (сигнал с входа 43) происходит после чтения трех байт команды: запись в стек произходит на уровне пользователя, так как принадлежность стека и данных не изменяется автоматически с переключением принадлежности кодов. Их изменение происходит только по инициативе программы на уровне супервизора.
Если прерывание по входу 2 происходит на команде вывода в порт или чтения порта, то цикл обращения к порту принадлежит уровню пользователя или эмулятора, так как переключение принадлежности ввода-вывода (сигнал с входа 46) происходит через цикл: триггер 39 принимает состояние принадлежности кодов по заднему фронту сигнала с входа 9 (сигнал имеет нулевой активный уровень), Вследствие отсутствия в статусе входов
7 информации о циклах чтения инструкции (имеется только информация о цикле чтения первого байта команды, которая может быть однобайтной, двухбайтной или трехбайтной) схема из блока 18 памяти, регистра 19, триггера 20 определяет циклы чтения второго и третьего байтов команды, Первые два разряда блока памяти определяют длину команды:00-однобайтная команда, 10 двухбайтная команда, 11 — трехбайтная команда. Эта информация записывается в регистр 19 в цикле чтения первого байта
1718225 команды, который выявляется сигналом с входа 47 статуса входов 7, Этот сигнал статуса через элемент Н Е 32 поступает на вход разрешения блока 18 памяти и на вход загрузки регистра.19, а по сигналу с входа 9 осуществляется запись в регистр 19 информации с первых двух выходов блока 18 памяти. Далее в остальных циклах, когда сигнал на входе 47 не указывает на цикл чтения первого байта команды, сигналом с входа 9 информация в регистре 19 сдвигается, а сигнал с его выхода (второй разряд регистра) сигналом с входа 1 записывается в триггер 20. Таким образом формируется дополнительная информация о чтении второго и третьего байтов команды.
Триггер 21 является триггером запроса на переключение. При запросе на переключение на уровень пользователя-эмулятора он переключается в "1", а при запросе на переключение на уровень супервизора — в
"0", Триггер 22 явояется триггером, определяющим принадлежность кодов к уровню супервизора или к уровню пбльзователяэмулятора.
Триггер 25 — триггер принадлежности данных и стека. Принадлежность ввода-вывода формируется на выходе элемента ИЛИ
36 с использованием триггеров 38 и 39.
Триггеры 24 и 35 формируют сигнал переключения с уровня на уровень, обеспечивая передачу состояния триггера 21 на триггер 22.
После сброса устройства по входу 4 определяется полная принадлежность уровню супервизора.
Процесс переключения на уровень пользователя (фиг, 4) начинается посылкой команды вывода в порт, которую дешифрирует дешифратор 16 (выход 42). При этом триггер 21 устанавливается в "1", а триггер
24 — в "0", Затем по команде JMP, которую распознает блок 18 памяти (третий выход), осуществляется переключение, что обеспечивается следующим образом. Триггер 23 переключается в "0" сигналом с входа 9 (по заднему фронту), принимая значение с третьего выхода блока 18 памяти. Если на выходе триггера 22 — "0", то "0" передается через элемент ИЛИ 30 на тактовый вход триггера 24, Триггер 23 переключается в "1" сигналом с элемента ИЛИ 29 (сигнал, определяющий циклы обращения к кодам) по окончании циклов обращения к кодам команд. Перепад 0-1 на выходе триггера 23 дает перепад 0 — 1 на тактовом входе триггера 24, который переключается в состояние
"1". Перепад 0 — 1 на выходе триггера 24 передается через элемент И 28 на тактовый
55 вход триггера 22, который принимает состояние триггера 21. Тем самым происходит переключение.
Элемент И 28 пропускает сигнал с выхода триггера 24 на тактовый вход триггера 22, так как на выходе элемента ИЛИ 31 — "1" из-за "1" на инверсном выходе триггера 22 (сигнал на входе 43).
Процесс переключения с уровня пользователя-эмулятора на уровень супервизора может происходить либо по команде из программы пользователя (сигнал с входа 3), либо по сигналу переключения с входа 2 от схемы обнаружения точек останова.
В первом случае (фиг, 5) по сигналу с входа 3 происходит переключение в "0" триггера 21 и триггера 35, а сигналом с входа 1 при "0" на выходе регистра 19 триггер
35 переключается в "1". На выходе элемента
ИЛИ 31 появляется "1", которая через элемент И 28 (на выходе триггера 24 — "1") поступает на тактовый вход триггера 22, который принимает значение триггера 21, Во втором случае (фиг. 6) запрос на переключение происходит по сигналу с входа
2. На фиг. 6 показан пример появления сигнала на входе 2 по команде CALL. В этом случае по заднему фронту сигнала с входа 2 в "0" переключается триггер 12, а триггер 36 — по факту появления сигнала на входе 2. Во время чтения кода команды CALL в регистр
19 записывается "11" (трехбайтная команда) и на его выходе появляется "1", Сигналом с входа 9 происходит сдвиг состояния регистра и "0" на его выходе появляется после чтения третьего байта команды, Триггер 20 принимает состояние выхода регистра 19 по сигналу на входе 1. По завершении чтения кодов команд сигналом с входа 1 при "0" на выходе регистра 19 триггер 35 переключается в "1", что ведет к перепаду 0 — 1 на тактовом входе триггера 22, который принимает состояние триггера 21, На фиг. 2 и 3 приведена реализация дешифраторов 40 и 17. Дешифратор 40 обеспечивает формирование сигнала на выходе 15, который определяет коммутацию эмулятора — пользователь в зависимости от статуса входов 7 и сигналов с входов 13 и 14.
Дешифратор 17 в зависимости от статуса входов 7, сигналов с входом 43, 44, 46, определяющих принадлежность к уровню супервизора или эмулятора-пользователя, и сигнала с входа 45 — дополнительного сигнала статуса (чтение второго и третьего байтов команды) формирует сигнал на выходе
11, определяющий принадлежность уровню супервизора или эмулятора-пользователя.
Элемент ИЛИ 41 формирует сигнал на выходе 12, определяющий принадлежность к
1718225
5
55 вход чтения устройства соединен с тактовыми входами регистра и четвертого триггера, входы статуса устройства соединены с пер- . уровню эмулятора или пользователя. При нахождении сигнала на выходе 11 в состоянии "1" (уровень супервизора) сигнал на выходе 12 принимает состояние "1" (уровень эмулятора).
Сигнал на входе 13 — сигнал с выхода схемы MEMORY MAP, сигнал на входе 14— с выхода схемы 10 MAP. Если соответствующий сигнал имеет состояние "1", то это предполагает выбор ресурсов пользователя, если "0", — то выбор ресурсов эмулятора.
Технико-экономические характеристики заявляемого устройства: возможность использования для реализации внутрисхемных эмуляторов для различных типов микропроцессоров (8080А, КР580ВМ80А, 8085, КР182ВМ85, 280 и др.), что обеспечивается введением дешифратора 40, элемента ИЛИ
41, триггеров 35, 38, 39, элементов ИЛИ 36 и И 37 с сооветствующими связями; возможность использования в микропроцессорных системах, в которых не используется контроллер прерываний (8259), что обеспечивается введением триггера 35, элементов НЕ
33, 34 с соответствующими связями; универсальность, позволяющая строить эмуляторы для различных типов микропроцессоров по новому принципу, когда один процессор работает как с программой пользователя, так и с программой управления режимом эмуляции.
Формула изобретения
Диспертчер памяти ЭВМ, содержащий два дешифратора, блок памяти, регистр, шесть триггеров, три элемента И, .три элемента ИЛИ, элемент НЕ, причем вход синхронизации устройства соединен с тактовым входом первого триггера, первый вход переключения режима устройства соединен с первым входом перового элемента И и тактовым входом второго триггера, второй вход переключения режима устройства соединен с вторым входом первого элемента И и с первым входом второго элемента И, выход которого соединен с входом сброса второго триггера, вход сброса устройства соединен с входами сброса третьего и шестого триггеров, регистра, вторым входом второго элемента И, адресные входы устройства соединены с первыми информационными входами первого дешифратора, входы данных устройства соединены:с адресными входами блока памяти, один из разрядов входа данных устройства соединен с информационным входом шестого триггера, вход записи устройства соединен с входом разрешения первого дешифратора, а первый выми входами второго дешифратора, один из разрядов входа. статуса устройства соединен с первым входом первого элемента
ИЛИ и входом первого элемента НЕ, выход которого соединен с входом разрешения болка памяти и входом загрузки регистра, информационные входы которого соединены с первым и вторым выходами блока памяти, третий выход блока памяти соединен с информационным входом четвертого триггера, выход и вход сброса которого соединены с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом третьего триггера, инверсный выход третьего триггера соединен с вторым входом второго дешифратора, информационный вход третьего триггера соединен с выходом второго триггера, вход установки которого соединен с первым выходом первого дешифратора, второй выход первого дешифратора соединен с тактовым входом шестого триггера, инверсный выход которого соединен с третьим входом второго дешифратора, выход первого элемента ИЛИ соединен с входом установки четвертого триггера, выход регистра соединен с информационным входом первого триггера, выход второго дешифратора соединен с вторым информационным входом первого дешифратора и с первым адресным выходом устройства, отличающийся тем, что, с целью расширения области применения за счет возможности использования для реализации эмуляторов, в него введены третий дешифратор, четвертый и пятый элементы
ИЛИ, второй и третий элементы НЕ, четвертый элемент И, седьмой, восьмой и девятый триггеры, при этом первый вход третьего дешифратора соединен с входом статуса устройства, второй и третий входы третьего дешифратора соединены с первым и вторым входами уп равления устройства, вход синхронизации устройства через второй элемент НЕ соединен с тактовым входом седьмого триггера, вход сброса седьмого триггера соединен с выходом первого элемента И, информационный вход седьмого триггера соединен с выходом третьего элемента НЕ, вход которого соединен с выходом регистра и с вторым входом первого элемента ИЛИ, выход седьмого триггера соединен с первым входом третьего элемента ИЛИ, второй вход которого соединен с инверсным выходом третьего триггера, тактовый вход третьего триггера соединен с выходом третьего элемента И, первый и второй входы которого соединены соответственно с выходом третьего элемента ИЛИ и с выходом пятого триггера, вход сброса пятого триггера соединен с первым выходом первого дешифра16
1718225
55 тора, тактовый вход пятого триггера соединен с выходом второго элемента ИЛИ, входы сброса первого и девятого триггеров и вход установки пятого триггера соединены с входом сброса устройства, тактовый вход девятого триггера соединен с первым входом чтения устройства, выход первого триггера соединен с четвертым входом второго дешифратора, пятый вход которого соединен с выходом четвертого элемента ИЛИ, первый вход четвертого элемента ИЛИ соединен с выходом восьмого триггера, а второй вход четвертого элемента ИЛИ вЂ” с выходом девятого триггера, информационный вход которого соединен с выходом третьего триггера, информационный вход восьмого триггера соединен с третьим выходом первого дешифратора, а тактовый вход — с выходом
5 четвертого элемента И, первый вход которого соединен с входом записи устройства, второй вход четвертого элемента И соединен с вторым входом чтения устройства, выход третьего дешифратора соединен с первым
10 входом пятого элемента ИЛИ, второй вход которого соединен с выходом второго дешифратора, выход пятого элемента ИЛИ соединен с вторым адресным выходом устройства.
4î
Фиг, З опт
21
ФЗ
29
29
1718225
1718225
0 f g q 5 S 7 8 9 R S < ff E
474.4446 40444 446 4
6 7 4 9- 4 4 6 Ф- 0 C 4 4 4 Ф 6,9
47 74ф46ф0474 Ф4 бф
47744ф640474 ФФ6Ф
Ф 4 4 4 Cj ф 4 Ф 4 Ф 4- 4 Ч Ч Ч 4
9 4 Ч 4 4 О 4 4 4 4 9. 4 Ч 4 4. Ч
ФФФ4ФФФ r4tФФЧФCr ЧV
O 4 Ф Ф Ф Ф Ф Ф Ч Ч 4 + 4 4 4 Ч
ФФФФФ 7<Ф4 ФФФVЧeФ 9 ф - 4 4с ф + < р Р ф cc < Сс- Ф Ч g
Ф 9 Ф Ф Ф Ф O 4 + e 9 С Ч Ч Ч Ч
+ + Ф Ф Ф Ф Ф Ф Ф Ч & Cr f Ф Ч- Ч
Ф47з796 4Ф707 764
4Ф-76 7ф6 ф076 706 Ф Ф479 7Фб4 ЧФ7ФTOбф
9 7Ф 7464 4 Ф7Ф 7О6 у ф р, г" а п T а я икро род < р во80Ф, КР3803М6М 8о85, кр у821цмау ти ма инйо о никла
6S932,f0 6э+32f О
Составитель А. Гаврилов .Техред М,Моргентал КорректорН.Король. Редактор Т.Юрчикова
3а.каз 882 Тираж Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Производственно-издательский комбинат "Патент", г, Ужгород, ул.Гагарина, 101
2.
Ф
6
8
У
Ф
Ю
С
Э
ГГ 71Н
МЕ Ы Г REED
" ь ой чЖ> TE
$ ГАЯМ 6,о )
$ ГДЖ <+i 7ß
i÷èò
Оо 7 /7
/ЮУЮ / ии г
/ hrTA 3
HslLT
1 01 000 <О
1 00ООО1 0
0 ООООООО
/ФООО1 1 О
ООООО 1ОО
0 00 ООФ 0
0001 ОООО
00 O00t 1
000000; 0
000 f 010
101
0 0
0 1:>
00 О
0 0
001
0 0
ООО fO
0007 0
ОООО Ф оо0f 0
0003
000 f1
000f
0i D10