JP2001117886A - プロセッサ及びプロセッサシステム - Google Patents
プロセッサ及びプロセッサシステムInfo
- Publication number
- JP2001117886A JP2001117886A JP29458099A JP29458099A JP2001117886A JP 2001117886 A JP2001117886 A JP 2001117886A JP 29458099 A JP29458099 A JP 29458099A JP 29458099 A JP29458099 A JP 29458099A JP 2001117886 A JP2001117886 A JP 2001117886A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- coprocessor
- execution
- unit
- processor
- 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
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 49
- 230000001419 dependent effect Effects 0.000 description 7
- 238000000034 method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 101100459905 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) NCP1 gene Proteins 0.000 description 2
- 101150046305 cpr-1 gene Proteins 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 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/22—Microcontrol or microprogram arrangements
-
- 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/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- 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
-
- 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/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
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)
Abstract
率的なコプロセッサ命令の実行を実現する主プロセッサ
を備えたプロセッサシステムを提供する。 【解決手段】 コプロセッサCPR0〜CPRnと、主
プロセッサ15とを有するプロセッサシステムであっ
て、主プロセッサ15は、コプロセッサにおける実行を
命令するコプロセッサ命令がメモリ17から供給された
ときに、該コプロセッサ命令に対応する命令フィールド
に基づいて、コプロセッサ命令がコプロセッサCPR0
〜CPRnにおいて先に実行されるコプロセッサ命令に
対して制御依存性を有する可能性があると判断した場合
には、先行するコプロセッサ命令の実行が完了した後に
次のコプロセッサ命令をコプロセッサCPR0〜CPR
nへ発行することを特徴とするプロセッサシステムを提
供する。
Description
セッサシステムに関し、さらに詳しくは所定の制御方法
によりコプロセッサに命令を発行するプロセッサと、該
プロセッサ及びコプロセッサからなるプロセッサシステ
ムに関するものである。
成を示す図である。図1に示されるように、従来のプロ
セッサシステムは主プロセッサ1と、主プロセッサ1に
接続されたメモリ3と、主プロセッサ1に接続されたコ
プロセッサCPR0〜CPRnとを備える。ここで、主
プロセッサ1はメモリ3に接続された命令フェッチ部5
と、命令フェッチ部5に接続された命令実行部7と、命
令実行部7に接続されたコプロセッサ指定レジスタ(C
R)11と、命令フェッチ部5及びCR11に接続され
たコプロセッサ命令制御部13と、コプロセッサ命令制
御部13及び命令実行部7に接続されたレジスタ9とを
含む。
命令制御部13と命令実行部7の構成を示す図である。
図2に示されるように、コプロセッサ命令制御部13
は、命令レジスタ100と、リソース判断部102と、
リソースデコード部103と、例外デコード部104
と、例外判断部106と、発行制御部109と、完了制
御部110と、スコアボード111とを備える。ここ
で、命令レジスタ100は命令フェッチ部5に接続さ
れ、リソースデコード部103は命令レジスタ100に
接続される。また、リソース判断部102はリソースデ
コード部103に接続され、例外デコード部104は命
令レジスタ100に接続される。そして、例外判断部1
06は例外デコード部104に接続され、発行制御部1
09は命令レジスタ100とリソース判断部102及び
例外判断部106に接続される。さらに、発行制御部1
09と完了制御部110は共に、コプロセッサCPR0
〜CPRnとレジスタ9に接続される。また、スコアボ
ード111は発行制御部109及び完了制御部110と
リソース判断部102及び例外判断部106に接続され
る。なお、例外判断部106と発行制御部109はCR
11に接続される。
と、書込制御部129と、実行制御部131とを備え
る。ここで、デコード部115は命令フェッチ部5に接
続され、書込制御部129及び実行制御部131はレジ
スタ9とデコード部115に接続される。なお、書込制
御部129はCR11に接続される。上記のような構成
を有するプロセッサシステムにおいては、命令フェッチ
部5はメモリ3から命令を読み出すが、コプロセッサ指
定レジスタ11を書き換える命令を読み出した場合は、
その命令を命令実行部7へ供給する。また、コプロセッ
サ命令を読み出した場合は、その命令をコプロセッサ命
令制御部13へ供給する。なお、上記以外の命令を読み
出した場合には、その命令を命令実行部7へ供給する。
行し、例えばコプロセッサ指定レジスタ11を書き換え
る命令が供給された場合には、書込制御部129により
CR11を書き換える。一方、コプロセッサ命令制御部
13は、発行制御部109及び完了制御部110やスコ
アボード111等によってコプロセッサCPR1〜CP
Rnにおけるコプロセッサ命令の実行を制御し、そのう
ち発行制御部109は主プロセッサ1からコプロセッサ
CPR1〜CPRnへの命令発行動作を制御する。ま
た、命令フェッチ部5より供給されたコプロセッサ命令
が先行コプロセッサ命令に対してデータ依存が無いとリ
ソース判断部102で判断され、処理の例外による制御
依存が無いと例外判断部106で判断される場合には、
発行制御部109はコプロセッサ命令をCR11により
指定されたコプロセッサへ信号In(nは0以上の整
数)として発行すると共に、信号Inを発行した旨の情
報(発行情報)をスコアボード111に書き込む。ここ
で、「データ依存」とは、先行するコプロセッサ命令の
実行結果に基づいて、初めて後のコプロセッサ命令の実
行が可能となることをいう。
は、例えば0の値で除算することや浮動小数点を用いた
演算においてオーバーフローを生じるなどという処理の
例外を招き演算を継続できない状況となりうることをい
う。一方、リソース判断部102においてデータ依存が
あると判断される場合には、発行制御部109は該コプ
ロセッサ命令が依存する先行コプロセッサ命令の完了を
待った後に該コプロセッサ命令をCR11に指定された
コプロセッサへ信号Inとして発行し、信号Inを発行
した旨の情報(発行情報)をスコアボード111に書き
込む。なお、コプロセッサ命令制御部13は、完了制御
部110においてコプロセッサ命令の発行先であるコプ
ロセッサから完了信号Cn(nは0以上の整数)を受領
することによりコプロセッサ命令の実行完了が通知され
る。このとき、完了制御部110は完了信号Cnに応じ
てスコアボード111に書き込まれている信号Inを発
行した旨の発行情報を削除する。
11は、操作対象のコプロセッサCPRn(nは0以上
の整数)の番号を指定する。また、メモリ3はコプロセ
ッサ命令を含む主プロセッサ1への命令を記憶し、レジ
スタ9はコプロセッサに与えるデータ及びコプロセッサ
における実行結果を格納する。なお、レジスタ9は複数
の記憶部からなる。
例を示す図である。ここで、命令コードOP-CODE はコプ
ロセッサCPR0〜CPRnで実行すべき処理を示し、
オペランド1〜nはコプロセッサに与えるデータを保持
しているレジスタ内の記憶部の番号、あるいはコプロセ
ッサによる実行結果を格納するレジスタ内の記憶部の番
号を意味する。
形式を示す図である。図4に示されるオペランド1は、
CR11へ書込まれた値を保持するレジスタ9内のいず
れかの記憶部を指定する。なお、図4の命令コードOP-C
ODE とオペランド1との間には、任意の情報が記録され
る。次に、上記のプロセッサシステムにおけるコプロセ
ッサ命令の発行動作を説明する。コプロセッサ命令制御
部13の発行制御部109は、供給されたコプロセッサ
命令が処理の例外を発生する可能性がなく先行するコプ
ロセッサ命令とのデータ依存がない場合には該コプロセ
ッサ命令を発行すると共に発行情報をスコアボード11
1へ書き込み、処理の例外を発生する可能性がないが先
行するコプロセッサ命令とのデータ依存がある場合に
は、該先行するコプロセッサ命令の実行完了を待った後
に次のコプロセッサ命令を発行し発行情報をスコアボー
ド111へ書き込む。
制御部109は、供給されたコプロセッサ命令が処理の
例外を発生する可能性があり先行するコプロセッサ命令
とのデータ依存がない場合には該コプロセッサ命令を発
行すると共に発行情報をスコアボード111へ書き込
み、処理の例外を発生する可能性があり先行するコプロ
セッサ命令とのデータ依存もある場合には、該先行する
コプロセッサ命令の実行完了を待った後に次のコプロセ
ッサ命令を発行し発行情報をスコアボード111へ書き
込む。
は一般的に、命令発行能力を向上させる手法として、投
機的命令実行(speculative execution )が知られてい
る。そして、この投機的命令実行をコプロセッサに対す
る命令発行制御方式として用いる場合には、データ依存
や処理の例外による制御依存を保証する必要がある。し
かしながら、コプロセッサを有する従来のプロセッサシ
ステムにおいては、上記のようにコプロセッサ命令制御
部13が、命令フェッチ部5から供給されたコプロセッ
サ命令に含まれた命令コードによって該コプロセッサ命
令が処理の例外による制御依存を発生させるものか否か
を判定し、その判定結果に基づいて上記のように該コプ
ロセッサ命令の発行を行っていた。ここで、コプロセッ
サ命令は各コプロセッサCPR0〜CPRnに対応する
ものであるため、主プロセッサ1、特にそのうちコプロ
セッサ命令制御部13の構造は、主プロセッサ1に接続
されるコプロセッサCPR0〜CPRnの種類により異
なるものとせざるを得ないという問題があった。
点を解消するためになされたものであり、接続されるコ
プロセッサの種類もしくは供給されるコプロセッサ命令
の種類によらず、処理の例外による制御依存の発生する
可能性を踏まえた効率的なコプロセッサ命令の処理を実
現するプロセッサと、該プロセッサを備えたプロセッサ
システムを提供することを目的とする。
ッサに接続されるプロセッサであって、プロセッサは、
コプロセッサにおける実行を命令する第一のコプロセッ
サ命令が供給されたときに、第一のコプロセッサ命令に
対応する依存可能性表示データに基づいて、第一のコプ
ロセッサ命令がコプロセッサにおいて先に実行される第
二のコプロセッサ命令に対して制御依存性を有する可能
性があると判断した場合には、第二のコプロセッサ命令
の実行が完了した後に第一のコプロセッサ命令をコプロ
セッサへ発行することを特徴とするプロセッサを提供す
ることにより達成される。このような手段によれば、プ
ロセッサは第一のコプロセッサ命令ではなく依存可能性
表示データに基づいて第一のコプロセッサ命令の制御依
存性を判断するため、プロセッサの構成をコプロセッサ
の種類に依らず決定することができる。
続されたプロセッサであって、コプロセッサが第一のコ
プロセッサ命令を実行中であるか否かを示す信号を生成
する信号生成手段と、コプロセッサが第一のコプロセッ
サ命令を実行中であることを示す実行表示信号が信号生
成手段から供給されている場合には、信号生成手段から
実行の完了を示す実行完了信号が供給された時にプロセ
ッサ実行命令を実行する命令実行手段とを備えたことを
特徴とするプロセッサを提供することにより達成され
る。
コプロセッサに接続された主プロセッサとを有するプロ
セッサシステムであって、主プロセッサはコプロセッサ
における実行を命令する第一のコプロセッサ命令が供給
されたときに、第一のコプロセッサ命令に対応する依存
可能性表示データに基づいて、第一のコプロセッサ命令
がコプロセッサにおいて先に実行される第二のコプロセ
ッサ命令に対して制御依存性を有する可能性があると判
断した場合には、第二のコプロセッサ命令の実行が完了
した後に第一のコプロセッサ命令をコプロセッサへ発行
することを特徴とするプロセッサシステムを提供するこ
とにより達成される。このような手段によれば、主プロ
セッサは第一のコプロセッサ命令ではなく依存可能性表
示データに基づいて第一のコプロセッサ命令の制御依存
性を判断するため、主プロセッサの構成をコプロセッサ
の種類に依らず決定することができる。
コプロセッサに接続された主プロセッサとを有するプロ
セッサシステムであって、主プロセッサは、コプロセッ
サが第一のコプロセッサ命令を実行中であるか否かを示
す信号を生成する信号生成手段と、コプロセッサが第一
のコプロセッサ命令を実行中であることを示す実行表示
信号が信号生成手段から供給されている場合には、信号
生成手段から実行の完了を示す実行完了信号が供給され
た時にプロセッサ実行命令を実行する命令実行手段とを
備えたことを特徴とするプロセッサシステムを提供する
ことによっても達成される。
態を図面を参照して詳しく説明する。なお、図中同一符
号は同一または相当部分を示す。 [実施の形態1]図5は、本発明の実施の形態1に係る
プロセッサシステムの構成を示す図である。図5に示さ
れるように、このプロセッサシステムは図1に示された
従来のプロセッサシステムに対し、主プロセッサ15に
含まれたコプロセッサ命令制御部19の構成が相違する
ものである。
制御部19と命令実行部7の構成を示す図である。図6
に示されるように、コプロセッサ命令制御部19は、命
令レジスタ101と、リソース判断部102と、リソー
スデコード部103と、例外判断部107と、発行制御
部109と、完了制御部110と、スコアボード112
とを備える。ここで、命令レジスタ101は命令フェッ
チ部5に接続され、リソースデコード部103は命令レ
ジスタ101に接続される。また、リソース判断部10
2はリソースデコード部103に接続される。そして、
例外判断部107は命令レジスタ101に接続され、発
行制御部109は命令レジスタ101とリソース判断部
102及び例外判断部107に接続される。さらに、発
行制御部109と完了制御部110は共に、コプロセッ
サCPR0〜CPRnとレジスタ9に接続される。ま
た、スコアボード112は発行制御部109及び完了制
御部110とリソース判断部102に接続される。な
お、発行制御部109はCR11に接続される。
と、書込制御部129と、実行制御部131とを備え
る。ここで、デコード部116は命令フェッチ部5に接
続され、書込制御部129及び実行制御部131はレジ
スタ9とデコード部116に接続される。なお、書込制
御部129はCR11に接続される。上記のような構成
を有する本実施の形態に係るメモリ17には、図7に示
された形式を有するコプロセッサ命令が予め記憶され
る。図7に示されたコプロセッサ命令の形式は、図3に
示されたコプロセッサ命令の形式に対して、処理の例外
による制御依存が発生する可能性があるコプロセッサ命
令であるか否かを示すフィールドEXCEPがオペラン
ドnに結合される点で相違する。そして、このフィール
ドEXCEPは処理の例外による制御依存が発生する可
能性がある場合には1が記録され、該可能性がない場合
には0があらかじめ記録される。なお上記のように、
「処理の例外による制御依存」とは、例えば0の値で除
算することや浮動小数点を用いた演算においてオーバー
フローを生じるなどという処理の例外を招き演算を継続
できない状況となりうることをいう。
令が命令フェッチ部5を介してコプロセッサ命令制御部
19の命令レジスタ101へ供給された場合の、コプロ
セッサ命令制御部19の動作について以下に説明する。
命令レジスタ101へ供給されたコプロセッサ命令は、
リソースデコード部103により解析される。そして、
リソース判断部102は該解析結果とスコアボード11
2から供給された実行中の命令に対応する発行情報に基
いて、命令フェッチ部5から供給されたコプロセッサ命
令が先に実行されるコプロセッサ命令にデータ依存する
ものか否かを判断し、その判断結果を発行制御部109
へ通知する。
プロセッサ命令のフィールドEXCEPに書き込まれて
いるデータの値は0であると判断した場合には、発行制
御部109は命令フェッチ部5から供給されたコプロセ
ッサ命令が先に実行されるコプロセッサ命令とのデータ
依存がないとリソース判断部102によって判断される
とき、コプロセッサ命令をCR11に指定されたコプロ
セッサへ発行信号Inを通じて発行し、発行情報をスコ
アボード112へ書き込む。又逆に、リソース判断部1
02により該データ依存があると判断される場合には、
発行制御部109は依存しているコプロセッサ命令の完
了を待った後、コプロセッサ命令をCR11にて指定さ
れたコプロセッサへ発行信号Inを通じて発行し、発行
情報をスコアボード112へ書き込む。
ールドEXCEPが1の場合には、発行制御部109は
常に、先に実行されているコプロセッサ命令の完了を待
った後、コプロセッサ命令をCR11にて指定されたコ
プロセッサへ発行信号Inを通じて発行し、発行情報を
スコアボード112へ書き込む。このように本実施の形
態に係るコプロセッサ命令制御部19においては、先に
実行される命令に関する情報ではなく、コプロセッサ命
令のフィールドEXCEPに書き込まれた情報によりコ
プロセッサ命令の発行タイミングを決定するため、スコ
アボード112等から例外判断部10への配線が不要に
なると共に、フラグ検出部105より回路規模の大きな
例外デコード部104も不要になる。
システムによれば、回路規模を小さくできると共に、主
プロセッサ15は供給されたコプロセッサ命令に含まれ
る命令コードを読みだすことによらず、オペランドnに
結合したフィールドEXCEPに記録された情報により
コプロセッサ命令の発行タイミングを決定するため、メ
モリ17から供給されるコプロセッサ命令の種類によら
ず効率的な命令発行動作を実現することができる。 [実施の形態2]図8は、本発明の実施の形態2に係る
プロセッサシステムの構成を示す図である。図8に示さ
れるように、このプロセッサシステムは図1に示された
従来のプロセッサシステムに対し、主プロセッサ21に
含まれた命令フェッチ部24やコプロセッサ命令制御部
25や命令実行部27の構成が相違し、命令実行部27
に接続されたフラグ29をさらに備えたものである。
命令制御部25と命令実行部27の構成を示す図であ
る。図9に示されるように、コプロセッサ命令制御部2
5及び命令実行部27はそれぞれ図6に示されたコプロ
セッサ命令制御部19及び命令実行部7と同様な構成を
有するが、コプロセッサ命令制御部25はフラグ29に
接続された例外判断部108を備え、命令実行部27は
デコード部117及びレジスタ26に接続されフラグ2
9への書き込みを制御するフラグ書込制御部133をさ
らに備える点で相違する。
システムと相違する点について詳しく説明する。まず、
本実施の形態に係るメモリ23には、図4に示された形
式と同様の形式を有しフラグ29を書き換える命令も予
め記憶される。なお、この場合には図4に示されたオペ
ランド1には、フラグ29への書込み値(0または1)
を保持するレジスタ26内の記憶部の番号が記録され
る。また、命令フェッチ部24はフラグ29の値を書き
換える上記命令を読み出した場合にはその命令を命令実
行部27へ供給し、命令実行部27に含まれたフラグ書
込制御部133は該命令を受領してフラグ29の値を書
き換える。
29は、主プロセッサ21よりコプロセッサCPR0〜
CPRnへ処理の例外による制御依存が発生する可能性
があるコプロセッサ命令を発行することを示すものであ
り、処理の例外による制御依存が発生する可能性がある
コプロセッサ命令を発行する場合には予め命令実行部2
7に含まれたフラグ書込制御部133により1が設定さ
れ、処理の例外による制御依存が発生する可能性がある
コプロセッサ命令を発行しない場合には予め命令実行部
27に含まれたフラグ書込制御部133により0が設定
される。
について以下に説明する。供給されたコプロセッサ命令
を発行する際、例外判断部108によりフラグ29が0
と判断された場合には、命令フェッチ部24から供給さ
れたコプロセッサ命令が先に実行されるコプロセッサ命
令とのデータ依存がない場合に、発行制御部109はコ
プロセッサ命令をCR11に指定されたコプロセッサへ
発行信号Inを通じて発行し、発行情報をスコアボード
112へ書き込む。又逆に該データ依存があると発行制
御部109により判断される場合には、依存しているコ
プロセッサ命令の完了を待った後、コプロセッサ命令を
CR11にて指定されたコプロセッサへ発行信号Inを
通じて発行し、発行情報をスコアボード112へ書き込
む。
する際、例外判断部108によりフラグ29が1と判断
された場合には、常に、先に実行されているコプロセッ
サ命令の完了を待った後、発行制御部109はコプロセ
ッサ命令をCR11にて指定されたコプロセッサへ発行
信号Inを通じて発行し、発行情報をスコアボード11
2へ書き込む。
システムによっても、主プロセッサ21は供給されたコ
プロセッサ命令に含まれる命令コードを読みだすことに
よらずフラグ29の値によりコプロセッサ命令の発行タ
イミングを決定するため、メモリ23から供給されるコ
プロセッサ命令の種類によらず効率的な命令発行動作を
実現することができる。 [実施の形態3]図10は、本発明の実施の形態3に係
るプロセッサシステムの構成を示す図である。図10に
示されるように、このプロセッサシステムは図8に示さ
れた実施の形態2に係るプロセッサシステムと同様な構
成を有するが、主プロセッサ21に含まれた命令フェッ
チ部34やコプロセッサ命令制御部35や命令実行部3
7の構成が相違し、命令実行部37に直列接続されると
共にそれぞれのコプロセッサCPR0〜CPRnに対応
して設けられたn個のフラグを備えたものである。
ッサ命令制御部35と命令実行部37の構成を示す図で
ある。図11に示されるように、コプロセッサ命令制御
部35及び命令実行部37はそれぞれ図9に示されたコ
プロセッサ命令制御部25及び命令実行部27と同様な
構成を有するが、コプロセッサ命令制御部35はフラグ
0からフラグnに接続された例外判断部108を備え、
命令実行部37はデコード部118及びレジスタ36に
接続されフラグ0からフラグnへの書き込みを制御する
フラグ書込制御部134を備える点で相違する。
るプロセッサシステムと相違する点について詳しく説明
する。まず、本実施の形態に係るメモリ33には、図1
2に示された形式を有しフラグ0からフラグnのうち少
なくとも一つを書き換える命令も予め記憶される。な
お、図12に示されたオペランド1には、0又は1の書
込み値を書込むフラグを指定する番号が記録され、オペ
ランド2にはオペランド1において指定したフラグへの
書込み値(0または1)を保持するレジスタ36内の記
憶部の番号が記録される。また、命令フェッチ部34は
所定のフラグを書き換える上記命令を読み出した場合に
は、その命令を命令実行部37へ供給し、フラグ書込制
御部134は該命令を受領して該命令のオペランド2に
おいて指定されたレジスタ36内の所定の記憶部に格納
されている書込み値を、オペランド1において指定され
た所定のフラグに書込む。
個のフラグは、対応するコプロセッサCPR0〜CPR
nに対して、主プロセッサ31よりコプロセッサCPR
0〜CPRnへ処理の例外による制御依存が発生する可
能性があるコプロセッサ命令を発行することを示すもの
であり、処理の例外による制御依存が発生する可能性が
あるコプロセッサ命令を発行する場合には予め命令実行
部37のフラグ書込制御部134により1が設定され、
処理の例外による制御依存が発生する可能性があるコプ
ロセッサ命令を発行しない場合には予め命令実行部37
のフラグ書込制御部134により0が設定される。
について以下に説明する。供給されたコプロセッサ命令
を発行する際、例外判断部108により該コプロセッサ
命令が実行されるコプロセッサに対応するフラグが0で
あると判断される場合には、命令フェッチ部34から供
給されたコプロセッサ命令が、該コプロセッサにおいて
先に実行されるコプロセッサ命令とのデータ依存がない
場合に、発行制御部109はコプロセッサ命令をCR1
1に指定されたコプロセッサへ発行信号Inを通じて発
行し、発行情報をスコアボード112へ書き込む。又逆
に該データ依存がある場合には、発行制御部109は依
存しているコプロセッサ命令の完了を待った後、コプロ
セッサ命令をCR11にて指定されたコプロセッサへ発
行信号Inを通じて発行し、発行情報をスコアボード1
12へ書き込む。
する際、例外判断部108により該コプロセッサ命令が
実行されるコプロセッサに対応するフラグが1であると
判断される場合には、発行制御部109は常に、該コプ
ロセッサにおいて先に実行されているコプロセッサ命令
の完了を待った後、コプロセッサ命令を該コプロセッサ
へ発行信号Inを通じて発行し、発行情報をスコアボー
ド112へ書き込む。
システムによれば、上記実施の形態2に係るプロセッサ
システムと同様な効果を奏すると共に、さらに主プロセ
ッサ31は個々のコプロセッサCPR0〜CPRn毎
に、これから実行するコプロセッサ命令の制御依存性を
判断するため、他のコプロセッサで実行されるコプロセ
ッサ命令の発行を待つことなくコプロセッサ命令が発行
される。従って、コプロセッサ命令をコプロセッサCP
R0〜CPRnへより効率的に発行することができる。 [実施の形態4]図13は、本発明の実施の形態4に係
るプロセッサシステムの構成を示す図である。図13に
示されるように、このプロセッサシステムは図5に示さ
れた実施の形態1に係るプロセッサシステムと同様な構
成を有するが、主プロセッサ41に含まれた命令フェッ
チ部44やコプロセッサ命令制御部45や命令実行部4
7の構成が相違するものである。
ッサ命令制御部45と命令実行部47の構成を示す図で
ある。図14に示されるように、コプロセッサ命令制御
部45及び命令実行部47はそれぞれ図6に示されたコ
プロセッサ命令制御部19及び命令実行部7と同様な構
成を有するが、命令実行部47はデコード部119に接
続された同期制御部135をさらに備え、コプロセッサ
命令制御部45は同期制御部135に接続されたスコア
ボード112を備える点で相違する。
に係るプロセッサシステムと相違する点について詳しく
説明する。まず、本実施の形態に係るメモリ43には、
図15に示された形式を有し実行中のコプロセッサ命令
の実行完了を待つ命令も予め記憶される。また、命令フ
ェッチ部44は実行中のコプロセッサ命令の実行完了を
待つ上記命令を読み出した場合にはその命令を命令実行
部47へ供給し、命令実行部47の同期制御部135は
該命令を受領したときコプロセッサ命令制御部45のス
コアボード113から0の値を有する信号busyが供給さ
れていれば、次のプロセッサ実行命令を実行する。一
方、命令実行部47の同期制御部135は上記命令を受
領したときコプロセッサ命令制御部45のスコアボード
113から1の値を有する信号busyが供給されていれ
ば、信号busyが0となった時点で、該プロセッサ実行命
令を実行し完了させる。
アボード113は、いずれかのコプロセッサがコプロセ
ッサ命令を実行中である場合には1の値を有する信号bu
syを命令実行部47の同期制御部135へ供給し、いず
れのコプロセッサにおいてもコプロセッサ命令を実行中
でない場合には0の値を有する信号busyを命令実行部4
7の同期制御部135へ供給する。
システムによっても、主プロセッサ41は供給されたコ
プロセッサ命令に含まれる命令コードを読みだすことに
よらず、現在いずれかのコプロセッサがコプロセッサ命
令を実行中であるか否かを示す信号busyに応じてプロセ
ッサ実行命令を実行しコプロセッサ命令の発行タイミン
グを決定するため、メモリ43から供給されるコプロセ
ッサ命令の種類によらず効率的な命令発行動作を実現す
ることができる。 [実施の形態5]図16は、本発明の実施の形態5に係
るプロセッサシステムの構成を示す図である。図16に
示されるように、このプロセッサシステムは図13に示
された実施の形態4に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ51に含まれた命令フェ
ッチ部54、コプロセッサ命令制御部55、命令実行部
57の構成が相違し、さらにフラグ29を備えたもので
ある。なお、このフラグ29は図8に示された実施の形
態2に係るフラグ29と同じものである。
ッサ命令制御部55と命令実行部57の構成を示す図で
ある。図17に示されるように、コプロセッサ命令制御
部55及び命令実行部57はそれぞれ図14に示された
コプロセッサ命令制御部45及び命令実行部47と同様
な構成を有するが、コプロセッサ命令制御部55はフラ
グ29に接続された例外判断部108を備え、命令実行
部47はデコード部120及びレジスタ26に接続され
フラグ29への書き込みを制御するフラグ書込制御部1
33を備える点で相違する。
システムは、上記実施の形態2に係るプロセッサシステ
ムと実施の形態4に係るプロセッサシステムの両方の機
能を有するものである。すなわち、コプロセッサ命令制
御部55の発行制御部109は供給されたコプロセッサ
命令を発行する際フラグ29が0の場合には、命令フェ
ッチ部54から供給されたコプロセッサ命令が先に実行
されるコプロセッサ命令とのデータ依存がない場合に、
コプロセッサ命令をCR11に指定されたコプロセッサ
へ発行信号Inを通じて発行し、発行情報をスコアボー
ド113へ書き込む。又逆に該データ依存がある場合に
は、依存しているコプロセッサ命令の完了を待った後、
コプロセッサ命令をCR11にて指定されたコプロセッ
サへ発行信号Inを通じて発行し、発行情報をスコアボ
ード113へ書き込む。
する際フラグ29が1の場合には、常に、先に実行され
ているコプロセッサ命令の完了を待った後、コプロセッ
サ命令をCR11にて指定されたコプロセッサへ発行信
号Inを通じて発行し、発行情報をスコアボード113
へ書き込む。このときコプロセッサ命令制御部55は、
コプロセッサがコプロセッサ命令を実行中である場合に
は1の値を有する信号busyを命令実行部57へ供給し、
コプロセッサがコプロセッサ命令を実行中でない場合に
は0の値を有する信号busyを命令実行部57へ供給す
る。
セッサ命令の実行完了を待つ命令を受領したときコプロ
セッサ命令制御部55から0の値を有する信号busyが供
給されていれば、次のプロセッサ実行命令を実行する。
一方、命令実行部57は上記命令を受領したときコプロ
セッサ命令制御部55から1の値を有する信号busyが供
給されていれば、信号busyが0となった時点で、該プロ
セッサ実行命令を実行し完了させる。
システムによれば、主プロセッサ51は供給されたコプ
ロセッサ命令に含まれる命令コードを読みだすことによ
らずフラグ29の値及び現在コプロセッサ命令を実行中
であるか否かを示す信号busyに応じてコプロセッサ命令
の発行タイミングを決定するため、メモリ53から供給
されるコプロセッサ命令の種類によらず効率的な命令発
行動作を実現することができる。 [実施の形態6]図18は、本発明の実施の形態6に係
るプロセッサシステムの構成を示す図である。図18に
示されるように、このプロセッサシステムは図16に示
された実施の形態5に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ61に含まれた命令フェ
ッチ部64、コプロセッサ命令制御部65、命令実行部
67やレジスタ66の構成が相違し、さらに複数のフラ
グ0からフラグnを備えたものである。なお、この複数
のフラグは図10に示された実施の形態3に係る複数の
フラグ0からフラグnと同じものである。
ッサ命令制御部65と命令実行部67の構成を示す図で
ある。図19に示されるように、コプロセッサ命令制御
部65及び命令実行部67はそれぞれ図17に示された
コプロセッサ命令制御部55及び命令実行部57と同様
な構成を有するが、コプロセッサ命令制御部65はフラ
グ0からフラグnに接続された例外判断部108を備
え、命令実行部67はデコード部121及びレジスタ6
6に接続されフラグ0からフラグnへの書き込みを制御
するフラグ書込制御部134を備える点で相違する。
システムは、上記実施の形態3に係るプロセッサシステ
ムと実施の形態4に係るプロセッサシステムの両方の機
能を有するものである。そして、このような構成を有す
るプロセッサシステムによれば、主プロセッサ61は個
々のコプロセッサCPR0〜CPRn毎に、これから実
行するコプロセッサ命令の制御依存性を判断し、他のコ
プロセッサで実行されるコプロセッサ命令の発行を待つ
ことなくコプロセッサ命令を発行するため、コプロセッ
サ命令をコプロセッサCPR0〜CPRnへ効率的に発
行することができる。
ロセッサ命令に含まれる命令コードを読みだすことによ
らず現在コプロセッサ命令を実行中であるか否かを示す
信号busyに応じてコプロセッサ命令の発行タイミングを
決定するため、メモリ63から供給されるコプロセッサ
命令の種類によらず効率的な命令発行動作を実現するこ
ともできる。 [実施の形態7]図20は、本発明の実施の形態7に係
るプロセッサシステムの構成を示す図である。図20に
示されるように、このプロセッサシステムは図13に示
された実施の形態4に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ71に含まれた命令フェ
ッチ部74やコプロセッサ命令制御部75や命令実行部
77の構成が相違するものである。
ッサ命令制御部75と命令実行部77の構成を示す図で
ある。図21に示されるように、コプロセッサ命令制御
部75及び命令実行部77はそれぞれ図14に示された
コプロセッサ命令制御部45及び命令実行部47と同様
な構成を有するが、コプロセッサ命令制御部75は各コ
プロセッサCPR0〜CPRnに対応した信号busyn
(n は0以上の整数)を出力するスコアボード114を
備え、命令実行部77はデコード部122及びレジスタ
9に接続され上記信号busyn が供給される同期制御部1
36を備える点で相違する。
4に係るプロセッサシステムと相違する点について説明
する。まず、本実施の形態に係るメモリ73には、指定
するコプロセッサにおいて実行中のコプロセッサ命令の
実行完了を待つ図33に示された形式の命令も予め記憶
される。ここで、図33に示されたオペランドには実行
完了待ちの対象とするコプロセッサを指定する情報が記
録される。
プロセッサにて実行中のコプロセッサ命令の実行完了を
待つ命令を読み出した場合にはその命令を命令実行部7
7へ供給する。そして命令実行部77の同期制御部13
6は、供給された命令において指定されるコプロセッサ
CPRnに対応したコプロセッサ命令制御部75から供給さ
れる信号busyn (n は0以上の整数)が0の値を有して
いれば、プロセッサ実行命令を実行する。一方、命令実
行部77の同期制御部136は上記命令を受領したとき
指定されたコプロセッサCPRnに関してコプロセッサ命令
制御部75から1の値を有する信号busyn が供給されて
いれば、信号busyn が0となった時点で、該プロセッサ
実行命令を実行し完了させる。
アボード114は、指定されたコプロセッサCPRnがコプ
ロセッサ命令を実行中である場合には1の値を有する信
号busyn を命令実行部77の同期制御部136へ供給
し、指定されたコプロセッサCPRnがコプロセッサ命令を
実行中でない場合には0の値を有する信号busyn を命令
実行部77の同期制御部136へ供給する。
システムによれば、上記実施の形態4に係るプロセッサ
システムと同様な効果を奏すると共に、さらに主プロセ
ッサ71は個々のコプロセッサCPR0〜CPRn毎
に、コプロセッサ命令を実行中であるか否か判断するた
め、他のコプロセッサで実行されるコプロセッサ命令の
発行を待つことなく指定されたコプロセッサへコプロセ
ッサ命令が発行される。従って、コプロセッサ命令をコ
プロセッサCPR0〜CPRnへより効率的に発行する
ことができる。
ッサシステムにおいては、上記実施の形態1に係るコプ
ロセッサ命令のように処理の例外による制御依存が発生
する可能性があるか否かを示すフィールドEXCEPが
オペランドに結合されたコプロセッサ命令を予めメモリ
73に記憶させ、係る命令形式に対応した構成を有する
ものとすることができる。
セッサ命令制御部75の発行制御部109は、供給され
た上記コプロセッサ命令のフィールドEXCEPが0の
場合には、命令フェッチ部74から供給されたコプロセ
ッサ命令が先に実行されるコプロセッサ命令とのデータ
依存がない場合に、コプロセッサ命令をCR11に指定
されたコプロセッサへ発行信号Inを通じて発行し、発
行情報をスコアボード114へ書き込む。又逆に該デー
タ依存がある場合には、コプロセッサ命令制御部75は
依存しているコプロセッサ命令の完了を待った後、コプ
ロセッサ命令をCR11にて指定されたコプロセッサへ
発行信号Inを通じて発行し、発行情報をスコアボード
114へ書き込む。
ールドEXCEPが1の場合には、常に、先に実行され
ているコプロセッサ命令の完了を待った後、コプロセッ
サ命令をCR11にて指定されたコプロセッサへ発行信
号Inを通じて発行し、発行情報をスコアボード114
へ書き込む。以上の構成を有するプロセッサシステムに
よれば、主プロセッサ71は供給されたコプロセッサ命
令に含まれる命令コードを読みだすことによらず、オペ
ランドに結合したフィールドEXCEPに記録された情
報によりコプロセッサ命令の発行タイミングを決定する
ため、メモリ73から供給されるコプロセッサ命令の種
類によらずさらに効率的な命令発行動作を実現すること
ができる。
個の信号busyn が全て0となったときに初めて命令実行
部がプロセッサ実行命令を実行し完了させるものも同様
に考えられる。ここで図22は、このようなシステムに
おける命令実行部78の構成を示す図である。図22に
示されるように、命令実行部78はデコード部123及
びレジスタ部9に接続されn個の信号busyn が供給され
る第一同期制御部137をさらに備え、第一同期制御部
137は上記n個の信号busyn が全て0となったときに
プロセッサ実行命令を実行し完了させる。 [実施の形態8]図24は、本発明の実施の形態8に係
るプロセッサシステムの構成を示す図である。図24に
示されるように、このプロセッサシステムは図20に示
された実施の形態7に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ81に含まれた命令フェ
ッチ部84、コプロセッサ命令制御部85、命令実行部
87の構成が相違し、さらにフラグ29を備えたもので
ある。なお、このフラグ29は図8に示された実施の形
態2に係るフラグ29と同じものである。
ッサ命令制御部85と命令実行部87の構成を示す図で
ある。図25に示されるように、コプロセッサ命令制御
部85及び命令実行部87はそれぞれ図21に示された
コプロセッサ命令制御部75及び命令実行部77と同様
な構成を有するが、コプロセッサ命令制御部85はフラ
グ29に接続された例外判断部108を備え、命令実行
部87はデコード部124及びレジスタ26に接続され
フラグ29への書き込みを制御するフラグ書込制御部1
33をさらに備える点で相違する。
システムは、上記実施の形態7に係るプロセッサシステ
ムと実施の形態2に係るプロセッサシステムの両方の機
能を有するものである。ここで、本実施の形態8に係る
プロセッサシステムによれば、上記実施の形態7に係る
プロセッサシステムと同様の効果を得ることができると
ともに、主プロセッサ81は供給されたコプロセッサ命
令に含まれる命令コードを読みだすことによらずフラグ
29の値に応じてコプロセッサ命令の発行タイミングを
決定するため、メモリ83から供給されるコプロセッサ
命令の種類によらず効率的な命令発行動作を実現するこ
とができる。
ッサシステムにおいては、実施の形態4に記されたコプ
ロセッサ命令の実行完了を待つ命令もメモリ83へ予め
記憶させ、実施の形態4に係るプロセッサシステムと同
様に上記命令の実行も可能なものとすることができる。
このような構成を有するプロセッサシステムによれば、
主プロセッサ81は供給されたコプロセッサ命令に含ま
れる命令コードを読みだすことによらず、少なくとも一
つのコプロセッサが現在コプロセッサ命令を実行中であ
るか否かを示す信号busyに応じてプロセッサ実行命令を
実行してコプロセッサ命令の発行タイミングを決定する
ため、メモリ83から供給されるコプロセッサ命令の種
類に応じてさらに効率的な命令発行動作を実現すること
ができる。
個の信号busyn が全て0となったときに初めて命令実行
部がプロセッサ実行命令を実行し完了させるものも同様
に考えられる。ここで図26は、このようなシステムに
おける命令実行部88の構成を示す図である。図26に
示されるように、命令実行部88はデコード部125及
びレジスタ部26に接続されn個の信号busyn が供給さ
れる第一同期制御部137をさらに備え、第一同期制御
部137は上記n個の信号busyn が全て0となったとき
にプロセッサ実行命令を実行し完了させる。 [実施の形態9]図27は、本発明の実施の形態9に係
るプロセッサシステムの構成を示す図である。図27に
示されるように、このプロセッサシステムは図24に示
された実施の形態8に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ91に含まれた命令フェ
ッチ部94、コプロセッサ命令制御部95、命令実行部
97やレジスタ66の構成が相違し、さらに複数のフラ
グ0からフラグnを備えたものである。なお、この複数
のフラグは図10に示された実施の形態3に係る複数の
フラグ0からフラグnと同じものである。
ッサ命令制御部95と命令実行部97の構成を示す図で
ある。図28に示されるように、コプロセッサ命令制御
部95及び命令実行部97はそれぞれ図25に示された
コプロセッサ命令制御部85及び命令実行部87と同様
な構成を有するが、コプロセッサ命令制御部95はフラ
グ0からフラグnに接続された例外判断部108を備
え、命令実行部97はデコード部126及びレジスタ6
6に接続されフラグ0からフラグnへの書き込みを制御
するフラグ書込制御部134を備える点で相違する。
システムは、上記実施の形態3に係るプロセッサシステ
ムと実施の形態7に係るプロセッサシステムの両方の機
能を有するものである。そして、このような構成を有す
るプロセッサシステムによれば、主プロセッサ91は個
々のコプロセッサCPR0〜CPRn毎に、これから実
行するコプロセッサ命令の制御依存性を判断し、他のコ
プロセッサで実行されるコプロセッサ命令の発行を待つ
ことなくコプロセッサ命令を発行するため、コプロセッ
サ命令をコプロセッサCPR0〜CPRnへ効率的に発
行することができる。
ロセッサ命令に含まれる命令コードを読みだすことによ
らず、指定されたコプロセッサが現在コプロセッサ命令
を実行中であるか否かを示す信号busyn に応じてコプロ
セッサ毎にコプロセッサ命令の発行タイミングを決定す
るため、メモリ93から供給されるコプロセッサ命令の
種類によらず効率的な命令発行動作を実現することもで
きる。
ッサシステムにおいては、実施の形態4に記されたコプ
ロセッサ命令の実行完了を待つ命令もメモリ93へ予め
記憶させ、実施の形態4に係るプロセッサシステムと同
様に上記命令の実行も可能なものとすることができる。
このような構成を有するプロセッサシステムによれば、
主プロセッサ91は供給されたコプロセッサ命令に含ま
れる命令コードを読みだすことによらず、少なくとも一
つのコプロセッサが現在コプロセッサ命令を実行中であ
るか否かを示す信号busyに応じてプロセッサ実行命令を
実行してコプロセッサ命令の発行タイミングを決定する
ため、メモリ93から供給されるコプロセッサ命令の種
類に応じてさらに効率的な命令発行動作を実現すること
ができる。
個の信号busyn が全て0となったときに初めて命令実行
部がプロセッサ実行命令を実行し完了させるものも同様
に考えられる。ここで図29は、このようなシステムに
おける命令実行部98の構成を示す図である。図29に
示されるように、命令実行部98はデコード部127及
びレジスタ部66に接続されn個の信号busyn が供給さ
れる第一同期制御部137をさらに備え、第一同期制御
部137は上記n個の信号busyn が全て0となったとき
にプロセッサ実行命令を実行し完了させる。
段について付記する。 (1)コプロセッサに接続されるプロセッサであって、
プロセッサは、コプロセッサにおける実行を命令する第
一のコプロセッサ命令が供給されたときに、第一のコプ
ロセッサ命令に対応する依存可能性表示データに基づい
て、第一のコプロセッサ命令がコプロセッサにおいて先
に実行される第二のコプロセッサ命令に対して制御依存
性を有する可能性があると判断した場合には、第二のコ
プロセッサ命令の実行が完了した後に第一のコプロセッ
サ命令をコプロセッサへ発行することを特徴とするプロ
セッサ。 (2)依存可能性表示データは第一のコプロセッサ命令
に結合されると共に、第一のコプロセッサ命令が制御依
存性を有する可能性があるか否かを示すフィールドから
なる(1)に記載のプロセッサ。 (3)依存可能性表示データは、供給される信号により
書き換え可能なフラグに格納される(1)に記載のプロ
セッサ。 (4)フラグに格納される依存可能性表示データは、第
一のコプロセッサが第二のコプロセッサ命令に対して制
御依存性を有する可能性があるか否かを示す(3)に記
載のプロセッサ。 (5)少なくとも二つのコプロセッサに接続され、フラ
グはコプロセッサ毎に対応して備えられた(3)に記載
のプロセッサ。 (6)コプロセッサに接続されたプロセッサであって、
コプロセッサが第一のコプロセッサ命令を実行中である
か否かを示す信号を生成する信号生成手段と、コプロセ
ッサが第一のコプロセッサ命令を実行中であることを示
す実行表示信号が信号生成手段から供給されている場合
には、信号生成手段から実行の完了を示す実行完了信号
が供給された時にプロセッサ実行命令を実行する命令実
行手段とを備えたことを特徴とするプロセッサ。 (7)少なくとも二つのコプロセッサに接続され、信号
生成手段はコプロセッサ毎に対応して実行中であるか否
かを示す信号を生成し、命令実行手段は、指定されたコ
プロセッサに対応する実行表示信号が信号生成手段から
供給されている場合には、信号生成手段から指定された
コプロセッサに対応する実行完了信号が供給された時に
プロセッサ実行命令を実行する(6)に記載のプロセッ
サ。 (8)命令実行手段は、少なくとも一つのコプロセッサ
がコプロセッサ命令を実行中であることを示す信号が供
給されている場合には、全てのコプロセッサにおける実
行の完了を示す信号が供給された時にプロセッサ実行命
令を実行する(7)に記載のプロセッサ。 (9)供給される信号により書き換え可能なフラグと、
コプロセッサ命令が供給されたとき、フラグが所定の値
である場合にはコプロセッサで実行中のコプロセッサ命
令の実行が完了した後に次のコプロセッサ命令をコプロ
セッサへ発行する命令発行手段とをさらに備えた(6)
から(8)のいずれかに記載のプロセッサ。 (10)コプロセッサと、コプロセッサに接続された主
プロセッサとを有するプロセッサシステムであって、主
プロセッサは、コプロセッサにおける実行を命令する第
一のコプロセッサ命令が供給されたときに、第一のコプ
ロセッサ命令に対応する依存可能性表示データに基づい
て、第一のコプロセッサ命令がコプロセッサにおいて先
に実行される第二のコプロセッサ命令に対して制御依存
性を有する可能性があると判断した場合には、第二のコ
プロセッサ命令の実行が完了した後に第一のコプロセッ
サ命令をコプロセッサへ発行することを特徴とするプロ
セッサシステム。 (11)依存可能性表示データは第一のコプロセッサ命
令に結合されると共に、第一のコプロセッサ命令が制御
依存性を有する可能性があるか否かを示すフィールドか
らなる(10)に記載のプロセッサシステム。 (12)依存可能性表示データは、供給される信号によ
り書き換え可能なフラグに格納される(10)に記載の
プロセッサシステム。 (13)フラグに格納される依存可能性表示データは、
第一のコプロセッサが第二のコプロセッサ命令に対して
制御依存性を有する可能性があるか否かを示すものであ
る(12)に記載のプロセッサシステム。 (14)少なくとも二つのコプロセッサを有し、フラグ
はコプロセッサ毎に対応して備えられた(12)に記載
のプロセッサシステム。 (15)コプロセッサと、コプロセッサに接続された主
プロセッサとを有するプロセッサシステムであって、主
プロセッサは、コプロセッサが第一のコプロセッサ命令
を実行中であるか否かを示す信号を生成する信号生成手
段と、コプロセッサが第一のコプロセッサ命令を実行中
であることを示す実行表示信号が信号生成手段から供給
されている場合には、信号生成手段から実行の完了を示
す実行完了信号が供給された時にプロセッサ実行命令を
実行する命令実行手段とを備えたことを特徴とするプロ
セッサシステム。 (16)少なくとも二つのコプロセッサを備え、信号生
成手段はコプロセッサ毎に対応して実行中であるか否か
を示す信号を生成し、命令実行手段は、指定されたコプ
ロセッサに対応する実行表示信号が信号生成手段から供
給されている場合には、信号生成手段から指定されたコ
プロセッサに対応する実行完了信号が供給された時にプ
ロセッサ実行命令を実行する(15)に記載のプロセッ
サシステム。 (17)命令実行手段は、少なくとも一つのコプロセッ
サがコプロセッサ命令を実行中であることを示す信号が
供給されている場合には、全てのコプロセッサにおける
実行の完了を示す信号が供給された時にプロセッサ実行
命令を実行する(16)に記載のプロセッサシステム。 (18)主プロセッサは、供給される信号により書き換
え可能なフラグと、コプロセッサ命令が供給されたと
き、フラグが所定の値である場合にはコプロセッサで実
行中のコプロセッサ命令の実行が完了した後に次のコプ
ロセッサ命令をコプロセッサへ発行する命令発行手段と
をさらに備えた(15)から(17)のいずれかに記載
のプロセッサシステム。
ステムによれば、依存可能性表示データに基づいて第一
のコプロセッサ命令における制御依存の可能性が容易に
判断されるため、制御依存の可能性がないコプロセッサ
命令については、投機的な命令の発行を迅速に行うこと
ができる。
タに基づいて第一のコプロセッサ命令の制御依存性を判
断するため、第一のコプロセッサ命令の種類によらずそ
の構成を統一的に決定することができる。従って、主プ
ロセッサがコプロセッサに対する互換性を有するという
意味で、投機的な命令発行の能力を向上させることがで
きる。
る。
実行部の構成を示す図である。
ある。
命令の命令形式を示す図である。
ムの構成を示す図である。
実行部の構成を示す図である。
の命令形式を示す図である。
ムの構成を示す図である。
実行部の構成を示す図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
フラグを書き換える命令の命令形式を示す図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
プロセッサ命令の実行完了を待つ命令の命令形式を示す
図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
命令実行部の他の構成を示す図である。
プロセッサ命令の実行完了を待つ命令の命令形式を示す
図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
命令実行部の他の構成を示す図である。
テムの構成を示す図である。
命令実行部の構成を示す図である。
命令実行部の他の構成を示す図である。
1,91 主プロセッサ 3,17,23,33,43,53,63,73,8
3,93 メモリ 5,24,34,44,54,64,74,84,94
命令フェッチ部 7,27,37,47,57,67,77,78,8
7,88,97,98 命令実行部 9,26,36,66 レジスタ 11 コプロセッサ指定レジスタ(CR) 13,19,25,35,45,55,65,75,8
5,95 コプロセッサ命令制御部 29 フラグ 100,101 命令レジスタ 102 リソース判断部 103 リソースデコード部 104 例外デコード部 105 フラグ検出部 106,107,108 例外判断部 109 発行制御部 110 完了制御部 111,112〜114 スコアボード 115〜127 デコード部 129 書込制御部 131 実行制御部 133,134 フラグ書込制御部 135,136 同期制御部 137 第一同期制御部 CPR0〜CPRn コプロセッサ
Claims (4)
- 【請求項1】 コプロセッサに接続されるプロセッサで
あって、 前記プロセッサは、前記コプロセッサにおける実行を命
令する第一のコプロセッサ命令が供給されたときに、前
記第一のコプロセッサ命令に対応する依存可能性表示デ
ータに基づいて、前記第一のコプロセッサ命令が前記コ
プロセッサにおいて先に実行される第二のコプロセッサ
命令に対して制御依存性を有する可能性があると判断し
た場合には、前記第二のコプロセッサ命令の実行が完了
した後に前記第一のコプロセッサ命令を前記コプロセッ
サへ発行することを特徴とするプロセッサ。 - 【請求項2】 コプロセッサに接続されたプロセッサで
あって、 前記コプロセッサが第一のコプロセッサ命令を実行中で
あるか否かを示す信号を生成する信号生成手段と、 前記コプロセッサが前記第一のコプロセッサ命令を実行
中であることを示す実行表示信号が前記信号生成手段か
ら供給されている場合には、前記信号生成手段から前記
実行の完了を示す実行完了信号が供給された時にプロセ
ッサ実行命令を実行する命令実行手段とを備えたことを
特徴とするプロセッサ。 - 【請求項3】 コプロセッサと、前記コプロセッサに接
続された主プロセッサとを有するプロセッサシステムで
あって、 前記主プロセッサは、前記コプロセッサにおける実行を
命令する第一のコプロセッサ命令が供給されたときに、
前記第一のコプロセッサ命令に対応する依存可能性表示
データに基づいて、前記第一のコプロセッサ命令が前記
コプロセッサにおいて先に実行される第二のコプロセッ
サ命令に対して制御依存性を有する可能性があると判断
した場合には、前記第二のコプロセッサ命令の実行が完
了した後に前記第一のコプロセッサ命令を前記コプロセ
ッサへ発行することを特徴とするプロセッサシステム。 - 【請求項4】 コプロセッサと、前記コプロセッサに接
続された主プロセッサとを有するプロセッサシステムで
あって、前記主プロセッサは、 前記コプロセッサが第一のコプロセッサ命令を実行中で
あるか否かを示す信号を生成する信号生成手段と、 前記コプロセッサが前記第一のコプロセッサ命令を実行
中であることを示す実行表示信号が前記信号生成手段か
ら供給されている場合には、前記信号生成手段から前記
実行の完了を示す実行完了信号が供給された時にプロセ
ッサ実行命令を実行する命令実行手段とを備えたことを
特徴とするプロセッサシステム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29458099A JP4160705B2 (ja) | 1999-10-15 | 1999-10-15 | プロセッサ及びプロセッサシステム |
EP10181089.3A EP2278453B1 (en) | 1999-10-15 | 2000-09-07 | Processor system with coprocessor |
EP00307746A EP1093053A3 (en) | 1999-10-15 | 2000-09-07 | Processor system with coprocessor |
US09/657,349 US6775762B1 (en) | 1999-10-15 | 2000-09-07 | Processor and processor system |
KR1020000056669A KR20010050661A (ko) | 1999-10-15 | 2000-09-27 | 프로세서 및 프로세서 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29458099A JP4160705B2 (ja) | 1999-10-15 | 1999-10-15 | プロセッサ及びプロセッサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001117886A true JP2001117886A (ja) | 2001-04-27 |
JP4160705B2 JP4160705B2 (ja) | 2008-10-08 |
Family
ID=17809630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29458099A Expired - Fee Related JP4160705B2 (ja) | 1999-10-15 | 1999-10-15 | プロセッサ及びプロセッサシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US6775762B1 (ja) |
EP (2) | EP2278453B1 (ja) |
JP (1) | JP4160705B2 (ja) |
KR (1) | KR20010050661A (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140325175A1 (en) * | 2013-04-29 | 2014-10-30 | Pact Xpp Technologies Ag | Pipeline configuration protocol and configuration unit communication |
GB2366426B (en) * | 2000-04-12 | 2004-11-17 | Ibm | Coprocessor data processing system |
US6842849B2 (en) * | 2001-05-21 | 2005-01-11 | Arm Limited | Locking source registers in a data processing apparatus |
US7073048B2 (en) * | 2002-02-04 | 2006-07-04 | Silicon Lease, L.L.C. | Cascaded microcomputer array and method |
US20050055594A1 (en) * | 2003-09-05 | 2005-03-10 | Doering Andreas C. | Method and device for synchronizing a processor and a coprocessor |
US7516302B2 (en) * | 2006-12-19 | 2009-04-07 | Arm Limited | Efficient use of co-processor in platform independent instruction machine by controlling result transfer and translation and transfer timing of subsequent instruction based on instruction type for result forwarding |
GB2539411B (en) * | 2015-06-15 | 2017-06-28 | Bluwireless Tech Ltd | Data processing |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE454920B (sv) * | 1986-10-03 | 1988-06-06 | Ellemtel Utvecklings Ab | Sett och anordning for att i en pa forhand avgjord ordningsfoljd exekvera tva instruktionssekvenser medelst separatminnen |
EP0306891A3 (en) * | 1987-09-11 | 1992-04-01 | National Semiconductor Corporation | Pipelined slave protocol for high performance cpu-fpu cluster |
JPH0679307B2 (ja) * | 1987-10-22 | 1994-10-05 | 日本電気株式会社 | コプロセッサの並行動作制御方式 |
EP0335990B1 (en) * | 1988-04-02 | 1993-12-08 | International Business Machines Corporation | Processor-processor synchronization |
US5197138A (en) * | 1989-12-26 | 1993-03-23 | Digital Equipment Corporation | Reporting delayed coprocessor exceptions to code threads having caused the exceptions by saving and restoring exception state during code thread switching |
US6327648B1 (en) * | 1994-12-09 | 2001-12-04 | Cirrus Logic, Inc. | Multiprocessor system for digital signal processing |
US5790880A (en) * | 1996-01-04 | 1998-08-04 | Advanced Micro Devices | Microprocessor configured to dynamically connect processing elements according to data dependencies |
KR100500002B1 (ko) * | 1996-08-27 | 2005-09-08 | 마츠시타 덴끼 산교 가부시키가이샤 | 복수의명령흐름을독립적으로처리하고,명령흐름단위로처리성능을유연하게제어하는멀티스레드프로세서 |
KR0175740B1 (ko) * | 1996-10-23 | 1999-05-15 | 한국전자통신연구원 | 고속병렬컴퓨터에서 태스크 병렬성을 위한 태스크간 통신 방법 |
US5781752A (en) * | 1996-12-26 | 1998-07-14 | Wisconsin Alumni Research Foundation | Table based data speculation circuit for parallel processing computer |
US5923893A (en) * | 1997-09-05 | 1999-07-13 | Motorola, Inc. | Method and apparatus for interfacing a processor to a coprocessor |
US5961630A (en) * | 1997-12-30 | 1999-10-05 | Intel Corporation | Method and apparatus for handling dynamic structural hazards and exceptions by using post-ready latency |
-
1999
- 1999-10-15 JP JP29458099A patent/JP4160705B2/ja not_active Expired - Fee Related
-
2000
- 2000-09-07 EP EP10181089.3A patent/EP2278453B1/en not_active Expired - Lifetime
- 2000-09-07 EP EP00307746A patent/EP1093053A3/en not_active Withdrawn
- 2000-09-07 US US09/657,349 patent/US6775762B1/en not_active Expired - Fee Related
- 2000-09-27 KR KR1020000056669A patent/KR20010050661A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
EP2278453B1 (en) | 2013-05-15 |
JP4160705B2 (ja) | 2008-10-08 |
EP2278453A1 (en) | 2011-01-26 |
EP1093053A2 (en) | 2001-04-18 |
US6775762B1 (en) | 2004-08-10 |
KR20010050661A (ko) | 2001-06-15 |
EP1093053A3 (en) | 2005-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW539996B (en) | Processor and method including a cache having confirmation bits for improving address-predictable branch instruction target predictions | |
US7624253B2 (en) | Determining register availability for register renaming | |
US20110225397A1 (en) | Mapping between registers used by multiple instruction sets | |
US6301655B1 (en) | Exception processing in asynchronous processor | |
JP5209933B2 (ja) | データ処理装置 | |
US6463524B1 (en) | Superscalar processor and method for incrementally issuing store instructions | |
US6338134B1 (en) | Method and system in a superscalar data processing system for the efficient processing of an instruction by moving only pointers to data | |
JP2653037B2 (ja) | データ処理システム | |
EP0588252B1 (en) | Apparatus for Processing Instructions with Improved Interrupt Handling | |
JP2535252B2 (ja) | 並列処理装置 | |
JP2001117886A (ja) | プロセッサ及びプロセッサシステム | |
JPS62115542A (ja) | 情報処理装置 | |
JPH1185513A (ja) | プロセッサ | |
EP0212132A1 (en) | Method and digital computer for recovering from errors | |
JPS6161416B2 (ja) | ||
JPH09138748A (ja) | 浮動小数点命令の早期完了方法および装置 | |
US11314505B2 (en) | Arithmetic processing device | |
JP2901573B2 (ja) | スーパースカラー方式の情報処理装置 | |
JPH07244588A (ja) | データ処理装置 | |
JP2856784B2 (ja) | 電子計算機 | |
JP3057732B2 (ja) | 情報処理装置 | |
JP3850156B2 (ja) | 命令処理装置 | |
JP2000181705A (ja) | 命令制御装置 | |
JPH07219771A (ja) | 命令プロセッサ | |
JPH06168216A (ja) | コプロセッサ制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061004 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080415 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080422 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080618 |
|
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: 20080715 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080718 |
|
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: 20110725 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110725 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120725 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120725 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130725 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |