Микропроцессор
Иллюстрации
Показать всеРеферат
Изобретение относится к области вычислительной техники, в частности к микропроцессорам, осуществляющим обработку цифровой информации. Целью изобретения является повышение производительности микропроцессора. С этой целью в микропроцессор, содержащий арифметико-логический блок, регистр состояния, блок синхронизации , блок управляющей памяти, блок регистров, дешифратор микрокоманд. регистр адреса, блок формирования адреса, блок асинхронного приема-передачи , блок блокнотной памяти, счетчик адреса, счетчик команд и адресный мультиплексор, введены дополнительный арифметико-логический блок, дополнительный блок регистров, дополнительный регистр адреса, oпoлнитeльный блок блокнотной памяти, дополнительный счетчик адреса, дополнительный счетчик команд, дополнительный адресный мультиплексор и блок прерываний и прямого доступа. Это обеспечивает построение многоразрядного микропроцессора с различными разрядностями операндов, возможность обработки инициативных сигналов при минимальной реакции на них и обмен с памятью высокоскоростных устройств в режиме прямого доступа, что позволяет строить системы, работающие в реальном масштабе времени. 1 з.п. ф-лы, 7 ил. (Л 00 со о О) со 4
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
34 А1 (19) (П1 (511 4 G 06 F 15/16
ВСЕСоиу н,, р р
Р !
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ
К А BTOPCHOMY СВИДЕТЕЛЬСТВУ (21) 3877011/24-24 (22) 03.04.85 (46) 15.08.87. Бюл. М - 30 (72) В.М.Покровский, П.Т.Литвиненко и В.Н.Шумейко (53) 681.325(088 ° 8) (56) Руководство к пользованию микроЭВМ "Micral" фирмы RSE.
Авторское свидетельство СССР
N 894715, кл. G ОЬ F 15/16, 1981. (54) МИКРОПРОЦЕССОР (57) Изобретение относится к области вычислительной техники, в частности к микропроцессорам, осуществляющим обработку цифровой информации. Целью изобретения является повышение производительности микропроцессора. С этой целью в микропроцессор, содержащий арифметико-логический блок, регистр состояния, блок синхронизации, блок управляющей памяти, блок регистров, дешифратор микрокоманд, регистр адреса, блок формирования адреса, блок асинхронного приема-передачи, блок блокнотной памяти, счетчик адреса, счетчик команд и адресный мультиплексор, введены дополнительный арифметико-логический блок, дополнительный блок регистров, дополнительный регистр адреса, дополнительный блок блокнотной памяти, дополнительный счетчик адреса, дополнительный счетчик команд, дополнительный адресный мультиплексор и блок прерываний и прямого доступа. Это обеспечивает построение многоразрядного микропроцессора с различными разрядностями операндов, возможность обработки инициативных сигналов при минимальной реакции на них и обмен с памятью высокоскоростных устройств в режиме прямого доступа, что позволяет строить системы, работающие в реальном масштабе времени. !э.п. ф-лы, 7 ил.
1330634
Изобретение относится к вычислительной технике, в частности к микропроцессорам, осуществляющим обработку цифровой информации.
Цель изобретения — повышение производительности микропроцессора.
На фиг. 1 представлена структурная схема микропроцессора; на фиг. 2 блок прерываний и прямого доступа; на фиг ° 3 — временная диаграмма прерывания; на фиг ° 4 — временная диаграмма прямого доступа в память; на фиг. 5 — схема блока формирования адреса; на фиг. 6 — схема блока асинхронного приема-передачи; на фиг. 7 — схема блока синхронизации.
Микропроцессор содержит арифметико-логический блок 1, соединенный линией 2 приема-передачи состояний с регистром 3 состояний, шиной 4 синхронизации — с блоком 5 синхронизации, блоком 6 формирования адреса и блоком 7 асинхронного приема-пере- дачи, линией 8 приема-передачи микрокоманд — с блоком 9 управляющей памяти, линией 10 начальной установки — с источником 11 сигнала начальной установки системного устройства, блоком 5 синхронизации, блоком 9 управляющей памяти и блоком 6 формирования адреса. Микрокомандная магистраль 12 соединяет блок 1 с блоком 9 управляющей памяти, регистром 3 состояния, накопительным регистром 13, блоком 14 регистров (регистров общего назначения), счетчиком
15 команд и дешифратором 16 микрокоманд, а магистраль 17 данных — с накопительным регистром 13, блоком
14 регистров общего назначения, счетчиком 15 команд, счетчиком 18 стека, блоком 19 блокнотной памяти, блоком
9 управляющей памяти и управляемым объектом. Регистр 3 состояний соединен магистралью (шиной) 20 состояний с блоком Э управляющей памяти, блок
5 синхронизации — линией 21 исполнения м. крокоманд с блоком 9 управляющей памяти, по входу 22 пуска — с источником 23 сигнала пуска системного устройства, по входу синхронизации 24 — с выходом блока 7 асинхронного приема-передачи, по выходу
25 синхронизации признаков — с блоком 6 формирования адреса. Накопительный регистр 13, регистры блока
14 и счетчик 15 команд связаны внутренней адресной магистралью 26 со (1
)5
55 счетчиком 27 адреса, счетчиком 28 команд и регистром 29 адреса. Выход
30 регистра 29 адреса соединен с управляемым объектом 31 и блоком 19 блокнотной памяти; выход 32 счетчика
28 команд — с адресным мультиплексором 33, выход 34 счетчика 27 адреса— с адресным мультиплексором 33, выход 35 признака адресации блокнотной памяти блока 6 — с блоком 19 блокнотной памяти, выход 36 признака адресации операндов и команд блока 6со счетчиками 27 и 28 адреса и команд, выход 37 признака адресации блока 6 — с регистром 29 адреса, а выход 38 признака адресации внешних регистров блока 6 — с управляемым объектом 31. Входы 11 и 23 образуют внешний вход 39. Блок 19 блокнотной памяти, блок 9 управляющей памяти и дешифратор 16 микрокоманд соединен линией 40 признаков команд с блоком
5 синхронизации, а линией 41 признаков адресации — с блоком 6. Адресный мультиплексор 33 соединен через выход 42 с управляемым объектом 31.
Дополнительный арифметико-логический блок 43 соединен линиями 44 переноса с арифметико-логическим блоком 1, линией 8 приема-передачи микрокоманд с блоком 9 управляющей памяти, линией 45 приема-передачи состояний с регистром 3 состояний, по входу операций — с микрокомандной магистралью 12, по установочному входу— линией 10 с источником 11 сигнала начальной установки системного устройства, а информационной магистралью
46-с входами-выходами дополнительного блока 47 регистров, дополнительного блока 48 блокнотной памяти и управляемым объектом 31. Дополнительный блок 47 регистров соединен линиями
49 переносов с накопительным регистром 13, регистрами 14 общего назначения и счетчиком 15 команд, по адресному входу — с микрокомандной магистралью 12, а адресной магистралью 50 — с входами дополнительного счетчика 51 адреса, дополнительного счетчика 52 команд и дополнительного регистра 53 адреса. Выход дополнительного регистра 53 адреса соединен магистралью 54 с дополнительным блоком 48 блокнотной памяти и управляемым объектом 31, а вход записи регистра 53 — с выходом 37 признака адресации блока 6. Дополнительный
3 1 блок 48 блокнотной памяти соединен линией 55 переноса счетчика 18 стека с блоком 19 блокнотной памяти, а по входу выборки — с выходом 35 признака адресации блокнотной памяти блока 6. Дополнительный счетчик 51 адреса по входу записи соединен с выходом 36 признака адресации операндо и команд блока 6, а по счетному входу — линией 56 переноса со счетчиком
27 адреса. Причем выход дополнительного счетчика адреса 51 соединен магистралью 57 с входами дополнительного адресного мультиплексора 58, второй вход которого связан магистралью 59 с выходом дополнительного счетчика 52 команд. Дополнительный счетчик 52 команд соединен по входу записи с выходом 36 признака адресации операндов и команд блока 6, а по счетному входу — линией 61 переноса со счетчиком 28 команд. Дополнительный адресный мультиплексор 58 связан магистралью 60 с управляемым объектом 31. Блок 62 прерываний и прямого доступа соединен по входам 63 и 64 запроса на прерывание и прямой доступ в память соответственно и выходам 65 и 66 разрешения прерывания и прямого доступа в память соответственно с управляемым объектом 31 и магистралью 17. Установочный вход блока 62 линией 10 подключен к источнику 11 сигнала начальной установки системного устройства, а по выходу 67 блокировки выдачи адресов — к адресному мультиплексору 33, дополнительному адресному мультиплексору 58, а также входам запрета выдачи регистра 29 адреса и дополнительного регистра 53 адреса. Младшие разряды магистрали 17 соединены с входами разрешения прерывания и разрешения прямого доступа блока 62 прерываний и прямого доступа, а также шиной 4 синхронизации — с блоком 1, линией 68 признака конца команды— с блоком 9 управляющей памяти, линией 38 признака адресации внешних регистров — с блоком 6, линией 41 признаков адресации — с дешифратором 16 микрокоманд.
Блок 62 прерываний и прямого доступа (фиг. 2) содержит запоминающие элементы 69 и 70, элементы И 71 и
72, элемент ИЛИ 73, запоминающий элемент 74, элементы HE 75 и 76, запоминающий элемент 77, элементы
330634
И 78 и 79, элемент 80 задержки, элемент И 81, элементы НЕ 82 и 83, запоминающий элемент 84, элемент ИЛИ
85, элемент И 86, элемент 87 задержки и элементы HE 88 и 89. Запоминающий элемент 69 по информационному входу соединен одним разрядом магив страли 17 с регистром 13, регистра1р ми 14 и счетчиком 15, а по выходу линией 90 с первым входом элемента
И 71, второй вход которого линией
63 запроса на прерывание связан с управляемым объектом 31. Выход элемента
И 71 линией 92 соединен с тактирующим входом запоминающего элемента 74, выход 96 которого подключен к информационному входу запоминающего элемента 77, тактирующий вход которого ли2р нией 68 признака конца команды соединен с блоком 9. Выход 99 запоминающего элемента 77 соединен линией 65 разрешения прерывания с управляемым объектом 31, первым входом элемента
25 И 81 и первым входом элемента ИЛИ 85, выход которого линией 67 блокировки выдачи адресов связан с адресным мультиплексором 33, адресным мультиплексором 58, регистром 29и регистром
ЗО 53 ° Выход 102 элемента И 81 соединен с информационным входом запоминающего элемента 74, информационный вход запоминающего элемента 70 — одним разрядом магистрали 17 с регистром 13, регистрами 14 и счетчиком 15. Выход 91 запоминающего элемента 70 соединен с первым входом элемента И 72, второй вход которого линией 64 запроса на прямой доступ в память подключен
4р к управляемому объекту 31 а выход
93 — к третьему входу элемента И 78 и входу элемента HE 75, выход 95 которого соединен с входом элемента
80 задержки, выход 98 которого свя45 зан с тактирующим входом запоминающего элемента 84, установочный вход которого линией 106 соединен с выходом, а выход — линией 104 с входом элемента 87 задержки. Выход элемента
87 линией 106 связан с входом элемента HE 89, выход 107 которого соединен с вторым входом элемента И 79, первый вход которого линией признака конца команды 68 подключен к блоку 9 и второму входу элемента И 78. Выход
101 элемента И 79 соединен с входом элемента HE 83, вьмод 103 которого связан с вторым входом элемента И 86, выход 105 которого соединен с входом
5 13306 элемента НЕ 88, выход которого шиной 4 синхронизации подключен к блоку 1. Элемент ИЛИ 73 по первому входу соединен
5 линией 41 признаков адресации с дешифратором 16, по второму входу — линией
38 признаков адресации внешних регистров с блоком 6, а по выходу 94— с входом элемента HE 76, выход 97 которого связан с первым входом элемента И 78, выход 100 которого подключен к входу элемента НЕ 82, выход которого линией 66 разрешения прямого доступа соединен с вторым входом элемента ИЛИ 85, первым входом элемента И 86 и управляемым объектом 31.
Установочные входы запоминающих элементов 69, 70 и 77 и второй вход элемента И 81 линией 10 соединены с источником 11 сигнала начальной уста- .„ новки системного устройства, а тактирующие входы запоминающих элементов
69 и 70 линией 38 признака адресации внешних регистров — с блоком 6.
Блок бформирования адреса (фиг. 5) 25 содержит первый 108, второй 109 и третий 110 запоминающие элементы, элементы И 111-116, четвертый запоминающий элемент 117, а также элементы
И 118-120. Структура блока 6 полно- 30 стью аналогична структуре блока управления адресацией известного устройства;
Блок 7 асинхронного приема-передачи (фиг. 6) содержит элемент 121 задержки, элемент И 122, элемент 123 задержки, элементы И 124-126, элементы 127 и 128 задержки, элемент
И 129, магистральный переключающий элемент 130, элемент НЕ 131, запо- 4О минающий элемент 132, элемент И 133, элемент 134 задержки, запоминающий элемент 135, элемент ИЛИ 136 и магистральные переключающие элементы
137 и 138. Блок 7 асинхронного приема-передачи полностью идентичен блоку асинхронного приема-передачи известного устройства.
Блэк 5 синхронизации (фиг ° 7) образуют элемент И 139, элемент 140 задержки, элемент И 141, элементы
НЕ 142 и 143, элементы ИЛИ 144 и
145, элемент И 146, запоминающий элемент 147, элемент НЕ 148, элемент
149 задержки, запоминающий элемент
150, элемент И 151, запоминающие элементы 152-154, элемент И 155, эле. мент 156 задержки, элемент И 157.
Структура блока 5 синхронизации пол34 ностью аналогична структуре блока синхронизации известного устройства.
Арифметико-логический блок 1 и дополнительный арифметико-логический блок 43 предназначены для выполнения арифметических, логических и сдвиговых операций над операндами и образуют единое арифметико-логическое устройство (АЛУ), Блок 1 и дополни тельный блок 43 могут быть построены, например, на комбинационных схемах четырехраэрядного арифметико-логического узла с асинхронным переносом.
Регистр 3 состояния имеет четыре разряда и содержит триггер расширения (Р), триггер знака (3), триггер переполнения (П), триггер нуля (Н).
После завершения операции он фиксирует текущее состояние арифметикологического устройства. его выходы, соединенные магистралью 20 с блоком 9 управляющей памяти, управляют ветвлением последовательностей микрокоманд в зависимости от состояния АЛУ.
Блок 5 синхронизации организует цикл выполнения команд.
Блок 6 формирует абсолютный адрес, вырабатывая управляющие сигналы для приема старшего и младшего адресного слова на регистр 29 адреса, счетчик
27 адреса и счетчик 28 команд, а также на регистр 53 адреса, счетчик 51 адреса и счетчик 52 команд.
Блок 7 асинхронного приема-передачи формирует сигналы-идентификаторы, обеспечивающие асинхронный обмен по магистралям.
Блок 9 управляющей памяти (УП) предназначен для хранения и выдачи микрокоманд, обеспечивающих управление различными блоками микропроцессора в цикле выполнения команды начального пуска и процедуры прерывания программы.
Накопительный регистр 13, регигистры 14 общего назначения, счетчик
15 команд и дополнительный блок 47 регистров образуют единый узел регистров (УР), в котором накопительный регистр 13 и его продолжение в блоке 47 регистров обеспечивает выполнение операций и промежуточное хранение операндов, регистры 14 и их продолжения в блоке 47 регистров используются как универсальные программно доступные регистры для построения эффективных программ, а счетчик 15 и его продолжение в блоке 47
330634
При поступлении команды по магистралям 17 на вход УП 9 на магистрали
12 разворачивается соответствующая ей последовательность микрокоманд, обеспечивающая обработку операндов
Р
25 находящихся в регистрах 14 и их продолжениях в блоке 47 регистров или
БН или поступающих из внешней памяти операндов по магистралям 17 и 46. При этом дополнительный блок 43 работает
gp параллельно и синхронно с арифметико-логическим блоком 1, что обеспечивается его подключением по управляющим входам и установочному входу к тем же линиям и магистралям, что и соответствующие управляющие входы блока 1. Связь по линиям 44 переноса и управления с арифметико-логическим блоком 1 обеспечивает обработку операнда в АЛУ как единого целого, а
4р магистрали .17 и 46 образуют единую шину данных микропроцессора.
Блок 47 регистров работает параллельно и синхронно с накопительным регистром 13, регистрами 14 и счет45 чиком 15, поскольку его адресный вход подсоединен к общей микрокомандной магистрали 12, а линии 49 переноса и управления объединяют соответствующие регистры в единое целое.
БН, состоящий из блока 19 блокнотной памяти со счетчиком программного стека 18 и дополнительного блока 48 блокнотной памяти организован так, что хранит операнды, разрядность которых соответствует разрядности АЛУ и
УР, а их выборка и выдача на магистрали 17 и 46 происходит параллельно как в блоке 19 блокнотной памяти, так и. в дополнительном блоке 48 благодаря
7 1 формирует младшее слово последовательных адресов команд.
Распределение регистров УР: РО, р1 и P2 — регистры общего назначения; РЗ вЂ” регистр-указатель старшего слова адреса операнда; Р4 — региструкаэатель младшего слова адреса операнда; P5 — регистр-указатель стека;
Р6 — регистр-указатель старшего слова адреса команды; Р7 — счетчик адреса команды.
Дешифратор 16 микрокоманд обеспечивает формирование управляющих сигналов в цикле выполнения микрокоманды.
Счетчик 18 и его продолжение в блоке 48 предназначен для органиэации программного стека.
Блок 19 блокнотной памяти и дополнительный блок 48 блокнотной памяти образуют блокнотный накопитель (БН) промежуточных результатов и переменных параметров. Ячейки этого накопителя не адресуются по счетчику команд, поэтому их содержимое не может быть командой.
Счетчик 27 адреса и счетчик 51 адреса хранят старшие разряды абсолютного адреса операнда, счетчик 28 команд и счетчик 52 команд — старшие разряды адреса команды, регистр 29 адреса и регистр 53 адреса — младшиз разряды адресов операндов и команд.
Адресный мультиплексор 33 и мультиплексор 58 передают во внешнюю память старшее адресное слово либо со счетчика команд 28 и счетчика 52 команд соответственно в режиме выборки команды, либо со счетчика адреса 27 и счетчика 51 адреса операнда соответственно в режиме выборки операнда. Блок 62 прерываний и прямого доступа по сигналу управляемого объекта 31 по линии 63 блокирует выполнение следующей команды и после завершения текущей команды организует процедуру прерывания программы, а nо сигналу от управляемого объекта 31 по линии
6 1 обеспечивает в промежутках между циклами записи и считывания микропроцессора прямой доступ в память.
Так же, как и в известном устройстве, основные процедуры, выполняемые микропроцессором, организуются микропрограммно.
После начальной установки, осуществляемой сигналом на шине 10, вырабатываемым на линии 39 сигналом
11; блоки и узлы микропроцессора устанавливаются в исходное состояние. Сигнал на линии 22 инициирует блок 5 синхронизации так, что на его выходах формируются управляющие сигналы, необходимые для организации цикла начального пуска. При этом
УП 9, инициируемая сигналом по линии
1р 21, формирует на магистрали 12 последовательность микрокоманд, обеспечивающую установку регистров-указателей адресов и счетчиков команд в .состояния, соответствующие передаче управления на нулевую ячейку внешней памяти программы. Таким образом, выполнение программ всегда начинается с нулевой ячейки памяти программ.
1330634 объединению последних управляющиМи линиями 55 с блоком 19 блокнотной памяти и подключению по управляющему входу к тому же выходу 35, что и блок 19, блока 6.
При органиэации на базе микропроцессора вычислительной системы основным управляемым объектом 31 для него является память, которая, как и для известного устройства, делится на область программ и данных (ОПД), область памяти блокнотного типа (ОПБ) и область регистров периферийных устройств (ОП). Каждая иэ этих областей выбирается с помощью признаков, вырабатываемых блоком 6 на шинах 35 и 38 по микрокоманде, обеспечивающей передачу адреса в соответствующую область памяти, которая расшифровывается дешифратором 16 и возбуждает на его выходе 41 сигнал, инициирующий выработку этих признаков. Ячейки областей памяти адресуются абсолютным адресоМ на адресных выходах
30, 42, 54 и 60 микропроцессора, причем адресные выходы 60 и 42 мультиплексора 58 и адресного мультиплексора 33 адресуют выбранную подобласть памяти (страницу), а адресные выходы 30 и 54 регистра адреса 29 и регистра 53 адреса адресуют ячейку и подобласти.
Для адресации ячейки в ОПД в процессе выполнения команды, содержащей в своем формате полный абсолютный адрес, УП 9 формирует на магистрали иикрокоманд 12 микрокоманду, обеспечивающую передачу старшего адресного слова по магистралям 50 и 26.
При этом дешифратор 16 формирует сигнал по линии 40, который привязывается к сигналам асинхронного приема-передачи по линии 24 иэ блока 7 в блоке 7 синхронизации и по линии
25 поступает в блок 6, который, в свою очередь, формирует уровень по линии 36 для приема старшего адресного слова либо в счетчик 27 адреса и счетчик 51 адреса, либо в счетчик
28 команд и счетчик 52 команд, а также соответствующий уровень на линии 38 в зависимости от того, адресуется операнд или команда. По следующей микрокоманде из УР по магистралям 50 и 26 передается младшее адресное слово. При этом блок 6 формирует по сигналу асинхронного приема-передачи, поступающему из АЛУ по
55 вает сигнал по линии 63. Если прерывание разрешено, т.е. в запоминающий элемент 69 блока 62 предварительно по магистрали 17 из УР записана "1" и уровнем на линии 90 отлинии 4, сигнал по линии 37, обеспечивающий прием младшего адресного слова на регистр 29 и регистр 53, Адресный мультиплексор 33 и адресный мультиплексор 58 транслируют старшее адресное слово, поступающее по магистрали 34 из счетчика 27 адреса и магистрали 57 из счетчика 51 адреса, если выбирается операнд, либо поступа- ерее по магистрали 32 из счетчика команд, 28 и магистрали 59 иэ счетчика 52 команд, если адресуется команда, во внешнюю память, выбирая таким образом под"
15 область. Мпадшее адресное слово передается иэ регистра 29 адреса и регистра 53 адреса по магистрали 30 и
54 соответственно в БН и внешнюю память, выбирая ячейку в подобласти.
20 Поскольку в большинстве случаев команды и операнды выбираются из памяти последовательно, для выборки следующей ячейки нет необходимости выбирать новую подобласть и следующая
25 команда может содержать только младщую часть абсолютного адреса. Более того, при последовательном выборе ячеек счетчики 27 и 51 адреса, работая синхронно, при переполнении ре30 гистра — указателя адреса Р4 в УР обеспечивают автоматический переход иэ одной страницы в другую, благодаря связи ho линии 56, Аналогичная процедура благодаря связи по линии 61 выполняется и в счетчике 28 команд со счетчиком 52 команд при переполнении счетчика адреса Р7 и УР.
У известного устройства механизм прерывания программы отсутствует, 4р следовательно, УП 9 не содержит последовательности микрокоманд, соответствующей этой процедуре. Однако в системе команд известного устройства имеется команда обращения к подпрог45 рамме, по которой текущее содержимое счетчика команд и регистров-указателей адреса переписывается в стек, расположенный в блокнотной памяти, и управление передается по абсолютному адресу, записанному в формате команды. С использованием этой команды процедура прерывания организуется следующим образом. Внешнее устройство, требущее прерывания, вырабаты1330634
12 крыт элемент И 71 этот сигнал под- перехода по прерывателю. На этом выготавливает гене ат е ератор одиночного им- полнение команды обращения к подпрогпульса ГОИ пост построенный на запоминаю- рамме заканчивается и УП 9 вновь фор щих элементах 74 и х 74 и 77 и элементе мирует по линии 68 признак "Конец
И 81 аз ешая р р я его срабатывание по
5 команды, по которому ГОИ блока 62 снимает уровень на выходе 99 эапоминаиз УП 9. В кон е выполнен ющего элемента 77, завершая процедуру команды УП 9 вы аба в рабатывает признак прерывания и подключая снятием сиг"Конец команды" по линии 68 д " по линии 68, по ко- 10 нала на линии 67 адресный мультиплектором ГОИ с абат р у сра атывает, устанавливая сор 33 и мультиплексор 58, регистр 29 и на выхо е 99 запом д запоминающего элемента регистр 53 к адресныммагистралям. Та77 уровень, который передается по ким образом, все необходимые цействия линии 65 на вс а все внешние устроиства, для организациипрерывания, аименно в том числе и числе и то, которое потребова- 15 сохранение адреса выхода из программы ло прерывания, и является сигналом обработки прерывания и передачи управподтверждения приема запроса на пре- ления на первую команду программы обрарывание, а также через элемент HJIH ботки прерывания, выполнены. Возврат на
85 поступает по линии 67 у о линии 67 на адресныи основную программу из программы обму иплексор 33, мультиплексор 58, 2п работки прерывания производится по мультиплексо регистр 29 и егист нормально исполняемой команде выхода их от магистралей 42 ралей 42, 60, 30 и 54 из подпрограммы. Коррекция адреса выхо. соответственно. Мик оп о есс
Микропроцессор пере- да из программы обработки прерывания, ходит к выборке следующей команды б нео ходимая в связи в тем, что в выставляя старшее слово ее адреса на 25 др а на 25 процедуре прерывания микропроцессор счетчик 28 и счетчик 52 и младшее выполняет фиктивную команду обращеслово на регистр 29 и регистр 53. ния в подпрограмме, выполняется прогОднако, поскольку адресный мультираммно. плексор 33 и мультиплексор 58 а
Э
На фиг. 3 изображена временная также регистр 29 и регистр 53 отклю- 30 диаграмма работы блока прерываний чены от адресных магистралей сле р ду и прямого доступа в режиме прерывающая команда не выбирается из памяти команд. Вместо этого устройство т е. ре. В процедуре начальной установки бующее прерывания пол чив олучив сигнал сигналом с входа 11 запоминающий по линии 65, а также по линии 38 З5 элемент 69 — триггер разрешения превыставляет на магистрали 17 первое рывания (ТРП), устанавливается в слово вектора прерывания, которое
tf ãiI l состояние 0, запрещая уровнем по представляет собой код команды об ара- линии 90 прохождение запроса на прещения к подпрограмме. Получив такой рывание (HP) код УП 9 в от управляемого объекта
Э ыполняет вместо следую- 40 31 по лини 63 через элемент И 71. щей команды команду обращения к по од- Одновременно этим же сигналом припрограмме, т.е. записывает в стек водятся в исходное состояние запомиадрес следующей команды, являющийся нающие элементы 77 и 74. При таком в данном случае адресом выхода из состоянии прерывания от внешних устпрограммы обработки прерывания веуве- 45 роиств запрещены. для органиэации личивает его íà "1", организует об- работы с прерыванием командой переращение в память за адресом перехода сылки ТРП сылки в заносится 1 . Теперь
It i÷ к подпрограмме. Снова вместо этого запрос на прерывание проходит через адреса устройство, требующее и е ыр у щ р р элемент И 71 и устанавливает запомивания, выставляет на магист алях 17 ма истралях 17 5О нающий элемент 77 по линии 92 так, и 46 второе слово вектора п е ывания
P p P H<> что уровень с его выхода 96 разрешаявляющееся старшим адресным словом ет установку запоминающего элемента перехода по прерыванию. Поскольк оскольку 77 сигналом конец команды (КК) по
УП 9 продолжает выполнение команды линии 68 из УП 9. П и пост обращения к по и ог я под рограмме, это слово 55 этого сигнала запоминающий записывается в регистр-указатель 77 устанавливается и вырабатывает старшего слова адреса команды РО. сигнал разрешение прерывания (РП) по
Аналогично на счетчик адреса команд
Р7 заносится линии 65, одновременно запрещая сброс заносится младшее слово адреса ГОИ по цепи: вход 11, элемент И 81, 1330634
14
13 линия 102, и формируя сигнал блокировки адресных устройств через элемент ИЛИ 85 по линии 67. Режим прерывания может быть сброшен только вторым сигналом КК, означающим нормальное завершение процедуры. После перехода на программу обработки прерывания микропроцессор может запретить прерывания засылкой "О" в ТРП или оставить их разрешенными. Глубина вложения прерываний, как и у всех подобных устройств, зависит только от глубины программного стека.
Режим прямого доступа в память организуется следующим образом.
Предварительно во внешнее устройство, которое в процессе выполнения программы может потребовать прямого доступа в память, заносятся начальный и конечный адреса области памяти, отведенной для прямого доступа. Устройство, подготовив данные и текущий адрес для записи в память в режиме прямого доступа или T åêóùèè адрес для чтения иэ памяти, в режиме прямого доступа выставляет по линии 64 сигнал запроса на прямой доступ (ПД).
Если прямой доступ разрешен, т.е. запоминающий элемент 70 блока 62 триггер разрешения прямого доступа (ТРПД) находится в состоянии .. 1", сигнал ПД проходит через элемент
И 72, открытый уровнем по линии 91, Поскольку цикл прямого доступа мажет быть осуществлен только в промежутках между основными циклами обращения в память со стороны микропроцессора, с выхода элемента И 72 сигнал
ПД поступает на вход трехвходового элемента И 78. Циклы обращения в блокнотную память и внешнюю память операндов со стороны микропроцессора наиболее полно идентифицируются сигналом обращения в БН по линии 41 иэ дешифратора 16 и сигналом выборки по линии 38 иэ блока 6 соответственно. Два этих сигнала„ сабранные на элементы HJHI 73, формируют через элемент НЕ 76 по линии 97 первый разрешающий уровень на трехвходовый элемент И 78. Цикл выборки команды из внешней памяти идентифицируется сигналом КК из УП 9. Он является вторым разрешающим уровнем для трехвходового элемента И 78. Таким образом, если не происходят циклы обращения в память со стороны микропроцессора, сигнал ПД проходит через элемент НЕ 82 и формирует через элемент ИЛИ 85 сигнал по линии 67, отключающий также, как и в режиме прерывания, от адресных магистралей адресный мультиплексор 33, мультиплексор 58, регистр 29 и регистр 53. Одновременно с выхода элемента НЕ 82 этот сигнал по линии 66 поступает во все внешние устройства как сигнал
iO разрешения прямого доступа (РПД), Параллельно передний фронт сигнал ПД с выхода элемента И 72, задержанный на элементе задержки 75 и проинвертированный на элементе НЕ 80 посту15 пает на вход генератора одиночных импульсов ГОИ,, собранного на запоминающем элементе 84 и элементе S6 задержки, который формирует тактовый импульс прямого доступа (ТПД). Через ри элемент HF. 89 по линии 107 ТПД посту" пает на элемент И 79, открытый уровнем по линии 68 во время отсутствия цикла выборки команды, затем по линии
101 через элемент НЕ 83 по линии 103
25 на вход элемента И 86, открытый наличием сигнала РПД, и по линии 105 череэ элемент НЕ 88 запрещает на шине 4 запуск блока 1 и блока 43, блока 5 синхронизации и блока 7 асинхронного приема-передачи, т.е. полностью бло- кирует возможность обращения в память со стороны микропроцессора во время цикла прямого доступа.
Таким образом, внешнее устройство, 35 требующее прямого доступа в память, получает все необходимые условия для органиэации цикла записи или чтения памяти, минуя процессор. По окончании текущего цикла прямого доступа внеш„, нее устройство снимает сигнал ПД.
Одновременно заканчивается импульс
1. ПД, длительность которого подбирается достаточной, чтобы перекрыть наибольшую длительность цикла прямого
4 доступа, и микропроцессор вновь получает возможность обращения в память.
В каждом цикле прямого доступа внешнее устройство анализирует совпадение текущего и конечного адреса области памяти, отведенной для прямого доступа, а при их совпадении прекращает циклы обращения в память. Сообщение основной программе об окончании передачи массива в режиме прямого досту55 па может быть организовано, например, в режиме прерывания.
Формула изобретения
1 Микропроцессор содержащий арифметико-логический блок, регистр
1330634
1б
40 состояния, блок синхронизации, блок управляющей памяти, блок регистров, дешифратор микрокоманд, регистр адреса, блок формирования адреса, блок асинхронного приема-передачи, блок блокнотной памяти, счетчик адреса, счетчик команд и адресный мультиплексор, причем вход-выход признака состояния арифметико-логического блока 10 соединен с- входом-выходом приемапередачи регистра состояния, информационный вход которого подключен к информационному входу арифметикологического блока, вход разрешения 15 приема операции которого соединен с выходом признака выдачи микрокоманды блока управляющей памяти, выход кода операции которого подключен к входу кода операции арифметико-логического 20 блока, вход синхронизации и вьжоп признака операции которого соединены соответственно с первым тактовым выходом и первым входом задания режима блока синхронизации, второй тактовый Р5 выход и второй вход задания режима которого подключены соответственно к входу разрешения обращения и информационному выходу блока управляющей памяти, первый адресный вход которого соеди- 30 нен с шиной данных и является входом-выходом данных микропроцессора, информационный вход-выход арифметико-логического блока подключен к входу-выходу данных микропроцессора, 35 второй адресный вход блока управляющей памяти через шину состояний соединен с информационным входом-выходом регистра состояния, вход останова блока, синхронизации подключен к первому выходу дешифратора микрокоманд, информационный вход которого соединен с выходом кода операции блока управляющей памяти, информационный вход-выход блока регистров под- 45 ключен к входу-выходу данных микропроцессора, информационный выход блока регистров соединен с информационным входом регистра адреса, выхОд KQTopoI Î яВляется ВыхОдОм адреса 5О внешних регистров микропроцессора, адресный вход блока регистров подключен к выходу кода операции блока управляющей памяти, Выход признака адресации блокнотной памяти блока формирования адреса соединен с входом выборки блока блокнотной памяти, адресный вход которого подключен к выходу регистра адреса, вход записи которого соединен с выходом признака адреса блока формирования адреса, выход признака адресации операндов и команд которого подключен к входу записи счетчика адреса, информационный вход которого соединен с информационным выходом блока регистров, выход признака адресации внешних регистров блока формирования адреса является управляющим выходом микропроцессора, а вход синхронизации блока формирования адреса подключен к третьему тактовому выходу блока синхронизации, четвертый тактовый выход которого соединен с входом синхронизации блока асинхронного приема-передачи, вход-выход которого подключен к входу синхронизации блока формирования адреса, вход синхронизации выдачи признаков которого соединен с третьим тактовым выходом блока синхронизации, вход пуска которого подключен ко входу пуска микропроцессора, а установочные входы блока управляющей памяти, арифметико-логического блока, блока синхронизации и блока формирования адреса соединены с установочным входом микропроцессора, вход признаков адресации блока формирования адреса подключен к второму выходу дешифратора микрокоманд, информационный вход-выход блока блокнотной памяти соединен с входом-выходом данных микропроцессора, выход счетчика адреса подключен к первому входу адресного мультиплексора, выход которого является выходом адреса операндов и команд микропроцессора, информационный вход счетчика команд соединен с информационным выходом блока регистров, а вход записи счетчика команд подключен к выходу признака адресации операндов и команд блока формирования адреса, выход счетчика команд соединен с вторым входом адресного мультиплексора, о т л и ч а ю щ и йс я тем, что, с целью повьппения производительности, он содержит дополнительный арифметико-логический блок, дополнительный блок регистров, дополнительный регистр адреса, дополнительньп блок блокнотной памяти, дополнительный счетчик адреса, дополнительный счетчик команд, дополнительный адресный мультиплексор и блок прерываний и прямого доступа, причем вход-выход переноса дополнительного арифметико-логического блока соеди18
17
1330634
?5 ристров подключен к выходу кода операции блока управляющей памяти, а информационный выход дополнительного блока регистров соединен с информационными входами дополнительного ре30 ристра адреса, дополнительного счетчика адреса и дополнительного счетчика
35 команд, выходдополнитель