SU1691847A1 - Systolic processor - Google Patents

Systolic processor Download PDF

Info

Publication number
SU1691847A1
SU1691847A1 SU894746750A SU4746750A SU1691847A1 SU 1691847 A1 SU1691847 A1 SU 1691847A1 SU 894746750 A SU894746750 A SU 894746750A SU 4746750 A SU4746750 A SU 4746750A SU 1691847 A1 SU1691847 A1 SU 1691847A1
Authority
SU
USSR - Soviet Union
Prior art keywords
inputs
exchange device
same
memory
counter
Prior art date
Application number
SU894746750A
Other languages
Russian (ru)
Inventor
Анатолий Анатольевич Мельник
Иван Григорьевич Цмоць
Original Assignee
Предприятие П/Я В-8751
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Предприятие П/Я В-8751 filed Critical Предприятие П/Я В-8751
Priority to SU894746750A priority Critical patent/SU1691847A1/en
Application granted granted Critical
Publication of SU1691847A1 publication Critical patent/SU1691847A1/en

Links

Abstract

Изобретение относитс  к вычислительной технике и может быть использовано в автоматизированных системах обработки данных, работающих в реальном времени. Целью изобретени   вл етс  повышение производительности систолического процессора за счет обеспечени  безконфликтного обмена данными между вычислительными модул ми. Поставленна  цель достигаетс  тем, что в систолический процессор, содержащий К вычислительных модулей, введены К+1 устройств обмена. 1 з.п. ф-лы, 4 ил.The invention relates to computing and can be used in automated data processing systems operating in real time. The aim of the invention is to increase the performance of the systolic processor by ensuring conflict-free data exchange between computational modules. The goal is achieved by introducing K + 1 exchange devices into a systolic processor containing K compute modules. 1 hp f-ly, 4 ill.

Description

Изобретение относитс  к вычислительной технике и может быть использовано в автоматизированных системах обработки данных, работающих в реальном масштабе времени.The invention relates to computing and can be used in automated data processing systems operating in real time.

Цель изобретени  - повышение производительности систолического процессора путем обеспечени  безконфликтного обмена данными между вычислительными модул ми .The purpose of the invention is to increase the performance of the systolic processor by ensuring conflict-free data exchange between computational modules.

На фиг. 1 изображена блок-схема систолического процессора; на фиг. 2 - блок-схема устройства обмена; на фиг. 3 - схема блока управлени  (обменом); на фиг. 4 - схема вычислительного модул .FIG. 1 shows a block diagram of a systolic processor; in fig. 2 is a block diagram of an exchange device; in fig. 3 is a control block (exchange) diagram; in fig. 4 is a diagram of a computing module.

Систолический процессор (фиг. 1) содержит первый 1 и второй 2 тактовые входы, информационный вход 3, первые входы 4-7 соответственно признаков записи в пам ть, считывани  из пам ти, записи в счетчик и считывани  из счетчика, вход 8 сброса, третий тактовый вход 9 (К+1) устройств 10 обмена , К вычислительных модулей 1V, входы 12 прерывани , входы 13 управлени  переходом , вход 14 признака загрузки, вход 15 разрешени  записи, вход 16 разрешени  чтени , выход 17 разрешени  обращени  к пам ти программ, вход/выход 18 внешней шины данных, выход 19 синхронизации, выход 20 строба чтени , выход 21 строба записи , выход 22 адреса, вход-выход 23 данных, информационный выход 24, вторые входы 25-28 соответственно признаков записи в пам ть, считывани  из пам ти, записи в счетчик и считывани  из счетчика.The systolic processor (Fig. 1) contains the first 1 and second 2 clock inputs, information input 3, the first inputs 4-7, respectively, of the signs of a write to the memory, read from the memory, write to the counter and read from the counter, reset input 8, the third a clock input 9 (K + 1) of exchange devices 10, K computing modules 1V, interrupt inputs 12, transition control inputs 13, download indication input 14, write permission input 15, read permission input 16, program memory access enable output 17, external data bus input / output 18, synchronization output 19, output 20 reading strobe, write strobe output 21, address output 22, data input / output 23, information output 24, second inputs 25-28, respectively, of the characteristics of writing to the memory, reading from the memory, writing to the counter and reading from the counter.

Каждое устройство 10 обмена (фиг. 2) включает регистры 29-32, блок 33 пам ти и блок 34 управлени .Each exchange device 10 (FIG. 2) includes registers 29-32, a memory unit 33 and a control unit 34.

Блок 34 управлени  (фиг. 3) содержит элементы И-НЕ 35-37, буферные усилители 38 и 39 с трехстабильным выходом, коммутатор 40, счетчики 41 и 42, элемент И 43, элементы И-НЕ 44 и 45. элемент И 46, элемент И-НЕ 47, элемент И 48, инвертор 49, шесть узлов формирователей 50i-50c импульсов , каждый из которых состоит из элемента И 51, триггеров 52 и 53 и элемента И-НЕ 54.The control unit 34 (FIG. 3) contains AND-HE elements 35-37, buffer amplifiers 38 and 39 with a three-stable output, switch 40, counters 41 and 42, And 43 element, AND-NE elements 44 and 45. And 46 element the element AND NOT 47, the element AND 48, the inverter 49, the six nodes of the pulse formers 50i-50c, each of which consists of the element AND 51, the triggers 52 and 53 and the element AND-NOT 54.

слcl

сwith

о чэoh che

0000

NN

VJVj

Каждый вычислительный модуль 11 (фиг. 4) образуют усилители 55 и 56 с трех- стабильным выходом, микропроцессор 57, усилители 58 и 59 с трехстабильным выходом , элементы ИЛИ 60 и 61, дешифраторы 62 и 63, элемент И 64, пам ть 65 и элемент ИЛИ 66.Each computational module 11 (FIG. 4) constitutes amplifiers 55 and 56 with a three-stable output, microprocessor 57, amplifiers 58 and 59 with a three-stable output, elements OR 60 and 61, decoders 62 and 63, element AND 64, memory 65 and element OR 66.

Систолический процессор работает следующим образом.The systolic processor works as follows.

Сначала осуществл етс  настройка процессора на решение задачи. Настройка производитс  путем загрузки в пам ть 65 каждого вычислительного модул  11 соответствующих программ. Кажда  программа, загруженна  в вычислительный модуль 11,  вл етс  частью общей программы решени  задачи. В блок 33 пам ти первого устройства 10 обмена с выхода 3 загружаютс  первый массив входных данных и управл юща  информаци , сопровождающа  данный массив. В управл ющей информации указываютс  код решаемой задачи, начальный адрес, размерность и состо ние массива , Если в  чейке блока 33 пам ти, определ ющей состо ние массива, записан нуль, это означает, что в блок 33 пам ти не загружен массив данных, а если единица, то это означает, что массив данных загружен и готов к обработке. Управл юща  информаци  записываетс  в определенные адреса блока 33 пам ти. Объем пам ти блока 3 каждого устройства 10 обмена определ етс  размерами обрабатываемых массивов данных и их управл ющей информацией. Минимальный объем блока 33 пам ти должен обеспечивать хранение двух максимальных массивов данных с их управл ющей информацией .First, the processor is configured to solve the problem. The adjustment is made by loading into memory 65 of each computing module 11 of the respective programs. Each program loaded into the computing module 11 is part of a general problem solving program. In memory 33, the first exchange device 10 from output 3 loads the first input data array and control information accompanying the array. The control information indicates the problem code to be solved, the starting address, the dimension and state of the array. If the cell of the memory block 33, which defines the state of the array, contains zero, this means that the data array is not loaded in the memory block 33, if one, it means that the data array is loaded and ready for processing. The control information is recorded in the determined addresses of the memory unit 33. The storage space of block 3 of each exchange device 10 is determined by the size of the data files being processed and their control information. The minimum size of the memory block 33 should provide storage of two maximum data arrays with their control information.

Перед началом работы в первую область блока 33 пам ти устройства 10i обмена загружены первый массив данных и его управл юща  информаци , причем в  чейках , определ ющих состо ние двух облаь стей пам ти, записаны единица и нуль. В  чейках, определ ющих состо ние блока 33 пам ти устройств 102-1 Ок-и обмена, записаны нули..При установке на входе 8 единицы процессор из состо ни  останова переходит на выполнение программ, записанных в пам ти 65 вычислительных модулей 11. В каждом вычислительном модуле 11 в начале работы анализируютс   чейки, определ ющие состо ние блока 33 пам ти устройств 10 обмена. Если в этих  чейках записан нуль, то соответствующие вычислительные модули 11 переход т в режим ожидани , а если единица, то на обработку массива.Before starting, the first data array and its control information are loaded into the first area of the memory block 33 of the exchange device 10i, and in the cells determining the state of the two memory areas, one and zero are recorded. Zero zeros are written in the cells that determine the state of the memory block 33 of the device 102-1 OK-and exchange. When the unit is installed at input 8, the processor stops and runs to execute the programs recorded in memory 65 of the computational modules 11. In At the beginning of operation, each computational module 11 analyzes the cells determining the state of the block 33 of the memory of the exchange devices 10. If zero is written in these cells, then the corresponding computational modules 11 are switched to the idle mode, and if the unit is, then to the array processing.

4В начале работы процессора первый вычислительный модуль 11 по результатам анализа переходит на обработку массива,4In the beginning of the processor, the first computational module 11, based on the results of the analysis, proceeds to processing the array,

записанного в первой области блока 33 пам ти , а вычислительные модули 112-11к - а режим ожидани . Первый вычислительный модуль 11 считывает код .решаемой задачиthe memory block 33 recorded in the first region, and the computational modules 112-11k in the standby mode. The first computing module 11 reads the code of the problem to be solved.

и переходит на решение первой части данной задачи над данными, записанными в первой области блока 33 пам ти. Результаты решени  первой части задачи вычислительным модулем 11 записываетс  в первуюand proceeds to the solution of the first part of this problem over the data recorded in the first area of the memory block 33. The results of solving the first part of the problem by the computing module 11 are recorded in the first

область блока 33 пам ти второго устройства 102 обмена. Результаты обработки входного массива первым вычислительным модулем 111  вл ютс  входными данными дл  второго вычислительного модул  112. Вместе сthe area of the memory block 33 of the second exchange device 102. The results of processing the input array by the first computing module 111 are input to the second computing module 112. Together with

данными в блок 33 пам ти устройства 102 обмена записываетс  его управл юща  информаци . По окончании обработки первого входного массива и загрузки результатов его обработки в первую область блока 33data into memory block 33 of exchange device 102 is recorded by its control information. Upon completion of processing the first input array and loading the results of its processing into the first area of the block 33

пам ти устройства 102 обмена в  чейки состо ни  данных областей блока пам ти соответственно первого 10i и второго 102 устройств обмена записываетс  нуль и единица . Одновременно с обработкой массиваthe memory of the exchange device 102, in the cells of the state of the data of the areas of the memory block of the first 10i and the second 102 of the exchange devices, respectively, is written zero and one. Simultaneously with array processing

с первой области блока 33 пам ти устройства 10i обмена во вторую область блока 33 пам ти данного устройства обмена с входа 3 загружаетс  второй массив данных со своей управл ющей информацией. Поокончании загрузки информации во вторую область блока 33 пам ти устройства 10i обмена в  чейку состо ни  данной области блока 33 пам ти записываетс  единица. По завершении обработки первого массиваFrom the first area of the memory block 33 of the exchange device 10i, the second data array with its control information is loaded from the input 3 to the second area of the memory block 33 of this exchange device. At the end of loading information into the second area of the memory unit 33 of the exchange device 10i, a unit is recorded in the state cell of this area of the memory unit 33. Upon completion of processing the first array

данных и загрузки результатов данной обработки в блок 33 пам ти устройства 102 обмена вычислительный модуль 111 переходит в режим ожидани . В режиме ожидани  вычислительные модули 11i-11x наход тс data and loading of the results of this processing into the block 33 of the memory of the exchange device 102, the computing module 111 enters the standby mode. In idle mode, the computational modules 11i-11x are

до прихода сигнала прерывани  на входы 12i, 1221-2к. Период поступлени  сигналов прерывани  равен или больше требуемого времени дл  решени  любой 1-й части задачи и совпадает с периодом поступлени until the interrupt signal arrives at the inputs 12i, 1221-2k. The period of arrival of interrupt signals is equal to or greater than the required time for solving any 1st part of the task and coincides with the period of arrival.

в процессор массивов данных. Процессор синхронизируетс  сигналами прерывани , т.е. работает в принудительном темпе с тактом , равным периоду поступлени  сигналов прерывани .into the data array processor. The processor is synchronized by interrupt signals, i.e. operates at a forced rate with a cycle equal to the period of arrival of the interrupt signals.

В начале следующего такта работы каждый вычислительный модуль 11 анализирует  чейки, определ ющие состо ние блока 33 пам ти устройств 10 обмена, и в зависимости от записанной в них информации переходит на обработку или на ожидание. Во втором такте первый 111 и второй 112 вычислительные модули переход т на обработку массивов данных, а вычислительные модули к - в режим ожидани .At the beginning of the next clock cycle, each computational module 11 analyzes the cells that determine the state of the block 33 of the memory of the exchange devices 10, and, depending on the information recorded in them, proceeds to processing or waiting. In the second cycle, the first 111 and second 112 computational modules switch to processing arrays of data, and the computational modules go to standby mode.

Вычислительные модули 11i и 112 считывают код решаемой задачи и переход т на решение первой и второй частей задачи. Вычислительный модуль 11-| обрабатывает данныэ с второй области блока 33 пам ти устройства 10i обмена и результаты данной обработки загружает во вторую область блока 33 пам ти устройства 102 обмена. Одновременно в первую область блока 33 пам ти устройства 10i обмена производитс  загрузка с входа 3 следующего массива. При обработке второго входного массива вычислительный модуль 11i использует вторые области блока 33 пам ти устройств 1Ch-102 обмена. Вычислительный модуль 112 обрабатывает данные с первой области блока 33 пам ти устройства 102 обмена и результаты данной обработки загружает в первую область блока 33 пам ти устройства Юз обмена . Перед третьим тактом работы процессора в первой области блока 33 пам ти устройства 10 обмена находитс  третий входной массив с управл ющей информацией, а во второй и первой област х блока 33 пам ти соответственно второго 102 и третьего Юз устройств обмена записаны массивы данных с управл ющей информацией дл  следующего такта работы . В последующих тактах работа процессора аналогична описанной.Computing modules 11i and 112 read the code of the problem to be solved and proceed to solving the first and second parts of the problem. Computing Module 11- | processes the data from the second region of the memory block 33 of the exchange device 10i and the results of this processing loads into the second region of the memory block 33 of the exchange device 102. At the same time, the first area of the memory unit 33 of the exchange device 10i is loaded from the input 3 of the next array. When processing the second input array, the computing module 11i uses the second regions of the memory block 33 of the 1Ch-102 interchange devices. Computing module 112 processes data from the first area of the memory block 33 of the exchange device 102 and loads the results of this processing into the first area of the memory block 33 of the exchange Yuz device. Before the third processor cycle, in the first area of the memory block 33 of the exchange device 10 there is a third input array with control information, and in the second and first areas of the memory block 33 of the second 102 and third Uz exchange devices, respectively, data arrays with control information are recorded for the next work cycle. In subsequent cycles, the processor is similar to that described.

Claims (2)

Формула изобретени  1. Систолический процессор, содержащий К вычислительных модулей, отличающийс  тем, что, с целью повышени  производительности за счет обеспечени  безконфликтного обмена, в него введены (К+1) устройств обмена, причем первый и второй тактовые входы процессора соединены соответственно с первыми и вторыми тактовыми входами всех устройств обмена, входы признаков записи в пам ть, считывани  из пам ти, записи в счетчик, считывани  из счетчика процессора соединены с одноименными первыми входами первого устройства обмена, вход сброса процессора - с входами сброса всех вычислительных модулей , третий тактовый вход процессора соединен с входами синхронизации вычислительных модулей, информационный вход-выход процессора соединен с первым информационным входом-выходом первого устройства обмена, первые выходы признаков записи в пам ть, считывани  из пам ти, записи в счетчик, считывани  из счетчика 1-го вычислительного модул  (1 1, 2, ...К) соединены соответственно с одноименными вторыми входами j-ro устройства обмена (j 1,2, ..., К+1), вторые выходы признаков записи в пам ть, считывани  из пам ти, записи в счетчик, считывани  изClaim 1. Systolic processor containing K computational modules, characterized in that, in order to improve performance by providing conflict-free exchange, (K + 1) exchange devices are inserted into it, the first and second clock inputs of the processor are connected respectively to the first and the second clock inputs of all the exchange devices, the attributes of the record to the memory, the reads from the memory, the write to the counter, the readings from the processor counter are connected to the same first inputs of the first exchange device, in q processor reset — with the reset inputs of all computing modules, the third clock input of the processor is connected to the synchronization inputs of the computing modules, the information input-output of the processor is connected to the first information input / output of the first exchange device, the first outputs of the write-to-memory signs, readings from the memory , records in the counter, readings from the counter of the 1st computing module (1 1, 2, ... K) are connected respectively with the same inputs of the j-ro exchange device (j 1,2, ..., K + 1), second outputs , read from memory, write to counter, read from счетчика 1-го вычислительного модул  соединены соответственно с одноименными вхо- дами (j + 1)-ro устройства обмена, информационный вход-выход i-ro вычислительного модул  соединен с вторым информационным входом выходом j-ro устройства обмена и первым информационным входом- выходом (j+1)-ro устройства обмена.the counter of the 1st computing module are connected respectively to the inputs of the same name (j + 1) -ro of the exchange device, the information input-output of the i-ro computing module is connected to the second information input of the j-ro exchange device and the first information input-output ( j + 1) -ro exchange device. 2.Процессор по п. 1,отличающийс 2. The processor under item 1, which is different тем, что устройство обмена содержит четыре регистра, блок пам ти и блок управлени , причем первый и второй тактовые входы устройства обмена соединены с одноименными входами блока управлени , выходыin that the exchange device contains four registers, a memory unit and a control unit, with the first and second clock inputs of the exchange device being connected to the same inputs of the control unit, the outputs адреса и признака запись/чтение соединены с одноименными входами блока пам ти, информационный вход-выход которого соединен с одноименными входами первого и второго регистров и выходами третьего иthe addresses and the sign write / read are connected to the same-named inputs of the memory block, the informational input-output of which is connected to the same-name inputs of the first and second registers and the outputs of the third and четвертого регистров, информационный выход первого регистра соединен с одноименным входом третьего регистра, первым информационным входом блока управлени  и  вл етс  первым информационным выходом устройства обмена, информационный выход второго регистра соединен с одноименным входом четвертого регистра, вторым информационным входом блока управлени  и  вл етс  информационнымthe fourth register, the information output of the first register is connected to the same input of the third register, the first information input of the control unit and is the first information output of the exchange device, the information output of the second register is connected to the same input of the fourth register, the second information input of the control unit and is information выходом устройства обмена, первые входы признаков записи, считывани , записи в счетчик, считывани  счетчика устройства соединены с одноименными первыми входами блока управлени , вторые входыthe output of the exchange device, the first inputs of the attributes of the write, read, write to the counter, read the counter of the device connected to the same inputs of the control unit, the second inputs признаков записи, считывани , записи в счетчик, считывани  счетчика устройства соединены с одноименными вторыми входами блока управлени , первый и второй выходы сброса блока управлени  соединены с одноименными входами соответственно третьего и четвертого регистров, входы сброса первого и второго регистров соединены соответственно с первым и вторым входами признаков считывани  блока управлени ,signs of writing, reading, writing to the counter, reading the device’s meter are connected to the second inputs of the control unit of the same name, the first and second outputs of the control unit are connected to the same inputs of the third and fourth registers, respectively; the reset inputs of the first and second registers are connected respectively to the first and second inputs indications of readout of the control unit, первый и второй выходы синхронизации которого соединены соответственно с одноименными входами первого и второго регистров, входы синхронизации третьего и четвертого регистров соединены соответственно с первым и вторым входами признаков записи блока управлени .The first and second synchronization outputs of which are connected respectively to the same inputs of the first and second registers, the synchronization inputs of the third and fourth registers are connected respectively to the first and second inputs of the records of the control unit. -- toto // ОЭ OE ff CJГОCJGO C4JC4J оЗ 3O3 3 ff гэge Л7.L7. CXJCXJ toto юYu feгfeg fO си 3fO si 3 S й«ЯS th "I d- Wd- W 4four
SU894746750A 1989-10-03 1989-10-03 Systolic processor SU1691847A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU894746750A SU1691847A1 (en) 1989-10-03 1989-10-03 Systolic processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU894746750A SU1691847A1 (en) 1989-10-03 1989-10-03 Systolic processor

Publications (1)

Publication Number Publication Date
SU1691847A1 true SU1691847A1 (en) 1991-11-15

Family

ID=21473357

Family Applications (1)

Application Number Title Priority Date Filing Date
SU894746750A SU1691847A1 (en) 1989-10-03 1989-10-03 Systolic processor

Country Status (1)

Country Link
SU (1) SU1691847A1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Систолические вычислительные структуры/Под ред. Я.А.Дуброва. АН УССР, ИППММ, препринт N° 3-87, Львов, 1988, л.22, рис.2,3. *

Similar Documents

Publication Publication Date Title
CA1145852A (en) Diagnostic circuitry in a data processor
EP0528585A1 (en) Processing system with internal instruction cache
GB1352577A (en) Multi-processor processing system having inter-processor interrupt transfer apparatus
JPH0690682B2 (en) Fault processing method of multiprocessor system
SU1691847A1 (en) Systolic processor
JPH08221319A (en) Semiconductor memory device
EP0436211B1 (en) Apparatus enabling observation of internal memory-mapped registers
SU1399750A1 (en) Device for interfacing two digital computers with common storage
SU1163326A1 (en) Device for generating diagnostic information about program run
SU1661778A1 (en) Device for interfacing two computers to common memory
SU1298758A2 (en) Interface for linking processor with arithmetic expander
JPH0222748A (en) Non-volatile memory control circuit
SU1631549A1 (en) Data processor
SU1352496A1 (en) Device for interfacing processor with memory
JPH01258291A (en) Access controller for dual port memory
SU1605273A1 (en) Multichannel data acquisition device
SU1488815A1 (en) Data source/receiver interface
SU1619282A1 (en) Memory
SU1341636A1 (en) Program interruption device
SU1737454A1 (en) Device for storing route of interprocessor exchanges in multiprocessor systems
SU1081638A1 (en) Data exchange control unit
SU1566361A1 (en) Device for data exchange between processors
JPH02216565A (en) Memory testing device
SU1320846A1 (en) Buffer memory
SU1559351A1 (en) Device for interfacing two computers