JPH04217026A - Parallel processor - Google Patents

Parallel processor

Info

Publication number
JPH04217026A
JPH04217026A JP40322990A JP40322990A JPH04217026A JP H04217026 A JPH04217026 A JP H04217026A JP 40322990 A JP40322990 A JP 40322990A JP 40322990 A JP40322990 A JP 40322990A JP H04217026 A JPH04217026 A JP H04217026A
Authority
JP
Japan
Prior art keywords
parallel
instruction
bus
register
decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP40322990A
Other languages
Japanese (ja)
Inventor
Yutaka Iizuka
裕 飯塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP40322990A priority Critical patent/JPH04217026A/en
Publication of JPH04217026A publication Critical patent/JPH04217026A/en
Priority to US08/097,325 priority patent/US5299321A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To make a whole unit smaller in size and more compacter in constitution and reduce the number of peripheral circuits by using a bus having a small bit number. CONSTITUTION:This parallel processors are provided with plural arithmetic pipelines arranged in parallel, a decoder which outputs process instructions to each arithmetic pipeline after decoding, and general register which is provided with register sections in which process instructions outputted to each decoder are written and the arithmetic pipelines are simultaneously executed by successively writing the process instructions in each register section of the general register, simultaneously designating the register sections in which process instructions are written by means of a parallel instructing means, and then, simultaneously outputting the process instructions to each decoder. Therefore, simultaneous concentration of a large amount of information to one bus can be eliminated at the parallel processing time and the need of using a bus having a large bit number is reduced.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は、情報処理の高速化を図
るため、複数の情報を並列に処理する電子計算機等の並
列処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel processing apparatus such as an electronic computer that processes a plurality of pieces of information in parallel in order to speed up information processing.

【0002】0002

【従来の技術】従来から電子計算機等の情報処理装置を
高速化するために、数々の手法が考えられ、1つの命令
を実行するのに数クロックかかっていたものがほぼ1ク
ロックで実行できるようになってきた。すなわちCPI
(サイクル・パー・インストラクション)値が2〜5で
あったものが1に近づいてきた。
[Background Art] Many techniques have been devised to speed up information processing devices such as electronic computers, and one instruction that used to take several clocks to execute can now be executed in almost one clock. It has become. That is, CPI
(Cycle per instruction) The value used to be 2 to 5, but now it is approaching 1.

【0003】そして、情報処理装置をさらに高速化する
ため、すなわちCPI値を1以下にするため、複数の命
令を同時に実行する並列処理装置が考えられた。
[0003] In order to further speed up the information processing device, that is, to reduce the CPI value to 1 or less, a parallel processing device that executes a plurality of instructions simultaneously has been devised.

【0004】この種の並列処理装置としてはVLIW(
ベリー・ラージ・インストラクション・ワード)方式(
「並列計算機構成論」、著者冨田眞治、(株)昭晃堂 
 1986年11月)が知られている。以下、「並列計
算機構成論」によるVLIW並列計算機を図2に基づい
て概説する。
[0004] As this type of parallel processing device, VLIW (
Very Large Instruction Word) method (
"Parallel Computer Configuration Theory", author Shinji Tomita, Shokodo Co., Ltd.
November 1986) is known. Below, a VLIW parallel computer based on "parallel computer configuration theory" will be outlined based on FIG. 2.

【0005】基本命令は32ビットの固定長であり、4
つの基本命令を1ワードすなわち128ビットに格納す
る。そして、実行時には1ワードを同時に読み出し、4
本の演算パイプラインにより、4つの基本命令を並列に
、かつ同時に実行する。これにより、前述のCPI値は
理想的には0.25となる。
[0005] The basic instruction has a fixed length of 32 bits, and has a fixed length of 4 bits.
One basic instruction is stored in one word, or 128 bits. Then, during execution, one word is read at the same time, and four words are read at the same time.
The main arithmetic pipeline executes four basic instructions in parallel and simultaneously. As a result, the above-mentioned CPI value is ideally 0.25.

【0006】201は32ビット幅の4本の内部バス、
202は内部バス201と32ビット幅のバス4本で結
ばれたデータユニットで、このデータユニット202は
データキャッシュを含む。203はインストラクション
ユニットで、インストラクションキャッシュを含む。2
04はバスインターフェイスで、データユニット202
との間は128ビット幅の内部データバスで結ばれ、イ
ンストラクションユニット203との間は128ビット
幅のインストラクションバスで結ばれる。バスインター
フェイス204は外部と32ビットのアドレスバス、1
28ビットのデータバス及びコントロールバスで接続さ
れる。
[0006] 201 has four internal buses with a width of 32 bits,
A data unit 202 is connected to the internal bus 201 by four 32-bit wide buses, and this data unit 202 includes a data cache. 203 is an instruction unit that includes an instruction cache. 2
04 is a bus interface, and data unit 202
A 128-bit wide internal data bus is connected to the instruction unit 203, and a 128-bit wide instruction bus is connected to the instruction unit 203. The bus interface 204 includes an external 32-bit address bus, 1
Connected by a 28-bit data bus and control bus.

【0007】205はインストラクションデコーダ、2
06はインストラクションレジスタである。インストラ
クションデコーダ205はインストラクションユニット
203から128ビット幅のインストラクションを受取
ってデコードし、マイクロ命令としてインストラクショ
ンレジスタ206に格納する。インストラクションレジ
スタ206は4命令分のマイクロ命令を保持し、このマ
イクロ命令を出力することにより、第1〜第4の演算パ
イプライン208〜211を制御する。
205 is an instruction decoder;
06 is an instruction register. Instruction decoder 205 receives a 128-bit wide instruction from instruction unit 203, decodes it, and stores it in instruction register 206 as a microinstruction. The instruction register 206 holds four instructions worth of microinstructions, and controls the first to fourth arithmetic pipelines 208 to 211 by outputting these microinstructions.

【0008】207はマルチポートレジスタで、このマ
ルチポートレジスタ207は、内部バス201と32ビ
ット幅のバス4本で結ばれて内部バス201から処理す
るデータを入力し、32ビット幅の4本のバスを介して
各演算パイプライン208〜211に出力する。各演算
パイプライン208〜211は前記マイクロ命令により
、それぞれ固定少数点演算、論理演算、浮動少数点演算
等のデータ処理を数クロックかけて行う。そして、4本
の演算パイプライン208〜211全体により実効的に
4つの演算を1クロック毎に行う。各演算パイプライン
208〜211の出力側はそれぞれ32ビット幅のバス
を介して内部バス201に接続される。
Reference numeral 207 denotes a multi-port register. This multi-port register 207 is connected to the internal bus 201 by four 32-bit wide buses, inputs data to be processed from the internal bus 201, and inputs data to be processed from the internal bus 201. It is output to each calculation pipeline 208 to 211 via a bus. Each arithmetic pipeline 208 to 211 performs data processing such as fixed point arithmetic, logical arithmetic, and floating point arithmetic over several clocks using the microinstructions. The four operation pipelines 208 to 211 effectively perform four operations every clock. The output side of each arithmetic pipeline 208-211 is connected to the internal bus 201 via a 32-bit wide bus.

【0009】次に以上の構成のVLIW並列計算機の動
作について説明する。
Next, the operation of the VLIW parallel computer with the above configuration will be explained.

【0010】インストラクションユニット203は12
8ビット幅のインストラクションをバスインターフェイ
ス204を介して外部メモリ(図示せず)から読み込む
。次に読み込んだインストラクションをインストラクシ
ョンデコーダ205でデコードし、マイクロ命令として
インストラクションレジスタ206に書き込む。インス
トラクションレジスタ206に書き込まれたマイクロ命
令は各演算パイプライン208〜211に出力され、こ
れらを制御する。各演算パイプライン208〜211は
必要に応じてマルチポートレジスタ207内のデータを
読み込み、演算処理後のデータを内部バス201を介し
てマルチポートレジスタ207に書き込む。そして、各
演算パイプライン208〜211が再びこのデータを読
み込んで複数回の演算処理を施す。また、各演算パイプ
ライン208〜211は演算処理後のデータを内部バス
201を介して一旦データユニット202に書き込み、
データユニット202がデータを内部バス201を介し
てマルチポートレジスタ207に書き込み、複数回の演
算を施す。
The instruction unit 203 has 12
An 8-bit wide instruction is read from external memory (not shown) via bus interface 204. Next, the instruction decoder 205 decodes the read instruction and writes it into the instruction register 206 as a microinstruction. The microinstruction written in the instruction register 206 is output to each operation pipeline 208 to 211 to control them. Each of the calculation pipelines 208 to 211 reads data in the multiport register 207 as necessary, and writes the data after calculation processing to the multiport register 207 via the internal bus 201. Then, each calculation pipeline 208 to 211 reads this data again and performs calculation processing multiple times. In addition, each calculation pipeline 208 to 211 once writes the data after calculation processing to the data unit 202 via the internal bus 201, and
Data unit 202 writes data to multiport register 207 via internal bus 201 and performs multiple operations.

【0011】さらに、データユニット202はバスイン
ターフェイス204を介して外部との間でデータのやり
とりを行う。命令のデコード、インストラクションレジ
スタ206からのマイクロ命令の読み出し、各演算パイ
プライン208〜211での処理はすべてパイプライン
処理されるので、1クロックあたり4命令を実行できる
ことになる。
Furthermore, the data unit 202 exchanges data with the outside via a bus interface 204. Instruction decoding, microinstruction reading from the instruction register 206, and processing in each arithmetic pipeline 208 to 211 are all pipelined, so four instructions can be executed per clock.

【0012】0012

【発明が解決しようとする課題】しかしながら、上述の
VLIW並列計算機では、4つの基本命令を1ワードと
して処理するので、通常の計算機のデータバス幅が16
ビットまたは32ビット程度であるのに対し、128ビ
ットものデータバス幅が必要となる。このため、ユニッ
ト全体をパッケージする場合、外部に延出するピン数が
増大して複雑になると共に、周辺回路の量が増えるとい
う問題点がある。
[Problems to be Solved by the Invention] However, since the above-mentioned VLIW parallel computer processes four basic instructions as one word, the data bus width of a normal computer is 16
However, a data bus width of 128 bits is required. For this reason, when the entire unit is packaged, there are problems in that the number of pins extending to the outside increases and becomes complicated, and the amount of peripheral circuits increases.

【0013】本発明は、以上の点を考慮してなされたも
ので、高速処理能力を維持したまま、通常の32ビット
幅のバスを用いてピン数を減少させ、周辺回路の簡略化
が図れる並列処理装置を提供することを目的とする。
The present invention has been made in consideration of the above points, and it is possible to simplify the peripheral circuitry by reducing the number of pins by using a normal 32-bit width bus while maintaining high-speed processing capability. The purpose is to provide a parallel processing device.

【0014】[0014]

【課題を解決するための手段】本発明はかかる問題点を
解決するためになされたもので、複数の演算を並列的に
行なうべく複数個並列に設けられた演算パイプラインと
、各演算パイプラインにそれぞれ対応して複数個設けら
れ、各演算パイプラインに処理命令をデコードして出力
するデコーダと、複数のレジスタ部を有しいずれかのレ
ジスタ部に各デコーダに出力する処理命令が書込まれる
ジェネラルレジスタとを含んで構成され、処理命令を書
込んだ前記ジェネラルレジスタの各レジスタ部を同時に
指定し、各デコーダに同時に出力して各演算パイプライ
ンを同時に実行させる並列命令手段を備えたことを特徴
とする。
[Means for Solving the Problems] The present invention has been made to solve such problems, and includes a plurality of arithmetic pipelines provided in parallel to perform a plurality of arithmetic operations in parallel, and each arithmetic pipeline It has a decoder that decodes and outputs a processing instruction to each arithmetic pipeline, and a plurality of register sections, and a processing instruction that is output to each decoder is written in one of the register sections. and a general register, and includes parallel instruction means for simultaneously specifying each register section of the general register into which a processing instruction is written, outputting the same to each decoder at the same time, and causing each arithmetic pipeline to execute at the same time. Features.

【0015】[0015]

【作用】前記構成により、ジェネラルレジスタの各レジ
スタ部に処理命令を順次書込む。そして、並列命令手段
で処理命令を書込んだ各レジスタ部を同時に指定し、処
理命令を各デコーダに同時に出力して各演算パイプライ
ンを同時に実行させる。これにより、同時に多量の情報
が1つのバスに集中するのを解消し、ビット数の大きい
バスの使用の必要性を抑える。
[Operation] With the above configuration, processing instructions are sequentially written to each register portion of the general register. Then, the parallel instruction means simultaneously specifies each register section into which a processing instruction has been written, outputs the processing instruction to each decoder simultaneously, and executes each arithmetic pipeline at the same time. This eliminates the simultaneous concentration of a large amount of information on one bus, and reduces the need to use a bus with a large number of bits.

【0016】[0016]

【実施例】以下、本発明の一実施例を図1及び図3に基
づいて説明する。
Embodiment An embodiment of the present invention will be described below with reference to FIGS. 1 and 3.

【0017】図1は本実施例の並列処理装置としての並
列計算機を示すブロック図、図3は並列エグゼキュート
命令を示す説明図である。
FIG. 1 is a block diagram showing a parallel computer as a parallel processing device of this embodiment, and FIG. 3 is an explanatory diagram showing parallel execute instructions.

【0018】図1において、101は内部バス、102
はデータキャッシュを含むデータユニット、103はイ
ンストラクションキャッシュを含むインストラクション
ユニット、104はバスインターフェイス、112〜1
15は第1〜第4の演算パイプラインで、これらは前述
した従来の並列処理装置と同様の構成を有している。
In FIG. 1, 101 is an internal bus, 102
1 is a data unit including a data cache; 103 is an instruction unit including an instruction cache; 104 is a bus interface; 112 to 1;
Reference numeral 15 denotes first to fourth arithmetic pipelines, which have the same configuration as the conventional parallel processing device described above.

【0019】内部バス101とデータユニット102と
の間は32ビット幅の内部データバスで結ばれている。 データユニット102とバスインターフェイス104間
は32ビット幅の内部データバスで結ばれている。イン
ストラクションユニット103とバスインターフェイス
104との間は32ビットのインストラクションバスで
結ばれている。バスインターフェイス104には全て3
2ビットのアドレスバス、データバス及びコントロール
バスが接続されている。インストラクションユニット1
03は内部バス101と接続されている。
Internal bus 101 and data unit 102 are connected by a 32-bit wide internal data bus. The data unit 102 and the bus interface 104 are connected by a 32-bit wide internal data bus. Instruction unit 103 and bus interface 104 are connected by a 32-bit instruction bus. The bus interface 104 has all 3
A 2-bit address bus, data bus, and control bus are connected. Instruction unit 1
03 is connected to the internal bus 101.

【0020】105は単独演算処理用のデコーダで、イ
ンストラクションユニット103からインストラクショ
ンを受取ってデコードし、マイクロ命令として出力する
。106はマルチプレクサで、単独演算処理用デコーダ
105からのマイクロ命令と、後述の並列第1デコーダ
107からのマイクロ命令とを選択的に第1の演算パイ
プライン112に出力する。
Reference numeral 105 denotes a decoder for single arithmetic processing, which receives instructions from the instruction unit 103, decodes them, and outputs them as microinstructions. A multiplexer 106 selectively outputs microinstructions from the decoder 105 for single arithmetic processing and microinstructions from a parallel first decoder 107 (to be described later) to the first arithmetic pipeline 112.

【0021】107は並列演算処理用の並列第1デコー
ダで、後述のジェネラルレジスタ111からの処理命令
を、デコードしてマイクロ命令とし、マルチプレクサ1
06を介して第1の演算パイプライン112に出力する
。108は並列第2デコーダで、ジェネラルレジスタ1
11からの処理命令を、デコードしてマイクロ命令とし
、第2の演算パイプライン113に出力する。109は
並列第3デコーダ、110は並列第4デコーダで、これ
らも並列第2デコーダ108と同様に、ジェネラルレジ
スタ111からの処理命令を、デコードしてマイクロ命
令とし、第3及び第4の演算パイプライン114、11
5にそれぞれ出力する。
Reference numeral 107 denotes a parallel first decoder for parallel arithmetic processing, which decodes processing instructions from the general register 111, which will be described later, into microinstructions and sends them to the multiplexer 1.
06 to the first calculation pipeline 112. 108 is a parallel second decoder, and general register 1
The processing instructions from 11 are decoded into microinstructions and output to the second arithmetic pipeline 113. 109 is a parallel third decoder, 110 is a parallel fourth decoder, and like the parallel second decoder 108, these also decode processing instructions from the general register 111 into microinstructions, and send them to the third and fourth arithmetic pipes. Lines 114, 11
5, respectively.

【0022】111はジェネラルレジスタで、複数のレ
ジスタ部を含んで構成されている。このジェネラルレジ
スタ111は、具体的には例えば32ビット幅を有して
1つの処理命令を書込むことができるレジスタ部を64
個含んで構成されている。さらに、ジェネラルレジスタ
111はマルチポート構成となっており、内部バス10
1と32ビット幅の双方向バス4本で結ばれてデータの
入出力を行い、さらに、32ビット幅のバスで各演算パ
イプライン112〜115にそれぞれデータを出力する
。ジェネラルレジスタ111の各レジスタ部には、ロー
ド命令により各演算パイプライン112〜115を制御
する処理命令が順次書込まれている。
A general register 111 includes a plurality of register sections. Specifically, the general register 111 has 64 register sections each having a width of 32 bits and into which one processing instruction can be written.
It is composed of 1. Furthermore, the general register 111 has a multi-port configuration, and the internal bus 10
It is connected by four bidirectional buses with a width of 1 and 32 bits to input and output data, and further outputs data to each calculation pipeline 112 to 115 using a bus with a width of 32 bits. Processing instructions for controlling each arithmetic pipeline 112 to 115 are sequentially written in each register section of the general register 111 using a load instruction.

【0023】並列命令手段としての並列エグゼキュート
命令は図3に示す構成になっている。即ち、“並列エク
ゼキュート”を意味するオペレーションコードと、ジェ
ネラルレジスタ111の特定のレジスタ部をそれぞれ指
定する4つのフィールドを含んで構成されている。これ
らのビット幅の一例としては、例えばオペレーションコ
ードが8ビット、各フィールドが6ビットである。そし
て、並列エグゼキュート命令121は、ジェネラルレジ
スタ111の特定のレジスタ部を全て同時に指定し、各
デコーダ107〜110を介して各演算パイプライン1
12〜115を同時に実行させる。
The parallel execute instruction as the parallel instruction means has the configuration shown in FIG. That is, it includes an operation code meaning "parallel execute" and four fields each specifying a specific register section of the general register 111. An example of these bit widths is, for example, an operation code of 8 bits and each field of 6 bits. Then, the parallel execute instruction 121 simultaneously specifies all specific register sections of the general register 111, and sends it to each operation pipeline via each decoder 107 to 110.
12 to 115 are executed simultaneously.

【0024】次に、前記構成の並列計算機の処理動作に
ついて説明する。まず、通常の単独演算処理は次のよう
になる。インストラクションユニット103は処理命令
をバスインターフェイス104を介して外部メモリから
読み込む。次に読み込んだ処理命令をデコーダ105に
書込み、デコードしてマイクロ命令とし、マルチプレク
サ106を介して第1の演算パイプライン112を制御
する。この演算パイプライン112は必要に応じ、ジェ
ネラルレジスタ111内のデータを読み込み、また、内
部バス101を介して処理後のデータをジェネラルレジ
スタ111に書き込む。さらに演算パイプライン112
は内部バス101を介して処理後のデータをデータユニ
ット102に書き込み、データユニット102は内部バ
ス101を介してそのデータをジェネラルレジスタ11
1に書き込む。またデータユニット102はバスインタ
ーフェイス104を通じ、外部とのデータのやりとりも
行う。
Next, the processing operation of the parallel computer with the above configuration will be explained. First, normal single operation processing is as follows. Instruction unit 103 reads processing instructions from external memory via bus interface 104 . Next, the read processing instruction is written to the decoder 105, decoded into a microinstruction, and the first arithmetic pipeline 112 is controlled via the multiplexer 106. The arithmetic pipeline 112 reads data in the general register 111 and writes processed data to the general register 111 via the internal bus 101 as necessary. Furthermore, the calculation pipeline 112
writes the processed data to the data unit 102 via the internal bus 101, and the data unit 102 writes the data via the internal bus 101 to the general register 11.
Write to 1. The data unit 102 also exchanges data with the outside via the bus interface 104.

