Арифметическое устройство

 

Изобретение относится к вычислительной технике и может быть использовано при построении быстродействующих процессоров . Цель изобретения - сокращение оборудования и повышение быстродействия. 5 Арифметическое устройство содержйт регистры первого и второго операндов 1 и 2, первый и второй регистры 4 и 5, основной сумматор 15. блок инверсии 16, регистр 20 основного сумматора, блок формирования кода нормализации 21, блок маски 23 , блок байтового суммирования 13. Для достижения цели дополнительно введены третий регистр 3, третий и четвертый коммутаторы 6 и 7, коммутатор кода 11, регистр межтетрадных персоналов 19, коммутатор 12 входов байтно-тетрадного сдвигателя, байтно-тетрадный с двигатель 16, регистр 22 байтнотетрадного сдвигателя. дополнительный сумматор 14, коммутаторы 8 и 9 первого и второго входов дополнительного сумматора , первый и второй дополнительные регистры 17 и 18. блок выработки сигналов запрета 24. 8 табл., 1 з.п. ф-льи 17 ил. 6

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

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

РЕСПУБЛИК (я)з G 06 F 7/52

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

llO ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР I >A4g

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

Ф

ЮВ

МФ

Ъ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

1 (21) 4890818/24 (22) 19.11.90 (46) 15.07.92. Бюл. М 26 (71) Научно-исследовательский институт электронных вычислительнйх машин (72) Л.Ф.Аскерко, В.М.Ленкова, И.Н.Летковская, И,И.Лиокумович, С.Г.Маймескул и

Е.С.Ремороеа (53) 681.325(088.8) . (56).Авторское свидетельство СССР

Я 687982, кл. G 06 F 7/50, 1982.

Модуль электронной обработки

Е 13,098.0QOTO. Техническое описание, (54) АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО (57) Изобретение относится к вычислительной технике и может быть использовано при построении быстродействующих процессоров. Цель изобретения — сокращение оборудования и повышение быстродействия.

25,, Ж„, 1748153 А1

Арифметическое устройство содержйт реги- .стры первого и второго операндов 1 и 2, первый и второй регистры 4 и 5, основной сумматор 15, блок инверсии 16; регистр 20 основного сумматора, блок формйрования . .кода нормализации 21, блок маски 23, блок байтового суммирования 13. Для достижения цели дополнительно введейы третий регистр 3, третий и четвертый коммутаторы 6 и 7, коммутатор кода 11, регистр межтетрадиых персоналов 19, коммутатор 12 входов байтно-тетрадного сдвигателя, байтно-тетрадный сдвигатель 16, регистр 22 байтнотетрадного сдвигателя, дрполнительный: сумматор 14, коммутаторы 8 и 9 nepaoro u второго входов дополнительного сумматора, первый и второй дополнйтельные регистры 17 и 18, блок выработки сигналов запрета 24. 8 табл., 1 з.п, ф-лы 17 ил.

1748153

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

Цель изобретения — повышение быстродействия и сокращение аппаратурных затрат.

На фиг. 1 изображена структурная схема.устройства; на фиг. 2 — структурная схема блока байтового сумматора; на фиг. 3— структурная схема блока масок; на фиг. 4функциональная схема блока выработки сигналов запрета; на фиг. 5 — блок-схема алгоритма вйполнения команд сложения/вычитания с фиксированной точкой; на фиг, 6 — блок-схема алгоритма выполнения команд сложения/вычитания с плавающей точкой RR u RX формата, короткие операн; ды; на фиг. 7 и 8 — блок-схема алгоритма выполнения команд сложения/вычитания с плавающей точкой RR и RX, длийные операнды; на фиг. 9 — блок-схема алгоритма выполнения команд сдвига вправо; на фйг.

10- блок-схема алгоритма выполнения команд сдвига влево; на фиг. 11 — блок-схема алгоритма выполнения команды "Умножение для чисел с фиксированной точкой"; на фиг. 12 и 13 — блок-схема алгоритма выполнения команды "Деление с фиксированной точкой"; на фиг. 14 и 15 — блок-схема алгоритма выполнения команды "Преобразова-. ние в десятичную"; на фиг. 16 и 17— блок-схема алгоритма выполнения команды

"Преобразование в двоичную".

При этом на блок-схемах приняты следующие обозначения:

Знак " - " обозначает передачу данных, например R2 — К7 - К11, т.е. информация из второго регистра передаетСя через коммутатор 7 и-далее через коммутатор 11;

R1 - ° (регистр (например Я2-второй регистр);

КН-й-коммутатор;

X1 f-й-сумматор

СДВ-сдвигатель;

ИНВ-блок инверсии;

ФКН-блок формирования кода нормализации;

Вх24, Вх25-первый и второй входы данных;

BblX — выход данных:П1, П2-старшие байты (порядок) входных данных с плавающей точкой;

БМ-блок маски;

О-код нуля на входах узлов;

6-код шестерки на входах узлов;

2RI — сдвиг регистра Rl на два разряда вл ево;

ЛП-локальная память

ЦД-цифра делителя;

ЦЧ-цифра частного;

ККД-регистр кода кратности делителя.

5 Структурная схема арифметического устройства (Ау) содержит регистр 1 первого операнда 1 (n/2)-разрядный). регистр 2 вто.рого операнда 2 (n/2)-разрядный, третий регистр 3 n/2-разрядный первый регистр 4

10 (и/2-разрядный), второй регистр 5 и/2-разрядный, третий коммутатор 6 (n/2 + 4}-разрядный, четвертый коммутатор 7 (и/2 +

4)-разрядный, первый коммутатор 8 (и/2 +

4)-разрядный, второй коммутатор 9 (n/2 +

15 4)-разрядный, блок инверсии 10 (n/2 + 4)разрядный, коммутатор 11 кода и/2-разрядный, коммутатор 12 входов байтно-тетрадного сдвигателя n/2-разрядный, блок 13 байтового суммирования, до20 полнительныЧг сумматор 14 (и/2 +

4)-разрядный, основной сумматор 15 (и/2 +

4)-разрядный, байтно-тетрадный сдвигатель 16 n/2-разрядный, первый дополнительный регистр 17 (n/2 + 4)-разрядный, 25 второй дополнительный регистр 18 (n/2 +

4)-разрядный, регистр 19 межтетрадных переносов, регистр 20 основного сумматора, блок 21 формирования коДа нормализации, регистр 22 байтно-тетрадного сдвигателя

30 n/2-разрядный 22; блок 23 маски, блок 24 выработки сигналов запрета, первый вход

25 данных устройства, второй вход 26 данных устройства, выход 27 данных устройства, входы 28 и 29 признаков границ начала

35 первого и второго операндов устройства. вход 30 кода сдвига устройства, вход 31 направления сдвига устройства.

Структурная схема блока байтового суммирования (фиг. 2) содержит коммутато40 ры 32 и 33 первого и второго входов блока, узел 34 байтовой обработки, узел 35 коммутации, выходной регистр 36. узел 37 управвения разрядными сдвигами, регистр 38 признака границы конца операнда, вход 39

45 кода нормализации, выход 40 кода сдвига. информационный выход 41 блока, выход 42 кода разрядного сдвига, выход 43 признака границы конца операнда. Блок маски (фиг.

3) содержит узел 44 формирования масок

50 качала, конца по счетчику, узел 45формиро-. вания маски сдвиговой, узел 46 коммутаЦии маски, регистр 47 маски. узел 48 управления синхровходами маскируемых регистров, вход 49 запретов занесения в регистры, вы55 ходы 50-52 сигналов разрешения занесения данных регистров третьего, первого и регистра байтно-тетрадного сдвигателя.

Функциональная схема блока выработки сигналов запрета (фиг. 4) содержит дешифратор 53 кода нормализации, 1748153 6 торы на элементах 1533КП12 и 530 КП2 со- 40 ответственно.

Коммутатор входов байтно-тетрадного блока байтового сумматора. Реализован на элементах 1533КП15.

Блок формирования кода нормализасдвигателя предназначен для передачи íà: ции предназначен для формирования:кода вход сдвигателя информации с выхода реги- " нормализации 32-разрядных чисел с плавастра первого операнда либо с выхода ком- 45 ющей точкой, а также чисел с. фиксированмутатора вторых входов основного ной точкой (положительных и сумматора. Управление коммутатором мик- отрицательных). Представляет собой комби-. ропрограммное, реализован на элементах национную схему. анализирующую слева

1533КП11.: направо информацию в тетрадах выходов

Первый и второй коммутаторы предназ- 50 основного сумматора на наличие в ней всех начены для передачи одного из своих вхо- нулей (положительные числа с фиксировандов на первый и второй вход сумматора нойточкойичисласплавающейточкой)или управляется микропрограммнойаппаратно всех едийиц (отрицательные числа с фиксипри выполнении команд сдвига. Микро:- рованной точкой). Выход комбинационной программное управление осуществляется 55 схемы запоминается под управлением микпри выполнении десятичной коррекции, об- . ропрограммы в регистре кода нормализаработке адресов операндов (на схеме цепи ции и может там храниться сколь угодно не показаны), выполнении команд деления долго. иумножения. Реализованыкоммутаторына Регистр кода нормализации имеет 5 разрядов, старший разряд определяет надешифратор 54 кода сдвига вправо,дешиф- элементах 1531КП15 и 530КП2 соответстратор 55 кода сдвига влево, первый элемент. венно для первого и второго входа.

И 56, элементы НЕ 57 и 58, второй и третий Все сумматоры (основной, дополниэлементы И 59 и 60, элементы ИЛИ 61 и 62, тельный и байтовый) предназначены для элемент2И-ЗИЛИ вЂ” НЕ 63, первый,третий и 5 арифметической и логической обработки второй триггеры 64 — 66, первый и второй дайных, реализованы на СИС 1531ИПЗ.Для информационные входы 67 и 68, первый, ускорения прохождения группового перевторой и третий выходы 69 — 71 блока (69, 70, носа используются СИС 1531ИП4.

71), первый и второй управляющие входы Блок инверсии выполнен на элементах

72-73 блока. 1 530М2(Исключающее ИЛИ).

Регистры первого и второго операндов, Управляющйй инверсный вход на фиг. 1 первый и третий регистры, регистр байтно- не показан; управление осуществляется в тетрадного сдвигателя предназначены для основном микропрограммно для реализахранения данных в течение любого числа цийфункции Б-А, отсутствующей в реализатактов и реализованы на элементах ТМ8 се- 15 ции СИС АЛУ. Аппаратное управление рий, удовлетворяющих требованиям по на - производится при делении; под управленигрузочной способности и времени задержки ем кода кратности и знака остатка, а также (530, 1531). Управление занесенйем в peiin= при сложении/вычитании коротких операнстры микропрограммное, ., дов формата в эавйсимости от знака операнРегистр основного сумматора, первый и 20 да, .второй дополнительные регистры, второй " Коммутатор кода предназначен для регистр, регистр межтетрадных перенОсов формирования кода коррекции в тетрадах хранят данные, поступающие на их вход в - придесятичнойобработкелибоформироватечение одного такта обработки, и исполь- . ния кода "Bce нули " при делении, зуются в основном (кроме регистра йерейо- 25 Реализован коммутатор кода на эпеменco8) для устранения гонок, Регистр тах 53ОКП14, При отсутствии микропрогмежтетрадных переносов используется дпя -раммного указания, что выполняется формирования кода коррекции.: - .:.. десятичная обработка, коммутатор передаРегистр основного сумматора реализо- ; ет без изменения выход"коммутатора втован на элемейтах 133ТМ7, первый и второй 30 рых входов основйого сумматора, при дополнительные регистры — на элементах десятичной обработке коммутатор передает

530ТМ8 и 1533КП13 (мультиплексор с запо- в старшем и младшем разряде каждой тетминанием) соответственно, второй регистр рады логичвский нуль, а в двух остальных и регистр межтетрадных переносов — на разрядах I-й тетрады состояние (-го разряда

1533ТИ8. Третий и четвертый коммутаторы 35 регистра межтетрадных переносов. предназначены для выбора и передачи од- : :: Байтно-тетрадный сдвигатель предназного из четырех входов (выбор источника начей дпя выполнения циклического сдвига определяется микропрограммно, связи на вйраво данных, на m байт в одну тетраду фиг. 1 не показаны). Реализованы коммута- (m= О,. 1, 2, 3). Код сдвиг поступает с выхода

1748153 правление сдвигов (О-правый, 1-левый), младшие 4 разряда определяют количество сдвигов, при левом сдвиге количество сдвигов представлено в дополнительном коде.

Младшие 3 разряда кода нормализации управляют формированием маски, а через блок байтового сумматора-с двигателем, По состоянию старших двух разрядов блок выработки сигналов запрета формирует сигналы запрета в регистры первый и третий, регистр байтно- тетрадного сдвигателя для формирования результата сдвига, Код нормализации длинного операнда формируется в два прйема (такта).

Таблица истинности схемы для формирования кода нормализации в каждом такте работы приводится в табл. 1.

Состояние тетрад обозначено следующим образом:

0 — в тетраде все нули для положительного или все единицы для отрицательного числа:

1 — в тетраде содержатся нули и единицы;

Х-состояние тетрады безразлично, Блок байтового сумматора (фиг. 2) предназначен для формирования характеристики результата, формирования кода сдвига для выравнивания характеристик (положительная разность характеристик кода сдвига), для выравнивания операндов по границам их размещения в слове данных (разность кодов на входах признаков границ начала первого и второго операндов, формирование дополнительных кодов параметра байтно-тетрадного сдвига в командах сдвига влево(из байта данных, равных нулю вычитается код байтно-тетрадных сдвигов) и разрядного сдвига вправо, формирует признак границы операнда.

Выбор данных„подлежащих обработке, осуществляют коммутатором первого и второго входов 32 и 33. Управление коммутаторами микропрограммное. Узел байтовой обработки 34 выполняет функцию сложения или вычитания (задаваемую микропрограммно) над операндами с выходов коммутаторов 32 и 33, Узел коммутации 35 блока байтового сумматора готовит код сдвига (выход 40) для управления байтно-тетрадным сдвигателем (коммутация кода нормализации с входа 39 или кода сдвига с выхода узла байтовой обработки), а узел управления разрядными сдвигами путем передачи с входа кода сдвига 31 на выход 42 прямого кода при левых сдвигах или дополнительного — при правых, Регистр 37 запоминает признак границы конца операнда, сформированный вуале байтовой обработки 34, Первые и вторые информационные входы коммутатора первого входа 32 узла байтовой обработки соединены соответственно со старшим байтом первого входа 25 дан5 ных устройства и входом 28 признака границы начала первого операнда, Третий информационный вход коммутатора 32 соединен с первым информационным входом узла коммутации 35 и подключен к входу 39

10 кода нормализации. Первый и второй информационные входы коммутатора 33 второго входа узла байтовой обработки соответственно соединены со старшим байтом второго входа 26 данных устройства и

15 со входом 29 признака границы начала второго операнда, Третий информационный вход коммутатора 33 соединен с информационным входом узла 38 управления разрядными сдвигами и подключен к входу 31

20 кода, Выходы коммутаторов 32 и 33 соединены соответственно с первыми и вторыми информационными входами узла 34 байтовой обработки, выход которого соединяется

25 с вторым информационным входом узла 35 коммутации и с информационным входом регистра 37 признака границы конца операнда, выход которого соединен с выходом

43 признака границы конца операнда блока.

30 Выход узла 35 коммутации соединен с информационным входом выходного регистра

36 блока и с выхода 40 кода сдвига блока.

Выход регистра 36 соединен с третьим информационным входом узла коммутации и с

35 информационным выходом 41 блока, Управляющий вход узла 38 управления разрядными сдвигами подключен ко входу 30 кода направления сдвигов, а его выход соединен с выходом 42 кода разрядного сдвига блока.

40 Блок маски (фиг, 3) предназначен для формирования маски, управляющей занесением информации в регистры: первый, третий и байтно-тетрадного сдвигателя (управление узлами блока микропрограмм45 ное не показано). Узел управления синхровходами маскируемых регистров 48 дополнительно имеет аппаратный управляющий вход 49. Сигналы для указанного управляющего входа вырабатывает блок

50 выработки сигналов запрета 24, Узел формирования масок качала, конца по счетчику 44 вырабатывает коды масок, используя входные данные, содержащие код признака границы начала первого one55 ранда 28 и код признака границы конца операнда 43, По коду признака границы начала первого операнда формируются маски начала и по счетчику.. 1748153

10

20

30

40

50

Формирование маски начала производится для выделения байт, не принадлежащих обрабатываемому операнду в начальном слове операнда и зависит от направления обработки и вида данных-десятичные и недесятичные. Микропрограммно устанавливаются признаки направления обработки ТНО и десятичных данных ТДО (не показаны), Направление обработки операнда слева направо определяется состоянием ТНО = 1, а справа налево ТНО = О.

Признак десятичных данных определяет состояние признака ТДО = 1, а ТДО - 0— признак недесятичных данных. Таблица истинности для формирования маски начала в зависимости от кода на входе и состояния управляющих сигналов (THO, ТДО) приведена в табл, 2. Маска по счетчику используется для выделения отдельного байта из слова данных. Формирование маски по счетчику производится в соответствии с табл. 3.

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

По коду признака границы конца oneранда, поступающему из блока байтового сумматора формируется маска конца, которая выделяет байты, не принадлежащие обрабатываемому конечному слову операнда, и зависит от направления обработки. Конечную границу операнда вычисляет блок байтового сумматора путем сложения кода границы начала операнда и кода длины оперэндэ. Соответствие кода маски конца условиям формирования приведено в табл. 4.

Реализация узла 44 — комбинационная схема, срабатывающая в соответствии с табл. 2 — 4. Узел 44 имеет два выхода: первый выход содержит либо код маски начала, либо код маски по счетчику в зависимости от микропрограммного указания, второй код маски конца. Оба выхода соединены соответственно с первым и вторым входами узла коммутации маски 46, третий вход которого подключен к выходу узла формирования маски сдвиговой 45.

Узел формирования маски сдвиговой 45 формирует код маски в зависимости от поступающего на вход кода сдвига 40 из блока байтового сумматора 13. Код сдвига байтовый сумматор формирует при выполнении любых операций сдвига (комэнда сдвига, нормализация; выравнивание порядков, выравнивание границ операндов), Формирование маски сдвиговой также зэвисит от направления обработки и от вида данных — десятичные недесятичные.

Соответствие кода маски сдвиговой условиям ее формирования приведено в табл.

На выходе узла 45 устанавливается код маски сдвиговой при условии, если не было микропрограммного указания на формирование маски по счетчику. Реализация узла— комбинационная схема. работающая в соответствии с табл. 5.

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

На конечном такте обработки узел коммутации 46 собирает по ИЛИ коды масок сдвиговой и конца, а код результирующей маски передает нэ выход. В текущих тактах обработки узел коммутации 46 передает на свой выход код маски сдвиговой. 8-разрядный код результирующей маски с выхода узла коммутации 46 поступает на вход регистра маски 47, который в каждом такте обработки производит запоминание сформированного предыдущими узлами кода.

Выход регистра маски 47 соединен с информационным входом узла управления синхровходами мэскируемых регистров 48 (первого, третьего, байтно-тетрадного сдвигателя).

Управление работой этого узла производится микропрогрэммно (входы не показаны) и аппаратно из блока выработки сигналов запрета, причем на управляющий вход 49 узла поступают сигналы управления выработкой синхросигналов для регистров из блока выработки сигналов запрета 24.

Узел упрвления синхровходами первого, третьего и байтно-тетрадного регистров

48 вырабатывает сигналы разрешения занесения данных отдельно для каждой тетрады каждого регистра.

Разрешение занесения в регистры может вырабатываться в двух режимах: с учетом маски и без учета маски. Задание режима производится микропрогрэммно для всех регистров, а для первого и третьего регистров блок 24 также в некоторых случаях аппаратно переключает узел в режим учета маски. Блок 24 может также запретить организацию сигналов разрешения занесения в. регистры, выработав сигналы запрета.

1748153

В режиме учетна маски при отсутствии сигналов запрета от блока 24 узел управления синхровходами вырабатывает сигнал разрешения занесения в тетраду, если соответствующий этой тетраде разряд маски равен нулю, Если же разряд маски равен единице, то занесение в эту тетраду запрещается, Выбор регистра или регистров, занесение в которые маскируется, осуществляется микроп рограммно, В режиме без учета маски состояние разрядов маски не анализируется и разрешение на занесение данных вырабатывается микропрограммно для всех тетрад определенного регистра (регистров) для приема данных, При наличии сигналов запрета занесения, поступающих из блока 24, состояние разрядов маски не анализируется и запрещается выработка сигналов занесения данных для всех тетрад, отменяя микропрограммные указания.

Первый, второй и третий выходы узла 48 поступают соответственно на первый 50, второй 51 и третий 52 выходы блока маски, Реализация блока маски из-за простоты алгоритма не приводится, так как содержит простые дешифраторы кода сдвига и сборки по ИЛИ их выходов для организации трех выходных сигналов.

Блок выработки сигналов запрета (фиг.

4) вырабатывает сигналы запрета приема в маскируемые регистры. (во все тетрады) и сигналы установки режима маскируемого приема, если микропрограммно такой прием не указан, в следующих случаях: запрет занесения в регистр байтно-тетрадного сдвигателя вырабатывается при сдвиге влево, сли параметр сдвига больше восьми тетрад, и при сдвиге вправо, если параметр сдвига равен или больше восьми тетрад; запрет занесения в третий или первый регистры вырабатывается независимо от, направления сдвига при параметре сдвига, большем, чем восемь тетрад.

Аппаратный сигнал установки режима маскированного занесения вырабатывается при сдвиге влево, если параметр сдвига больше восьми тетрад, и при сдвиге вправо, если параметр сдвига больше восьми, но меньше шестнадцати тетрад, Дешифратор 55 кода признака нормализации предназначен для выработки нормализации влево более, чем на восемь тетрад. Указателем этого признака является

4-й разряд 5-разрядного кода нормализации, вырабатываемого блоком 21 в соответствии с табл. 1 и обозначенного цифрами

3 — 7 (3-старший разряд), который поступает на первый информационный вход 67 блока.

Выработка признака нормализации влево более, чем на восемь тетрад разрешается, если на выходе элемента И 56, подключен5 ного к управляющему входу дешифратора

55 кода нормализации 55, устанавливается высокий уровень.

Высокий уровень на выходе элемента И

56 устанавливается, если входы элемента

10 имеют высокий уровень, функциональное назначение входов элемента И 56 следую- . щее. Первый вход указывает, что нормализация производится влево, так как имеются случаи нормализации вправо, Признаком

15 нормализации влево является единичное состояние разряда 3 кода нормализации (табл. 1), поступающего на первый информационный вход 67 блока. Второй вход эле-. мента, подключенный к первому

20 управляющему входу 72, блока микропрограммно определяет, что источником сдвига является код нормализации (высокий уровень на входе 72 блока), Низкий уровень на первом управляющем входе 72 микропрог25 раммно указывает, что источником сдвига является четвертый выход блока байтового сумматора, подключенный к второму информационному входу 68 блока, Поэтому инвертор 57 преобразует низкий уровень

30 первого управляющего входа 72 блока, готовя через первые входы элементов И 59 и 60 сигнал разрешения для срабатывания дешифраторов 54 и 55, Вторые входы упомянутых элементов И соединены с признаком

35 направления сдвигов, поступающим вместе с кодом сдвига по второму информационному входу 68 блока. Признаком направления сдвига является старший (нулевой) разряд восьмиразрядного (Π— 7) кода сдвига на вхо40 де 68.

Единичное состояние определяет сдвиг влево, нулевое — сдвиг вправо. Высокий уровень на выходе элемента И 59 разрешает по управляющему входу дешифрацию разря45 дов 1-4 кода сдвига вправо, поступающих на информационный вход дешифратора 54, а на выходе элемента И 60 — дешифрацию разрядов 1-7 кода сдвига влево, поступающих яа информационный вход дешифрато50 ра 55, Дешифратор 54 вырабатывает на первом, втором и третьем своем выходе следующие признаки сдвига вправо соответственно на число тетрад, равное или больвее тридцати двум, равное или большее восьми, 55 большее шестнадцати. Дешифратор 55 вырабатывает соответственно на первом и втором своем выходе признаки сдвига вле во на число тетрад; 1) более. восьми, 2) равное или более шестнадцати.

13

1748153

Элементы ИЛИ 61, 62 и 63 собирают работки на 100 нс по сравнению с прототипризнаки, выработанные дешифраторами пом, что позволило увеличить быстродейст53-55 в соответствии с алгоритмом форми- вие устройства при обработке коротких, рования результата сдвига(табл. 6),для фор- длинных и расширенных операндов. мирования на своих выходахдвухсигналов 5 Информация в предлагаемом АУ образапрета занесения в регистры: байтно-тет- . батывается следующим образом. радного сдвигателя — на элементе 61, и в Первый операнд из местной или основпервый, третий регистры — на элементе 63 и ной памяти принимается в регистр 1, второй сигнала аппаратной установки режима мас- операнд — е регистр 2. кированного занесения данных в первый, 10 Для выполнения сложения/вычитания, третий регистры — на элементе 62. Сигнал сравнения поразрядных логических операзапрета занесения на выходе элемента 63 ций И, ИЛИ, Исключающее ИЛИ операнды вырабатывается при условии, что на втором подаются на коммутаторы 6 и 7. На коммууправляющем входе 73 блока существует таторе 6 возможен прием информации из микропрограммно определяемый высокий 15 первого 4 или третьего 3 регистра, а также уровень, указывающий на то, что микро- возможна передача информации из регистпрограмма разрешает занесение данных с ра 1 первого операнда со сдвигом на один выхода байтно-тетрадного регистра в пер- разряд влево. На коммутаторе 7 возможен вый или третий регистры, Сформированные прием информации из регистра 2 второго элементами ИЛИ сигналы запоминаются в 20 операнда, первого 4, третьего регистров 3 и триггерах 64 — 66 для формирования сигнала из регистра 18 дополнительного сумматора в необходимый интервал времени(синхров- 14. С выходом коммутатора 6 информация ходы на фиг. 4 не показаны), Выходы триг- поступает на блок инверсии 10. который в геров 64 — 66 соединены с выходами 69-71 зависимости от состояния сигнала управлеблока соответственно, Таким образом, на 25 ния передают на первый информационный выходе 69 блок вырабатывает сигнал запре- вход основного сумматора 15 прямой или та занесения в регистр байтно-тетрадного обратный код, тем самым разрешая произсдвигателя, на выходе 71 — сигнал запрета водить вычитание данных. второго входа из занесения в первый, третий регистры при . данных первого входа, либо наоборот из приеме данных из регистра байтно-тетрад- 30 данных второго входа вычитать данные перного сдвигателя, на выходе 70 — сигнал ус- вого входа сумматора 15. С входа коммутатановки режима маскированного приема тора 7 информация поступает на данных в первый, третий регистры. коммутатор кода 11, который передает либо

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

Поскольку регистр дополнительной цифры и Код десятичной коррекции в тетрадах его связи на фиг, 1 не показаны, то и форми- формируется в соответствии с состояниями рование сигнала управления занесением разрядов регистра 19 переносов, данных в него блоком 24 не показано, тем Если разряд регистра 19 переносов раболее, что формирование сигнала запрета 40 вен единице, то в соответствующей ему тетзанесения данных в регистр дополнитель- раде на вход коммутатора 11 кода ной цифры аналогично формированию за- передается код "6 ". Если же разряд регистпрета занесения в другие регистры и не ра переносов равен нулю, то в соответствупредставляют трудностей при выполнении ющей ему тетраде на выход коммутатора алгоритма, приведенного в табл. 6. Запрет 45 кода передается код "0". занесения вырабатывается только при вы- При необходимости регистр 19 межтетполнении сдвигов вправо при обработке ко- радных переносов обнуляется и коммутатор ротких операндов, если параметр сдвига кода 11 передает на выход код нулей во всех больше восьми тетрад и при обработке тетрадах. длинных операндов: если параметр сдвига 50 Информация с выхода коммутатора 11 больше восьми, то во втором такте обработ- кода поступает на второй вход основного ки, и в обоих тактах, если параметр сдвига сумматора 15. Основной сумматор 15 выбольше16. Признак второготактаобработ- полняет восемь арифметических и восемь ки длинных операндов определяется микро- логических функций. Причем две арифметипрограммно. 55 ческие функции выполняются, если на перАУ позволяет выполнить полный набор вый вход основного сумматора поступает команд ЕС 3ВМ, включая операции над чис- инверсное значение числа. Если обозначить лами длинного и расширенного формата. первый вход сумматора А, второй — Б, входБлагодаря уменьшению каскадности уст- ной перенос- р, то выполняемые основным ройства сокращена длительность такта об1748153 сумматором функции можно представить следующи 4 обре. и м . арифметические функции -А+ р, А+ р, А+Б+р, F+р,А+Б+р,А+Б+р,А+F+р, А + А + р; логические функции; - О, А +) Б, А.Б,Б, -(А+) Б), А,A/Á. где знаком + обозначено арифметическое сложение, инверсное значение данных, F-шестнадцатиричный код F во всех тетрадах данных, 0-нулевое значение выхода независимо от значений на входах, + — исключающее ИЛИ, — коньюнкция,/ — дизьюн кция.

Результат обработки информации на сумматоре 15 заносится в регистр 20. Занесение производится в каждом такте обработки. В каждом такте обработки производится формирование кода нормализации в блоке 21, который при необходимости, определяемой микропрограммным управлением, заносится в регистр кода нормализации блока 21. В каждом такте обработки также производится занесение эйачения межтетрадных переносов в регистр 19, Информация с выхода регистра основного сумматора 20 может быть принята в регистры 1-4, Прием информации в регистры 1, 2 и 4 производится без сдвига, а в регистр 3 прием может происходить как беэ сдвига, так и со сдвигом на четыре разряда вправо или два разряда влево, В регистр 4 ранее принятая информация может быть сдвинута на четыре разряда вправо или два разряда влево. Для устранения гонок при сдвигах информации используется регистр

5, как промежуточный регистр, хранящий содержимое регистра 4 от середины текущего такта до середины следующего такта.

При соче.,ании приема иэ регистра 20 в регистр 3 со сдвигом и сдвига на столько же разрядов содержимого регистра оба регистра 3 и 4 работают как единый 64-разрядный регистр, т.е. выдвигаемые разряды иэ одного регистра заносятся в другой, Прием информации в регистр 3 или 4 из регистра 20 может быть замаскирован потетрадно. Условия маскирования и код мас ки вырабатывает блок маски 23 на основе информации, поступающей на вход блока 23 из блока 13 или с входа признака границы начала первого операнда 27, или с выхода блока формирования кода нормализации

21. Блок маски 23 вырабатывает сигналы разрешения занесения в тетрады регистров

3,4 и 22.

Для выполнения разрядных сдвигов (сдвига на 1, 2, 3 разряда) в предлагаемом

AY информация иэ регистра 1 поступает на входы коммутатора 8, передающего информацию со сдвигом влево Hà 3.и 2 разряда и

16 коммутатора 9, передающего содержимое регистра 1 без сдвига или со сдвигом влево на 1 разряд. Для выполнения разрядных сдвигов вправо блок байтового сумматора

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

10 передаются через дополнительный сумматор 14 и запоминаются сначала .в регистре

17, а затем йереписываются в регистр 18, Для передачи выдвинутых разрядов разрядность коммутаторов 8 и 9, дополнительного

15 сумматора 14, регистров 17 и 18 расширена на одну тетраду со стороны старших разрядов. Сумматор 14 выполняет арифметическую функцию сложения и вычитания. поэтому для передачи одного из входов на

20 выход сумматора 8 имеет входную шину "0", а коммутатор 9 — шину "К", По шине "О" подается логический нуль во все разряды, по шине "К" -4-разрядная константа в каждую нечетную тетраду, четные тетрады нуZ5 левые.

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

30 При выполнении операции сдвига влево выдвинутые разряды сравниваются со знаковым разрядом для организации признака переполнения, При выполнении операции сдвига впра35 во выдвинутые разряды являются значащими. Поэтому содержимое регистра 18 через коммутаторы 7 и 11, сумматор 15 передается в регистр 20. Коммутатор 7, сумматор 15, регистр 20 также имеют расширение раэ40 рядной сетки на четыре разряда, содержимое регистра 20 передается в регистр 3 со сдвигом вправо на четыре разряда,.при этом выдвину гые на разрядную сетку разряды размещаются в пределах разрядной сетки, 45 формируя тем самым результат сдвига вправо;

Аппарат реализации разрядных сдвигов совместйо с дополнительным сумматором

14, выполняющим арифметические функции

50 сложения и вычитания, используется для формирования чисел, кратных числу, хранящемуся в регистре 1, Возможно формирование 16-кратных от нулевого значения до

15-кратного.

55 Так как дополнительный сумматор 14 со своими входными коммутаторами 8 и 9 и выходными регистрами 17 и 18 соединен последовательно с основным сумматором, ; но операции на нем могут производиться независимо и параллельно основным, то

1748153

18 подготовка кратных может быть выполнена в конвейерном режиме и одновременно с работой основного сумматора 14. Кратные используются при выполнении команд умножения, деления и переводов в двоичную 5 систему счисления, На дополнительном сумматоре 15 выполняется первая десятичная коррекция.

Код коррекции (код 0110 в каждой тетраде) поступает с входа устройства "610 на вход 10 коммутатора 8, код числа из регистра 1 — на коммутатор 9. Сумматор 14 в этом случае выполняет арифметическое сложение, Для выполнения байтных и тетрадных сдвигов информация может быть. подана че- 15 рез коммутатор 12 либо из регистра 1, либо с выхода коммутатора 7, передающего на свой выход содержимое регистров 2, 3, 4 и

18, Байтно-тетрадный сдвигатель 16 осуществляет циклический сдвиг вправо. Блок 13 20 вырабатывает 8-разрядный код сдвига, младшие 3 разряда которого управляют сдвигателем 16.

Блок байтового сумматора 13 организует код сдвига в следующих случаях. 25

Для команд сдвига вправо 6-разрядный код сдвига с входа кода сдвига преобразуется следующим образом: четыре старших разряда кода сдвига через коммутаторы входов и байтовый сумматор транслируется нэ вход байтового сумматора без изменения. С выхода байтового сумматора 4 старших разряда кода сдвига поступают на схему аппаратного управления маскированием для выработки (при наличии соответствующих условий) сигналов запрета занесения в маскируемые регистры и сигнала установки режима разрешения маскирования, 3 младшие разряда выхода байтового сумматора поступают на коммутатор параметра сдвига для формирования сигналов управления байтно-тетрадным сдвигателем и на выход блока байтового сумматора для передачи кода сдвига в блок маски

Два младших разряда кода сдвига преобразуются комбинационной схемой в дополнительный код, на базе которого вырабатываются сигналы управления коммутаторами 7 и 8 для выполнения сдвигов на О, 1, 2, 3 разряда.

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

Два младших разряда участвуют в формировании сигналов управления коммутаторами 7 и 8 беэ преобразования.

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

Для нормализации три младших разряда пятиразрядного кода нормализации передаются через коммутатор параметра сдвигз для управления байтно-тетрадным сдвигателем, Два старших разряда кода нормализации поступают на схему аппаратного управления маскированием.

Для выравнивания границ операндов на выходе байтового сумматора . образуется разность кодов с входов признаков границ начала первого и второго операндов, которая участвует в управлении аналогично сдвигу вправо. Разность кодов организуется так, что младший разряд равен О.

Результат байтно-тетрадного сдвига формируется в регистрах 22 и 3 (короткие операнды, один такт обработки) либо в регистрах 22,3 и 22,4 (длинные операнды, два такта обработки). Для расширенных операндов сдвиг производится за четыре такта обработки и формируется в регистрах 22,3 и

22,4 два раза аналогично сдвигу длинных операндов.

При выполнении арифметических сдвигов вправо в регистрах 3 и/или 4 предварительно формируется код знака операнда при помощи занесения в регистрах 3 и 4 через регистр 20 выхода сумматора 15, который может формировать либо нули, либо единицы во всех разрядах. При выполнении сдвигов влево (арифметических и логических) а, также логических сдвигов вправо регистры 3 и 4 предварительно обнуляются, Формированием результатов бэйтнотетрадных сдвигов в регистрах 22 и 3,22 и4 управляет блок маски 23. Блок 23 вырабатывает сигналы разрешения занесения информации для каждой из тетрад регистров

22,3,4. Сигналы разрешения занесения формируются в соответствии с кодом сдвига, вырабатываемым блоком 13 или кодом нормализации, сформированным блоком 21, или кодом на входе 27 признака нэчэлэ первого операнда границы и сигналов аппаратного управления маскированием, поступающих из блока 4 выработки сигналов запрета. В соответствии с кодом сдвига блок маски формирует 8-разрядную результирующую маску, каждый разряд которой управляет занесением в одну тетраду. Далее разряды маски при наличии микропрограммного указания маскировать занесение образуют сигналы разрешения занесения в те тетради, разряды маски для которых равны нулю. Для тетрад, разряды маски кото1748153

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

Алгоритм управления маскированием приведен в табл, 6.

Регистр 3 является регистром АУ, откуда производится запись информации в местную или оперативную память по выходу 26.

Запись результата производится в следующем такте нэ фоне работы АУ при обработке следующих байт информации, Сложение/вычитание чисел с фиксированной точкой выполняется в АУ следующим образом.

Блок-схема алгоритма команд сложения/вычитания RX формата для коротких операндов представлена на фиг. 5.

Операнды (первый, второй) из памяти поступают в регистры 1 и 2 соответственно.

Прием очередных операндов производится в конце такта обработки на фоне обработки ранее считанных операндов.

В такте обработки операнды из регистров 1 и 2 через коммутаторы 6, 7 и 11 и блок

10 поступают на входы основного сумматора 15. При выполнении функции вычитания первого операнда из второго блок 10 выполняет инверсию информации первого операнда, В остальных случаях при выполнении команд сложения/вычитания информация на входах сумматора 15 не преобразуется. Единичный входной перенос формируется при выполнении функции вычитания, нулевой функции сложения, Функция сложения или вычитания определяется по правилам алгебры, учитывая знаки операндов и код команды. Например, если выполняется команда сложения, а, знаки операндов разные, то сумматор 15 выполняет функцию вычитания, и наоборот, в команде вычитания, если знаки операндов разные, то выполняется на сумматоре 15 функция сложения, Результат суммирования-вычитания с выхода сумматора 15 поступает в регистр 20 и запоминается в нем, Регистр 20 используется как промежуточный регистр для устранения гонок при обновлении содержимого регистров 1 и 2 в конце такта обработки.

Содержимое регистра 20 в конце такта передается в регистр 3. Из регистра 3 в следующем такте выполняется запись результата в память.

В предлагаемом АУ команда сложения/вычитания RX формата для коротких

15

45 отрицательным знаком, Результат сложения-вычитания запоминается в регистре 3 (короткие операнды) или в регистрах 3 и 4

35 операндов выполняется за один такт (300 нс), в прототипе — 2 такта (2 х 400 нс).

При выполнении команд сложения/вычитания с плавающей точкой, .блок-схемы которых представлены на фиг, 6 (короткие операнды) и фиг. 7 (длинные операнды), в первом такте блок 13 готовит управление сдвигателем 16 и коммутатором 12 для выполнения выравнивания порядков, Для этой цели в блоке 13 производится запоминание характеристик в регистрах и вычитание порядков. Положительная разность порядков передается на шину управления сдвигателем 16. Знак разности порядков первого и второго операндов (П1 — П2) поступает на управляющий вход коммутатора 12 (не показан) и определяет мантиссу большего числа, Старшие байты обоих операндов обнуляются, В следующем такте мантисса большего числа через коммутатор 12 поступает на сдвигатель 16, который производит сдвиг на величину разности порядков. При этом последняя выдвинутая эа пределы разрядной сетки тетрада запоминается в регистре дополнительной цифры {He показано). Результат сдвига запоминается в регистрах 3 (первый такт обработки) и 4 (второй такт обработки).

Далее производится сложение/вычитание мантисс на основном сумматоре 15, При этом один из операндов находится в регистре 3 или регистрах 3 и 4.

Другой операнд находится в регистре 1 или 2, Знак разности порядков, равный нулю, указывает, что второй операнд находится в регистре 2, а равный единице — что первый операнд находится в регистре 1.

Функция, выполняемая сумматором,. определяется по правилам алгебры, учитывая . знаки операндов и функцию, заданную в команде. Управляет функцией микрокоманда. Результат вычитания может быть получен в дополнительном коде с (длинные операнды).

Независимо от того, в каком коде получен результат, на выходе сумматора 15 срабатывает блок 21 и запоминает код нормализации (табл. 7). Для длинных операндов операция сложения/вычитания и формирования кода нормализации производится за два такта, блок-схема выполнения этих команд представлена на фиг. 7. По коду нормализации в следующем такте производится нормализация результата на сдвигателе 16. Для этой цели сод.-;ржимое регистра 3 (короткие операнды) или 4 (длин21

1748153 ные операнды) через коммутаторы 7 и 12 передается на информационный вход сдвигателя. На управляющие входы поступают 3 младших разряда кода нормализации от маски 23, который в такте нормализации вырабатывает сигналы разрешения занесе10 ния в тетрады регистров 22,3,4 в соответствии с табл. 7 и 6. Самый старший разряд кода нормализации определяет направлеwe нормализации (вправо, влево). Вправо возможна либо нормализация на 1 тетраду, либо нормализация отсутствует, В этом случае старший разряд кода нормализации нулевой, а младшие 4 разряда содержат прямой код сдвига. Если же результат имеет один или несколько нулей в старших тетра20 дах мантиссы; то выполняется нормализация влево. В этом случае старший разряд нормализации единичный, а младшие 4 разряда содержат дополнительный код количества нулевых тетрад. При выполнении

25 нормализации влево к последней значащей цифре в процессе сдвига подключается дополнительная тетрада, запомненная в регистре дополнительной цифры (цепи на фиг. 1 не показаны). Если результат вычитания

30 мантисс имеет положительный знак, то дополнительная цифра подключается в прямом коде, При отрицательном знаке результата вычитания мантисс дополнительная цифра подключается в дополнительном коде

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

П ри этом старшая.тетрада нормализуемого числа поступает в регистр дополнительной цифры, Если мантисса результата является отрицательным числом, представленным в до45 полнительном коде, то производится ее преобразование путем вычитания ее из единицы. Преобразование младшего слова может производиться одновременно со вторым тактом.

При занесении результата нормализа- 50 ции или результата преобразования мантиссы в регистр 3 производится занесение характеристики результата в старший байт (цепи не показаны), Порядок результата вы55 числяется в блоке 13 одновременно с выполнением нормализации путем сложения порядка результата с кодом нормализации, представленным отрицательным числом при нормализации влево и положительным при нормализации вправо. Знак сумкоммутатора параметра сдвига блока байто- 5 вого сумматора 13, которые также поступают на первый информационный вход блока мы/разности вычисляется по правилам алгебры и заносится в старший разряд регистра 3 одновременно с занесением порядка, Запись результата сложения/вычитания производится из регистра 3, Выполнение команды АЕ (сложение коротких операндов с плавающей точкой) в предлагаемом АУ производится за 5 тактов (5 х 300 нс), в прототипе — 6,5 тактов (6,5 х

400 нс). Для команды А (длинные операнды) соотношение следующее: 9 х 300 нс в предлагаемом же АУ и 8,5 х 400 нс в прототипе.

Команда "Сдвиг вправо", блок-схема которой представлена на фиг. 9, в предлагаемом АУ выполняется следующим образом.

К началу обработки в регистре 1 находится операнд, который необходимо сдвинуть, а число разрядов (параметр сдвига). на которое должен быть выполнен сдвиг на входе блока 13.

Параметр сдвига разбивается в блоке

13 на 2 части; два младших разряда — код разрядных сдвигов, 4 старших — код байтных и тетрадных сдвигов, Код разрядных сдвигов преобразуется узлом 38 в дополнительный код и передает на выход 42 блока

13 для управления коммутаторами 8 и 9.

Код байтных и тетрадных сдвигов передается через коммутатор 33, где дополняется до 8-разрядного кода путем добавления в четырех старших разрядах нулей, далее передается беэ изменений через узел 34 байтовой обработки, коммутатор 35 в регистр 36, Три м1адших разряда с выхода коммутатора 35 поступают на управляющий вход сдвигателя 16 и на вход 40 блока маски

23. Восьмиразрядный код с выхода регистра 36 поступает на вход блока 24 для выработки сигналов запрета. -Блок маски 23 формирует код сдвиговой маски, передавая ее в качестве управляющей через узел 45 на вход узла 46. Узел 48 вырабатывает сигналы разрешения занесения в регистры 22, 3 и 4, которые управляют формированием результата циклического сдвига информации на сдвигателе 16. Информация для сдвига поступает на информационный вход сдвигателя 16 с выхода регистра l через коммутатор

12, . Выполнение команды "Сдвиг влево", блок-схема которой приводится на фиг. 10, производится в следующем порядке.

Сначала выполняются разрядные сдвиги, затем байтно-тетрадные. Выполнение разрядных сдвигов. влево отличается от разрядных сдвигов вправо тем, что код разрядных сдвигов в блоке 13 не преобразуется в дополнительный код и не выполняется сдвиг на 4 разряда вправо при пересылке результата разрядных сдвигов из регистра

1748 1 53

18 в регистры 3,4 через осНоВН0А сумматор.

15. Выдвинутые за разрядную сетку разряды проверяются на наличие переполнения, если выполняется арифметический сдвиг влево, а затей разряды теряются. Вдвигае- 5 мые разряды формируютея аналогичным образом как и при сдвиге вправо.

Полученный результат разрядных сдвигов из регистра 18 поступает через коммута- . торы 7 и 12 на вход сдвигателя 16, Для 10 управления сдвигателем блок 13 преобразует код байтно-тетрадных сдвигов в дополнительный и выдает его в блок маски 23 и на управляющие входы сдвигателя 16, Формировайие результата байтно-тетрадного 15 сдвига производится в соответствии с табл.

6 (сдвиг влево), Сдвиг влево длинных операндов начинается с младшего слова и выполняется за

2 такта. 20

Для реализации команды "Сдвиг влево" . в предлагаемом АУ требуется для коротких операндов 4,9 х 300 нс (в прототипе 5,8 х 400 нс), для длинных операндов — 6,9 х 300 нс (в прототипе 4,5 х 400 нс). 25

