Конвейерное устройство для потенцирования массивов двоичных чисел
Иллюстрации
Показать всеРеферат
КОНВЕЙЕРНОЕ УСТРОЙСТВО ДЛЯ ПОТЕНЦИРОВАНИЯ МАССИВОВ ДВОИЧНЫХ ЧИСЕЛ, содержащее входной регистр порядка, входной регистр мантиссы , выходной регистр порядка, выходной регистр мантиссы, два сумматора , первый блок памяти, причем вход мантиссы устройства соединен с информационным входом входного регистра мантиссы, отличающ е е с я тем, что, с целью повышения быстродействия, в него введены восемь регистров, блок сдвига, второй блок памяти, третий сумматор, квадратор, коммутатор, блок синхронизации и элемент НЕ, причем вход порядка устройства соединен с информационным входом входного регистра порядка, выход которого подключен к управляющему входу блока сдвига, информационные входы которого соединены с выходами (п-1) младших разрядов входного регистра мантиссы (где п - число разрядов входного регистра мантиссы) ,- выход первого разряда которого соединен с информационными входами первых разрядов первого и второго регистров, информационные выходы блока сдвига подключены к информационным входам (п-1) млацших разрядов втррого регистра , выходы К разрядов которого соединены с адресными входами первого блока памяти (где К - число старших разрядов второго регистра), выход первого блока памяти подключен к первому входу первогосумматора, второй вход которого соединен с выходом второго регистра, вькоды (f-l) младших разрядов блока сдвига подключены к информационным входам (-1) младших разрядов первого реi гистра (где - число старших разрядов блока сдвига), выход первого (Л регистра соединен с информационным входом третьего регистра, выход первого . сумматора подключен к информационному входу четвертого регистра, выходы К разрядов второго регистра соединены с информационными входами пятого регистра, выход третьего со регистра подключен к информационному входу шестого регистра, выход четвер ) того регистра соединен с входом квадО ратора, выход которого соединен с информационным входом седьмого регисо стра, выход пятого регистра соединен с информационным входом восьмого регистра, выход которого подключен к адресному входу второго блока памяти, выход шестого регистра соединен с первым входом второго сумматора, младший разряд второго входа которого через элемент НЕ подключен к выходу первого разряда восьмого регистра, выход седьмого регистра соединен с входом первой группы со сдвигом на
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (50 4 G 06 F 7/556
ОГ1ИСАНИЕ ИЗОБРЕТЕНИЯ
К ABTOPCHQMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3742292/24-24 (22) 17.05.84 (46) 15.11.85. Бюл, 11 42 (71) Львовский ордена Ленина политехнический йнститут им, Ленинского комсомола (72) Н. В, Черкасский и В. М. Крищишин (53) 681.325(088.8) (56) .Авторское свидетельство СССР
У 633017, кл. G .06 F 7/38, 1976, Авторское свидетельство СССР
9 572780, кл, G 06 F 5/02, 1975,. (54)(57) КОНВЕЙЕРНОЕ УСТРОЙСТВО
ДЛЯ ПОТЕНЦИРОВАНИЯ МАССИВОВ ДВО- .
ИЧНЫХ ЧИСЕЛ, содержащее входной регистр порядка, входной регистр мантиссы, выходной регистр порядка, вы" ходкой регистр мантиссы, два сумматора, первый блок памяти, причем вход мантиссы устройства соединен с информационным входом нходного ре- гистра мантиссы, о т л и ч а ю— щ е е с я тем, что, с целью повышения быстродействия, н него введены
/ восемь регистров, блок сдвига, второй блок памяти, третий сумматор, квадратор, коммутатор, блок синхронизации и элемент НЕ, причем вход порядка устройства соединен с информационным входом входного регистра порядка, выход которого подключен к управляющему входу блока сдвига, информационные входы которого соединены с выходами (n-1) младших разрядов входного регистра мантиссы (где n — число разрядов входного регистра мантиссы), выход первого разряда которого соединен с информационными входами первых разрядов
Л0„„ 1191909 A первого и второго регистров, информационные выходы блока сдвига подключены к информационным входам (n-1) млацших разрядон втррого регистра, выходы К разрядов которого соединены с адресными входами первого блока памяти (где К вЂ” число старших разрядов второго регистра), выход первого блока памяти подключен к первому входу перного- сумматора, второй вход которого соединен с выходом второго регистра, выходы (t-1 младших разрядов блока сдвига подключены к информационным входам (3-1) младших разрядов первого реИ2 гистра (где 1 — число старших разря- З дов блока сдвига), выход первого регистра соединен с информационным входом третьего регистра, выход первого . сумматора подключен к информа- ционному входу четвертого регистра, выходы К разрядов второго регистра соединены с информационными входами пятого регистра, выход третьего регистра подключен к информационному входу шестого регистра, выход четвертого регистра соединен с входом квадратора, выход которого соединен с информационным входом седьмого регистра, выход пятого регистра соеди.нен с информационным входом восьмого регистра, выход которого подключен к адресному входу второго блока памяти, выход шестого регистра соединен с первым входом второго сумматора, младший разряд второго входа которого через элемент НЕ подключен к выходу первого разряда восьмого регистра, выход седьмого регистра соецинен с входом первой группы со сдвигом на
1191909
20 один разряд в сторону младших разрядов третьего сумматора, вторая группа входов которого подключена к выходам второго блока памяти, выход первого разряда восьмого регистра соединен с управляющим входом коммутатора, первая группа информационных входов которого соединена с выходом третьего сумматора, выходы которого соединены с информационными входами второй группы со сдвигом на один разряд в сторону младших разрядов коммутатора, выход которого соединен с информационным входом выходного регистра мантиссы, выход которого подключен к выходу мантиссы устройства, выход второго сумматора соединен с информационным входом выходного регистра порядка, выход кото" рого соединен с выходом порядка устройства, первый вход блока синхронизации подключен к входу пуска устройства, второй вход блока синхро.низации соединен с входом сброса устройства, первый выход режима блока синхронизации подключен к выходу считывания устройства, первый выход синхроимпульсов блока синхронизации соединен с синхровходами входных реИзобретение относится к вычислительной технике и предназначено для использования в универсальных и специализлрованных вычислительных уст» ройствах при обработке больших массивов данных, в формате с плавающей запятой.
Цель изобретения — повьппение быстродействия, На фиг. 1 представлена функциональная схема устройства для потенцирования массивов двоичных чисел; на фиг. 2 - блок синхронизации; на фиг ° 3 - временные диаграммы работы устройства, Устройство для потенцирования массивов двоичных чисел содержит входной регистр порядка 1, входной регистр мантиссы 2, блок сдвига.3 первый и второй регистры 4 и 5, первый блок памяти 6, первый сумматор гистров порядка и мантиссы, второй выход синхроимпульсов блока синхрони-зации подключен к синхровходам первого и второго, регистров, третий выход синхронмпульсов блока синхронизации соединен с синхровходами третьего, четвертого и пятого регистров, четвертый выход синхроимпульсов блока синхронизации подключен к синхровходам шестого, седьмого и восьмого регистров, пятый выход синхроимпульсов блока синхронизации соединен с синхровходами выходных регистров порядка и мантиссы, второй выход синхроимпульсов блока синхронизации подключен к синхровходам. первого и второго регистров, третий выход, синхроимпульсов блока синхронизации соединен с синхровходами третьего, четвертого и пятого регистров, четвертый выход синхроимпульсов блока синхронизации подключен к синхровходам шестого, седьмого и восьмого регистров, пятый выход синхроимпульсов блока синхронизации соединен с синхровходами выходных регистров порядка и мантиссы, второй выход режима блока синхро" низации подключен к выходу записи устройства, 2
7, третий, четвертый и пятый регистры 8, 9 и 10, квадратор 11, шестой, седьмой и восьмой регистры 12, 13 и 14, второй блок памяти 15, эле5 мент HE 16, второй и третий сумматоры 17 и 18, коммутатор 19, выходной регистр порядка 20, выходной регистр мантиссы 21, блок синхрони, зации 22 с входами 23 и 24 и выхода10 ми 25-31, Блок синхронизации 22 (фиг. 2 ) содержит генератор импульcos 32, элемент И 33, триггер 34 и сдвиговый регистр 35, причем прямой выход генератора импульсов 32 соединен со стробирующим входом триггера 34, а инверсный выход — со стробирующим входом сдвигового регистра
35 ° Вход "C6puc 24 соединен с входами сброса триггера 34 и сдвигового регистра 35. Вход "Пуск" 23 соединен с первым входом элемента И 33, х = z„° 2
Х=Z + 2
3 11919 второй вход которого соединен с инверсным выходом триггера 34, Выход элемента И 33 соединен с информационным входом триггера 34, прямой выход которого соединен с информационным входом сдвигового регистра 35.
Выход первого разряда сдвигового регистра 35 соединен с выходом 25
"Считывание" блока синхронизации 22, выход третьего разряда — с выходом 10
26, выход пятого разряда — с выходом
27, выход седьмого разряда — с выходом 28, выход девятого разряда — с выходом 29, выход одиннадцатого разряда — с выходом 30, выход тринадцатого разряда — с выходом 31 "Запись" блока синхронизации 22, первый выход
26 блока синхронизации 22 соединен с синхровходами выходных регистров порядка и мантиссы 1 и 2, второй вы- 20 ход 27 — с синхровходами первого .и второго регистров 4 и 5, третий и четвертый выход 28 — с синхровходами третьего, четвертого и пятого регистров 8, 9 и 10, четвертый выход 29 — 25 с сихровходами шестого, седьмого и восьмого регистров 12, 13 и 14, пятый выход 30 — с синхровходами выходных регистров порядка и мантиссы 20 и 21.
Выходы входного, регистра порядка З0
1 соединены с управляккцими входами блока сдвига 3, информационные входы которого соединены с выходами всех разрядов входного регистра мантиссы
2, исключая первый (знаковый ). Выход первого разряда входного регистра мантиссы 2 соединен с входами первых разрядов первого и второго регистров
4 и 5, входы остальных разрядов it;оторых соединены с выходами блока 40 сдвига 3 ° Выходы второго регистра 5 соединены с первыми входами первого сумматора 7,. вторые входы которого соединены выходами первого блока памяти 6. Кроме того, выходы К старших45 разрядов второго регистра 5 соединены с адресными входами первого блока памяти 6 и входами пятого регистра
10. Выходы первого сумматора 7 соединены с входами четвертого регистра
9. Выходы. четвертого регистра 9 соединены с входами квадратора ll, выходы которого соединены с входами седьмого регистра 13. Выходы пятого регистра 10 соединены с входами вось мого регистра 14. Выходы восьмого егистра 14 соединены с адресными ходами второго блока памяти 15, 09 4
Кроме этого, выход первого разряда восьмого регистра 14 соединен с входом элемента НЕ 16 и управляющим вхо дом коммутатора 19. Выходы второго блока памяти 15 соединены с вторыми входами третьего сумматора 18, первые входы которого соединены с выходами седьмого регистра 13 со сдвигом на один разряд влево. Выходы третьего сумматора 18 соединены с первыми входами коммутатора 19 со сдвигом на один разряд вправо. Вторые входы коммутатора 19 соединены с выходами третьего сумматора 18 без сдвига, Выходы коммутатора соединены с. входами выходного регистра мантиссы 21. Выход элемента НЕ 16 соединен с вторым входом младшего разряда второго сумматора 17. На вторые входы остальных разрядов второго сумматора 17 подан потенциал "0", Первые входы второго сумматора 17 соединены через шестой и третий регистры 12 .и 8 с выходами первого регистра 4. Выходы второго сумматора 17 соединены с входами выходного регистра порядка 20, Коммутатор может быть выбран любым обладающим достаточным быстродействиеМ.
Блок сдвига легко построить при помощи селекторов-мультиплексоров.
Принцип построения быстродействующего сдвигателя известен, Первый-восьмой регистры 4, 5, 8, 9, 10, 12,. 13 и 14 предназначены для кратковременного запоминания результатов промежуточных вычислений и для обеспечения конвейерного способа обработки. Регистры 5, 9 и 13 имеют разрядность и, регистры 4, 8 и 12разрядность 1, а регистры 10 и 14разрядность К, при этом f = 2 -1, а К определяется иэ условий приближения.
Вычисление функции у 2 от арк гумента х (I x 1с 2 к.) производится следующим образом.
В форме с плавающей запятой аргумент х представляется в виде где z„мантисса аргумента (0,5 < ((z ((1)
z — порядок аргумента (lggC2 ) ..
Денормализуем аргумент, т,е, представим его в виде .целой и дробной части
1191909 где х — целая часть аргумента (!зф<2 ); а4 — дробная часть аргумента
О z4« i) °
Заметим, что знак z и z onpe4 деляется знаком мантиссы аргумента.
Вычисление функции у 2" произведем следующим образом .
2х 2 5 14 22%,2 4 При положительном аргументе х величина к4 также положительна и имеет место выражение
1 4 2 а2 I
При отрицательном аргументе х (z4 (0) .
0,5(2 (1
Поэтому при отрицательном аргу24 менте величина 2 представляет собой мантиссу выходного числа, а величина
z — порядок. При положительном аргу4 25 менте величину можно нормализовать путем сдвига на один разряд вправо.
В этом случае мантисса выходного числа равна 0 5 .2 " а порядок - z3 + 1, 2
Денормализация аргумента производится; блоке сдвига 3.
Вычисление функции .у 2 (1z41а1) г4 производится на основе метода сегментной аппроксимации выражением у
z.
° А + 0,5 (х + В), где константы А и В выбираются из условия минимизации абсолютной погрешности.
Диапазон изменения аргумента (-1 z 4 С I} разбивается на интервалы, количество которых определяется требуемой точностью, причем границы
40 интервалов выражаются К старшими разрядами аргумента.
На разных интервалах константы
А и В имеют различные значения, Константы В хранятся в первом блоке памяти 6, а константы А — во втором блоке памяти 15. Адресация к каждому. блоку памяти осуществляется по К старшим разрядам аргумента, которые определяют в каком интервале находится аргумент, .
Устройство работает следующим образом.
Перед началом работы устройства по сигналу "Сброс" 24 (фиг, 3 а) триггер 34 и сдвиговый регистр 35 блока синхронизации 22 приводятся в исходное состояние. По сигналу."Пуск"
23 (фиг. 3 б ) элемент И 33 пропускает си.нал с инверсного выхода триггера 34 на информационный вход этого же триггера. Триггер 34 работает в режиме деления частоты генератора импульсов 32 (фиг, 3 в ) на два (фиг. 3 г ), По заднему фронту сигнала генератора импульсов 32 информация с выхода триггера 34 заносится в сдвиговый регистр 35. В результате работы устройства на выходах 25-31 блока синхронизации 22 вырабатывается, "лесенка" импульсов управления внутренних регистров устройства и внеы-, Ф них схем памяти. При этом выход 25
"Считывание"(фиг, 3 д )используется для управления считывания очередного слова данных из внешней памяти, выход 26 (фиг. 3 е) — для управления заносом чисел в регистры 1 и 2, выход 27 (фиг. 3 к) - в регистры 4 и
5, выход 28 (фиг. 3 л) — в регистры
8-10, выход 29 (фиг. 3 м) — в регистры 12-14, выход 30 (фиг. 3 н) в регистры 20 и 21, выход 31 (фиг. 3 о) - для управления записью результата во внешнюю память. После снятия сигнала "Пуск" 23 блок синхро г низации 22 прекращает вырабатывать сигналы управления, начиная с верхних ступеней конвейера. Таким образом обеспечивается корректное завершение обработки операндов, находящихся во внутренних регистрах устройства во время снятия сигнала
"Пуск" 23, В первом такте работы устройства в регистр 1 поступает порядок аргумента х1, а в регистр 2 — мантисса.
С выхода регистра 1 значение поряц— ка аргумента поступает на управляю.щие входы блока сдвига 3. При этом первый (знаковый) разряд указывает на направление сдвига ("1" — сдвиг вправо, "0" — сдвиг влево ), а число, определяемое разрядами 2-ш регистра
1, — на количество сдвигов. Значащие разряды регистра мантиссы 2 (2-и) поступают на информационные входы блока сдвига 3, где производится денормализация аргумента х„.
Во втором такте значение знака аргумента х„ записывается в первые (знаковые) разряды регистров 4 и
5, в разряды 2 — 7 регистра 4 записывается целая часть аРгумента х, а в разряды 2-и регистра 5 — дробная
7 1191 часть аргумента х . В регистры 1 и
2 записываются значения порядка и мантиссы нового аргумента х . С выхода регистра 5 значение дробной части аргумента х1 поступает на сумматор 7. Одновременно из блока памяти 6 по адресу, указанному К старши . ми разрядами дробной части аргумента х, выбирается константа В и также поступает на. сумматор 7. В сумматоре )р
7 производится выработка суммы z4 +
+ В(4!.
В третьем такте значение z + В(! (1)
4 записывается в регистр 9 и возводится B квадрат в квадраторе 11. Одновременно значение К старших разрядов ,дробной части аргумента х записывается в регистр 10, а целая часть ар гумента х иэ регистра 4 переписывается в регистр 8. В том же такте в ре- 2р гистры 1 и 2 заносятся порядок и мантисса нового числа х» а в регистры
4 и 5 - целая и дробная части числа х2, °
В четвертом такте значение (z + 25 (1) 2
+ В ) записывается в регистр 13 и со сдвигом на один разряд вправо поступает на сумматор 18. Одновременно значение К старших разрядов аргу- . мента х„ из регистра 10 переписывает-30 ся в регистр 14 и поступает на адресные входы блока памяти 15, откуда . выбирается соответствующая константа
А и поступает на второй вход сум(1) матора 18, где формируется. значение у = А(" + 0,5(z(") + В ) . С выхо-да сумматора 18 значение у(1 поступает на вход коммутатора 19. Если аргумент х1 имеет положительный .знак, 909 то в первом разряде регистра 14 хранится "0" и значение у(1) поступает на вход регистра 21 через коммутатор !
9 со сдвигом на один разряд вправо, т.е. нормализуется, а на второй вход младшего разряда сумматора 17 через элемент НЕ 16 поступает значение "1", На первые входы сумматора 17 с выхода регистра 12 поступает значение целой части аргумента х . На выходе
1 сумматора 17 формируется значение г + 1. Если аргумент х имеет от(1)
1 рицательный знак, то значение "1", поступающее с выхода первого разряда регистра 14 на управляющий вход коммутатора 19, разрешает прохождение значения у(") с выхода сумматора 18 на вход регистра 21 без сдвига, а на вход младшего разряда сумматора 17 через элемент НЕ 16 поступает "0".
В этом случае на выходе сумматора
17 значение z("). В этом же такте в регистры 1 и 2 заносится порядок и мантисса нового аргумента х . в ре4 У гистры 4 и 5 — значения z® и г (2 для аргумента х> а в регистры 8, 9 и и 10 — значения г(2) z (2 + В (2) и
4 значение К старших разрядов z(2) сост»
4 ветственно.
В пятом такте в регистр 20 заносится порядок выходного числа, а в регистр 21 - мантисса. В регистры 1 и 2 заносится. новый аргумент х а в
54 регистры 4, 5, 8, 9, 10, 12, 13 и !4результаты промежуточных вычислений над числами х4, х и х2. Регистр 20 имеет разрядность P + I чтобы исключить переполнения сумматора 17.
1191909
1191909
„Зались
„Счотыймис
Пуск
Мр
Составитель А, 1Чуляпов
Редактор М. Дылын Техред М.Кузьма Корректор А, 0бруцар
Заказ 7164/46 Тираж 709 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д, 4/5
Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4