JP3517139B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP3517139B2
JP3517139B2 JP35970898A JP35970898A JP3517139B2 JP 3517139 B2 JP3517139 B2 JP 3517139B2 JP 35970898 A JP35970898 A JP 35970898A JP 35970898 A JP35970898 A JP 35970898A JP 3517139 B2 JP3517139 B2 JP 3517139B2
Authority
JP
Japan
Prior art keywords
register
instruction
cycle
operand
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP35970898A
Other languages
English (en)
Other versions
JP2000181706A (ja
Inventor
岳夫 浅川
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 JP35970898A priority Critical patent/JP3517139B2/ja
Priority to US09/461,429 priority patent/US6807624B1/en
Publication of JP2000181706A publication Critical patent/JP2000181706A/ja
Priority to US10/747,291 priority patent/US7313674B2/en
Priority to US10/747,138 priority patent/US7275146B2/en
Priority to US10/747,286 priority patent/US7127591B2/en
Application granted granted Critical
Publication of JP3517139B2 publication Critical patent/JP3517139B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のリザベーシ
ョンステーションを有する情報処理装置に関するもので
ある。
【0002】
【従来の技術】命令処理を高速に実行するために順序を
外れた命令実行を可能とする情報処理装置においては、
命令の解読サイクルの後にリザベーションステーション
と呼ばれる解読済命令格納手段に解読済命令を格納し、
ソースオペランドが使用可能となった命令が解読順序に
関係なく選ばれてリザベーションステーションから演算
器に命令を発行する手法が用いられている。
【0003】このような手法を実現するハードウェアの
構造は、レジスタレジスタアーキテクチャと呼ばれる命
令セットを実現する情報処理装置に適合する。このよう
なレジスタレジスタアーキテクチャにおいては、実行ユ
ニットのオペランドは、通常レジスタどうしであり、メ
モリアクセスが生じるのは、ロード/ストア命令に限ら
れる。
【0004】図8にレジスタレジスタアーキテクチャに
適合するタイミングチャートを示す。図8において、D
サイクルは命令デコードサイクルであり、Pサイクルは
リザベーションステーション上で発行すべき命令が選択
されるサイクルであり、Bサイクルはソースオペランド
読み出しサイクルであり、Eサイクルは演算実行サイク
ルである。レジスタレジスタアーキテクチャにおいて
は、図8に示したように、D,P,B,Eの順で処理が
実行される。
【0005】このレジスタレジスタアーキテクチャに対
し、レジスタメモリアーキテクチャと呼ばれる命令セッ
トが存在する。このようなレジスタメモリアーキテクチ
ャにおいては、実行ユニットのオペランドは、通常レジ
スタとメモリオペランドであり、メモリアクセスは一般
的な命令で高頻度に現れる。
【0006】さらに、レジスタメモリアーキテクチャに
かかる従来の構成について説明する。図9は従来におけ
る情報処理装置の構成を示すブロック図である。従来の
情報処理装置は、図9に示したように、命令レジスタ1
1、リザベーションステーション12A,12B、テー
ブル13、選択器14,15、レジスタ16,17,1
8,19、レジスタファイル20、レジスタ21,2
2、演算器23A,23B、テーブル24、キャッシュ
25、および、レジスタ26などを備えている。
【0007】つぎに、動作について説明する。図10は
テーブル13の内容の一例を示す図である。命令レジス
タ11上の命令が解読されて、リザベーションステーシ
ョン12A,12Bに格納される。このように、リザベ
ーションステーション12A,12Bのように2つ設け
たのは、一つの命令で二つの演算器23A,23Bを動
作させるには、二つのリザベーションステーション12
A,12Bが必要となるからである。テーブル13はソ
ースオペランドの使用可能状態を示している。このテー
ブル13では、リザベーションステーション12A,1
2Bの各エントリージ内のソースレジスタ番号を受け取
り、そのソースオペランド使用可能情報を、可能な場合
に"1"、不能な場合に"0"で格納する。TA_Aはレジ
スタソースが使用可能であることを示すフィールドであ
る。TA_Aのアドレスを示すレジスタ番号は、命令で
示されたレジスタ番号である。TA_Cはメモリオペラ
ンドが使用可能であることを示すフィールドである。T
A_Cのアドレスを示すレジスタ番号は、要求されたメ
モリオペランドに1対1に対応した図示しない内部レジ
スタ(シフトレジスタ)のレジスタ番号である。
【0008】このソースオペランド使用可能情報は選択
器14,15に送出される。選択器14,15では、ソ
ースオペランドが使用可能な命令のうちから発行する命
令を選択し、その命令のソースレジスタ番号(RA1、
RA2)、書き込みレジスタ番号(RAD)を選択する
処理が行われる。選択器14では、P_RA1_A、P
_RA2_A,P_DRA_Aが選択出力される。ここ
で、「P_RA1_A」のうち、「P」はサイクル
(P,B,Eのいずれか)を示し、RA1はレジスタの
番号を示す。また、「A」は、リザベーションステーシ
ョン12A、12Bのどちらから読み出されたかを示
す。さらに、「DRA」は、書き込みレジスタ番号「R
AD」とは同一のレジスタ番号を示すものである。以
降、リザベーションステーション内における書き込みレ
ジスタ番号を「RAD」と表記し、リザベーションステ
ーションから読み出された後の書き込みレジスタ番号を
「DRA」と表記する。P_DRA_Aはレジスタ16
に受け取られ、レジスタ16の出力はB_DRA_Aで
あり、レジスタ21に受け取られ、レジスタ21の出力
はE_DRA_Aである。P_RA1_A、P_RA2
_Aはレジスタ17に受け取られ、レジスタ17の出力
はレジスタファイル20に受け取られる。選択器15で
は、P_RA1_B、P_RA2_B、P_DRA_B
が選択される。P_DRA_Bはレジスタ19に受け取
られ、レジスタ19の出力はB_DRA_Bであり、レ
ジスタ22に受け取られ、レジスタ22の出力はE_D
RA_Bである。P_RA1_B、P_RA2_Bはレ
ジスタ18に受け取られ、レジスタ18の出力はレジス
タファイル20に受け取られる。
【0009】このレジスタファイル20から読み出され
たソースオペランドは演算器23A,23Bに供給され
る。演算器23Aの出力はテーブル24に送出され、絶
対アドレスに変換され、そのアドレスでキャッシュが索
引され、メモリオペランドが演算器23Bに供給され
る。
【0010】演算器23Bの出力は、リゾルトレジスタ
(図中、RRで示す)に格納され、レジスタファイル2
0に書き込みが行われるとともに、フォワーディングを
行うために演算器23A,23Bの入力に供給される。
書き込みレジスタ番号RAD_A、RAD_Bは図示せ
ぬシフトレジスタで保持され、必要なタイミングで、テ
ーブル13の更新、フォワーディングの制御に使用され
る。
【0011】つぎに、AR(ADD RESISTE
R)命令とC(COMPARE)命令との関係について
説明する。図11,図12は、それぞれ図9の構成にお
ける演算時のタイミングチャートである。
【0012】図11において、Dサイクルは命令デコー
ドサイクルであり、PA,PBサイクルはリザベーショ
ンステーション上で発行すべき命令が選択されるサイク
ルであり、BA,BBサイクルはソースオペランド読み
出しサイクルであり、EA,EBサイクルは演算実行サ
イクルである。図11では、AR命令(レジスタとレジ
スタを加算し結果をレジスタに格納する)がレジスタ3
を更新し、その後のC命令(レジスタとメモリオペラン
ドとを比較する)がアドレス計算でレジスタ3を使用す
る。
【0013】AR命令のPBサイクルでテーブル13の
TA_A(3)が1になり、BBサイクルでレジスタフ
ァイル20が読み出され、EBサイクルで加算される。
TA_A(3)がオンになった後、C命令のPAサイク
ルが実行される。EAサイクルでは、AR命令が更新し
たRRが演算器23Aの入力にフォワーディングされ、
アドレス計算が行われる。さらにEAサイクルでは、対
応するテーブル13のTA−Cのビットがオンになり、
つぎのサイクルでC命令のリザベーションステーション
12Bから命令が発行される。C命令のEBサイクルで
はメモリオペランドとレジスタオペランドとが比較され
る。
【0014】図12ではAR命令(レジスタとレジスタ
を加算し結果をレジスタに格納する)がレジスタ4を更
新し、その後のC命令(レジスタとメモリオペランドと
を比較する)がソースレジスタオペランドとしてレジス
タ4を使用する。AR命令のPBサイクルでTA_A
(4)が1になり、C命令のPAサイクルはTA_A
(4)がオンになる前に実行される。C命令のEAサイ
クルでは、対応するTA−Cのビットがオンになり、つ
ぎのサイクルでC命令のRSE_Bから命令が発行され
る。C命令のEBサイクルではメモリオペランドとレジ
スタオペランドとが比較される。
【0015】すなわち、図12に示したレジスタメモリ
アーキテクチャの場合には、PAサイクルで命令がアド
レス計算ユニットに発行され、EAサイクルでアドレス
計算が行われ、アドレスがメモリユニットに渡される。
メモリユニットでは、Tサイクルでテーブル13を索引
し、Bサイクルでキャッシュを索引し、メモリオペラン
ドを演算器に供給する。EBサイクルでレジスタオペラ
ンドとメモリオペランドとの間で演算が行われる。
【0016】
【発明が解決しようとする課題】このように従来の情報
処理装置では、レジスタメモリアーキテクチャを採用し
た場合、メモリオペランドを求めるためにアドレス計算
およびメモリアクセスが必要となり、レジスタオペラン
ドを求めるよりも多くのクロック数が必要となる。この
ようなレジスタメモリアーキテクチャを実現する情報処
理装置が図12のタイミングチャートを実現するような
ハードウェア構造を採用するならば、1サイクル命令処
理数が多くなるという問題点があった。
【0017】この発明は、上述した従来例による問題点
を解消するため、レジスタメモリアーキテクチャに適合
したハードウェア構造を実現するために、複数種類のリ
ザベーションステーションにおいて混在命令処理を高速
に実行するために異なったタイミングでソースオペラン
ドを読み出すことが可能な情報処理装置を提供すること
を目的とする。
【0018】
【課題を解決するための手段】上述した課題を解決し、
目的を達成するため、請求項1の発明にかかる情報処理
装置は、複数のリザベーションステーションと、演算器
と、ソースオペランドが使用可能であることを示すテー
ブルと、前記リザベーションステーションからの命令発
行を前記テーブルがソースオペランド使用可能を示した
時点で行うとともに、前記各リザベーションステーショ
ンから異なるタイミングでソースオペランドを読み出し
て前記演算器に供給する回路と、を備え、前記複数のリ
ザベーションステーションのそれぞれに対応した前記テ
ーブル内のソースオペランド使用可能表示が先行命令の
実行フェーズのそれぞれ異なったタイミングで有効化さ
れることを特徴とする
【0019】この請求項1の発明によれば、複数のリザ
ベーションステーションのそれぞれに対応したテーブル
内のソースオペランド使用可能表示が先行命令の実行フ
ェーズのそれぞれ異なったタイミングで有効化するよう
にし、リザベーションステーションからの命令発行をテ
ーブルがソースオペランド使用可能を示した時点で行う
とともに、各リザベーションステーションから異なるタ
イミングでソースオペランドを読み出して演算器に供給
するようにしたので、複数種類のリザベーションステー
ションにおいて混在命令処理を高速に、短いサイクルで
実行するために異なったタイミングでソースオペランド
を読み出すことができ、これにより、レジスタメモリア
ーキテクチャに適合したハードウェア構造を実現するこ
とが可能となる。
【0020】また、請求項2の発明にかかる情報処理装
置は、請求項1の発明において、前記リザベーションス
テーションに対応して異なったタイミングでレジスタ読
み出しアドレスを生成し、それに応じて独立したそれぞ
れのソースオペランド読み出しポートを具備するレジス
タオペランド供給手段を備えたことを特徴とする。
【0021】この請求項2の発明によれば、リザベーシ
ョンステーションに対応して異なったタイミングでレジ
スタ読み出しアドレスを生成し、それに応じて独立した
それぞれのソースオペランド読み出しポートを設けるよ
うにしたので、サイクルを短く設定することが可能とな
る。
【0022】また、請求項3の発明にかかる情報処理装
置は、請求項1または2の発明において、リザベーショ
ンステーション毎に、異なったタイミングで先行命令の
実行結果のフォワーディングを前記演算器のそれぞれに
対して行うことを特徴とする。
【0023】この請求項3の発明によれば、リザベーシ
ョンステーション毎に、異なったタイミングで先行命令
の実行結果のフォワーディングを演算器のそれぞれに対
して行うようにしたので、常に同じタイミングでフォワ
ーディングを実行する必要はなく、速く実行結果を得ら
れたものには速いタイミングでフォワーディングを実行
することができ、これにより処理の高速化を実現するこ
とが可能となる。
【0024】
【発明の実施の形態】以下に添付図面を参照して、この
発明にかかる情報処理装置の好適な実施の形態を詳細に
説明する。
【0025】まず、構成について説明する。図1はこの
発明の一実施の形態による情報処理装置の一構成例を示
すブロック図である。図1に示した構成は、全体を前述
した図9の従来構成と同様のものとしており、以下に相
違する構成について説明する。
【0026】前述した図9に示した従来の構成では、選
択器14とレジスタファイル20との間にレジスタ17
を設けて、そのレジスタ17への格納動作で1サイクル
を要していたが、本発明では、そのレジスタ17を省
き、テーブル13に替わるテーブル28を設けること
で、レジスタ17に必要な1サイクルを除去することを
可能にしたものである。
【0027】つぎに、動作について説明する。図1にお
いて、命令レジスタ11上の命令が解読されて、リザベ
ーションステーション12A,12Bに格納される。テ
ーブル28はソースオペラン使用可能状態を示してお
り、リザベーションステーション12A,12Bの各エ
ントリージ内のソースレジスタ番号を受け取り、そのソ
ースオペランド使用可能情報を選択器14,15に送出
する。選択器14,15では、ソースオペランドが使用
可能な命令から発行する命令を選択し、その命令のソー
スレジスタ番号(RA1、RA2)、書き込みレジスタ
番号(DRA)を選択する処理が行われる。選択器14
では、リザベーションステーション12A内のRA1、
RA2、RADが選択され、P_RA1_A、P_RA
2_A、P_DRA_Aとして選択出力される。選択器
15では、リザベーションステーション12B内のRA
1、RA2、RADが選択され、P_RA1_B、P_
RA2_B、P_DRA_Bとして選択出力される。
【0028】ソースレジスタ番号P_RA1_A、P_
RA2_Aは直接レジスタファイル20に送られ、そこ
から読み出されたソースオペランドはアドレス計算器の
演算器23Aに供給される。ソースレジスタ番号P_R
A1_B、P_RA2_B、はレジスタ18に受け取ら
れ、レジスタ18の出力はB_RA1_B、B_RA2
_Bであり、この信号がレジスタファイルに送られ、そ
こから読み出されたソースオペランドは演算器23Bに
供給される。演算器23Aの出力はテーブル24に送出
され、絶対アドレスに変換され、そのアドレスでキャッ
シュ25が索引され、メモリオペランドが演算器23B
に供給される。
【0029】演算器23Bの出力は図示したRRに格納
され、レジスタファイル20に書き込みが行われるとと
もに、フォワーディングを行うために演算器23A,2
3Bの入力に供給される。書き込みレジスタ番号P_R
AD_Aはレジスタ21に受け取られ、レジスタ21の
出力はE_DRA_Aである。書き込みレジスタ番号P
_RAD_Bはレジスタ19に受け取られ、レジスタ2
2の出力はE_DRA_Bである。E_DRA_Aおよ
びE_DRA_Bは、必要なタイミングで、テーブル2
8の更新、フォワーディングの制御に使用される。
【0030】つぎに、リザベーションステーション12
A,12Bについて詳述する。図2は、本実施の形態に
かかるリザベーションステーション12A,12Bの使
用例を示す図である。図2において、RA1は第1オペ
ランドレジスタアドレス、RA2は第2オペランドレジ
スタアドレスであり、これらはテーブル28およびレジ
スタファイル20の索引に使用される。レジスタメモリ
命令の場合には第2オペランドはメモリであるため、要
求されたメモリオペランドに1対1に対応した図示しな
い内部レジスタのレジスタ番号がRA2である。
【0031】RADは書き込みレジスタアドレスであ
り、テーブル28の更新、レジスタファイル20の更
新、および、フォワーディング制御に使用される。図2
において、エントリ1のとき、リザベーションステーシ
ョン12A,12Bに、それぞれ第1オペランドレジス
タアドレスRA1、第2オペランドレジスタアドレスR
A2、書き込みレジスタアドレスRADが格納されてい
る。ここで、RAは書き込みレジスタ番号であり、エン
トリ−1には1番目の命令が、エントリ−2には2番目
の命令がそれぞれ格納される。レジスタメモリ命令では
1命令で12A、12Bに1つづつ合計2つのリザベー
ションステーションを作成する。レジスタメモリ命令の
場合には第2オペランドはメモリであるため、要求され
たメモリオペランドに対応した内部レジスタ番号を12
A上のリザベーションステーション内RADに登録す
る。また同命令の12B上のリザベーションステーショ
ン内RA2に同一の番号が登録される。
【0032】つぎに、テーブル28について詳述する。
図3は、本実施の形態によるテーブル28の使用例を示
す図である。図3において、TA_Aはリザベーション
ステーション12Aが参照するテーブルでありB_DR
A_Bで示された番号が次サイクルで有効化され1が格
納される。1が格納された番号のレジスタは使用可能で
ある。TA_Bはリザベーションステーション12Bが
参照するテーブルであり、P_DRA_Bで示された番
号が次サイクルで有効化され1が格納される。1が格納
された番号のレジスタは使用可能である。TA_Cはリ
ザベーションステーション12Bが参照するテーブルで
あり、E_DRA_Aで示された番号が次サイクルで有
効化され1が格納される。1が格納された番号のレジス
タは使用可能である。TA_Cはレジスタメモリ命令の
メモリオペランド使用可能を指示する。
【0033】つづいてAR(ADD RESISTE
R)命令とC(COMPARE)命令との関係について
説明する。図4,図5はそれぞれ図1の構成における演
算時のタイミングチャートである。図4,図5はそれぞ
れ従来の図11,図12に対応する動作である。
【0034】ここでは、PAサイクルでは命令が発行さ
れるとともに同時にソースオペランドが読み出され、E
Aサイクルでアドレス計算が行われ、アドレスがメモリ
ユニットに渡される。メモリオペランドの読み出しサイ
クル数は変わらないのでPB,BB,EBサイクルは変
わらず、EBサイクルで、レジスタオペランドとメモリ
オペランドとの間で演算が実行される。
【0035】図4では、AR命令(レジスタとレジスタ
を加算し結果をレジスタに格納する)がレジスタ3を更
新し、その後のC命令(レジスタとメモリオペランドと
を比較する)がアドレス計算でレジスタ3を使用する。
AR命令のBBサイクルでB_DRA_Bで示されたT
A_A(3)が1になり、EBサイクルでC命令のリザ
ベーションステーション12Aから命令が発行される。
EAサイクルでは、AR命令が更新したRRが演算器2
3Aの入力にフォワーディングされ、アドレス計算が行
われる。
【0036】さらにEAサイクルでは、対応するTA_
Cのビットがオンになり、つぎのサイクルでC命令のリ
ザベーションステーション12Bから命令が発行され
る。C命令のEBサイクルではメモリオペランドとレジ
スタオペランドとが比較される。
【0037】図5では、AR命令(レジスタとレジスタ
を加算し結果をレジスタに格納する)がレジスタ4を更
新し、その後のC命令(レジスタとメモリオペランドと
を比較する)がソースレジスタオペランドとしてレジス
タ4を使用する。AR命令のPBサイクルでTA_B
(4)が1になるが、C命令のリザベーションステーシ
ョン12Bからは命令は発行されない。なぜならC命令
はレジスタメモリ命令であり、第1オペランドはレジス
タであり、第2オペランドはメモリである。リザベーシ
ョンステーション12B上のC命令は第1オペランドと
してTA_Bを参照しTA_B(4)=1のため第1オ
ペランドは使用可能であるが、第2オペランドとしてT
A_Cを参照するとTA_Cの対応するレジスタ番号は
まだ使用可能ではない。
【0038】C命令のEAサイクルでは、対応するTA
_Cのビットがオンになり、つぎのサイクルでC命令の
リザベーションステーション12Bから命令が発行され
る。C命令のEBサイクルではメモリオペランドとレジ
スタオペランドとが比較される。その結果、従来の図1
2の内容と比べて、1サイクル短くなることが明らかと
なる。従来例の図10、図11、図12においては、リ
ザベーションステーション12A,12B上の命令が共
にレジスタオペランドの使用可能を参照するため、1種
類のTA_Aのみを参照する。TA_AはPBサイクル
で有効化され、後続の命令はBBサイクルから発行可能
となる。ここで演算器23Aのレジスタリードサイクル
を1サイクル短縮し、本願発明のようにPA,EAと2
サイクルにしようとすると、図11のタイミングではA
R命令のEBサイクルにC命令のEAサイクルが重なっ
てしまい、演算結果のフォワーディングが不可能になっ
てしまう。図3に示した本願発明の独自のテーブル28
の構成により初めて演算器23Aのレジスタリードサイ
クルを1サイクル短縮することが可能となる。TA_A
はBBサイクルで有効化され、後続の演算器23Aへの
命令発行はEBサイクルからとなり、EBサイクルの後
にEAサイクルとなり演算結果のフォワーディングが可
能になる。演算器23B上の命令は、TA_Bを参照す
るため、従来例TA_Aと同様にTA_BはPBサイク
ルで有効化される。
【0039】つぎに、図1の構成の後段について図6お
よび図7を用いてさらに詳述する。図6は情報処理装置
における比較構成例を示すブロック図である。図6にお
いて、29,30,31,32はそれぞれ比較器であ
る。比較器29は、レジスタ22の出力であるE_DR
A_Bと選択器14の出力であるP_RA1_Aが等し
い場合に出力をオン("1")とする。
【0040】比較器30は、レジスタ22の出力である
E_DRA_Bと選択器14の出力であるP_RA2_
Aが等しい場合に出力をオン("1")とする。比較器3
1は、レジスタ22の出力であるE_DRA_Bと選択
器14の出力であるB_RA1_Bが等しい場合に出力
をオン("1")とする。また比較器32は、レジスタ2
2の出力であるE_DRA_Bと選択器14の出力であ
るB_RA2_Bが等しい場合に出力をオン("1")と
する。
【0041】図7は情報処理装置における演算構成例を
示すブロック図である。図7において、33A,33B
はそれぞれ演算器である。演算器33Aは、比較器29
の出力、レジスタファイル20の出力(A_READ_
DATA1)、RRから選択したものと、比較器30の
出力、レジスタファイル20の出力(A_READ_D
ATA2)、RRから選択したものとを演算して出力す
る。
【0042】また、演算器33Bは、比較器31の出
力、レジスタファイル20の出力(B_READ_DA
TA1)、RRから選択したものと、比較器32の出
力、レジスタファイル20の出力(B_READ_DA
TA2)、RRから選択したものとを演算して出力す
る。
【0043】以上によれば、異なったタイミングでソー
スデータを読み出す複数種類のリザベーションステーシ
ョンが混在することが可能になり、命令処理を実行する
ことができる。
【0044】すなわち、リザベーションステーションか
らの命令発行をテーブルがソースオペランド使用可能を
示した時点で行うとともに、各リザベーションステーシ
ョンから異なるタイミングでソースオペランドを読み出
して演算器に供給する。これにより、複数種類のリザベ
ーションステーションにおいて混在命令処理を高速に実
行するために異なったタイミングでソースオペランドを
読み出すことができるので、レジスタメモリアーキテク
チャに適合したハードウェア構造を実現することが可能
となる。
【0045】また、リザベーションステーションのそれ
ぞれに対応したテーブル内のソースオペランド使用可能
表示が先行命令の実行フェーズのそれぞれ異なったタイ
ミングで有効化するようにしたので、サイクルを短く設
定することが可能となる。
【0046】また、リザベーションステーションに対応
して異なったタイミングでレジスタ読み出しアドレスを
生成し、それに応じて独立したそれぞれのソースオペラ
ンド読み出しポートを設けるようにしたので、サイクル
を短く設定することが可能となる。
【0047】また、リザベーションステーション毎に、
異なったタイミングで先行命令の実行結果のフォワーデ
ィングを演算器のそれぞれに対して行うようにしたの
で、常に同じタイミングでフォワーディングを実行する
必要はなく、速く実行結果を得られたものには速いタイ
ミングでフォワーディングを実行することができ、これ
により、処理の高速化を実現することが可能となる。
【0048】以上、この発明を上記実施の形態により説
明したが、この発明の主旨の範囲内で種々の変形が可能
であり、これらをこの発明の範囲から排除するものでは
ない。
【0049】
【発明の効果】以上説明したように、請求項1にかかる
情報処理装置によれば、複数のリザベーションステーシ
ョンのそれぞれに対応したテーブル内のソースオペラン
ド使用可能表示が先行命令の実行フェーズのそれぞれ異
なったタイミングで有効化するようにし、リザベーショ
ンステーションからの命令発行をテーブルがソースオペ
ランド使用可能を示した時点で行うとともに、各リザベ
ーションステーションから異なるタイミングでソースオ
ペランドを読み出して演算器に供給する。これにより、
複数種類のリザベーションステーションにおいて混在命
令処理を高速に、短いサイクルで実行するために異なっ
たタイミングでソースオペランドを読み出すことができ
るので、レジスタメモリアーキテクチャに適合したハー
ドウェア構造を実現することが可能な情報処理装置が得
られるという効果を奏する。
【0050】また、請求項2にかかる情報処理装置によ
れば、請求項1の発明において、リザベーションステー
ションに対応して異なったタイミングでレジスタ読み出
しアドレスを生成し、それに応じて独立したそれぞれの
ソースオペランド読み出しポートを設けるようにしたの
で、サイクルを短く設定することが可能な情報処理装置
が得られるという効果を奏する。
【0051】また、請求項3にかかる情報処理装置によ
れば、請求項1または2の発明において、リザベーショ
ンステーション毎に、異なったタイミングで先行命令の
実行結果のフォワーディングを演算器のそれぞれに対し
て行うようにしたので、常に同じタイミングでフォワー
ディングを実行する必要はなく、速く実行結果を得られ
たものには速いタイミングでフォワーディングを実行す
ることができ、これにより、処理の高速化を実現するこ
とが可能な情報処理装置が得られるという効果を奏す
る。
【図面の簡単な説明】
【図1】この発明の一実施の形態による情報処理装置の
一構成例を示すブロック図である。
【図2】本実施の形態によるリザベーションステーショ
ンの一構成例を示す図である。
【図3】本実施の形態によるテーブルの一構成例を示す
図である。
【図4】本実施の形態における演算時のタイミングチャ
ートである。
【図5】本実施の形態における演算時のタイミングチャ
ートである。
【図6】本実施の形態の情報処理装置における比較構成
の一例を示すブロック図である。
【図7】本実施の形態の情報処理装置における演算構成
の一例を示すブロック図である。
【図8】レジスタレジスタアーキテクチャに適合するタ
イミングチャートである。
【図9】従来における情報処理装置の構成を示すブロッ
ク図である。
【図10】従来の情報処理装置におけるテーブルの構成
例を示す図である。
【図11】従来の情報処理装置における演算時のタイミ
ングチャートである。
【図12】従来の情報処理装置における演算時のタイミ
ングチャートである。
【符号の説明】
11 命令レジスタ 12A,12B リザベーションステーション 14,15 選択器 17,18,19 レジスタ 20 レジスタファイル 21 レジスタ 22 レジスタ 23A,23B 演算器 24 テーブル 25 キャッシュ 26 レジスタ 28 テーブル 29〜32 比較器 33A,33B 演算器

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のリザベーションステーションと、 演算器と、 ソースオペランドが使用可能であることを示すテーブル
    と、 前記リザベーションステーションからの命令発行を前記
    テーブルがソースオペランド使用可能を示した時点で行
    うとともに、前記各リザベーションステーションから異
    なるタイミングでソースオペランドを読み出して前記演
    算器に供給する回路と、を備え、 前記複数のリザベーションステーションのそれぞれに対
    応した前記テーブル内のソースオペランド使用可能表示
    が先行命令の実行フェーズのそれぞれ異なったタイミン
    グで有効化されることを特徴とする情報処理装置。
  2. 【請求項2】 前記リザベーションステーションに対応
    して異なったタイミングでレジスタ読み出しアドレスを
    生成し、それに応じて独立したそれぞれのソースオペラ
    ンド読み出しポートを具備するレジスタオペランド供給
    手段を備えたことを特徴とする請求項1に記載の情報処
    理装置。
  3. 【請求項3】 リザベーションステーション毎に、異な
    ったタイミングで先行命令の実行結果のフォワーディン
    グを前記演算器のそれぞれに対して行うことを特徴とす
    る請求項1または2に記載の情報処理装置。
JP35970898A 1998-12-17 1998-12-17 情報処理装置 Expired - Fee Related JP3517139B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP35970898A JP3517139B2 (ja) 1998-12-17 1998-12-17 情報処理装置
US09/461,429 US6807624B1 (en) 1998-12-17 1999-12-16 Instruction control device and method therefor
US10/747,291 US7313674B2 (en) 1998-12-17 2003-12-30 Instruction control device and method therefor
US10/747,138 US7275146B2 (en) 1998-12-17 2003-12-30 Instruction control device and method therefor
US10/747,286 US7127591B2 (en) 1998-12-17 2003-12-30 Instruction control device and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35970898A JP3517139B2 (ja) 1998-12-17 1998-12-17 情報処理装置

Publications (2)

Publication Number Publication Date
JP2000181706A JP2000181706A (ja) 2000-06-30
JP3517139B2 true JP3517139B2 (ja) 2004-04-05

Family

ID=18465899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35970898A Expired - Fee Related JP3517139B2 (ja) 1998-12-17 1998-12-17 情報処理装置

Country Status (1)

Country Link
JP (1) JP3517139B2 (ja)

Also Published As

Publication number Publication date
JP2000181706A (ja) 2000-06-30

Similar Documents

Publication Publication Date Title
EP1047989B1 (en) Digital signal processor having data alignment buffer for performing unaligned data accesses
US7117346B2 (en) Data processing system having multiple register contexts and method therefor
US11183225B2 (en) Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size
US7962723B2 (en) Methods and apparatus storing expanded width instructions in a VLIW memory deferred execution
JP3797570B2 (ja) セマフォ命令用のセマフォ・バッファを用いた装置と方法
US5710914A (en) Digital signal processing method and system implementing pipelined read and write operations
EP4336352A1 (en) Instruction execution method, processor and electronic apparatus
US20100325631A1 (en) Method and apparatus for increasing load bandwidth
JPH0581119A (ja) レジスタ間接モードを用いる汎用メモリ・アクセス方式
US6161171A (en) Apparatus for pipelining sequential instructions in synchronism with an operation clock
JP3517139B2 (ja) 情報処理装置
JP2006527436A (ja) データ処理装置及びレジスタ・ファイルとメモリとの間でデータ値を転送する方法
JP2000353092A (ja) 情報処理装置及びそのレジスタファイル切替方法
US5893928A (en) Data movement apparatus and method
JP2988965B2 (ja) パイプライン情報処理回路
JPH03238539A (ja) メモリアクセス制御装置
JP2010191511A (ja) マイクロプロセッサ
JP3526773B2 (ja) マルチプロセッサ装置およびその制御方法
JPWO2010016097A1 (ja) 演算処理装置
JP3473506B2 (ja) パイプライン処理装置
JP3607548B2 (ja) ベクトル演算装置
JPH10247150A (ja) データ処理システム
JP2581298B2 (ja) メモリアクセス権情報供給機構
JP2010205088A (ja) ベクトル処理装置、及びベクトル処理方法
JP2576589B2 (ja) 仮想記憶アクセス制御方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031021

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20031225

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040122

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080130

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090130

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100130

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140130

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees