Матричный параллельный процессор

Иллюстрации

Показать все

Реферат

 

Изобретение относится к области вычислительной техники и может быть использовано .в устройствах шифрования , кодирования, декодирования и распознавания сигналов, а также в устройствах обобщенного спектрального анализа и фильтрации, основанных на алгоритмах быстрых дискретных преобразований . Цель изобретения - повышение производительности устройства. Цель изобретения достигается за счет введения в процессор блока выбора режима работы,имеющего сложную структуру , с соответствующими связями между ним и известными блоками процессора . Применение в изобретении параллельно-последовательной конвейерной структуры вычислений по методу быстрых дискретных преобразований позво- Q ляет достичь положительного эффекта. ® 2 з.п. ф-лы, 15 нл. (D

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

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

РЕСПУБЛИН

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ с

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

К АВТОРСКОМ .Ф СВИДЕТЕЛЬСТВУ (21) 3777276/24-24 (22) 25.07.84 (46) 23.05.86. Бюл. Ф 19 (71) Институт физики полупроводников

СО АН СССР (72) А.В. Ржанов, Н.Д. Новоселов, Г.А. Кухарев и E.È. Черепов (53) 681.325(088.8) (56) Авторское свидетельство СССР

Ф 478306, кл. С 06 F 15/20, 1973.

Патент Франции Ф 2484672, кл. G 06 F 15/332, опублик. 1981. (54) МАТРИЧНЫЙ ПАРАЛЛЕЛЬНЫЙ ПРОЦЕССОР (57) Изобретение относится к области вычислительной техники и может быть использовано,в устройствах шифрования, кодирования, декодирования и рас. SU„„1233169 А 1

G 06 F 15/347 познавания сигналов, а также в устройствах обобщенного спектрального анализа и фильтрации, основанных на алгоритмах быстрых дискретных преобразований. Цель изобретения — повьппение производительности устройства.

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

2 э.п. ф-лы, 15 ил.

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

Цель изобретения — повьш ение производительности устройства, 19

На фиг. 1 представлена схема матричного параллельного процессора быстрых дискретных преобразований в базисе Уолша-подобных функций; на фиг. 2 — структурная схема вычислительного модуля; на фиг. 3 — структура операционного элемента (03) на фиг. 4 — функциональная схема блока выбора режима работы и его связь с коммутаторами операционных элементов одного из вычислительных модулей (элементы коммутации изображены по одному разряду); на фиг. 5 — таблица состояний коммутаторов четырех операционных элементов одного из вычислительных модулей в зависимости. от значений управляющих сигналов с блока выбора режима работы и блока управления и синхронизации; на фиг, 6-11 класс выполняемых вычислительным ма- ЗО дулем преобразований; на фиг. 12 (таблицьг некоторых матриц В„ выполняемого преобразования; на фиг. 1315 — временные диаграммы работы ОЭ, вычислительного модуля и процессора в конвейерном режиме (при этом на фиг. 15д — полный цикл работы процессора, когда одновременно можно обрабатывать восемь потоков данных, гУ вЂ” режим 4, при котором данные не проходят обработки в процессоре, и

6 — режим, когда один из уровней операционных элементов в вычислительном модуле находится:s состоянии прямого пропускания).

11 5

Процессор содержит шестнадцать информационных входов 1, шестнадцать выходов 2, два столбца четырехвходовых вычислительных модулей (ВМ) 3

r" О по четыре в каждом, блок 4 управления и синхронизации (БУС), блск 5 выбора режима работы (БВРР), входы 6-9 кода режима работы устройства, с первого по восьмой выходы 10-17 БВРР 5. Входы 6-9 подключены к соответствующим выходам БУС. Выходы с 10 по 17 БВРР через одноименные шины подключены соответственно к входам кода операции вычислительного модуля с первого по восьмой. Входы ВИ первого столбца соединены с входами 1 процессора, первьй, второй, третий и четвертый выходы каждогс i го (i=1,4) ВМ rгepвого столбца — соответственно с каждым 1-м информационным входогл первого, второго, третьего и четвертого

BN второго столбца, а выходы ВМ второго столбца — с выходами 2 процессора. BN содержит четыре информационных входа 18, четыре выхода 19, четыре одинаковых 03 20, образующих матрицу

2х2, первые два входа 18 подключены к информационным входам ОЭ первого столбца первой строки, третий и чет— вертый входы 18 — к информационным входам 03 первого столбца второй строки, а первый и второй выходы

1(— ro (К = 1,2) 03 первого столбца соединены соответственно с К-информационными входами 03 первой и второй строки (столбца). Выходы 03 первой строки второго столбца подключены к первому и второму выходам 19, а вы— ходы 03 второй строки второго столбца — к третьему и четвертому выходам

i9. Выходы 10 и 11 подключены соответственно к первому и второму входам .кода операции 03 первого столбца, выходы 12 13 — соответственно к третьим входам кода операции ОЭ первого столбца первой и второй строк, выходы 14 и 15 — соответственно к второму и первому входам кода операции 03 второго столбца, выходы 16 и

17 — ссответственно к третьим входам кода операции 03 второго столбца первой и второй строк. ОЭ содержит первый 21 и второй 22 информационные входы, первый 23 и второй 24 регистры входных данных, первый 25 и второй 26 коммутаторы, первый 27, второй 28, третий 29 и четвертьп 30 буферные регистры, первый 31 и втарои 32 сумматоры, ервыи 33 и второи

34 регистры выходных данных, первый и второй информационные выходы 35 и

36 соответственно. Входы 10 — 12 (13) подключены соответственно к первому, второму, третьему управляющим входам коммутаторов 25 и 26, входы 21 и 22 к информационным входам регистров 23 и . 24 соответственно, выходы которьгх подключены к информационным входам коммутаторов 25 и 26 соответственно, Первыйл выход 37 коммутатора 25 подключен к информационному входу регистра 33, второй выход 38 — к информа1233 <,<1 ционному входу реги<.трл 27, третий ных<>д — к информационному входу регистра 29, первый выход 42 коммутатора

26 — к информационному входу регистра 34, второй выход 4 1 — к информа— ционному входу регистра 30, а третий выход 40 — к информационному входу регистра 28, при этом вход 12 (13) кода операции ОЭ соединен с входом чтения записи регистра 30, инверсный 1О выход которого подключен к первому, а выход регистра 29 — к второму ин— формационным входам сумматора 32, вход младшего разряда которого подключен к четвертому входу кода one- 15 рации ОЭ. Выходы регистров 27 и 28 подключены к входам сумматора 31, выходы сумматоров 31 и 32 — соответственно к информационным входам ре— гистров 33 и 34, выходы которых 35 20 и 36 соответственно являются первым и вторым входами ОЭ. Коммутаторы 25 и 26 имеют выходы 37-42.

Блок выбора режима работы содержит элементы И вЂ” НЕ с первого по четвертый 43 — 46, первый 47 и второй 48 элементы ИЛИ-НЕ, первый 45 и второй

50 элементы HE. Вход 6 подключен к первому входу первого элемента ИЛИ-НЕ, инверсному входу первого и прямому входу второго элементов И-НЕ, вход 7 к прямому входу первого, инверсному входу второго элементов И-НЕ и второму входу первого элемента ИЛИ-HE вход 8 — к первому входу второго

35 элемента ИЛИ-НЕ, инверсному входу третьего и прямому входу четвертого элементов И-HF. вход 9 — к второму входу второго элемента

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

10 и входу первого элемента НЕ, выход которого подключен к выходу 11.

Инверсные выходы первого и второго 45 элементов И-HE соединены с выходами

12 и 13, инверснь<й выход второго элемента ИЛИ вЂ вЂ” с выходом 14 и входом второго элемента НЕ, выход которого подключен к выходу 15, инверсные вы- 5п ходы третьего и четвертого элементов

И-НŠ— к выходам 16 и 17.

Коммутаторы представляют собой линейку двух 51 и трехвходовых 52 элементов И, иа один из входов кото55 рой подается значение операнда, а на другие три — <.игналы управления.

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

На вх<1дь> 21 и 22 ре1 и< тр<>н 3 и

24 входных данных поступлют выходные операнды а и < соответственно. С выхода регистра 23 операнд с> поступает нл инф<.рмационный вход коммутато— рл 25 и под действием управляк>шпх сигналов, поступлн>щих нл входы 10-12, либо проходит на прямую с вь>хода 37 коммутатора 25 нл вход регистра 33 внходных данных, либо идет с выхода

38 на вход выходного регистра 27 сумматора, либо с. выходов 38 и 39 поступает на входы регистров 27 и 29 соответственно. Аналогично операнд 8 с выхода регистра 24 поступает на информационный выход коммутатора.26 и под дейстнием тех же управляющих сигналов, поступающих на входы 10-12, лиоо проходит с выхода 42 коммута— тора 26 на вход регистра 34, либо идет с выхода 41 на вход входного регистра 30 сумматора, либо с выходов 40 и 41 поступает на входы регистров 28 и 30 соответственно. При значении упранляющих сигналов, поступающих на входы 6 и 7 (или 8 и 9), т.е. сигналов, инициирующих работу двух ОЭ одного столбца, равных 00, входные операнды а,l3, с, d прохоцят через оба ОЭ одного столбца без изменений, управляющие сигналы, поступающие на входы 10-12 ОЭ первого столбца первой строки и на входы 10, 11 и 13 ОЭ первого столбца второй строки равны "101" (фиг. 8 и 9),что соответствует прямому прохождению операндов а и Ь через коммутаторы

25 и 26 и их выходы 37 и 42 на входы регистров 33 и 34 соответственно °

При значении управляющих сигналов, поступающих на входы 6 и 7 (или 8 и 9), равных "01" или "10", либо первый, либо второй ОЭ одного столбца пропускает данные на выход без изменения, а с выходов второго либо первого ОЭ того же столбца выдаются значения (о. + с ) и (а — 8 ) . Управляющие сигналы, поступающие на входы

10 — 12 ОЭ первого столбца первой строки (пусть на нходах 6 и 7 будет

"10"), равнь< "011" (например, фиг.8), а сигналы на входах 10 11 и 13 ОЭ первого столбца второй строки — "010". т, е. ОЭ первого столбца первой строки вычлет нл своих выходах значения (с+ Б) и. (д — ь ), а ОЭ первого ь стол<>ца второй строки пропускает вхопные операнды на снои выходы.

Операнды <>, и 6 через выходы 38, 39

1 2 1 1l)9

1 0 0 0 1 1 0 0 а+Ь+с+ 1

1 100

1 — 100

0011

0 01-1 (а+Ь)-(c+d) (a-Ь)+(с-d) (а-Ь)-(с-d) t-1 00

0001

0100001

0001

001 — 1

Х"1= (Z 0B,) Х

55 модуля управляющих сигналов одинако— вые ОЭ модулей могут либо выполнять операции сложения-вычитания поступивших на их информационный вход, либо пропускать данные с входа на выход.

Это позволяет, управляя состоянием

03 выполнять В модулях целыи ряд преобразований (фиг. 6 — 11). Например, при подаче на входы 6 — 9 управ- 10 ляющих сигналов "1111" все модули процессора выполняют преобразование

Уолша-Пэли, В этом случае данные

Х и Х„ „,:поступающие. на первый

4 Е О и второи вход ОЭ первого столбца пер- 15 вой строки каждого ФППЭ первого столбца Г -й строки, сложатся и появятся на первом выходе ОЭ первого столбца первой строки, а их разность — на втором выходе этого 03. Таким образом,20 на первом выходе 03 первого столбца первой строки каждого модуля нервого столбца г, -й строки получаем Х Е + Е+о

+ Х, +,, а на втором выходе — Х Е+ О

Х„, „.

Ф .

ОЭ первого столбца второй строки каждого модуля первого столбца Г -й строки выполняет аналогичные операции

Данными X e H X I+ постУпившими на его первый и второй входы соответственно, в результате чего на первом . его выходе образуется сумма X +Х Е -Ы а на втором выходе — разность Х чЕ+ Е з 35

С первых выходов ОЭ первого столбца первой и второй строк результаты поступают на первый и второй входы где а, Ь, с и d — входные данные, поступающие на информационные входы модуля. В общем случае каждый модуль

4 может выполнить 2 =16 преобразований вида

Ь

Y= B„г г где В„- матрица выполняемого преобразования (примеры в таблице 2,фиг., фиг. 12) . соответственно ОЭ второго столбца пер вой строки каждого модуля, на первом вьгходе которого образуется их сумма (Х + Х ) + (Х + X ), e„ЧЕ+1 Е+г „e » а на втором выходе — результат их вычитания

Полученные результаты передаются далее на первый и второй выходы модуля соответственно. Результаты с вторых выходов ОЭ первого столбца „первой и второй строк поступают на первый и второй информационные входы соответственно ОЭ второго столбца второй строки, где выполняются опера" ции и их результат выдается на первый и второй выходы ОЭ второй строки второго столбца, а с него — на третий и четвертый выходы модуля. Результаты на выходах модуля первого столбца f -й строки появляются одновременно, на этом заканчивается первая итерация быстрого дискретного преобразования, выполняемого процессором.

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

На первой итерации алгоритма быстрого преобразования процессор выполняет с учетом вида матрицы В операции где I — единичная матрица 4-го порядка;

Q») — символ кронекеровского перемножения матриц;

12 (11(Ii

i it х вектор размера 16xi, компОненты которого определены в соответствии со структурой матриц В,.

Результаты выходов каждого модуля первого столбца (— и строки передаются далее на f -тые входы модуля второго столбца, где над ними совершаются 1д операции, аналогичные указанным, а в целом выполняется вторая итерация алгоритма быстрого преобразования

Результаты на выходе модуля второ:го столбца являются результатами вы:полненного быстрого преобразования и передаются на выходы процессора.

Если принять условно время сложения в сумматоре равным 2t хранения-выборки регистров, то в процессоре в общем случае можно одновременно обрабатывать восемь потоков данных (по два потока в каждом ОЭ и, следова—

25 тельно, по четыре потока в каждом модуле. Работа ОЭ, вычислительного модуля и процессора в конвейерном режиме отражена на временных диаграммах (фиг,13 — 15). Функционирование отдельных элементов процессора происходит синхронно по синхросигналам, инициируемым блоком 4, Применение в предложенном процессоре параллельно †последовательн 35 конвейерной структуры вычислений по

i методу быстрых дискретных преобразований позволяет повысить его производительность.

Формула изобретения

1. Иатричный параллельный процессор, содержащий матрицу размером

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

51,1 первого столбца первой строки матрицы подключены к первым информационным входам вычислительных модулей втор(го столбца соответственно nep-.

t вой, второй, третьей, четвертой строк

55 матрицы, первые выходы вычислительных модулей первого столбца второй, третьей и четвертой строк матрицы подключены соответственно к второму,1 тр(ть ему и чет !! ортом у 11 нфii!1! I;1 i1(1(О11111 I; I входам Вичислит е ьн ОГ(t мо, 15 . я 11t 1)

Roti cTpoI(H BT(t()o((! столбца

ТЗыходы вь(чк(литeл!>ных моду!!о!1 !Зто110! о столбца матра™ы, подключены к информационным выходам процессора, о т л и ч а к! шийся тем, что, с целью повышения производительности, он дополнительно содержит блок выбора режима работы, причем первый, второй, третий, четверть!й входы блока выбора режима работы подключены к соответст:-.5ëîùHM входам кода режима процессора, первьп", второй, третий, четвертьй, пятый., шестой„ седьмой и восьмой выходы блока выбора режима работы соединены соотг ветственно с первым, вторым, третьим, четвертым, пятым, шестым, седьмым и восьмым входами кода операции всех вычислительных (J = 1,2,3,4) вычислитепьного модуля х-й строки первого столбца матрицы подключен к i-му информационному входу вычислительного модуля j -й строки второго столбца матрицы (i = 1,2,3,4), причем каждый вы гислительный модуль содержит матрицу размером 2х2 операционных элементов, при этом информационные входы операционных элементов первой строки первого столбца матрицы подключены соответственно к первому и

pTopoMv информационным входам модуля, информационные входы операционных элементов второй строки первого столбца матрицы подключены к третьему и четвертому информационным входам модуля, первые информационные выходы операционных элементов первого столб— ца первой и второй строк матрицы подключены соответс.твенно к первому и второму информационным входам операционного элемента первой строки первого столбца матрицы, а вторые информационные выходы операционных элементов первого столбца первой и вто— рой строк матрицы подключены соответственно к первому и второму информационным входам олерационнь1х элементов второго столбца второй строки матрицы, выходы операционных элементов первой строки второго столбца матрицы подключены к первому и второму информац!(онным выходам модуля, а выходы операционного элемента второй строки второго столбца матрицы — к третьему и четвертому информационным

1 э

25 выходам модуля, причем первый и второй входы кода о!!ерации модуля подключены соответственно к первому и второму входам кода операции операционных элементов первого столбца матрицы, третий и четвертый входы кода операции модуля подключены к третьим входам кода операции операционных элементов первого столбца соответственно первой и второй строки матрицы, пятый и шестой входы кода операции модуля подключены соответственно к первым и вторым входам кода операции операционных элементов второго столбца матрицы, седьмой и восьмой входы кода операции мсщуля подключены к третьим входам кода операции операционных элементов второго столбца соответственно первой и второй строк матрицы.

2. Процессор по п.1, о т л и ч а ю шийся тем, что операционный элемент содержит первый и второй сумматоры, первый и второй регистры входных данных, первый и второй ре-! гистры выходньгх данных, четыре буферных регистра, первый и второй коммутаторы, причем первый и второй информационные входы операционного элемента подключены к входам первого и второго регистров входных данных, выходы которых подключены к информационным входам первого и второго коммутаторов соответственно, первые выходы которых подключены соответственно к входам первого и второго регистров выходных данных, вторые выходы первого и второго коммутаторов соединены соответственно с информационными4 входами первого и второго буферных регистров, третьи выходы первого и второго коммутаторов соединены соответственно с входами третьего и четвертого буферных регистров, выход первого и инверсный выход второго буферных регистров подключены к первым входам соответственно первого и второго сумматоров1 вторые входы .которых подключены соответственно к

50 выходам четвертого и третьего буферных регистров, выходы первого и второго сумматоров подключены к.входам

Г! E p В О Г О ! B т Ор О Г О р е Г и с T p о Б 3 ых o jl н ых данных q выходы KotophIx подклю ! lthl к первому и второму информационным выходам операционного элемента, первый:, второй и третий входы кода опе- рации которого подключены соответственно к первым, вторым, третьим управляющим входам коммутаторов, при10 чем третии вход кода операции операционного элемента подключен также к входу чтения/записи второго буферного регистра, а четвертый — к второму информационному входу младшего разря15 да второго сумматора.

3. Процессор по п.1, о т л и— ч а ю шийся тем, что блок выбора режима работы содержит четыре элемента И-НЕ, два элемента ИЛИ-НЕ

20 и два элемента НЕ, причем первьК! вход первого элемента ИЛИ-HE соединен с инверсным входом первого элемента

И-НЕ H прямым входом второго элемента И-НЕ и является первым входом блока, второй вход первого элемента

ИЛИ-НЕ соединен с прямым входом первого элемента И-НЕ и инверсным входом второго элемента И-НЕ и является вторым входом блока, выход первого элемента ИЛИ-НЕ соединен с входом первого элемента НЕ и является первым выходом блока, выход первого элемента HE является вторым выходом блока, выходы первого и второго эле5 ментов И-НЕ являются соответственно третьим и четвертым выходами блока, первый вход второго элемента ИЛИ-НЕ соединен с инверсным входом третьего элемента И-HE и прямым входом чет0 вертого элемента И-НЕ и является третьим входом блока, второй вход второго элемента ИЛИ-НЕ соединен с прямым входом третьего элемента И-НЕ и инверсным входом четвертого эле5 мента И-HE и является четвертым входом блока, выход второго элемента ИЛИ-НЕ соединен с входом второ"о элемента НЕ и является пятым выходом блока, выход второго элемента НЕ является шестым выходом блока, выходы третьего и четвертого элементов И-HE являются соответственно седьмым и восьмью выходами блока.

1?33169

3, l 233169

Комму покия РР урсбип Хоииуо!оция Е 03 о уроЬ@

1А т с 823 1Ьпл с 829 !бит с I123 1дапп с 029

1дилтс 029 Ыитс 823 1оимо 829 1дмт с 023

Маинучаиия Оз ура!!м ноииутация Е 03 уробия

Фиг. !!

1 Р" 51 fЧ

Г с

Ъ (1

С-4

c- df

1 1

"1" 7" Ф 7 "1" а"

1Z 33 69

1:

II p ugly

"1" "0"

Ъ" "0 Фиг. М Ъ" д"

° „б „.7 8 „„ азсг, 6ыиюилены

РН?МОЮТ ЯЬИЦЯРИ

c8utew"

96_#_QM 7qbfll

Ы 66ЦХПОН?ЧН базисе ДЯ Р длерациц аль еноеа а дычт ддллгаж иае Щ да нере юса

1 Маично - индер

ЯРСБУРИ96КП ФОН ( 7

1233169

7, ц б28, 1, ЗЗ, Фиг. 15

1233169

)уробел процессора

g я уробвиь прпцессо,од

f уродясь лроцессора

2ф0068и

77РЗЦЕСС Ч

7У ЮРгмв

)ЮЦРССОЩ

2 Дюйма

ЩЮЦРССО)И Фма Б

Составитель В. Смирнов

Техред O.Cîïêü

Корр ек тор Л. Пилипенко.

Редактор С. Саенко

Заказ 2772j51 Тираж 671 Подписное

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

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

Производственно-полиграфическое предприятие, г, Ужгород, ул, Проектная, 4