JPH0361225B2 - - Google Patents
Info
- Publication number
- JPH0361225B2 JPH0361225B2 JP26024485A JP26024485A JPH0361225B2 JP H0361225 B2 JPH0361225 B2 JP H0361225B2 JP 26024485 A JP26024485 A JP 26024485A JP 26024485 A JP26024485 A JP 26024485A JP H0361225 B2 JPH0361225 B2 JP H0361225B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- registers
- input
- waiting
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔目次〕
概要
産業上の利用分野
従来の技術
発明が解決しようとする問題点
問題点を解決するための手段
作用
実施例
発明の効果
〔概要〕
複数個の演算処理部、又は1個乃至複数個のメ
モリアクセス処理部を含む複数個の演算処理部を
持つデータ処理装置において、命令発信制御部の
近傍に、命令投入部で選択された命令のコピーを
格納する発信待機レジスタQXを設け、各命令の
処理サイクルの次のサイクルで発信条件を判定す
る命令を選択して格納するように制御することに
より、発信制御を、上記発信待機レジスタQXの
内容のみで行うようにしたものである。
モリアクセス処理部を含む複数個の演算処理部を
持つデータ処理装置において、命令発信制御部の
近傍に、命令投入部で選択された命令のコピーを
格納する発信待機レジスタQXを設け、各命令の
処理サイクルの次のサイクルで発信条件を判定す
る命令を選択して格納するように制御することに
より、発信制御を、上記発信待機レジスタQXの
内容のみで行うようにしたものである。
本発明は、データ処理装置、例えば、ベクトル
データ処理装置において、後発の命令を先発の命
令より先に実行できるようにした命令制御方式に
関する。
データ処理装置において、後発の命令を先発の命
令より先に実行できるようにした命令制御方式に
関する。
最近の半導体技術の著しい進歩に伴つて、デー
タ処理装置の大きな機能ブロツクが、1つのチツ
プ、或いはプリント板内に高集積化されるように
なつてきた。
タ処理装置の大きな機能ブロツクが、1つのチツ
プ、或いはプリント板内に高集積化されるように
なつてきた。
又、該データ処理装置を高速化する為に、マシ
ンサイクルを短くする動向にあり、該チツプ、或
いはプリント板間での論理遅延が、当該データ処
理装置の処理能力に影響を与えるようになつてき
た。
ンサイクルを短くする動向にあり、該チツプ、或
いはプリント板間での論理遅延が、当該データ処
理装置の処理能力に影響を与えるようになつてき
た。
一方、複数の演算パイプライン、又は、1つ乃
至複数個のメモリアクセスパイプラインを含む演
算パイプラインを備えたベクトルデータ処理装置
においては、1つのベクトル命令で、多量のデー
タについての処理を行う為、複数のベクトル命令
間において、該命令の順序性を守る要因がなけれ
ば、後続の命令を先行して実行させることによ
り、該ベクトルデータ処理装置全体の処理能力を
大幅に向上させることができる。
至複数個のメモリアクセスパイプラインを含む演
算パイプラインを備えたベクトルデータ処理装置
においては、1つのベクトル命令で、多量のデー
タについての処理を行う為、複数のベクトル命令
間において、該命令の順序性を守る要因がなけれ
ば、後続の命令を先行して実行させることによ
り、該ベクトルデータ処理装置全体の処理能力を
大幅に向上させることができる。
このようなベクトルデータ処理装置において
は、命令制御部が、大きく分けて命令投入部と、
命令発信部とから構成されており、命令投入部の
待ち合わせレジスタQ1,Q2中にある命令を選択
して、命令発信部に送り、先行命令と比較して発
信条件を判定した後、該発信を妨げる要因がなけ
れば、該ベクトル命令を命令発信部に取り込み、
関連する演算部を起動するような命令制御を行つ
ている。(後述の特開昭57−161938号公報参照) この場合、上記命令投入部と、命令発信部と
が、別々のチツプ、或いはプリント板に収容され
ている場合には、命令投入部から命令発信部への
データの転送に伴う論理遅延や、命令投入部にお
ける前述の待ち合わせレジスタQ1,Q2の何れか
を選択する為の選択回路の論理段数による論理遅
延のため、当該命令の発信制御に時間がかかり、
命令投入部の命令が発信されるのが遅くなつてし
まうと云う問題があつた。
は、命令制御部が、大きく分けて命令投入部と、
命令発信部とから構成されており、命令投入部の
待ち合わせレジスタQ1,Q2中にある命令を選択
して、命令発信部に送り、先行命令と比較して発
信条件を判定した後、該発信を妨げる要因がなけ
れば、該ベクトル命令を命令発信部に取り込み、
関連する演算部を起動するような命令制御を行つ
ている。(後述の特開昭57−161938号公報参照) この場合、上記命令投入部と、命令発信部と
が、別々のチツプ、或いはプリント板に収容され
ている場合には、命令投入部から命令発信部への
データの転送に伴う論理遅延や、命令投入部にお
ける前述の待ち合わせレジスタQ1,Q2の何れか
を選択する為の選択回路の論理段数による論理遅
延のため、当該命令の発信制御に時間がかかり、
命令投入部の命令が発信されるのが遅くなつてし
まうと云う問題があつた。
このような事情から、命令投入部と、命令発信
部との間の命令制御タイミングは同じにして、且
つ命令投入部と、命令発信部との間のブロツク間
転送の存在を見掛け上見えないようにして、当該
ベクトルデータ処理装置の処理能力を向上させる
命令制御方式が要求されるようになつてきた。
部との間の命令制御タイミングは同じにして、且
つ命令投入部と、命令発信部との間のブロツク間
転送の存在を見掛け上見えないようにして、当該
ベクトルデータ処理装置の処理能力を向上させる
命令制御方式が要求されるようになつてきた。
一般に、複数のエレメントを有する第2オペラ
ンドA(a0,a1,…ao-1)と、複数のエレメント
を有する第3オペランドB(b0,b1,……bo-1)
とで、対応するエレメント同志に演算を施し、演
算結果の第1オペランドC(c1,C1,……co-1)
(ここで、C=A+Bなる演算を施すならば、ci
=ai+bi)を得るデータ処理装置は、 ベクトルデータ処理装置と呼ばれている。
ンドA(a0,a1,…ao-1)と、複数のエレメント
を有する第3オペランドB(b0,b1,……bo-1)
とで、対応するエレメント同志に演算を施し、演
算結果の第1オペランドC(c1,C1,……co-1)
(ここで、C=A+Bなる演算を施すならば、ci
=ai+bi)を得るデータ処理装置は、 ベクトルデータ処理装置と呼ばれている。
これに対して、エレメントが1個(n=1)に
限定された従来の汎用処理装置はスラカー処理装
置と呼ばれている。
限定された従来の汎用処理装置はスラカー処理装
置と呼ばれている。
第3図はベクトルデータ処理装置の概要を示し
た図であつて、実線の矢印データの流れを示し、
点線の矢印は制御信号の流れを示している。
た図であつて、実線の矢印データの流れを示し、
点線の矢印は制御信号の流れを示している。
先ず、ストア制御部4はベクトル・レジスタ6
からのデータを主記憶装置MS1に格納する為の
ものであり、ロード処理部5は主記憶装置MS1
からデータを読み出して、ベクトル・レジスタ6
に格納する為のものである。
からのデータを主記憶装置MS1に格納する為の
ものであり、ロード処理部5は主記憶装置MS1
からデータを読み出して、ベクトル・レジスタ6
に格納する為のものである。
該ベクトル・レジスタ6は、複数のエレメント
よりなるベクトルデータを保持するベクトル・レ
ジスタを複数個有している。
よりなるベクトルデータを保持するベクトル・レ
ジスタを複数個有している。
上記ストア処理部4、ロード処理部5、乗算器
MP7、及び加算器AD8はパイプライン構造の
ものである。
MP7、及び加算器AD8はパイプライン構造の
ものである。
命令制御部9は、ベクトル・レジスタ6や、ス
トア処理部4、ロード処理部5、乗算器MP7、
加算器AD8等を制御する。
トア処理部4、ロード処理部5、乗算器MP7、
加算器AD8等を制御する。
上記ストア処理部4、ロード処理部5、乗算器
MP7、加算器AD8を含めて演算処理部と称す
る。
MP7、加算器AD8を含めて演算処理部と称す
る。
又、ベクトル命令は命令コード、第1オペラン
ド指定部、第2オペランド指定部、及び第3オペ
ランド指定部を有しており、例えば、ベクトル乗
算命令は、 VM 1,2,3 で表される。これは、ベクトル・レジスタ2の内
容と、ベクトル・レジスタ3の内容とを乗算し、
該乗算結果をベクトル・レジスタ1に格納するも
である。
ド指定部、第2オペランド指定部、及び第3オペ
ランド指定部を有しており、例えば、ベクトル乗
算命令は、 VM 1,2,3 で表される。これは、ベクトル・レジスタ2の内
容と、ベクトル・レジスタ3の内容とを乗算し、
該乗算結果をベクトル・レジスタ1に格納するも
である。
ベクトル加算命令は、
VA 4,5,1
で表される。これは、ベクトル・レジスタ5の内
容と、ベクトル・レジスタ1の内容を加算し、該
加算結果をベクトル・レジスタ4に格納するもの
である。
容と、ベクトル・レジスタ1の内容を加算し、該
加算結果をベクトル・レジスタ4に格納するもの
である。
一般に、ベクトル命令を処理する場合には、乗
算器MP7や、加算器AD8等をパイプライン構
造とし、先行しているエレメントの演算処理が完
了する前に、後続のエレメントを該演算パイプラ
インに投入するようにしている。
算器MP7や、加算器AD8等をパイプライン構
造とし、先行しているエレメントの演算処理が完
了する前に、後続のエレメントを該演算パイプラ
インに投入するようにしている。
第4図は加算器ADにおけるベクトル加算命令
の処理状況を示した図であつて、a図に示すよう
に、 データの読み出し(READ) 両オペランドの指数比較(COMPARE) 指数合わせのためのシフト(PRE SHUFT) 加算(ADD) 加算後の正規化のためのシフト(POST
SHIFT) データの書き込み(WRITE) の6段階のパイプラインとなる。このような命令
処理は本図bのように平行四辺形で表され、縦方
向は上記のパイプラインの各段階を示し、横方向
は当該ベクトル加算命令で処理されるエレメント
数を示している。
の処理状況を示した図であつて、a図に示すよう
に、 データの読み出し(READ) 両オペランドの指数比較(COMPARE) 指数合わせのためのシフト(PRE SHUFT) 加算(ADD) 加算後の正規化のためのシフト(POST
SHIFT) データの書き込み(WRITE) の6段階のパイプラインとなる。このような命令
処理は本図bのように平行四辺形で表され、縦方
向は上記のパイプラインの各段階を示し、横方向
は当該ベクトル加算命令で処理されるエレメント
数を示している。
今、 VM 1,2,3
VA 4,5,1
VA 7,8,9
と云うベクトル命令列があつたとする。
このときの通常の処理では、第5図のベクトル
命令列の通常の処理を示す図に示した如くに処理
される。但し、ベクトル乗算命令は、11段階のパ
イプラインであり、エレメント数は8であるとす
る。本図において、の「VA 4,5,1」が
時刻=11から始まつているのは、該「VA 4,
5,1」がの「VM 1,2,3」の結果デー
タを使用しているからであり、少なくとも、第1
エレメントの乗算が完了しないと、当該加算を開
始することができないことによる。
命令列の通常の処理を示す図に示した如くに処理
される。但し、ベクトル乗算命令は、11段階のパ
イプラインであり、エレメント数は8であるとす
る。本図において、の「VA 4,5,1」が
時刻=11から始まつているのは、該「VA 4,
5,1」がの「VM 1,2,3」の結果デー
タを使用しているからであり、少なくとも、第1
エレメントの乗算が完了しないと、当該加算を開
始することができないことによる。
の「VA 7,8,9」は先行のベクトル命
令とは、ベクトル・レジスタの干渉がないので、
の「VA 4,5,1」の前に先行して実行さ
せることにより、命令処理時間を短縮させること
ができる。
令とは、ベクトル・レジスタの干渉がないので、
の「VA 4,5,1」の前に先行して実行さ
せることにより、命令処理時間を短縮させること
ができる。
第6図は後発のベクトル命令を先行のベクトル
命令より先に実行させた場合の命令処理を示した
図であつて、命令処理時間の短縮状態を良く示し
ている。
命令より先に実行させた場合の命令処理を示した
図であつて、命令処理時間の短縮状態を良く示し
ている。
具体的には、第6図の例では、第5図の通常の
処理形態に比較して、命令処理時間が9サイクル
短くなつていることが分かる。(例えば、37サイ
クルから28サイクル) このように、プログラムで指示されたベクトル
命令の実行順序をを変更するように制御すると、
ベクトルデータ処理装置の処理能力は大幅に向上
することになる。
処理形態に比較して、命令処理時間が9サイクル
短くなつていることが分かる。(例えば、37サイ
クルから28サイクル) このように、プログラムで指示されたベクトル
命令の実行順序をを変更するように制御すると、
ベクトルデータ処理装置の処理能力は大幅に向上
することになる。
そこで、改良されたベクトルデータ処理装置に
おける命令制御方式が、特開昭57−161938号公報
に開示されている。
おける命令制御方式が、特開昭57−161938号公報
に開示されている。
第7図は改良された命令制御部の一実施例をブ
ロツク図で示した図であつて、第8図は命令の追
い越しが行われる場合の動作をタイムチヤートで
示した図である。
ロツク図で示した図であつて、第8図は命令の追
い越しが行われる場合の動作をタイムチヤートで
示した図である。
先ず、フエツチレジスタF10には、主記憶装
置MS1から取り出された命令情報がセツトされ
る。Q1,Q2投入制御回路11はレジスタ干渉チ
エツク回路13−1,及び13−2が、レジスタ
干渉なしを示していること等を条件として、上記
フエツチレジスタF10の命令情報を待ち合わせ
レジスタQ1,12−1,又はQ2,12−2へ移
す。
置MS1から取り出された命令情報がセツトされ
る。Q1,Q2投入制御回路11はレジスタ干渉チ
エツク回路13−1,及び13−2が、レジスタ
干渉なしを示していること等を条件として、上記
フエツチレジスタF10の命令情報を待ち合わせ
レジスタQ1,12−1,又はQ2,12−2へ移
す。
セレクタSEL14は、1サイクル毎に制御信号
の値を反転する選択制御回路19からの制御信号
に従つて、上記待ち合わせレジスタQ1,12−
1,又はQ2,12−2の何れかを交互に選択す
る。
の値を反転する選択制御回路19からの制御信号
に従つて、上記待ち合わせレジスタQ1,12−
1,又はQ2,12−2の何れかを交互に選択す
る。
次に、命令発信制御回路15は、レジスタ干渉
チエツク回路18−1,及び18−2の双方が、
レジスタ干渉なしを示していること等を条件とし
て、セレクタSEL14の出力がベクトル加算命令
のときには、この命令情報を加算レジスタAR1
7に、該セレクタSEL14の出力がベクトル乗算
命令のときには、この命令情報を乗算レジスタ
MR16に移し、これと同時に演算処理部起動情
報を送出する。
チエツク回路18−1,及び18−2の双方が、
レジスタ干渉なしを示していること等を条件とし
て、セレクタSEL14の出力がベクトル加算命令
のときには、この命令情報を加算レジスタAR1
7に、該セレクタSEL14の出力がベクトル乗算
命令のときには、この命令情報を乗算レジスタ
MR16に移し、これと同時に演算処理部起動情
報を送出する。
このような、命令制御部9において、ベクトル
命令の追い越しが行われる場合の動作をタイムチ
ヤートで示したものが、第8図である。
命令の追い越しが行われる場合の動作をタイムチ
ヤートで示したものが、第8図である。
本図において、「VM 1,2,3」なる命令情
報は、時刻T=0において、フエツチレジスタF
10にセツトされ、時刻T=1で待ち合わせレジ
スタQ1,12−1に移され、T=2で乗算レジ
スタMR16に移されることにより、乗算が開始
される。この時、乗算開始と同時にWRITE開始
前フラグが“オン”にセツトされ、ベクトル・レ
ジスタ6への演算結果の書き込みが開始されると
“オン”にリセツトされる。
報は、時刻T=0において、フエツチレジスタF
10にセツトされ、時刻T=1で待ち合わせレジ
スタQ1,12−1に移され、T=2で乗算レジ
スタMR16に移されることにより、乗算が開始
される。この時、乗算開始と同時にWRITE開始
前フラグが“オン”にセツトされ、ベクトル・レ
ジスタ6への演算結果の書き込みが開始されると
“オン”にリセツトされる。
「VA 4,5,1」なる命令情報は、時刻T
=1でフエツチレジスタF10にセツトされ、時
刻T=2で待ち合わせレジスタQ2,12−2に
セツトされる。
=1でフエツチレジスタF10にセツトされ、時
刻T=2で待ち合わせレジスタQ2,12−2に
セツトされる。
この場合、命令発信制御回路15において、命
令発信条件が検査されるが、乗算レジスタMR1
6に保持されている「VM 1,2,3」の第1
オペランドレジスタと、上記待ち合わせレジスタ
Q2,12−2に保持されている上記「VA 4,
5,1」の第3オペランドレジスタとがレジスタ
干渉を起こしているので、該待ち合わせレジスタ
Q2,12−2に保持されている「VA 4,5,
1」命令の発信は待たされるように機能する。
令発信条件が検査されるが、乗算レジスタMR1
6に保持されている「VM 1,2,3」の第1
オペランドレジスタと、上記待ち合わせレジスタ
Q2,12−2に保持されている上記「VA 4,
5,1」の第3オペランドレジスタとがレジスタ
干渉を起こしているので、該待ち合わせレジスタ
Q2,12−2に保持されている「VA 4,5,
1」命令の発信は待たされるように機能する。
時刻T=2で、「VA 7,8,9」なる命令が
フエツチレジスタF10にセツトされると、待ち
合わせレジスタQ2,12−2に保持されている
「VA 4,5,1」命令と、フエツチレジスタF
10に保持されている上記「VA 7,8,9」
命令との間には、レジスタ干渉がないので、時刻
T=3において、「VA 7,8,9」命令が待ち
合わせレジスタQ1,12−1に移され、且つ命
令の発信を妨げる要因がないので、時刻T=4に
おいて、該「VA 7,8,9」命令は、加算レ
ジスタAR17に移されると共に、加算器AD8
に対して加算処理の起動をかけるように動作す
る。
フエツチレジスタF10にセツトされると、待ち
合わせレジスタQ2,12−2に保持されている
「VA 4,5,1」命令と、フエツチレジスタF
10に保持されている上記「VA 7,8,9」
命令との間には、レジスタ干渉がないので、時刻
T=3において、「VA 7,8,9」命令が待ち
合わせレジスタQ1,12−1に移され、且つ命
令の発信を妨げる要因がないので、時刻T=4に
おいて、該「VA 7,8,9」命令は、加算レ
ジスタAR17に移されると共に、加算器AD8
に対して加算処理の起動をかけるように動作す
る。
このようにして、後発命令の先行命令に対する
追い越しが行われる。
追い越しが行われる。
上記の特開昭57−161938号公報には、他の追い
越し方式も開示されているが、次に述べる問題点
に関しては条件を示すので、ここでは省略する。
越し方式も開示されているが、次に述べる問題点
に関しては条件を示すので、ここでは省略する。
従つて、従来の命令制御方式においては、命令
の発信制御はかなり複雑な論理が必要となる為、
上記命令発信制御回路15の論理段数が多くなる
と云う問題があつた。
の発信制御はかなり複雑な論理が必要となる為、
上記命令発信制御回路15の論理段数が多くなる
と云う問題があつた。
又、回路を構成する物量も多くなるので、第7
図で示した命令投入部と、命令発信部とを、互い
に離れた別々のブロツク(例えば、別々のチツプ
とか、プリント板)に分けて構成する必要が出て
くる。
図で示した命令投入部と、命令発信部とを、互い
に離れた別々のブロツク(例えば、別々のチツプ
とか、プリント板)に分けて構成する必要が出て
くる。
このようにすると、信号の遅延時間を伸ばす原
因となつて、命令発信制御を、前述の命令投入か
ら命令発信迄の1マシンサイクルの間で済ますこ
とが困難となり、ひいては、該マシンサイクルの
増加を余儀なくされる場合も生じてくる。
因となつて、命令発信制御を、前述の命令投入か
ら命令発信迄の1マシンサイクルの間で済ますこ
とが困難となり、ひいては、該マシンサイクルの
増加を余儀なくされる場合も生じてくる。
特に、発信条件の判定の前に、待ち合わせレジ
スタQ1,Q2,12−1,12−2中の命令情報
を、セレクタSEL14を通してブロツク間の転送
を行い、命令発信制御回路15へ送出する迄の遅
延時間がネツクになる。
スタQ1,Q2,12−1,12−2中の命令情報
を、セレクタSEL14を通してブロツク間の転送
を行い、命令発信制御回路15へ送出する迄の遅
延時間がネツクになる。
本発明は上記従来の欠点に鑑み、命令投入部の
待ち合わせレジスタQ1,Q2から命令発信制御回
路迄の論理遅延のネツクを解消する方法を提供す
ることを目的とするものである。
待ち合わせレジスタQ1,Q2から命令発信制御回
路迄の論理遅延のネツクを解消する方法を提供す
ることを目的とするものである。
第1図は、本発明の概念を示した図であり、第
2図が本発明の一実施例の概念をブロツク図で示
した図である。
2図が本発明の一実施例の概念をブロツク図で示
した図である。
本発明においては、発信待機レジスタQX20
を命令発信制御回路15の近傍、例えば、直前に
設けると共に、Q1,Q2投入制御回路11の出力
をセレクタSEL14にバイパスするルートを設け
るように構成し、QX入力選択制御回路21が、
各々の条件に対して以下のような制御を、セレク
タSEL14で行うようにする。
を命令発信制御回路15の近傍、例えば、直前に
設けると共に、Q1,Q2投入制御回路11の出力
をセレクタSEL14にバイパスするルートを設け
るように構成し、QX入力選択制御回路21が、
各々の条件に対して以下のような制御を、セレク
タSEL14で行うようにする。
(a) 選択制御回路19が待ち合わせレジスタQ1
(以下、Q1レジスタと云う)12−1を選択す
る1サイクル前のタイミングに、Q1,Q2投入
制御回路11がQ1レジスタ12−1に命令を
投入するとき、フエツチレジスタ(以下、Fレ
ジスタて云う)10の命令情報を選択し、該命
令がQ1レジスタ12−1にセツトされると同
時に、発信待機レジスタ(以下、QXレジスタ
と云う)20もセツトするように制御する。
(以下、Q1レジスタと云う)12−1を選択す
る1サイクル前のタイミングに、Q1,Q2投入
制御回路11がQ1レジスタ12−1に命令を
投入するとき、フエツチレジスタ(以下、Fレ
ジスタて云う)10の命令情報を選択し、該命
令がQ1レジスタ12−1にセツトされると同
時に、発信待機レジスタ(以下、QXレジスタ
と云う)20もセツトするように制御する。
但し、Q1レジスタ12−1にセツトされな
いときには、QXレジスタ20にもセツトしな
い。
いときには、QXレジスタ20にもセツトしな
い。
(b) 選択制御回路19がQ1レジスタ12−1を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入しないときには、該Q1レジスタ1
2−1をQXレジスタ20にセツトする。
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入しないときには、該Q1レジスタ1
2−1をQXレジスタ20にセツトする。
(c) 選択制御回路19が待ち合わせレジスタQ2
(以下、レジスタと云う)12−2を選択する
1サイクル前のタイミングに、Q1,Q2投入制
御回路11がQ2レジスタ12−2に命令を投
入するとき、Fレジスタ10の命令情報を選択
し、該命令がQ2レジスタ12−2にセツトさ
れると同時に、QXレジスタ20にもセツトす
るように制御する。
(以下、レジスタと云う)12−2を選択する
1サイクル前のタイミングに、Q1,Q2投入制
御回路11がQ2レジスタ12−2に命令を投
入するとき、Fレジスタ10の命令情報を選択
し、該命令がQ2レジスタ12−2にセツトさ
れると同時に、QXレジスタ20にもセツトす
るように制御する。
但し、Q2レジスタ12−2にセツトされな
いときには、QXレジスタ20にもセツトしな
い。
いときには、QXレジスタ20にもセツトしな
い。
(d) 選択制御回路19がQ2レジスタ12−2を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入しないときには、該Q2レジスタ1
2−2をQXレジスタ20にセツトする。
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入しないときには、該Q2レジスタ1
2−2をQXレジスタ20にセツトする。
以上の動作を概念的に示したものが、第1図で
あつて、横軸のF,Q2,Q1,QX,MR,ARは
前述の各レジスタを示しており、縦軸のT1〜各
時刻を示しており、〜は命令情報を示してい
る。そして、備考欄の(a)〜が上記制御条件に対応
している。
あつて、横軸のF,Q2,Q1,QX,MR,ARは
前述の各レジスタを示しており、縦軸のT1〜各
時刻を示しており、〜は命令情報を示してい
る。そして、備考欄の(a)〜が上記制御条件に対応
している。
本図から明らかな如く、本発明を実施した場合
には、命令発信部から見たときの、QXレジスタ
20の内容は、前述の選択制御回路19が選択し
たQ1レジスタ12−1、或いはQ2レジスタ12
−2の内容と全く一致しており、且つタイミング
的にも、遅延が見られないと云う特徴がある。
には、命令発信部から見たときの、QXレジスタ
20の内容は、前述の選択制御回路19が選択し
たQ1レジスタ12−1、或いはQ2レジスタ12
−2の内容と全く一致しており、且つタイミング
的にも、遅延が見られないと云う特徴がある。
以上のように制御すれば、どのような場合で
も、1マシンサイクル毎に、QXレジスタ20に
は、Q1レジスタ12−1,又はQ2レジスタ12
−2の命令のコピーが交互にセツトされることが
分かる。
も、1マシンサイクル毎に、QXレジスタ20に
は、Q1レジスタ12−1,又はQ2レジスタ12
−2の命令のコピーが交互にセツトされることが
分かる。
つまり、QXレジスタ20からの出力は、論理
的にはセレクタSEL14の出力と同じであり、且
つタイミング的にも同じである。
的にはセレクタSEL14の出力と同じであり、且
つタイミング的にも同じである。
従つて、セレクタSEL14と、ブロツク間転送
の遅延時間が見えない分だけ、命令発信問題の高
速化が図れることになる。
の遅延時間が見えない分だけ、命令発信問題の高
速化が図れることになる。
即ち、本発明によれば、複数個の演算処理部、
又は1個乃至複数個のメモリアクセス処理部を含
む複数個の演算処理部を持つデータ処理装置にお
いて、命令発信制御部の近傍に、命令投入部で選
択された命令のコピーを格納する発信待機レジス
タQXを設け、各命令の処理サイクルの次のサイ
クルで発信条件を判定する命令を選択して格納す
るように制御することにより、発信制御を、上記
発信待機レジスタQXの内容のみで行うようにし
たものであるので、命令投入部から命令発信部迄
のブロツク間転送を意識する必要がなく、命令発
信制御の高速化が図れる効果がある。
又は1個乃至複数個のメモリアクセス処理部を含
む複数個の演算処理部を持つデータ処理装置にお
いて、命令発信制御部の近傍に、命令投入部で選
択された命令のコピーを格納する発信待機レジス
タQXを設け、各命令の処理サイクルの次のサイ
クルで発信条件を判定する命令を選択して格納す
るように制御することにより、発信制御を、上記
発信待機レジスタQXの内容のみで行うようにし
たものであるので、命令投入部から命令発信部迄
のブロツク間転送を意識する必要がなく、命令発
信制御の高速化が図れる効果がある。
以下本発明の実施例を図面によつて詳述する。
前述の第2図は、本発明の一実施例の概略をブ
ロツク図で示した図であつて、投入制御回路11
からセレクタSEL14に対する命令情報のバイパ
ス通路と、QX入力選択制御回路21、発信待機
レジスタQX20が本発明を実施するのに必要な
機能ブロツクである。尚、全図を通して、同じ符
号は同じ対象物を示している。又、本実施例にお
いては、説明の便宜上、本発明に直接関係しない
レジスタ干渉チエツク回路は省略してある。
ロツク図で示した図であつて、投入制御回路11
からセレクタSEL14に対する命令情報のバイパ
ス通路と、QX入力選択制御回路21、発信待機
レジスタQX20が本発明を実施するのに必要な
機能ブロツクである。尚、全図を通して、同じ符
号は同じ対象物を示している。又、本実施例にお
いては、説明の便宜上、本発明に直接関係しない
レジスタ干渉チエツク回路は省略してある。
本発明を実施しても、命令の発信制御の動作も
のものは従来と変わることはないので省略し、こ
こでは、本発明のポイントである。QXレジスタ
20に対する命令情報のセツト方式を中心に説明
する。
のものは従来と変わることはないので省略し、こ
こでは、本発明のポイントである。QXレジスタ
20に対する命令情報のセツト方式を中心に説明
する。
先ず、選択制御回路19は従来と同じようにし
て、Q1レジスタ12−1と、Q2レジスタ12−
2を交互に選択する選択信号Sを発生し、その選
択信号Sと、Q1,Q2発信制御回路11からの、
上記Q1レジスタ12−1又は、Q2レジスタ12
−2の何れに、Fレジスタ10からの命令情報を
投入したかを示す信号Tとに基づいて、QX入力
選択制御回路21が、セレクタSEL10に対し
て、次のような制御を行う。即ち、 (a) 選択制御回路19がQ1レジスタ12−1を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入するとき、Fレジスタ10の命令情
報を選択し、該命令がQ1レジスタ12−1に
セツトされると同時に、上記バイパスルートを
通してQXレジスタ20にもセツトするように
制御する。
て、Q1レジスタ12−1と、Q2レジスタ12−
2を交互に選択する選択信号Sを発生し、その選
択信号Sと、Q1,Q2発信制御回路11からの、
上記Q1レジスタ12−1又は、Q2レジスタ12
−2の何れに、Fレジスタ10からの命令情報を
投入したかを示す信号Tとに基づいて、QX入力
選択制御回路21が、セレクタSEL10に対し
て、次のような制御を行う。即ち、 (a) 選択制御回路19がQ1レジスタ12−1を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入するとき、Fレジスタ10の命令情
報を選択し、該命令がQ1レジスタ12−1に
セツトされると同時に、上記バイパスルートを
通してQXレジスタ20にもセツトするように
制御する。
但し、Q1レジスタ12−1にセツトされな
いときには、QXレジスタ20にもセツトしな
い。
いときには、QXレジスタ20にもセツトしな
い。
(b) 選択制御回路19がQ1レジスタ12−1を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入しないときには、該Q1レジスタ1
2−1のみをQXレジスタ20にセツトする。
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ1レジスタ12−1に
命令を投入しないときには、該Q1レジスタ1
2−1のみをQXレジスタ20にセツトする。
(c) 選択制御回路19がQ2レジスタ12−2を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入するとき、Fレジスタ10の命令情
報を選択し、該命令がQ2レジスタ12−2に
セツトされると同時に、上記バイパスルートを
通してQXレジスタ20にもセツトするように
制御する。
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入するとき、Fレジスタ10の命令情
報を選択し、該命令がQ2レジスタ12−2に
セツトされると同時に、上記バイパスルートを
通してQXレジスタ20にもセツトするように
制御する。
但し、Q2レジスタ12−2にセツトされな
いときには、QXレジスタ20にもセツトしな
い。
いときには、QXレジスタ20にもセツトしな
い。
(d) 選択制御回路19がQ2レジスタ12−2を
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入しないときには、該Q2レジスタ1
2−2のみをQXレジスタ20にセツトする。
選択する1サイクル前のタイミングに、Q1,
Q2投入制御回路11がQ2レジスタ12−2に
命令を投入しないときには、該Q2レジスタ1
2−2のみをQXレジスタ20にセツトする。
ここで、Q1レジスタ12−1を選択する1
サイクル前のタイミング、又はQ2レジスタ1
2−2を選択する1サイクル前のタイミングで
あることを知ることは、上記選択信号Sの否定
をとることによつて可能である。
サイクル前のタイミング、又はQ2レジスタ1
2−2を選択する1サイクル前のタイミングで
あることを知ることは、上記選択信号Sの否定
をとることによつて可能である。
このように、本発明においては、QXレジスタ
からの出力を、論理的に、セレクタSEL14の出
力と同じとすると共に、タイミング的にも同じと
した所に特徴がある。
からの出力を、論理的に、セレクタSEL14の出
力と同じとすると共に、タイミング的にも同じと
した所に特徴がある。
以上、詳細に説明したように、本発明の命令制
御方式は、複数個の演算処理部、又は1個乃至複
数個のメモリアクセス処理部を含む複数個の演算
処理部を持つデータ処理装置において、命令発信
制御部の近傍に、命令投入部で選択された命令の
コピーを格納する発信待機レジスタQXを設け、
各命令の処理サイクルの次のサイクルで発信条件
を判定する命令を選択して格納するように制御す
ることにより、発信制御を、上記発信待機レジス
タQXの内容のみで行うようにしたものであるの
に命令投入部から命令発信部迄のブロツク間転送
を意識する必要がなく、命令発信制御の高速化が
図れる効果がある。
御方式は、複数個の演算処理部、又は1個乃至複
数個のメモリアクセス処理部を含む複数個の演算
処理部を持つデータ処理装置において、命令発信
制御部の近傍に、命令投入部で選択された命令の
コピーを格納する発信待機レジスタQXを設け、
各命令の処理サイクルの次のサイクルで発信条件
を判定する命令を選択して格納するように制御す
ることにより、発信制御を、上記発信待機レジス
タQXの内容のみで行うようにしたものであるの
に命令投入部から命令発信部迄のブロツク間転送
を意識する必要がなく、命令発信制御の高速化が
図れる効果がある。
第1図は本発明の概念を説明した図、第2図は
本発明の一実施例の概略をブロツク図で示した
図、第3図はベクトルデータ処理装置の概要を示
した図、第4図は加算器ADにおけるベクトル加
算命令の処理状況を示した図、第5図はベクトル
命令列の通常の処理を示す図、第6図は後発のベ
クトル命令を先発のベクトル命令より先に実行し
た場合の命令処理を示した図、第7図は改良され
た命令制御部の一実施例をブロツク図で示した
図、第8図は命令の追い越しが行われる場合の動
作をタイムチヤートで示した図、である。 図面において、1は主記憶装置MS、3は演算
処理部、4はストア処理部、5はロード処理部、
6はベクトル・レジスタ、7は乗算器MP、8は
加算器AD、9は命令制御部、10はフエツチレ
ジスタF、11はQ1,Q2投入制御回路、12−
1,12−2は待ち合わせレジスタQ1,Q2、1
3−1,13−2,18−1,18−2はレジス
タ干渉チエツク回路、14はセレクタSEL、15
は命令発信制御回路、16は乗算レジスタMR、
17は加算レジスタAR、VM 1,2,3、VA
4,5,1、VA 7,8,9はベクトル命令、
をそれぞれ示す。
本発明の一実施例の概略をブロツク図で示した
図、第3図はベクトルデータ処理装置の概要を示
した図、第4図は加算器ADにおけるベクトル加
算命令の処理状況を示した図、第5図はベクトル
命令列の通常の処理を示す図、第6図は後発のベ
クトル命令を先発のベクトル命令より先に実行し
た場合の命令処理を示した図、第7図は改良され
た命令制御部の一実施例をブロツク図で示した
図、第8図は命令の追い越しが行われる場合の動
作をタイムチヤートで示した図、である。 図面において、1は主記憶装置MS、3は演算
処理部、4はストア処理部、5はロード処理部、
6はベクトル・レジスタ、7は乗算器MP、8は
加算器AD、9は命令制御部、10はフエツチレ
ジスタF、11はQ1,Q2投入制御回路、12−
1,12−2は待ち合わせレジスタQ1,Q2、1
3−1,13−2,18−1,18−2はレジス
タ干渉チエツク回路、14はセレクタSEL、15
は命令発信制御回路、16は乗算レジスタMR、
17は加算レジスタAR、VM 1,2,3、VA
4,5,1、VA 7,8,9はベクトル命令、
をそれぞれ示す。
Claims (1)
- 【特許請求の範囲】 1 複数個の演算処理部、又は1個乃至複数個の
メモリアクセス処理部を含む複数個の演算処理部
を持つデータ処理装置において、 演算実行前の命令情報を保持する複数個の待ち
合わせレジスタQ1,Q2,12−1,12−2と、
該複数個の待ち合わせレジスタQ1,Q2,12−
1,12−2の内容と、新たな命令情報とを比較
して、上記待ち合わせレジスタQ1,Q2,12−
1,12−2に投入するQ1,Q2投入制御回路1
1と、該待ち合わせレジスタQ1,Q2,12−1,
12−2に保持されている命令情報群の内から1
つの命令情報を選択する選択回路SEL14と選択
制御回路19とからなる命令投入部と、演算実行
中の命令情報を保持する複数個のレジスタMR,
AR,16,17と、該演算実行中の命令情報
と、上記待ち合わせレジスタQ1,Q2,12−1,
12−2の内から選択された命令情報とを比較す
る手段15と、該比較手段15によつて、上記命
令投入部における待ち合わせレジスタQ1,Q2,
12−1,12−2に保持されている演算実行前
の命令群の内から1つを選択して、演算実行開始
を妨げる要因がないことを確認した命令を、上記
演算実行中の命令情報を保持する複数個のレジス
タMR,AR,16,17の内の“空き”レジス
タに移すと共に、該命令に対応する上記演算処理
部を起動する命令発信部とを備え、 上記命令投入部の選択回路SEL14に、上記待
ち合わせレジスタQ1,Q2,12−1,12−2
に入力する命令情報F10の出力をバイパスして
入力する手段を設けると共に、該選択回路SEL1
4によつて選択された命令情報を入力することに
よつて、各マシンサイクル毎に、該複数個の待ち
合わせレジスタQ1,Q2,12−1,12−2の
内の、何れか1つと同一の命令情報がセツトされ
る発信待機レジスタQX,20を設け、 該発信待機レジスタQX,20内の命令と、現
在演算実行中の命令情報とを比較して、演算実行
の開始を妨げる要因がないことが確認されたと
き、該命令を上記演算実行中の命令情報を保持す
る複数個のレジスタMR,AR,16,17の内
の“空き”レジスタに移すと共に、該命令に対応
する上記演算処理部を起動するようにしたことを
特徴とする命令制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP26024485A JPS62119674A (ja) | 1985-11-20 | 1985-11-20 | 命令制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP26024485A JPS62119674A (ja) | 1985-11-20 | 1985-11-20 | 命令制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62119674A JPS62119674A (ja) | 1987-05-30 |
| JPH0361225B2 true JPH0361225B2 (ja) | 1991-09-19 |
Family
ID=17345354
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP26024485A Granted JPS62119674A (ja) | 1985-11-20 | 1985-11-20 | 命令制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS62119674A (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6154829A (en) * | 1997-10-20 | 2000-11-28 | Matsushita Electric Industrial Co., Ltd. | Cascaded arithmetic pipeline data processor |
-
1985
- 1985-11-20 JP JP26024485A patent/JPS62119674A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62119674A (ja) | 1987-05-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4591979A (en) | Data-flow-type digital processing apparatus | |
| US5832248A (en) | Semiconductor integrated circuit having CPU and multiplier | |
| US4507728A (en) | Data processing system for parallel processing of different instructions | |
| US5093920A (en) | Programmable processing elements interconnected by a communication network including field operation unit for performing field operations | |
| US3163850A (en) | Record scatter variable | |
| EP0059810B1 (en) | Microprogrammed digital data processing system employing multiphase subroutine control for concurrently executing tasks | |
| JPS646488B2 (ja) | ||
| JPH06236273A (ja) | スーパースカラ・プロセッサ・システムにおいて複数命令を単一サイクルでディスパッチするための方法およびシステム | |
| EP0025087A2 (en) | Pipeline Control apparatus for generating Instructions in a Digital Computer | |
| US4739472A (en) | Information processing device capable of rapidly processing instructions of different groups | |
| US4197589A (en) | Operation sequencing mechanism | |
| JPH04153733A (ja) | 並列処理装置における命令供給装置 | |
| US4338662A (en) | Microinstruction processing unit responsive to interruption priority order | |
| US4152763A (en) | Control system for central processing unit with plural execution units | |
| US4314332A (en) | Memory control system | |
| JP4144153B2 (ja) | ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング | |
| US4259718A (en) | Processor for a data processing system | |
| US5526500A (en) | System for operand bypassing to allow a one and one-half cycle cache memory access time for sequential load and branch instructions | |
| JPS59106075A (ja) | デ−タ処理システム | |
| JPH0361225B2 (ja) | ||
| US5677859A (en) | Central processing unit and an arithmetic operation processing unit | |
| JP2638613B2 (ja) | プログラマブル アクセラレータ及びその方法 | |
| JPS6134186B2 (ja) | ||
| US4467410A (en) | Multi-phase subroutine control circuitry | |
| US4649472A (en) | Multi-phase subroutine control circuitry |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |