RU2032215C1 - Pipeline processor unit - Google Patents

Pipeline processor unit Download PDF

Info

Publication number
RU2032215C1
RU2032215C1 SU5020561A RU2032215C1 RU 2032215 C1 RU2032215 C1 RU 2032215C1 SU 5020561 A SU5020561 A SU 5020561A RU 2032215 C1 RU2032215 C1 RU 2032215C1
Authority
RU
Russia
Prior art keywords
switch
output
block
registers
outputs
Prior art date
Application number
Other languages
Russian (ru)
Inventor
А.А. Соколов
В.М. Агапов
А.Ю. Бяков
А.Ю. Губанов
Л.А. Зак
В.А. Жуковский
В.Л. Ли
В.А. Отто
Л.Ф. Чайковский
В.И. Смирнов
Original Assignee
Институт точной механики и вычислительной техники им.С.А.Лебедева РАН
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 Институт точной механики и вычислительной техники им.С.А.Лебедева РАН filed Critical Институт точной механики и вычислительной техники им.С.А.Лебедева РАН
Priority to SU5020561 priority Critical patent/RU2032215C1/en
Application granted granted Critical
Publication of RU2032215C1 publication Critical patent/RU2032215C1/en

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

FIELD: computer engineering. SUBSTANCE: processor unit has first switch 1, storage 2, second switch 3, control signal shaper 4, command flow shapers 5 and 6, third switch 7, fourth switch 8, arithmetic and logical unit 9, fifth switch 10, exchange unit 11. EFFECT: improved capacity of system and separate processor unit due to combining actions with vectors and scalers. 8 dwg

Description

Изобретение относится к вычислительной технике, в частности к модульным конвейерным процессорам, и может быть использовано для обработки данных физико-математических экспериментов, для научных расчетов, требующих высокой производительности и большого объема памяти. The invention relates to computer technology, in particular to modular conveyor processors, and can be used to process data from physical and mathematical experiments, for scientific calculations requiring high performance and a large amount of memory.

Известен конвейерный процессор, содержащий коммутатор записи, выход которого соединен с входом памяти, выход которой соединен с входом коммутатора чтения, коммутатор адресов и управления памятью, выходы которого соединены с входом памяти и коммутатора чтения, блок управления, подключенный к входу арифметико-логического устройства [1]. Known conveyor processor containing a recording switch, the output of which is connected to the input of the memory, the output of which is connected to the input of the read switch, the address switch and memory management, the outputs of which are connected to the input of the memory and read switch, the control unit connected to the input of the arithmetic logic device [ 1].

Однако это устройство не отличается высокой надежностью и высокой производительностью. However, this device is not characterized by high reliability and high performance.

По технической сущности наиболее близким к предлагаемому является конвейерный процессор, содержащий коммутатор записи, выход которого соединен с входом памяти, выход которой соединен с входом коммутатора чтения, коммутатор адресов и управления памятью, выходы которого соединены с входом памяти и коммутатора чтения, блок управления выполнением операций, выход которого соединен с входом арифметико-логического устройства [2]. By technical nature, the closest to the proposed one is a pipeline processor containing a write switch, the output of which is connected to the input of the memory, the output of which is connected to the input of the read switch, the address and memory management switch, the outputs of which are connected to the input of the memory and read switch, the operation control unit whose output is connected to the input of the arithmetic-logical device [2].

Однако и такое устройство не отличается высокой производительностью из-за невозможности параллельного совмещения операций над скалярными и векторными числами, а также достаточной надежностью функционирования. However, such a device does not differ in high performance due to the impossibility of parallel combining operations on scalar and vector numbers, as well as sufficient reliability of operation.

Целью изобретения является повышение надежности и производительности. The aim of the invention is to increase reliability and performance.

Для этого в конвейерный процессор, содержащий коммутатор записи, выход которого соединен с входом памяти, выход которой соединен с входом коммутатора чтения, коммутатор адресов и управления памятью, выходы которого соединены с входом памяти и коммутатора чтения, блок управления выполнением операций, выход которого соединен с входом арифметико-логического устройства, введены первый и второй блоки управления потоками команд, коммутатор результатов, адаптер системного канала, коммутатор операндов, причем выходы первого блока управления потоком команд соединены с входами блока управления выполнением операций, коммутатора адресов и управления памятью, коммутатора записи и коммутатора результатов, выходы которого соединены с входами коммутатора операндов, первого блока управления потоком команд, коммутатора записи и второго блока управления потоком команд, выходы которого соединены со входами коммутатора результатов, коммутатора адресов и управления памятью, коммутатора записи и блока управления выполнением операций, выходы которого соединены с входами коммутатора адресов и управления памятью, коммутатора операндов, коммутатора результатов и адаптера системного канала, выходы которого соединены с входами коммутатора адресов и управления памятью и коммутатора записи, выходы коммутатора чтения соединены с входами адаптера системного канала, первого и второго блоков управления потоками команд и коммутатора операндов, выходы которого соединены с входами арифметико-логического устройства, выход которого соединен с входом коммутатора результатов, а информационные вход и выход адаптера системного канала являются входными и выходными информационными шинами соответственно. To do this, in a pipeline processor containing a write switch, the output of which is connected to the input of the memory switch, the output of which is connected to the input of the read switch, the address and memory management switch, the outputs of which are connected to the memory input and the read switch, the operation control unit, the output of which is connected to the input of the arithmetic-logic device, the first and second control units for command flow control, a result switch, a system channel adapter, an operand switch are introduced, and the outputs of the first control unit the outflow of commands are connected to the inputs of the operation control unit, the address and memory control switch, the record and result switch, the outputs of which are connected to the inputs of the operand switch, the first command flow control unit, the write switch and the second command flow control unit, the outputs of which are connected to the inputs a results switch, an address and memory management switch, a recording switch, and an operation control unit whose outputs are connected to the inputs of the switch a addresses and memory management, the operand switch, the results switch and the system channel adapter, the outputs of which are connected to the inputs of the address switch and the memory management and the write switch, the outputs of the read switch are connected to the inputs of the system channel adapter, the first and second control flow control blocks and the operand switch, the outputs of which are connected to the inputs of the arithmetic-logical device, the output of which is connected to the input of the results switch, and the information input and output of the system adapter The channels are input and output information buses, respectively.

Сущность изобретения заключается в том, что введение первого и второго блоков управления потоками команд, коммутатора результатов, коммутатора операндов и адаптера системного канала позволило с максимальным темпом, согласованным с темпом подачи кодов операций, загружать операциями конвейерные арифметические устройства. The essence of the invention lies in the fact that the introduction of the first and second control units for command flows, a result switch, an operand switch and a system channel adapter made it possible to load conveyor arithmetic devices with operations at the maximum rate consistent with the rate of supply of operation codes.

Сравнение предлагаемого технического решения с прототипом позволило установить соответствие его критерию "новизна". Comparison of the proposed technical solution with the prototype made it possible to establish compliance with its criterion of "novelty."

При изучении других известных технических решений в данной области техники признаки, отличающие изобретение от прототипа, не были выявлены и потому они обеспечивают данному техническому решению соответствие критерию "изобретательский уровень". In the study of other well-known technical solutions in the art, the features that distinguish the invention from the prototype were not identified and therefore they provide this technical solution with the criterion of "inventive step".

Макетные испытания показали возможность промышленного его применения. Dummy tests showed the possibility of its industrial application.

На фиг. 1 представлена блок-схема конвейерного процессора; на фиг.2 - схема коммутатора операндов; на фиг.3 - схема арифметико-логического устройства; на фиг.4 - формирователь потока команд; на фиг.5 - коммутатор результатов; на фиг. 6 - схема коммутатора адресов и управления памятью; на фиг. 7 - схема формирователя управляющих сигналов; на фиг.8 - схема блока обмена. In FIG. 1 is a block diagram of a conveyor processor; figure 2 - diagram of the switch operands; figure 3 - diagram of the arithmetic logic device; figure 4 - shaper flow of commands; figure 5 - switch results; in FIG. 6 is a diagram of an address switch and memory management; in FIG. 7 is a diagram of a driver of control signals; on Fig is a block diagram of the exchange.

