Микропрограммный процессор

Иллюстрации

Показать все

Реферат

 

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

СОЦИАЛИСТИЧЕСНИХ

РЕСГ1УБЛИН

„„SU „„102492? ю G 06 f 15/00

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

Н ABTOPCKOMV СВИДЕТЕЛЬСТВУ

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

IlO ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3348038/18-24 (22) 19.10.81 (46) 23.06.83. Бюл. 11 23 (72) И.Б.Шапиро (53) 681.325 (088.8) (56) 1. Булей Г. Микропрограммирование. М., "Мир", 1973, с.80, рис.3.18.

2. Авторское свидетельство CCCP 717773, кл. G 06 F 15/00, 1980 (прототип). (54)(57) 1.. МИКРОПРОГРАММНЫЙ ПРОЦЕССОР, содержащий операционный блок, блок постоянной памяти, первый регистр микрокоманд,: дешифратор ветвлений, блок управления и элемент И, первый и второй входы которого соединены соответственно с выходом дешифратора ветвлений и первым выходом блока управления, выход операционного блока подключен к входу дешифратора ветвлений а вход первого регистра микрокоманд .. соединен с выходом блока постоянной памяти отличающийся .тем, что, с целью повышения быстродействия, он содержит счетчик адреса, второй регистр микрокоманд и элемент ИЛИ, первый и второй входы и выход которого подключены соответственно.к выходу элемента И, второму .выходу блока управления и управляющему входу перво го регистра микрокоманд, управляющий вход, первый и второй входы и первый и второй выходы второго регистра микрокоманд соединены соответственно с третьим выходом блока управления первым и вторым выходами первого ре-, гистра микрокоманд, управляющим входом дешифратора ветвлений и входом операционного блока, а управляющий вход, синхровход, установочный вход и выход счетчика адреса подключены соответственно к второму и третьему выходам блока управления, третьему выходу первого регистра микрокоманд и входу блока постоянной памяти.

Процессор по п.1, о т л и ч а ю . шийся тем, что блок управления содержит триггер, ключ, элемент И, шесть элементов И-HE три элемента задержки и три элемента НЕ, причем установочные входы триггера соединены с соответствующими контактами ключа а выход триггера - с первым входом элемента И, первые входа первого элемента задержки, nepaoro и второго а .элементов И-.НЕ подключены к выходу элемента И,первые входы второго.элемента задержки, третьего и четвертого элементов И-HE соединены с выходом второго элемента И-НЕ, первые входы третьего элемента задержки, пятого и шестого элементов И-HE подключены к выходу четвертого элемента И-НЕ, Ю вторые входы первого, третьего и Ф© пятого элементов И-НЕ соединены со- Д:ь ответственно с выходами первого, второго и третьего элементов задерж- Я ки, вторые входы второго, четвертого 1 и шестого элементов И-HE подключены соответственно к выходам первого, третьего и пятого элементов И-НЕ, входы первого, второго и третьего элементов HE соединены соответственно с выходами второго, четвертого и шестого элементов И-НЕ, а выходы третьего, второго и первого элементов

HE подключены соответственно к перво. му, второму и третьему выходам блока.

1024927

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

Известно микропрограммное устройство управления, содержащее регистр адреса, модификатор;и логические схемы, позволяющее совмещать процессы вы полнения микроопераций в операционном блоке и выборки следующей микрокоманды из памяти микропрограмм )1j .

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

Наиболее близким к предложенному по технической сущности является микропрограммный процессор, содержащий блок управления, операционный блок, первый регистр микрокоманд, блок. постоянной памяти, дешифратор ветвлений, элемент И. причем выходы блока посто" янной памяти соединены с первыми входами первого регистра микрокоманд, первый выход блока управления соединен с первым входом элемента И, второй вход которого соединен с выходом дешифратора ветвлений, первые входы которого соединены с выходами операционного блока.

Известный микропрограммный процессор позволяет организовать условный переход по результату выполнения текущей микрокоманды в,том же микропрограммном такте (2) .

Недостатком изеестного .устройства является низкое быстродействие, свя" занное с тем, что в нем не достигнуто полное совмещение процесса выборки следующей микрокоманды с процессом реализации предыдущей микрокоманды в операционном блоке. Совмещение осуществляется при выборке следующей микрокоманды лишь по адресным входам блоков постоянной памяти. Выборка же по входам выбора блоков постоянной памяти начинается после окончания реализации предыдущей микрокоманды в операционном блоке.

Цель изобретения - повышение быстродействия процессора.

Поставленная цель достигается тем, что в микропрограммный процессор,содержащий операционный блок постоянной памяти, первый регистр микрокоманд, дешифратор ветвленйй, блок управления и элемент И, первый и второй входы которого соединены соответственно с выходом,дешифратора ветвлений и первым выходом блока; управления, выход операционного бло. ка подключен к входу дешифратора вет. влений, а вход первого регистра микрокоманд соединен с выходом блока, постоянной памяти, введены счетчик

10 адреса, второй регистр микрокоманд и элемент ИЛИ, первый и второй входы и выход которого подключены соответственно к выходу элемента И, второму выходу блока управления и управляюще15 му входу первого регистра микрокоманд, управляющий вход, первый и второй входы и первый и второй выходы второго регистра микрокоманд соединены соответственно с третьим вы20 ходом блока управления, первым и вторым выходами первого регистра ми-.. крокоманд, управляющим входом дешифратора ветвлений и входом операционного блока, а управляющий вход, син25 хровход, установочный вход и выход счетчика адреса подключены соответственно к второму и третьему выходам блока управления, третьему выходу первого регистра микрокоманд и входу

30 блока постоянной памяти.

Кроме того, блок управления со. держит триггер, ключ, элемент И,шесть элементов И-НЕ, три элемента задержки и три элемента НЕ, причем уста35 новочные входы триггера соединены с соответствующими контактами ключа, а выход триггера - с первым входом элемента И, первые входы первого цемента задрежки, первого и второго эле40 ментов И-НЕ подключены к выходу элемента И, первые входы второго элемента задержки, третьего и четвертого элементов И-НЕ соединены с выходом второго элемента И-НЕ, первые входы

45 третьего элемента задержки, пятого и шестого элементов И-HE подключены к выходу четвертого элемента И-НЕ вторые входы первого, третьего и пятого элементов И-HE соединены соот50 ветственно с выходами первого, второго и третьего элементов задержки,вторые входы второго, четвертого и шестого элементов И-НЕ подключены соот ветственио к выходам первого, третьего и пятого элементов И-НЕ, входы первого, второго и третьего элементов

HE содинены соответственно с выходами второго, четвертого и шестого элемен! тов И НЕ, а выходы третьего, второго

1024927 и первого элементов НЕ подключены соответственно к первому, второму и третьему выходам блока.

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

Микропрограммный процессор содержит операционный блок 1, блок 2 постоянной памяти, счетчик 3 адреса, первый регистр 4 микрокоманд, дешифратор 5 ветвлений, блок 6 управления, элемент И 7, второй регистр

8 микрокоманд и элемент ИЛИ 9; Выход

11 блока 6 управления подключен соот ветственно к входу синхронизации регистра 8 и входу синхронизации установки счетчика 3. Выход 12 блока 6 подключен к счетному входу счетчика

3 и первому входу элемента ИЛИ 9. Выход 13 блока 6 подключен к первому входу элемента 7 И. Вход блока 2 подключен к выходу счетчика 3. Каждая микрокоманда, записанная в блоке 2, содержит поле операций, поле адреса .и поле ветвлений, причем последнее поле определяет номер проверяемого условия ветвления, получаемого из блока 1. Выходы блока 2 подключены к входу регистра 4, а выход 14 регистра 4, соответствующий полям операций и ветвлений, подключен к установочному входу регистра 8. Выход

15 регистра 4, соответствующий полю адреса, подключен к установочному входу счетчика 3 - Выход 16 регистра

8, соответствующий полю ветвлений микрокоманды, соединен с первым входом .дешифратора 5, выход которого под ключен к второму входу элемента 7.

Выход 17 регистра 8,соответствующий полю операций микрокоманд, подключен к входу операционного блока 1, выходы которого соединены с вторым входом дешифратора 5, Выход элемента

7 подключен к второму входу элемента

ИЛИ 9, выход которого соединен со счетным входом регистра 4.. Никропрограммный процессор может быть реализован на микросхемах малой и средней степени интеграции. Счетчик адреса может быть выполнен, например, на микросхемах 133 ИЕ 6 или 133 ИЕ 7.

Блок 6 управления предназначен для формирования импульсной последо.вательности в соответствии с временной диа граммой, приведен ной на фи r . 2.

Брок 6 может быть выполнен, например, на основе трех последовательно соединенных формирователей импульсов с элементами задержки. Блок 6 (фиг.3) содержит ключ 18, триггер 19, элемент

И 20 и три последовательно соединенных формирователя импульсов, содержащих элементы И-НЕ 21 и 22, элемент о

23 задержки и элемент HE 24.

Операционный блок 1 предназначен для хранения слов информации, выполнения набора микроопераций и вычисления значений логический условий, 15 Поэтому в качестве блока 1 может быть использован любой операционный автомат. Блок 1 (фиг.4) содержит мультиплексоры 25 и 26, регистры 27, демультиплексор 28 и сумматор 29. Входы

17 блока 1 соединены с выходами поля операций регистра 8, которое при работе с данным блоком 1 должно содержать четыре сегмента: два сегмента адресов операндов, выходы которых

17- 1 и 17-2 подключены к управляющим входам соответственно мультиплексоров

25 и 26, сегмент адреса результата, выходы 17-4 которого подключены к управляющим входам демультиплексора

27, и сегмент кода операции, выходы

l7-3 которого подключены к настроечным входам сумматора 29. Выходы ре» гистров 27 соединены с информационными входами мультиплексоров 25 и 26.

3g .Цепи передачи данных и вывода резуль. тата не показаны.

Принцип работы процессора состоит в том, что в нем реализуется совмещение процесса обработки команд в one40 рационном блоке 1 с процессом выборки следующей микрокоманды иэ блока . 2. По фронту синхроимпульса, снимаемо

t-o с выхода 11 блока 6, в регистр 8 с выходов 14 регистра 4 записывает45 ся код поля операций и код поля ветвления текущей микрокоманды. Одновременно данный синхроимпульс стробирует код адреса следующей микрокоманды, приходящего с выходов 15 регистра 4 на установочные входы счетчика 3 (запись кода по установочным входам в микросхемах 133 ИЕ 6 и 133 ИЕ7 осу ществляется по срезу синхроимпульса).

После записи информации в регистр 8 и счетчик 3 одновременно начинают выполняться обработка микрокоманды блоком 1 и выборка следующей микрокоманды из блока 2. При этом из блока ,2 выбирается микрокоманда, которая

102492) будет обрабатываться процессором в следующем такте при невыполнении (или отсутствии) условия, заданного в поле ветвления текущей микрокоманды. После выборки этой микрокоманды из блока 2 с выхода 12 блока 6 поступает синхросигнал, по фронту кото". рого выбранная микрокоманда записывается в регистр 4, а код счетчи †ка 3 увеличивается на +1. Если текущая микрокоманда является микроко. мандой условного перехода, по коду адреса, образованного в счетчике 3 при увеличении прежнего кода на 1, в блоке 2 должна быть записана микрокоманда, которая будет обрабатываться процессором в следующем такте при выполнении условия, заданного в поле ветвления текущей микрокоманды. После установки нового поля адреса в счетчике 3 начнется выборка этой микрокоманды из блока

2. Если время то обработки микрокоманды в блоке 1 превыаает время вы-. борки 1lf,z микрокоманды из блока 2, .к этому моменту блок 1 еще не закончит обработку текущей микрокоманды и не выработает условия, необходимые для работы дешифратора 5. Таким образом, совмещены обработка текущей и выборка очередной микрокоманды, После окончания этих процессов на вьрходе 13 блока 6 формируется очеред ной синхроимпульс. При выполнении условия, записанного в поле ветвлений текущей микрокоманды, на выходе дешифратооа 5 формируется сигнал логической единицы. При этом по Фрон ту синхроимпульса, снимаемого с Bblxo да 13 блока 6, код микрокоманды, считанной из блока 2, замещает прежний код в регистре 4. Если условие,, записанное в поле ветвлений текущей микрокоманды, не выполнено или текущая микрокоманда не является микро. командой условного перехода (в поле ветвлений записан нулевой код), на выходе дешифратора 5 формируется сигнал логического нуля, замещения не происходит и в регистре 4 сохраняется код первоначально считанной микрокоманды.

При этом минимальная длительность

Т2 микропрограммного такта процессора определяется следующим выражением (без учета задержек на логических эле ментах);

2= А., + tO + tg +,С„И, где tan и tg - время записи соответственно в регистр 4 и регистр 8;

tg - время задержки дешифратора,5.

Будем считать, что как в известном, так и в предлагаемом процессоре применены идентичные регистры, т.е. выполняется равенство АА= t© М - Ы

f0 где t - время записи адреса.

Тогда выигрыш в длительности микропрограммного такта определяется

fS. выражением дт - Т, - Т, = .

Ъ

Этот выигрыш достигается при выпол20 нении следующих временных соотношений в микропрограммном процессоре: о 2 выр .+ сд + tc< где йсА- время записи кода в счетчик

3 по установочным входам;

- время установки счетчика 3 по счетному суммирующему входу. Можно считать. что 1СА-" 1с сьй Ввыб

СА С1 . Вйв и, следовательно, соотношение перепишется в виде и о «» .З внь, Для существующих процессоров количественные соотношения между йо и

ФЗЬ1 ПРИМЕРНО СЛЕДУЮЩИЕ: tP

"- (1 "30)(,;„-,, Таким образом, данный микропрограммный процессор позволяет организовать работу с минимальными задерж4р ками при ветвлении по результату выполнения текущей микрокоманды. При

t = З вь,в и р= с(- Ь относительное сокращение длительности микропрограммного такта определяется выражением

hT, » Ь д = — оо% — оо%-30%p + 1 1 9 Ь+ Ь т.e. увеличение быстродействия составляет 103.

Экономический эффект от использования одной СЦВИ согласно изобрете" нию составляет 1000 руб в год. При выпуске пяти СЦВИ в год экономический эффект составит 5000 руб. в год.

1024927

1024927

1024927

1024927

Заказ 4397/46 Тираж 70б

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

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

Подписное

Филиал AllO "Патент", r Ужгород, ул. Проектная, 4

Составитель Г.Виталиев

Редактор Г.Безвершенко Техред T.Ôàíòà, Корректор В . Гирняк