Устройство микропрограммного управления

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано в микропроцессорных системах с микропрограммным управлением . Целью изобретения является увеличение быстродействия устройства. Устройство микропрограммного управления содержит два блока памяти микрокоманд , регистр микрокоманд, регистр кода логического условия,блок проверки условий и элемент задержки. Цель изобретения достигается за счет совмещения процесса обработки логических условий и процесса выборки адреса очередной микрокоманды в устройстве . 1 з.п. ф-лы, 4 ил. (Л :о а

А1

СОЮЗ СОВЕТСНИХ

COQ4AЛИСТИЧЕСНИХ

РЕС 1У БЛИН

„„Я0„„1290 1 (51)4 С 06 F 9/22

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К А BTOPCHOMV СЮИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 38 17270/24-24 (22) 28.11.84 (46) 15.02.87. Бюл. У 6 (72) Г.В.Галкин,Л.Д.Минутин, M.Ë.0ðèíà и М.Н.Смолина (53) 681. 325(088. 8) (56) Балашов E.Ï., Пузанов Д.В. Микропроцессоры и микропроцессорные системы. M.: Радио и связь, 1981, с. 209-216.

Авторское свидетельство СССР

У 964640, кл. С 06 F 9/22, 1981. (54) YCTPOACTBO МИКРОПРОГРАММНОГО УПРАВЛЕНИЯ (57) Изобретение относится к вычислительной технике и может быть использовано в микропроцессорных системах с микропрограммным управлением. Целью изобретения является увеличение быстродействия устройства.

Устройство микропрограммного управления содержит два блока памяти микрокоманд, регистр микрокоманд, регистр кода логического условия, блок проверки условий и элемент задержки.

Цель изобретения достигается за счет совмещения процесса обработки логи" ческих условий и процесса выборки адреса очередной микрокоманды в устройстве. 1 s.ï. ф-лы, 4 ил.

1 129031

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

Целью изобретения является увеличение быстродействия устройства.

На фиг..1 показана функциональная схема устройства; на фиг. 2 — временные диаграммы работы устройства; на фиг. 3 — блок-схема программы; на !О фиг. 4 — размещение микрокоманд в блоках памяти, соответствующее приведенному алгоритму.

Устройство содержит первый 1 и второй 2 блоки памяти микрокоманд, регистр 3 микрокоманд, регистр 4 кода логического условия, блок 5 проверки условий, элемент 6 задержки.

Блок 5 проверки условий содержит дешифратор 7, группу из п элементов

И 8, элемент ИЛИ 9, элемент НЕ 10, первый 11 и второй 12 элементы И.

Устройство работает следующим образом.

В исходном состоянии (фиг. 1 и 2) на входах "Нач.уст". и Синхро" находятся логические "0". Для организации выборки первой микрокоманды на вход "Has.уст. подается импульс. 30

Регистры 3 и 4 устанавливаются в нулевое состояние. Сигнал логического

"0" на входе ВК регистра 3, поступающий с входа "Синхро", включает выходы регистра 3 в рабочее состояние. Следовательно, после установки регистра 3 в ноль нулевой код оказывается на адресных входах А блоков памяти 1 и 2, в которых начинается выборка информации по этому ад- 40 ресу. Одновременно с этим регистр 4 выдает нулевой код на вторую группу информационных входов блока 5 проверки условий. После дешифрации этого кода дешифратором 7 на нулевом выходе дешифратора 7 появляется логическая "1", на всех остальных выходах — логический "0". Нулевой выход дешифратора 7 не используется в блоке 5, поэтому сигналы логичес- 50 . кого "0" устайавливают в состояние логического "0" и выходы группы элементов И 8-1,...,8-п. В результате на выходе элемента ИЛИ 9 оказался сигнал логического "0". Элемент И 11 закрывается для прохожде- ния сигнала с синхровхода блока 5, а элемент И 11 открывается, так как на его первый вход поступает инвер6 2 тированный элементом HE 10 сигнал, т.е. сигнал логической "1". На синхровходе блока 5 находится уровень логического "0", поэтому выходы элементов И 11 и 12 также находятся в состоянии логического "0". Эти уровни держат отключенными выходы блоков памяти 1 и 2 микрокоманд.Через время выборки после сигнала на входе "Нач.уст." можно подавать сигнал на вход Синхро для выдачи первой микрокоманды из памяти на выходные шины. Первый импульс с входа "Синхро", поступая на синхровход блока 5, проходит через элемент И 12 и оказывается на разрешающем входе ВК блока памяти 2.Выходы этого блока включаются в рабочее состояние и выдают на выходные шины микрокоманду, записанную по нулевому адресу. Таким образом первая микрокоманда микропрограммы должна располагаться по нулевому адресу второго блока памяти.Начинается первый такт работы устройства.

Уровень логической "1 с входа "Синхро", поступая на управляющий вход

ВК регистра 3, отключает его выходы в третье состояние, чтобы они не мешали Ьыходай.. блока памяти 2. В то же время по сигналу логической " 1." на синхравходе С регистра 3 происходит запись в этот регистр той информации, которую пока вьщает блок паьжти 2. Состояние регистра 4 сохраняется, чтобы не.нарушить разрешающий сигнал блока 5 для блока памяти 2. После того, как произойдет запись в регистр З,можно отключить выходы блока памяти 2 и сменить информацию в регистре 4.

Для этого сигнал на входе Синхро" из состояния..логической 1" устанавI t 1I ливается в состояние логического 0

В результате на выходе элемента К 12 устанавливается состояние логического "0, что приводит к отключению выходов блока памяти 2 в третье состояние, в регистр 4 записывается код поля управления переходом к следующей микрокоманде, выходы регистра 3 включаются в рабочее состояние и выдают на входные шины тот же код,что и код, только что выдаваемый блоком памяти 2.

Пусть, например, в регистр 4 записывается код "n + 1" из поля управления переходом первой микрокоманды.

12903

Этот код с выходов регистра 4 поступает на дешифратор 7. На (и+1)-м выходе дешифратора 7 появляется сигнал логической " 1". В результате логическая " 1" появляется на выходе эле- 5 мента ИЛИ 9 и открытым оказывается элемент И 12 Это значит, что в следующем такте по приходу синхроимпульса разрешающий сигнал поступит на вход ВК блока памяти 1, т.е. вторая микрокоманда будет выдана этим блоком из ячейки, адрес которой задается в первой микрокоманде. В момент достоверного завершения выборки информации во всех элементах памяти на синхровход Синхро 1 поступает второй импульс — начинается второй такт. Поскольку в блоке 5 из двух выходных элементов И открытым к этому моменту является элемент И 11, то синхроимпульс, проходя через него, поступает на вход ВК блока памяти 1.Âûõîäû блока памяти 1 включаются в рабочее состояние и выдают вторую микрокоманду. Одновременно с этим выходы регистра 3 отключаются в третье состояние и начинается. запись информации в этот регистр. Состояние регистра 4 в течение высокого уровня на входе Синхро" не изменяется.С началом второго такта на адресные входы А блоков памяти 1 и 2 поступает адрес следующей микрокоманды — начинается выборка информации по этому адресу. 35

Пусть для примера переход от второй микрокоманды является условным, т.е. к одной из двух возможных микрокоманд. В поле управления перехо дом кодируется номер i-го признака, 40 по которому принимается решение о переходе. Код "i" появляется, как и вся вторая микрокоманда, в начале второго такта. Запись кода "i в регистр 4 должна быть задержана до 45 тех пор, пока не закончится запись в регистр 3 (как в предыдущем такте). После окончания записи в регистр 3 по заднему фронту синхроимпульса код "i" заносится в регистр 50

4 и с его выходов поступает на входы дешифратора 7. После дешифрации

i-й выход дешифратора 7 переходит в состояние логической 1, которая поступает на второй вход (8-i)-го 55 элемента И. (8-i)-й элемент И оказывается открытым для прохождения сигнала с его второго входа, который соединен с i-м входом "Признак".1

16 4

Если на i-м входе "Признак" будет состояние логического "0, то на выходе элемента ИЛИ 9 тоже будет состояние логического "0", что приведет к открытию элемента И 12.

Если на i-м входе "Признак" будет состояние логической "1" то окажется открытым элемент И 11. В первом случае после прихода синхроимпульс.а разрешающий сигнал поступит на блок памяти 2 (сплошные линии на временных диаграммах в третьем такте см. фиг. 2), во втором — на блок памяти 1 (пунктирные линии на временных диаграммах в третьем такте — см. фиг. 2), т.е. в зависимости от i-ro признака будет выдана на выходные шины микрокоманда или из первого или из второго блоков памяти (по единичному состоянию на выходе признака - из блока памяти

1, по нулевому — из блока памяти 2).

Достоверный сигнал i-го признака должен быть сформирован внешними устройствами (например, арифметикологическим устройством) к началу третьего такта и сохраняться в течение высокого уровня на входе нСинхро

Если, например,i-й признак формируется арифметико-логическим устройством по результатам выполнения второй микрокоманды, то время на эту процедуру отводится максимально возможное — время целого такта. (Реальное это время будет несколько меньше на величину задержки прохождения сигнала i-го признака через дешифратор 7 и элементы И 8-i KlH 9, НЕ 10, И 12). Таким образом, адрес

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

5 129031 по адресу А, а от типа перехода адрес А .не зависит.

В четвертом такте временной диаграммы приведен пример "растянутого" по длительности такта. Для этого дос- 5 таточно задержать приход следующего (в данном случае пятого) синхроимпульса. "Растягивать такт можно как

t! !! при состоянии логического 0 на входе "Синхро" (как на фиг. 2), так 10 и при состоянии логической "1". Это обстоятельство снимает жесткие ограничения по синхронизации момента

"замораживания" внутри такта. Частый случай рассматриваемого такта — пол-15 ная остановка устройства. Ее момент также не требуется жестко синхронизировать внутри такта. Это упрощает схему внешнего синхронизатора для рассматриваемого устройства. 20

Формула изобретения

1. Устройство микропрограммного управления, содержащее первый и второй блоки памяти микрокоманд,блок проверки условий и регистр микрокоманд, причем входы логических условий устройства соединены с первой группой информационных входов блока проверки условий, о т л и ч а ю— щ е е с я тем, что, с целью увели- З0 чения быстродействия устройства, в него введены регистр кода логического условия и элемент задержки, причем выходы кода адреса первого и второго блоков памяти микрокоманд, выход кода адреса первого регистра соединены с адресными входами первого и второго блоков памяти микрокоманд и первым информационным входом регистра микрокоманд, выходы 40 кода мнкроопераций первого и второго блоков памяти микрокоманд, а также выход кода микроопераций регистра микрокоманд соединены с вторым ,информационным входом регистра мик- 45 рокоманд и выходом кода микроопераций устройства, выходы кода условий первого и второго блоков памяти микI

6 6 рокоманд соединены с информационным входом регистра кода логического условия, выходы кода условия которого соединены с второй группой информационных входов блсг проверки условий! первый и второй выходы которого соединены соответственно с входами управления состоянием выходов первого и второго блоков памяти микрокоманд, вход начальной установки устройства соединен с входами сброса регистра микрокоманд регистра кода логического условия, микровход устройства соединен с синхровходом блока проверки условий, с синхровходом регистра кода логического условия, а также входом элемента задержки, выход которого соединен с входом управления записью и входом управления состоянием выходов регистра микрокоманд.

2. Устройство по и. 1, о т л и— ч а ю щ е е с я тем, что блок проверки условий содержит дешифратор, группу элементов И, первый и второй элементы И,.элемент ИЛИ и элемент НЕ, причем первая группа информационных входов блока соединена с первыми входами элементов И группы, выходы которых., а также первый выход дешифратора соединены с входами элемента

ИЛИ, выход которого соединен с входом элемента НЕ и первым входом первого элемента И, выход которого является первым выходом блока,первый вход второго элемента И соединен с выходом элемента НЕ,выход второго элемента И является вторым выходом блока, вторая группа информационных входов блока соединена с входами дешифратора, с 2-го по (n +

+ 1)-й выходы дешифратора соединены с вторыми входами элементов И группы (где и-число проверяемых логических условий), синхровход блока .соединен с вторым входом первого элемента И и вторым входом второго элемента И.

1290316

Ig u саихре

Ик.ойt

Вк.&, Ф

Век

Вход

Оризкак (-иг Юхо

1 1 1 безусябюй Уивйт» де@ааЬж Вл клйед переход переход иереыд перехед

Qua.2

12903 1á

Никр команда

Мресечеани Поле Поле дл

Елок лоиоти I

Иикроконанда

АЮМ /till %Й длок панами Я

Х-лроиюдолоное с остоониа

Фие С

Составитель В. Криворучко

Редактор М.Бандура Техред A.Kðàâ÷óê Корректор Е .Сирохман

Заказ 7903/47 Тираж 673 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4