New! View global litigation for patent families

JP5511400B2 - Parallel signal processor - Google Patents

Parallel signal processor

Info

Publication number
JP5511400B2
JP5511400B2 JP2010004055A JP2010004055A JP5511400B2 JP 5511400 B2 JP5511400 B2 JP 5511400B2 JP 2010004055 A JP2010004055 A JP 2010004055A JP 2010004055 A JP2010004055 A JP 2010004055A JP 5511400 B2 JP5511400 B2 JP 5511400B2
Authority
JP
Grant status
Grant
Patent type
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.)
Active
Application number
JP2010004055A
Other languages
Japanese (ja)
Other versions
JP2011145759A (en )
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
Grant date

Links

Description

この発明は、単一の命令を実行して、所定の演算処理を行う複数のプロセッサエレメントを実装している複数のSIMD(Single Instruction Multiple Data)演算器が並列に動作することで、デジタル信号データを並列処理するSIMD制御方式の並列信号処理プロセッサに関するものである。 The present invention, by executing a single instruction, that a plurality of SIMD implementing a plurality of processor elements for performing predetermined arithmetic processing (Single Instruction Multiple Data) arithmetic unit operate in parallel, digital signal data it relates to a parallel signal processor of SIMD control system for parallel processing.

例えば、デジタルスチルカメラ、デジタルビデオカメラ、デジタルテレビやPC(パーソナルコンピュータ)グラフィックスなどの分野では、高速かつ大量のデジタル画像信号を処理する必要があるため、大規模な専用ハードウェア(例えば、LSI)の開発が行われている。 For example, digital still cameras, digital video cameras, in the field of digital television and a PC (personal computer) graphics, it is necessary to handle the high speed and large amounts of digital image signals, large dedicated hardware (e.g., LSI development of) is being carried out.
一方、デジタル画像信号に対する信号処理アルゴリズムが短期間で高度化・複雑化していく傾向にあるため、専用ハードウェアを開発する上で、短期間で高度化・複雑化する信号処理アルゴリズムへの追従が困難である。 On the other hand, tends to signal processing algorithms for the digital image signal is gradually sophisticated and complex in a short period of time, in the development of dedicated hardware, the tracking of the signal processing algorithm for sophisticated and complex in a short period of time Have difficulty.

そこで、プログラマビリティが高い高速プロセッサやDSP(Digital Signal Processor)から構成されている画像処理装置の開発も行われている。 Therefore, programmability has also been developed an image processing apparatus and a high high-speed processor and DSP (Digital Signal Processor).
しかしながら、画像の高解像度化や高画質化に伴って、画像処理装置に対する要求性能が増大しているため、単独のプロセッサやDSPでは、演算処理量や演算精度の不足、あるいは、高速クロック化による消費電力の増加が問題とされている。 However, with the higher resolution and higher image quality, because the requested performance for the image processing apparatus is increased, the sole processor or DSP, insufficient amount of computation and calculation accuracy, or by high-speed clock of increased consumption of power is a problem.
そのため、単一の命令で複数のデータを並列処理するSIMD制御方式の並列信号処理プロセッサによって、演算処理能力を高める方法が考えられている。 Therefore, by the parallel signal processor of SIMD control method for parallel processing of multiple data in a single instruction, the method of increasing the processing capacity is considered.

SIMD制御方式の並列信号処理プロセッサは、例えば、算術演算や論理演算を行う演算装置(Arithmetic Logic Unit:ALU)や、ALUの演算結果を一時的に記憶するメモリなどから構成されるプロセッサエレメントを1次元に配置し、複数のプロセッサエレメントを単一の命令によって制御するものである。 Parallel signal processor of SIMD control method, for example, computing device that performs arithmetic and logical operations (Arithmetic Logic Unit: ALU) and, the processor elements and the like memory for temporarily storing the operation result of ALU 1 place the dimension, and controls the plurality of processor elements by a single instruction.
例えば、デジタルスチルカメラ、デジタルビデオカメラ、デジタルテレビやPCグラフィックスなどの分野では、上述したように、高速かつ大量のデジタル画像信号を処理する必要があるが、SIMD制御方式の並列信号処理プロセッサは、高速かつ大量のデジタル画像信号を処理することが可能であるため適している。 For example, digital still cameras, digital video cameras, in the field of digital television and PC graphics, as described above, it is necessary to handle the high speed and large amounts of digital image signals, but the parallel signal processor of SIMD control method is suitable because it is possible to handle the high-speed and massive digital image signal.
また、SIMD制御方式の並列信号処理プロセッサは、短期間で高度化・複雑化する信号処理アルゴリズムに対して、容易に対応することができるため適している。 Further, the parallel signal processor of SIMD control method is suitable because it can to the signal processing algorithm for sophisticated and complex in a short period of time, readily compatible.

近年、画像処理装置に対する要求性能は、画像の高解像度化や高画質化に伴って増大している。 Recently, performance required for the image processing apparatus is increased with higher resolution and higher image quality.
そのため、並列信号処理プロセッサでは、搭載するプロセッサエレメントの台数を増やして、演算処理量や演算精度を高めるようにしている。 Therefore, in the parallel signal processor, by increasing the number of processor elements to be mounted, so that increasing the amount of computation and calculation accuracy.
また、単に、プロセッサエレメントの台数を増やすだけでなく、多様な信号処理を並列に処理することができるようにするために、並列信号処理プロセッサにおけるプロセッサエレメントの構成を変更できるようにしている(例えば、非特許文献1を参照)。 Also, simply, not only increasing the number of processor elements, a variety of signal processing in order to be able to process in parallel, and to change the configuration of the processor elements in a parallel signal processor (e.g. , see non-Patent Document 1).

ただし、演算効率を高めるために、図7に示すように、同時に処理するプロセッサエレメント(PE演算器)の台数を増加させる場合(全体連結制御部が、SIMD演算器#1のPE演算器と、SIMD演算器#2のPE演算器と、SIMD演算器#3のPE演算器とを結合する場合)、SIMD演算器#1,#2,#3における命令メモリに対して、同一のSIMDプログラムDを格納する必要がある。 However, in order to enhance the operation efficiency, as shown in FIG. 7, the number if (overall connection control unit to increase the processor element (PE calculator) for processing simultaneously, the PE arithmetic unit SIMD operator # 1, and PE arithmetic unit SIMD operator # 2, when coupling the PE arithmetic unit SIMD computation unit # 3), the SIMD computation unit # 1, # 2, to the instruction memory in # 3, the same SIMD program D there is a need to store.

日経エレクトロニクス「これがCell」,2005年2月28日発行,P100〜109 Nikkei Electronics "This is Cell", issued Feb. 28, 2005, P100~109

従来の並列信号処理プロセッサは以上のように構成されているので、演算効率を高めるために、同時に処理するプロセッサエレメント(PE演算器)の台数を増加させる場合、SIMD演算器#1,#2,#3における命令メモリに対して、同一のSIMDプログラムDを格納する必要があり、命令メモリの利用効率が低下するなどの課題があった。 Since conventional parallel signal processor is constructed as described above, in order to increase the operational efficiency, when increasing the number of processor elements (PE calculator) for processing at the same time, SIMD calculator # 1, # 2, # the instruction memory in the 3, it is necessary to store the same SIMD program D, the utilization efficiency of the instruction memory is a problem, such as drops.

この発明は上記のような課題を解決するためになされたもので、演算効率を高めるために、同時に処理するプロセッサエレメントの台数を増加させる場合でも、各SIMD演算器における命令メモリに対して、異なるプログラムを格納できるようにして、命令メモリの利用効率の低下を防止することができる並列信号処理プロセッサを得ることを目的とする。 The present invention has been made to solve the above problems, in order to enhance the operation efficiency, even when increasing the number of processor elements simultaneously processed, the instruction memory in each SIMD operator, different so as to store the program, and to obtain a parallel signal processor that can prevent a decrease in utilization efficiency of the instruction memory.

この発明に係る並列信号処理プロセッサは、単一の命令を実行して、所定の演算処理を行う複数のプロセッサエレメントを実装している複数のSIMD演算器が、プログラムを格納している命令メモリと、全体連結制御部から出力された選択信号が示す命令メモリが自己の命令メモリであれば、自己の命令メモリに格納されているプログラムを取得して、そのプログラムを他のSIMD演算器に与え、その選択信号が示す命令メモリが自己の命令メモリでなければ、他のSIMD演算器からプログラムを取得し、その取得したプログラム内の命令を複数のプロセッサエレメントに発行するとともに、単一の命令が分岐命令である場合、分岐命令が示す先が自己の命令メモリの範囲内であれば、命令メモリに格納されているプログラムを取得し Parallel signal processing processor according to the present invention, by executing a single instruction, multiple SIMD operator that implements a plurality of processor elements for performing predetermined arithmetic processing, an instruction memory storing a program if an instruction memory of the instruction memory is self-indicated selection signal outputted from the overall connection control unit acquires the program stored in its instruction memory, given the program to other SIMD operator, if an instruction memory of the instruction memory is self indicated by the selection signal, it acquires a program from another SIMD operator, issues a command in the obtained program into a plurality of processor elements, a single instruction is a branch If an instruction, previously indicated by the branch instruction is within the range of its instruction memory, it retrieves the program stored in instruction memory 、プログラムを他のSIMD演算器に与え、分岐命令が示す先が自己の命令メモリの範囲内でなければ、他のSIMD演算器からプログラムを取得して、その取得したプログラム内の命令を複数のプロセッサエレメントに発行する命令発行手段とを備えるようにしたものである。 Gives the program to other SIMD operator, previously indicated by the branch instruction is not the range of its instruction memory, it acquires a program from another SIMD operator, acquired in the program instruction multiple thereof it is obtained so as to include an instruction issuing means for issuing a processor element.

この発明によれば、単一の命令を実行して、所定の演算処理を行う複数のプロセッサエレメントを実装している複数のSIMD演算器が、プログラムを格納している命令メモリと、全体連結制御部から出力された選択信号が示す命令メモリが自己の命令メモリであれば、自己の命令メモリに格納されているプログラムを取得して、そのプログラムを他のSIMD演算器に与え、その選択信号が示す命令メモリが自己の命令メモリでなければ、他のSIMD演算器からプログラムを取得し、その取得したプログラム内の命令を複数のプロセッサエレメントに発行する命令発行手段とを備えるように構成したので、演算効率を高めるために、同時に処理するプロセッサエレメントの台数を増加させる場合でも、各SIMD演算器における命令メモ According to the present invention, by executing a single instruction, multiple SIMD operator that implements a plurality of processor elements for performing predetermined arithmetic processing, an instruction memory storing a program, the overall connection control if the instruction memory indicated by the selection signal output from the part is a self-instruction memory, and obtains the program stored in its instruction memory, given the program to other SIMD operator, its selection signal if an instruction memory instruction memory self shown, it acquires a program from another SIMD operator, since it is configured to include an instruction issuing means for issuing instructions in the acquired program to the plurality of processor elements, to increase the computation efficiency, even when increasing the number of processor elements for processing simultaneously, the instruction notes in each SIMD operator に対して、異なるプログラムを格納できるようになり、その結果、命令メモリの利用効率の低下を防止することができる効果がある。 Against, will be able to store different programs, as a result, there is an effect that it is possible to prevent a decrease in utilization efficiency of the instruction memory.

この発明の実施の形態1による並列信号処理プロセッサを示す構成図である。 It is a block diagram showing a parallel signal processor according to the first embodiment of the present invention. この発明の実施の形態1による並列信号処理プロセッサの全体連結制御部2を示す構成図である。 Is a block diagram showing the overall connection control unit 2 of the parallel signal processing processor according to the first embodiment of the present invention. この発明の実施の形態1による並列信号処理プロセッサの命令フェッチ制御部12−1〜12−3を示す構成図である。 Is a block diagram showing the instruction fetch control unit 12-1 to 12-3 of the parallel signal processing processor according to the first embodiment of the present invention. この発明の実施の形態1による並列信号処理プロセッサの命令デコード部13−1〜13−3を示す構成図である。 It is a block diagram showing the instruction decoding unit 13-1 to 13-3 of the parallel signal processing processor according to the first embodiment of the present invention. 3個のSIMD演算器1−1〜1−3を結合して、SIMDプログラムA−1,A−2,A−3内の命令データを順番に読み出し、その命令データに対応するPE制御信号を12個のPE演算器14−1〜14−3に発行している様子を示す説明図である。 3 by combining SIMD operator 1-1 to 1-3, reads the command data in the SIMD program A-1, A-2, A-3 in sequence, the PE control signal corresponding to the instruction data it is an explanatory view illustrating the state that issued 12 PE calculator 14-1 to 14-3. 3個のSIMD演算器1−1〜1−3を分離して、SIMD演算器1−1〜1−3がSIMDプログラムA,B,C内の命令データを読み出し、その命令データに対応するPE制御信号をPE演算器14−1〜14−3に発行している様子を示す説明図である。 3 separates the SIMD operator 1-1 to 1-3, the SIMD computation unit 1-1 to 1-3 is read out instruction data of the SIMD program A, B, the C, and corresponding to the instruction data PE the control signal is an explanatory view illustrating the state that issued PE calculator 14-1 to 14-3. 従来の並列信号処理プロセッサにおけるPE演算器の結合例を示す説明図である。 It is an explanatory diagram showing a binding example of PE calculator in a conventional parallel signal processor.

実施の形態1. The first embodiment.
図1はこの発明の実施の形態1による並列信号処理プロセッサを示す構成図である。 Figure 1 is a block diagram showing a parallel signal processor according to the first embodiment of the present invention.
図1において、SIMD演算器1−1は単一の命令を実行して、入出力バス4から入力した演算対象のデータに対して所定の演算処理を行う4個のPE演算器14−1(プロセッサエレメント)を実装している。 In Figure 1, SIMD arithmetic unit 1-1 executes the single instruction, four PE arithmetic unit performing a predetermined operation with respect to the operation target of the data input from the input-output bus 4 14-1 ( It implements the processor element).
SIMD演算器1−2は単一の命令を実行して、入出力バス4から入力した演算対象のデータに対して所定の演算処理を行う4個のPE演算器14−2(プロセッサエレメント)を実装している。 SIMD computation unit 1-2 executes the single instruction, four PE arithmetic unit 14-2 for performing a predetermined arithmetic processing for calculating the target data input from the input-output bus 4 (processor element) implement.
SIMD演算器1−3は単一の命令を実行して、入出力バス4から入力した演算対象のデータに対して所定の演算処理を行う4個のPE演算器14−3(プロセッサエレメント)を実装している。 SIMD computation unit 1-3 executes the single instruction, four PE arithmetic unit 14-3 for performing a predetermined arithmetic processing for calculating the target data input from the input-output bus 4 (processor element) implement.
図1では、並列信号処理プロセッサが3個のSIMD演算器1−1〜1−3を実装し、SIMD演算器1−1〜1−3が4個のPE演算器14−1〜14−3を実装している例を示しているが、並列信号処理プロセッサが4個以上のSIMD演算器1を実装し、各SIMD演算器1が4個未満あるいは5個以上のPE演算器14を実装するようにしてもよい。 In Figure 1, the parallel signal processor implements the three SIMD operator 1-1 to 1-3, the SIMD computation unit 1-1 to 1-3 are four PE arithmetic unit 14-1 to 14-3 an example is shown that implements the parallel signal processor implements the four or more SIMD operator 1, to implement each SIMD operator 1 is less than four or more than four PE arithmetic unit 14 it may be so.

全体連結制御部2はSIMD演算器1−1とSIMD演算器1−2とSIMD演算器1−3間の結合又は分離を指示するSIMD結合制御信号を演算器連結部3−1,3−2に出力するとともに、選択対象の命令メモリを示すデコーダ選択信号をSIMD演算器1−1〜1−3に出力する処理を実施する。 Overall connection control unit 2 SIMD operator 1-1 and SIMD computation unit 1-2 and SIMD coupling control signal calculator connection unit for instructing the binding or separation between the SIMD operator 1-3 3-1 and outputs to, and carries out a process of outputting the decoder selection signal indicating the instruction memory to be selected in the SIMD computation unit 1-1 to 1-3.
演算器連結部3−1は全体連結制御部2から出力されたSIMD結合制御信号がSIMD演算器1−1とSIMD演算器1−2間の結合を指示していれば、SIMD演算器1−1とSIMD演算器1−2間を結合し、そのSIMD結合制御信号がSIMD演算器1−1とSIMD演算器1−2間の分離を指示していれば、SIMD演算器1−1とSIMD演算器1−2間を分離する処理を実施する。 If SIMD coupling control signals output calculator connecting part 3-1 from the overall connection control unit 2 is long instructs the coupling between the SIMD computation unit 1-1 and the SIMD operator 1-2, SIMD operator 1- 1 and coupled between SIMD operator 1-2, if it instructs the SIMD binding control signal separation between the SIMD computation unit 1-1 and the SIMD operator 1-2, the SIMD computation unit 1-1 and the SIMD It carries out a process of separating the calculator 1-2.

演算器連結部3−2は全体連結制御部2から出力されたSIMD結合制御信号がSIMD演算器1−2とSIMD演算器1−3間の結合を指示していれば、SIMD演算器1−2とSIMD演算器1−3間を結合し、そのSIMD結合制御信号がSIMD演算器1−2とSIMD演算器1−3間の分離を指示していれば、SIMD演算器1−2とSIMD演算器1−3間を分離する処理を実施する。 If SIMD coupling control signals output calculator connecting part 3-2 from the overall connection control unit 2 is long instructs the coupling between the SIMD computation unit 1-2 and SIMD operator 1-3, SIMD operator 1- coupled between 2 and SIMD operator 1-3, the if SIMD binding control signal has instructed the separation between the SIMD computation unit 1-2 and SIMD operator 1-3, the SIMD computation unit 1-2 and SIMD It carries out a process of separating the calculator 1-3.
入出力バス4は演算対象のデータをSIMD演算器1−1〜1−3に伝送するとともに、SIMD演算器1−1〜1−3の演算結果を伝送するための伝送路である。 With input and output bus 4 transmits data operands in the SIMD computation unit 1-1 to 1-3, a transmission path for transmitting an operation result of the SIMD operator 1-1 to 1-3.

SIMD演算器1−1の命令メモリ11−1はSIMDプログラムの一部(以下、「SIMDプログラムA−1」と称する)を格納しているRAMやROMなどの記録媒体である。 Instruction memory 11-1 of the SIMD computation unit 1-1 Some SIMD program (hereinafter, "SIMD program A-1" referred to as) a recording medium such as a RAM or a ROM which stores.
命令フェッチ制御部12−1は命令デコード部13−1から出力された分岐指示信号が命令メモリ11−1からSIMDプログラムA−1を取得する旨を示していれば、命令メモリ11−1からSIMDプログラムA−1内の命令(以下、「命令データ」と称する)を取得して、その命令データを命令デコード部13−1に出力するとともに、その命令データを右隣のSIMD演算器1−2に出力する処理を実施する。 If the instruction fetch control unit 12-1 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-1 acquires a SIMD program A-1 from the instruction memory 11-1, SIMD from the instruction memory 11-1 instruction in the program a-1 (hereinafter, "command data" hereinafter) to obtain the, and outputs the instruction data to the instruction decoding unit 13-1, right next to the SIMD computation unit and the instruction data 1-2 and it carries out a process of outputting to.
一方、命令デコード部13−1から出力された分岐指示信号が命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得せずに、例えば、NOPの命令データを右隣のSIMD演算器1−2に出力する処理を実施する。 On the other hand, if indicates that the branch instruction signal outputted from the instruction decoding unit 13-1 does not acquire a SIMD program A-1 from the instruction memory 11-1, obtains a SIMD program A-1 from the instruction memory 11-1 without, for example, carries out a process of outputting the instruction data of NOP to the right in the SIMD computation unit 1-2. ここでは、NOPの命令データを出力する例を示しているが、何も出力しないようにしてもよい。 Here, an example is shown for outputting command data NOP, nothing may not be output.

命令デコード部13−1は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を命令フェッチ制御部12−1に出力し、そのデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−1に出力する処理を実施する。 If the instruction decoding unit 13-1 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-1, that for obtaining a SIMD program A-1 from the instruction memory 11-1 the branch indicating signal is outputted to the instruction fetch control unit 12-1 shown, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-1, SIMD program a from the instruction memory 11-1 the branch indicating signal indicating that not get -1 and carries out a process of outputting to the instruction fetch control unit 12-1.
また、命令デコード部13−1は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示していれば、命令フェッチ制御部12−1から出力された命令データをPE制御信号に変換して、そのPE制御信号を4個のPE演算器14−1に発行し、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示していれば、右隣のSIMD演算器1−2から出力された命令データをPE制御信号に変換して、そのPE制御信号を4個のPE演算器14−1に発行する処理を実施する。 Further, if the instruction decoding unit 13-1 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-1, the instruction output from the instruction fetch control unit 12-1 Data the converted to PE control signal, and issues the PE control signal to the four PE arithmetic unit 14-1, the instruction memory of the decoder selection signal output other than the instruction memory 11-1 from the overall connection control unit 2 if shows the effect of selecting, by converting the instruction data output from the right of the SIMD computation unit 1-2 PE control signal, issues the PE control signal to the four PE arithmetic unit 14-1 processing is carried out.

PE演算器14−1はバスI/F16−1からPEバス15−1を介して演算対象のデータを入力し、命令デコード部13−1から発行されたPE制御信号を実行することで、その演算対象のデータに対して所定の演算処理(例えば、算術演算や論理演算などの論理演算、あるいは、データシフトなどの演算)を行い、その演算結果をPEバス15−1を介してバスI/F16−1に出力する処理を実施する。 PE calculator 14-1 by a bus I / F16-1 via PE bus 15-1 inputs the data operands, executes the PE control signal issued from the instruction decoding unit 13-1, the predetermined arithmetic processing on the operation target data (e.g., logical operations such as arithmetic operations and logical operations, or operations such as data shift) is performed, the operation result via the PE bus 15-1 bus I / and it carries out a process of outputting to F16-1.
バスI/F16−1は入出力バス4から演算対象のデータを入力して、そのデータをPEバス15−1を介して4個のPE演算器14−1に出力する一方、4個のPE演算器14−1の演算結果をPEバス15−1を介して入力し、その演算結果を入出力バス4に出力する処理を実施する。 While the bus I / F16-1 is that by entering the data to be operated on from the output bus 4, and outputs the data via the PE bus 15-1 to the four PE arithmetic unit 14-1, four PE the operation result of the arithmetic unit 14-1 input via the PE bus 15-1 carries out a process of outputting the operation result to the input-output bus 4.

SIMD演算器1−2の命令メモリ11−2はSIMDプログラムの一部(以下、「SIMDプログラムA−2」と称する)を格納しているRAMやROMなどの記録媒体である。 Instruction memory 11-2 of the SIMD computation unit 1-2 Some SIMD program (hereinafter, "SIMD program A-2" hereinafter) which is a recording medium such as a RAM or a ROM which stores.
命令フェッチ制御部12−2は命令デコード部13−2から出力された分岐指示信号が命令メモリ11−2からSIMDプログラムA−2を取得する旨を示していれば、命令メモリ11−2からSIMDプログラムA−2内の命令(以下、「命令データ」と称する)を取得して、その命令データを命令デコード部13−2に出力するとともに、その命令データを右隣のSIMD演算器1−3に出力する処理を実施する。 If the instruction fetch control unit 12-2 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-2 acquires a SIMD program A-2 from the instruction memory 11-2, SIMD from the instruction memory 11-2 instruction in the program a-2 (hereinafter, "command data" hereinafter) to obtain the, and outputs the instruction data to the instruction decoding unit 13-2, right next to the SIMD computation unit and the instruction data 1-3 and it carries out a process of outputting to.
一方、命令デコード部13−2から出力された分岐指示信号が命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示していれば、命令メモリ11−2からSIMDプログラムA−2を取得せずに、左隣のSIMD演算器1−1から出力された命令データを取得して、その命令データを右隣のSIMD演算器1−3に出力する処理を実施する。 On the other hand, if indicates that the branch instruction signal outputted from the instruction decoding unit 13-2 does not acquire a SIMD program A-2 from the instruction memory 11-2, obtains a SIMD program A-2 from the instruction memory 11-2 without acquires instruction data output from the SIMD computation unit 1-1 of the left adjacent, and carries out a process of outputting the instruction data to the right in the SIMD computation unit 1-3. ただし、左隣のSIMD演算器1−1から何も出力されていなければ、何も出力しないようにしてもよい。 However, if nothing is output from the SIMD computation unit 1-1 of the left adjacent, nothing may not be output.

命令デコード部13−2は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示していれば、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を命令フェッチ制御部12−2に出力し、そのデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示していれば、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−2に出力する処理を実施する。 If the instruction decoding unit 13-2 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, that for obtaining a SIMD program A-2 from the instruction memory 11-2 the branch indicating signal is outputted to the instruction fetch control unit 12-2 shown, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-2, SIMD program a from the instruction memory 11-2 the branch indicating signal indicating that not get -2 carries out a process of outputting to the instruction fetch control unit 12-2.
また、命令デコード部13−2は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示していれば、命令フェッチ制御部12−2から出力された命令データをPE制御信号に変換して、そのPE制御信号を4個のPE演算器14−2に発行し、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示していれば、右隣のSIMD演算器1−3から出力された命令データをPE制御信号に変換して、そのPE制御信号を4個のPE演算器14−2に発行する処理を実施する。 Further, if the instruction decoding unit 13-2 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, the instruction output from the instruction fetch control unit 12-2 Data the converted to PE control signal, and issues the PE control signal to the four PE arithmetic unit 14-2, the instruction memory of the decoder selection signal output other than the instruction memory 11-2 from the overall connection control unit 2 if shows the effect of selecting, by converting the instruction data output from the SIMD computation unit 1-3 to the right to the PE control signal, issues the PE control signal to the four PE arithmetic unit 14-2 processing is carried out.
さらに、命令デコード部13−2はPE制御信号に変換する命令データを左隣のSIMD演算器1−1に出力する処理を実施する。 Moreover, the instruction decoding unit 13-2 carries out a process of outputting the instruction data to be converted to PE control signals to the SIMD computation unit 1-1 left adjacent.

PE演算器14−2はバスI/F16−2からPEバス15−2を介して演算対象のデータを入力し、命令デコード部13−2から発行されたPE制御信号を実行することで、その演算対象のデータに対して所定の演算処理(例えば、算術演算や論理演算などの論理演算、あるいは、データシフトなどの演算)を行い、その演算結果をPEバス15−2を介してバスI/F16−2に出力する処理を実施する。 PE calculator 14-2 by a bus I / F16-2 via PE bus 15-2 inputs the data operands, executes the PE control signal issued from the instruction decoding unit 13-2, the predetermined arithmetic processing on the operation target data (e.g., logical operations such as arithmetic operations and logical operations, or operations such as data shift) is performed, the operation result via the PE bus 15-2 bus I / and it carries out a process of outputting to F16-2.
バスI/F16−2は入出力バス4から演算対象のデータを入力して、そのデータをPEバス15−2を介して4個のPE演算器14−2に出力する一方、4個のPE演算器14−2の演算結果をPEバス15−2を介して入力し、その演算結果を入出力バス4に出力する処理を実施する。 While the bus I / F16-2 is that by entering the data to be operated on from the output bus 4, and outputs the data to the four PE arithmetic unit 14-2 via the PE bus 15-2, four PE the operation result of the arithmetic unit 14-2 input via the PE bus 15-2 carries out a process of outputting the operation result to the input-output bus 4.

SIMD演算器1−3の命令メモリ11−3はSIMDプログラムの一部(以下、「SIMDプログラムA−3」と称する)を格納しているRAMやROMなどの記録媒体である。 Instruction memory 11-3 of the SIMD computation unit 1-3 Some SIMD program (hereinafter, "SIMD program A-3" and referred) is a recording medium such as a RAM or a ROM which stores.
命令フェッチ制御部12−3は命令デコード部13−3から出力された分岐指示信号が命令メモリ11−3からSIMDプログラムA−3を取得する旨を示していれば、命令メモリ11−3からSIMDプログラムA−3内の命令(以下、「命令データ」と称する)を取得して、その命令データを命令デコード部13−3に出力する処理を実施する。 If the instruction fetch control unit 12-3 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-3 acquires a SIMD program A-3 from the instruction memory 11-3, SIMD from the instruction memory 11-3 instruction in the program a-3 (hereinafter referred to as "command data") to obtain the, carries out a process of outputting the instruction data to the instruction decoding unit 13-3.
一方、命令デコード部13−3から出力された分岐指示信号が命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示していれば、命令メモリ11−3からSIMDプログラムA−3を取得せずに、左隣のSIMD演算器1−2から出力された命令データを取得して、その命令データを命令デコード部13−3に出力する処理を実施する。 On the other hand, if indicates that the branch instruction signal outputted from the instruction decoding unit 13-3 does not acquire a SIMD program A-3 from the instruction memory 11-3, obtains a SIMD program A-3 from the instruction memory 11-3 without acquires instruction data output from the SIMD computation unit 1-2 of the left adjacent, and carries out a process of outputting the instruction data to the instruction decoding unit 13-3.

命令デコード部13−3は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−3を選択する旨を示していれば、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を命令フェッチ制御部12−3に出力し、そのデコーダ選択信号が命令メモリ11−3以外の命令メモリを選択する旨を示していれば、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−3に出力する処理を実施する。 If the instruction decoding unit 13-3 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-3, that for obtaining a SIMD program A-3 from the instruction memory 11-3 the branch indicating signal is outputted to the instruction fetch control unit 12-3 shown, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-3, SIMD program a from the instruction memory 11-3 the branch indicating signal indicating that not get -3 carries out a process of outputting to the instruction fetch control unit 12-3.
また、命令デコード部13−3は命令フェッチ制御部12−3から出力された命令データをPE制御信号に変換して、そのPE制御信号を4個のPE演算器14−2に発行する処理を実施する。 Further, the processing instruction decoding unit 13-3 which converts the instruction data output from the instruction fetch control unit 12-3 to the PE control signal, issues the PE control signal to the four PE arithmetic unit 14-2 carry out.
さらに、命令デコード部13−3は命令フェッチ制御部12−3から出力された命令データを左隣のSIMD演算器1−2に出力する処理を実施する。 Moreover, the instruction decoding unit 13-3 carries out a process of outputting an instruction data output from the instruction fetch control unit 12-3 in the SIMD computation unit 1-2 left adjacent.

PE演算器14−3はバスI/F16−3からPEバス15−3を介して演算対象のデータを入力し、命令デコード部13−3から発行されたPE制御信号を実行することで、その演算対象のデータに対して所定の演算処理(例えば、算術演算や論理演算などの論理演算、あるいは、データシフトなどの演算)を行い、その演算結果をPEバス15−3を介してバスI/F16−3に出力する処理を実施する。 PE calculator 14-3 by a bus I / F16-3 via PE bus 15-3 inputs the data operands, executes the PE control signal issued from the instruction decoding unit 13-3, the predetermined arithmetic processing on the operation target data (e.g., logical operations such as arithmetic operations and logical operations, or operations such as data shift) is performed, the operation result via the PE bus 15-3 bus I / and it carries out a process of outputting to F16-3.
バスI/F16−3は入出力バス4から演算対象のデータを入力して、そのデータをPEバス15−3を介して4個のPE演算器14−3に出力する一方、4個のPE演算器14−3の演算結果をPEバス15−3を介して入力し、その演算結果を入出力バス4に出力する処理を実施する。 While the bus I / F16-3 is that by entering the data to be operated on from the output bus 4, and outputs the data via the PE bus 15-3 to the four PE arithmetic unit 14-3, four PE the operation result of the arithmetic unit 14-3 input via the PE bus 15-3, and carries out a process of outputting the operation result to the input-output bus 4.
なお、命令フェッチ制御部12−1〜12−3及び命令デコード部13−1〜13−3から命令発行手段が構成されている。 Incidentally, the instruction issuing means is configured from the instruction fetch control unit 12-1 to 12-3 and the instruction decoding unit 13-1 to 13-3.

図2はこの発明の実施の形態1による並列信号処理プロセッサの全体連結制御部2を示す構成図である。 Figure 2 is a block diagram showing the overall connection control unit 2 of the parallel signal processing processor according to the first embodiment of the present invention.
図2において、結合制御命令メモリ21は例えばRAMなどの記録媒体であり、SIMD演算器1−1〜1−3間の結合/分離の制御や、選択対象の命令メモリを決定する全体結合制御プログラムを格納している。 2, coupling control instruction memory 21 is a recording medium such as a RAM, the overall coupling control program for determining control of coupling / separation between SIMD operator 1-1 to 1-3, the instruction memory to be selected stores.
シーケンサ22は例えばプログラムカウンタ、ROM及び制御回路を備えており、結合制御命令メモリ21により格納されている全体結合制御プログラム内の命令を順次読み出して解読し、その命令にしたがってSIMD連結制御部23及びデコーダ選択制御部24の動作を制御する。 The sequencer 22, for example the program counter, includes a ROM and a control circuit, coupled control instruction memory 21 sequentially reads and decodes the instruction in the total binding control program stored by, SIMD connection control unit 23 and in accordance with the command It controls the operation of the decoder selection control unit 24.

SIMD連結制御部23はシーケンサ22の指示の下で、SIMD演算器1−1〜1−3間の結合又は分離を指示するSIMD結合制御信号を生成し、そのSIMD結合制御信号を演算器連結部3−1,3−2に出力する処理を実施する。 SIMD connection control unit 23 under instruction of the sequencer 22, it generates a SIMD binding control signal for instructing the binding or separation between the SIMD operator 1-1 to 1-3, the arithmetic unit connecting section the SIMD coupling control signals and it carries out a process of outputting to the 3-1 and 3-2.
デコーダ選択制御部24はシーケンサ22の指示の下で、選択対象の命令メモリ11を示すデコーダ選択信号を生成し、そのデコーダ選択信号をSIMD演算器1−1〜1−3に出力する処理を実施する。 Decoder selection control unit 24 under instruction of the sequencer 22, executes a process to generate a decoder selection signal indicating the instruction memory 11 to be selected, and outputs the decoder selection signals to the SIMD computation unit 1-1 to 1-3 to.

図3はこの発明の実施の形態1による並列信号処理プロセッサの命令フェッチ制御部12−1〜12−3を示す構成図である。 Figure 3 is a block diagram showing the instruction fetch control unit 12-1 to 12-3 of the parallel signal processing processor according to the first embodiment of the present invention.
図3において、命令フェッチ制御部12−1〜12−3のメモリアクセス制御部31は例えばプログラムカウンタや分岐アドレス制御回路を内蔵しており、命令デコード部13−1〜13−3から出力された分岐指示信号にしたがって内部のプログラムカウンタを制御することで、命令メモリ11−1〜11−3により格納されているSIMDプログラムA−1〜A−3内の命令データの読出しを制御する。 3, the memory access control unit 31 of the instruction fetch control unit 12-1 to 12-3 has a built-in program counter and the branch address control circuit, for example, output from the instruction decoding unit 13-1 to 13-3 by controlling the internal program counter in accordance with the branch instruction signal, controls the reading of the instruction data in the SIMD program a-1 to a-3, which is stored by the instruction memory 11-1 to 11-3.

命令フェッチ制御部12−1のセレクタ判定部32は命令デコード部13−1から出力された分岐指示信号が命令メモリ11−1からSIMDプログラムA−1を取得する旨を示していれば、命令メモリ11−1から読み出されたSIMDプログラムA−1内の命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する指令を命令セレクタ33に出力し、その分岐指示信号が命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示していれば、例えば、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する指令を命令セレクタ33に出力する処理を実施する。 If selector checking unit 32 of the instruction fetch control unit 12-1 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-1 acquires a SIMD program A-1 from the instruction memory 11-1, the instruction memory select instruction data in SIMD program a-1 read from 11-1 outputs a command for outputting the instruction data to the right in the SIMD computation unit 1-2 to the instruction selector 33, the branch instruction if shows the effect that signals do not get SIMD program a-1 from the instruction memory 11-1, for example, select a command data NOP, and outputs the instruction data to the right in the SIMD computation unit 1-2 and it carries out a process of outputting a command to the command selector 33. ここでは、NOPの命令データを選択する命令を出力する例を示しているが、何も出力しない命令を出力するようにしてもよい。 Here, an example is shown for outputting a command for selecting a command data NOP, nothing may be output instruction is not output.

命令フェッチ制御部12−2のセレクタ判定部32は命令デコード部13−2から出力された分岐指示信号が命令メモリ11−2からSIMDプログラムA−2を取得する旨を示していれば、命令メモリ11−2から読み出されたSIMDプログラムA−2内の命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する指令を命令セレクタ33に出力し、その分岐指示信号が命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示していれば、左隣のSIMD演算器1−1から出力された命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する指令を命令セレクタ33に出力する処理を実施する。 If selector checking unit 32 of the instruction fetch control unit 12-2 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-2 acquires a SIMD program A-2 from the instruction memory 11-2, the instruction memory select instruction data in SIMD program a-2 read from 11-2 outputs a command for outputting the instruction data to the right in the SIMD computation unit 1-3 to the instruction selector 33, the branch instruction if shows the effect that signals do not get SIMD program a-2 from the instruction memory 11-2, and selects the instruction data output from the SIMD computation unit 1-1 adjacent to the left, to the right of the instruction data and it carries out a process of outputting a command to be output to the SIMD computation unit 1-3 to the instruction selector 33.

命令フェッチ制御部12−3のセレクタ判定部32は命令デコード部13−3から出力された分岐指示信号が命令メモリ11−3からSIMDプログラムA−3を取得する旨を示していれば、命令メモリ11−3から読み出されたSIMDプログラムA−3内の命令データを選択して、その命令データを命令デコード部13−3に出力する指令を命令セレクタ33に出力し、その分岐指示信号が命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示していれば、左隣のSIMD演算器1−2から出力された命令データを選択して、その命令データを命令デコード部13−3に出力する指令を命令セレクタ33に出力する処理を実施する。 If selector checking unit 32 of the instruction fetch control unit 12-3 only to show the effect that branch instruction signal outputted from the instruction decoding unit 13-3 acquires a SIMD program A-3 from the instruction memory 11-3, the instruction memory select instruction data in SIMD program a-3 read from 11-3 outputs a command for outputting the instruction data to the instruction decode unit 13-3 to the instruction selector 33, the branch instruction signal instructions if shows the effect that the memory 11-3 not get SIMD program a-3, and selects the instruction data output from the SIMD computation unit 1-2 of the left neighboring, the instruction data instruction decode unit 13-3 an instruction for outputting and carries out a process of outputting to the instruction selector 33.

命令フェッチ制御部12−1の命令セレクタ33はセレクタ判定部32から出力された指令が命令メモリ11−1から読み出されたSIMDプログラムA−1内の命令データを選択する旨を示していれば、命令メモリ11−1から読み出されたSIMDプログラムA−1内の命令データを選択して、その命令データを命令デコード部13−1及び右隣のSIMD演算器1−2に出力し、セレクタ判定部32から出力された指令がNOPの命令データを選択する旨を示していれば、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する処理を実施する。 Instruction selector 33 of the instruction fetch control unit 12-1 if indicates that the command output from the selector determination unit 32 selects the instruction data in the SIMD program A-1 read out from the instruction memory 11-1 , instructions to select the instruction data in SIMD program in a-1 read out from the memory 11-1, and outputs the instruction data to the instruction decode unit 13-1 and the right of the SIMD operator 1-2, selector if shows the effect that command output from the determination unit 32 selects the instruction data of NOP, by selecting the command data NOP, the process of outputting the instruction data to the right in the SIMD computation unit 1-2 carry out.

命令フェッチ制御部12−2の命令セレクタ33はセレクタ判定部32から出力された指令が命令メモリ11−2から読み出されたSIMDプログラムA−2内の命令データを選択する旨を示していれば、命令メモリ11−2から読み出されたSIMDプログラムA−2内の命令データを選択して、その命令データを命令デコード部13−2及び右隣のSIMD演算器1−3に出力し、セレクタ判定部32から出力された指令が左隣のSIMD演算器1−1から出力された命令データを選択する旨を示していれば、左隣のSIMD演算器1−1から出力された命令データを選択し、その命令データを右隣のSIMD演算器1−2に出力する処理を実施する。 Instruction selector 33 of the instruction fetch control unit 12-2 if indicates that the command output from the selector determination unit 32 selects the instruction data in the SIMD program A-2 read out from the instruction memory 11-2 , by selecting the instruction data in the SIMD program a-2 read out from the instruction memory 11-2, and outputs the instruction data to the instruction decode unit 13-2 and the right of the SIMD operator 1-3, selector if shows the effect that command output from the determination unit 32 selects the instruction data output from the SIMD computation unit 1-1 of the left neighboring, the instruction data output from the SIMD computation unit 1-1 left adjacent selected, it carries out a process of outputting the instruction data to the right in the SIMD computation unit 1-2.

命令フェッチ制御部12−3の命令セレクタ33はセレクタ判定部32から出力された指令が命令メモリ11−3から読み出されたSIMDプログラムA−3内の命令データを選択する旨を示していれば、命令メモリ11−3から読み出されたSIMDプログラムA−3内の命令データを選択して、その命令データを命令デコード部13−3に出力し、セレクタ判定部32から出力された指令が左隣のSIMD演算器1−2から出力された命令データを選択する旨を示していれば、左隣のSIMD演算器1−2から出力された命令データを選択し、その命令データを命令デコード部13−3に出力する処理を実施する。 Instruction selector 33 of the instruction fetch control unit 12-3 if indicates that the command output from the selector determination unit 32 selects the instruction data in the SIMD program A-3 read from the instruction memory 11-3 , by selecting the instruction data in the SIMD program a-3 read from the instruction memory 11-3, and outputs the instruction data to the instruction decoding unit 13-3, command output from the selector checking unit 32 is left if shows the effect of selecting the instruction data output from neighboring SIMD operator 1-2, select the instruction data output from the SIMD computation unit 1-2 of the left neighboring, the instruction data instruction decode unit and it carries out a process of outputting to 13-3.

図4はこの発明の実施の形態1による並列信号処理プロセッサの命令デコード部13−1〜13−3を示す構成図である。 Figure 4 is a block diagram showing the instruction decoding unit 13-1 to 13-3 of the parallel signal processing processor according to the first embodiment of the present invention.
図4において、命令デコード部13−1の命令デコーダ41は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を命令フェッチ制御部12−1に出力し、そのデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−1に出力する処理を実施する。 4, if the decoder selection signal instruction decoder 41 output from the overall connection control unit 2 of the instruction decoding unit 13-1 if shows the effect of selecting the instruction memory 11-1, SIMD from the instruction memory 11-1 outputting a branch instruction signal instructing to retrieve the program a-1 to the instruction fetch control unit 12-1, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-1, the instruction and it carries out a process of outputting a branch instruction signal indicating that not get SIMD program a-1 from the memory 11-1 to the instruction fetch control unit 12-1.
また、命令デコーダ41はセレクタ42により選択された命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−1に発行する処理を実施する。 The instruction decoder 41 converts the instruction data selected by the selector 42 to the PE control signal, carries out a process of issuing the PE control signal to the four PE arithmetic unit 14-1.

命令デコード部13−2の命令デコーダ41は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示していれば、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を命令フェッチ制御部12−2に出力し、そのデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示していれば、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−2に出力する処理を実施する。 If the instruction decoder 41 of the instruction decode unit 13-2 only to show the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, SIMD program A-2 from the instruction memory 11-2 outputting a branch instruction signal instructing to retrieve the instruction fetch control unit 12-2, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-2, the instruction memory 11-2 and it carries out a process of outputting a branch instruction signal indicating that not get SIMD program a-2 to the instruction fetch control unit 12-2 from.
また、命令デコーダ41はセレクタ42により選択された命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−2に発行する処理を実施する。 The instruction decoder 41 converts the instruction data selected by the selector 42 to the PE control signal, carries out a process of issuing the PE control signal to the four PE arithmetic unit 14-2.

命令デコード部13−3の命令デコーダ41は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−3を選択する旨を示していれば、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を命令フェッチ制御部12−3に出力し、そのデコーダ選択信号が命令メモリ11−3以外の命令メモリを選択する旨を示していれば、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−3に出力する処理を実施する。 If the instruction decoder 41 of the instruction decode unit 13-3 only to show the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-3, SIMD program A-3 from the instruction memory 11-3 outputting a branch instruction signal instructing to retrieve the instruction fetch control unit 12-3, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-3, the instruction memory 11-3 and it carries out a process of outputting a branch instruction signal indicating that not get SIMD program a-3 to the instruction fetch control unit 12-3 from.
また、命令デコーダ41はセレクタ42により選択された命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−3に発行する処理を実施する。 The instruction decoder 41 converts the instruction data selected by the selector 42 to the PE control signal, carries out a process of issuing the PE control signal to the four PE arithmetic unit 14-3.

命令デコード部13−1のセレクタ42は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示していれば、命令フェッチ制御部12−1から出力された命令データを選択して、その命令データを命令デコーダ41に出力し、そのデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示していれば、右隣のSIMD演算器1−2から出力された命令データを選択して、その命令データを命令デコーダ41に出力する処理を実施する。 If the selector 42 of the instruction decode unit 13-1 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-1, which is outputted from the instruction fetch control unit 12-1 instructions select the data, and outputs the instruction data to the instruction decoder 41, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-1, the right SIMD operator 1-2 select the instruction data output from, and carries out a process of outputting the instruction data to the instruction decoder 41.

命令デコード部13−2のセレクタ42は全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示していれば、命令フェッチ制御部12−2から出力された命令データを選択して、その命令データを命令デコーダ41及び左隣のSIMD演算器1−1に出力し、そのデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示していれば、右隣のSIMD演算器1−3から出力された命令データを選択して、その命令データを命令デコーダ41及び左隣のSIMD演算器1−1に出力する処理を実施する。 If the selector 42 of the instruction decode unit 13-2 illustrates the fact that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, which is outputted from the instruction fetch control unit 12-2 instructions select the data, and outputs the instruction data to the instruction decoder 41 and left SIMD operator 1-1, if it shows the effect that the decoder select signal selects the instruction memory other than the instruction memory 11-2 selects the instruction data output from the SIMD computation unit 1-3 to the right, and carries out a process of outputting the instruction data to the SIMD computation unit 1-1 of the instruction decoder 41 and left.
命令デコード部13−3のセレクタ42は命令フェッチ制御部12−3から出力された命令データを選択して、その命令データを命令デコーダ41及び左隣のSIMD演算器1−2に出力する処理を実施する。 The selector 42 of the instruction decode unit 13-3 selects the instruction data output from the instruction fetch control unit 12-3, the process of outputting the instruction data to the SIMD computation unit 1-2 of the instruction decoder 41 and left carry out.

次に動作について説明する。 Next, the operation will be described.
最初に、3個のSIMD演算器1−1〜1−3を結合して、3×4個のPE演算器14が並列に演算処理を実行する場合の処理内容を説明する。 First, by combining three SIMD operator 1-1 through 1-3, 3 × 4 pieces of PE calculator 14 explains a procedure in the case of executing the operation process in parallel.
図5は3個のSIMD演算器1−1〜1−3を結合して、SIMDプログラムA−1,A−2,A−3内の命令データを順番に読み出し、その命令データに対応するPE制御信号を12個のPE演算器14−1〜14−3に発行している様子を示す説明図である。 Figure 5 combines the three SIMD operator 1-1 to 1-3, reads the command data in the SIMD program A-1, A-2, A-3 in sequence, corresponding to the instruction data PE is an explanatory view showing a state in which issues control signals to the twelve PE calculator 14-1 to 14-3.
なお、PE演算器14−1〜14−3は、演算対象のデータや演算結果を格納するRAMなどの記録媒体を実装しているが、SIMD演算器1−1〜1−3が結合されることで、他のSIMD演算器1に実装されているPE演算器14の記録媒体に格納されている演算結果を参照することが可能になり、その演算結果を演算対象のデータとして使用することができる。 Incidentally, PE calculator 14-1 to 14-3 is implements a recording medium such as a RAM for storing data and calculation results of the calculation target, SIMD calculator 1-1 to 1-3 are coupled it is, it is possible to refer to the operation result stored in the recording medium of the PE calculation device 14 mounted on the other SIMD operator 1, the use of the calculation result as an operation target data it can.

まず、全体連結制御部2は、SIMD演算器1−1とSIMD演算器1−2とSIMD演算器1−3間の結合を指示するSIMD結合制御信号を演算器連結部3−1,3−2に出力する。 First, the overall connection control unit 2, SIMD coupling control signal calculator connection unit for instructing the coupling between the SIMD computation unit 1-1 and the SIMD computation unit 1-2 and the SIMD computation unit 1-3 3-1,3- and outputs it to the 2.
即ち、全体連結制御部2のシーケンサ22は、結合制御命令メモリ21により格納されている全体結合制御プログラム内の命令を読み出し、その命令がSIMD演算器1−1〜1−3間の結合を指示する命令であれば、SIMD演算器1−1〜1−3間の結合を指示するSIMD結合制御信号の生成をSIMD連結制御部23に指示する。 That is, the sequencer 22 of the overall connection control unit 2 reads the instructions in the total binding control program stored by coupling control instruction memory 21, the instruction instructing the coupling between SIMD operator 1-1 to 1-3 if an instruction to an instruction to generate the SIMD binding control signal for instructing the coupling between the SIMD computation unit 1-1 to 1-3 to the SIMD connection control unit 23.
全体連結制御部2のSIMD連結制御部23は、シーケンサ22の指示の下、SIMD演算器1−1〜1−3間の結合を指示するSIMD結合制御信号を生成し、そのSIMD結合制御信号を演算器連結部3−1,3−2に出力する。 SIMD connection control unit 23 of the overall connection control unit 2, under the direction of the sequencer 22, generates a SIMD binding control signal for instructing the coupling between SIMD operator 1-1 to 1-3, the SIMD coupling control signals and outputs to the computing unit connecting part 3-1 and 3-2.

演算器連結部3−1は、全体連結制御部2からSIMD演算器1−1とSIMD演算器1−2間の結合を指示するSIMD結合制御信号を受けると、SIMD演算器1−1とSIMD演算器1−2間を結合する。 Calculator connecting unit 3-1 receives the SIMD binding control signal for instructing the coupling between the overall connection control unit 2 SIMD operator 1-1 and SIMD operator 1-2, the SIMD computation unit 1-1 and the SIMD coupling between calculator 1-2.
演算器連結部3−2は、全体連結制御部2からSIMD演算器1−2とSIMD演算器1−3間の結合を指示するSIMD結合制御信号を受けると、SIMD演算器1−2とSIMD演算器1−3間を結合する。 Calculator connecting unit 3-2 receives the SIMD binding control signal for instructing the coupling between the overall connection control unit 2 and the SIMD computation unit 1-2 SIMD operator 1-3, the SIMD computation unit 1-2 and SIMD coupling between calculator 1-3.
これにより、3個のSIMD演算器1−1〜1−3が結合されるため、12個のPE演算器14を用いて、3個の演算対象のデータを同時に演算することが可能なSIMDが構成される。 Thus, since the three SIMD operator 1-1 to 1-3 are combined, using a twelve PE calculator 14, it is SIMD capable of simultaneously calculating the three data operand constructed.

次に、全体連結制御部2は、最初にSIMDプログラムA−1内の命令データをSIMD演算器1−1〜1−3に与えるため、選択対象の命令メモリがSIMD演算器1−1内の命令メモリ11−1である旨を示すデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Next, the overall connection control unit 2, first to provide instruction data in SIMD program A-1 in the SIMD operator 1-1 to 1-3, the selection instruction memory is in the SIMD operator 1-1 and outputs a decoder selection signal indicating that an instruction memory 11-1 to the instruction decoding unit 13-1 to 13-3 of the SIMD operator 1-1 to 1-3.
即ち、全体連結制御部2のシーケンサ22は、結合制御命令メモリ21により格納されている全体結合制御プログラム内の次の命令(SIMD演算器1−1〜1−3間の結合を指示する命令の次の命令)を読み出し、その命令がSIMDプログラムA−1内の命令データを選択する命令であれば、選択対象の命令メモリがSIMD演算器1−1内の命令メモリ11−1である旨を示すデコーダ選択信号の生成をデコーダ選択制御部24に指示する。 That is, the sequencer 22 of the overall connection control unit 2, coupling control entire instruction stored by the memory 21 coupled control program in the next instruction (the instruction which instructs the coupling between SIMD operator 1-1 to 1-3 reads the next instruction), if the instruction to the instruction to select the instruction data in the SIMD program a-1, the effect instruction memory to be selected is an instruction memory 11-1 in the SIMD operator 1-1 the generation of the decoder selection signal indicating an instruction to the decoder selection control unit 24.
全体連結制御部2のデコーダ選択制御部24は、シーケンサ22の指示の下、選択対象の命令メモリがSIMD演算器1−1内の命令メモリ11−1である旨を示すデコーダ選択信号を生成し、そのデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Overall connection control unit 2 of the decoder selection control unit 24, under the direction of the sequencer 22, generates a decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-1 in the SIMD operator 1-1 , and it outputs the decoder selection signal to the instruction decoding unit 13-1 to 13-3 of the SIMD operator 1-1 to 1-3.

命令デコード部13−1の命令デコーダ41は、全体連結制御部2から命令メモリ11−1を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を命令フェッチ制御部12−1に出力する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the decoder select signal indicating to select the instruction memory 11-1 from the overall connection control unit 2 acquires the SIMD program A-1 from the instruction memory 11-1 and it outputs a branch instruction signal indicating the fact to the instruction fetch control unit 12-1.
一方、命令デコード部13−1,13−2の命令デコーダ41は、全体連結制御部2から命令メモリ11−1を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−2,11−3からSIMDプログラムA−2,A−3を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−2,12−3に出力する。 On the other hand, the instruction decoder 41 of the instruction decode unit 13-1 and 13-2 receives the decoder select signal indicating to select the instruction memory 11-1 from the overall connection control unit 2, the instruction memory 11-2,11- the branch indicating signal indicating that the 3 do not get SIMD program a-2, a-3 and outputs the instruction fetch control unit 12-2 and 12-3.

命令フェッチ制御部12−1は、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を命令デコード部13−1から受けると、命令メモリ11−1からSIMDプログラムA−1内の命令データを取得して、その命令データを命令デコード部13−1に出力するとともに、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction fetch control unit 12-1 receives the branch instruction signal instructing to retrieve the SIMD program A-1 from the instruction memory 11-1 from the instruction decoding unit 13-1, SIMD program from the instruction memory 11-1 A- It acquires instruction data in 1, and outputs the instruction data to the instruction decoding unit 13-1, and outputs the instruction data to the right in the SIMD computation unit 1-2.
即ち、命令フェッチ制御部12−1のメモリアクセス制御部31は、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を受けると、その分岐指示信号にしたがって内部のプログラムカウンタを制御することで、命令メモリ11−1により格納されているSIMDプログラムA−1内の命令データを順番に読み出し、その命令データが命令メモリ11−1から命令セレクタ33に与えられるように制御する。 That is, the memory access control unit 31 of the instruction fetch control unit 12-1 receives the branch instruction signal instructing to retrieve the SIMD program A-1 from the instruction memory 11-1, the internal program in accordance with the branching command signal by controlling the counter, reads the command data in the SIMD program a-1 stored by the instruction memory 11-1 in turn, controlled so that instruction data is provided to the instruction selector 33 from the instruction memory 11-1 to.

命令フェッチ制御部12−1のセレクタ判定部32は、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を受けると、命令メモリ11−1から読み出されたSIMDプログラムA−1内の命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する指令を命令セレクタ33に出力する。 Selector checking unit 32 of the instruction fetch control unit 12-1 receives the branch instruction signal instructing to retrieve the SIMD program A-1 from the instruction memory 11-1, SIMD program read from the instruction memory 11-1 select instruction data in the a-1, and outputs a command to output the instruction data to the right in the SIMD computation unit 1-2 to the instruction selector 33.
命令フェッチ制御部12−1の命令セレクタ33は、メモリアクセス制御部31の制御の下、命令メモリ11−1からSIMDプログラムA−1内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−1内の命令データを選択して、その命令データを命令デコード部13−1に出力するとともに、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction selector 33 of the instruction fetch control unit 12-1 under the control of the memory access control unit 31 receives the instruction data in the SIMD program A-1 from the instruction memory 11-1, output from the selector checking unit 32 in accordance with the command, by selecting the instruction data in the SIMD program in a-1, and outputs the instruction data to the instruction decoding unit 13-1, and outputs the instruction data to the right in the SIMD computation unit 1-2 .

命令フェッチ制御部12−2は、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を命令デコード部13−2から受けると、命令メモリ11−2からSIMDプログラムA−2内の命令データを取得せずに、左隣のSIMD演算器1−1から出力されたSIMDプログラムA−1内の命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction fetch control unit 12-2 receives the branch instruction signal indicating that the instruction memory 11-2 not get SIMD program A-2 from the instruction decoding unit 13-2, SIMD program from the instruction memory 11-2 A- without retrieving the instruction data in the 2, select the instruction data in the SIMD program a-1 output from the SIMD computation unit 1-1 adjacent to the left, right next to the SIMD computation unit and the instruction data 1- and outputs it to the 3.
即ち、命令フェッチ制御部12−2のセレクタ判定部32は、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を受けると、左隣のSIMD演算器1−1から出力された命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-2 receives the branch instruction signal indicating that the instruction memory 11-2 not get SIMD program A-2, from the SIMD computation unit 1-1 left adjacent It selects the output instruction data, and outputs a command to output the instruction data to the right in the SIMD computation unit 1-3 to the instruction selector 33.
命令フェッチ制御部12−2の命令セレクタ33は、左隣のSIMD演算器1−1からSIMDプログラムA−1内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−1内の命令データを選択し、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-2 receives the instruction data in the SIMD program A-1 from the SIMD computation unit 1-1 of the left adjacent, in accordance with the instruction output from the selector checking unit 32, the SIMD select the instruction data in the program a-1, and outputs the instruction data to the right in the SIMD computation unit 1-3.

命令フェッチ制御部12−3は、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を命令デコード部13−3から受けると、命令メモリ11−3からSIMDプログラムA−3内の命令データを取得せずに、左隣のSIMD演算器1−2から出力されたSIMDプログラムA−1内の命令データを選択して、その命令データを命令デコード部13−3に出力する。 Instruction fetch control unit 12-3 receives the branch instruction signal indicating that the instruction memory 11-3 not get SIMD program A-3 from the instruction decode unit 13-3, SIMD program from the instruction memory 11-3 A- without retrieving the instruction data in the 3, select the instruction data in the SIMD program a-1 output from the SIMD computation unit 1-2 of the left neighboring, it outputs the instruction data to the instruction decode unit 13-3 to.
即ち、命令フェッチ制御部12−3のセレクタ判定部32は、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を受けると、左隣のSIMD演算器1−2から出力された命令データを選択して、その命令データを命令デコード部13−3に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-3 receives the branch instruction signal indicating that the instruction memory 11-3 not get SIMD program A-3, the SIMD computation unit 1-2 of the left neighboring It selects the output instruction data, and outputs a command to output the instruction data to the instruction decode unit 13-3 to the instruction selector 33.
命令フェッチ制御部12−3の命令セレクタ33は、左隣のSIMD演算器1−2からSIMDプログラムA−1内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−1内の命令データを選択し、その命令データを命令デコード部13−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-3 receives the instruction data in the SIMD program A-1 from the SIMD computation unit 1-2 of the left adjacent, in accordance with the instruction output from the selector checking unit 32, the SIMD select the instruction data in the program a-1, and outputs the instruction data to the instruction decoding unit 13-3.

命令デコード部13−3のセレクタ42は、命令フェッチ制御部12−3からSIMDプログラムA−1内の命令データを受けると、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−2に出力する。 The selector 42 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-1 from the instruction fetch control unit 12-3, and outputs the instruction data to the instruction decoder 41, SIMD calculator left adjacent and outputs it to 1-2.
命令デコード部13−3の命令デコーダ41は、セレクタ42からSIMDプログラムA−1内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−3に発行する。 Instruction decoder 41 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-1 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-3.

命令デコード部13−2のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示しているため、右隣のSIMD演算器1−3から出力されたSIMDプログラムA−1内の命令データを選択して、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−1に出力する。 The selector 42 of the instruction decoding unit 13-2, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory other than the instruction memory 11-2, the right SIMD operator 1 select instruction data in SIMD program a-1 output from -3, and outputs the instruction data to the instruction decoder 41, and outputs the SIMD computation unit 1-1 left adjacent.
命令デコード部13−2の命令デコーダ41は、セレクタ42からSIMDプログラムA−1内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−2に発行する。 Instruction decoder 41 of the instruction decoding unit 13-2 receives the instruction data in the SIMD program A-1 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-2.

命令デコード部13−1のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示しているため、命令フェッチ制御部12−1から出力されたSIMDプログラムA−1内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-1, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-1, which is outputted from the instruction fetch control unit 12-1 select instruction data in SIMD program a-1, and outputs the instruction data to the instruction decoder 41.
命令デコード部13−1の命令デコーダ41は、セレクタ42からSIMDプログラムA−1内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−1に発行する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the instruction data in the SIMD program A-1 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-1.
これにより、3個のSIMD演算器1−1〜1−3内のPE演算器14−1〜14−3には、同一のPE制御信号(SIMD演算器1がSIMDプログラムA−1内の命令データを実行するための制御信号)が発行されたことになる。 Thus, three to PE calculator 14-1 to 14-3 in the SIMD operator 1-1 to 1-3, the instruction of the same PE control signal (SIMD arithmetic unit 1 is a SIMD program A-1 so that the control signal for executing the data) is issued.

SIMD演算器1−1のバスI/F16−1は、入出力バス4から演算対象のデータを入力すると、PEバス15−1を介して、そのデータを4個のPE演算器14−1に出力する。 Bus I / F16-1 the SIMD operator 1-1, the data input operands from output bus 4, via the PE bus 15-1, the data to four PE arithmetic unit 14-1 Output.
SIMD演算器1−2のバスI/F16−2は、入出力バス4から演算対象のデータを入力すると、PEバス15−2を介して、そのデータを4個のPE演算器14−2に出力する。 Bus I / F16-2 the SIMD operator 1-2, the data input operands from output bus 4, via the PE bus 15-2, the data to four PE arithmetic unit 14-2 Output.
SIMD演算器1−3のバスI/F16−3は、入出力バス4から演算対象のデータを入力すると、PEバス15−3を介して、そのデータを4個のPE演算器14−3に出力する。 Bus I / F16-3 the SIMD operator 1-3, the data input operands from output bus 4, via the PE bus 15-3, the data to four PE arithmetic unit 14-3 Output.

SIMD演算器1−1のPE演算器14−1は、命令デコード部13−1から発行されたPE制御信号を実行することで、バスI/F16−1から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−1を介して、その演算結果をバスI/F16−1に出力する。 PE calculator 14-1 SIMD operator 1-1, by executing the PE control signal issued from the instruction decoding unit 13-1 to the data operand output from the bus I / F16-1 performs predetermined calculation processing Te, via the PE bus 15-1, and outputs the operation result to the bus I / F16-1.
SIMD演算器1−2のPE演算器14−2は、命令デコード部13−2から発行されたPE制御信号を実行(PE演算器14−1と同一のPE制御信号を実行)することで、バスI/F16−2から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−2を介して、その演算結果をバスI/F16−2に出力する。 PE calculator 14-2 of the SIMD computation unit 1-2, by executing the PE control signal issued from the instruction decode unit 13-2 (PE calculator 14-1 perform the same PE control signal and), It performs predetermined calculation processing on the data operand output from the bus I / F16-2, via the PE bus 15-2, and outputs the operation result to the bus I / F16-2.
SIMD演算器1−3のPE演算器14−3は、命令デコード部13−3から発行されたPE制御信号を実行(PE演算器14−1,14−2と同一のPE制御信号を実行)することで、バスI/F16−3から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−3を介して、その演算結果をバスI/F16−3に出力する。 PE calculator 14-3 SIMD operator 1-3, (executes the same PE control signal and PE calculator 14-1 and 14-2) executes the issued PE control signals from the instruction decode unit 13-3 doing, it performs predetermined calculation processing on the data operand output from the bus I / F16-3, via the PE bus 15-3, and outputs the operation result to the bus I / F16-3 .

SIMD演算器1−1のバスI/F16−1は、PE演算器14−1の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-1 the SIMD operator 1-1 receives the operation result of the PE calculator 14-1, and outputs the operation result to the output bus 4.
SIMD演算器1−2のバスI/F16−2は、PE演算器14−2の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-2 the SIMD operator 1-2 receives the operation result of the PE calculator 14-2, and outputs the operation result to the output bus 4.
SIMD演算器1−3のバスI/F16−3は、PE演算器14−3の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-3 the SIMD operator 1-3, when receiving the operation result of the PE calculator 14-3, and outputs the operation result to the output bus 4.

全体連結制御部2は、SIMD演算器1−1〜1−3がSIMDプログラムA−1内の命令データを実行すると、次に、SIMDプログラムA−2内の命令データをSIMD演算器1−1〜1−3に与えるため、選択対象の命令メモリがSIMD演算器1−2内の命令メモリ11−2である旨を示すデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Overall connection control section 2 SIMD operator 1-1 to 1-3 executes the instruction data in the SIMD program A-1, then, the SIMD computation unit instruction data in SIMD program A-2 1-1 to provide the ~1-3, the instruction decoding unit of the SIMD computation unit 1-1 to 1-3 decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-2 in the SIMD operator 1-2 and outputs it to 13-1 to 13-3.
即ち、全体連結制御部2のシーケンサ22は、結合制御命令メモリ21により格納されている全体結合制御プログラム内の次の命令(SIMDプログラムA−1内の命令データを選択する命令の次の命令)を読み出し、その命令がSIMDプログラムA−2内の命令データを選択する命令であれば、選択対象の命令メモリがSIMD演算器1−2内の命令メモリ11−2である旨を示すデコーダ選択信号の生成をデコーダ選択制御部24に指示する。 That is, the sequencer 22 of the overall connection control unit 2, the next instruction in the total binding control program stored by coupling control instruction memory 21 (the instruction following the instruction that selects the instruction data in the SIMD program A-1) reading, if the instruction by the instruction selects the instruction data in the SIMD program a-2, a decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-2 in the SIMD operator 1-2 and it instructs the generation of the decoder selection control unit 24.
全体連結制御部2のデコーダ選択制御部24は、シーケンサ22の指示の下、選択対象の命令メモリがSIMD演算器1−2内の命令メモリ11−2である旨を示すデコーダ選択信号を生成し、そのデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Decoder selection control section of the overall connection control unit 224, under the instruction of the sequencer 22, generates a decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-2 in the SIMD operator 1-2 , and it outputs the decoder selection signal to the instruction decoding unit 13-1 to 13-3 of the SIMD operator 1-1 to 1-3.

命令デコード部13−2の命令デコーダ41は、全体連結制御部2から命令メモリ11−2を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を命令フェッチ制御部12−2に出力する。 Instruction decoder 41 of the instruction decoding unit 13-2 receives the decoder select signal indicating to select the instruction memory 11-2 from the overall connection control unit 2 acquires the SIMD program A-2 from the instruction memory 11-2 and it outputs a branch instruction signal indicating the fact to the instruction fetch control unit 12-2.
一方、命令デコード部13−1,13−3の命令デコーダ41は、全体連結制御部2から命令メモリ11−2を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−1,11−3からSIMDプログラムA−1,A−3を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−1,12−3に出力する。 On the other hand, the instruction decoder 41 of the instruction decode unit 13-1,13-3 receives the decoder select signal indicating to select the instruction memory 11-2 from the overall connection control unit 2, the instruction memory 11-1,11- the branch indicating signal indicating that the 3 do not get SIMD program a-1, a-3 and outputs the instruction fetch control unit 12-1 and 12-3.

命令フェッチ制御部12−1は、命令デコード部13−1から、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を受けると、命令メモリ11−1からSIMDプログラムA−1内の命令データを取得せずに、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction fetch control unit 12-1, the instruction decoding unit 13-1 receives the branch instruction signal indicating that the instruction memory 11-1 not get SIMD program A-1, SIMD program from the instruction memory 11-1 A without retrieving the instruction data in the -1, select the command data NOP, and outputs the instruction data to the right in the SIMD computation unit 1-2.
即ち、命令フェッチ制御部12−1のセレクタ判定部32は、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を受けると、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-1 receives the branch instruction signal indicating that the instruction memory 11-1 not get SIMD program A-1, select the command data NOP, the It outputs a command for outputting the instruction data to the right in the SIMD computation unit 1-2 to the instruction selector 33.
命令フェッチ制御部12−1の命令セレクタ33は、セレクタ判定部32から出力された指令にしたがって、NOPの命令データを選択し、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction selector 33 of the instruction fetch control unit 12-1, in accordance with command output from the selector checking unit 32, selects the instruction data of NOP, and outputs the instruction data to the right in the SIMD computation unit 1-2.

命令フェッチ制御部12−2は、命令デコード部13−2から、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を受けると、命令メモリ11−2からSIMDプログラムA−2内の命令データを取得して、その命令データを命令デコード部13−2に出力するとともに、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction fetch control unit 12-2, the instruction decoding unit 13-2 receives the branch instruction signal instructing to retrieve the SIMD program A-2 from the instruction memory 11-2, SIMD program from the instruction memory 11-2 A It acquires instruction data within -2 and outputs the instruction data to the instruction decoding unit 13-2, and outputs the instruction data to the right in the SIMD computation unit 1-3.
即ち、命令フェッチ制御部12−2のメモリアクセス制御部31は、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を受けると、その分岐指示信号にしたがって内部のプログラムカウンタを制御することで、命令メモリ11−2により格納されているSIMDプログラムA−2内の命令データを順番に読み出し、その命令データが命令メモリ11−2から命令セレクタ33に与えられるように制御する。 That is, the memory access control unit 31 of the instruction fetch control unit 12-2 receives the branch instruction signal instructing to retrieve the SIMD program A-2 from the instruction memory 11-2, the internal program in accordance with the branching command signal by controlling the counter, reads the command data in the SIMD program a-2 stored by the instruction memory 11-2 in turn, controlled so that instruction data is provided to the instruction selector 33 from the instruction memory 11-2 to.

命令フェッチ制御部12−2のセレクタ判定部32は、命令メモリ11−2からSIMDプログラムA−2を取得する旨を示す分岐指示信号を受けると、命令メモリ11−2から読み出されたSIMDプログラムA−2内の命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する指令を命令セレクタ33に出力する。 Selector checking unit 32 of the instruction fetch control unit 12-2 receives the branch instruction signal instructing to retrieve the SIMD program A-2 from the instruction memory 11-2, SIMD program read from the instruction memory 11-2 select instruction data in the a-2, and outputs a command for outputting the instruction data to the right in the SIMD computation unit 1-3 to the instruction selector 33.
命令フェッチ制御部12−2の命令セレクタ33は、メモリアクセス制御部31の制御の下、命令メモリ11−2からSIMDプログラムA−2内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−2内の命令データを選択して、その命令データを命令デコード部13−2に出力するとともに、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-2 under the control of the memory access control unit 31 receives the instruction data in the SIMD program A-2 from the instruction memory 11-2, output from the selector checking unit 32 in accordance with the command, by selecting the instruction data in the SIMD program a-2, and outputs the instruction data to the instruction decoding unit 13-2, and outputs the instruction data to the right in the SIMD computation unit 1-3 .

命令フェッチ制御部12−3は、命令デコード部13−3から、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を受けると、命令メモリ11−3からSIMDプログラムA−3内の命令データを取得せずに、左隣のSIMD演算器1−2から出力されたSIMDプログラムA−2内の命令データを選択して、その命令データを命令デコード部13−3に出力する。 Instruction fetch control unit 12-3, the instruction decoding unit 13-3 receives the branch instruction signal indicating that the instruction memory 11-3 not get SIMD program A-3, SIMD program from the instruction memory 11-3 A without retrieving the instruction data in the -3, select the instruction data in the SIMD program a-2 output from the SIMD computation unit 1-2 of the left neighboring, the instruction data to the instruction decode unit 13-3 Output.
即ち、命令フェッチ制御部12−3のセレクタ判定部32は、命令メモリ11−3からSIMDプログラムA−3を取得しない旨を示す分岐指示信号を受けると、左隣のSIMD演算器1−2から出力された命令データを選択して、その命令データを命令デコード部13−3に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-3 receives the branch instruction signal indicating that the instruction memory 11-3 not get SIMD program A-3, the SIMD computation unit 1-2 of the left neighboring It selects the output instruction data, and outputs a command to output the instruction data to the instruction decode unit 13-3 to the instruction selector 33.
命令フェッチ制御部12−3の命令セレクタ33は、左隣のSIMD演算器1−2からSIMDプログラムA−2内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−2内の命令データを選択し、その命令データを命令デコード部13−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-3 receives the instruction data in the SIMD program A-2 from the SIMD computation unit 1-2 of the left adjacent, in accordance with the instruction output from the selector checking unit 32, the SIMD select the instruction data in the program a-2, and outputs the instruction data to the instruction decoding unit 13-3.

命令デコード部13−3のセレクタ42は、命令フェッチ制御部12−3からSIMDプログラムA−2内の命令データを受けると、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−2に出力する。 The selector 42 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-2 from the instruction fetch control unit 12-3, and outputs the instruction data to the instruction decoder 41, SIMD calculator left adjacent and outputs it to 1-2.
命令デコード部13−3の命令デコーダ41は、セレクタ42からSIMDプログラムA−2内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−3に発行する。 Instruction decoder 41 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-2 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-3.

命令デコード部13−2のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示しているため、命令フェッチ制御部12−2から出力されたSIMDプログラムA−2内の命令データを選択して、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−1に出力する。 The selector 42 of the instruction decoding unit 13-2, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, which is outputted from the instruction fetch control unit 12-2 select instruction data in SIMD program a-2, and outputs the instruction data to the instruction decoder 41, and outputs the SIMD computation unit 1-1 left adjacent.
命令デコード部13−2の命令デコーダ41は、セレクタ42からSIMDプログラムA−2内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−2に発行する。 Instruction decoder 41 of the instruction decoding unit 13-2 receives the instruction data in the SIMD program A-2 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-2.

命令デコード部13−1のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示しているため、右隣のSIMD演算器1−2から出力されたSIMDプログラムA−2内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-1, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory other than the instruction memory 11-1, the right SIMD operator 1 select instruction data in SIMD program a-2 output from -2 to output the instruction data to the instruction decoder 41.
命令デコード部13−1の命令デコーダ41は、セレクタ42からSIMDプログラムA−2内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−1に発行する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the instruction data in the SIMD program A-2 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-1.
これにより、3個のSIMD演算器1−1〜1−3内のPE演算器14−1〜14−3には、同一のPE制御信号(SIMD演算器1がSIMDプログラムA−2内の命令データを実行するための制御信号)が発行されたことになる。 Thus, three to PE calculator 14-1 to 14-3 in the SIMD operator 1-1 to 1-3, the instruction of the same PE control signal (SIMD arithmetic unit 1 is a SIMD program A-2 so that the control signal for executing the data) is issued.

SIMD演算器1−1のバスI/F16−1は、入出力バス4から演算対象のデータを入力すると、PEバス15−1を介して、そのデータを4個のPE演算器14−1に出力する。 Bus I / F16-1 the SIMD operator 1-1, the data input operands from output bus 4, via the PE bus 15-1, the data to four PE arithmetic unit 14-1 Output.
SIMD演算器1−2のバスI/F16−2は、入出力バス4から演算対象のデータを入力すると、PEバス15−2を介して、そのデータを4個のPE演算器14−2に出力する。 Bus I / F16-2 the SIMD operator 1-2, the data input operands from output bus 4, via the PE bus 15-2, the data to four PE arithmetic unit 14-2 Output.
SIMD演算器1−3のバスI/F16−3は、入出力バス4から演算対象のデータを入力すると、PEバス15−3を介して、そのデータを4個のPE演算器14−3に出力する。 Bus I / F16-3 the SIMD operator 1-3, the data input operands from output bus 4, via the PE bus 15-3, the data to four PE arithmetic unit 14-3 Output.

SIMD演算器1−1のPE演算器14−1は、命令デコード部13−1から発行されたPE制御信号を実行することで、バスI/F16−1から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−1を介して、その演算結果をバスI/F16−1に出力する。 PE calculator 14-1 SIMD operator 1-1, by executing the PE control signal issued from the instruction decoding unit 13-1 to the data operand output from the bus I / F16-1 performs predetermined calculation processing Te, via the PE bus 15-1, and outputs the operation result to the bus I / F16-1.
SIMD演算器1−2のPE演算器14−2は、命令デコード部13−2から発行されたPE制御信号を実行(PE演算器14−1と同一のPE制御信号を実行)することで、バスI/F16−2から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−2を介して、その演算結果をバスI/F16−2に出力する。 PE calculator 14-2 of the SIMD computation unit 1-2, by executing the PE control signal issued from the instruction decode unit 13-2 (PE calculator 14-1 perform the same PE control signal and), It performs predetermined calculation processing on the data operand output from the bus I / F16-2, via the PE bus 15-2, and outputs the operation result to the bus I / F16-2.
SIMD演算器1−3のPE演算器14−3は、命令デコード部13−3から発行されたPE制御信号を実行(PE演算器14−1,14−2と同一のPE制御信号を実行)することで、バスI/F16−3から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−3を介して、その演算結果をバスI/F16−3に出力する。 PE calculator 14-3 SIMD operator 1-3, (executes the same PE control signal and PE calculator 14-1 and 14-2) executes the issued PE control signals from the instruction decode unit 13-3 doing, it performs predetermined calculation processing on the data operand output from the bus I / F16-3, via the PE bus 15-3, and outputs the operation result to the bus I / F16-3 .

SIMD演算器1−1のバスI/F16−1は、PE演算器14−1の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-1 the SIMD operator 1-1 receives the operation result of the PE calculator 14-1, and outputs the operation result to the output bus 4.
SIMD演算器1−2のバスI/F16−2は、PE演算器14−2の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-2 the SIMD operator 1-2 receives the operation result of the PE calculator 14-2, and outputs the operation result to the output bus 4.
SIMD演算器1−3のバスI/F16−3は、PE演算器14−3の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-3 the SIMD operator 1-3, when receiving the operation result of the PE calculator 14-3, and outputs the operation result to the output bus 4.

全体連結制御部2は、SIMD演算器1−1〜1−3がSIMDプログラムA−2内の命令データを実行すると、最後に、SIMDプログラムA−3内の命令データをSIMD演算器1−1〜1−3に与えるため、選択対象の命令メモリがSIMD演算器1−3内の命令メモリ11−3である旨を示すデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Overall connection control section 2 SIMD operator 1-1 to 1-3 executes the instruction data in the SIMD program A-2, finally, the SIMD computation unit instruction data in SIMD program A-3 1-1 to provide the ~1-3, the instruction decoding unit of the SIMD computation unit 1-1 to 1-3 decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-3 in the SIMD operator 1-3 and outputs it to 13-1 to 13-3.
即ち、全体連結制御部2のシーケンサ22は、結合制御命令メモリ21により格納されている全体結合制御プログラム内の次の命令(SIMDプログラムA−2内の命令データを選択する命令の次の命令)を読み出し、その命令がSIMDプログラムA−3内の命令データを選択する命令であれば、選択対象の命令メモリがSIMD演算器1−3内の命令メモリ11−3である旨を示すデコーダ選択信号の生成をデコーダ選択制御部24に指示する。 That is, the sequencer 22 of the overall connection control unit 2, the next instruction in the total binding control program stored by coupling control instruction memory 21 (the instruction following the instruction that selects the instruction data in the SIMD program A-2) reading, if the instruction by the instruction selects the instruction data in the SIMD program a-3, a decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-3 in the SIMD operator 1-3 and it instructs the generation of the decoder selection control unit 24.
全体連結制御部2のデコーダ選択制御部24は、シーケンサ22の指示の下、選択対象の命令メモリがSIMD演算器1−3内の命令メモリ11−3である旨を示すデコーダ選択信号を生成し、そのデコーダ選択信号をSIMD演算器1−1〜1−3の命令デコード部13−1〜13−3に出力する。 Overall connection control unit 2 of the decoder selection control unit 24, under the direction of the sequencer 22, generates a decoder selection signal indicating that the instruction memory to be selected is an instruction memory 11-3 in the SIMD operator 1-3 , and it outputs the decoder selection signal to the instruction decoding unit 13-1 to 13-3 of the SIMD operator 1-1 to 1-3.

命令デコード部13−3の命令デコーダ41は、全体連結制御部2から命令メモリ11−3を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を命令フェッチ制御部12−3に出力する。 Instruction decoder 41 of the instruction decoding unit 13-3 receives the decoder select signal indicating to select the instruction memory 11-3 from the overall connection control unit 2 acquires the SIMD program A-3 from the instruction memory 11-3 and it outputs a branch instruction signal indicating the fact to the instruction fetch control unit 12-3.
一方、命令デコード部13−1,13−2の命令デコーダ41は、全体連結制御部2から命令メモリ11−3を選択する旨を示すデコーダ選択信号を受けると、命令メモリ11−1,11−2からSIMDプログラムA−1,A−2を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−1,12−2に出力する。 On the other hand, the instruction decoder 41 of the instruction decode unit 13-1 and 13-2 receives the decoder select signal indicating to select the instruction memory 11-3 from the overall connection control unit 2, the instruction memory 11-1,11- the branch indicating signal indicating that the 2 do not get SIMD program a-1, a-2 and outputs to the instruction fetch control unit 12-1 and 12-2.

命令フェッチ制御部12−1は、命令デコード部13−1から、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を受けると、命令メモリ11−1からSIMDプログラムA−1内の命令データを取得せずに、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction fetch control unit 12-1, the instruction decoding unit 13-1 receives the branch instruction signal indicating that the instruction memory 11-1 not get SIMD program A-1, SIMD program from the instruction memory 11-1 A without retrieving the instruction data in the -1, select the command data NOP, and outputs the instruction data to the right in the SIMD computation unit 1-2.
即ち、命令フェッチ制御部12−1のセレクタ判定部32は、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を受けると、NOPの命令データを選択して、その命令データを右隣のSIMD演算器1−2に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-1 receives the branch instruction signal indicating that the instruction memory 11-1 not get SIMD program A-1, select the command data NOP, the It outputs a command for outputting the instruction data to the right in the SIMD computation unit 1-2 to the instruction selector 33.
命令フェッチ制御部12−1の命令セレクタ33は、セレクタ判定部32から出力された指令にしたがって、NOPの命令データを選択し、その命令データを右隣のSIMD演算器1−2に出力する。 Instruction selector 33 of the instruction fetch control unit 12-1, in accordance with command output from the selector checking unit 32, selects the instruction data of NOP, and outputs the instruction data to the right in the SIMD computation unit 1-2.

命令フェッチ制御部12−2は、命令デコード部13−2から、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を受けると、命令メモリ11−2からSIMDプログラムA−2内の命令データを取得せずに、左隣のSIMD演算器1−1から出力されたNOPの命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction fetch control unit 12-2, the instruction decoding unit 13-2 receives the branch instruction signal indicating that the instruction memory 11-2 not get SIMD program A-2, SIMD program from the instruction memory 11-2 A without retrieving the instruction data in -2 select the NOP instruction data output from the SIMD computation unit 1-1 of the left adjacent, and outputs the instruction data to the right in the SIMD computation unit 1-3 .
即ち、命令フェッチ制御部12−2のセレクタ判定部32は、命令メモリ11−2からSIMDプログラムA−2を取得しない旨を示す分岐指示信号を受けると、左隣のSIMD演算器1−1から出力された命令データを選択して、その命令データを右隣のSIMD演算器1−3に出力する指令を命令セレクタ33に出力する。 That is, the selector checking unit 32 of the instruction fetch control unit 12-2 receives the branch instruction signal indicating that the instruction memory 11-2 not get SIMD program A-2, from the SIMD computation unit 1-1 left adjacent It selects the output instruction data, and outputs a command to output the instruction data to the right in the SIMD computation unit 1-3 to the instruction selector 33.
命令フェッチ制御部12−2の命令セレクタ33は、左隣のSIMD演算器1−1からNOPの命令データを受けると、セレクタ判定部32から出力された指令にしたがって、NOPの命令データを選択し、その命令データを右隣のSIMD演算器1−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-2 receives the instruction data NOP from the SIMD computation unit 1-1 of the left adjacent, in accordance with the instruction output from the selector checking unit 32, selects the instruction data of NOP , and it outputs the instruction data to the right in the SIMD computation unit 1-3.

命令フェッチ制御部12−3は、命令デコード部13−2から、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を受けると、命令メモリ11−3からSIMDプログラムA−3内の命令データを取得して、その命令データを命令デコード部13−3に出力する。 Instruction fetch control unit 12-3, the instruction decoding unit 13-2 receives the branch instruction signal instructing to retrieve the SIMD program A-3 from the instruction memory 11-3, SIMD program from the instruction memory 11-3 A It acquires instruction data within -3, and outputs the instruction data to the instruction decoding unit 13-3.
即ち、命令フェッチ制御部12−3のメモリアクセス制御部31は、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を受けると、その分岐指示信号にしたがって内部のプログラムカウンタを制御することで、命令メモリ11−3により格納されているSIMDプログラムA−3内の命令データを順番に読み出し、その命令データが命令メモリ11−3から命令セレクタ33に与えられるように制御する。 That is, the memory access control unit 31 of the instruction fetch control unit 12-3 receives the branch instruction signal instructing to retrieve the SIMD program A-3 from the instruction memory 11-3, the internal program in accordance with the branching command signal by controlling the counter, reads the command data in the SIMD program a-3 which is stored by the instruction memory 11-3 in turn, controlled so that instruction data is provided to the instruction selector 33 from the instruction memory 11-3 to.

命令フェッチ制御部12−3のセレクタ判定部32は、命令メモリ11−3からSIMDプログラムA−3を取得する旨を示す分岐指示信号を受けると、SIMDプログラムA−3内の命令データを選択する指令を命令セレクタ33に出力する。 Selector checking unit 32 of the instruction fetch control unit 12-3 receives the branch instruction signal instructing to retrieve the SIMD program A-3 from the instruction memory 11-3, selects the instruction data in the SIMD program A-3 and it outputs a command to the command selector 33.
命令フェッチ制御部12−3の命令セレクタ33は、メモリアクセス制御部31の制御の下、命令メモリ11−3からSIMDプログラムA−3内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA−3内の命令データを選択し、その命令データを命令デコード部13−3に出力する。 Instruction selector 33 of the instruction fetch control unit 12-3 under the control of the memory access control unit 31 receives the instruction data in the SIMD program A-3 from the instruction memory 11-3, output from the selector checking unit 32 according to the command, and select the instruction data in the SIMD program a-3, and outputs the instruction data to the instruction decoding unit 13-3.

命令デコード部13−3のセレクタ42は、命令フェッチ制御部12−3からSIMDプログラムA−3内の命令データを受けると、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−2に出力する。 The selector 42 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-3 from the instruction fetch control unit 12-3, and outputs the instruction data to the instruction decoder 41, SIMD calculator left adjacent and outputs it to 1-2.
命令デコード部13−3の命令デコーダ41は、セレクタ42からSIMDプログラムA−3内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−3に発行する。 Instruction decoder 41 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program A-3 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-3.

命令デコード部13−2のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2以外の命令メモリを選択する旨を示しているため、右隣のSIMD演算器1−3から出力されたSIMDプログラムA−3内の命令データを選択して、その命令データを命令デコーダ41に出力するとともに、左隣のSIMD演算器1−1に出力する。 The selector 42 of the instruction decoding unit 13-2, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory other than the instruction memory 11-2, the right SIMD operator 1 select instruction data in SIMD program a-3 output from -3, and outputs the instruction data to the instruction decoder 41, and outputs the SIMD computation unit 1-1 left adjacent.
命令デコード部13−2の命令デコーダ41は、セレクタ42からSIMDプログラムA−3内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−2に発行する。 Instruction decoder 41 of the instruction decoding unit 13-2 receives the instruction data in the SIMD program A-3 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-2.

命令デコード部13−1のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1以外の命令メモリを選択する旨を示しているため、右隣のSIMD演算器1−2から出力されたSIMDプログラムA−3内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-1, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory other than the instruction memory 11-1, the right SIMD operator 1 select instruction data in SIMD program a-3 output from -2 to output the instruction data to the instruction decoder 41.
命令デコード部13−1の命令デコーダ41は、セレクタ42からSIMDプログラムA−3内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−1に発行する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the instruction data in the SIMD program A-3 from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal issued to 14-1.
これにより、3個のSIMD演算器1−1〜1−3内のPE演算器14−1〜14−3には、同一のPE制御信号(SIMD演算器1がSIMDプログラムA−3内の命令データを実行するための制御信号)が発行されたことになる。 Thus, three to PE calculator 14-1 to 14-3 in the SIMD operator 1-1 to 1-3, the instruction of the same PE control signal (SIMD arithmetic unit 1 is a SIMD program A-3 so that the control signal for executing the data) is issued.

SIMD演算器1−1のバスI/F16−1は、入出力バス4から演算対象のデータを入力すると、PEバス15−1を介して、そのデータを4個のPE演算器14−1に出力する。 Bus I / F16-1 the SIMD operator 1-1, the data input operands from output bus 4, via the PE bus 15-1, the data to four PE arithmetic unit 14-1 Output.
SIMD演算器1−2のバスI/F16−2は、入出力バス4から演算対象のデータを入力すると、PEバス15−2を介して、そのデータを4個のPE演算器14−2に出力する。 Bus I / F16-2 the SIMD operator 1-2, the data input operands from output bus 4, via the PE bus 15-2, the data to four PE arithmetic unit 14-2 Output.
SIMD演算器1−3のバスI/F16−3は、入出力バス4から演算対象のデータを入力すると、PEバス15−3を介して、そのデータを4個のPE演算器14−3に出力する。 Bus I / F16-3 the SIMD operator 1-3, the data input operands from output bus 4, via the PE bus 15-3, the data to four PE arithmetic unit 14-3 Output.

SIMD演算器1−1のPE演算器14−1は、命令デコード部13−1から発行されたPE制御信号を実行することで、バスI/F16−1から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−1を介して、その演算結果をバスI/F16−1に出力する。 PE calculator 14-1 SIMD operator 1-1, by executing the PE control signal issued from the instruction decoding unit 13-1 to the data operand output from the bus I / F16-1 performs predetermined calculation processing Te, via the PE bus 15-1, and outputs the operation result to the bus I / F16-1.
SIMD演算器1−2のPE演算器14−2は、命令デコード部13−2から発行されたPE制御信号を実行(PE演算器14−1と同一のPE制御信号を実行)することで、バスI/F16−2から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−2を介して、その演算結果をバスI/F16−2に出力する。 PE calculator 14-2 of the SIMD computation unit 1-2, by executing the PE control signal issued from the instruction decode unit 13-2 (PE calculator 14-1 perform the same PE control signal and), It performs predetermined calculation processing on the data operand output from the bus I / F16-2, via the PE bus 15-2, and outputs the operation result to the bus I / F16-2.
SIMD演算器1−3のPE演算器14−3は、命令デコード部13−3から発行されたPE制御信号を実行(PE演算器14−1,14−2と同一のPE制御信号を実行)することで、バスI/F16−3から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−3を介して、その演算結果をバスI/F16−3に出力する。 PE calculator 14-3 SIMD operator 1-3, (executes the same PE control signal and PE calculator 14-1 and 14-2) executes the issued PE control signals from the instruction decode unit 13-3 doing, it performs predetermined calculation processing on the data operand output from the bus I / F16-3, via the PE bus 15-3, and outputs the operation result to the bus I / F16-3 .

SIMD演算器1−1のバスI/F16−1は、PE演算器14−1の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-1 the SIMD operator 1-1 receives the operation result of the PE calculator 14-1, and outputs the operation result to the output bus 4.
SIMD演算器1−2のバスI/F16−2は、PE演算器14−2の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-2 the SIMD operator 1-2 receives the operation result of the PE calculator 14-2, and outputs the operation result to the output bus 4.
SIMD演算器1−3のバスI/F16−3は、PE演算器14−3の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-3 the SIMD operator 1-3, when receiving the operation result of the PE calculator 14-3, and outputs the operation result to the output bus 4.

ここでは、SIMDプログラムA−1内の命令データを読み出してから、SIMDプログラムA−2内の命令データを読み出し、その後、SIMDプログラムA−3内の命令データを読み出すものについて示したが、SIMDプログラムA−1〜A−3の読出順は一例に過ぎず、例えば、SIMDプログラムA−2内の命令データを読み出してから、SIMDプログラムA−3内の命令データを読み出し、その後、SIMDプログラムA−1内の命令データを読み出すようにしてもよいし、SIMDプログラムA−3内の命令データを読み出してから、SIMDプログラムA−1内の命令データを読み出し、その後、SIMDプログラムA−2内の命令データを読み出すようにしてもよい。 Here, after reading the instruction data in the SIMD program A-1, read the instruction data in the SIMD program A-2, then, as mentioned above. Reads the instruction data in the SIMD program A-3, SIMD program reading order of a-1 to a-3 is only an example, for example, after reading the instruction data in the SIMD program a-2, reads an instruction data in the SIMD program a-3, then, SIMD program A- it may read the instruction data in 1, after reading the instruction data in the SIMD program a-3, the read instruction data in SIMD program a-1, then the instruction in the SIMD program a-2 data may be read.

また、全く同様な構成において、命令デコード部13−1〜13−3の命令デコーダ41が、命令データから分岐命令を判別し、分岐命令の場合には、分岐先を示す分岐指示信号を命令フェッチ制御部12−1〜12−3に出力する手段を備えるようにしてもよい。 Furthermore, in exactly the same configuration, the instruction decoder 41 of the instruction decoding unit 13-1 to 13-3 is, to determine the branch instruction from the instruction data, when the branch instruction, the instruction fetch branch instruction signal indicating a branch destination it may be provided with a means for outputting to the control unit 12-1 to 12-3.
命令デコード部13−1の命令デコーダ41は、命令データから分岐命令を判別して、最初の分岐命令が見つかるまでは、上記と同様に、全体連結制御部2から出力されたデコーダ選択信号に従って分岐指示信号を出力する。 Instruction decoder 41 of the instruction decoding unit 13-1, to determine the branch instruction from the instruction data until it finds the first branch instruction, in the same manner as described above, the branch in accordance with the decoder selection signal outputted from the overall connection control unit 2 and it outputs an instruction signal.
その後、分岐命令が見つかると、その分岐命令が示す分岐先が命令メモリ11−1の範囲内を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得する旨を示す分岐指示信号を命令フェッチ制御部12−1に出力し、その分岐命令が示す分岐先が命令メモリ11−1の範囲以外を示していれば、命令メモリ11−1からSIMDプログラムA−1を取得しない旨を示す分岐指示信号を命令フェッチ制御部12−1に出力する処理を実施する。 Thereafter, the branch when the instruction is found, if it branch destination indicated by the branch instruction indicates the range of the instruction memory 11-1, the branch indicating signal indicating that acquires SIMD program A-1 from the instruction memory 11-1 the output to the instruction fetch control unit 12-1, if indicates outside the range branch destination of the instruction memory 11-1 indicated by the branch instruction, to the effect that the instruction memory 11-1 not get SIMD program a-1 and it carries out a process of outputting a branch instruction signal indicating the instruction fetch control unit 12-1. 命令デコーダ部13−2と命令デコーダ13−3についても同様の処理を実施する。 Implementing the same processing for the instruction decoder unit 13-2 and the instruction decoder 13-3.
その他の部分は、全く同様な構成でよい。 Other parts may be exactly the same configuration.
命令デコーダ部13−1〜13−3の命令デコーダ41が、命令データから分岐命令を判別して、分岐命令の場合には、その分岐先を示す分岐指示信号を命令フェッチ制御部12−1〜12−3に出力する手段を備えることにより、全体連結制御部2に格納する全体結合制御プログラムはSIMDの連結構成のみを記述し、SIMDプログラムA−1〜A−3の読出順を記述する必要がなくなるため、全体結合制御プログラムの簡潔化を図ることができるとともに、SIMDプログラムA−1〜A−3の自由度を高めることができる。 Instruction decoder 41 of the instruction decoder unit 13-1 to 13-3 is, to determine the branch instruction from the instruction data, when the branch instruction, the instruction fetch control unit 12-1 branches an instruction signal indicating the branch destination by providing a means for outputting to 12-3, the total binding control program stored in the entire connection control unit 2 describes only connection structure of SIMD, necessary to describe the read order of the SIMD program a-1 to a-3 since there is no, it is possible to achieve simplification of the total binding control program, it is possible to increase the freedom of SIMD program a-1~A-3.

次に、3個のSIMD演算器1−1〜1−3を分離して、SIMD演算器1−1〜1−3内のPE演算器14が、それぞれ独立して演算処理を実行する(同一のSIMD演算器1内のPE演算器14は、並列に演算処理を実行する)場合の処理内容を説明する。 Next, to separate the three SIMD operator 1-1 to 1-3, PE calculator 14 in the SIMD operator 1-1 to 1-3 are each independently executes calculation processing (the same PE calculator 14 of the SIMD computation unit 1 of the performs arithmetic processing in parallel) processing contents in this case will be described.
図6は3個のSIMD演算器1−1〜1−3を分離して、SIMD演算器1−1〜1−3がSIMDプログラムA,B,C内の命令データを読み出し、その命令データに対応するPE制御信号をPE演算器14−1〜14−3に発行している様子を示す説明図である。 6 separates the three SIMD operator 1-1 to 1-3, the SIMD computation unit 1-1 to 1-3 are SIMD program A, B, reads the instruction data in C, and the instruction data the corresponding PE control signal is an explanatory view illustrating the state that issued PE calculator 14-1 to 14-3.

ここまでは、SIMD演算器1−1〜1−3の命令メモリ11−1〜11−3には、SIMDプログラムA−1,A−2,A−3が格納されているものとして説明したが、SIMD演算器1−1の命令メモリ11−1には、SIMDプログラムA−1の他にSIMDプログラムAが格納され、SIMD演算器1−2の命令メモリ11−2には、SIMDプログラムA−2の他にSIMDプログラムBが格納され、SIMD演算器1−3の命令メモリ11−3には、SIMDプログラムA−3の他にSIMDプログラムCが格納されているものとする。 So far, the instruction memory 11-1 to 11-3 of the SIMD operator 1-1 to 1-3, it has been described that the SIMD program A-1, A-2, A-3 is stored , the instruction memory 11-1 of the SIMD computation unit 1-1, stored SIMD program a to another SIMD program a-1, the instruction memory 11-2 of the SIMD computation unit 1-2, SIMD program A- SIMD program B is stored in the other 2, the instruction memory 11-3 SIMD operator 1-3, it is assumed that the SIMD program C are stored in the other SIMD program a-3.

まず、全体連結制御部2は、SIMD演算器1−1とSIMD演算器1−2とSIMD演算器1−3間の分離を指示するSIMD結合制御信号を演算器連結部3−1,3−2に出力する。 First, the overall connection control unit 2, SIMD coupling control signal calculator connection unit for instructing the separation between the SIMD computation unit 1-1 and the SIMD computation unit 1-2 and the SIMD computation unit 1-3 3-1,3- and outputs it to the 2.
即ち、全体連結制御部2のシーケンサ22は、結合制御命令メモリ21により格納されている全体結合制御プログラム内の命令を読み出し、その命令がSIMD演算器1−1〜1−3間の分離を指示する命令であれば、SIMD演算器1−1〜1−3間の分離を指示するSIMD結合制御信号の生成をSIMD連結制御部23に指示する。 That is, the sequencer 22 of the overall connection control unit 2, coupling control instruction reading instructions in the total binding control program stored by the memory 21, instructs the separation between the instruction SIMD operator 1-1 to 1-3 if an instruction to an instruction to generate the SIMD binding control signal for instructing the separation between the SIMD computation unit 1-1 to 1-3 to the SIMD connection control unit 23.
全体連結制御部2のSIMD連結制御部23は、シーケンサ22の指示の下、SIMD演算器1−1〜1−3間の分離を指示するSIMD結合制御信号を生成し、そのSIMD結合制御信号を演算器連結部3−1,3−2に出力する。 SIMD connection control unit 23 of the overall connection control unit 2, under the direction of the sequencer 22, generates a SIMD binding control signal for instructing the separation between SIMD operator 1-1 to 1-3, the SIMD coupling control signals and outputs to the computing unit connecting part 3-1 and 3-2.

演算器連結部3−1は、全体連結制御部2からSIMD演算器1−1とSIMD演算器1−2間の分離を指示するSIMD結合制御信号を受けると、SIMD演算器1−1とSIMD演算器1−2間を分離する。 Calculator connecting unit 3-1 receives the SIMD binding control signal for instructing the separation between the SIMD computation unit 1-1 and the SIMD computation unit 1-2 from the overall connection control unit 2, the SIMD computation unit 1-1 and the SIMD to separate the calculator 1-2.
演算器連結部3−2は、全体連結制御部2からSIMD演算器1−2とSIMD演算器1−3間の分離を指示するSIMD結合制御信号を受けると、SIMD演算器1−2とSIMD演算器1−3間を分離する。 Calculator connecting unit 3-2 receives the SIMD binding control signal for instructing the separation between the SIMD computation unit 1-2 and the SIMD computation unit 1-3 from the overall connection control unit 2, and the SIMD operator 1-2 SIMD to separate the calculator 1-3.
これにより、3個のSIMD演算器1−1〜1−3が分離されるため、それぞれのSIMD演算器1が3個のPE演算器14を用いるSIMDが構成される。 Thus, since the three SIMD operator 1-1 to 1-3 are separated, SIMD is constructed each SIMD operator 1 uses three PE calculator 14.

次に、全体連結制御部2は、SIMDプログラムA内の命令データをSIMD演算器1−1に与えるため、選択対象の命令メモリがSIMD演算器1−1内の命令メモリ11−1である旨を示すデコーダ選択信号(デコーダ選択信号には、読出対象のSIMDプログラムが、SIMDプログラムA−1ではなく、SIMDプログラムAである旨を示す命令を含むものとする)をSIMD演算器1−1の命令デコード部13−1に出力する。 Next, the overall connection control unit 2 for providing instruction data in the SIMD program A in SIMD operator 1-1, indicating that the instruction memory to be selected is an instruction memory 11-1 in the SIMD operator 1-1 a decoder selection signal indicating (in the decoder selection signal, the read target SIMD program, the SIMD program a-1 without, SIMD program shall include instructions indicating the in a) instruction decode SIMD operator 1-1 and outputs it to the section 13-1.
また、全体連結制御部2は、SIMDプログラムB内の命令データをSIMD演算器1−2に与えるため、選択対象の命令メモリがSIMD演算器1−2内の命令メモリ11−2である旨を示すデコーダ選択信号(デコーダ選択信号には、読出対象のSIMDプログラムが、SIMDプログラムA−2ではなく、SIMDプログラムBである旨を示す命令を含むものとする)をSIMD演算器1−2の命令デコード部13−2に出力する。 Moreover, the overall connection control unit 2 for providing instruction data in the SIMD program B to the SIMD operator 1-2, the effect instruction memory to be selected is an instruction memory 11-2 in the SIMD operator 1-2 decoder selection signal indicating (in the decoder selection signal, the read target SIMD program, the SIMD program a-2 without, SIMD program shall include instructions indicating that the B) an instruction decoding unit of the SIMD operator 1-2 and outputs it to 13-2.
さらに、全体連結制御部2は、SIMDプログラムC内の命令データをSIMD演算器1−3に与えるため、選択対象の命令メモリがSIMD演算器1−3内の命令メモリ11−3である旨を示すデコーダ選択信号(デコーダ選択信号には、読出対象のSIMDプログラムが、SIMDプログラムA−3ではなく、SIMDプログラムCである旨を示す命令を含むものとする)をSIMD演算器1−3の命令デコード部13−3に出力する。 Additionally, the overall connection control unit 2 for providing instruction data in the SIMD program C in SIMD operator 1-3, the effect instruction memory to be selected is an instruction memory 11-3 in the SIMD operator 1-3 decoder selection signal indicating (in the decoder selection signal, the read target SIMD program, SIMD the program a-3 without, SIMD program shall include a is an instruction indicating that C) the instruction decode unit of the SIMD operator 1-3 and outputs it to 13-3.

命令デコード部13−1の命令デコーダ41は、全体連結制御部2から命令メモリ11−1を選択する旨を示すデコーダ選択信号を受けると、そのデコーダ選択信号にしたがって命令メモリ11−1からSIMDプログラムAを取得する旨を示す分岐指示信号を命令フェッチ制御部12−1に出力する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the decoder select signal indicating to select the instruction memory 11-1 from the overall connection control unit 2, SIMD program from the instruction memory 11-1 in accordance with the decoder select signal and it outputs a branch instruction signal instructing to retrieve the a to the instruction fetch control unit 12-1.
また、命令デコード部13−2の命令デコーダ41は、全体連結制御部2から命令メモリ11−2を選択する旨を示すデコーダ選択信号を受けると、そのデコーダ選択信号にしたがって命令メモリ11−2からSIMDプログラムBを取得する旨を示す分岐指示信号を命令フェッチ制御部12−2に出力する。 The instruction decoder 41 of the instruction decoding unit 13-2 receives the decoder select signal indicating to select the instruction memory 11-2 from the overall connection control unit 2, from the instruction memory 11-2 in accordance with the decoder select signal and it outputs a branch instruction signal instructing to retrieve the SIMD program B to the instruction fetch control unit 12-2.
また、命令デコード部13−3の命令デコーダ41は、全体連結制御部2から命令メモリ11−3を選択する旨を示すデコーダ選択信号を受けると、そのデコーダ選択信号にしたがって命令メモリ11−3からSIMDプログラムCを取得する旨を示す分岐指示信号を命令フェッチ制御部12−3に出力する。 The instruction decoder 41 of the instruction decoding unit 13-3 receives the decoder select signal indicating to select the instruction memory 11-3 from the overall connection control unit 2, from the instruction memory 11-3 in accordance with the decoder select signal and it outputs a branch instruction signal instructing to retrieve the SIMD program C to the instruction fetch control unit 12-3.

命令フェッチ制御部12−1は、命令デコード部13−1から、命令メモリ11−1からSIMDプログラムAを取得する旨を示す分岐指示信号を受けると、命令メモリ11−1からSIMDプログラムA内の命令データを取得して、その命令データを命令デコード部13−1に出力する。 Instruction fetch control unit 12-1, the instruction decoding unit 13-1 receives the branch instruction signal instructing to retrieve the SIMD program A from the instruction memory 11-1, from the instruction memory 11-1 in the SIMD program A It acquires instruction data, and outputs the instruction data to the instruction decoding unit 13-1.
即ち、命令フェッチ制御部12−1のメモリアクセス制御部31は、命令メモリ11−1からSIMDプログラムAを取得する旨を示す分岐指示信号を受けると、その分岐指示信号にしたがって内部のプログラムカウンタを制御することで、命令メモリ11−1により格納されているSIMDプログラムA内の命令データを順番に読み出し、その命令データが命令メモリ11−1から命令セレクタ33に与えられるように制御する。 That is, the memory access control unit 31 of the instruction fetch control unit 12-1 receives the branch instruction signal instructing to retrieve the SIMD program A from the instruction memory 11-1, the internal program counter in accordance with the branching command signal by controlling the read instruction data in SIMD program a stored by the instruction memory 11-1 in the order, the instruction data is controlled to be provided to the instruction selector 33 from the instruction memory 11-1.

命令フェッチ制御部12−1のセレクタ判定部32は、命令メモリ11−1からSIMDプログラムAを取得する旨を示す分岐指示信号を受けると、命令メモリ11−1から読み出されたSIMDプログラムA内の命令データを選択して、その命令データを命令デコード部13−1に出力する指令を命令セレクタ33に出力する。 Selector checking unit of the instruction fetch control unit 12-1 32 receives the branch instruction signal instructing to retrieve the SIMD program A from the instruction memory 11-1, SIMD program in A read from the instruction memory 11-1 select the instruction data, and outputs a command to output the instruction data to the instruction decode unit 13-1 to the instruction selector 33.
命令フェッチ制御部12−1の命令セレクタ33は、メモリアクセス制御部31の制御の下、命令メモリ11−1からSIMDプログラムA内の命令データを受けると、セレクタ判定部32から出力された指令にしたがって、そのSIMDプログラムA内の命令データを選択して、その命令データを命令デコード部13−1に出力する。 Instruction selector 33 of the instruction fetch control unit 12-1 under the control of the memory access control unit 31 receives the instruction data in the SIMD program A from the instruction memory 11-1, a command output from the selector checking unit 32 Thus, by selecting the instruction data in the SIMD program a, and it outputs the instruction data to the instruction decoding unit 13-1.

命令フェッチ制御部12−2は、命令デコード部13−2から、命令メモリ11−2からSIMDプログラムBを取得する旨を示す分岐指示信号を受けると、命令メモリ11−2からSIMDプログラムB内の命令データを取得して、その命令データを命令デコード部13−2に出力する。 Instruction fetch control unit 12-2, the instruction decoding unit 13-2 receives the branch instruction signal instructing to retrieve the SIMD program B from the instruction memory 11-2, from the instruction memory 11-2 in the SIMD program B It acquires instruction data, and outputs the instruction data to the instruction decoding unit 13-2.
命令フェッチ制御部12−3は、命令デコード部13−3から、命令メモリ11−3からSIMDプログラムCを取得する旨を示す分岐指示信号を受けると、命令メモリ11−3からSIMDプログラムC内の命令データを取得して、その命令データを命令デコード部13−3に出力する。 Instruction fetch control unit 12-3, the instruction decoding unit 13-3 receives the branch instruction signal instructing to retrieve the SIMD program C from the instruction memory 11-3, from the instruction memory 11-3 in the SIMD program C It acquires instruction data, and outputs the instruction data to the instruction decoding unit 13-3.
この場合の命令フェッチ制御部12−2,12−3の内部の動作は、命令フェッチ制御部12−1の内部の動作と同様であるため説明を省略する。 Internal operation of the instruction fetch control unit 12-2 and 12-3 in this case is omitted because it is similar to the internal operation of the instruction fetch control unit 12-1.

命令デコード部13−1のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−1を選択する旨を示しているため、命令フェッチ制御部12−1から出力されたSIMDプログラムA内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-1, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-1, which is outputted from the instruction fetch control unit 12-1 select instruction data in SIMD program a, and outputs the instruction data to the instruction decoder 41.
命令デコード部13−1の命令デコーダ41は、セレクタ42からSIMDプログラムA内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−1に発行する。 Instruction decoder 41 of the instruction decoding unit 13-1 receives the instruction data in the SIMD program A from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal 14- issued to 1.
これにより、SIMD演算器1−1内のPE演算器14−1には、同一のPE制御信号が発行されたことになる。 Thus, the PE calculator 14-1 in the SIMD operator 1-1, so that the same PE control signal is issued.

命令デコード部13−2のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−2を選択する旨を示しているため、命令フェッチ制御部12−2から出力されたSIMDプログラムB内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-2, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-2, which is outputted from the instruction fetch control unit 12-2 select command data SIMD program in B, and outputs the instruction data to the instruction decoder 41.
命令デコード部13−2の命令デコーダ41は、セレクタ42からSIMDプログラムB内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−2に発行する。 Instruction decoder 41 of the instruction decoding unit 13-2 receives the instruction data in the SIMD program B from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal 14- It is issued to the 2.
これにより、SIMD演算器1−2内のPE演算器14−2には、同一のPE制御信号が発行されたことになる。 Thus, the PE calculator 14-2 in the SIMD operator 1-2 would same PE control signal is issued.

命令デコード部13−3のセレクタ42は、全体連結制御部2から出力されたデコーダ選択信号が命令メモリ11−3を選択する旨を示しているため、命令フェッチ制御部12−3から出力されたSIMDプログラムC内の命令データを選択して、その命令データを命令デコーダ41に出力する。 The selector 42 of the instruction decoding unit 13-3, because it shows the effect that the decoder selection signal outputted from the overall connection control unit 2 selects the instruction memory 11-3, which is outputted from the instruction fetch control unit 12-3 select instruction data in SIMD program C, and outputs the instruction data to the instruction decoder 41.
命令デコード部13−3の命令デコーダ41は、セレクタ42からSIMDプログラムC内の命令データを受けると、その命令データをPE制御信号に変換し、そのPE制御信号を4個のPE演算器14−3に発行する。 Instruction decoder 41 of the instruction decoding unit 13-3 receives the instruction data in the SIMD program C from the selector 42, converts the command data to the PE control signals, four PE arithmetic unit the PE control signal 14- It is issued to the 3.
これにより、SIMD演算器1−3内のPE演算器14−3には、同一のPE制御信号が発行されたことになる。 Thus, the PE calculator 14-3 in the SIMD operator 1-3, so that the same PE control signal is issued.

SIMD演算器1−1のバスI/F16−1は、入出力バス4から演算対象のデータを入力すると、PEバス15−1を介して、そのデータを4個のPE演算器14−1に出力する。 Bus I / F16-1 the SIMD operator 1-1, the data input operands from output bus 4, via the PE bus 15-1, the data to four PE arithmetic unit 14-1 Output.
SIMD演算器1−2のバスI/F16−2は、入出力バス4から演算対象のデータを入力すると、PEバス15−2を介して、そのデータを4個のPE演算器14−2に出力する。 Bus I / F16-2 the SIMD operator 1-2, the data input operands from output bus 4, via the PE bus 15-2, the data to four PE arithmetic unit 14-2 Output.
SIMD演算器1−3のバスI/F16−3は、入出力バス4から演算対象のデータを入力すると、PEバス15−3を介して、そのデータを4個のPE演算器14−3に出力する。 Bus I / F16-3 the SIMD operator 1-3, the data input operands from output bus 4, via the PE bus 15-3, the data to four PE arithmetic unit 14-3 Output.

SIMD演算器1−1のPE演算器14−1は、命令デコード部13−1から発行されたPE制御信号を実行することで、バスI/F16−1から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−1を介して、その演算結果をバスI/F16−1に出力する。 PE calculator 14-1 SIMD operator 1-1, by executing the PE control signal issued from the instruction decoding unit 13-1 to the data operand output from the bus I / F16-1 performs predetermined calculation processing Te, via the PE bus 15-1, and outputs the operation result to the bus I / F16-1.
SIMD演算器1−2のPE演算器14−2は、命令デコード部13−2から発行されたPE制御信号を実行することで、バスI/F16−2から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−2を介して、その演算結果をバスI/F16−2に出力する。 PE calculator 14-2 of the SIMD computation unit 1-2, by executing the issued PE control signal from the instruction decoding unit 13-2 for the data operand output from the bus I / F16-2 performs predetermined calculation processing Te, via the PE bus 15-2, and outputs the operation result to the bus I / F16-2.
SIMD演算器1−3のPE演算器14−3は、命令デコード部13−3から発行されたPE制御信号を実行することで、バスI/F16−3から出力された演算対象のデータに対して所定の演算処理を行い、PEバス15−3を介して、その演算結果をバスI/F16−3に出力する。 PE calculator of the SIMD computation unit 1-3 14-3 by executing the PE control signal issued from the instruction decoding unit 13-3 for the data operand output from the bus I / F16-3 performs predetermined calculation processing Te, via the PE bus 15-3, and outputs the operation result to the bus I / F16-3.

SIMD演算器1−1のバスI/F16−1は、PE演算器14−1の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-1 the SIMD operator 1-1 receives the operation result of the PE calculator 14-1, and outputs the operation result to the output bus 4.
SIMD演算器1−2のバスI/F16−2は、PE演算器14−2の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-2 the SIMD operator 1-2 receives the operation result of the PE calculator 14-2, and outputs the operation result to the output bus 4.
SIMD演算器1−3のバスI/F16−3は、PE演算器14−3の演算結果を受けると、その演算結果を入出力バス4に出力する。 Bus I / F16-3 the SIMD operator 1-3, when receiving the operation result of the PE calculator 14-3, and outputs the operation result to the output bus 4.

以上で明らかなように、この実施の形態1によれば、単一の命令を実行して、所定の演算処理を行う複数のPE演算器14を実装しているSIMD演算器1−1〜1−3が、SIMDプログラムを格納している命令メモリ11−1〜11−3と、全体連結制御部2から出力されたデコーダ選択信号が示す命令メモリが自己の命令メモリ11であれば、自己の命令メモリ11に格納されているSIMDプログラムを取得して、そのSIMDプログラムを他のSIMD演算器1に与え、そのデコーダ選択信号が示す命令メモリが自己の命令メモリ11でなければ、他のSIMD演算器1からSIMDプログラムを取得する命令フェッチ制御部12−1〜12−3と、自己の命令フェッチ制御部12により取得されたSIMDプログラム内の命令又 As can be seen from the above description, according to the first embodiment, by executing a single instruction, SIMD calculator implements a plurality of PE operation unit 14 for performing predetermined arithmetic processing 1-1-1 -3, an instruction memory 11-1 to 11-3 which stores the SIMD program, if the instruction memory 11 the instruction memory is self-indicated decoder selection signal outputted from the overall connection control unit 2, of the self acquires the SIMD program stored in the instruction memory 11, give the SIMD program to other SIMD operator 1, unless the instruction memory 11 the instruction memory is self indicated by the decoder selection signal, another SIMD operations an instruction fetch control unit 12-1 to 12-3 to obtain the SIMD program from vessel 1, the instruction in the SIMD program acquired by self-instruction fetch control unit 12 also 右隣の命令フェッチ制御部12により取得されたSIMDプログラム内の命令を複数のPE演算器14に発行する命令デコード部13−1〜13−3とを備えるように構成したので、演算効率を高めるために、同時に処理するPE演算器14の台数を増加させる場合でも、各SIMD演算器1における命令メモリ11に対して、異なるSIMDプログラムを格納できるようになり、その結果、命令メモリ11の利用効率の低下を防止することができる効果を奏する。 Since it is configured to include an instruction decoding unit 13-1 to 13-3 for issuing instructions in SIMD program acquired by the right of the instruction fetch control unit 12 to a plurality of PE calculation device 14, increasing the operational efficiency for, even when increasing the number of PE calculator 14 simultaneously processed, the instruction memory 11 in each of the SIMD computation unit 1, will be able to store different SIMD program, as a result, the utilization efficiency of the instruction memory 11 an effect that it is possible to prevent a decrease of.

即ち、SIMD演算器1−1〜1−3間を連結する場合でも、SIMD演算器1−1〜1−3の命令メモリ11−1〜11−3には、SIMDプログラム内の相互に異なる部分(SIMDプログラムA−1,A−2,A−3)を格納することができるため(従来例では、図7に示すように、命令メモリ11−1〜11−3には、同一のSIMDプログラムDを格納する必要がある)、命令メモリ11の利応効率を高めることができる。 That is, even when connecting the SIMD operator 1-1 to 1-3, the instruction memory 11-1 to 11-3 of the SIMD operator 1-1 to 1-3, parts different from each other in the SIMD program it is possible to store (SIMD program a-1, a-2, a-3) (in the conventional example, as shown in FIG. 7, the instruction memory 11-1 to 11-3, the same SIMD program it is necessary to store D), it is possible to increase the interest 応効 rate of the instruction memory 11. したがって、命令メモリ11のメモリ容量を増やすことなく、より大きなプログラムを実行することが可能になる。 Accordingly, without increasing the memory capacity of the instruction memory 11, it is possible to perform a larger program.

また、この実施の形態1によれば、全体連結制御部2が実行する全体結合制御プログラムによって、PE演算器14の並列度を定義することが可能であるため、対象とする信号処理の内容に応じて、最適な並列度処理を実現することができる。 Further, according to this embodiment 1, the entire combination control program overall connection control unit 2 is executed, it is possible to define the parallelism of the PE operation unit 14, the content of the signal processing of interest Correspondingly, it is possible to achieve an optimum degree of parallelism processing.
なお、実施の形態1において、PE演算器14の演算ビット幅や演算種類に制約を与えるものではない。 In the first embodiment, it does not provide a constraint on the operation bit width and computation type of PE calculator 14.

1−1〜1−3 SIMD演算器、2 全体連結制御部、3−1,3−2 演算器連結部、4 入出力バス、11−1〜11−3 命令メモリ、12−1〜12−3 命令フェッチ制御部(命令発行手段)、13−1〜13−3 命令デコード部(命令発行手段)、14−1〜14−3 PE演算器(プロセッサエレメント)、15−1〜15−3 PEバス、16−1〜16−3 バスI/F、21 結合制御命令メモリ、22 シーケンサ、23 SIMD連結制御部、24 デコーダ選択制御部、31 メモリアクセス制御部、32 セレクタ判定部、33 命令セレクタ、41 命令デコーダ、42 セレクタ。 1-1 through 1-3 SIMD calculator, 2 overall connection control unit, 3-1, 3-2 calculator connecting portion 4 output bus, 11-1 to 11-3 instruction memory, 12-1~12- 3 instruction fetch control unit (command issuing means) 13-1 to 13-3 instruction decoding unit (instruction issuing means) 14-1 to 14-3 PE calculator (processor element), 15-1 to 15-3 PE bus, 16-1 to 16-3 the bus I / F, 21 coupling control instruction memory, 22 a sequencer, 23 SIMD connection control unit, 24 a decoder selection control unit, 31 memory access control unit, 32 selector checking unit, 33 command selector, 41 instruction decoder, 42 a selector.

Claims (2)

  1. 単一の命令を実行して、所定の演算処理を行う複数のプロセッサエレメントを実装している複数のSIMD演算器と、上記複数のSIMD演算器間の結合又は分離を指示する連結制御信号を出力する全体連結制御部と、上記全体連結制御部から出力された連結制御信号が結合を指示していれば、上記複数のSIMD演算器を結合し、上記連結制御信号が分離を指示していれば、上記複数のSIMD演算器を分離する演算器連結部とを備えた並列信号処理プロセッサにおいて、 Run a single instruction, and a plurality of SIMD operator that implements a plurality of processor elements for performing predetermined arithmetic processing, a connection control signal for instructing the binding or separation between the plurality of SIMD operator output the overall connection control unit which, if the instruction to the connection control signal outputted from the overall connection control unit is attached, combine the plurality of SIMD operator, if the connection control signal instructs the separation , in the parallel signal processing processor with a computing unit connecting unit for separating the plurality of SIMD operator,
    上記複数のSIMD演算器は、プログラムを格納している命令メモリと、上記全体連結制御部から選択対象の命令メモリを示す選択信号を受けると、上記選択信号が示す命令メモリが自己の命令メモリであれば、上記命令メモリに格納されているプログラムを取得して、上記プログラムを他のSIMD演算器に与え、上記選択信号が示す命令メモリが自己の命令メモリでなければ、他のSIMD演算器からプログラムを取得し、その取得したプログラム内の命令を上記複数のプロセッサエレメントに発行するとともに、上記単一の命令が分岐命令である場合、上記分岐命令が示す先が上記自己の命令メモリの範囲内であれば、上記命令メモリに格納されている上記プログラムを取得して、上記プログラムを他のSIMD演算器に与え、上記分 The plurality of SIMD arithmetic unit, an instruction memory storing a program, when receiving a selection signal indicating the selection of the instruction memory from the overall connection control unit, instruction memory which the selection signal is indicated by its own instruction memory if, acquires the program stored in the instruction memory, given the program to other SIMD operator, if an instruction memory instruction memory is self said selection signal indicates, from another SIMD operator get the program, the instructions in the acquired programs as well as issued to the plurality of processor elements, when the single instruction is a branch instruction, in the range above which the branch instruction is indicated in the instruction memory of the self if, to obtain the program stored in the instruction memory, given the program to other SIMD operator, the amount 命令が示す先が上記自己の命令メモリの範囲内でなければ、他のSIMD演算器から上記プログラムを取得して、その取得した上記プログラム内の上記命令を上記複数のプロセッサエレメントに発行する命令発行手段とを備えていることを特徴とする並列信号処理プロセッサ。 If previously indicated instruction is not within the scope of the instruction memory of the self, the instruction issued by obtaining the program from other SIMD operator issues the instruction in the program that acquired the plurality of processor elements parallel signal processor characterized by comprising a means.
  2. 複数のSIMD演算器の命令メモリに格納されているプログラムはSIMDプログラムの一部であって、各命令メモリにはSIMDプログラム内の相互に異なる部分が格納されていることを特徴とする請求項1記載の並列信号処理プロセッサ。 Claims program stored in the instruction memory of the plurality of SIMD computation unit be part of the SIMD program, each instruction memory, characterized in that mutually different portions in the SIMD program is stored 1 parallel signal processing processor according.
JP2010004055A 2010-01-12 2010-01-12 Parallel signal processor Active JP5511400B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010004055A JP5511400B2 (en) 2010-01-12 2010-01-12 Parallel signal processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010004055A JP5511400B2 (en) 2010-01-12 2010-01-12 Parallel signal processor

Publications (2)

Publication Number Publication Date
JP2011145759A true JP2011145759A (en) 2011-07-28
JP5511400B2 true JP5511400B2 (en) 2014-06-04

Family

ID=44460581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010004055A Active JP5511400B2 (en) 2010-01-12 2010-01-12 Parallel signal processor

Country Status (1)

Country Link
JP (1) JP5511400B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520283A (en) * 1991-07-11 1993-01-29 Mitsubishi Electric Corp Parallel data processor
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
JPH0668053A (en) * 1992-08-20 1994-03-11 Toshiba Corp Parallel computer
US6401190B1 (en) * 1995-03-17 2002-06-04 Hitachi, Ltd. Parallel computing units having special registers storing large bit widths
JP4697055B2 (en) * 2006-05-31 2011-06-08 富士ゼロックス株式会社 Computing device, an image processing apparatus and data processing apparatus
JP2007328461A (en) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd Asymmetric multiprocessor

Also Published As

Publication number Publication date Type
JP2011145759A (en) 2011-07-28 application

Similar Documents

Publication Publication Date Title
US7035998B1 (en) Clustering stream and/or instruction queues for multi-streaming processors
US5537562A (en) Data processing system and method thereof
US6944748B2 (en) Signal processor executing variable size instructions using parallel memory banks that do not include any no-operation type codes, and corresponding method
US4920480A (en) Digital signal processor
US6163836A (en) Processor with programmable addressing modes
US6711602B1 (en) Data processor with flexible multiply unit
US5778241A (en) Space vector data path
US6762764B2 (en) System and method for processing image, and compiler for use in this system
Haynes et al. Video image processing with the Sonic architecture
US20020116434A1 (en) Apparatus and method for performing multiplication operations
US5287532A (en) Processor elements having multi-byte structure shift register for shifting data either byte wise or bit wise with single-bit output formed at bit positions thereof spaced by one byte
US6049859A (en) Image-processing processor
US7159099B2 (en) Streaming vector processor with reconfigurable interconnection switch
US7305649B2 (en) Automatic generation of a streaming processor circuit
US6094726A (en) Digital signal processor using a reconfigurable array of macrocells
US20040062308A1 (en) System and method for accelerating video data processing
US7139898B1 (en) Fetch and dispatch disassociation apparatus for multistreaming processors
US6049860A (en) Pipelined floating point stores
US20030097389A1 (en) Methods and apparatus for performing pixel average operations
US20080072011A1 (en) SIMD type microprocessor
US6026486A (en) General purpose processor having a variable bitwidth
US8024394B2 (en) Dual mode floating point multiply accumulate unit
US7013321B2 (en) Methods and apparatus for performing parallel integer multiply accumulate operations
WO1997038372A1 (en) A data processing management system
US20070130444A1 (en) Integrated processor array, instruction sequencer and I/O controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140325

R150 Certificate of patent or registration of utility model

Ref document number: 5511400

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250