JP3187465B2 - コンピューターメモリオープンページバイアス法とその装置 - Google Patents
コンピューターメモリオープンページバイアス法とその装置Info
- Publication number
- JP3187465B2 JP3187465B2 JP21662791A JP21662791A JP3187465B2 JP 3187465 B2 JP3187465 B2 JP 3187465B2 JP 21662791 A JP21662791 A JP 21662791A JP 21662791 A JP21662791 A JP 21662791A JP 3187465 B2 JP3187465 B2 JP 3187465B2
- Authority
- JP
- Japan
- Prior art keywords
- page
- memory
- data
- address
- code
- 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
Classifications
-
- 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/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1018—Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
- G11C7/1021—Page serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled column address stroke pulses each with its associated bit line address
-
- 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
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)
- Memory System (AREA)
Description
【0001】
【産業上の利用分野】本発明はコンピューターメモリシ
ステムに関し、特にDRAMシステムメモリへのアクセ
ス時間を低減する方法およびシステムに関する。
ステムに関し、特にDRAMシステムメモリへのアクセ
ス時間を低減する方法およびシステムに関する。
【0002】
【従来の技術】コンピュータの性能はメモリの階層を使
用することによって強化できる。例えば、三段のメモリ
は低速、中速、および高速メモリで構成できる。低速メ
モリは廉価で多量のデータ格納のための磁気ディスクで
よい。中速メモリはコンピュータの主メモリとして使用
するDRAMで構成できる。高速メモリはプロセッサキ
ャッシュメモリとして使用できるSRAMが使用でき
る。メモリの階層を利用するのは、最高速メモリ内でシ
ステムプロセッサにより実行されるコード(命令)およ
び他のデータをグループ化するためである。そのような
高速メモリは通例、入手できる最も高価なメモリが使用
されるので、経済性を考慮して比較的小さい。DRAM
から構成される主メモリは、SRAMを用いたキャッシ
ュメモリよりもより高密度かつより廉価であり、従って
キャッシュメモリよりも著しく大きい。
用することによって強化できる。例えば、三段のメモリ
は低速、中速、および高速メモリで構成できる。低速メ
モリは廉価で多量のデータ格納のための磁気ディスクで
よい。中速メモリはコンピュータの主メモリとして使用
するDRAMで構成できる。高速メモリはプロセッサキ
ャッシュメモリとして使用できるSRAMが使用でき
る。メモリの階層を利用するのは、最高速メモリ内でシ
ステムプロセッサにより実行されるコード(命令)およ
び他のデータをグループ化するためである。そのような
高速メモリは通例、入手できる最も高価なメモリが使用
されるので、経済性を考慮して比較的小さい。DRAM
から構成される主メモリは、SRAMを用いたキャッシ
ュメモリよりもより高密度かつより廉価であり、従って
キャッシュメモリよりも著しく大きい。
【0003】作動期間中、システムプロセッサが現に実
行中の変数に迅速にアクセスできるようにするため、命
令その他のデータはシステムメモリからキャッシュメモ
リに転送される。キャッシュにない追加的データが必要
とされるときは、そのデータをメモリから転送し、これ
でキャッシュ内の選択したデータを置換する。いずれの
データを置換するかを決定するにはいろいろのアルゴリ
ズムが使用される。
行中の変数に迅速にアクセスできるようにするため、命
令その他のデータはシステムメモリからキャッシュメモ
リに転送される。キャッシュにない追加的データが必要
とされるときは、そのデータをメモリから転送し、これ
でキャッシュ内の選択したデータを置換する。いずれの
データを置換するかを決定するにはいろいろのアルゴリ
ズムが使用される。
【0004】キャッシュメモリが使用されると否とによ
らず、DRAMメモリの応答時間を低減すること(すな
わち、その速度を増大すること)はさらにシステム性能
を改善する。DRAMの基本的構造を変更することなく
DRAMメモリの速度を増大するにはいくつかの方法が
ある。例えば、インターリーヴィング(interleaving)
という方法は奇数アドレスを一つのバンクに当て、偶数
バンクをもう一つのバンクに当てることにより、二つの
メモリバンクを用意する。この方法によれば、一方のバ
ンクがアクセスされている間に他方のバンクを予備的書
き込み(precharge)に当てることができる。もしもD
RAMアクセスが通常、2サイクルを要するとすると、
順次的アクセスはそれぞれ一クロックサイクルで行なう
ことができる。
らず、DRAMメモリの応答時間を低減すること(すな
わち、その速度を増大すること)はさらにシステム性能
を改善する。DRAMの基本的構造を変更することなく
DRAMメモリの速度を増大するにはいくつかの方法が
ある。例えば、インターリーヴィング(interleaving)
という方法は奇数アドレスを一つのバンクに当て、偶数
バンクをもう一つのバンクに当てることにより、二つの
メモリバンクを用意する。この方法によれば、一方のバ
ンクがアクセスされている間に他方のバンクを予備的書
き込み(precharge)に当てることができる。もしもD
RAMアクセスが通常、2サイクルを要するとすると、
順次的アクセスはそれぞれ一クロックサイクルで行なう
ことができる。
【0005】DRAMアクセスを高速化するもう一つの
技術は「高速ページモード」と呼ばれるものである。高
速ページモードでは、DRAM制御装置がメモリページ
内の行レベルラインをアクティブにした後、列ラインを
順次ストロボ信号でアクティブにする。行ラインは同一
ページ上でのアクセスの間に予備書き込みをする必要が
ないので、DRAMへの読み取りおよび書き込みの速度
は増大する。しかしながら、もしも順次的読み取りおよ
び書き込みが同一ページ上でないなら、複数ページが常
時開閉されなければならず、高速ページモードはほとん
ど、あるいは全く性能向上の利点を与えてくれない。
技術は「高速ページモード」と呼ばれるものである。高
速ページモードでは、DRAM制御装置がメモリページ
内の行レベルラインをアクティブにした後、列ラインを
順次ストロボ信号でアクティブにする。行ラインは同一
ページ上でのアクセスの間に予備書き込みをする必要が
ないので、DRAMへの読み取りおよび書き込みの速度
は増大する。しかしながら、もしも順次的読み取りおよ
び書き込みが同一ページ上でないなら、複数ページが常
時開閉されなければならず、高速ページモードはほとん
ど、あるいは全く性能向上の利点を与えてくれない。
【0006】
【発明が解決しようとする課題】従って本発明はコンピ
ューターメモリ内のデータにアクセスする新規かつ改良
された方法を与えることを課題とする。
ューターメモリ内のデータにアクセスする新規かつ改良
された方法を与えることを課題とする。
【0007】本発明の別の課題は高性能コンピューター
メモリシステムを与えることである。
メモリシステムを与えることである。
【0008】本発明のさらに別の課題はDRAMシステ
ムメモリへのアクセス時間を低減するシステムおよび方
法を与えることである。
ムメモリへのアクセス時間を低減するシステムおよび方
法を与えることである。
【0009】本発明にさらに別の課題はアドレスを受信
するに先立って自動的にメモリページを開くシステムお
よび方法を与えることである。
するに先立って自動的にメモリページを開くシステムお
よび方法を与えることである。
【0010】本発明のさらに別の課題は、開くべきペー
ジがコードデータか非コードデータかに基づいて、アド
レスを受信するに先立ちメモリページを開くシステムお
よび方法を与える。
ジがコードデータか非コードデータかに基づいて、アド
レスを受信するに先立ちメモリページを開くシステムお
よび方法を与える。
【0011】本発明のさらに別の課題はシステムメモリ
内の高速ページモードの効率を強化するシステムおよび
方法を与えることである。
内の高速ページモードの効率を強化するシステムおよび
方法を与えることである。
【0012】
【課題を解決するための手段】上記課題達成のため、本
発明はアドレス信号を受信するに先立ちメモリ内の予定
のページを開くことによりコンピューターシステムメモ
リにアクセスする速度を改良する方法を与える。このた
め、オープンページバイアス即ちある一定形態のメモリ
ページを開く傾向を高めるバイアスが構築される。
発明はアドレス信号を受信するに先立ちメモリ内の予定
のページを開くことによりコンピューターシステムメモ
リにアクセスする速度を改良する方法を与える。このた
め、オープンページバイアス即ちある一定形態のメモリ
ページを開く傾向を高めるバイアスが構築される。
【0013】本発明の一つはページ分割されたコンピュ
ーターメモリ内のデータをアクセスする方法である。こ
の場合、メモリ中のデータにアクセスする第一のアドレ
ス信号に呼応してメモリ内の第一ページが開かれる。メ
モリ中のデータにアクセスするための第二のアドレス信
号に呼応してメモリ内の第二ページが開かれる。該第一
ページは別のアドレス信号を受信するに先立って再び開
かれる。
ーターメモリ内のデータをアクセスする方法である。こ
の場合、メモリ中のデータにアクセスする第一のアドレ
ス信号に呼応してメモリ内の第一ページが開かれる。メ
モリ中のデータにアクセスするための第二のアドレス信
号に呼応してメモリ内の第二ページが開かれる。該第一
ページは別のアドレス信号を受信するに先立って再び開
かれる。
【0014】また本発明は複数の第一ページと第二ペー
ジとを含み、コードデータおよび非コードデータを格納
するシステムメモリを備える高性能コンピューターメモ
リシステムを与える。この場合、メモリはこのメモリに
関連づけられた、該第一ページに最も最近にアクセスさ
れたページのページアドレスを保持するメモリに関連付
けられたレジスタを含む。このページアドレスは、該第
二ページの一つがアクセスされた後に該第一ページの最
も最近にアクセスされたものを再び開くのに使用され
る。
ジとを含み、コードデータおよび非コードデータを格納
するシステムメモリを備える高性能コンピューターメモ
リシステムを与える。この場合、メモリはこのメモリに
関連づけられた、該第一ページに最も最近にアクセスさ
れたページのページアドレスを保持するメモリに関連付
けられたレジスタを含む。このページアドレスは、該第
二ページの一つがアクセスされた後に該第一ページの最
も最近にアクセスされたものを再び開くのに使用され
る。
【0015】実施例では第一ページはコードデータまた
は非コードデータの何れかを保持し、第二ページが非コ
ードデータまたはコードデータの何れかを保持する。
は非コードデータの何れかを保持し、第二ページが非コ
ードデータまたはコードデータの何れかを保持する。
【0016】
【実施例】図1はコンピューターメモリシステム10の
ブロック線図を示す。メモリシステム10はシステムメ
モリ12を含む。メモリ12は好ましい実施例では動的
ランダムアクセスメモリ(DRAM)チップからなる。
メモリ12に格納されるデータは一般にコードデータ
(命令)と非コードデータとに分割することができる。
ここに使用する「データ」という用語は情報を指し、コ
ードデータ(命令)および非コードデータを含む。メモ
リ12はバス14でコンピューターシステム(図示して
なし)の他の部分に接続されている。メモリシステム1
0は二つ以上のバス主に使用できるように設計されてい
るが、単一のバス主に使うこともできる。特にメモリシ
ステム10は他のバス主またはメモリシステム10への
アクセスに関してホストプロセッサと競合する装置と組
み合わせたインテル社のホストプロセッサ386、38
6sx、486等に使用することができるように設計さ
れている。メモリ12へのアクセスはバス14内に設け
られたDRAM制御装置22で制御される。
ブロック線図を示す。メモリシステム10はシステムメ
モリ12を含む。メモリ12は好ましい実施例では動的
ランダムアクセスメモリ(DRAM)チップからなる。
メモリ12に格納されるデータは一般にコードデータ
(命令)と非コードデータとに分割することができる。
ここに使用する「データ」という用語は情報を指し、コ
ードデータ(命令)および非コードデータを含む。メモ
リ12はバス14でコンピューターシステム(図示して
なし)の他の部分に接続されている。メモリシステム1
0は二つ以上のバス主に使用できるように設計されてい
るが、単一のバス主に使うこともできる。特にメモリシ
ステム10は他のバス主またはメモリシステム10への
アクセスに関してホストプロセッサと競合する装置と組
み合わせたインテル社のホストプロセッサ386、38
6sx、486等に使用することができるように設計さ
れている。メモリ12へのアクセスはバス14内に設け
られたDRAM制御装置22で制御される。
【0017】システム10はまたバス14にそれぞれ接
続された内部キャッシュ16、プレフェッチキャッシュ
18、および書き込みバッファキャッシュ20を含む。
好ましい実施例では内部キャッシュ16は4Kバイトの
4通り-セット関連キャッシュで、プレフェッチキャッ
シュ18は128バイトの直接転写キャッシュで、書き
込みバッファキャッシュ20は128バイトの2通り-
セット関連キャッシュである。
続された内部キャッシュ16、プレフェッチキャッシュ
18、および書き込みバッファキャッシュ20を含む。
好ましい実施例では内部キャッシュ16は4Kバイトの
4通り-セット関連キャッシュで、プレフェッチキャッ
シュ18は128バイトの直接転写キャッシュで、書き
込みバッファキャッシュ20は128バイトの2通り-
セット関連キャッシュである。
【0018】本キャッシュの特徴は使用されるホストプ
ロセッサの形式(386、386sx、486)に応じ
てこれらキャッシュの機能が変更できることである。し
かし、キャッシュのいくつかの特徴は変更できない。例
えば内部キャッシュ16はホストプロセッサによるメモ
リアクセスに基づいてのみ選択できるデータを保持す
る。言い換えると、内部キャッシュ16はホストプロセ
ッサ専用であり、他のバス主によるメモリアクセスによ
って影響されない。任意のバス主が各キャッシュを読み
取りできることを認識されたい。従って内部キャッシュ
16はその中にシステムプロセッサ以外の他のプロセッ
サによるメモリアクセスに基づくデータ書き込みは許さ
ないが、他のバス主も、要求しているデータがその中に
ある限りデータの読み取りはできる。各キャッシュはス
ヌープ(記録内容を検分すること)でヒットした記録内
容を無効にするため、当該キャッシュで意図されていな
いデータ書き込みもすべて検分し、これによって動作の
一貫性を確保することを認識されたい。
ロセッサの形式(386、386sx、486)に応じ
てこれらキャッシュの機能が変更できることである。し
かし、キャッシュのいくつかの特徴は変更できない。例
えば内部キャッシュ16はホストプロセッサによるメモ
リアクセスに基づいてのみ選択できるデータを保持す
る。言い換えると、内部キャッシュ16はホストプロセ
ッサ専用であり、他のバス主によるメモリアクセスによ
って影響されない。任意のバス主が各キャッシュを読み
取りできることを認識されたい。従って内部キャッシュ
16はその中にシステムプロセッサ以外の他のプロセッ
サによるメモリアクセスに基づくデータ書き込みは許さ
ないが、他のバス主も、要求しているデータがその中に
ある限りデータの読み取りはできる。各キャッシュはス
ヌープ(記録内容を検分すること)でヒットした記録内
容を無効にするため、当該キャッシュで意図されていな
いデータ書き込みもすべて検分し、これによって動作の
一貫性を確保することを認識されたい。
【0019】キャッシュに関し不変な特徴の一つは、プ
レフェッチキャッシュ18がDRAM12から取り寄せ
たコードデータのみを収容することである。さらに、プ
レフェッチキャッシュ18はホストプロセッサのメモリ
アクセスに基づくコードのみを取り寄せる。動作上、シ
ステムプロセッサがプレフェッチキャシュ内に用意され
ていないコードデータを要求するときは、次のコード要
求を予期して次順の128バイトコードがプレフェッチ
キャッシュ18内に予め取り寄せ(プレフェッチ)され
る。
レフェッチキャッシュ18がDRAM12から取り寄せ
たコードデータのみを収容することである。さらに、プ
レフェッチキャッシュ18はホストプロセッサのメモリ
アクセスに基づくコードのみを取り寄せる。動作上、シ
ステムプロセッサがプレフェッチキャシュ内に用意され
ていないコードデータを要求するときは、次のコード要
求を予期して次順の128バイトコードがプレフェッチ
キャッシュ18内に予め取り寄せ(プレフェッチ)され
る。
【0020】書き込みバッファキャッシュ20はDRA
M12内に書き込まれるデータのバッファのみを行な
う。このキャッシュは単に書き込みバッファを行なうの
みならず、上述したように任意のバス主による読み取り
も許すキャッシュである。しかしこのバッファはDRA
M12からのデータのキャッシュはしない。
M12内に書き込まれるデータのバッファのみを行な
う。このキャッシュは単に書き込みバッファを行なうの
みならず、上述したように任意のバス主による読み取り
も許すキャッシュである。しかしこのバッファはDRA
M12からのデータのキャッシュはしない。
【0021】各キャッシュの機能が分離されているこ
と、およびプロセッサの形式に基づいてこれらの機能を
選択的に定義できることは本キャッシュの重要な特徴で
ある。この性能により、本システムはキャッシュを総和
的に使用するものよりも何倍も大きなキャッシュを使用
するシステムの性能を達成し、またはこれをしのぐこと
ができる。プロセッサの形式に基づいて選択的に機能を
定義する点に関していうと、486プロセッサを使用す
るシステムの場合、書き込みバッファキャッシュ20は
システム以外のすべてのバス主が行なうデータ書き込み
のバッファを行なう。386、386sxシステムプロ
セッサを使用するシステムの場合、内部キャッシュ16
はコードデータのみを保持し、システムプロセッサのた
めの読み取り専用キャッシュであり、書き込みバッファ
キャッシュ20はシステムプロセッサを含めた任意のバ
ス主によるデータ書き込みのバッファを行なう。これら
キャッシュの動作特性は、存在するホストプロセッサの
形式情報に基づいて、電力投入時の自己形成条件に従っ
て定義される。
と、およびプロセッサの形式に基づいてこれらの機能を
選択的に定義できることは本キャッシュの重要な特徴で
ある。この性能により、本システムはキャッシュを総和
的に使用するものよりも何倍も大きなキャッシュを使用
するシステムの性能を達成し、またはこれをしのぐこと
ができる。プロセッサの形式に基づいて選択的に機能を
定義する点に関していうと、486プロセッサを使用す
るシステムの場合、書き込みバッファキャッシュ20は
システム以外のすべてのバス主が行なうデータ書き込み
のバッファを行なう。386、386sxシステムプロ
セッサを使用するシステムの場合、内部キャッシュ16
はコードデータのみを保持し、システムプロセッサのた
めの読み取り専用キャッシュであり、書き込みバッファ
キャッシュ20はシステムプロセッサを含めた任意のバ
ス主によるデータ書き込みのバッファを行なう。これら
キャッシュの動作特性は、存在するホストプロセッサの
形式情報に基づいて、電力投入時の自己形成条件に従っ
て定義される。
【0022】DRAM制御装置22はDRAM12への
アクセスのための高速ページモードを支持する。高速ペ
ージモードはメモリページ内の行ラインをアクティブと
した後、列ラインを順次ストロボ作動させてデータをD
RAMの中にまたはDRAMの外に転送することにより
DRAMへのアクセスを高速化する良く知られた方法で
ある。本発明では以下に詳述するように、DRAM12
はコードデータか非コードデータのいずれかを含むペー
ジに分割されている。DRAM12に関連されたレジス
タはDRAM12内またはDRAM制御装置22内に配
置され、最も最近にアクセスされたページのページアド
レスを保持する。実際、本システムは本システムに接続
されたプロセッサの形式に応じてコードページまたは非
コードページに指向するバイアスを与える。例えばもし
もシステムプロセッサが486であると、もっとも最近
にアクセスされたコードアドレスページのアドレスはレ
ジスタ内に保持される。動作上、DRAM12内のコー
ドデータページおよび非コードデータページは共にラン
ダムアクセスができる。もしもコードページがある一サ
イクルでアクセスされ、次のサイクルで非コードページ
がアクセスされると、非コードページがアクセスされる
間、コードページのアドレスはレジスタ内に保持され
る。非コードページがアクセスされた直後、再びコード
ページを開くのにレジスタ内のそのアドレスが使用され
る。これと対照的に、もしもシステムプロセッサが38
6または386sxであると、最も最近にアクセスされ
た非コードアドレスページのアドレスがレジスタ内に保
持される。オープンページバイアス、高速ページモード
アクセスおよび多重キャッシュを選択的になしうるこの
組み合わせがシステム性能を高める。
アクセスのための高速ページモードを支持する。高速ペ
ージモードはメモリページ内の行ラインをアクティブと
した後、列ラインを順次ストロボ作動させてデータをD
RAMの中にまたはDRAMの外に転送することにより
DRAMへのアクセスを高速化する良く知られた方法で
ある。本発明では以下に詳述するように、DRAM12
はコードデータか非コードデータのいずれかを含むペー
ジに分割されている。DRAM12に関連されたレジス
タはDRAM12内またはDRAM制御装置22内に配
置され、最も最近にアクセスされたページのページアド
レスを保持する。実際、本システムは本システムに接続
されたプロセッサの形式に応じてコードページまたは非
コードページに指向するバイアスを与える。例えばもし
もシステムプロセッサが486であると、もっとも最近
にアクセスされたコードアドレスページのアドレスはレ
ジスタ内に保持される。動作上、DRAM12内のコー
ドデータページおよび非コードデータページは共にラン
ダムアクセスができる。もしもコードページがある一サ
イクルでアクセスされ、次のサイクルで非コードページ
がアクセスされると、非コードページがアクセスされる
間、コードページのアドレスはレジスタ内に保持され
る。非コードページがアクセスされた直後、再びコード
ページを開くのにレジスタ内のそのアドレスが使用され
る。これと対照的に、もしもシステムプロセッサが38
6または386sxであると、最も最近にアクセスされ
た非コードアドレスページのアドレスがレジスタ内に保
持される。オープンページバイアス、高速ページモード
アクセスおよび多重キャッシュを選択的になしうるこの
組み合わせがシステム性能を高める。
【0023】書き込みバッファキャッシュ20は2通り
-セット関連キャッシュである。メモリの非コードデー
タ領域は、リスト、ヒープ(heap)、およびスタック
(stack)として知られる三つの領域に分割できる。メ
モリ内のデータブロックはリスト、ヒープ、およびスタ
ックように準備され、それぞれ、各自の組織と目的を有
する。例えばスタックは一組のデータエレメントで、そ
の内の一エレメントのみが一度にアクセスできる。リス
トデータは主として読み取り用であり、一般的に書き込
み用ではない。構造を有するプログラムではスタックへ
の書き込みが高い頻度で起こり、次に頻度の高い書き込
みはヒープに対して起きる。DRAM内にヒープ用のデ
ータブロックとスタック用のデータブロックを適切に指
定し、かつこれらブロックを2通り-セット関連キャッ
シュ内の対応セットに転写することにより、動作効率を
高めることができる。さらに非コードデータに対するD
RAM内のオープンページバイアスは実効上、リストデ
ータに対するオープンページバイアスとなる。このよう
にして動作特性がさらに高められる。
-セット関連キャッシュである。メモリの非コードデー
タ領域は、リスト、ヒープ(heap)、およびスタック
(stack)として知られる三つの領域に分割できる。メ
モリ内のデータブロックはリスト、ヒープ、およびスタ
ックように準備され、それぞれ、各自の組織と目的を有
する。例えばスタックは一組のデータエレメントで、そ
の内の一エレメントのみが一度にアクセスできる。リス
トデータは主として読み取り用であり、一般的に書き込
み用ではない。構造を有するプログラムではスタックへ
の書き込みが高い頻度で起こり、次に頻度の高い書き込
みはヒープに対して起きる。DRAM内にヒープ用のデ
ータブロックとスタック用のデータブロックを適切に指
定し、かつこれらブロックを2通り-セット関連キャッ
シュ内の対応セットに転写することにより、動作効率を
高めることができる。さらに非コードデータに対するD
RAM内のオープンページバイアスは実効上、リストデ
ータに対するオープンページバイアスとなる。このよう
にして動作特性がさらに高められる。
【0024】図2は本発明の動作を例示する流れ図であ
る。動作開始時、およびすべてのメモリアクセス前、メ
モリシステムはアイドル状態にあり、すべてのページは
閉じられている(ブロック100)。このメモリシステ
ムは第一のアドレスを受信するとこれに応答してメモリ
ページを開くためのメモリアクセス信号を発生する。こ
のメモリアクセス信号には行アドレスストロボ信号(R
AS)および行アドレスが含まれている。このメモリは
RASおよび行アドレスを追跡し、列アドレスストロボ
(CAS)信号と列アドレスとによってアクセスでき
る。良く知られているように、行および列アドレスは通
常、同一アドレスライン上で多重化されている。アドレ
スが行に対するものかあるいは列に対するものかを識別
するために、アドレスが与えられたときにRASまたは
CAS制御信号がそれぞれ主張される。RAS信号およ
びCAS信号は通常、低レベルのアクティブ信号であ
る。これらはそれぞれの信号ラインを高レベルに充電す
ることによってその主張を解かれる(すなわち非アクテ
ィブ化される)。
る。動作開始時、およびすべてのメモリアクセス前、メ
モリシステムはアイドル状態にあり、すべてのページは
閉じられている(ブロック100)。このメモリシステ
ムは第一のアドレスを受信するとこれに応答してメモリ
ページを開くためのメモリアクセス信号を発生する。こ
のメモリアクセス信号には行アドレスストロボ信号(R
AS)および行アドレスが含まれている。このメモリは
RASおよび行アドレスを追跡し、列アドレスストロボ
(CAS)信号と列アドレスとによってアクセスでき
る。良く知られているように、行および列アドレスは通
常、同一アドレスライン上で多重化されている。アドレ
スが行に対するものかあるいは列に対するものかを識別
するために、アドレスが与えられたときにRASまたは
CAS制御信号がそれぞれ主張される。RAS信号およ
びCAS信号は通常、低レベルのアクティブ信号であ
る。これらはそれぞれの信号ラインを高レベルに充電す
ることによってその主張を解かれる(すなわち非アクテ
ィブ化される)。
【0025】システムが閉ページアイドル状態にある
(ブロック100)ときは、RASラインおよびCAS
ラインは高レベルに充電される。アドレスが受信される
と、RAS信号および行アドレスが発生されて関連のペ
ージが開かれる(ブロック102)。データはCASサ
イクル(ブロック104)を行なうことにより開ページ
内でにアクセスされる。このCASサイクルはCAS信
号とデータアクセス(データの読み取りまたは書き込み
の何れか)のための列アドレス信号とを発生し、次いで
CAS信号および列アドレスの解除すなわちこれらの主
張解除をする。この時点でRASを低レベルに保つこと
によりそのページを開に保つか、あるいはRASを高レ
ベルに充電することにより閉じるかを決定する。この決
定は当該ページの内容に基づく。本発明の好ましい実施
例ではこの内容決定は当該ページがコードデータまたは
非コードデータの何れを含むかに基づいている。実際、
本システムはシステムメモリの応答時間を統計的に改良
するため、あるページを開に保つ傾向若しくはバイアス
を有する。例えば、ある構成のシステムではコードデー
タ(命令)用のメモリページに対して開ページバイアス
を有することが望まれる。他の用途のシステムでは非コ
ードデータ用のメモリページに対して開ページバイアス
を有することが望まれる。本実施例ではコードデータま
たは非コードデータのいずれかに開ページバイアスを与
えるようにしてある。しかし、本発明はコードデータま
たは非コードデータかに基づいて発明が限定されるもの
ではなく、データの他の識別可能な相異に基づいてもバ
イアスを設けることができるものである。本発明の以下
の説明では本システムはコードデータに対して開ページ
バイアスを持つものと仮定する。しかしこの例は単に例
示のためであり、特許請求の範囲を限定するためではな
いことを了解されたい。
(ブロック100)ときは、RASラインおよびCAS
ラインは高レベルに充電される。アドレスが受信される
と、RAS信号および行アドレスが発生されて関連のペ
ージが開かれる(ブロック102)。データはCASサ
イクル(ブロック104)を行なうことにより開ページ
内でにアクセスされる。このCASサイクルはCAS信
号とデータアクセス(データの読み取りまたは書き込み
の何れか)のための列アドレス信号とを発生し、次いで
CAS信号および列アドレスの解除すなわちこれらの主
張解除をする。この時点でRASを低レベルに保つこと
によりそのページを開に保つか、あるいはRASを高レ
ベルに充電することにより閉じるかを決定する。この決
定は当該ページの内容に基づく。本発明の好ましい実施
例ではこの内容決定は当該ページがコードデータまたは
非コードデータの何れを含むかに基づいている。実際、
本システムはシステムメモリの応答時間を統計的に改良
するため、あるページを開に保つ傾向若しくはバイアス
を有する。例えば、ある構成のシステムではコードデー
タ(命令)用のメモリページに対して開ページバイアス
を有することが望まれる。他の用途のシステムでは非コ
ードデータ用のメモリページに対して開ページバイアス
を有することが望まれる。本実施例ではコードデータま
たは非コードデータのいずれかに開ページバイアスを与
えるようにしてある。しかし、本発明はコードデータま
たは非コードデータかに基づいて発明が限定されるもの
ではなく、データの他の識別可能な相異に基づいてもバ
イアスを設けることができるものである。本発明の以下
の説明では本システムはコードデータに対して開ページ
バイアスを持つものと仮定する。しかしこの例は単に例
示のためであり、特許請求の範囲を限定するためではな
いことを了解されたい。
【0026】さらに図2を参照する。ページ上のデータ
をアクセスするためのCASサイクル(ブロック10
4)を行なった後、そのページはRAS信号を続けて主
張することにより改に留まる(ブロック106)か、あ
るいはRASラインを高レベルに充電することにより
(ブロック108)閉じられるとともにRASラインが
主張解除される。システムがコードページについて開ペ
ージバイアスを有すると仮定すると、最初に開かれたペ
ージがコードページであればこのページは最初のメモリ
アクセス(ブロック106)の後も開に留まる。もしも
開かれた最初のページが非コードデータページである
と、ページは閉じられる(ブロック108)。
をアクセスするためのCASサイクル(ブロック10
4)を行なった後、そのページはRAS信号を続けて主
張することにより改に留まる(ブロック106)か、あ
るいはRASラインを高レベルに充電することにより
(ブロック108)閉じられるとともにRASラインが
主張解除される。システムがコードページについて開ペ
ージバイアスを有すると仮定すると、最初に開かれたペ
ージがコードページであればこのページは最初のメモリ
アクセス(ブロック106)の後も開に留まる。もしも
開かれた最初のページが非コードデータページである
と、ページは閉じられる(ブロック108)。
【0027】もしも最初のページがコードページであ
り、システムが開ページアイドル状態(ブロック10
6)にあると、二つの可能性がある。まず初めに、次の
アドrすが同一ページ上のデータアクセスである場合で
ある。もしも層であれば、RASおよび行アドレスは以
前としてアクティブであるので、同一ページ上の所望の
データにアクセスするにはCASおよびその列アドレス
のみが主張されればよい(ブロック104)。したがっ
てこのコードページは再び開に留まる(ブロック10
6)。CAS信号および列アドレスの主張解除、CAS
および新規列アドレスの再主張を行なうこのシーケンス
は、同一のページに対して次のアドレスが与えられる限
り反復できる。第二に、次のアドレスが別のページ上の
データアクセスである場合がある。もしもそうである
と、そのコードページがRASを充電すること(ブロッ
ク110)により閉じられなければならない。RASは
次いで新規行アドレスの再主張(ブロック102)を受
け、メモリ内の所望データロケーションへのアクセスの
ためのCASサイクルが行なわれる。
り、システムが開ページアイドル状態(ブロック10
6)にあると、二つの可能性がある。まず初めに、次の
アドrすが同一ページ上のデータアクセスである場合で
ある。もしも層であれば、RASおよび行アドレスは以
前としてアクティブであるので、同一ページ上の所望の
データにアクセスするにはCASおよびその列アドレス
のみが主張されればよい(ブロック104)。したがっ
てこのコードページは再び開に留まる(ブロック10
6)。CAS信号および列アドレスの主張解除、CAS
および新規列アドレスの再主張を行なうこのシーケンス
は、同一のページに対して次のアドレスが与えられる限
り反復できる。第二に、次のアドレスが別のページ上の
データアクセスである場合がある。もしもそうである
と、そのコードページがRASを充電すること(ブロッ
ク110)により閉じられなければならない。RASは
次いで新規行アドレスの再主張(ブロック102)を受
け、メモリ内の所望データロケーションへのアクセスの
ためのCASサイクルが行なわれる。
【0028】前節は第一のページがコードページである
か否かの可能性を考慮した。もしもこの第一ページが非
コードページであると、CASサイクル(ブロック10
4)の後、RASを予備充電(ブロック108)するこ
とによりそのページは閉じられる。それ以前にはコード
ページが開かれていないので、システムは閉ページアイ
ドル状態(ブロック100)へ戻る。その後のアクセス
が非コードページであるかぎり、システムの動作はブロ
ック102、104、108、100で示される手順で
進む。
か否かの可能性を考慮した。もしもこの第一ページが非
コードページであると、CASサイクル(ブロック10
4)の後、RASを予備充電(ブロック108)するこ
とによりそのページは閉じられる。それ以前にはコード
ページが開かれていないので、システムは閉ページアイ
ドル状態(ブロック100)へ戻る。その後のアクセス
が非コードページであるかぎり、システムの動作はブロ
ック102、104、108、100で示される手順で
進む。
【0029】以上から、コードデータあるいは非コード
データの何れかを含む第一ページに対する本システムの
動作は明らかであろう。次にコードページが開かれ(ブ
ロック106)、新規ページを求めるアドレス信号を受
信した(ブロック110)後のシステムの動作を考え
る。新規ページはそれ自体コードページまたは非コード
ページであり、RASおよび行アドレスの形態をしたメ
モリアクセス信号を発生させること(ブロック102)
により開かれる。新規ページのデータはCASと列アド
レスを発生すること(ブロック104)によりアクセス
される。もしも新規ページがコードページであると、C
ASサイクル(ブロック104)の後、新規ページは開
のままに留まる(ブロック106)。しかしもしもこの
新規ページが非コードページであると、このページは閉
じられる(ブロック108)。しかし、前の、すなわち
旧開ぺージがコードページであったので、メモリアクセ
ス信号、RASおよび行アドレスを再発生ないし再主張
することにより、旧ページが再び開かれる(ブロック1
12)。システムは次いで開ページアイドル状態(ブロ
ック106)に戻る。
データの何れかを含む第一ページに対する本システムの
動作は明らかであろう。次にコードページが開かれ(ブ
ロック106)、新規ページを求めるアドレス信号を受
信した(ブロック110)後のシステムの動作を考え
る。新規ページはそれ自体コードページまたは非コード
ページであり、RASおよび行アドレスの形態をしたメ
モリアクセス信号を発生させること(ブロック102)
により開かれる。新規ページのデータはCASと列アド
レスを発生すること(ブロック104)によりアクセス
される。もしも新規ページがコードページであると、C
ASサイクル(ブロック104)の後、新規ページは開
のままに留まる(ブロック106)。しかしもしもこの
新規ページが非コードページであると、このページは閉
じられる(ブロック108)。しかし、前の、すなわち
旧開ぺージがコードページであったので、メモリアクセ
ス信号、RASおよび行アドレスを再発生ないし再主張
することにより、旧ページが再び開かれる(ブロック1
12)。システムは次いで開ページアイドル状態(ブロ
ック106)に戻る。
【0030】本発明の重要な特徴は前にアクセスされた
メモリページが、次のメモリアドレスを受信する前に自
動的に再び開かれる点である。これはすべてのメモリア
クセスの後に無差別に行なわれたのでは全く改良につな
がらない。しかし、選択されたページ(本実施例では旧
ページ、新規ページ、非コードページ)に対してのみ行
なわれる。多くのコンピューターシステムでは同一のペ
ージ内で順次的メモリアクセスが行なわれる。もしも多
数のデバイスがアクセスする場合等、非順次的ロケーシ
ョンへのアクセスが多数回あると、メモリはデータペー
ジを開閉するのにかなりの時間を費やすことがある。本
発明の開ページバイアスを利用すれば、システムは次の
メモリアクセスがそのページであることを予期して、い
くつかの選択されたページを再度開く。
メモリページが、次のメモリアドレスを受信する前に自
動的に再び開かれる点である。これはすべてのメモリア
クセスの後に無差別に行なわれたのでは全く改良につな
がらない。しかし、選択されたページ(本実施例では旧
ページ、新規ページ、非コードページ)に対してのみ行
なわれる。多くのコンピューターシステムでは同一のペ
ージ内で順次的メモリアクセスが行なわれる。もしも多
数のデバイスがアクセスする場合等、非順次的ロケーシ
ョンへのアクセスが多数回あると、メモリはデータペー
ジを開閉するのにかなりの時間を費やすことがある。本
発明の開ページバイアスを利用すれば、システムは次の
メモリアクセスがそのページであることを予期して、い
くつかの選択されたページを再度開く。
【0031】本発明のもう一つの特徴は、図2に示して
ないが、最も最近にアクセスした、かつある選択された
データ形式の完全なアドレスまたは好ましくは行アドレ
スが受信時に格納されることである。本実施例では、コ
ードデータを求めるアドレスが受信されるときは常に、
その行アドレスがレジスタ内に格納される。この格納さ
れたアドレスは後続の非コードページがアクセスされる
間、保持される。このアドレスはそのような各非コード
アクセスがあった後、最も最近にアクセスされたコード
ページを再開する(ブロック112)ために使用され
る。
ないが、最も最近にアクセスした、かつある選択された
データ形式の完全なアドレスまたは好ましくは行アドレ
スが受信時に格納されることである。本実施例では、コ
ードデータを求めるアドレスが受信されるときは常に、
その行アドレスがレジスタ内に格納される。この格納さ
れたアドレスは後続の非コードページがアクセスされる
間、保持される。このアドレスはそのような各非コード
アクセスがあった後、最も最近にアクセスされたコード
ページを再開する(ブロック112)ために使用され
る。
【0032】上述したように、DRAM制御装置22は
高速ページモードを支持する。本発明のオープンページ
バイアスが高速ページモード動作と組み合わされると、
システム性能が強化できる。
高速ページモードを支持する。本発明のオープンページ
バイアスが高速ページモード動作と組み合わされると、
システム性能が強化できる。
【0033】本発明の詳細な設計は高度ハードウェア記
述言語であるCDLで行なわれる。CDLはデジタル論
理システム用のハードウェアを曖昧さなしに定義するソ
フトウェアツールである。CDLリストは完全にシステ
ム10の好ましい実施例を確定する。このリストはこれ
をコンパイルすると「C」ソースコードを与え、このソ
ースコードは次いでCコンパイラでコンパイルされて標
準化されたCオブジェクトファイルフォーマット(CO
FF)を与える。次いでこのCオブジェクトファイルフ
ォーマットを論理合成プログラムに入力すると詳細な論
理構造体が得られる。この目的に使用される論理合成プ
ログラムはカルフォルニア州マウンテンビュー市のシノ
プシス社から販売されているSYNOPSYSである。
述言語であるCDLで行なわれる。CDLはデジタル論
理システム用のハードウェアを曖昧さなしに定義するソ
フトウェアツールである。CDLリストは完全にシステ
ム10の好ましい実施例を確定する。このリストはこれ
をコンパイルすると「C」ソースコードを与え、このソ
ースコードは次いでCコンパイラでコンパイルされて標
準化されたCオブジェクトファイルフォーマット(CO
FF)を与える。次いでこのCオブジェクトファイルフ
ォーマットを論理合成プログラムに入力すると詳細な論
理構造体が得られる。この目的に使用される論理合成プ
ログラムはカルフォルニア州マウンテンビュー市のシノ
プシス社から販売されているSYNOPSYSである。
【0034】図4は本発明のモジュール間の関係を示
す。
す。
【図1】図1は高性能コンピューターメモリシステムの
ブロック線図である。
ブロック線図である。
【図2】図2は本発明の動作を示す流れ図である。
【図3】図3は本メモリシステムのモジュール間の関係
を示すブロック線図である。
を示すブロック線図である。
12、16、20 第一および第二メモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 フールプス ヴィ. ヴァーミア オランダ、デルフト、2625エルエム、グ ラビジョンホーフ 29 (56)参考文献 特開 昭58−4447(JP,A) 特開 昭63−34652(JP,A) 特開 平1−183749(JP,A) 特開 平2−130792(JP,A) ”Multiple active page memory”,IBM T ECHNICAL DISCLOSUR E BULLETIN.,米国,Nov ember 1989,vol.32,no. 6B,p.477−478 (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 550 - 12/06
Claims (2)
- 【請求項1】ページ分割されたコンピューターメモリ内
のデータをアクセスする方法であって、 第一のアドレス信号に呼応してメモリ内の第一ページを
開きその中のデータにアクセスすることと、 第二のアドレス信号に呼応してメモリ内の第二ページを
開きその中のデータにアクセスすることと、 別のアドレス信号を受信するに先立って該第一ページを
再び開くことを含むデータアクセス方法。 - 【請求項2】複数の第一ページと複数の第二ページとを
含み、コードデータおよび非コードデータを格納するシ
ステムメモリを備える高性能コンピューターメモリシス
テムであって、 該第一ページのうち最も最近にアクセスされたページの
ページアドレスを保持する、該メモリに関連づけられた
レジスタを含み、 該第二ページの一つがアクセスされた後に該第一ページ
の最も最近にアクセスされたものを再び開くのに該ペー
ジアドレスが使用されることを特徴とするコンピュータ
ーメモリシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US56322190A | 1990-08-06 | 1990-08-06 | |
US563221 | 1990-08-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04253242A JPH04253242A (ja) | 1992-09-09 |
JP3187465B2 true JP3187465B2 (ja) | 2001-07-11 |
Family
ID=24249610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21662791A Expired - Fee Related JP3187465B2 (ja) | 1990-08-06 | 1991-08-02 | コンピューターメモリオープンページバイアス法とその装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5604883A (ja) |
EP (1) | EP0471462B1 (ja) |
JP (1) | JP3187465B2 (ja) |
DE (1) | DE69129252T2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5893917A (en) * | 1996-09-30 | 1999-04-13 | Intel Corporation | Memory controller and method of closing a page of system memory |
US5940848A (en) * | 1997-01-14 | 1999-08-17 | Intel Corporation | Computer system and method for efficiently controlling the opening and closing of pages for an aborted row on page miss cycle |
US6199145B1 (en) | 1998-02-27 | 2001-03-06 | Intel Corporation | Configurable page closing method and apparatus for multi-port host bridges |
US7047391B2 (en) * | 1998-09-14 | 2006-05-16 | The Massachusetts Institute Of Technology | System and method for re-ordering memory references for access to memory |
US6442666B1 (en) * | 1999-01-28 | 2002-08-27 | Infineon Technologies Ag | Techniques for improving memory access in a virtual memory system |
JP4250989B2 (ja) * | 2003-03-26 | 2009-04-08 | 日本電気株式会社 | メモリアクセス制御装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS584447A (ja) * | 1981-07-01 | 1983-01-11 | Hitachi Ltd | 制御記憶装置 |
US4594659A (en) * | 1982-10-13 | 1986-06-10 | Honeywell Information Systems Inc. | Method and apparatus for prefetching instructions for a central execution pipeline unit |
US4884197A (en) * | 1985-02-22 | 1989-11-28 | Intergraph Corporation | Method and apparatus for addressing a cache memory |
US5051889A (en) * | 1987-10-23 | 1991-09-24 | Chips And Technologies, Incorporated | Page interleaved memory access |
US4888679A (en) * | 1988-01-11 | 1989-12-19 | Digital Equipment Corporation | Method and apparatus using a cache and main memory for both vector processing and scalar processing by prefetching cache blocks including vector data elements |
US4933910A (en) * | 1988-07-06 | 1990-06-12 | Zenith Data Systems Corporation | Method for improving the page hit ratio of a page mode main memory system |
US4965717A (en) * | 1988-12-09 | 1990-10-23 | Tandem Computers Incorporated | Multiple processor system having shared memory with private-write capability |
-
1991
- 1991-07-26 EP EP91306844A patent/EP0471462B1/en not_active Expired - Lifetime
- 1991-07-26 DE DE69129252T patent/DE69129252T2/de not_active Expired - Fee Related
- 1991-08-02 JP JP21662791A patent/JP3187465B2/ja not_active Expired - Fee Related
-
1996
- 1996-04-09 US US08/629,789 patent/US5604883A/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
"Multiple active page memory",IBM TECHNICAL DISCLOSURE BULLETIN.,米国,November 1989,vol.32,no.6B,p.477−478 |
Also Published As
Publication number | Publication date |
---|---|
US5604883A (en) | 1997-02-18 |
EP0471462B1 (en) | 1998-04-15 |
DE69129252D1 (de) | 1998-05-20 |
DE69129252T2 (de) | 1998-12-17 |
EP0471462A1 (en) | 1992-02-19 |
JPH04253242A (ja) | 1992-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3323212B2 (ja) | データプレフェッチの方法およびその装置 | |
US9904489B2 (en) | Processing systems, memory controllers and methods for controlling memory access operations | |
US6507897B2 (en) | Memory paging control apparatus | |
US5490113A (en) | Memory stream buffer | |
CN108139994B (zh) | 内存访问方法及内存控制器 | |
JP4395511B2 (ja) | マルチcpuシステムのメモリアクセス性能を改善する方法及び装置 | |
Davis | Modern DRAM architectures | |
US20080098176A1 (en) | Method and Apparatus for Implementing Memory Accesses Using Open Page Mode for Data Prefetching | |
US6363460B1 (en) | Memory paging control method | |
US5420994A (en) | Method for reading a multiple byte data element in a memory system with at least one cache and a main memory | |
US6314494B1 (en) | Dynamically size configurable data buffer for data cache and prefetch cache memory | |
US7328311B2 (en) | Memory controller controlling cashed DRAM | |
JPH04102948A (ja) | データ処理システム及び方法 | |
JP3187465B2 (ja) | コンピューターメモリオープンページバイアス法とその装置 | |
JPH04253243A (ja) | コンピューターメモリシステムおよびデータエレメント清浄化法 | |
US5835945A (en) | Memory system with write buffer, prefetch and internal caches | |
US5434990A (en) | Method for serially or concurrently addressing n individually addressable memories each having an address latch and data latch | |
EP0535701A1 (en) | Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM) | |
US5953740A (en) | Computer memory system having programmable operational characteristics based on characteristics of a central processor | |
US6002632A (en) | Circuits, systems, and methods with a memory interface for augmenting precharge control | |
US20070177415A1 (en) | High performance mass storage systems | |
US20060090059A1 (en) | Methods and devices for memory paging management | |
WO2009092037A1 (en) | Content addressable memory augmented memory | |
JP3564343B2 (ja) | キャッシュバイパス時のデータ転送装置と方法 | |
JPH056659A (ja) | ダイナミツクram |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |