JP2950427B2 - レジスタバンク回路 - Google Patents

レジスタバンク回路

Info

Publication number
JP2950427B2
JP2950427B2 JP2003400A JP340090A JP2950427B2 JP 2950427 B2 JP2950427 B2 JP 2950427B2 JP 2003400 A JP2003400 A JP 2003400A JP 340090 A JP340090 A JP 340090A JP 2950427 B2 JP2950427 B2 JP 2950427B2
Authority
JP
Japan
Prior art keywords
register
bank
data
registers
pointer
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 - Lifetime
Application number
JP2003400A
Other languages
English (en)
Other versions
JPH02277125A (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.)
Toshiba Corp
Toshiba Electronic Device Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Microelectronics Corp
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 Toshiba Corp, Toshiba Microelectronics Corp filed Critical Toshiba Corp
Priority to JP2003400A priority Critical patent/JP2950427B2/ja
Publication of JPH02277125A publication Critical patent/JPH02277125A/ja
Application granted granted Critical
Publication of JP2950427B2 publication Critical patent/JP2950427B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、レジスタバンク回路に関し、特にマイクロ
プロセッサ部を改良する場合に適するものである。
(従来の技術) この種のレジスタバンク回路は、第3図の様にRAM
(リード、ライトメモリ)21と、レジスタ番号を保持す
るレジスタポインタ22と、バンク番号を保持するバンク
ポインタ23と、そのバンクポインタ、レジスタポインタ
の出力を受けて、アドレスを生成するアドレス生成回路
24を有し、そのアドレスをRAM21に与える事により任意
のレジスタをリード、ライトできるようにしたレジスタ
バンク方式を採っていた。
(発明が解決しようとする課題) しかしながら上記のものは、次のような欠点があっ
た。
(a) レジスタとしてRAM21を使用するため、アドレ
スを与えてから、データバス25上のデータが有効になる
までの時間(アクセスタイム)が長く、このレジスタバ
ンク方式をマイクロプロセッサ等に導入すると、頻繁に
発生するレジスタへのリード、ライト毎に、前記アスセ
ス時間が必要となり、マイクロプロセッサ等の実行速度
が制限されるため、高速処理を必要とするものには導入
し難い。
(b) 又、通常のRAMをレジスタとして使用するた
め、同時に2つの異なったレジスタのデータをアクセス
する事ができない。このため、このレジスタバンク回路
をマイクロプロセッサ等に導入すると、2つのレジスタ
のデータ処理をする時に、2つのレジスタを同時にアク
セスできる方式に比べて、2つのレジスタを1つずつア
クセスしなければならないため、処理速度が遅くなる。
そこで上記第3図の欠点を改善するため、第4図の様
なレジスタバンク方式について考えてみる。
この方式は、それぞれバンクを構成する複数のレジス
タラッチ群31と、レジスタ番号を保持するレジスタポイ
ンタ32−1、レジスタポインタ32−2と、バンク番号を
保持するバンクポインタ33と、それらレジスタポイン
タ、バンクポインタの出力を受けて、これをデコードす
るデコーダ34を有し、そのデコーダの出力により、前記
複数のレジスタラッチ群31から任意のバンクの中の最大
2つのレジスタを選択できるようになっている。またこ
の複数のレジスタラッチ群31は、各々バンク番号と対応
づけられている。ここで、1バンクが8レジスタで8バ
ンク構成のレジスタバンクを例にとることにする。第5
図、第6図にその詳細を示す。図のように各レジスタラ
ッチ群31は、レジスタラッチR0〜R7の8つのレジスタに
よって構成されている。又デコーダ34の出力は、バンク
セレクト信号8セット(BS7〜BS0)であり、各セットは
バンク番号と1対1に対応して、前記レジスタラッチ群
31に接続される。又、各セットは2つあるレジスタポイ
ンタ32−1,32−2の各々により各レジスタが選択される
ようになっている為、さらに2組に分かれている。(例
えばBS7aとBS7b)そして各組は8本のコントロール信号
からなっている。又、その8本のコントロール信号は、
各々レジスタ番号と1対1に対応して、前記レジスタラ
ッチR0〜R7に接続されている。従がって、各々の組から
独立に、レジスタラッチR0〜R7の1つを選択する事が可
能となっている。第1の組に選ばれたレジスタラッチは
データバス35−1を通して、第2の組に選ばれたレジス
タラッチはデータバス35−2を通して、データのリー
ド、ライトを行うようにする。
このようなレジスタバンク回路を導入したマイクロプ
ロセッサは、高速のレジスタ転送が可能となり、実行速
度の向上が計れる。
しかし、上記第3図の方式に比べ、次の問題点を有
す。
(a) レジスタラッチによってレジスタを構成するた
め、第3図のRAMを使用する方式に比べ、回路規模が大
きくなるという問題点がある。このため、例えば、第5
図の様な回路を集積回路上で実現しようとすると、RAM
を使用する方式の倍以上の面積を必要とし、場合によっ
ては、必要なレジスタ数を確保できない可能性がある。
(b) デコーダ34が出力するコントロール線(前記バ
ンクセレクト信号及びレジスタ選択信号)の本数が多
く、集積回路で使用する場合、RAMの方式に比べ配線に
必要な面積が大きくなったり、取り扱いが繁雑になった
りする。
(c) バンクの数を増減する際の柔軟性に関しても、
増減に伴なって、デコーダ部の再設計が必要となり、こ
の方式ではデコーダの規模が大きいため、大きな回路変
更となる。これは、集積回路上で実現した場合大きな制
約となる。
そこで本発明の目的は、「レジスタ数×バンク数」が
多くても小規模で、しかも容易な回路で実現でき、かつ
高速なレジスタバンク方式を実現すると共に、レジスタ
数やバンク数の増減に対しても柔軟に対応でき、コスト
パフォーマンスの高いレジスタバンク回路を実現せしめ
るものである。
[発明の構成] (課題を解決するための手段と作用) 本発明のレジスタバンク回路は、行及び列にデータを
記憶する複数のレジスタがマトリクス状に配置され、各
行が複数のレジスタを含むバンクを構成するレジスタア
レイ手段と、複数の第1のデータバスと、複数の第2の
データバスと、前記バンクに付されたバンク番号を記憶
するバンク番号記憶手段と、前記バンク番号記憶手段か
ら供給されるバンク番号に応じて前記レジスタアレイ手
段の内から1つのバンクを選択し、前記バンク番号記憶
手段からバンク番号が供給されている間中、この選択さ
れたバンクに含まれる各レジスタを活性化するバンク選
択手段と、データを読み出すための複数のレジスタ番号
を記憶する第1のレジスタ番号記憶手段と、データを書
き込むための少なくとも1つのレジスタ番号を記憶する
第2のレジスタ番号記憶手段と、前記第1のレジスタ番
号記憶手段から供給されるレジスタ番号に応じて、前記
バンク選択手段によって選択された1つのバンクの中か
らデータを読み出すための複数のレジスタを選択し、前
記第1のデータバスに接続する第1のレジスタ選択手段
と、前記第2のレジスタ番号記憶手段から供給されるレ
ジスタ番号に応じて、前記バンク選択手段によって選択
された1つのバンクの中からデータを書き込むための少
なくとも1つのレジスタを選択し、前記第2のデータバ
スに接続する第2のレジスタ選択手段とを具備すること
を特徴とする。
即ち本発明は、バンク番号のデコード信号のみで、そ
のバンク番号に対応するバンクの全てのレジスタが選択
されるようにメモリを構成する。そして、1バンク分を
1括してメモリから選択し、保持することにより、高速
の処理が可能となる。さらに、メモリはレジスタ選択手
段としてのマルチプレクサに接続され、リード、ライト
をこのマルチプレクサを通して処理されるようにする。
又、このマルチプレクサは、レジスタ番号によりコント
ロールされ、任意のレジスタを同時に複数個選択できる
ようになっており、必要に応じて複数のマルチプレクサ
を用意して、複数のレジスタを同時にアクセスする事も
可能にしている。しかもまたバンク番号保持手段とレジ
スタ番号保持手段により、バンク番号とレジスタ番号を
一定期間保持している。このため、例えば一つのバンク
番号を指定し続けて、一つのバンク内のレジスタ間でデ
ータを処理する際に、番地設定時間の短縮が可能とな
る。つまり、一度バンク番号を指定するだけで、あとは
それをバンク番号保持手段で保持し、そのバンク番号を
指定しつづければ、改めてバンク番号を指定しなおす必
要がない。これにより、本願レジスタを用いたマイクロ
プロセッサは処理速度の高速化を実現することができ
る。
また、レジスタポインタから直接バンクに配線された
ときの構造のように面積が大きくすることがなく、小さ
い面積で比較的多数のレジスタを構成できる。
(実施例) 以下図面を参照して本発明の実施例を説明する。
第1図(A)は、本発明の適用の概略図である。これ
は、マイクロプロセッサの主要部のブロックダイアグラ
ムであり、各機能ブロックは、次に述べる通りである。
DBI61はデータバスインターフェースであり、データ
バスDB69を介してプログラムメモリやデータメモリとの
間で命令やデータなどのやり取りを行う。この時必要な
アドレス情報は、アドレス生成ユニットAGEN62で生成さ
れ、アドレスバスインターフェースABI63とアドレスバ
スAB68によって供給される。メモリから読み込まれた命
令は、命令バッファIBUF64に保持され、そして命令デコ
ーダIDEC65に順次送られて解読される。制御信号発生ユ
ニットCONT66は、解読された命令の実行に必要な各部の
制御信号を発生する。ALU67は算術論理演算ユニットで
あり、算術演算や論理演算等の各種演算を処理する。RE
GISTERBANKブロック51は、プログラマによって使用され
るバンク化されたレジスタの集合体である。そのレジス
タバンク番号を保持するのがバンクポインタBP53であ
り、バンクポインタの内容をデコードしてレジスタバン
クの選択信号を出力するのがデコーダDEC54である。選
択されているレジスタバンク内の読み出しレジスタ番号
を保持しているのが、レジスタポインタ(RP1)55−1
R、(RP2)55−2Rである。このレジスタポインタによっ
て指定されたレジスタを選択し、その内容を出力するた
めのセレクタブロックとしてRSEL56−Rがある。また、
選択されているレジスタバンク内の書き込みレジスタ番
号を保持しているのがレジスタポインタ(RP3)55−1
W、(RP4)55−2Wである。このレジスタポインタによっ
て指定されたレジスタを選択し、そのレジスタに書き込
みを行なうためのセレクタブロックとしてWSEL56−Wが
ある。
これらの機能ブロックは、データバスDBx、DByにより
繁がれ、データがやり取りされる。制御信号発生ユニッ
トCONT部66からの出力であるIRGx、IRGy、ORGx及びORGy
は命令によって指定されるレジスタ番号をそれぞれレジ
スタポインタに転送する信号線である。RP01x、RP02x、
RP03x及びRP04xはレジスタポインタ55から各セレクタ部
56−R,56−Wにつながれた出力信号線である。BP0xはバ
ンクポインタ53の出力信号線であり、BSxはレジスタバ
ンク51のバンク選択信号である。CBx及びその反転信号
▲▼は各レジスタのビットバス信号である。BBx
は各レジスタのビットの読みだしデータ信号線である。
この概略図において、“レジスタR0の内容とレジスタ
R1の内容を加算しその和をレジスタR2(後述の第1図
(B)参照)に格納する”という命令を実行する場合の
例を説明する。
この時バンクポインタ53は事前に、あるレジスタバン
ク番号が設定されているものとする。当該命令は命令バ
ッファIBUF64より取り出され、命令デコーダIDEC部65に
より解読され、各制御信号が発生される。この時、信号
線IRGxにR0に対応するレジスタ番号データが、また、信
号線IRGyにR1に対応するレジスタ番号データが出力さ
れ、レジスタポインタRP1とRP2に各々設定される。そし
て、信号線ORGxにはR2に対応するレジスタ番号データが
出力され、レジスタポインタRP3に設定される。その
後、レジスタに対する読みだし信号が出されることによ
り、セレクタRSELブロック56−RからR0の内容がデータ
バスDBxに、R1の内容がデータバスDByに出力される。
ここで、本実施例は複数のデータバスDBx、DByを用い
ることで、このような処理に際しても2つのデータを同
時に移動できる。
DBxとDBy上に出力されたデータは演算ユニットALU67
の両方の入力にそれぞれ取り込まれる。制御信号発生ユ
ニットCONT部66より加算の制御信号が出され、ALU67に
て加算が行なわれる。この加算の和はデータバスDBxに
出力されてセレクタブロックWSEL部56−Wの入力とな
る。そして、レジスタへの書き込み信号が出力されるこ
とによりR2への書き込みが行なわれる。この様に各命令
の実行が行なわれていくことになる。
また、レジスタポインタ(RP1)55−1R、(RP2)55−
2R、(RP3)55−1W並びに(RP4)55−2Wに対するレジス
タ番号の設定は、ALU67における演算中などのように、
それぞれのレジスタポインタの動作の空きがあるときに
随時設定することが可能であり、演算の実行とレジスタ
ポインタの設定は並行して行なえる。したがって、実行
中の命令と次の処理を重ね合わせて処理効率の向上を図
ることもできる。
更に、第1図(B)は本願発明であるレジスタバンク
回路の実施例の概略的構成図、第2図は同構成を更に具
体化した図である。即ちこの構成は、各行がそれぞれ複
数ブロックのレジスタよりなるバンクを構成し、各列が
それぞれ専用のメモリバス52につながるリード、ライト
可能なメモリ51と、1つ以上のバンク番号を保持するバ
ンク番号保持手段53と、そのバンク番号保持手段の出力
により前記メモリ中の一連のデータ群を選択するための
バンク選択手段54と、1つ以上のレジスタ番号を保持す
るレジスタ番号保持手段55と、そのレジスタ番号保持手
段の出力により前記一連のデータ群に対し1つ以上のレ
ジスタのデータを選択するレジスタ選択手段56とを具備
する。リード時には、前記一連のデータ群が1バンク内
の全てのレジスタのデータによって構成され、これがメ
モリバス52に出力される。この出力はレジスタ選択手段
56で選択され、データバス57に出力される。
第2図では、バンク番号保持手段53はバンクポインタ
で、バンク選択手段54は行(ROW)デコーダで、レジス
タ番号保持手段55はレジスタポインタ55−1,55−2で、
レジスタ選択手段56はマルチプレクサでそれぞれ実現さ
れている。レジスタの1ブロックRは1ビットレジスタ
でも、複数ビットレジスタでもかまわない。また本例
は、バンク数8、各バンク内のレジスタ数8、各レジス
タ長8ビット、同時にアクセスできるレジスタ数2のレ
ジスタバンク回路となっている。また本例では、リー
ド、ライト可能なメモリ51と、バンク番号を保持するバ
ンクポインタ(3ビット)とその出力をデコードするRO
Wデコーダ(出力8本)を有しており、メモリ51は、ROW
デコーダ54の出力に対応して8つのバンクに分かれてい
る。メモリ51は、横方向に並らぶ1連のレジスタ群(R0
〜R7)で1バンクを形成している。バンクポインタ53に
任意のバンク番号(0〜7)を設定すると、その出力は
行デコーダ54へ入力され、行デコーダはこれをデコード
し、設定されたバンク番号に対応する出力信号を1本、
有効な状態に遷移させる。これにより、メモリの、8バ
ンクの内の1バンクが選択され、その選択されたバンク
内の全てのレジスタ(R0〜R7)は、それぞれ専有のメモ
リバス52を通じてマルチプレクサ56へ接続される。この
時、選択されていないバンクの各レジスタは電気的に、
メモリバス52から絶縁されている。
又、本例において、図のマルチプレクサ56はレジスタ
番号を保持するレジスタポインタ55−1(3ビット)、
これとは独立にレジスタ番号を保持するレジスタポイン
タ55−2(3ビット)に接続されており、2つのレジス
タポインタの出力に応じてメモリバス52の選択を行な
う。レジスタポインタ55−1によって選択されたメモリ
バスは、データバス57−1と、レジスタポインタ55−2
によって選択されたメモリバス52は、データバス57−2
とマルチプレクサを通して接続される。図の様にメモリ
バス(MBR0〜MBR7)は各々レジスタ番号と1対1に対応
しており、前記の様に、メモリバスがマルチプレクサ56
を通して、データバス(データバス57−1、データバス
57−2)と接続されることにより、各レジスタのリー
ド、ライトが行なわれる。
つまりリード時には、バンクポインタ53で1行のバン
クが選ばれて、そのバンクのレジスタR0〜R7までのデー
タがメモリバス52に出力される。その出力のうち、レジ
スタポインタ55−1,55−2により指定されたものが、マ
ルチプレクサ56を介してデータバス57−1,57−2へ出力
される。
一方ライト時には、レジスタポインタ55−1,55−2で
任意数(この例では当然2つ)のレジスタを選び、バン
クポインタ53で任意(この例では当然1つ)のバンクを
指定して、この指定されたバンクの2つのレジスタRに
データを書き込めばよい。
以上の様に、本実施例の回路では、一度バンクポイン
タを設定すると、メモリ51中の1バンク分の8つのレジ
スタが、常時ROWデコーダ54により選択されており、メ
モリバスを経由してマルチプレクサと接続されている。
従がって、バンク内のレジスタのリード、ライトは任意
のレジスタ番号をレジスタポインタに設定するのみでよ
く、2のレジスタポインタ55−1,55−2に独立してレジ
スタ番号を設定する事により、同時に、2つの異なるレ
ジスタをアクセスする事もできる。
本例では、バンク数8、バンク内のレジスタ数8、各
レジスタ長8ビット、同時にアクセスできるレジスタ数
2としたが、これに限定する必要はなく、バンクポイン
タ長、レジスタポインタ数、マルチプレクサ等を変える
事により任意のレジスタバンク回路を構成する事ができ
る。
又、更に第1図(A)中のレジスタバンク51が第7図
のようなレジスタモデルで構成されている場合を例とし
て、本発明のレジスタバンクの構成例を説明する。
第7図(A),(B)は、レジスタモデルを示してい
る。各レジスタRは、1データを記憶する最小単位の構
成が101であるビット0(b0)からビットn(bn)まで
のn+1ビットで構成されている。そのレジスタRがR0
からRkまでのk+1本で1つのレジスタバンクを構成す
る。また、そのレジスタバンクがBANK0からBANKmまでの
m+1バンクで構成されているレジスタモデルである。
例えば4ビットのレジスタモデルであれば各レジスタは
4ビットごとに信号が扱われ、さらにその後のセレク
タ、データバス等も4ビットに対応した回路構成が適用
されるが、本願のレジスタは任意のビット数に対して適
用が可能である。これらのビット数を“データ処理単位
ビット数”と呼ぶと、第7図の1つのBANKは、データ処
理単位ビット数の最小レジスタ101で構成されている。
つまり、そのレジスタが8ビット用であれば、ひとつの
レジスタは8つの最小レジスタ101で構成されている。
このレジスタRが複数個構成されて1バンク(BANK)を
形成している。
レジスタバンク内の各レジスタは第8図,第9図の例
に示すように、同じレジスタ番号のレジスタを同じ列に
なるように配置する。
また、第10図の例のように、レジスタ内の各ビット10
1は、レジスタ番号の同じビットが列方向に重なるよう
に配置される。なお、各ビット列にはプリチャージ回路
PRとセンス回路SAが1列に1対配置される。
第11図は、これらのセルCELL、PR並びにSAの詳細回路
例である。CB及びその反転信号である▲▼はセル列
のビットバスである。BSはセルの行選択信号であり、こ
の信号がハイレベルの時にセルが選択されることにな
る。▲▼はプリチャージ回路の制御信号であり、
この信号がローレベルの時にビットバスCB、▲▼を
プリチャージしてハイレベルに設定する。SNS及び▲
▼はセンス回路の制御信号であり、SNSがハイレベ
ル▲▼がローレベルの時にビットバスの状態を、
選択されているセルが保持しているデータに確定させ
る。BBは各ビットの読みだしデータ信号線であり、この
信号の状態が読みだしされたデータの1ビットに対応す
る。また、図中のVddは電源である。
データを直接電荷として記憶するためのCELLは、ビッ
ト線対CB、▲▼と、その一端がビット線CBに接続さ
れゲートが行選択信号線BSに接続された第1FET111と、
この第1FET111の他端にその一端を接続された第1イン
バータ113と、この第1FET111の他端にその一端を接続さ
た第2インバータ114と、この第1インバータ113の他端
と第2インバータ114の他端にその一端を接続され、そ
の他端にもう一方のビット線▲▼が接続され、ゲー
トが行選択信号線BSに接続された第2FET112とからなっ
ている。
又、正電位を供給する回路、プリチャージ回路PRは、
正電位電源Vddと、ビット線対CB、▲▼と、このビ
ット線CBにその一端が接続され、正電位電源Vddにその
他端が接続された第1FET115と、もう一方のビット線▲
▼にその一端が接続され、正電位電源Vddにその他
端が接続された第2FET116とからなっている。また第1FE
T115と第2FET116のゲートは、プリチャージ信号▲
▼に接続されている。
そして、ビット線CB、▲▼の電位を確定させるセ
ンスアンプは、正電位電源Vddと、ビット線対CB、▲
▼と、ビット線CBに一端が接続された第1FET117と、
第1FET117の他端がその一端に接続され、もう一方のビ
ット線▲▼にその他端が接続され、ビット線CBにそ
のゲートが接続された第2FET118と、ビット線CBに一端
が接続され、第1FET117のゲートともう一方のビット線
▲▼にそのゲートが接続された第3FET119と、第3FE
T119の他端にその一端が接続され、もう一方のビット線
▲▼にその他端が接続され、第2FET118のゲートに
そのゲートが接続された第4FET120と、正電位電源Vddに
一端が接続され、第1FET117の他端にその他端が接続さ
れ、制御信号▲▼がゲートに供給された第5FET12
1と、第4FET120の一端に接続され、接地電位にその他端
が接続され、制御信号SNSがゲートに接続されている第6
FET122とからなる。
第12図は、第1図のレジスタポインタRP1、RP2、RP
3、RP4の詳細回路例である。第1図(A)の例において
は、データバスDBxとDByと次の信号線IRGx、IRGy、ORG
x、ORGyの内の一つとの3入力となっているため、通常
のラッチ回路の入力に3入力マルチプレクサが付加され
たものとなっている。この第12図のL3Sという回路ブロ
ックが必要ビット数だけならべられることになる。つま
り、1バンク内のレジスタ本数8本であるならば3ビッ
トとなり、16本であるならば4ビットとなる。第12図中
のSEL3は三つの入力のうちのどれかを選択するかを指定
する選択信号である。この信号がハイレベルになったと
ころに対応する入力がレジスタポインタへの入力とな
る。▲▼はレジスタポインタのレジスタ番号設定信
号である。▲▼がローレベルになると入力のデータ
を取込み、ハイレベルになったときそのデータを保持す
ることになる。第12図中の入力信号であるDBx0からDBxn
が第1図(A)におけるDBxデータバスを意味し、DBy0
からDBynは第1図(A)におけるDByデータバスを意味
しており、I/ORGi0からI/ORGijは第1図(A)における
信号線IRGx、IRGy、ORGx、ORGyを意味している。RPO0か
らRPOjはレジスタポインタからの出力であり、第1図
(A)における信号線RPO1x、PO2x、RPO3x、RPO4xを意
味している。
第19図にレジスタポインタの更新のタイミング例を示
す。この例はIRGx上のレジスタ番号“01"(16進数)をR
P1に取り込み、レジスタ選択信号(RS0からRSk)が変化
するまでのタイミングを表している。
第13図は、第1図(A)におけるライトセレクタWSEL
56−Wの詳細回路例である。レジスタポインタRP3、RP4
の出力のPRO30からRPO3jとRPO40からRPO4jを入力しデコ
ーダRP3DECおよびRP4DECでデコードし、書き込みを行う
レジスタに対応した選択信号RS30x、RS31x、RS40y、RS4
1y、……を生成する。第1図(A)の例ではDBxとDByの
二つのデータバスからの書き込みデータ経路があるた
め、それぞれに対応した書き込み信号WRx、WRyがあり、
レジスタ選択信号と組み合わせられて実際の書き込み信
号となる。この書き込み信号はレジスタ単位で共通に接
続されており、一つの書き込み信号により一つのレジス
タのすべてのビットに書き込みが行われる。また、ライ
トセレクタWSEL部の構成要素であるSOはデータバスDBx
とDByに接続されており、それらのどちらかを選択する
かは書き込み信号により決定される。
ここで、データバスDBx上のデータをレジスタR0に書
き込む場合を例にとると、次のような動作となる。レジ
スタポインタRP3にR0に対応したレジスタ番号を設定す
る。このRP3の出力をRP3DECによりデコードすることに
よりRS30x信号がハイレベルとなり、それ以外の選択信
号RS31x、……は、ローレベルとなる。ここでデータバ
スDBx側の書き込み信号WRxがハイレベルとなるとNAND0
の出力のみがローレベルとなる。このNAND0の出力につ
ながれているR0に対応したSOブロックのDBx側のバッフ
ァがアクティブとなり、DBx上のデータがそれぞれのビ
ットに対応したビットバスCB00、CB01、……、CB0nに供
給され、それぞれのデータの反転信号がビットバス▲
▼、▲▼、……、▲▼に供給さ
れる。この時、他のレジスタ番号に対応したビットバス
は何も影響を受けないことになる。セル部分においては
いずれかのレジスタバンクに対応した1行のセルの選択
信号(BS)はハイレベルとなっており、プリチャージ回
路PRとセンス回路SAは非アクティブとなっている。この
ような状態でR0の各ビットに対応したビットバス上にDB
xのデータが強制的に供給されるので、選択されている
セル中のR0に対応したビットのセルはビットバス上のデ
ータが書き込まれることになる。それ以外のセルにおい
てはビットバスの状態が変わらない為、何も変化は起こ
らない。書き込みに必要な時間が経過すると、WRx信号
はローレベルとなり、いままでDBx上のデータをビット
バスに供給していたWSELのR0に対応したSOは非アクティ
ブとなる。R0に対応したビットバスは書き込まれたデー
タを保持し、あたかも読み出しが行われたのと同じ状態
になる。
このようにして、レジスタへの書き込みが行われる。
したがって、既成のRAMを用いた場合のように書き込み
アドレスに対応したデコーダの設定やビットバスのプリ
チャージ動作等は一切不要であり、さらに書き込み動作
後の再読み出し要求に対しても何も動作を必要としない
で済むことになる。
第21図にR0にDBx上のデータ“55"(16進数)と、R1に
DBy上のデータ“AA"(16進数)を同時に書き込むときの
タイミング例を示す。
第14図は第1図(A)におけるリードセレクタRSEL56
−Rの詳細回路例である。レジスタポインタRP1、RP2の
出力のRPO10からRPO1jとRPO2jを入力としたデコーダRP1
DECとRP2DECにより、レジスタ選択信号RS10x、RS11x、R
S20x、RS21y、……が生成される。第1図(A)の例で
はデータバスDBxとDByの二つの読みだしデータ経路があ
るため、それぞれに対応したDBx側への読みだし信号RDx
とDBy側への読みだし信号RDyとが組み合わされて、選択
レジスタの実際の読みだし信号となる。この読みだし信
号はレジスタ単位で共通に接続されており、一つの読み
だし信号により一つのレジスタのすべてのビットの読み
だしが行われる。また、リードセレクタRSEL部の構成要
素であるSIは各レジスタの読みだしデータ信号線BB00、
BB01、……を入力としてDBxデータバスとDByデータバス
へ選択出力を行うようになっている。読みだし動作とい
っても、あるレジスタのすべてのビットのデータが読み
出されており、SIの入力としてすでに供給され続けてい
る。したがって、読み出しを行いたいレジスタに対応し
たレジスタ番号をレジスタポインタに設定して、読み出
し信号を印加することによりセレクタ回路SIから所望の
データバスDBx、DByに即座にデータが出力されることに
なる。
このように本願のレジスタは、アクセスタイムを必要
とされるのは、レジスタバンクの切り替え時点において
のみであり、この動作においてはアクセスタイムは問題
にならない長さである。
第20図にレジスタR0とR1の内容をDBxとDByに同時に読
み出すときのタイミング例を示す。
この回路構成を採用することで高速な動作を必要と
し、なおかつ、書き込み後の再読み出しを必要とするレ
ジスタを容易な構成で実現することが可能となってい
る。
第15図はレジスタポインタの出力からレジスタ選択信
号を生成するデコーダRP1DEC、RP2DEC、RP3DECおよびRP
4DECの詳細回路例である。レジスタポインタが3ビット
であるならば8個のNAND−NOT回路で構成され、4ビッ
トであるならば16個のNAND−NOT回路で構成される。
第16図は、バンクポインタBPの詳細回路例である。第
1図(A)の例においては、バンクポインタはデータバ
スDBxとDByの二つの入力を持っているため、通常のラッ
チ回路の入力の所に2入力のマルチプレクサが付加され
ている。このマルチプレクサの選択信号がSEL2である。
バンクポインタのラッチ信号は▲▼であり、▲
▼がローレベルの時にDBxもしくはDBy上のデータをマル
チプレクサ経由で入力し、ハイレベルになった時にその
データを保持することになる。BPO0からBPO1はバンクポ
インタの出力信号であり、第1図(A)中のBPOxを意味
している。レジスタバンク数が8バンクの場合は3ビッ
トでレジスタポインタが構成され、16バンクの場合は4
ビットで構成される。
第17図は第1図(A)中のデコーダDECの詳細回路例
である。バンクポインタBPの出力信号であるBPO0からBP
O1を入力しバンク選択信号(BS0からBSm)を生成するデ
コーダ回路である。バンク選択信号はレジスタバンク51
の行選択信号BSに接続され、バンクポインタによってレ
ジスタバンク51の1行のセルが選択されるようになって
いる。
DIS信号線はバンクポインタの切り替わり時点でバン
ク選択信号が不安定な状態になるため、その期間中はい
ずれの選択信号も非アクティブにしておくための、バン
ク選択禁止信号である。
第18図にレジスタバンク切り替えタイミング例を示
す。この例では、DBxデータバス上の“01"(16進数)と
いうデータを取り込むことによって、レジスタバンク1
を選択し、そのレジスタバンク1のすべてのレジスタの
すべてのデータビットを読み出すまでのタイミングを示
している。
バンクポインタへのデータラッチ信号(▲▼)が
アクティブになったときには、その期間中バンク選択信
号を禁止する為にDIS信号がアクティブとなる。また、
この期間を利用してレジスタバンク51内のビットバスを
プリチャージするために▲▼信号パルスが生成さ
れる。これは、新規に選択されるレジスタバンク51上の
セルのデータが破壊されないために必要となる。ラッチ
信号(▲▼)が非アクティブになると、バンク選択
禁止信号(DIS)も非アクティブとなり、レジスタバン
ク1の選択信号(BS1)だけがハイレベルとなる。この
選択信号によりレジスタバンク51に対応したセル一行が
選択され、各々のセルに接続されたビットバスをセルの
データで駆動し始め、その後センス回路(SA)を働かせ
るためにSNS、▲▼信号パルスを印加する。セン
ス回路(SA)が働くと、レジスタバンク51内のビットバ
ス上のデータはそれぞれの状態に確定される。
このようにして、レジスタバンクの切り替えとその切
り替えられたレジスタバンク内のすべてのレジスタのす
べてのビットのデータが読み出され、読みだしデータ信
号線(BB)を経由してリードセレクタRSEL回路の入力に
供給されることになる。レジスタバンク51内のプリチャ
ージ回路(PR)とセンス回路(SA)はレジスタバンク切
り替え時に働き、レジスタの読みだし動作や書き込み動
作においては働かないようになっている。
以上の本発明の適応例の説明においても明らかなよう
に本発明によって、既成のRAMを用いたときに必要とさ
れるアドレス動作を必要としないでデータをアクセスで
きるため、レジスタラッチと同様に高速なアクセスが可
能であり、大容量であるにもかかわらず回路規模の小さ
いレジスタバンク回路を容易にかつ安価に作成できるこ
ととなる。
[発明の効果] 従来の第3図の方式では、レジスタとしてRAMを使用
し、バンク番号及びレジスタ番号から1つのアドレスを
生成して、レジスタをアクセスするようにしていたた
め、同じバンク内のレジスタでも毎回レジスタをアクセ
スする毎に、前記アドレスを与え直さざるを得なかっ
た。また原理的に、一回に1つのレジスタしかアクセス
する事ができなかった。
これに対し本発明はバンク番号のデコード信号によ
り、1バンク分の全てのレジスタを選択できるため、バ
ンク内のレジスタをアクセスする時には、レジスタ番号
によってマルチプレクサ等のレジスタ選択手段を切り換
えるだけであるので、バンク番号が切り換わるまでメモ
リの選択をしなおす必要がなくなる。又、マルチプレク
サを複数用意することによって、複数のレジスタ番号を
指定する事も可能で、これにより一度で複数のレジスタ
のアクセスが可能となる。このことにより、レジスタの
アクセス毎のアクセスタイムは不要となり、バンクが切
り替った時のみアクセスタイムが存在することになるの
で高速なアクセスが可能となる。
また、従来の第4図〜第6図の方式では、レジスタラ
ッチによってレジスタを形成するため、回路規模が大き
くなったり、デコーダの出力本数も多くなるため、集積
回路で実現する際は面積が非常に大きくなる欠点を有し
ていた。又、レジスタ数やバンク数の増減に対しても、
回路規模の大きなデコーダの設計変更を必要とし、柔軟
性はなかった。
これに対し本発明は、マイクロプロセッサ内のレジス
タとして好適でデコーダ、マルチプレクサ等も小さなも
ので済む。又、レジスタ数の増減も、主として、回路の
小規模なデコーダとメモリの増減のみで済むため柔軟性
に富む。
以上のように本発明は、回路規模、高速性、レジスタ
数の柔軟性に富むレジスタバンク回路を容易にしかも安
価に実現できることになる。特にマイクロプロセッサ、
集積回路に組み込むと、チップ面積の専有率やシステム
能力等において、その実力を充分に発揮し、コストパフ
ォーマンスの良い優れたものが実現できる。
【図面の簡単な説明】 第1図は本発明の実施例の構成図、第2図は構成の一部
詳細図、第3図ないし第6図は本発明が適用されないレ
ジスタバンク回路図、第7図はレジスタの構造を示す概
念図、第8図はレジスタバンク配置例を示す概念図、第
9図はレジスタ配置列を示した概念図、第10図はビット
配置列を示す概念図、第11図ないし第17図は上記実施例
の各部詳細回路図、第18図ないし第21図は同各部の動作
を示すタイミングチャートである。 51……レジスタアレイ(レジスタバンクブロック)、52
……メモリバス、53……バンク番号保持手段、54……デ
コーダ、55……レジスタ番号保持手段、55−1W〜55−2R
……バンクポインタ、56……レジスタ選択手段、56−W
……書き込み側セレクタ、56−R……読み出し側セレク
タ、57−1,57−2……データバス、61……データバスイ
ンターフェース、62……アドレス発生器、63……アドレ
スバスインターフェース、64……命令バッファ、65……
命令デコーダ、66……制御信号発生ユニット、67……算
術論理演算ユニット、68……アドレスバス、69……デー
タバス。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 福岡 浩 神奈川県川崎市幸区堀川町580番1号 株式会社東芝半導体システム技術センタ ー内 (72)発明者 篠原 誠 神奈川県川崎市幸区堀川町580番1号 株式会社東芝半導体システム技術センタ ー内 (72)発明者 吉田 和義 神奈川県川崎市川崎区駅前本町25番地1 東芝マイクロエレクトロニクス株式会 社内 (56)参考文献 特開 昭61−292741(JP,A) 特開 昭59−98387(JP,A) 特開 昭63−188230(JP,A) 特開 昭53−107240(JP,A)

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】行及び列にデータを記憶する複数のレジス
    タがマトリクス状に配置され、各行が複数のレジスタを
    含むバンクを構成するレジスタアレイ手段と、 複数の第1のデータバスと、 複数の第2のデータバスと、 前記バンクに付されたバンク番号を記憶するバンク番号
    記憶手段と、 前記バンク番号記憶手段から供給されるバンク番号に応
    じて前記レジスタアレイ手段の内から1つのバンクを選
    択し、前記バンク番号記憶手段からバンク番号が供給さ
    れている間中、この選択されたバンクに含まれる各レジ
    スタを活性化するバンク選択手段と、 データを読み出すための複数のレジスタ番号を記憶する
    第1のレジスタ番号記憶手段と、 データを書き込むための少なくとも1つのレジスタ番号
    を記憶する第2のレジスタ番号記憶手段と、 前記第1のレジスタ番号記憶手段から供給されるレジス
    タ番号に応じて、前記バンク選択手段によって選択され
    た1つのバンクの中からデータを読み出すための複数の
    レジスタを選択し、前記第1のデータバスに接続する第
    1のレジスタ選択手段と、 前記第2のレジスタ番号記憶手段から供給されるレジス
    タ番号に応じて、前記バンク選択手段によって選択され
    た1つのバンクの中からデータを書き込むための少なく
    とも1つのレジスタを選択し、前記第2のデータバスに
    接続する第2のレジスタ選択手段とを 具備することを特徴とするレジスタバンク回路。
  2. 【請求項2】前記バンク選択手段は、前記バンク番号記
    憶手段から供給されるバンク番号をデコードし、このデ
    コード出力によりレジスタアレイ手段の1つのバンクを
    選択し、この選択されたバンク内の全レジスタを活性化
    するデコーダからなることを特徴とする請求項1記載の
    レジスタバンク回路。
  3. 【請求項3】前記レジスタアレイ手段の各列に配置され
    たレジスタは、それぞれメモリバスに共通接続され、前
    記バンク選択手段によって選択されたバンク内の各レジ
    スタのデータは前記メモリバスにそれぞれ読み出されて
    いることを特徴とする請求項1記載のレジスタバンク回
    路。
JP2003400A 1989-01-13 1990-01-12 レジスタバンク回路 Expired - Lifetime JP2950427B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003400A JP2950427B2 (ja) 1989-01-13 1990-01-12 レジスタバンク回路

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP1-7432 1989-01-13
JP743289 1989-01-13
JP2003400A JP2950427B2 (ja) 1989-01-13 1990-01-12 レジスタバンク回路

Publications (2)

Publication Number Publication Date
JPH02277125A JPH02277125A (ja) 1990-11-13
JP2950427B2 true JP2950427B2 (ja) 1999-09-20

Family

ID=26336971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003400A Expired - Lifetime JP2950427B2 (ja) 1989-01-13 1990-01-12 レジスタバンク回路

Country Status (1)

Country Link
JP (1) JP2950427B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102799A (ja) 2002-09-11 2004-04-02 Nec Electronics Corp レジスタファイル及びレジスタファイルの設計方法
JP4471582B2 (ja) * 2003-04-21 2010-06-02 株式会社ルネサステクノロジ 半導体集積回路及び回路設計装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5998387A (ja) * 1982-11-26 1984-06-06 Nec Corp メモリ回路
JPS61292741A (ja) * 1985-06-20 1986-12-23 Nec Corp 演算処理装置

Also Published As

Publication number Publication date
JPH02277125A (ja) 1990-11-13

Similar Documents

Publication Publication Date Title
EP0199134B1 (en) High performance memory system
EP0481437B1 (en) Semiconductor memory device
US9093135B2 (en) System, method, and computer program product for implementing a storage array
US6948045B2 (en) Providing a register file memory with local addressing in a SIMD parallel processor
US5267210A (en) SRAM with flash clear for selectable I/OS
JP2007206849A (ja) 並列演算処理装置
US6128244A (en) Method and apparatus for accessing one of a plurality of memory units within an electronic memory device
US20020089891A1 (en) Random access memory with divided memory banks and data read/write architecture therefor
US6366526B2 (en) Static random access memory (SRAM) array central global decoder system and method
US5121354A (en) Random access memory with access on bit boundaries
US5588133A (en) Register block circuit for central processing unit of microcomputer
US20020085417A1 (en) Burst access memory with zero wait states
US6115294A (en) Method and apparatus for multi-bit register cell
JP2950427B2 (ja) レジスタバンク回路
JP4215795B2 (ja) ルックアップテーブルカスケード回路、ルックアップテーブルカスケードアレイ回路及びそのパイプライン制御方法
US20010028598A1 (en) Column decoder circuit for page reading of a semiconductor memory
US6628565B2 (en) Predecode column architecture and method
JP3240897B2 (ja) 半導体記憶装置
US6901490B2 (en) Read/modify/write registers
JP4116801B2 (ja) 半導体記憶装置
JPH05266652A (ja) パイプライン動作型メモリシステム
JPH10116226A (ja) 半導体記憶装置のアドレス整列装置
JP3154506B2 (ja) 半導体装置
KR19980069842A (ko) 동기형 반도체 기억 장치
JPH09231745A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100709

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100709

Year of fee payment: 11