Конвейерный процессор содержит первый коммутатор 1 записи, память 2, второй коммутатор 3 адресов и управления памятью, формирователь 4 управляющих сигналов, два формирователя 5 и 6 потоков команд, третий коммутатор 7 чтения, четвертый коммутатор 8 операндов, арифметико-логический блок 9, пятый коммутатор 10 результатов, блок 11 обмена, подключенную к информационному выходу коммутатора 7 шину 12 данных блока 11 обмена кодовые шины 13 и 14, подключенные к первым информационным выходам первого и второго формирователей 5 и 6, шину 15-1 записи векторного результата, подключенную к первому информационному выходу коммутатора 10, кодовую шину 15-2 записи, подключенную к первому информационному входу блока 11, адресную шину 16, подключенную к адресному выходу коммутатора 3, шину 17 записи в память 2, подключенную к информационному выходу коммутатора 1, шину 18 данных из памяти 2, подключенную к ее информационному выходу, шину 19 управления, подключенную к управляющему выходу коммутатора 3, шины 20 и 21 данных для формирователей 5 и 6 управления, подключенные к первому и второму командным входам коммутатора 7, адресные шины 22 и 23 из формирователей 5 и 6, подключенные к их адресным выходам, шину 24 загрузки векторных ресурсов коммутатора 3, подключенную к первому управляющему выходу формирователя 4, шину 25 данных коммутатора 7, подключенную к его второму информационному выходу, шину 26 промежуточных результатов, подключенную ко второму информационному выходу коммутатора 10, шину 27 загрузки в коммутатор 8, подключенную к первому информационному выходу формирователя 4, шину 28 данных в коммутатор 8, подключенную к третьему информационному выходу коммутатора 10, шину 29 кода и признаков операций в функциональные модули, подключенную ко второму управляющему выходу формирователя 4, шины 30 и 31 первого и второго операндов в функциональные модули, подключенные к первому и второму информационным выходам коммутатора 8, шины 32 и 33 векторных команд из формирователей 5 и 6, подключенные к их первым управляющим выходам, адресную шину 34 коммутации результатов функциональных модулей, подключенную к адресному выходу формирователя 4, шину 35 первого скалярного операнда из первого формирователя 5 обмена, подключенную к его второму информационному выходу, шину 36 результатов функциональных модулей, подключенную к выходу блока 9, шину 37 второго скалярного операнда из второго формирователя 6 обмена, подключенную к его второму информационному выходу, шины 38 и 39 записи в формирователи 5 и 6, подключенные к четвертому и пятому информационным выходам коммутатора 10, шины 40 и 41 скалярных команд из формирователей 5 и 6, подключенные к их вторым управляющим выходам, шину 42 управления коммутатором 8, подключенную к третьему управляющему выходу формирователя 4, управляющую шину 43 загрузки блока 11 обмена, подключенную к четвертому управляющему выходу формирователя 4, адресную шину 44, подключенную к адресному выходу блока 11, входную и выходную информационные шины 45 и 46 обмена с каналом. The conveyor processor comprises a first write switch 1, a memory 2, a second switch 3 addresses and memory management, a shaper 4 control signals, two shapers 5 and 6 instruction flows, a third switch 7 reads, a fourth switch 8 operands, an arithmetic logic unit 9, a fifth switch 10 results, the exchange unit 11 connected to the information output of the switch 7, the data bus 12 of the exchange unit 11, code buses 13 and 14 connected to the first information outputs of the first and second shapers 5 and 6, the vector bus 15-1 of the recording vector Ltata connected to the first information output of the switch 10, a write bus 15-2 connected to the first information input of the block 11, an address bus 16 connected to the address output of the switch 3, a memory bus 2 connected to the information output of the switch 1, a data bus 18 from memory 2 connected to its information output, a control bus 19 connected to a control output of the switch 3, data buses 20 and 21 for control shapers 5 and 6, connected to the first and second command inputs of the switch 7, hell Tires 22 and 23 of shapers 5 and 6 connected to their address outputs, bus 24 for loading vector resources of switch 3 connected to the first control output of shaper 4, data bus 25 of switch 7 connected to its second information output, bus 26 of intermediate results connected to the second information output of the switch 10, the download bus 27 to the switch 8, connected to the first information output of the shaper 4, the data bus 28 to the switch 8 connected to the third information output of the switch 10, a bus 29 of code and signs of operations to the functional modules connected to the second control output of the driver 4, buses 30 and 31 of the first and second operands to the functional modules connected to the first and second information outputs of the switch 8, buses 32 and 33 of the vector commands from the formers 5 and 6, connected to their first control outputs, an address bus 34 for switching the results of the functional modules connected to the address output of the driver 4, bus 35 of the first scalar operand from the first driver 5 exchange, connect connected to its second information output, function module results bus 36 connected to the output of block 9, bus 37 of the second scalar operand from the second exchange driver 6 connected to its second information output, write buses 38 and 39 to drivers 5 and 6, connected to the fourth and fifth information outputs of the switch 10, the bus 40 and 41 of scalar commands from the drivers 5 and 6 connected to their second control outputs, the control bus 42 of the switch 8 connected to the third control output of the driver 4, control an access bus 43 of the exchange unit 11 connected to the fourth control output of the driver 4, an address bus 44 connected to the address output of the unit 11, input and output information buses 45 and 46 of the exchange with the channel.

В коммутатор 8 операндов (фиг.2) входят регистры 47 и 48 скалярных операндов, регистры 49 и 50 векторных первой и второй констант, регистры 51-56 считывания, регистры 57-60 промежуточных векторных результатов, блок 61 коммутации причем к первому информационному входу 28 коммутатора 8 подключены входы регистров 47 и 48, к второму информационному входу 27 - входы регистров 49 и 50, к третьему информационному входу 25 - входы регистров 51-56, к четвертому информационному входу 26 - входы регистров 57-60, выходы всех регистров 47-60 подключены к входам блока 61, управляющий вход которого соединен с шиной 42 управления, а его выходы подключены к шинам 30 и 31 первого и второго операндов в зависимости от обрабатываемой информации. The switch 8 operands (figure 2) includes registers 47 and 48 of scalar operands, registers 49 and 50 of the vector of the first and second constants, registers 51-56 of reading, registers 57-60 of intermediate vector results, block 61 switching and to the first information input 28 the switch 8 is connected to the inputs of the registers 47 and 48, to the second information input 27 - the inputs of the registers 49 and 50, to the third information input 25 - the inputs of the registers 51-56, to the fourth information input 26 - the inputs of the registers 57-60, the outputs of all registers 47- 60 are connected to the inputs of block 61, which controls the stroke of which is connected to the control bus 42, and its outputs are connected to the buses 30 and 31 of the first and second operands depending on the information being processed.

В арифметико-логическое устройство 9 (фиг.3) входят 8 функциональных модулей 62-69 (4 скалярных и 4 векторных), управляющие входы которых подключены к шине 29 кода и признаков операций, а информационные входы в зависимости от поступающих операндов (скалярной или векторной информации) подключены к шинам 30 и 31 первого и второго операндов, выход каждого модуля соединен с шиной 36 результатов функциональных модулей. The arithmetic logic device 9 (Fig. 3) includes 8 functional modules 62-69 (4 scalar and 4 vector), the control inputs of which are connected to the bus 29 of the code and signs of operations, and the information inputs, depending on the incoming operands (scalar or vector information) are connected to the buses 30 and 31 of the first and second operands, the output of each module is connected to the bus 36 of the results of the functional modules.

Формирователи 5 и 6 потоков команд (фиг.4), в каждый из которых входят блок 70 буферных регистров записи, блок 71 формирования адреса, D-регистры 72, индексные регистры 73, блок 74 адресной арифметики, блок 75 регистров векторных слогов, блок 76 регистров векторных адресов, блок 77 регистров команд, блок 78 регистров предварительной выборки команд, блок 79 дешифрации команды, блок 80 регистров арифметических команд, блок 81 регистров обменных команд, блок 82 регистров скалярных операндов, причем к командному входу 20 формирователя 5 подключены управляющие входы D-регистров 72, индексных регистров 73, блока 78 регистров и блока 82 регистров, информационный вход которого подключен к информационному входу блока 61 управления, первый выход блока 74 соединен с информационными входами D-регистров 72 и индексных регистров 73, выходы которых подключены к первому и второму информационным входам блока 74, причем выход индексных регистров 73 соединен с входом блока 81, второй и третий информационные выходы блока 74 подключены к входам блоков 70 и 71, выход блока 70 соединен с вторым управляющим выходом 13 формирователя 5, а выход блока 71 подключен к адресному выходу 22 формирователя 5, четвертый и пятый информационные выходы блока 74 подключены, соответственно, к входам блоков 75 и 76, выходы которых соединены с первым управляющим выходом формирователя 5, выход блока 78 подключен к входам блоков 77 и 79, второй вход которого соединен с выходом блока 77, выход блока 79 подключен к входу блока 80, выход которого и выход блока 81 соединены с вторым информационным выходом 35 формирователя 5, информационный вход блока 82 соединен с информационным входом 38 формирователя 5, выход блока 82 соединен с первым информационным выходом 40 формирователя 5. Shapers 5 and 6 of the instruction flows (Fig. 4), each of which includes a block 70 of buffer registers for writing, a block 71 for generating an address, D-registers 72, index registers 73, a block 74 for address arithmetic, a block 75 for registering vector syllables, a block 76 vector address registers, block 77 registers of instructions, block 78 registers of prefetching commands, block 79 of command decryption, block 80 of registers of arithmetic instructions, block 81 of registers of exchange instructions, block 82 of registers of scalar operands, and control inputs connected to command input 20 of shaper 5 D-registers 72, index registers 73, register block 78 and register block 82, the information input of which is connected to the information input of control unit 61, the first output of block 74 is connected to the information inputs of D-registers 72 and index registers 73, the outputs of which are connected to the first and second information inputs of block 74, wherein the output of the index registers 73 is connected to the input of block 81, the second and third information outputs of block 74 are connected to the inputs of blocks 70 and 71, the output of block 70 is connected to the second control output 13 of driver 5, and the output of block 71 is connected to the address output 22 of shaper 5, the fourth and fifth information outputs of block 74 are connected, respectively, to the inputs of blocks 75 and 76, the outputs of which are connected to the first control output of the shaper 5, the output of block 78 is connected to the inputs of blocks 77 and 79 the second input of which is connected to the output of block 77, the output of block 79 is connected to the input of block 80, the output of which and the output of block 81 are connected to the second information output 35 of driver 5, the information input of block 82 is connected to information input 38 of driver 5, output b eye 82 connected to the first data output driver 40 5.

В коммутатор 10 результатов (фиг.5) входят блоки 83-90 регистров адресов результатов каждого функционального модуля, блок 91 коммутации результатов функциональных модулей, регистры 92 и 93 скалярных операндов из первого и второго блоков управления, сумматоры 94-101 скалярных величин, коммутатор 102 результатов скалярных сумматоров, причем вход каждого блока 83-90 регистров подключен к адресному входу 34 коммутатора 10, управляющие входы блока 91 соединены с выходами блоков 83-90 регистров, а информационные входы блока 91 коммутации подключены к второму информационному входу 36 коммутатора 10, первый информационный выход блока 91 соединен с первым информационным выходом 15-1 коммутатора 10, второй информационный выход блока 91 подключен к второму информационному выходу 26 коммутатора 10, остальные 8 выходов блока 91 соединены со входами каждого из сумматоров 94-101, выходы которых и выходы регистров 92 и 93 подключены к входам коммутатора 102, первый, второй и третий информационные выходы которого соединены соответственно с третьим, четвертым и пятым информационными выходами 28, 38 и 39 коммутатора 10, четвертый информационный выход коммутатора 102 подключен к входу блока 91 коммутации, входы регистров 92 и 93 соединены соответственно с первым и третьим информационными входами 35 и 37 коммутатора 10. The results switch 10 (Fig. 5) includes blocks 83-90 of the address registers of the results of each functional module, block 91 for switching the results of the functional modules, registers 92 and 93 of scalar operands from the first and second control units, adders 94-101 of scalar quantities, switch 102 the results of scalar adders, the input of each block 83-90 registers connected to the address input 34 of the switch 10, the control inputs of the block 91 are connected to the outputs of the blocks 83-90 registers, and the information inputs of the block 91 of the switching connected to the second inf the input input 36 of the switch 10, the first information output of the block 91 is connected to the first information output 15-1 of the switch 10, the second information output of the block 91 is connected to the second information output 26 of the switch 10, the remaining 8 outputs of the block 91 are connected to the inputs of each of the adders 94-101 the outputs of which and the outputs of the registers 92 and 93 are connected to the inputs of the switch 102, the first, second and third information outputs of which are connected respectively to the third, fourth and fifth information outputs 28, 38 and 39 of the switch 10, fourth th informational output of the switch 102 is connected to the input switching unit 91, input registers 92 and 93 are connected respectively to the first and third information inputs 35 and 37 of the switch 10.