В командах умножения, блок-схема которых представлена на фиг, 11, в предлагаемом АУ используются коммутаторы 8 и 9, дополнительный сумматор 14, регистры 17 и 18 для формирования кратных множителя, 30, Кратные на упомянутом оборудовании готовятся за 1 такт до формирования очередного. частичного произведения на сумматоре 15, т,е. организована конвейерная работа на параллельно работающих сумматорах 14 и 35

15;

В исходном состоянии множимое размещается в регистре 1, мноЖитель — в регистре 4. Ч астичн ые и роизведенйя накапливаются в регистрах 3 и 4, Причем.в 40 регистре 4 частичное произведение постепенно вытесняет цифры множителя.

Умножение в предлагаемом АУ, производится младшими разрядами вперед одновременно на четыре . разряда. 45

Предварительно по первой цйфре"множителя формируется кратное в блоках 8, 9. 14 и

17 и запоминается в регистре 18. Множитель сдвигается на четыре разряда. В следующем такте производится суммирование 50 (вычитание) полученного кратного и предыдущего частичного произведения. Полученное новое частичное произведение. заносится в регистр 3 со сдвигом на четыре разряда вправо. Одновременно с получени-. 55 ем нового частичного произведения на сумматоре 15 в блоке 8, 9, 14 и 17 йроизводится формировайие нового кратного в соответствии с кодом следующей цифры мйожителя..

Процесс формирования. частичных произведений и кратных повторяется до исчерпания всех цифр множителя. Конвейерная организация итераций умножения позволила в 2 раза уменьшить время выполнения команд умножения по сравнению с прототипом.

Кратные формируются блоками 8, 9, 14, 17 и 18 s соответствии с табл. 7, где МНЕ— множимое, МНЛ вЂ” множитель.

Сформированные на выходе сумматора

14-кратные в соответствии с табл. 7 запоминаются в регистре 17, а в конце такта переписываются в регистр 18 для использовэния их в следующем такте.

В следующем такте кратное через коммутаторы 7 и 11 поступает на второй вход сумматора 15. На первый вход сумматора 15 из регистра 3 (в первой итерации содержимое его равно О) через коммутатор 6 и на блок инверсии поступает частичное произведение. Если нет переноса единиц в следующую цифру множителя, частичное произведение в кратное суммируются; если есть перенос, вычитается кратное из частичного произведения, э к следующей цифре множителя добавляется единица, Одновременно с этим блоки 8, 9, 14 и 17 готовят новое кратное по следующей цифре множителя. Сформированное новое частичное произведение запоминается в регистре

20, а затем передается со сдвигом вправо нэ четыре разряда в регистре 3, а содержимое регистра 4 сдвигается также на четыре разряда вправо. При этом выдвигаемая часть с выхода регистра 20 заносится в старшую тетраду регистра 4, Процесс формирования частичных произведений продолжается до исчерпания счетчика итерации (не показан). После этого при умножении операндов с фиксированной точкой следует запись результата из .регистра 3.

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

: цифре множителя.

Для формирования кода нормализации первый. операнд передается через коммутатор 6, блок инверсии 10 и сумматор 15 на вход блока кода нормализации 21 либо второй операнд из регистра 2 передается через коммутаторы 7 и 11, сумматор 15 на выход блока формирования кода нормализации

21, который срабатывает в соответствии с

1748153

26

5

20

35

40 делитель

55 табл. 2. Сформированный код нормализации (5 разрядов) запоминается в регистре блока 21 и поступает в блоки 23 и 13. В блоке

13 три младших разряда кода нормализации транслируются на шины управления сдвигателем 16 и в блок маски 23. Блок 23 вырабатывает сигналы разрешения занесения в тетрады регистров 22, 3 и 4 с учетом запретов из блока 24. Сдвигатель 16 выполняя нормализацию„срабатывает аналогичным образом как и йри нормализации результата сложения чисел с плавающей точкой за тем исключением, что регистр дополнительной цифры в этом случае нулевой (не показан). Регистр дополнительной цифры обнуляется в начале выполнения каждой команды. Результат сдвига формируется в регистрах 22, 3 и 4 аналогично, как и при выполнении сдвигов влево.

Одновременно с выполнением нормализации операндов производится коррекция промежуточной характеристики результата в блоке 13. (Промежуточная характеристика результата предварительно сформирована в блоке 13 одновременно с формированием кода нормализации в блоке

21 на выходе сумматора 15).

По окончании выполнения итерации умножения полученная мантисса результата в регистрах 3 и 4 и/или 4 в зависимости от требуемой длины результата (короткий результат, длинный результат) подвергается остаточной нормализации путем сдвига мантиссы результата на число старших нулевых тетрад мантиссы. Для этого в блоке формирования кода нормализации 21 формируется код числа старших нулевых тетрад, по которому далее производится формирование результата сдвига под управлением блока маски 23 и сдвиг нз сдвигателе 16. Одновременно с выполнением нормализации в блоке 13 формируется характеристика произведения, которая при записи результата нормализации в регистр

3 заносится в старший байт мантиссы произведения, Затем следует запись результата иэ регистра 3 в память.

В АУ применяется метод деления без восстановления остатка с предсказанием 2разрядной цифры частичного эа один такт обработки.

Блок-схема команды "Давление" с фиксированной точкой представлена на фиг.

12-13. . Перед началом выполнения деления с фиксирован ной точкой и роиз водится шест-. надцатиричная нормализация делителя, а затем делимого по коду нормализации делителя, Для формирования кода нормализации делитель из регистра 1 через. коммутатОр 6, блок инверсии 10, сумматор

15 поступает на вход блока 21, который формирует 5-разрядный код нормализации для операндов с фиксированной точкой, В соответствии с кодом нормализации делитель из регистра 1 нормализуется на сдвигателе 16 под управлением трех младших разрядов кода, кода нормализации и формирует результат нормализации в регистре 3 под управлением блока маски 23.

Нормализованный делитель из регистра 3 записывается в локальную память, а в это время делимое из регистра 2 нормализуется на сдвигателе 16 по коду нормализации делителя. Результат нормализации делимого формируется в регистре 3 (короткое делимое) или в регистрах 3 и 4 (длинное делимое). Одновременно с нормализацией делимого врегистр 1 возвращается нормализованный делитель из локальной памяти.

При выполнении деления с плавающей точкой перед выполнением итераций деления производится независимая нормализация делителя и делимого, причем коды нормализации их формируются так как и для чисел с фиксированной точкой, т.е, значащие части мантисс подвигаются к старшей тетраде разрядной сетки. Счет итераций деления выполняется счетчиком (не показан). Для выполнения итераций деления коммутаторы 8 и 9, сумматор 14 готовит в регистре 18 трехкратное делителя из регистра 1, т.е. коммутатор 8 передает на свой выход учетверенное значение делителя из регистра 1, коммутатор 9 — делитель, сумматор 14 вычитает из учетверенного делитель, результат посылается в регистр 17, затем 18. Таким образом, в каждом такте итераций регистр 18 содержит утроенный

Двухкратный делитель организуется на коммутаторе 6 путем передачи регистра 1 со сдвигом на один разряд влево (на чертеже не показан). Перед началом итераций нормализованное делимое из регистра 3 передается через коммутаторы 7 и 11 на сумматор 15, Выходы сумматора поступают на.схему предсказания кода кратности делителя (не показана), Схема предсказания анализирует усеченное значение (4 старших разряда) делимого и формирует код кратности. Далее в итерации повторяют следующие действия: по предскззанному в предыдущем такте коду кратности выбирается кратное делителя О, 1, 2 или З-кратное.

Причем 1 и 2-кратные передаются через коммутатор 6 из регистра 1,3-кратное через коммутатор 7, из регистра 18, нулевое значение кратного формируется на коммутаторе 11. Делимое (первая итерация) или

1748153

27 остаток (все последующие итерации) пере дэются иэ регистрэ 3 на другой вход сумма тора 15; при предсказанном однодвухкрэтном — через коммутаторы 7 и 11, предскэзанном нулевом или трехкрэтном через коммутатор 6, блок инверсии 10. Сум матор 15 путем вычитания (сложения) из де лимого (или сдвинутого на два разряд влево предыдущего остатка) выбран ног кратного вычисляет очередной остаток.

Для реализации"вычйтания одного ил двухкратного делителя из остатка блока ин версии 10 производит инверсию выход коммутатора 6, для сумматора 15 формир ется единичный входной перенос (цепи у рэвления на чертеже не показаны), По знаку полученного остатка оп редел ется функция, которая выполняется в след ющей итерации, а по усеченному значени (4 старших разряда) остатка предаказывэе ся новый код кратности делителя, По знэ, остатка определяется точность предсказ ния кода кратности и корректируется цифр частного (2 разряда), Затем полученный о таток заносится в регистр 3 со сдвигом вл во на два рээрядэ, а регистре 4 для длинны операндов сдвигается на два рэзряда влев сдвигая в свои старшие два разряда выдв нутые в регистре 3 разряды, Одновременно регистр 2 сдвигается н двэ разряда влево, в младшие два рэзря которого ээносится скорректировэнна цифра частного.

Окончание циклов деления производи ся по исчерпанию счетчика циклов (на че теже не показан). Сформированное части иэ регистра 2 пересылается в регистр 3 ч рез коммутаторы 7 и 11, суммэтор 15, р гистр 20 и записывается в пэмят

Одновременно с пересылкой частного пр изводится запись остатка (если требуется) локальную память.

Команда "D" в предлагаемом AY выпо няется зэ 28 х 300 нс тактов против 38 х 4 нс в прототипе, а команда "DE" — за 20 х 3 нс тактов против 35 х 400 нс прототипа.

Операция перевода в двоичную систе счисления двоично-десятичной информ ции, блок-схема которой представлена фиг. 14 и 15, осуществляется в предлэга мом АУ посредством последовательного в полнения в двоичном коде алгебрэическ действий, onределяемых формулой; таторэх 8 и 9, сумматора 14 и передачей сформированного значения через регистры и 17, 18, коммутаторы 7 и 11 на вход сумматоа ра 15 для выполнения итераций суммировав ния с очередной цифрой десятичного числа.

К началу итераций в регистре 1 размещается первая значащая цифра чисел. Для того, чтоа бы разместить первую значащую цифру в о регистре 1, операнд из регистра 2, считанный из локальной памяти, передается через и 10 коммутаторы 7 и 11, сумматор 15 на входы формирования кода нормализации 21. По а коду нормализации числа с фиксированной у- точкой иэ регистра 2 через коммутаторы 7 и и- 12 нормализуется на сдвигателе 16, а результат нормализации формируется в рея- гистре 4 под управлением блока маски 23 . у- Блок 13 параллельно с нормэлиэацией опею рэнда готовит код сдвига нэ 7 тетрэд (код т- 0111), В следующем такте содержимое регику 20 стра 4 через коммутаторы 7 и 12 сдвигэется э- нэ сдвига еле 16 нэ 7 тетрэд вправо, э реа зультэт сдвига формируется в регистре 3. с- После чего содержимое регистра 3 через е- коммутаторы 6, группу управляемых инверх 25 торов 10, сумматор 15, регистр 20 пересылао, ется в регистр 1, и- . В цикле итерации регистр 1 накапливает результаты суммирования удесятеренноэ го значения регистра 1 и следующей цифры да 30 операнда. я В цикле итераций производятся следующие действия. т- Число из регистра 1 удесятеряется на р- коммутаторах 8 и 9 и сумматоре 14, зэпомиое 35 нается в регистрах 17 и 18, В 3ТО же время е- число иэ регистра 4 через коммутаторы 7 и е- 12 поступает нэ сдвигатель 16, сдвигается ь,. на 7 тетрад вправо, выдвинутая тетрада зэо- поминается в регистре 3 (по маске), а рев 40 зультэт сдвига без изменений заносится в регистр 4 (без маски). л- . Содержимое регистра 1 передэется в, 00 регистр 3 для записи s локальную память, 00 Проверка нэ наличие переполнения произ45 водится в каждом такте удесятерения анаму логично проверке переполнения при э- разрядных сдвигэх эа исключением того, на что сравнение производится всегда с нулее- вым состоянием знака операнда (цепи оргэы- 50 низации переполнения нэ чертеже не их показаны), Оперэция перевода в десятичную систему счисления из двоичной, блок-схема которой представлена на фиг, 16, 17, 55 осуществляется с помощью последовательного выполнения алгебраических действий, определяемых формулой . где э — десятичная цифра в двоичном позиционном коде. Умножение на "10" заменяется формированием удесятеренного значения содержимого регистра 1 на коммуА = ад 10 + а э10 э+ ... ao10

2(2 ...2(2ао 2 +а1) + а2 ) + ээ ) ", + аэ1), 1748153

-30

I

Над содержимым регистра 1 выполняетгде а — двоичное значение (ОИЛИ 1) раэря- ся первая десятичная коррекция: в каждой дов переводимого числа, тетраде содержимого регистра 1 прибавляВычисление двоичного значения произ- ется код 0110. водится путем выполнения последователь- Для этой цели коммутатор 8 с шины

5 ных итераций. В каждой итерации "6to" передаетнасвойвыходкодкоррекции, удвоенный частичный результат (e первой а коммутатор 9 — информаЦию из регистра итерации — это удвоенная самая старшая 1. Сумматор 14 выполняет сложение, а редвоичная цифра) десятично складывается с зультат сложения запоминается в регистре очередной двоичной цифрой. Десятичное 17. Одновременно с этим содержимое регисложение выполняется с помощью десяти- . стра 18(сдвинутое число) пересылается чечной коррекции, которая выполняется в два рез коммутаторы 7 и 11, сумматор 15 в этапа. Сначала к удвоенному значению про- регистр 20; В конце такта содержимое регимежуточного результата к каждой тетраде 15 стра.t7 переписмывается в регистр 18. а производится добавление кода 0110. Затем регистра 20 в регистр 1. после суммирования удвоенного значения Число из регистра 1 сдвигается на один промежуточного результата и очередной разряд влево аналогичным образом как и на двоичной цифры переводимого числа про- подготовительном этапе и запоминается в изводится вторая коррекция, заключающая- регистре 1, выдвинутый разряд запоминается в вычислении кода 0110 в трех тетрадах, ся в младшем разряде расширения регистра из которых не было переноса при выполне- 20, В зто же время содержимое регистра 18 нии суммирования. . (скорректированный частичный результат)

Перед началом итераций выполняется через коммутаторы 7 и 12, сдвйгатель 16, подготовительный этап для выделения са- 2 регистр20 передается врегистр3(кодсдвимой старшей двоичной цифры переводимо- га в узле 13 заранее устанавливается нуле25 го числа. - . — вым), В конце такта в регистр 2 из местной..

Для этой цели переводимОе число, нахо- памяти принимается предыдущий частич- дящееся в регистре 1, передается в регйстр ный результат(на первой итерации- нескор3 через коммутатор 6 со сдвигом влево на ректированная первая выделенная цифра). один разряд, сумматор 15, регистр 20 и сно- Сумматор 15 выполняет суммирование ва записывается в регистр 1. Сумматор 15 . содержимого регистров 3 и 2 и запомненной выполняет функцию трансляции первого выдвинутой очередной двоичной цифры входа на выход. Выдвинутый разряд запо- (входной перенос), Результат суммирования: минается в младшем разряде расширения запоминается в регистре 3, а состояние разряднойсеткирегистра20, В следующем межтетрадных переносов, возникшее при такте запоминаний выдвинутый разряд ис- .. суммировании — в регистре 19. пользуется в качестве входного переноса. Выполняется вторичная десятичная

Чтобы сформировать число, содержащее коррекция. Для этой цели коммутатор кода первую двоичную цифру (выдвинутый раз- „11 формирует код коррекции в соответствии ряд) регистр 4 обнуляется и передается на со следующим алгорйтмом: каждый разряд вход. сумматора 15 через коммутатор 6. Су- регистра 19 формирует в соответствующей матор 15 выполняет функцию сложения ин- ему тетраде код коррекции. Если разряд раформации, поступающей на первый вход с вен 1, то формируется нулевой код корреквыходов группы управляемых инверторов (в 4 ции, если же он равен нулю. то формируется данном случае нули) и входного переноса. код 0110.

Результат сложения через регистр 20 Вторичная коррекция выполняется пузаносится в регистр 3. Затем первый выде- тем вычитания на сумматоре15 кода коррекленный разряд переводимого числа эапоми- ции из содержимого регистра 3. Результат нается в местной памяти. Одновременно с " записйвается врегистр20. . этим содержимое регистра 1 пересылается Одновременно с выполнением вториччерез коммутатор 9, сумматор 14 в регистр ной коррекции сдвинутое число из регистра

17, а содержимое регистра 3 через коммута- 1 без изменений пересылается в регистр 17 тор 6, блок инверсии 10; сумматор 15 в ре- через коммутатор 9(коммутатор 8 передает гистр 20. В конце такта регистр 17 . на свой выход нулис шины "0") и сумматор переписывается в регистр 18, а регистр 20 в 55 14. Последний выполняет функцию сложерегистр 1. На этом подготовительный этап ния. Результат коррекции в конце такта заперевода в десятичную систему заканчива- поминаетСя в регистрах 1 и 3. а сдвинутое ется. Каждая итерация перевода включает. число иэ регистра 17 — в регистре 18. Далее следующие действия..следует запись содержимого регистра 3 в . локальную память на фоне выполнения сле31

1748153 дующего такта итерации. Итерации перевода повторяются до исчерпания счетчика циклов (не показан).

В десятичной арифметике операнды могут иметь длину от 1 до 16, а при логической обработке до 256 байт.

Каждая цифра представлена в двоичнодесятичном коде и имеет значение от нуля до 9. Знак "+" имеет код 1100, знак "-" — код

1101, зона 1111, В основной памяти (ОП) операнды десятичной арифметики располагаются произвольным образом относительно границ слова, Обработке подлежат операнды,. считанные из ОП в регистры операндов 1, 2 длиною в одно слово, Предлагаемое АУ обрабатывает . десятйчную информацию пословно. Поэтому исходя из изложенного, необходимо иМеть" аппарат для обеспечения корректных действий над операндами, а именно: аппарат исключения из обработки байт информации, не принадлежащих данному операнду, если границы операнда находятся не на границе слова;

Фйпэрат выравнивэнйя границ операндов

{сдвиг байтный), т,е. сдвиг операндов таким образом, чтобы операнды располагались одинаково относительно границ слова, 3апись результата обработки производится по адресу первого операнда, поэтому выравниваются границы второго операнда.

Исключение из обработки байт информации обеспечивает аппарат маскирования, т.е, вырабатываются маСкй начала и маски конца, которые при формировании результата обработкй Запрвфают изменение байт "чужого" операнда. Сдвигатель 16 позволяет выравнять границы операндов, а управляет "сдвигателем в этом случае код разнбсти двух младших разрядбв адресов операндов, поступающих с входов 28 и 29 (Моды признаков начала гранйцй операндов в блок байтового сумматора 13). Блок 13 по разности кодов на входах 28 и 29,формирует код управления сдвигателем 16 на соответствующее количество байт.

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

Начальный (конечный) этап характеризуется тем, что из обработки исключаются байты, не относящиеся к данному операнду по маске начала (конца). Маска начала формируется по коду на входе 28 в соответствии с табл. 5, Код начальной маски зависйт от направления обработки, on ределяемого микропрограммно установленным признаком

ТНО (на схеме не показан). При ТНО = 1 обработка начинается справа налево (с младших байт), при ТНО = 0 со старших байт (слева направо), Разрешение на формирование маски начала определяет микропрограммно устанавливаемый признак первого цикла(ТПЦ) на схеме не показан. Единичное значение разряда маски определяет запрет приема в маскируемый регистр, нулевое— разрешение..

На начальном этапе обработки выполняются следующие действия:

1, Установка ТПц в единицу, 2. Считывание из ОП первого и второго операндов в регистры 1 и 2 соответственно;

3, Модификация адреса второго операнда на + 4(сумматор14-цепи не показаны).

4. Подготовка управления сдвигателем (блок 13), 5. Модификация счетчика длины на чис20 ло, равное количеству байт; обрабатываемых в начальном цикле (блок 13, входы не показаны), 6, Передача в предварительно обнуленный регистр 3 первого операнда из регистра

25 1 по маске начала, т,е. прием байт принадлежащих операнду, 7. Подготовка второго операнда в регистре 4 зависит от знака разности кодов на входах 28 и 29, Для разности (код 28 — код

30 29) выполняются следующие действия; сдвиг содержимого регистра 2 на сдвигателе 16 в соответствии с кодом управления сдвигателем и занесение в регистр 4 по маске начала;

35 одновременно со сдвигом производится считывание второй порции второго операнда в регистр 2; гашение триггера первого цикла; передача нового содержимого регистра

0 2 через сдвигатель 16 в регистр 4 по сдвиговой маске, которая формируется в соответствии с кодом управления сдвига на байты согласно табл. 2.

Необходимо отметить, что разность

45 двухразрядных кодов в блоке 13 формируется в виде 3-разрядного кода, младший разряд которой всегда равен нулю (см, табл, 8).

Для случая код28 о код 29 выполняются только пункты 1, 2 подготовки второго

50 "операнда.

При совпадении начального и конечного этапов обработки (операнды находятся B одном слове) маска начала корректируется маской конца (сборка по ИЛИ).

55 Типовой этап характеризуется тем, что первый операнд расположен на границе слова и содержит 4 байта, а необходимо . формирование слова второго операнда с по1

33

1748153

ФЬ мощьюсдвигателяимаски, Сдвигателемуп- . ся через регистры 17 и 18, а затем может равляет разность кодов со входов 28 и 29 в быть размещен в любом из регистров 1-4 в соответствии с табл, 8. Блок маски 23 фор- соответствии с алгоритмом обработки, мирует код маски в соответствии с табл. 2. 5 Далее арифметическая обработка выB типовом цикле обработки произво- полняется на сумматоре 15, а при необходидятся следующие действия; мости и на блоке инверсии 10. При считывание второго операнда в ре- выполнении обработки на сумматоре 15 гистр 2, модификация адреса второго опе- межтетрадные переносы запоминаются в ранда на 4 на сумматоре 14 (цепи не 10 регистре 19, а обработанный операнд запопоказаны); считывание первого операн- минается обычно в регистре 3. Вслед за да в регистр 1, модификация его адреса на тактом арифметической обработки следует

4; ... такт второй десятичной коррекции, который . подготовка второго операнда к абработ- вйполняется путем суммирования результаке в регистре 4;, 15 та обработки (обычно регистра 3) и кода обработка операндов; .: коррекции, который формирует коммутатор подготовка второго операнда в типовом 11 в соответствии с состояйием разрядов цикле обработки заключается в том, что к регистра 19 (разряд равен 0 — в соответствуоставшимся не обработанным байтам в ре- ющей ему тетраде кода коррекции устанавгистре 4 присоединяются очередные вновь 20 ливэется код 6, разряд равен 1 — код считанные в регистр 2 байты в соответствии коррекции равен О). с маской, выработанной по разности кодов Результат второй коррекции запоминана входах 28 и 29 (табл. 2). - ется в регистре 3 и записывается в память.

