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
Application number
JP29458099A
Other languages
English (en)
Other versions
JP4160705B2 (ja
Inventor
Hideo Miyake
英雄 三宅
Atsuhiro Suga
敦浩 須賀
Yasuki Nakamura
泰基 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP29458099A priority Critical patent/JP4160705B2/ja
Priority to EP10181089.3A priority patent/EP2278453B1/en
Priority to EP00307746A priority patent/EP1093053A3/en
Priority to US09/657,349 priority patent/US6775762B1/en
Priority to KR1020000056669A priority patent/KR20010050661A/ko
Publication of JP2001117886A publication Critical patent/JP2001117886A/ja
Application granted granted Critical
Publication of JP4160705B2 publication Critical patent/JP4160705B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent 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

(57)【要約】 【課題】 接続されるコプロセッサの種類によらず、効
率的なコプロセッサ命令の実行を実現する主プロセッサ
を備えたプロセッサシステムを提供する。 【解決手段】 コプロセッサCPR0〜CPRnと、主
プロセッサ15とを有するプロセッサシステムであっ
て、主プロセッサ15は、コプロセッサにおける実行を
命令するコプロセッサ命令がメモリ17から供給された
ときに、該コプロセッサ命令に対応する命令フィールド
に基づいて、コプロセッサ命令がコプロセッサCPR0
〜CPRnにおいて先に実行されるコプロセッサ命令に
対して制御依存性を有する可能性があると判断した場合
には、先行するコプロセッサ命令の実行が完了した後に
次のコプロセッサ命令をコプロセッサCPR0〜CPR
nへ発行することを特徴とするプロセッサシステムを提
供する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセッサとプロ
セッサシステムに関し、さらに詳しくは所定の制御方法
によりコプロセッサに命令を発行するプロセッサと、該
プロセッサ及びコプロセッサからなるプロセッサシステ
ムに関するものである。
【0002】
【従来の技術】図1は、従来のプロセッサシステムの構
成を示す図である。図1に示されるように、従来のプロ
セッサシステムは主プロセッサ1と、主プロセッサ1に
接続されたメモリ3と、主プロセッサ1に接続されたコ
プロセッサCPR0〜CPRnとを備える。ここで、主
プロセッサ1はメモリ3に接続された命令フェッチ部5
と、命令フェッチ部5に接続された命令実行部7と、命
令実行部7に接続されたコプロセッサ指定レジスタ(C
R)11と、命令フェッチ部5及びCR11に接続され
たコプロセッサ命令制御部13と、コプロセッサ命令制
御部13及び命令実行部7に接続されたレジスタ9とを
含む。
【0003】また図2は、図1に示されたコプロセッサ
命令制御部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に接続される。
【0004】一方、命令実行部7はデコード部115
と、書込制御部129と、実行制御部131とを備え
る。ここで、デコード部115は命令フェッチ部5に接
続され、書込制御部129及び実行制御部131はレジ
スタ9とデコード部115に接続される。なお、書込制
御部129はCR11に接続される。上記のような構成
を有するプロセッサシステムにおいては、命令フェッチ
部5はメモリ3から命令を読み出すが、コプロセッサ指
定レジスタ11を書き換える命令を読み出した場合は、
その命令を命令実行部7へ供給する。また、コプロセッ
サ命令を読み出した場合は、その命令をコプロセッサ命
令制御部13へ供給する。なお、上記以外の命令を読み
出した場合には、その命令を命令実行部7へ供給する。
【0005】また、命令実行部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に書き込む。ここ
で、「データ依存」とは、先行するコプロセッサ命令の
実行結果に基づいて、初めて後のコプロセッサ命令の実
行が可能となることをいう。
【0006】ここで、「処理の例外による制御依存」と
は、例えば0の値で除算することや浮動小数点を用いた
演算においてオーバーフローを生じるなどという処理の
例外を招き演算を継続できない状況となりうることをい
う。一方、リソース判断部102においてデータ依存が
あると判断される場合には、発行制御部109は該コプ
ロセッサ命令が依存する先行コプロセッサ命令の完了を
待った後に該コプロセッサ命令をCR11に指定された
コプロセッサへ信号Inとして発行し、信号Inを発行
した旨の情報(発行情報)をスコアボード111に書き
込む。なお、コプロセッサ命令制御部13は、完了制御
部110においてコプロセッサ命令の発行先であるコプ
ロセッサから完了信号Cn(nは0以上の整数)を受領
することによりコプロセッサ命令の実行完了が通知され
る。このとき、完了制御部110は完了信号Cnに応じ
てスコアボード111に書き込まれている信号Inを発
行した旨の発行情報を削除する。
【0007】また、コプロセッサ指定レジスタ(CR)
11は、操作対象のコプロセッサCPRn(nは0以上
の整数)の番号を指定する。また、メモリ3はコプロセ
ッサ命令を含む主プロセッサ1への命令を記憶し、レジ
スタ9はコプロセッサに与えるデータ及びコプロセッサ
における実行結果を格納する。なお、レジスタ9は複数
の記憶部からなる。
【0008】図3は、コプロセッサ命令の命令形式の一
例を示す図である。ここで、命令コードOP-CODE はコプ
ロセッサCPR0〜CPRnで実行すべき処理を示し、
オペランド1〜nはコプロセッサに与えるデータを保持
しているレジスタ内の記憶部の番号、あるいはコプロセ
ッサによる実行結果を格納するレジスタ内の記憶部の番
号を意味する。
【0009】図4は、CR11を書き換える命令の命令
形式を示す図である。図4に示されるオペランド1は、
CR11へ書込まれた値を保持するレジスタ9内のいず
れかの記憶部を指定する。なお、図4の命令コードOP-C
ODE とオペランド1との間には、任意の情報が記録され
る。次に、上記のプロセッサシステムにおけるコプロセ
ッサ命令の発行動作を説明する。コプロセッサ命令制御
部13の発行制御部109は、供給されたコプロセッサ
命令が処理の例外を発生する可能性がなく先行するコプ
ロセッサ命令とのデータ依存がない場合には該コプロセ
ッサ命令を発行すると共に発行情報をスコアボード11
1へ書き込み、処理の例外を発生する可能性がないが先
行するコプロセッサ命令とのデータ依存がある場合に
は、該先行するコプロセッサ命令の実行完了を待った後
に次のコプロセッサ命令を発行し発行情報をスコアボー
ド111へ書き込む。
【0010】一方、コプロセッサ命令制御部13の発行
制御部109は、供給されたコプロセッサ命令が処理の
例外を発生する可能性があり先行するコプロセッサ命令
とのデータ依存がない場合には該コプロセッサ命令を発
行すると共に発行情報をスコアボード111へ書き込
み、処理の例外を発生する可能性があり先行するコプロ
セッサ命令とのデータ依存もある場合には、該先行する
コプロセッサ命令の実行完了を待った後に次のコプロセ
ッサ命令を発行し発行情報をスコアボード111へ書き
込む。
【0011】上記のようなプロセッサシステムにおいて
は一般的に、命令発行能力を向上させる手法として、投
機的命令実行(speculative execution )が知られてい
る。そして、この投機的命令実行をコプロセッサに対す
る命令発行制御方式として用いる場合には、データ依存
や処理の例外による制御依存を保証する必要がある。し
かしながら、コプロセッサを有する従来のプロセッサシ
ステムにおいては、上記のようにコプロセッサ命令制御
部13が、命令フェッチ部5から供給されたコプロセッ
サ命令に含まれた命令コードによって該コプロセッサ命
令が処理の例外による制御依存を発生させるものか否か
を判定し、その判定結果に基づいて上記のように該コプ
ロセッサ命令の発行を行っていた。ここで、コプロセッ
サ命令は各コプロセッサCPR0〜CPRnに対応する
ものであるため、主プロセッサ1、特にそのうちコプロ
セッサ命令制御部13の構造は、主プロセッサ1に接続
されるコプロセッサCPR0〜CPRnの種類により異
なるものとせざるを得ないという問題があった。
【0012】
【発明が解決しようとする課題】本発明は、上述の問題
点を解消するためになされたものであり、接続されるコ
プロセッサの種類もしくは供給されるコプロセッサ命令
の種類によらず、処理の例外による制御依存の発生する
可能性を踏まえた効率的なコプロセッサ命令の処理を実
現するプロセッサと、該プロセッサを備えたプロセッサ
システムを提供することを目的とする。
【0013】
【課題を解決するための手段】上記の目的は、コプロセ
ッサに接続されるプロセッサであって、プロセッサは、
コプロセッサにおける実行を命令する第一のコプロセッ
サ命令が供給されたときに、第一のコプロセッサ命令に
対応する依存可能性表示データに基づいて、第一のコプ
ロセッサ命令がコプロセッサにおいて先に実行される第
二のコプロセッサ命令に対して制御依存性を有する可能
性があると判断した場合には、第二のコプロセッサ命令
の実行が完了した後に第一のコプロセッサ命令をコプロ
セッサへ発行することを特徴とするプロセッサを提供す
ることにより達成される。このような手段によれば、プ
ロセッサは第一のコプロセッサ命令ではなく依存可能性
表示データに基づいて第一のコプロセッサ命令の制御依
存性を判断するため、プロセッサの構成をコプロセッサ
の種類に依らず決定することができる。
【0014】また、本発明の目的は、コプロセッサに接
続されたプロセッサであって、コプロセッサが第一のコ
プロセッサ命令を実行中であるか否かを示す信号を生成
する信号生成手段と、コプロセッサが第一のコプロセッ
サ命令を実行中であることを示す実行表示信号が信号生
成手段から供給されている場合には、信号生成手段から
実行の完了を示す実行完了信号が供給された時にプロセ
ッサ実行命令を実行する命令実行手段とを備えたことを
特徴とするプロセッサを提供することにより達成され
る。
【0015】また、本発明の目的は、コプロセッサと、
コプロセッサに接続された主プロセッサとを有するプロ
セッサシステムであって、主プロセッサはコプロセッサ
における実行を命令する第一のコプロセッサ命令が供給
されたときに、第一のコプロセッサ命令に対応する依存
可能性表示データに基づいて、第一のコプロセッサ命令
がコプロセッサにおいて先に実行される第二のコプロセ
ッサ命令に対して制御依存性を有する可能性があると判
断した場合には、第二のコプロセッサ命令の実行が完了
した後に第一のコプロセッサ命令をコプロセッサへ発行
することを特徴とするプロセッサシステムを提供するこ
とにより達成される。このような手段によれば、主プロ
セッサは第一のコプロセッサ命令ではなく依存可能性表
示データに基づいて第一のコプロセッサ命令の制御依存
性を判断するため、主プロセッサの構成をコプロセッサ
の種類に依らず決定することができる。
【0016】さらに本発明の目的は、コプロセッサと、
コプロセッサに接続された主プロセッサとを有するプロ
セッサシステムであって、主プロセッサは、コプロセッ
サが第一のコプロセッサ命令を実行中であるか否かを示
す信号を生成する信号生成手段と、コプロセッサが第一
のコプロセッサ命令を実行中であることを示す実行表示
信号が信号生成手段から供給されている場合には、信号
生成手段から実行の完了を示す実行完了信号が供給され
た時にプロセッサ実行命令を実行する命令実行手段とを
備えたことを特徴とするプロセッサシステムを提供する
ことによっても達成される。
【0017】
【発明の実施の形態】以下において、本発明の実施の形
態を図面を参照して詳しく説明する。なお、図中同一符
号は同一または相当部分を示す。 [実施の形態1]図5は、本発明の実施の形態1に係る
プロセッサシステムの構成を示す図である。図5に示さ
れるように、このプロセッサシステムは図1に示された
従来のプロセッサシステムに対し、主プロセッサ15に
含まれたコプロセッサ命令制御部19の構成が相違する
ものである。
【0018】図6は、図5に示されたコプロセッサ命令
制御部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に接続される。
【0019】一方、命令実行部7はデコード部116
と、書込制御部129と、実行制御部131とを備え
る。ここで、デコード部116は命令フェッチ部5に接
続され、書込制御部129及び実行制御部131はレジ
スタ9とデコード部116に接続される。なお、書込制
御部129はCR11に接続される。上記のような構成
を有する本実施の形態に係るメモリ17には、図7に示
された形式を有するコプロセッサ命令が予め記憶され
る。図7に示されたコプロセッサ命令の形式は、図3に
示されたコプロセッサ命令の形式に対して、処理の例外
による制御依存が発生する可能性があるコプロセッサ命
令であるか否かを示すフィールドEXCEPがオペラン
ドnに結合される点で相違する。そして、このフィール
ドEXCEPは処理の例外による制御依存が発生する可
能性がある場合には1が記録され、該可能性がない場合
には0があらかじめ記録される。なお上記のように、
「処理の例外による制御依存」とは、例えば0の値で除
算することや浮動小数点を用いた演算においてオーバー
フローを生じるなどという処理の例外を招き演算を継続
できない状況となりうることをいう。
【0020】上記のような形式を有するコプロセッサ命
令が命令フェッチ部5を介してコプロセッサ命令制御部
19の命令レジスタ101へ供給された場合の、コプロ
セッサ命令制御部19の動作について以下に説明する。
命令レジスタ101へ供給されたコプロセッサ命令は、
リソースデコード部103により解析される。そして、
リソース判断部102は該解析結果とスコアボード11
2から供給された実行中の命令に対応する発行情報に基
いて、命令フェッチ部5から供給されたコプロセッサ命
令が先に実行されるコプロセッサ命令にデータ依存する
ものか否かを判断し、その判断結果を発行制御部109
へ通知する。
【0021】一方、例外判断部107が、供給されたコ
プロセッサ命令のフィールドEXCEPに書き込まれて
いるデータの値は0であると判断した場合には、発行制
御部109は命令フェッチ部5から供給されたコプロセ
ッサ命令が先に実行されるコプロセッサ命令とのデータ
依存がないとリソース判断部102によって判断される
とき、コプロセッサ命令をCR11に指定されたコプロ
セッサへ発行信号Inを通じて発行し、発行情報をスコ
アボード112へ書き込む。又逆に、リソース判断部1
02により該データ依存があると判断される場合には、
発行制御部109は依存しているコプロセッサ命令の完
了を待った後、コプロセッサ命令をCR11にて指定さ
れたコプロセッサへ発行信号Inを通じて発行し、発行
情報をスコアボード112へ書き込む。
【0022】一方、供給されたコプロセッサ命令のフィ
ールドEXCEPが1の場合には、発行制御部109は
常に、先に実行されているコプロセッサ命令の完了を待
った後、コプロセッサ命令をCR11にて指定されたコ
プロセッサへ発行信号Inを通じて発行し、発行情報を
スコアボード112へ書き込む。このように本実施の形
態に係るコプロセッサ命令制御部19においては、先に
実行される命令に関する情報ではなく、コプロセッサ命
令のフィールドEXCEPに書き込まれた情報によりコ
プロセッサ命令の発行タイミングを決定するため、スコ
アボード112等から例外判断部10への配線が不要に
なると共に、フラグ検出部105より回路規模の大きな
例外デコード部104も不要になる。
【0023】従って、本実施の形態1に係るプロセッサ
システムによれば、回路規模を小さくできると共に、主
プロセッサ15は供給されたコプロセッサ命令に含まれ
る命令コードを読みだすことによらず、オペランドnに
結合したフィールドEXCEPに記録された情報により
コプロセッサ命令の発行タイミングを決定するため、メ
モリ17から供給されるコプロセッサ命令の種類によら
ず効率的な命令発行動作を実現することができる。 [実施の形態2]図8は、本発明の実施の形態2に係る
プロセッサシステムの構成を示す図である。図8に示さ
れるように、このプロセッサシステムは図1に示された
従来のプロセッサシステムに対し、主プロセッサ21に
含まれた命令フェッチ部24やコプロセッサ命令制御部
25や命令実行部27の構成が相違し、命令実行部27
に接続されたフラグ29をさらに備えたものである。
【0024】また、図9は図8に示されたコプロセッサ
命令制御部25と命令実行部27の構成を示す図であ
る。図9に示されるように、コプロセッサ命令制御部2
5及び命令実行部27はそれぞれ図6に示されたコプロ
セッサ命令制御部19及び命令実行部7と同様な構成を
有するが、コプロセッサ命令制御部25はフラグ29に
接続された例外判断部108を備え、命令実行部27は
デコード部117及びレジスタ26に接続されフラグ2
9への書き込みを制御するフラグ書込制御部133をさ
らに備える点で相違する。
【0025】以下に、図1に示された従来のプロセッサ
システムと相違する点について詳しく説明する。まず、
本実施の形態に係るメモリ23には、図4に示された形
式と同様の形式を有しフラグ29を書き換える命令も予
め記憶される。なお、この場合には図4に示されたオペ
ランド1には、フラグ29への書込み値(0または1)
を保持するレジスタ26内の記憶部の番号が記録され
る。また、命令フェッチ部24はフラグ29の値を書き
換える上記命令を読み出した場合にはその命令を命令実
行部27へ供給し、命令実行部27に含まれたフラグ書
込制御部133は該命令を受領してフラグ29の値を書
き換える。
【0026】また、命令実行部27に接続されたフラグ
29は、主プロセッサ21よりコプロセッサCPR0〜
CPRnへ処理の例外による制御依存が発生する可能性
があるコプロセッサ命令を発行することを示すものであ
り、処理の例外による制御依存が発生する可能性がある
コプロセッサ命令を発行する場合には予め命令実行部2
7に含まれたフラグ書込制御部133により1が設定さ
れ、処理の例外による制御依存が発生する可能性がある
コプロセッサ命令を発行しない場合には予め命令実行部
27に含まれたフラグ書込制御部133により0が設定
される。
【0027】また、コプロセッサ命令制御部25の動作
について以下に説明する。供給されたコプロセッサ命令
を発行する際、例外判断部108によりフラグ29が0
と判断された場合には、命令フェッチ部24から供給さ
れたコプロセッサ命令が先に実行されるコプロセッサ命
令とのデータ依存がない場合に、発行制御部109はコ
プロセッサ命令をCR11に指定されたコプロセッサへ
発行信号Inを通じて発行し、発行情報をスコアボード
112へ書き込む。又逆に該データ依存があると発行制
御部109により判断される場合には、依存しているコ
プロセッサ命令の完了を待った後、コプロセッサ命令を
CR11にて指定されたコプロセッサへ発行信号Inを
通じて発行し、発行情報をスコアボード112へ書き込
む。
【0028】一方、供給されたコプロセッサ命令を発行
する際、例外判断部108によりフラグ29が1と判断
された場合には、常に、先に実行されているコプロセッ
サ命令の完了を待った後、発行制御部109はコプロセ
ッサ命令をCR11にて指定されたコプロセッサへ発行
信号Inを通じて発行し、発行情報をスコアボード11
2へ書き込む。
【0029】以上より本実施の形態2に係るプロセッサ
システムによっても、主プロセッサ21は供給されたコ
プロセッサ命令に含まれる命令コードを読みだすことに
よらずフラグ29の値によりコプロセッサ命令の発行タ
イミングを決定するため、メモリ23から供給されるコ
プロセッサ命令の種類によらず効率的な命令発行動作を
実現することができる。 [実施の形態3]図10は、本発明の実施の形態3に係
るプロセッサシステムの構成を示す図である。図10に
示されるように、このプロセッサシステムは図8に示さ
れた実施の形態2に係るプロセッサシステムと同様な構
成を有するが、主プロセッサ21に含まれた命令フェッ
チ部34やコプロセッサ命令制御部35や命令実行部3
7の構成が相違し、命令実行部37に直列接続されると
共にそれぞれのコプロセッサCPR0〜CPRnに対応
して設けられたn個のフラグを備えたものである。
【0030】また、図11は図10に示されたコプロセ
ッサ命令制御部35と命令実行部37の構成を示す図で
ある。図11に示されるように、コプロセッサ命令制御
部35及び命令実行部37はそれぞれ図9に示されたコ
プロセッサ命令制御部25及び命令実行部27と同様な
構成を有するが、コプロセッサ命令制御部35はフラグ
0からフラグnに接続された例外判断部108を備え、
命令実行部37はデコード部118及びレジスタ36に
接続されフラグ0からフラグnへの書き込みを制御する
フラグ書込制御部134を備える点で相違する。
【0031】以下に、図8に示された実施の形態2に係
るプロセッサシステムと相違する点について詳しく説明
する。まず、本実施の形態に係るメモリ33には、図1
2に示された形式を有しフラグ0からフラグnのうち少
なくとも一つを書き換える命令も予め記憶される。な
お、図12に示されたオペランド1には、0又は1の書
込み値を書込むフラグを指定する番号が記録され、オペ
ランド2にはオペランド1において指定したフラグへの
書込み値(0または1)を保持するレジスタ36内の記
憶部の番号が記録される。また、命令フェッチ部34は
所定のフラグを書き換える上記命令を読み出した場合に
は、その命令を命令実行部37へ供給し、フラグ書込制
御部134は該命令を受領して該命令のオペランド2に
おいて指定されたレジスタ36内の所定の記憶部に格納
されている書込み値を、オペランド1において指定され
た所定のフラグに書込む。
【0032】また、命令実行部37に直列接続されたn
個のフラグは、対応するコプロセッサCPR0〜CPR
nに対して、主プロセッサ31よりコプロセッサCPR
0〜CPRnへ処理の例外による制御依存が発生する可
能性があるコプロセッサ命令を発行することを示すもの
であり、処理の例外による制御依存が発生する可能性が
あるコプロセッサ命令を発行する場合には予め命令実行
部37のフラグ書込制御部134により1が設定され、
処理の例外による制御依存が発生する可能性があるコプ
ロセッサ命令を発行しない場合には予め命令実行部37
のフラグ書込制御部134により0が設定される。
【0033】また、コプロセッサ命令制御部35の動作
について以下に説明する。供給されたコプロセッサ命令
を発行する際、例外判断部108により該コプロセッサ
命令が実行されるコプロセッサに対応するフラグが0で
あると判断される場合には、命令フェッチ部34から供
給されたコプロセッサ命令が、該コプロセッサにおいて
先に実行されるコプロセッサ命令とのデータ依存がない
場合に、発行制御部109はコプロセッサ命令をCR1
1に指定されたコプロセッサへ発行信号Inを通じて発
行し、発行情報をスコアボード112へ書き込む。又逆
に該データ依存がある場合には、発行制御部109は依
存しているコプロセッサ命令の完了を待った後、コプロ
セッサ命令をCR11にて指定されたコプロセッサへ発
行信号Inを通じて発行し、発行情報をスコアボード1
12へ書き込む。
【0034】一方、供給されたコプロセッサ命令を発行
する際、例外判断部108により該コプロセッサ命令が
実行されるコプロセッサに対応するフラグが1であると
判断される場合には、発行制御部109は常に、該コプ
ロセッサにおいて先に実行されているコプロセッサ命令
の完了を待った後、コプロセッサ命令を該コプロセッサ
へ発行信号Inを通じて発行し、発行情報をスコアボー
ド112へ書き込む。
【0035】以上より本実施の形態3に係るプロセッサ
システムによれば、上記実施の形態2に係るプロセッサ
システムと同様な効果を奏すると共に、さらに主プロセ
ッサ31は個々のコプロセッサCPR0〜CPRn毎
に、これから実行するコプロセッサ命令の制御依存性を
判断するため、他のコプロセッサで実行されるコプロセ
ッサ命令の発行を待つことなくコプロセッサ命令が発行
される。従って、コプロセッサ命令をコプロセッサCP
R0〜CPRnへより効率的に発行することができる。 [実施の形態4]図13は、本発明の実施の形態4に係
るプロセッサシステムの構成を示す図である。図13に
示されるように、このプロセッサシステムは図5に示さ
れた実施の形態1に係るプロセッサシステムと同様な構
成を有するが、主プロセッサ41に含まれた命令フェッ
チ部44やコプロセッサ命令制御部45や命令実行部4
7の構成が相違するものである。
【0036】また、図14は図13に示されたコプロセ
ッサ命令制御部45と命令実行部47の構成を示す図で
ある。図14に示されるように、コプロセッサ命令制御
部45及び命令実行部47はそれぞれ図6に示されたコ
プロセッサ命令制御部19及び命令実行部7と同様な構
成を有するが、命令実行部47はデコード部119に接
続された同期制御部135をさらに備え、コプロセッサ
命令制御部45は同期制御部135に接続されたスコア
ボード112を備える点で相違する。
【0037】以下に、図5に示された上記実施の形態1
に係るプロセッサシステムと相違する点について詳しく
説明する。まず、本実施の形態に係るメモリ43には、
図15に示された形式を有し実行中のコプロセッサ命令
の実行完了を待つ命令も予め記憶される。また、命令フ
ェッチ部44は実行中のコプロセッサ命令の実行完了を
待つ上記命令を読み出した場合にはその命令を命令実行
部47へ供給し、命令実行部47の同期制御部135は
該命令を受領したときコプロセッサ命令制御部45のス
コアボード113から0の値を有する信号busyが供給さ
れていれば、次のプロセッサ実行命令を実行する。一
方、命令実行部47の同期制御部135は上記命令を受
領したときコプロセッサ命令制御部45のスコアボード
113から1の値を有する信号busyが供給されていれ
ば、信号busyが0となった時点で、該プロセッサ実行命
令を実行し完了させる。
【0038】また、コプロセッサ命令制御部45のスコ
アボード113は、いずれかのコプロセッサがコプロセ
ッサ命令を実行中である場合には1の値を有する信号bu
syを命令実行部47の同期制御部135へ供給し、いず
れのコプロセッサにおいてもコプロセッサ命令を実行中
でない場合には0の値を有する信号busyを命令実行部4
7の同期制御部135へ供給する。
【0039】以上より本実施の形態4に係るプロセッサ
システムによっても、主プロセッサ41は供給されたコ
プロセッサ命令に含まれる命令コードを読みだすことに
よらず、現在いずれかのコプロセッサがコプロセッサ命
令を実行中であるか否かを示す信号busyに応じてプロセ
ッサ実行命令を実行しコプロセッサ命令の発行タイミン
グを決定するため、メモリ43から供給されるコプロセ
ッサ命令の種類によらず効率的な命令発行動作を実現す
ることができる。 [実施の形態5]図16は、本発明の実施の形態5に係
るプロセッサシステムの構成を示す図である。図16に
示されるように、このプロセッサシステムは図13に示
された実施の形態4に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ51に含まれた命令フェ
ッチ部54、コプロセッサ命令制御部55、命令実行部
57の構成が相違し、さらにフラグ29を備えたもので
ある。なお、このフラグ29は図8に示された実施の形
態2に係るフラグ29と同じものである。
【0040】また、図17は図16に示されたコプロセ
ッサ命令制御部55と命令実行部57の構成を示す図で
ある。図17に示されるように、コプロセッサ命令制御
部55及び命令実行部57はそれぞれ図14に示された
コプロセッサ命令制御部45及び命令実行部47と同様
な構成を有するが、コプロセッサ命令制御部55はフラ
グ29に接続された例外判断部108を備え、命令実行
部47はデコード部120及びレジスタ26に接続され
フラグ29への書き込みを制御するフラグ書込制御部1
33を備える点で相違する。
【0041】従って、本実施の形態5に係るプロセッサ
システムは、上記実施の形態2に係るプロセッサシステ
ムと実施の形態4に係るプロセッサシステムの両方の機
能を有するものである。すなわち、コプロセッサ命令制
御部55の発行制御部109は供給されたコプロセッサ
命令を発行する際フラグ29が0の場合には、命令フェ
ッチ部54から供給されたコプロセッサ命令が先に実行
されるコプロセッサ命令とのデータ依存がない場合に、
コプロセッサ命令をCR11に指定されたコプロセッサ
へ発行信号Inを通じて発行し、発行情報をスコアボー
ド113へ書き込む。又逆に該データ依存がある場合に
は、依存しているコプロセッサ命令の完了を待った後、
コプロセッサ命令をCR11にて指定されたコプロセッ
サへ発行信号Inを通じて発行し、発行情報をスコアボ
ード113へ書き込む。
【0042】一方、供給されたコプロセッサ命令を発行
する際フラグ29が1の場合には、常に、先に実行され
ているコプロセッサ命令の完了を待った後、コプロセッ
サ命令をCR11にて指定されたコプロセッサへ発行信
号Inを通じて発行し、発行情報をスコアボード113
へ書き込む。このときコプロセッサ命令制御部55は、
コプロセッサがコプロセッサ命令を実行中である場合に
は1の値を有する信号busyを命令実行部57へ供給し、
コプロセッサがコプロセッサ命令を実行中でない場合に
は0の値を有する信号busyを命令実行部57へ供給す
る。
【0043】そして、命令実行部57は実行中のコプロ
セッサ命令の実行完了を待つ命令を受領したときコプロ
セッサ命令制御部55から0の値を有する信号busyが供
給されていれば、次のプロセッサ実行命令を実行する。
一方、命令実行部57は上記命令を受領したときコプロ
セッサ命令制御部55から1の値を有する信号busyが供
給されていれば、信号busyが0となった時点で、該プロ
セッサ実行命令を実行し完了させる。
【0044】以上より本実施の形態5に係るプロセッサ
システムによれば、主プロセッサ51は供給されたコプ
ロセッサ命令に含まれる命令コードを読みだすことによ
らずフラグ29の値及び現在コプロセッサ命令を実行中
であるか否かを示す信号busyに応じてコプロセッサ命令
の発行タイミングを決定するため、メモリ53から供給
されるコプロセッサ命令の種類によらず効率的な命令発
行動作を実現することができる。 [実施の形態6]図18は、本発明の実施の形態6に係
るプロセッサシステムの構成を示す図である。図18に
示されるように、このプロセッサシステムは図16に示
された実施の形態5に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ61に含まれた命令フェ
ッチ部64、コプロセッサ命令制御部65、命令実行部
67やレジスタ66の構成が相違し、さらに複数のフラ
グ0からフラグnを備えたものである。なお、この複数
のフラグは図10に示された実施の形態3に係る複数の
フラグ0からフラグnと同じものである。
【0045】また、図19は図18に示されたコプロセ
ッサ命令制御部65と命令実行部67の構成を示す図で
ある。図19に示されるように、コプロセッサ命令制御
部65及び命令実行部67はそれぞれ図17に示された
コプロセッサ命令制御部55及び命令実行部57と同様
な構成を有するが、コプロセッサ命令制御部65はフラ
グ0からフラグnに接続された例外判断部108を備
え、命令実行部67はデコード部121及びレジスタ6
6に接続されフラグ0からフラグnへの書き込みを制御
するフラグ書込制御部134を備える点で相違する。
【0046】従って、本実施の形態6に係るプロセッサ
システムは、上記実施の形態3に係るプロセッサシステ
ムと実施の形態4に係るプロセッサシステムの両方の機
能を有するものである。そして、このような構成を有す
るプロセッサシステムによれば、主プロセッサ61は個
々のコプロセッサCPR0〜CPRn毎に、これから実
行するコプロセッサ命令の制御依存性を判断し、他のコ
プロセッサで実行されるコプロセッサ命令の発行を待つ
ことなくコプロセッサ命令を発行するため、コプロセッ
サ命令をコプロセッサCPR0〜CPRnへ効率的に発
行することができる。
【0047】また、主プロセッサ61は供給されたコプ
ロセッサ命令に含まれる命令コードを読みだすことによ
らず現在コプロセッサ命令を実行中であるか否かを示す
信号busyに応じてコプロセッサ命令の発行タイミングを
決定するため、メモリ63から供給されるコプロセッサ
命令の種類によらず効率的な命令発行動作を実現するこ
ともできる。 [実施の形態7]図20は、本発明の実施の形態7に係
るプロセッサシステムの構成を示す図である。図20に
示されるように、このプロセッサシステムは図13に示
された実施の形態4に係るプロセッサシステムと同様な
構成を有するが、主プロセッサ71に含まれた命令フェ
ッチ部74やコプロセッサ命令制御部75や命令実行部
77の構成が相違するものである。
【0048】また、図21は図20に示されたコプロセ
ッサ命令制御部75と命令実行部77の構成を示す図で
ある。図21に示されるように、コプロセッサ命令制御
部75及び命令実行部77はそれぞれ図14に示された
コプロセッサ命令制御部45及び命令実行部47と同様
な構成を有するが、コプロセッサ命令制御部75は各コ
プロセッサCPR0〜CPRnに対応した信号busyn
(n は0以上の整数)を出力するスコアボード114を
備え、命令実行部77はデコード部122及びレジスタ
9に接続され上記信号busyn が供給される同期制御部1
36を備える点で相違する。
【0049】以下に、図13に示された上記実施の形態
4に係るプロセッサシステムと相違する点について説明
する。まず、本実施の形態に係るメモリ73には、指定
するコプロセッサにおいて実行中のコプロセッサ命令の
実行完了を待つ図33に示された形式の命令も予め記憶
される。ここで、図33に示されたオペランドには実行
完了待ちの対象とするコプロセッサを指定する情報が記
録される。
【0050】また、命令フェッチ部74は指定されたコ
プロセッサにて実行中のコプロセッサ命令の実行完了を
待つ命令を読み出した場合にはその命令を命令実行部7
7へ供給する。そして命令実行部77の同期制御部13
6は、供給された命令において指定されるコプロセッサ
CPRnに対応したコプロセッサ命令制御部75から供給さ
れる信号busyn (n は0以上の整数)が0の値を有して
いれば、プロセッサ実行命令を実行する。一方、命令実
行部77の同期制御部136は上記命令を受領したとき
指定されたコプロセッサCPRnに関してコプロセッサ命令
制御部75から1の値を有する信号busyn が供給されて
いれば、信号busyn が0となった時点で、該プロセッサ
実行命令を実行し完了させる。
【0051】また、コプロセッサ命令制御部75のスコ
アボード114は、指定されたコプロセッサCPRnがコプ
ロセッサ命令を実行中である場合には1の値を有する信
号busyn を命令実行部77の同期制御部136へ供給
し、指定されたコプロセッサCPRnがコプロセッサ命令を
実行中でない場合には0の値を有する信号busyn を命令
実行部77の同期制御部136へ供給する。
【0052】以上より本実施の形態7に係るプロセッサ
システムによれば、上記実施の形態4に係るプロセッサ
システムと同様な効果を奏すると共に、さらに主プロセ
ッサ71は個々のコプロセッサCPR0〜CPRn毎
に、コプロセッサ命令を実行中であるか否か判断するた
め、他のコプロセッサで実行されるコプロセッサ命令の
発行を待つことなく指定されたコプロセッサへコプロセ
ッサ命令が発行される。従って、コプロセッサ命令をコ
プロセッサCPR0〜CPRnへより効率的に発行する
ことができる。
【0053】またさらに、本実施の形態7に係るプロセ
ッサシステムにおいては、上記実施の形態1に係るコプ
ロセッサ命令のように処理の例外による制御依存が発生
する可能性があるか否かを示すフィールドEXCEPが
オペランドに結合されたコプロセッサ命令を予めメモリ
73に記憶させ、係る命令形式に対応した構成を有する
ものとすることができる。
【0054】すなわち、このような構成におけるコプロ
セッサ命令制御部75の発行制御部109は、供給され
た上記コプロセッサ命令のフィールドEXCEPが0の
場合には、命令フェッチ部74から供給されたコプロセ
ッサ命令が先に実行されるコプロセッサ命令とのデータ
依存がない場合に、コプロセッサ命令をCR11に指定
されたコプロセッサへ発行信号Inを通じて発行し、発
行情報をスコアボード114へ書き込む。又逆に該デー
タ依存がある場合には、コプロセッサ命令制御部75は
依存しているコプロセッサ命令の完了を待った後、コプ
ロセッサ命令をCR11にて指定されたコプロセッサへ
発行信号Inを通じて発行し、発行情報をスコアボード
114へ書き込む。
【0055】一方、供給されたコプロセッサ命令のフィ
ールドEXCEPが1の場合には、常に、先に実行され
ているコプロセッサ命令の完了を待った後、コプロセッ
サ命令をCR11にて指定されたコプロセッサへ発行信
号Inを通じて発行し、発行情報をスコアボード114
へ書き込む。以上の構成を有するプロセッサシステムに
よれば、主プロセッサ71は供給されたコプロセッサ命
令に含まれる命令コードを読みだすことによらず、オペ
ランドに結合したフィールドEXCEPに記録された情
報によりコプロセッサ命令の発行タイミングを決定する
ため、メモリ73から供給されるコプロセッサ命令の種
類によらずさらに効率的な命令発行動作を実現すること
ができる。
【0056】なお、本実施の形態においてはさらに、n
個の信号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と同じものである。
【0057】また、図25は図24に示されたコプロセ
ッサ命令制御部85と命令実行部87の構成を示す図で
ある。図25に示されるように、コプロセッサ命令制御
部85及び命令実行部87はそれぞれ図21に示された
コプロセッサ命令制御部75及び命令実行部77と同様
な構成を有するが、コプロセッサ命令制御部85はフラ
グ29に接続された例外判断部108を備え、命令実行
部87はデコード部124及びレジスタ26に接続され
フラグ29への書き込みを制御するフラグ書込制御部1
33をさらに備える点で相違する。
【0058】従って、本実施の形態8に係るプロセッサ
システムは、上記実施の形態7に係るプロセッサシステ
ムと実施の形態2に係るプロセッサシステムの両方の機
能を有するものである。ここで、本実施の形態8に係る
プロセッサシステムによれば、上記実施の形態7に係る
プロセッサシステムと同様の効果を得ることができると
ともに、主プロセッサ81は供給されたコプロセッサ命
令に含まれる命令コードを読みだすことによらずフラグ
29の値に応じてコプロセッサ命令の発行タイミングを
決定するため、メモリ83から供給されるコプロセッサ
命令の種類によらず効率的な命令発行動作を実現するこ
とができる。
【0059】またさらに、本実施の形態8に係るプロセ
ッサシステムにおいては、実施の形態4に記されたコプ
ロセッサ命令の実行完了を待つ命令もメモリ83へ予め
記憶させ、実施の形態4に係るプロセッサシステムと同
様に上記命令の実行も可能なものとすることができる。
このような構成を有するプロセッサシステムによれば、
主プロセッサ81は供給されたコプロセッサ命令に含ま
れる命令コードを読みだすことによらず、少なくとも一
つのコプロセッサが現在コプロセッサ命令を実行中であ
るか否かを示す信号busyに応じてプロセッサ実行命令を
実行してコプロセッサ命令の発行タイミングを決定する
ため、メモリ83から供給されるコプロセッサ命令の種
類に応じてさらに効率的な命令発行動作を実現すること
ができる。
【0060】なお、本実施の形態においてはさらに、n
個の信号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と同じものである。
【0061】また、図28は図27に示されたコプロセ
ッサ命令制御部95と命令実行部97の構成を示す図で
ある。図28に示されるように、コプロセッサ命令制御
部95及び命令実行部97はそれぞれ図25に示された
コプロセッサ命令制御部85及び命令実行部87と同様
な構成を有するが、コプロセッサ命令制御部95はフラ
グ0からフラグnに接続された例外判断部108を備
え、命令実行部97はデコード部126及びレジスタ6
6に接続されフラグ0からフラグnへの書き込みを制御
するフラグ書込制御部134を備える点で相違する。
【0062】従って、本実施の形態9に係るプロセッサ
システムは、上記実施の形態3に係るプロセッサシステ
ムと実施の形態7に係るプロセッサシステムの両方の機
能を有するものである。そして、このような構成を有す
るプロセッサシステムによれば、主プロセッサ91は個
々のコプロセッサCPR0〜CPRn毎に、これから実
行するコプロセッサ命令の制御依存性を判断し、他のコ
プロセッサで実行されるコプロセッサ命令の発行を待つ
ことなくコプロセッサ命令を発行するため、コプロセッ
サ命令をコプロセッサCPR0〜CPRnへ効率的に発
行することができる。
【0063】また、主プロセッサ91は供給されたコプ
ロセッサ命令に含まれる命令コードを読みだすことによ
らず、指定されたコプロセッサが現在コプロセッサ命令
を実行中であるか否かを示す信号busyn に応じてコプロ
セッサ毎にコプロセッサ命令の発行タイミングを決定す
るため、メモリ93から供給されるコプロセッサ命令の
種類によらず効率的な命令発行動作を実現することもで
きる。
【0064】またさらに、本実施の形態9に係るプロセ
ッサシステムにおいては、実施の形態4に記されたコプ
ロセッサ命令の実行完了を待つ命令もメモリ93へ予め
記憶させ、実施の形態4に係るプロセッサシステムと同
様に上記命令の実行も可能なものとすることができる。
このような構成を有するプロセッサシステムによれば、
主プロセッサ91は供給されたコプロセッサ命令に含ま
れる命令コードを読みだすことによらず、少なくとも一
つのコプロセッサが現在コプロセッサ命令を実行中であ
るか否かを示す信号busyに応じてプロセッサ実行命令を
実行してコプロセッサ命令の発行タイミングを決定する
ため、メモリ93から供給されるコプロセッサ命令の種
類に応じてさらに効率的な命令発行動作を実現すること
ができる。
【0065】なお、本実施の形態においてはさらに、n
個の信号busyn が全て0となったときに初めて命令実行
部がプロセッサ実行命令を実行し完了させるものも同様
に考えられる。ここで図29は、このようなシステムに
おける命令実行部98の構成を示す図である。図29に
示されるように、命令実行部98はデコード部127及
びレジスタ部66に接続されn個の信号busyn が供給さ
れる第一同期制御部137をさらに備え、第一同期制御
部137は上記n個の信号busyn が全て0となったとき
にプロセッサ実行命令を実行し完了させる。
【0066】最後に、本発明の課題を解決するための手
段について付記する。 (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)のいずれかに記載
のプロセッサシステム。
【0067】
【発明の効果】上述の如く、本発明に係るプロセッサシ
ステムによれば、依存可能性表示データに基づいて第一
のコプロセッサ命令における制御依存の可能性が容易に
判断されるため、制御依存の可能性がないコプロセッサ
命令については、投機的な命令の発行を迅速に行うこと
ができる。
【0068】また、主プロセッサは依存可能性表示デー
タに基づいて第一のコプロセッサ命令の制御依存性を判
断するため、第一のコプロセッサ命令の種類によらずそ
の構成を統一的に決定することができる。従って、主プ
ロセッサがコプロセッサに対する互換性を有するという
意味で、投機的な命令発行の能力を向上させることがで
きる。
【図面の簡単な説明】
【図1】従来のプロセッサシステムの構成を示す図であ
る。
【図2】図1に示されたコプロセッサ命令制御部と命令
実行部の構成を示す図である。
【図3】従来のコプロセッサ命令の命令形式を示す図で
ある。
【図4】従来のコプロセッサ指定レジスタを書き換える
命令の命令形式を示す図である。
【図5】本発明の実施の形態1に係るプロセッサシステ
ムの構成を示す図である。
【図6】図5に示されたコプロセッサ命令制御部と命令
実行部の構成を示す図である。
【図7】本発明の実施の形態1に係るコプロセッサ命令
の命令形式を示す図である。
【図8】本発明の実施の形態2に係るプロセッサシステ
ムの構成を示す図である。
【図9】図8に示されたコプロセッサ命令制御部と命令
実行部の構成を示す図である。
【図10】本発明の実施の形態3に係るプロセッサシス
テムの構成を示す図である。
【図11】図10に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図12】本発明の実施の形態3において、いずれかの
フラグを書き換える命令の命令形式を示す図である。
【図13】本発明の実施の形態4に係るプロセッサシス
テムの構成を示す図である。
【図14】図13に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図15】本発明の実施の形態4において、実行中のコ
プロセッサ命令の実行完了を待つ命令の命令形式を示す
図である。
【図16】本発明の実施の形態5に係るプロセッサシス
テムの構成を示す図である。
【図17】図16に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図18】本発明の実施の形態6に係るプロセッサシス
テムの構成を示す図である。
【図19】図18に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図20】本発明の実施の形態7に係るプロセッサシス
テムの構成を示す図である。
【図21】図20に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図22】図20に示されたコプロセッサ命令制御部と
命令実行部の他の構成を示す図である。
【図23】本発明の実施の形態7において、実行中のコ
プロセッサ命令の実行完了を待つ命令の命令形式を示す
図である。
【図24】本発明の実施の形態8に係るプロセッサシス
テムの構成を示す図である。
【図25】図24に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図26】図24に示されたコプロセッサ命令制御部と
命令実行部の他の構成を示す図である。
【図27】本発明の実施の形態9に係るプロセッサシス
テムの構成を示す図である。
【図28】図27に示されたコプロセッサ命令制御部と
命令実行部の構成を示す図である。
【図29】図27に示されたコプロセッサ命令制御部と
命令実行部の他の構成を示す図である。
【符号の説明】
1,15,21,31,41,51,61,71,8
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 コプロセッサ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 中村 泰基 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 Fターム(参考) 5B013 AA01 AA12 DD03 DD05 5B045 GG06

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 コプロセッサに接続されるプロセッサで
    あって、 前記プロセッサは、前記コプロセッサにおける実行を命
    令する第一のコプロセッサ命令が供給されたときに、前
    記第一のコプロセッサ命令に対応する依存可能性表示デ
    ータに基づいて、前記第一のコプロセッサ命令が前記コ
    プロセッサにおいて先に実行される第二のコプロセッサ
    命令に対して制御依存性を有する可能性があると判断し
    た場合には、前記第二のコプロセッサ命令の実行が完了
    した後に前記第一のコプロセッサ命令を前記コプロセッ
    サへ発行することを特徴とするプロセッサ。
  2. 【請求項2】 コプロセッサに接続されたプロセッサで
    あって、 前記コプロセッサが第一のコプロセッサ命令を実行中で
    あるか否かを示す信号を生成する信号生成手段と、 前記コプロセッサが前記第一のコプロセッサ命令を実行
    中であることを示す実行表示信号が前記信号生成手段か
    ら供給されている場合には、前記信号生成手段から前記
    実行の完了を示す実行完了信号が供給された時にプロセ
    ッサ実行命令を実行する命令実行手段とを備えたことを
    特徴とするプロセッサ。
  3. 【請求項3】 コプロセッサと、前記コプロセッサに接
    続された主プロセッサとを有するプロセッサシステムで
    あって、 前記主プロセッサは、前記コプロセッサにおける実行を
    命令する第一のコプロセッサ命令が供給されたときに、
    前記第一のコプロセッサ命令に対応する依存可能性表示
    データに基づいて、前記第一のコプロセッサ命令が前記
    コプロセッサにおいて先に実行される第二のコプロセッ
    サ命令に対して制御依存性を有する可能性があると判断
    した場合には、前記第二のコプロセッサ命令の実行が完
    了した後に前記第一のコプロセッサ命令を前記コプロセ
    ッサへ発行することを特徴とするプロセッサシステム。
  4. 【請求項4】 コプロセッサと、前記コプロセッサに接
    続された主プロセッサとを有するプロセッサシステムで
    あって、前記主プロセッサは、 前記コプロセッサが第一のコプロセッサ命令を実行中で
    あるか否かを示す信号を生成する信号生成手段と、 前記コプロセッサが前記第一のコプロセッサ命令を実行
    中であることを示す実行表示信号が前記信号生成手段か
    ら供給されている場合には、前記信号生成手段から前記
    実行の完了を示す実行完了信号が供給された時にプロセ
    ッサ実行命令を実行する命令実行手段とを備えたことを
    特徴とするプロセッサシステム。
JP29458099A 1999-10-15 1999-10-15 プロセッサ及びプロセッサシステム Expired - Fee Related JP4160705B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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