JPH083802B2 - コンピユ−タ・メモリのアクセス方法およびシステム - Google Patents

コンピユ−タ・メモリのアクセス方法およびシステム

Info

Publication number
JPH083802B2
JPH083802B2 JP62180185A JP18018587A JPH083802B2 JP H083802 B2 JPH083802 B2 JP H083802B2 JP 62180185 A JP62180185 A JP 62180185A JP 18018587 A JP18018587 A JP 18018587A JP H083802 B2 JPH083802 B2 JP H083802B2
Authority
JP
Japan
Prior art keywords
row address
address
memory
current
virtual row
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP62180185A
Other languages
English (en)
Other versions
JPS6334652A (ja
Inventor
エドムント・ジヨセフ・ケリイ
Original Assignee
サン・マイクロシステムズ・インコ−ポレ−テツド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by サン・マイクロシステムズ・インコ−ポレ−テツド filed Critical サン・マイクロシステムズ・インコ−ポレ−テツド
Publication of JPS6334652A publication Critical patent/JPS6334652A/ja
Publication of JPH083802B2 publication Critical patent/JPH083802B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means

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

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、コンピユータのメモリ・システムに関し、
更に詳細には、データのアクセス速度および効率を高め
る方法および装置に関する。
〔発明の背景〕
多くのデータ処理システムでは、プロセツサの平均メ
モリ・アクセス時間を改善するのに、中央処理装置(CP
U)に接続した“キヤツシユ”と呼称されている高速バ
ツフア・メモリを使用することが一般に行なわれてい
る。キヤツシユの使用は、稼働中、データ処理システム
が高い周波数でメモリのローカライズド(localized)
領域をアクセスするであろうという前提に基づいてい
る。キヤツシユは、代表的には主メモリに配置された全
データ・セツトのサブセツトを含み、かつ主メモリにお
けるデータ位置を読出す必要なく、CPUにより非常に速
くアクセスすることができる。
しかし、キヤツシユを使用すれば、データ処理システ
ムはかなり複雑になり、またシステムのコストが非常に
高くなる。したがつて、メモリ・アクセスを要求するこ
とは、キヤツシユ・アーキテクチヤの複雑性および高コ
ストを認めるようなものであつた。新しい世代のリデユ
ースド・インストラクシヨン・セツト・コンピユータ
(RISC)では、処理速度は単一サイクルのメモリ・アク
セスを必要としている。最新のメモリ・システムは、一
般に200ナノ秒のサイクル時間(“サイクル”時間は、
メモリ・アクセスの開始から、メモリ・デイバイスによ
りデータを再び供給し得るまでの時間である)を有する
ダイナミツク・ランダム・アクセス・メモリ(DRAM)を
使用している。代表的DRAMは200ナノ秒のサイクル時間
を有しているが、特定のデイバイス用の列アクセス/サ
イクル時間は通常たつた45ナノ秒である(“アクセス時
間”は列アドレス信号(CAS、すなわち、Column Addres
s Signal )の供給からデータをデータ・バスに供給す
るまでの時間である)。したがつて、市販されているDR
AMのサイクル時間は、同じデイバイスの列アクセス/サ
イクル時間の最高5倍となる。
後述するように、DRAMメモリにデータ記憶を適切に割
当て、かつ本発明の技術を使用することにより、コンピ
ユータの主メモリはキヤツシユとして有効に使用でき
る。本発明は、別のキヤツシユを必要とすることなくコ
ンピユータの主メモリを速くしかも有効にアクセスす
る、コンピユータ・システムにおいて使用される方法お
よび装置を開示している。本発明は、主メモリのローカ
ライズド・サブセツトを高速アクセスできるアーキテク
チヤにおいてスタテイツク列DRAMを使用しており、また
バーチヤル(virtual)・メモリ技術を用いているシス
テムにおいて使用するのに特に適している。
〔発明の概要〕
本発明は、バーチヤル(仮想)・メモリ技術を用いて
いるコンピユータ・システムにおいて特に使用される改
善されたメモリ・アーキテクチヤを示している。プロセ
ツサはダイナミツク・ランダム・アクセス・メモリ(DR
AM)に記憶されたデータをアクセスする行および列アド
レスを供給する。プロセツサにより供給されたバーチヤ
ル・アドレスは、上位および下位ビツトを含んでいる。
本実施例では、バーチヤル上位ビツトは行アドレスを表
わし、下位ビツトは実・列アドレスを表わしている。バ
ーチヤル行アドレスは、実・行アドレスに翻訳するメモ
リ管理装置(MMU、すなわち、Memory Management Uni
t)に供給される。実・列アドレスは翻訳しないでよ
い。コンピユータは現在のバーチヤル行アドレスと、ラ
ツチに記憶された前の行アドレスとを比較する。現在の
行アドレスと前の行アドレスが整合(マツチ)している
ならば、サイクル制御回路は全メモリ・フエツチ・サイ
クルを開始し、かつ各RASおよびCAS信号とともに、DRAM
に行および列アドレスを供給して、ラツチの内容を更新
する。メモリにおいてデータを適切に構成することによ
り、連続的メモリ・オペレーシヨンがDRAMにおける同じ
行をアクセスする確率はかなり高まる。このような構成
を使用することにより、本発明は記憶されたデータのサ
ブセツトに関するキヤツシユ・メモリ・システムと同じ
ような速度でデータ検索を行なうことができる。また、
DRAMにおける同じ行に沿つて記憶されたデータは、全メ
モリ・フエツチ・サイクルに要する時間の4〜5倍速い
速度でアクセスできる。
以下、添付の図面に基づいて、本発明の実施例につい
て説明する。
〔実施例〕
特にバーチヤル・メモリ技術を用いたコンピユータ・
システムにおいて使用される、改善されたメモリ・アー
キテクチヤについて説明する。以下の説明において、特
定のメモリ・デババイス・データ・レート、アーキテク
チヤ、および構成部品は本発明の理解を助けるためのも
のであつて、本発明はこれら特定の記載に限定されない
ことは当業者には明白であろう。また、周知の回路につ
いては、本発明を不必要に不明瞭にしないようブロツク
形式で示している。
第1図は、本発明の概念をブロツク形式で示してい
る。ダイナミツク・ランダム・アクセス・メモリ(DRA
M)10は、データ処理システムの1つのメモリ・デイバ
イスから成つている。本実施例では、DRAM10は、アレイ
中のデータ位置を識別する行および列アドレスを有して
いる形式のメモリ・アレイを含んでいる。DRAM10は、ス
タテイツク列アクセスを備えた現世代の1メガビツトCM
OSダイナミツクRAMであつてもよい。このようなメモリ
・デイバイスにおいては、メモリ・アクセスの開始から
目標データの出力までのサイクル・タイムは200ナノ秒
のオーダである。データは、データが配置されているメ
モリ・アレイ中の特定の行を識別する行アドレスを、行
アドレス・ストローブ(RAS)信号とともに先ず供給す
ることによつてDRAM10からアクセスされる。その後、目
標データを有するエネーブルされた行における特定の列
を識別する列アドレスが列アドレス・ストローブ(CA
S)信号とともにDRAM10に供給される。代表的には、ス
タテイツク列DRAMにおいて、列アドレスとCAS信号の供
給から、デイバイスによるデータの出力までの時間は約
45ナノ秒である。列アドレスとCAS信号の供給から、デ
ータ出力までの期間は、メモリ・デイバイスの“列アク
セス”時間と呼称されている。このように、メモリ・サ
イクルはデイバイスの列アクセス/サイクル速度の長さ
の約5倍である。
最新の世代のスタテイツク列DRAMメモリ・デイバイス
では、一旦行アドレスおよびRASストローブ信号が供給
されると、適当な列アドレスおよびCAS信号を供給する
ことにより、行アドレスおよびRAS信号を再び供給する
必要なく、エネーブルされた行に配置されたどのデータ
・エレメントでもアクセスすることができる。前にエネ
ーブルされた行に記憶されたデータのアクセスは、メモ
リ・アレイにおける他の行に記憶されたデータをアクセ
スするのとは反対に、非常に速く(約45ナノ秒)行なわ
れる。
プロセツサの平均アクセス時間を改善するため、中央
処理装置に接続された“キヤツシユ”メモリを使用する
ことは、高速データ処理においては一般的なことであ
る。キヤツシユは、システムの主メモリ中に配置された
データのサブセツトを含み、かつ主メモリにおけるデー
タ位置を読出す必要がなく、プロセツサにより非常に高
速にアクセスできる。通常、高速処理システムでは、プ
ロセツサによる単一サイクル・メモリ・アクセスを行な
うには、キヤツシユ・メモリが必要とされている。しか
し、前に述べたように、キヤツシユを使用すると、デー
タ処理システムのコストおよび複雑さが著しく増大して
しまう。したがつて、後述するように、本発明は、キヤ
ツシユの必要をなくし、しかも主メモリ中のローカライ
ズド(localized)領域の高速アクセスを行なうメモリ
・システムを提供する。データがDRAM10(第1図)中に
適切に配置されているならば、あらかじめエネーブルさ
れた行に配置されているどのデータ・エレメントでもシ
ステムの単一クロツク・サイクルにおいてアクセスする
ことができることは、当業者には明白であろう。したが
つて、メモリ・アレイにデータを適切に記憶することに
より、プロセツサは主メモリのローカライズド・サブセ
ツトをキヤツシユとして有効に使用することができる。
第1図において、プロセツサ(図示せず)は、DRAM10
に記憶されている目標データをアクセスする行アドレス
12と列アドレス14とを備えている。列アドレス14は、後
述するようにDRAM10に行アドレスまたは列アドレスのい
ずれかを選択的に供給するマルチプレクサ16に供給され
る。行アドレス12は、ラツチ18と比較器20に供給され
る。サイクル制御回路22は、マルチブレクサ16の他、ラ
ツチ18と比較器20に接続され、データをアクセスするた
めDRAM10にRASおよびCAS信号を供給する。第1図に示さ
れているメモリ・システムへ初期行アドレス12と列アド
レス14を供給すると、比較器20は、前の全RAS、CASメモ
リ・サイクルにおいてデータをアクセスするのに使用さ
れた前の行アドレス(RA(i−1))と現在の行アドレ
ス12(RA(i))とを比較する。ラツチに記憶された行
アドレスが、プロセツサにより供給された現在の行アド
レスと整合(マツチ)しない場合、サイクル制御回路22
は、その後現在の行アドレスがラツチに記憶されるよう
にラツチ18をクロツクし、かつDRAM10に現在の行アドレ
ス12を供給するようマルチブレクサ16に信号を送る。さ
らに、サイクル制御回路22は、メモリ・アレイ中の目標
の行がエネーブルされるようDRAM10にRAS信号を送る。
その後、サイクル制御回路22は、マルチブレクサ16を介
してDRAM10に列アドレス14を供給し、さらにアレイ中の
アクセスされるべき特定のデータを識別する適当なCAS
信号をDRAMに送る。続いて、DRAM10は、代表的にはデー
タ・バス(図示せず)を介して選択されたデータをプロ
セツサに供給する。
現在の行アドレスRA(i)が、ラツチ18に記憶されて
いる前の行アドレスRA(i−1)と同じ場合には、サイ
クル制御回路22はDRAM10に現在の列アドレス14を供給
し、かつCAS信号を発生する。前に述べたように、DRAM1
0中の特定の行がエネーブルされると、その行における
データ・エレメントのアクセスは非常に速く行なわれ
る。第1図に示した本実施例では、前のデータ・サイク
ルにおいてエネーブルされた行に記憶されたデータをア
クセスするには、単にDRAM10に列アドレス14を供給する
だけでよい。したがつて、現在の行アドレスが直前の行
アドレスと同じ場合には、現在の行アドレスをDRAMに再
び供給し、またさらに別のRAS信号を供給する必要はな
く、メモリをアクセスするには現在の列アドレスとCAS
信号を供給するだけでよい。代表的な用途では、本発明
を使用することにより、代表的な200ナノ秒ではなく約4
5ナノ秒で、DRAM10に記憶されているデータをアクセス
することができる。
また、ワーキング・メモリ・システムにおいては、単
一のダイナミツクRAMではなくメモリの複数バンクが使
用されることは、当業者には明白であろう。第1図に示
されたシステムを具体化するためには、メモリ・バンク
中の同じ行の複数シーケンシヤル・アクセスの確率が著
しく増すように、メモリの複数バンクにデータを配置す
る必要がある。頻繁に使用されるデータがこの方法でメ
モリ中に配置されているならば、非常に高価で複雑なキ
ヤツシユ・システムのかわりに主メモリを使用すること
ができる。
第2図に示すように、バーチヤル・メモリ技術を使用
しているデータ処理システムにおいて2つのバンク、す
なわちDRAMバンク“A"とDRAMバンク“B"を有している実
施例に基づいて本発明について説明する。なお、不必要
に複雑にしないよう、本発明を説明する上で必要なアド
レス、制御およびデータ・ラインしか示していない。し
かし、実際に具体化するには、他のライン、デイバイス
およびサポート回路が必要なことは、当業者には明白で
あろう。
プロセツサ30は、バーチヤル・アドレス・バス32に沿つ
て本発明のメモリ・システムと連絡している。バーチヤ
ル・アドレス・バス32は、マルチビツト・ワードの形式
でアドレスを送る複数のラインを含んでいる。代表的に
は、プロセツサは16〜32ビツトの間のアドレス・バスを
使用し、これによりビツトはアドレス・バスを形成して
いるラインすなわちワイヤに沿つて並列に伝送される。
本実施例では、アドレス・バス32を介して送られるアド
レスは、下位ビツトがDRAMメモリの直接(実)アドレス
・セグメントを形成し、また下位ビツトがライン34に沿
つてバーチャル・アドレス・バス32から分離されるよう
に、構成されている。後述するように、下位(実)アド
レス・ビツトは、DRAMバンクAとDRAMバンクBに記憶さ
れている目標データ用の列アドレスから成つている。上
位アドレス・ビツトは、主メモリDRAMバンクA,Bに記憶
されたデータ用の行アドレスに対応するバーチヤル・ア
ドレス・セグメントを形成している(たとえば、本出願
人に譲渡された米国特許第4.527.232号および第4.550.3
68号参照)。
バーチヤル・アドレス・セグメントから成る上位ビツ
トは、バーチヤル・アドレス・バス32に保持されてい
る。図示のように、上位バーチヤル・ビツトは、上位フ
イジカル・アドレスに翻訳するためメモリ管理装置(MM
U)38に供給される。本実施例では、MMU38は、フアース
ト・スタテイツクRAMのような比較的高速のランダム・
アクセス・メモリ装置である。MMU38は、入力としてプ
ロセツサ30により供給された上位バーチヤル・アドレス
を受信し、出力としてライン40に沿つて、翻訳されたフ
イジカル(実)アドレスを供給し、これはDRAMバンクA,
Bにおける目標データの実際のフイジカル行アドレスを
指定する。MMU38は、参照のため本明細書に記載されて
いる米国特許第4.527.232号に示されているようなメモ
リ管理装置の形式であつてもよい。
ラツチ42は、バーチャル・アドレス・バス32に接続さ
れ、かつ比較器43はラツチ42の他、バーチャル・アドレ
ス・バス32に接続されている。同様に、ラツチ44は、バ
ーチャル・アドレス・バス36に接続され、さらに比較器
48に接続されている。比較器48は、プロセツサ30からバ
ーチャル・アドレス・バス32を介して供給された現在の
バーチャル・アドレスとラツチ44の内容とを比較する。
図示のように、比較器43,48の出力は、ORゲート50を介
してサイクル制御回路55に接続している。すなわち、比
較器43,48の出力間のOR動作の結果が、サイクル制御回
路55に送られる。以下に詳述するように、サイクル制御
回路55は、DRAMバンクA,Bに適当なRAS、CAS信号を供給
する他、ラツチ42,44のクロツキングおよびマルチブレ
クサ60の選択を制御する。
MMU38は、プロセツサ30により供給されたバーチャル
・アドレスの最下位翻訳フイジカル・ビツトをライン62
を介してラツチ42のチツブ・エネーブル(CE)ポートに
供給する。ラツチ42またはラツチ44のいずれかを選択す
るには、最下位翻訳済フイジカル・ビツトの状態が使用
される(本実施例では、2つのメモリ・バンクに対して
最下位翻訳済フイジカル・ビツトだけが必要とされてい
る)。たとえば、最下位翻訳済フイジカル・ビツトが論
理0の場合、このビツトはラツチ44に供給され(しか
し、これは0なので、ラツチ44をエネーブルしない)、
かつインバータ63により論理1に反転されてラツチ42に
供給され、それによりラツチ42をエネーブルする。逆に
言えば、ラツチ44は、バーチャル・アドレスの最下位翻
訳済フイジカル・ビツトが論理1の場合にエネーブルさ
れる。第2図に示すように、最下位翻訳済フイジカル・
ビツトはサイクル制御装置55に供給され、かつこのビツ
ト(または、3つ以上のメモリ・バンクの場合、複数の
ビツト)により、サイクル制御装置55はどのDRAMバンク
・データをアクセスすべきかを識別する。
たとえば、プロセッサ30は、DRAMバンクAに配置され
たデータに対応するバーチャル・アドレス・バス32を介
してバーチャル・アドレスを供給すると仮定する。前述
したように、バンク中の列アドレスに対応する下位ビツ
トは実アドレス・セグメントから成り、かつ分離されて
ライン34を介してマルチブレクサ60に送られる。DRAMバ
ンクA中の行アドレスに対応するアドレスのバーチャル
・セグメントはバーチャル・アドレス・バス32に供給さ
れ、かつ翻訳された上位ビツトがライン40に沿つてマル
チブレクサ60に送られるようにMMU38により直ちに翻訳
される。さらに、最下位翻訳済フイジカル・ビツトはラ
イン62を介してラツチ42,44に送られる。本実施例で
は、最下位翻訳済フイジカル・ビツトが論理0の場合、
論理0はインバータ63により論理1に反転されるので、
ラツチ42はエネーブルされる。バーチャル・アドレスは
比較器43とエネーブルされたラツチ42に同時に供給され
る。なお、現在のバーチャル行アドレスはラツチ42に供
給されるが、そのラツチ42は前のバーチャル行アドレス
を含み、またラツチがクロツクされるまで前のバーチャ
ル行アドレスを含み続ける。
比較器43は、現在のバーチャル行アドレスと、ラツチ
42に記憶されている前のバーチャル行アドレスとを比較
する。比較器43,48の出力は、ORゲート50とサイクル制
御装置55に送られる。比較器43または比較器48のいずれ
かが、現在の行バーチヤル・アドレスとラツチの内容と
の間の整合を識別した場合、ORゲート50は整合があるこ
とを表示し、ライン65を介してサイクル制御装置55に信
号を供給する。各比較器の出力も、サイクル制御装置55
に直接的に接続し、どのラツチ/比較回路が整合を識別
したかを識別する。現在の行バーチヤル・アドレスとラ
ツチ42の内容との間に整合があるこの例では、サイクル
制御装置55は、列アドレスから成る実アドレス・セグメ
ント・をフイジカル・アドレス・バス70とDRAMバンクA
とに送るよう、マルチブレクサ60に信号を送る。サイク
ル制御装置55はまた、必要な列アドレス信号(CASA)を
供給する。その後、DRAMバンクAはスタテイツク列ダイ
ナミツクRAMのアクセス時間内(約45ナノ秒)に目標デ
ータをデータ・バス(図示せず)に供給する。したがつ
て、整合がある場合には、本発明はバーチヤル行アドレ
スを再び供給する必要がなくしかも目標データをアクセ
スするのに要していたさらに別のRAS信号を必要としな
い。なお、代表的にはCAS信号ラインは高状態に保持さ
れていて、低状態に供給され、またRASラインはデータ
・アクセスのため代表的には低状態にあることは当業者
には明白であろう。本発明の動作の順序については第3
図に基づいて説明する。
現在のバーチヤル行アドレスとラツチ42に記憶された
前の行アドレスとの間に整合がない場合には、サイクル
制御装置55はライン40の翻訳された(現在、実)行アド
スレをフイジカル・アドレス・バス70に沿つてメモリ・
バンクAに送るよう、マルチブレクサ60に信号を送る。
同時に、サイクル制御装置55はバンクAにRAS高信号を
発生し、かつ現在のバーチヤル行アドレスがそこに記憶
されるように、エネーブルされたラツチ、すなわちラツ
チ42をクロツクするクロツク・ライン72に沿つてクロツ
ク信号を供給する。その後、RASラインは低状態にな
り、マルチブレクサ60は、バンクAに列アドレスを定義
する実アドレス・セグメントを供給し、また低CAS信号
を供給する。ラツチ42の更新を含んでいるこの全メモリ
・サイクル・アクセス、および、それらの各ストローブ
を伴う行および列アドレスの供給とが完了すると、デー
タはメモリ・バンクAによりデータ・バス(図示せず)
に沿つてプロセツサに供給される。なお、全メモリ・ア
クセス・サイクルが必要とされている場合には目標デー
タを得る本発明の時間は、コンピユータの主メモリにお
けるデータを得る標準的なメモリ・アクセス技術を使用
した他のコンピユータシステムの時間と同じであること
は当業者には明白であろう。しかし、現在のバーチヤル
行アドレスと前に記憶されたバーチヤル行アドレスとの
間に整合がある場合には、本発明はメモリ・アクセス速
度を著しく改善する。
さらに、第2図に示されている本発明を使用すること
により、コンピユータ・システムは、翻訳されたバーチ
ヤル行アドレスに基づいたある種のデータ、具体的には
最下位翻訳済フイジカル行アドレス・ビツトに対してメ
モリ・バンクを割当てることができる。一般に、ほとん
どのコンピユータ・システムでは、プロセツサ・メモリ
・フエツチの約50%がインストラクシヨン用で、メモリ
・フエツチの約50%がデータ用である。現在の世代のRI
SCプロセツサにおいては、メモリ・フエツチ動作の約20
%がデータを得るためで、フエツチ動作の約80%がイン
ストラクシヨンを得るためである。したがつて、本発明
を使用することにより、メモリのローカライズド・サブ
セツトを非常に速くアクセスすることができるように、
1つ以上のメモリ・バンクに有効な“キヤツシユ”を定
義することができる。言い換えれば、コンピユータ・シ
ステムの動作システムは、メモリに記憶されたインスト
ラクシヨンおよびデータを見のがさずに、たとえば偶数
のメモリ・バンクにはデータを、奇数のメモリ・バンク
にはインストラクシヨンを配置することができる。した
がつて、同じバーチヤル行アドレスを有するDRAMバンク
に対するプロセツサによるシーケンシヤル・メモリ・ア
クセスの確率は著しく増加する。第2図に示すような本
発明のハードウエアに関して、このようなメモリ・シス
テム・アーキテクチヤを使用することにより、多くの場
合別のキヤツシユ・システムを必要としないですむ。さ
らに、第2図はダイナミツクRAMメモリの2つのバンク
を示しているが、各バンクが対応するラツチと比較器回
路を有し、かつ特定のラツチをエネーブルするのに使用
される最下位翻訳済フイジカル・ビツトの数が、使用さ
れるダイナミツクRAMバンクの数の関数であるような複
数のバンクであつてもよいことは、当業者には明白であ
ろう。
また、本発明は第1図〜第3図に基づいて説明された
きたが、これら図面は図示の目的だけのものであつて、
他の多くのメモリに対しても使用できることは言うまで
もない。
【図面の簡単な説明】
第1図は本発明の特徴を示しているブロツク図である。 第2図は本発明の実施例を示している詳細なブロツク図
である。 第3図は第2図に示した実施例の動作シーケンスを示し
たフローチヤートである。 10……DRAM、12……行アドレス、14……列アドレス、16
……マルチブレクサ、18……ラツチ、20……比較器、22
……サイクル制御装置、30……プロセツサ、32……バー
チヤル・アドレス・バス、42,44……ラツチ、43,48……
比較器、38……MMU、55……サイクル制御装置、60……
マルチブレクサ。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】N個のバンクを含むメモリ・アレイのそれ
    ぞれが静的列アクセスを行うダイナミックRAMからな
    り、データを記憶するメモリ装置であって、各々の記憶
    域が実の行アドレスおよび列アドレスによって特定され
    る複数の記憶域でデータが記憶されるとともに、行アド
    レス・ストローブ信号(RAS)に続いて上記実の行アド
    レスを受信し、上記列アドレスに続く列アドレス・スト
    ローブ信号(CAS)を受信して上記特定された記憶域の
    上記データがアクセスされるメモリ装置において; プロセッサを有し、上記メモリ・アレイの一つの目標デ
    ータ記憶域に対応する仮想行アドレスと上記列アドレス
    とを発生するアドレス発生装置; 上記アドレス発生装置に接続され、上記メモリ・アレイ
    のN個のバンクのそれぞれに一個づつN個のラッチを含
    んでいて、上記仮想行アドレスを受け、かつクロック信
    号の受信のもとでその仮想行アドレスを記憶するラッチ
    装置; 上記ラッチ装置と上記アドレス発生装置とに電気的に接
    続され、上記メモリ・アレイのN個のバンクのそれぞれ
    に一個づつN個の比較器を含んでいて、上記アドレス発
    生装置からの現在の仮想行アドレスと、上記ラッチ装置
    に現在記憶されている前の仮想行アドレスとを比較する
    とともに、上記比較結果を表示する出力を供給し、上記
    比較器の出力を受け、出力を供給するORゲートを更に含
    んでいる比較器装置; 上記仮想行アドレスを実の行アドレスに翻訳するメモリ
    管理装置(MMU); 上記ORゲートの上記出力、上記ラッチ装置、上記MMU、
    および上記メモリ装置とに電気的に接続され、かつ上記
    比較器出力を受け、上記実の行および列アドレスと上記
    RASおよびCAS信号を上記一つのメモリ・アレイに供給す
    るサイクル制御装置であって、上記比較器出力が、上記
    現在の仮想行アドレスが上記前の仮想行アドレスと同一
    ではないことを表示した場合だけ、上記実の行アドレス
    と上記RAS信号を上記一つのメモリ・アレイに供給し、
    かつ上記比較器出力が、上記現在の仮想行アドレスが上
    記前の仮想行アドレスと同一であることを表示した場合
    は、上記列アドレスと上記CASアドレスだけを上記一つ
    のメモリ・アレイに供給するサイクル制御装置; を備え、上記現在の仮想行アドレスが上記前の仮想行ア
    ドレスとは同一ではないことを上記比較器出力が表示し
    た場合は、上記クロック信号を供給するクロック装置を
    上記サイクル制御装置が備えていることを特徴とするメ
    モリのアクセス・システム。
  2. 【請求項2】N個のバンクを含むメモリ・アレイのそれ
    ぞれが静的列アクセスを行うダイナミックRAMからな
    り、データを記憶するメモリをアクセスする方法であっ
    て、各々の記憶域が実の行アドレスおよび列アドレスに
    よって特定される複数の記憶域で上記メモリ・アレイの
    少なくとも一つでデータが記憶されるとともに、行アド
    レス・ストローブ信号(RAS)に続いて上記実の行アド
    レスを受け、上記列アドレスに続いて列アドレス・スト
    ローブ信号(CAS)を受けた後で上記特定された記憶域
    の上記データがアクセスされる、メモリをアクセスする
    方法において; クロック信号を受けると、上記メモリ・アレイのN個の
    バンクのそれぞれに一個づつN個のラッチを含んだラッ
    チ装置に仮想行アドレスを記憶する過程; 上記メモリ・アレイの一つの目標データ記憶域に対応す
    る現在の仮想行アドレスと現在の列アドレスとをプロセ
    ッサ内で発生する過程; 上記メモリ・アレイのN個のバンクのそれぞれに一個づ
    つN個の比較器を使用して、上記現在の仮想行アドレス
    と、上記ラッチ装置に記憶されている上記仮想行アドレ
    スとを比較する過程; メモリ管理装置(MMU)内で上記現在の仮想行アドレス
    を現在の実の行アドレスへと翻訳する過程; 上記現在の仮想行アドレスが上記ラッチ装置に記憶され
    た上記仮想行アドレスと同一ではない場合だけ、上記現
    在の実の行アドレスと上記RAS信号が上記一つのメモリ
    ・アレイに供給され、かつ上記現在の仮想行アドレスが
    上記ラッチ装置に記憶された上記仮想行アドレスと同一
    である場合は上記列アドレスと上記CAS信号だけが供給
    されるように、上記比較に基づいて上記一つのメモリ・
    アレイに上記現在の実の行アドレスと、上記現在の列ア
    ドレスと、上記RASおよびCAS信号とを供給する過程; 上記現在の行アドレスが上記ラッチ装置に記憶された上
    記仮想行アドレスと同一ではない場合は、上記ラッチ装
    置に上記現在の仮想行アドレスを記憶するようにクロッ
    ク信号を供給する過程; とから成ることを特徴とするメモリをアクセスする方
    法。
JP62180185A 1986-07-24 1987-07-21 コンピユ−タ・メモリのアクセス方法およびシステム Expired - Fee Related JPH083802B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/890,075 US4803621A (en) 1986-07-24 1986-07-24 Memory access system
US890.075 1986-07-24

Publications (2)

Publication Number Publication Date
JPS6334652A JPS6334652A (ja) 1988-02-15
JPH083802B2 true JPH083802B2 (ja) 1996-01-17

Family

ID=25396226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62180185A Expired - Fee Related JPH083802B2 (ja) 1986-07-24 1987-07-21 コンピユ−タ・メモリのアクセス方法およびシステム

Country Status (8)

Country Link
US (1) US4803621A (ja)
JP (1) JPH083802B2 (ja)
CA (1) CA1278875C (ja)
DE (1) DE3724317A1 (ja)
FR (1) FR2602070B1 (ja)
GB (1) GB2193017B (ja)
HK (1) HK27491A (ja)
SG (1) SG8891G (ja)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
GB2215498A (en) * 1988-02-01 1989-09-20 Tsb International Inc Expandable reconfigurable memory circuit
IT1216087B (it) * 1988-03-15 1990-02-22 Honeywell Bull Spa Sistema di memoria con selezione predittiva di modulo.
IT1216086B (it) * 1988-03-15 1990-02-22 Honeywell Bull Spa Memoria tampone ad indirizzamento pseudo virtuale.
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
US5230067A (en) * 1988-05-11 1993-07-20 Digital Equipment Corporation Bus control circuit for latching and maintaining data independently of timing event on the bus until new data is driven onto
US4937791A (en) * 1988-06-02 1990-06-26 The California Institute Of Technology High performance dynamic ram interface
US4870622A (en) * 1988-06-24 1989-09-26 Advanced Micro Devices, Inc. DRAM controller cache
JPH0774994B2 (ja) * 1988-09-21 1995-08-09 株式会社日立製作所 バッファ記憶制御装置のosc検出方式
GB2226666B (en) * 1988-12-30 1993-07-07 Intel Corp Request/response protocol
US5121487A (en) * 1989-02-21 1992-06-09 Sun Microsystems, Inc. High speed bus with virtual memory data transfer capability using virtual address/data lines
US4937734A (en) * 1989-02-21 1990-06-26 Sun Microsystems, Inc. High speed bus with virtual memory data transfer and rerun cycle capability
US5097483A (en) * 1989-02-21 1992-03-17 Sun Microsystems, Inc. Tri-statable bus with apparatus to drive bus line to first level and then second level for predetermined time before turning off
US4967397A (en) * 1989-05-15 1990-10-30 Unisys Corporation Dynamic RAM controller
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
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
US4951246A (en) * 1989-08-08 1990-08-21 Cray Research, Inc. Nibble-mode dram solid state storage device
JP2945757B2 (ja) * 1989-09-08 1999-09-06 オースペックス システムズ インコーポレイテッド 多重装置オペレーティングシステムのアーキテクチャ
US5163131A (en) * 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
JPH03113794A (ja) * 1989-09-22 1991-05-15 Toshiba Corp 半導体記憶装置
DE3932103C2 (de) * 1989-09-26 1998-01-15 Siemens Ag Schaltungsanordnung für Cache-Speicher
US5280601A (en) * 1990-03-02 1994-01-18 Seagate Technology, Inc. Buffer memory control system for a magnetic disc controller
GB2246001B (en) * 1990-04-11 1994-06-15 Digital Equipment Corp Array architecture for high speed cache memory
JP2862948B2 (ja) * 1990-04-13 1999-03-03 三菱電機株式会社 半導体記憶装置
US6751696B2 (en) 1990-04-18 2004-06-15 Rambus Inc. Memory device having a programmable register
US5995443A (en) * 1990-04-18 1999-11-30 Rambus Inc. Synchronous memory device
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US6324120B2 (en) 1990-04-18 2001-11-27 Rambus Inc. Memory device having a variable data output length
US5247630A (en) * 1990-07-09 1993-09-21 The United States Of America As Represented By The Secretary Of The Navy M-dimensional computer memory with m-1 dimensional hyperplane access
JPH0682339B2 (ja) * 1990-08-31 1994-10-19 インターナショナル・ビジネス・マシーンズ・コーポレイション メモリ・アクセス・システムおよび方法
US5479640A (en) * 1990-08-31 1995-12-26 International Business Machines Corporation Memory access system including a memory controller with memory redrive circuitry
EP0482575A3 (en) * 1990-10-26 1992-05-27 Samsung Semiconductor, Inc. Storage system for a high-performance processor
US5249282A (en) * 1990-11-21 1993-09-28 Benchmarq Microelectronics, Inc. Integrated cache memory system with primary and secondary cache memories
US5274786A (en) * 1990-11-28 1993-12-28 Hewlett-Packard Company Microprocessor memory bus interface for inhibiting relatching of row address portions upon subsequent accesses including a same row address portion
US5247643A (en) * 1991-01-08 1993-09-21 Ast Research, Inc. Memory control circuit for optimizing copy back/line fill operation in a copy back cache system
US5301292A (en) * 1991-02-22 1994-04-05 Vlsi Technology, Inc. Page mode comparator decode logic for variable size DRAM types and different interleave options
US5289584A (en) * 1991-06-21 1994-02-22 Compaq Computer Corp. Memory system with FIFO data input
US5430857A (en) * 1993-01-04 1995-07-04 Intel Corporation Method and apparatus for translating logical addresses into physical addresses using odd/even translation tables
US5682515A (en) * 1993-01-25 1997-10-28 Benchmarq Microelectronics, Inc. Low power set associative cache memory with status inhibit of cache data output
JPH06301596A (ja) * 1993-04-09 1994-10-28 Mitsubishi Electric Corp マイクロプロセッサ
US5606650A (en) * 1993-04-22 1997-02-25 Apple Computer, Inc. Method and apparatus for storage and retrieval of a texture map in a graphics display system
US6138126A (en) * 1995-05-31 2000-10-24 Network Appliance, Inc. Method for allocating files in a file system integrated with a raid disk sub-system
US6604118B2 (en) 1998-07-31 2003-08-05 Network Appliance, Inc. File system image transfer
US7174352B2 (en) 1993-06-03 2007-02-06 Network Appliance, Inc. File system image transfer
EP1003103B1 (en) * 1993-06-03 2008-10-01 Network Appliance, Inc. Write anywhere file-system layout method and apparatus
WO1994029796A1 (en) * 1993-06-03 1994-12-22 Network Appliance Corporation A method for allocating files in a file system integrated with a raid disk sub-system
EP0701715A4 (en) * 1993-06-04 1999-11-17 Network Appliance Corp METHOD FOR PROVIDING PARITY IN A RAID SUBSYSTEM USING REMANENT MEMORY
US5813028A (en) * 1993-10-12 1998-09-22 Texas Instruments Incorporated Cache read miss request invalidation prevention method
JPH07281948A (ja) * 1994-04-06 1995-10-27 Mitsubishi Electric Corp メモリ制御装置
US5594913A (en) * 1994-09-16 1997-01-14 Philips Electronics North America Corporation High speed memory access system for a microcontroller with directly driven low order address bits
US5809539A (en) * 1995-04-27 1998-09-15 Hitachi, Ltd. Processor system having address allocation and address lock capability adapted for a memory comprised of synchronous DRAMs
ATE241170T1 (de) * 1995-10-06 2003-06-15 Patriot Scient Corp Architektur für einen risc-mikroprozessor
US6470405B2 (en) * 1995-10-19 2002-10-22 Rambus Inc. Protocol for communication with dynamic memory
US5761694A (en) * 1995-11-30 1998-06-02 Cirrus Logic, Inc. Multi-bank memory system and method having addresses switched between the row and column decoders in different banks
US5815673A (en) * 1996-03-01 1998-09-29 Samsung Electronics Co., Ltd. Method and apparatus for reducing latency time on an interface by overlapping transmitted packets
US6266379B1 (en) 1997-06-20 2001-07-24 Massachusetts Institute Of Technology Digital transmitter with equalization
US6457130B2 (en) 1998-03-03 2002-09-24 Network Appliance, Inc. File access control in a multi-protocol file server
US6317844B1 (en) 1998-03-10 2001-11-13 Network Appliance, Inc. File server storage arrangement
US6559851B1 (en) 1998-05-21 2003-05-06 Mitsubishi Electric & Electronics Usa, Inc. Methods for semiconductor systems for graphics processing
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
US6504550B1 (en) 1998-05-21 2003-01-07 Mitsubishi Electric & Electronics Usa, Inc. System for graphics processing employing semiconductor device
US6343984B1 (en) * 1998-11-30 2002-02-05 Network Appliance, Inc. Laminar flow duct cooling system
JP5220974B2 (ja) * 1999-10-14 2013-06-26 ブルアーク ユーケー リミテッド ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法
US6970985B2 (en) 2002-07-09 2005-11-29 Bluerisc Inc. Statically speculative memory accessing
US7457822B1 (en) * 2002-11-01 2008-11-25 Bluearc Uk Limited Apparatus and method for hardware-based file system
US8041735B1 (en) 2002-11-01 2011-10-18 Bluearc Uk Limited Distributed file system and method
US20050114850A1 (en) 2003-10-29 2005-05-26 Saurabh Chheda Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control
US7996671B2 (en) * 2003-11-17 2011-08-09 Bluerisc Inc. Security of program executables and microprocessors based on compiler-architecture interaction
US8607209B2 (en) 2004-02-04 2013-12-10 Bluerisc Inc. Energy-focused compiler-assisted branch prediction
US20060129740A1 (en) * 2004-12-13 2006-06-15 Hermann Ruckerbauer Memory device, memory controller and method for operating the same
WO2006119100A2 (en) 2005-04-29 2006-11-09 Network Appliance, Inc. System and method for generating consistent images of a set of data objects
US20070294181A1 (en) * 2006-05-22 2007-12-20 Saurabh Chheda Flexible digital rights management with secure snippets
US20080126766A1 (en) 2006-11-03 2008-05-29 Saurabh Chheda Securing microprocessors against information leakage and physical tampering
US20080154379A1 (en) * 2006-12-22 2008-06-26 Musculoskeletal Transplant Foundation Interbody fusion hybrid graft
KR100924303B1 (ko) 2008-02-22 2009-11-02 인하대학교 산학협력단 메모리 어드레스의 모니터링 방법 및 장치
TWI428918B (zh) * 2009-09-29 2014-03-01 Silicon Motion Inc 記憶裝置以及記憶裝置之資料存取方法
US8694755B1 (en) * 2010-03-17 2014-04-08 Ambarella, Inc. Virtual memory management for real-time embedded devices

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3394354A (en) * 1965-11-30 1968-07-23 Ibm Multiple word random access memory
US3413613A (en) * 1966-06-17 1968-11-26 Gen Electric Reconfigurable data processing system
US4156905A (en) * 1974-02-28 1979-05-29 Ncr Corporation Method and apparatus for improving access speed in a random access memory
IT1052771B (it) * 1975-12-31 1981-07-20 Olivetti C E C S P A Dispositivo di indirizzamento di una memoria
US4081701A (en) * 1976-06-01 1978-03-28 Texas Instruments Incorporated High speed sense amplifier for MOS random access memory
US4106109A (en) * 1977-02-01 1978-08-08 Ncr Corporation Random access memory system providing high-speed digital data output
US4368515A (en) * 1981-05-07 1983-01-11 Atari, Inc. Bank switchable memory system
US4550368A (en) * 1982-07-02 1985-10-29 Sun Microsystems, Inc. High-speed memory and memory management system
US4527232A (en) * 1982-07-02 1985-07-02 Sun Microsystems, Inc. High-speed memory and memory management system
US4725945A (en) * 1984-09-18 1988-02-16 International Business Machines Corp. Distributed cache in dynamic rams
EP0182501A3 (en) * 1984-11-20 1988-01-20 Tektronix, Inc. Memory mapping method and apparatus

Also Published As

Publication number Publication date
SG8891G (en) 1991-06-21
CA1278875C (en) 1991-01-08
GB2193017B (en) 1990-08-29
US4803621A (en) 1989-02-07
GB2193017A (en) 1988-01-27
FR2602070A1 (fr) 1988-01-29
DE3724317C2 (ja) 1991-08-14
HK27491A (en) 1991-04-19
GB8712443D0 (en) 1987-07-01
DE3724317A1 (de) 1988-01-28
FR2602070B1 (fr) 1994-04-01
JPS6334652A (ja) 1988-02-15

Similar Documents

Publication Publication Date Title
JPH083802B2 (ja) コンピユ−タ・メモリのアクセス方法およびシステム
US5111386A (en) Cache contained type semiconductor memory device and operating method therefor
US4926385A (en) Semiconductor memory device with cache memory addressable by block within each column
US5390308A (en) Method and apparatus for address mapping of dynamic random access memory
KR100268321B1 (ko) 가상 채널 메모리 시스템
US5051889A (en) Page interleaved memory access
JP3807582B2 (ja) 情報処理装置及び半導体装置
US4400774A (en) Cache addressing arrangement in a computer system
US5329489A (en) DRAM having exclusively enabled column buffer blocks
JP2018018513A (ja) メモリシステム、プロセシングシステム、及びメモリスタックを動作させる方法
US8533430B2 (en) Memory hashing for stride access
US5737564A (en) Cache memory system having multiple caches with each cache mapped to a different area of main memory to avoid memory contention and to lessen the number of cache snoops
JPH0529945B2 (ja)
EP0116081A1 (en) Virtual memory addressing system and method
US20220100521A1 (en) Data loading and storage system and method
JPH0362243A (ja) 情報処理システムにおいてメモリアクセスを速くする装置
JP3688736B2 (ja) データメモリ
US6292867B1 (en) Data processing system
KR100417548B1 (ko) 집적된캐쉬메모리와,디지탈메모리에서메모리소자에데이타를제공하는방법
Bell et al. Implementation of a buffer memory in minicomputers
US6385687B2 (en) Method and apparatus for simultaneously accessing the tag and data arrays of a memory device
KR940001590B1 (ko) 블럭읽기 및 쓰기에서의 메모리 엑세스 시간 단축장치 및 방법
KR930002314B1 (ko) 캐쉬 메모리 유닛을 액세스하기 위해 가상 어드레스를 실제 어드레스로 번역하는 장치 및 방법
US6400640B2 (en) Method for memory addressing
JPH08227376A (ja) コンピュータシステム及びその動作方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees