Устройство для сдвига данных

Иллюстрации

Показать все

Реферат

 

1. УСТРОЙСТВО ДЛЯ СДВИГА ДАННЫХ, содержащее сдвигатель, дешифратор нуля, два шифратора и два коммутатора, причем информационный вход сдвигателя соединен с шиной данных, входы направления сдвига и типа сдвига устройства соединены соответственно с входами направления сдвига и типа сдвига сдвигателя, выход которого является выходом результата устройства, выход дешифратора нуля соединен с входом первого шифратора, первый выход которого соединен с шиной кода нормализации и первым информационным входом первого коммутатора, второй информационный вход которого соединен с шиной кода сдвига устройства, вход величины сдвига сдвигателя соединен с выходом первого коммутатора, первьй управляющий вход которого соединен с шиной задания режима устройства , выход второго шифратора соединен с шиной кода нормализации устройства , отличающееся тем, что, с целью расширения функциональных возможностей путем обнаружения переполнения при арифметических сдвигах, оно содержит узел инвертирования и элемент сравнения, причем шина данных соединена с информационным входом узла инвертирования , выход которого соединен с входом дешифратора нуля и информационным входом второго коммутатора, выход которого соединен с входом второго шифратора, выход которого соединен с первым информационным входом первого коммутатора и первым входом элемента сравнения, BTopoii вход которого соединен с вторым информационным входом первого коммутатора, второй управляющий вход которого соединен с входом типа нормализации устройства , выход признака переполнения которого соединен с выходом элемента сравнения, первый вход которого соединен с первым выходом первого шифратора и управляющим входом второго коммутатора, первый и второй управляющие входы узла инвертирования соединены соответственно с шиной СО задания режима устройства и старшим разрядом шины данных устройства, второй выход первого шифратора является выходом признака нуля устройства. 2. Устройство по п.1, о т л и ч ау ю щ е е с я тем, что узел инвертирования содсрл ит группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и элемент И, причем первые входы и выходы элементов ИСКЛЮЧАЮЩЕЕ t-ШИ группы являются соответственно информационным входом

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

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

РЕСПУБЛИК

4(51) С 06 F 7 38

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPbITHA

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

К ABTOPCHOMV СВИДЕТЕЛЬСТВУ (21) 3654688/24-24 (22) 15.09.83 (46) 15,02.85. Бюл. № 6 (72) В.П.Велюго, Л.Г.Лопато, А.А.Шостак и А.Э.Шумейко (71) Минский радиотехнический институт (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР № 920704, кл. С 06 Р 7/38, !981.

2. Авторское свидетельство СССР

Ф 397908, кл. С 06 F 7/38, 1971.

3. Авторское свидетельство СССР № 783792, кл. С 06 F 7/38, 1979.

4. Авторское свидетельство СССР № 687982, кл. G 06 F 7/50, 1978 (прототип). (54)(57) 1. УСТРОЙСТВО ДЛЯ СДВИГА

ДАННЫХ, содержащее сдвигатель, дешифратор нуля, два шифратора и два коммутатора, причем информационный вход сдвигателя соединен с шиной данных, входы направления сдвига и типа сдвига устройства соединены со1 ответственно с входами направления сдвига и типа сдвига сдвигателя, выход которого является выходом результата устройства, выход дешифратора нуля соединен с входом первого шифратора, первый выход которого соединен с шиной кода нормализации и первым информационным входом первого коммутатора, второй информационный вход которого соединен с шиной кода сдвига устройства, вход величины сдвига сдвигателя соединен с выходом первого коммутатора, первый управляющий вход которого соединен с шиной задания режима устройства, выход второго шифратора соеди-SU 140113 А нен с шиной кода нормализации устройства, о т л и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей путем обнаружения переполнения при арифметических сдвигах, оно содержит узел инвертирования и элемент сравнения, причем шина данных соединена с информационным входом узла инвертирования, выход которого соединен с входом дешифратора нуля и информационным входом второго коммутатора, выход которого соединен с входом второго шифратора, выход которого соединен с первым информационным входом первого ммутатора и первым входом элеCQ мен а сравнения, второй вход которого соединен с вторым информационным входом первого коммутатора, второй управляющий вход которого соеди- Се нен с входом типа нормализации устройства, выход признака переполнения которого соединен с выходом элемента сравнения, первый вход которого соединен с первым выходом первого шифратора и управляющим входом второго коммутатора, первый и второй управляющие входы узла инвертирования соединены соответственно с шиной задания режима устройства и старшим разрядоМ шины данных устройства, второй выход первого шифратора является выходом признака нуля устройства.

2. Устройство по и.1, о т л и ч а„ю щ е е с я тем, что узел инвертирования cop .ðûèò группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и элемент И, причем

I первые входы и выходы элементов

ИСКЛЮЧАЮЩЕЕ ИЛИ группы являются соответственно информационным входом

1140113 и выходом узла инвертирования, первый и второй управляющие входы которого соединены с первым и вторым вхо"

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

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

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

Известны устройства для нормализации, выполняющие нормализацию числа и формирующие код нормализации в течение одного такта работы устройства 2 и (3 ).

Укаэанные устройства предназначе ны сугубо для нормализации чисел и не позволяют производить сдвиг информации. Кроме того, они не могут быть эффективно применены в высоко- 30 производительных ЭВМ общего назначения, располагающих быстродействующими сдвигателями из-за больших затрат оборудования.

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

ИСКЛЮЧАЮЩЕЕ ИЛИ группы. ва, вход режима которого соединен с управляющим входом первого коммута тора, выход которого соединен с входом величины сдвига сдвигателя, входы направления сдвига и типа сдвига которого являются соответственно входами направления сдвига .и типа сдвига устройства, выход сдвигателя соединен с информационным входор второго коммутатора, управляющий вход которого соединен с шиной кода нормализации и выходом второго шифратора, вход которого соединен с выходом старшей тетрады сдвигателя, выход которого и выход второго коммутатора является первым и вторым информацион ными выходами устройства (4 ).

Недостатком известного устройства является отсутствие возможности обнаружения переполнения при арифмети- ческом сдвиге влево.

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

Поставленная цель достигается тем, что в устройство для сдвига данных, содержащее сдвигатель, дешифратор нуля, два шифратора и два коммутатора, причем информационный вход сдвигателя соединен с шиной данных, входы. направления сдвига и типа сдвига устройства соединены с входами направления сдвига и тина сдвига сдвигателя, выход которого является выходом результата устройства, выход дешифратора нуля соединен с входом первого шифратора, первый выход которого соединен с шиной кода нормализации и первым информационным входом первого коммутатора, второй информационный вход которого ,соединен с шиной кода сдвига устройства, вход величины сдвига сдвигателя соединен с выходом первого коммутатора, первый управляющий вход кото.ого -соединен с шиной задания режима. з 11401 устройства, выход второго шифратора соединен с шиной кода нормализации устройства, введены узел инвертирования и элемент сравнения, причем шина данных соединена с информацион— ным входом узла инвертирования, выход которого соединен с входом дешифратора нуля и информационным ьходом второго коммутатора, выход которого соединен с входом второго шифратора, 10 выход которого соединен с первым информационным входом первого коммутатора и первым входом элемента сравнения, второй вход которого соединен с вторым информационным входом пер- 15 вого коммутатора, второй управляющий вход которого соединен с входом типа нормализации устройства, выход признака переполнения которого соединен с выходом элемента сравнения, щ0 первый вход которого соединен с первым выходом первого шифратора и . управляющим входом второго коммутатора, первый и второй управляющие входы узла инвертирования соединены 35 соответственно с шиной задания режима устройства и старшим разрядом шины данных, второй выхо„ первого шифратора является выходом признака нуля устройства, 30

Кроме того, поставленная цель достигается тем, что узел инвертирования содержит группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и элемент И, причем первые входы и выходы элементов ИСКЛЮЧАКЩЕЕ ИЛИ группы являются.соответственно информационным входом и выходом узла инвертирования, первый и второй управляющие входы которого соединены с первым и вторым входами 40 элемента И, выход которого соединен с.вторыми входами элементов ИСКЛЮЧА МЦЕЕ ИЛИ группы.

На фиг.1 приведена структурная схема устройства для сдвига данных; 45 на фиг.2 - функциональная схема узла инвертирования; на фиг.3 — функциональная схема первого коммутатора.

Устройство для сдвига данных содержит сдвигатель 1, узел 2 инверти- 50 рования, дешифратор 3 нуля, первый шифратор 4, первый коммутатор 5, второй шифратор 6, второй коммутатор 7, элемент 8 сравнения, вход 9 типа нормализации, шину 10 данных, шину 11 55 задания режима, шину 12 кода сдвига, вход 13 направления сдвига, вход 14 типа сдвига, старший разряд 15 ши13 4 ны данных, выход 1б признака нуля, шину 17 кода нормализации, выход 18 признака переполнения и выход 19 результата.

Узел инвертирования содержит эле" менты ИСКЛЮЧАЮ111ЕЕ ИЛИ 20„ -20 и элемент И 21.

Первый коммутатор содержит элементы И-ИЛИ 22 - 22ь.

Сдвигатель 1 предназначен для быстрого выполнения арифметического или логического сдвига информации, поступающей по шине 10 данных устройства. Как и в устройстве-прототипе он построен по однократному принципу.

Узел 2 инвертирования осуществляет или транзитную передачу информации с шины 10, или ее инвертирование.

Если на выходе элемента И 21 сформирован сигнал 0, то информация с шины данных 10 передается через узел 2,транзитом, в противном случае она инвертируется.

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

Первый шифратор 4 предназначен для формирования двоичного кода числа

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

При нулевой информации на шине

10 данных формируется сигнал на втором выходе шифратора 4.

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

17 кода нормализации. Сигнал 11>, поступающий .по шине 11 режима работы и равный "1", обеспечивает передачу на выход коммутатора 5 информации с шины 12 кода сдвига. Сигнал 11, равный "0" обеспечивает передачу на выход коммутатора 5 информации с шины

17 кода нормализации, причем если на шине типа нормализации 9 присутствует сигнал "1", то на выход коммутатора 5 передается код двоичной нормализации, в противном счучае на выход коммутатора 5 передается код шестнадцатиричной нормализации, умноженной на четыре.

1140113

Второй шифратор 6 аналогично пер вому шифратору 4 предназначен для формирования двоичного кода числа подряд идущих со стороны старших разрядов нулей в его входной информации. Фактически он указывает двоичный код числа подряд идущих со стороны старших разрядов нулей в самом старшем ненулевом байте информации. 10

Второй коммутатор 7 осуществляет выборку самого старшего ненулевого байта из восьми байтов информации, сформированных на выходе узла 2 инвертирования и поступающих на его 15 информационный вход. Он может быть построен на восьмивходовых мультиплексорах.

Элемент 8 сравнения предназначен для выработки признака переполне- 20 ния при левом арифметическом сдвиге.

В элементе 8 происходит сравнение кодов нормализации и сдвига.

Если код нормализации меньше кода сдвига или равен ему, то вырабаты- 25 вается признак переполнения.

Устройство для сдвига данных работает следующим образом.

Режим сдвига. В этом режиме по шине 10 данных поступает в устройст- ЗО во информация, подлежащая сдвигу, а по шинам 12 14 — информация соответственно о коде. сдвига, направлении сдвига и типе сдвига. При этом на шину 3 I задания режима работы посту- 35 пают два единичных сигнала 11„ и 11

Первый сигнал 11„ разрешает инвертирование в узле 2 информации, присутствующей на шине 10 данных, если только значение ее старшего разряда 4о равно единице. Второй сигнал 11 разрешает передачу на третий управляющий вход сдвигателя 1 через коммутатор 5 информации с шины 12 кода сдви га. Результат в этом режиме формиру- 4> ется на выходе сдвигателя 1, который соединен с шиной 19 результата. При выполнении- в устройстве логического сдвига или арифметического сдвига вправо левое плечо устройства хотя и работает, однако его результате не учитываются при формировании результата операции сдвига. И только в случае левого арифметического сдвига учитывается результат сравне- 5- ния в элементе 8 кода нормализации, полученного на шине 17, с кодом сдвига на шине 12. Если код нормализации меньше или равен коду сдвига, то на выходе 18 формируется сигнал переполнения при левом арифметическом сдвиге информации.

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

11 задания режима работы поступают нулевые сигны 111 и 112 первый из которых запрещает инвертирование информации в узле 2, а второй разрешает прием информации на третий, управляющий вход сдвигателя 1 с шины

17 кода нормализации. На шине 9 присутствует сигнал, определяющий тип нормализации, по входам 13 и 14 подаются сигналы, настраивающие сдвигатель 1 на выполнение в нем логического сдвига информации влево.

Устройство в режиме нормализации работает следующий образом.

С помощью узла 2 инвертирования, дешифратор 3 нуля, первого шифратора 4, коммутатора 7 и второго шифратора 6 на шине 17 образуется код нормализации, который сообщает сдвигателю 1 через коммутатор 5 на сколько двоичных разрядов необходимо осуществить сдвиг влево нормализуемого числа. При этом в случае двоичной нормализации на третий управляющий вход сдвигателя 1 подается полно,разрядный код нормализации, в слу,чае шестнадцатиричной нормализации коммутатор 5 разрешает передачу четырех старших разрядов кода. Код нормализации по шине 17 передается на выход устройства с целью дальнейшей его обработки, например, в блок обработки порядков чисел с плавающей запятой. Таким образом, в режиме нормализации на шине результата 19 формируется нормализованное число, а на шине 17 образуется код нормализации, который может быть пе-! редан из устройства с целью дальней, шей его обработки.

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

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

Устройство в этом режиме работает Таким образом . функциональные возследующим образом. Анализируемое на иожности.предлагаемого устройства ноль число подается на шину 10 дан- 5 существенно расширены, кроме арифных устройства, а по шине 11 зада- метического и логического сдвига ийния режима работы поступает нулевой формации и двоичной и шестнадцатисигнал 11, который настраивает ричнои нормализации оно позволяет узел 2 инвертирования на транзитную обнаруживать переполнение при левом передачу информации с его входа íà 1о арифметическом сдвиге. Объем дополвыход. В случае нулевого числа на нительно введенного оборудования втором выходе первого шифратора 4 невелик.

ll40ll3

Составитель А.Клюев

Редактор Л.Пчелинская Техред Л.Коцюбянк Корректор Г.Решетник

Заказ 264/37 Тираж 710 Подписное

ВНИИПИ Государственного комитета СССР

Ф„ по делам изобретений и открытий

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

Филиал ППП "Патент", r. Ужгород, ул. Проектная, 4