Микропрограммный процессор
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано при разработке микропрограммных процессоров цифровых вычислительных машин. Цель изобретения - увеличение быстродействия процессора при выполнении операций над разрядами, а также при выполнении операции вычисления корня. Это достигнуто за счет ведения возможности выборки констант из блока памяти микропрограмм на регистр со специальными установочными входами с совмещением выполнения действий над ними, а также за счет введения возможности ветвления по группе условий. Микропрограммный процессор содержит операционный блок 1, блок 2 микропрограммной памяти, первый 3 и второй 4 регистры микрокоманд, первый мультиплексор 5, блок 6 управления, первый элемент ИЛИ 7, элемент НЕ 8, счетчик 9, дешифратор 10 операций, регистр 11 адреса, регистр 12 связи с блоками памяти, первый элемент И 13, регистр 15 констант, второй 16, третий 17 и четвертый 18 мультиплексоры, дешифратор 19 разрядов, второй элемент ИЛИ 20, второй 21 и третий 22 элементы И, элемент И-НЕ и группу элементов ИЛИ 24. При необходимости выборки из блока 2 микропрограммной памяти константы в K-й микрокоманде на втором выходе первого регистра 3 микрокоманд выставляется сигнал логической единицы, который запрещает прием на второй регистр 4 микрокоманд и разрешает прием на регистр 15 констант. При выполнении операции вычисления корня используется итерационный алгоритм, осуществляющий последовательное определение значений разрядов результата. Определение значений P-го разряда производится по знаку разности между значением числа, из которого вычисляется корень и соответствующим ему приближением. При выполнении операций осуществляются ветвление по группе условий на входах первого мультиплексора 5 и управление адресами микропрограммной памяти. 5 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИК
„„SU„„) 517034
А1 (5ц 4 G 06 F 15/00, 9/22
OllHCAHHE ИЗОБРКткНИя
К АВТОРСКОМ .Ф СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ П.(НТ СССР
1 (21) 4270512/24-24 (22) 29.06.87 (46) 23.10.89. Бюл. № 39 (72) Л.И.Дрель и И.С.Мугинштейн (53) 681.32(088.8) (56) Авторское свидетельство СССР
¹ 1037263, кл. G 06 F 15/00, 1982 °
Авторское свидетельство СССР № 1024927, кл. G 06 F 15/00, 1982. (54) МИКРОПРОГРАММНЬ1Й ПРОЦЕССОР (57) Изобретение относится к вычислительной технике и может быть использовано при разработке микропро- граммных процессоров цифровых вычислительных машин. Цель изобретения увеличение быстродействия процессора при выполнении операций над разрядами, а также при выполнении операции
2 вычисления корня. Это достигнуто за счет ведения возможности выборки констант из блока памяти микропрограмм на регистр со специальными установочными входами с совмешением выполнения действий над ними, а также за счет введения возможности ветвления по группе условий, Микропрограммный процессор содержит операционный блок 1, блок 2 микропрограммной памяти, первый 3 и второй 4 регистры микрокоманд, первый мультиплексор 5, блок 6 управления, первый элемент ИЛИ 7, элемент HE 8, счетчик 9, дешифратор 10 операций, регистр 11 адреса, регистр 12 связи с блоками памяти, первый элемент
И 13, регистр 15 констант, второй
1517034
10
16, третий 17 и четвертый 18 мультиплексоры, дешифратор 19 разрядов, второй элемент ИЛИ 20, второй 21 и третий 22 элементы И, элемент И-НЕ и группу элементов ИЛИ 24. При необходимости выборки из блока 2 микропрограммной памяти константы в К-й микрокоманде на втором выходе первого регистра 3 микрокоманд выставляется сигнал логической единицы, который запрещает прием на второй регистр 4 микрокоманд и разрешает прием на регистр 15 констант. При
11зобретение относится к вычислитель3 ной технике и может быть использовано нрн разработке микропрограммных пронессоров цифровых вычислительных маГnn °
Цель изобретения — повышение быст- 25 родейстиня процессора.
11а фнг.l представлена структурная схема микропрограммного процессора; на фиг.2 — структурная схема операционЭ ного блока на фиг.3 — временная диа30 грамма формирования сигналов приема на регистр констант и второй регистр микрокоманд; на фиг.4 — алгоритмы вычисления квадратного корня.
Г0 -кронрограммньй процессор (фи ° !) 35 содержит операционньйл блок 1, блок
2 микропрограммной памяти, первый
3 и второй 4 регистры микрокоманд, первьй мультиплексор 5, блок 6 управления (генератор тактовьи импульсов), 40 первый элемент ИЛИ 7, элемент НЕ 8, с.четчнк 9, дешифратор 10 операций, регистр ll адреса, регистр 12 связи, первей элемент И 13, выход 14 адреса процессора, регистр 15 констант, вто- 45 рой, третий и четвертьй мультиплексоры 16-18. дешифратор 19 разрядов, второй элемент ИЛИ 20, второй и третий элементы И 21 и 22, элемент И-HE
23, группу элементов ИЛИ 24, информационный выход 25 процессора, вьиод 26 внешних микропроцессоров и информационный BxQp, 27 °
Операционный блок 1 (фиг.2) содержит сумматор 28 (Г1-2)-разрядные мульЪ
55 тнплексоры 29 и 30, М-разрядный демультиплексор 31 и группу из Г1 регистров 32, выходами соединенных с соответствующими входами пятого 29 и шесвыполнении операции вычисления корня используется итерационньй алгоритм, осуществляющий последовательное определение значений разрядов результата. Определение значений р-го разряда производится по знаку разности между значением числа, из которого вычисляется корень,и соответствующим ему приближением. При выполнении операций осуществляются ветвление по группе условий на входах первого мультиплексора 5 и управление адресами микропрограммной памяти, 4 ил. того 30 мультиплексоров, связанных соответственно с первым и вторым входами сумматора 28, выход которого соединен с выходом блока I и входами
M регистров 32, синхровходы которых подключены к соответствующим выходам демультинлексора 31, первый и второй входы блока 1 соединены соответственно с (Г1-l ) -ми и (Г1-2) -ми входами мультиплексоров 29 и 30, третий и четвертый входы блока 1 с управляющими входами сумматора
28 и демультиплексора 31, пятый — с управляющими входами пятого 29 и шестого 30 мультиплексоров, синхровход— с входом демультиплексора 31.
Сущность изобретения состоит в повышении быстродействия при выполнении операций над разрядами, а также при выполнении операции вычисления корня за счет введения возможности выборки констант из блока памяти программ с совмещением выполнения действия над ними, а также с введением воэможности ветвления по группе условий.
Г1икропрограммный процессор работает следующим образом.
Выходы регистров 3 и 4 микрокоманд соответствуют определенным полям микрокоманд. Первый выход регистра 3 соответствует полю адреса перехода, второй — полю управления приемом на регистр 15 констант. Первьйл выход регистра 4 представляет собой поле операций, второй — поле выбора источника модификации адреса микрокоманды, третий, четвертый и пятый выходы определяют найдя, управляющие работой операционного блока 1, шес1517034 той выход представляет собой поле, управляющее работой внешней памяти, седьмой управляет работой мультиплексора 16.
Прием очередной микрокоманды из
5 блока 2 микропрограммной памяти на первый 3 и второй 4 регистры микрокоманд производится синхронно с сигналами с выхода генератора 6, опреде- Ip ляющими период следования микрокоманд, и по времени совпадает с. задним фронтом этих сигналов. При обычном следовании микрокоманд на втором выходе первого регистра 3 микроко- !5 манд присутствует сигнал логического
I1
0, который, поступая на первые входы элементов ИЛИ 7 и И 13, разрешает прием информации на второй регистр 4 микрокоманд и запрещает 20 прием на регистр 15 констант. ! (ри необходимости выборки из блока 2 микропрограммной памяти константы в К-1 микрокоманде на втором выходе первого регистра 3 микрокоманд 25 выставляется сигнал логической "!", который запрещает прием на второй регистр 4 микрокоманд и разрешает прием на регистр !5 констант. Таким образом в (К-1)-й микрокоманде на ре- 30 гистр 15 констант будет принята константа. Поскольку содержимое второго регистра 4 микрокоманд не изменяется, в (K-1)-й микрокоманде выполняется функция указанная в К-й микроЭ 35 команде. Это позволяет производить действия с константой не в (К-2)-й, а в (К-1)-й микрокоманде (фиг.3).
На регистр 12 связи по управляющему сигналу с четвертого выхода де- 40 шифратора 10 операций производится прием команды, выбранной по адресу, находящемуся на регистре ll адреса, при этом второй мультиплексор 16 сигналом с седьмого выхода второго ре- 45 гистра 4 микрокоманд переключен таким образом, что на его выходе находится информация, поступающая иэ внешней памяти на информационный вход 27 процессора. Начало выборки команды из внешней памяти определяет сигнал обращения за командой, выдаваемой по окончании предьдущей команды с шестого выхода второго регистра 4 микрокоманд на управляющий выход 26 процессора.
Следующим этапом выполнения команды является формирование адреса операнда, при этом выполняемые в микропрограмме действия зависят от вида адресации (прямая, относительная, косвенная), который определяется полем признака адресации команды.
Разряды признака адресации поступают с выхода регистра 12 связи с бгоками памяти на младшие разряды первого мультиплексора 5 по третьему входу, а на его второй вход поступает управляющая информация с второго регистра
4 микрокоманд, которая подключает информацию с третьего входа на выход мультиплексора 5. Информация с выходов первого мультиплексора 5 поступает на входы элементов ИЛИ 24, а на вторые их входы подается информация с выхода первого регистра 3 микрокоманд, которая представляет собой поле адреса перехода к следующей микрокоманде. Причем младшие разряды адреса перехода, по количеству равные разрядам признака адресации, должны быть 0; например 00101101000 (при количестве разрядов поля признака адресации, равного трем). Результат логического сложения на выходах элементов ИЛИ 24 в зависимости от значения разрядов признака адресации определяет одну из восьми ячеек блока 2 микропрограммной памяти. Таким образом организуется ветвление к группе ячеек блока 2 микропрограммной памяти в зависимости от вида признака адресации, Формирование адреса операнда осуществляется в операционном блоке
1 и представляет собой выделение адресной части команды и передачу ее на регистр ll адреса (при прямой адресации) либо сложение выделенной адресной части команды с одним из индексных регистров (при относительной адресации) и передачу результата также на регистр II адреса.
Выделение адресной части команды осуществляется путем логического умножения константы с количеством единичных битов, равным адресной части команды, на саму команду. Например, при 16- разрядной команде, когда адресной частью являются младшие 10 разрядов, осуществляется логическое умножение на константу
000000!111111111, в результате чего старшие шесть разрядов обнуляются.
При этом информация на третьем выходе второго регистра 4 микрокоманд определяет вид выполняемой операцион1517034
50 ьи блоком 1 функции (арифметическое сложение, логическое сложение и т.д.), информация на четвертом выходе определяет адрес регистра операционного блока 1, в который эапи5 сывается результат, а информация на пятом выходе второго регистра 4 микрокоманд определяет адреса операндов, участвующих в выполнении указанной функциие
Адрес операнда, полученный на сумматоре 28, поступает на информационный вход регистра 11 адреса и принимается на него при приходе на управляющий вход сигнала приема с первого выхода дешифратора 10 операций.
Для выполнения действий, опреде.ляемых кодом операций команды, производится выход в начало микропрограммы выполнения текущей команды, для чего разряды кода операции, хранящиеся на регистре 12 связи с блоками памяти, поступают через старшие разряды первого мультиплексора 5 по третьему входу на первые входы элементов ИЛИ 24 группы. При этом на вторые входы элементов ИЛИ 24 посту пает адрес перехода с нулями в старших разрядах, по количеству равных коду операции. При 6-разрядном коде операции на выходах элементов ИЛИ 24 получается информация, определяющая в зависимости от значения кода опера«35 ции одну или 64 ячейки блока 2 микропрограммной памяти, Каждая из указанных 64 ячеек является началом микропрограммы выполнения одной из 64 команд, составляющих систему команд, аким образом, осуществляется ветвление одновременно по большему числу разрядов (в данном случае по 6), При реализации системы команд процессоров цифровых вычислительных машин наиболее сложными, ведущими к большим аппаратурным и временным затратам, представляются обь. чно операции над разрядами, а также операция вычислен я квадратного корня.
Операции над разрядами реализует эа гись "0" или "1" в опеределенный разряд ячейки блока внешней памяти либо присвоение значения определенного разряда ячейки внешней памяти
55 признаку результата„ либо запись признака результата в определенный разряд ячс йки внешней памяти ° При выполнении команд над разрядами происходит изменение значения только одного разряда, значение остальных остается неизменным.
Рассмотрим алгоритм выполнения команды над разрядами на примере команды установки в "1" определенного разряда ячейки блока внешней памяти с сохранением неизменными значений остальных разрядов. Номер устанавливаемого. разряда и адрес ячейки внешней памяти, устаствующей в команде, задаются определенным образом в адресе операнда. Пусть, например, в команде адресация производится относительно первого индексного регистра, в котором записан код 0101000000000000.
Пусть, например, код адресной части команды 0000000111. Адрес операнда формируется описанным образом, причем его старшие четыре разряда указывают номер разряда, который необходимо установить в "I" а младшие адрес ячейки блока памяти, в который необходимо этот разряд установить в
"!". Таким образом, адрес операнда в результате сложение первого индексного регистра (один из регистров операционного блока 1) с выделенной адресной частью команды представляет собой код 010000000000111, где старшие четыре разряда определяют устанавливаемый разряд, а остальные — седьмую ячейку блока памяти.
В первой микрокоманде исполнения команды производится прием на регистр
12 связи с блоками памяти адреса операнда с сумматора 28, при этом второй мультиплексор 16 переключен в соответствующее состояние.
Во второй и третьей микрокомандах производятся прием по сигналу с шестого выхода дешифратора 10 старших четырех разрядов с регистра 12 на четырехразрядный счетчик 9, а также обнуление старших пяти разрядов адреса операнда. Обнуление старших пяти разрядов адреса операнда производится путем логического умножения константы с нулями в четырех стЛрших разрядах на содержимое регистра 12 связи с блоками памяти, что осуществляется в операционном блоке I.
В четвертой и пятой микрокомандах производятся прием результата логического умножения, полученного на сумматоре 28, на регистр ll адреса, обнуление регистра 15 констант, выдача сигнала обращения эа операндом
1517034
10 по управляющему выходу 26, а также выдача управляющего сигнала на вход мультиплексора 16, переключая
его для работы с информационного вхо5 да 27 процессора.
В шестой микрокоманде производятся прием выбранного из седьмой ячей1 ки памяти операнда на регистр 12 связи с блоками памяти, а также выдача дешифратором 10 операций сигнала на его второй выход.
Таким образом, к концу шестой микрокоманды информация с выхода счетчика 9 воздействует на дешифратор 19, 15 возбуждая его пятый выход. С другой стороны, операция, выдаваемая с второго выхода дешифратора 10 операций, разрешает работу четвертого мультиплексора 18, поступая через второй 20 элемент И 21 на его первый управляющий вход, а также переключает его по второму управляющему входу таким образом, что сигнал с пятого выхода дешифратора 19 поступает на устано- 25 вочный вход пятого разряда регистра
15 констант.
В результате указанных действий на регистре констант устанавливается код 0000010000000000. 30
В седьмой и восьмой микрокомандах производится логическое сложение содержимого регистра 12 связи с блоками памяти и информации, находящей— ся в регистре 15 констант. Например, если код в седьмой ячейке блока памяти бып 0110001101110101, то после логического сложения на сумматоре 28 оказывается код 0110011101110101.
Этот код является конечным реэульта- 4р том выполнения команды, который в девятой микрокоманде, будучи принятым с сумматора 28 на регистр 12, записывается обратно в седьмую ячейку блока внешней памяти под управлением сигна- 45 ла с шестого выхода второго регистра
4 микрокоманд и на один иэ регистров
32 для хранения, В девятой микрокоманде содержимое одного иэ регистров операционного 5р блока 1 отведенного под счетчик команд, увеличивается на единицу, тем самым осуществляется подготовка к выборке из блоков внешней памяти следующей команды. 55
Прием адреса следующей команды на регистр ll адреса и выборка команды по этому адресу осуществляются в десятой микрокоманде.
Реализация вычисления функции Põx для значений х, лежащих в диапазоне
0,0-1,0, в предложенном микропрограммном процессоре строится на основе итерационного алгоритма. Этот алгоритм сводится к последовательному определению значений разрядов результата, который может быть представлен в виде
Q,=Wõx= $ q2 где с — значение р-го разряда.
При этом осуществляется подбор о „ таким образом, чтобы выражение х г
= Ц = (X q 2 ) приближалось по своему значейию к х, но оставалось меньшим х.
Определение очередного значения производится по знаку раности у р р между значением х и соответствующим ему приближением х . При этом, если
y > О, то qð,устанавливается равным
1, производится установка в "1" (р-2) разряда и установка в "О" (р-1) разряда результата; если у 0, -то q устанавливается равным 0 и производится установка в "1" (р-2) разряда результата (фиг.4).
При этом исходно подкоренное выражение находится в одном иэ регистров 32 операционного блока 1 (например, в регистре, обозначенном Ргl), а счетчик 9 обнуляется. Обнуление происходит путем передачи нулевой константы с регистра 15 через сумматор 28, мультиплексор 16 и регистр
12 на счетчик 9. При выполнении микропрограммы вычисления корня в циклах вырабатываются сигналы на третьем прямом и инверсном выходах дешифратора 10 операций, с помощью которых в соответствии с номером цикла вычислений (р) очередного разряда и в =ависимости от знака разности выполняются следующие действия.
Включаются третий и четвертый мультиплексоры. Это осуществляется за счет выдачи дешифратором 10 на третьем прямом выходе сигнала нулевого уровня. Он проходит через элемент
И 21 на первыи управляющий вход чет- вертого мультиплексора 18 и непосредственно поступает на второй управляющий вход третьего мультиплексора
17, обеспечивая их включение. При появлении на третьем выходе дешифратора 10 сигнала нужного уровня на тре15)7034
12 тьем инверсном выходе вырабатывается сигнал высокого уровня.
Переключается четвертый мультиплексор 18 в режим работы по вторым (р-2) входам, выполняя в циклах установку в
"1" (р-2) разрядов регистра 15 констант. Это осуществляется после появления сигнала на третьем выходе дешифратора 10 эа счет наличия единичных по-)и тенциалов на входах элемента И 22 в паузе до появления на входе элемента
И-НЕ 23 положительного синхроимпульса с блока управления, по заднему фронту которого будет осуществляться прием следующей микрокоманды на регистры 3 и 4.
При положительной разности производится дополнительное переключение 2р четвертого мультиплексора 18 для работы по первым р-м входам и осуществляется установка в "1 р-го разряда регистра 15 констант. Также при положительной разности (положитель- 25 ный знаковый разряд) производится переключение третьего мультиплексора
17 для работы по вторым (р-))-м входам и установка. в "0" (р-1)-ro разряда регистра 15. Переключение мультиплексора 18 осуществляется н связи с поступлением на его первый управляющий вход потенциала низкого уровня с элемента И 22. Низкий уровень на входе элемента И 22 обеспечивает35 ся наличием совпадения едшшчнь1х сигналов на входах И-HE 23, а именно: положительного сигнала с третьего инверсного выхода дещифратора 10, положительного синхросигнала с выхода 40 блока управления и положительного знакового разряда с выхода сумматора
28, характеризующего положительную разность.
При отрицательной разности произ- 45 водится переключение третьего мультиплексора )7 по первому управляющему входу знаковым разрядом сумматора 28 для работы по первым р-м входам и установка В 0 р го разряда регист 5О ра 15.
Пример. Вычисление квадратного корня иэ числа 0.110001000000000 (†) по описанному алгоритму, 49
64
Первые четыре микрокоманды (фиг,5) осуществляют выборку из блока 2 микропрограммной памяти нулевой константы и занесение ее через операционный блок 1 и регистр 12 связи с блоками памяти на счетчик 9. В последующих трех микрокомандах производятся выборка из блока 2 микропрограммной памяти константы 00)0000000000000, перепись ее, например, на Рг2 (один иэ регистров 32 операционного блока 1) и перевод содержимого Рг2 в дополнительный код. Далее производятся прибавление
"1" к счетчику 9 за счет выработки сигнала йа пятом выходе дешифратора
10 и переход к выполнению непосредственно циклов вычисления корня.
Таким образом, к началу выполнения первого цикла исходное состояние регистров и счетчика 9 следующее: Prl операционного блока — 0,1100010.
00000000; Рг2 операционного блока
1.110000000000000 Pr3 (регистр 15 констант) — 0.010000000000000; счетчик (Сч) — 0001.
I.Первый цикл.
1. Ргl = 0.110 0010 0000 0000
Рг2 = 1.110 0000 0000 0000
Prl = 0.100,0010 0000 0000 (реэультат полоясительный).
2.Установка в "I", 1-го и 3-го разрядов и установка в "0" 2-го разряда РгЗ; Pr3 = 0.101 0000 0000 0000.
З.Перепись РгЗ в Pr2 (Pr3 - Рг2).
4.Перевод Рг2 в дополнительный код (Рг2+1 -> Рг2);
Рг2=1.0)l 0000 0000 0000.
5,Прибавление "1" к Сч (+)Сч);
Сч = 0010, 6.Сдвиг влево Ргl; Prl
1.0000100 0000 0000.
Второй цикл.
1. Рг! = 1.0000 1000000 0000
Рг2 = ).0110 000 0000 0000
Prl = 0.011 0 100000 0000 (результат положительный).
2,Установка в "1" 2-ro и 4-ro разрядов и установка в 0" 3-го разряда РгЗ; Рг3=0 ° 110 1000 0000 0000.
3 ° РгЗ -> Pr 2, 4. Vr?+I -+ Рг2; Рг2 — 1. 00) 1000 0000 0000.
5. +)Сч; Сч = 00)l °
6,Сдвиг влево Prl; Ргl
= 0.110 1000 0000 0000.
Третий цикл.
1. Ргl = 0.110 1000 0000 0000
Рг2 = 1.001.1000 0000 0000
Prl = 0.000 0000 0000 0000 (результат положительный).
1517
30
1. Рг) = 0.0011100 0000 0000
Рг2 = 0.)110011 0000 0000
Ргl = 1.000111) 0000 0000 (результат отрицательный), 2. Установка в 011 6-ro разряда и 4О установка в "1" 8-го разряда РгЗ;
РгЭ = О.I)1.0001.!000.0000.
3. РгЗ вЂ” Рг2, 4. +)Сч; Сч = Olll.
5.Сдвиг влево Ргl; Prl
= 0.001.1.110.0000 0000.
Седьмой цикл.
1. Рг! = 0.001 !110 0000 0000
Рг2 = О.lll ООО) )000 0000
Ргl = 1 ° 000 1111 1000 0000 (результат отрицательный), 2. Установка в "О" 7-го разряда и установка в "1" 9-ro разряда РгЗ;
РгЭ = 0.111.0000.1100.0000, 3 ° РгЗ - Рг2.
4. +IСч; Сч = 1000.
5. Сдвиг влево Ргl; Ргl
= 0.001.1)11.0000.0000.
Восьмой цикл.
)3
2.установка в "1" 3-го и 5-ro разрядов и установка в "О" 4-го разряда Pr3; Рг3=0.)l)0100 0000 0000.
З.РгЭ - Рг2.
4.Рг2+1 — Рг2;
Рг2=1.000)IOO 0000 0000.
5.+IСч; Сч = 0100.
6.Сдвиг влево Prl; Prl
= 0.000 0000000000 0000.
Четвертый цикл
1 ° Рг) = 0.000 0000 0000 0000 +
+ Рг2 1.000 l)00 0000 0000 (результат положительный).
2.Установка в "О" 4-го разряда 15 и установка в "1" 6-го разряда Рг3;
Pr3 = 0.11101)0 0000 0000.
Э. РгЗ -+ Pr2.
4. +IСч; Сч = 0)01.
5,Свдиг влево Prl; Prl
= 0.0011 000 0000 0000.
Пятый цикл.
). Ргl = 0.001 1000 0000 0000
Рг2 = О.lll 0110 0000 0000
Рг) = 1.0001110 0000 0000 (результат отрицательный).
2.Установка в "О" 5-го разряда и установка в ")" 7-го разряда РгЗ;
РгЗ = 0.11100110000 0000.
3. Pr3 Рг2.
4. +IСч; Сч = 0110.
5. Сдвиг влево Prl; Ргl
= 0.001110 0000 0.0000.
Шестой цикл.
034 14
1 ° Рг) 0,001 )ill 0000 0000
Рг2 О.lll 0000 I)00 0000
Prl * 1.000 )ill 1100 0000 (результат отрицательный).
2. Установка в "О" 8-го разряда, установка в "1 IO-го разряда РгЭ;
РгЗ 0.111.0000.0110.0000.
3. РгЗ -+ Рг2.
4. +IСч; Сч IOOI.
5.Сдвиг влево Prl; Prl
0.00) ill) 1000 0000.
Девятый цикл.
1. Рг) 0.0011 Ill) 1000 0000
Рг2 = О ° 111 0000 Ol)0 0000
Рг! ).000 1!11 11)0 0000 (результат отрицательный).
2. Установка в "О" 9-го разряда, установка в "1" 11-го разряда; РгЗ
= 0.)11.0000.0011.0000.
3. РгЗ - Рг2.
4. +IСч, Сч = 1010.
Сдвиг влево Ргl; Рг)
= 0.001 Ill) 1100 0000.
Десятый цикл.
I. Prl = 0.001 )lll 1100 0000
Рг2 = 0,111 0000 0011 0000
Рг) = 1.000 lll) )ill 0000 (результат отрицательный).
2.Установка в "О" 10-го разряда, установка в "1" 12-го разряда Pr3;
РгЗ = О.ll).0000.0001.1000.
3. Pr3 -+ Рг2.
4. +IСч; Сч = 1011.
5. Сдвиг влево Ргl; Ргl
= 0.001 1111 1110 0000.
Одиннадцатый цикл.
l. Ргl = О.OOI 1111 1110 0000
Рг2 = 0.111 0000 0001 1000
Prl = 1.000 11)1 )ill 1000 (результат отрицательный), 2. Установка в "О" 11-го разряда, установка в "1" 13-го разряда РгЭ;
РгЗ = О.lll 0000 0000 1100.
3. РгЗ - Рг2.
4. +)Сч; Сч = 1100
5. Сдвиг влево Ргl; Ргl
= 0.001.)ill.)ill.0000 °
Двенадцатый цикл.
1. Рг) = О ° 001 )ill Ill) 0000
Рг2 = О.lll 0000 0000 !100
Prl = 1.000 Ill) 1111 1100 (результат отрицательный).
2. Установка в "О" 12-ro разряда, установка в "1" 14-го разряда РгЗ;
РгЭ = О.I)1 0000 0000 0110.
3. РгЗ - Рг2.
4. +IСч; Сч = 1101.
1517034
5. Сдвиг вдево Ргl; Prl
= 0,00l,llllâllll.1000. тринадцатый цикл.
l Pr1 = 0.001 1111 1111 1000
Рг2 =,0.111 0000 0000 0110
Ргl = 1 ° 000.1111 .1111.1110 (результат отрицательный).
2. Установка в "О" 13-ro разряда, установка в "1" 15-ro разряда РгЗ; 10
РгЗ = О ° 111 0000 0000 0011.
3. Рг3 — Рг2.
4. +1Сч; Сч = 1110.
5. Сдвиг влево Ргl; Ргl
0.001 1111 1111 1100. 15
Четырнадцатый цикл.
1. Prl = 0.001 1111 llll 1100
Рг2 = O,ill 0000 0000 ООИ
Ргl = 1.000 1111 llll llll (результат отрицательный), 2. Установка в "0" 14-ro разряда
РгЗ; РгЗ = 0.111 0000 0000 0001, 3. РгЗ -э Рг2.
4. +1Сч, Сч = 1111.
5. Сдвиг влево Prl Ргl
0.001.111.111,1110.
Пятнадцатый цикл.
1. Ргl = 0,001 IIII llil 1110
Рг2 = 0,111 0000 ОООО 0001
Pr1 = 1.000 llll 1111 1111 (результат отрицательный).
2. Установка в "О" 15-го разряда
РгЗ; Рг3=0.111000000000000.
3. РгЗ вЂ” Рг2.
4. +IСч; Сч = 0000. 35
30
При условии равенства счетчика 9
Фор мул аизобретени я
Микропрограммный процессор, жащпй блок памяти микрокоманд, и второй регистры микрокоманд, содерпервый операнулю микропрограмма переходит в ветвь переписи окончательного результата, 0.111 ОООО ОООО ОООО (†) с Pr3
8 на регистр результата Ргl.
В предлагаемом процессоре достигнуто повышение быстродействия при выполи пни операций над разрядами и опе 45 рации вычисления корня за счет использования выборки из блока памяти микрокоманд констант на регистр констант со специальными схемами установки, совмещения выборки константы 50 с действиями над ней, осуществления ветвления микропрограмм одновременно по группе условий. ционный блок, генератор тактовых импульсов, первый мультиплексор, дешифратор операций, элемент HE первый элемент ИЛИ, первый элемент И, причем выходы первого и второго полей блока памяти микрокоманд соединены соответственно с информационными входами первого и второго регистров микрокоманд, выход генератора тактовых импульсов соединен с входом синхронизации операционного блока,с входом элемента НЕ, с первым входом первого элемента И, с входом синхронизации первого регистра микрокоманд, выход признака полей блока памяти микрокоманд которого соединен с вторым входом первого элемента И и первым входом первого элемента ИЛИ, выход которого соединен с входом синхронизации второго регистра микрокоманд, выходы поля внутренних микроопераций, поля адреса операнда, поля адреса регистра, поля кода операции которого соединены соответственно с входом дешифратора операции, входом адреса операции, входом адреса регистра, входом кода операции операционного блока, отличающийся тем, что, с целью повышения быстродействия, в него введены регистры констант, адреса и связи, с второго по четвертый мультиплексоры, счетчик, блок элементов ИЛИ, дешифратор разрядов, второй элемент ИЛИ, второй и третий элементы И, элемент 11-НЕ, причем информационный вход микропрограммного процессора соединен с первым информационным входом второго мультиплексора, выход которого соединен с информационным входом регистра связи, выход старших разрядов которого соединен с информационным входом счетчика, информационный выход которого соединен с входом дешифратора разрядов и входом второго элемента ИЛИ, выход которого соединен с первым информационным входом первого мультиплексора, выход которого соединен с первым входом блока элементов ИЛИ, выход которого соединен с входом адреса блока памяти микропрограмм, выход воторого поля которого соединен с информационным входом регистра констант, выход которого соединен с первым информационным входом операционного блока, выход которого соединен с вторыми информационными входами первого и второго мультпплек!
17
1517034 соров, с информационным входом регистра адреса, выход которого является выходом адреса микропрограммного процессора, выход старшего разряда информационного выхода операционного блока соединен с адресным входом третьего мультиплексора и с первым входом элемента И-НЕ, выход поля адреса перехода первого регистра микрокоманд соединен с вторым входом блока элементов ИЛИ, выход первого элемента И соединен с входом синхронизации регистра констант, выход младших разрядов регистра связи соединен с третьим информационным входом первого мультиплексора, выход регистра связи соединен с вторым информационным входом операционного блока и с информационным выходом микропро- 20 граммного процессора, выход поля выбора адреса второго регистра микрокоманд соединен с входом адреса первого мультиплексора, выход дешифратора разрядов соединен с информационными 5 входами третьего и четвертого мультиплексоров, выходы которых соединены соответственно с входами установки в "0" и установки в "1" регистра констант, первый выход дешифратора операций соединен с входом записи регистра адреса, второй выход дешифратора операций соединен с первыми входами второго и третьего элементов И, выходы которых соединены соответственно с входом стробирования и входом адреса четвертого мультиплексора, третий выход дешифратора операций соединен с вторым входом второго элемента И и входом стробирования третьего мультиплексора, с четвертого по шестой выходы дешифратора операций соединены соответственно с входом записи регистра связи, суммирующим входом счетчика, входом записи счетчика, выход генератора тактовых импульсов соединен с вторым входом элемента И-НЕ, выход которого соединен с вторым входом третьего элемента И, выходы поля внешних микроопераций и поля управления вторым мультиплексором второго регистра микрокоманд соединены соответственно с выходом внешних микроопераций микропрограммного процессора и с входом адреса второго мультиплексора, третий инверсный выход дешифратора операций соединен с третьим входом элемента И -НЕ, выход элемента НЕ соединен с вторым входом первого элемента ИЛИ.!
517034 иг.
Bsdyra слеЮугощеи саманди
Составитель А,Сошкин
Техред Л.Олийнык
1сорректор H K b
Редактор 0.1Прковецкая
Заказ 6391/51 Тираж 668 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГЕНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", r. Ужгород, i. эгарина, 101