Конечный цикл определяется по дости- . -. Команда десятичного сложения в преджении конечной границы первого операнда. 25 лагаемом АУ выполняется в два раза быстКонечный этап обработки характеризу- рее. (13 тактов обработки против 26 в ется запретом обработки в слове байт, рас- . прототийе) благодаря возможности выполположенных за конечной границей нения ее в конвейерном режиме, когда операнда. Для исключения этих байт из об- предыдущий такт готовит" информацию для работки используется маска конца, которая 30 последующего и очередные "порции" данформируется согласно табл. 5., ных считываются на фоне обработки предКод признака границы формируется в ыдущих. Если учесть, что длительность такта блоке 13 (узел 37) и выдается на второй обработки также уменьшена на 100 нс по выход блока,: .:: сравнению с прототипом, то быстродейстНа конечном этапе выполняются следу- 35 -вие при выполнении десятичного сложения ющие действия:: -: - увеличено почти в три раза по сравнению с считывание первого операнда в регистр . прототипом.

1; При выполнении ойерации "Умножение считывание второго операнда в регистр десятичное" сомножители принимаются в

2; 40 Регистры 1 и 2, подготовка первого операнда. в обра- . Команда "Умножение десятичное" выботке в регистре 3 в соответствии с маской полняетСя путем суммирования кратного конца, наложенной ho ИЛИ на сдвиговую . множимого; соответствующего очередной маску;. цифре множителя и предыдущего частичноподготовка второго операнда в регист- <5 ro произведения. Результат сложения сдвире 3 в соответствии с маской конца, нало- ... гается вправо на четыре разряда женной на сдвиговую маску; . (умножение начинается с младшей тетрады обработка операндов и запись в память . множителя). Кратные множимого вычислярезультата обработки из регистра 3.: ются перед суммированием с частичным

Обработка операндов производится 50 произведением путем последовательных одинаково для всех этапов (начальный, ти- суммирований заранее подготовленного повой, конечный).:;... . двухкратного множимого И/ИЛИ множимоЛогическая обработка осуществляется: гостолькораз,сколькоукэзываеточередная на сумматоре 15, арифметическая — требует . цифра множителя. Например, для вычиследесятичной коррекции, Поэтому нэ фоне >5 ния 8-ми «ратного(умножение на 8) необхоподготовки второго операнда осуществля- димо четыре суммирования двухкратного ется пересылка подготовленного первого множимого. . операнда в регистр 1 и его первая коррек- . Ha подготовительном этапе йеред цикция путем суммирования на сумматоре 14 лами умножения выполняются следующие содержимого регистра 1 и кода коррекции с действия: входа "61о". Результат коррекции передает-; . I

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

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

23 мэска начала в соответствии с табл. 4. . Операнд из регистра 1 передается через коммутатор.6, блок инверсии 10, сумматор

15, регистр 20 в регистр 3, разрешение занесения в тетрады которого сформированы блоком 23 в соответствии с маской йачэла, Данные из регистра 3 записываются в локальную память, э в это время аналогичным образом обрабатывается второй операнд.

Запоминание знаков операндов производится следующим образом, Младшее слово операнда считывается из памяти в регистр 1 и через коммутатор 12 передэется на сдвигатель 16. Сдвигэтель передает младшее слово нэ свой выход без изменения (код сдвига равен О) и запоминает.его в регистре 22. Код нэ входе 28 подготовлен таким образом, что указывает на последний байт операнда (к адресу операнда добавлена длина операнда). В соответствии с состоянием входа 28 иэ укаэанного байта выбирается младшая тетрада. Код в млэдшей тетраде аппаратурно анализируется на признак знэка (положительный или отрицательный). Признак запоминается в спецтриггере (не показан). Одновременно производится анализ на достоверность кода в тетраде знака: если в тетраде находится цифра; то устанавливается другой специальный триггер признака неверных десятичных данных, Содержимое регистра 22 записывается в регистр 3 по маске начала, увеличенной нэ 1 (см. табл, 4, столбец ТНО = 1, ТДО

- 1), чтобй обнулить знаковуЮ тетрэду вместе с обнулением "чужих" байт, расположенных справа от границы операнда.

Аналогичным образом обрабатывается второй операнд, Проверка on ерэндов нэ корректность десятичных данных производитСя следующим образом, Операнд из регистра 1 поступает нэ коммутатор 9, коммутатор 8 в это время передает код первой десятичной коррекции (666 ... 6), сумматор 14 выполняет сложение.

Возникновение межтетрадного переноса указывает на наличие некорректного кода

5 (10) в тетрэдах цифр. Признак неверных десятичных данных запоминается в TOM же специальном триггере, в котором записывэлся признак некорректности кода знака..

Аналогичным образом проверяется и вто10 рой операнд.

Выравнивание оперэндов к правой границе слова производится с помощью сдвигэтеля 16. На управляющие входы сдвигателя блока 13 в этом случае поступает

15 код сдвига на одну тетраду больше; чем требуется для выравнивания операнда к праsoA границе слова (блок 13 вычисляет разность; 7 — код входа 28), Этим самым выдвигается обнуленная знаковая тетрэда.

20 Вырэвненные операнды заносятся в рабо-. чие ячейки локальной памяти, Далее формируется удвоенное значение множимого по правилам десятичного сложения и запись результата в рабочие ре25 гистры локальной памяти, .

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

35 локальной памяти, Выходные переносы, возникающие при суммировании младшего слова, накапливаются в специальном регистре (на чертеже не показан) для учета их при суммировании

40 старших слов.

Вычисленное кратное складывается с частичным произведением (в первой итерации частичное произведение равно нулю) и сдвигается на 4 разряда вправо, Циклы ум45 ножения повторяются 15 раэ (15 цифр множителя).

Результат умножения размещается по правой границе первого операнда, В младшую тетраду с входа 28 заносится код знака, 50 сформировэнного по правилам нэ основе признаков знаков, хранимых в двух специальных триггерах, Затем результат умножения засылается в основную память. по адресу первого операнда.

55 Использование параллельно работающих блоков позволило сократить время выполнения команды умножения на восемь тактов (24 такта против 32 в прототипе), что привело к ускорению выполнения команды на 5.6 мкс.

1748153

Ф о р м у л а и з о б р е те н и я входами(И -го и вторым информационным

1. Арифметическое устройство, содер- входом i-го разрядов второго коммутатора, жащее регистры первого и второго операн- первыми информационными входами 1-х и да, первый и второй регистры, основной - вторыми информационными входами (I-1 -х сумматор, блок инверсии, регистр основно- 5 разрядов третьего коммутатора и с первыми го сумматора, блок формирования кода нор-. информационными входами i-x разрядов мализации, блок маски, блок байтового коммутатора входов байтно-тетрадного суммирования, причем первый и второй вхо- сдвигателя, выход которого соединен с инды четырех байт данных устройства соеди- формационным входом байтно-тетрадного нены с первыми информационными 10 сдвигателя, выход которого соединен с инвходами соответственно регистров первого формационным входом регистра байтнои второго операндов, первый и второй вхо- тетрадного сдвигателя,. выход которого ды старших байт данных устройства соеди- - соединен с четвертым информационным нены с первым и вторым информационными входом первого регистра и первым инфорвходами соответственно блока байтового 15 мационным входом третьего регистра, втосуммирования, с третьего по шестой инфор- рой, третий и четвертый информационные мационные входы которого соединены соот- входы I-ro (i+ 4)ro (i+ 2 -ro разрядов которых ветственно с входами признака границы соединены с выходами 1-х разрядов регистначала первого и второгооперандовустрой- ра основного сумматора; йри этом четверства, входом кода сдвига устройства, вхо- 20 тый информационный вход двух младших дом направления сдвига устройства,: разрядов третьего регистра соединен с выпервый и второй выходы блока байтового ходом двух старших разрядов первого ресуммирования соединены с первым и вто- гистра, третий информационный вход рым информационными входами соответст- четырех старших разрядов первого региственно блока маски, третий 25 ра соединен с выходами четырех младших информационный вход которого соединен с разрядов регистра основного сумматора. входом признака границы начала первого информационный вход которого соединен операнда устройства, седьмой ийформаци- с выходом суммы основного сумматора, втоонный вход блока байтового суммирования рой йнформационный вход которого соедисоединен с выходом блока формирования 30 нен с выходом коммутатора кодов. первый кода нормализации, информационный вход и второй информационные входы которого которого соединен с выходом суммы основ- соединены с выходом четвертого коммутаного сумматора, первый информационный тора и выходом регистра межтетрадных певход которого соединен с выходом блока реносов соответственно, информационный инверсии, выход регистра основного сумма- 35 вход которого соединен с выходом перенотора соединен с вторыми информационны- сов основного сумматора, выход четвертого ми входами регистров первого и второго коммутатора соединен с вторым информаоперандов и первым информационным вхо- ционным входом коммутатора входов байтдом первого регистра, выход которого сое- но-тетрадного сдвигателя, выход регистра динен с информационным входом второго 40 второго операнда соединен с первым инрегистра, выход которого соединен с вто- формационным входомчетвертого коммутарыми третьим информационными входами: .тора, второй информационный входсоответствующих разрядов первого регист- . которого соединен с выходом третьего регира, о т л и ч à е щ е е с я тем, что, с целью . стра и третьим информационным входом повышения быстродействия и сокращения 45 третьего коммутатора, выход которого Соеаппаратурных затрат, устройство содержит динен с входом блока инверсии, четвертый третий регистр, четыре коммутатора, комму-" информационный вход которого соединен с татор кода, регистр межтетрадных перено- выходом первого регистра и третьим инфорсов, коммутатор входов байтно-тетрадного мационным входом четвертого коммутатосдвигателя, байтно-тетрадный сдвигатель; 50 ра, управляющие входы первого и второго регистр байтно-тетрадного сдвигателя, до- коммутаторов соединены с третьим выхополнительный сумматор, первый и второй дом блока байтового суммирования, первый дополнительные регистры, блок выработки .. выход которого соединен с управляющим сигналов запрета, при этом выход i-ro раз- входом байтно-тетрадного сдвигателя и ряда регистра первого операнда (где i 55первыминформационнымвходомблокавы1,. и/2, и-разрядность входных операндов) "работки сигналов запрета, третий и четверсоединен с первым информационным вхо- тый информационные входы первого дом (i-3)го разряда и вторым информацион- коммутатора соединены соответственно с ным входом (I-2)-ro разряда первого входами логическогонуляикодакоррекции коммутатора, первыми информационными устройства, вход константы которого соеди1748153

Таблицаl

01ХХХХХХ

001ХХХХХ

0001ХХХХ

00001ХХХ

000001ХХ оооооо1Х

00000001 асооооао

10111

10»О

10101

10011

10001

10000

Фиксированная точка, 1ХХХХХХХ короткий операнд, стар- 01ХХХХХХ шее слово длинного опе" 001ХХХХХ ранда 0001XXXX

00001ХХХ

ООООО1ХХ

ОО 000

11111

11101

11011

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

НЕ, два элемента ИЛИ, дешифратор кода нормализации, дешифратор кода сдвига вправо, дешифратор кода сдвйга влево, три триггера и элемент 2И-ЗИЛИ вЂ” НЕ, причем первый информационный вход блока соединен с информационным входом дешифратора кода нормализации и первым входом первого элемента И, второй вход которого младшее слово длинного операнда соединен с управляющим входом блока и входом первого элемента НЕ, выход которого соединен с первыми входами второго и третьего элементов И, второй вход второго элемента И соединен с выходом второго

5 элемента НЕ, вход которого соединен с вторым информационным входом блока и вторым входом третьего элемента И, выходы второго и третьего элементов И соединены с управляющими входами дешифратора ко10 да сдвига вправо и дешифратора кода сдвига влево соответственно, информационные входы которых соединены с вторым информационным входом блока, выход первого элемента И соединен с управляющим вхо15 дом дешифратора кода нормализации, первый выход которого соединен с первыми входами первого и второго элементов ИЛИ; вторые входы которых соединены с первым выходом дешифратора кода сдвига влево, 20 второй выход которого соединен с первым входом элемента 2И вЂ” ЗИЛИ-НЕ, второй вход которого соединен с входом первого триггера и выходом первого элемента ИЛИ, третий вход которого соединен с первым

25 выходом дешифратора кода сдвига вправо, второй выход которого соединен с вторым входом элемента 2И вЂ” ЗИЛИ вЂ” HE, выход которого соединен с входом второго триггера, третйй выход дешифратора кода сдвига

30 вправо соединен с третьим входом второго элемента ИЛИ, выход которого соединен с входом третьего триггера, выходы первого, третьего и второго триггеров соединены с выходом блока.

1748153

Продолжение табл 1

0000001 Х

00000001 . 00000000

11001

11000

Плавающая точка, млад- 1ХХХХХХХ шее слово длинного 01ХХХХХХ операнда : 001XXXXX

000lXXXX

00001ХХХ

OOOOO1ХХ

0000001Х

00000001

00000000

110IO

11001

10111

10101

10011

1О010

Плавающая точка,корот- 01ХХХХХХ кий операнд или старшее 001ХХХХХ слово длинного операнда 000I XXXX

00001ХХХ

000001ХХ

ОООООО1Х

0О000001

00000000

00001

11111

1 I 101

11011

11010 а

° веавее »»»ее еею

° В Ю

Таблица4

Та блица 2

---«-В. Й.

ЮЮЮЮЮЮЮЮЮЮЮЮЮ ° ЮЮЮЮ ЮЮЮЮЮ еав Е

Параметр сдвига

Код маски

«» ею ее»ее»

Код на ши= 1" . не границы

° ююав ю тдо = 1 первого опе ранда

Код маски начала

ЮЮЮ

ТНО

ТНО

ЮЮ Ю т о=о

ТДО = О ее»ее«ее»ее» ее ю

СО

F0

Таблица5

Код конечной границы операнда еава» юе «ее»ее

01 . 10

11:

ЮЮ ЮЮЮЮЮЮЮЮ ЮЮЮЮ ее»ее»»ею»»ее»ее ею«ее»»

Код маски конца«ЕЮ»»В »еее ЮЮЮЮЮЮЮЮЮ . ТНО =* О . ТНО 1 юавююеюавюююююю юююе«юева»ю

3F . FC

OF F0

03 CO

00 00

Таблица3 юею

Код счет" чика

Код маски

CF

Р3

01

000 00

001 80

010 СО

0l 1 ЕО

100 Fo

101 F8

110 FC

111 РЕ

ОО

7F

3F

07

03

01 оо

01

1F

ОР 10

07

03

TH0 - =1

»е«ЮЕ

ТДО = О ТДО =.1 ее»»ею

3 7

OF 1F

03 . 07

00 01

1748153

Таблицаб

Сдвиг вправо

Управление маскированием

Код маски

Код сдвига ороткие операнды

1-й такт

2-й такт

Прием в регистр 22 без учета маски, в регистр 3 - no маске. Прием в регистр дополнительной цифры

Прием старшего слова в регистр 22 без учета маски,в регистр 3 по маске, Прием в регистр дополнительной цифры

Прием младшего слова s регистр 22 по маске. Прием в регистр 4 без маски. Прием e регистр дополнительной цифры

Прием в регистр 22 без учета маски. Аппаратный запрет приема в регистр 3.

Прием старшего слова в регистр 22 без маски, аппаратный запрет приема в регистр 3, прием в регистр дополнительной цифры

Аппаратныи запрет приема в регистр 22.

Аппаратная установка приема в регнст 4 по маске и аппаратный запрет в регистр дополнительной цифры.

Прием в регистр 22 без маски, в ре» гистр 3 по маске

Прием старшего слова в регистр 22 по маске в регистр 3 без, маски

Прием младшего сло« ва в регистр 22 без маски, в регистр 4 по маске

Прием младшего слова без маски ° Аппарат« ный запрет приема в регистр 4

Аппаратный запрет приема в рег.22.

Аппаратная установка приема в регистр 3 по маске

00000000

Таблица 7

«йЙ йв «юеФ ° ю °

Ф Ю Ф

Код HHJl Выход ком- Выход ком- Действие мутатора 8 мутатора 9 на сумматоре 14

Перенос в следу10щую цифру множителя

Сложение 0

0000

Ф ° 0000

000t

0011

0101

011t

1001

1011

1101

1 110

1111

1111

1101 1100

1011

1001

0111

0101

0011 0010

0001

0001

0011

0101

0111

1001

1011

1101

lll1

10000000 !

1! 100000

11! t1100

111 11110

11111000 ! 1!11100

ОО0О00ОО

00000001

00000011

00000111

00001111

00011111

00111 111

01111111

00000001

00000011

00000111

00001111

00011111

0011111 1

01111111

4ИНЕ (2л)

4ИНЕ

4ИНЕ

4ИНЕ

ВИНЕ (Зл)

8ИНЕ

8ИНЕ

4ИНЕ

4ИНЕ

4ИНЕ

4ИНЕ

1ИНЕ

2 ИНЕ (lл)

1ИНЕ

1ИНЕ

2ИНЕ

1ИНЕ

1ИНЕ

2ИНЕ l ИНЕ

1ИНЕ

2ИНЕ

1ИНЕ

Сложение

Сложение

Вычитание

Сложение

Сложение

Сложение

Вычитание

Сложение

Вычитание

Сложение

Сложение

Сложение

Вычитание

Сложение ,Сложение

0

0 .

0

0

1

1

1748153

« е

Разность кодов выходов

28 и 29

01

Таблица8

Код управления сдвигателем ббГ

110

1748153

1748153

П1= Л2

Я2.+ (7 )f11

ЯУ lfb .-ИНВЮ

ИНВЮИ5, е1 Е15 . О5® 820

t20 РЮ

- 15 -- ФФ 21

Ф/И21-- - Ф 2У

П2 К 13

МрюлкФцж рез

Яу цала

Ю -И7=.312-«фЯ6

СДВ16- Я22 (e ф ф- ) . g22 g$ (6РЛ РЙ7ЙФ)

Вьтсление ХщюкйЯ ЯСяюЯУ фЩИЫШ/иУ

ФКН21 1 13 - Х 13

Мгюсюае жражжрылию и юажа ФРЮ

ПЗ-, Я.У

Ю- -Рьи.27

Янах езулюапп

Вх 25- Ю(Ю

Вх. 2о- П2 (Щ

Разность роррДрр, (01 — И)= XÖ

8ыра8на3ание

Х-го олераж а

81-и72 rg8 jb

<А8 ff 822 . 1122- Я.7

Л 13 - -ЯЛ

Ю - Вых. 27

Формою тж д мммо ко

Ю- Нб ФМ Ю

О. 115,ИКВББ

Z15 Я - 820

)ЦР - » РЯ

-Ebga ии плие

Х- го опе,ааий

ЯМ 7-/ГД

ЩЖР22

022 Ю

R1 f6- - ИНВЮ

ИЗНУ- /Г11йпамвя 5ачивсвщ

ИНВ Х)-05, Ю1 Ю5

X)$(+) «У О

820 Ю

Фаущюйюю жала ррр алд ации

Z 15 4ЮЮ21

4 К УЮТ

ВыбОР ХОРОклиристики рг,уфэт рюа

Л1 113

1748153

Г l

l1- /72

Ех 25 - Л1(Ж

Вх 2б nZ(a)

Раэиогль лов ряФиоо (П7- П2) EU

ыра ии еп гл. сжба.К-го операнда

Rg /(7 -б(12 @У

СДВ1б 822

Ю22 R3

Вх.25 -- Р7

Вх.2б R2

Выра икали юл слоЮа Ю-го nv

8287 1(12-«ЦР16

449 1б Р22

822 Я

И Ф7 И.11

01 /(б - ЮО10

HffB10O5 711«E75

Е15 УРО

Р20 РФ

Вх25 Rl

Е 15 - Ф/ Н21

ФКН21- .УИИ йрайвйиае ст смВа l-e олещчВ

Р1й12 ХЕ М

ЯУ 1б Ю2

722 R3.

СниыЬ,юе юдшеао ало/а ощ)аэФоо

ap, D R1

Вх.гб- Рг

Выра3нйаиие мл. слооа 1ео ОлерямЯ

Р1./(12 - QBO

<4916 722

И2 И

Щ- 1(б - ИИВ10

М /(7- //11 дфктРолча иа ÀÓ ë. слюда Уга иХ- го операнЬЮ

ИНВЮ 05, 11DS

Е1Я7) - РЯ

RZ0 Ю

Ьипъйание гв. слаба

Ж25 82

Е15 AfM7

IN21 - РЯТ

R5 If -»- Ю

Ю2-/(7 - л 11

Ьюжеиие(Ь!чапане)

cm слоЮ

ЮЮ Е1Х, l1 E15

ЕЮ(Ф) - 820

820 Ю

05 Уагг1

llew ZU

Зми результата

О.» К7 - jf77

И1 К6 МНВ10

ИИВЮ 715,W 435

Е1Я ) 020

20 Щ

OD -» ФМ71

П1-» Е7

1748153

1748353

1748153

Разрядный сдбие илюшей части

Оайана- еипрадиыи сарж юлаУшеи части upm рядний старшеи части

ФЬг 10

1748153

Форюиродаюе кода

НОДР1ИЛИЗОЦ00

1) Нориализаиия

Уезду/77ЖЫ

Я) Чтение младшее свода Фелюгою

7) НОДИОЛ030 ЯЯ делимого (младшег пютуа)

2). Считыдание стары а сло5а

Фгличого

Нормализация делииого (старшее слаУо !

luck казание леркой царры частного

Ф

16 цихлоо дилВИУВ

1748153

1748153

1748153

1748153

Пер3ыи операид е есылаетя д К1бО

3Огом на 1раюря8 недо

Выд3инувыо раьяУ- мрЬж цифра

ЛРфбмй7 етая аирри олеанба аересылаещЯ ЮОu JIÞ грддя цшрра ОреЖРЖ7 ХФ ГЬ/Л УРМЖ

Я7($). 0апа8шоесл ищучи- Р ИУ

1748153

0сва3шиесм цифры ащюдйт луитьцюот

ce IN (8+ „йЮО66Ю" Р

1). Сйог жпайиихя

1 разряжай, &8%wglBg9 цдра у4е а

Йюи бнэемф мюю са д смфюирю мнм

8. S- г

Э"($ + „666666бб) "й

f(S+ „бббббб66 " +5 +

+ циФра ЗЮ

Я Ð1Ó заюоэя ю мдую= см из лев/ йж ЖМ4юй ЙаювчлЫ мдоенции

6ихаднад десяпцчноя

)(ффюГцю

Д У1

3 Лй фОГ. 17

Составитель Н.Маркелова

Редактор Н.Швыдкая Техред М.Моргентал Корректор А.Осауленко

Подписное .

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

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

Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101

Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство Арифметическое устройство 

 

Похожие патенты:

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

Изобретение относится к вычислительной технике и позволяет выполнять деление чисел на константу 2 +1 в последовательном коде с заданной точностью

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

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

Изобретение относится к вычислительной технике

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

Изобретение относится к вычислительной технике и может быть использовано при проектировании арифметических устройств универсальных и специализирован- - ных ЭВМ для умножения нормализованных чисел

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

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств универсальных и специализированных цифровых вычислительных машин Целью изобретения является сокращение аппаратурных затрат и повышение быстродействия

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

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

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

Изобретение относится к цифровым умножителям и предназначено для умножения цифрового сигнала (ЦС) на сигнал в форме периодической волны, преимущественно синусоидальной

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

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

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

Изобретение относится к вычислительной технике и может быть использовано для построения вычислительных систем с повышенной достоверностью выдаваемых данных

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