р-го элемента И второй группы, с первым информационным входом второй группы 2 р-го двухбнтного операционного блока и с вторым входом р-го элемента И первой группы, выход которого соединен с вторым информационным входом второй группы (2 р - 1)-тго двухбитного операционного блока, вход р-го элемента И второй группы соединен с вторым информационным входом второй группы 2 р-го двухбитного опе3805
рационного блока, вторые входы р элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и р элементов И второй группы подключены к одному из входов кода операции устройства, ох:тальные входы кода операции устройства подключены к управляннцим входам мультиплексора, первый информационный вход второй группы (2 р - 1)-го двухбитного операционного блока подключен к шине нулевого потенциала.
название | год | авторы | номер документа |
---|---|---|---|
ОПЕРАЦИОННЫЙ БЛОК | 1993 |
|
RU2034330C1 |
Арифметическое устройство с микропрограммным управлением | 1990 |
|
SU1797108A1 |
Вычислительное устройство | 1986 |
|
SU1327118A1 |
Микропроцессорное устройство для цифрового преобразования координат | 1982 |
|
SU1104523A1 |
Устройство для умножения по модулю 2 @ -1 | 1985 |
|
SU1304019A1 |
Табличный процессор | 1982 |
|
SU1108446A1 |
Вычислительное устройство | 1988 |
|
SU1545215A1 |
Программируемый сопроцессор | 1988 |
|
SU1675880A1 |
Микропроцессорное вычислительное устройство | 1982 |
|
SU1269145A1 |
Арифметическое устройство | 1989 |
|
SU1647557A1 |
ОПЕРАВДОННОЕ УСТРОЙСТВО, содержащее 2п двухбитных (, 2,...) операционных блоков, входы кода операции которых объединены и являются входами кода операции устройства, вход кода маски i-ro (,2, ..., 2n1, 2n) двухбитного операционного блока является i-м входом кода маски устройства, первый и второй информационные входы первой группы 2п двухбитных операционных блоков являются информационными входами устройства, информационные и адресные выходы 2п двухбитных операционных блоков являются соответственно информационными и адресными выходами устройства, выход переноса к-го (к 2, 3, ..., 2п)двухбитного операционного блока соединен с входом переноса (к - 1)-го двухбитного операционного блока, вькод переноса первого двухбитного операционного блока объединен с выходом сдвига вправо 2п-го двухбитного операционного блока и является выходом переноса и сдвига вправо устройства, вход переноса 2п-го двухбитного операционного блока объединен с входом сдзига вправо первого двухбитного операционного блока и является входом переноса и сдвига вправо устройства, выход сдвига вправо га-го (, 2, ..., 2п - 1) двухбитного операционного блока соединен с входом сдвига вправо (т 1)-го двухбитного операционного блока, входы синхронизации 2п двухбитных операционных блоков соединены с входом синхронизации устройства, отличаю щ.еi с я тем, что, с целью повьппения быстродействия, оно дополнительно (Л содержит мультиплексор, п триггеров, С две группы п элементов И и группу п элёметов ИСКЛЮЧАЮЩЕЕ ИЛИ, причем первый и второй информационные входы мультиплексора соединены соответственно с входом переноса и сдвига вправо устройства и с выходом переноса и сдвига вправо устройства, Од 00 вькод мультиплексора соединен с информационным входом первого триггера, о входы синхронизации п триггеров соеел динены с входом синхронизации устройства, информационный вход L-ro (, 3n) триггера соединен с выходом сдвига вправо
Изобретение относится к вычислительной технике и может найти применение при построении быстродействующих контроллеров и универсальных ЭВМ высокого быстродействия. Известно операционное устройство микро-ЭВМ, которое содержит арифметико-логическое устройство и схему десятичной коррекции tVBНедостаток такого операционного устройства - узкие функциональные возможности, так как в его системе команд нет операций двоично-десятично арифметики. Данное устройство позволя реализовать лишь команду десятичной коррекции ДАЛ (десятичное преобразование накапливающего регистра). Эта команда применяется для преобразования кода результата, получающегося при двоичном суммировании двоичнодесятичных кодов чисел в двоичнодесятичный код (8-4-2-1), и выполняется в течение одного цикла за несколько тактов синхронизации: содержимое программного счетчика выдается на группу шин адреса, и на rpjrnny информационных шин поступает информадия о состоянии; проверяется наличие сигналов подтверждения сое-: тояний: ОСТАНОВ, ГОТОВНОСТЬ и ЗАХВАТ ; код управления из памяти поступает по группе информационных шин в регистр кода операции; выполнение операции: если значение четырех младших (четырех старших) разрядов накапливающего регистра больше девяти или есть переьос из четвертого (восьмого) разряда, то число 6 прибавляется к четырем младшим (стар шим) разрядам накапливающего регистра. Таким образом, даже эта команда выполняется не за одни, а за четыре такта синхронизации. Данная команда может быть использована при программной реализации алгоритма преобразования двоично-десятичного кода числа в двоичный код. В то же время часто требуется производить деление на 2 двоично-десятичного кода (например, при реализации алгоритма обратного преобразования двоичного кода числа в дводчно-десятичный код) , что при использовании двоичного арифметико-логического устройства делает необходимой реализацию операции десятичной коррекции при сдвиге вправо. Такими возможностями рассматриваемое устройство не обладает. Из известных операционных устройств наиболее близким к заявляемому является устройство, содержащее ряд последовательно соединенных по целям переноса и сдвига двухбитных операционных блоков, вход переноса и выход сдвига вправо младшего из которых соединены с входом сдвига вправо и выходом переноса старшего центрального процессорного элемента, выходы адреса двухбитных операционных блоков объединены шиной адреса, выходы данных - выходной шиной данных, входы данных - входной шиной данных, входы маски - входной шиной маски, первые, входы.управления и второй вход управления объединены первой и второй шинами управления соответственно, а входы синхронизации - шиной синхронизации {.2.
Данное устройство обеспечивает простой сдвиг вправо на один разряд с загрузкой либо 1, либо О в старший разряд накапливаюшего регистра за один такт синхронизации (в отличие о операционного устройства l).
Недостатком известного устройства является отсутствие аппаратных средств для операций десятичной коррекции при переносе (сложение двоично-десятичных чисел, прямое преобразование двоично-десятичного числа в двоичное) и при сдвиге вправо (деление на 2 двоично-десятичного числа, обратное преобразование двоичного числа в двоично-десятичное), что значительно уменьшает быстродействие устройства при выполнении указанных операций.
Цель изобретения - повышение быстродействия устройства за счет реализации операций десятичной коррекции при переносе и сдвиге вправо за один такт синхронизации.
Поставленная цель достигается тем что в операционное устройство, содержащее 2п двухбитных (п 1, 2, ...) операционных блоков, входы кода oneрадии которых объединены и являются входами кода операции устройства, вход кода маски i-ro (, 2, ..,, 2n - 1, 2n) двухбитного операционног блока является i-м входом кода маски устройства, первый и второй информационные входы первой группы 2п двухбитных операционных блоков являются информационными входами устройства, информационные и адресные выходы 2п двухбитньк операционных блоков являются соответственно информационными и адресными выходами устройства, выход переноса к-го (, 3, ..., 2п двухбитного операционного блока соединен с входом переноса (к-1)-го двухбитного операционного блока, выход переноса первого двухбитного операционного блока объединен с выходом сдвига вправо 2п-го двухбитног операционного блока..и является выходом переноса и сдвига вправо устройства, вход переноса 2п-го двухбитного операционного блока объединен с входом сдвига.вправо первого двухбит кого операционного блока и является входом переноса и сдвига вправо устройства, выход сдвига вправо т-го ,
(, 2, .... 2п-1) двухбитного операционного блока соединен с входом сдвига вправо (га+О-го двухбитного операционного блока, входы синхронизации 2п двухбитных операционных блоков соединены с входом синхронизации устройства, введены мультиплексор, п- триггеров, две группы п элементов И и группу п элементов ИСКЛЮЧАЮЩЕ ИЛИ, причем первый и второй информационные входы мультиплексора соепи ены соответственно с входом переноса и сдвига вправо устройства и с выходом переноса и сдвига вправо уст-, ройства, выход мультиплексора соединен с информационным входом первого триггера, входы синхронизации п триггеров соединены с входом синхронизации устройства, информационный вход L-ro (L 2, 3, ..., п) триггера соединен с выходом сдвига вправо (2L-2)го двухбитного операционного блока и с выходом переноса (2L-1)-го двухбитного операционного блока, информационный выход р-го (р 1, 2, ..., п) триггера соединен с первыми входами р-го элемента И первой группы и р-го элемента ИСКЛЮЧАЮЩЕЕ ИЛИ группы, выход которого соединен с первым входом р-го элемента И второй группы, с первьм информационным входом второй группы 2 р-го двухбитного операционного блока и с вторым входом р-го элемента И первой группы выход которого соединен с вторым информационным входом второй группы (2 р-1)-гО двухбитного операционного блока, выход р-го элемента И второй группы соединен с вторым информационным входом второй группы 2 р-го двухбитного операционного блока, вторые входы р элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и р элементов И второй группы подключены к одному из входов кода операции устройства, остальные входы кода операции устройства подключены к управляющим входам мультиплексора, первый информационный вход второй группы (2р-1)-го двухбитного операционного блока подключен к шине нулевого потенциала.
На фиг. 1 представлена функциональная схема предложенного устройства; на фиг. 2 - структурная схема двухбитного операционного блока.
Устройство содержит двух:битные операционные блоки 1, вход 2 переноса и сдвига вправо, выход 3 переноса и сдвига вправо, адресные выходы 4, информационные выходы 5, первую группу б информационных входов, , входк 7 кода маски, входы 8 кода операции, вход 9 синхронизации, триг;геры 10, элементы И 11 и 12, элементы 13 ИСКЛЮЧАЩЕЕ ИЛИ, первый информационный вход 14 второй групп мультиплексор 15. Двухбитный операционный блок (см, фиг. 2) выполняет арифметическ логические, регистровые функции. Да .ные от внешяих источников (тйКйх ка главная память, внешние устройства и так далее) поступают в блок 1 по одному из трех входов М М, d,Jo ,. Данные от блока 1 передаются |на внешние устройства по одному из двух выходов и D.D, Внутри блока 1 данные хранятся в одЬом из 11 регистров сверхоперативного ЗУ (СОЗУ) , т или в накапливающем регистре АС. Данные от внешних устройств из регистров СОЗУ и Ас поступают в арифметико-логичес кое устройство (АЛУ) через, два внутренних мультиплексора А и В. Код операции F -F, декодируется для выборки функций АЛУ, выработки адреса СОЗУ и управления мультиплек сорами А и В,. Входы М, Mj предназначены для передачи данных из внешней главной памяти. Данные входов , поступаю через внутренний мультиплексор А на вход АЛУ Входь dfl предназначены дпя передачи данных от внешних систем ввода-вывода. Данные с входов 3 0 поступают также на вход АЛУ, но через мультиплексор В, независим от входов М, Мд. Сигнал с выхода СОЗУ поступает через внутренний мультиплексор А на вход АЛУ, а с выхода АЛУ, в CBofo очередь, на вход СОЗУ. Накапливающий регистр АС служит дпя запоминания результата операции АЛУ. Выход АС связан через мульти. плексоры А и В с входом АЛУ; кроме ТОГС9, ВЫХОД АС подключен к выходном буферу (на 3 состояния) для вьщачи; на входы ,Обычно входы .используются для передачи данных во внешнюю главнзпо память или на внешние устройства ввода-вывода при наличии сигнала разрешения выдачи данных ЕД. Мультиплексоры А и В выбирают один из двух входов АЛУ в зависимос от кода операции на входах . На входы мультиплексора А подаются данные с , выход СОЗУ и АС, на входы мультиплексора В - данные с , АС и данные с . Данные на выбранном входе мультиплексора В всегда логически умножаются на содержимое соответствующего входа для обеспечения гибкого маскирования и возможности проверки разрядов. АЛУ способно выполнить арифметические и логические операции, включая двоичное сложение в дополнительном коде, +1 и -1, поразрядное логическое сложение и умножение, поразрядное исключающее. ИЛИ-НЕ и поразрядное логическое дополнение. Результат операции АЛУ может бытьзапомнен в АС или в одном из регистров СОЗУ. Для выполнения операции сдвига вправо выведены отдельные вход сдвига вправо (L) и выход сдвига вправо (R). Линии входа и выхода переноса (.Crj и С(,) предназначены для обеспечения нормального распространения последовательного переноса.Данные на выходы |Сди R поступают через два буфера (на 3 состояния каждый), причем разрешается выдача -либо только на С , либо только на R,. Кроме того, стандартные выходы для схем ускоренного переноса X и У позволяют получить ускоренный перенос для произвольной длины слова. Возможность маскировать входы АЛУ ПРИ помощи шины К К (5 значительно увеличивает универсальность АЛУ. При неарифметических операциях схемы переноса используются для получения логической сборки (ifflH) всех разрядов слова с целью анализа на О результата Операции или одного из регистров. Входы используются также при арифметических операциях для маскирования частей обрабатываемых операндов. Дополнительной функцией входов К КдЯвляется передача констант из микропрограммы в операционном блоке. Регистр РА и выходы используются для пересьшки адресов во в;1ешнюю главную память. Регистр РА и выходы также могут быть использованы для выборки внешнего устройства при выполнении операции ввода-вывода. Выходы ускоренного переноса X, У в предлагаемом устройстве не используются, а входы разрешения адреса ЕА
и данных ЕД необходимо подключить к шине нулевого потенциала.
Операционное устройство работает следующим образом.
Двоичный код, подаваемьш по входам 8, задает.вид реализуемой за один такт синхронизации арифметико-логической операции и адрес пары операндоз, над которыт она производится. В качестве операнда может выступать двоичный код, хранимый либо на внутренних регистрах накапливающего типа аккумуляторе (Ас), Т - регистре (Т), либо во внутренних регистрах общего назначения Rfl-Rg, или находящийся на входах 6, а также подаваемый на входы с учетом инверсности данных входов.
На входах двухбитных операционных блоков 1, составляющих полубайт, возможны следующие 4 кодовые комбинации в зависимости от уровней сигналов на входе F и выходе соответствующего триггера 10 (см. табл.1)
Втабл. 1 учтена инверсность входов.
Код, находящийся на входах кода маски 7, с учетом инверсности является третьим операндом, постоянно участвующим в любой операции, выполняемой предлагаемым устройством.
В то время, как уровень сигнал на входе синхронизации 9 равен 1, происходит формирование кода результата операции и сигналов переноса или сдвига вправо в арифметико-логическом устройстве каждого операционного блока 1 , входящего в полубайт, с вьщачей сигналов переноса или сдвига вправо на выходы С и R соответственно с учетом инверсности этих выходов, в зависимости от сигналов, поступающих на входы переноса С или сдвига вправо Lj.
По заднему фронту тактового импульса, поступающего на входы синхронизации блока 1, происходит запис кода результата операции на какиелибо внутренние регистры, либо общего назначения , либо Ас и Т, либо в те и в другие, либо в регистр адреса, в зависимости от кода операции. Если уровень сигнала на входе Fg равен О, то запись может быть произведена либо в регистр общего назначения с четным индексом, либо в Т. Если уровень сигнала на входе FJ равен 1, то запись производится в регистры с нечетными индексами или
в АС. Одновременно происходит фиксация Ьигналов переноса.или сдвига вправо, поступающих с выходов переноса блока 1 старших разрядов каждого полубайта и с выходов сдвига вправо блока 1 младших разрядов соседнего полубайта. В триггере 10 старшего полубайта фиксируется информация; выбираемая либо с входа 2, либо с выхода 3 с помощью мультиплексора 15 в зависимости от кода операции (см. табл. 2).
Код, находящийся на выходах 5 и 4, равен содержимому АС и внутреннего регистра адреса соответственно с точностью до инверсности информационньк выходов и адресных выходов каждого блока 1.
В табл. 3 и 4 приведены микропрограммы реализации соответственно двоично-десятичного сложения и деления на 2 двоично-десятичного числа, написанные на язьпсе микроассемблера. В первом случае в АС находится одно из двух двоично-десятичных адсел, второе - на информационньйГвходах первой группы 6, а во втором случае исходное двоичнр-деся ичное число. Во всех случаях учтена инверсность входов и выходов, а п 8 (16 - разр дное операционное устройство микроЭВМ) ..
Из табл. 3 следует, что двоично-
десятичное суммирование выполняется за 6 тактов синхронизации вместо 11 тактов, необходимых известному .операционному устройству микро-ЭВМ (две команды: АДСМ - 2 цикла по 4 и 3 такта и ДАА - 1 цикл в 4 такта).
В табл. 5 и 6 Приведены микропрограммы реализации соответственно прямого преобразования двоично-десятичного числа в двоичное на основе двоично-десятичного суммирования (умножения на 2 двоично-десятичного числа) и обратного преобразования двоичного числа в двоично-десятичное на основе деления на 2 двоично-десятичного числа. В обоих случаях исходные числа находятся Б регистре Т, инверсность входов и выходов учтена. Разрядность операционного устройства микро-ЭВМ равна 16.
Эффективность изобретения заключается в увеличении быстродействия операционного устройства путем обеспечения реализации дополнительных операций десятичной коррекции при перенос и сдвиге вправо, выполняемых за один
9 1113805 «О
такт синхронизации. Это обусловлеШГ Выполнение за один такт операций
наличием специальных схем формирова-десятичной коррекции при переносе и
ния корректирующих кодов в зависи-сдвиге вправо обе печивает простую
мости от значений сигнала переноса -микропрограммную реализацию алгоритмов
сдвига вправо, полученных в предьщу-5 двоичнодесятичной арифметики (в кояе
МТактв при выполнении обычных двоич-8-4-2-1) без увеличения формата
йых отрацйй суммирования или сдвига.микрокоманды.
о
О
1 о 1
о 1 1
Входы 8
.
.ii..L...i...
О О О 11 Все остальные комбинации
00;ШР р ,. .
11LDI К - 1 ч- Cjf Т
,СОСМАтCj. GO , t- Т
11ALR , Т
Таблица1
1 о о 1
1 1 о 1
1 о 1 1
Таблица 2
Выход мультиплексора 15
Вход 2 Выход 3
Таблица 3
Уст. триггеров 1-2 В лог. 1
См. табл. 1 для FflQ 01 7 9.9.9.
Фо рмиров. кода с избытком 6 -- АС
11 AMA M+AC+Cj- T
11 ЛЭЛ К + Т +
11 А1Адс К + Ас + Cj--Ac О ,.:о.с CLRp . , 00 INRj RQ+CJ.) 00 СЬАд .Сд, . О 11 LDI К - 1 + Cjj - Aj. О 00 емА , x 11 ALR AC ,Т 1 11 ADR Ap+T+Cj T
Дв.сумма с изб. 6 уст. триггеров 12
Дес. коррекция при переносе Т, см. табл. 1
О
для F,
Дес. коррекция при сдвиге вправо , . табл. 1 при FO 1 0 Очистка R Маркерная . разряд «д Уст. триггеров 12 в лог. 0. См, табл. 1 для FoQ 10 12.l2.12. З.З.З. Код с изб., Т Дв. умнож. на 2 кода с изб. 3 Т Уст. триггеров 12 С, -2
11 AIA Кч-Т+Су- 00 ILRg , Aj. ADR|) A,. - R, IFL
Конец
00 SRA , ,
Т,- Re О
00 CLA ,
00 SRA
л ,. А. z
Лея R
со
11 А1Ад К+АС+С|.. о
00 SRA
,,т,То,
C-RO т.
11 TZA,
СJ V Т -« СдТ
IFL
Конец
Продолжение табл.5
Дес. коррекция
при переносе .
См. табл. 1 для ,
,
Дв. умнож. на 2
с .занесен. Z в мл. разряд RO
Переход по марк. 1
Искомое ДВ. число в R«
Маркер. 1 ст.: разряд Т
Запоминание мл. разряда числа (z)
Очистка
Дв. деление на
занесение z в ст. разряд AJ. Уст триггеров
Дес. коррекция при сдвиге вправо
см. Табл. 1 при FO 1
Дв. деление на 2
Проверка Т на О и переход
О
1
Дв.-дес;число
в А.
«/
пг
f f f f
Т I T- 7
Bvxoifftot/ $g(pep
Выходной
, g
-, Sygjep
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Соучек Б | |||
Микропроцессоры и микро-ЭВМ | |||
М., Советское радио, 1979, с | |||
Автоматическая акустическая блокировка | 1921 |
|
SU205A1 |
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
Аналоговые и цифровые интегральные схемы | |||
Под ред | |||
С.В.Якубовского | |||
М., Советское радио, 1979, с | |||
Катодное реле | 1918 |
|
SU159A1 |
Переносная печь для варки пищи и отопления в окопах, походных помещениях и т.п. | 1921 |
|
SU3A1 |
Авторы
Даты
1984-09-15—Публикация
1982-08-30—Подача