JP3786521B2 - 半導体集積回路及びデータ処理システム - Google Patents
半導体集積回路及びデータ処理システム Download PDFInfo
- Publication number
- JP3786521B2 JP3786521B2 JP18577898A JP18577898A JP3786521B2 JP 3786521 B2 JP3786521 B2 JP 3786521B2 JP 18577898 A JP18577898 A JP 18577898A JP 18577898 A JP18577898 A JP 18577898A JP 3786521 B2 JP3786521 B2 JP 3786521B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- access
- memory
- data
- bank
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0215—Addressing or allocation; Relocation with look ahead addressing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4091—Sense or sense/refresh amplifiers, or associated sense circuitry, e.g. for coupled bit-line precharging, equalising or isolating
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4093—Input/output [I/O] data interface arrangements, e.g. data buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/06—Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
- G11C7/065—Differential amplifiers of latching type
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/304—In main memory subsystem
- G06F2212/3042—In main memory subsystem being part of a memory device, e.g. cache DRAM
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/10—Aspects relating to interfaces of memory device to external buses
- G11C2207/104—Embedded memory devices, e.g. memories with a processing device on the same die or ASIC memory designs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2245—Memory devices with an internal cache buffer
Description
【発明の属する技術分野】
本発明は、メモリを集積した半導体集積回路、更にはCPU(中央処理装置)のような論理回路と共に大容量メモリを1チップに集積した半導体集積回路に係り、例えば、CPU及び1次キャッシュメモリと共に同一チップに搭載された混載DRAMに適用して有効な技術に関する。
【0002】
【従来の技術】
今日、大容量メモリと大規模な論理回路とを1チップに集積化した半導体集積回路が提供されている。このような半導体集積回路では、メモリと論理回路との間のデータスループットを上げるために、メモリと論理回路とを接続するバスを128ビットのように増やすことが容易であり、チップ外部の入出力ピンをドライブする場合に比べてデータ入出力にかかる電力消費を抑えて高速にデータ転送が行えると言う利点が有る。
【0003】
前記大容量メモリとしてマルチバンクDRAM(Dynamic Random Access Memory)を用いることができる。マルチバンクDRAMでは、メモリバンク毎にセンスアンプが設けられ、ワード線選択動作で一旦センスアンプにラッチしたデータを、カラムスイッチの切り替えだけで順次高速に出力することができる。したがって、同一ページ(同一ワード線アドレス)内の連続アドレスのアクセスであれば比較的高速化することが可能である。しかしながら、異なるページがアクセスされる(ページミスが発生する)と、ビット線プリチャージ等によってアクセスが遅くなる。
【0004】
前記マルチバンクDRAMは更に、一定条件下でページミスを隠すことも可能である。即ち、あるメモリバンクにリード又はライトコマンドを発行して動作させているとき、これとは異なる他のメモリバンクを次に利用するならば、当該他のメモリバンクに予め活性化コマンドを与えてワード線選択動作を先行させることができる。そうするためには、当然CPUがそのようなアドレス順でアクセスを行わなければならないが、これをCPUの動作プログラム等で全て規定することは実質的に不可能である。
【0005】
また、半導体集積回路の中には、前記大容量メモリとCPU等の大規模論理回路に加えてキャッシュメモリを混載したものがある。これは、大容量メモリとCPUとの動作速度の違いをキャッシュメモリによって緩和することにより、CPUによる高速データ処理をねらったものである。即ち、大容量メモリが保有するデータの内、CPUが最近使った一部のデータ並びにその近傍のデータを高速なキャッシュメモリに保持させる。しかしながら、CPUによるメモリアクセスがキャッシュメモリにヒットしている間はよいが、一旦ミスが起きると、大容量メモリへのアクセスが行なわれるため、これによってCPUのデータ処理速度が制限される。
【0006】
尚、マルチバンクDRAMについて記載された文献の例として特開平10−65124号公報がある。
【0007】
【発明が解決しようとする課題】
上述のように、マルチバンクDRAMであってもアクセスアドレスの順番によっては必ずページミスを隠せるとは限らず、マルチバンクDRAMに対してキャッシュメモリを設けてもキャッシュミスを生ずれば事情は全く同じである。そこで、マルチバンクを持つメモリのアクセス速度を更に改善する必要性が本発明者によって見出された。
【0008】
本発明の第1の目的は、マルチバンクを持つメモリのファーストアクセス、即ち、その前のアクセスとワード線が相違されるリードアクセスを高速化することにある。
【0009】
本発明の第2の目的は、マルチバンクを持つメモリに対してキャッシュメモリが設けられている場合に、当該キャッシュメモリのキャッシュミスに起因してキャッシュエントリのリプレースとライトバックとを行うとき、並列動作可能なマルチバンクを持つメモリの動作効率を低下させないようにすることである。すなわち、ライトバックすべきキャッシュラインのデータをマルチバンクを持つメモリに書込む動作と、前記と同一キャッシュラインに書き込むべき新たなキャッシュエントリデータをマルチバンクを持つメモリから読み出す動作との間では、アドレス信号のうちインデックスアドレスに相当するアドレス情報が同一とされる。メモリバンク選択用アドレス情報にインデックスアドレスの情報がマッピングされていると、相互にインデックスアドレスが同一のアドレスに配置されているデータは同一メモリバンクに配置されることになるから、キャッシュラインをリプレースするためのリード動作とライトバックのためのライト動作を同一のメモリバンクに対して行わなければならず、異なるメモリバンクを用いて双方の動作を効率的に行うことはできない。
【0010】
本発明の第3の目的は、マルチバンクを持つメモリマクロを複数個混載した半導体集積回路においてメモリマクロが競合しない複数のアクセス要求に対しては一方のアクセスが他方のアクセスをブロックしないようにしたノンブロッキングマルチアクセスを可能にすることである。
【0011】
本発明の第4の目的は、キャッシュラインをワード線単位とするマルチバンクを持つDRAMに対するデータの書換えを効率化することにある。即ち、キャッシュラインが書換え単位であるとき、通常のDRAMと同様に、ワード線選択動作によってビット線に読み出された記憶情報がセンスアンプにラッチされるのを待って書き込みデータを印加する非破壊書込みを行う必然性のないことが本発明者によって見出された。
【0012】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【0013】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【0014】
《1》次アドレス先行発行
マルチバンク構成のメモリマクロを用いて各メモリバンクのセンスアンプにデータを保持させ、アクセスがその保持データにヒットするときは当該センスアンプがラッチするデータを出力させることによってメモリマクロのファーストアクセスを高速化することができる。即ち、各メモリバンクをセンスアンプキャッシュとして機能させる。このようなセンスアンプキャッシュのヒット率(センスアンプのデータに対するヒット率)を更に向上させるために、メモリバンクをアクセスした後に、その次のアドレス(所定のオフセットを加算したアドレス)を先行発行して、当該先行発行アドレスのデータを別メモリバンクのセンスアンプに先読みさせる。先行発行の対象を次アドレスとするのは、CPUの動作プログラムや一群の処理データはリニアアドレスにマッピングされるのを基本とするという経験則に基づく。
【0015】
上記次アドレス先行発行を実現する半導体集積回路は、メモリマクロ(5Ma〜5Md)とアクセス制御回路(4)を有する。前記メモリマクロは、バンクアドレスが夫々割当てられた複数個のメモリバンク(Bank1〜Bank4)を有し、各メモリバンクはロウアドレス信号(R−ADD)によってワード線(WL)を選択し、選択されたワード線のメモリセルからビット線(BL)に読み出された記憶情報をラッチ可能なセンスアンプ(53)を有し、カラムアドレス信号(Ys0〜Ys7)に従ってビット線を選択し、選択したビット線をメモリマクロのデータ線(GBL)に導通させるものである。前記アクセス制御回路は、メモリバンク毎に動作させることができるコマンド及びアドレス信号の出力手段(44)と、既に前記センスアンプにラッチされているデータを後のアクセス要求に応答して前記データ線に出力可能にするヒット判定手段(43)と、外部からのアクセスアドレスに対するメモリマクロのアクセス制御の次に、当該外部からのアクセスアドレスに対して所定のオフセットを持つアクセスアドレスを先行発行して当該先行発行されたアドレスのデータをメモリマクロのメモリセルからセンスアンプに先読みさせるアドレス先行発行手段(42)とを有する。
【0016】
先行発行アドレスはその直前のアクセス対象とは異なるメモリバンクのアドレスでなければならない。同一メモリバンクであれば、先のアクセスに対してセンスアンプキャッシュの機能が利用できなくなる。そのためには、前記外部からのアクセスアドレスに対して前記所定のオフセットを持つアクセスアドレスは、前記外部からのアクセスアドレスが指定するメモリバンクとは異なるメモリバンクを指定するアドレスとされる。観点を変えれば、前記出力手段が出力するアドレス信号はカラムアドレス信号(C0〜C2)の上位側にバンクアドレス信号(B0〜B3)がマッピングされ、バンクアドレス信号の上位側にロウアドレス信号(R0〜R7)がマッピングされていて、前記所定のオフセットは、カラムアドレス信号のビット数をiとするとき、カラムアドレス信号の最下位ビットから2iとされる。
【0017】
ここで、前記センスアンプキャッシュ機能のためのヒット判定手段は、外部から供給されるアクセスアドレスと前記センスアンプが保有する記憶情報のアクセスアドレスとの一致、不一致を検出する比較手段(432A,432B)を有するように構成することができる。前記コマンド及びアドレス信号の出力手段は、前記比較手段による不一致検出に応答して、外部からのアクセスアドレスで指定されるメモリマクロにメモリバンク、ワード線及びビット線の選択動作を指示し、前記比較手段による一致検出に応答して、外部からのアクセスアドレスで指定されるメモリマクロにワード線選択動作を抑止してメモリバンク及びビット線選択動作を指示するように構成することができる。
【0018】
《2》2次キャッシュのアドレスアライメント調整
前記アクセス制御回路(4)にCPU(1)を接続し、前記CPU及びアクセス制御回路にセットアソシアティブ形式の1次キャッシュメモリ(2)を接続するとき、前記アクセス制御回路及び前記メモリマクロを、そのセンスアンプキャッシュ機能による2次キャッシュメモリ(6)として位置付けることができる。それら全体はマルチチップのデータ処理システムとして構成してもよい。前記1次キャッシュメモリのキャッシュミスに起因してミスに係るキャッシュラインのリプレースと共に当該キャッシュラインのライトバックが必要なときがある。このとき、1次キャッシュメモリのキャッシュミスに係るキャッシュラインのデータを2次キャッシュメモリにライトバックする動作と、ミスに係るキャッシュラインとリプレースすべきキャッシュエントリデータを2次キャッシュメモリから読み出す動作との間では、1次キャッシュメモリに対するインデックスアドレスは同一とされる。2次キャッシュメモリのメモリバンクアドレス情報と1次キャッシュメモリのインデックスアドレス情報とが同じであれば、相互にインデックスアドレスが同一のアドレスのデータは2次キャッシュメモリでは同一メモリバンクに配置されることになるから、キャッシュラインをリプレースするためのリード動作とライトバックのためのライト動作を同一のメモリバンクに対して行わなければならず、異なるメモリバンクを用いて双方の動作を効率的に行うことはできない。
【0019】
そこで、前記アクセス制御回路に、外部から供給されるアクセスアドレス信号のビット配列を変更してメモリマクロに出力するアドレスアライメント調整手段(41)を設ける。例えばアドレスアライメント調整手段は、前記CPUから供給されるアドレス信号のうち1次キャッシュメモリのインデックスアドレスに割り付けられる複数アドレスビットの配列とは異なる配列を前記メモリバンクのバンクアドレスに割当てる。これにより、1次キャッシュメモリのキャッシュミスによりキャッシュエントリのリプレースを行うとき、マルチバンクを持つメモリの動作効率を低下させないようにすることができる。
【0020】
観点を変えれば、前記アドレスアライメント調整手段は、前記CPUから供給されるアドレス信号のうち少なくとも前記1次キャッシュメモリのインデックスアドレスとして用いられるアドレス情報の全部又は一部の配列を変更して前記メモリバンクのバンクアドレスに割当てるものである。例えば、前記アドレスアライメント調整手段は、CPUから供給されるアドレス信号のうち前記1次キャッシュメモリのインデックスアドレスとして用いられるアドレス情報の一部とタグアドレスとして用いられるアドレス情報の一部とを入れ替えて前記メモリバンクのバンクアドレスに割当てる。
【0021】
前記アドレスアライメント調整手段によるアドレスアライメントのその他の例として、CPUから供給されるアドレス信号のうち1次キャッシュメモリのタグアドレスの少なくとも下位2ビットを前記メモリバンクを指定するアドレスとメモリマクロを指定するアドレスに割当てるか或いはそのどちらか一方に割当てることができる。或いは、前記CPUから供給されるアドレス信号のうち1次キャッシュメモリのインデックスアドレスの少なくとも下位2ビットを前記メモリバンクを指定するアドレスとメモリマクロを指定するアドレスに割当てるか或いはそのどちらか一方に割当てることができる。更には、前記CPUから供給されるアドレス信号のうち1次キャッシュメモリのインデックスアドレスの少なくとも下位2ビットをカラムアドレス信号に割当てることも可能である。
【0022】
前記アドレスアライメント調整手段として、アドレス情報の配列変更を可変とするスイッチ回路(411)と、前記スイッチ回路のスイッチ状態を決定するための制御情報をラッチ可能な制御レジスタ(410)とを含め、前記制御レジスタを前記CPUによってアクセス可能に構成することができる。前記アドレスアライメントの相違は、連続アドレスに対して同一メモリバンクが指定される頻度の相違として現れる。キャッシュラインのリプレースにおいて相互に接近しているインデックスアドレスで同一メモリバンクが選択される頻度が多ければ、センスアンプキャッシュ機能によるヒット率は相互に直近のアドレスでアクセスされた情報程低下し、逆に、キャッシュラインのリプレースにおいて相互に接近しているインデックスアドレスで異なるメモリバンクが選択される頻度が多ければ、センスアンプキャッシュ機能によるヒット率は相互に直近のアドレスでアクセスされた情報程高くされる。どちらを選択する方が有利かはデータや命令のアドレスマッピングに依存し、適用システムに応じて選択することが可能になる。
【0023】
構成の簡素化を第1とするならば、前記アドレスアライメント調整手段として、メタルオプションによってアドレスアライメントを固定化した配線を採用することができる。
【0024】
《3》DRAMマクロから成る2次キャッシュメモリの破壊書込み
通常DRAMではデータの書き込みを行う場合には一旦メモリセルからセンスアンプにデータを読み出してからその一部を書きかえる。即ち、非は破壊書き込みを行う。DRAMマクロのセンスアンプキャッシュ機能を2次キャッシュメモリとして用いる場合、データの管理はワード線単位で行われるから、非破壊書き込みを行う必然性はない。そこで、書き込みに当たって、センスアンプによる読み出し動作を行わず、ワード線の立ち上げと同時、若しくはその直後に、書き込みアンプからビット線に書き込みデータの転送を開始して1ワード線分のデータを高速に書き込む。
【0025】
上記破壊書き込みを実現するキャッシュメモリは、DRAMマクロ(5Ma〜5Md)とアクセス制御回路(4)を有する。前記DRAMマクロは、バンクアドレスが夫々割当てられた複数個のメモリバンク(Bank1〜Bank4)を有し、各メモリバンクはロウアドレス信号(R−ADD)によってワード線(WL)を選択し、選択されたワード線のメモリセルからビット線に読み出された記憶情報をラッチ可能なセンスアンプ(53)を有し、カラムアドレス信号(C−ADD)に従ってビット線(BL)を選択し、選択したビット線をDRAMマクロのデータ線(GBL)に導通させるものである。前記アクセス制御回路は、メモリバンク毎に動作させることができるコマンド及びアドレス信号の出力手段(44)と、既に前記センスアンプにラッチされているデータを後のアクセス要求に応答して前記データ線に出力可能にするヒット判定手段(43)を有する。前記メモリバンクは、ワード線選択から第1のタイミングでセンスアンプを活性化する第1動作モードと、ワード線選択から前記第1のタイミングよりも遅い第2タイミングでセンスアンプを活性化する第2動作モードとを有する。前記第1動作モードは破壊書込み、前記第2動作モードはリフレッシュモードである。前記キャッシュメモリを2次キャッシュメモリとし、それに対する1次キャッシュメモリとCPUを用いてデータ処理システムを構成することがでできる。
【0026】
《4》非競合メモリマクロの並列アクセス
マルチバンクを持つメモリマクロを複数個混載した半導体集積回路においてメモリマクロが競合しない複数のアクセス要求に対しては一方のアクセスが他方のアクセスをブロックしないようにしたノンブロッキングマルチアクセスを可能にする。これを実現するメモリ(6)は、第1アクセスポート(PT1)と第2アクセスポート(PT2)を持つアクセス制御回路(4)と、前記アクセス制御回路にデータ線(9DBa〜9DBd)を介して夫々接続された複数個のメモリマクロ(5Ma〜5Md)とを有する。前記メモリマクロは、バンクアドレスが夫々割当てられた複数個のメモリバンク(Bank1〜Bank4)を有し、各メモリバンクはロウアドレス信号(R−ADD)によってワード線(WL)を選択し、選択されたワード線のメモリセルからビット線(BL)に読み出された記憶情報をラッチ可能なセンスアンプ(53)を有し、カラムアドレス信号(C−ADD)に従ってビット線を選択し、選択したビット線をメモリマクロの前記データ線(GBL)に導通させるものである。前記アクセス制御回路は、第1アクセスポートを介してアクセスするメモリマクロと第2アクセスポートを介してアクセスするメモリマクロを夫々選択可能なセレクタ(450R,451R,452W,453W)と、第1アクセスポートを介するアクセスと第2アクセスポートを介するアクセスが異なるメモリマクロを用いるアクセスであるとき双方のアクセスポートからの並列アクセスを許容する優先アクセス判定手段(40)と、アクセスすべきメモリマクロに対してメモリバンク毎に動作させることができるコマンド及びアドレス信号の出力手段(44)と、前記センスアンプにラッチされているデータを後のアクセス要求に応答してデータ線に出力可能にするヒット判定手段(43)とを有する。
【0027】
競合メモリマクロの優先制御のために、前記優先アクセス判定手段は、第1アクセスポートを介するアクセスと第2アクセスポートを介するアクセスとが同一のメモリマクロを用いるアクセスであるとき、予め決められた優先度の高い方のアクセスポートの動作を優先させるように構成することができる。
【0028】
また、前記第1アクセスポート及び前記第2アクセスポートのどちらか一方又はその両方はSRAMインタフェース機能を有することができる。アドレス入力からデータ出力までのレイテンシはアクセスの状況に応じて変動する。これに対処するには、レイテンシを固定にしたインタフェースに比べ、アドレス入力からデータ出力までの間ウェイト信号などを出力することができるSRAMインタフェースを前記第1アクセスポート、第2アクセスポートに採用した方が簡単である。
【0029】
前記メモリ(6)を用いたデータ処理システムは、当該メモリ(6)と、前記メモリの第1アクセスポートに接続された第1アドレスバス(6AB)及び第1データバス(10DB)と、前記メモリの第2アクセスポートに接続された第2アドレスバス(11AB)及び第2データバス(11DB)と、前記第1アドレスバス及び第1データバスに接続されたCPU(1)と、前記第2アドレスバス及び第2データバスに接続されたバスインタフェース回路(3)とを有する。
【0030】
また、前記メモリを用いたデータ処理システムは、前記メモリ(6)と、前記メモリの第1アクセスポートに接続された第1アドレスバス(6AB)及び第1データバス(10D)と、前記メモリの第2アクセスポートに接続された第2アドレスバス(11AB)及び第2データバス(11DB)と、前記第1アドレスバス及び第1データバスに接続されたCPU(1)及び1次キャッシュメモリ(2)と、前記第2アドレスバス及び第2データバスに接続されたバスマスタ(7)とを有し、前記メモリは前記1次キャッシュメモリに対して2次キャッシュメモリとされる。
【0031】
【発明の実施の形態】
《システムLSI》
図1には本発明を適用した半導体集積回路の一例であるCPU/DRAM混載LSI(システムLSIとも称する)が示される。同図に示されるシステムLSIは、特に制限されないが、単結晶シリコンのような1チップに、大規模論理回路の一例であるCPU1、1次キャッシュメモリ2、外部バスインタフェース回路3、アクセスオプティマイザ4、及び大容量メモリの一例である複数個のDRAMマクロ(マルチバンクDRAM)5Ma〜5MdがCMOS(Complementary Metal Oxide Semiconductor)製造技術によって集積されている。前記DRAMマクロ5Ma〜5Mdは、グローバルビット線を共有する複数個のDRAMバンク(メモリバンク)を夫々有するマルチバンクDRAMによって構成され、個々のDRAMバンクはセンスアンプをキャッシュとして用いるセンスアンプキャッシュ機能を有し、センスアンプのデータにヒットしたアクセスに対してはワード線選択動作を行うことなくデータを高速に出力することができる。センスアンプキャッシュのヒット判定及びDRAMマクロ5Ma〜5Mdの制御は前記アクセスオプティマイザ4が行う。
【0032】
前記CPU1は、特に制限されないが、所謂32ビットCPUとされ、データの演算処理単位を原則32ビットとする。また、CPU1は、特に制限されないが、32ビットのアドレス信号によって4ギガバイトのアドレス空間を管理することができる。
【0033】
前記CPU1と1次キャッシュメモリ2はそれぞれ32ビットの内部データバス6DBと内部アドレスバス6ABによって接続され、1次キャッシュメモリ2と外部バスインタフェース回路3とは夫々32ビットの内部データバス7DB及び内部アドレスバス7ABによって接続される。外部バスインタフェース回路3は夫々32ビットの外部データバス8DB及び外部アドレスバス8ABを介して外部とインタフェースされる。尚、夫々の制御信号バスは図示を省略してある。
【0034】
前記DRAMマクロ5Ma〜5MdはCPU1のアドレス空間にマッピングされているが、そのセンスアンプキャッシュ機能により、2次キャッシュメモリとして利用される。DRAMマクロ5Ma〜5Mdは、夫々128ビットのメモリデータバス9DBa〜9DBdを介してアクセスオプティマイザ4とデータの入出力を行い、アクセスオプティマイザ4からバス9ACBを介してアドレス信号及びコマンド等が供給される。
【0035】
前記アクセオプティマイザ4は第1アクセスポートPT1を介してCPU1及び1次キャッシュメモリ2とインタフェースされる。更にアクセスオプティマイザ4は、外部バスインタフェース回路3を介してシステムLSIの外部とインタフェースされる第2アクセスポートPT2を有する。第1アクセスポートPT1は前記アドレスバス6Aを経由してCPU1からのアドレス信号を入力し、1次キャッシュメモリ2との間では128ビットのデータバス10DBを介してデータの入出力を行う。第2アクセスポートPT2は32ビットのアドレスバス11AB及びデータバス11DBを介して前記外部バスインタフェース回路3に接続される。
【0036】
システムLSIにおいて、CPU1がアドレスバス6ABにアドレス信号を出力してリードアクセスを行うと、それに応答して1次キャッシュメモリ2がヒット判定などのキャッシュメモリ動作を開始する。これに並行してアクセスオプティマイザ4もセンスアンプキャッシュのヒット判定などを開始する。1次キャッシュメモリ2はSRAM(Static Random Access Memory)から成る小容量高速メモリであり、DRAMマクロ5Ma〜5Mdはそれに比べて大容量であってもアクセス速度の低速なメモリとされる。従って、キャッシュヒットの判定は常に1次キャッシュメモリ2が先行する。1次キャッシュメモリ2がキャッシュヒットであれば、アクセスオプティマイザ4によるDRAMマクロ5Ma〜5Mdからのリードデータの出力は抑止され、必要なデータは1次キャッシュメモリ2からデータバス6DBを経由してCPU1に与えられる。1次キャッシュメモリ2がキャッシュミスのとき、必要なデータはDRAMマクロ5Ma〜5Mdからデータバス10DB及び1次キャッシュメモリ2を経由してCPU1に与えられる。このとき、DRAMマクロ5Ma〜5Mdから1次キャッシュメモリ2に与えられるデータは128ビットであり、1次キャッシュメモリ2はアドレス信号の下位側を用いて32ビットを切り出し、これをCPU1に与える。1次キャッシュメモリ2はこれと共に、ミスにかかるキャッシュラインのフィルを行うために、当該キャッシュラインに前記128ビットのデータを書き込む。このとき、当該キャッシュラインがライトバックすべき有効なデータを保有しているときはキャッシュフィルに先立って、当該キャッシュラインのデータをDRAMマクロ5Ma〜5Mdの対応アドレスに書き戻す動作を行う。
【0037】
CPU1によるライトアクセスの場合はDRAMマクロ5Ma〜5Mdのセンスアンプキャッシュ機能は利用されない。1次キャッシュメモリ2がキャッシュヒットであれば当該キャッシュメモリ2に書き込みが行われ、キャッシュミスであればDRAMマクロ5Ma〜5Mdの対応アドレスに書き込みが行われる。DRAMマクロ5Ma〜5Mdへの書き込みはバス10DBを介して128ビット単位で複数単位まとめて行われる。
【0038】
システムLSIに混載したDRAMマクロ5Ma〜5MdとLSI外部とのデータ転送は外部バスインタフェース回路3とバス11DB,11ABを介して行われる。このときのアクセス制御はLSIの外部に配置された図示を省略するDMAC(Direct Memory Access Controller)などで行うことができる。
【0039】
上記システムLSIでは、大規模論理回路であるCPU1と大容量メモリであるDRAMマクロ5Ma〜5Mdとの間にキャッシュメモリ2を配置して大容量メモリ5Ma〜5MdとCPU1との動作速度の違いをキャッシュメモリ2によって緩和することにより、CPU1による高速データ処理を実現している。更に、DRAMマクロ5Ma〜5Mdと1次キャッシュメモリ2との間のデータスループットを上げるために、両者を接続するデータバス10DBを128ビットのように増やし、高速データ転送を実現している。
【0040】
《DRAMマクロ》
図2には前記DRAMマクロ5Maの一例が示される。図2において1個のDRAMマクロ5Maは例えば4個のDRAMバンクBank1〜Bank4を有する。個々のDRAMバンクBank1〜Bank4は、メモリセルアレイ50、ロウ・カラムデコーダ51、カラム選択回路52、センスアンプアレイ53、及びタイミングジェネレータ54を有する。メモリセルアレイ50は、マトリクス配置された多数のダイナミック型メモリセルを有し、メモリセルの選択端子がワード線WLに、メモリセルのデータ入出力端子がローカルビット線BLに接続されている。各ローカルビット線BLは全部で1024ビット分ある。ローカルビット線BLの各ビットに対応してセンスアンプが設けられている。それらセンスアンプ全体をセンスアンプアレイ53と総称する。カラムスイッチ回路52は、1024ビットのローカルビット線BLから128ビット分のローカルビット線BLをカラムアドレス信号に従って選択する。カラムスイッチ回路52で選択される128ビット分のローカルビット線は128ビット分のグローバルビット線GBLに導通される。ワード線選択信号とカラムスイッチ回路の選択信号は前記ロウ・カラムデコーダ51で生成される。128ビット分のグローバルビット線GBLは各ビット毎に設けられたメインアンプを介して前記データバス9DBaに接続する。それらメインアンプをメインアンプアレイ55と総称する。
【0041】
各DRAMバンクBank1〜Bank4には、アクセスオプティマイザ4からアドレス・コマンドバス9ACBを介して、バンク選択信号B−ADD、ロウアドレス信号R−ADD、カラムアドレス信号C−ADD、カラムコマンドCC、ロウコマンドCR、及びライトイネーブル信号WE等が供給される。
【0042】
特に制限されないが、前記バンク選択信号B−ADD以外は各DRAMバンクBank1〜Bank4に共通の信号線を介して供給される。前記バンク選択信号B−ADDは、2ビットのバンクアドレス信号のデコード信号であり、各DRAMバンクBank12〜Bank4に固有の選択信号である。従って、2ビットのバンクアドレス信号に対して1個のDRAMバンクが選択される。DRAMバンクBank12〜Bank4は対応するバンク選択信号によって選択されることにより動作可能にされる。動作可能にされたDRAMバンクにおいては、その他の入力信号R−ADD、C−ADD、CC、RC、WE等が有意とされる。
【0043】
タイミングジェネレータ54は、バンク選択信号B−ADDによって選択されることにより、ロウコマンドCRやカラムコマンドCCを受付可能にされる。ロウコマンドCRは汎用DRAMのRAS(ロウ・アドレス・ストローブ)信号と同様の機能を有し、それがイネーブルにされると、ロウアドレス信号R−ADDを取り込み、これをデコードしてワード線選択動作を行い、これによってビット線に読み出されたワード線1本分のメモリセルのデータをセンスアンプアレイ53のセンスアンプにラッチさせる。前記カラムコマンドCCは汎用DRAMのCAS(カラム・アドレス・ストローブ)信号と同様の機能を有し、それがイネーブルにされると、カラムアドレス信号C−ADDを取り込み、これをデコードしてカラムスイッチアレイ52によるビット線選択動作を行い、これによって選択された128ビット分のローカルビット線BLがグローバルビット線GBLに導通される。タイミングジェネレータ54は、特に制限されないが、ロウコマンドCRによるロウアドレス信号の取り込みと一緒にライトイネーブル信号WEを取り込み、それによってリード動作とライト動作の内部シーケンスを決定する。
【0044】
DRAMマクロ5Maにおいて、あるDRAMバンクでカラムアクセス動作が行われているとき、別のDRAMバンクを選択してロウコマンドを発行してロウアクセス動作を並行させることができる。これにより、先のカラムアクセスが終了されると、これに並行してロウアクセスが行なわれているDRAMバンクで即座にカラムアクセスを行うことができ、見掛け上ページミスを隠すことができる。
【0045】
その他のDRAMマクロ5Mb〜5Mdも上記DRAMマクロ5Maと同様に構成されている。
【0046】
図3にはDRAMバンクとグローバルビット線との接続構成例が示される。1対の相補ビット線BL<0,0>,BL<0,0>に関し夫々代表的に示されたM1,M2はカラムスイッチMOSトランジスタ、M3,M4はプリチャージMOSトランジスタ、M5はイコライズMOSトランジスタである。MOSトランジスタM6〜M9で構成されたスタティックラッチ形態の回路はセンスアンプであり、pチャンネルMOSトランジスタM7,M9のコモンソースには電源電圧のような高電位側動作電源φPが供給され、nチャンネルMOSトランジスタM6,M8のコモンソースには回路の接地電圧のような低電位側動作電源φNが供給される。メモリセルはnチャンネル選択MOSトランジスタM10とキャパシタCsとの直列回路から構成された1トランジスタ形式である。選択MOSトランジスタM10のゲートにはワード線WLが接続されている。HVCはプリチャージ電位であり、例えば電源電圧と回路の接地電圧との中間の電圧とされる。φPCはプリチャージ信号であり、ハイレベルにされることにより、相補ビット線をイコライズすると共にプリチャージ電圧HVPを相補ビット線に供給する。
【0047】
図示はしないが、他の相補ビット線の構成も、相補ビット線BL<0,0>,BLB<0,0>に関する上記構成と基本的に同じである。特に制限されないが、カラムアドレス信号は3ビットであり、そのデコード信号であるカラム選択信号はYs0〜Ys7の8本である。1対のグローバルビット線GLB0,GBLB0には、カラム選択信号Ys0〜Ys7によってスイッチ制御される8対のカラムスイッチMOSトランジスタM1,M2を介して8対の相補ビット線BL<0,0>,BL<0,0>〜BL<0,7>,BL<0,7>が接続される。このようにして、合計1024(128×8)本の相補ビット線BL<0,0>,BL<0,0>〜BL<127,7>,BL<127,7>が8対単位で順次128対のグローバルビット線GBL0,GBLB0〜GBL127,GBLB127に接続されている。従って、カラムアドレス信号C−ADDのデコード結果にしたがって、カラム選択信号はYs0〜Ys7の内の何れか1本の信号が選択レベルであるハイレベルにされ、これによって128対の相補ビット線が128対のグローバルビット線GBL0,GBLB0〜GBL127,GBLB127に導通される。
【0048】
《アクセスオプティマイザ》
図4には前記アクセスオプティマイザの一例が示される。アクセスオプティマイザ4は、優先アクセス判定回路40、アドレスアライメント調整回路41、アドレス先行発行回路42、ヒット判定回路43、アドレス/コマンド発行回路44、データバッファ45、及び制御回路46を有する。
【0049】
前記データバッファ回路45は、データバッファと共に、データバス10DBをデータバス9DBa〜9DBdの何れに接続するか、また、データバス11DBをデータバス9DBa〜9DBdの何れに接続するかを個別に選択可能なセレクタ等を有する。
【0050】
前記優先アクセス判定回路40は、第1アクセスポートPT1を介するアクセスと第2アクセスポートPT2を介するアクセスが異なるDRAMマクロを用いるアクセスであるとき双方のアクセスポートからの並列アクセスを許容し、また、第1アクセスポートPT1を介するアクセスと第2アクセスポートPT2を介するアクセスとが同一のDRAMマクロを用いるアクセスであるとき、予め決められた優先度の高い方のアクセスポートの動作を優先させる制御を行う。
【0051】
アドレス/コマンド発行回路44は、DRAMバンク毎に動作させることができるコマンド及びアドレス信号をアドレスコマンドバス9ACBに出力する回路である。即ち、前記バンク選択信号B−ADD、ロウアドレス信号R−ADD、カラムアドレス信号C−ADD、ロウコマンドCR、カラムコマンドCC、ライトイネーブル信号WEなどを出力する。
【0052】
前記アドレスアライメント調整回路41は、アクセスオプティマイザ4の外部から供給されて優先アクセス判定を経たアクセスアドレス信号のビット配列を変更して、前記アドレス/コマンド発行回路44を介してDRAMマクロ5Ma〜5Mdに供給可能にする回路である。
【0053】
前記アドレス先行発行回路42は、外部からのアクセスアドレスに対するDRAMマクロのアクセス制御の次に、当該外部からのアクセスアドレスに対して所定のオフセットを持つアクセスアドレスを先行発行し、前記アドレス/コマンド発行回路44を介して当該先行発行されたアドレスのデータをDRAMマクロのメモリセルからセンスアンプに先読可能にする。
【0054】
ヒット判定回路43は既に前記センスアンプアレイ53にラッチされているデータに後のアクセス要求がヒットしているか否かを判定する回路である。換言すれば、センスアンプキャッシュを実現するためのヒット判定手段であり、直前のアクセスアドレスを保持しており、これが今回のアクセスアドレスと同一ワード線に関するものか、或いは、先行発行されたアドレスが今回のアクセスアドレスと同一ワード線に関するものかを判定する。同一ワード線に関するものであるとの判定結果はセンスアンプキャッシュのヒット状態であり、その場合にはアドレス/コマンド発行回路44にロウコマンドCRの発行を抑止させ、即座にカラムコマンドCCを発行させて、既にセンスアンプアレイにラッチされているデータを読み出し可能にする。前記制御回路46はアクセスオプティマイザ4全体の制御を司る。
【0055】
上記アクセスオプティマイザ4は、▲1▼次アドレス先行発行によるセンスアンプキャッシュのヒット率向上、▲2▼セットアソシアティブ形式の1次キャッシュメモリのキャッシュミスに起因してキャッシュエントリのリプレースを行うとき、マルチバンクDRAMの動作効率を低下させないこと、▲3▼CPUと外部とからのDRAMマクロに対するアクセス要求が競合しない複数のアクセス要求に対して一方のアクセスが他方のアクセスをブロックしないようにしたノンブロッキングマルチアクセスを可能にすることを実現する。更にDRAMバンクBank1〜Bank4は、▲4▼ワード線毎のメモリセル群をキャッシュラインとしてセンスアンプキャッシュを利用するDRAMマクロに対するデータの書換えを効率化するために破壊書込みを行う。▲1▼〜▲4▼の内容について以下に詳述する。
【0056】
《次アドレス先行発行によるセンスアンプキャッシュのヒット率向上》
図5には前記1次キャッシュメモリ2の基本的な構成の一例が示される。1次キャッシュメモリ2は 特に制限されないが、セットアソシアティブ形式とされ、4個のウェイWAY0〜WAY3を有する。各ウェイWAY0〜WAY3は、特に制限されないが、最大256個のキャッシュラインを構成するためのメモリセルアレイを有し、このメモリセルアレイはアドレスアレイ20とデータアレイ21から構成される。一つのキャッシュラインは、物理ページ番号等のアドレスタグATAGを保有したキャッシュタグCTAG、有効ビットV、図示を省略するダーティービット及びそれに対応される16バイトのデータLW0〜LW3を含む。キャッシュタグCTAG、有効ビットV及びダーティービットはアドレスアレイ20に、データLW0〜LW3はデータアレイ21に格納される。有効ビットVはキャッシュラインに有効なデータが含まれているかを示し、論理値“1”で有効、論理値“0”で無効を意味する。ダーティービットはキャッシュメモリ2がライトバックモードで利用されるときに用いられ、ライトバックモードにおいて書込みが発生したとき、論理値“1”にされる。このダーティービットによって対応するエントリのデータと外部メモリ(5Ma〜5Md)のデータとの不一致を知ることができる。このダーティービットはパワーオンリセットで論理値“0”に初期化される。
【0057】
前記CPU1が出力するアドレス信号(CPU1が仮想アドレスをサポートする場合にはアドレス信号は物理アドレス信号であり、そうでない場合には論理アドレス信号である)は、前述の通りA0〜A31の32ビットであり、バイトアドレスとされる。特に制限されないが、A21〜A31はアドレスタグATAGとみなされる。A4〜A11までの8ビットは、各ウェイからキャッシュラインを選択するためのインデックスアドレスIndexとみなされる。図5にはアドレスアレイ20とデータアレイ21のアドレスデコーダは図示を省略しているが、双方のアドレスデコーダにはインデックスアドレスIndexが供給され、これに対応するキャッシュラインが選択される。
【0058】
インデックスアドレスIndexで選択された(インデックスされた)各ウェイWAT0〜WAY3のキャッシュラインのキャッシュタグCTAGは、比較器(CMP)22〜25によって、そのときのアクセスアドレスに含まれるアドレスタグATAGと比較される。キャッシュタグCTAGと物理ページ番号のようなアドレスタグATAGが一致し、有効ビットVが論理値“1”のとき、対応する比較器22〜25から出力される信号が論理値“1”にされる。比較器22〜25から出力される信号は対応するデータアレイ21に供給され、それが論理値“1”のときデータアレイ21でインデックスされた32バイトのキャッシュラインデータが選択される。選択されたキャッシュラインデータは、A2,A3の2ビットによりセレクタ26で選択される。前記比較器22〜25から出力される信号の論理和信号がキャッシュメモリ2のヒット/ミス信号Hitとされる。
【0059】
図6には前記4個のDRAMマクロ5Ma〜5Mdのセンスアンプキャッシュ機能の論理的な構成を1次キャッシュメモリ2と対比可能に示してある。DRAMマクロ5Ma〜5Mdに供給されるアドレス信号の最下位から4ビットは実質的な意味を持たない。カラム選択されるデータは128ビットであり、バイトアドレスで4ビット分のデータサイズだからである。C0〜C2の3ビットはカラム選択信号C−ADDとされる。その上位側の2ビットMS0,MS1はDRAMマクロ5Ma〜5Mdを選択するためのマクロアドレス信号とされる。更に、その上位側4ビットはDRAMバンクを選択するためのバンクアドレス信号とされる。ここではDRAMバンクは16個あるものと仮定している。更にその上位側8ビットR0〜R7はロウアドレス信号R−ADDとされる。センスアンプキャッシュのアドレス比較はセットアソシアティブキャッシュメモリと相違することは言うまでもなく、DRAMバンク毎に直前のアクセスアドレスが前記ヒット判定回路43に保持されている。図6にはそのように保持されている直前のアクセスアドレス中のロウアドレスをSATAGとして図示している。前記ヒット判定回路43は、今回のアクセスアドレスのロウアドレス信号と直前のアクセスアドレス中のロウアドレスSATAGとを比較し、一致する場合にはヒット状態になり、アドレス/コマンド発行回路44に、センスアンプに既にラッチされているデータをカラムアドレス信号で選択させる。
【0060】
上記より明らかなように、マルチバンク構成のDRAMマクロ5Ma〜5Mdを用いて各DRAMバンクのセンスアンプにデータを保持させ、アクセスがその保持データにヒットするときは当該センスアンプがラッチするデータを出力させることによって、DRAMマクロのファーストアクセスを高速化することができる。即ち、各メモリバンクをセンスアンプキャッシュとして機能させることができる。
【0061】
このようなセンスアンプキャッシュのヒット率(センスアンプのデータに対するヒット率)を更に向上させるために、前記アドレス先行発行回路42に、外部アクセスの後、その次のアドレス(所定のオフセットを加算したアドレス)を先行発行して、当該先行発行アドレスのデータを別メモリバンクのセンスアンプに先読みさせる。先行発行の対象を次アドレスとするのは、CPU1の動作プログラムや一群の処理データがリニアアドレスにマッピングされるのを基本とするという経験則に基づくものであり、そのようなアクセスに対してセンスアンプキャッシュがヒットし易いようにするためである。
【0062】
先行発行アドレスはその直前のアクセス対象とは異なるメモリバンクのアドレスでなければならない。同一メモリバンクであれば、先のアクセスに対してセンスアンプキャッシュの機能が利用できなくなる。そのためには、前記外部からのアクセスアドレスに対して前記所定のオフセットを持つアクセスアドレスは、前記外部からのアクセスアドレスが指定するメモリバンクとは異なるメモリバンクを指定するアドレスとされる。
【0063】
ここで、CPU1が出力するアドレス信号に対して、DRAMマクロ5Ma〜5Mdに供給される図6のアドレス信号のビット配列は、少なくとも、最下位からMS1までは同一とされる。したがって、CPU1が出力するアドレス信号が順次インクリメントされた場合、ワード線選択状態が切り替えられるとき必ずDRAMマクロが切り替えられることになる。これにより、アドレス先行発行回路42による前記所定のオフセットは、カラムアドレス信号のビット数をi(=3)とするとき、カラムアドレス信号の最下位ビットから2i(=8)とされる。
【0064】
図7にはアドレス先行発行動作のタイミングチャートの一例が示される。CPU1によるアクセスアドレスがADD1であるとする。これに対して新たなワード線選択動作が行われるものとする。例えばその6サイクル後に、アクセスアドレスADD1に対応するデータD1が読み出される。この間に、アドレス先行発行回路42はアドレスADD1に対して+8したアドレスADD2を内部で生成し、アドレス/コマンド発行回路44にロウ系動作を指示させ、当該先行発行されたアドレス信号に対応されるDRAMマクロのDRAMバンクを指示してワード線選択動作を行い、選択されたワード線のデータをセンスアンプにラッチさせる。前述のように、アクセスアドレス信号を+8すると、そのアクセスアドレスADD2は必ず別のDRAMマクロに移るから、アクセスアドレスADD1によって動作しているメモリバンクの動作が邪魔されることはない。したがって、CPU1による次のアクセスアドレスがADD2であれば、アドレス/コマンド発行回路44はそのアドレスADD2によるワード線選択動作を行わず、それに含まれるカラムアドレス信号によって、直接センスアンプのラッチ情報を選択させてデータD2を外部に出力させる。
【0065】
図8には前記アドレス先行発行を考慮したときのヒット判定回路43の一例が示される。ヒット判定回路43は、アドレスデコーダ430、レジスタ回路431、及び比較回路432A、432Bを有する。レジスタ回路431は、DRAMマクロ5Mas〜5Mdの各DRAMバンク毎に固有のアドレス格納領域を有する。このアドレス格納領域には、対応するメモリバンクにおける直前のアクセスアドレス信号が保持されている。前記アドレスデコーダ430は、アドレスアライメント調整回路41から供給されるアドレス信号及びアドレス先行発行回路42から供給されるアドレス信号を入力し、夫々の入力アドレス信号に含まれる2ビットのマクロアドレス信号及び4ビットのバンクアドレス信号をデコードする。そのデコード信号を用いて、アクセスされるDRAMマクロのDRAMバンクに対応されるアドレス記憶領域を選択する。選択されたアドレス記憶領域は、先ず最初に、既に保持しているアドレス情報を出力し、次に、既に保持しているアドレス情報を今回のアクセスアドレス情報に更新する。前記既に保持しているアドレス情報が出力されると、比較回路432Aはレジスタ回路431から供給されるアドレス信号と前記アドレスアライメント調整回路41から供給されるアドレス信号とを比較し、比較回路432Bはレジスタ回路431から供給されるアドレス信号と前記アドレス先行発行回路42から供給されるアドレス信号とを比較する。比較の結果、カラムアドレス信号よりも上位のアドレス情報が一致していれば、センスアンプキャッシュヒット情報433A,433Bをイネーブルにして前記アドレス/コマンド発行回路44に与える。
【0066】
前記アドレス/コマンド発行回路44は、センスアンプキャッシュヒット情報433A,433Bの状態に従って、その時のアクセスアドレスに対して、ロウコマンドCRを発行するか否かを決定する。即ち、前記アドレス/コマンド発行回路44は、信号433A,433Bによる不一致検出に応答して、アクセスアドレスで指定されるDRAMマクロにメモリバンク、ワード線及びビット線の選択動作を指示し、前記信号433A,433Bによる一致検出に応答して、アクセスアドレスで指定されるDRAMマクロにワード線選択動作を抑止してメモリバンク及びビット線選択動作を指示する。
【0067】
《2次キャッシュのアドレスアライメント調整》
図9にはアドレスアライメント調整回路41でアドレスアライメントを行わない状態での前記1次キャッシュメモリ2に供給されるアドレス信号(CPU1の出力アドレス信号)とDRAMマクロ5Ma〜5Mdに供給されるアドレス信号(アクセスオプティマイザの出力アドレス信号)との対応が示されている。
【0068】
前記アクセスオプティマイザ4及び前記DRAMマクロ5Ma〜5Mdは、そのセンスアンプキャッシュ機能により2次キャッシュメモリ6として位置付けることができる。
【0069】
前記1次キャッシュメモリ2にキャッシュリードミスを生じたとき、キャッシュラインのリプレースと共に当該キャッシュラインのキャッシュデータをライトバックしなければならないことがある。この時の、ライトバック先アドレスと、リプレースすべきキャッシュデータのリードアドレスは、共にインデックスアドレス情報の部分が等しくされる。この事は、セットアソシアティブ形式のキャッシュメモリにおけるインデックス動作から明らかである。アドレスタグの部分は相違されることになる。
【0070】
このとき、図9のアドレスアライメントから明らかなように、インデックスアドレスIndexが同一とされるCPUアドレスは、A4〜A11が同一であり、そこには、バンクアドレス信号の最上位ビットB3を除いて、カラムアドレス信号C0〜C2、マクロアドレス信号MS0,MS1、バンク選択信号の一部B0〜B2が割当てられている。ライトバック先アドレスのアドレスタグ情報ATAGの最上位A12と、リプレースすべきキャッシュデータのリードアドレスのアドレスタグ情報ATAGの最上位A12とが相互に一致すれば、ライトバックのためのDRAMマクロに対するライトアクセスと、リプレースのためのDRAMマクロからのリードアクセスとは、同一DRAMマクロの同一DRAMバンクに対して行なわれる。A12の1ビットが相互に一致する確率は比較的高い。このような状態が起こると。DRAMマクロにおいて異なるメモリバンクを用いて双方の動作を効率的に行うことはできない。一つのDRAMバンクにおいて一つのアクセス動作を終了しなければ他のアクセス動作を行うことはできない。動作させるべきDRAMバンクが異なれば、一つのDRAMバンクに対してリード動作を行っているとき、他方のDRAMバンクに対して、少なくともロウコマンドCRを供給して、ワード線選択動作を並行させることができる。
【0071】
そこで、前記アドレスアライメント調整回路41が設けられている。このアドレスアライメント調整回路41は、外部から供給されるアクセスアドレス信号のビット配列を変更してDRAMマクロ5Ma〜5Mdに供給可能にする。
【0072】
図10にはアドレスアライメント調整回路41によるアドレスアライメントによって得られるCPU1の出力アドレス信号に対するアクセスオプティマイザ4の出力アドレス信号の対応関係の第1の例が示されている。図10の例は、A12〜A15をバンクアドレス信号B0〜B3に、A9〜A11をロウアドレス信号の一部R0〜R2とする。その他の配列は図9と同一である。図11にはアドレスアライメントの第2の例が示される。図11の例は、A12〜A14をバンクアドレス信号の一部B1〜B3に、A10,A11をロウアドレス信号の一部R0,R1とする。その他の配列は図9と同一である。図10及び図11の何れの場合も、CPU1から供給されるアドレス信号のうち前記1次キャッシュメモリ2のインデックスアドレスIndexとして用いられるアドレス情報の一部とタグアドレスATAGとして用いられるアドレス情報の一部とを入れ替えて前記メモリバンクのバンクアドレスに割当てる。
【0073】
これにより、1次キャッシュメモリ2のキャッシュミスによりキャッシュエントリのリプレースとライトバックを行うとき、双方のメモリ動作を相互に異なるDRAMバンクで行うことができる。一つのDRAMマクロに含まれる異なるDRAMバンクに対しては、一つのDRAMバンクに対してカラム系動作を行っているとき、これに並行して別のDRAMバンクにロウコマンドCRを供給してワード線選択並びにセンスアンプラッチ動作を先行させることができる。従って、一つのDRAMバンクでカラムアクセス動作を行ってライトバックのための書込み動作を行っているとき、別のDRAMバンクにロウコマンドCRを供給してリプレースのためのリード動作におけるワード線選択並びにセンスアンプラッチ動作を先行させることはできる。したがって、ライトバックのためのライト動作に続けて、リプレースのためのリード動作のカラム選択及び出力動作を即座に行うことができる。これにより、1次キャッシュメモリ2のキャッシュミスによるペナルティー動作を高速化することができる。
【0074】
図12には前記アドレスアライメント調整回路41の一例が示される。アドレスアライメント調整回路41は、入力アドレス信号の配列を変更して出力可能なスイッチ回路411と、前記スイッチ回路411のスイッチ状態を決定するための制御情報をラッチ可能な制御レジスタ410とを有し、前記制御レジスタ410は前記CPU1によってアクセス可能に構成される。これにより図10及び図11に例示されたアドレスアライメントを任意に選択することができる。
【0075】
前記アドレスアライメントの相違は、連続アドレスに対して同一メモリバンクが指定される頻度の相違として現れる。図13乃至図15にはCPU1のアドレス空間を順番にアクセスした場合にワード線選択動作が行われるDRAMバンクの順番を示している。4個のDRAMマクロ5Ma〜5Mdは16個のDRAMバンクを夫々有している。アドレスアライメント調整を行わない図9に対応される図13の場合には、64個全部のDRAMバンクが順番に切り替えられてワード線の選択が順次切り替えられる。調整例1のアドレスアライメントを行う図10に対応される図14の場合には、4個のDRAMバンクがサイクリックに切り替えられながらワード線の選択が切り替えられる。調整例2のアドレスアライメントを行う図11に対応される図15の場合には、8個のDRAMバンクがサイクリックに切り替えられながらワード線の選択が切り替えられる。
【0076】
キャッシュラインのリプレースにおいて相互に接近しているインデックスアドレスで同一メモリバンクが選択される頻度が多ければ、センスアンプキャッシュ機能によるヒット率は相互に直近のアドレスでアクセスされた情報程低下し、逆に、キャッシュラインのリプレースにおいて相互に接近しているインデックスアドレスで異なるメモリバンクが選択される頻度が多ければ、センスアンプキャッシュ機能によるヒット率は相互に直近のアドレスでアクセスされた情報程高くされる。どちらを選択する方が有利かはデータや命令のアドレスマッピングに依存し、適用システムに応じて選択することが可能になる。
【0077】
前記アドレスアライメント調整回路41として、メタルオプションによってアドレスアライメントを固定化した配線を採用することができる。製造プロセス段階若しくは設計段階でしかアドレスアライメントを選択することはできないが、アドレスアライメント調整のための回路構成を簡素化することができる。
【0078】
《非競合DRAMマクロの並列アクセス》
図16には前記データバッファ回路45の一例が示される。データバッファ回路45は、第1ポートPT1のデータバス10DBに接続されるリードデータバッファ454R及びライトデータバッファ454Wと、第2ポートPT2のデータバス11DBに接続されるリードデータバッファ455R及びライトデータバッファ455Wと、セレクタ450R、451R,452W,453Wとを有する。セレクタ450RはDRAMマクロ5Ma〜5Mdの一つを選択してリードデータバッファ454Rに接続する。セレクタ451RはDRAMマクロ5Ma〜5Mdの一つを選択してリードデータバッファ455Rに接続する。セレクタ452WはDRAMマクロ5Ma〜5Mdの一つを選択してライトデータバッファ454Wに接続する。セレクタ453WはDRAMマクロ5Ma〜5Mdの一つを選択してライトデータバッファ455Wに接続する。セレクタ450R、451R,452W,453Wの選択信号は制御回路46が出力する。
【0079】
リードデータバッファ454Rとライトデータバッファ454Wは入力及び出力が共に128ビットとされる。一方、リードデータバッファ455Rとライトデータバッファ455Wはデータアライナを内蔵し、バス11DB側のインタフェースが32ビット、セレクタ451R,453W側のインタフェースが128ビットとされる。
【0080】
前記優先アクセス判定回路40、前記第1アクセスポートPT1を介するアクセスと第2アクセスポートPT2を介するアクセスが異なるDRAMマクロを用いるアクセスであるとき、双方のアクセスポートからの並列アクセスを許容する。
【0081】
そのようなDRAMマクロの非競合アクセスは、バス6ABから供給されるアドレス信号に含まれるマクロアドレス信号と、バス11ABから供給されるアドレス信号に含まれるマクロアドレス信号とを比較して判定する。その判定結果は制御回路46に与えられ、制御回路46は、双方からのマクロアドレス信号に従ってセレクタ450R,451R,452W,453Wの選択制御を行う。
【0082】
また、前記優先アクセス判定回路40は、第1アクセスポートPT1を介するアクセスと第2アクセスポートPT2を介するアクセスとが同一のDRAMマクロを用いるアクセスであるときは、予め決められた優先度の高い方のアクセスポートの動作を優先させる。
【0083】
図17には同一DRAMマクロを用いるアクセス競合を生ずる場合の優先アクセス判定並びにそれによるアクセス制御手順の一例が示されている。
【0084】
優先アクセス設定レジスタにアクセス優先されるポートが指定される。アドレス入力に対してその入力元が優先ポートか否かが判定され(S1)、優先ポートからのアクセスであれば、ウェイト中の優先アクセスが存在しているかをチェックし(S2)、優先アクセスが先に終わるまで待つ(S3)。その後、ヒット判定回路43でセンスアンプキャッシュのヒット判定が行われ(S4)、キャッシュミスであれば、ロウアドレス系動作であるワード線選択及びセンスアンプラッチのロウアクセスが行なわれ(S5)、その後、カラム選択動作等のカラムアクセスが行なわれて(S6)、データが出力される(S7)。前記ステップS4においてキャッシュミスであれば、ロウアクセス(S5)をスキップしてカラムアクセス(S6)及びデータ出力動作(S7)に進む。前記ステップS1において優先アクセスでなければ、優先アクセスとの競合が有るかの判定が行われ(S8)、競合していれば、当該競合に係る優先アクセスが終わるのを待ち(S9)、それから前記ステップS4に進む。
【0085】
図18には前記優先アクセス判定結果に従ったDRAMマクロの動作タイミングの幾つかが例示される。例えば〔A〕に示されるようにCPU1からバス6ABを介してアドレス信号aA0,aA1が供給され、外部からバス11ABを介してアドレス信号aB0〜aB3が供給さる状態を考える。
【0086】
〔B〕はアクセス対象DRAMマクロが競合しない場合である。この場合には双方のアクセス対象DRAMマクロは並列に独立動作される。〔C〕はアクセス対象DRAMマクロが競合する場合であり、アドレス入力aBを優先アクセスとする場合である。最先のアクセス要求に関してはアドレスaA0とaB0とで競合し、アドレスaAのアクセスは最初から他の優先アクセスに競合するから、アドレスaBに対する動作が全て終了されるまでアドレスaAに関するアクセスはウェイト状態にされる。〔D〕はアクセス対象DRAMマクロが競合する場合であり、アドレス入力aAを優先アクセスとする場合である。この時、最初のアクセスaA0がキャッシュミスであり、キャッシュミスに対するキャッシュエントリのリプレース若しくはキャッシュフィルの期間、アドレスaB0,aB1のアクセスがアドレスaAのアクセスと競合せず、先のデータdB0,dB1が読み出される。データdA0のアクセス、これに続くキャッシュヒットに係るデータdA1のアクセスは、アドレスaB2,aB3に関するアクセスよりも優先され、これが終了するまでデータdB2,dB3アクセスはウェイトされる。
【0087】
上記により、DRAMマクロを複数個混載したシステムLSIにおいてDRAMマクロが競合しない複数のアクセス要求に対しては一方のアクセスが他方のアクセスをブロックしないようにしたノンブロッキングマルチアクセスを可能にできる。例えば、図示を省略するDMACの制御によって外部からのアクセスが行なわれるとき、CPU1の動作を停止させることなく、外部からのアクセスに支障のない範囲でCPU1によるDRAMマクロのアクセスが許容され、データ処理効率の向上に寄与することができる。
【0088】
前記非競合DRAMマクロのノンブロッキングマルチアクセスという観点に立つと、システムLSIを図19のように構成することも可能である。第2のポートPT2にはDMAC7を接続する。第1ポートPT1のデータ入出力は32ビットにされている。1次キャッシュメモリ2は、ユニファイドキャッシュメモリではなく、命令キャッシュメモリ2Iとデータキャッシュメモリ2Dに分けられている。図19は専らデータパスのみを示してあるが、アドレスパスについては図1より容易に類推可能であろう。
【0089】
尚、図19の構成を各機能ブロック毎にLSI化してマルチチップでデータ処理システムとして構成することも可能である。また、そのようなアクセス方法では夫々のアクセスの状況に応じてアクセスオプティマイザのアドレス入力からデータ出力までのレイテンシが一定にならない場合がある。そのような場合には、アクセスポートPT1及びPT2のインタフェースとしてSRAMインタフェースを採用すれば、既存のシステムと組合わせて用いる場合にも簡単に接続が可能である。この目的のためにはアクセスオプティマイザ4がアドレス入力からデータ出力までの期間、WAIT(ウェイト)信号を出力すればよい。
【0090】
《DRAMマクロから成る2次キャッシュメモリの破壊書込み》
次に、システムLSIにおいて2次キャッシュメモリとして特化されたDRAMマクロにけるDRAMバンクの破壊書込みについて説明する。通常DRAMではデータの書き込みを行う場合には一旦メモリセルからセンスアンプにデータを読み出してからその一部を書きかえる。即ち、非破壊書き込みを行う。DRAMマクロのセンスアンプキャッシュ機能を2次キャッシュメモリとして用いる場合、データの管理はワード線単位で行われるから、非破壊書き込みを行う必然性はない。そこで、書き込みに当たって、センスアンプへのデータ読み出し動作を行わず、ワード線の立ち上げと同時、若しくはその直後に、メインアンプからビット線に書き込みデータを転送して1ワード線分のデータを高速に書き込む。
【0091】
上記破壊書き込みを実現するDRAMバンクのタイミングジェネレータ54は、データ書込み動作モードに関し、ワード線選択から第1のタイミングでセンスアンプを活性化する第1動作モード(破壊書込みモード)と、ワード線選択から前記第1のタイミングよりも遅い第2タイミングでセンスアンプを活性化する第2動作モード(リフレッシュモード)を有する。前記第1動作モードは、特に制限されないが、ライトイネーブル信号WE及びロウコマンドCRをアサートし、その直後にカラムコマンドCCをアサートすることによって設定され、カラムコマンドCCと共にカラムアドレス信号が供給されることになる。前記第2コマンドは、特に制限されないが、ライトイネーブル信号WEをネゲートしロウコマンドCRをアサートすることによって設定され、ロウコマンドCRと共にリフレッシュアドレス(ロウアドレス)が供給されることになる。リフレッシュ動作ではカラムアクセスは不要である。
【0092】
図20には破壊書込みモードの一例であるダイレクト・バースト・ライトモードの動作タイミングチャートの一例が示される。時刻t0にワード線WLが選択されると、その直後に、センスアンプの電源φN、φPが投入され、センスアンプが活性化される。更に、カラム選択信号Ys0によって最初の128ビットの書込みデータD0がグローバルビット線GBLからカラムスイッチ回路52を介して128ビット分のローカルビット線BLに入力される。入力された128ビットの書込みデータD0は128個の対応するセンスアンプにラッチされ、ラッチされたデータに従って対応するローカルビット線BLの電位状態が決定される。以下、時刻t1から時刻t127まで同様の書込み動作が連続され、最終的に、1本のワード線に関し、1024ビットのメモリセルにデータが書き込まれる。
【0093】
図21にはリフレッシュモードの動作タイミングチャートの一例が示される。リフレッシュ動作では、記憶情報のリフレッシュを行う動作の性質上、非破壊書き込みを行わなければならないから、時刻t00でプリチャージ動作を終了し、時刻t01でワード線選択動作を行い、これによってメモリセルからローカルビット線BLに供給された電荷情報による差電圧がある程度大きくなるのを待って、時刻t02にセンスアンプを活性化する。センスアンプには、時刻t1にメモリセルの記憶情報がラッチされる。それによってローカルビット線BLがドライブされ、その電荷情報によってメモリセルの記憶情報がリフレッシュされる。この動作では、時刻t00〜t1の期間でタイミングマージンが採られている。
【0094】
ワード線1本単位でのデータ書き込みの他に、ワード線1本分のメモリセルの一部に対する書き込み動作をサポートするならば、リフレッシュ動作と同様に非破壊書き込みが必要になる。ワード線が選択されても書き込み対象とされないメモリセルのデータは破壊されてはならないからである。ワード線1本分の書き込みに対しても非破壊書き込みを行うならば、図22に例示されるようにアクセス時間にリフレッシュ動作同様のタイミングマージンが加算され、図20に比べて書き込み時間が長くされる。
【0095】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【0096】
例えば、DRAMマクロの数、各DRAMマクロが保有するDRAMバンクの数は上記の例に限定されず、適宜変更可能である。また、システムLSIに代表される半導体集積回路に内蔵する回路モジュール若しくは機能モジュールの種類や数は上記の例に限定されない。アドレス変換バッファを含んだり、DSPを搭載したりすることも可能である。また、以上の説明では大容量メモリとしてDRAMマクロ及びDRAMバンクを一例としたが、破壊書き込みに関する発明以外ではメモリマクロやメモリバンクはDRAM形式に限定されず、例えばSRAM(Static Random Access Memory)等であってもよい。また、アドレス先行発行やノンブロッキングマルチアクセスに関する発明は、メモリマクロをワード線単位でデータ管理される2次キャッシュとして特化させた利用形態に限定されず、メモリマクロを単にメインメモリとして用いる場合にも適用可能であることは言うまでもない。
【0097】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【0098】
すなわち、次アドレス先行発行によるセンスアンプキャッシュのヒット率を向上させることができる。
【0099】
セットアソシアティブ形式の1次キャッシュメモリのキャッシュミスに起因してキャッシュエントリのリプレースを行うとき、マルチバンクDRAMの動作効率を低下させないようにすることができる。
【0100】
マルチバンクを持つメモリのファーストアクセスを高速化することができる。
【0101】
CPUと外部とからのメモリマクロに対するアクセス要求が競合しない複数のアクセス要求に対して一方のアクセスが他方のアクセスをブロックしないようにしたノンブロッキングマルチアクセスを可能にすることができる。
【0102】
キャッシュラインをワード線単位とするマルチバンクを持つDRAMに対するデータの書換えを効率化することができる。
【図面の簡単な説明】
【図1】本発明を適用した半導体集積回路の一例であるCPU/DRAM混載LSI(システムLSI)のブロック図である。
【図2】図1のDRAMマクロの一例を示すブロック図である。
【図3】DRAMバンクとグローバルビット線との接続構成の一例を示す回路図である。
【図4】アクセスオプティマイザの一例を示すブロック図である。
【図5】1次キャッシュメモリの基本構成の一例を示すブロック図である。
【図6】複数個のDRAMマクロを用いたセンスアンプキャッシュ機能の論理的な構成を1次キャッシュメモリと対比可能に示したブロック図である。
【図7】アドレス先行発行動作の一例を示すタイミングチャートである。
【図8】アドレス先行発行を考慮したときのヒット判定回路の一例を示すブロック図である。
【図9】アドレスアライメント調整回路でアドレスアライメントを行わない状態で1次キャッシュメモリに供給されるCPUの出力アドレス信号とDRAMマクロに供給されるアクセスオプティマイザの出力アドレス信号との対応関係の一例を示す説明図である。
【図10】アドレスアライメント調整回路によるアドレスアライメントによって得られるCPUの出力アドレス信号とアクセスオプティマイザの出力アドレス信号との対応の第1の例を示す説明図である。
【図11】アドレスアライメント調整回路によるアドレスアライメントによって得られるCPUの出力アドレス信号とアクセスオプティマイザの出力アドレス信号との対応の第2の例を示す説明図である。
【図12】アドレスアライメント調整回路の一例を示すブロック図である。
【図13】図9のようにアドレスアライメントの調整を行わないときCPUのアドレス空間を順番にアクセスした場合にワード線選択動作が行われるDRAMバンクの順番を示した説明図である。
【図14】図10のようにアドレスアライメントの調整を行ったときCPUのアドレス空間を順番にアクセスした場合にワード線選択動作が行われるDRAMバンクの順番を示した説明図である。
【図15】図11のようにアドレスアライメントの調整を行ったときCPUのアドレス空間を順番にアクセスした場合にワード線選択動作が行われるDRAMバンクの順番を示した説明図である。
【図16】データバッファ回路の一例を示すブロック図である。
【図17】同一DRAMマクロを用いるアクセス競合を生ずる場合の優先アクセス判定並びにそれによるアクセス動作の制御手順の一例を示すフローチャートである。
【図18】優先アクセス判定結果に従ったDRAMマクロの動作タイミングの幾つかを例示したタイミングチャートである。
【図19】非競合DRAMマクロのノンブロッキングマルチアクセスという観点に立ったシステムLSIの別の例を概略的に示すブロック図である。
【図20】破壊書込みモードの一例であるダイレクト・バースト・ライトモードの動作例を示すタイミングチャートである。
【図21】リフレッシュモードの動作例を示すタイミングチャートである。
【図22】ワード線1本分の書き込みに対しても非破壊書き込みを行うと仮定したときの動作タイミングの比較例を示すタイミングチャートである。
【符号の説明】
1 CPU
2 1次キャッシュメモリ
ATAG アドレスタグ
Index インデックスアドレス
CTAG キャッシュタグ
WAY0〜WAY3 ウェイ
3 外部バスインタフェース回路
4 アクセスオプティマイザ
PT1 第1アクセスポート
PT2 第2アクセスポート
40 優先アクセス判定回路
41 アドレスアライメント調整回路
410 制御レジスタ
411 スイッチ回路
42 アドレス先行発行回路
43 ヒット判定回路
430 アドレスデコーダ
431 レジスタ回路
432A,432B 比較回路
44 アドレス/コマンド発行回路
45 データバッファ回路
5Ma〜5Md DRAMマクロ
53 センスアンプアレイ
B−ADD バンク選択信号
R−ADD ロウアドレス信号
C−ADD カラムアドレス信号
CR ロウコマンド
CC カラムコマンド
WE ライトイネーブル信号
GBL グローバルビット線
BL ローカルビット線
WL ワード線
6 2次キャッシュメモリ
Claims (3)
- メモリマクロと、前記メモリマクロに接続されたアクセス制御回路と、前記アクセス制御回路に接続されたCPUと、前記CPU及び前記アクセス制御回路に接続された1次キャッシュメモリとを備え、
前記1次キャッシュメモリは前記メモリマクロが保有する情報の一部を保有可能な下位階層記憶とされ、
前記メモリマクロは、バンクアドレスが夫々割当てられた複数個のメモリバンクを有し、
前記複数のメモリバンクは、
ロウアドレス信号によって選択されるワード線と、
カラムアドレス信号によって選択され前記メモリマクロのデータ線に導通されるビット線と、
選択された前記ワード線のメモリセルから前記ビット線に読み出された記憶情報をラッチ可能なセンスアンプと、を有し、
前記アクセス制御回路は、
前記メモリバンク毎に動作させることができるコマンド及びアドレス信号の出力手段と、
前記センスアンプにラッチされているデータを後のアクセス要求に応答して前記データ線に出力可能にするヒット判定手段と、を有し、
前記アクセス制御回路は更に、前記CPUからのアクセスアドレスに対する前記メモリマクロのアクセス制御の次に、当該CPUからのアクセスアドレスに対して所定のオフセットを持つアクセスアドレスを先行発行して、当該先行発行されたアドレスのデータを前記メモリマクロのメモリセルから前記センスアンプに先読みさせるアドレス先行発行手段を有し、前記外部からのアクセスアドレスに対して前記所定のオフセットを持つアクセスアドレスは、前記CPUからのアクセスアドレスが指定するメモリバンクとは異なるメモリバンクを指定するアドレスとされ、
前記アクセス制御回路は更に、前記CPUから供給されるアドレス信号のうち1次キャッシュメモリのタグアドレスの少なくとも下位2ビットを、前記メモリバンクの指定に用いるアドレスに割り当てるように、前記CPUから供給されるアドレス信号の配列を変更して前記出力手段から出力可能にするアライメント調整手段を有し、前記1次キャッシュメモリのキャッシュミスにおいて、キャッシュエントリのリプレースとライトバックのためのメモリバンクアクセスを異なるメモリバンクに対して並行可能にすることを特徴とする半導体集積回路。 - 前記ヒット判定手段は、外部から供給されるアクセスアドレスと前記センスアンプが保有する記憶情報のアクセスアドレスとの一致または不一致を検出する比較手段を有し、
前記コマンド及びアドレス信号の出力手段は、前記比較手段による不一致検出に応答して、外部からのアクセスアドレスで指定されるメモリマクロにメモリバンク、ワード線及びビット線の選択動作を指示し、前記比較手段による一致検出に応答して、外部からのアクセスアドレスで指定されるメモリマクロにワード線選択動作を抑止してメモリバンク及びビット線選択動作を指示するものであることを特徴とする請求項1記載の半導体集積回路。 - 前記ヒット判定手段は、前記センスアンプが保有する記憶情報のアクセスアドレスの情報を前記複数のメモリバンク毎に保持するアドレスレジスタを更に有し、
前記比較手段は、前記アドレスレジスタが保持するアクセスアドレスの情報と前記アクセスアドレスの次に発行されるアクセスアドレスと比較し、比較結果を前記コマンド及びアドレス信号の出力手段に与えるものであることを特徴とする請求項2記載の半導体集積回路。
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18577898A JP3786521B2 (ja) | 1998-07-01 | 1998-07-01 | 半導体集積回路及びデータ処理システム |
TW088106903A TW413760B (en) | 1998-07-01 | 1999-04-29 | Semiconductor integrated circuit and data processing system |
SG9903121A SG87041A1 (en) | 1998-07-01 | 1999-06-23 | Semiconductor integrated circuit and data processing system |
MYPI99002672A MY118269A (en) | 1998-07-01 | 1999-06-28 | Semiconductor integrated circuit and data processing system |
US09/342,240 US6381671B1 (en) | 1998-07-01 | 1999-06-29 | Semiconductor integrated circuit and data processing system |
CNB991088999A CN1185580C (zh) | 1998-07-01 | 1999-06-30 | 半导体集成电路和数据处理系统 |
CNB2004101003910A CN100428194C (zh) | 1998-07-01 | 1999-06-30 | 半导体存储器和高速缓存器 |
KR1019990026335A KR100575137B1 (ko) | 1998-07-01 | 1999-07-01 | 반도체집적회로 및 데이터처리시스템 |
US10/101,063 US6708249B2 (en) | 1998-07-01 | 2002-03-20 | Semiconductor integrated circuit and data processing system |
US10/729,934 US6847578B2 (en) | 1998-07-01 | 2003-12-09 | Semiconductor integrated circuit and data processing system |
US11/010,324 US7165151B2 (en) | 1998-07-01 | 2004-12-14 | Semiconductor integrated circuit and data processing system |
US11/641,808 US7254680B2 (en) | 1998-07-01 | 2006-12-20 | Semiconductor integrated circuit and data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18577898A JP3786521B2 (ja) | 1998-07-01 | 1998-07-01 | 半導体集積回路及びデータ処理システム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004215288A Division JP2004296088A (ja) | 2004-07-23 | 2004-07-23 | 半導体メモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000021160A JP2000021160A (ja) | 2000-01-21 |
JP3786521B2 true JP3786521B2 (ja) | 2006-06-14 |
Family
ID=16176738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18577898A Expired - Fee Related JP3786521B2 (ja) | 1998-07-01 | 1998-07-01 | 半導体集積回路及びデータ処理システム |
Country Status (7)
Country | Link |
---|---|
US (5) | US6381671B1 (ja) |
JP (1) | JP3786521B2 (ja) |
KR (1) | KR100575137B1 (ja) |
CN (2) | CN1185580C (ja) |
MY (1) | MY118269A (ja) |
SG (1) | SG87041A1 (ja) |
TW (1) | TW413760B (ja) |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3807582B2 (ja) | 1999-02-18 | 2006-08-09 | 株式会社ルネサステクノロジ | 情報処理装置及び半導体装置 |
DE60029290T2 (de) * | 1999-04-27 | 2007-07-12 | Seiko Epson Corp. | Integrierte schaltung |
JP2002063069A (ja) | 2000-08-21 | 2002-02-28 | Hitachi Ltd | メモリ制御装置、データ処理システム及び半導体装置 |
US6553449B1 (en) * | 2000-09-29 | 2003-04-22 | Intel Corporation | System and method for providing concurrent row and column commands |
US6845432B2 (en) | 2000-12-28 | 2005-01-18 | Intel Corporation | Low power cache architecture |
JP2002244920A (ja) * | 2001-02-15 | 2002-08-30 | Oki Electric Ind Co Ltd | Dramインターフェース回路 |
US7424576B2 (en) * | 2001-05-02 | 2008-09-09 | Intel Corporation | Parallel cachelets |
ATE521040T1 (de) | 2001-06-11 | 2011-09-15 | Zoran Microelectronics Ltd | Ein spezialspeichergerät |
JP4540889B2 (ja) * | 2001-07-09 | 2010-09-08 | 富士通セミコンダクター株式会社 | 半導体メモリ |
JP3985889B2 (ja) * | 2001-08-08 | 2007-10-03 | 株式会社ルネサステクノロジ | 半導体装置 |
DE60223555T2 (de) * | 2001-08-29 | 2009-06-10 | Mediatek Inc. | Verfahren und apparat zur takt- und leistungssteuerung in drahtlosen systemen |
GB2379523B (en) * | 2001-09-05 | 2003-11-19 | 3Com Corp | Shared memory system including hardware memory protection |
US7539825B2 (en) * | 2001-10-25 | 2009-05-26 | Samsung Electronics Co., Ltd. | Multi-port memory device providing protection signal |
US6728159B2 (en) * | 2001-12-21 | 2004-04-27 | International Business Machines Corporation | Flexible multibanking interface for embedded memory applications |
US6938129B2 (en) * | 2001-12-31 | 2005-08-30 | Intel Corporation | Distributed memory module cache |
US7389387B2 (en) * | 2001-12-31 | 2008-06-17 | Intel Corporation | Distributed memory module cache writeback |
US6925534B2 (en) * | 2001-12-31 | 2005-08-02 | Intel Corporation | Distributed memory module cache prefetch |
US6801980B2 (en) * | 2002-04-25 | 2004-10-05 | International Business Machines Corporation | Destructive-read random access memory system buffered with destructive-read memory cache |
JP4160790B2 (ja) | 2002-06-28 | 2008-10-08 | 株式会社ルネサステクノロジ | 半導体装置 |
GB2396442B (en) * | 2002-09-17 | 2006-03-01 | Micron Technology Inc | Host memory interface for a parallel processor |
US7130229B2 (en) * | 2002-11-08 | 2006-10-31 | Intel Corporation | Interleaved mirrored memory systems |
CN100458978C (zh) * | 2003-03-19 | 2009-02-04 | Nxp股份有限公司 | 具有简档存储单元的通用存储器件 |
US20040216101A1 (en) * | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method and logical apparatus for managing resource redistribution in a simultaneous multi-threaded (SMT) processor |
US7290261B2 (en) * | 2003-04-24 | 2007-10-30 | International Business Machines Corporation | Method and logical apparatus for rename register reallocation in a simultaneous multi-threaded (SMT) processor |
US7350060B2 (en) * | 2003-04-24 | 2008-03-25 | International Business Machines Corporation | Method and apparatus for sending thread-execution-state-sensitive supervisory commands to a simultaneous multi-threaded (SMT) processor |
US7155600B2 (en) * | 2003-04-24 | 2006-12-26 | International Business Machines Corporation | Method and logical apparatus for switching between single-threaded and multi-threaded execution states in a simultaneous multi-threaded (SMT) processor |
JP4656862B2 (ja) * | 2004-05-28 | 2011-03-23 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
KR100650730B1 (ko) * | 2004-12-28 | 2006-11-27 | 주식회사 하이닉스반도체 | 메모리 장치의 프리차지 타이밍 제어 방법 및 그 장치 |
JP4836487B2 (ja) * | 2005-04-28 | 2011-12-14 | ルネサスエレクトロニクス株式会社 | 不揮発性半導体記憶装置 |
JP2007034943A (ja) * | 2005-07-29 | 2007-02-08 | Sony Corp | 共有メモリ装置 |
EP1760619A1 (en) * | 2005-08-19 | 2007-03-07 | STMicroelectronics Ltd. | System for restricting data access |
FR2921507B1 (fr) * | 2007-09-26 | 2011-04-15 | Arteris | Dispositif de memoire electronique |
US7983091B2 (en) * | 2007-11-06 | 2011-07-19 | Intel Corporation | Divided bitline flash memory array with local sense and signal transmission |
US20090193187A1 (en) * | 2008-01-25 | 2009-07-30 | International Business Machines Corporation | Design structure for an embedded dram having multi-use refresh cycles |
JP2009217640A (ja) * | 2008-03-11 | 2009-09-24 | Ricoh Co Ltd | データ転送制御装置 |
US8386510B2 (en) * | 2008-04-15 | 2013-02-26 | International Business Machines Corporation | Flexible connector framework for data feed generation |
JP5423483B2 (ja) * | 2010-03-04 | 2014-02-19 | 株式会社リコー | データ転送制御装置 |
JP5520747B2 (ja) * | 2010-08-25 | 2014-06-11 | 株式会社日立製作所 | キャッシュを搭載した情報装置及びコンピュータ読み取り可能な記憶媒体 |
JP4936489B2 (ja) * | 2010-10-15 | 2012-05-23 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
WO2012059121A1 (en) * | 2010-11-01 | 2012-05-10 | Telefonaktiebolaget L M Ericsson (Publ) | Memory arrangement for accessing matrices |
US8918594B2 (en) * | 2010-11-16 | 2014-12-23 | Micron Technology, Inc. | Multi-interface memory with access control |
US8625345B2 (en) | 2011-07-27 | 2014-01-07 | Micron Technology, Inc. | Determining and transferring data from a memory array |
JP2015108972A (ja) * | 2013-12-04 | 2015-06-11 | 富士通株式会社 | 演算装置、演算装置の決定方法及びプログラム |
US9672043B2 (en) | 2014-05-12 | 2017-06-06 | International Business Machines Corporation | Processing of multiple instruction streams in a parallel slice processor |
US9665372B2 (en) | 2014-05-12 | 2017-05-30 | International Business Machines Corporation | Parallel slice processor with dynamic instruction stream mapping |
US9760375B2 (en) | 2014-09-09 | 2017-09-12 | International Business Machines Corporation | Register files for storing data operated on by instructions of multiple widths |
US9720696B2 (en) | 2014-09-30 | 2017-08-01 | International Business Machines Corporation | Independent mapping of threads |
US10996959B2 (en) * | 2015-01-08 | 2021-05-04 | Technion Research And Development Foundation Ltd. | Hybrid processor |
US10133581B2 (en) | 2015-01-13 | 2018-11-20 | International Business Machines Corporation | Linkable issue queue parallel execution slice for a processor |
US10133576B2 (en) | 2015-01-13 | 2018-11-20 | International Business Machines Corporation | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries |
KR102076196B1 (ko) * | 2015-04-14 | 2020-02-12 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 모듈 및 메모리 모듈의 동작 방법 |
KR102373544B1 (ko) | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
US9983875B2 (en) | 2016-03-04 | 2018-05-29 | International Business Machines Corporation | Operation of a multi-slice processor preventing early dependent instruction wakeup |
US10037211B2 (en) | 2016-03-22 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor with an expanded merge fetching queue |
US10346174B2 (en) | 2016-03-24 | 2019-07-09 | International Business Machines Corporation | Operation of a multi-slice processor with dynamic canceling of partial loads |
US10761854B2 (en) | 2016-04-19 | 2020-09-01 | International Business Machines Corporation | Preventing hazard flushes in an instruction sequencing unit of a multi-slice processor |
US10037229B2 (en) | 2016-05-11 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions |
US10146690B2 (en) | 2016-06-13 | 2018-12-04 | Intel Corporation | Synchronization logic for memory requests |
US9934033B2 (en) | 2016-06-13 | 2018-04-03 | International Business Machines Corporation | Operation of a multi-slice processor implementing simultaneous two-target loads and stores |
KR102548599B1 (ko) * | 2016-06-17 | 2023-06-29 | 삼성전자주식회사 | 버퍼메모리를 포함하는 메모리 장치 및 이를 포함하는 메모리 모듈 |
US10042647B2 (en) | 2016-06-27 | 2018-08-07 | International Business Machines Corporation | Managing a divided load reorder queue |
US10318419B2 (en) | 2016-08-08 | 2019-06-11 | International Business Machines Corporation | Flush avoidance in a load store unit |
US11868804B1 (en) | 2019-11-18 | 2024-01-09 | Groq, Inc. | Processor instruction dispatch configuration |
US11360934B1 (en) | 2017-09-15 | 2022-06-14 | Groq, Inc. | Tensor streaming processor architecture |
US11243880B1 (en) | 2017-09-15 | 2022-02-08 | Groq, Inc. | Processor architecture |
US11114138B2 (en) * | 2017-09-15 | 2021-09-07 | Groq, Inc. | Data structures with multiple read ports |
US11170307B1 (en) | 2017-09-21 | 2021-11-09 | Groq, Inc. | Predictive model compiler for generating a statically scheduled binary with known resource constraints |
KR102535104B1 (ko) * | 2018-03-19 | 2023-05-23 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US10783938B2 (en) * | 2018-06-29 | 2020-09-22 | Taiwan Semiconductor Manufacturing Company, Ltd. | SRAM with local bit line, input/output circuit, and global bit line |
US11537687B2 (en) | 2018-11-19 | 2022-12-27 | Groq, Inc. | Spatial locality transform of matrices |
US20200201562A1 (en) * | 2018-12-20 | 2020-06-25 | Nanya Technology Corporation | Memory device, memory system and method of reading from memory device |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4445177A (en) * | 1981-05-22 | 1984-04-24 | Data General Corporation | Digital data processing system utilizing a unique arithmetic logic unit for handling uniquely identifiable addresses for operands and instructions |
JP2714944B2 (ja) * | 1987-08-05 | 1998-02-16 | 三菱電機株式会社 | 半導体記憶装置 |
US4937781A (en) * | 1988-05-13 | 1990-06-26 | Dallas Semiconductor Corporation | Dual port ram with arbitration status register |
JPH0512110A (ja) | 1990-12-25 | 1993-01-22 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
US6222762B1 (en) * | 1992-01-14 | 2001-04-24 | Sandisk Corporation | Multi-state memory |
US5390308A (en) * | 1992-04-15 | 1995-02-14 | Rambus, Inc. | Method and apparatus for address mapping of dynamic random access memory |
US5555388A (en) * | 1992-08-20 | 1996-09-10 | Borland International, Inc. | Multi-user system and methods providing improved file management by reading |
JP3279681B2 (ja) * | 1992-09-03 | 2002-04-30 | 株式会社日立製作所 | 半導体装置 |
JP3400824B2 (ja) * | 1992-11-06 | 2003-04-28 | 三菱電機株式会社 | 半導体記憶装置 |
JP3476231B2 (ja) * | 1993-01-29 | 2003-12-10 | 三菱電機エンジニアリング株式会社 | 同期型半導体記憶装置および半導体記憶装置 |
JPH06314241A (ja) * | 1993-03-04 | 1994-11-08 | Sharp Corp | 高速半導体記憶装置及び高速連想記憶装置 |
JP2894170B2 (ja) | 1993-08-18 | 1999-05-24 | 日本電気株式会社 | メモリ装置 |
US5742841A (en) * | 1993-12-08 | 1998-04-21 | Packard Bell Nec | Alternate I/O port access to standard register set |
JP3218844B2 (ja) * | 1994-03-22 | 2001-10-15 | 松下電器産業株式会社 | 半導体メモリ装置 |
US5649144A (en) * | 1994-06-13 | 1997-07-15 | Hewlett-Packard Co. | Apparatus, systems and methods for improving data cache hit rates |
JPH08102187A (ja) * | 1994-09-29 | 1996-04-16 | Toshiba Microelectron Corp | ダイナミック型メモリ |
JP2705590B2 (ja) * | 1994-10-28 | 1998-01-28 | 日本電気株式会社 | 半導体記憶装置 |
US5901105A (en) * | 1995-04-05 | 1999-05-04 | Ong; Adrian E | Dynamic random access memory having decoding circuitry for partial memory blocks |
US6108015A (en) * | 1995-11-02 | 2000-08-22 | Cirrus Logic, Inc. | Circuits, systems and methods for interfacing processing circuitry with a memory |
JP3345282B2 (ja) | 1996-06-10 | 2002-11-18 | 株式会社日立製作所 | 半導体集積回路装置の設計方法 |
JPH09288614A (ja) | 1996-04-22 | 1997-11-04 | Mitsubishi Electric Corp | 半導体集積回路装置、半導体記憶装置およびそのための制御回路 |
US6094370A (en) * | 1996-06-10 | 2000-07-25 | Kabushiki Kaisha Toshiba | Semiconductor memory device and various systems mounting them |
US5890219A (en) * | 1996-11-27 | 1999-03-30 | Emc Corporation | Redundant writing of data to cached storage system |
US5890207A (en) * | 1996-11-27 | 1999-03-30 | Emc Corporation | High performance integrated cached storage device |
US6088693A (en) * | 1996-12-06 | 2000-07-11 | International Business Machines Corporation | Data management system for file and database management |
US5920873A (en) * | 1996-12-06 | 1999-07-06 | International Business Machines Corporation | Data management control system for file and database |
US5826265A (en) * | 1996-12-06 | 1998-10-20 | International Business Machines Corporation | Data management system having shared libraries |
US6098109A (en) * | 1996-12-30 | 2000-08-01 | Compaq Computer Corporation | Programmable arbitration system for determining priority of the ports of a network switch |
AUPO647997A0 (en) * | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Memory controller architecture |
US6145027A (en) * | 1997-07-09 | 2000-11-07 | Texas Instruments Incorporated | DMA controller with split channel transfer capability and FIFO buffering allowing transmit channel to get ahead of corresponding receive channel by preselected number of elements |
US6401176B1 (en) * | 1997-11-14 | 2002-06-04 | Agere Systems Guardian Corp. | Multiple agent use of a multi-ported shared memory |
US6516351B2 (en) * | 1997-12-05 | 2003-02-04 | Network Appliance, Inc. | Enforcing uniform file-locking for diverse file-locking protocols |
US6173356B1 (en) * | 1998-02-20 | 2001-01-09 | Silicon Aquarius, Inc. | Multi-port DRAM with integrated SRAM and systems and methods using the same |
US6263390B1 (en) * | 1998-08-18 | 2001-07-17 | Ati International Srl | Two-port memory to connect a microprocessor bus to multiple peripherals |
US6329997B1 (en) * | 1998-12-04 | 2001-12-11 | Silicon Motion, Inc. | 3-D graphics chip with embedded DRAM buffers |
US6282145B1 (en) * | 1999-01-14 | 2001-08-28 | Silicon Storage Technology, Inc. | Array architecture and operating methods for digital multilevel nonvolatile memory integrated circuit system |
TW522399B (en) * | 1999-12-08 | 2003-03-01 | Hitachi Ltd | Semiconductor device |
WO2002056181A2 (en) * | 2001-01-11 | 2002-07-18 | Force Communications Inc Z | File switch and switched file system |
US6708175B2 (en) * | 2001-06-06 | 2004-03-16 | International Business Machines Corporation | Program support for disk fencing in a shared disk parallel file system across storage area network |
US6480424B1 (en) * | 2001-07-12 | 2002-11-12 | Broadcom Corporation | Compact analog-multiplexed global sense amplifier for RAMS |
-
1998
- 1998-07-01 JP JP18577898A patent/JP3786521B2/ja not_active Expired - Fee Related
-
1999
- 1999-04-29 TW TW088106903A patent/TW413760B/zh not_active IP Right Cessation
- 1999-06-23 SG SG9903121A patent/SG87041A1/en unknown
- 1999-06-28 MY MYPI99002672A patent/MY118269A/en unknown
- 1999-06-29 US US09/342,240 patent/US6381671B1/en not_active Expired - Lifetime
- 1999-06-30 CN CNB991088999A patent/CN1185580C/zh not_active Expired - Fee Related
- 1999-06-30 CN CNB2004101003910A patent/CN100428194C/zh not_active Expired - Fee Related
- 1999-07-01 KR KR1019990026335A patent/KR100575137B1/ko not_active IP Right Cessation
-
2002
- 2002-03-20 US US10/101,063 patent/US6708249B2/en not_active Expired - Fee Related
-
2003
- 2003-12-09 US US10/729,934 patent/US6847578B2/en not_active Expired - Fee Related
-
2004
- 2004-12-14 US US11/010,324 patent/US7165151B2/en not_active Expired - Fee Related
-
2006
- 2006-12-20 US US11/641,808 patent/US7254680B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20000011417A (ko) | 2000-02-25 |
TW413760B (en) | 2000-12-01 |
US6381671B1 (en) | 2002-04-30 |
SG87041A1 (en) | 2002-03-19 |
US20050099876A1 (en) | 2005-05-12 |
US20070101088A1 (en) | 2007-05-03 |
MY118269A (en) | 2004-09-30 |
US7165151B2 (en) | 2007-01-16 |
JP2000021160A (ja) | 2000-01-21 |
CN1185580C (zh) | 2005-01-19 |
CN1624802A (zh) | 2005-06-08 |
US6708249B2 (en) | 2004-03-16 |
US20040114451A1 (en) | 2004-06-17 |
KR100575137B1 (ko) | 2006-05-03 |
CN1241753A (zh) | 2000-01-19 |
US7254680B2 (en) | 2007-08-07 |
US6847578B2 (en) | 2005-01-25 |
US20020103961A1 (en) | 2002-08-01 |
CN100428194C (zh) | 2008-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3786521B2 (ja) | 半導体集積回路及びデータ処理システム | |
US6848035B2 (en) | Semiconductor device with multi-bank DRAM and cache memory | |
US6675269B2 (en) | Semiconductor device with memory controller that controls page mode access | |
JP3304413B2 (ja) | 半導体記憶装置 | |
JPH09288614A (ja) | 半導体集積回路装置、半導体記憶装置およびそのための制御回路 | |
JPH04255989A (ja) | 半導体記憶装置および内部電圧発生方法 | |
US20080098176A1 (en) | Method and Apparatus for Implementing Memory Accesses Using Open Page Mode for Data Prefetching | |
JP3816110B2 (ja) | 半導体集積回路装置 | |
US7328311B2 (en) | Memory controller controlling cashed DRAM | |
US7159066B2 (en) | Precharge suggestion | |
WO2001088717A2 (en) | System and method for using a page tracking buffer to reduce main memory latency in a computer system | |
US6404694B2 (en) | Semiconductor memory device with address comparing functions | |
US6778461B2 (en) | Dynamic random access memory device externally functionally equivalent to a static random access memory | |
JP2004296088A (ja) | 半導体メモリ | |
JPH09101917A (ja) | キャッシュメモリ制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040525 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040723 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050531 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050801 |
|
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: 20060314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060320 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090331 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100331 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110331 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110331 Year of fee payment: 5 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110331 Year of fee payment: 5 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110331 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120331 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130331 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130331 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140331 Year of fee payment: 8 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |