JPH0359458B2 - - Google Patents
Info
- Publication number
- JPH0359458B2 JPH0359458B2 JP60119888A JP11988885A JPH0359458B2 JP H0359458 B2 JPH0359458 B2 JP H0359458B2 JP 60119888 A JP60119888 A JP 60119888A JP 11988885 A JP11988885 A JP 11988885A JP H0359458 B2 JPH0359458 B2 JP H0359458B2
- Authority
- JP
- Japan
- Prior art keywords
- bank
- row
- address
- distributed cache
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Dram (AREA)
- Memory System (AREA)
Description
〔産業上の利用分野〕
本発明はメモリシステムに関し、さらに詳しく
いえば、スタテイツク・コラム型のDRAM
(Dynamic random access memory)を用いた
メモリシステムに関するものである。 〔開示の概要〕 以下に示すメモリシステム制御方法は、オンチ
ツプスタテイツクバツフアを具備するスタテイツ
ク・コラム型DRAMで構成されたバンクを複数
個有するメモリシステムにおいて、各々のバンク
に関連するスタテイツクバツフアをそれぞれのキ
ヤツシユとして使用することによつて、システム
全体の性能を高めるようにしたものである。 〔従来技術〕 第3図に示すように代表的なマイクロコンピユ
ータシステムはバス14を介してメモリ12に接
続されたCPU10を有する。メモリバンク16
のデータをアクセスするため、CPU10はメモ
リコントローラ18を使用する。メモリコントロ
ーラ18はDRAMのリフレツシユ、バンクのイ
ンターリーブ、クロツキング、およびCPU10
との初期接続手順を遂行する。場合によつてはシ
ステムのスループツトを増すためにキヤツシユ
(命令キヤツシユもしくはデータキヤツシユまた
はその双方)20を有するようなマイクロコンピ
ユータもある。キヤツシユは高速のメモリであつ
て、通常、バスの脇のCPUで常駐する。キヤツ
シユに関連する制御論理はキヤツシユへのアクセ
スの回数が最大になるように働く。キヤツシユへ
のアクセスの成功は“ヒツト”と呼ばれる。要求
されたワードがキヤツシユにないとき(すなわち
“ミス”)だけ主メモリがアクセスされる。 従来のシステムの例はたとえば米国特許第
4156290号に開示されている。この特許は各々入
力レジスタおよび出力レジスタを具備した複数の
メモリチツプから成るRAM(Random access
memory)について開示するものである。メモリ
コントローラは現アドレスの最も重要な部分を記
憶する静止化レジスタを有する。静止化レジスタ
の出力はアドレス一致回路をRAMを構成するチ
ツプの入力とに接続される。メモリの各アドレス
は第1の部分および第2の部分から成る。各アド
レスの第1の部分は、それにより識別されるアド
レスのところに記憶されたメモリエレメントの全
てのワードをアドレス指定する。アドレス指定さ
れた全てのワードは対応するアドレスレジスタに
記憶される。各アドレスの第2の部分により関連
する出力レジスタを選択することができる。この
プロシージヤによれば、1ブロツクの情報の読取
りオペレーシヨンで、1回のメモリアクセス時間
と出力レジスタの読取り時間が消費される。 米国特許第4382278号に複数のレジスタと少な
くとも1つの作業スペースとを主メモリに具備し
たコンピユータシステムについて開示している。
さらに、CPU内にも複数のレジスタで構成され
た作業スペースキヤツシユメモリが在る。これら
のレジスタは主メモリの作業スペースの複数のレ
ジスタに対応するものである。コンピユータのオ
ペレーシヨンは作業スペースキヤツシユレジスタ
の内容を用いて遂行される。作業スペースキヤツ
シユレジスタの内容は、コンテクストスイツチン
グの際、主メモリの作業スペースの対応する作業
レジスタへ転送される。このような作業スペース
のシステムのアーキテクチヤによれば、高速のレ
ジスタ間オペレーシヨンおよび高速のコンテクス
トスイツチングが達成される。 ダイナミツクメモリの新しい流れとして、幾つ
かの製造業者からスタテイツク・コラム型
DRAMが提供されている。このDRAMは1行全
体を記憶するオンチツプのスタテイツクバツフア
を具備するものである。たとえば64KのDRAM
は各々256ビツトから成る256個の行を有するの
で、そのスタテイツクバツフアは256ビツトであ
る。(この様子を第2図に示す)256KのDRAM
は各々512ビツトから成る512個の行を有するの
で、そのスタテイツクバツフアは512ビツトであ
る。スタテイツクバツフアに1行が記憶されれ
ば、その行ではどのビツトでも高速にアクセス
(読取りまたは書込み)できる。130ナノ秒のサイ
クルタイムを有するDRAMの場合、スタテイツ
クバツフアのサイクルタイムは第2図に示すよう
に、わずか40ナノ秒である。 〔発明が解決しようとする問題点〕 しかしながら、以下に示したコンピユータシス
テムは性能改善の余地があり、特に最後に記した
スタテイツク・コラム型DRAMに関していえば
まだ有効に利用されるに至つていないというのが
現状である。 したがつて本発明の目的はスタテイツク・コラ
ム型のDRAMを用いてコンピユータシステム全
体の性能を大幅に改善することにある。 〔問題点を解決するための手段〕 この目的を達成するため、本発明のメモリシス
テム制御方法は、オンチツプスタテイツクバツフ
アを具備するスタテイツク・コラム型ダイナミツ
ク・ランダム・アクセス・メモリで構成されたバ
ンクを複数個有するメモリシステムにおいて、
各々のバンクに関連するスタテイツクバツフアを
それぞれのキヤツシユとして使用し、アクセスさ
れた各々のバンクの最新の行を関連するスタテイ
ツクバツフアでそれぞれ保持するようにしたこと
を特徴とする。 本発明のメモリシステムは複数のバンクとメモ
リコントローラとを有する。各々のバンクはオン
チツプスタテイツクバツフアを具備したスタテイ
ツク・コラム型DRAMチツプでアレイ構成され
る。各々のバンクに関連する上記スタテイツクバ
ツフアでそれぞれのキヤツシユを構成してこれら
のキヤツシユが関連するバンクに対してアクセス
された最新の行をそれぞれ保持する。メモリコン
トローラはメモリバスで実アドレスを受け取つて
そのアドレスからバンクの番号と行の番号を抽出
する。メモリコントローラはバンクに対してアク
セスされた行が関連するキヤツシユになるかどう
かを判断して、これが存在すればそのキヤツシユ
をアクセスし、そうでないときは、そのバンクに
対してアクセスされた行の内容と関連するキヤツ
シユの内容とを入れ換える。このため、メモリコ
ントローラは、全てのバンクに対して、キヤツシ
ユに現に存在する行の番号を含むフイールドと、
キヤツシユのための有効エントリフラグを含むフ
イールドとを保持する。 本発明によれば、DRAMに具備されオンチツ
プスタテイツクバツフアは現にアドレス指定され
た行のためのオンチツプキヤツシユとみなすこと
ができる。新しいアクセスにより異なる行のビツ
トが必要なときは、スタテイツクバツフアにある
古い方のビツトがDRAMのセルのマトリツクス
へ書き戻されスタテイツクバツフアへ新しいビツ
トがわずか130ナノ秒で自動的にロードされる。
したがつて、オペレーシヨンのサイクルタイムは
この入換えが必要なときは(それ程頻繁にはな
い)130ナノ秒であるがそれ以外はスタテイツク
バツフアの40ナノ秒となる。 〔実施例〕 第1図に実施例の構成を示す。メモリ12は16
個のバンクを有する。各バンクは6K×4の
DRAMチツプが8個で構成される。各バンクは
256ワード(すなわち1Kバイト)のスタテイツク
バツフア221ないし2216をそれぞれ有する。
バンクに関連したスタテイツクバツフアで構成さ
れたキヤツシユのことをここでは、分散型のキヤ
ツシユという意味で、“分散キヤツシユ”24と
呼ぶことにする。分散キヤツシユ24はバンクに
関連する高速のバツフアである。分散キヤツシユ
24は関連するバンクのアドレス指定された最新
の行を保持する。分散キヤツシユ24は物理的に
はDRAMチツプ上に存するものでありシステム
の外部からは付加されない。分散キヤツシユ24
は、データ、命令およびスタツク等の何に対して
もキヤツシユとして機能する。“分散”という用
語は次の2つのことを示唆するために用いた。1
つは分散キヤツシユがCPU側でなくメモリ側に
存在するということ、もう1つの分散キヤツシユ
24を構成する1つ1つのブロツク(スタテイツ
クバツフア221ないし2216)が厳密にそれぞ
れのメモリバンクだけにしか関連しないというこ
とである。したがつて以下の説明では分散キヤツ
シユという用語は、分散キヤツシユを構成する1
つ1つのブロツクまたはその全体である分散キヤ
ツシユ24の両方の意味で使う。 第4図は第1図の構成をより一般的に示したも
のである。第4図ではメモリ12はn個のバンク
で構成される。第4図では、さらに、メモリコン
トローラ18の入出力ラインが詳細に示してあ
る。メモリコントローラ18はCPU10(また
はバス14上の他のDMAユニツト24)から実
アドレスを受け取つて読取りオペレーシヨンまた
は書込みオペレーシヨンのためにDRAMをアク
セスする。メモリコントローラ18は分散キヤツ
シユに現に入つている各バンクの行を追跡する。
メモリコントローラ18は、さらに、DRAMの
リフレツシユ期間およびアクセスタイムの全ての
タイミングを制御する。メモリコントローラ18
は、この他、バス14との適切な初期手続き手順
のプロトコルも提供する。メモリコントローラ1
8は各バンクに対し2つのフイールドを保持し、
これにより下記の第1表(分散キヤツシユ制御テ
ーブル)に示すように、分散キヤツシユに現に入
つている行の番号と、分散キヤツシユのための有
効エントリフラグ(有効ビツト)とを記憶する。
いえば、スタテイツク・コラム型のDRAM
(Dynamic random access memory)を用いた
メモリシステムに関するものである。 〔開示の概要〕 以下に示すメモリシステム制御方法は、オンチ
ツプスタテイツクバツフアを具備するスタテイツ
ク・コラム型DRAMで構成されたバンクを複数
個有するメモリシステムにおいて、各々のバンク
に関連するスタテイツクバツフアをそれぞれのキ
ヤツシユとして使用することによつて、システム
全体の性能を高めるようにしたものである。 〔従来技術〕 第3図に示すように代表的なマイクロコンピユ
ータシステムはバス14を介してメモリ12に接
続されたCPU10を有する。メモリバンク16
のデータをアクセスするため、CPU10はメモ
リコントローラ18を使用する。メモリコントロ
ーラ18はDRAMのリフレツシユ、バンクのイ
ンターリーブ、クロツキング、およびCPU10
との初期接続手順を遂行する。場合によつてはシ
ステムのスループツトを増すためにキヤツシユ
(命令キヤツシユもしくはデータキヤツシユまた
はその双方)20を有するようなマイクロコンピ
ユータもある。キヤツシユは高速のメモリであつ
て、通常、バスの脇のCPUで常駐する。キヤツ
シユに関連する制御論理はキヤツシユへのアクセ
スの回数が最大になるように働く。キヤツシユへ
のアクセスの成功は“ヒツト”と呼ばれる。要求
されたワードがキヤツシユにないとき(すなわち
“ミス”)だけ主メモリがアクセスされる。 従来のシステムの例はたとえば米国特許第
4156290号に開示されている。この特許は各々入
力レジスタおよび出力レジスタを具備した複数の
メモリチツプから成るRAM(Random access
memory)について開示するものである。メモリ
コントローラは現アドレスの最も重要な部分を記
憶する静止化レジスタを有する。静止化レジスタ
の出力はアドレス一致回路をRAMを構成するチ
ツプの入力とに接続される。メモリの各アドレス
は第1の部分および第2の部分から成る。各アド
レスの第1の部分は、それにより識別されるアド
レスのところに記憶されたメモリエレメントの全
てのワードをアドレス指定する。アドレス指定さ
れた全てのワードは対応するアドレスレジスタに
記憶される。各アドレスの第2の部分により関連
する出力レジスタを選択することができる。この
プロシージヤによれば、1ブロツクの情報の読取
りオペレーシヨンで、1回のメモリアクセス時間
と出力レジスタの読取り時間が消費される。 米国特許第4382278号に複数のレジスタと少な
くとも1つの作業スペースとを主メモリに具備し
たコンピユータシステムについて開示している。
さらに、CPU内にも複数のレジスタで構成され
た作業スペースキヤツシユメモリが在る。これら
のレジスタは主メモリの作業スペースの複数のレ
ジスタに対応するものである。コンピユータのオ
ペレーシヨンは作業スペースキヤツシユレジスタ
の内容を用いて遂行される。作業スペースキヤツ
シユレジスタの内容は、コンテクストスイツチン
グの際、主メモリの作業スペースの対応する作業
レジスタへ転送される。このような作業スペース
のシステムのアーキテクチヤによれば、高速のレ
ジスタ間オペレーシヨンおよび高速のコンテクス
トスイツチングが達成される。 ダイナミツクメモリの新しい流れとして、幾つ
かの製造業者からスタテイツク・コラム型
DRAMが提供されている。このDRAMは1行全
体を記憶するオンチツプのスタテイツクバツフア
を具備するものである。たとえば64KのDRAM
は各々256ビツトから成る256個の行を有するの
で、そのスタテイツクバツフアは256ビツトであ
る。(この様子を第2図に示す)256KのDRAM
は各々512ビツトから成る512個の行を有するの
で、そのスタテイツクバツフアは512ビツトであ
る。スタテイツクバツフアに1行が記憶されれ
ば、その行ではどのビツトでも高速にアクセス
(読取りまたは書込み)できる。130ナノ秒のサイ
クルタイムを有するDRAMの場合、スタテイツ
クバツフアのサイクルタイムは第2図に示すよう
に、わずか40ナノ秒である。 〔発明が解決しようとする問題点〕 しかしながら、以下に示したコンピユータシス
テムは性能改善の余地があり、特に最後に記した
スタテイツク・コラム型DRAMに関していえば
まだ有効に利用されるに至つていないというのが
現状である。 したがつて本発明の目的はスタテイツク・コラ
ム型のDRAMを用いてコンピユータシステム全
体の性能を大幅に改善することにある。 〔問題点を解決するための手段〕 この目的を達成するため、本発明のメモリシス
テム制御方法は、オンチツプスタテイツクバツフ
アを具備するスタテイツク・コラム型ダイナミツ
ク・ランダム・アクセス・メモリで構成されたバ
ンクを複数個有するメモリシステムにおいて、
各々のバンクに関連するスタテイツクバツフアを
それぞれのキヤツシユとして使用し、アクセスさ
れた各々のバンクの最新の行を関連するスタテイ
ツクバツフアでそれぞれ保持するようにしたこと
を特徴とする。 本発明のメモリシステムは複数のバンクとメモ
リコントローラとを有する。各々のバンクはオン
チツプスタテイツクバツフアを具備したスタテイ
ツク・コラム型DRAMチツプでアレイ構成され
る。各々のバンクに関連する上記スタテイツクバ
ツフアでそれぞれのキヤツシユを構成してこれら
のキヤツシユが関連するバンクに対してアクセス
された最新の行をそれぞれ保持する。メモリコン
トローラはメモリバスで実アドレスを受け取つて
そのアドレスからバンクの番号と行の番号を抽出
する。メモリコントローラはバンクに対してアク
セスされた行が関連するキヤツシユになるかどう
かを判断して、これが存在すればそのキヤツシユ
をアクセスし、そうでないときは、そのバンクに
対してアクセスされた行の内容と関連するキヤツ
シユの内容とを入れ換える。このため、メモリコ
ントローラは、全てのバンクに対して、キヤツシ
ユに現に存在する行の番号を含むフイールドと、
キヤツシユのための有効エントリフラグを含むフ
イールドとを保持する。 本発明によれば、DRAMに具備されオンチツ
プスタテイツクバツフアは現にアドレス指定され
た行のためのオンチツプキヤツシユとみなすこと
ができる。新しいアクセスにより異なる行のビツ
トが必要なときは、スタテイツクバツフアにある
古い方のビツトがDRAMのセルのマトリツクス
へ書き戻されスタテイツクバツフアへ新しいビツ
トがわずか130ナノ秒で自動的にロードされる。
したがつて、オペレーシヨンのサイクルタイムは
この入換えが必要なときは(それ程頻繁にはな
い)130ナノ秒であるがそれ以外はスタテイツク
バツフアの40ナノ秒となる。 〔実施例〕 第1図に実施例の構成を示す。メモリ12は16
個のバンクを有する。各バンクは6K×4の
DRAMチツプが8個で構成される。各バンクは
256ワード(すなわち1Kバイト)のスタテイツク
バツフア221ないし2216をそれぞれ有する。
バンクに関連したスタテイツクバツフアで構成さ
れたキヤツシユのことをここでは、分散型のキヤ
ツシユという意味で、“分散キヤツシユ”24と
呼ぶことにする。分散キヤツシユ24はバンクに
関連する高速のバツフアである。分散キヤツシユ
24は関連するバンクのアドレス指定された最新
の行を保持する。分散キヤツシユ24は物理的に
はDRAMチツプ上に存するものでありシステム
の外部からは付加されない。分散キヤツシユ24
は、データ、命令およびスタツク等の何に対して
もキヤツシユとして機能する。“分散”という用
語は次の2つのことを示唆するために用いた。1
つは分散キヤツシユがCPU側でなくメモリ側に
存在するということ、もう1つの分散キヤツシユ
24を構成する1つ1つのブロツク(スタテイツ
クバツフア221ないし2216)が厳密にそれぞ
れのメモリバンクだけにしか関連しないというこ
とである。したがつて以下の説明では分散キヤツ
シユという用語は、分散キヤツシユを構成する1
つ1つのブロツクまたはその全体である分散キヤ
ツシユ24の両方の意味で使う。 第4図は第1図の構成をより一般的に示したも
のである。第4図ではメモリ12はn個のバンク
で構成される。第4図では、さらに、メモリコン
トローラ18の入出力ラインが詳細に示してあ
る。メモリコントローラ18はCPU10(また
はバス14上の他のDMAユニツト24)から実
アドレスを受け取つて読取りオペレーシヨンまた
は書込みオペレーシヨンのためにDRAMをアク
セスする。メモリコントローラ18は分散キヤツ
シユに現に入つている各バンクの行を追跡する。
メモリコントローラ18は、さらに、DRAMの
リフレツシユ期間およびアクセスタイムの全ての
タイミングを制御する。メモリコントローラ18
は、この他、バス14との適切な初期手続き手順
のプロトコルも提供する。メモリコントローラ1
8は各バンクに対し2つのフイールドを保持し、
これにより下記の第1表(分散キヤツシユ制御テ
ーブル)に示すように、分散キヤツシユに現に入
つている行の番号と、分散キヤツシユのための有
効エントリフラグ(有効ビツト)とを記憶する。
【表】
イールド
バンクの標識ビツト(有効エントリフラグフイー
ルドのビツト)は電源投入後全て無効化される
(ゼロにセツトされる)。DRAMはリフレツシユ
オペレーシヨンの間中もスタテイツクバツフアを
使うので分散キヤツシユの内容は破壊される。し
たがつて1バンク内におけるリフレツシユオペレ
ーシヨンの後もその標識ビツトはゼロにセツトさ
れる。 バス14からメモリ12をアクセスする際、メ
モリコントローラ18はそのアドレスからバンク
の番号および行の番号を抽出する。このアドレス
の構成は下記のとおりである。
バンクの標識ビツト(有効エントリフラグフイー
ルドのビツト)は電源投入後全て無効化される
(ゼロにセツトされる)。DRAMはリフレツシユ
オペレーシヨンの間中もスタテイツクバツフアを
使うので分散キヤツシユの内容は破壊される。し
たがつて1バンク内におけるリフレツシユオペレ
ーシヨンの後もその標識ビツトはゼロにセツトさ
れる。 バス14からメモリ12をアクセスする際、メ
モリコントローラ18はそのアドレスからバンク
の番号および行の番号を抽出する。このアドレス
の構成は下記のとおりである。
【表】
〓〓〓 〓〓〓
バンク 分散キ
の行ア ヤツシ
ドレス ユ内の
アドレ
ス
メモリコントローラ18は、そのバンクに対し
てアクセスされた行が分散キヤツシユに入つてい
るかどうか(ヒツトしたかどうか)を判断し、ヒ
ツトすれば、列アドレス(分散キヤツシユ内の場
所)を送出してそのバンクの列アドレス選択(以
下CASという)ラインを活動化する。このよう
なヒツトアクセスは、35ないし40ナノ秒のオーダ
ーできわめて高速になされる。アクセスされたワ
ードが分散キヤツシユにないときは(ミス)、分
散キヤツシユの内容を入れ換える。このため、そ
のバンクの行アドレス選択(以下RASという)
ラインが非活動化され、新しいアドレスの行番号
で再び活動化される。このオペレーシヨンで、分
散キヤツシユの内容をDRAMのセルのマトリツ
クスへ書き戻して新しい行全体を分散キヤツシユ
にロードする。このオペレーシヨンはわずか130
ナノ秒しか要しない。このように分散キヤツシユ
の内容の入れ換えは非常に短い時間ですむ。アク
セスされたワードはメモリ12からラツチ26へ
読み取られて、ストローブ信号により普通のやり
方でバス14へ送られる。 ダイナミツク型のRAMはどんなものでも必ず
リフレツシユオペレーシヨンが必要である。標準
的なDRAMなら、4ミリ秒ごとに全ての行をリ
フレツシユしなければならない。256行の場合、
平均的にいえば、1つのバンクの1行は16マイク
ロ秒ごとにリフレツシユしなければならない。1
回のリフレツシユクペレーシヨンで分散キヤツシ
ユの内容が破壊されるので、16マイクロ秒ごとに
分散キヤツシユは無効化されリフレツシユ後の最
初のアクセスはミスとなる。以上のようにリフレ
ツシユがあるため、分散キヤツシユの内容は最高
16マイクロ秒しか維持されない。64ミリ秒ごとの
リフレツシユでよいような良好なDRAMを使え
ば、この点は256マイクロ秒まで改善される。さ
らにシステム全体の性能を向上させるため、全て
のバンクの同じ番号の行を同時にリフレツシユす
る。したがつてバンクの個数にかかわらず、メモ
リ全体に対して4ミリ秒で合計256回のリフレツ
シユオペレーシヨンしか要らない。リフレツシユ
オペレーシヨンそれ自体は、RASラインを活動
化すること、およびRASラインを再び非活動化
することを含む。これは130なの秒でよい。 メモリコントローラ18はバンクを16個までア
ドレス指定できる。各バンクが64Kワード
(256Kバイト)を有するなら、1Mワード(4Mバ
イト)までアドレス指定できる。この場合、合計
4Kワード(16Kバイト)までの分散キヤツシユ
が提供される。1つのバンクにつき1ブロツクの
分散キヤツシユしか提供されないから、分散キヤ
ツシユのブロツク数を増やす目的でメモリを多数
のバンクに分けることは非常に重要である。
256KDRAMを64K×4で構成すれば、256K×1
で構成するものよりも多くのバンクが提供され
る。メモリコントローラ18は、各バンクの
RASラインを活動状態に維持することによつて、
全てのバンクの分散キヤツシユを高速アクセスの
ために活動状態すなわちレデイ状態に保つ。メモ
リコントローラ18はCASラインを使つてアク
セスしたいバンクを選択する。こうしてプログラ
ムに関して現に使用されている作業領域全体(コ
ード、データ、スタツク等)を分散キヤツシユに
入れることができる。複数のバンクなら、それに
より1以上の冗長なバンクを提供できるという利
点もある。こうすれば現に走行中のバンクのうち
の1つに障害があると検知されたときに適当なア
クシヨンを採ることができる。メモリコントロー
ラ18は、CPUから受け取つたバンク番号を現
に動作中のバンクへ動的にマツピングすることが
できる。 第5図はメモリコントローラ18の構成を示す
図である。バス制御ユニツト28はシステムバス
14とインターフエースする。バス制御ユニツト
28は実アドレスを受け取つてシステムバス14
とデータのやりとりを行う。CPUまたはシステ
ムバス14上の他のユニツトとのトランザクシヨ
ンは、全て、制御回路30のバスクロツクで同期
化される。CPUまたは他のユニツトは新たな読
取り要求または書き込み要求で、バスサイクルご
とにメモリコントローラ18をアドレスすること
ができる。メモリコントローラ18がビジー状態
にあつて要求が受諾できない場合、バス制御ユニ
ツト28は、再試行信号を要求元に戻して次のサ
イクルでその要求を繰り返すよう要請する。メモ
リコントローラ18が前の要求のためのデータを
返す準備を完了している場合は、メモリコントロ
ーラ18は、1サイクル前に、データ伝送のため
にシステムバス14を予約するようシステムのユ
ニツトへ知らせる。読取りであれ書込みであれい
かなる要求もリフレツシユ、分散キヤツシユのヒ
ツトまたはミス等の様々な状況に依存するから、
メモリコントローラの処理すべきサイクル数は未
知であるかもしれないが、その実行のシーケンス
は要求のシーケンスと全く同じである。 バツフア32およびアドレスレジスタ34を設
けることにより、システム14から分散キヤツシ
ユ制御部36およびECC(Error Cheking and
Correcjing)ユニツト38へのアドレスおよびデ
ータのパイプラインによるフローと、ECCユニ
ツト38からシステムバス14へのアドレスおよ
びデータのパイプラインによるフローとを維持す
る。分散キヤツシユ制御部36は、メモリの各バ
ンクを構成するDRAMチツプをリフレツシユで
きるよう、リフレツシユコントローラ40とイン
ターフエースする。前述の第1図の例では、分散
キヤツシユ制御部はDRAM側の32ビツトバスと
インターフエースして16個のバンクを駆動する。
各バンクは、10個または40個のメモリチツプから
成り(“×1”または“×4”で構成するかどう
かによつてその個数が異なる)ECCビツトを具
備した32ビツト幅のメモリを構成する。分散キヤ
ツシユ制御部36は、各バンクにおいて活動中の
行アドレスを追跡する行アドレステーブルを保持
する。ロード要求および記憶要求の全てのアドレ
スは、高速アクセスが可能かどうかを判断するた
めに、行アドレステーブルのエントリと比較され
る。分散キヤツシユ制御部36は各バンクに対し
てRASラインおよびCASラインの1つのペアを
有する。RASを使つてDRAMの行から分散キヤ
ツシユへのロードおよびアンロードを行い、
CASを使つてそのバンクを選択する。 メモリクロツクはバスクロツクに対し非同期的
であり、それはDRAMのアクセスタイムを最適
化するように選択する。バスクロツクはプロセツ
サの速度に整合するように選択する。 リフレツシユコントローラ40はDRAMの全
ての行の行アドレスを回帰するリフレツシユカウ
ンタを有する。リフレツシユコントローラ40
は、さらに、リフレツシユの周期を知らせるため
のクロツクカウンタを具備する。そうしたリフレ
ツシユの周期ごとに、システムの全てのDRAM
においてリフレツシユカウンタの内容で指定され
る行がリフレツシユされ、次のリフレツシユに備
えてリフレツシユカウンタが増分される。リフレ
ツシユが行われると、分散キヤツシユ制御部36
の行アドレステーブルの内容は無効化される。 ECCユニツト38はパス・スルー(pass−
through)の生成、エラーの検出および訂正を行
う。1ビツトエラーは訂正されて、記録のためフ
ラグが立てられる。2ビツトエラーはシステムバ
ス14上のユニツトに通知される。バツフアリン
グ、RAMのアクセス、およびECCはパインプラ
イン形式で遂行される。したがつて、ひとたびパ
イプラインが確立すれば、1バスサイクルにつき
1回の割合いでアクセスができる。 以下、実施例の評価結果について説明する。性
能の評価は32ビツトのマイクロプロセツサに本メ
モリシステムを接続したモデルについて行つた。
ベンチマークプログラムとしてPL/1タイプの
コンパイラを使用した。この評価の目的は、
DRAMチツプで構成されたバンクの数が増える
につれてシステムの性能および分散キヤツシユの
ヒツト率がどれだけ改善されるかを判断すること
である。この改善の評価は、1/2Kバイトまたは
1Kバイトのオンチツプ命令キヤツシユを具備し
たプロセツサにスタテイツク・コラム型の
DRAMを接続したものについても行つた。下記
の第2表は、命令キヤツシユを具備しないプロセ
ツサに、スタテイツク・コラム・モードを使わな
いDRAM(すなわち普通のDRAM)を接続した
システムの性能を1としたときの相対性能を示す
ものである。この表から、システムの性能がプロ
セツサの命令キヤツシユおよびメモリのバンク数
(1、2、4、8および16)によつていかに向上
するかがわかる。第2表で、メモリのバンクの数
“0”は、スタテイツク・コラム・モードを使わ
ないDRAMを接続したシステムであることを意
味する。
バンク 分散キ
の行ア ヤツシ
ドレス ユ内の
アドレ
ス
メモリコントローラ18は、そのバンクに対し
てアクセスされた行が分散キヤツシユに入つてい
るかどうか(ヒツトしたかどうか)を判断し、ヒ
ツトすれば、列アドレス(分散キヤツシユ内の場
所)を送出してそのバンクの列アドレス選択(以
下CASという)ラインを活動化する。このよう
なヒツトアクセスは、35ないし40ナノ秒のオーダ
ーできわめて高速になされる。アクセスされたワ
ードが分散キヤツシユにないときは(ミス)、分
散キヤツシユの内容を入れ換える。このため、そ
のバンクの行アドレス選択(以下RASという)
ラインが非活動化され、新しいアドレスの行番号
で再び活動化される。このオペレーシヨンで、分
散キヤツシユの内容をDRAMのセルのマトリツ
クスへ書き戻して新しい行全体を分散キヤツシユ
にロードする。このオペレーシヨンはわずか130
ナノ秒しか要しない。このように分散キヤツシユ
の内容の入れ換えは非常に短い時間ですむ。アク
セスされたワードはメモリ12からラツチ26へ
読み取られて、ストローブ信号により普通のやり
方でバス14へ送られる。 ダイナミツク型のRAMはどんなものでも必ず
リフレツシユオペレーシヨンが必要である。標準
的なDRAMなら、4ミリ秒ごとに全ての行をリ
フレツシユしなければならない。256行の場合、
平均的にいえば、1つのバンクの1行は16マイク
ロ秒ごとにリフレツシユしなければならない。1
回のリフレツシユクペレーシヨンで分散キヤツシ
ユの内容が破壊されるので、16マイクロ秒ごとに
分散キヤツシユは無効化されリフレツシユ後の最
初のアクセスはミスとなる。以上のようにリフレ
ツシユがあるため、分散キヤツシユの内容は最高
16マイクロ秒しか維持されない。64ミリ秒ごとの
リフレツシユでよいような良好なDRAMを使え
ば、この点は256マイクロ秒まで改善される。さ
らにシステム全体の性能を向上させるため、全て
のバンクの同じ番号の行を同時にリフレツシユす
る。したがつてバンクの個数にかかわらず、メモ
リ全体に対して4ミリ秒で合計256回のリフレツ
シユオペレーシヨンしか要らない。リフレツシユ
オペレーシヨンそれ自体は、RASラインを活動
化すること、およびRASラインを再び非活動化
することを含む。これは130なの秒でよい。 メモリコントローラ18はバンクを16個までア
ドレス指定できる。各バンクが64Kワード
(256Kバイト)を有するなら、1Mワード(4Mバ
イト)までアドレス指定できる。この場合、合計
4Kワード(16Kバイト)までの分散キヤツシユ
が提供される。1つのバンクにつき1ブロツクの
分散キヤツシユしか提供されないから、分散キヤ
ツシユのブロツク数を増やす目的でメモリを多数
のバンクに分けることは非常に重要である。
256KDRAMを64K×4で構成すれば、256K×1
で構成するものよりも多くのバンクが提供され
る。メモリコントローラ18は、各バンクの
RASラインを活動状態に維持することによつて、
全てのバンクの分散キヤツシユを高速アクセスの
ために活動状態すなわちレデイ状態に保つ。メモ
リコントローラ18はCASラインを使つてアク
セスしたいバンクを選択する。こうしてプログラ
ムに関して現に使用されている作業領域全体(コ
ード、データ、スタツク等)を分散キヤツシユに
入れることができる。複数のバンクなら、それに
より1以上の冗長なバンクを提供できるという利
点もある。こうすれば現に走行中のバンクのうち
の1つに障害があると検知されたときに適当なア
クシヨンを採ることができる。メモリコントロー
ラ18は、CPUから受け取つたバンク番号を現
に動作中のバンクへ動的にマツピングすることが
できる。 第5図はメモリコントローラ18の構成を示す
図である。バス制御ユニツト28はシステムバス
14とインターフエースする。バス制御ユニツト
28は実アドレスを受け取つてシステムバス14
とデータのやりとりを行う。CPUまたはシステ
ムバス14上の他のユニツトとのトランザクシヨ
ンは、全て、制御回路30のバスクロツクで同期
化される。CPUまたは他のユニツトは新たな読
取り要求または書き込み要求で、バスサイクルご
とにメモリコントローラ18をアドレスすること
ができる。メモリコントローラ18がビジー状態
にあつて要求が受諾できない場合、バス制御ユニ
ツト28は、再試行信号を要求元に戻して次のサ
イクルでその要求を繰り返すよう要請する。メモ
リコントローラ18が前の要求のためのデータを
返す準備を完了している場合は、メモリコントロ
ーラ18は、1サイクル前に、データ伝送のため
にシステムバス14を予約するようシステムのユ
ニツトへ知らせる。読取りであれ書込みであれい
かなる要求もリフレツシユ、分散キヤツシユのヒ
ツトまたはミス等の様々な状況に依存するから、
メモリコントローラの処理すべきサイクル数は未
知であるかもしれないが、その実行のシーケンス
は要求のシーケンスと全く同じである。 バツフア32およびアドレスレジスタ34を設
けることにより、システム14から分散キヤツシ
ユ制御部36およびECC(Error Cheking and
Correcjing)ユニツト38へのアドレスおよびデ
ータのパイプラインによるフローと、ECCユニ
ツト38からシステムバス14へのアドレスおよ
びデータのパイプラインによるフローとを維持す
る。分散キヤツシユ制御部36は、メモリの各バ
ンクを構成するDRAMチツプをリフレツシユで
きるよう、リフレツシユコントローラ40とイン
ターフエースする。前述の第1図の例では、分散
キヤツシユ制御部はDRAM側の32ビツトバスと
インターフエースして16個のバンクを駆動する。
各バンクは、10個または40個のメモリチツプから
成り(“×1”または“×4”で構成するかどう
かによつてその個数が異なる)ECCビツトを具
備した32ビツト幅のメモリを構成する。分散キヤ
ツシユ制御部36は、各バンクにおいて活動中の
行アドレスを追跡する行アドレステーブルを保持
する。ロード要求および記憶要求の全てのアドレ
スは、高速アクセスが可能かどうかを判断するた
めに、行アドレステーブルのエントリと比較され
る。分散キヤツシユ制御部36は各バンクに対し
てRASラインおよびCASラインの1つのペアを
有する。RASを使つてDRAMの行から分散キヤ
ツシユへのロードおよびアンロードを行い、
CASを使つてそのバンクを選択する。 メモリクロツクはバスクロツクに対し非同期的
であり、それはDRAMのアクセスタイムを最適
化するように選択する。バスクロツクはプロセツ
サの速度に整合するように選択する。 リフレツシユコントローラ40はDRAMの全
ての行の行アドレスを回帰するリフレツシユカウ
ンタを有する。リフレツシユコントローラ40
は、さらに、リフレツシユの周期を知らせるため
のクロツクカウンタを具備する。そうしたリフレ
ツシユの周期ごとに、システムの全てのDRAM
においてリフレツシユカウンタの内容で指定され
る行がリフレツシユされ、次のリフレツシユに備
えてリフレツシユカウンタが増分される。リフレ
ツシユが行われると、分散キヤツシユ制御部36
の行アドレステーブルの内容は無効化される。 ECCユニツト38はパス・スルー(pass−
through)の生成、エラーの検出および訂正を行
う。1ビツトエラーは訂正されて、記録のためフ
ラグが立てられる。2ビツトエラーはシステムバ
ス14上のユニツトに通知される。バツフアリン
グ、RAMのアクセス、およびECCはパインプラ
イン形式で遂行される。したがつて、ひとたびパ
イプラインが確立すれば、1バスサイクルにつき
1回の割合いでアクセスができる。 以下、実施例の評価結果について説明する。性
能の評価は32ビツトのマイクロプロセツサに本メ
モリシステムを接続したモデルについて行つた。
ベンチマークプログラムとしてPL/1タイプの
コンパイラを使用した。この評価の目的は、
DRAMチツプで構成されたバンクの数が増える
につれてシステムの性能および分散キヤツシユの
ヒツト率がどれだけ改善されるかを判断すること
である。この改善の評価は、1/2Kバイトまたは
1Kバイトのオンチツプ命令キヤツシユを具備し
たプロセツサにスタテイツク・コラム型の
DRAMを接続したものについても行つた。下記
の第2表は、命令キヤツシユを具備しないプロセ
ツサに、スタテイツク・コラム・モードを使わな
いDRAM(すなわち普通のDRAM)を接続した
システムの性能を1としたときの相対性能を示す
ものである。この表から、システムの性能がプロ
セツサの命令キヤツシユおよびメモリのバンク数
(1、2、4、8および16)によつていかに向上
するかがわかる。第2表で、メモリのバンクの数
“0”は、スタテイツク・コラム・モードを使わ
ないDRAMを接続したシステムであることを意
味する。
以上説明したように、本発明によればコンピユ
ータシステムの全体としての性能が従来に比べて
大幅に向上する。
ータシステムの全体としての性能が従来に比べて
大幅に向上する。
第1図は本発明の実施例を説明する図、第2図
はスタテイツク・コラム型DRAMの構成とその
タイミングを簡単に説明する図、第3図は代表的
なマイクロコンピユータシステムの構成を示す
図、第4図はメモリコントローラの入出力ライン
を詳細に示す図、第5図はメモリコントローラの
構成を示す図、第6図は分散キヤツシユのヒツト
率とメモリバンクの数との関係を示す図である。
はスタテイツク・コラム型DRAMの構成とその
タイミングを簡単に説明する図、第3図は代表的
なマイクロコンピユータシステムの構成を示す
図、第4図はメモリコントローラの入出力ライン
を詳細に示す図、第5図はメモリコントローラの
構成を示す図、第6図は分散キヤツシユのヒツト
率とメモリバンクの数との関係を示す図である。
Claims (1)
- 【特許請求の範囲】 1 複数のバンクに編成された複数のメモリ・チ
ツプとメモリコントローラを備え、 上記各メモリ・チツプは、行アドレス選択信号
と行番号アドレスによりアクセスされるm行、n
列のメモリセル・マトリツクスを有し、 上記各バンクは、スタテイツク・コラム型ダイ
ナミツク・ランダム・アクセス・メモリ・チツプ
のアレイで構成され、上記行アドレス選択信号と
行番号アドレスによりアクセスされる上記メモリ
セル・マトリツクス内の1つの行全体のデータを
保持する、1個のオンチツプ・スタテイツクバツ
フアを具備し、 上記各バンクに対応する上記各スタテイツクバ
ツフアでそれぞれ分散キヤツシユを構成し、これ
らの分散キヤツシユが対応するバンクに対してア
クセスされた最新の行のデータを保持し、 上記各分散キヤツシユのデータは、対応する上
記バンクの列アドレス選択信号と列アドレスによ
りアクセスされ、 上記メモリコントローラは、上記ダイナミツ
ク・ランダム・アクセス・メモリを周期的にリフ
レツシユするリフレツシユ手段と、第1、第2の
フイールドを保有する制御テーブルと、実アドレ
スを受取り上記ダイナミツク・ランダム・アクセ
ス・メモリに対して読取り書込み動作を行うため
のアクセス手段とを有し、 上記制御テーブルの第1のフイールドは上記各
バンクに対応する分散キヤツシユに現に存在する
行の番号を含み、第2のフイールドは上記各バン
クに対応する分散キヤツシユのための有効エント
リフラグを含み、上記有効エントリフラグは、あ
る行のデータが上記行アドレス選択信号及び行番
号アドレスに応答して上記分散キヤツシユに読込
まれたとき対応するバンクについて有効化され、
そのバンクのパワー・オン後及びリフレツシユ動
作後に無効化され、 上記アクセス手段は、上記実アドレスからバン
クの番号及び行の番号を抽出し、もしそのバンク
に対してアクセスされた1つの行が上記制御テー
ブルの第1のフイールドと第2のフイールドの有
効エントリフラグにより示された分散キヤツシユ
にあれば、そのバンクの列アドレスを発生し、列
アドレス選択信号を活動化し、もしなければ、そ
のバンクの行アドレス選択信号と行番号を不活動
化するとともに、該行アドレス選択信号を新しい
アドレスの行番号とともに再び活動化し、上記分
散キヤツシユの内容を上記ダイナミツク・ランダ
ム・アクセス・メモリのマトリツクスに書き戻
し、そのバンクの新しい行のデータを上記分散キ
ヤツシユにロードする、 ことを特徴とするコンピユータ・メモリシステ
ム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/651,562 US4725945A (en) | 1984-09-18 | 1984-09-18 | Distributed cache in dynamic rams |
| US651562 | 1984-09-18 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6174041A JPS6174041A (ja) | 1986-04-16 |
| JPH0359458B2 true JPH0359458B2 (ja) | 1991-09-10 |
Family
ID=24613332
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60119888A Granted JPS6174041A (ja) | 1984-09-18 | 1985-06-04 | コンピュータ・メモリシステム |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US4725945A (ja) |
| EP (1) | EP0175080B1 (ja) |
| JP (1) | JPS6174041A (ja) |
| CA (1) | CA1233272A (ja) |
| DE (1) | DE3584656D1 (ja) |
Families Citing this family (94)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62103898A (ja) * | 1985-10-31 | 1987-05-14 | Mitsubishi Electric Corp | ダイナミツクランダムアクセスメモリ装置 |
| US4710903A (en) * | 1986-03-31 | 1987-12-01 | Wang Laboratories, Inc. | Pseudo-static memory subsystem |
| US5226136A (en) * | 1986-05-06 | 1993-07-06 | Nintendo Company Limited | Memory cartridge bank selecting apparatus |
| JPS62260244A (ja) * | 1986-05-06 | 1987-11-12 | Nintendo Co Ltd | メモリカ−トリツジ |
| US4803621A (en) * | 1986-07-24 | 1989-02-07 | Sun Microsystems, Inc. | Memory access system |
| CA1330596C (en) * | 1986-11-19 | 1994-07-05 | Yoshiaki Nakanishi | Memory cartridge and data processing apparatus |
| JPS63175287A (ja) * | 1987-01-16 | 1988-07-19 | Hitachi Ltd | 記憶装置 |
| US4894770A (en) * | 1987-06-01 | 1990-01-16 | Massachusetts Institute Of Technology | Set associative memory |
| JP2714944B2 (ja) * | 1987-08-05 | 1998-02-16 | 三菱電機株式会社 | 半導体記憶装置 |
| US5179687A (en) * | 1987-09-26 | 1993-01-12 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device containing a cache and an operation method thereof |
| US5051889A (en) * | 1987-10-23 | 1991-09-24 | Chips And Technologies, Incorporated | Page interleaved memory access |
| US5226147A (en) * | 1987-11-06 | 1993-07-06 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device for simple cache system |
| JPH01146187A (ja) * | 1987-12-02 | 1989-06-08 | Mitsubishi Electric Corp | キヤッシュメモリ内蔵半導体記憶装置 |
| JPH01154261A (ja) * | 1987-12-11 | 1989-06-16 | Toshiba Corp | 情報処理装置 |
| AU2278688A (en) * | 1988-02-16 | 1989-08-17 | Sun Microsystems, Inc. | Distributed cache architecture |
| US5146581A (en) * | 1988-02-24 | 1992-09-08 | Sanyo Electric Co., Ltd. | Subprogram executing data processing system having bank switching control storing in the same address area in each of memory banks |
| US5329489A (en) * | 1988-03-31 | 1994-07-12 | Texas Instruments Incorporated | DRAM having exclusively enabled column buffer blocks |
| JP2895488B2 (ja) | 1988-04-18 | 1999-05-24 | 株式会社東芝 | 半導体記憶装置及び半導体記憶システム |
| US5301278A (en) * | 1988-04-29 | 1994-04-05 | International Business Machines Corporation | Flexible dynamic memory controller |
| US4974146A (en) * | 1988-05-06 | 1990-11-27 | Science Applications International Corporation | Array processor |
| US4870622A (en) * | 1988-06-24 | 1989-09-26 | Advanced Micro Devices, Inc. | DRAM controller cache |
| US4939692A (en) * | 1988-09-15 | 1990-07-03 | Intel Corporation | Read-only memory for microprocessor systems having shared address/data lines |
| US4905141A (en) * | 1988-10-25 | 1990-02-27 | International Business Machines Corporation | Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification |
| US6092153A (en) * | 1988-11-14 | 2000-07-18 | Lass; Stanley Edwin | Subsettable top level cache |
| CA2011518C (en) * | 1989-04-25 | 1993-04-20 | Ronald N. Fortino | Distributed cache dram chip and control method |
| US5261073A (en) * | 1989-05-05 | 1993-11-09 | Wang Laboratories, Inc. | Method and apparatus for providing memory system status signals |
| US4967397A (en) * | 1989-05-15 | 1990-10-30 | Unisys Corporation | Dynamic RAM controller |
| US5138705A (en) * | 1989-06-26 | 1992-08-11 | International Business Machines Corporation | Chip organization for an extendable memory structure providing busless internal page transfers |
| US5329629A (en) * | 1989-07-03 | 1994-07-12 | Tandem Computers Incorporated | Apparatus and method for reading, writing, and refreshing memory with direct virtual or physical access |
| JP2646032B2 (ja) * | 1989-10-14 | 1997-08-25 | 三菱電機株式会社 | Lifo方式の半導体記憶装置およびその制御方法 |
| JP2777247B2 (ja) * | 1990-01-16 | 1998-07-16 | 三菱電機株式会社 | 半導体記憶装置およびキャッシュシステム |
| DE69123987T2 (de) * | 1990-01-31 | 1997-04-30 | Hewlett Packard Co | Stossbetrieb für Mikroprozessor mit externem Systemspeicher |
| US5257360A (en) * | 1990-03-23 | 1993-10-26 | Advanced Micro Devices,Inc. | Re-configurable block length cache |
| JP2862948B2 (ja) * | 1990-04-13 | 1999-03-03 | 三菱電機株式会社 | 半導体記憶装置 |
| GB2244157A (en) * | 1990-05-15 | 1991-11-20 | Sun Microsystems Inc | Apparatus for row caching in random access memory |
| JP3225531B2 (ja) * | 1990-05-15 | 2001-11-05 | セイコーエプソン株式会社 | メモリカード |
| US5584034A (en) * | 1990-06-29 | 1996-12-10 | Casio Computer Co., Ltd. | Apparatus for executing respective portions of a process by main and sub CPUS |
| US5200564A (en) * | 1990-06-29 | 1993-04-06 | Casio Computer Co., Ltd. | Digital information processing apparatus with multiple CPUs |
| US5359722A (en) * | 1990-07-23 | 1994-10-25 | International Business Machines Corporation | Method for shortening memory fetch time relative to memory store time and controlling recovery in a DRAM |
| JPH0682339B2 (ja) * | 1990-08-31 | 1994-10-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | メモリ・アクセス・システムおよび方法 |
| EP0913777B1 (en) * | 1991-03-01 | 2005-05-11 | Advanced Micro Devices, Inc. | Output buffer for microprocessor |
| US5276838A (en) * | 1991-03-04 | 1994-01-04 | International Business Machines Corporation | Dynamically repositioned memory bank queues |
| US5289584A (en) * | 1991-06-21 | 1994-02-22 | Compaq Computer Corp. | Memory system with FIFO data input |
| JP2729423B2 (ja) * | 1991-10-29 | 1998-03-18 | 三菱電機株式会社 | 半導体記憶装置 |
| EP0552667B1 (en) * | 1992-01-22 | 1999-04-21 | Enhanced Memory Systems, Inc. | Enhanced dram with embedded registers |
| KR950000504B1 (ko) * | 1992-01-31 | 1995-01-24 | 삼성전자 주식회사 | 복수개의 로우 어드레스 스트로브 신호를 가지는 반도체 메모리 장치 |
| US5282177A (en) * | 1992-04-08 | 1994-01-25 | Micron Technology, Inc. | Multiple register block write method and circuit for video DRAMs |
| US5251174A (en) * | 1992-06-12 | 1993-10-05 | Acer Incorporated | Memory system |
| US5307320A (en) * | 1992-09-23 | 1994-04-26 | Intel Corporation | High integration DRAM controller |
| US5530902A (en) * | 1993-06-14 | 1996-06-25 | Motorola, Inc. | Data packet switching system having DMA controller, service arbiter, buffer type managers, and buffer managers for managing data transfer to provide less processor intervention |
| US5573629A (en) * | 1994-08-03 | 1996-11-12 | Herd Manufacturing, Inc. | Tape application apparatus |
| JP2704607B2 (ja) * | 1994-08-03 | 1998-01-26 | 三菱電機株式会社 | 半導体記憶装置 |
| US5508968A (en) * | 1994-08-12 | 1996-04-16 | International Business Machines Corporation | Dynamic random access memory persistent page implemented as processor register sets |
| JP3865775B2 (ja) * | 1995-04-11 | 2007-01-10 | キネテック インコーポレイテッド | データ処理システムにおけるデータの識別 |
| US5787267A (en) * | 1995-06-07 | 1998-07-28 | Monolithic System Technology, Inc. | Caching method and circuit for a memory system with circuit module architecture |
| US5873114A (en) * | 1995-08-18 | 1999-02-16 | Advanced Micro Devices, Inc. | Integrated processor and memory control unit including refresh queue logic for refreshing DRAM during idle cycles |
| US5835941A (en) * | 1995-11-17 | 1998-11-10 | Micron Technology Inc. | Internally cached static random access memory architecture |
| US6567904B1 (en) | 1995-12-29 | 2003-05-20 | Intel Corporation | Method and apparatus for automatically detecting whether a memory unit location is unpopulated or populated with synchronous or asynchronous memory devices |
| US5900011A (en) * | 1996-07-01 | 1999-05-04 | Sun Microsystems, Inc. | Integrated processor/memory device with victim data cache |
| US6167486A (en) * | 1996-11-18 | 2000-12-26 | Nec Electronics, Inc. | Parallel access virtual channel memory system with cacheable channels |
| US7272703B2 (en) * | 1997-08-01 | 2007-09-18 | Micron Technology, Inc. | Program controlled embedded-DRAM-DSP architecture and methods |
| US6119254A (en) * | 1997-12-23 | 2000-09-12 | Stmicroelectronics, N.V. | Hardware tracing/logging for highly integrated embedded controller device |
| US6661421B1 (en) | 1998-05-21 | 2003-12-09 | Mitsubishi Electric & Electronics Usa, Inc. | Methods for operation of semiconductor memory |
| US6535218B1 (en) | 1998-05-21 | 2003-03-18 | Mitsubishi Electric & Electronics Usa, Inc. | Frame buffer memory for graphic processing |
| US6559851B1 (en) | 1998-05-21 | 2003-05-06 | Mitsubishi Electric & Electronics Usa, Inc. | Methods for semiconductor systems for graphics processing |
| US6504550B1 (en) | 1998-05-21 | 2003-01-07 | Mitsubishi Electric & Electronics Usa, Inc. | System for graphics processing employing semiconductor device |
| US5963481A (en) * | 1998-06-30 | 1999-10-05 | Enhanced Memory Systems, Inc. | Embedded enhanced DRAM, and associated method |
| US6072746A (en) | 1998-08-14 | 2000-06-06 | International Business Machines Corporation | Self-timed address decoder for register file and compare circuit of a multi-port CAM |
| US6330636B1 (en) | 1999-01-29 | 2001-12-11 | Enhanced Memory Systems, Inc. | Double data rate synchronous dynamic random access memory device incorporating a static RAM cache per memory bank |
| US6094705A (en) * | 1999-03-10 | 2000-07-25 | Picoturbo, Inc. | Method and system for selective DRAM refresh to reduce power consumption |
| US6539487B1 (en) * | 1999-11-09 | 2003-03-25 | International Business Machines Corporation | System for dynamically selecting maximum number of accessible banks of memory per cycle by monitoring actual power to each of the banks to determine the number of accessible banks |
| US6708254B2 (en) | 1999-11-10 | 2004-03-16 | Nec Electronics America, Inc. | Parallel access virtual channel memory system |
| US7080234B2 (en) * | 2000-03-08 | 2006-07-18 | Sun Microsystems, Inc. | VLIW computer processing architecture having the problem counter stored in a register file register |
| HK1048537A1 (zh) | 2000-03-08 | 2003-04-04 | Sun Microsystems, Inc. | 设有装置在晶片上的动态随机存取记忆体(ram)的极长指令集电脑处理架构 |
| AU2001245520A1 (en) | 2000-03-08 | 2001-09-17 | Sun Microsystems, Inc. | Vliw computer processing architecture having a scalable number of register files |
| US6662265B1 (en) * | 2000-08-31 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Mechanism to track all open pages in a DRAM memory system |
| US6631444B2 (en) | 2001-06-27 | 2003-10-07 | Intel Corporation | Cache architecture for pipelined operation with on-die processor |
| US6662271B2 (en) * | 2001-06-27 | 2003-12-09 | Intel Corporation | Cache architecture with redundant sub array |
| US6647455B2 (en) | 2001-06-27 | 2003-11-11 | Intel Corporation | On-die cache memory with repeaters |
| US7389387B2 (en) * | 2001-12-31 | 2008-06-17 | Intel Corporation | Distributed memory module cache writeback |
| US6801980B2 (en) | 2002-04-25 | 2004-10-05 | International Business Machines Corporation | Destructive-read random access memory system buffered with destructive-read memory cache |
| DE10345978A1 (de) * | 2003-10-02 | 2005-04-28 | Infineon Technologies Ag | Speichervorrichtung mit Redundanz und Verfahren zur Datenspeicherung |
| US7173863B2 (en) * | 2004-03-08 | 2007-02-06 | Sandisk Corporation | Flash controller cache architecture |
| US7882299B2 (en) * | 2004-12-21 | 2011-02-01 | Sandisk Corporation | System and method for use of on-chip non-volatile memory write cache |
| JP2006297359A (ja) * | 2005-04-21 | 2006-11-02 | Sogo Setsubi Keikaku:Kk | フィルタユニット |
| US8185576B2 (en) | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
| US20090144404A1 (en) * | 2007-12-04 | 2009-06-04 | Microsoft Corporation | Load management in a distributed system |
| US20090150536A1 (en) * | 2007-12-05 | 2009-06-11 | Microsoft Corporation | Application layer congestion control |
| US7830734B2 (en) | 2008-03-14 | 2010-11-09 | Promos Technologies Pte. Ltd. | Asymetric data path position and delays technique enabling high speed access in integrated circuit memory devices |
| US8433880B2 (en) | 2009-03-17 | 2013-04-30 | Memoir Systems, Inc. | System and method for storing data in a virtualized high speed memory system |
| US9442846B2 (en) * | 2009-03-17 | 2016-09-13 | Cisco Technology, Inc. | High speed memory systems and methods for designing hierarchical memory systems |
| US8266408B2 (en) * | 2009-03-17 | 2012-09-11 | Memoir Systems, Inc. | System and method for storing data in a virtualized high speed memory system |
| WO2011075167A1 (en) * | 2009-12-15 | 2011-06-23 | Memoir Systems,Inc. | System and method for reduced latency caching |
| CA2801002C (en) | 2010-06-30 | 2014-12-30 | Koken Ltd. | Air blowing device |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3969706A (en) * | 1974-10-08 | 1976-07-13 | Mostek Corporation | Dynamic random access memory misfet integrated circuit |
| JPS5971184A (ja) * | 1982-10-15 | 1984-04-21 | Nec Corp | 記憶装置 |
| JPS59104791A (ja) * | 1982-12-04 | 1984-06-16 | Fujitsu Ltd | 半導体記憶装置 |
| JPS60115094A (ja) * | 1983-11-16 | 1985-06-21 | Fujitsu Ltd | ダイナミツクランダムアクセスメモリ装置 |
| US4584672A (en) * | 1984-02-22 | 1986-04-22 | Intel Corporation | CMOS dynamic random-access memory with active cycle one half power supply potential bit line precharge |
| US4561702A (en) * | 1984-05-09 | 1985-12-31 | Texas Instruments Incorporated | CMOS Address buffer circuit |
| US4577293A (en) * | 1984-06-01 | 1986-03-18 | International Business Machines Corporation | Distributed, on-chip cache |
| US4630240A (en) * | 1984-07-02 | 1986-12-16 | Texas Instruments Incorporated | Dynamic memory with intermediate column derode |
| US4658382A (en) * | 1984-07-11 | 1987-04-14 | Texas Instruments Incorporated | Dynamic memory with improved dummy cell circuitry |
| US4601018A (en) * | 1985-01-29 | 1986-07-15 | Allen Baum | Banked memory circuit |
| US4649522A (en) * | 1985-02-11 | 1987-03-10 | At&T Bell Laboratories | Fast column access memory |
-
1984
- 1984-09-18 US US06/651,562 patent/US4725945A/en not_active Expired - Fee Related
-
1985
- 1985-05-23 CA CA000482187A patent/CA1233272A/en not_active Expired
- 1985-06-04 JP JP60119888A patent/JPS6174041A/ja active Granted
- 1985-07-12 DE DE8585108699T patent/DE3584656D1/de not_active Expired - Lifetime
- 1985-07-12 EP EP85108699A patent/EP0175080B1/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6174041A (ja) | 1986-04-16 |
| DE3584656D1 (de) | 1991-12-19 |
| CA1233272A (en) | 1988-02-23 |
| EP0175080A2 (en) | 1986-03-26 |
| EP0175080B1 (en) | 1991-11-13 |
| US4725945A (en) | 1988-02-16 |
| EP0175080A3 (en) | 1988-07-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0359458B2 (ja) | ||
| CA2011518C (en) | Distributed cache dram chip and control method | |
| US5329629A (en) | Apparatus and method for reading, writing, and refreshing memory with direct virtual or physical access | |
| US4577293A (en) | Distributed, on-chip cache | |
| US5659713A (en) | Memory stream buffer with variable-size prefetch depending on memory interleaving configuration | |
| US4937791A (en) | High performance dynamic ram interface | |
| US6925534B2 (en) | Distributed memory module cache prefetch | |
| US6865646B2 (en) | Segmented distributed memory module cache | |
| US5490113A (en) | Memory stream buffer | |
| US5249284A (en) | Method and system for maintaining data coherency between main and cache memories | |
| JP2002150771A (ja) | Dramキャッシュ・メモリ中のデータをリフレッシュする方法および装置 | |
| US20240069757A1 (en) | Memory control device and refresh control method thereof | |
| JPH0821238B2 (ja) | 半導体記憶装置 | |
| US7917692B2 (en) | Method and system for using dynamic random access memory as cache memory | |
| EP0470739B1 (en) | Method for managing a cache memory system | |
| US7389387B2 (en) | Distributed memory module cache writeback | |
| US6446169B1 (en) | SRAM with tag and data arrays for private external microprocessor bus | |
| US6222786B1 (en) | Dynamic random access memory with write-without-restore and systems and methods using the same | |
| EP0535701A1 (en) | Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM) | |
| US5479640A (en) | Memory access system including a memory controller with memory redrive circuitry | |
| US6931505B2 (en) | Distributed memory module cache command formatting | |
| JPH0991206A (ja) | メモリ制御装置およびメモリ検査方法 | |
| US6880044B2 (en) | Distributed memory module cache tag look-up | |
| US6606680B2 (en) | Method and apparatus for accessing banked embedded dynamic random access memory devices | |
| JPH06103163A (ja) | 記憶装置 |