【0025】並列演算処理を行なう場合には次のように
なる。
[0025] When performing parallel arithmetic processing, the process is as follows.

【0026】まず、ループの中に入る前にロード命令を
使用して並列実行する複数の処理命令をジェネラルレジ
スタ111の特定のレジスタ部に順次格納する。この処
理命令は、32ビット固定長を有し、プログラムのコン
パイルの段階で、データ部等に予め書込んでおく。なお
、処理命令は殆どループ中に含まれ、繰り返し実行され
る場合が多い。一般的に全ソースコードの5%に実行時
間の95%が費やされるので、ジェネラルレジスタ11
1の各レジスタ部に処理命令を格納する時間はループ処
理に対して殆ど問題にならない程度の時間である。
First, before entering a loop, a load instruction is used to sequentially store a plurality of processing instructions to be executed in parallel in a specific register section of the general register 111. This processing instruction has a fixed length of 32 bits, and is written in advance to the data section or the like at the stage of compiling the program. Note that most processing instructions are included in loops and are often repeatedly executed. Generally, 95% of the execution time is spent on 5% of the total source code, so the general register 11
The time it takes to store a processing instruction in each register section of 1 is a time that hardly poses a problem for loop processing.

【0027】そして、並列エグゼキュート命令121が
デコーダ105に書込まれたとき、この命令121の各
フィールドにより指定されたジェネラルレジスタ111
の各処理命令が並列第1〜第4デコーダ107〜110
に出力される。各デコーダ107〜110は受けた処理
命令をデコードしてマイクロ命令とした後、各演算パイ
プライン112〜115にそれぞれ出力する。このとき
、マルチプレクサ106の入力側は並列第1デコーダ1
07側に切り替えられており、各演算パイプライン11
2〜115は、各マイクロ命令に従ってパイプライン演
算を行う。そして、並列エグゼキュート命令121のデ
コード、ジェネラルレジスタ111からの処理命令の読
み出し及び並列第1〜第4デコーダ107〜110での
処理命令のデコードはすべてパイプライン処理されるの
で、ループ処理により並列エグゼキュート命令121が
続く限り、1クロックあたり等価的に4命令を実行し続
けることになる。これにより、実行スピードの観点から
は、1並列エグゼキュート命令121を実行することで
通常の命令を4命令実行することになる。なお、ループ
の中には通常の命令は最少限にとどめ、なるべく並列エ
グゼキュート命令121を置くようにすることが望まし
い。
When the parallel execute instruction 121 is written to the decoder 105, the general register 111 specified by each field of this instruction 121
Each processing instruction of the parallel first to fourth decoders 107 to 110
is output to. Each decoder 107-110 decodes the received processing instruction into a microinstruction, and then outputs the microinstruction to each operation pipeline 112-115, respectively. At this time, the input side of the multiplexer 106 is connected to the parallel first decoder 1.
07 side, each calculation pipeline 11
2 to 115 perform pipeline operations according to each microinstruction. Since the decoding of the parallel execute instruction 121, the reading of the processing instruction from the general register 111, and the decoding of the processing instruction in the parallel first to fourth decoders 107 to 110 are all performed by pipeline processing, the parallel execution instruction is As long as the cute instruction 121 continues, equivalently four instructions will continue to be executed per clock. As a result, from the viewpoint of execution speed, by executing one parallel execute instruction 121, four normal instructions are executed. Note that it is desirable to keep the number of normal instructions to a minimum in the loop and place as many parallel execute instructions 121 as possible.

