JP2001100997A - 並列処理プロセッサ - Google Patents
並列処理プロセッサInfo
- Publication number
- JP2001100997A JP2001100997A JP28195799A JP28195799A JP2001100997A JP 2001100997 A JP2001100997 A JP 2001100997A JP 28195799 A JP28195799 A JP 28195799A JP 28195799 A JP28195799 A JP 28195799A JP 2001100997 A JP2001100997 A JP 2001100997A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- unit
- basic
- configuration
- parallel processing
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 208
- 238000000034 method Methods 0.000 claims abstract description 15
- 230000008569 process Effects 0.000 claims abstract description 10
- 238000006243 chemical reaction Methods 0.000 description 91
- 238000010586 diagram Methods 0.000 description 76
- 239000000872 buffer Substances 0.000 description 29
- 230000005540 biological transmission Effects 0.000 description 25
- 230000000694 effects Effects 0.000 description 20
- 238000001514 detection method Methods 0.000 description 18
- 230000008707 rearrangement Effects 0.000 description 8
- 238000012805 post-processing Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
ッサを提供する。 【解決手段】 命令区切り情報によって区切られた命令
語に含まれる一つあるいは複数の基本命令を並列的に実
行する並列処理プロセッサであって、供給される基本命
令に応じた処理を並列的に実行する複数の命令実行部E
U0,EU1と、命令区切り情報に応じて命令語を一つ
ずつ取り込む命令取り込み部46と、命令取り込み部4
6により取り込まれた命令語に含まれる基本命令毎に、
対応するいずれか一つの命令実行部に基本命令を発行す
る命令発行部72とを備えたことを特徴とする並列処理
プロセッサを提供する。
Description
し、さらに詳しくは複数の基本命令を並列的に実行する
並列処理プロセッサに関するものである。
はパイプライン処理等で複数の基本命令を並列に実行す
ることで、処理能力の向上を図っている。また従来にお
いては、複数の基本命令をまとめて固定長の命令語と
し、一つの命令語に含まれた複数の基本命令を並列に実
行する方式として超長命令語(Very Long Instruction
Word− VLIW )方式が採用されている。また、スーパー
スカラ(super-scalar)方式等では、命令並列度に応じ
て基本命令を並列に実行することが行われている。
を示す図である。図1に示されるように、従来の並列処
理プロセッサ10は、メモリ7に接続された命令読出部
1と、命令読出部1に接続された命令発行部3と、それ
ぞれが命令発行部3に接続された命令実行部EU0〜E
Unと、全ての命令実行部EU0〜EUnに接続された
レジスタ部5とを備える。
語を読み出して、該命令語を命令発行部3に供給する。
また、命令発行部3は供給された命令語に含まれる基本
命令を、命令実行部EU0〜EUnへ発行する。なお、
このとき命令実行部EU0〜EUnが既に先の基本命令
を実行中である場合には、その実行の完了を待った後に
対応する命令実行部へ次の基本命令を供給する。
された基本命令を実行するとともに、該実行が完了した
場合にはその旨を命令発行部3へ通知する。また、レジ
スタ部5は必要に応じて命令実行部EU0〜EUnへデ
ータを供給し、かつ各命令実行部EU0〜EUnにおけ
る実行結果を保持する。なお、外部接続されたメモリ7
は並列処理プロセッサ10で実行する命令語列を記憶す
ると共に、命令実行部EU0〜EUnが命令の実行にあ
たり必要とするデータ及び該実行の結果得られたデータ
を記憶する。
を備えた上記の並列処理プロセッサに供給される命令語
の形式を示す図である。図2に示されるように、命令語
は基本命令EIと、無操作命令nopとからなる。ここ
で、一つの命令語に含まれ並列的に実行される基本命令
の数が命令実行部EU0〜EU3の数に達しない場合に
は、無操作命令の割合が多くなることがわかる。
本命令の並列処理方式は、命令語が固定長であったた
め、並列に実行する基本命令の数が所定の数に達しない
場合には、無操作命令を付加して所定の長さにする必要
があった。このことから、命令並列度の低いプログラム
に対しては、無操作命令が多くなると共に命令コード量
が増大するため、メモリの使用効率の悪化やキャッシュ
メモリのヒット率の低下、命令読み出し機構の負荷の増
大などを招くという問題があった。
ログラム実行時に並列実行される命令の数を増やすに
は、必要とされる回路規模が大きくなるという問題があ
る。
を解消するためになされたもので、効率良い並列処理を
実現する並列処理プロセッサを提供することを目的とす
る。
り情報によって区切られた命令語に含まれる一つあるい
は複数の基本命令を並列的に実行する並列処理プロセッ
サであって、供給される基本命令に応じた処理を並列的
に実行する複数の命令実行部と、命令区切り情報に応じ
て命令語を一つずつ取り込む命令取り込み部と、命令取
り込み部から供給された命令語に含まれる基本命令毎
に、基本命令を実行すべきいずれか一つの命令実行部へ
選択的に基本命令を発行する命令発行部とを備えたこと
を特徴とする並列処理プロセッサを提供することにより
達成される。
は命令区切り情報に応じて命令語を一つずつ取り込むた
め該命令語を可変長とすることができると共に、命令発
行部は供給された命令語に含まれる基本命令毎に、選択
的に該基本命令を実行すべき命令実行部へ該基本命令を
発行するため命令語を効率良く実行できる。なお、上記
において複数の命令実行部は全て同一の構成を有するも
のとすることもできる。
二つは構成が相違すると共に、命令取り込み部は、取り
込んだ命令語毎に、命令語に含まれる基本命令を複数の
命令実行部の構成に応じて並び替えた上で命令発行部に
供給するものとすることができる。このような手段によ
れば、命令発行部へは複数の命令実行部の構成に応じて
並べ替えられた基本命令が供給されるため、基本命令が
効率的に並列実行される。
二つは構成が相違すると共に、命令発行部は、命令取り
込み部から供給された命令語に含まれる基本命令を、複
数の命令実行部の構成に応じて並び替えた後に命令実行
部へ発行するものとすることができる。またさらに命令
発行部は、命令実行部において実行中の基本命令の種類
に応じて、実行が完了する前に次の基本命令を発行する
ものとすることができる。このような手段によれば、基
本命令の並列処理をより確実かつ効率的に遂行すること
ができる。
態を図面を参照して詳しく説明する。なお、図中同一符
号は、同一または相当部分を示す。 [実施の形態1]図3及び図6に示されるように、本実
施の形態1に係る並列処理プロセッサ20,21は、そ
れぞれ、メモリ12に接続された命令読出部46,47
と、命令読出部46,47にそれぞれ接続された命令発
行部72,73と、命令発行部72,73に接続され同
じ構成からなる二つの命令実行部EU0,EU1と、全
ての命令実行部EU0,EU1に接続されたレジスタ部
98とを備えたものである。
処理プロセッサを、一命令語の最大基本命令語長が2の
場合を例として説明する。なお、一命令語の最大基本命
令語長が3以上の場合も同様に説明できる。 (実施例1)図4は、図3に示された命令読出部46と
命令発行部72の構成を示す図である。図4に示される
ように、命令読出部46は固定長フェッチ部(FPC)
300と、加算器324,325と、命令バッファ30
8と、切出部316と、実行フェッチ部(EPC)33
9とを備える。
令実行部EU0,EU1に接続され、加算器324はF
PC300に接続される。また、命令バッファ308は
メモリ12に接続され、切出部316は命令バッファ3
08に接続される。そして、加算器325は切出部31
6に接続され、EPC339は加算器325及びレジス
タ部98に接続される。そして、上記FPC300へは
メモリ12から命令語に含まれたフェッチアドレスが供
給され、命令バッファ308へはメモリ12から命令語
に含まれたフェッチデータが供給される。さらにFPC
300へは、分岐命令に対応する分岐先のアドレス等が
命令実行部EU0,EU1から供給される。
7と、セレクタ355,356と、制御部370と、A
NDゲート378を備える。ここで、命令レジスタ34
7は切出部316に接続され、セレクタ355,356
は共に命令レジスタ347に接続される。そして、セレ
クタ355は命令実行部EU0に接続され、セレクタ3
56は命令実行部EU1に接続される。また、制御部3
70はANDゲート378及びセレクタ355,356
に接続され、ANDゲート378は命令実行部EU0,
EU1に接続される。ここで、命令の実行完了を示す命
令完了信号EUc0,EUc1が、それぞれ命令実行部
EU0,EU1からANDゲート378へ供給される。
以下において、本実施例に係る並列処理プロセッサの
動作について説明する。
ッサに供給される命令語の形式を示すものである。図5
に示されるように、該命令語は命令実行部で実行される
基本命令語EI及び命令語区切りフィールド0,1から
なり、その基本命令語長が1の場合と2の場合とがあ
る。すなわち図5の上段は、命令語区切りフィールド0
及び基本命令EIからなる基本命令語と、命令語区切り
フィールド1及び基本命令EIからなる基本命令語との
並びからなる基本命令語長が2の命令語を示し、図5の
下段は、命令語区切りフィールド1及び基本命令EIか
らなる基本命令語長1の命令語を示す。
記憶され、プロセッサ20の命令読出部46に含まれた
加算器324によって固定長dispだけアドレスがインク
リメントされることにより、順次読み出される。ここ
で、命令読出部46に含まれた切出部316は上記命令
語を読み出した時、命令語区切りフィールド1に続く基
本命令EIまでを一つの命令語と認識した上で、一命令
語毎に、すなわち例えば上記基本命令語長2の一つの命
令語を命令語列から切り出し、命令読出部46に取り込
む。なお、ここで加算器325は切出部316から供給
された命令語長を示す信号SLに基いて実行される基本
命令EIに対応する番地を算出し、EPC339はこれ
を一時的に保持する。そしてさらにレジスタ部98は、
所定の場合においてEPC339に保持されている上記
基本命令EIの再実行のための戻り番地を格納する。
ら供給された上記一つの命令語に含まれる命令語区切り
フィールド0,1に基づいて、各基本命令EIを認識
し、該各基本命令EIをいずれか一つの命令実行部EU
0,EU1へセレクタ355,356を介して選択的に
発行する。従って、例えば命令語区切りフィールド0に
続く基本命令EIは命令実行部EU0に発行され、命令
語区切りフィールド1に続く基本命令EIは命令実行部
EU1に発行される。なおここで、セレクタ355,3
56は制御部370により制御され、一命令語の実行が
完了したときにセレクタ355,356を介して命令実
行部EU0,EU1へ基本命令EIが供給される。
本命令語長1の一つの命令語がプロセッサ20の命令バ
ッファ308に取り込まれた場合には、切出部316は
供給された上記命令語に含まれる命令語区切りフィール
ド1に基づいて、命令語区切りフィールド1に続く基本
命令EIを切出し、命令レジスタ347によりいずれか
一つの命令実行部、例えば命令実行部EU0へ発行され
る。
は一ビットで示されるが、命令語を区切る情報であれば
どのようなデータを命令語区切りフィールドに書込んで
も良い。また、本実施例においては、同じ構成を有する
命令実行部EU0,EU1が二つ備えられる場合を説明
したが、三つ以上備えられたものも同様に考えられる。
ッサ20によれば、命令読出部46は命令区切りフィー
ルド1に応じて命令語を一つずつ取り込むため、該命令
語を可変長とすることができる。そして、一つの命令発
行部72は取り込まれた命令語に含まれる基本命令EI
毎に、複数の命令実行部EU0,EU1のうち該基本命
令EIに対応するいずれか一つの命令実行部EU0,E
U1へ基本命令EIを発行することから、命令語中に無
操作命令nopを含ませる必要は生じず、基本命令EI
を命令語により効率的に含ませることができる。そし
て、このような命令語に応じて基本命令EIを実行する
ことにより、並列処理プロセッサの並列処理能力を向上
させることができる。 (実施例2)図6は、本実施例2に係る並列処理プロセ
ッサ21の構成を示す図である。図6に示されるよう
に、該並列処理プロセッサ21は図3に示された並列処
理プロセッサ20と同様の構成を有するが、命令発行部
73には供給された基本命令EIがいずれかの命令実行
部EU0,EU1において実行されている基本命令EI
に対し、データ依存関係や制御依存関係を有するもので
あるか否か、若しくは資源競合を生じさせるものである
か否かを判断する判断部103が含まれている点で相違
するものである。
命令EI中に指定されているデスティネーション・レジ
スタ番号(書込みレジスタ番号)と、これから命令実行
部EU0,EU1へ発行する基本命令EI中に指定され
ているソース・レジスタ番号(読み出しレジスタ番号)
とを比較し、それらの番号が一致した場合にはデータ依
存関係を有し、一致しない場合にはデータ依存関係を有
さないものとして処理を進める。
令EIが、分岐命令を含むか、あるいは0による除算等
の処理の例外を発生させる可能性があると判断した場合
には、制御依存関係を有し、そうでない場合には制御依
存関係を有さないものとして処理を進める。さらに、判
断部103は各基本命令EIの内容から、既に実行中の
基本命令EIが必要とする資源(例えば命令実行部EU
0,EU1等)と、これから発行する基本命令EIが必
要とする資源とを比較し、それらの資源が一致した場合
には資源競合を生じさせ、一致しない場合には資源競合
を生じさせるものとして処理を進める。
は、これから発行しようとする基本命令EIが命令実行
部EU0,EU1において実行中の基本命令EIに対し
てデータ依存関係を持たず、かつ制御依存関係を持た
ず、かつ資源競合も生じないものであると判断した場合
には、上記実行が完了する前に該基本命令EIを対応す
る命令実行部EU0,EU1へ発行する。従って、この
場合には命令発行部73による命令発行動作と、命令実
行部EU0,EU1における命令実行動作とは時分割型
並列処理となる。
EIが命令実行部EU0,EU1において実行中の基本
命令EIに対してデータ依存関係や制御依存関係、ある
いは資源競合を生じさせるものであると判断した場合に
は、上記実行の完了を待って該基本命令EIを対応する
命令実行部EU0,EU1へ発行する。なお、本実施例
においては、同じ構成を有する命令実行部EU0,EU
1が二つ備えられる場合を説明したが、三つ以上備えら
れたものも同様に考えられる。
ッサ21によれば、上記実施例1に係る並列処理プロセ
ッサ20と同様な効果を奏するとともに、さらに基本命
令EIの並列処理を確実かつ効率的に遂行することがで
き、動作の信頼性を高めることができる。 [実施の形態2]図7及び図12から図21に示される
ように、本実施の形態2に係る並列処理プロセッサ22
〜27は、それぞれ、メモリ12に接続された命令読出
部48〜53と、命令読出部48〜53にそれぞれ接続
された命令発行部74〜79と、命令発行部74〜79
に接続される命令実行部LU0,IU0,IU1,FU
0,FU1,BU0と、全ての命令実行部に接続された
レジスタ部99とを備えたものである。
命令実行部であり、ロード命令及びストア命令を実行す
る。なお、これらの実行が完了した時には命令実行部L
U0は命令発行部74〜79へ通知する。また、命令実
行部IU0,IU1は整数演算命令実行部であり、整数
演算命令を実行する。なお、この実行が完了した時には
命令実行部IU0,IU1は命令発行部74〜79へ通
知する。
数点演算命令実行部であり、浮動小数点演算命令を実行
する。なお、この実行が完了した時には命令実行部FU
0,FU1は命令発行部74〜79へ通知する。また、
命令実行部BU0は分岐命令実行部であり、分岐命令を
実行する。なお、この実行が完了した時には命令実行部
BU0は命令発行部74〜79へ通知する。
処理プロセッサを、一命令語に含まれる最大基本命令語
長が2の場合を例として説明する。なお、一命令語の最
大基本命令語長が3以上の場合も同様に説明できる。 (実施例1)図7は、本実施例1に係る並列処理プロセ
ッサの構成を示す図である。図7に示されるように、こ
の並列処理プロセッサ22は、命令読出部48に変換部
115を備える。この変換部115は、以下に詳述する
ように、取り込んだ一命令語毎に、該命令語に含まれる
基本命令を複数の命令実行部LU0,IU0,IU1,
FU0,FU1,BU0の構成に応じて並び替えた上で
命令発行部74に供給するものである。なお、変換部1
15においてこのような並び替えを行なうのは、命令発
行部74における基本命令の発行を容易にするためであ
る。
する」との意味を説明する。本発明に係る並列処理プロ
セッサは、その構成をプリント基板上あるいはLSI上
に表現することになる。すなわち、二次元平面に各構成
要素が配置され、その間が配線により接続される。この
時、配線が交差しそうな状況が想定されるが、一般にプ
リント基板あるいはLSIは複数の配線層を持つので、
その際は異なる配線層を使用して交差しそうな配線を迂
回するように配線する。従って、論理的にはいかなる配
置に対しても配線可能と考えられるが、回路の動作速度
の観点からは上記迂回は配線の延長を意味するため、迂
回が少ないほど動作速度を低下させる要因が少なくな
る。このため、迂回が少なくて済むような配線が好まし
いといえる。以上より、上記の「基本命令の発行を容易
にする」とは、命令発行部74に供給された命令語に含
まれる各基本命令を対応する命令実行部に発行するため
の配線を短縮し、動作速度を向上させるという意味であ
る。
命令発行部74の構成を示す図である。図8に示される
ように、この命令読出部48と命令発行部74は、それ
ぞれ図4に示された命令読出部46及び命令発行部72
と同様な構成を有するが、命令読出部48は切出部31
7に接続された上記変換部115をさらに備える点で相
違する。なおFPC301へは、分岐命令に対応する分
岐先のアドレス等が命令実行部BU0から供給される。
すくするために、命令レジスタ348から二つの命令実
行部LU0,IU0へ命令が発行される経路のみを記し
ているが、図7に示される他の命令実行部IU1,FU
0,FU1,BU0への命令発行経路も同様に描くこと
ができる。そしてこのことは、ANDゲート379へ供
給される信号として二つの命令完了信号LUc,IUc
0のみが示されている点についても同様である。
サ22の動作について説明する。まず、命令読出部48
の切出部317は上記実施の形態1に係る並列処理プロ
セッサと同様に、命令語区切りフィールド1までの基本
命令を一命令語として、該命令語を一つずつ取り込む。
ここで、命令読出部48に供給される命令語の形式13
が、図9に示される。図9に示されるように、この命令
語は図5に示された命令語と同様に、基本命令の区切り
を示す命令語区切りフィールド0あるいは1と、整数演
算命令IIと、浮動小数点演算命令FIと、ロードスト
ア命令LIと、分岐命令BIとからなる。
0,IU0,IU1,FU0,FU1,BU0に対する
インタフェース15は、図9に示されるように、基本命
令の発行における有効ビットVと、整数演算命令を実行
する上で必要な情報IIと、浮動小数点演算命令を実行
する上で必要な情報FIと、ロードストア命令を実行す
る上で必要な情報LIと、分岐命令を実行する上で必要
な情報BIとによって記述される。すなわちインタフェ
ース15は、その左から順に、命令発行部74から命令
実行部LU0へは有効ビットV及び情報LIを、命令実
行部IU0,IU1へは有効ビットV及び情報IIを、
命令実行部FU0,FU1へは有効ビットV及び情報F
Iを、命令実行部BU0へは有効ビットV及び情報BI
をそれぞれ供給することを意味する。
令を発行しないことを意味し、1は基本命令を発行する
ことを意味する。そして、係る有効ビットVと情報I
I,FI,LI,BIとは対となり、それぞれ命令実行
部に対応付けられる。そして、図9に示されるように命
令語の形式13は、命令読出部48に含まれる変換部1
15において、命令実行部LU0,IU0,IU1,F
U0,FU1,BU0の構成に応じた命令語の形式17
に並び替えられ、命令発行部74の命令レジスタ348
に供給される。これより命令レジスタ348は、有効ビ
ットVが1の基本命令を対応する命令実行部へ発行す
る。すなわち例えば、命令語の形式17の一番上に記さ
れた命令語が命令発行部74に供給されたとき、命令発
行部74は有効ビットVが1の浮動小数点演算命令FI
を命令実行部FU0へ発行し、分岐命令BIを命令実行
部BU0へ発行する。
演算命令FIを実行し、命令実行部BU0は分岐命令B
Iを実行する。なおこの場合には、他の命令実行部LU
0,IU0,IU1,FU1は、基本命令を何ら実行し
ないことになる。図10は、図8に示された変換部11
5の構成を示す回路図である。図10に示されるよう
に、変換部115は伝送線L1,L2と、BI検出器B
D1,BD2と、FI検出器FD1,FD2と、II検
出器ID1,ID2と、LI検出器LD1,LD2と、
バッファ155〜158と、ANDゲート163〜16
6,185,186と、排他的ORゲート187〜19
0と、セレクタ209〜212と、ORゲート199〜
202とを含む。
る第一番目の基本命令を伝送し、伝送線L2は一命令語
内に含まれる第二番目の基本命令を伝送する。また、B
I検出器BD1は伝送線L1に接続され、BI検出器B
D2は伝送線L2に接続される。そして、バッファ15
5はBI検出器BD1に接続され、ANDゲート163
はBI検出器BD1,BD2に接続され、セレクタ20
9は伝送線L1,L2とバッファ155及びANDゲー
ト163に接続される。また、ORゲート199はバッ
ファ155及びANDゲート163に接続される。
続され、FI検出器FD2は伝送線L2に接続される。
そして、バッファ156はFI検出器FD1に接続さ
れ、ANDゲート164はFI検出器FD1,FD2に
接続され、排他的ORゲート187の二つの入力端はそ
れぞれバッファ156の入力ノードと出力ノードとに接
続される。さらには、排他的ORゲート188の二つの
入力端はそれぞれANDゲート164の出力ノードとF
I検出器FD2に接続され、ANDゲート185は二つ
の排他的ORゲート187,188に接続される。ま
た、セレクタ210は伝送線L1,L2とバッファ15
6及びANDゲート164に接続され、ORゲート20
0はバッファ156及びANDゲート164に接続され
る。
続され、II検出器ID2は伝送線L2に接続される。
そして、バッファ157はII検出器ID1に接続さ
れ、ANDゲート165はII検出器ID1,ID2に
接続され、排他的ORゲート189の二つの入力端はそ
れぞれバッファ157の入力ノードと出力ノードとに接
続される。さらには、排他的ORゲート190の二つの
入力端はそれぞれANDゲート165の出力ノードとI
I検出器ID2に接続され、ANDゲート186は二つ
の排他的ORゲート189,190に接続される。ま
た、セレクタ211は伝送線L1,L2とバッファ15
7及びANDゲート165に接続され、ORゲート20
1はバッファ157及びANDゲート165に接続され
る。
続され、LI検出器LD2は伝送線L2に接続される。
そして、バッファ158はLI検出器LD1に接続さ
れ、ANDゲート166はLI検出器LD1,LD2に
接続され、セレクタ212は伝送線L1,L2とバッフ
ァ158及びANDゲート166に接続される。また、
ORゲート202はバッファ158及びANDゲート1
66に接続される。
よりBI検出器ブロック147が形成され、二つのFI
検出器FD1,FD2によりFI検出器ブロック149
が形成される。また、二つのII検出器ID1,ID2
によりII検出器ブロック151が形成され、二つのL
I検出器LD1,LD2によりFI検出器ブロック15
3が形成される。
動作を、図9に示された命令語の形式13の一番上に示
された基本命令BI,FIからなる命令語が、変換部1
15へ供給された場合を例として以下に説明する。まず
第一番目の基本命令BIが伝送線LIを伝送するため、
BI検出器BD1は該基本命令BIを検出して論理レベ
ルが1の検出信号をバッファ155へ供給する。なおこ
の時、ANDゲート163からは論理レベルが0の信号
が出力される。これより、セレクタ209はバッファ1
55から供給された検出信号に応じて第一番目の基本命
令BIを選択し該基本命令BIを命令実行部BU0で実
行すべき命令として、命令発行部74へ出力する。一
方、基本命令BIの出力と同時に、ORゲート199か
らはバッファ155から供給された検出信号に応じて論
理レベルが1の有効ビットVが出力される。なお、上記
第一番目の基本命令BIに対してFI検出器FD1とI
I検出器ID1及びLI検出器LD1からは共に論理レ
ベルが0の非検出信号が出力されるため、セレクタ21
0,211,212は共に、伝送線L1を伝送する第一
番目の基本命令を選択しない。
の基本命令FIが伝送する。このとき、上記第一番目の
基本命令BIの場合と同様にFI検出器FD2は該基本
命令FIを検出して論理レベルが1の検出信号をAND
ゲート164へ供給する。このとき、ANDゲート16
4の出力は論理レベルが1の信号となる。そして、セレ
クタ209はANDゲート164から供給された該論理
レベルが1の信号に応じて第二番目の基本命令FIを選
択して該基本命令FIを命令実行部FU0で実行すべき
命令として出力する。一方、基本命令FIの出力と同時
に、ORゲート200からはANDゲート164から供
給された検出信号に応じて論理レベルが1の有効ビット
Vが出力される。
てBI検出器BD2,ID2,LD2からは論理レベル
が0の非検出信号が出力されるため、セレクタ209,
211,212は共に、伝送線L2を伝送する第二番目
の基本命令を選択しない。また、命令実行部LU0,I
U0,IU1,FU1で実行されるべき基本命令は上記
第一番目と第二番目のいずれの基本命令においても検出
されなかったため、それぞれORゲート202,201
やANDゲート186,185からは有効ビットVとし
て論理レベルが0の信号が出力される。
上のような動作により、図9に示された命令語の形式1
3が命令語の形式17へ並び替えられる。図11は、メ
モリ12から命令読出部48へ供給される命令語の最大
基本命令語長が4の場合における変換部115の構成を
示す回路図である。図11に示されるように、この場合
の変換部115の構成は図10に示された最大命令語長
が2の場合における変換部115の構成と同様である
が、最大基本命令語長が4であることに対応して4つの
伝送線L1〜L4が備えられ、それぞれの伝送線L1〜
L4に接続される4つのBI検出器BD1〜BD4、F
I検出器FD1〜FD4、II検出器ID1〜ID4、
そしてLI検出器LD1〜LD4が備えられる点で相違
する。また、基本命令FIに対しては最大命令語長が4
であることに応じて、二つのセレクタ214,215が
備えられ、基本命令IIに対しても同様に二つのセレク
タ216,217が備えられる点で相違する。
2と、ANDゲート167〜184と、排他的ORゲー
ト191〜198と、ORゲート203〜208と、セ
レクタ213,218とを備える。なお、四つのBI検
出器BD1〜BD4によりBI検出器ブロック148が
形成され、四つのFI検出器FD1〜FD4によりFI
検出器ブロック150が形成される。また、四つのII
検出器ID1〜ID4によりII検出器ブロック152
が形成され、四つのLI検出器LD1〜FD4によりF
I検出器ブロック154が形成される。
は、図10に示された変換部115と同様に動作する
が、以下において同じ基本命令が含まれる命令語、例え
ば基本命令BI,FI,FI,IIから構成される命令
語が変換部115に供給された場合の動作について説明
する。まず第一番目の基本命令BIが伝送線LIを伝送
するため、BI検出器BD1は該基本命令BIを検出し
て論理レベルが1の検出信号をバッファ159へ供給す
る。なおこの時、ANDゲート167〜169からは論
理レベルが0の信号が出力される。これより、セレクタ
213はバッファ159から供給された検出信号に応じ
て第一番目の基本命令BIを選択し該基本命令BIを命
令実行部BU0で実行すべき命令として、命令発行部7
4へ出力する。一方、基本命令BIの出力と同時に、O
Rゲート203からはバッファ159から供給された検
出信号に応じて論理レベルが1の有効ビットVが出力さ
れる。なお、上記第一番目の基本命令BIに対してFI
検出器FD1とII検出器ID1及びLI検出器LD1
からは共に論理レベルが0の非検出信号が出力されるた
め、セレクタ214,216,218は共に、伝送線L
1を伝送する第一番目の基本命令を選択しない。
の基本命令FIが伝送する。このとき、上記第一番目の
基本命令BIの場合と同様にFI検出器FD2は該基本
命令FIを検出して論理レベルが1の検出信号をAND
ゲート170へ供給する。このとき、ANDゲート17
0の出力は論理レベルが1の信号となる。そして、セレ
クタ214はANDゲート170から供給された該論理
レベルが1の信号に応じて第二番目の基本命令FIを選
択して該基本命令FIを命令実行部FU0で実行すべき
命令として出力する。一方、基本命令FIの出力と同時
に、ORゲート204からはANDゲート170から供
給された検出信号に応じて論理レベルが1の有効ビット
Vが出力される。
てBI検出器BD2,II検出器ID2,LI検出器L
D2からは論理レベルが0の非検出信号が出力されるた
め、セレクタ213,216,218は共に、伝送線L
2を伝送する第二番目の基本命令を選択しない。次に、
伝送線L3を上記命令語の第三番目の基本命令FIが伝
送する。このとき、上記第一番目の基本命令BIの場合
と同様にFI検出器FD3は該基本命令FIを検出して
論理レベルが1の検出信号をANDゲート171へ供給
する。このとき、ANDゲート171へはFI検出器F
D2から論理レベルが1の検出信号が供給されているの
で、その出力は論理レベルが0の信号となる。このた
め、排他的ORゲート193からは論理レベルが1の信
号が出力されANDゲート174からは論理レベルが1
の信号が出力される。そして、セレクタ215はAND
ゲート174から供給された該論理レベルが1の信号に
応じて第三番目の基本命令FIを選択して該基本命令F
Iを命令実行部FU1で実行すべき命令として出力す
る。一方、基本命令FIの出力と同時に、ORゲート2
05からはANDゲート174から供給された信号に応
じて論理レベルが1の有効ビットVが出力される。
てBI検出器BD3,II検出器ID3,LI検出器L
D3からは論理レベルが0の非検出信号が出力されるた
め、セレクタ213,216,218は共に、伝送線L
3を伝送する第三番目の基本命令を選択しない。そし
て、次に、伝送線L4を上記命令語の第四番目の基本命
令IIが伝送する。このとき、上記第一番目の基本命令
BIの場合と同様にII検出器ID4は該基本命令II
を検出して論理レベルが1の検出信号をANDゲート1
78へ供給する。このとき、ANDゲート178の出力
は論理レベルが1の信号となる。そして、セレクタ21
6はANDゲート178から供給された該論理レベルが
1の信号に応じて第四番目の基本命令IIを選択して該
基本命令IIを命令実行部IU0で実行すべき命令とし
て出力する。一方、基本命令IIの出力と同時に、OR
ゲート206からはANDゲート178から供給された
信号に応じて論理レベルが1の有効ビットVが出力され
る。
ッサによれば、命令読出部48は供給された命令語に含
まれる基本命令を命令実行部の配置に応じて並び替えた
上で、該命令語を命令発行部74に供給するため、命令
実行部への命令発行部74による基本命令の発行を容易
にし、動作速度を向上させることができる。なお上記実
施例においては、命令読出部48は、予め複数の命令実
行部の構成に応じた順序に並べられた基本命令が含まれ
る命令語を、メモリ12から取り込むこととすることも
有用である。すなわち、上記の命令読出部48における
並び替えを実現する上で要する回路規模が小さくなるよ
うに予め基本命令の並びを制約する。
一方のみを採用する。例えば、図9における命令語の形
式13の一番上及び上から四番目に示された命令語につ
いては、並び替えられた命令語の形式17が同一とな
る。従って、このような場合には一方のみを採用し、他
方を予め禁止とする。また、命令読出部22の配線の迂
回が多くなるような命令語を禁止することが考えられ
る。例えば、上記の二つの命令語に着目すると、基本命
令BI,FIの並んでいる順序が逆の関係にある。ここ
で、回路の構成要素は二次元平面に配置されるので、い
ずれか一方の命令語の並べ替えにおいては他方より配線
の迂回を多く必要とする。従って、このような配線の迂
回をより多く必要とする命令語の並びを予め禁止する。
命令語に含まれた基本命令の並びを予め制約することに
より、並列処理プロセッサ22の回路規模を小さくする
ことができる。 (実施例2)図12は、本実施の形態2の実施例2に係
る並列処理プロセッサの構成を示す図である。図12に
示されるように、この並列処理プロセッサ23は図7に
示された上記実施例1に係る並列処理プロセッサ22と
同様な構成を有するが、変換部116が命令発行部75
に内蔵される点で相違するものである。ここで変換部1
16の構成及び動作は、図10及び図11に示された変
換部115の構成及び動作と同様なものである。
部49と命令発行部75の構成を示す図である。図13
に示されるように、この命令読出部49と命令発行部7
5は、それぞれ図4に示された命令読出部46及び命令
発行部72と同様な構成を有するが、命令発行部75は
命令レジスタ349に接続された上記変換部116をさ
らに備える点で相違する。なお、図13においても図を
簡略化して見やすくするために、変換部116から二つ
の命令実行部LU0,IU0へ命令が発行される経路の
みを記しているが、図12に示される他の命令実行部I
U1,FU0,FU1,BU0への命令発行経路も同様
に描くことができる。またこのことは、ANDゲート3
80へ供給される信号として二つの命令完了信号LU
c,IUc0のみが示されている点についても同様であ
る。
ッサによれば、命令発行部75の変換部116は命令レ
ジスタ349から供給された命令語に含まれる基本命令
を、複数の命令実行部の構成に応じて並び替えた後に該
命令実行部へ各基本命令を発行するため、全体としての
配線長を短くして動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ23の回路規模を小さくすることが
できることも、上記実施例1に係る並列処理プロセッサ
22と同様である。 (実施例3)図14は、本実施の形態2の実施例3に係
る並列処理プロセッサの構成を示す図である。図14に
示されるように、この並列処理プロセッサ24は図7に
示された上記実施例1に係る並列処理プロセッサ22と
同様な構成を有するが、命令読出部50は取り込んだ命
令語毎に、該命令語に含まれる基本命令を複数の命令実
行部の構成に応じて並び替える第一変換部117を含
み、命令発行部76は命令読出部50から供給された命
令語に含まれる基本命令を該複数の命令実行部の構成に
応じてさらに並び替える第二変換部118を含む点で相
違するものである。
部50と命令発行部76の構成を示す図である。図15
に示されるように、この命令読出部50と命令発行部7
6は、それぞれ図4に示された命令読出部46及び命令
発行部72と同様な構成を有するが、命令読出部50は
切出部319に接続された上記第一変換部117をさら
に備え、命令発行部76は命令レジスタ350に接続さ
れた上記第二変換部118をさらに備える点で相違す
る。なお、図15においても図を簡略化して見やすくす
るために、第二変換部118から二つの命令実行部LU
0,IU0へ命令が発行される経路のみを記している
が、図14に示される他の命令実行部IU1,FU0,
FU1,BU0への命令発行経路も同様に描くことがで
きる。またこのことは、ANDゲート381へ供給され
る信号として二つの命令完了信号LUc,IUc0のみ
が示されている点についても同様である。
基本命令の並び替えのいわゆる前処理が行われ、上記第
二変換部118においては基本命令の並び替えにおける
いわゆる後処理が行われる。なお、実際の回路では並列
処理プロセッサの処理能力を向上させるために、命令読
出部50と命令発行部76における処理がパイプライン
化される。このため、命令読出部50における処理時間
と命令発行部76における処理時間の差が少ないほど、
パイプライン化した効果が期待できる。従って、命令読
出部50における処理時間と命令発行部76における処
理時間の差が少なくなるように、上記前処理と後処理を
分割する。
図11に示されたBI検出器ブロック147,148、
FI検出器ブロック149,150、II検出器ブロッ
ク151,152、LI検出器ブロック153,154
に相当する回路を第一変換部117に備えると共に、図
10及び図11に示されたそれ以外の回路については第
二変換部118に備えることができる。
並列処理プロセッサによっても、全体として配線長を短
くすることができ、動作速度を向上させることができ
る。なお、命令読出部50に供給される命令語に含まれ
た基本命令の並びを予め制約することにより、並列処理
プロセッサ24の回路規模を小さくすることができるこ
とは、上記実施例1及び2に係る並列処理プロセッサと
同様である。 (実施例4)図16は、本実施の形態2の実施例4に係
る並列処理プロセッサの構成を示す図である。図16に
示されるように、この並列処理プロセッサ25は図7に
示された上記実施例1に係る並列処理プロセッサ22と
同様な構成を有するが、変換部119が命令読出部51
に内蔵されると共に、判断部104が命令発行部77に
内蔵される点で相違するものである。
部51と命令発行部77の構成を示す図である。図17
に示されるように、この命令読出部51と命令発行部7
7は、それぞれ図8に示された命令読出部48及び命令
発行部74と同様な構成を有するが、命令発行部77が
命令レジスタ351と制御部374との間に接続された
判断部104をさらに備える点で相違する。ここで、判
断部104は供給された基本命令に基いて、発行対象と
される基本命令が上記データ依存性や制御依存性を有す
るものであるか否か、または資源競合を生じさせるもの
であるか否かを判断し、その結果を制御部374へ通知
する。ここで、発行対象とされる基本命令が上記データ
依存性あるいは制御依存性を有し、または資源競合を生
じさせるものであると判断される場合には、命令の実行
完了を示す命令完了信号LUc,IUc0が供給される
のを待って命令発行部77から基本命令が発行される。
やすくするために、命令レジスタ351から二つの命令
実行部LU0,IU0へ命令が発行される経路のみを記
しているが、図16に示される他の命令実行部IU1,
FU0,FU1,BU0への命令発行経路も同様に描く
ことができる。またこのことは、判断部104へ供給さ
れる信号として二つの命令完了信号LUc,IUc0の
みが示されている点についても同様である。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部104の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態1の実施例
2に係る並列処理プロセッサと、上記実施の形態2の実
施例1に係る並列処理プロセッサの両者における効果を
得ることができる。すなわち、命令発行部77に判断部
104を内蔵することにより基本命令の並列処理を確実
かつ効率的に遂行することができ、動作の信頼性を高め
ることができるとともに、命令読出部51に変換部11
9を内蔵することにより、命令実行部への命令発行部7
7による基本命令の発行を容易にし、動作速度を向上さ
せることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ25の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例5)図18は、本実施の形態2の実施例5に係
る並列処理プロセッサの構成を示す図である。図18に
示されるように、この並列処理プロセッサ26は図16
に示された上記実施例4に係る並列処理プロセッサ25
と同様な構成を有するが、変換部120が命令発行部7
8に内蔵される点で相違するものである。
部52と命令発行部78の構成を示す図である。図19
に示されるように、この命令読出部52と命令発行部7
8は、それぞれ図13に示された命令読出部49及び命
令発行部75と同様な構成を有するが、命令発行部78
が命令レジスタ352と制御部375との間に接続され
た判断部105をさらに備える点で相違する。ここで、
判断部105は供給された基本命令に基いて、発行対象
とされる基本命令が上記データ依存性や制御依存性を有
するものであるか否か、または資源競合を生じさせるも
のであるか否かを判断し、その結果を制御部375へ通
知する。ここで、発行対象とされる基本命令が上記デー
タ依存性あるいは制御依存性を有し、または資源競合を
生じさせるものであると判断される場合には、命令の実
行完了を示す命令完了信号LUc,IUc0が供給され
るのを待って命令発行部78から基本命令が発行され
る。
やすくするために、命令レジスタ352から二つの命令
実行部LU0,IU0へ命令が発行される経路のみを記
しているが、図18に示される他の命令実行部IU1,
FU0,FU1,BU0への命令発行経路も同様に描く
ことができる。またこのことは、判断部105へ供給さ
れる信号として二つの命令完了信号LUc,IUc0の
みが示されている点についても同様である。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部105の構成および動作は
図16に示された判断部104の構成及び動作と同様な
ものである。以上のような構成を有する本実施例に係る
並列処理プロセッサによれば、上記実施例4に係る並列
処理プロセッサと同様な効果を得ることができる。すな
わち、命令発行部78に判断部105を内蔵することに
より基本命令の並列処理を確実かつ効率的に遂行するこ
とができ、動作の信頼性を高めることができるととも
に、命令発行部78にさらに変換部120を内蔵するこ
とにより、命令実行部への基本命令の発行を容易にし、
動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ26の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例6)図20は、本実施の形態2の実施例6に係
る並列処理プロセッサの構成を示す図である。図20に
示されるように、この並列処理プロセッサ27は図14
に示された上記実施例3に係る並列処理プロセッサ24
と同様な構成を有するが、判断部106がさらに命令発
行部79に内蔵される点で相違するものである。
部53と命令発行部79の構成を示す図である。図21
に示されるように、この命令読出部53と命令発行部7
9は、それぞれ図15に示された命令読出部50及び命
令発行部76と同様な構成を有するが、命令発行部79
が命令レジスタ353と制御部376との間に接続され
た判断部106をさらに備える点で相違する。ここで、
判断部106は供給された基本命令に基いて、発行対象
とされる基本命令が上記データ依存性や制御依存性を有
するものであるか否か、または資源競合を生じさせるも
のであるか否かを判断し、その結果を制御部376へ通
知する。ここで、発行対象とされる基本命令が上記デー
タ依存性あるいは制御依存性を有し、または資源競合を
生じさせるものであると判断される場合には、命令の実
行完了を示す命令完了信号LUc,IUc0が供給され
るのを待って命令発行部79から基本命令が発行され
る。
やすくするために、命令レジスタ353から二つの命令
実行部LU0,IU0へ命令が発行される経路のみを記
しているが、図20に示される他の命令実行部IU1,
FU0,FU1,BU0への命令発行経路も同様に描く
ことができる。またこのことは、判断部106へ供給さ
れる信号として二つの命令完了信号LUc,IUc0の
みが示されている点についても同様である。
22の構成及び動作は、図14に示された第一変換部1
17と第二変換部118の構成及び動作と同様なもので
あり、判断部106の構成および動作は図6に示された
判断部103の構成及び動作と同様なものである。以上
のような構成を有する本実施例に係る並列処理プロセッ
サによれば、上記実施の形態1の実施例2に係る並列処
理プロセッサと、上記実施の形態2の実施例3に係る並
列処理プロセッサの両者における効果を得ることができ
る。すなわち、命令発行部79に判断部106を内蔵す
ることにより基本命令の並列処理を確実かつ効率的に遂
行することができ、動作の信頼性を高めることができる
とともに、命令読出部53に第一変換部121を含むと
共に命令発行部77に第二変換部122を含むことによ
り、命令実行部への命令発行部79による基本命令の発
行を容易にし、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ27の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 [実施の形態3]図22から図27に示されるように、
本実施の形態3に係る並列処理プロセッサ28〜33
は、メモリ12に接続された命令読出部54〜59と、
命令読出部にそれぞれ接続された命令発行部80〜85
と、命令発行部に接続される命令実行部LU0,IU
0,IU1,FU0,FU1,MU0,MU1,BU0
と、全ての命令実行部に接続されたレジスタ部100と
を備えたものである。ここで、命令実行部MU0,MU
1は特定用途向け専用演算命令実行部であり、特定用途
向け専用演算命令を実行する。なお、これらの実行が完
了した時には命令実行部MU0,MU1は命令発行部8
0〜85へ通知する。
処理プロセッサを、一命令語に含まれる最大基本命令語
長が2の場合を例として説明する。なお、一命令語の最
大基本命令語長が3以上の場合も同様に説明できる。 (実施例1)図22は、本実施の形態3の実施例1に係
る並列処理プロセッサの構成を示す図である。図22に
示されるように、この並列処理プロセッサ28は、命令
読出部54に変換部123を備える。そしてこの変換部
123の構成及び動作は、上記実施の形態2の実施例1
で詳述した変換部115の構成及び動作と同じものであ
る。すなわち変換部123は、取り込んだ一命令語毎
に、該命令語に含まれる基本命令を複数の命令実行部の
構成に応じて並び替えた上で命令発行部80に供給す
る。
ッサ28においても、上記実施の形態2の実施例1に係
る並列処理プロセッサ22と同様な効果を得ることがで
きる。すなわち、命令実行部への命令発行部80による
基本命令の発行を容易にし、動作速度を向上させること
ができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ28の回路規模を小さくすることが
できることは、上記実施の形態に係る並列処理プロセッ
サと同様である。 (実施例2)図23は、本実施の形態3の実施例2に係
る並列処理プロセッサの構成を示す図である。図23に
示されるように、この並列処理プロセッサ29は図12
に示された並列処理プロセッサ23と同様な構成を有
し、変換部124が命令発行部81に含まれる。ここで
変換部124の構成及び動作は、図10及び図11に示
された変換部115の構成及び動作と同様なものであ
る。
ッサによれば、命令発行部81は命令読出部55から供
給された命令語に含まれる基本命令を、複数の命令実行
部の構成に応じて並び替えた後に該命令実行部へ各基本
命令を発行するため、全体としての配線長を短くして動
作速度を向上させることができる。なお、命令読出部5
5に供給される命令語に含まれた基本命令の並びを予め
制約することにより、並列処理プロセッサ29の回路規
模を小さくすることができることも、上記の並列処理プ
ロセッサと同様である。 (実施例3)図24は、本実施の形態3の実施例3に係
る並列処理プロセッサの構成を示す図である。図24に
示されるように、この並列処理プロセッサ30は図14
に示された上記の並列処理プロセッサ24と同様な構成
を有し、命令読出部56は取り込んだ命令語毎に該命令
語に含まれる基本命令を複数の命令実行部の構成に応じ
て並び替える第一変換部125を含む。そして、命令発
行部82は命令読出部56から供給された命令語に含ま
れる基本命令を該複数の命令実行部の構成に応じてさら
に並び替える第二変換部126を含む。
基本命令の並び替えのいわゆる前処理が行われ、上記第
二変換部126においては基本命令の並び替えにおける
いわゆる後処理が行われる。なお、実際の回路では並列
処理プロセッサの処理能力を向上させるために、命令読
出部56と命令発行部82における処理がパイプライン
化される。このため、命令読出部56における処理時間
と命令発行部82における処理時間の差が少ないほど、
パイプライン化した効果が期待できる。従って、命令読
出部56における処理時間と命令発行部82における処
理時間の差が少なくなるように、上記前処理と後処理を
分割する。
並列処理プロセッサにより、全体として配線長を短くす
ることができ、動作速度を向上させることができる。な
お、命令読出部56に供給される命令語に含まれた基本
命令の並びを予め制約することにより、並列処理プロセ
ッサ30の回路規模を小さくすることができることは、
上記実施例1及び2に係る並列処理プロセッサと同様で
ある。 (実施例4)図25は、本実施の形態3の実施例4に係
る並列処理プロセッサの構成を示す図である。図25に
示されるように、この並列処理プロセッサ31は図16
に示された上記の並列処理プロセッサ25と同様な構成
を有し、変換部127が命令読出部57に内蔵されると
共に、判断部107が命令発行部83に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部107の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
4に係る並列処理プロセッサと同様の効果を得ることが
できる。すなわち、命令発行部83に判断部107を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令読出部57に変換部127を内蔵す
ることにより、命令実行部への命令発行部83による基
本命令の発行を容易にし、動作速度を向上させることが
できる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ31の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例5)図26は、本実施の形態3の実施例5に係
る並列処理プロセッサの構成を示す図である。図26に
示されるように、この並列処理プロセッサ32は図18
に示された上記実施の形態2の実施例5に係る並列処理
プロセッサ26と同様な構成を有し、変換部128及び
判断部108が命令発行部84に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部108の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
5に係る並列処理プロセッサと同様な効果を得ることが
できる。すなわち、命令発行部84に判断部108を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令発行部84にさらに変換部128を
内蔵することにより、命令実行部への基本命令の発行を
容易にし、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ32の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例6)図27は、本実施の形態3の実施例6に係
る並列処理プロセッサの構成を示す図である。図27に
示されるように、この並列処理プロセッサ33は図20
に示された上記の並列処理プロセッサ27と同様な構成
を有するものである。
30の構成及び動作は、図14に示された第一変換部1
17と第二変換部118の構成及び動作と同様なもので
あり、判断部109の構成および動作は図6に示された
判断部103の構成及び動作と同様なものである。以上
のような構成を有する本実施例に係る並列処理プロセッ
サによれば、上記実施の形態2の実施例6に係る並列処
理プロセッサと同様の効果を得ることができる。すなわ
ち、命令発行部85に判断部109を内蔵することによ
り基本命令の並列処理を確実かつ効率的に遂行すること
ができ、動作の信頼性を高めることができるとともに、
命令読出部59に第一変換部129を含むと共に命令発
行部85に第二変換部130を含むことにより、命令実
行部への命令発行部85による基本命令の発行を容易に
し、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ33の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 [実施の形態4]図28から図33に示されるように、
本実施の形態4に係る並列処理プロセッサ34〜39
は、メモリ12に接続された命令読出部60〜65と、
命令読出部にそれぞれ接続された命令発行部86〜91
と、命令発行部に接続される命令実行部LU0,LU
1,IU0,IU1,FU0,FU1,BU0,BU1
と、全ての命令実行部に接続されたレジスタ部101と
を備えたものである。ここで、命令実行部LU1はロー
ドストア命令実行部であり、ロード命令及びストア命令
を実行する。なお、これらの実行が完了した時には命令
実行部LU1は命令発行部86〜91へ通知する。ま
た、命令実行部BU1は分岐命令実行部であり、分岐命
令を実行する。なお、この実行が完了した時には命令実
行部BU1は命令発行部86〜91へ通知する。
処理プロセッサを、一命令語に含まれる最大基本命令語
長が4の場合を示した図を用いて説明する。なお、図2
8から図33においては、一命令語の最大基本命令語長
が4であることが命令読出部60〜65から命令発行部
86〜91への四本の矢印で示されている。また、本実
施の形態4は、一命令語の最大基本命令語長が4の場合
に限られるものでないことはいうまでもない。 (実施例1)図28は、本実施の形態4の実施例1に係
る並列処理プロセッサの構成を示す図である。図28に
示されるように、この並列処理プロセッサ34は、命令
読出部60に変換部131を備える。そしてこの変換部
131の構成及び動作は、上記実施の形態2の実施例1
で詳述した変換部115の構成及び動作と同じものであ
る。すなわち変換部131は、取り込んだ一命令語毎
に、該命令語に含まれる基本命令を複数の命令実行部の
構成に応じて並び替えた上で命令発行部86に供給す
る。
ッサ34においても、上記実施の形態2の実施例1に係
る並列処理プロセッサ22と同様な効果を得ることがで
きる。すなわち、命令実行部への命令発行部86による
基本命令の発行を容易にし、動作速度を向上させること
ができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ34の回路規模を小さくすることが
できることは、上記実施の形態に係る並列処理プロセッ
サと同様である。 (実施例2)図29は、本実施の形態4の実施例2に係
る並列処理プロセッサの構成を示す図である。図29に
示されるように、この並列処理プロセッサ35は図12
に示された並列処理プロセッサ23と同様な構成を有
し、変換部132が命令発行部87に含まれる。ここで
変換部132の構成及び動作は、図10及び図11に示
された変換部115の構成及び動作と同様なものであ
る。
ッサによれば、命令発行部87は命令読出部61から供
給された命令語に含まれる基本命令を、複数の命令実行
部の構成に応じて並び替えた後に該命令実行部へ各基本
命令を発行するため、全体としての配線長を短くして動
作速度を向上させることができる。なお、命令読出部6
1に供給される命令語に含まれた基本命令の並びを予め
制約することにより、並列処理プロセッサ35の回路規
模を小さくすることができることも、上記の並列処理プ
ロセッサと同様である。 (実施例3)図30は、本実施の形態4の実施例3に係
る並列処理プロセッサの構成を示す図である。図30に
示されるように、この並列処理プロセッサ36は図14
に示された上記の並列処理プロセッサ24と同様な構成
を有し、命令読出部62は取り込んだ命令語毎に該命令
語に含まれる基本命令を複数の命令実行部の構成に応じ
て並び替える第一変換部133を含む。そして、命令発
行部88は命令読出部62から供給された命令語に含ま
れる基本命令を該複数の命令実行部の構成に応じてさら
に並び替える第二変換部134を含む。
基本命令の並び替えのいわゆる前処理が行われ、上記第
二変換部134においては基本命令の並び替えにおける
いわゆる後処理が行われる。なお、実際の回路では並列
処理プロセッサの処理能力を向上させるために、命令読
出部62と命令発行部88における処理がパイプライン
化される。このため、命令読出部62における処理時間
と命令発行部88における処理時間の差が少ないほど、
パイプライン化した効果が期待できる。従って、命令読
出部62における処理時間と命令発行部88における処
理時間の差が少なくなるように、上記前処理と後処理を
分割する。
並列処理プロセッサにより、全体として配線長を短くす
ることができ、動作速度を向上させることができる。な
お、命令読出部62に供給される命令語に含まれた基本
命令の並びを予め制約することにより、並列処理プロセ
ッサ36の回路規模を小さくすることができることは、
上記実施例1及び2に係る並列処理プロセッサと同様で
ある。 (実施例4)図31は、本実施の形態4の実施例4に係
る並列処理プロセッサの構成を示す図である。図31に
示されるように、この並列処理プロセッサ37は図16
に示された上記の並列処理プロセッサ25と同様な構成
を有し、変換部135が命令読出部63に内蔵されると
共に、判断部110が命令発行部89に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部110の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
4に係る並列処理プロセッサと同様の効果を得ることが
できる。すなわち、命令発行部89に判断部110を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令読出部63に変換部135を内蔵す
ることにより、命令実行部への命令発行部89による基
本命令の発行を容易にし、動作速度を向上させることが
できる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ37の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例5)図32は、本実施の形態4の実施例5に係
る並列処理プロセッサの構成を示す図である。図32に
示されるように、この並列処理プロセッサ38は図18
に示された上記実施の形態2の実施例5に係る並列処理
プロセッサ26と同様な構成を有し、変換部136及び
判断部111が命令発行部90に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部111の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
5に係る並列処理プロセッサと同様な効果を得ることが
できる。すなわち、命令発行部90に判断部111を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令発行部90にさらに変換部136を
内蔵することにより、命令実行部への基本命令の発行を
容易にし、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ38の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例6)図33は、本実施の形態4の実施例6に係
る並列処理プロセッサの構成を示す図である。図33に
示されるように、この並列処理プロセッサ39は図20
に示された上記の並列処理プロセッサ27と同様な構成
を有するものである。
38の構成及び動作は、図14に示された第一変換部1
17と第二変換部118の構成及び動作と同様なもので
あり、判断部112の構成および動作は図6に示された
判断部103の構成及び動作と同様なものである。以上
のような構成を有する本実施例に係る並列処理プロセッ
サによれば、上記実施の形態2の実施例6に係る並列処
理プロセッサと同様の効果を得ることができる。すなわ
ち、命令発行部91に判断部112を内蔵することによ
り基本命令の並列処理を確実かつ効率的に遂行すること
ができ、動作の信頼性を高めることができるとともに、
命令読出部65に第一変換部137を含むと共に命令発
行部91に第二変換部138を含むことにより、命令実
行部への命令発行部91による基本命令の発行を容易に
し、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ39の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 [実施の形態5]図34から図39に示されるように、
本実施の形態5に係る並列処理プロセッサ40〜45
は、メモリ12に接続された命令読出部66〜71と、
命令読出部にそれぞれ接続された命令発行部92〜97
と、命令発行部に接続される命令実行部LU0,LU
1,IU0,IU1,FU0,FU1,MU0,MU
1,BU0,BU1と、全ての命令実行部に接続された
レジスタ部102とを備えたものである。
処理プロセッサを、一命令語に含まれる最大基本命令語
長が4の場合を示した図を用いて説明する。なお、図3
4から図39においては、一命令語の最大基本命令語長
が4であることが命令読出部66〜71から命令発行部
92〜97への四本の矢印で示されている。また、本実
施の形態5は、一命令語の最大基本命令語長が4の場合
に限られるものでないことはいうまでもない。 (実施例1)図34は、本実施の形態5の実施例1に係
る並列処理プロセッサの構成を示す図である。図34に
示されるように、この並列処理プロセッサ40は、命令
読出部66に変換部139を備える。そしてこの変換部
139の構成及び動作は、上記実施の形態2の実施例1
で詳述した変換部115の構成及び動作と同じものであ
る。すなわち変換部139は、取り込んだ一命令語毎
に、該命令語に含まれる基本命令を複数の命令実行部の
構成に応じて並び替えた上で命令発行部92に供給す
る。
ッサ40においても、上記実施の形態2の実施例1に係
る並列処理プロセッサ22と同様な効果を得ることがで
きる。すなわち、命令発行部92による命令実行部への
基本命令の発行を容易にし、動作速度を向上させること
ができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ40の回路規模を小さくすることが
できることは、上記実施の形態に係る並列処理プロセッ
サと同様である。 (実施例2)図35は、本実施の形態5の実施例2に係
る並列処理プロセッサの構成を示す図である。図35に
示されるように、この並列処理プロセッサ41は図12
に示された並列処理プロセッサ23と同様な構成を有
し、変換部140が命令発行部93に含まれる。ここで
変換部140の構成及び動作は、図10及び図11に示
された変換部115の構成及び動作と同様なものであ
る。
ッサによれば、命令発行部93は命令読出部67から供
給された命令語に含まれる基本命令を、複数の命令実行
部の構成に応じて並び替えた後に該命令実行部へ各基本
命令を発行するため、全体としての配線長を短くして動
作速度を向上させることができる。なお、命令読出部6
7に供給される命令語に含まれた基本命令の並びを予め
制約することにより、並列処理プロセッサ41の回路規
模を小さくすることができることは、上記の並列処理プ
ロセッサと同様である。 (実施例3)図36は、本実施の形態5の実施例3に係
る並列処理プロセッサの構成を示す図である。図36に
示されるように、この並列処理プロセッサ42は図14
に示された上記の並列処理プロセッサ24と同様な構成
を有し、命令読出部68は取り込んだ命令語毎に該命令
語に含まれる基本命令を複数の命令実行部の構成に応じ
て並び替える第一変換部141を含む。そして、命令発
行部94は命令読出部68から供給された命令語に含ま
れる基本命令を該複数の命令実行部の構成に応じてさら
に並び替える第二変換部142を含む。
基本命令の並び替えのいわゆる前処理が行われ、上記第
二変換部142においては基本命令の並び替えにおける
いわゆる後処理が行われる。なお、実際の回路では並列
処理プロセッサの処理能力を向上させるために、命令読
出部68と命令発行部94における処理がパイプライン
化される。このため、命令読出部68における処理時間
と命令発行部94における処理時間の差が少ないほど、
パイプライン化した効果が期待できる。従って、命令読
出部68における処理時間と命令発行部94における処
理時間の差が少なくなるように、上記前処理と後処理を
分割する。
並列処理プロセッサにより、全体として配線長を短くす
ることができ、動作速度を向上させることができる。な
お、命令読出部68に供給される命令語に含まれた基本
命令の並びを予め制約することにより、並列処理プロセ
ッサ42の回路規模を小さくすることができることは、
上記実施例1及び2に係る並列処理プロセッサと同様で
ある。 (実施例4)図37は、本実施の形態5の実施例4に係
る並列処理プロセッサの構成を示す図である。図37に
示されるように、この並列処理プロセッサ43は図16
に示された上記の並列処理プロセッサ25と同様な構成
を有し、変換部143が命令読出部69に内蔵されると
共に、判断部113が命令発行部95に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部113の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
4に係る並列処理プロセッサと同様の効果を得ることが
できる。すなわち、命令発行部95に判断部113を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令読出部69に変換部143を内蔵す
ることにより、命令実行部への命令発行部95による基
本命令の発行を容易にし、動作速度を向上させることが
できる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ43の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例5)図38は、本実施の形態5の実施例5に係
る並列処理プロセッサの構成を示す図である。図38に
示されるように、この並列処理プロセッサ44は図18
に示された上記実施の形態2の実施例5に係る並列処理
プロセッサ26と同様な構成を有し、変換部144及び
判断部114が命令発行部96に内蔵される。
10及び図11に示された変換部115の構成及び動作
と同様なものであり、判断部114の構成および動作は
図6に示された判断部103の構成及び動作と同様なも
のである。以上のような構成を有する本実施例に係る並
列処理プロセッサによれば、上記実施の形態2の実施例
5に係る並列処理プロセッサと同様な効果を得ることが
できる。すなわち、命令発行部96に判断部114を内
蔵することにより基本命令の並列処理を確実かつ効率的
に遂行することができ、動作の信頼性を高めることがで
きるとともに、命令発行部96にさらに変換部144を
内蔵することにより、命令実行部への基本命令の発行を
容易にし、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ44の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。 (実施例6)図39は、本実施の形態5の実施例6に係
る並列処理プロセッサの構成を示す図である。図39に
示されるように、この並列処理プロセッサ45は図20
に示された上記の並列処理プロセッサ27と同様な構成
を有するものである。
46の構成及び動作は、図14に示された第一変換部1
17と第二変換部118の構成及び動作と同様なもので
あり、判断部112の構成および動作は図6に示された
判断部103の構成及び動作と同様なものである。以上
のような構成を有する本実施例に係る並列処理プロセッ
サによれば、上記実施の形態2の実施例6に係る並列処
理プロセッサと同様の効果を得ることができる。すなわ
ち、命令発行部97に判断部219を内蔵することによ
り基本命令の並列処理を確実かつ効率的に遂行すること
ができ、動作の信頼性を高めることができるとともに、
命令読出部71に第一変換部145を含むと共に命令発
行部97に第二変換部146を含むことにより、命令実
行部への命令発行部97による基本命令の発行を容易に
し、動作速度を向上させることができる。
に含まれた基本命令の並びを予め制約することにより、
並列処理プロセッサ45の回路規模を小さくすることが
できることは、上記実施例に係る並列処理プロセッサと
同様である。最後に、本発明に係る課題を解決するため
の手段について付記する。 (1)命令区切り情報によって区切られた命令語に含ま
れる一つあるいは複数の基本命令を並列的に実行する並
列処理プロセッサであって、供給される基本命令に応じ
た処理を並列的に実行する複数の命令実行部と、命令区
切り情報に応じて命令語を一つずつ取り込む命令取り込
み部と、命令取り込み部から供給された命令語に含まれ
る基本命令毎に、基本命令を実行すべきいずれか一つの
命令実行部へ選択的に基本命令を発行する命令発行部と
を備えたことを特徴とする並列処理プロセッサ。 (2)複数の命令実行部は全て同一の構成を有する
(1)に記載の並列処理プロセッサ。 (3)複数の命令実行部のうち少なくとも二つは構成が
相違すると共に、命令取り込み部は、取り込んだ命令語
毎に、命令語に含まれる基本命令を複数の命令実行部の
構成に応じて並び替えた上で命令発行部に供給する
(1)に記載の並列処理プロセッサ。 (4)複数の命令実行部のうち少なくとも二つは構成が
相違すると共に、命令発行部は、命令取り込み部から供
給された命令語に含まれる基本命令を、複数の命令実行
部の構成に応じて並び替えた後に命令実行部へ発行する
(1)に記載の並列処理プロセッサ。 (5)複数の命令実行部のうち少なくとも二つは構成が
相違すると共に、命令取り込み部は、取り込んだ命令語
毎に、命令語に含まれる基本命令を複数の命令実行部の
構成に応じて並び替えた上で命令発行部に供給し、命令
発行部は、命令取り込み部から供給された命令語に含ま
れる基本命令を、複数の命令実行部の構成に応じてさら
に並び替えた後に命令実行部へ発行する(1)に記載の
並列処理プロセッサ。 (6)複数の命令実行部のうち少なくとも二つは構成が
相違すると共に、命令取り込み部は、予め複数の命令実
行部の構成に応じた順序に並べられた基本命令が含まれ
る命令語を取り込む(3)から(5)のいずれかに記載
の並列処理プロセッサ。ここで、このような手段によれ
ば、命令取り込み部は予め複数の命令実行部の構成に応
じた順序に並べられた基本命令が含まれる命令語を取り
込むため、並列処理プロセッサの回路規模を小さくする
ことができる。 (7)命令発行部は、命令実行部において実行中の基本
命令の種類に応じて、実行が完了する前に次の基本命令
を発行する(1)から(6)のいずれかに記載の並列処
理プロセッサ。 (8)命令発行部は、供給された基本命令が命令実行部
において実行中の基本命令に対してデータ依存関係を持
たず、かつ制御依存関係を持たず、かつ資源競合も生じ
ないものである場合には、実行が完了する前に供給され
た基本命令を発行する(7)に記載の並列処理プロセッ
サ。このような手段によれば、さらに基本命令の並列処
理を確実かつ効率的に遂行することができ、動作の信頼
性を高めることができる。
込み部は命令区切り情報に応じて命令語を一つずつ取り
込むため該命令語を可変長とすることができ、命令発行
部は取り込まれた命令語に含まれる基本命令毎に、対応
するいずれか一つの命令実行部へ基本命令を発行するた
め、命令語中に基本命令をより効率的に含ませることが
できると共に、並列処理プロセッサの並列処理能力を向
上させることができる。
ち少なくとも二つが構成を異にするものとすれば、命令
語の実行のため過剰な回路規模が必要とされず、並列処
理プロセッサの小型化を実現することができる。さらに
命令取り込み部は、取り込んだ命令語毎に、命令語に含
まれる基本命令を複数の命令実行部の構成に応じて並び
替えた上で命令発行部に供給するものとすれば、並列処
理プロセッサの回路規模を小さくすることができると共
に、動作の高速化を図ることができる。
実行中の基本命令の種類に応じて、該実行が完了する前
に次の基本命令を発行することとすれば、さらなる並列
処理の効率化を図ることができる。
る。
処理プロセッサに供給される命令語の形式を示す図であ
る。
ッサの構成を示す図である。
を示す図である。
される命令語の形式を示すものである。
ッサの構成を示す図である。
ッサの構成を示す図である。
を示す図である。
る基本命令の並び替えを説明するための図である。
ある。
の構成を示す回路図である。
セッサの構成を示す図である。
構成を示す図である。
セッサの構成を示す図である。
構成を示す図である。
セッサの構成を示す図である。
構成を示す図である。
セッサの構成を示す図である。
構成を示す図である。
セッサの構成を示す図である。
構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
セッサの構成を示す図である。
ロック 151,152 整数演算命令(II)検出器ブロック 153,154 ロードストア命令(LI)検出器ブロ
ック 155〜162 バッファ 163〜186 ANDゲート 187〜198 排他的ORゲート 199〜208 ORゲート 209〜218,355〜368 セレクタ 300〜306 固定長フェッチ部(FPC) 308〜314 命令バッファ 316〜322 切出部 324〜337 加算器 339〜345 実行フェッチ部(EPC) 347〜353 命令レジスタ 370〜376 制御部 378〜381 ANDゲート EU0〜EUn,LU0,LU1,IU0,IU1,F
U0,FU1,MU0,MU1,BU0,BU1 命令
実行部 BD1〜BD4 分岐命令(BI)検出器 FD1〜FD4 浮動小数点演算命令(FI)検出器 ID1〜ID4 整数演算命令(II)検出器 LD1〜LD4 ロードストア命令(LI)検出器 L1〜L4 伝送線
Claims (5)
- 【請求項1】 命令区切り情報によって区切られた命令
語に含まれる一つあるいは複数の基本命令を並列的に実
行する並列処理プロセッサであって、 供給される前記基本命令に応じた処理を並列的に実行す
る複数の命令実行部と、 前記命令区切り情報に応じて前記命令語を一つずつ取り
込む命令取り込み部と、 前記命令取り込み部から供給された前記命令語に含まれ
る前記基本命令毎に、前記基本命令を実行すべきいずれ
か一つの前記命令実行部へ選択的に前記基本命令を発行
する命令発行部とを備えたことを特徴とする並列処理プ
ロセッサ。 - 【請求項2】 前記複数の命令実行部は全て同一の構成
を有する請求項1に記載の並列処理プロセッサ。 - 【請求項3】 前記複数の命令実行部のうち少なくとも
二つは構成が相違すると共に、 前記命令取り込み部は、取り込んだ前記命令語毎に、前
記命令語に含まれる前記基本命令を前記複数の命令実行
部の構成に応じて並び替えた上で前記命令発行部に供給
する請求項1に記載の並列処理プロセッサ。 - 【請求項4】 前記複数の命令実行部のうち少なくとも
二つは構成が相違すると共に、 前記命令発行部は、前記命令取り込み部から供給された
前記命令語に含まれる前記基本命令を、前記複数の命令
実行部の構成に応じて並び替えた後に前記命令実行部へ
発行する請求項1に記載の並列処理プロセッサ。 - 【請求項5】 前記命令発行部は、前記命令実行部にお
いて実行中の前記基本命令の種類に応じて、前記実行が
完了する前に次の前記基本命令を発行する請求項1から
4のいずれかに記載の並列処理プロセッサ。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28195799A JP3730455B2 (ja) | 1999-10-01 | 1999-10-01 | 情報処理装置及び情報処理方法 |
US09/654,527 US7401204B1 (en) | 1999-10-01 | 2000-09-01 | Parallel Processor efficiently executing variable instruction word |
EP00307646A EP1089168B1 (en) | 1999-10-01 | 2000-09-05 | Very long instruction word processor |
DE60045208T DE60045208D1 (de) | 1999-10-01 | 2000-09-05 | Prozessor mit sehr langem Befehlswort |
KR1020000056946A KR100689717B1 (ko) | 1999-10-01 | 2000-09-28 | 병렬 처리 프로세서 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28195799A JP3730455B2 (ja) | 1999-10-01 | 1999-10-01 | 情報処理装置及び情報処理方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001100997A true JP2001100997A (ja) | 2001-04-13 |
JP2001100997A5 JP2001100997A5 (ja) | 2004-12-02 |
JP3730455B2 JP3730455B2 (ja) | 2006-01-05 |
Family
ID=17646271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28195799A Expired - Fee Related JP3730455B2 (ja) | 1999-10-01 | 1999-10-01 | 情報処理装置及び情報処理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7401204B1 (ja) |
EP (1) | EP1089168B1 (ja) |
JP (1) | JP3730455B2 (ja) |
KR (1) | KR100689717B1 (ja) |
DE (1) | DE60045208D1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002323982A (ja) * | 2001-04-25 | 2002-11-08 | Fujitsu Ltd | 命令処理方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7100026B2 (en) * | 2001-05-30 | 2006-08-29 | The Massachusetts Institute Of Technology | System and method for performing efficient conditional vector operations for data parallel architectures involving both input and conditional vector values |
JP2002318687A (ja) * | 2001-04-18 | 2002-10-31 | Fujitsu Ltd | 情報処理装置及び計算機システム |
KR100867269B1 (ko) | 2007-02-22 | 2008-11-06 | 삼성전자주식회사 | 프로세서의 추론적 로드 명령 실행 방법 및 상기 방법을채용한 프로세서 |
KR100875836B1 (ko) | 2007-03-23 | 2008-12-24 | 삼성전자주식회사 | 병렬 처리 vliw 컴퓨터를 위한 인스트럭션 명령어 압축장치 및 그 방법 |
US8578387B1 (en) | 2007-07-31 | 2013-11-05 | Nvidia Corporation | Dynamic load balancing of instructions for execution by heterogeneous processing engines |
US9304775B1 (en) * | 2007-11-05 | 2016-04-05 | Nvidia Corporation | Dispatching of instructions for execution by heterogeneous processing engines |
JP2010257199A (ja) * | 2009-04-24 | 2010-11-11 | Renesas Electronics Corp | プロセッサ及びプロセッサにおける命令発行の制御方法 |
US8443343B2 (en) * | 2009-10-28 | 2013-05-14 | Intel Corporation | Context-sensitive slicing for dynamically parallelizing binary programs |
CN109324981B (zh) * | 2017-07-31 | 2023-08-15 | 伊姆西Ip控股有限责任公司 | 高速缓存管理***和方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5214763A (en) * | 1990-05-10 | 1993-05-25 | International Business Machines Corporation | Digital computer system capable of processing two or more instructions in parallel and having a coche and instruction compounding mechanism |
JPH0440525A (ja) | 1990-06-06 | 1992-02-10 | Seiko Epson Corp | 並列処理型マイクロプロセッサ |
JPH052484A (ja) | 1991-06-24 | 1993-01-08 | Mitsubishi Electric Corp | スーパースカラプロセツサ |
JP2928684B2 (ja) | 1991-10-31 | 1999-08-03 | 株式会社東芝 | Vliw型演算処理装置 |
US5787303A (en) | 1991-10-31 | 1998-07-28 | Kabushiki Kaisha Toshiba | Digital computer system capable of processing a plurality of instructions in parallel based on a VLIW architecture |
JP3569338B2 (ja) | 1995-02-24 | 2004-09-22 | 富士通株式会社 | 並列処理プロセッサ |
US5758114A (en) * | 1995-04-12 | 1998-05-26 | Advanced Micro Devices, Inc. | High speed instruction alignment unit for aligning variable byte-length instructions according to predecode information in a superscalar microprocessor |
JP2931890B2 (ja) | 1995-07-12 | 1999-08-09 | 三菱電機株式会社 | データ処理装置 |
US5787302A (en) * | 1996-05-15 | 1998-07-28 | Philips Electronic North America Corporation | Software for producing instructions in a compressed format for a VLIW processor |
US5852741A (en) * | 1996-05-15 | 1998-12-22 | Philips Electronics North America Corporation | VLIW processor which processes compressed instruction format |
US5941980A (en) * | 1996-08-05 | 1999-08-24 | Industrial Technology Research Institute | Apparatus and method for parallel decoding of variable-length instructions in a superscalar pipelined data processing system |
JPH1074145A (ja) | 1996-08-30 | 1998-03-17 | Oki Electric Ind Co Ltd | 命令供給装置 |
US5870576A (en) | 1996-12-16 | 1999-02-09 | Hewlett-Packard Company | Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures |
JPH10232779A (ja) | 1997-01-24 | 1998-09-02 | Texas Instr Inc <Ti> | 命令並列処理方法及び装置 |
US5881307A (en) * | 1997-02-24 | 1999-03-09 | Samsung Electronics Co., Ltd. | Deferred store data read with simple anti-dependency pipeline inter-lock control in superscalar processor |
JP3790607B2 (ja) * | 1997-06-16 | 2006-06-28 | 松下電器産業株式会社 | Vliwプロセッサ |
IL135953A0 (en) * | 1997-11-07 | 2001-05-20 | Bops Inc | Methods and apparatus for efficient synchronous mimd operations with ivliw pe-to-pe communication |
US6173389B1 (en) * | 1997-12-04 | 2001-01-09 | Billions Of Operations Per Second, Inc. | Methods and apparatus for dynamic very long instruction word sub-instruction selection for execution time parallelism in an indirect very long instruction word processor |
JP3451921B2 (ja) | 1998-03-30 | 2003-09-29 | 松下電器産業株式会社 | プロセッサ |
US6738892B1 (en) * | 1999-10-20 | 2004-05-18 | Transmeta Corporation | Use of enable bits to control execution of selected instructions |
-
1999
- 1999-10-01 JP JP28195799A patent/JP3730455B2/ja not_active Expired - Fee Related
-
2000
- 2000-09-01 US US09/654,527 patent/US7401204B1/en not_active Expired - Fee Related
- 2000-09-05 DE DE60045208T patent/DE60045208D1/de not_active Expired - Lifetime
- 2000-09-05 EP EP00307646A patent/EP1089168B1/en not_active Expired - Lifetime
- 2000-09-28 KR KR1020000056946A patent/KR100689717B1/ko not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002323982A (ja) * | 2001-04-25 | 2002-11-08 | Fujitsu Ltd | 命令処理方法 |
US7647473B2 (en) | 2001-04-25 | 2010-01-12 | Fujitsu Limited | Instruction processing method for verifying basic instruction arrangement in VLIW instruction for variable length VLIW processor |
JP4542722B2 (ja) * | 2001-04-25 | 2010-09-15 | 富士通株式会社 | 命令処理方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1089168B1 (en) | 2010-11-10 |
JP3730455B2 (ja) | 2006-01-05 |
KR100689717B1 (ko) | 2007-03-09 |
EP1089168A2 (en) | 2001-04-04 |
US7401204B1 (en) | 2008-07-15 |
DE60045208D1 (de) | 2010-12-23 |
KR20010050693A (ko) | 2001-06-15 |
EP1089168A3 (en) | 2001-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5530817A (en) | Very large instruction word type computer for performing a data transfer between register files through a signal line path | |
US7395414B2 (en) | Dynamic recalculation of resource vector at issue queue for steering of dependent instructions | |
EP0740249A1 (en) | Data processing device with coprocessor | |
JPH06236273A (ja) | スーパースカラ・プロセッサ・システムにおいて複数命令を単一サイクルでディスパッチするための方法およびシステム | |
KR102334341B1 (ko) | 저장 융합 시스템 및 방법 | |
JPH11272464A (ja) | 投機的境界不整列ロ―ド操作方法及び装置 | |
CN101802779A (zh) | 具有可重新组构的浮点单元的处理器 | |
US10437594B2 (en) | Apparatus and method for transferring a plurality of data structures between memory and one or more vectors of data elements stored in a register bank | |
JPH06242954A (ja) | 独立にアクセスされる中間記憶域を利用してスーパースカラ・プロセッサ・システムにおける命令ディスパッチを改善する方法およびシステム | |
RU2142157C1 (ru) | Способ функционирования системы обработки | |
JPH06242955A (ja) | スーパースカラ・プロセッサ・システムにおける中間記憶バッファの割当てをインデックスする方法およびシステム | |
US7774582B2 (en) | Result bypassing to override a data hazard within a superscalar processor | |
JP3730455B2 (ja) | 情報処理装置及び情報処理方法 | |
US6594753B2 (en) | Method and apparatus for dual issue of program instructions to symmetric multifunctional execution units | |
JPH06236267A (ja) | スーパースカラ・プロセッサ・システムにおける命令ディスパッチ効率を向上させる方法およびシステム | |
US6622238B1 (en) | System and method for providing predicate data | |
JPH06236275A (ja) | スーパースカラ・プロセッサ・システムにおける非逐次命令ディスパッチおよび実行のための方法およびシステム | |
KR100431975B1 (ko) | 분기에의한중단이없는파이프라인방식의마이크로프로세서를위한다중명령디스패치시스템 | |
US6115730A (en) | Reloadable floating point unit | |
KR19980079726A (ko) | 프로세서에 저장 인스트럭션을 전송하는 시스템 및 방법 | |
JPH0461390B2 (ja) | ||
JPH06236272A (ja) | スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム | |
CN101539849B (zh) | 一种处理器以及一种寄存器选通方法 | |
JP2875864B2 (ja) | パイプライン処理方式 | |
JPH04104350A (ja) | マイクロプロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050419 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050617 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050712 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050909 |
|
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: 20051004 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051006 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081014 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091014 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091014 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101014 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101014 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111014 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111014 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121014 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121014 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131014 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |