Номер патента: 1718225

Автор: Гаврилов

ZIP архив

Текст

(51)5 6 06 Р 13/00 ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯПРИ ГКНТ СССР ОПИСАНИЕ ИЗОБРЕТЕНИ тво СССР00, 1982, тво СССР 00, 1986,К АВТОРСКОМУ СВИДЕТЕЛЬСТВ(56) Авторское свидетельМ 1246712, кл. 0 06 Р 13Авторское свидетельМ 1363223, кл, С 06 Р 13/ ПЕТЧЕР ПАМЯТИ ЭВМретение относится к вычислительике и может найти применение при ии внутристанционных эмулятоотладки микропроцессорных сисль изобретения - расширение применения за счет возможности вания для реализации эмуляторов. р памяти ЭВМ содержит первый 54) ДИС19 1718225 20 О 1 ЗЗЬЬ 7 ВЭЛасЕ 474444640444 446 4 6 7 4 9- 4 4 6 Ф. 0 4 4 4 Ф Ф 6,9 Ф 7 7 Ф 4 Ф 6 ф 0 4 7 4 Ф 4 6 4 47744 ф 640474 4464 Ф 444 Ф 444 4 Ф Ч 44444 4 4 4 4 Ф Ф Ф Ф 4 4 4 4 4 Ф Ф Ф 4444 ФФФФ 44 Ф 4 ЧФ Ч Ч ФФФФФФФФФФ 444 ФФ Ф Ф Ф Ф 4 с/ Ф 4 Ф Ф Ф г Ч Ф Ф б Ф Ф Ф СрФ Ф Р Ф4 Ф Ф. Ф Ч Ф Ф 9 Ф Ф 9 Ф Ф Ф Ф ФЧ Ч Ч Ч Ч 4 ЧФ ФФФФФФЧ 9 ЧУ ЧЧЧ 4 4 7 Э 74 6444707 7 6 Ф 4 Ф 76 796 ФФ 076 7064 4479 7464 ЧФ 747064 ФФ 7 Ф 7 ФЬФ 4 Ф 74 7 Об 4 гапчс T ая ю крооодсР 60804, КРЗВ 03 МЬИ Вд, КР IВ 21 ВМОВ типМамии 4 О Вникла 7 654 3 а,10бэба 321 О ГГ гси1 сРфЯУ ЯБ 431 ЬффЖИЖ ГЕГАСЯ ЕФЗИСК М/7 ЕчратОц 7./Т. Редактор Т.Юрчикова За.каз 882 Тираж Подписное ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР 113035, Москва, Ж, Раушская наб., 4/5 Производственно-издательский комбинат "Патент", г, Ужгород, ул,Гагарина, 101 0 Е 3 б б 7 8 У Ф Ю С Э Е 101 0001000 ООО 1 О0 ОООООООФООО 1 1 ОО ОООО 1 ОО01 РОООФ 0ОО 01 О ООО001 0001О 00000000000; 00001 01 О 101 100 ЭОО 0 О ООР 010 000 0 Р 001 001 0 01718225 1 б и второй 17 дешифраторы, блок 18 памяти, первый и второй выходы которого соединены с информационными входами регистра 19, первый по шестой триггеры 20 - 25, первый по третий элементы ИЛИ 29 - 31, первый элемент НЕ 32. Новым в диспетчере памяти ЭВМ является введение Изобретение относится к вычислительной технике и может быть использовано при построении внутрисхемных эмуляторов для отладки микропроцессорных систем,В устройстве "Микро-ЭВМ" АС 1246772 СССР блок переключения обеспечивает двойное расширение адресного пространства микропроцессора как при обращении к памяти, так и при обращении к портам ввода-вывода, Обеспечивается разделение адресного пространства на два уровня: уровень пользователя и уровень супервизора, Устройство "Диспетчер памяти ЭВМ", АС 1363223 СССР, (прототип) также обеспечивает расширение адресного пространства микропроцессора как при обращении к памяти, так и при обращении к портам ввода-вывода. Обеспечивается разделение адресного пространства на два уровня: уровень пользователя и уровень супервизора., Недостаток обоих устройств: невозмож-, ность использования для реализации эмулятора, в котором адресное пространство должно быть разделено на три уровня: уровень супервизора, на котором реализуются системные функции, уровень эмулятора, на котором .выполняются программы пользователя в среде эмулятора, уровень пользователя, на котором выполняются программы пользователя в среде аппаратуры пользователя, невозможность подмены памяти пользователя памятью эмулятора; невозможность подмены портов ввода-вывода, так как у аналога и у прототипа принадлежность портов ввода-вывода совпадает с принадлежностью памяти кодов; не обеспечивается возмокность работы с микропроцессорами 8085, КР 1821 ВМ 85, 280 и др. и в системах, не использующих контроллер прерываний 8259 (КР 580 В НБЭ),Цель изобретения - расширение области применения устройства за счет возможности его использования при построении эмуляторов и для использования не только с микропроцессорами 8080 А и КР 580 ВМ 80 А, но и с 8085, КР 1821 ВМ 85, 180, что обспечивается разделением адресного пространства микпропроцессора на 5 10 15 20 25 30 35 40 второго 33 и третьего 34 элементов НЕ, выходы которых соединены с входами седьмого триггера 35, четвертого элемента ИЛИ 36, четвертого элемента И 37, восьмого 38 и девятого 39 триггеров, третьего дешифратора 40 и пятого элемента ИЛИ 41, 8 ил,три уровня, возможностью подмены памяти и портов ввода-вывода в динамическом режиме в зависимости от текущего машинного цикла, определяемого статусной информацией.Цель достигается тем, что в устройство, содержащее два дешифратора, блок памяти, регистр, шесть триггеров, три элемента И, три элемента ИЛИ, элемент НЕ причем вход синхронизации устройства соединен с тактовым входом первого триггера, первый вход переключения режима устройства соединен с первым входом первого элемента И и тактовым входом второго триггера, второй вход переключения режима устройства соединен с вторым входом первого элемента И и с первым входом второго элемента И, выход которого соединен с входом сброса второго триггера, вход сброса устройства соединен с входами сброса третьего и шестого триггеров, регистра, вторым входом второго элемента И, адресные входы устройства соединены с первыми информационными входами первого дешифратора, входы данных устройства соединены с адресными входами блока памяти, один из разрядов входа данных устройства соединен с информационным входом шестого триггера, вход записи устройства соединен с входом разрешения первого дешифратора, а первый вход чтения устройства соединен с тактовыми вх 0 дами регистра и четвертого триггера, входы статуса устройства соединены с первыми входами второго дешифратора, один из разрядов входа статуса устройства соединен с первым входом первого элемента ИЛИ и входом первого элемента Н Е, выход которого соединен с входом разрешения блока памяти и входом загрузки регистра, информационные входы которого соединены с первым и вторым выходами блока памяти, третий выход блока памяти соединен с информационным входом четвертого триггера, выход и вход сброса которого соединены с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом третьего триггера, инверсный выход третьего триггера соединен с вторым входом второго дешифратора, информационный входтретьего триггера соединен с выходом второго триггера, вход установки которого соединен с первым выходом первого дешифратора, второй выход первого дешифратора соединен с тактовым входом шестого триггера, инверсный выход котброго соединен с третьим входом второго дешифратора, выход первого элемента ИЛИ соединен с входом установки четвертого триггера, выход регистра соединен с информационным входом первого триггера, выход второго дешифратора соединен с вторым информационным входом первого дешифратора и с первым адресным выходом устройства, введены третий дешифратор, четвертый и пятый элементы ИЛИ, второй и третий элементы НЕ, четвертый элемент И, седьмой, восьмой и девятый триггеры. При этом первыйвходтретьегодешифраторасоединен с входом статуса устройства, второй и третий входы третьего дешифратора соединены с первым и вторым входами управления устройства, вход синхронизации устройства через второй элемент НЕ соединен с тактовым входом седьмого триггера, вход сброса седьмого триггера соединен с выходом первого элемента И, информационный вход седьмого триггера соединен с выходом третьего элемента НЕ, вход которого соединен с выходом регистра и с вторым входом первого элемента ИЛИ, выход седьмого триггера соединен с первым входом третьего элемента ИЛИ, второй вход которого соединен с инверсным выходом третьего триггера, тактовый вход третьего триггера соединен с выходом третьего элемента И, первый и второй входы которого соединены соответственно с выходом третьего элемента ИЛИ и с выходом пятого триггера, вход сброса пятого триггера соединен с первым выходом первого дешифратора, тактовый вход пятого триггера соединен с выходом второго элемента ИЛИ, входы сброса первого и девятого триггеров и вход установки пятого триггера соединены с входом сброса устройства, тактовый вход девятого триггера соединен с первым входом чтения устройства, выход первого триггера соединен с четвертым входом второго дешифратора, пятый вход которого соединен с выходом четвертого элемента ИЛИ, первый вход четвертого элемента ИЛИ соединен с выходом восьмого триггера, а второй вход четвертого элемента ИЛИ - с выходом девятого триггера, информационный вход которого соединен с выходом третьего триггера, информационный вход восьмого триггера соединен с третьим выходом первого дешифратора, а тактовый вход - с выходом четвертого элемента И, 10 20 25 ной системе с контроллером прерываний 30 35 40 45 50 первый вход которого соединен с входом записи устройства, второй вход - с вторым входом чтения устройства, выход третьего дешифратора соединен с первым входом пятого элемента ИЛИ, второй вход которого соединен с выходом второго дешифратора, выход пятого элемента ИЛИ соединен с вторым адресным выходом устройства. В прототипе обеспечивается работа на уровне супервизора и уровне пользователя, но не обеспечивается возможность подмены ресурсов пользователя ресурсами эмулятора, Кроме того, принадлежность портов ввода-вывода всегда совпадает с принадлежностью памяти кодов, т.е, отсутствует доступ к портам ввода-вывода пользователя с уровня супервизора, что является для эмуляторов обязательным условием, например,для чтения состояния портов или записи в них новых данных. Также прототип ориентирован на использование в составе микропроцессора 8080 А или КР 580 ВМ 80 А, а также на использование в микропроцессор 8259 или КР 580 ВН 59.В заявляемом устройстве обеспечивается разделение на три уровня: уровень супервизора, на котором выполняются системные программы управления работой эмулятора, уровень пользователя и уровень эмулятора, на котором выполняются (отлаживаются) программы пользователя. Обеспечивается подмена памяти пользователя памятью эмулятора, для чего вырабатывается соответствующий выходной сигнал, который изменяет свое состояние динамически в зависимости от статусной информации и от состояния двух входных сигналов, формируемых стандартной схемой МЕМОЙУ МАР и 10 МАР (подмена памяти и ввода-вывода), например, как это реализовано в эмуляторе СЕ - 85 фирмы КТЕ 3 . Также обеспечивается возможность обращения к портам вводавывода пользователя-эмулятора с уровня супервизора, что не имело место в прототипе, в котором принадлежность кодов и ввода-вывода совпадала, Для этого введены два триггера (восьмой и девятый), элемент И и элемент ИЛИ.Необходимо обратить внимание на то, что, если в дальнейшем говорится о том, что система, использующая заявляемое устройство, работает на уровне супервизора, то это значит, что коды принадлежат уровню супервизора, а если система работает на уровне пользователя-эмулятора, то коды принадлежат уровню пользователя-супервизора.Уровень супервизора в системн уровень, на котором выполняются системныепрограммы, например программа управления процессом эмуляции, Уровень пользователя и уравень эмулятора служат для возможности динамической подмены памяти и ввода-вывода между ресурсами пользователя и ресурсами эмулятора (ресурсы для подмены). Сигналы, формируемые заявляемым устройством, разделяют ресурсы процессора на ресурсы супервизора, эмулятора и пользователя.На фиг, 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 - седьмой триггер (1 К-триггер), 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 - вход записи в порт - подключается к выходу 10 ЧЧ процессора, вход 10 - вход чтения порта - к выходу 108, вход 9 - к выходу ОВИЧ для микропроцессора 8080 или к ЯО для 8085, вход 1 - к входу ЯУМО для 8080 или к А 1 Е для 8085, Выход 11 является дополнительным адресным входом для памяти и устройств ввода-вывода, подключаемых к процессору, выход 12 - сигнал переключения (коммутации) между ресурсами эмулятора и ресурсами системы пользователя,Сигнал переключения супервизор - пользователь-эмулятор и обратно формиру 5 10 15 20 25 30 35 40 45 50 55 ется на выходе 11 устройства. Переключение ресурсов пользователя и эмулятора осуществляется с помощью дешифратора 40.Если сигнал на выходе 11 определяет принадлежность текущего машинного цикла уровню пользователя ("0"), то сигнал на выходе 12 принимает значения сигнала на выходе 15, а если сигнал на выходе 11 определяет принадлежность к уровню супервизора ("1"), то сигнал на выходе 12 определяет принадлежность к уровню эмулятора ("1") независимо от состояния сигнала на выходе 15, Сигнал на выходе 15 определяет принадлежность ресурсов к уровню пользователя ("0") или эмулятора (" 1 "),Сигнал на выходе 11 является дополнительным адресным сигналом для памяти и портов ввода-вывода ресурсов супервизора и эмулятора. Сигнал с выхода 12 служит для коммутации между ресурсами эмулятора и ресурсами системы пользователя, т,е, он определяет, какие ресурсы подключаются к процессору в текущем машинном цикле.Процессор переключения с уровня супервизора на уровень пользователя-эмулятора;команда ООТ адр 1 - запрос на переключение на уровень пользователя-эмулятора;ряд команд, за исключением команд перехода;команда ЛМР адр. 2 - переход на уровень пользователя-эмулятора, адр, 2 - точка входа в программу пользователя.Процесс переключения с уровня пользователя-эмулятора на уровень супервизора:команда ООТ о (вход 3) - переключение на уровень супервизора; адрес входа на уровень супервизора, например, 38 Н (по команде ЙЯВ 7), т.е, когда по переключению на уровень супервизора формируется команда ВЯТ 7, которая и обеспечивает переход в определенную точку входа; можно также использовать контроллер прерываний, например, 8259 (КР 580 В Н 59), тогда переход происходит по команде САП,по входу 2 (например, от схемы обнаружения точек останова; см. например АС 1305680 СССР) - переключение происходит сразу после выполнения команды, на которой пришел сигнал по входу 2; далее также, как это указано выше.Введение триггера 35 с соответствующими связями обеспечивает то, что инициирование переключения с уровня пользователя на уровень супервизора происходит без использования сигнала %ТА/, что позволяет использовать заявляемое устройство в системах, не использующих контроллер прерывания (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 порту ввода-вывода пользователя после посылки с уровня супервизора команды запро са на данное обращение (команда лежность кодов), триггера 25 (принадлежность данных и стека), с элемента ИЛИ 36 (принадлежность ввода-вывода). Если статусная информация указывает на цикл образения к данным ии стеку, то на выход 11 дешифратор 17 пропускает значение сигнала с триггера 25, если цикл обращения к кодам команд, - с триггера 22, если цикл обращения к портам ввода-вывода, - с выхода элемента ИЛИ 36.Переключение супервизор - пользователь-эмулятор происходит в соответствии с фиг, 4, Осуществляется запрос на переключение (команда ООТ адрес - первый выход дешифратора 16), а фактическое переключение на уровень пользователя-эмулятора осуществляется по команде 3 МР (после ее окончения).Переключение пользователь-эмулятор - супервизор происходит либо по сигналу с входа 3 (например, команда ООТ 0 в программе пользователя), который обеспечивает инициирование переключения на уровень супервизора (фиг. 5.), либо по сигналу с входа 2, который может формироваться схемой обнаружения точек останова (происходит в соответствии с фиг. 6).Если прерывание по входу 2 происходит на команде СА(фиг, 6), то переключение принадлежности кодов (сигнал с входа 43) происходит после чтения трех байт команды: запись в стек произходит на уровне пользователя, так как принадлежность стека и данных не изменяется автоматически с переключением принадлежности кодов. Их изменение происходит только по инициативе программы на уровне супервизора.Если прерывание по входу 2 происходит на команде вывода в порт или чтения порта, то цикл обращения к порту принадлежит уровню пользователя или эмулятора, так как переключение принадлежности ввода-вывода (сигнал с входа 46) происходит через цикл; триггер 39 принимает состояние принадлежности кодов по заднему фронту сигнала с входа 9 (сигнал имеет нулевой активный уровень),Вследствие отсутствия в статусе входов 7 информации о циклах чтения инструкции (имеется только информация о цикле чтения первого байта команды, которая может быть однобайтной, двухбайтной или трехбайтной) схема из блока 18 памяти, регистра 19, триггера 20 определяет циклы чтения второго и третьего байтов команды, Первые два разряда блока памяти определяют длину команды;00-однобайтная команда, 10-двух- байтная команда, 11 втрехбайтная команда. Эта информация записывается в регистр 19 в цикле чтения первого байтакоманды, который выявляется сигналом с входа 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", Затем по команде 3 МР, которую распознает блок 18 памяти (третий выход), осуществляется переключение, что обеспечивается следующим образом. Триггер 23 переключается в "0" сигналом с входа 9 (по заднему фронту), принимая значение с третьего выхода блока 18 памяти, Если на выходе триггера 22 - "0", то "0" передается через элемент ИЛИ 30 на тактовый вход триггера 24, Триггер 23 переключается в "1" сигналом с элемента ИЛИ 29 (сигнал, определяющий циклы обращения к кодам) по окончании циклов обращения к кодам команд. Перепад 0-1 на выходе триггера 23 дает перепад 0 - 1 на тактовом входе триггера 24, который переключается в состояние "1". Перепад 0 - 1 на выходе триггера 24 передается через элемент И 28 на тактовый 5 10 15 20 25 30 35 40 45 50 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 по команде СА. В этом случае по заднему фронту сигнала с входа 2 в "О" переключается триггер 12, а триггер 36 - по факту появления сигнала на входе 2. Во время чтения кода команды САв регистр 19 записывается "11" (трехбайтная команда) и на его выходе появляется "1", Сигналом с входа 9 происходит сдвиг состояния регистра и "О" на его выходе появляется после чтения третьего байта команды, Триггер 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, определяющий принадлежность к5 10 15 20 30 35 40 50 уровню эмулятора или пользователя, При нахождении сигнала на выходе 11 в состоянии "1" (уровень супервизора) сигнал на выходе 12 принимает состояние "1" (уровень эмулятора).Сигнал на входе 13 - сигнал с выхода схемы МЕМОВУ МАР, сигнал на входе 14 - с выхода схемы 10 МАР. Если соответствующий сигнал имеет состояние "1", то это предполагает выбор ресурсов пользователя, если "0", - то выбор ресурсов эмулятора.Технико-экономические характеристики заявляемого устройства: возможность использования для реализации внутрисхемных эмуляторов для различных типов микропроцессоров (8080 А, КР 580 ВМ 80 А, 8085, КР 182 ВМ 85, 280 и др.), что обеспечивается введением дешифратора 40, элемента ИЛИ 41, триггеров 35, 38, 39, элементов ИЛИ 36 и И 37 с сооветствующими связями; возможность использования в микропроцессорных системах, в которых не используется контроллер прерываний (8259), что обеспечивается введением триггера 35, элементов НЕ 33, 34 с соответствующими связями; универсальность, позволяющая строить эмуляторы для различных типов микропроцессоров по новому принципу, когда один процессор работает как с программой пользователя, так и с программой управления режимом эмуляции. Формул а из о бр ете н ия Диспертчер памяти ЭВМ, содержащийдва дешифратора, блок памяти, регистр,шесть триггеров, три элемента И,.три элемента ИЛИ, элемент НЕ, причем вход синхронизации устройства соединен с тактовым входом первого триггера, первый вход переключения режима устройства соединен с первым входом перового элемента И и тактовым входом второго триггера, второй вход переключения режима устройства соединен с вторым входом первого элемента И и с первым входом второго элемента И, выход которого соединен с входом сброса второго триггера, вход сброса устройства соединен с входами сброса третьего и шестого триггеров, регистра, вторым входом второго элемента И, адресные входы устройства соединены с первыми информационными входами первого дешифратора, входы данных устройства соединены:с адресными входами блока памяти, один из разрядов входа данных устройства соединен с информационным входом шестого триггера, вход записи устройства соединен с входом разрешения первого дешифратора, а первый вход чтения устройства соединен с тактовыми входами регистра и четвертого триггера, входы статуса устройства соединены с первыми входами второго дешифратора, один из разрядов входа. статуса устройства соединен с первым входом первого элемента ИЛИ и входом первого элемента НЕ, выход которого соединен с входом разрешения болка памяти и входом загрузки регистра, информационные входы которого соединены с первым и вторым выходами блока памяти, третий выход блока памяти соединен с информационным входом четвертого триггера, выход и вход сброса которого соединены с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом третьего триггера, инверсный выход третьего триггера соединен с вторым входом второго дешифратора, информационный вход третьего триггера соединен с выходом второго триггера, вход установки которого соединен с первым выходом первого дешифратора, второй выход первого дешифратора соединен с тактовым входом шестого триггера, инверсный выход которого соединен с третьим входом второго дешифратора, выход первого элемента ИЛИ соединен с входом установки четвертого триггера, выход регистра соединен с информационным входом первого триггера, выход второго дешифратора соединен с вторым информационным входом первого дешифратора и с первым адресным выходом устройства, о т л и ч а ю щ и й с я тем, что, с целью расширения области применения за счет возможности использования для реализации эмуляторов, в него введены третий дешифратор, четвертый и пятый элементы ИЛИ, второй и третий элементы НЕ, четвертый элемент И, седьмой, восьмой и девятый триггеры, при этом первый вход третьего дешифратора соединен с входом статуса устройства, второй и третий входы третьего дешифратора соединены с первым и вторым входами уп равления устройства, вход синхронизации устройства через второй элемент НЕ соединен с тактовым входом седьмого триггера, вход сброса седьмого триггера соединен с выходом первого элемента И, информационный вход седьмого триггера соединен с выходом третьего элемента НЕ, вход которого соединен с выходом регистра и с вторым входом первого элемента ИЛИ, выход седьмого триггера соединен с первым входом третьего элемента ИЛИ, второй вход которого соединен с инверсным выходом третьего триггера, тактовый вход третьего триггера соединен с выходом третьего элемента И, первый и второй входы которого соединены соответственно с выходом третьего элемента ИЛИ и с выходом пятого триггера, вход сброса пятого триггера соединен с первым выходом первого дешифратора, тактовый вход пятого триггера соединен с выходом второго элемента ИЛИ, входы сброса первого и девятого триггеров и вход установки пятого триггера соединены с входом сброса устройства, тактовый вход девятого триггера соединен с первым входом чтения устройства, выход первого триггера соединен с четвертым входом второго дешифратора, пятый вход которого соединен с выходом четвертого элемента ИЛИ, первый вход четвертого элемента ИЛИ соединен с выходом восьмого триггера, а второй вход четвертого элемента ИЛИ - с выходом девятого триггера, информационный вход которого соединен с выходом третьего триггера, информационный вход восьмого триггера соединен с третьим выходом первого дешифратора, а тактовый вход - с выходом 5 четвертого элемента И, первый вход которого соединен с входом записи устройства, второй вход четвертого элемента И соединен с вторым входом чтения устройства, выход третьего дешифратора соединен с первым 10 входом пятого элемента ИЛИ, второй входкоторого соединен с выходом второго дешифратора, выход пятого элемента ИЛИ соединен с вторым адресным выходомустройства.15

Смотреть

Заявка

4781689, 15.01.1990

А. А. Гаврилов

ГАВРИЛОВ АЛЕКСЕЙ АЛЕКСЕЕВИЧ

МПК / Метки

МПК: G06F 13/00

Метки: «диспетчер», памяти, эвм

Опубликовано: 07.03.1992

Код ссылки

<a href="https://patents.su/11-1718225-dispetcher-pamyati-ehvm.html" target="_blank" rel="follow" title="База патентов СССР">Диспетчер памяти эвм</a>

Похожие патенты