Устройство для умножения и деления с плавающей точкой
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано в составе мультипроцессора быстродействующих ЭВМ. Цель изобретения - повышение быстродействия устройства. Поставленная цель достигнута с помощью введения в устройство, содержащее регистр 50 команд, три 7Z-KS1 Фиг..
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (5D4.G 06 F 7/52
56 Ж 55
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
f10 ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3878202/24-24 (22) 05.04.85 (46) 23.12.86. Бюл. Р 47 (72) Н.Д.Воронцова, В.M.Áoðèñoâà, Е.М.Потоцкий и В.Г. Моисеев (53) 681.325(088.8) (56) Авторское свидетельство СССР
У 885994, кл. С 06 F 7/38,. 1979.
Процессор ЕС 2060. Техническое описание T02. M., 1977, с. 16-17. (54) УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ И ДЕЛЕНИЯ С ПЛАВАЮЩЕЙ ТОЧКОЙ (57) Изобретение относится к вычислительной технике и может быть использовано в составе мультипроцессора быстродействующих ЭВМ. Цель изобретения — повышение быстродействия устройства. Поставленная цель достигнута с помощью введения в устройство, содержащее регистр 50 команд, три
12 коммутатора 9-11, три регистра 6-8 порядков, сумма.тор 12 порядков, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 4, коммутатор
5 знака, три регистра 1-3 знака, первый и второй коммутаторы 17-18 мантисс, два коммутатора 23 и 24 полусумм, два коммутатора 27 и 28 переносов, вспомогательный коммутатор
30, первый и второй регистры 13 и 15 мантисс, два регистра 21 и 22 полусумм, два регистра 25 и 26 переносов, вспомогательный регистр 29, коммутатор 0 сдвигаемой информации, сдвигатель 36, блок 37 умножения,, узел
45 нормализации, регистр 46 нормализвции, счетчик 52 полутактов, сум78837 матор-вычитатель 39, блок 38 деления, двух регистров 32 и 33 частного, коммутатора 34 частного, регистра 35 переполнения, коммутатора 44 переполнения, дополнительного регистра 31, третьего и четвертого коммутаторов
19 и 20 мантисс, третьего и четвертого регистров 15 и 16 мантисс, коммутатора 42 множителя, дополнительного коммутатора 41 сдвигаемой информации, регистра 47 нормализации делителя, коммутатора 48 нормализации делителя, дешифратора 53 полутактов, дешифратора 49 управляющих сигналов и оригинальной организации связей между блоками. 1 з.п. ф-лы, 10 ил.
Устройство для умножения и деления с плавающей точкой (фиг. 1) содержит три регистра 1-3 знака, злемепт ИСТОЧАЮЩЕЕ ИЛИ 4, коммутатор .5 знака, три регистра 6-8 порядков, три коммутатора 9-11 пор11дкои, сумматор вычитате»ь 12 порядковq четы ре регистра 13-16 мантисс, четыре коммутатора 17-20 мантисс, два регистра 21 и 22 полусумм, два коммутатора 23 и 24 полусумм, два регистра 25 и 26 переносов, два коммутатора 27 и 28 переносов, вспомогатель30
Изобретение относится к В1>1числительной технике и может быть использовано В составе мультипроцессора быстродействующих ЗБ11.
ЦЕЛЬЮ И>З ОЙРЕТЕНИ11 ЯГ>ЛЯ ЕТСЯ ПОПЫ" быс трод1>йствия.
На фиг. 1 представлена структурная схема устройства для умножения и деления с плаваюшей точкой; на фиг. 2 — структурная схема блока де- 10 ления; на фиг. 3 — структурная схема узла анализа блока деления; па фиг.4— структурная схема блока умножения, па фиг.5 — алгоритм выполнения Операций умножения; на фиг. 6 — то же; на фиг. 7 -- алгоритм ьыполпения операции умножеиия с расширенной разрядностью, па фиг. 8 — то же, на фнг.9— алгоритм выпОлнения Операции де1!е>1ия > на фиг. 10 — то же. 20
2 ный регистр 29, вспомогательный коммутатор 30. дополнительныи регистр
31 два pQIIICI pQ 32 H » коммутатор 34 частного, регистр 35 переполнения, сдвигà"..1ь 36, блок 37 умножения, блок 38 деления., сумма тор-вычитатель 39> коммутатор 40 сдвигаемой Iigopма11ии, дополнительный ком1гутатор 41 сдв11гаемой информации, коммутатор 42 М11О111ителя, коммутатор 43 множимого, коммутатор 44
Гевеполне: узел 45 I-. ОпмсГIпзации
46 нормализа Tini, pei iiст„ .1 4 / нормализации делп"теля, коммутатор
48 нормализации делителя, дешифратор 49 управляющих сигналов, регистр
50 команд) злемент И 111 51, счетчик
52 полутактов, дешифратор 53 подув тактов и имеет входы. 54 и 55 первого и второго операндов устройства, вход 56 вида операц-:11: устройства, выход 57 результата устройства, вход
58 и выход 59 узл-. 45 нормализации, выход 60 второго регистра 15 мантисс выход 61 четвертого регистра 16 мантисс, выход 62 второго регистра 22 полусумм, выход 63 Второго регистра
26 переносов, выход 64 коммутатора
42 мпожителя, выход 65 коммутатора
43 множимого, выходы 66 и 67 блока
37 умножения, три выхода 68-70 блока
38 деления, выход 71 сумматора-вычитателя 39, выходы 72-10 1 дешифратора 49 управляющих сигналов.
1278837
Блок 38 деления (фиг. 2) содержит полусумматоры 102 группы, узлы
103 анализа группы, коммутаторы 104 делителя группы, регистры 105 и 106, коммутаторы 107 и 108, группу 109 элементов НЕ, входы 110-113 узла анализа, выходы 114 и 115 узла анализа.
Узел 103 анализа (фиг. 3) содержит элемент 116 ИСКЛЮЧАЮЩЕЕ ИЛИ, элементы
И 117-124, элементы ИЛИ 125 и 126, 10 элементы НЕ 127-131.
Блок 37 умножения (фиг. 4) содержит дешифратор 132 множителя, регистр
133, группу элементов ИЕ 134, группу коммутаторов 135 кратных, группу элементов ИЛИ 136, коммутаторы 137 и 138, элемент И 139, полусумматоры
140-147.
В алгоритмах выполнения операций (фиг. 5-7) используются следующие сокращения:
1РЗ-3P3 — первый, второй и третий регистры 1-3 знаков, 25
1РПР-2РПР— первый, второй и третий регистры 6-8 порядков, 1PS — первый регистр 21 полусумм, 1РП вЂ” первый регистр 25 переносов, 1РЧ, 2РЧ вЂ” первый и второй регистры 32 и 33 частного, BP — вспомогательный регистр 29, ДР— дополнительный регистр 31, РПЧ вЂ” регистр 35 переполнения (частного), PH — регистр 46 нормализации, РНД - регистр 47 нормализации делителя, МŠ— мнемоника операции умножения с короткими операндами и длинным результатом, МД вЂ” мнемоника операции умножения с длинными операндами и длинным результатом, 45
МХД вЂ” мнемоника операции умножения с длинными операндами и расширенным результатом, MXR — мнемоника операции умножения с расширенными операндами и расширенным результатом, 1РМ-4PM — первый, второй, третий и четвертый регистры 1316 мантисс, 2PS — второй регистр 22 полусумм, 2РП вЂ” второй регистр 26 переносов, С — сумматор-вычитатель 39, СВП вЂ” сумматор-вычитатель 12 порядков, С СВ(С-»СВП) — перенос в младший разряд сумматоравычитателя (сумматора-вычитателя порядков), СД вЂ” сдвигатель 36, 10П вЂ” первый операнд, 20П вЂ” второй операнд, КС вЂ” коммутатор 40 сдвигаемой информации, ДКС вЂ” дополнительный коммутатор
41 сдвигаемой информации, КТС вЂ” количество тетрадных сдвигов нормализации (выход узла 45 нормализации), Л(КТС) — сдвиг влево на количество тетрад нормализации, КБС вЂ” количество битовых сдвигов нормализации, Л(КБС) — сдвиг влево на количество бит нормализации, БУБ(БУП) — выход поразрядных сумм (переносов) блока 37 умножения, БДЯ(БДП) — выход поразрядных сумм (переносов) блока 38 деления, Ч1, Ч2 — выход блока 38 деления первой и второй составляющих частного (трехраз-" рядных), JIn(IIn) — передача со сдвигом влево (вправо) на п разрядов, ДŠ— передача мнемоника операции деления с короткими операндами и длинным результатом.
ДД вЂ” мнемоника операции деления с длинными операндами и длинным результатом.
Для повышения быстродействия деления принят алгоритм деления без восстановления остатка с представлением остатка в двухрядном виде.
Блок 38 деления (фиг. 2) осуществляет получение в каждой итерации трех разрядов частного. Это реализуется на пирамиде из трех ступеней, выполненной на полусумматорах 102, каждый из которых имеет три входа слагаемых и два выхода. На первом и втором выходах полусумматоров. каждой ступени образуется остаток в виде поразрядных сумм (Я) и поразрядных переносов (П), которые подключены соответственно к первому и второму входам полусумматоров следующей ступени пирамиды со сдвигом
5 12 влево на один разряд (S) и со сдвигом влево на два разряда (П). На третий вход полусумматора поступает делитель 60 в прямом или обратном коде. Определение вида передачи делителя на вход полусумматора и получение очередной цифры частного в виде двух составляющих на каждой ступени пирамиды осуществляется на узле
103 анализа, на который поступают три старших разряда остатка в двух— рядном виде и два выхода предыдущего узла анализа. Два выхода узла. ана- . лиза, представляющие очередной разряд частного в виде двух составляющих, используются для определения вида передачи делителя на очередную ступень полусумматора.
Дополнительный код делителя образуется подачей единицы в освободившийся младший разряд третьего входа полусумматора, на который подается поразрядный перенос остатка со сдвигом влево на два разряда. Вид передачи делителя, полученный на третьем узле анализа, запоминается по управляющему сигналу 92 на регистрах
105 и 106.
В первой итерации деления делитель поступает на третий вход первой ступени пирамиды в обратном коде, что осуществляется записью ециницы на регистр !06 по управляющему сигналу
91. При этом на первый вход первой ступени пирамиды поступает делимое, на второй вход — нули, за исключени-, ем младшего разряда, куда поступает единица дополнительного кода делителя с регистром 106. Формирование делителя в нужном коде ступени на каждой ступени пирамиды осуществляется на элементах Е1Е 109 и коммутаторах 104, управляющими входами которых являются выходы узлов анализа предыдущей ступени.
Значение приведенного остатка
00.00
00.01
25 00.10
00. 11
10. 11
11. 00
11.01
11.10
11.11
Если для определения цифры частного используется значение предыдущей цифры частного (предыдущей передачи
55 делителя), можно количество знаковых разрядов сократить до одного младшего разряда в приведенном виде (с приведением переноса), а два
Определение цифры частного, имея остаток, который записан в двухразрядном коде, производится с использованием избыточных цифр частного, r .е. для каждого частного допустимыми считаются три возможные цифры:
+1, О, -1. При условии, что делитель {d) должен быть нормализованным числом, для анализа вида передачи делителя и определения цифры частного достаточно анализировать в приведенном виде четыре старших цифры остатка, включан два знаковых
78837 6 разряда. При этом комбинации вида
01.ХХ (значения Х вЂ” "0" или "1") исключаются, так как не может быть переполнения. Комбинация 10 в знаковых разрядах может получиться, если в четырех старших разрядах — комбинация 10. 11 и присутствует перенос из неприведенной части, в результате чего комбинация 10.11 сводится к комf0 бинации 11.00. Вид передачи делителя и цифра частного„ соответствующие определенной комбинации старших разрядов, приведены в табл. 1.
Т а блица 1
Вид пере- Цифра частдачи де- ного лителя,10 При комбинации 11.11 знак остатка неизвестен. Он зависит от переноса не иэ неприведенной части. При полном приведении остатка в этих разрядах может быть две комбинации: 00.00 (под5 ложительный остаток) или 11.11 (отрицательный.остаток). B обоих случаях остаток по абсолютной величине не превышает делитель. При этом последующий остаток — это настоящий, сдвину" тый влево на один разряд, а цифра частного равна нулю.
1278837 других разряда могут быть представлены в двухрядном коде. Вид передачи делителя и цифра с частного, Таблица 2
Пр едыдущая передача делителя
Код старших разрядов полусумматора
Вид передачи делителя и цифра частного
8„ Я(0)+П(1) S(1) S(2) П(2) П(3) -d +d
+1 на BP -1 на РЧ
112. 1 112. 2 113. 2 113.3 114
Х Х Х Х 0
115
0 1
1 0
Х Х
1 0
0 0
1 1 которую реализует узел 103 анализа (фиг. 3). Блок 38 деления содержит с учетом знака (и+1) (и — количество разрядов мантиссы длинного операнда). Дополнительный старший раз» ряд делителя формируется подачей в старший разряд коммутаторов 104 нуля при передаче делимого в прямом коде и единицы при его передаче в обратном коде. Дополнительный старший разряд делимого образуется в старшем разряде на первом регистре
21 полусумм подачей нуля на коммутатор 23 при записи результата нормализации делимого со сдвигателя 36.
В дальнейшем знак делимого через второй регистр 22 полусуммы поступает в блок деления в старший разряд первого входа первой ступени
110 111 120=112. 3 113. 1 соответствующие определенной комбинации при анализе трех старших разрядов остатка, представлены в табл.2, пирамиды первого полусумматора 102
В блоке 37 умножения (фиг. 4)
45 осуществляется анализ Очередных четырнадцати разрядов множителя, разбитых на пары, что реализуется дешифратором 132, вырабатывающим группу управляющих сигналов, фиксируемых на регистре 133 в конце такта. Выход этого регистра подключен к управляющим входам коммутаторов 135 блока 37 умножения. Дешифрация каждой пары разрядов множителя производится в соответствии с табл. 3. Селекция очередных четырнадцати разрядов множителя осуществляется за такт до итерации умножения на эти разряды и реализуется коммутатором 42 множителя.
1278837
Таблица.3 т
l„ 1 арШ«ттт разряд
flP Е т«ытт l1JQ fl пары
Дешифр«лруемая паря разрядов множителя
Втлд формируемого кратного
Нет передачи
Прямой код
10
Дополнительный код со сдв««гом влево
Дополнительный ко,ц
Прямой код
ПряМсОИ Код СО
СДВ«Л«ОМ ВЛЕВО
Дополнительный 55 код
Н:T «тередачи
Ьлок 37 умножения oc fltecT13JIf I. т в каждой итерации одновременное умножение на очередные, начиная с младших четырнадцати разрядо«3 множителя.
Да««ньт«л блок 5 умножение операндов двойной длипы в операциях с расширенной разрядность«о, причем селекция старшей и младшей частей множимого осуществт«яется на коммутаторе АЗ множимого (фиг. 1). 10
При разрядности множимого, равной и, пирамида умножения имеет (и+15) разрядов. Появление лишнего разряда обусловлено необходимостью учета переполнения, возникающего в итерациях
15 умножения с расширенной разрядностью, когда веса разрядов предыдущей и последующей итерации совпадают {9, 11, 13 и 15 такты на фиг. 5). Старший
-дополнительный разряд множимого пос1 тупает нулем в блок умножения с коммутатора ч3 множимогo) где формируется подачей логического "0" в старший разряд коммутатора., которыи содерж«лт (и+1) разряд. Восемь кратных множимого поступают на пирамиду умножения коммутаторов 135, управление которыми осуществляется дешифратором
132 согласно табл. 3.
Д<оммутаторы 135, кроме «:,ос:«е,тнего, «IMPIoT (и+ 1 ) p B 3 psl I а Ioc.lc f«1 « .й к Ом мутатор 135 — и разрядов. ддромежуточПЫй РЕЗУЛЬтат ПтРЕД«СДУ««той Итвдадин, ПРЕДСта«3ПЕННЬтй H ДВУХРЯДНСМ ВИДЕ ПОра:.рядных сумм (S) и переносо«3 (П), подается на пирамиду умножсния через коммутаторы 137 и 138 без сдвига или со сдвигом вправо на четырнадцать разрядов 13 соответствии с управляющими сигналами 89 и 90, причем поразряд««ьте переносы подаются .l комму«»вЂ”
Тор 1 38 CO CsEDI3 I О 1 IJJIC-.13О ряд по отношен«лю к поразрядной сумме.
Таким образом, коммутаторы 137 и 138 имеют (и+15) разрядов. 11одача промежуточного результата без сдвиг". возникает в некоторых итерациях умножения с расширенной разрядностью, когда веса газрядсв предыдущей и последу«ощей итерации совпадают. Восемь кратных множимсго поступают на пирамиду коммутаторов 135 со сдвигом дру« относительно друга влево ««а два. разряда. Таким образом, пирамида умножения производит сложение десяти слагаемых в двухразрядном коде — поразрядных сумм (S) и поразрядных переносов (П). Данное сложение осущест— влястся ня пирамиде из пяти уров««ейq реализованной ва полусуммаfopax 140147, которые имеют три входа слагаемых-и два выхода.
Первый и второй выходы .«олусумматОРа ПостУПаЮт .:а Ст«ЕДУЮ««УЮ СтУттЕНЬ
Г«ЛРаМ«тды СООТ13(тСТВЕтьт10 ЕЗ СДВ«ЛГа и CO СДВИГОМ В,та«30 IIG O+«III РаЗт)ятт притле«л стсвободивш«т«лся MJIBдши«л рд 3—ряд следу«още«л с тупе и пирамиды заполняетсч нулем, за искпючениам третьего входа последнего полусумтатора, в младщ«лй разряд «которого пос1упает
ПЕРЕНОС сЗт Ппт«лой СУМ1Лтс МЛаДШЕй ЧаСТК ЧастИЧПОХ 0 1ЦЗО.-тЗВЕДс=я;-«я В ЧЕТЬтрнадцать разря.«ов пре«тлтдущей итерации (вход 71. 2) через элемент:.! 139 т О управляющему сигналу 90, т.е. в тех случаях, когда проме«куточтый результат Пт«ЕДЫДУЩЕЙ ИтЕРаЦИИ 1«ОДаЕтСЯ
СО СДВИт ОМ Влр«IВО 1«а т1Е 1 I.lpпаДЦатЬ разрядов. Полная с умма части .т-того произведения предыдущсй «перации op мируется на сумматоре-вычитателе 39 параллельно с выполнением следующей
1
Таблица 4
3P3:1P392P3
СВП:=1РПР+2РПР
СВП:=1РПР-2РПР
75
С вЂ” СВП
76. 1
1РПР: =10П
1РПР:=ЗРПР
76.2
2РПР:=20П
2РПР:=РН
2РПР:=64
2РПР:=14
7?.1
77.2
77.3
77,4
ЗРПР:=СВП
1PM:=10П
79.1
1РМ: =1PS
ЗРМ:=10П
79. 2
80. 1
ЗРМ:=1РП
80. 2
2РМ:=20П
81. 1
2PM: =1PS
81. 2
2РМ: =1РБЛ1
2РМ:=1РБЛ2
81. 3
81.4
2РМ: =1РБЛЗ
81.5
4РМ:=20П
55 82. 1
4РМ:=1РП
82.2
1Р$:=СД
83. 1 осуществляется в коммутаторе 135 распространением едияиц в старших разрядах соответствующего входа пирамиды и подачей единицы дополнительного кода с элементов ИЛИ 136 в соответствующие разряды. B случае представления частичного произведения от предыдущей итерации в дополнительном коде, который определяется выходом полного переноса из старшего раз- 10 ряда сумматора-вычитателя 39 и является входом 71.1 блока умножения, поспоступающим на вход коммутатора 137, старшие четырнадцать разрядов этого коммутатора заполняются единицами при передаче со сдвигом вправо на четырнадцать разрядов промежуточного результата. При передаче со сдвигом вправо на тринадцать разрядов поразрядных переносов промежуточного результата старшие четырнадцать разрядов коммутатора 138 заполняются нулями. Единица возможного переполнения учитывается в четырнадцатом разряде пирамиды (начиная с нулевого
25 разряда) благодаря записи в этот разряд коммутатора 137 значения нулевого разряда второго регистра 22 полусумм, а коммутатора 138 — значения первого разряда второго регистра 26 переносов. Все остальные разряды десяти входов пирамиды умножения заполняются нулями.
Коммутаторы 135 кратных выполняют передачи согласно табл. 3.
Узел 45 нормализации определяют количество нулевых тетрад до старшей тетрады, отличной от нуля, и реали- "О зован аналогично узлу нормализации, использованному в арифметическом устройстве.
Перечень управляющих сигналов, 45 вырабатываемых дешифратором 49 управляющих сигналов для операции умножения и деления, приведен в табл. 4.
В графе наименование сигнала используются следующие сокращения: 50 (П)БУ вЂ” входы полусумм (переносов) промежуточного результата в блок 37 умножения, РДК вЂ” регистр 105, РДК вЂ” регистр 106, Ч1-3(Ч2-3) — первая (вторая) сос— тавляющая частного третьей ступени блока 38 деления, !
РДШ вЂ” регистр 133, ДШВ1-ДШВ8 — результат дешифрации соответствующих групп множителя, С- СВ(С- СВП) — перенос в младший разряд сумматоравычитателя (сумматора-вычитателя порядков) .
Сигнал Наименование сигнала
1278837
Сигнал
Сигнал
1PS- =БУ$
83.2
83. 3 1Р$: =БД$
83. 4
83.5
83. 6
С- СВ
96. 1
83.7
КС:=1РМ
КС:=2PM
83.8
96,2
2PS: =1PS
84. 1
97. 1
ДКС:=ЗРМ
2Р$:=1РЛ1
2Р$:=1РП4
2Р$:=ВРП1
2Р$:=ВРЛ29
84.2
97.2
84.3
98. 1
98.2
84,5
98,3
98.4
1РП:=СД
85.1
98.5
1РП:=БУР
85.2
98.6
1РП:=БДП
2РП:=1РП
2РП:=1РПЛ2
85.3
35 98 ° 7
86. 1
98. 8
86.2
2РП:=1РПЧ2
86.3
86.4
87. 1
87. 2
87.3
87.4
101 РНД:=СД
2БУ:=2PS
ПБУ:=2РПЛ1
2БУ:=2РБП14
11БУ:=2РП13
Продолжение табл. 4
1Р$: =СВ
1Р$:=СВЛ1
1Р$:=СВЛ2
1PS:=СВЛЗ
1Р$:=СВЛ4
2РП:=1РПЧЛ28
ВР:=ДР
ВР:=ДРЛЗ
ВР:=ДРП10
ВР:=ДРП14
1РЧ:=2РЧЛЗ
Продолжение табл. 4
Наименование сигнала
РДК: =1
РДК:=Ч1-3; РПК:=Ч2-3
СВ:=2Р$+2РП
СВ:=2PS-2РП
ДКС:=4РМ
РДШ: = ДШВ1
РДШ: =ДШВ2
РДШ:=ДШВЗ
РДШ:=ДШВ4
РДШ:=ДШВ5
РДШ:=ДШВ6
РДШ:=ДШВ7
РДШ:=ДШВ8
99. 1 KM: =:1PM
99. 2 KM: =:ЗРМ l00 1 РПЧ:=СВЛ1
100.2 РПЧ:=СВЛ2
100.3 РПЧ:=СВЛЗ
100.4 РПЧ:=СВЛ4
Условия формирования некоторых управляющих сигналов для разных регистров совпадают, в силу чего они являются как бы одним управляющим сигналом. В табл. 5 приводится перечень управляющих сигналов, для которых условия формирования совпадают.
12
Таблица 5
77.1
79.1
81. 1
80. 1
82. 1
83. 1
85. 1
83. 2
85.2
83.3
85.3
84.4
86.3
84.5
86.4
87.2
83.5
100.1
83.6
100. 2
83.7
100 3
Таблица 6
Условие
IPS (О) Управляющие сигналы
Такт Полутакт
Условия
РПЧ О/3 РНД О/2 !
76.1,77.1, 79.1
81. 1
96. 2
72,74,75,78
83. 1; 101
Сигнал Назначение сигналов
76.1 Запись на регистры 6, 7, 13 и 15 значений первого и второго операндов
Запись на регистры 14 и 16 младшей части мантиссы расширенной разрядности
Запись на регистры 21 и 25 нормализованной мантиссы со сдвигателя
Запись на регистры 21 и 25 промежуточного результата итераций умножения
Запись на регистры 21 и 25 промежуточного результата итераций деления
Запись на регистры 22 и 26 двух составляющих частного в 24 также ДД для формирования полного частного
Запись на регистры 22 и 26 двух составляющих частного в 24 такте ДЕ для формирования полного частного
Запись на регистры 29 и 32 двух составляющих частного
Запись частного на регистры
21 и 35 с учетом нормализации делителя до одного бита
Нормализованная мантисса со сдвигателя 36 на регистры 21 и 25 по
78837 16 управляющим сигналам 83.1 и 85.1 всегда записывается с учетом операции умножения с расширенной разрядностью. При других операциях на регистр 25 со сдвигателя 36 поступают нули. Управляющие сигналы 83.8 и
100.4 используются также для нормализации произведения на одну шестнадцатиричную цифру, если это необходи10 мо, при записи на регистр 21 а значение регистра 35 при этом не имеет значения.
Каждый нечетный выход дешифратора
53 полутактов формирует управление
15 входными коммутаторами регистров, которые срабатывают в начале такта.
Каждый четный выход этого дешифрато ра формирует управление входными коммутаторами регистров, которые сраба20 тывают в конце такта. Сигналы управления сумматором-вычитателем 12 порядков (73-75), блоком умножения 37 (89, 90) блоком 38 деления (91, 92), коммутатором 42 (98.1-98.8) вырабатываются во второй половине такта (управляются четным выходом дешифратора 53 полутактов). Сигналы управления сумматором-вычитателегл 39 (93-95) коммутатором 40 (96.1-96.2), коммуЗО татором 41 (97.1-97.2) и коммутатором 43 множимого (99.1, 99.2) должны сохраняться в течение такта (управляются сборкой нечетного и четного выходов дешифратора 53 полутактов соответствующего такта). Регистры
1, 2, 6, 7, 13-16, 22, 26, 31 и 33 срабатывают в начале такта. Регистры 3, 8, 21, 25, 29, 32, 35, 46, 47, 105, 106 и 124 срабатывают в
40 конце такта.
Пример дешифрации управляющих сигналов для команды деления (ДД) представлен в табл. 6, где символ Х означает безразличное состояние разрядов регистра 47 нормализации делителя.
18
1278837
Продолжение табл.б
Управляющие сигналы
Условие
IPS (О) Условия
Так т
Полутакт
РПЧ О/3 РНД О/2
96. 1
74,75,78,83.3;85.3
87.2;88.92
84.2,86.2
4-22
83.3, 85.3,87.2
88)92
84. 1;86. 1
23 45
83,4
76.2;77.3
84.4;86.3
94 95 0
94 1
24 47
83. 5
100. 1
94 95 0
83.6
100.2 73,78
01Х
00 i
83.7
100.3
83.8
100.4
000
76,2
84,1
84.3
73, 78
75
83. 4
Пример дешифрации управляющих ширенной разрядностью (p+Q) предсигналов для команды умножения с рас-55 ставлен в табл. 7.
7,9...
41,43
8, 10...42, 44
РПЧ О /3=0
РПЧ О/3 0
РПЧ О/3=0
РПЧ а/З о
1ХХ
01Х
001
000
81.2
81.3 76.2;77.2
81.4
81. 5
73,78,83.1,91
76.2;77.2,84,1
1278837
Таблица 7
) 1
Такт Полутакт
Управляющие сигналы
76.1; 77.1; 79.1; 81.1
72; 73; 78
80.1, 82.1
96.2; 97.2
83. 1; 85. 1
76. 2, 77. 2, 81. 2; 82. 2 96. 1, 97. 1
74, 75; 78, 83.1; 85.1, 98.5
76.2, 77.2; 79.2, 80.2
74, 75, 78, 83.2, 85.2;98.6
84.1, 86.1
99. 2
9,11
33,35
10,12
34,36
5-18
33,35
83.2; 85.2
87.1 (9,11,13,15 такты)
87.4 (5,8,10,12,14,16/18 такты)
89 (9, 11, 13, 15 такты90 (5,8,10,12,14,16/18 такты)
98. 1 (8, 15 такты), 98.2 (10, 16 такты)
98.3 (12,17 такты); 98.4 (14,18 такты)
98.5 (7 такт); 98.6 (9 такт)
98.7 (5, 11 такты), 98.8 (6,13 такты) 93;100.1
76.2, 77.3, 84.1; 86.1
74,75,78,83.2; 85.2, 87.4, 90
76.2, 84.1; 86.1 93
19
39
СГ1 I/4=0
СГ1 I/4 0
83.6, 87.3
75, 83.4; 87.4
74,78
76.2, 77.4; 84.4
74; 75, 78, 83. 4
21
42 ции по управляющим сигналам, поступающим на входные коммутаторы этиХ регистров. Все остальные регистры автоматически сбрасываются при отсутствии управляющих сигналов на их коммутаторах. На регистрах без входных коммутаторов в каждом такте производится запись информации, поступающей на их вход.
Третий регистр 3 знака, третий регистр 8 порядков, регистр 48 нормализации делителя, первый, второй, третий и четвертый регистры 13-16 мантисс, первый регистр 21 полусумм, вспомогательный регистр 29 и первый регистр 32 частного находятся в режиме хранения до тех пор, пока на них не произведена запись новой информа99. 1 (8,10,12, 14, 16/18 такты)
99.2 (5, ?,9,11, 13,15 такты) 21
В системе команд ЕС ЗЬМ разрядность двойного машинного слогза ранна
64 разрядам (О/63). При этом (О) разряд является знаком, разряды 1/7 порядком, а разряды 8/63 — мантиссой, При коротком формате мантисса содержит 24 разряда 8/31. Регистры 13-16 мантисс, коммутатор 40, коммутатор
41 содержит 56 разрядов О/55, регистры 21 и 22 полусумм, регистры 25 и
26 нереносон, блок 37 умножения, а также сумматор-гычитатель 39 — 71 разряд О/70, регистры 32 и 33 частного;,вспомогательный регистр 29 и дополнительный регистр 31 — 60 разрядон О/59, коммутатор 43 множимого и блок 38 деления — 57 разрядов О/56, сдвигатель 36 — 112 разрядов О/111, регистр 35 переполнения -- четыре разряда О/3, регистр 46 нормализации — 5 разрядон Î,/4, ре.-.истр 48 нормализации делителя — трп разряда
О/2, регистры 6 и 8 порядко.з, .сумггатОр нг гчпта1 ель 1 2 и ОрлдкО!з — ден =ITь раз ря; <0B 0/8 . Нр11 1ем pGG p IJJh 0/ 1 Нс пользуются для определен-ля переполненил порлдкон. регистр 7 порядков имеет семь разрядов 0/6.
В алгоритмах гзыполиения операций разрядность не указывается н случае передачгл гпгформации между блоками и регистрами по всем разрядам. При указании разрядности регистров, пеукаGGIi1IbIp. раз13лды 3 аllолняю 1 ся нулями °
При выполнении операции короткого формата (МЕ,ДЕ) разряды 32/63 первого и второго операндов равны нулю.
J(opoTêHé результат операции ДЕ принимается по 32 разрядам О/31. При выполнении Операции 11E GHG lашаЯ ч гсть мантиссьг равна 47 разрядам, младшая часть мантиссы лри этом получается автоматически ранггой нулю. Вычитание на сумматоре-вычитателе 39 и сумматоре-нычитателе 12 порядков произнодитсл в дополнительных кодах. .Передача информации с второго регистра 26 переносов на сумматор 39 осуществляетсл со сдвигом влево на один разряд. Информация регистра 7 ггорядкон поступает в младшие разряды сумматора 12 порядков (2/8), при этом на входы старших разрядов сумматора порядков поступают нули. Слу.чаи преждевременного окончания olieраций, а также выработка кодов прерываний не рассматриваются, так как осуществляются аналогично известному устройству.
78837 22
При 1зыпо:тлении Операций деления (ДЕ, ДД) (фиг. 7 ll 8) н первом такте осуществляется прием исходных операндов, нормализация,д елителя, вычитание порядков, а также формирование зггака результата. При этом на регистры 1, 2, 6., 7, 13 и 15 производится запись исходных данных. Сдвигатель
36 осуществляет сдвиг делителя влево на количестно 16-ричных цифр, определяемое узлом 45 нормализации. Сумматор-нычитатель 12 порядков произгодит нычи.ганне регистра 7 из регистра б. В конце такта на регистр 3 записываетсл =-начение элемента 4 ИСКJTJOEJAJOiJJEE ИЛИ. На зегистр 8 — значение сумматора-вычитателя 12 порядков, а на регистр 21 — значен Ie нормализованного делителя. 11а регистре 46 но1змализации Фпксз-;ръ <- тся код колглчpстгзG тpтpадllых сдниl" ОВ !<Ормализа
1, "7 цгпг <г< n!.ITO нл G !IG реl иc тре 7 нормализ а ции делит елл — з на=гение трех .старших разрядон сднигателл 36 для
25 определения условий нормализации делителя до одного бита.
Во втором также осуществляется нормализация делимого, сложение с порядком промежуточного результата количестгза тетрадных сдззигОн нормализации делителя, а также нормализация делителя цо одногo Сита IIG колигество битовых сдвигов. При этом на регистр 15 записьлзается делитель, 35 находлшийсл на p<.l-ècòpå 21 с оцнонре<1PH11oHl GI 0 Iopl
50 нормализованного делителя.
На регистре 46 нормализации фиксируется значение количества тетрадных сдвигов (КТС) .
В третьем. Такте осуществляется . 5 первая итерация деления и вычитание из порядка промежуточного результата КТС нормализации делимого. При этом на регистр 22 записывается нормализованное делимое с регистра 21.
24
23
1278837
Регистру 6 присваивается значение регистра 8, а регистру 7 — значение регистра 46. Сумматор-вычитатель 12 порядков производит вычитание регистра 7 из регистра 6. В конце такта на регистр 8 записывается значение сумматора-вычитателя 12 порядков, на регистры 21 и 25 — остаток в виде двух составляющих. Значение первых трех разрядов частного в виде двух 10 составляющих помещается в младшие разряды регистров 29 и 32 при передаче на них информации с регистров
31 и 33 со сдвигом влево на три разряда. 15
В 4-12 тактах для ДЕ и 4-22 тактах для ДД осуществляются итерации деления. При этом в начале итераций остаток переписывается с регистров
21 и ?5 на регистры 22 и 26 соответ- 20 ственно со сдвигом влево на 1 и 2 разряда, а формирующееся частное с регистров 29 и 32 — на регистры 31 и 33. Конец итераций осуществляется аналогично 3 такту, за исключением записи на третий регистр 8 порядков.
В 13 такте для ДЕ и 23 такте для
ДД осуществляется получение полного остатка. При этом остаток в виде двух составляющих переписывается с 30 регистров 21 и 25 на регистры 22 и
26, сумматор-вычитатель 39 осуществляет.!. сложение значений регистров 22 и 26 и значение полного остатка записывается в конец такта на регистр 21. 35
В 14 такте для ДЕ и 24 такте для
ДЦ производится формирование полного частного и прибавление к порядку промежуточного результата +64. Так как 40 частное в случае отрицательного остатка (значение нулевого разряда регистра 21 равно единице) получается с избытком на единицу, осуществляется его коррекция на -1. Ввиду того, 45 что при двоичной нормализации дели— теля делимое не корректируется, частное сдвигается влево на количество разрядов, на которое сдвигался делитель при двоичной нормализации. При 50 этом для операции ДЕ частное в виде двух составляющих поступает с регистров 29 и 32 на регистры 22 и
26 со сдвигом влево соответственно на 29 и 28 разрядов, а для операции
ДЦ вЂ” со сдвигом вправо соответственно на один и два разряда. Сдвиг второй составляющей частного по отношению к первой на один разряд вправо связан с передачей информации регистра 26 на сумматор со сдвигом на один разряд влево. Регистру 6 присваивается значение регистра 8, а на регистр 7 записывается константа 64.
Коррекция частного на -1 осуществляется в случае отрицательного остатка в сумматоре-вычитателе 39 при вычитании из первой составляющей второй составляющей частного в дополнительном коде отсутствием подачи единицы дополнительного кода в виде переноса на вход сумматора-вычитателя по управляющему сигналу 75. Сумматор-вычитатель 12 порядков производит сложение регистров 6 и 7. В конце такта на регистр 8 записывается значение сумматора порядков. Сдвиг частного на количество разрядов, на которое сдвигается делитель при двоичной нормализации (КБС), осуществляется записью информации с сумматора-вычитателя 39 на регистры 35 и 21 со сдвигом влево. Сдвиг на один лишний разряд влево связан с тем, что старший разряд частного является знаковым и его надо исключить иэ знаковой части мантиссы. B случае возможного переполнения (знак частного равен единице) он является старшим значащим разрядом и в следующем такте в случае переполнения частного при его денормализации он попадает на место старшего значащего разряда с частного.
В 15 такте для ДЕ и 25 такте для
ДД в случае возникновения переполнения производится денормализация частного вправо на одну 16-ричную цифру с соответствующим прибавлением к порядку промежуточного результата единицы. При этом частное с регистра 21 помещается на регистр 22 без сдвига при отсутствии переполнения, а в случае переполнения частное с регистров
35 и 21 помещается в регистр 22 со сдвигом вправо на 4 разряда. Коррекция порядка осуществляется передачей информации с регистра 8 на регистр 6 обнулением регистра 6, суммированием регистров 6 и 7 с подачей единицы дополнительного кода в сумматоре-вычитателе 12 порядков по управляющему сигналу 95 и записью на регистр 8 значения сумматора-вычитателя 12 порядков. В случае отсутствия переполнения суммирование производится беэ единицы дополнительного кода по управляющему сигналу 93. Денормализо1278837
26 ванное частное поступает на регистр
21 с сумматора-вычитателя 39 посредством сложения регистров 22 к 26 на сумматоре-вычитателе 39„ так как регистр 26 обнуляется. 5
Для команд умножения (МЕ, 1Я, МХД) в первом такте осуществляется прием исходных операндов, нормализация множителя, сложение поряцков, (получение порядка промежуточного ре- >О зультата +64), а также формирование знака результата (фиг. 5 и 6). При этом последовательность выполняемых действий в устройстве аналогична первому такту операций деления. Исключе- t5 ние составляет сложение порядков вместо их вычитания при делении и отсутствие записи иа регкстр 47 нормализации делктеля.
Во втором такте осуществляется нормализация иножкмого и вычитание из порядка промежуточного результата количества тетрадных сдвигов нормализации множителя. Прк этом последовательность выполняемых действий в устройстве аналогична второму такту операций деления. Исключение составляет вычитание порядков вместо их сложения и передача с регистра 21 на регистр 15 без сдвига.
В третьем такте. осуществляется первая итерапия умножения и вычитание из поряцка промежуточного результата КТС иориализации множимого.При этом нормализованное множимое помещается иа регистр 13, действия с по- рядкамк аналогичны 2 такту умножения, а промежуточный результат умножения в виде двух составляющих поступает yg из блока 37 умноже на регистры 21 и 25.
В четвертом такте для команды МГ осуществляется последняя итерация умножения и вычитание — 64 кз поряцка промежуточного результата. Для команд
МД, МХД в 4-6 тактах осуществляются итерации уиножеиия, причем в 4 такте производится вычитание -64 из общего порядка. При этом действия с порядка- 5О ми в 4 такте аналогичны 14 такту операции деления для ДЕ, отличие состоит лишь в том, что сумматор-вычктатель
12 порядков выполняет функцию вычитания, 55
В начале каждой итерации умножения осуществляется перецача промежуточного результата в виде двух составляющих с регистров 21 и 25 на регкстры 2? и 26, а младшая часть произведения, формирующаяся на регистре 29,,поступает на регистр 31. На регистре
29 формирование младшей части произведения начинается в конце 4 такта, поэтому передача в начале 4 такта с регистра 29 на регистр 31 производится для сохранения стандартности итераций умножения. Итерации умножения заканчиваются записью промежуточного умножения в виде двух составляющих на регистры 21 и 25, а также фиксацией 14-ти разрядов младшей части произведения, получаемых на сумматоре-вычитателе .39, в старшие 14 разрядов регистра 29 с одновременной передачей информации с регистра 31 на регистр 29 со сдвигом вправо на 14 разрядов. Формирование младшей части произведения, попученной от предыдущей итерации умножения, необходимо для команды МХД, но для стандартности итераций умножения соответствующие передачи осуществляются в каждом такте.
В пятом такте для МЕ и седьмом такте. для РД, МХД на сумматоре-вычитателе 39 вычисляется старшая часть произведения с записью результата на регистр 21 со сдвигом влево на четыре разряда и с передачей информации с регистра 31 на регистр 29 со сдвигом вправо на 10 разрядов, если требуется нормализация с одновременной коррекцией порядка промежуточного результата на -1. На регистре 29 заканчивается формирование младшей части результата для команды МХД.
Корре