В коммутатор 3 адресов и управления памятью (фиг.6) входят коммутатор 103 адресов записи, коммутатор 104 адресов считывания векторных величин, блок 105 управления коммутаторами памяти, два идентичных блока 106-1 и 106-2 выработки адресов векторной записи, в каждый из которых входят счетчик 107 длины адресов записи, блок 108 управления выработки векторных адресов записи, генератор 109 адресов векторной записи, регистр 110 начального адреса записи, регистр 111 шага записи, шесть идентичных блоков 112-1 - 112-6 выработки адресов векторного считывания, в каждый из которых входят блок 113 управления выработки векторных адресов считывания, генератор 114 адресов векторного считывания, счетчик 115 длины адресов векторного считывания, регистр 116 начального адреса считывания, регистр 117 шага считывания. The switch 3 addresses and memory management (6) includes a switch 103 write addresses, a switch 104 addresses for reading vector values, a block 105 for managing memory switches, two identical blocks 106-1 and 106-2 for generating vector write addresses, each of which the counter 107 includes the length of the write addresses, the control unit 108 generating vector addresses of the write, the generator 109 addresses of the vector write, the register 110 of the starting address of the record, the register 111 of the write step, six identical blocks 112-1 - 112-6 generate the vector read addresses, each to which includes a vector read address generation control unit 113, a vector read address generator 114, a vector read address length counter 115, a read start address register 116, a read step register 117.

В формирователь 4 управляющих сигналов (фиг.7) входят блок 118 загрузки, состоящий из блока 119 загрузки генераторов адресов векторных и блока 120 загрузки фрагментов, блок 121 активизации фрагментов, шесть идентичных блоков 122-1 - 122-6 управляющих фрагментов, блок 123 регистров управляющей информации, блок 124 анализа занятости функционального модуля, блок 125 пуска функционального модуля, сдвигатели 126-129, два коммутатора 130-1 и 130-2 управления, шесть счетчиков 131-1 - 131-6 готовности на считывание, четыре счетчика 132-1 - 132-4 промежуточных результатов, два счетчика 133-1 и 133-2 готовности на запись, регистр 134 скалярной команды, блок 135 приоритетного управления, блок 136 управления коммутатором операндов, блок 137 выдачи кода операций и признаков в функциональный модуль, блок 138 выработки адреса результата. The driver 4 control signals (Fig.7) includes a download block 118, consisting of a block 119 download generators of addresses of the vector and block 120 download fragments, block 121 activation fragments, six identical blocks 122-1 - 122-6 control fragments, block 123 registers control information, functional module occupancy analysis unit 124, functional module start-up unit 125, shifters 126-129, two control switches 130-1 and 130-2, six read-out counters 131-1 - 131-6, four counters 132-1 - 132-4 subtotals, two counts ka 133-1 and 133-2 are ready for recording, register 134 of the scalar command, priority control unit 135, operand switch control unit 136, operation and feature code output unit 137 to the function module, result address generation unit 138.

В блок 11 обмена входит блок 139 приемного сопряжения, содержащий приемный регистр 140, два блока 141 и 142 регистров, мультиплексор 143, блок 144 записи данных, содержащий мультиплексор 145, регистр 146, блок 147 выходного сопряжения, содержащий регистр-передатчик 148, мультиплексор 149, блок 150 выдачи служебной информации, блок 151 считывания данных, блок 152 управляющих слов, блок 153 генерации адресов памяти, содержащий сумматоры 154-156, мультиплексор 157, регистр 158, блок 159 регистров инструкции. The exchange unit 11 includes a receiving interface unit 139 containing a receiving register 140, two register units 141 and 142, a multiplexer 143, a data recording unit 144 containing a multiplexer 145, a register 146, an output interface unit 147 containing a transmitter-register 148, a multiplexer 149 , service information issuing unit 150, data reading unit 151, control word unit 152, memory address generation unit 153 comprising adders 154-156, multiplexer 157, register 158, instruction register block 159.

Синхронизация работы устройства - однофазная. Однако в зависимости от элементной базы, типов используемых триггеров и схемотехники может быть использована и другая система синхронизации, в частности многофазная. Device synchronization is single-phase. However, depending on the elemental base, types of triggers used and circuitry, another synchronization system, in particular multiphase, can be used.

Конвейерный процессор работает следующим образом. The conveyor processor operates as follows.

После начальной иницианизации формирователи 5 и 6 потоков команд выполняют подкачку программного кода из памяти 2. С этой целью они выдают запросы по адресным шинам 22 и 23 через коммутатор 3 адресов и управления памятью. Программный код из памяти 2 через коммутатор 7 чтения по шинам 20 и 21 данных для формирователей 5 и 6 потоков команд поступает в блок 78 буферных регистров предварительной выборки команд каждого из формирователей 5 и 6 потоков команд, из которого команда поступает на блок 79 дешифрации команды и параллельно записывается в ассоциативный блок 77 командных слов. After the initialization, the shapers 5 and 6 of the instruction flows pump the program code from memory 2. To this end, they issue requests on the address buses 22 and 23 through the 3 address and memory management switch. The program code from memory 2 through the read switch 7 on the data buses 20 and 21 for the shapers 5 and 6 of the instruction flows enters the block 78 buffer registers for prefetching the commands of each of the formers 5 and 6 of the instruction flows, from which the command is sent to the instruction decryption unit 79 and written in parallel to the associative block 77 command words.

Формирователи 5 и 6 потоков команд выдают скалярные команды в формирователь 4 управляющих сигналов выполнением операций по шинам 40 и 41 скалярных команд и скалярные операнды из регистров 82 скалярных в коммутатор 10 результатов по шинам 35 и 37 скалярных операндов из формирователей 5 и 6 потоков команд. The shapers 5 and 6 of the instruction flows issue scalar commands to the shaper 4 of the control signals by performing operations on the buses 40 and 41 of scalar commands and the scalar operands from the registers 82 of scalar results to the commutator 10 on the buses 35 and 37 of the scalar operands from the shapers 5 and 6 of the instruction flows.

Пересылка содержимого скалярных регистров 101 из коммутатора 10 результатов в регистры 82 скалярные формирователей 5 и 6 осуществляется по шинам 38 и 39 записи скалярных операндов. The contents of the scalar registers 101 are transferred from the results switch 10 to the registers 82 of the scalar shapers 5 and 6 via the write buses 38 and 39 of the scalar operands.

Формирователи 5 и 6 потоков команд выдают векторные задания в формирователь 4 управляющих сигналов выполнением операций по шинам 32 и 33 векторных команд. Shapers 5 and 6 of the command streams issue vector tasks to the shaper 4 of the control signals by performing operations on the buses 32 and 33 of the vector commands.

Запись содержимого регистров 82 скалярных, индексных регистров 73, D-регистров 72 формирователей 5 и 6 в память 2 осуществляется по кодовым шинам 13 и 14 записи. The contents of the registers 82 scalar, index registers 73, D-registers 72 of the shapers 5 and 6 in the memory 2 are recorded on the code lines 13 and 14 of the record.

Формирователи 5 и 6 работают на общей памяти 2 и управляют самостоятельными независимыми потоками команд с возможностью аппаратно-программной синхронизации их друг с другом. Количество таких блоков принципиально может быть увеличено, что позволит повысить производительность скалярных вычислений. Shapers 5 and 6 operate on shared memory 2 and control independent independent flow of commands with the possibility of hardware-software synchronization with each other. The number of such blocks can be fundamentally increased, which will improve the performance of scalar computing.

Формирователь 4 управляет выполнением векторных и скалярных команд. При выполнении векторных команд формирователь 4 загружает по шине 24 загрузки векторные ресурсы коммутатора 3 адресов и управления памятью генераторы 114 и 109 адресов векторных считывания и записи, счетчики 115 и 107 длины векторных выражений. Shaper 4 controls the execution of vector and scalar commands. When executing vector commands, the shaper 4 loads the vector resources of the 3 address switch and memory management generators 114 and 109 vector read and write addresses, counters 115 and 107 of the length of the vector expressions via the download bus 24.

Формирователь 4 управляет подключением векторных операндов в коммутаторе 8 операндов для арифметико-логического устройства 9 по шине 42 управления. Shaper 4 controls the connection of vector operands in the switch 8 of the operands for the arithmetic-logic device 9 via the control bus 42.

Формирователь 4 загружает регистры 49, 50 векторных констант коммутатора 8 операндов по шине 27 загрузки и передает код операции векторных и скалярных команд в функциональные модули арифметико-логического устройства 9 по шине 29 кода и признаков операций и адреса результатов в коммутатор 10 результатов по адресной шине 34 коммутации результата. Shaper 4 loads the registers 49, 50 of the vector constants of the switch 8 operands via the download bus 27 and transmits the operation code of the vector and scalar commands to the functional modules of the arithmetic-logic device 9 via the code bus 29 and the signs of the operations and the address of the results to the results switch 10 on the address bus 34 switching result.

