JP2823767B2 - レジスタファイル - Google Patents

レジスタファイル

Info

Publication number
JP2823767B2
JP2823767B2 JP5014669A JP1466993A JP2823767B2 JP 2823767 B2 JP2823767 B2 JP 2823767B2 JP 5014669 A JP5014669 A JP 5014669A JP 1466993 A JP1466993 A JP 1466993A JP 2823767 B2 JP2823767 B2 JP 2823767B2
Authority
JP
Japan
Prior art keywords
register
read
window
significant bit
signal
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
JP5014669A
Other languages
English (en)
Other versions
JPH05282147A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Publication of JPH05282147A publication Critical patent/JPH05282147A/ja
Application granted granted Critical
Publication of JP2823767B2 publication Critical patent/JP2823767B2/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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30123Organisation of register space, e.g. banked or distributed register file according to context, e.g. thread buffers
    • G06F9/30127Register windows
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサな
どにおける一時記憶のための複数の汎用レジスタを備え
たレジスタファイルに関するものである。
【0002】
【従来の技術】近年、マイクロプロセッサの高性能化の
手法の1つとして、レジスタウインドウという構成を採
用したレジスタファイルが提案されている(日経バイト
1988年3月号、130〜141ページ参照)。この
構成によれば、複数の汎用レジスタを備えたレジスタフ
ァイルの全部又は一部が複数枚のウインドウに分割さ
れ、各ウインドウは各々一部のレジスタを二重アドレス
レジスタとして両隣のウインドウと共有する。ウインド
ウを切替えれば、使用可能なレジスタを切替えることが
できる。また、互いに隣接した2枚のウインドウのオー
バーラップ部分に位置する二重アドレスレジスタを用い
ることにより、プロシージャ間のデータの受け渡しを高
速実行できる。
【0003】各ウインドウ中の個々のレジスタは、ウイ
ンドウを選択するためのウインドウ番号と該ウインドウ
内の相対位置を示すレジスタアドレスとの組み合わせで
決定されるアドレスを以て指定される。二重アドレスレ
ジスタの各々は、異なる2つのアドレスを持つ。ウイン
ドウ番号は、現在のウインドウ(カレントウインドウ)
の番号のインクリメント及びデクリメントを司るウイン
ドウ制御回路から出力されるウインドウ番号信号によっ
て特定される。レジスタアドレスは、マイクロプロセッ
サの命令のうちのレジスタ指定ビットに基づいてレジス
タアドレス信号生成回路から出力されるレジスタアドレ
ス信号によって特定される。
【0004】上記ウインドウ構成を採用した従来のレジ
スタファイルは、複数の汎用レジスタを構成するための
メモリセルアレイ、前記ウインドウ制御回路及びレジス
タアドレス信号生成回路に加えて、アドレス変換回路と
デコード回路とを備えていた。例えば64本のレジスタ
を備えたレジスタファイルでは、アドレス変換回路はウ
インドウ番号信号及びレジスタアドレス信号を演算処理
により6ビットのアドレス信号に変換する。ただし、二
重アドレスレジスタは2つのアドレスを持つことを考慮
して、アドレス変換回路は、ウインドウ番号信号とレジ
スタアドレス信号との異なる組み合わせを同一のアドレ
ス信号に変換し得るようになっている。デコード回路
は、アドレス変換回路からの6ビットのアドレス信号に
基づき、メモリセルアレイ中のレジスタを選択するため
の64本のワード線のうちの1本をアサートするもので
ある。
【0005】
【発明が解決しようとする課題】上記従来のレジスタフ
ァイルは、ウインドウ番号信号及びレジスタアドレス信
号をアドレス信号に変換するように演算処理を実行する
ためのアドレス変換回路を備えていたので、該演算処理
の実行に要する時間がレジスタの高速読み出しを阻害す
る1つの要因になっていた。
【0006】本発明の目的は、オーバーラップしたウイ
ンドウ構成を採用したレジスタファイルにおいて、上記
アドレス変換のための演算処理をなくし、以てレジスタ
の高速読み出しを実現することにある。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、二重アドレスレジスタのためのメモリセ
ル群を第1及び第2のメモリセルアレイに分割し、ウイ
ンドウ番号信号及びレジスタアドレス信号を2つのデコ
ード回路により各々直接にデコードして第1及び第2の
メモリセルアレイから各々1つのデータを読み出し、該
読み出した両データのいずれかを出力選択回路により選
択する構成を採用したものである。
【0008】具体的に説明すると、請求項1の発明は、
複数の構成レジスタの全部又は一部が各々K本のレジス
タを備えたL枚のウインドウに分割され、各ウインドウ
は各々一部のレジスタを二重アドレスレジスタとして両
隣のウインドウと共有し、各ウインドウ中の個々のレジ
スタは前記L枚のウインドウのうちの1枚を選択するた
めのウインドウ番号と該ウインドウ内の相対位置を示す
レジスタアドレスとを以て指定されるレジスタファイル
において、次のような第1及び第2のメモリセルアレイ
と、ウインドウ制御回路と、レジスタアドレス信号生成
回路と、第1及び第2の読み出しデコード回路と、出力
選択回路とを備えた構成を採用したものである。第1の
メモリセルアレイは、二重アドレスレジスタのうちの半
数のためのメモリセル群を第1のワード群として備え、
かつ該第1のワード群の各々は第1の読み出しビット線
を互いに共有した構成を備えたものである。第2のメモ
リセルアレイは、二重アドレスレジスタのうちの残りの
半数のためのメモリセル群を第2のワード群として備
え、かつ該第2のワード群の各々は前記第1の読み出し
ビット線とは異なる第2の読み出しビット線を互いに共
有した構成を備えたものである。ウインドウ制御回路
は、ウインドウ番号を特定するようにMビットのウイン
ドウ番号信号を出力するための回路である。レジスタア
ドレス信号生成回路は、レジスタアドレスを特定するよ
うにNビットのレジスタアドレス信号を生成するための
回路である。第1及び第2の読み出しデコード回路は、
ウインドウ制御回路からのウインドウ番号信号とレジス
タアドレス信号生成回路からのレジスタアドレス信号と
に基づき各々前記第1のワード群のうちの1つと前記第
2のワード群のうちの1つとを選択するための回路であ
る。そして、出力選択回路は、前記第1のワード群のう
ちの選択されたワードから第1の読み出しビット線上に
読み出されたデータと前記第2のワード群のうちの選択
されたワードから第2の読み出しビット線上に読み出さ
れたデータとのうちのいずれかを出力データとして選択
するための回路である。
【0009】請求項2の発明では、二重アドレスレジス
タのためのメモリセル群をレジスタアドレスの奇偶に応
じて2分割し、かつ各ワードに2本の読み出しワード線
を設けることとした。すなわち、第1のメモリセルアレ
イは、二重アドレスレジスタのうち最下位ビットが0の
レジスタアドレス信号を以て指定されるべきレジスタの
ためのメモリセル群を前記第1のワード群として備え、
かつ該第1のワード群の各々は2本の第1の読み出しワ
ード線をそれぞれ備える。第2のメモリセルアレイは、
二重アドレスレジスタのうち最下位ビットが1のレジス
タアドレス信号を以て指定されるべきレジスタのための
他のメモリセル群を前記第2のワード群として備え、か
つ該第2のワード群の各々は2本の第2の読み出しワー
ド線をそれぞれ備える。第1及び第2の読み出しデコー
ド回路は、ウインドウ番号信号の全ビットとレジスタア
ドレス信号の最下位ビットを除く全ビットとに基づき各
々第1の読み出しワード線のうちの1本と第2の読み出
しワード線のうちの1本とをアサートする機能を備え
る。そして、出力選択回路は、レジスタアドレス信号の
最下位ビットが0である場合には第1の読み出しビット
線上のデータを、レジスタアドレス信号の最下位ビット
が1である場合には第2の読み出しビット線上のデータ
を各々出力データとして選択する機能を備えることとし
た。
【0010】請求項3の発明では、二重アドレスレジス
タのためのメモリセル群をウインドウ番号の最下位ビッ
トとレジスタアドレスの最上位ビットとに応じて2分割
し、かつ各ワードに1本のみの読み出しワード線を設け
ることとした。すなわち、第1のメモリセルアレイは、
二重アドレスレジスタのうち最下位ビットが0のウイン
ドウ番号信号と最上位ビットが1のレジスタアドレス信
号とを以てかつ最下位ビットが1のウインドウ番号信号
と最上位ビットが0のレジスタアドレス信号とを以て指
定されるべきレジスタのためのメモリセル群を前記第1
のワード群として備え、かつ該第1のワード群の各々は
1本のみの第1の読み出しワード線をそれぞれ備える。
第2のメモリセルアレイは、二重アドレスレジスタのう
ち最下位ビットが0のウインドウ番号信号と最上位ビッ
トが0のレジスタアドレス信号とを以てかつ最下位ビッ
トが1のウインドウ番号信号と最上位ビットが1のレジ
スタアドレス信号とを以て指定されるべきレジスタのた
めの他のメモリセル群を前記第2のワード群として備
え、かつ該第2のワード群の各々は1本のみの第2の読
み出しワード線をそれぞれ備える。第1及び第2の読み
出しデコード回路は、ウインドウ番号信号の全ビットと
レジスタアドレス信号の最上位ビットを除く全ビットと
に基づき各々第1の読み出しワード線のうちの1本と第
2の読み出しワード線のうちの1本とをアサートする機
能を備える。そして、出力選択回路は、ウインドウ番号
信号の最下位ビットとレジスタアドレス信号の最上位ビ
ットとが一致しない場合には第1の読み出しビット線上
のデータを、ウインドウ番号信号の最下位ビットとレジ
スタアドレス信号の最上位ビットとが一致する場合には
第2の読み出しビット線上のデータを各々出力データと
して選択する機能を備えることとした。
【0011】請求項4の発明では、ウインドウ番号で指
定されるウインドウの隣接ウインドウを指し示す修正ウ
インドウ番号を用いることとした。すなわち、第1のメ
モリセルアレイは、二重アドレスレジスタのうち最下位
ビットが0のウインドウ番号信号と最上位ビットが1の
レジスタアドレス信号とを以てかつ最下位ビットが1の
ウインドウ番号信号と最上位ビットが0のレジスタアド
レス信号とを以て指定されるべきレジスタのためのメモ
リセル群を前記第1のワード群として備え、かつ該第1
のワード群の各々は1本のみの第1の読み出しワード線
をそれぞれ備える。第2のメモリセルアレイは、二重ア
ドレスレジスタのうち最下位ビットが0のウインドウ番
号信号と最上位ビットが0のレジスタアドレス信号とを
以てかつ最下位ビットが1のウインドウ番号信号と最上
位ビットが1のレジスタアドレス信号とを以て指定され
るべきレジスタのための他のメモリセル群を前記第2の
ワード群として備え、かつ該第2のワード群の各々は1
本のみの第2の読み出しワード線をそれぞれ備える。ウ
インドウ制御回路は、ウインドウ番号で指定されるウイ
ンドウの隣接ウインドウを指し示す修正ウインドウ番号
を特定するようにMビットの修正ウインドウ番号信号を
出力する機能を更に備える。第1の読み出しデコード回
路は、ウインドウ番号信号の最下位ビットを除く全ビッ
トとレジスタアドレス信号の最上位ビットを除く全ビッ
トとに基づき第1の読み出しワード線のうちの1本をア
サートする機能を備える。第2の読み出しデコード回路
は、修正ウインドウ番号信号の最下位ビットを除く全ビ
ットとレジスタアドレス信号の最上位ビットを除く全ビ
ットとに基づき第2の読み出しワード線のうちの1本を
アサートする機能を備える。そして、出力選択回路は、
ウインドウ番号信号の最下位ビットとレジスタアドレス
信号の最上位ビットとが一致しない場合又は修正ウイン
ドウ番号信号の最下位ビットとレジスタアドレス信号の
最上位ビットとが一致する場合には第1の読み出しビッ
ト線上のデータを、ウインドウ番号信号の最下位ビット
とレジスタアドレス信号の最上位ビットとが一致する場
合又は修正ウインドウ番号信号の最下位ビットとレジス
タアドレス信号の最上位ビットとが一致しない場合には
第2の読み出しビット線上のデータを各々出力データと
して選択する機能を備えることとした。
【0012】請求項5及び6の発明では、ウインドウ数
Lが2の累乗である場合だけでなくそれ以外のウインド
ウ数の場合にも請求項4の発明を適用し得るように、次
のような修正ウインドウ番号の決定方法を採用した。す
なわち、請求項5の発明では、ウインドウ数Lがウイン
ドウ番号信号及び修正ウインドウ番号信号のビット数M
との間でL≦2M の関係を満たすことを前提とし、ウイ
ンドウ制御回路は、ウインドウ番号が0から(L−2)
までのうちのいずれかの値である場合には該ウインドウ
番号に1を加算して得られる値を、ウインドウ番号が
(L−1)である場合には0を各々修正ウインドウ番号
として採用することとした。また、請求項6の発明で
は、ウインドウ番号が1から(L−1)までのうちのい
ずれかの値である場合には該ウインドウ番号から1を減
算して得られる値を、ウインドウ番号が0である場合に
は(L−1)を各々修正ウインドウ番号として採用する
こととした。
【0013】
【作用】請求項1の発明によれば、第1の読み出しデコ
ード回路は、ウインドウ番号信号及びレジスタアドレス
信号から直接に第1のメモリセルアレイ中の1つの二重
アドレスレジスタを選択する。これと並行して、第2の
読み出しデコード回路は、ウインドウ番号信号及びレジ
スタアドレス信号から直接に第2のメモリセルアレイ中
の1つの二重アドレスレジスタを選択する。これによ
り、第1及び第2の読み出しビット線上に各々1つのデ
ータが読み出される。そして、両データのうちの1つが
出力選択回路により出力データとして選択される。この
際、ウインドウ番号信号及びレジスタアドレス信号に基
づく演算処理を実行するためのアドレス変換回路が介在
しないので、レジスタの読み出しが高速化される。ま
た、メモリセル群の分割によって各々の読み出しビット
線が短くなる結果、該ビット線にかかる負荷容量が低減
されるので、レジスタの読み出しが更に高速化される。
【0014】請求項2の発明によれば、二重アドレスレ
ジスタのためのメモリセル群はレジスタアドレスの奇偶
に応じて第1及び第2のメモリセルアレイに分割され
る。しかも、アドレスの二重性に対応して、各レジスタ
に2本の読み出しワード線が設けられる。第1及び第2
のメモリセルアレイが各々例えばJ本の二重アドレスレ
ジスタを備えている場合について説明すると、2J本の
第1の読み出しワード線のうちの1本が第1の読み出し
デコード回路により、2J本の第2の読み出しワード線
のうちの1本が第2の読み出しデコード回路により各々
アサートされる。この際、レジスタアドレス信号の最下
位ビットは両読み出しデコード回路では使用されず、出
力選択回路における出力データの選択にのみ使用され
る。したがって、第1及び第2の読み出しデコード回路
の入力信号のビット数が低減し、デコードの高速化が図
れる。
【0015】請求項3の発明によれば、各ウインドウ中
の一方の隣接ウインドウ側の二重アドレスレジスタと他
方の隣接ウインドウ側の二重アドレスレジスタとを分け
るように、ウインドウ番号の最下位ビットとレジスタア
ドレスの最上位ビットとに応じて二重アドレスレジスタ
のためのメモリセル群が第1及び第2のメモリセルアレ
イに分割される。したがって、ウインドウ番号信号とレ
ジスタアドレス信号の最上位ビット以外のビットとを用
いることにより、読み出すべきレジスタを第1のメモリ
セルアレイ中の1本のレジスタ及び第2のメモリセルア
レイ中の1本のレジスタのうちのいずれかに特定でき
る。つまり、アドレスの二重性にもかかわらず、各レジ
スタは1本の読み出しワード線を備えていれば十分であ
る。第1及び第2のメモリセルアレイが各々例えばJ本
の二重アドレスレジスタを備えている場合、J本の第1
の読み出しワード線のうちの1本が第1の読み出しデコ
ード回路により、J本の第2の読み出しワード線のうち
の1本が第2の読み出しデコード回路により各々アサー
トされる。両読み出しデコード回路は、各々J本の読み
出しワード線のうちの1本をアサートすればよいので、
請求項2の発明の場合に比べてその回路規模が縮小され
る。また、両メモリセルアレイ中の読み出しのための回
路の規模も縮小される。なお、レジスタアドレス信号の
最上位ビットは両読み出しデコード回路では使用され
ず、出力選択回路におけるウインドウ番号信号の最下位
ビットとの一致判定を通じた出力データの選択にのみ使
用される。したがって、第1及び第2の読み出しデコー
ド回路の入力信号のビット数が低減し、デコードの高速
化が図れる。
【0016】請求項4の発明によれば、ウインドウ制御
回路からウインドウ番号信号に加えて修正ウインドウ番
号信号が出力される。ある二重アドレスレジスタが番号
0のウインドウと番号1のウインドウとに共有される場
合、該二重アドレスレジスタの特定に使用されるウイン
ドウ番号信号のうちの最下位ビットを除く全ビットは両
ウインドウに共通である。(2,3)、(4,5)、
(6,7)等の他のウインドウ番号の組み合わせの場合
も同様である。ところが、ある二重アドレスレジスタが
番号7のウインドウと番号0のウインドウとに共有され
る場合、該二重アドレスレジスタの特定に使用されるウ
インドウ番号信号のビットについて両ウインドウに共通
性はない。(1,2)、(3,4)、(5,6)等の他
のウインドウ番号の組み合わせの場合も、(0,1)等
の場合に比べて共通ビット数は少ない。そこで、ある二
重アドレスレジスタが番号k(kは偶数)のウインドウ
と番号(k+1)のウインドウとに共有される場合には
ウインドウ番号信号を用い、番号(k−1)のウインド
ウと番号kのウインドウとに共有される場合には修正ウ
インドウ番号信号を用いることとする。ウインドウ番号
信号の最下位ビット以外のビットとレジスタアドレス信
号の最上位ビット以外のビットとは、第1の読み出しワ
ード線のうちの1本をアサートするために第1の読み出
しデコード回路に使用される。また、修正ウインドウ番
号信号の最下位ビット以外のビットとレジスタアドレス
信号の最上位ビット以外のビットとは、第2の読み出し
ワード線のうちの1本をアサートするために第2の読み
出しデコード回路に使用される。この際、修正ウインド
ウ番号信号の採用により第2の読み出しデコード回路の
構成が第1の読み出しデコード回路と同程度に簡略化さ
れる。ウインドウ番号信号又は修正ウインドウ番号信号
の最下位ビットと、レジスタアドレス信号の最上位ビッ
トとは、出力選択回路における出力データの選択にのみ
使用される。
【0017】請求項5の発明によれば、ウインドウ数L
が2の累乗である場合(L=2M )には、ウインドウ番
号に1を加算して得られる値のうちの下位Mビットを修
正ウインドウ番号として採用すれば、該修正ウインドウ
番号により隣接ウインドウを常に差し示すことができ
る。(2M −1)に1を加算して得られる値の下位Mビ
ットが0となるからである。これに対してウインドウ数
Lが2の累乗以外である場合(L<2M )には、最大ウ
インドウ番号(L−1)については例外的に0を修正ウ
インドウ番号として採用する。
【0018】請求項6の発明によれば、ウインドウ数L
が2の累乗である場合(L=2M )には、ウインドウ番
号から1を減算して得られる値のうちの下位Mビットを
修正ウインドウ番号として採用すれば、該修正ウインド
ウ番号により隣接ウインドウを常に差し示すことができ
る。0から1を減算して得られる値の下位Mビットが
(L−1)となるからである。これに対してウインドウ
数Lが2の累乗以外である場合(L<2M )には、最小
ウインドウ番号0については例外的に(L−1)を修正
ウインドウ番号として採用する。
【0019】
【実施例】以下、本発明の5つの実施例に係るレジスタ
ファイルについて、図面を参照しながら順次説明する。
【0020】(実施例1)図1は、本発明の第1の実施
例に係るレジスタファイルで採用されたレジスタウイン
ドウの構成を示す概念図である。この例では、レジスタ
ファイルを構成する64本のレジスタを各々16本のレ
ジスタR0〜R15からなる8枚のウインドウW0〜W
7に分割している。例えば、W0_R2はウインドウ0
に属するレジスタ2を表している。各ウインドウは、R
0〜R7の8本のレジスタを番号の1つ小さい隣接ウイ
ンドウと共有し、R8〜R15の残り8本のレジスタを
番号の1つ大きい隣接ウインドウと共有している。例え
ば、W0_R0とW7_R8とは同一のレジスタを表し
ている。ウインドウの非オーバーラップ部分はなく、全
てのレジスタは二重アドレスレジスタである。
【0021】図2は、本発明の第1の実施例に係るレジ
スタファイルのうちの読み出しのための回路部分の構成
を示すブロック図である。図2において、32ビット長
の64本のレジスタは第1及び第2のメモリセルアレイ
15,16に分割されている。第1のメモリセルアレイ
15は、偶数のレジスタアドレスを以て指定される32
本のレジスタ151(W0_R0,W7_R8等)を備
えている。第1のメモリセルアレイ15中の32本のレ
ジスタ151は、各々2本の第1の読み出しワード線R
WL1を備え、かつ32本の第1の読み出しビット線R
BL1を互いに共有している。第2のメモリセルアレイ
16は、奇数のレジスタアドレスを以て指定される32
本のレジスタ161(W0_R1,W7_R9等)を備
えている。第2のメモリセルアレイ16中の32本のレ
ジスタ161は、各々2本の第2の読み出しワード線R
WL2を備え、かつ前記第1の読み出しビット線RBL
1とは別の32本の第2の読み出しビット線RBL2を
互いに共有している。
【0022】11は入力された命令信号からレジスタア
ドレス(0〜15)を取り出して4ビットのレジスタア
ドレス信号RN3 〜RN0 を生成するためのレジスタア
ドレス信号生成回路、12はカレントウインドウの番号
(0〜7)を示す3ビットのウインドウ番号信号WN2
〜WN0 を出力するためのウインドウ制御回路である。
13及び14は、各々ウインドウ番号信号の全ビットW
N2 〜WN0 と最下位ビットを除くレジスタアドレス信
号RN3 〜RN1 との合計6ビットを入力とし、64本
の第1の読み出しワード線RWL1のうちの1本と64
本の第2の読み出しワード線RWL2のうちの1本とを
それぞれアサートするための第1及び第2の読み出しデ
コード回路である。
【0023】表1及び表2は、ウインドウ番号信号WN
2 〜0 及びレジスタアドレス信号RN3 〜0 と、第1及
び第2の読み出しデコード回路13,14により選択さ
れるレジスタとの関係を示すものである。ただし、表中
の括弧内は2進表記であり、xは0又は1を表してい
る。両読み出しデコード回路13,14の各々の機能
は、ANDゲート等の組み合わせ論理回路により達成さ
れる。
【0024】
【表1】
【0025】
【表2】
【0026】図2中の17及び18は、第1及び第2の
読み出しビット線RBL1,RBL2をプリチャージす
るための第1及び第2のプリチャージ回路である。19
は、レジスタアドレス信号の最下位ビットRN0 が0の
時には第1の読み出しビット線RBL1上のデータを、
1の時には第2の読み出しビット線RBL2上のデータ
を各々32ビットの出力データとして選択するための出
力選択回路である。
【0027】図3は、本実施例に係るレジスタファイル
のうちの書き込みのための回路部分の構成を示すブロッ
ク図である。図3において、レジスタアドレス信号生成
回路11、ウインドウ制御回路12並びに第1及び第2
のメモリセルアレイ15,16は、図2に示したものと
同じ構成要素である。ただし、第1及び第2のメモリセ
ルアレイ15,16中の64本のレジスタ151,16
1は、各々1本の書き込みワード線WWLを備え、かつ
32本の書き込みビット線WBLを互いに共有してい
る。20は、ウインドウ制御回路12からのウインドウ
番号信号WWN2〜WWN0 とレジスタアドレス信号生
成回路11からのレジスタアドレス信号WRN3 〜WR
N0 との合計7ビットを入力とし、64本の書き込みワ
ード線WWLのうちの1本をアサートするための書き込
みデコード回路である。21は、32ビットの入力デー
タを書き込みビット線WBL上に供給するための書き込
みデータ入力回路である。
【0028】図4は、第1及び第2のメモリセルアレイ
15,16中の1本のレジスタ151又は161の内部
構成を示す回路図である。図4において、1本のレジス
タ151(161)は1ワードを構成する32個のメモ
リセル31からなり、メモリセル毎に読み出し回路32
及び書き込み回路33が設けられている。読み出し回路
32は4個のNchMOSトランジスタ321〜324
により、書き込み回路33は1個のNchMOSトラン
ジスタ331により各々構成される。書き込みビット線
WBL上のデータは、書き込みワード線WWLが1にな
った時に、書き込み回路33を通してメモリセル31に
書き込まれる。そして、メモリセル31の保持データ
は、2本の読み出しワード線RWL1(RWL2)のう
ちのいずれかが1になった時に、読み出し回路32を通
して読み出しビット線RBL1(RBL2)上に出力さ
れるようになっている。
【0029】例えば、64本の書き込みワード線WWL
のうちのW1_R2(W0_R10)に接続された書き
込みワード線は、カレントウインドウの番号が1でレジ
スタアドレスが2の時と、カレントウインドウの番号が
0でレジスタアドレスが10の時とに限りアサートされ
て1となる。このアサートにより書き込みが選択された
W1_R2(W0_R10)には、外部から与えられた
データが書き込まれる。W1_R2(W0_R10)の
保持データの読み出しは次のようにして実行される。す
なわち、カレントウインドウの番号が1の時に命令信号
によりレジスタアドレス2のレジスタの読み出しが指定
されると、第1のメモリセルアレイ15においてW1_
R2(W0_R10)から第1の読み出しビット線RB
L1へのデータの読み出しが実行されるだけでなく、第
2のメモリセルアレイ16においてW1_R3(W0_
R11)から第2の読み出しビット線RBL2へのデー
タの読み出しが行なわれる。ところが、レジスタアドレ
ス信号の最下位ビットRN0 は0であるので、出力選択
回路19で第1の読み出しビット線RBL1が選択さ
れ、W1_R2(W0_R10)からの読み出しデータ
が出力データとして選択される。
【0030】以上のとおり、本実施例によれば、二重ア
ドレスレジスタのためのメモリセル群を第1及び第2の
メモリセルアレイ15,16に分割し、ウインドウ番号
信号及びレジスタアドレス信号を2つの読み出しデコー
ド回路13,14により各々直接にデコードして第1及
び第2のメモリセルアレイ15,16から各々1つのデ
ータを読み出し、該読み出した両データのうちのいずれ
かを出力選択回路19により選択する構成を採用したの
で、ウインドウ番号信号及びレジスタアドレス信号に基
づく演算処理を実行するためのアドレス変換回路の介在
なしにレジスタの読み出しを実行できる結果、該読み出
しが高速化される。しかも、メモリセル群の分割によっ
て各々の読み出しビット線RBL1,RBL2が短くな
り該ビット線にかかる負荷容量が低減されるので、レジ
スタの読み出しが更に高速化される。また、二重アドレ
スレジスタのためのメモリセル群をレジスタアドレスの
奇偶に応じて第1及び第2のメモリセルアレイ15,1
6に分割し、かつアドレスの二重性に対応して各レジス
タ151(161)に2本の読み出しワード線RWL1
(RWL2)を設けた構成を採用したので、第1及び第
2の読み出しデコード回路13,14の入力信号のビッ
ト数が低減する結果、デコードの高速化ひいてはレジス
タの読み出しの高速化を実現できる。
【0031】しかしながら、本実施例では、各レジスタ
に2本の読み出しワード線を設けているために、各読み
出しデコード回路13,14のみならずメモリセル毎の
読み出し回路32も回路規模が大きくなり、レジスタフ
ァイル全体の回路規模が大きなものとなる。以下の実施
例によれば、この問題が解消される。
【0032】(実施例2)図5〜図7は、本発明の第2
の実施例に係るレジスタファイルを示す図であって、各
々第1の実施例の図2〜図4に対応するものである。た
だし、レジスタウインドウの構成は図1に示したものと
同一であって、全てのレジスタは二重アドレスレジスタ
である。
【0033】図5において、レジスタアドレス信号生成
回路11、ウインドウ制御回路12並びに第1及び第2
のプリチャージ回路17,18は、図2に示したものと
同様の機能を持った回路ブロックである。本実施例によ
れば、64本のレジスタは、ウインドウ番号の最下位ビ
ットとレジスタアドレスの最上位ビットとに応じて第1
及び第2のメモリセルアレイ15a,16aに分割され
る。すなわち、第1のメモリセルアレイ15aは偶数ウ
インドウの後半レジスタR8〜R15を、第2のメモリ
セルアレイ15bは偶数ウインドウの前半レジスタR0
〜R7を各々備えている。ただし、偶数ウインドウの後
半レジスタR8〜R15は奇数ウインドウの前半レジス
タR0〜R7と、偶数ウインドウの前半レジスタR0〜
R7は奇数ウインドウの後半レジスタR8〜R15とそ
れぞれオーバーラップしている。第1のメモリセルアレ
イ15a中の32本のレジスタ151a(W0_R8,
W1_R0等)は、各々1本の第1の読み出しワード線
RWL1aを備え、かつ32本の第1の読み出しビット
線RBL1を互いに共有している。第2のメモリセルア
レイ16a中の32本のレジスタ161a(W7_R
8,W0_R0等)は、各々1本の第2の読み出しワー
ド線RWL2aを備え、かつ前記第1の読み出しビット
線RBL1とは別の32本の第2の読み出しビット線R
BL2を互いに共有している。
【0034】13aは、最下位ビットを除くウインドウ
番号信号WN2 〜WN1 と最上位ビットを除くレジスタ
アドレス信号RN2 〜RN0 との合計5ビットを入力と
し、32本の第1の読み出しワード線RWL1aのうち
の1本をアサートするための第1の読み出しデコード回
路である。14aは、ウインドウ番号信号の全ビットW
N2 〜WN0 と最上位ビットを除くレジスタアドレス信
号RN2 〜RN0 との合計6ビットを入力とし、32本
の第2の読み出しワード線RWL2aのうちの1本をア
サートするための第2の読み出しデコード回路である。
【0035】表3及び表4は、ウインドウ番号信号WN
2 〜0 及びレジスタアドレス信号RN3 〜0 と、第1及
び第2の読み出しデコード回路13a,14aにより選
択されるレジスタとの関係を示すものである。
【0036】
【表3】
【0037】
【表4】
【0038】図5中の19aは、ウインドウ番号信号の
最下位ビットWN0 とレジスタアドレス信号の最上位ビ
ットRN3 との排他的論理和が1の時には第1の読み出
しビット線RBL1上のデータを、該排他的論理和が0
の時には第2の読み出しビット線RBL2上のデータを
各々32ビットの出力データとして選択するための出力
選択回路である。
【0039】図6において、レジスタアドレス信号生成
回路11、ウインドウ制御回路12並びに第1及び第2
のメモリセルアレイ15a,16aは、図5に示したも
のと同じ構成要素である。ただし、図3の場合と同様
に、第1及び第2のメモリセルアレイ15a,16a中
の64本のレジスタ151a,161aは、各々1本の
書き込みワード線WWLを備え、かつ32本の書き込み
ビット線WBLを互いに共有している。20aは、ウイ
ンドウ番号信号WWN2 〜WWN0 とレジスタアドレス
信号WRN3 〜WRN0 との合計7ビットを入力とし、
64本の書き込みワード線WWLのうちの1本をアサー
トするための書き込みデコード回路である。21は、3
2ビットの入力データを書き込みビット線WBL上に供
給するための書き込みデータ入力回路である。
【0040】図7において、1本のレジスタ151a
(161a)は1ワードを構成する32個のメモリセル
31からなり、メモリセル毎に読み出し回路32a及び
書き込み回路33が設けられている。読み出し回路32
aは2個のNchMOSトランジスタ325,326に
より、書き込み回路33は1個のNchMOSトランジ
スタ331により各々構成される。書き込みビット線W
BL上のデータは、書き込みワード線WWLが1になっ
た時に、書き込み回路33を通してメモリセル31に書
き込まれる。そして、メモリセル31の保持データは、
読み出しワード線RWL1a(RWL2a)が1になっ
た時に、読み出し回路32を通して読み出しビット線R
BL1(RBL2)上に出力されるようになっている。
【0041】例えば、64本の書き込みワード線WWL
のうちのW1_R2(W0_R10)に接続された書き
込みワード線は、カレントウインドウの番号が1でレジ
スタアドレスが2の時と、カレントウインドウの番号が
0でレジスタアドレスが10の時とに限りアサートされ
て1となる。このアサートにより書き込みが選択された
W1_R2(W0_R10)には、外部から与えられた
データが書き込まれる。W1_R2(W0_R10)の
保持データの読み出しは次のようにして実行される。す
なわち、カレントウインドウの番号が1の時に命令信号
によりレジスタアドレス2のレジスタの読み出しが指定
されると、第1のメモリセルアレイ15aにおいてW1
_R2(W0_R10)から第1の読み出しビット線R
BL1へのデータの読み出しが実行されるだけでなく、
第2のメモリセルアレイ16aにおいてW1_R10
(W2_R2)から第2の読み出しビット線RBL2へ
の読み出しが行なわれる。ところが、ウインドウ番号信
号の最下位ビットWN0 とレジスタアドレス信号の最上
位ビットRN3 との排他的論理和は1であるので、出力
選択回路19aで第1の読み出しビット線RBL1が選
択され、W1_R2(W0_R10)からの読み出しデ
ータが出力データとして選択される。
【0042】以上のとおり、本実施例によれば、各ウイ
ンドウ中の一方の隣接ウインドウ側の二重アドレスレジ
スタと他方の隣接ウインドウ側の二重アドレスレジスタ
とを分けるように二重アドレスレジスタのためのメモリ
セル群を第1及び第2のメモリセルアレイ15a,16
aに分割し、かつ各レジスタ151a(161a)に1
本の読み出しワード線RWL1a(RWL2a)を設け
た構成を採用したので、第1及び第2の読み出しデコー
ド回路13a,14aは、第1の実施例の場合に比べて
その回路規模が縮小される。また、これに伴ってメモリ
セル毎の読み出し回路32aも構成が簡略化される結
果、レジスタファイル全体の回路規模が小さく抑えられ
ることとなる。
【0043】本実施例では、第1の読み出しデコード回
路13aはウインドウ番号信号WN2 〜WN0 のうちの
最下位ビットを除く2ビットを入力とするのに対し、第
2の読み出しデコード回路14aはウインドウ番号信号
WN2 〜WN0 の全ビットを入力としている。以下の実
施例では、ウインドウ番号の修正により、2つの読み出
しデコード回路を互いに同等化している。
【0044】(実施例3)図8は、本発明の第3の実施
例に係るレジスタファイルを示す図であって、第2の実
施例の図5に対応するものである。ただし、レジスタウ
インドウの構成は図1に示したものと同一であって、全
てのレジスタは二重アドレスレジスタである。
【0045】図8において、レジスタアドレス信号生成
回路11、第1の読み出しデコード回路13a、第1及
び第2のメモリセルアレイ15a,16a、第1及び第
2のプリチャージ回路17,18並びに出力選択回路1
9aは、図5に示したものと同様の回路ブロックであ
る。本実施例によれば、ウインドウ制御回路12aは、
カレントウインドウの番号(0〜7)を示す3ビットの
ウインドウ番号信号WN2 〜WN0 を出力する機能に加
えて、該カレントウインドウの番号に1を加算した値の
下位3ビットを修正ウインドウ番号信号XN2 〜XN0
として出力する機能をも備えている。第2の読み出しデ
コード回路14bは、最下位ビットを除く修正ウインド
ウ番号信号XN2 〜XN1 と最上位ビットを除くレジス
タアドレス信号RN2 〜RN0 との合計5ビットを入力
とし、第2のメモリセルアレイ16aへの32本の第2
の読み出しワード線RWL2bのうちの1本をアサート
するものである。すなわち、第1及び第2の読み出しデ
コード回路13a,14bの入力信号は、いずれも5ビ
ットである。
【0046】表5は、修正ウインドウ番号信号XN2 〜
0 及びレジスタアドレス信号RN3〜0 と、第2の読み
出しデコード回路14bにより選択されるレジスタとの
関係を示すものである。なお、第1の読み出しデコード
回路13aのデコード方式は、前述の表3のとおりであ
る。
【0047】
【表5】
【0048】例えば、W2_R3(W1_R11)の保
持データの読み出しは、次のようにして実行される。す
なわち、カレントウインドウの番号が2(修正ウインド
ウ番号は3)の時に命令信号によりレジスタアドレス3
のレジスタの読み出しが指定されると、第2のメモリセ
ルアレイ16aにおいてW2_R3(W1_R11)か
ら第2の読み出しビット線RBL2へのデータの読み出
しが実行されるだけでなく、第1のメモリセルアレイ1
5aにおいてW3_R3(W2_R11)から第1の読
み出しビット線RBL1へのデータの読み出しが行なわ
れる。ところが、ウインドウ番号信号の最下位ビットW
N0 とレジスタアドレス信号の最上位ビットRN3 との
排他的論理和は0であるので、出力選択回路19aで第
2の読み出しビット線RBL2が選択され、W2_R3
(W1_R11)からの読み出しデータが出力データと
して選択される。
【0049】本実施例によれば、第2の実施例における
(7,0)、(1,2)、(3,4)、(5,6)の4
種類のウインドウ番号の組み合わせ(表4参照)が各々
(0,1)、(2,3)、(4,5)、(6,7)の修
正ウインドウ番号の組み合わせ(表5参照)に変換され
るので、第2の読み出しデコード回路14bの構成が第
1の読み出しデコード回路13aと同程度に簡略化され
る。この結果、デコードの高速化ひいてはレジスタの読
み出しの高速化を実現できる。
【0050】なお、カレントウインドウの番号から1を
減算した値の下位3ビットを修正ウインドウ番号信号X
N2 〜XN0 としてもよい。この場合には、第2の実施
例における(7,0)、(1,2)、(3,4)、
(5,6)の4種類のウインドウ番号の組み合わせが各
々(6,7)、(0,1)、(2,3)、(4,5)の
修正ウインドウ番号の組み合わせに変換されるので、第
2の読み出しデコード回路に表5の場合と同様の簡単な
デコード方式を採用できる。
【0051】本実施例のように修正ウインドウ番号を採
用する場合には、出力選択回路19aにおいて修正ウイ
ンドウ番号信号の最下位ビットXN0 とレジスタアドレ
ス信号の最上位ビットRN3 との排他的論理和に応じて
出力データを選択することとしてもよい。ただし、該排
他的論理和が1の時には第2の読み出しビット線RBL
2上のデータを、0の時には第1の読み出しビット線R
BL1上のデータを各々出力データとして選択する。
【0052】(実施例4)図9は、本発明の第4の実施
例に係るレジスタファイルで採用されたレジスタウイン
ドウの構成を示す概念図である。この例では、レジスタ
ファイルを構成する72本のレジスタのうちの8本のレ
ジスタR0〜R7は、いずれのウインドウにも属さない
グローバルレジスタ(不図示)である。残り64本のレ
ジスタは、各々24本のレジスタR8〜R31からなる
4枚のウインドウW0〜W3に分割される。各ウインド
ウは、R8〜R15の8本のレジスタを番号の1つ小さ
い隣接ウインドウと共有し、R24〜R31の8本のレ
ジスタを番号の1つ大きい隣接ウインドウと共有してい
る。R16〜R23の残り8本のレジスタは、各ウイン
ドウに固有のもの(非オーバーラップ部分)となってい
る。つまり、二重アドレスレジスタは、各ウインドウ中
のR8〜R15及びR24〜R31の16本のレジスタ
のみである。
【0053】図10は、本発明の第4の実施例に係るレ
ジスタファイルのうちの読み出しのための回路部分の構
成を示すブロック図である。図10において、いずれか
のウインドウに属する64本のレジスタは、ウインドウ
番号の最下位ビットとレジスタアドレスの最上位ビット
とに応じて第1及び第2のメモリセルアレイ115,1
16に分割されている。すなわち、第1のメモリセルア
レイ115は偶数ウインドウの後半レジスタR16〜R
31を、第2のメモリセルアレイ116は奇数ウインド
ウの後半レジスタR16〜R31を各々備えている。た
だし、偶数ウインドウの後半レジスタR16〜R31の
うちの半分は奇数ウインドウの8本の前半レジスタR8
〜R15と、奇数ウインドウの後半レジスタR16〜R
31のうちの半分は偶数ウインドウの8本の前半レジス
タR8〜R15とそれぞれオーバーラップしている。第
1のメモリセルアレイ115中の32本のレジスタ51
5(W0_R24,W1_R8等)は、各々1本の第1
の読み出しワード線RWLAを備え、かつ32本の第1
の読み出しビット線RBLAを互いに共有している。第
2のメモリセルアレイ116中の32本のレジスタ51
6(W3_R24,W0_R8等)は、各々1本の第2
の読み出しワード線RWLBを備え、かつ前記第1の読
み出しビット線RBLAとは別の32本の第2の読み出
しビット線RBLBを互いに共有している。
【0054】111は入力された命令信号からレジスタ
アドレス(8〜31)を取り出して5ビットのレジスタ
アドレス信号RN4 〜RN0 を生成するためのレジスタ
アドレス信号生成回路、112はカレントウインドウの
番号(0〜3)を示す2ビットのウインドウ番号信号W
N1 〜WN0 と該カレントウインドウの番号に1を加算
して得られる2ビットの修正ウインドウ番号信号XN1
〜XN0 とを出力するためのウインドウ制御回路であ
る。113は、最下位ビットを除くウインドウ番号信号
WN1 と最上位ビットを除くレジスタアドレス信号RN
3 〜RN0 との合計5ビットを入力とし、32本の第1
の読み出しワード線RWLAのうちの1本をアサートす
るための第1の読み出しデコード回路である。114
は、最下位ビットを除く修正ウインドウ番号信号XN1
と最上位ビットを除くレジスタアドレス信号RN3 〜R
N0 との合計5ビットを入力とし、32本の第2の読み
出しワード線RWLBのうちの1本をアサートするため
の第2の読み出しデコード回路である。
【0055】表6及び表7は、第1及び第2の読み出し
デコード回路113,114の各々のデコード方式を示
すものである。
【0056】
【表6】
【0057】
【表7】
【0058】図10中の117及び118は、各々第1
及び第2の読み出しビット線RBLA,RBLBをプリ
チャージするための第1及び第2のプリチャージ回路で
ある。119は、ウインドウ番号信号の最下位ビットW
N0 とレジスタアドレス信号の最上位ビットRN4 との
排他的論理和が1の時には第1の読み出しビット線RB
LA上のデータを、該排他的論理和が0の時には第2の
読み出しビット線RBLB上のデータを各々出力データ
として選択するための出力選択回路である。
【0059】例えば、W2_R10(W1_R26)の
保持データの読み出しは、次のようにして実行される。
すなわち、カレントウインドウの番号が2(修正ウイン
ドウ番号は3)の時に命令信号によりレジスタアドレス
10のレジスタの読み出しが指定されると、第2のメモ
リセルアレイ116においてW2_R10(W1_R2
6)から第2の読み出しビット線RBLBへのデータの
読み出しが実行されるだけでなく、第1のメモリセルア
レイ115においてW3_R10(W2_R26)から
第1の読み出しビット線RBLAへのデータの読み出し
が行なわれる。ところが、ウインドウ番号信号の最下位
ビットWN0 とレジスタアドレス信号の最上位ビットR
N4 との排他的論理和は0であるので、出力選択回路1
19で第2の読み出しビット線RBLBが選択され、W
2_R10(W1_R26)からの読み出しデータが出
力データとして選択される。
【0060】また、カレントウインドウの番号が2(修
正ウインドウ番号は3)の時に命令信号により非オーバ
ーラップ部分に位置するレジスタアドレス18のレジス
タの読み出しが指定されると、第1のメモリセルアレイ
115においてW2_R18の読み出しが実行されるだ
けでなく、第2のメモリセルアレイ116においてW1
_R18の読み出しが行なわれる。ところが、ウインド
ウ番号信号の最下位ビットWN0 とレジスタアドレス信
号の最上位ビットRN4 との排他的論理和は1であるの
で、出力選択回路119によりW2_R18からの読み
出しデータが出力データとして選択される。
【0061】以上のとおり、本実施例によれば、非オー
バーラップ部分を持つウインドウ構成のレジスタファイ
ルについて、レジスタの高速読み出しと回路規模の縮小
とを実現できる。なお、カレントウインドウの番号から
1を減算した値の下位2ビットを修正ウインドウ番号信
号XN1 〜XN0 としてもよい点は、第3の実施例の場
合と同様である。出力選択回路119において修正ウイ
ンドウ番号信号の最下位ビットXN0 とレジスタアドレ
ス信号の最上位ビットRN4 との排他的論理和に応じて
出力データを選択することとしてもよい。ただし、該排
他的論理和が1の時には第2の読み出しビット線RBL
B上のデータを、0の時には第1の読み出しビット線R
BLA上のデータを各々出力データとして選択する。
【0062】本実施例は、グローバルレジスタを持たな
いレジスタファイルにも適用可能である。この場合、レ
ジスタアドレスは次のように8ずつシフトする。すなわ
ち、全64本のレジスタは、各々24本のレジスタR0
〜R23からなる4枚のウインドウW0〜W3に分割さ
れる。各ウインドウは、R0〜R7の8本のレジスタを
番号の1つ小さい隣接ウインドウと共有し、R16〜R
23の8本のレジスタを番号の1つ大きい隣接ウインド
ウと共有する。各ウインドウに固有のレジスタはR8〜
R15である。この場合でも、表6及び表7と同様のデ
コード方式によりレジスタの高速読み出しを達成でき
る。
【0063】(実施例5)図11は、本発明の第5の実
施例に係るレジスタファイルで採用されたレジスタウイ
ンドウの構成を示す概念図である。この例では、レジス
タファイルを構成する104本のレジスタのうちの8本
のレジスタR0〜R7は、いずれのウインドウにも属さ
ないグローバルレジスタ(不図示)である。残り96本
のレジスタは、各々24本のレジスタR8〜R31から
なる6枚のウインドウW0〜W5に分割される。各ウイ
ンドウは、R8〜R15の8本のレジスタを番号の1つ
小さい隣接ウインドウと共有し、R24〜R31の8本
のレジスタを番号の1つ大きい隣接ウインドウと共有し
ている。R16〜R23の残り8本のレジスタは、各ウ
インドウに固有のもの(非オーバーラップ部分)となっ
ている。
【0064】図12は、本発明の第5の実施例に係るレ
ジスタファイルのうちの読み出しのための回路部分の構
成を示すブロック図である。図12において、いずれか
のウインドウに属する96本のレジスタは、ウインドウ
番号の最下位ビットとレジスタアドレスの最上位ビット
とに応じて第1及び第2のメモリセルアレイ215,2
16に分割されている。すなわち、第1のメモリセルア
レイ215は偶数ウインドウの後半レジスタR16〜R
31を、第2のメモリセルアレイ216は奇数ウインド
ウの後半レジスタR16〜R31を各々備えている。た
だし、偶数ウインドウの後半レジスタR16〜R31の
うちの半分は奇数ウインドウの8本の前半レジスタR8
〜R15と、奇数ウインドウの後半レジスタR16〜R
31のうちの半分は偶数ウインドウの8本の前半レジス
タR8〜R15とそれぞれオーバーラップしている。第
1のメモリセルアレイ215中の48本のレジスタ61
5(W0_R24,W1_R8等)は、各々1本の第1
の読み出しワード線RWLCを備え、かつ32本の第1
の読み出しビット線RBLCを互いに共有している。第
2のメモリセルアレイ216中の48本のレジスタ61
6(W5_R24,W0_R8等)は、各々1本の第2
の読み出しワード線RWLDを備え、かつ前記第1の読
み出しビット線RBLCとは別の32本の第2の読み出
しビット線RBLDを互いに共有している。
【0065】211は入力された命令信号からレジスタ
アドレス(8〜31)を取り出して5ビットのレジスタ
アドレス信号RN4 〜RN0 を生成するためのレジスタ
アドレス信号生成回路、212はカレントウインドウの
番号(0〜5)を示す3ビットのウインドウ番号信号W
N2 〜WN0 と該カレントウインドウの番号に1を加算
して得られる修正ウインドウ番号信号XN2 〜XN0 と
を出力するためのウインドウ制御回路である。ただし、
カレントウインドウの番号が5である場合には、修正ウ
インドウ番号を6ではなく0とする。213は、最下位
ビットを除くウインドウ番号信号WN2 〜WN1 と最上
位ビットを除くレジスタアドレス信号RN3 〜RN0 と
の合計6ビットを入力とし、48本の第1の読み出しワ
ード線RWLCのうちの1本をアサートするための第1
の読み出しデコード回路である。214は、最下位ビッ
トを除く修正ウインドウ番号信号XN2 〜XN1 と最上
位ビットを除くレジスタアドレス信号RN3 〜RN0 と
の合計6ビットを入力とし、48本の第2の読み出しワ
ード線RWLDのうちの1本をアサートするための第2
の読み出しデコード回路である。
【0066】表8及び表9は、第1及び第2の読み出し
デコード回路213,214の各々のデコード方式を示
すものである。
【0067】
【表8】
【0068】
【表9】
【0069】図12中の217及び218は、各々第1
及び第2の読み出しビット線RBLC,RBLDをプリ
チャージするための第1及び第2のプリチャージ回路で
ある。219は、ウインドウ番号信号の最下位ビットW
N0 とレジスタアドレス信号の最上位ビットRN4 との
排他的論理和が1の時には第1の読み出しビット線RB
LC上のデータを、該排他的論理和が0の時には第2の
読み出しビット線RBLD上のデータを各々出力データ
として選択するための出力選択回路である。
【0070】例えば、W5_R25(W0_R9)の保
持データの読み出しは、次のようにして実行される。す
なわち、カレントウインドウの番号が5(修正ウインド
ウ番号は0)の時に命令信号によりレジスタアドレス2
5のレジスタの読み出しが指定されると、第2のメモリ
セルアレイ216においてW5_R25(W0_R9)
から第2の読み出しビット線RBLDへのデータの読み
出しが実行されるだけでなく、第1のメモリセルアレイ
215においてW5_R9(W4_R25)から第1の
読み出しビット線RBLCへのデータの読み出しが行な
われる。ところが、ウインドウ番号信号の最下位ビット
WN0 とレジスタアドレス信号の最上位ビットRN4 と
の排他的論理和は0であるので、出力選択回路219で
第2の読み出しビット線RBLDが選択され、W5_R
25(W0_R9)からの読み出しデータが出力データ
として選択される。
【0071】以上のとおり、本実施例によれば、ウイン
ドウ数が2の累乗以外である場合にも、回路規模が小さ
くかつ高速読み出しが可能なオーバーラップ・ウインド
ウ構成のレジスタファイルを実現できる。カレントウイ
ンドウの番号から1を減算した値の下位3ビットを修正
ウインドウ番号信号XN2 〜XN0 としてもよい点は、
第3及び第4の実施例の場合と同様である。ただし、カ
レントウインドウの番号が0である場合には、修正ウイ
ンドウ番号を例外的に5とする。出力選択回路219に
おいて修正ウインドウ番号信号の最下位ビットXN0 と
レジスタアドレス信号の最上位ビットRN4 との排他的
論理和に応じて出力データを選択することも可能であ
る。ただし、該排他的論理和が1の時には第2の読み出
しビット線RBLD上のデータを、0の時には第1の読
み出しビット線RBLC上のデータを各々出力データと
して選択することとする。
【0072】なお、第3の実施例のように非オーバーラ
ップ部分を持たないウインドウ構成のレジスタファイル
の場合でも、修正ウインドウ番号に第5の実施例の場合
と同様の例外処理を施すこととすれば、2の累乗以外の
ウインドウ数に対応可能となる。
【0073】また、第2〜第5の実施例において、メモ
リセル群をレジスタアドレスの奇偶に応じて更に分割し
た構成を採用することも可能である。例えば、第2の実
施例において、第1のメモリセルアレイには偶数ウイン
ドウのR8,R10,R12,R14(奇数ウインドウ
のR0,R2,R4,R6)を、第2のメモリセルアレ
イには偶数ウインドウのR9,R11,R13,R15
(奇数ウインドウのR1,R3,R5,R7)を、第3
のメモリセルアレイには偶数ウインドウのR0,R2,
R4,R6(奇数ウインドウのR8,R10,R12,
R14)を、第4のメモリセルアレイには偶数ウインド
ウのR1,R3,R5,R7(奇数ウインドウのR9,
R11,R13,R15)を各々割り当てる。この場
合、出力選択回路は、ウインドウ番号信号の最下位ビッ
トWN0 、レジスタアドレス信号の最上位ビットRN3
及びレジスタアドレス信号の最下位ビットRN0 に応じ
て4データの中から出力データを選択する。これにより
メモリセルアレイの各々の読み出しビット線が更に短く
なり該ビット線にかかる負荷容量が低減されるので、レ
ジスタの読み出しが一層高速化される。
【0074】
【発明の効果】以上説明してきたとおり、請求項1の発
明によれば、二重アドレスレジスタのためのメモリセル
群を第1及び第2のメモリセルアレイに分割し、ウイン
ドウ番号信号及びレジスタアドレス信号を2つのデコー
ド回路により各々直接にデコードして第1及び第2のメ
モリセルアレイから各々1つのデータを読み出し、該読
み出した両データのうちのいずれかを出力選択回路によ
り選択する構成を採用したので、ウインドウ番号信号及
びレジスタアドレス信号に基づく演算処理を実行するた
めのアドレス変換回路の介在なしにレジスタの読み出し
を実行できる結果、該読み出しが高速化される。しか
も、メモリセル群の分割によって各々の読み出しビット
線が短くなり該ビット線にかかる負荷容量が低減される
ので、レジスタの読み出しが更に高速化される。
【0075】請求項2の発明によれば、二重アドレスレ
ジスタのためのメモリセル群をレジスタアドレスの奇偶
に応じて第1及び第2のメモリセルアレイに分割し、か
つアドレスの二重性に対応して各レジスタに2本の読み
出しワード線を設けた構成を採用したので、第1及び第
2の読み出しデコード回路の入力信号のビット数が低減
する結果、デコードの高速化ひいてはレジスタの読み出
しの高速化を実現できる。
【0076】請求項3の発明によれば、各ウインドウ中
の一方の隣接ウインドウ側の二重アドレスレジスタと他
方の隣接ウインドウ側の二重アドレスレジスタとを分け
るように二重アドレスレジスタのためのメモリセル群を
第1及び第2のメモリセルアレイに分割し、かつ各レジ
スタに1本のみの読み出しワード線を設けた構成を採用
したので、第1及び第2の読み出しデコード回路は、請
求項2の発明の場合に比べてその回路規模が縮小され
る。また、両メモリセルアレイ中の読み出しのための回
路の規模も縮小される。したがって、レジスタファイル
全体の回路規模が小さく抑えられることとなる。更に、
第1及び第2の読み出しデコード回路の入力信号のビッ
ト数が低減する結果、デコードの高速化ひいてはレジス
タの読み出しの高速化を実現できる。
【0077】請求項4の発明によれば、ウインドウ番号
で指定されるウインドウの隣接ウインドウを特定するた
めの修正ウインドウ番号を採用したので、修正ウインド
ウ番号を用いる第2の読み出しデコード回路の構成が、
ウインドウ番号を用いる第1の読み出しデコード回路と
同程度に簡略化される。この結果、デコードの高速化ひ
いてはレジスタの読み出しの高速化を実現できる。
【0078】請求項5又は6の発明によれば、ウインド
ウ数Lが2の累乗以外である場合(L<2M )、ウイン
ドウ番号に1を加算した修正ウインドウ番号を採用する
ときには最大ウインドウ番号(L−1)に対して例外的
に0を修正ウインドウ番号として採用し、ウインドウ番
号から1を減算した修正ウインドウ番号を採用するとき
には最小ウインドウ番号0に対して例外的に(L−1)
を修正ウインドウ番号として採用することとしたので、
適用可能なレジスタファイルの範囲を拡大できる。すな
わち、ウインドウ数Lが2の累乗以外である場合にも、
回路規模が小さくかつ高速読み出しが可能なオーバーラ
ップ・ウインドウ構成のレジスタファイルを実現でき
る。
【図面の簡単な説明】
【図1】本発明の第1〜第3の実施例に係るレジスタフ
ァイルで採用されたレジスタウインドウの構成を示す概
念図である。
【図2】本発明の第1の実施例に係るレジスタファイル
のうちの読み出しのための回路部分の構成を示すブロッ
ク図である。
【図3】本発明の第1の実施例に係るレジスタファイル
のうちの書き込みのための回路部分の構成を示すブロッ
ク図である。
【図4】図2及び図3中の1本のレジスタの内部構成を
示す回路図である。
【図5】本発明の第2の実施例に係るレジスタファイル
のうちの読み出しのための回路部分の構成を示すブロッ
ク図である。
【図6】本発明の第2の実施例に係るレジスタファイル
のうちの書き込みのための回路部分の構成を示すブロッ
ク図である。
【図7】図5及び図6中の1本のレジスタの内部構成を
示す回路図である。
【図8】本発明の第3の実施例に係るレジスタファイル
のうちの読み出しのための回路部分の構成を示すブロッ
ク図である。
【図9】本発明の第4の実施例に係るレジスタファイル
で採用されたレジスタウインドウの構成を示す概念図で
ある。
【図10】本発明の第4の実施例に係るレジスタファイ
ルのうちの読み出しのための回路部分の構成を示すブロ
ック図である。
【図11】本発明の第5の実施例に係るレジスタファイ
ルで採用されたレジスタウインドウの構成を示す概念図
である。
【図12】本発明の第5の実施例に係るレジスタファイ
ルのうちの読み出しのための回路部分の構成を示すブロ
ック図である。
【符号の説明】
11,111,211 レジスタアドレス信号生成回路 12,112,212 ウインドウ制御回路 13,13a,113,213 第1の読み出しデコー
ド回路 14,14a,14b,114,214 第2の読み出
しデコード回路 15,15a,115,215 第1のメモリセルアレ
イ 16,16a,116,216 第2のメモリセルアレ
イ 19,19a,119,219 出力選択回路 31 メモリセル 32,32a 読み出し回路 33 書き込み回路 151,151a,515,615 レジスタ 161,161a,516,616 レジスタ RBL1,RBLA,RBLC 第1の読み出しビット
線 RBL2,RBLB,RBLD 第2の読み出しビット
線 RN3 〜RN0 ,RN4 〜RN0 レジスタアドレス信
号 RWL1,RWL1a,RWLA,RWLC 第1の読
み出しワード線 RWL2,RWL2a,RWL2b,RWLB,RWL
D 第2の読み出しワード線 WN2 〜WN0 ,WN1 〜WN0 ウインドウ番号信号 XN2 〜XN0 ,XN1 〜XN0 修正ウインドウ番号
信号

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数の構成レジスタの全部又は一部が各
    々K本のレジスタを備えたL枚のウインドウに分割さ
    れ、各ウインドウは各々一部のレジスタを二重アドレス
    レジスタとして両隣のウインドウと共有し、各ウインド
    ウ中の個々のレジスタは前記L枚のウインドウのうちの
    1枚を選択するためのウインドウ番号と該ウインドウ内
    の相対位置を示すレジスタアドレスとを以て指定される
    レジスタファイルであって、 前記二重アドレスレジスタのうちの半数のためのメモリ
    セル群を第1のワード群として備え、かつ該第1のワー
    ド群の各々は第1の読み出しビット線を互いに共有した
    構成を備えた第1のメモリセルアレイと、 前記二重アドレスレジスタのうちの残りの半数のための
    メモリセル群を第2のワード群として備え、かつ該第2
    のワード群の各々は前記第1の読み出しビット線とは異
    なる第2の読み出しビット線を互いに共有した構成を備
    えた第2のメモリセルアレイと、 ウインドウ番号を特定するようにMビットのウインドウ
    番号信号を出力するためのウインドウ制御回路と、 レジスタアドレスを特定するようにNビットのレジスタ
    アドレス信号を生成するためのレジスタアドレス信号生
    成回路と、 前記ウインドウ制御回路からのウインドウ番号信号と前
    記レジスタアドレス信号生成回路からのレジスタアドレ
    ス信号とに基づき各々前記第1のワード群のうちの1つ
    と前記第2のワード群のうちの1つとを選択するための
    第1及び第2の読み出しデコード回路と、 前記第1のワード群のうちの選択されたワードから前記
    第1の読み出しビット線上に読み出されたデータと前記
    第2のワード群のうちの選択されたワードから前記第2
    の読み出しビット線上に読み出されたデータとのうちの
    いずれかを出力データとして選択するための出力選択回
    路とを備えたことを特徴とするレジスタファイル。
  2. 【請求項2】 請求項1記載のレジスタファイルにおい
    て、 前記第1のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが0のレジスタアドレス信号を
    以て指定されるべきレジスタのためのメモリセル群を前
    記第1のワード群として備え、かつ該第1のワード群の
    各々は2本の第1の読み出しワード線をそれぞれ備え、 前記第2のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが1のレジスタアドレス信号を
    以て指定されるべきレジスタのための他のメモリセル群
    を前記第2のワード群として備え、かつ該第2のワード
    群の各々は2本の第2の読み出しワード線をそれぞれ備
    え、 前記第1及び第2の読み出しデコード回路は、ウインド
    ウ番号信号の全ビットとレジスタアドレス信号の最下位
    ビットを除く全ビットとに基づき各々前記第1の読み出
    しワード線のうちの1本と前記第2の読み出しワード線
    のうちの1本とをアサートする機能を備え、かつ前記出
    力選択回路は、レジスタアドレス信号の最下位ビットが
    0である場合には前記第1の読み出しビット線上のデー
    タを、レジスタアドレス信号の最下位ビットが1である
    場合には前記第2の読み出しビット線上のデータを各々
    出力データとして選択する機能を備えたことを特徴とす
    るレジスタファイル。
  3. 【請求項3】 請求項1記載のレジスタファイルにおい
    て、 前記第1のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが0のウインドウ番号信号と最
    上位ビットが1のレジスタアドレス信号とを以てかつ最
    下位ビットが1のウインドウ番号信号と最上位ビットが
    0のレジスタアドレス信号とを以て指定されるべきレジ
    スタのためのメモリセル群を前記第1のワード群として
    備え、かつ該第1のワード群の各々は1本のみの第1の
    読み出しワード線をそれぞれ備え、 前記第2のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが0のウインドウ番号信号と最
    上位ビットが0のレジスタアドレス信号とを以てかつ最
    下位ビットが1のウインドウ番号信号と最上位ビットが
    1のレジスタアドレス信号とを以て指定されるべきレジ
    スタのための他のメモリセル群を前記第2のワード群と
    して備え、かつ該第2のワード群の各々は1本のみの第
    2の読み出しワード線をそれぞれ備え、 前記第1及び第2の読み出しデコード回路は、ウインド
    ウ番号信号の全ビットとレジスタアドレス信号の最上位
    ビットを除く全ビットとに基づき各々前記第1の読み出
    しワード線のうちの1本と前記第2の読み出しワード線
    のうちの1本とをアサートする機能を備え、かつ前記出
    力選択回路は、ウインドウ番号信号の最下位ビットとレ
    ジスタアドレス信号の最上位ビットとが一致しない場合
    には前記第1の読み出しビット線上のデータを、ウイン
    ドウ番号信号の最下位ビットとレジスタアドレス信号の
    最上位ビットとが一致する場合には前記第2の読み出し
    ビット線上のデータを各々出力データとして選択する機
    能を備えたことを特徴とするレジスタファイル。
  4. 【請求項4】 請求項1記載のレジスタファイルにおい
    て、 前記第1のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが0のウインドウ番号信号と最
    上位ビットが1のレジスタアドレス信号とを以てかつ最
    下位ビットが1のウインドウ番号信号と最上位ビットが
    0のレジスタアドレス信号とを以て指定されるべきレジ
    スタのためのメモリセル群を前記第1のワード群として
    備え、かつ該第1のワード群の各々は1本のみの第1の
    読み出しワード線をそれぞれ備え、 前記第2のメモリセルアレイは、前記二重アドレスレジ
    スタのうち最下位ビットが0のウインドウ番号信号と最
    上位ビットが0のレジスタアドレス信号とを以てかつ最
    下位ビットが1のウインドウ番号信号と最上位ビットが
    1のレジスタアドレス信号とを以て指定されるべきレジ
    スタのための他のメモリセル群を前記第2のワード群と
    して備え、かつ該第2のワード群の各々は1本のみの第
    2の読み出しワード線をそれぞれ備え、 前記ウインドウ制御回路は、前記ウインドウ番号で指定
    されるウインドウの隣接ウインドウを指し示す修正ウイ
    ンドウ番号を特定するようにMビットの修正ウインドウ
    番号信号を出力する機能を更に備え、 前記第1の読み出しデコード回路は、ウインドウ番号信
    号の最下位ビットを除く全ビットとレジスタアドレス信
    号の最上位ビットを除く全ビットとに基づき前記第1の
    読み出しワード線のうちの1本をアサートする機能を備
    え、 前記第2の読み出しデコード回路は、修正ウインドウ番
    号信号の最下位ビットを除く全ビットとレジスタアドレ
    ス信号の最上位ビットを除く全ビットとに基づき前記第
    2の読み出しワード線のうちの1本をアサートする機能
    を備え、かつ前記出力選択回路は、ウインドウ番号信号
    の最下位ビットとレジスタアドレス信号の最上位ビット
    とが一致しない場合又は修正ウインドウ番号信号の最下
    位ビットとレジスタアドレス信号の最上位ビットとが一
    致する場合には前記第1の読み出しビット線上のデータ
    を、ウインドウ番号信号の最下位ビットとレジスタアド
    レス信号の最上位ビットとが一致する場合又は修正ウイ
    ンドウ番号信号の最下位ビットとレジスタアドレス信号
    の最上位ビットとが一致しない場合には前記第2の読み
    出しビット線上のデータを各々出力データとして選択す
    る機能を備えたことを特徴とするレジスタファイル。
  5. 【請求項5】 請求項4記載のレジスタファイルにおい
    て、 前記ウインドウ数Lが前記ウインドウ番号信号及び修正
    ウインドウ番号信号のビット数Mとの間でL≦2M の関
    係を満たすとき、 前記ウインドウ制御回路は、ウインドウ番号が0から
    (L−2)までのうちのいずれかの値である場合には該
    ウインドウ番号に1を加算して得られる値を、ウインド
    ウ番号が(L−1)である場合には0を各々修正ウイン
    ドウ番号として採用することを特徴とするレジスタファ
    イル。
  6. 【請求項6】 請求項4記載のレジスタファイルにおい
    て、 前記ウインドウ数Lが前記ウインドウ番号信号及び修正
    ウインドウ番号信号のビット数Mとの間でL≦2M の関
    係を満たすとき、 前記ウインドウ制御回路は、ウインドウ番号が1から
    (L−1)までのうちのいずれかの値である場合には該
    ウインドウ番号から1を減算して得られる値を、ウイン
    ドウ番号が0である場合には(L−1)を各々修正ウイ
    ンドウ番号として採用することを特徴とするレジスタフ
    ァイル。
JP5014669A 1992-02-03 1993-02-01 レジスタファイル Expired - Fee Related JP2823767B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP4-17353 1992-02-03
JP1735392 1992-02-03

Publications (2)

Publication Number Publication Date
JPH05282147A JPH05282147A (ja) 1993-10-29
JP2823767B2 true JP2823767B2 (ja) 1998-11-11

Family

ID=11941686

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5014669A Expired - Fee Related JP2823767B2 (ja) 1992-02-03 1993-02-01 レジスタファイル

Country Status (2)

Country Link
US (1) US5392411A (ja)
JP (1) JP2823767B2 (ja)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5463748A (en) 1993-06-30 1995-10-31 Intel Corporation Instruction buffer for aligning instruction sets using boundary detection
JP3676411B2 (ja) * 1994-01-21 2005-07-27 サン・マイクロシステムズ・インコーポレイテッド レジスタファイル装置及びレジスタファイルアクセス方法
US5644780A (en) 1995-06-02 1997-07-01 International Business Machines Corporation Multiple port high speed register file with interleaved write ports for use with very long instruction word (vlin) and n-way superscaler processors
JPH1011352A (ja) * 1996-06-19 1998-01-16 Hitachi Ltd データ処理装置およびそのレジスタアドレス変換方法
US5778243A (en) * 1996-07-03 1998-07-07 International Business Machines Corporation Multi-threaded cell for a memory
US5838984A (en) * 1996-08-19 1998-11-17 Samsung Electronics Co., Ltd. Single-instruction-multiple-data processing using multiple banks of vector registers
US5870597A (en) * 1997-06-25 1999-02-09 Sun Microsystems, Inc. Method for speculative calculation of physical register addresses in an out of order processor
FR2767412B1 (fr) * 1997-08-14 2000-06-16 Dolphin Integration Sa Cellule memoire a lecture en courant
US6105123A (en) * 1998-03-10 2000-08-15 Hewlett-Packard Company High speed register file organization for a pipelined computer architecture
US6351808B1 (en) * 1999-05-11 2002-02-26 Sun Microsystems, Inc. Vertically and horizontally threaded processor with multidimensional storage for storing thread data
US6507862B1 (en) * 1999-05-11 2003-01-14 Sun Microsystems, Inc. Switching method in a multi-threaded processor
US6668317B1 (en) * 1999-08-31 2003-12-23 Intel Corporation Microengine for parallel processor architecture
US6983350B1 (en) 1999-08-31 2006-01-03 Intel Corporation SDRAM controller for parallel processor architecture
US6427196B1 (en) * 1999-08-31 2002-07-30 Intel Corporation SRAM controller for parallel processor architecture including address and command queue and arbiter
US6606704B1 (en) * 1999-08-31 2003-08-12 Intel Corporation Parallel multithreaded processor with plural microengines executing multiple threads each microengine having loadable microcode
AU7097900A (en) 1999-09-01 2001-03-26 Intel Corporation Branch instructions in a multithreaded parallel processing system
US7191309B1 (en) 1999-09-01 2007-03-13 Intel Corporation Double shift instruction for micro engine used in multithreaded parallel processor architecture
US7546444B1 (en) 1999-09-01 2009-06-09 Intel Corporation Register set used in multithreaded parallel processor architecture
US6282139B1 (en) * 1999-11-22 2001-08-28 Intel Corporation Register file with improved noise immunity and aspect ratio
US6532509B1 (en) 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6694380B1 (en) 1999-12-27 2004-02-17 Intel Corporation Mapping requests from a processing unit that uses memory-mapped input-output space
US6625654B1 (en) * 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US7620702B1 (en) 1999-12-28 2009-11-17 Intel Corporation Providing real-time control data for a network processor
US6307789B1 (en) * 1999-12-28 2001-10-23 Intel Corporation Scratchpad memory
US6631430B1 (en) * 1999-12-28 2003-10-07 Intel Corporation Optimizations to receive packet status from fifo bus
US6661794B1 (en) * 1999-12-29 2003-12-09 Intel Corporation Method and apparatus for gigabit packet assignment for multithreaded packet processing
US6952824B1 (en) 1999-12-30 2005-10-04 Intel Corporation Multi-threaded sequenced receive for fast network port stream of packets
US6976095B1 (en) 1999-12-30 2005-12-13 Intel Corporation Port blocking technique for maintaining receive packet ordering for a multiple ethernet port switch
US6584522B1 (en) * 1999-12-30 2003-06-24 Intel Corporation Communication between processors
US7480706B1 (en) 1999-12-30 2009-01-20 Intel Corporation Multi-threaded round-robin receive for fast network port
US6631462B1 (en) * 2000-01-05 2003-10-07 Intel Corporation Memory shared between processing threads
US7681018B2 (en) * 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
US7020871B2 (en) * 2000-12-21 2006-03-28 Intel Corporation Breakpoint method for parallel hardware threads in multithreaded processor
US6868476B2 (en) * 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7216204B2 (en) * 2001-08-27 2007-05-08 Intel Corporation Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment
US7225281B2 (en) 2001-08-27 2007-05-29 Intel Corporation Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms
US7487505B2 (en) 2001-08-27 2009-02-03 Intel Corporation Multithreaded microprocessor with register allocation based on number of active threads
US7126952B2 (en) * 2001-09-28 2006-10-24 Intel Corporation Multiprotocol decapsulation/encapsulation control structure and packet protocol conversion method
US7158964B2 (en) * 2001-12-12 2007-01-02 Intel Corporation Queue management
US7107413B2 (en) * 2001-12-17 2006-09-12 Intel Corporation Write queue descriptor count instruction for high speed queuing
US7269179B2 (en) * 2001-12-18 2007-09-11 Intel Corporation Control mechanisms for enqueue and dequeue operations in a pipelined network processor
JP3737755B2 (ja) 2001-12-28 2006-01-25 富士通株式会社 レジスタウィンドウ方式によるレジスタファイル及びその制御方法
US7895239B2 (en) * 2002-01-04 2011-02-22 Intel Corporation Queue arrays in network devices
US7181573B2 (en) * 2002-01-07 2007-02-20 Intel Corporation Queue array caching in network devices
US6934951B2 (en) 2002-01-17 2005-08-23 Intel Corporation Parallel processor with functional pipeline providing programming engines by supporting multiple contexts and critical section
US7181594B2 (en) * 2002-01-25 2007-02-20 Intel Corporation Context pipelines
US7610451B2 (en) 2002-01-25 2009-10-27 Intel Corporation Data transfer mechanism using unidirectional pull bus and push bus
US7149226B2 (en) * 2002-02-01 2006-12-12 Intel Corporation Processing data packets
US7437724B2 (en) * 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
US7471688B2 (en) * 2002-06-18 2008-12-30 Intel Corporation Scheduling system for transmission of cells to ATM virtual circuits and DSL ports
US7337275B2 (en) 2002-08-13 2008-02-26 Intel Corporation Free list and ring data structure management
US7352769B2 (en) 2002-09-12 2008-04-01 Intel Corporation Multiple calendar schedule reservation structure and method
US7433307B2 (en) * 2002-11-05 2008-10-07 Intel Corporation Flow control in a network environment
US6941438B2 (en) * 2003-01-10 2005-09-06 Intel Corporation Memory interleaving
US7443836B2 (en) 2003-06-16 2008-10-28 Intel Corporation Processing a data packet
US7213099B2 (en) * 2003-12-30 2007-05-01 Intel Corporation Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches
KR101244074B1 (ko) * 2008-08-08 2013-03-18 후지쯔 가부시끼가이샤 연산 처리 장치
US11334447B2 (en) * 2020-08-27 2022-05-17 Nuvoton Technology Corporation Integrated circuit facilitating subsequent failure analysis and methods useful in conjunction therewith
US11862289B2 (en) 2021-06-11 2024-01-02 International Business Machines Corporation Sum address memory decoded dual-read select register file

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5050067A (en) * 1987-08-20 1991-09-17 Davin Computer Corporation Multiple sliding register stacks in a computer
JPH01256093A (ja) * 1988-04-05 1989-10-12 Matsushita Electric Ind Co Ltd レジスタファイル
US5208783A (en) * 1988-04-05 1993-05-04 Matsushita Electric Industrial Co., Ltd. Memory unit delay-compensating circuit
US5083263A (en) * 1988-07-28 1992-01-21 Sun Microsystems, Inc. BISC with interconnected register ring and selectively operating portion of the ring as a conventional computer
US5159680A (en) * 1988-07-28 1992-10-27 Sun Microsystems, Inc. Risc processing unit which selectively isolates register windows by indicating usage of adjacent register windows in status register
JPH02187825A (ja) * 1989-01-13 1990-07-24 Mitsubishi Electric Corp コンピュータ
JP2655191B2 (ja) * 1989-07-05 1997-09-17 三菱電機株式会社 演算処理装置
US5179681A (en) * 1989-11-16 1993-01-12 Sun Microsystems, Inc. Method and apparatus for current window cache with switchable address and out cache registers
JP2747944B2 (ja) * 1989-11-21 1998-05-06 松下電器産業株式会社 半導体記憶装置
US5179682A (en) * 1990-05-15 1993-01-12 Sun Microsystems, Inc. Method and apparatus for improved current window cache with switchable address in, out, and local cache registers
US5226142A (en) * 1990-11-21 1993-07-06 Ross Technology, Inc. High performance register file with overlapping windows

Also Published As

Publication number Publication date
US5392411A (en) 1995-02-21
JPH05282147A (ja) 1993-10-29

Similar Documents

Publication Publication Date Title
JP2823767B2 (ja) レジスタファイル
US6243281B1 (en) Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system
JP3676411B2 (ja) レジスタファイル装置及びレジスタファイルアクセス方法
US5752260A (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US8482979B2 (en) Data path for multi-level cell memory, methods for storing and methods for utilizing a memory array
US6256253B1 (en) Memory device with support for unaligned access
US6751701B1 (en) Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
US6718433B1 (en) Match and priority encoding logic circuit
US6799243B1 (en) Method and apparatus for detecting a match in an intra-row configurable cam system
EP0276110B1 (en) Semiconductor memory device
US6813680B1 (en) Method and apparatus for loading comparand data into a content addressable memory system
US6801981B1 (en) Intra-row configurability of content addressable memory
US6407961B1 (en) Dual access memory array
JP6170718B2 (ja) 検索システム
JPH0612608B2 (ja) 半導体記憶装置
JP3174160B2 (ja) アドレス変換バッファ
US20010003200A1 (en) Semiconductor storage device
JP3561602B2 (ja) 半導体記憶装置
JP2882714B2 (ja) 状態選択装置
JP2783954B2 (ja) 連想メモリ装置
JP3577396B2 (ja) 半導体記憶装置
JP3183167B2 (ja) 半導体記憶装置
JP2007172333A (ja) バスアドレス選択回路およびバスアドレス選択方法
JP2950427B2 (ja) レジスタバンク回路
JPS6097454A (ja) デ−タ処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980818

LAPS Cancellation because of no payment of annual fees