JPH0644072A - Instruction supplying system for parallel arithmetic circuit - Google Patents
Instruction supplying system for parallel arithmetic circuitInfo
- Publication number
- JPH0644072A JPH0644072A JP9908092A JP9908092A JPH0644072A JP H0644072 A JPH0644072 A JP H0644072A JP 9908092 A JP9908092 A JP 9908092A JP 9908092 A JP9908092 A JP 9908092A JP H0644072 A JPH0644072 A JP H0644072A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- emu
- exu
- execution
- control
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Landscapes
- Advance Control (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、一般的な演算を行う演
算回路及びデジタル信号処理を行う回路の命令供給方式
に関し、特に並列演算回路の命令供給方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an instruction supply system for an arithmetic circuit that performs general arithmetic and a circuit that performs digital signal processing, and more particularly to an instruction supply system for a parallel arithmetic circuit.
【0002】[0002]
【従来の技術】従来の並列演算回路は、複数の演算ユニ
ットに対して命令を供給する方式として、全ユニットに
対して同一の命令列を与える方式と、各演算ユニット
がローカルに制御記憶を有し、各々のユニットが個別に
命令を実行する方式とが存在する。2. Description of the Related Art In a conventional parallel arithmetic circuit, as a method of supplying instructions to a plurality of arithmetic units, the same instruction sequence is given to all units, and each arithmetic unit has a control memory locally. However, there is a method in which each unit individually executes an instruction.
【0003】しかしながら、前者の方式は、ベクトル
データに対しては有効な手段ではあるが、演算の実行要
求がランダムに発生するデータに対しては適していな
い。従って、そのような用途、例えば論理回路のシミュ
レーション等には、後者の方式が採用されている。However, the former method is an effective means for vector data, but is not suitable for data in which arithmetic execution requests are randomly generated. Therefore, the latter method is adopted for such an application, for example, a simulation of a logic circuit.
【0004】また、単一の命令列に対して複数の演算ユ
ニットを動的に割り当てるものとして、最近ではスーパ
ースカラー(Superscalar)方式が提唱され
ている。これは、単一の命令列からハードウェアが並列
実行できるものを判断し、動的に複数の演算ユニットに
割り当てる方式である。Further, recently, a superscalar method has been proposed as a method for dynamically allocating a plurality of arithmetic units to a single instruction sequence. This is a method of determining what can be executed in parallel by hardware from a single instruction sequence and dynamically assigning it to a plurality of arithmetic units.
【0005】[0005]
【発明が解決しようとする課題】上述した従来の方式
では、各演算ユニットが個別に制御記憶を備えなければ
ならない。しかも、各制御記憶へは同一の命令列が記憶
され、各演算ユニットが異なる命令列を同時に実行する
方式がほとんどである。この方式では、個々の演算ユニ
ットが独立した動作を行うため、各ユニット間の同期を
とる回路のコストや、同期によるロスタイムが大きい。In the above-mentioned conventional method, each arithmetic unit must be provided with a control memory individually. Moreover, in most of the systems, the same instruction sequence is stored in each control memory and each arithmetic unit simultaneously executes different instruction sequences. In this method, since each arithmetic unit operates independently, the cost of the circuit for synchronizing the units and the loss time due to the synchronization are large.
【0006】また、スパースカラー方式は、こうした欠
点を持っていはいなが、与えられる命令列が単一のもの
であり、居所適な並列処理しか実行できない。Although the sparse color system does not have such drawbacks, it is capable of executing only parallel processing suitable for its location because a single instruction string is given.
【0007】[0007]
【課題を解決するための手段】本発明は、実際の演算を
行う複数の演算実行部と、この演算実行部に与える命令
を記憶する制御記憶部と、前記演算実行部への命令の供
給及び前記演算実行部の動作を制御する実行管理部と、
演算全体を制御する制御部とを備えている。SUMMARY OF THE INVENTION According to the present invention, a plurality of operation executing units for performing an actual operation, a control storage unit for storing an instruction given to the operation executing units, an instruction supply to the operation executing units, and An execution management unit that controls the operation of the calculation execution unit;
And a control unit for controlling the entire calculation.
【0008】[0008]
【実施例】次に、本発明について図面を参照して説明す
る。DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be described with reference to the drawings.
【0009】図1は本発明の一実施例を示すブロック図
である。図1において、1は実行管理ユニット(EM
U)であり実行ユニット(EXU)の動作を管理する。
2は制御ユニット(CU)でありEMUに対して命令の
実行を伝える。3は制御記憶(CS)でありEXUに対
して与える命令列を記憶する。4は実行ユニット1(E
XU1)である。5は実行ユニット2(EXU2)であ
る。6は実行ユニット3(EXU3)である。そして、
7は実行ユニット4(EXU4)である。FIG. 1 is a block diagram showing an embodiment of the present invention. In FIG. 1, 1 is an execution management unit (EM
U) and manages the operation of the execution unit (EXU).
Reference numeral 2 is a control unit (CU) which notifies the EMU of execution of an instruction. Reference numeral 3 is a control memory (CS) which stores an instruction sequence given to the EXU. 4 is the execution unit 1 (E
XU1). Reference numeral 5 is an execution unit 2 (EXU2). Reference numeral 6 is an execution unit 3 (EXU3). And
Reference numeral 7 is an execution unit 4 (EXU4).
【0010】各EXU4〜7はEMU1からの信号で制
御される。8は制御バスでありCPU2とEMU1との
間で命令及びステータスの転送を行う。9は命令アドレ
スバスでありCS3に対して各EXU4〜7へ転送する
命令列のアドレスを与える。10は命令バスでありCS
3から読み出された命令列を各EXU4〜7へ転送す
る。この命令バス10は一度に複数の命令を送るため、
命令のビット幅に対してその幅を広くしてある。例え
ば、1つの命令が32ビットで表現されている場合、バ
ス幅を128ビットとすれば、各EXU4〜7に対して
1回の転送で4命令を送ることができる。Each EXU4-7 is controlled by a signal from EMU1. A control bus 8 transfers commands and statuses between the CPU 2 and the EMU 1. An instruction address bus 9 gives an address of an instruction sequence to be transferred to each of the EXUs 4 to 7 to CS3. 10 is an instruction bus, CS
The instruction sequence read out from No. 3 is transferred to each EXU 4-7. This command bus 10 sends multiple commands at once,
The width is made wider than the bit width of the instruction. For example, when one instruction is expressed by 32 bits, if the bus width is 128 bits, 4 instructions can be sent to each EXU 4 to 7 in one transfer.
【0011】11はEXU制御ライン1である。12は
EXU制御ライン2である。13はEXU制御ライン3
である。そして、14はEXU制御ライン4である。各
制御ラインは、EMU1が各EXU4〜7を制御するた
めのものであり、それぞれ、リクエスト信号,アクノリ
ッジ信号,ビジー信号,その他の制御線で構成される。
リクエスト信号はEXUからEMUへ命令の転送を要求
する。アクノリッジ信号はEMUから出力され命令バス
上にEXUが取り込むべき命令が出力されていることを
示す。ビジー信号は、EXUが演算の実行中であること
を示す。Reference numeral 11 is an EXU control line 1. Reference numeral 12 is an EXU control line 2. 13 is EXU control line 3
Is. And 14 is an EXU control line 4. Each control line is for the EMU 1 to control each of the EXUs 4 to 7, and is composed of a request signal, an acknowledge signal, a busy signal, and other control lines, respectively.
The request signal requests transfer of an instruction from the EXU to the EMU. The acknowledge signal is output from the EMU and indicates that the instruction to be fetched by the EXU is output on the instruction bus. The busy signal indicates that the EXU is performing an operation.
【0012】図2は図1の実行管理ユニット(EMU)
1の構成の一例を示す図である。図2において、21は
制御部でありEMU全体を管理し、制御ユニットからの
要求に対してEXUの割当てを行う。22はアドレスレ
ジスタファイルであり各EXUと1対1に対応するアド
レスレジスタ群で構成され、アービタからの指令によっ
て命令アドレスバスヘアドレスを出力する。23はアー
ビタであり制御部および各EXUからの命令転送要求を
調整しバスの割当を行う。24は制御バスである。25
は命令アドレスバスである。26はEXU制御ライン1
である。27はEXU制御ライン2である。28はEX
U制御ライン3である。そして、29はEXU制御ライ
ン4である。これらの制御バス24,命令アドレスバス
25及びEXU制御ライン1〜4(26〜29)は、図
1に示す制御バス28,命令アドレスバス9及びEXU
制御ライン1〜4(11〜14)にそれぞれ対応する。
次に、本実施例の動作について説明する。FIG. 2 shows the execution management unit (EMU) of FIG.
It is a figure which shows an example of a structure of 1. In FIG. 2, reference numeral 21 denotes a control unit that manages the entire EMU and allocates EXUs to requests from the control unit. An address register file 22 is composed of an address register group corresponding to each EXU on a one-to-one basis, and outputs an address to an instruction address bus according to a command from the arbiter. An arbiter 23 adjusts instruction transfer requests from the control unit and each EXU and allocates buses. Reference numeral 24 is a control bus. 25
Is the instruction address bus. 26 is EXU control line 1
Is. 27 is an EXU control line 2. 28 is EX
U control line 3. 29 is the EXU control line 4. These control bus 24, instruction address bus 25 and EXU control lines 1 to 4 (26 to 29) are the control bus 28, instruction address bus 9 and EXU shown in FIG.
It corresponds to the control lines 1 to 4 (11 to 14), respectively.
Next, the operation of this embodiment will be described.
【0013】図3は本実施例の動作を示すタイムチャー
トである。FIG. 3 is a time chart showing the operation of this embodiment.
【0014】(1)まず、図1に示す並列演算回路に演
算要求が発生すると、CU2はEMU1に対して実行す
る演算命令列の先頭アドレスを通告し(32参照)、E
XUのリクエスト命令を伝える(33参照)。そして、
EMU1はリクエスト命令に対して現在開いているEX
Uがあれば、CU2に演算アクノリッジ信号を伝え(3
4参照)、図2に示す命令アドレスレジスタファイル2
2の開きEXUに対応するアドレスレジスタへCU2が
指定するアドレスをセットし(35参照)、アービタ2
3にバスの権利を要求する。アービタ23はバスをEM
U1の制御部21に解放し、命令アドレスレジスタファ
イル22へアドレス送信を要求する。そして、命令アド
レスレジスタファイル22はアドレスレジスタの値をC
S3へ送り、CS3の内容を命令バス10に読み出す
(36参照)。その値が確定した時点で、アービタ23
がEXUへアクノリッジ信号を送る(38参照)。この
アクノリッジ信号はEXUへ演算実行を要求する要求信
号を兼ねている。(1) First, when an operation request occurs in the parallel operation circuit shown in FIG. 1, CU2 notifies EMU1 of the start address of the operation instruction sequence to be executed (see 32), and E
Transmit the XU request command (see 33). And
EMU1 is the EX currently open for the request command
If U is present, send an operation acknowledge signal to CU2 (3
4), the instruction address register file 2 shown in FIG.
The address specified by CU2 is set in the address register corresponding to the two-open EXU (see 35), and the arbiter 2
Request bus rights from 3. Arbiter 23 EM bus
It is released to the control unit 21 of U1 and requests the address transmission to the instruction address register file 22. Then, the instruction address register file 22 sets the value of the address register to C
Send to S3 and read the contents of CS3 to the instruction bus 10 (see 36). When the value is confirmed, the arbiter 23
Sends an acknowledge signal to the EXU (see 38). This acknowledge signal also serves as a request signal for requesting the EXU to execute the operation.
【0015】アクノリッジ信号を受け取ったEXUは、
命令バス10上の命令列を受け取りEMU1へビジー信
号を伝え(39参照)、命令の実行を開始する。EMU
1はビジー信号を受けて命令バス10を解放し、アドレ
スレジスタの値をインクリメントし(35参照)、次の
要求に備える。The EXU receiving the acknowledge signal,
The instruction sequence on the instruction bus 10 is received, a busy signal is transmitted to the EMU 1 (see 39), and the execution of the instruction is started. EMU
1 receives the busy signal, releases the instruction bus 10, increments the value of the address register (see 35), and prepares for the next request.
【0016】CU2がEXUのリクエスト命令を伝えた
時、全てのEXUが実行中の場合は、EMU1がその旨
をCU2へ伝え、この命令はEMU1の内部で保留され
る。そして、あるEXUの実行が終了してレディ状態に
なると、保留してあったリクエスト命令が実行され、C
U2へ保留状態の解除を伝える。CU2はこの解除ステ
ータスを受け取るまでは次のリクエスト命令を発生でき
ない。When CU2 transmits an EXU request command, if all EXUs are in execution, EMU1 notifies CU2, and this command is suspended in EMU1. Then, when the execution of a certain EXU is completed and the ready state is reached, the pending request instruction is executed, and C
Notify U2 that the hold status has been released. The CU2 cannot generate the next request instruction until it receives this release status.
【0017】(2)実行中のEXUが保持している命令
列が演算終了命令を含んでいない場合、その後に続く命
令列が存在しているものとして、EXUはEMU1に対
しバスリクエスト信号により再度の命令列転送を要求す
る(37参照)。要求を受けたEMU1では、アービタ
23がバス権の調停を行い、権利のあるEXUに対応し
たアドレスを命令アドレスレジスタファイル22から転
送してCS3の読み出しを行い(36参照)、EXUへ
アクノリッジ信号を送る(38参照)。信号を受けたE
XUは再び命令バス10上の命令を読み込み、リクエス
ト信号をディセーブルし(37参照)、命令の実行を続
ける。リクエスト信号のディセーブルを受けたEMU1
は、アクノリッジ信号を戻してバスを解放し(38参
照)、アドレスレジスタをインクリメントして次の要求
に備える(35参照)。この場合、EMU1からEXU
へのアクノリッジ信号は、EXUのリクエスト信号に対
する応答である。(2) If the instruction sequence held by the EXU being executed does not include the operation end instruction, it is assumed that the instruction sequence following the EXU is present, and the EXU sends the EMU1 again a bus request signal. Request the transfer of the instruction sequence (see 37). In the EMU 1 that receives the request, the arbiter 23 arbitrates the bus right, transfers the address corresponding to the right EXU from the instruction address register file 22 and reads CS3 (see 36), and sends an acknowledge signal to the EXU. Send (see 38). E receiving the signal
The XU again reads the instruction on the instruction bus 10, disables the request signal (see 37), and continues executing the instruction. EMU1 that received request signal disable
Returns an acknowledge signal to release the bus (see 38) and increments the address register to prepare for the next request (see 35). In this case, EMU1 to EXU
The acknowledge signal to is a response to the EXU request signal.
【0018】(3)演算終了命令を実行し、一連の演算
命令列の実行が終了したEXUは、ビジー信号を解除し
て次の実行要求を待つ(39参照)。(3) The EXU which has executed the operation end instruction and completed the execution of the series of operation instruction sequences releases the busy signal and waits for the next execution request (see 39).
【0019】[0019]
【発明の効果】以上で説明したように本発明は、命令列
を記憶する制御記憶が1つであり、各EXUの実行制御
を専用の実行管理ユニットが行うことにより、ハードウ
ェアのコストを抑えている。また、実行管理ユイットが
演算実行ユにットの管理を動的に行い、制御ユニットの
負担を少なくすることによって演算ユニットのアイドル
時間を少なくし、演算ユニットの稼働率を向上させると
いう効果がある。As described above, according to the present invention, the control memory for storing the instruction sequence is one, and the execution control of each EXU is performed by the dedicated execution management unit, so that the hardware cost can be suppressed. ing. In addition, the execution management unit dynamically manages the calculation execution unit to reduce the load on the control unit, thereby reducing the idle time of the calculation unit and improving the operation rate of the calculation unit. .
【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.
【図2】図1の実行管理ユニット(EMU)1の構成の
一例を示す図である。FIG. 2 is a diagram showing an example of a configuration of an execution management unit (EMU) 1 in FIG.
【図3】本実施例の動作を示すタイムチャートである。FIG. 3 is a time chart showing the operation of this embodiment.
1 実行管理ユニット(EMU) 2 制御ユニット(CU) 3 制御記憶(CS) 4 実行ユニット1(EXU1) 5 実行ユニット2(EXU2) 6 実行ユニット3(EXU3) 7 実行ユニット4(EXU4) 8,24 制御バス 9,25 命令アドレスバス 10 命令バス 11,26 EXU制御ライン1 12,27 EXU制御ライン2 13,28 EXU制御ライン3 14,29 EXU制御ライン4 21 アドレスレジスタファイル 23 アービタ 31 クロック 32 演算命令列の先頭アドレス(CU→EMU) 33 演算リクエスト命令(CU→EMU) 34 演算アクノリッジ信号(EMU→CU) 35 アドレスレジスタの値(EMU→CS) 36 命令バスの値(CS→EMU) 37 リクエスト信号(EXU→EMU) 38 アクノリッジ信号(EMU→EXU) 39 ビジー信号(EXU→EMU) 1 Execution Management Unit (EMU) 2 Control Unit (CU) 3 Control Memory (CS) 4 Execution Unit 1 (EXU1) 5 Execution Unit 2 (EXU2) 6 Execution Unit 3 (EXU3) 7 Execution Unit 4 (EXU4) 8, 24 Control Bus 9,25 Instruction Address Bus 10 Instruction Bus 11,26 EXU Control Line 1 12,27 EXU Control Line 2 13,28 EXU Control Line 3 14,29 EXU Control Line 4 21 Address Register File 23 Arbiter 31 Clock 32 Arithmetic Instruction Column start address (CU → EMU) 33 Operation request instruction (CU → EMU) 34 Operation acknowledge signal (EMU → CU) 35 Address register value (EMU → CS) 36 Instruction bus value (CS → EMU) 37 Request signal (EXU → EMU) 38 Ridge signal (EMU → EXU) 39 busy signal (EXU → EMU)
Claims (1)
この演算実行部に与える命令を記憶する制御記憶部と、
前記演算実行部への命令の供給及び前記演算実行部の動
作を制御する実行管理部と、演算全体を制御する制御部
とを備えることを特徴とする並列演算回路の命令供給方
式。1. A plurality of operation execution units for performing actual operation,
A control storage unit for storing an instruction to be given to the arithmetic execution unit,
An instruction supply system for a parallel arithmetic circuit, comprising: an execution management unit that controls the supply of instructions to the operation execution unit and the operation of the operation execution unit; and a control unit that controls the entire operation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9908092A JPH0644072A (en) | 1992-04-20 | 1992-04-20 | Instruction supplying system for parallel arithmetic circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9908092A JPH0644072A (en) | 1992-04-20 | 1992-04-20 | Instruction supplying system for parallel arithmetic circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0644072A true JPH0644072A (en) | 1994-02-18 |
Family
ID=14237942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9908092A Withdrawn JPH0644072A (en) | 1992-04-20 | 1992-04-20 | Instruction supplying system for parallel arithmetic circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0644072A (en) |
-
1992
- 1992-04-20 JP JP9908092A patent/JPH0644072A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5360061B2 (en) | Multiprocessor system and control method thereof | |
JP2006338538A (en) | Stream processor | |
JPH03189843A (en) | System and method for processing data | |
JP2591502B2 (en) | Information processing system and its bus arbitration system | |
JPH0644072A (en) | Instruction supplying system for parallel arithmetic circuit | |
JPH1196108A (en) | Computer system and bus control device | |
JP2002175265A (en) | Signal group exchange device and method between a plurality of components in digital signal processor having direct memory access controller | |
JPH09218859A (en) | Multiprocessor control system | |
JPH01191967A (en) | Data communication processing system | |
JPH01177672A (en) | System for processing digital signal | |
JP3399776B2 (en) | Computer and method for transferring peripheral device control data in computer | |
JPH056333A (en) | Multi-processor system | |
JP2705955B2 (en) | Parallel information processing device | |
KR20020051545A (en) | DMA controller for the high speed image processor at real time | |
JP4580879B2 (en) | Reconfigurable circuit | |
JPH0535507A (en) | Central processing unit | |
JP2020071688A (en) | Semiconductor device | |
JPH052551A (en) | Dma transfer control system | |
JPH07334453A (en) | Memory access system | |
JP2005284580A (en) | Bus device | |
JPS6267648A (en) | Processing system for exclusive control instruction | |
JP2007207269A (en) | Apparatus and system for image processing | |
JPH06149703A (en) | Message transfer controller | |
JPS63158654A (en) | Microcontroller | |
JP2000040071A (en) | Order guarantee system by multiplexed bus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990706 |