Ассоциативный матричный процессор

 

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

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

РЕСПУБЛИК (19) (11) 4(51) С 06 Р 15 00

1 ( Ъ

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

Н ABTOPGHOMY СВИДЕТЕЛЬСТВУ

1

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPbffHA (21) 3426766/18-24 (22) 22.04.82 (46) 30.06 ° 85. Бюл. У 24 (72) Д. А. Тодуа, M. А. Абрамян, В. Б. Андрушкевич, А. К. Иманов и Н. А. Шемягин (71) Тбилисский научно-исследовательский институт приборостроения и средств автоматизации (53) 681.325.5(088.8) (56) 1. Авторское свидетельство СССР

Ф 479114, кл. G 06 F 15/00, 1974.

2. Патент США В 3800289, кл. 340-172.5, опублик. 1974.

3. Ассоциативный матричный процессор. STARAN. — "Зарубежная радиозлект" роника", 1977, Ф 1 (прототип)i (54)(57) 1 ° АССОЦИАТИВНЫЙ МАТРИЧНЫЙ

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

2. Процессор йо п. 1, о т л и— ч а ю шийся тем, что первый блок управления содержит генератор синхросигналов, регистр интерфейса, память управляющих команд, регистр управляющих команд, память микроко.манд, регистр микрокоманд, две группы элементов И и группу элементов .:ИЛИ, первые и вторые входы и выходы которых соединены с выходами соответствующих элементов И первой и второй групп и входом памяти управ4720

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

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

4. Процессор по п. 1, о т л и— ч а ю шийся тем, что операционный блок содержит сумматор, три триг-: гера, коммутатор, элемент И и элемент

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

-,входу блока, первому входу элемента

И и информационному входу первого триггера, синхровход и выход первого триггера соединены соответственно с управляющим входом и первым выходом блока, второй вход и выход элемента И подключены соответственно к выходу элемента ИЛИ и информационному входу второго триггера, управляющий вход которого соединен с управ .ляющим входом блока, управляющий вход, первый, второй и третий входы и выход коммутатора подключены соответственно к управляющему входу бло" ка, первому входу-выходу сдвига бло" ка, выходу элемента И, второму вхо-: ду-выходу сдвига блока и информационному входу. третьего триггера, управляющий вход которого соединен с управляющим входом блока, а выход этого триггера подключен к второму выходу-и второму входу--выходу сдвига блока.

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

Известен ассоциативный параллельный процессор, содержащий три матрицы ассоциативной памяти, построенные на специальных элементах АЗУ, местное устройство управлеиия, внеш.нее устройство управления и входные устройства с регистрами опроса, запи. си и считывания (1) .

Однако подобные процессоры пока не нашли практического применения из-за громоздкости алгоритмов обра" ботки данных, дороговизны специаль-.

2 ных элементов, большой потребляемой мощности

t0

Наиболее близким к изобретению является ассоциативный матричный процессор, содержащий устройство управления, блок параллельного ввода-вывода, ассоциативный матричный модуль, содержащий матрицу памяти, обрабатывающие элементы на каждую строку памяти, перестановочную сеть, мультиплексор (блок коммутации). Матрица памяти связана с обрабатывающими элементами через перестановочную сеть и мультиплексор.

Обработка информации происходит в обрабатывающих элементах путем после!

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

- lp управления подключены соответственно к управляющему входу процессора и управляющему входу блока буферной памяти. первые входы-выходы котором, го соединены с информационным входомвыходом процессора, а вторые входывыходы подключены к третьим информационным входам соответствующих коммч. татооов и выходам соответствующих запоминакицих элементов первой группы.. довательного вынесения раэряцного среза из матрицы памяти. Выборка раз рядного среза осуществляется с помощью .сложной перестановочной сети, составляющей 80Х стоимости матрицы памяти (2) и (3) .

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

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

Целью изобретения является повышение быстродействия.

Поставленная цель достигается тем, что в ассоциативный матричный ппоцессор, содержащий первую группу из п запоминающих элементов, и операционных блоков, и коммутаторов и пер.-. вый блок управления, первый, второй и третий выходы и вход которого сое-. 35 дннены соответственно с управляющими входами коммутаторов, входами записи запоминающих элементов первой группы, управляющими входами операционных бломов и управляющим входом процессо"40 ра, причем первый вход-выход сдвига каждого операционного блока подключен к вторым входам-выходам сдвига предшествующего операционного блока; первый информационный вход. первый, второй и третий выходы каждого опера" ционного блока соединены соответственно с выходом соответствующего запоминающего элемента первой группы, первым и вторым информационными .вхо- 50 дами соответствующего коммутатора и входом разрешения обращения соответ.ствукнцего запоминающего элемента первой группы, информационный вход которого подключен к выходу соответству- >> ющего коммутатора, введены блок буферной памяти, второй блок управления и вторую группу запоминающих элеменПри этом первый блрк управления содержит генератор синхросигналов, регистр интерфейса, память управляющих команд, регистр управляющих команд, память микрокоманд, регистр микрокоманд, две группы элементов И и группу элементов ИЛИ, первые и вторые входы и выходы которых соединены с вых6дами соответствующих элементов И первой и второй групп и входом памяти управляющих команд, первый и второй выходы регистра интерфейса подключены соответственно к входу блока, первым входам элементов И первой группы и первому входу генератора синхросигналов, второй вход, первый, второй, третий, четвертый и пятый выходы которого соедине ны соответственно с входом блока

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

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

Процессор содержит (фиг. !) две идентичные запоминающие матрицы, со- 55 стоящие из и запоминающих элементов с произвольной выборкой ll, 1,..., 1„ и 2 1, 2g,...2я, операционные блоки ходы дешифратора соединены с выходом блока.

Операционный блок содержит сумматор, три триггера, коммутатор, элемент И и элемент ИЛИ, первый и второй вход и выход которого соединены с выходом второго триггера, управляюшим входом и третьим выходом блока, вход переноса, первый и второй информационный вход, управляющий вход, выход 10 результата и выход переноса сумматора подключены соответственно к выходу первого триггера, первому и второму инфорь!Ьционным входам блока, управляющему входу блока, первому нхо- 1$ ду элемента И и информационному входу первого триггера, синхронход и выход первого триггера соединены соответственно с .управляющим входом и первым выходом блока, второй блок и выход 20 элемента И подключены соответственно к выходу элемента ИЛИ и информационному входу второго триггера, управляющий вход которого соединен с уп. равляющим входом блока, управляющий . 2$ вход, первый, второй и третий входы .

1 и выход коммутатора подключены соответственно к управляющему входу блока, первому входу-выходу сдвига бло-ка,выходу элемента И,второму входу-Bbl- @ ходу сдвига блока,и информационному входу третьего триггера, управляющий вход которого соединен с управляющим входом блока,а выход этого триггера подключен к второму выходу и второму входувыходу сдвига блбка.

На фиг. 1 приведена структурная схема ассоциативного матричного процессора; на фиг. 2 †. принципиальная схема операционного блока; на. фиг. 3 - структурная схема одного узла блока буферной памяти; на фиг. 4 - схема первого блока управления, на фиг. 5 - то е, второго блока упранления; на фиг. 6 - схема связей восьми операционных блоков с, соответствующими коммутаторами; на фиг. 7 - таблица функций, выполняемых сумматором операционного блока; на

3, 3,...,3„, коммутаторы 4, 4, ° .., 4П, блок буферной памяти 5 и два блока 6 и.7 управления. Входы 8, 8,..., 8у и выходы 9, 9,...,90 процессора подключены к первым входам и выходам блока 5, вторые выходы .которого соединены с нторыми входамя соотнетству. ющих коммутаторов 41 4,...,4, . Информационные входы одноименных элементов ll, 2, 1 и 2» ..., 1„ и 2 1двух матриц объединены и подключены к выходам соотнетствующих коммутаторов

4, 4,...,4„. Выходы элементов

2,2,...,2 соединены с первыми входами соответствующих блоков

31,3 ....,3, вторые нходы которых объединены с вторыми входами блока 5 и подключены к входам соответстнующих элементов 1,2,...,1>. Входы разрешения обращения одноименных элементов 11 и 2, 1 и 2» 1 и

2я объединены и подсоединены к вторым выходам соответствующих блоков

31,3,...Зп, первые выходы которых подключены к первым входам соответствующих коммутаторов 4 l 4,...,4я.

Третий выход блока 3 подключен к третьему входу коммутатора 4, к чет. вертому входу коммутатора 4, пятому входу коммутатора 4 и т.д.. Третий вход блока 3 подключен к третьему входу коммутатора 4, к четвертому входу коммутатора 41, пятому входу коммутатора 44 и т.д.. Каждый блок 3„,3,...3,„ через первые вход и . выход сдвига подключен соответствен- . но к вторым выходу и входу сдвига предыдущего, блока 3, а первые вход и выход сдвига блока 31 соединены соответственно с вторыми выходом и входом сдвига. блока 3„. L

Уп р анляющие входы комму т а торов

44 4 ° ° ° 4 я элементов

2,2,...,2„и блоков 3,, 3,...,3 соответственно объединены и соединены управляющими шинами 10-13 с выходами блока 6. Управляющий вход блока

5 соединен с выходом блока 7 управляющей шиной 14. Входы блоков 6 .и 7 подключены к управляющему входу 15 процессора.

Операционный блок (фиг. 2) содер" жит одноразрядный сумматор 16, логические элементы И 17 и ИЛИ 18, триггеры 19, 20 и 21 и коммутатор

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

7 1164720 8

H выходы сдвигa и управляющий вход. ды коммутаторов 25! 25

Первые дна входа сумматора !6 сое- 261,26 »...»26.1, соединены с последодинены с информационными входами нательными входами соответствующих.. блоками, первый нынад сумматора 6 регистров 23.!» 23 » . ° ° » 23 1 и 24»» подключен к входу триггера 19, вы- 24,...,24у. Управляющие входы комход которого соединен с выходом пе- мутаторов 261,26 ....,26, 25, реноса блока 3 и третьим входом 25,»,...,25 и 28, регистров 23», сумматора 16. Второй выход суммато- 23,....,23k, 24.1.242,...,24k ячера 16 соединен с вторым входом эле- ек 271,27,...,27> соответствующими мента 1?. Вход триггера 20 и второй fo шинами 14 -14 соединены с управляю5 вход коммутатора 22 объединены и щей шиной 14 блока 5. подключены к выходу .элемента !7; Блок 6 управления (фиг. 4) состо, Выход триггера 20 соединен с первым ит из узла 29 микропрограммного упвходом элемента 18, выход которого яв- Равления, генератора 30. синхросигналяется управляющим выходом блока 3 и !5 лон и регистра 31 интерфейса, причем подключен к перному входу элемента 17, Узел 29 содержит память 32 управляюПервый и.третий входы коммутатора 22 щих команд» память 33 микрокоманд, являются соответственно первым и вто- Ре и р 34 управляющих команд, рерым входами сдвига блока 3. Выход ком- гистр 35 микрокоманд, группы логичесмутатора 22 соединен с входом тригге-. 20 ких элементов» каждая из которых сора 21, выход которого является инфор- стоит из .двух элементов И 36 и 37, мационным выходом блока 3, а .также и одного элемента ИЛИ 38. При этом первым и вторым выходами сдвига блока . входы элементов ИЛИ 38 подключены к

3. Управляющие входы сумматора 16, входам элементов И 36 и 37, а выхотриггеров 19, 20 и 21 коммутатора 22 25 Qbt к адресным входам памяти 32, и второй вход элемента !8 подключены о4 которой подключай В ииформасоответственно к выходам 13, 13 » . ционным входам регистра 34 Первая

13, 13, 13,, !3 управляющей шины -группа выхоцов этого регистра под13 блока 3, Блок 5 разбит на п/м иден- совлинена к адресным, входам памяти тичных узлон, каждый иэ которых Зб 33» а вторая - к первьев эходам эле(фиг. 3) содержит два блока регист- ментов 37 всех групп логических элерон 23), 23,...,23, и 241, 24,... ментов ° Первые входы всех элементов

24< сдвига, коммутаторы 25,,25,..., 36 подключены к первой группе выхо»

251 и 26,!»26 »...»26,ячейки дон Регистра 31, вторая группа вы27 1,27 ;...,27 „ памяти, сгруппинован- З ходов которого подключена к входу

33 ные определенным образом в четные и «eDa»pa 30. Пять выходов генера- . нечетные группы (фиг. 7), и выходной Tîðà 30 подключены еоответственно коммутатор 28. Параллельные входы к объединенным вторым входам элеменрегистров 23,23,...,23„, 24,24,..., тон 36, к объединеиньач вторьи входам

24 объединены и подключены к .одному элементов 37, к управляющщм входам из входов 8 процессора, а параллель- Регистра 34 и регистра 35, а также ные выходы этих регистров соединены с к выходной управляющей шине !3. щес коммутатором 29. Выход коммутатора 28 той выход генератора .30 подключен к является одним из выходов 9 процессо- . paanatamei4y входу 15 процессора. ра. Последовательные выходы регистров лок 7 (фиг. 5) состоит из узла

23(»23 » ° е,23y подсоединены K вторым к Р 39 микропрограммного управления, k » генератора 40 синхросигналов и реги2 1;» 27 2? я 1 „! нечетных групп а стра 41 интерфейса, причем узел 30 последовательные выходы регистров содержит память 42 управляющих ко24.„,24,...,24С подсоединены к вторым входам ячеек.27 +,27,27

50 манд, память 43 микоокоманд, регистр +» » k»z » zg s 44 управляющих команд, регистр 45

27 „, 27» »...,27 четных групп. ч-(k-1 w микрокоманд группы логических элемен

Первые входй ячеек 27» »27, °,27"

»» . » ° ° ° ° =/ тон, каждая из которых состоит иэ

2?м, являются вторыми входами блока 5, двух элементов И 46 и 47 и одного а их выходы являются вторыми выхода- элемента ИЛИ 48, а также дешиф ато ми блока 5 и, подключены к входам 49. При этом входы элементов ИЛИ 48 соответствующих коммутаторов 25 » подключены к выходам элементон И 46

25,...,25х и 26 1,26,...»261 . Выхо и 47, а выходы — к адресным входам

1!647 памяти 42, выход которой подключен к информационным входам. регистра 44, Первая группа выходов этого регистра подсоединена к адресным входам памяти 43, а вторая - к первым входам элементов 47 всех групп логических элементов. Первые входы:всех элементов 46 подключены к первой группе выходов. регистра 41, вторая группа выходов .которого подключена к входу !0. генератора 40. Пять выходов генеоатора 40 подключены соответственно к объединенньай вторым входам элементов

46, к объединенным вторым входам эле" ментов 47., к управляющим входам регистра 44 и регистра 45 и к входам

14, 14 управляющей шины 14. Шестой выход генератора 40 подключен к управляющему входу 15 процессора.

Выходы регистра 45 с первой по пятую группы подключены соответственно к входам 14 - 14 5 управляющей шины

14, а шестая группа выходов соединена с входом дешифратора 49, выходы которого подключены к входу 14 управляю"25

5 щей шины 14 блока 7.

Функционирование ассоциативного .матричного процессора (фиг. !) происходит следующим образом.

На первом этапе осуществляется загрузка последовательно по словам по каналам 84,8,...,Sp массивов данных сначала в блок 5, а затем ввод этих же массивов данных уже последо- 35 вательно по разрядам и параллельно по словам через вторые входы коммутаторов 4 Ip4gy 4 y) в элементы !4,1

1 и 2 q,2,...,2, причем в обе запоминающие матрицы записывается идентич- 40 ная информация. Необходимость хранения идентичной информации в обеих группах элементов 1,...,1ь и

21,...,2 объясняется тем, что при, выполненин ряда арифметических и логи-, 43 ческих операций необходимо одновременно обращаться к разным разрядным слайЪ .сам одного и того же массива данных, что существенно сказывается на скорости выполнения данных операций. Ком- 50 мутаторы 4,4,...,4„ настраиваются на пропускание информации из блока 5 или с другого налравления с помощью управляющих сигналов, поступающих из блока 6 по шине 10. Основным решающим 5 ресурсом в предлагаемом процессоре является ассоциативное запоминающее решающее поле (АЗРП), содержащее

20 10 входные коммутаторы 4,4>, °,,4, две запоминающие матрицы элементбв ! !ю !2 в ° ° ° э! H 24 ю2 э ° ° в2я и блоки

31,3,,; 3„. При этом каждая эапо» минающая матрица представляет собой массив запоминающих элементов оперативной памяти с произвольной выборкой с организацией N x 1 бит, где N число бит в одном элементе 1 или 2. Очевидно, что в одном элементе можно разместить М/k k-разрядных слов, а в одной запоминающей матрице N/k k-разрядных массивов данных, т.е. каждый массив в запоминающей матрице размещается в своей конкретно адресуемой зоне. Таким образом, каждая запоминающая матрица разбивается на конкретно адресуемые зоны, в которых хранятся как масивы-операнды, так и массивырезультаты. При этом адресация к зоне и определенному разрядному слайсу в этой зоне осуществляется в,соответствии с кодовыми комбинациями, приходящими по управляющим шинам ll u !

2 с блока 6.

Обработка массивов данных осуществляется в блоках 3,3,,...,3 путем последовательного считывания в них разрядных слайсов этих массивов, I

Так, например, для,выполнения сложения двух массивов необходимо повторить столько элементарных сложений, сколько значащих разрядных слайсов содержится в массивах-операндах. При этом каждое элементарное сложение состоит из двух тактов. В первом такте одноименные слайсы считываются с двух матриц 1,1, °,1„ и 24,2<,...2„ и пось|лаются по двум информационпйм каналам в блоки

31,3,...,3„, где происходит их, сложение, запоминание результата сложения и результата переноса, если таковой имеется. Настройка всех блоков

34,...,3 „ на выполнение конкретной операции осуществляется в соответствии с управляющими сигналамн, приходящими по шине 13 из блока 6. Во вторым такте результат сложения с информационных выходов блоков 34,...,3п пропускается через третьи входы коммутаторов 41,...,4„ и записывается

B оба запоминающие элементы матриц..

14 Хд и 2 ....,2„. Переносы, воэ" никающие при сложении старших разрядных слайсов, считываются с выходов переноса блоков 31,...,3 и через первые входы коммутаторов 4,...4

1164720 записываются в зону массива-результата матриц 1(,...,1„H 2(,...,2 .

Наличие управляющих выходов в блоках 3(,...3(позволяет выборочно работать с определенными строками матриц l ° ° ° 11n и 211 2n Так если на управляющих выходах каких-то блоков 3 присутствует уровень логического О, поступающий на управляющие входы соответствующих одноименных 1О элементов 1 и 2, то эти строки ис-. ключаются из работы. Исключение заключается в том. что в данные элементы нельзя записывать нли считывать на них информацию. Такая организация 15 предлагаемого процессора позволяет ,проводить операции как со всеми числами в .массиве данных, так и с выделенным подмассивом.

Группа входов в коммутаторах 20

4, .,4, начиная с четвертого, предназначена для осуществления пере" становочных операций в предлагаемом процессоре. Связи восьми блоков 3 с соответствующими коммутаторами 25 (фиг. 6) позволяет осуществлять стандартные перестановки 1 х 1,2 х 2 и 4 х 4. Третьи входы коммутаторов

4 1....,4п предназначены для коммутирования информационных бит с соответ- gp ствующих блоков 3(,....3 . Когда же необходимо осуществить попарную перестановку информационных бит, коммутаторы 4(...,,4À настраиваются на пропускание информации с четвертого входа,.

При этом информация с блока 3(будет считана с выхода коммутатора 4, а информация с блока 3 — с выхода коммутатора 4 . Аналогично для всех ос". тальных пар блоков 3 и коммутаторов. 40

Для осуществления перестановок 2 х.2 или 4 х 4 коммутаторы необходимо настроить на пропускание информации соотг ветственно с 5 и 6.входов. Полу-, ченный на выходах коммутаторов инфор- 45 мационный слайс записывается в матри" це памяти. Очевидно, что .для перестановки слов в массиве операцию конкретной перестановки надо повто- . рить для каждого слайса данного массива. В том случае, если надо провести нестандартные перестановки, информационный слайс несколько раз пропускаетея через коммутаторы 4< ° ...

4 . Так, например, для перестановки 55 содержимого блока 3 с номером 1, 2, 3, 4 и 5, 6, 7, 8 в блок 3 соответственно с номерами 4, 3, 2, 1 и 8, 7, 12

6, 5 необходимо исходный информационный слайс дважды пропустить через коммутаторы 44 ...,.,44, в первый раз настроить их на перестановку 2 х. 2, а во второй раз на перестановку 1 х l.

Наличие первых и вторых входов и выходов сдвига блоков 3(,...,3 (позволяет в предлагаемом процессоре в сочетайии с заложенными перестановками осуществлять сложные обменные операции между блоками 3. Полученные в процессоре обработки массивы-резуль,таты переписываются в блок 5 последо» вательно по разрядам и параллельно по словам, а затем последовательно по словам с выходов 9(,...,9г считываются во внешнее ОЗУ.

Таким образом, наличие блока 5 в предлагаемом процессоре позволяет параллельно вести обработку массивов данных в АЗРП и осуществлять загрузку новых массивов или выгрузку полу". .ченных массивов-результатов.

Обработка информации, хранящейся в элементах 1! .....1 < и 2(,...,2 i осуществляется в блоках 3,(,...,3 (фиг. 2). Набор логических н арифметических операций, выполняемых каждым блоком 3, определяется сумматором

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

;операндами (согласно таблице, приведенной на фиг. 7). Ввиду отсутствия микросхемы одноразрядного АЛУ можно применить серийно выпускаемую микросхему К155ИПЗ, предназначенную для логической и арифметической,обработки двух четерехразрядных операндов. При этом для работы используются два младших входа и вход переноса.

Выбор одной из 16 логических операций и арифметической операции сложения осуществляется путем подачи соответствующего кодовой комбинации с выхода 13! управляющей шины 13.

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

1(°,° .° .° .°, I,! и 2(,...,2,, которые подлежат обработке. Триггер 21 служит для запоминания результата логической .и арифметической обработки. Коммутатор 22 предназначен для коммутации информации с трех входов с целью записи ее в триггер 21 либо с предыдуего блока 3„ .(, либо с сумматора

13 1164720 !

6 данного блока 3;, либо с последу- д ющего блока 3;,! . Первый и третий м входы коммутатора 22 предназначены д для осуществления операций обмена и данными между соседними блоками 3. 5 2

Настройка коммутатора 22 на коммута- б цию одного информационного входа про- и исходит в соответствии с кодовой 3 комбинацией, поступающей с выхода и

1311 шины 13. Элемент ИЛИ 18 позволя- 10 ч ет выдавать на управляющий выход е блока 3 информацию либо с триггера п

201 либо с выхода 13 г шины 13. Эле- т мент 17 служит для разрешения или 3 запрета прохождения информации из 15 с сумматора 16 в триггер 20 и в триг- ф гер 21. Запись информации в триггеры о

l9, 20 и 2! происходит по синхроаиг- в налам, поступающим соответственно с К выходов 13, 13, 13» шины 13. При 20 л обработке информации один бит первого операнда и один бит второго опе- н ранда считываются иэ элементов 1; и ч

2„ и поступают на вход сумматора 16, к

Результат обработки поступает на 25 в второй вход элемента !7. На первом с входе элемента 17 присутствует уро- . н вень логической 1, поступающий либо ю с триггера 20 через элемент 18, либо н с выхода 134 через элемЕнт !8, что 30 ( является признаком разрешения рабо- з ты с данной i-й строкой матриц

It ° ° ° ° 111 и 24 ° ° ° .2 о далее реэул, тат обработки поступает .на вход ком- ч мутатора 23, с выхода которого запи- 2

35 сывается в триггер 21. Одновременно и при арифметической обработке пары п битов операндов образовавшийся пере- 2 нос с первого выхода сумматора 16 и г записывается в триггер 19.Результат, 4 записанный втриггере 19, учитывается у при сложении последующих пар битов. 2

Полученный результат в триггере 21 в может быть записан либо в элементе 1; н 2, либо в соседний .блок 3;,, и

3;,1 . Если требуется игнорировать содержимое триггера 20, то по управляющей шине 135 на вход элемента 18 всех блоков 31,...,3„! подается уровень логической l, Что означает раз 50 г решение работы со всеми строками. ж

Результат обработки может быть записан также и в триггер 20, что является условием выбора данной строки в матрицах 11,...,1», и 24,...,2п дл 55 п последующей. обработки.

Таким образом, операция обработки двух бит операндов осуществляется в ва этапа. В начале из запоминающих атриц считываются два бита операнов, подается на вход сумматора 16 результат записывается в триггере

1. На втором этапе результат может

ыть з.описан в матрицы 1„,...,1„

21,...,2я. В связи с тем, что блок связан с последним. блоком 3 1, в роцессоре можно осуществлять цикли-, еские сдвиги информации, содержащися в блоке 31,...,31,. Исходя из рактической реализации процессора, риггеры 21 на уровне всех блоков

1,...,3 можно заменить регистрами двига. Ввод и вывод k-разрядной инормации в предлагаемом процессоре существяяется соответственно через ходы 81,...,8 и выходы 91,...j9 pr ажцый из входов и выходов представяет собой канал шириной в k-разряов. Блок 5 разбит на п/m р-идентичых,узлов (секций) и каждый из них ерез свои первые входы и выходы подлючен к соответствующему входу и

ыходу 8,...,8 и 9,...,9 рпроцесора. Все секции работают параллельо от управляющих сигналов, поступа-. щих по шине 14 с блока 7. Функциоирование одной из секций блока 5 фиг. 3) происходит следующим обраом.

Ввод k-разрядной информации в чейки 27,...,27 осуществляется ерез два блока регистров 23,..., 3 „ и 241,...,24 . Причем входная нформация по шине 8 поступает на араллельные входы всех регистров

31,...,23, 24,...,24», которые оочередно настраиваются на режим параллельного приема информации. становление режима работы регистров

31,...,23, и 244,...,24» осущестляется соответственно с выходов 14>

144 шины 14. За первые k-тактов существляется последовательное зане" ение k-разрядной информации в регитры 231,...,23» . В это время регитры 24,...,24» находятся в состояии покоя. По истечении k-тактов реистры 231,...,23» переводятся в реим последовательного сдвига, а реги-. тры 24,...,24 — в режим параллель= ого занесения информации. После аполнения регистров 24,...,24 они ереводятся в режим последовательного сдвига, и начинается заполнение регистров 234,...,24 ».Так происходит чередование заполнения считывание

l5 1164720" 16 двух блоков регистров сдвига, Инфор- гистров 23,...,23 информация через мация, считываемая с регистров . выходной коммутатор 28 начинает выда23,,...,23« подводится одновременно ваться с выходов 9 процессора и т.д. к k-.ÿ÷åéêàì памяти всех нечетных Таким образом, происходит поочередное групп 271,...,27.„,...,27„,. „,..., 5 заполнение регистров 234,...,231 и

27 .(,,1, а с регистров 24,...,24 „ 241,...,24к иэ нечетных и четных подводится к четным группам групп ячеек 274,...,27 при помощи .,27„,,27в, q 27 коммутаторов 25,<,...,25< и 26,..., (фиг. 8). В соответствии с кодовой 26 к с последующей выдачей информации комбинацией, поступающей с выхода !О через коммутатор 28 с выхода 9 процес145 шины 14, осуществляется выбор сора. Функционирование исполнительных режима работы ячеек 271,...,27 . ресурсов в процессоре происходит в

Кроме того, с этого выхода 14 посту- соответствии с. Управляющими сигналапают управляющие сигналы, которые вы- ми, приходящими по шинам 10-13 с бирают для режимов записи или чтения .15 блока 6 и по шине !4 с блока 7. одну четную или нечетную группу, со- Рассмотрим работу блока 7(фиг .. 4), стоящую из k ячеек памяти. Таким об- Управляющее алово, содержащее код разом, каждое k-разрядное слово, эа- команды, которую надо выполнить в писанное в регистре сдвига, эаписыва- АЗРП, и сигналы управления генератоется..в ячейку памяти за k последова- 2О ром 30, поступает на регистр 31, с тельных тактов, но так как загрузка второй группы выходов которого сигпроисходит параллельно в k ячеек па- налы управления подаются в генератор мяти, то за Е тактов в ячейках памяти 30 и раэр шают появление на его выэаписано k слов. После окончания за- ходах синхросигналов, Сигнал логичесгруэки и слов в памяти блока 5 нахо- 25 кой 1, снимаемый с первого или с втодится массив, который затем может рого выходов генератора 30, постубыть переписан в АХРП параллельно по пает соответственно на вторые входы словам и последовательно по разрядам элементов 36 или-37 всех групп соотс вторых выходов блока 5. Точно ветственно логических элементов уэтакже массивы-результаты из АЗРП по- 3р ла 29 и разрешает прохождение инфорступают последовательно по разрядам, мацки с двух направлений: либо с пери параллельно по словам на вторые вой группы выходов регистра 31 ли-

У входы блока 5 и непосредственно за-- 6o с второй группы выходов регистра писываются в ячейки 271,...,27>, 34. Присутствие сигналов логической

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

ыходы ячеек 271,...,27,„ соеди- . генератора 30 и разрешает прохождед нены с коммутаторами 251,...,25 и ные кода команды кото ую б

40 торую нео ходимо 26,...,261, причем .выходы нечетных выполнить в АЗРП предлагаемого прогрупп ячеек 274,...,27, 27,<, ° .., цессора, на адресные входы памяти.

27, ...,27„„ „ ;27„„<„„>соединены соот- Управляющие команды, хранящиеся в ветственно с входами коммутаторов памяти 32, состоят иэ двух частей:

27 ... 27 а выходы четных групп 45, в первой указан адрес соответ ствую„,...,27 „,. ° .,27,„ щей микрокоманды в памяти 33, а во соединены соответственно с входами . второй — адрес следующей управляюкоммутаторов 261,...,26к. Информация, щей команды. поступающая из первой нечетной груп- ь

Для выл.олнения той или иной копы ячеек 27, ;,27 через групп

1 У 56 манды (сложить, отнять, найти, пе рекоммутаторов 25«25 >, последова- ст ставить попарно и т.д.! в памяти 32 тельно заносится за 1 тактов в г пп ру У в соответствии с адресом командой, регистров 23,1,...,23 . Затем начина- поступающей с регистра 31 выби аетется аналогичное заполнение второй э P ся определенный список управляющих группы регистров 24,...,24 че ез. р 55 команд. Этому списку управляющих ковходные коммутаторы 26,... 26 из м.".нд поставлен в соответствие опрепервой четной группы ячеек 27 деленныи набор микрокоманд,в памяти

271 . При этом иэ первой группы ер ЪЗ. необходимый для выполнения задан17 1164720 18 ной команды либо над двумя разрядны" ми слайсами (столбцами) двух массивов денных, либо над одним разрядным слайсом одного массива данных. Списк управляющих команд, поставленный ему в соответствие набор микрокоманд, повторяется столько раз, сколько разрядных слайсов содержат обрабатываемые массивы данных (или массивов данных). 10

Таким образом, после приема адреса-команды с регистра. 31 и записи первой. управляющей команды в регистр

34 сигнал логической 1 считывается уже с второго выхода генератора 30 и присутствует на этом выходе в течение всего времени обработки массива данных. Количество разрядов в первой группе выходов регистра 31, а значит и число групп логических элементов определяется объемом памяти 32.

С третьего и четвертого выходов генератора 30 снимаются синхросигналы, по которым в регистры 34 и 35 записываются информация, считываемая соответственно с памяти 32 и памяти

33. С пятого выхода генератора 30 считываются сннхросигналы, которые, переходя через шину 13, обеспечивают управление работой триггеров блоков

3 1 3„, Шестым входом/выходом генератор 30 через шину 15 соединен с генератором 40 блока 7. С помощью этой шины синхрониэируется работа генераторов 30 и 40 обоих блоков 6 и 7 на период обменных операций между блоком 5 и АЗРП.

С четырех групп выходов регистра

35 считываются кодовые комбинации, осуществляющие по шинам 10-13 управ40 ление работой соответствующих узлов в процессоре, Блок 7 предназначен для управления45 функционированием блока .5 и работа его происходит почти аналогично работе блока 6. Разница заключается только в том, что регистр 45 содержит шесть групп выходов, первая иэ которых предназначена для управления коммутаторами 261,...,26к, 27,...,27 вторая - для управления коммутатором

28, третья и четвертая - соответст. венно для управления регистрами

241,... «24K и 234 « ° ..,23 «пятая — для формирования адреса слайса в матрице

27,...,27> блока 5, шестая подсоединена к входу дешифратора 49. В зависимости от кодовой комбинации, подаваемой на вход дешифратора, в последнем выбирается определенная выходная шина, которая выбирает одну группу из 1с ячеек 271,...,27„ в блоке 5.

К входам 14 и 1411 подключен также пятый выход генератора 40, от синхросигналов которого срабатывают регистры

231 23 и 24 „, ° ° «24к

Предлагаемый процессор довольно прост в изготовлении и имеет достаточно высокое быстродействие, Так, например,. в процессоре STARAN взятом в качестве базового объекта и выпускаемого -фирмой Goodyear Aегоspace

Corporation (США), время обращения к матрице памяти складывается из вре- мени прохождения мультиплексоров, перестраиваемой сети и считывания или записи информации в память. В предлагаемом процессоре время обращения к памяти склащывается из времени прохождения коммутаторов.и времени записи или считывания информации из запоминающей матрицы. Повышение скорости обработки массивов данных по сравнению с прототипом в пред- лагаемом процессоре обеспечивается также за счет наличия двух запоминающих матриц, позволяющих вести одновременное считывание двух операндов. Кроме того, обработка данных в предлагаемом процессоре ведется в операционных блоках с повышенными функциональными возможностями, а не с помощью схемной логики, как в прототипе. Это также повышает быстродей" ствие процессора. Так, например, сложение двух разрядных слайсов в предлагаемом процессоре выполняется эа два такта, а в прототипе эа четыре. Таким образом, общая производительность достигает примерно 80 млн сложений в секунду в отличие от

40 млн сложений в секунду для модели

S-1000.прототипа. Наличие блока буферной памяти со своим блоком управления позволяет распараллелить работу процессора, совместив вс времени загрузку или разгрузку мас.сивов данных из буфера с решением задачи в АЗРП.

1164720

1164720

1164720

1164720

1I64720

1)64720

1I64720

1164720 7т-2к m/Ð-

l? - еруппы (НЕЧЕП7НаЯ) 7m-и+1) 7т-к 7ж+/

Составитель Г. Виталиев

Редактор А. Гулько ТехредМ.Гергель Корректор О. Тигор

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

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий 113035, Москва, Ж-35, Раушская наб,, д. 4/S

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

z72

Я7к

27+ /

Я 7@,я г7гк

z7N-г 73Ê

1-ая группа (гЮЧЕЛ7Ная) 2-379 группа (цеЮ7ная) 5-я группа (нечевная) 75#9

27 „z

24К

27а к-It) 7m

4-а группа (ЮЛ)й7) Лф7 группа (чееная)

Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор Ассоциативный матричный процессор 

 

Похожие патенты:

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

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

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

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

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

Изобретение относится к электронным играм

Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией

Изобретение относится к системам передачи стоимости товара при безналичных операциях
Наверх