JP3259732B2 - レジスタファイル回路 - Google Patents
レジスタファイル回路Info
- Publication number
- JP3259732B2 JP3259732B2 JP28100291A JP28100291A JP3259732B2 JP 3259732 B2 JP3259732 B2 JP 3259732B2 JP 28100291 A JP28100291 A JP 28100291A JP 28100291 A JP28100291 A JP 28100291A JP 3259732 B2 JP3259732 B2 JP 3259732B2
- Authority
- JP
- Japan
- Prior art keywords
- register file
- register
- read
- words
- ports
- 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
Links
Description
【0001】
【産業上の利用分野】本発明は、複数の読み出しポート
および、複数のワード数のレジスタを仕様規定上必要と
する演算処理装置におけるレジスタファイル回路に関す
る。
および、複数のワード数のレジスタを仕様規定上必要と
する演算処理装置におけるレジスタファイル回路に関す
る。
【0002】
【従来の技術】従来、この種のいわゆるマルチポートレ
ジスタファイル回路は、実装されている全ワードについ
て、そのレジスタファイル回路に接続される演算器の入
出力を同時に賄うことができるだけの読み出し、書き込
みポートを備えている。この構成のレジスタファイルの
例を図2に示す。
ジスタファイル回路は、実装されている全ワードについ
て、そのレジスタファイル回路に接続される演算器の入
出力を同時に賄うことができるだけの読み出し、書き込
みポートを備えている。この構成のレジスタファイルの
例を図2に示す。
【0003】201は、レジスタファイルであり、20
21 ,2022 ,〜,202n はレジスタファイル20
1に接続されるn個の演算器を示している。これらの演
算器には各々2入力オペランドデータ205がレジスタ
ファイル201から供給され、演算器から出力オペラン
ドデータ206がレジスタファイル201に供給され
る。
21 ,2022 ,〜,202n はレジスタファイル20
1に接続されるn個の演算器を示している。これらの演
算器には各々2入力オペランドデータ205がレジスタ
ファイル201から供給され、演算器から出力オペラン
ドデータ206がレジスタファイル201に供給され
る。
【0004】この場合、レジスタファイル201は、2
n個の読み出しポートと、n個の書き込みポートとを備
えることが必要となる。また、必要なアドレスデコーダ
2111 ,2112 ,〜,2113nおよびアドレスレジ
スタ2131 ,2132 ,〜,2133nの数はそれぞれ
3n個となる。
n個の読み出しポートと、n個の書き込みポートとを備
えることが必要となる。また、必要なアドレスデコーダ
2111 ,2112 ,〜,2113nおよびアドレスレジ
スタ2131 ,2132 ,〜,2133nの数はそれぞれ
3n個となる。
【0005】
【発明が解決しようとする課題】上述した従来のレジス
タファイル回路は、並列に接続される演算器の数が増え
るに従い、その入力オペランドの供給および出力オペラ
ンドの格納のためにレジスタファイルの読み出しポート
および書き込みポートの数を増加させなければならず、
レジスタセル単体の構成も複雑になり、面積が大きくな
るという問題点がある。
タファイル回路は、並列に接続される演算器の数が増え
るに従い、その入力オペランドの供給および出力オペラ
ンドの格納のためにレジスタファイルの読み出しポート
および書き込みポートの数を増加させなければならず、
レジスタセル単体の構成も複雑になり、面積が大きくな
るという問題点がある。
【0006】特に、機能仕様上、オペランドとして、指
定可能なレジスタのワード数が、多い場合、レジスタの
全ワードを同一の多重・読み出し・書き込み可能な構造
とするとハードウェア規模・占有面積が大きくなる。ま
たそれに伴ない回路の遅延も大きくなるという問題点も
ある。
定可能なレジスタのワード数が、多い場合、レジスタの
全ワードを同一の多重・読み出し・書き込み可能な構造
とするとハードウェア規模・占有面積が大きくなる。ま
たそれに伴ない回路の遅延も大きくなるという問題点も
ある。
【0007】本発明は上記問題点に鑑み、接続される演
算器の数が増えても、個々のレジスタファイルのポート
数を増加させず、できるだけ小規模のハードウェアで対
応可能なレジスタファイル回路を提供することを目的と
する。
算器の数が増えても、個々のレジスタファイルのポート
数を増加させず、できるだけ小規模のハードウェアで対
応可能なレジスタファイル回路を提供することを目的と
する。
【0008】
【課題を解決するための手段】本発明のレジスタファイ
ル回路は、複数の読み出しポート及び、複数のワード数
のレジスタを仕様規定上必要とする演算処理装置であっ
て、仕様規定上のワード数を有するが、読み出しポート
数が仕様規定に満たない第1のレジスタファイルと、第
1のレジスタファイルより少ないワード数を有し、第1
のレジスタファイルの読み出しポート数が当該処理装置
の仕様規定に不足する不足分を補う数の読み出しポート
を有し、第1のレジスタファイルの任意のワードの内容
の写しを格納できる第2のレジスタファイルとを有す
る。
ル回路は、複数の読み出しポート及び、複数のワード数
のレジスタを仕様規定上必要とする演算処理装置であっ
て、仕様規定上のワード数を有するが、読み出しポート
数が仕様規定に満たない第1のレジスタファイルと、第
1のレジスタファイルより少ないワード数を有し、第1
のレジスタファイルの読み出しポート数が当該処理装置
の仕様規定に不足する不足分を補う数の読み出しポート
を有し、第1のレジスタファイルの任意のワードの内容
の写しを格納できる第2のレジスタファイルとを有す
る。
【0009】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1は本発明のレジスタファイル回路の一
実施例を示すブロック図である。本実施例においては、
説明を簡略にするため、レジスタ回路には3オペランド
をとる演算回路を2個のみ接続している。
て説明する。図1は本発明のレジスタファイル回路の一
実施例を示すブロック図である。本実施例においては、
説明を簡略にするため、レジスタ回路には3オペランド
をとる演算回路を2個のみ接続している。
【0010】101は装置の仕様規定上のレジスタの全
ワード数を有するレジスタファイルである。2個の演算
器は、2入力、1出力の3オペランド構成のものである
から、仕様上従来技術であれば、レジスタファイルには
読み出し用の4ポート、書き込み用の2ポートが必要で
ある。しかし、本実施例のレジスタファイル101は2
個の読み出しポート、2個の書き込みポートのみを有す
るものである(ワード数は、例えば128ワード程度と
する)。102はレジスタファイル101よりも少ない
ワード数(例えば16ワード程度)で、読み出しポート
を2個書き込みポートを2個有するレジスタファイルで
ある。103,104は、上記レジスタファイルに接続
される2入力1出力の3オペランドの演算器である。1
41,142,144,145は、各々レジスタファイ
ルからの読み出しデータを保持するリードデータレジス
タであり、143,146はレジスタファイルへの書き
込みデータを保持するライトデータレジスタである。
ワード数を有するレジスタファイルである。2個の演算
器は、2入力、1出力の3オペランド構成のものである
から、仕様上従来技術であれば、レジスタファイルには
読み出し用の4ポート、書き込み用の2ポートが必要で
ある。しかし、本実施例のレジスタファイル101は2
個の読み出しポート、2個の書き込みポートのみを有す
るものである(ワード数は、例えば128ワード程度と
する)。102はレジスタファイル101よりも少ない
ワード数(例えば16ワード程度)で、読み出しポート
を2個書き込みポートを2個有するレジスタファイルで
ある。103,104は、上記レジスタファイルに接続
される2入力1出力の3オペランドの演算器である。1
41,142,144,145は、各々レジスタファイ
ルからの読み出しデータを保持するリードデータレジス
タであり、143,146はレジスタファイルへの書き
込みデータを保持するライトデータレジスタである。
【0011】また、115,116は、書き込みポート
アドレスを保持するアドレスレジスタであり、111,
112はレジスタファイル101用のアドレスデコーダ
である。117,118は、各演算器103,104の
入力第1オペランドのポートアドレスを保持するアドレ
スレジスタであり、113,114は上述のものと同じ
くアドレスデコーダである。119,120は、各演算
器の入力第2オペランドのポートアドレスを保持するア
ドレスレジスタであり、通常、ポートアドレスはレジス
タファイル102のワード選択回路131,132に供
給されている。レジスタファイル102のワード選択回
路131,132は、連想記憶回路を用いており、最近
アクセスされたアドレスの内容を保持している。レジス
タファイル102への書き込み時には、アドレスレジス
タ115,116の内容がワード選択回路131,13
2の連想記憶に書き込まれるようになっており、レジス
タファイル102は、レジスタファイル101のワード
アドレスとその内容をペアで保持するバッファとしての
機能を持つことになる。
アドレスを保持するアドレスレジスタであり、111,
112はレジスタファイル101用のアドレスデコーダ
である。117,118は、各演算器103,104の
入力第1オペランドのポートアドレスを保持するアドレ
スレジスタであり、113,114は上述のものと同じ
くアドレスデコーダである。119,120は、各演算
器の入力第2オペランドのポートアドレスを保持するア
ドレスレジスタであり、通常、ポートアドレスはレジス
タファイル102のワード選択回路131,132に供
給されている。レジスタファイル102のワード選択回
路131,132は、連想記憶回路を用いており、最近
アクセスされたアドレスの内容を保持している。レジス
タファイル102への書き込み時には、アドレスレジス
タ115,116の内容がワード選択回路131,13
2の連想記憶に書き込まれるようになっており、レジス
タファイル102は、レジスタファイル101のワード
アドレスとその内容をペアで保持するバッファとしての
機能を持つことになる。
【0012】読み出し動作時には、アドレスレジスタ1
15〜118に与えられたアドレスにより、レジスタフ
ァイル101,102の内容が読み出され、読み出しデ
ータは各リードデータレジスタ141,142,14
4,145にセットされる。この際、レジスタファイル
102には該当するワードの内容が格納されていないこ
とが発生するため、この場合には、マシンサイクルを停
止し、セレクタ121または122を切り換え、アドレ
スレジスタ119または120のアドレスでレジスタフ
ァイル101を読み出し、その内容を、セレクタ147
または148を切り換えて、リードデータレジスタ14
2または145にセットし、処理を再開する。また、同
時に読み出した内容をセレクタ149または150を切
り換えて、アドレスレジスタ119または120のアド
レス値と伴にレジスタファイル102、ワード選択回路
131または132の連想記憶に格納する。
15〜118に与えられたアドレスにより、レジスタフ
ァイル101,102の内容が読み出され、読み出しデ
ータは各リードデータレジスタ141,142,14
4,145にセットされる。この際、レジスタファイル
102には該当するワードの内容が格納されていないこ
とが発生するため、この場合には、マシンサイクルを停
止し、セレクタ121または122を切り換え、アドレ
スレジスタ119または120のアドレスでレジスタフ
ァイル101を読み出し、その内容を、セレクタ147
または148を切り換えて、リードデータレジスタ14
2または145にセットし、処理を再開する。また、同
時に読み出した内容をセレクタ149または150を切
り換えて、アドレスレジスタ119または120のアド
レス値と伴にレジスタファイル102、ワード選択回路
131または132の連想記憶に格納する。
【0013】このように、読み出すべきデータがレジス
タファイル102に存在しない場合、装置のサイクルが
停止するが、一般には、演算処理の局所性により、レジ
スタファイル102が適当なワード数を有していれば、
停止する瀕度は、それ程高くはならない。すなわちレジ
スタファイル102は、レジスタファイル101に対し
キャッシュとしての役割を有している。
タファイル102に存在しない場合、装置のサイクルが
停止するが、一般には、演算処理の局所性により、レジ
スタファイル102が適当なワード数を有していれば、
停止する瀕度は、それ程高くはならない。すなわちレジ
スタファイル102は、レジスタファイル101に対し
キャッシュとしての役割を有している。
【0014】
【発明の効果】以上説明したように、本発明は、多ワー
ドのマルチポートのレジスタファイルを必要とする演算
処理装置において、仕様上必要な読出しポート数を有し
ていないが、仕様上のワード数を有する第1のレジスタ
ファイルと、それより少ないワード数を有し、前述のレ
ジスタファイルの写しを有するバッファとして動作する
第2のレジスタファイルとを併用することにより、単一
のレジスタファイルで、仕様上のワード数,読み出しポ
ート数を有するものを用いるよりも、ハードウェア規模
を小さく抑えることができるという効果を有する。
ドのマルチポートのレジスタファイルを必要とする演算
処理装置において、仕様上必要な読出しポート数を有し
ていないが、仕様上のワード数を有する第1のレジスタ
ファイルと、それより少ないワード数を有し、前述のレ
ジスタファイルの写しを有するバッファとして動作する
第2のレジスタファイルとを併用することにより、単一
のレジスタファイルで、仕様上のワード数,読み出しポ
ート数を有するものを用いるよりも、ハードウェア規模
を小さく抑えることができるという効果を有する。
【図面の簡単な説明】
【図1】本発明のレジスタファイル回路の一実施例を示
すブロック図である。
すブロック図である。
【図2】従来例を示すブロック図である。
101,102 レジスタファイル 103,104 演算器 111,112,113,114 アドレスデコーダ 115,116,117,118,119,120
アドレスレジスタ 121,122,147,148,149,150
セレクタ 131,132 ワード選択回路 141,142,144,145 リードデータレジ
スタ 143,146 ライトデータレジスタ
アドレスレジスタ 121,122,147,148,149,150
セレクタ 131,132 ワード選択回路 141,142,144,145 リードデータレジ
スタ 143,146 ライトデータレジスタ
Claims (1)
- 【請求項1】 複数の読み出しポート及び、複数のワー
ド数のレジスタを仕様規定上必要とする演算処理装置に
おいて、 仕様規定上のワード数を有するが、読み出しポート数が
仕様規定に満たない第1のレジスタファイルと、 第1のレジスタファイルより少ないワード数を有し、第
1のレジスタファイルの読み出しポート数が当該処理装
置の仕様規定に不足する不足分を補う数の読み出しポー
トを有し、第1のレジスタファイルの任意のワードの内
容の写しを格納できる第2のレジスタファイルとを有す
ることを特徴とするレジスタファイル回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28100291A JP3259732B2 (ja) | 1991-10-28 | 1991-10-28 | レジスタファイル回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28100291A JP3259732B2 (ja) | 1991-10-28 | 1991-10-28 | レジスタファイル回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05119963A JPH05119963A (ja) | 1993-05-18 |
JP3259732B2 true JP3259732B2 (ja) | 2002-02-25 |
Family
ID=17632905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28100291A Expired - Fee Related JP3259732B2 (ja) | 1991-10-28 | 1991-10-28 | レジスタファイル回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3259732B2 (ja) |
-
1991
- 1991-10-28 JP JP28100291A patent/JP3259732B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05119963A (ja) | 1993-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5832290A (en) | Apparatus, systems and method for improving memory bandwidth utilization in vector processing systems | |
US20190189169A1 (en) | Modified decode for corner turn | |
US4375678A (en) | Redundant memory arrangement providing simultaneous access | |
JP2745949B2 (ja) | オペランド情報の静的および動的マスキングを同時かつ独立して行うデータ・プロセッサ | |
US5953738A (en) | DRAM with integral SRAM and arithmetic-logic units | |
JP2776132B2 (ja) | オペランド内の情報のスタティックおよびダイナミック・マスキングを兼ね備えるデータ処理システム | |
US20060190671A1 (en) | Memory device and method having multiple internal data buses and memory bank interleaving | |
US20060294344A1 (en) | Computer processor pipeline with shadow registers for context switching, and method | |
US7743237B2 (en) | Register file bit and method for fast context switch | |
US7490190B2 (en) | Method and system for local memory addressing in single instruction, multiple data computer system | |
US6446181B1 (en) | System having a configurable cache/SRAM memory | |
JP3641031B2 (ja) | 命令装置 | |
TW535054B (en) | Multi-tiered memory bank having different data buffer sizes with a programmable bank select | |
JPH0529945B2 (ja) | ||
US5787454A (en) | Recorder buffer with interleaving mechanism for accessing a multi-parted circular memory array | |
JPH0282330A (ja) | ムーブアウト・システム | |
JPH0438014B2 (ja) | ||
JP3259732B2 (ja) | レジスタファイル回路 | |
US6320813B1 (en) | Decoding of a register file | |
US5388226A (en) | Method and apparatus for accessing a register in a data processing system | |
JPH08115262A (ja) | アドレス変換回路および該アドレス変換回路を具備する電子計算機 | |
US20240184450A1 (en) | Apparatuses and methods for simultaneous in data path compute operations | |
JP2514473B2 (ja) | 並列処理装置 | |
US20040017727A1 (en) | Dual array read port functionality from a one port SRAM | |
JP3120930B2 (ja) | データ記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |