Устройство для выполнения арифметических и логических операций

Номер патента: 538362

Автор: Селезнев

ZIP архив

Текст

Союз Советских Социалистических Республик) М. Кл,е Й 06 Р 7 с присоединением за осударственный комнтеСовета Мнннстров СССРпа делам нзооретеннйн открытий(54) УСТРОЙСТВО ДЛЯ ВЫПОЛНЕНИЯ АРИФМЕТИЧЕСК И ЛОГИЧЕСКИХ ОПЕРАЦИЙ2 ализуютлины ГЦ,устройи логиор блок пом изобретения является ыполнения арифметических раций, содержащее сумма операций, выходной комм , преобразователь кода и Протот ство для вческих опе логических сдвигатель утаторлок Изобретение относится к области вычислительной техники и может быть использовано при построении быстродействующих процессоров, ориентированных на обработку информационных полей переменной длины, 5Для выполнения арифметических и логических операций широко используются известные арифметико-логические устройства, являющиеся основными узлами современных ЦВМ, Такие устройства обеспечивают выполнение основных арифметических и логических операций, а также операций сдвига. Арифметико-логические устройства содержат, как правило, блок логических операций, сумматор и сдвигатель. Информация на входы 15 устройства поступает с регистров, В регистр же заносится результат операции.Такие устройства обычно не ре операции над полями переменной д управления. Выход выходного коммутатора является выходом устройства, первый вход этого коммутатора соединен с выходом блока логических операций и первым входом сумматора, а второй - с первым выходом сумматора. Вход преобразователя кода подключен к первому входу устройства, а выход соединен со вторым входом сумматора и пер вым входом блока логических операций, Первый второй и третий выходы блока управления соединены соответственно с управляющими входами сумматора, блока логических операций и преобразователя кода.Четвертый и пятый выходы блока управления соединены с управляющими входами выходного коммутатора. Первый вход блока управления соединен со вторым входом устройства, а второй - со вторым выходом сумматора 1 2.При выполнении операций над информацион ными полями одинаковой произвольной длины, расположенными в двух (или одном) машинных словах, в этом устройстве осуществляется многократная передача информации по цепи, содержащей сумматор и сдви 538362гатель, что обуславливает в этом случае низкое быстродействие устройства.Целью изобретения является повышение быстродействия устройства.Эта цель достигается тем, что в пред ложенное устройство введены блок формирования маски, дополнительный сумматор и вычитатель, первые входы которых объединены и подключены к третьему входу устройства, а вторые входы подключены соот ветственно к четвертому и пятому входам устройства, Управляющие входы вычитателя и блока формирования маски связаны с пятым и шестым выходами блока управления. Выход дополнительного сумматора под- И ключен ко второму входу блока формирования маски, выход которого подключен ко второму входу блока логических операций и третьему входу выходного коммутатора, четвертый вход которого соединен с выхо дом преобразователя кода, Выход вычитателя соединен с первым входом сдвигателя, второй вход которого подключен к шес тому входу устройства, а выход соединен с третьим входом блока логических опера- ф ций и пятым входом выходного коммутато ра.Указанная цель достигается также тем, что в выходном коммутаторе каждый разряд состоит из узла образования логических функций и двух коммутирующих узлов. Входы узла образования логических функций подключены к четвертому и пятому входам выходного коммутатора, управляющий входк первому управляющему входу выходного коммутатора, а выход - к первому входу первого коммутирующего узла, ко второму входу которого подключен выход второго коммутирующего узла, входы которого сое динены с первым и вторым входами выход 40 ного коммутатора, Управляющие входы коммутирующих узлов подключены к третьему и второму управляющему входам выходного коммутатора, а выход первого коммутирующего узла подключен к выходу45 выходного коммутатора. лями, расположенными в словах А и А1 2.Разрядность слов Гп = 2. Информационноеиполе в слове Азадается двумя параметр.0рами: базой Ь, определяющей положениепервого элемента (бита) поля, и длиной, соответствующей числу элементов вполе, уменьшенному на единицу (фиг. 3).Положение поля в слове А задается базой Ьаналогично. Параметр 1 одинаковдля обоих полей. Сдвигатель 4 обеспечивает быстрый сдвиг числа Ас цельювыравнивания положения полей в словахАи А , Сдвигатель 4 осуществляет циклический сдвиг слов только влево. ЕслиЬ 1 ЪЬ, то величина сдвига С = Ь - ЬЕсли Ь,с Ь, то следует произвести сдвигвправо на величину С =Ь-Ь , что эквивалентно сдвигу влево на величину с=паев(Ь=Ь)либо дополнительный код числа Ь,.Блок формирования маски 7 обеспечиваетвыработку т - разрядного двоичного слова М, содержащего единственную группусимволов ф 1", в которой отсутствуют символы "0" ( например, слово 00111100),Положение группы символов "1" в маскеопределяется адресами начальной ( 0 н )и конечной (О) единиц ( отсчет позиций производится слева направо). Значения с и аИ К(О о, д с т) поступают на входы блока формирования маски 7 со входаустройства и с выхода О - разрядногодополнительного сумматора 8, соответственно. На вход этого сумматора подаюч- ся параметры Ь и 8 . Преобразователькода 5 обеспечивает формирование на своемвыходе прямого или обратного кода чисКо входам блока логических операций2 подключены выходы блока формированиямаски 7, сдвигателя 4 и преобразователякода 5. Значения сигнала Ана выходеВ- го разряда блока логических операций 2 формируются в соответствии с однойиз шестнадцати логических функций от ар 1 И 1гументов А и А ( д- сигнал на выхоиде (, -го разряда сдвигателя 4, 6, - сигнал на выходе ь - го разряда преобразователя кода 5) при единичном значениисигналов на выходе-го разряда блока формиНа фиг. 1 показана блок-схема устройства; на фиг, 2 блок-схема одного разряда выходного коммутатора; фиг. 3 поясняет принпнп работы устройства.Устройство для выполнения арифметических и логических операций содержит сумматор 1, блок логических операций 2, выходной коммутатор 3, сдвигатель 4 комбинационного типа, преобразователь кода 5, блок управления 6, блок формирования маски 7, дополнительный сумматор 8 и вычитатель 9, Каждый разряд 1 О выходного коммутатора 3 содержит узел образования логических функций 11 и коммутирующие узлы 12 и 13.Предлагаемое устройство обеспечиваетвыполнение арифметических и логическихопераций над двумя информационными порования маски 7 ъ= 1). Вид логической функции определяется сигналами сблока управления 6. Если ф= О, то навыходе-го разряда блока логических операций 2 всегда формируется сигнал "1" ( 1= 1). Выход блока логических операций 2 подсоединен к первому входу сумматора 1, на второй вход которого Ь подается число с выхода преобразователя кода 5, С блока управления 6 возможна подача сигнала Р переноса в младший разряд сумматора 1. В блок управления 6 передается сигнал переноса из старшего сумма тора 1.Выходной коммутатор 3 обеспечивает формирование на выходе устройства результата Р выполения операций, На входы каждого разряда 10 выходного коммутатора 3 1 ЬИпоступают сигналы , б, ,А;, Л; и ((выходной сигнал. - го разряда сумматора 1). На выходе узла образования логических функций 11 вырабатываются сигналы, соответствующие определенной логичес)й кой функции от аргументович и А (в частном случае это могут быть логические константы ф 0" или "1"). Узел образования логических функций 1 1 управляется сигналомс блока управления 6, С блока управления 6 поступает также сигналуправления первым коммутирующим узлом 12, обеспечивающим передачу на свой выход значения либо Д, либо А. Второй коммутирующий узел 13 управляется сигналом)О и обеспечивает передачу на выходузла (и устройства) значения сигнала либо с выхода узла образования логических функций 11 (при у = О), либо с выхода)Ж первого коммутирующего узла 12 (при Р =1).При реализации различных операций устройство работает следующим образом.1, Логические операции над содержимымполей (фиг. 3),40Соответствующий код операций КО поступает на вход блока управления 6. На входы сдвигатепя 4 и преобразователя 6 кода поступают слова Аи А , а на входы дополнительного сумматора 8 и вычитателя 9 - значения параметров Ь, Ь и(на фиг. 3 обрабатываемые поля слов Аи Аобозначены соответственно через А" и А ", а остальные поля - через А , ЬО А", и А , А ). На входах блока формирования маски 7 устанавливаются значения Он - Ь и с- Ь + Р, обеспечивающие вы работку маски М, положение группы единиц в которой соответствует положению ЬЬ поля Я , Вычитатель 9 формирует величину с, обеспечивающую требуемый сдвиг слова А. Таким образом, на входы блока логических операций 2 поступают двоичные слова, положение обрабатываемых полей в которых выравнено. Сигналы с блокауправления 6 обеспечивают формированиена тех выходах блока логических операций2, которые соответствуют положениюиполя А (здесьу;= 1), результата выполнения заданной логической операции (м ). На остальных выходах блокалогических операций 2 вырабатываются сигналы "1" (здесь/О= О), Первые коммутирующие узлы 12 всех разрядов 10 выходного коммутатора 3 передают на своивыходы сигналы л, с выходов блока логи,ческих операций 2. Узлы образования логических функций 1 1 всех разрядов реализуют логическую функцию, задаваемую блоком управления 6. Для тех разрядов 10,дпя которых у = 1, на выход узла (устройства) передается сигнал с выхода первого коммутирующего узла 12 (в данномслучае 1). Для остальных узлов выходнойсигналопределяется состоянием выхода узла образования логических функций1 1. В результате на выходе устройстваформируется слово Р , содержащее полерезультата выполнения заданной логическойоперации. Значения остальных разрядовэтого слова формируются в соответствиис другой логической функцией двух аргументов (фиг. 3 соответствует случаю, когда в указанные разряда слова Р передаются значения соответствующих разрядов числа А).При выполнении логических операций надпопноразрядными словами на входы устройства подаются следующие значения параметров:Ь 2. 012, Операция " Сложение полей".Дополнительный сумматор 8, вычитатель 9, блок формирования маски 7 и сдвигатель 4 работают так же, как в предыдущем случае. Преобразователь кода 5обеспечивает передачу на вход блока логических операций 2 прямого кода словаА . Значения сигналов на выходах техразрядов блока логических операций 2,для которых у = 1, определяются логической функцией неравнозначности ( А= А, А. УА б ). На остальных выходах.,устанавливается сигнал "1 ф. Информация с выходов блока логических операций 2 поступает в сумматор 1 и используется для формирования сигналов переноса и суммы, причем сигнал переносаП из ь -го разряда сумматора формируется в соответствии с выражениями- ИП.=А у Л П1-5383 7Значение сигнала Р задается блокомуправления 6. При выполнении рассматриваемой операции Р = О. Из выражений (1)следует, что в младших разрядах сумматора1, соответствующих полю А" (см, фиг. 3), бсигналы переноса отсутствуют, так какА 1= 1 и Р = О, Зто обеспечивает нормальное выполнение операции сложения в разрядах сумматора, соответствующих полю А1(здесь А =д Ачб. б") . Если возникает 10сигнал переноса из разряда сумматора, соответствующего положению старшего разрядалполя А, то он распространяется до выхода переноса из старшего разряда сумматора, так как для разрядов сумматора, со- фответствующих полю А, Л с= 1. Первыекоммутирующие узлы 12 всех разрядов 10выходного коммутатора 3 передают на своивыходы сигналыс выходов сумматора1. Блок управления 6 задает определеннуюлогическую функцию, реализуемую управляемыми узлами образования логическихфункций 11 всех разрядов 10. Передачаинформации на выходы вторых коммутирующих узлов 13 разрядов 10 выходного ком-мутатора 3 осуществляется так же, как ипри выполнении логических операций. Присложении полноразрядных слов Ь,= Ь= О,=т - 1,3. Операция "Вычитание полей".Зта операция выполняется так же, какоперация "Сложение полей", с той разницей, что на выходе преобразователя кода5 формируется обратный код числа А , азадаваемый блоком управления 6 сигналМР = 1, В соответствии с выражениями (1)в рассматриваемом случае формируетсясигнал переноса из разряда сумматора 1,соответствующего положению старшего разс 40ряда поля А(для всех разрядов этогополяД = 1). Таким образом, в разрядахссумматора 1, соответствующих полю Апроизводится сложение полей в дополнит льном коде, т. е. вычитание.4. Операция "Сдвинуть логически влево на К разрядов".Соответствующий код операции подаетсяв блок управления 6, на вход сдвигателя4 поступает сдвигаемое число А . Параметры имеют следующие значения: Ь, = К,Ь= О, значение Й соответствует обратному коду числа К(ГК 3 =т -1 в К ).оЮр.Устройство работает так же, как при выполненни логических операций над содержимым 36полей, причем на выходы тех разрядов блока логических операций 2, для которых/сс = 1, передаются соответствующие значения Ас выхода сдвигателя 4, а навыходах узлов образования логических функ-628ций 11 всех разрядов 10 выходного коммутатора 3 устанавливаются значения "О".В рассматриваемом случае с=Ь - Ь =К,1а=О, а= Ь + 1 = Гп- К . Следовательно, в результате выполнения операции слово А 1 сдвигается влево на величину К ,и ЬК младших разрядов занесены нули,5, Операция "Сдвинуть логически вправо на К разрядов".В данном случае параметры имеютследующие значения:Ьс= О, Ь =К,Р=ГК 3,Устройство работает так же, как и привыполнении предыдущей операции, причемО =К а =Ь +В=К+т-К=сп, а величинкна с соответствует дополнительному коду 1,6. Операция "Сдвинуть арифметическивправо на К разрядов",Операция выполняется так же, как операция "Сдвинуть логически вправо на Кразрядов," с той разницей, что на выходыузлов образования логических функций 11всех разрядов 10 выходного коммутатора3 из блока управления 6 передается значение знакового разряда сумматора,7, Операция фСдвинуть циклически влево на К разрядов".Устройство работает так же, как привыполнении операции "Сдвинуть логическивлево на К разрядов", причем входные параметры имеют следующие значения: Ь =11 хЬ = О, =т - 1. Следовательно,маска М содержит единицы во всех разрядах, что обеспечивает передачу на выходустройства слова А, сдвинутого влево наК разрядов.8. Операция Сдвинуть циклически вправо на К разрядов". Устройство работает так же, как при выполнении предыдущей операции, однако вычитатель 9 работает в режиме, когда на его выходе формируется дополнительный код числа Ь, (К )9. Операция "Отбросить К разрядов справа".На входы устройства поступают соответствующий код операции, число А, параметры Ь = Ь = О, ГМ1 1оОр В дальнейшем устройство работает так же, как при выполнении операции "Сдвинуть логически влево на К разрядов". Очевидно, что сдвиг слова Ав данном случае отсутствует, так как с=Ь - Ь = О10. Операция "Отбросить К разрядов слева".В данном случае параметры имеют следующие значения: Ь =Ь =К = К . Усф1 2 1 ОЬР ройство работает так же, как при выполне538362 нии операции "Сдвинуть логически вправо ф на К разрядов". Сдвиг слова А, отсутст- т вует, так как С=Ь, - Ь = О.оУстройство представляет собой комбина- д ционную логическую схему, вследствие чегос время выполнения выше перечисленных опе- д раций определяется максимальным числом т логических уровней в цепях, расположен- н ных между входами и выходами устрой- р ства. Это обеспечивает увеличение скорости 9 р выполнения операций над полями перемен- м ной длины в 5-10 раз по сравнению со к случаем, когда эти операции реализуются на основе программных либо микропрограм- т мных средств. Дополнительные затраты 1 с оборудования составляют единицы процен- в тов от общих аппаратурных средств процес- с сора. ч формула изобретения 1. Устройство для выполнения арифметических и логических операций, содержащее сумматор, блок логических операций, М выходной коммутатор, сдвигатель комбинационного типа, преобразователь кода и блок управления, причем выход выходного коммутатора является выходом устройства, первый вход выходного коммутатора сое- Зо динен с выходом блока логических операций и первым входом сумматора, а второй вход соединен с первым выходом сумматора, вход преобразователя кода подключен к первому входу устройства, а выход соединен со вторым входом сумматора и первым входом блока логических операций, первый, второй и третий выходы блока управления соединены соответственно с управляющими входами сумматора, блока логических операций и преобразователя кода, четвертый и пятый выходы блока управления соединены с управляющими входами выходного коммутатора, первый вход блока управления соединен со вторым входом устройст 45 ва, а второй вход подключен ко второму выходу сумматора, о т л и ч а ю щ е - е с я тем, что, с целью повышения быстродействия устройства, в него введены блок ХОормирования маски, дополнительный суммаор и вычитатель, первые входы которых бъединены и подключены к третьему вхоу устройства, а вторые входы подключены оответственно к четвертому и пятому вхоам устройствам, управляющие входы вычиателя и блока формирования маски связаы с пятым и шестым выходами блока упавления; выход дополнительного сумматоа подключен ко второму входу блока форирования маски, выход которого подключен о второму входу блока логических операций и третьему входу выходного коммутаора, четвертый вход которого соединен выходом преобразователя кода; выход ычитателя соединен с первым входом двигателя, второй вход которого подклюен к шестому входу устройства, а выход соединен с третьим входом блока логических операций и пятым входом выходного коммутатора.2. Устройство по п. 1, о т л и ч а юш е е с я тем, что в выходном коммутаторе каждый разряд состоит из узла образования логических функций и двух коммутирующих узлов, причем входы узла образования логических функций подключ ны к четвертому и пятому входам выходного коммутатора, управляющий вход - к первому управляющему входу выходного коммутатора, а выход - к первому входу первого коммутирующего узла, ко второму входу которого подключен выход второго коммутирующего узла, входы которого соединены с первым и вторым входа ми выходного коммутатора; управляющие входы коммутирующих узлов подключены к третьему и второму управляющему входам выходного коммутатора, а выход первого коммутирующего узла подключен к выходу выходного коммутатора. Источники информации, принятые вовнимание при экспертизе:1, Патент США3571803, кл. 340172 Л, опубл. 23,03.71 г.2 ТМ 3 ЬИАСЧ ргосеььоЯ еГегпеМ,3 ЕЕЕ ТгаоьасЫооь ов Сотрайегэ, 1969,9 (прототип).,"1 д Составитель В. БерезкинТехред О, Луговая Корректор И, Гокс едактор ехина каз 5721/2 ноеинистров СС од иал ППП,"Патент", г. Ужгород, ул, Пооектная, 4 РРс Щ Ж А с 6 Тираж 864 Государственного комитета по делам изобретений и б, Москва, Ж, Раушская

Смотреть

Заявка

2131669, 08.05.1975

ПРЕДПРИЯТИЕ ПЯ Р-6052

СЕЛЕЗНЕВ ИГОРЬ ПАВЛОВИЧ

МПК / Метки

МПК: G06F 7/38

Метки: арифметических, выполнения, логических, операций

Опубликовано: 05.12.1976

Код ссылки

<a href="https://patents.su/6-538362-ustrojjstvo-dlya-vypolneniya-arifmeticheskikh-i-logicheskikh-operacijj.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для выполнения арифметических и логических операций</a>

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