Коммутатор 3 адресов и управления памятью осуществляет коммутацию адресов двенадцати запросчиков в память 2 по адресной шине 16 в соответствии со схемой приоритета и занятостью модулей памяти 2. The switch 3 addresses and memory management performs switching addresses of the twelve interrogators in memory 2 via address bus 16 in accordance with the priority scheme and the occupancy of memory modules 2.

В коммутаторе 8 операндов блоки 51-56 регистров считывания загружаются из памяти 2 через коммутатор 7 чтения по шине 25 данных, а блоки 57-60 регистров промежуточных векторных результатов загружаются по шине 26, скалярные регистры 47, 48 для первого и второго операндов загружаются по шине 28 данных. In switch 8 of operands, blocks 51-56 of read registers are loaded from memory 2 through switch 7 of read on bus 25 of data, and blocks 57-60 of registers of intermediate vector results are loaded on bus 26, scalar registers 47, 48 for the first and second operands are loaded on bus 28 data.

Коммутатор 8 операндов осуществляет коммутацию векторных и скалярных операндов в функциональные модули арифметико-логического устройства 9 и передает первый операнд по шине 30, а второй операнд - по шине 31. The switch 8 of the operands commutes the vector and scalar operands into the functional modules of the arithmetic-logic device 9 and transfers the first operand on bus 30, and the second operand on bus 31.

Арифметико-логическое устройство 9 получает команду из формирователя 4, операнды - из коммутатора 8 операндов и передает результаты вычислений в коммутатор 10 результатов по шине 36, который коммутирует промежуточные векторные результаты в блоки регистров промежуточных результатов коммутатора 8 операндов по шине 26, а окончательные результаты векторных вычислений - в коммутатор 1 записи по шине 15-1 для записи в память 2. The arithmetic-logic device 9 receives the command from the shaper 4, the operands from the switch 8 of the operands and transfers the calculation results to the switch 10 of the results via bus 36, which commutes the intermediate vector results into the register blocks of the intermediate results of the switch 8 operands via bus 26, and the final results are vector computing - in the switch 1 records on the bus 15-1 for recording in memory 2.

Блок 11 получает управляющую информацию-инструкцию из формирователя 4 по управляющей шине 43. Block 11 receives control information-instruction from the shaper 4 via the control bus 43.

В блоке 11 информация через блок 159 регистров инструкций направляется в блок 152 управляющих слов и инициирует обмен по системному каналу по информационным шинам 45 и 46 связи с абонентом, например, с внешней памятью (на фигурах не показано). In block 11, information through block 159 of instruction registers is sent to block 152 of control words and initiates an exchange through the system channel via information buses 45 and 46 of communication with the subscriber, for example, with external memory (not shown in the figures).

Если инструкция типа "выдача", то через блок 150 выдачи служебной информации и блок 147 выходного сопряжения, выдается сообщение-заявка в системный канал и ожидается ответ-квитанция, который принимается в блоке 139 приемного сопряжения и направляется в блок 152 управляющих слов, который загружает адресной информацией один из сумматоров 154-156 блока 153 генерации адресов и выдает в коммутатор 3 адресов и управления памятью поток последовательных адресов памяти. Полученные из памяти 2 данные по шине 12 поступают в блок 151 считывания данных блока 11 и выдаются в системный канал через блок 147 выходного сопряжения на информационную шину 46. If the instruction is of the “issuance” type, then through the service information issuing unit 150 and the output pairing unit 147, an application message is issued to the system channel and a response-receipt is received, which is received in the receiving pairing unit 139 and sent to the control word block 152, which loads address information, one of the adders 154-156 of the address generation unit 153 and issues a stream of consecutive memory addresses to the switch 3 of addresses and memory management. Obtained from memory 2, data on bus 12 enters block 151 for reading data from block 11 and is output to the system channel through block 147 of the output interface to data bus 46.

При выполнении инструкции "принять" блок 11 системного канала работает аналогично, но в ответ на заявку, по информационной шине 45 поступает не квитанция, а поток последовательных данных, накапливаемых в блоках 141, 142 регистров блока 139 приемного сопряжения и передаваемых через блок 144 записи данных на кодовую шину 15-2 для запоминания в памяти 2 через коммутатор 1 записи. When executing the “accept” instruction, the system channel unit 11 works in the same way, but in response to the request, the information bus 45 does not receive a receipt, but a stream of serial data accumulated in blocks 141, 142 of the registers of the receiving pair 139 and transmitted through the data recording unit 144 to the code bus 15-2 for storing in memory 2 through the switch 1 records.

Таким образом, выполнение арифметико-логического устройства 9 в виде восьми функциональных модулей, способных выполнять векторные и скалярные операции, позволяет с высокой надежностью максимально использовать оборудование. Введение коммутаторов 8 и 10 операндов и результатов обеспечивает связанность слогов в векторном выражении без записи промежуточных результатов в память. Введение формирователей 5 и 6 управления потоками команд и блока 11 системного канала при предложенной организации связей позволяет с максимальным темпом загружать операциями конвейерные арифметические устройства. Thus, the implementation of the arithmetic-logical device 9 in the form of eight functional modules capable of performing vector and scalar operations allows maximum use of equipment with high reliability. The introduction of switches 8 and 10 of operands and results ensures that syllables are connected in a vector expression without storing intermediate results in memory. The introduction of shapers 5 and 6 of command flow control and block 11 of the system channel with the proposed organization of communications allows loading conveyor arithmetic devices with maximum speed.

Claims (1)

КОНВЕЙЕРНЫЙ ПРОЦЕССОР, содержащий первый и второй коммутаторы, выходы которых соединены с входами памяти, выход которой соединен с входом третьего коммутатора, формирователь управляющих сигналов, выход которого соединен с входом арифметико-логического блока, отличающийся тем, что в него введены первый и второй формирователи потоков команд, четвертый и пятый коммутаторы и блок обмена, причем выходы четвертого коммутатора соединены с входами арифметико-логического блока, выход которого соединен с входом пятого коммутатора, выходы которого соединены с входами первого и четвертого коммутаторов и первого и второго формирователей потоков команд, выходы которых соединены с входами первого, второго и пятого коммутаторов и формирователя управляющих сигналов, выходы которого соединены с входами второго, четвертого и пятого коммутаторов и блока обмена, выходы которого соединены с входами первого коммутатора и второго коммутатора, выход которого соединен с входом третьего коммутатора, выходы которого соединены с входами блока обмена, четвертого коммутатора и первого и второго формирователей потоков команд. CONVEYOR PROCESSOR, comprising the first and second switches, the outputs of which are connected to the memory inputs, the output of which is connected to the input of the third switch, a control signal shaper, the output of which is connected to the input of the arithmetic-logical unit, characterized in that the first and second stream shapers are introduced into it commands, the fourth and fifth switches and the exchange unit, and the outputs of the fourth switch are connected to the inputs of the arithmetic-logical unit, the output of which is connected to the input of the fifth switch, the outputs of which connected to the inputs of the first and fourth switches and the first and second shapers of the command flows, the outputs of which are connected to the inputs of the first, second and fifth switches and the shaper of control signals, the outputs of which are connected to the inputs of the second, fourth and fifth switches and the exchange unit, the outputs of which are connected with the inputs of the first switch and the second switch, the output of which is connected to the input of the third switch, the outputs of which are connected to the inputs of the exchange unit, the fourth switch and the first and second about shapers of flows of teams.
SU5020561 1992-01-27 1992-01-27 Pipeline processor unit RU2032215C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU5020561 RU2032215C1 (en) 1992-01-27 1992-01-27 Pipeline processor unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU5020561 RU2032215C1 (en) 1992-01-27 1992-01-27 Pipeline processor unit

Publications (1)

Publication Number Publication Date
RU2032215C1 true RU2032215C1 (en) 1995-03-27

Family

ID=21593602

Family Applications (1)

Application Number Title Priority Date Filing Date
SU5020561 RU2032215C1 (en) 1992-01-27 1992-01-27 Pipeline processor unit

Country Status (1)

Country Link
RU (1) RU2032215C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2781355C1 (en) * 2021-11-03 2022-10-11 Акционерное общество Научно-производственный центр «Электронные вычислительно-информационные системы» (АО НПЦ «ЭЛВИС») Scalar-vector processor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1. Патент США N 4149243, кл. 364-200, опубл. 1979. *
2. Патент США N 4694035, кл. 364-200, опубл. 1988. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2781355C1 (en) * 2021-11-03 2022-10-11 Акционерное общество Научно-производственный центр «Электронные вычислительно-информационные системы» (АО НПЦ «ЭЛВИС») Scalar-vector processor

Similar Documents

Publication Publication Date Title
CN101925881B (en) Multiprocessor system and multiprocessor system synchronization method
US4181934A (en) Microprocessor architecture with integrated interrupts and cycle steals prioritized channel
US3728693A (en) Programmatically controlled interrupt system for controlling input/output operations in a digital computer
EP0172038B1 (en) Information processor
US5561808A (en) Asymmetric vector multiprocessor composed of a vector unit and a plurality of scalar units each having a different architecture
US5014236A (en) Input/output bus expansion interface
US5214767A (en) Full address and odd boundary direct memory access controller which determines address size by counting the input address bytes
CN103714026A (en) Memorizer access method and device supporting original-address data exchange
RU2032215C1 (en) Pipeline processor unit
JP2589821B2 (en) Central processing unit of information processing system
US6195747B1 (en) System and method for reducing data traffic between a processor and a system controller in a data processing system
GB1285591A (en) Direct function digital data processor
CN102043755B (en) Reconfigurable processing device and system
KR100326156B1 (en) Interface device between dual processors
RU2198422C2 (en) Asynchronous synergistic computer system
SU521559A1 (en) Multiplex channel multiprocessor computing system
SU1176340A1 (en) Information input-outrut device
SU1679497A1 (en) Device to exchange data between the computer and peripherais
SU693364A1 (en) Device for interfacing with main
RU2179333C1 (en) Synergistic computer system
JPS5835635A (en) Memory control circuit
RU1797722C (en) Input-output processor
JPH0926945A (en) Information processor
JPS6116115B2 (en)
SU877520A1 (en) Interfacing device

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20070128