Конвейерное устройство для вычисления функции @ = @

Иллюстрации

Показать все

Реферат

 

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

Союз Советск нх

Соцнвлнстнческнк

Респубпнн

<»>964635

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (6l ) Дополнительное к авт. свид-ву (22) Заявлено, 09.03 81(2! ), 3255903у18 24 (51)Л%. Кл.

Cj 06 F 7/556 с присоединением заявки М

ВкударетеснеИ кенитет

СССР ао лелем яэебретекмй я открытка (23) Приоритет

Опубликовано 07.10.82. Бюллетень М37

Дата опубликования описания 10.10.82 (53} УДК 681 325 (088.8) (72) Авторы изобретения

А. А. Мельник и И. С. Осипищин

Львовский ордена Ленина политехнический институт им. Ленинского комсомола (71) Заявитель (54) КОНВЕЙЕРНОЕ УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ

ФУНКЦИИ Х = 6п Х

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

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

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

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

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

Известное устройство аппаратно реализует операцию вычисления функции Y= Ь К.

Быстродействие устройства при вычислении функции 1 = Eh не превышает вреинверсным выходом знакового разряда и выходом старшего разряда первого регистра, прямой выход которого соединен с первым входом первого сумматора, второй вход которого соединен с выходом первого коммутатора, первый и второй управляюшие входы которого соединены соответственно с инверсным и прямым выходами элемента И и соответственно с первым и вторым управляюшими входами второго коммутатора, первый и второй ин формационные входы которого соединены второй входы второго сумматора соединены соответственно с выходом второго регистра и выходом второго коммутатора, первый и второй информационные входы первого коммутатора соединены соответст венно с прямым и инверсным выходами первого регистра, выходы первого и втоФ рого сумматоров 2-ro блока вычисления итерации (1 1, 2, ..., 2П -3), соедиНЕНЫ СОО BBTCTBBHHO С ИкфОРМВЦИОННЫМИ входами первого и второго регистров (+ 1)-го блока вычисления итераций, выходы входного сумматора и входного коммутатора соединены соответственно с информационными входами первого и второго регистров первого блока вычисления итераций, выходы первого и второго суммматоров (2п -2)-го блока вычисления итераций соединены соответственно с информационными входами второго и первого выходных регистров, выход блока управления соединен с управляюшими входами. всех регистров, первый и второй входы блока управления соединены соотблок управления содержит счетчик, элемент

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

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

Конвейерное устройство для вычисления фукции Y Х содержит регистр 1 входной элемент И 2, коммутаторы 3 и

4 входные, сумматор 5 входной, блоки 6

3 964635 4 мени Г 2,5 0 t с„,, где rt - разрядность обрабатываемых операторов; 1 с„,время суммирования двух чисел на сумматоре. При реализации известного устройства необходимо ПЗУ для хранения 2q констант, а также микропрограмм блока микропрограммного управления )2J

Недостатком известного устройства является низкое быстродействие и большие

I объемы дорогостоящих ПЗУ для хранения 10 констант и микропрограмм.

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

Поставленная цель достигается тем, что в конвейерное устройство для вычисления функции У Ь Х, содержвшее входной регистр, первый входной регистр, входной сумматор и выходной сумматор, первый вход которого соединен с выходом первого выходного регистра, первый вход вход- g0 ного сумматора соединен с прямым выходом входного регистра, дополнительно введены (2 и -2) блоков вычисления ите, рации (где. и - разрядность аргумента), второй выходной регистр, выходной комму-у5 твтор, два элемента И, регистр результата, блок управления и два входных коммутатора, причеы информационный вход входного регистра соединен с входом аргумента устройства, инверсный выход знакового 50 разряда и прямой выход старшего разряда входного регистра соединены соответственно с входами первого элемента И, прямой и инверсный выходы которого соединены соответственно с первыми и вторыми управЗ5 ляющими входами первого и второго входных коммутаторов, первый и второй информационные входы первого входногО комму- ветственно с входом задания длины мастатора соединены соответственно с прямым сива и входом пуска устройства, причем и инверсным выходами входного регистра, 40 первый и второй информационные входы второго входного коммутатора соединены с входами задания констант устройства, выход первого входного коммутатора соединен с вторым входом входного сумма45 тора, инверсный выход знакового разряда ны соответственно с вторым входом блои прямой выход старшего разряда второго ка управления и выходом элемента ИЛИвыходного регистра соединены соответственно с первым и вторым управляющими входами выходного коммутатора, информа- с первым входом блока управления, счетционные входы которого соединены с вхо- 50 дами задании констант устройства, выход выходного коммутатора соединен с вторым входом выходного сумматора, выход которого Соединен с информационным входом регистра результата, причем каждый блок вычисления итерации содержит два регистр рв, два коммутатора, два сумматора и элемент И, входы которого соединены с

Таким образом, в первом такте, если знак К отрицательный, то через комму-ь татор 3 на сумматор 5 по сигналу с прямого выхода элемента И 2 проходит инверсный код содержимого регистра 1, сдвинутый на один разряд вправо, т. е.

Х, 2 где суммируется со значением

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

8 первого блока 6 вычисления итерации поступает обратимый код 8п (l -2 ")., Ha сумматоре 5 формируется выражение

Х = Хо — Х . 2, а на выходе коммутатора 4 - выражение Y„= — Cn (1-2 ).

Если же знак . положительный, то через коммутатор 3 на сумматор 5 по сигналу с инверсного выхода элемента И 2 проходит прямой код содержимого регист ра 1, сдвинутый на один разряд вправо, а через коммутатор 4 по тому же управляю- . щему сигналу на входы регистра 8 первого блока 6 поступает обратный код Ь (1 + 2 ), образованный, как и код

6л (1 - 2 ), на информационных входах коммутатора 4 монтажным способом. На сумматоре 5 формируется выражение

Х = Хо Хо. 2 1, а на выходе коммутатора 4 - выражение (=- л (1+2 ), ф

Во втором такте производится запись результатов вычисления из первой ступени конвейера о вторую: запись полученного на сумматоре 5 числа М - в регистр

7 первого блока 6 и числа Y< с выходов коммутатора 4 - в регистр, 8 первого вы числительного блока 6. Одновременно в регистр 1 поступает, значение второго операнда.

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

:вой итерации над первым операндом, а . во второй ступени конвейера, которой является первый блок 6 вычисления итерации, выполняется вторая итерация над первым операндом, и на сумматоре 12 получается число Xg, а на сумматоре 13число YgB третьем такте результаты вычислений, полученные во второй ступени конвейера записываются в третью ступень, а результаты первой - во вторую. В регистр

1 поступает третий операнд.

В дащнейшем результаты предыдуших блоков поступают Ь последующие блоки, а в регистр 1 поступает новый операнд и т. д., причем в каждом четном и следующем:за ним блоке. промежуточные результаты с коммутатора 10 поступают на сум5 9646 вычисления итерации, каждый из которых содержит регистры 7 и 8, элемент И 9, коммутаторы 10 и 11 и сумматоры 12 и 13. Кроме того, устройство содержит регистры 14 и 15 выходные, элемент 5

16 И, коммутатор 17 выходной, сумматор 18 выходной; регистр 19 результата, блок 20 управления, входы 21 и 22 блока управления ив выход 23 блока управления. о

Блок 20 управления содержит триггер ,24, генератор 25 импульсов, элемент И

26, счетчик 27 и элемент ИЛИ-НЕ 28.

На первый и второй информационные входы второго входного коммутатора 4 подаются константы соответственно

60 (1 + 2 ) и Сп (1 - 2 ), на первый и второй-информационные входы выходного коммутатора 17 подаются константы соот- ветственно 0h (1+2 +" ) и (Л (1 — 2 2о

Значения констант, подаваемых H& пер-. вый и второй информационные входы второ« го коммутатора 11 каждого блока 6 вычисления итераций, указаны ниже.

Алгоритм вычисления функции Y = (A X 2$ описывается следующими итерационными формулами: х„, = x„„. Г,„х„а-""; У„,„= „-fn()+ E„"2 "(" ;

Signs - sign (< - (, ), зю где j i/2 + I при 1 четном

"- y q (2 при Ф нечетном которые при начальных значениях хо = Х, У = О, дают после 2 у итераций У „= И X .

Коммутаторы 10 каждого блока 6 со-. держат две группы элементов И на п-К() входов, объединенных элементом NIH.

Устройство работает следующим образом е 49

В первом такте в регистр 1 поступает значение операнда в обратном коде в форме с фиксированной запятой. При помощи элементов И 2, И 16 и И 9, каждого бло ка 6 находится знак (1- Ц), который определяется из соотношения

Х, если Х;

Я, п(Х)

Поскольку значение X„ не превышает двух. т. е. число (1 может иметь лишь один двоичный разряд для отображения .его целой части, то можно записать

sign Й,„ =-5(фп (4-.xi) = Hying, где Q - значение знакового разряда регистра 1;

0 - значение первого разряда регистра 1, обозначающего целую часть числа.

7 964 матор 12 со сдвигом на один разряд вправо большим, чем в редыдуших двух блоках, а в выражениях логарифмов, которые подаются монтажным способом на коммутатор 11, степень двойки возрастает на.еди-0 ницу.

В 2й -м такте сформированное на сумматоре 13 (2 l -2)-го блока 6 вйчислении итерации выражение записывается в регистр 15, а содержимое знакового и 10 первого разряда сумматора 12 (2п 2) го блока 6 переписывается в регистр 14, информация с выходов которого поступает на элемент И 16,„сигналы с прямого и инверсного выходов которой управляет прохождением на сумматор 16 эначени.. 0 (1 +2 ") или 6п (1 -2 ") через коммутатор 17. На сумматоре 18 форми-, руется значение искомой функции от первого операнда. Одновременно результаты 20 обработки всех последующих операндов сдвигаются на одну ступень вниз и производится их обработка.

В (2й + 1) м такте на выходном регистре 19 получается первый результат, 2S а в дальнейшем в каждом такте на выходе будет появляться новый результат, т. е. результат вычисления функции Т» 6ll k от первого операнда массива чисел будет получен через 2 tl тактов; а от каждого по-З0 следующего операнда массива - через один такт.

Тактовые импульсы, управляющие работой устройства генерирует блок 20 управления, 33

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

4S т tсм+ С ком 7 где - время суммирования на сумматоре;.

1. - задержка информации коммутаTOPOM °

По быстродействию предлагаемое уст

50 ройс тво значительно превосходит извесь иое. В предлагаемом устройстве при обработке массивов чисел быстродействие повышено в 2,5„. gñì

+25 п Рскь см

Кроме того, в предлагаемом устройстве иег необходимости хранить в ПЗУ кон635 станты, количество которых равно 2 ll, поскольку они подаются на схемы устройства монтажным способом, а также не нужно ПЗУ для хранения микропрограмм сложного блока микропрограммного управления, так как управление устройства осуществляется от простого блока управления, Предлагаемое устройство обладает высокой однородностью структуры, что позволяет его реализовать в виде больших, интегральных схем.

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

1. Конвейерное устройство для вычисления функции Y g rt Х, содержащее входной регистр, первый выходной реги=тр, входной сумматор и выходной сумматор, первый вход которого соединен с выходом первого выходного регистра, первый вход входного сумматора соединен с прямым выходом входного регистра, о тл и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в него введены (2 и -2) блоков вычисления итерации (где ll - разрядность аргумента), второй выходной регистр, выходной коммутатор, два элемента И, регистр результата, блок управления и два входных коммутатора, причем информационный вход входного регистра соединен с входом аргумента устройства, инверсный выход знакового разряда и прямой выход старшего разряда входного регистра соединены соответственно с входами первого элемента

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

964635 старшего разряда второго выходного регистра соединены соответственно с первым и вторым управляющими входами выходного коммутатора, информационные входы которого соединены с входами за- 5 дания констант устройства, выход выходного коммутатора соединен с вторым входом выходного сумматора, выход которого соединен с информационным входом регистра результата,, причем каждый блок вы- >4 числения итерации содержит два регистра, два коммутатора, два сумматора и элемент И, входы которого соединены с ин« версным выходом знакового разряда и выходом старшего разряда первого регистра, l5 прямой выход которого соединен с первым входом .первого сумматора, второй вход которого соединен с выходом первого коммутатора, первый и второй управляющие входы которого соединены соответст 24 ,венно с инверсным и прямым выходами элемента И и соответственно с первым и вторым управляющими входами второго коммутатора, первый и второй информационные входы которого соединены с вхо-25 дами констант устройства, первый и второй входы второго сумматора соединены соответственно с выходом второго регистра и выходом второго коммутатора, первый и второй информационные входы первого З4 коммутатора соединены соответственно с прямым и инверсным выходами первого регистра, выходы первого и второго сум. маторов с -го блока вычисления итерации (Ф 1, 2,... j 2 и 3) соединены соот"ветственно с информационными входами первого и второго регистров (4 + 1)-го блока вычисления итераций, выходы вход ного сумматора и входного коммутатора соединены соответственно с информационными входами первого и второго регистров первого блока вычисления итераций, выходы первого и второго сумматоров (2 Л-2)-го блока вычисления итераций соединены соответственно с информационными входами второго и первого вьмодных регистров, выход блока управления соединен с управляющими входами всех регист ров, первый и второй входы блока управ ления соединены соответственно с входом задания длины массива и входом пуска устройства.

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

° мента и выходом блока управления.

Источники информаций, принятые во внимание при экспертизе

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

% 590733, кл. 4 06 Ф 7/38, 1978.

2. Байков В. Д., Смолов В. Б. "Аппаратная рещщэация элементарных функций в БВМ . .Изд-во ЛГУ 1975.

964635

Составитель А. Зорин

Редактор Л. Гратилло Техред М. Рейвес . Корректор Г. Огар

Заказ 763 1/2 9 Тираж 73 1 Подписное

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

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

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