【0028】以上により、従来のVLIW並列計算機が
4基本命令を1ワードとして1クロック毎に実行するの
に128ビット幅のインストラクションバス及びデータ
バスを必要としたのに対し、本実施例の並列計算機は並
列演算処理による高速情報処理能力を維持した状態で、
32ビット幅のインストラクションバス、データバスに
することができ、ユニット全体の小型、コンパクト化及
び周辺回路の減少を図ることができる。
As described above, while the conventional VLIW parallel computer requires a 128-bit wide instruction bus and data bus to execute four basic instructions as one word per clock, the parallel computer of this embodiment maintains high-speed information processing capability through parallel processing,
A 32-bit wide instruction bus and data bus can be used, and the entire unit can be made smaller and more compact, and the number of peripheral circuits can be reduced.

【0029】なお、本実施例では、1つの並列エグゼキ
ュート命令121で通常の命令を4命令並列に実行する
場合を例に説明したが、1つの並列エグゼキュート命令
で通常の命令を2命令、3命令または5命令以上を並列
に実行する場合でも、前記同様の作用、効果を奏するこ
とがこでる。
In this embodiment, the case where four normal instructions are executed in parallel with one parallel execute instruction 121 was explained as an example, but one parallel execute instruction executes two normal instructions, Even when three or five or more instructions are executed in parallel, the same operations and effects as described above can be achieved.

【0030】また、2命令、3命令、4命令または5命
令以上の通常命令を並列実行する並列エグゼキュート命
令の各フィールドに、別々のオペレーションコードを割
り当て、各演算パイプラインにそれぞれ異なる処理を行
わせるようにしてもよい。
[0030] Furthermore, a separate operation code is assigned to each field of a parallel execute instruction that executes two, three, four, or five or more normal instructions in parallel, and different processing is performed on each operation pipeline. It may be possible to do so.

【0031】そして、前記5命令以上の並列エグゼキュ
ート命令とする場合には、これに対応して5以上のデコ
ーダ及び演算パイプラインが設けられることはいうまで
もない。
[0031] It goes without saying that when five or more instructions are to be executed in parallel, five or more decoders and arithmetic pipelines are provided correspondingly.

【0032】[0032]

【発明の効果】以上、詳述したように本発明によれば、
複数個並列に設けられた演算パイプラインと、各演算パ
イプラインに処理命令をデコードして出力するデコーダ
と、いずれかのレジスタ部に各デコーダに出力する処理
命令が書込まれるジェネラルレジスタとを含んで構成さ
れ、ジェネラルレジスタの各レジスタ部に処理命令を順
次書込み、並列命令手段で処理命令を書込んだ各レジス
タ部を同時に指定し、処理命令を各デコーダに同時に出
力して各演算パイプラインを同時に実行させるようにし
たので、同時に多量の情報が1つのバスに集中するのを
解消し、ビット数の大きいバスの使用の必要性を抑える
ことができる。これにより、従来に比べてビット数の小
さいバスにすることができ、ユニット全体の小型、コン
パクト化及び周辺回路の減少を図ることができる。
[Effects of the Invention] As detailed above, according to the present invention,
It includes multiple arithmetic pipelines installed in parallel, a decoder that decodes and outputs processing instructions to each arithmetic pipeline, and a general register in which the processing instructions to be output to each decoder are written in one of the register sections. The processing instructions are sequentially written to each register section of the general register, each register section into which the processing instructions have been written is specified simultaneously by the parallel instruction means, and the processing instructions are simultaneously output to each decoder to execute each calculation pipeline. Since they are executed simultaneously, it is possible to prevent a large amount of information from being concentrated on one bus at the same time, and to suppress the need to use a bus with a large number of bits. This makes it possible to use a bus with a smaller number of bits than in the past, making it possible to make the entire unit smaller and more compact, and to reduce the number of peripheral circuits.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本実施例の並列処理装置としての並列計算機を
示すブロック図。
FIG. 1 is a block diagram showing a parallel computer as a parallel processing device of this embodiment.

【図2】従来の並列計算機を示すブロック図。FIG. 2 is a block diagram showing a conventional parallel computer.

【図3】並列エグゼキュート命令を示す説明図。FIG. 3 is an explanatory diagram showing parallel execute instructions.

【符号の説明】[Explanation of symbols]

101    内部バス 102    データユニット 103    インストラクションユニット104  
  バスインターフェイス 105    単独演算処理用のデコーダ106   
 マルチプレクサ 107    並列第1デコーダ 108    並列第2デコーダ 109    並列第3デコーダ 110    並列第4デコーダ 111    ジェネラルレジスタ
101 Internal bus 102 Data unit 103 Instruction unit 104
Bus interface 105 Decoder 106 for independent calculation processing
Multiplexer 107 Parallel first decoder 108 Parallel second decoder 109 Parallel third decoder 110 Parallel fourth decoder 111 General register

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  複数の演算を並列的に行なうべく複数
個並列に設けられた演算パイプラインと、各演算パイプ
ラインにそれぞれ対応して複数個設けられ、各演算パイ
プラインに処理命令をデコードして出力するデコーダと
、複数のレジスタ部を有し、いずれかのレジスタ部に各
デコーダに出力する処理命令が書込まれるジェネラルレ
ジスタとを含んで構成され、処理命令を書込んだ前記ジ
ェネラルレジスタの各レジスタ部を同時に指定し、各デ
コーダに同時に出力して各演算パイプラインを同時に実
行させる並列命令手段を備えたことを特徴とする並列処
理装置。
Claim 1: A plurality of arithmetic pipelines are provided in parallel to perform a plurality of arithmetic operations in parallel, and a plurality of arithmetic pipelines are provided corresponding to each arithmetic pipeline, and a processing instruction is decoded into each arithmetic pipeline. and a general register which has a plurality of register sections and into which a processing instruction to be output to each decoder is written. A parallel processing device comprising parallel instruction means that simultaneously specifies each register section and simultaneously outputs to each decoder to execute each calculation pipeline simultaneously.
JP40322990A 1990-12-18 1990-12-18 Parallel processor Pending JPH04217026A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP40322990A JPH04217026A (en) 1990-12-18 1990-12-18 Parallel processor
US08/097,325 US5299321A (en) 1990-12-18 1993-07-26 Parallel processing device to operate with parallel execute instructions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP40322990A JPH04217026A (en) 1990-12-18 1990-12-18 Parallel processor

Publications (1)

Publication Number Publication Date
JPH04217026A true JPH04217026A (en) 1992-08-07

Family

ID=18512983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP40322990A Pending JPH04217026A (en) 1990-12-18 1990-12-18 Parallel processor

Country Status (1)

Country Link
JP (1) JPH04217026A (en)

Similar Documents

Publication Publication Date Title
EP0241946A2 (en) Information processing system
JPS59114641A (en) Interrupt processor
JPH04328637A (en) Parallel processor
JPS62197830A (en) Data processing system
JP2620511B2 (en) Data processor
EP0378415A2 (en) Multiple instruction dispatch mechanism
US6539471B2 (en) Method and apparatus for pre-processing instructions for a processor
JP3212213B2 (en) Data processing device
JPH0673105B2 (en) Instruction pipeline type microprocessor
US4812970A (en) Microprogram control system
JP2874351B2 (en) Parallel pipeline instruction processor
JPH04217026A (en) Parallel processor
JP2553200B2 (en) Information processing device
JPH0546389A (en) Parallel processor
JPH0553804A (en) Parallel processor
KR20060058579A (en) Parallel data path architecture for high energy efficient
JP2812610B2 (en) Pipeline control method
JPH09101889A (en) Arithmetic unit for pipeline
JPS63293638A (en) Data processing system
EP0862112A2 (en) Data processing system having an instruction pipeline
JP3102399B2 (en) Data processing apparatus and method
JP2667810B2 (en) Vector processing equipment
JP2545594B2 (en) Operand data prefetching method
JPH11119995A (en) Device and method for processing data
CN112579168A (en) Instruction execution unit, processor and signal processing method