JP3822687B2 - Data processing system - Google Patents

Data processing system

Info

Publication number
JP3822687B2
JP3822687B2 JP31323896A JP31323896A JP3822687B2 JP 3822687 B2 JP3822687 B2 JP 3822687B2 JP 31323896 A JP31323896 A JP 31323896A JP 31323896 A JP31323896 A JP 31323896A JP 3822687 B2 JP3822687 B2 JP 3822687B2
Authority
JP
Japan
Prior art keywords
address
memory
signal
data
supplied
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
JP31323896A
Other languages
Japanese (ja)
Other versions
JPH10154396A (en
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP31323896A priority Critical patent/JP3822687B2/en
Publication of JPH10154396A publication Critical patent/JPH10154396A/en
Application granted granted Critical
Publication of JP3822687B2 publication Critical patent/JP3822687B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、クロック同期型の半導体記憶装置、さらにはそれにおける機能拡張に係り、セット・アソシアティブ形式のキャッシュメモリのデータメモリ部と通常のランダムアクセスの双方に対応できる半導体記憶装置に関するものである。
【0002】
【従来の技術】
セット・アソシアティブ形式のキャッシュメモリは、ダイレクトマップに対して複数個のウェイを有する。したがって、データメモリ部はヒットに係るウェイの選択信号をキャッシュメモリ部から受け取って、ヒットに係るウェイのキャッシュエントリからデータを選択しなければならない。そのような選択機能は、汎用の単体メモリでは考慮されていない。マイクロプロセッサの外部に配置される2次キャッシュメモリのデータメモリ部を汎用のSRAMチップを用いて構成する場合には、データメモリ部をウェイ毎に別々のSRAMチップを割り当ててデータメモリ部を構成し、それらSRAMチップのデータ入出力端子をワイヤード・オア接続し、アドレスメモリ部からのウェイ選択信号をSRAMチップの出力イネーブル信号に対応させて、ウェイの選択を行うことができる。しかしながら、SRAMチップを複数個用いる構成では、キャッシュメモリに必要な記憶容量との関係で各ウェイに最適な記憶容量のSAMチップがない場合には、複数個のSRAMチップの一部の記憶領域が全く利用されず、実装面積を費やし、また、コストが上昇するという問題がある。
【0003】
【発明が解決しようとする課題】
そこで本発明者は、ウェイ選択にも適用可能なセレクタをSRAMチップに内蔵させることを検討した。しかしながら、ウェイ選択信号は、キャッシュメモリのアドレスメモリ部における連想検索の結果得られる信号であり、アドレスメモリ部やデータメモリ部へのインデックスアドレス信号の供給タイミングに比べて遅延される。したがって、単にセレクタを既存のSRAMチップに内蔵させるだけでは済まない。
【0004】
ここで、2次キャッシュメモリは1次キャッシュメモリに比べて記憶容量を大きくしなければならないという要求から、回路動作の高速性はある程度犠牲にならざるを得ない。それに加えて、1次キャッシュメモリは通常CPU(セントラル・プロセッシング・ユニット)と同一の半導体チップに形成されるのに対し、2次キャッシュメモリはCPUとは別チップに形成されることが多く、この点でも、2次キャッシュメモリはその高速動作の点で1次キャッシュメモリに比べて不利である。このため、2次キャッシュメモリにはCPUとのデータ転送レートを向上させるために様々な技術的工夫がされている。例えば、RISCアーキテクチャーのマイクロプロセッサ等で用いられている公知のパイプライン処理をSRAMに適用した、シンクロナスSRAM若しくはパイプラインバーストSRAMは、パイプラインを刻む複数のパイプラインラッチ回路をメモリチップ内部に有し、CPUとのデータ転送のスループットを向上させている。例えばアドレスバッファへのアドレス入力ラッチ、アドレスデコーダへのアドレス入力ラッチ、データ出力バッファへのデータ出力ラッチを想定したとき、各パイプラインラッチ回路がクロック信号サイクル毎にラッチ動作を行い、これに同期してリード動作が行われる場合、メモリにアドレスを与えてからそのアドレスのデータが出力されるまでにはクロック信号の2サイクルの期間を待たなければならないが、アクセスが連続される場合には、見掛け上、クロックサイクル毎にリードデータを得ることができる。
【0005】
2次キャッシュメモリには通常そのようなクロック同期型のSRAMが用いられ、マイクロプロセッサの動作基準クロック信号に同期動作される。このような事情の下で、前述のように2次キャッシュメモリのデータメモリ部に供給されるインデックスアドレス信号とウェイ選択信号という2種類のアドレス信号の供給タイミングが相違される場合、単にウェイ選択用のセレクタを汎用SRAMチップに搭載すれば済むものではないことが明らかにされた。そのようなアドレス供給タイミングの相違をはじめから考慮したキャッシュデータメモリ部専用のSRAMを新たに設計するとなれば、新たな開発のための工数、人員及びコストが強いられ、SRAMの品種も増え、在庫管理上も望ましくない。
【0006】
本発明の目的は、汎用のランダムアクセスとキャッシュデータメモリ部の双方の用途に対応できるクロック同期型の半導体記憶装置を提供することにある。
【0007】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【0008】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【0009】
すなわち、メモリアレイからメモリセルを選択するための第1のアドレスデコーダへのアドレス信号伝達経路に、クロック信号に同期動作されるパイプラインラッチ手段が配置されて成るクロック同期型の半導体記憶装置に、メモリアレイで選択されるメモリセルを更に選択するセレクタを設け、セレクタの選択動作を制御する第2のアドレスデコーダにアドレス信号を供給する経路には、バイパス機能付きのパイプラインラッチ手段を配置し、当該バイパス機能付きのパイプラインラッチ手段に対してラッチ動作させるか信号スルー動作をさせるかを指示する制御端子を設けるものである。
【0010】
この半導体記憶装置が通常のランダムアクセスメモリとして利用される場合、第1及び第2のアドレスデコーダには同期クロック信号に同期して並列的にアドレス信号が供給される。第2のアドレスデコーダによるセレクタの選択動作は、第1のアドレスデコーダによるメモリアレイからのメモリセル選択動作に同期して行われる。前記双方のパイプラインラッチ手段はそのようなタイミング的な同期を実現するために必要な直列ラッチ段数を有する。
【0011】
この半導体記憶装置がセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合、第1のアドレスデコーダにはインデックスアドレスが供給され、第2のアドレスデコーダにはキャッシュアドレスメモリ部からウェイ選択信号が供給される。ウェイ選択信号は、キャッシュアドレスメモリ部における連想検索の結果得られる信号であるから、インデックスアドレス信号の供給タイミングに対して同期クロック信号の単数若しくは複数サイクル分遅延される。前記バイパス機能付きパイプラインラッチ手段には、その遅延を取り戻すのに必要な期間だけ、ラッチ動作に代えて信号スルー動作を選択させる。その選択は、前記制御端子の状態によって指示される。その結果、ウェイ選択信号がインデックスアドレス信号より遅れて供給されても、その遅れを取り戻した所要のタイミングでデータを外部に出力することができる。
【0012】
これにより、汎用のランダムアクセスメモリとキャッシュデータメモリ部の双方の用途に対応できる。
【0013】
【発明の実施の形態】
図1には本発明に係る半導体集積回路の一例であるSRAM1のブロック図が示される。同図において2で示されるものはメモリアレイである。特にその詳細は図示を省略するが、メモリアレイ2は公知のスタティック型メモリセルがマトリクス配置され、メモリセルの選択端子は行毎に対応するワード線に接続され、メモリセルのデータ入出力端子は列毎に対応されるビット線に結合され、ビット線はカラムスイッチ回路を介してコモンデータ線に接続される。前記メモリセルからコモンデータ線に読出されたデータはセンスアンプで増幅され、セレクタ3に供給される。セレクタ3で選択されたデータはラッチ回路4にラッチされる。ラッチされたデータは図示を省略するデータ出力バッファを介してデータ入出力端子5から外部に出力される。外部からデータ入出力端子5に与えられた書き込みデータは、図示を省略するデータ入力バッファ及びラッチ回路7,8に取り込まれ、前記メモリアレイ2の図示を省略するカラムスイッチ回路を介して前記メモリアレイ2のコモンデータ線に与えられる。
【0014】
前記メモリアレイ2は、特に制限されないが、256K×18ビットの記憶容量を有する。メモリアレイ2はビット0〜ビット17の夫々に対応される18個のメモリマットMAT0〜MAT17に分けられ、各マットMAT0〜MAT17の記憶領域は夫々4個のユニットUNT0〜UNT3に分けられている。各メモリマットMAT0〜MAT17において、リード動作は4ビット単位で行われ、ライト動作は1ビット単位で行われる。即ち、読出し動作えは、各メモリマットMAT0〜MAT17の各ユニットUNT0〜UNT3から1ビットが選択される。前記図示を省略するカラムスイッチ回路によるビット線及びワード線の選択は、アドレスデコーダ8が行う。この例に従えば、アドレスデコーダ8は18ビットのアドレス信号が供給され、リード動作では、夫々のメモリマットMAT0〜MAT17の各ユニットUNT0〜UNT3から1ビットのメモリセルを選択する。セレクタ3は、各メモリマットMAT0〜MAT17に対し4ビットの中から一つのユニットの1ビットのメモリセルを選択する。その選択動作は2ビットのアドレス信号をデコードするアドレスデコーダ11によって行われる。ライト動作においてアドレスデコーダ8は、夫々のメモリマットMAT0〜MAT17から1ビットのメモリセルを選択する。アドレスデコーダ8によるそのような選択動作の切換えは、制御信号16によって指示される。
【0015】
図2には上記アドレスデコーダ8の選択動作の切換えのための論理構成の一例として、一つのメモリマットのメモリユニットUNT0〜UNT3に関する選択論理が概略的に示されている。図2において23A〜23Dは各メモリユニットUNT0〜UNT3における代表的に示された1本ビット線であり、各ビット線は読み出しカラムスイッチ21A〜21Dを介して読み出しコモンデータ線22A〜22Dに接続される。読み出しコモンデータ線22A〜22Dの一端は前記セレクタ3に至る。また各ビット線23A〜23Dは書き込みカラムスイッチ24A〜24Dを介して書き込みコモンデータ線25に接続される。書き込みコモンデータ線25は前記ラッチ回路8に至る。
【0016】
アンドゲート27A〜27Dは前記読み出しカラムスイッチ21A〜21Dの他端に接続された読出ドライバを構成し、信号16がハイレベルにされることを条件に読み出しコモンデータ線22A〜22Dを駆動可能にされる。アンドゲート26A〜26Dは前記書き込みカラムスイッチ24A〜24Dの選択端子に接続され、信号16がローレベルにされることを条件にビット線23A〜23Dの何れかを書き込みコモンデータ線25に接続可能にされる。
【0017】
アンドゲート20A〜20Dは、前記アンドゲート26A〜26Dと27A〜27Dの選択信号を出力する。それらアンドゲート20A〜20Dの一方の入力にはアドレス信号a0〜a15のデコード結果信号の内の1本の信号18が供給されている。この説明から明らかなようにビット線23A〜23Dは16ビットのアドレス信号a0〜a15の1本のデコード信号18によって選択されるビット線とされる。アンドゲート20A〜20Dの他方の入力にはオアゲート19A〜19Dの出力が与えられる。オアゲート19A〜19Dの一方の入力には2ビットのアドレス信号a16,a17のデコード結果信号17A〜17Dが供給される。デコード結果信号17A〜17Dはデコード結果信号18で選択される4本のビット線23A〜23Dから1本を選択する信号とみなされる。したがって、特に図示はしないが、アドレス信号a0〜a15の全てのデコード結果信号に対してデコード結果信号17A〜17Dは共通に利用される。オアゲート19A〜19Dの他方の入力には前記信号16が与えられる。信号16がハイレベルのとき(読み出し動作)は2ビットのアドレス信号a16,a17のデコード結果信号は実質的に無視され、各メモリユニットUNT0〜UNT3から1ビットのメモリセルが選択されてコモンデータ線22A〜22Dに接続される。前記信号16はリード動作に呼応してハイレベルにされる。2ビットのアドレス信号a16,a17のデコード結果信号17A〜17Dは信号16がローレベルのとき実質的な意味を持ち、それによって各メモリマットにおいてメモリユニットUNT0〜UNT3の中に1個のメモリユニットの1ビットのメモリセルが選択されてコモンデータ線25に接続される。前記信号16はライト動作に呼応してローレベルにされる。
【0018】
図1において、前記アドレスデコーダ8の前段には18ビットのラッチ回路9,10が直列配置され、前記アドレスデコーダ11の前段には2ビットのバイパス機能付きラッチ回路12が配置される。前記ラッチ回路12の入力は、ラッチ回路10の上位2ビットに接続される。ラッチ回路10にはアドレス入力端子13から図示を省略するアドレスバッファを通して18ビットのアドレス信号a0〜a17が供給される。
【0019】
前記ラッチ回路4,7,8,9,10,12はパイプラインラッチ回路として機能され、クロック信号ckw,ckに同期してラッチ動作を行う。それらラッチ回路は特に制限されないが、マスタ・スレーブのラッチ段を備えて構成される。
【0020】
図1において15で示されるものはタイミングタイミングコントローラであり、チップ選択信号CS、ライトイネーブル信号WE、アウトプットイネーブル信号OE等の外部制御信号、及び外部クロック信号CLKを受け、それによってSRAM内部の動作モード及び動作タイミングを制御する。
【0021】
チップ選択信号CSによってSRAMがチップ選択状態にされると、アドレス入力端子13からメモリアレイ2に至るまでのメモリセル選択系と、アドレスデコーダ11に至るまでのセレクタ選択系が活性化される。このときのラッチ回路9,10,12のラッチタイミングは外部クロック信号CLKに同期する内部クロック信号ckによって制御される。チップ選択状態においてアウトプットイネーブル信号によって読み出し動作が指示されると、ラッチ回路4の動作が選択される。ラッチ回路4のラッチ動作は内部クロック信号ckrによって制御され、このクロック信号ckrのクロックサイクルは前記内部クロック信号ckと同じである。リード動作において前記信号16はハイレベルにされる。一方、SRAMのチップ選択状態においてライトイネーブル信号WEによって書き込み動作が指示されるとラッチ回路7,8の動作が選択される。このラッチ回路7,8のラッチ動作は内部クロック信号ckwによって制御され、この内部クロック信号ckwはライトイネーブル信号WEが活性化されているとき前記内部クロック信号ckに同期して変化される。ライト動作において前記信号16はローレベルにされる。
【0022】
前記バイパス機能付きラッチ回路12は、信号ラッチ動作と信号スルー動作を選択できるようにされ、その選択は外部端子14に与えられるウェイモード信号WMDによって制御される。バイパス機能付きラッチ回路12は、ウェイモード信号WMDのハイレベルによって信号スルー動作を行い、ウェイモード信号WMDのロウレベルではクロック信号ckに同期したラッチ動作を行う。
【0023】
前記バイパス機能付きラッチ回路12の一例は図3に示される。バイパス機能付きラッチ回路12のマスタ段はクロックドインバータ120M,121M、インバータ122M,123M及びノアゲート124Mによって構成され、同様にスレーブ段はクロックドインバータ120S,121S、インバータ122S,123S及びノアゲート124Sによって構成される。クロックドインバータ120M,120Sは制御端子がローレベル(論理値“0”)にされることによって反転出力動作を行い、制御端子がハイレベル(論理値“1”)にされることによって高出力インピーダンス状態にされる。クロックドインバータ121M,121Sは上記とは逆に、制御端子がハイレベルにされることによって反転出力動作を行い、制御端子がローレベルにされることによって高出力インピーダンス状態にされる。前記ノアゲート124M,124Sの一方の入力端子にはウェイモード信号WMDは供給される。また、マスタ段に含まれるノアゲート124Mの他方の入力端子にはクロック信号ckの反転信号が、スレーブ段に含まれるノアゲート124Sの他方の入力端子にはクロック信号ckが供給される。
【0024】
図3に示されるバイパスラッチ回路12において、ウェイモード信号WDMがハイレベルのとき、双方のナンドゲート124M,124Sの出力はローレベルに固定される。その結果、クロックドインバータ120M,120Sは反転出力動作を行い、クロックドインバータ121M,121Sは高出力インピーダンス状態にされる結果、バイパス機能付きラッチ回路12は、クロック信号ckとは無関係に入力を出力にスルーで伝達する、スルー動作を行う。
【0025】
一方、図3に示されるバイパスラッチ回路12において、ウェイモード信号WDMがローレベルのとき、クロックドインバータ120M,121Mはその制御端子にクロック信号ckの反転信号が与えられて制御され、クロックドインバータ120S,121Sはその制御端子にクロック信号ckが与えられて制御され、その結果、クロック信号ckのハイレベルに同期してマスタ段はラッチ動作を行いスレーブ段はスルー動作を行い、また、クロック信号ckのローレベルに同期してマスタ段はラッチ動作を行いスレーブ段はスルー動作を行い、全体としてバイパス機能付きラッチ回路12はクロック信号ckに同期したラッチ動作を行う。
【0026】
このSRAM1が通常のランダムアクセスメモリとして利用される場合、ウェイモード信号WMDはローレベルに設定され、これによってラッチ回路12はクロック信号ckに同期してラッチ動作を行う。図4にはSRAM1が通常のランダムアクセスメモリとして利用される場合における読み出し動作タイミングの一例が示される。通常のランダムアクセスにおいて、前記アドレスデコーダ8,11に供給されるべきアドレス信号a0〜a17は並列的にアドレス入力端子13に供給される。アドレス入力端子13に供給されたアドレス信号a0〜a15がラッチ回路9のスレーブ段から出力されるタイミングと、アドレス入力端子13に供給されたアドレス信号a16,a17がラッチ回路12のスレーブ段から出力されるタイミングは一致され、メモリアレイ2におけるメモリセルの選択と、選択されたメモリセルに対するセレクタ3による選択は、同期的に行われ、セレクタ3で選択された18ビットがラッチ回路4にラッチされる。リード動作が連続されれば、D0,D1で例示されるように、読み出しデータはクロック信号ckの1サイクル毎に得られる。このランダムアクセス動作においてラッチ4,9,10,12の全てがパイプラインラッチとして機能される。
【0027】
SRAMがセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合、アドレス信号a0〜a15はキャッシュメモリにとってのインデックスアクセスとされ、アドレスデコーダ8に供給されることになる。このとき、アドレス信号a16〜a17は、キャッシュアドレスメモリ部からのウェイ選択信号とされ、アドレスデコーダ11に供給されることになる。図5にはSRAM1がセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合における読み出し動作タイミングの一例が示される。ウェイ選択信号は、キャッシュアドレスメモリ部における連想検索の結果得られる信号であり、インデックスアドレス信号の供給タイミングに対して例えばクロック信号CLKの1サイクル分遅延される。このとき、その遅れを取り戻すために、前記バイパス機能付きラッチ回路12は、スルー動作されればよい。このように、SRAMがセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合、ウェイモード信号WMDはハイレベルに設定され、これによってラッチ回路12はクロック信号ckに状態とは無関係に信号スルー動作を行う。この結果、アドレス入力端子13に供給されたアドレス信号a0〜a15(インデックスアドレス)がラッチ回路9のスレーブ段から出力されるタイミングと、アドレス入力端子13に供給されたアドレス信号a16,a17(ウェイ選択信号)がラッチ回路12のスレーブ段から出力されるタイミングは一致され、メモリアレイ2におけるメモリセルの選択と、選択されたメモリセルに対するセレクタ3による選択は、同期的に行われ、セレクタ3で選択された18ビットが、キャッシュヒットに係るウェイのデータとして外部に読出される。
【0028】
図6にはSRAM1の書き込み動作の一例タイミングチャートが示される。同図から明らかなように書き込み動作ではセレクタ3は利用されない。また、書き込み動作はクロック信号の2サイクル目で完了される。リード動作よりも1サイクル早いタイミングで書き込みが行われる。したがって、このSRAM1がキャッシュメモリとして利用される場合に、ライトアクセスにおけるキャッシュヒットしたときは、データメモリ部としてのSRAM1へのインデックスアドレス信号のの供給タイミングを適宜の外部回路を用いて1クロック遅らせるものと理解されたい。
【0029】
図7には上記SRAMを適用したデータ処理システムが示される。100で示されるものはマイクロプロセッサであり、このマイクロプロセッサ100に外部バス101を介して2次キャッシュメモリ102が接続されている。
【0030】
マイクロプロセッサ100は、特に制限されないが、32ビットRISC(Reduced Instruction Set Computer)アーキテクチャを有する。マイクロプロセッサ100は、浮動小数点ユニット103を有する。さらに、マイクロプロセッサ100は中央処理装置(CPU)104を有し、このCPU104は整数を処理する能力を持つ整数ユニットとされる。前記CPU104は内部バス105を介して前記浮動小数点ユニット103に結合されている。CPU104及び浮動小数点ユニット103は1次キャッシュメモリ106から命令及びデータをフェッチする。1次キャッシュメモリ106はキャッシュバス107を介してバスコントローラ108に接続される。1次キャッシュメモリ106におけるキャッシュミス等に起因する外部アクセスのための命令アドレスやデータアドレスは前記バスコントローラ108に与えられる。バスコントローラ108はそれら命令アドレス又はデータアドレスに従って、外部メモリなどをアクセスするために外部バスサイクルを起動する。
【0031】
外部バスサイクルが起動されると、2次キャッシュメモリ102が検索され、ヒットの場合には、2次キャッシュメモリ102からデータが読出され、或いは2次キャッシュメモリ102にデータが書込まれる。キャッシュミスの場合には、特に制限されないが、メインメモリなどから2次キャッシュメモリにキャッシュフィルが行われ、必要なデータがデータプロセッサに与えられ、或いはキャッシュフィルされたキャッシュエントリに書き込みデータがストアされる。
【0032】
特に制限されないが、図7において109で示されるものは、メインメモリであり、2次キャッシュメモリ102の後段で外部バス101に接続されている。このメインメモリ109として、例えば前記SRAM1を用いることができる。その場合、メインメモリ109は通常のランダムアクセスメモリとして利用されるから、ウェイモード信号WDMは、実装回路基板上でプルダウンなどの処理にてローレベルに固定される。
【0033】
図8には2次キャッシュメモリ102のデータメモリ部110とアドレスメモリ部111が示されている。2次キャッシュメモリ102は、特に制限されないが、複数個のウェイを有する公知のセットアソシアティブキャッシュメモリとしての構成を有する。図1で説明したSRAM1は2次キャッシュメモリ102のデータメモリ部110を構成するのに利用される。アドレスメモリ部111はキャッシュタグや有効ビット等を格納するフィールドを有し、データメモリ部110はそれに対応してキャッシュエントリを保有するフィールドを有する。バスコントローラ108による外部バスアクセスのためのアドレス信号は、タグアドレス112、インデックスアドレス113及びオフセット114から成る。アドレスメモリ部111とデータメモリ部110に対するインデックスはインデックスアドレス113で行われる。アドレスメモリ部111では、インデックスされたキャッシュタグとアドレスタグ112が比較される。比較動作はウェイ毎に行われる。データメモリ部110は、キャッシュヒットの場合におけるウェイ選択信号115、インデックスアドレス113、及びオフセット114によってアクセスされる。ウェイ選択信号115、インデックスアドレス113、及びオフセット114が図1のアドレス信号a0〜a17に対応される。データメモリ部110はそのアドレス信号によってアクセスされる。前記ウェイモード信号WMDは、特に制限されないが、実装回路基板上でプルアップ処理にてハイレベルに固定される。尚、図8においては、キャッシュフィル動作やタグアドレスの書き込みのためのアクセス経路は図示を省略してある。
【0034】
以上説明したSRAM1によれば、汎用のランダムアクセスとキャッシュデータメモリ部の双方の用途に対応できる。即ち、キャッシュデータメモリ部専用のSRAMを新たに開発することを要しない。
【0035】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。例えば、バイパス機能付きのパイプラインラッチ手段は1段のバイパスラッチ回路に限定されない。ウェー選択信号の供給タイミングが2クロックサイクル以上遅れる場合も予想されるときは、バイパスラッチ回路を2段以上設け、各段毎に、ラッチ動作と信号スルー動作を選する制御端子を設ければよい。また、メモリアレイやアドレスデコーダの構成は上記の例以外に種々変更することができる。
【0036】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【0037】
すなわち、メモリアレイで選択されるメモリセルを更に選択するセレクタを設け、セレクタの選択動作を制御するアドレスデコーダへのアドレス信号供給経路には、バイパス機能付きのパイプラインラッチ手段を配置し、当該バイパス機能付きのパイプラインラッチ手段に対してラッチ動作させるか信号スルー動作をさせるかを指示する制御端子を設けるから、この半導体記憶装置がセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合、ウェイ選択信号がインデックスアドレス信号の供給タイミングに対して遅延されても、その遅延を取り戻すのに必要な期間だけ、前記バイパス機能付きパイプラインラッチ手段をラッチ動作に代えて信号スルー動作させることにより、その遅れを取り戻した所要のタイミングでデータを外部に出力することができる。これにより、汎用のランダムアクセスメモリとキャッシュデータメモリ部の双方の用途に対応できる。
【図面の簡単な説明】
【図1】本発明に係る半導体集積回路の一例であるSRAMのブロック図である。
【図2】アドレスデコーダによるカラム選択のための論理構成の一例を示す論理回路図である。
【図3】バイパス機能付きラッチ回路の一例論理回路図である。
【図4】図1のSRAMが通常のランダムアクセスメモリとして利用される場合における読み出し動作タイミングの一例を示すタイミングチャートである。
【図5】図1のSRAMがセット・アソシアティブ・キャッシュメモリのデータメモリ部に適用される場合における読み出し動作タイミングの一例を示すタイミングチャートである。
【図6】図1のSRAMの書き込み動作の一例タイミングチャートである。
【図7】図1のSRAMを適用したデータ処理システムの一例ブロック図である。
【図8】図7の2次キャッシュメモリのデータメモリ部とアドレスメモリ部の構成を概略的に示すブロック図である。
【符号の説明】
1 SRAM
2 メモリアレイ
3 セレクタ
8,11 アドレスデコーダ
12 バイパス機能付きラッチ回路
4,9,10 ラッチ回路
WMD ウェイモード信号
14 ウェイモード信号の入力端子
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a clock-synchronous semiconductor memory device, and further to a function expansion in the clock-synchronous semiconductor memory device, and more particularly to a semiconductor memory device that can handle both a data memory portion of a set-associative cache memory and normal random access.
[0002]
[Prior art]
A set associative cache memory has a plurality of ways for a direct map. Therefore, the data memory unit must receive the way selection signal related to the hit from the cache memory unit and select data from the cache entry of the way related to the hit. Such a selection function is not considered in a general-purpose single memory. When the data memory unit of the secondary cache memory arranged outside the microprocessor is configured using a general-purpose SRAM chip, the data memory unit is configured by assigning a separate SRAM chip for each way. The data input / output terminals of these SRAM chips can be wired or connected, and the way selection signal from the address memory unit can be made to correspond to the output enable signal of the SRAM chip to select the way. However, in the configuration using a plurality of SRAM chips, if there is no SAM chip having the optimum storage capacity for each way in relation to the storage capacity required for the cache memory, a part of the storage area of the plurality of SRAM chips is not stored. There is a problem that it is not used at all and consumes a mounting area and the cost increases.
[0003]
[Problems to be solved by the invention]
In view of this, the present inventor studied to incorporate a selector applicable to way selection into the SRAM chip. However, the way selection signal is a signal obtained as a result of the associative search in the address memory unit of the cache memory, and is delayed compared to the supply timing of the index address signal to the address memory unit and the data memory unit. Therefore, it is not necessary to simply incorporate the selector in the existing SRAM chip.
[0004]
Here, since the secondary cache memory needs to have a larger storage capacity than the primary cache memory, the high speed of the circuit operation must be sacrificed to some extent. In addition, the primary cache memory is usually formed on the same semiconductor chip as the CPU (Central Processing Unit), whereas the secondary cache memory is often formed on a separate chip from the CPU. In this respect, the secondary cache memory is disadvantageous compared to the primary cache memory in terms of its high-speed operation. For this reason, various technical devices have been devised in the secondary cache memory in order to improve the data transfer rate with the CPU. For example, a synchronous SRAM or pipeline burst SRAM in which a well-known pipeline process used in a RISC architecture microprocessor or the like is applied to an SRAM is provided with a plurality of pipeline latch circuits for engraving a pipeline inside a memory chip. And the throughput of data transfer with the CPU is improved. For example, assuming an address input latch to the address buffer, an address input latch to the address decoder, and a data output latch to the data output buffer, each pipeline latch circuit performs a latch operation every clock signal cycle and synchronizes with this. When a read operation is performed, a period of two cycles of the clock signal must be waited after the address is given to the memory until the data at that address is output. In addition, read data can be obtained every clock cycle.
[0005]
Such a clock synchronous SRAM is usually used for the secondary cache memory, and is operated in synchronization with the operation reference clock signal of the microprocessor. Under these circumstances, when the supply timings of the two types of address signals, the index address signal and the way selection signal, supplied to the data memory unit of the secondary cache memory are different as described above, the way selection is simply performed. It has been clarified that it is not sufficient to mount this selector on a general-purpose SRAM chip. If a new SRAM dedicated to the cache data memory unit considering such a difference in address supply timing from the beginning is newly designed, man-hours, personnel, and costs for new development will be forced, the number of SRAM types will increase, and inventory will increase. It is not desirable for management.
[0006]
An object of the present invention is to provide a clock synchronous semiconductor memory device that can be used for both general-purpose random access and cache data memory units.
[0007]
The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
[0008]
[Means for Solving the Problems]
The outline of typical ones of the inventions disclosed in the present application will be briefly described as follows.
[0009]
That is, in a clock synchronous semiconductor memory device in which pipeline latch means operated synchronously with a clock signal is arranged in an address signal transmission path to a first address decoder for selecting a memory cell from a memory array, A selector for further selecting a memory cell selected in the memory array is provided, and a pipeline latch means with a bypass function is arranged in a path for supplying an address signal to the second address decoder for controlling the selection operation of the selector, A control terminal is provided for instructing whether to perform the latch operation or the signal through operation for the pipeline latch means with the bypass function.
[0010]
When this semiconductor memory device is used as a normal random access memory, an address signal is supplied to the first and second address decoders in parallel in synchronization with a synchronous clock signal. The selector selecting operation by the second address decoder is performed in synchronization with the memory cell selecting operation from the memory array by the first address decoder. Both pipeline latch means have the number of serial latch stages necessary to realize such timing synchronization.
[0011]
When this semiconductor memory device is applied to a data memory unit of a set associative cache memory, an index address is supplied to the first address decoder, and a way selection signal is supplied from the cache address memory unit to the second address decoder. Supplied. Since the way selection signal is a signal obtained as a result of the associative search in the cache address memory unit, it is delayed by one or more cycles of the synchronous clock signal with respect to the supply timing of the index address signal. The pipeline latch means with a bypass function selects the signal through operation instead of the latch operation only for a period necessary to recover the delay. The selection is instructed by the state of the control terminal. As a result, even if the way selection signal is supplied later than the index address signal, the data can be output to the outside at the required timing to recover the delay.
[0012]
Thereby, it can respond to the use of both a general purpose random access memory and a cache data memory part.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a block diagram of an SRAM 1 which is an example of a semiconductor integrated circuit according to the present invention. In the figure, reference numeral 2 denotes a memory array. Although not shown in detail, the memory array 2 includes known static memory cells arranged in a matrix, the selection terminals of the memory cells are connected to the corresponding word lines for each row, and the data input / output terminals of the memory cells are Each column is coupled to a corresponding bit line, and the bit line is connected to a common data line via a column switch circuit. Data read from the memory cell to the common data line is amplified by a sense amplifier and supplied to the selector 3. The data selected by the selector 3 is latched by the latch circuit 4. The latched data is output from the data input / output terminal 5 through a data output buffer (not shown). Write data applied to the data input / output terminal 5 from the outside is taken into a data input buffer and latch circuits 7 and 8 (not shown), and the memory array is connected to the memory array 2 via a column switch circuit (not shown). 2 common data lines.
[0014]
The memory array 2 has a storage capacity of 256K × 18 bits, although not particularly limited. The memory array 2 is divided into 18 memory mats MAT0 to MAT17 corresponding to the respective bits 0 to 17, and the storage areas of the respective mats MAT0 to MAT17 are divided into four units UNT0 to UNT3, respectively. In each of the memory mats MAT0 to MAT17, the read operation is performed in units of 4 bits, and the write operation is performed in units of 1 bit. That is, for the read operation, one bit is selected from each unit UNT0 to UNT3 of each memory mat MAT0 to MAT17. Selection of bit lines and word lines by a column switch circuit (not shown) is performed by the address decoder 8. According to this example, the address decoder 8 is supplied with an 18-bit address signal, and in a read operation, a 1-bit memory cell is selected from each of the units UNT0 to UNT3 of the respective memory mats MAT0 to MAT17. The selector 3 selects a 1-bit memory cell of one unit from 4 bits for each of the memory mats MAT0 to MAT17. The selection operation is performed by an address decoder 11 that decodes a 2-bit address signal. In the write operation, the address decoder 8 selects a 1-bit memory cell from each of the memory mats MAT0 to MAT17. Switching of such a selection operation by the address decoder 8 is instructed by a control signal 16.
[0015]
FIG. 2 schematically shows selection logic relating to the memory units UNT0 to UNT3 of one memory mat as an example of a logical configuration for switching the selection operation of the address decoder 8. In FIG. 2, reference numerals 23A to 23D denote one bit line representatively shown in each of the memory units UNT0 to UNT3. Each bit line is connected to the read common data lines 22A to 22D via the read column switches 21A to 21D. The One end of the read common data lines 22 </ b> A to 22 </ b> D reaches the selector 3. The bit lines 23A to 23D are connected to the write common data line 25 via the write column switches 24A to 24D. The write common data line 25 reaches the latch circuit 8.
[0016]
The AND gates 27A to 27D constitute a read driver connected to the other ends of the read column switches 21A to 21D, and the read common data lines 22A to 22D can be driven on condition that the signal 16 is set to the high level. The The AND gates 26A to 26D are connected to selection terminals of the write column switches 24A to 24D so that any of the bit lines 23A to 23D can be connected to the write common data line 25 on condition that the signal 16 is set to the low level. Is done.
[0017]
The AND gates 20A to 20D output selection signals for the AND gates 26A to 26D and 27A to 27D. One of the decoding result signals of the address signals a0 to a15 is supplied to one input of the AND gates 20A to 20D. As is apparent from this description, the bit lines 23A to 23D are bit lines selected by one decode signal 18 of 16-bit address signals a0 to a15. Outputs of the OR gates 19A to 19D are given to the other inputs of the AND gates 20A to 20D. Decoding result signals 17A to 17D of 2-bit address signals a16 and a17 are supplied to one input of the OR gates 19A to 19D. The decode result signals 17A to 17D are regarded as signals for selecting one of the four bit lines 23A to 23D selected by the decode result signal 18. Therefore, although not particularly shown, the decode result signals 17A to 17D are used in common for all the decode result signals of the address signals a0 to a15. The signal 16 is given to the other inputs of the OR gates 19A to 19D. When the signal 16 is at a high level (read operation), the decoding result signals of the 2-bit address signals a16 and a17 are substantially ignored, and a 1-bit memory cell is selected from each of the memory units UNT0 to UNT3 and the common data line 22A to 22D. The signal 16 is set to a high level in response to a read operation. The decoding result signals 17A to 17D of the 2-bit address signals a16 and a17 have a substantial meaning when the signal 16 is at a low level, so that one memory unit of the memory units UNT0 to UNT3 is stored in each memory mat. A 1-bit memory cell is selected and connected to the common data line 25. The signal 16 is set to a low level in response to a write operation.
[0018]
In FIG. 1, 18-bit latch circuits 9 and 10 are arranged in series before the address decoder 8, and a 2-bit latch circuit 12 with a bypass function is arranged before the address decoder 11. The input of the latch circuit 12 is connected to the upper 2 bits of the latch circuit 10. The latch circuit 10 is supplied with 18-bit address signals a0 to a17 from an address input terminal 13 through an address buffer (not shown).
[0019]
The latch circuits 4, 7, 8, 9, 10, and 12 function as pipeline latch circuits and perform a latch operation in synchronization with the clock signals ckw and ck. These latch circuits are not particularly limited, and are configured to include a master / slave latch stage.
[0020]
1 is a timing timing controller which receives external control signals such as a chip select signal CS, a write enable signal WE, and an output enable signal OE, and an external clock signal CLK, and thereby operates in the SRAM. Control mode and operation timing.
[0021]
When the SRAM is brought into the chip selection state by the chip selection signal CS, the memory cell selection system from the address input terminal 13 to the memory array 2 and the selector selection system from the address decoder 11 are activated. The latch timing of the latch circuits 9, 10, and 12 at this time is controlled by the internal clock signal ck synchronized with the external clock signal CLK. When a read operation is instructed by the output enable signal in the chip selection state, the operation of the latch circuit 4 is selected. The latch operation of the latch circuit 4 is controlled by the internal clock signal ckr, and the clock cycle of the clock signal ckr is the same as the internal clock signal ck. In the read operation, the signal 16 is set to a high level. On the other hand, when a write operation is instructed by the write enable signal WE in the SRAM chip selection state, the operation of the latch circuits 7 and 8 is selected. The latch operations of the latch circuits 7 and 8 are controlled by an internal clock signal ckw, and the internal clock signal ckw is changed in synchronization with the internal clock signal ck when the write enable signal WE is activated. In the write operation, the signal 16 is set to a low level.
[0022]
The bypass function-equipped latch circuit 12 can select a signal latch operation and a signal through operation, and the selection is controlled by a way mode signal WMD applied to the external terminal 14. The bypass function-equipped latch circuit 12 performs a signal through operation according to the high level of the way mode signal WMD, and performs a latch operation in synchronization with the clock signal ck when the way mode signal WMD is at the low level.
[0023]
An example of the latch circuit 12 with the bypass function is shown in FIG. The master stage of the latch circuit 12 with the bypass function is configured by clocked inverters 120M and 121M, inverters 122M and 123M, and a NOR gate 124M. Similarly, the slave stage is configured by clocked inverters 120S and 121S, inverters 122S and 123S, and a NOR gate 124S. The The clocked inverters 120M and 120S perform an inverted output operation when the control terminal is set to a low level (logic value “0”), and a high output impedance when the control terminal is set to a high level (logic value “1”). Put into a state. Contrary to the above, the clocked inverters 121M and 121S perform an inverting output operation when the control terminal is set to the high level, and are set to the high output impedance state when the control terminal is set to the low level. A way mode signal WMD is supplied to one input terminal of the NOR gates 124M and 124S. Further, the inverted signal of the clock signal ck is supplied to the other input terminal of the NOR gate 124M included in the master stage, and the clock signal ck is supplied to the other input terminal of the NOR gate 124S included in the slave stage.
[0024]
In the bypass latch circuit 12 shown in FIG. 3, when the way mode signal WDM is at a high level, the outputs of both NAND gates 124M and 124S are fixed at a low level. As a result, the clocked inverters 120M and 120S perform an inverting output operation, and the clocked inverters 121M and 121S are brought into a high output impedance state. As a result, the latch circuit 12 with a bypass function outputs an input regardless of the clock signal ck. A through operation is performed in which the signal is transmitted through.
[0025]
On the other hand, in the bypass latch circuit 12 shown in FIG. 3, when the way mode signal WDM is at a low level, the clocked inverters 120M and 121M are controlled by applying an inverted signal of the clock signal ck to their control terminals. 120S and 121S are controlled by applying a clock signal ck to their control terminals. As a result, the master stage performs a latch operation and the slave stage performs a through operation in synchronization with the high level of the clock signal ck. In synchronization with the low level of ck, the master stage performs a latch operation, the slave stage performs a through operation, and the latch circuit 12 with a bypass function as a whole performs a latch operation in synchronization with the clock signal ck.
[0026]
When the SRAM 1 is used as a normal random access memory, the way mode signal WMD is set to a low level, whereby the latch circuit 12 performs a latch operation in synchronization with the clock signal ck. FIG. 4 shows an example of the read operation timing when the SRAM 1 is used as a normal random access memory. In normal random access, address signals a0 to a17 to be supplied to the address decoders 8 and 11 are supplied to the address input terminal 13 in parallel. The timing at which the address signals a0 to a15 supplied to the address input terminal 13 are output from the slave stage of the latch circuit 9, and the address signals a16 and a17 supplied to the address input terminal 13 are output from the slave stage of the latch circuit 12. The memory cell selection in the memory array 2 and the selection by the selector 3 for the selected memory cell are performed synchronously, and the 18 bits selected by the selector 3 are latched by the latch circuit 4. . If the read operation is continued, read data is obtained for each cycle of the clock signal ck, as exemplified by D0 and D1. In this random access operation, all of the latches 4, 9, 10, and 12 function as pipeline latches.
[0027]
When the SRAM is applied to the data memory unit of the set associative cache memory, the address signals a0 to a15 are index access for the cache memory and are supplied to the address decoder 8. At this time, the address signals a16 to a17 are used as way selection signals from the cache address memory unit and are supplied to the address decoder 11. FIG. 5 shows an example of the read operation timing when the SRAM 1 is applied to the data memory unit of the set associative cache memory. The way selection signal is a signal obtained as a result of the associative search in the cache address memory unit, and is delayed by, for example, one cycle of the clock signal CLK with respect to the supply timing of the index address signal. At this time, in order to recover the delay, the latch circuit 12 with a bypass function may be operated through. As described above, when the SRAM is applied to the data memory portion of the set associative cache memory, the way mode signal WMD is set to the high level, thereby causing the latch circuit 12 to pass through the clock signal ck regardless of the state. Perform the action. As a result, the timing at which the address signals a0 to a15 (index address) supplied to the address input terminal 13 are output from the slave stage of the latch circuit 9, and the address signals a16 and a17 (way selection) supplied to the address input terminal 13 are obtained. Signal) is outputted from the slave stage of the latch circuit 12, and the selection of the memory cell in the memory array 2 and the selection by the selector 3 for the selected memory cell are performed synchronously, and the selection is made by the selector 3. The 18 bits thus read are read out as data of the way related to the cache hit.
[0028]
FIG. 6 shows an example timing chart of the write operation of the SRAM 1. As can be seen from the figure, the selector 3 is not used in the write operation. The write operation is completed in the second cycle of the clock signal. Writing is performed at a timing one cycle earlier than the read operation. Therefore, when the SRAM 1 is used as a cache memory, if a cache hit occurs in a write access, the supply timing of the index address signal to the SRAM 1 as the data memory unit is delayed by one clock using an appropriate external circuit. Please understand.
[0029]
FIG. 7 shows a data processing system to which the SRAM is applied. What is indicated by 100 is a microprocessor, and a secondary cache memory 102 is connected to the microprocessor 100 via an external bus 101.
[0030]
Although not particularly limited, the microprocessor 100 has a 32-bit RISC (Reduced Instruction Set Computer) architecture. The microprocessor 100 has a floating point unit 103. Further, the microprocessor 100 has a central processing unit (CPU) 104, which is an integer unit capable of processing integers. The CPU 104 is coupled to the floating point unit 103 via an internal bus 105. The CPU 104 and the floating point unit 103 fetch instructions and data from the primary cache memory 106. The primary cache memory 106 is connected to the bus controller 108 via the cache bus 107. An instruction address and data address for external access caused by a cache miss or the like in the primary cache memory 106 are given to the bus controller 108. The bus controller 108 starts an external bus cycle in order to access an external memory or the like according to the instruction address or data address.
[0031]
When the external bus cycle is activated, the secondary cache memory 102 is searched, and in the case of a hit, data is read from the secondary cache memory 102 or data is written to the secondary cache memory 102. In the case of a cache miss, there is no particular limitation, but the cache fill is performed from the main memory or the like to the secondary cache memory, the necessary data is given to the data processor, or the write data is stored in the cache filled cache entry. The
[0032]
Although not particularly limited, what is indicated by 109 in FIG. 7 is a main memory, which is connected to the external bus 101 at the subsequent stage of the secondary cache memory 102. As the main memory 109, for example, the SRAM 1 can be used. In this case, since the main memory 109 is used as a normal random access memory, the way mode signal WDM is fixed to a low level by a process such as pull-down on the mounting circuit board.
[0033]
FIG. 8 shows the data memory unit 110 and the address memory unit 111 of the secondary cache memory 102. The secondary cache memory 102 is not particularly limited, but has a configuration as a known set associative cache memory having a plurality of ways. The SRAM 1 described with reference to FIG. 1 is used to configure the data memory unit 110 of the secondary cache memory 102. The address memory unit 111 has a field for storing a cache tag, a valid bit, and the like, and the data memory unit 110 has a field for holding a cache entry correspondingly. An address signal for external bus access by the bus controller 108 includes a tag address 112, an index address 113, and an offset 114. An index for the address memory unit 111 and the data memory unit 110 is performed by an index address 113. In the address memory unit 111, the indexed cache tag and the address tag 112 are compared. The comparison operation is performed for each way. The data memory unit 110 is accessed by a way selection signal 115, an index address 113, and an offset 114 in the case of a cache hit. The way selection signal 115, the index address 113, and the offset 114 correspond to the address signals a0 to a17 in FIG. The data memory unit 110 is accessed by the address signal. The way mode signal WMD is not particularly limited, but is fixed at a high level by pull-up processing on the mounting circuit board. In FIG. 8, an access path for cache fill operation and tag address writing is not shown.
[0034]
The SRAM 1 described above can be used for both general-purpose random access and the cache data memory unit. That is, it is not necessary to newly develop an SRAM dedicated to the cache data memory unit.
[0035]
Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof. For example, the pipeline latch means with a bypass function is not limited to a one-stage bypass latch circuit. When the supply timing of the way selection signal is expected to be delayed by two clock cycles or more, two or more bypass latch circuits may be provided, and a control terminal for selecting a latch operation and a signal through operation may be provided for each stage. . Further, the configurations of the memory array and the address decoder can be variously changed in addition to the above examples.
[0036]
【The invention's effect】
The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
[0037]
That is, a selector for further selecting a memory cell selected in the memory array is provided, and a pipeline latch means with a bypass function is arranged in the address signal supply path to the address decoder for controlling the selection operation of the selector. When the semiconductor memory device is applied to the data memory unit of the set associative cache memory because a control terminal is provided for instructing whether to perform the latch operation or the signal through operation for the pipeline latch means with a function. Even if the way selection signal is delayed with respect to the supply timing of the index address signal, the pipeline latch means with bypass function is operated as a signal through operation instead of the latch operation only for a period necessary to recover the delay, At the required timing to recover the delay It can be output over data to the outside. Thereby, it can respond to the use of both a general purpose random access memory and a cache data memory part.
[Brief description of the drawings]
FIG. 1 is a block diagram of an SRAM as an example of a semiconductor integrated circuit according to the present invention.
FIG. 2 is a logic circuit diagram showing an example of a logic configuration for column selection by an address decoder.
FIG. 3 is a logic circuit diagram of an example of a latch circuit with a bypass function.
4 is a timing chart showing an example of a read operation timing when the SRAM of FIG. 1 is used as a normal random access memory. FIG.
FIG. 5 is a timing chart showing an example of read operation timing when the SRAM of FIG. 1 is applied to a data memory unit of a set associative cache memory;
6 is a timing chart illustrating an example of a write operation of the SRAM in FIG. 1;
7 is a block diagram showing an example of a data processing system to which the SRAM of FIG. 1 is applied.
8 is a block diagram schematically showing a configuration of a data memory unit and an address memory unit of the secondary cache memory of FIG. 7;
[Explanation of symbols]
1 SRAM
2 Memory array
3 Selector
8,11 Address decoder
12 Latch circuit with bypass function
4, 9, 10 Latch circuit
WMD Way mode signal
14-way mode signal input terminal

Claims (1)

マイクロプロセッサと、前記マイクロプロセッサにバスを介して接続されm個のウェイを有するセット・アソシアティブ形式のキャッシュメモリとを含み、前記キャッシュメモリは、アドレスメモリ部とデータメモリ部を有するデータ処理システムであって、
前記マイクロプロセッサのアクセスアドレスの一部がインデックスアドレスとして前記アドレスメモリ部と前記データメモリ部に共通に供給され、前記アドレスメモリ部はインデックスアドレスを用いて連想検索を行い、検索ヒットに係るウェイ選択信号を前記データメモリ部に与え
記データメモリ部は、データ読み出し動作においてメモリアレイからm×nビットのメモリセルを選択するための第1のアドレスデコーダへのアドレス信号伝達経路に、外部クロック信号に同期動作されるパイプラインラッチ手段が配置され、メモリアレイで選択されるm×nビットのメモリセルの中からnビットのメモリセルを更に選択するセレクタを設け、セレクタの選択動作を制御する第2のアドレスデコーダへアドレス信号を供給する経路には、バイパス機能付きのパイプラインラッチ手段を配置し、当該バイパス機能付きのパイプラインラッチ手段に対してラッチ動作させるか信号スルー動作をさせるかを指示する制御端子を設けて成り、
前記データメモリ部に供給される前記外部クロック信号は前記マイクロプロセッサの動作基準クロック信号に同期するクロック信号とされ、前記インデックスアドレスは前記第1のアドレスデコーダに与えられ、前記ウェイ選択信号は前記第2のアドレスデコーダに与えられ、前記制御端子は前記バイパス機能付きのパイプラインラッチ手段に信号スルー動作を選択させるレベルに固定されるものであることを特徴とするデータ処理システム。
A microprocessor, which is connected via a bus to a microprocessor and a cache memory of the set associative type with m-way, the cache memory, the data processing system to have the address memory section and a data memory section There,
The part of the access address of the microprocessor is supplied in common to the data memory unit and the address memory section as an index address, the address memory section performs an associative search using the index address, the way selection signal according to the search hit Is provided to the data memory unit ,
Before Symbol data memory unit, the first address signal transmission path to the address decoder for selecting the m × n bits of the memory cell from the memory array in a data read operation, the pipeline latches operated in sync with the external clock signal And a selector that further selects an n-bit memory cell from among m × n-bit memory cells selected by the memory array, and an address signal is sent to a second address decoder that controls the selection operation of the selector. In the supply path, a pipeline latch means with a bypass function is arranged, and a control terminal for instructing whether to perform a latch operation or a signal through operation for the pipeline latch means with a bypass function is provided.
Wherein said external clock signal supplied to the data memory unit is a clock signal synchronized with the operation reference clock signal of the microprocessor, the index address is supplied to the first address decoder, the way selection signal the first The data processing system is characterized in that the control terminal is fixed to a level which is supplied to the address decoder of No. 2 and causes the pipeline latch means with bypass function to select a signal through operation.
JP31323896A 1996-11-25 1996-11-25 Data processing system Expired - Fee Related JP3822687B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31323896A JP3822687B2 (en) 1996-11-25 1996-11-25 Data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31323896A JP3822687B2 (en) 1996-11-25 1996-11-25 Data processing system

Publications (2)

Publication Number Publication Date
JPH10154396A JPH10154396A (en) 1998-06-09
JP3822687B2 true JP3822687B2 (en) 2006-09-20

Family

ID=18038787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31323896A Expired - Fee Related JP3822687B2 (en) 1996-11-25 1996-11-25 Data processing system

Country Status (1)

Country Link
JP (1) JP3822687B2 (en)

Also Published As

Publication number Publication date
JPH10154396A (en) 1998-06-09

Similar Documents

Publication Publication Date Title
US7302545B2 (en) Method and system for fast data access using a memory array
JP2505661B2 (en) Hierarchical integrated circuit cache memory
US5522064A (en) Data processing apparatus for dynamically setting timings in a dynamic memory system
US6714477B2 (en) Semiconductor integrated circuit device with memory blocks and a write buffer capable of storing write data from an external interface
KR940008140B1 (en) Semiconductor memory device having cash memory
US6175893B1 (en) High bandwidth code/data access using slow memory
EP1163598B1 (en) Microprocessing device having programmable wait states
US20010026497A1 (en) Method and system for accessing rows in multiple memory banks within an integrated circuit
US5784331A (en) Multiple access memory device
US5329489A (en) DRAM having exclusively enabled column buffer blocks
JPH03286495A (en) Semiconductor device with built-in cache
KR100637947B1 (en) Sequential ninbble burst ordering for data
EP1238339B1 (en) Interface for a memory unit
JPS62194563A (en) Buffer storage device
KR100317542B1 (en) Semiconductor memory device
US5014188A (en) Cache memory controllor associated with microprocessor
US5359557A (en) Dual-port array with storage redundancy having a cross-write operation
US6055606A (en) Writeback cache cell with a dual ported dirty bit cell and method for operating such a cache cell
JP3822687B2 (en) Data processing system
KR19980034727A (en) Prefetch method in memory devices and memory structure using the same
JPH04229488A (en) Virtual multi-port ram structure
US20040008552A1 (en) Cache memory and control method thereof
US6175518B1 (en) Remote register hierarchy accessible using a serial data line
US6754134B1 (en) Semiconductor storage device having multiple interrupt feature for continuous burst read and write operation
JPH0588964A (en) Data storage system having intrinsic burst detection

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060613

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060623

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees