JP2000267930A - メモリアクセス追跡のメモリページ管理装置および方法 - Google Patents

メモリアクセス追跡のメモリページ管理装置および方法

Info

Publication number
JP2000267930A
JP2000267930A JP2000059647A JP2000059647A JP2000267930A JP 2000267930 A JP2000267930 A JP 2000267930A JP 2000059647 A JP2000059647 A JP 2000059647A JP 2000059647 A JP2000059647 A JP 2000059647A JP 2000267930 A JP2000267930 A JP 2000267930A
Authority
JP
Japan
Prior art keywords
address
data
storage unit
page
electric circuit
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.)
Pending
Application number
JP2000059647A
Other languages
English (en)
Inventor
瑾 ▲頼▼
Jiin Lai
Chih-Kuo Kao
智國 高
Chia-Hsin Chen
佳欣 陳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Publication of JP2000267930A publication Critical patent/JP2000267930A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list

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)

Abstract

(57)【要約】 【課題】 メモリアクセス追跡状況下でヒット率を高
め、メモリアクセス遅延を減少するメモリページ管理装
置と方法に関する。 【解決手段】 メモリページ管理装置が、各アドレスデ
ータがバンクアドレスデータおよびページアドレスデー
タを含むページレジスタ電気回路と、アクセスアドレス
とページレジスタ電気回路のデータの比較結果により、
ページヒット信号およびバンクヒット信号を出力して、
アクセスアドレスがページレジスタ電気回路中に保存し
たメモリページのアドレスデータの一つのバンクアドレ
スデータ及びページアドレスデータにヒット時、バンク
ヒット信号およびページヒット信号が同時に作用する比
較電気回路と、アクセスアドレスをLRUの保存単位に
保存する利用率レジスタ電気回路と、ページレジスタ電
気回路に接続して、保存単位のデータが有効かどうかを
判断する確認電気回路とを含むことを特徴とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はメモリ管理装置と
方法に関して、特にメモリアクセス追跡でヒット率を高
めて、メモリのアクセス遅延を減少するメモリページ管
理装置と方法に関する。
【0002】
【従来の技術】今日、マルチコンピューターオペレーテ
ィングシステムで、各メモリマスター回路(memory mas
ter)の連続数個のアクセス動作は、全てメモリ内のあ
るアドレス区域内で行われる。そのためメモリマスター
回路のメモリアクセスの消耗時間(overhead)をどのよ
うに最低レベルまで下げるか、そしてアクセスの遅延時
間(latency)をどのように減少させるかが、重要な課
題であった。
【0003】従来のSDRAM(Synchronous Dynamic
Random Access Memory=SDRAM)は最多で4個のサ
ブバンク(sub-bank)を有して、各サブバンクは1個だ
けのメモリページをオープンすることができるため、最
多で4個のメモリページをオープンすることができた。
そのため従来のメモリ制御器は各メモリバンク(bank)
に対して固定した制御回路を設けて、それぞれDRAM
のメモリページを管理した。例えば最多で、2個のメモ
リページ或いは4個のメモリページを同時にオープンす
ることができて、これはつまり4組の制御回路を有し
た。
【0004】従来の技術の欠点は: 1.あるメモリバンク上にSDRAMがさし込まれてい
てもいなくても、このSDRAMはただ2個だけのサブ
バンクを有する。この時、未使用の制御回路はその他の
メモリバンクにより使用されないため、使用されない制
御回路は浪費される。 2.システム中で使用しているのがVC−SDRAM
(Virtual Channel SDRAM)だとすると、VC−SDR
AMは最多で16個のチャンネルを同時にオープンする
ことができる。もし4組だけの制御回路をつくるとする
と、12個のチャンネルは使用することができない。反
対に、16組の制御回路をつくるとすると、制御回路は
多大な面積を占用するため経済効果が悪い。また回路が
大きすぎるため遅延が大きくなり、高速システムには適
用することができない。また、SDRAMを使用する
と、最低12組の制御回路が浪費される。
【0005】そのため、以上の問題を解決するために、
この発明はメモリアクセス追跡のメモリページ管理装置
を提出、LRU(Least Recently Used)の演算法を利
用して、システムがEDO DRAM、SDRAM、或
いはVC−SDRAMなどの、どんなメモリでも使用で
きるという、柔軟性に優れた長所を有する。
【0006】
【発明が解決しようとする課題】この発明の目的は、メ
モリアクセス追跡のメモリページ管理装置を提出して、
メモリマスター追跡回路のアクセス動作により、ページ
ヒット率を増加させて、データをメモリマスター回路が
同時に使用できるようにする。そして、予め次のパイプ
ライン式アクセス(pipelined access)の予充電が必要
かどうか判断する。現行のアクセスを進める時、先に予
充電(precharge)コマンドをもうひとつのメモリバン
クに送って、予めもう一つのメモリバンクに対して予充
電を行うため、アクセスの遅延時間を減少することがで
きる。
【0007】
【課題を解決するための手段】この発明が提出するメモ
リアクセス追跡のメモリページ管理装置はページレジス
タ電気回路、比較電気回路、利用率レジスタ電気回路、
および確認電気回路を含む。ページレジスタ電気回路は
複数個の保存単位を有して、複数個のメモリページのア
ドレスデータを保存するのに提供、そのうち、各保存単
位には1個のメモリページのアドレスデータを保存す
る。
【0008】比較電気回路をページレジスタ電気回路に
接続、アクセスアドレスを受け取り、並びにアクセスア
ドレスとページレジスタ電気回路のデータとの比較結果
により、ヒット信号を出力して、アクセスアドレスはペ
ージレジスタ電気回路中に保存したメモリページのアド
レスデータの一つにヒットする時、ヒット信号は作用す
る。
【0009】利用率レジスタ電気回路をページレジスタ
電気回路に接続、保存単位の使用状況を管理する。確認
電気回路をページレジスタ電気回路に接続して、保存単
位のデータが有効かどうかを判断する。
【0010】この発明にかかる好適な実施例によると、
ページレジスタ電気回路はデータ保存表、ラッチ電気回
路、および選択電気回路を含む。これら保存単位はデー
タ保存表中に位置して、ラッチ電気回路を比較電気回路
に接続、比較電気回路出力のヒット信号をラッチして、
選択電気回路をラッチ電気回路、利用率レジスタ電気回
路、確認電気回路、およびデータ保存表に接続する。ラ
ッチしたヒット信号および利用率レジスタ電気回路と確
認電気回路の出力信号がデータ保存表の保存単位中の1
個を選択する。
【0011】その他、メモリページ管理装置が更に複数
個の確認ビットを具して、各確認ビットはそれぞれ、保
存単位の1つに対応して、確認ビット設定時、対応する
保存単位に保存したデータがはじめて有効となる。並び
に比較電気回路はこれら確認ビットにより、保存単位の
データが有効かどうか判断、比較電気回路はまたこれら
確認ビットの値を更新する。メモリページ管理装置はま
た、複数個の利用率データを具し、各利用率データは保
存単位の1つに対応して、保存単位の利用率を示す。利
用率レジスタ電気回路は利用率データにより保存単位の
使用状況を管理、利用率データを更新する。
【0012】この発明にかかる好適な実施例の中で、利
用率データは数字を用いて、対応する保存単位の利用率
を表して、利用率データの値が大きければ大きいほど、
対応する保存単位がより長い時間使用されていないこと
を表す。メモリページ管理装置が動作時、アクセスアド
レスが保存単位中に保存したメモリページのアドレスデ
ータに未ヒット時、アクセスアドレスを最大利用率に対
応する保存単位に保存する。同時に、最大利用率データ
値に対応する保存単位の確認ビットが有効時、アクセス
アドレスを最大利用率値に対応する保存単位に保存する
前に、保存単位のアドレスデータにより復原アドレスを
生成させ、対応するメモリページの状態を復原する。
【0013】この発明のもう一つの実施例によると、メ
モリページ管理装置はアクセスアドレスを受け取り、同
時にページヒット信号およびバンクヒット信号を出力、
メモリページ管理装置はページレジスタ電気回路、比較
電気回路、利用率レジスタ電気回路、および確認電気回
路を含む。ページレジスタ電気回路は複数個の保存単位
を具して、複数個メモリページのアドレスデータ保存に
提供、各保存単位にはメモリページのアドレスデータを
置き、各アドレスデータはバンクアドレスデータおよび
ページアドレスデータを含む。
【0014】比較電気回路をページレジスタ電気回路に
接続、アクセスアドレスを受け取り、アクセスアドレス
とページレジスタ電気回路のデータとの比較結果によ
り、ページヒット信号およびバンクヒット信号を出力す
る。アクセスアドレスがページレジスタ電気回路中に保
存したメモリページのアドレスデータの一つのバンクア
ドレスデータにヒット時、バンクヒット信号が作用す
る。アクセスアドレスがページレジスタ電気回路中に保
存したメモリページのアドレスデータの一つのバンクア
ドレスデータおよびページアドレスデータにヒット時、
バンクヒット信号およびページヒット信号は同時に作用
する。
【0015】利用率レジスタ電気回路をページレジスタ
電気回路に接続、保存単位の使用状況を管理して、アク
セスアドレスがメモリページのアドレスデータに未ヒッ
ト時、利用率レジスタ電気回路により保存単位中からL
RUの保存単位を探し出して、アクセスアドレスをLR
Uの保存単位に保存する。確認電気回路をページレジス
タ電気回路に接続して、保存単位のデータが有効かどう
か判断する。
【0016】この発明にかかる好適な実施例によると、
アクセスアドレスがページレジスタ電気回路中に保存し
たメモリページのアドレスデータの一つのバンクアドレ
スデータにヒットするが、ページアドレスデータに未ヒ
ット時、アクセスアドレスによりページアドレスデータ
を更新する。
【0017】上述したこの発明のメモリページ管理装置
により、この発明はメモリアクセス追跡のメモリページ
管理方法を提出して、それは下記のステップを含む。複
数個の保存単位を提供して、複数個のメモリページのア
ドレスデータを保存して、アクセスアドレスを受け取
り、アクセスアドレスと保存単位のアドレスデータを比
較する。アクセスアドレスが保存単位の一つのアドレス
データにヒット時、ヒット信号を送る。アクセスアドレ
スが保存単位の一つのアドレスデータに未ヒット時、保
存単位がLRUの保存単位を探し出して、アクセスアド
レスをLRUの保存単位に保存する。そして、アクセス
アドレスが保存単位の一つのアドレスデータに未ヒット
で、LRUの保存単位が有効なアドレスデータを既に保
存時、アクセスアドレスをLRUの保存単位に保存する
前、LRUの保存単位により、もとから保存してあるア
ドレスデータが復原アドレス信号を生成、対応するメモ
リページの状態を復原する。
【0018】
【発明の実施の形態】以下、この発明にかかる好適な実
施例を図面に基づいて説明する。各メモリマスター回路
を追跡する機能を達成するために、システムメモリ制御
器内にデータ保存表(page table)を設けて、システム
メモリ制御器にメモリマスター回路がメモリにアクセス
する過程により、オープンしたメモリページおよびメモ
リバンクのデータを記録させて、後にアクセスする時、
データ保存表の内容と比較して、ページヒット率(page
hit rate)およびデータ共用を促進することができ、
消耗時間を減少することもできる。
【0019】図1に示すように、メモリページ管理装置
100はアドレスデータの信号DA[27:11]、SEG
IN[1:0]、およびBANK[9:0]を受け取り、再び
内部に保存したデータと比較後、ヒット信号を送り出
す。信号DA[27:11]、SEGIN[1:0]、およびB
ANK[9:0]は、メモリマスター回路(master)(図
では省略)が送り出すアドレス信号並びにデコード回路
により(図では省略)得る。また、ヒット信号はページ
ヒット(page hit)信号ONPAG、バンクヒット(ba
nk hit)信号BKHIT、およびセグメントヒット(se
gment hit)信号SEGHITなどを含む。メモリペー
ジ管理装置100が送り出すヒット信号をメモリ制御回
路がメモリを制御するときの参考に提供する。例えばア
ドレス信号が得たヒット信号の不作用により、そのアク
セスしたアドレスがメモリでのクローズしたメモリペー
ジを表して、そのためメモリのデータにアクセスを行う
前に、必ず相関するコマンドをメモリに送り出す。例え
ば、予充電(precharge)および執行(activate)コマ
ンドで、既にオープンしているメモリページをクローズ
して、必要なメモリページをオープンするなどである。
【0020】メモリページ管理装置100は主に比較電
気回路110、ページレジスタ電気回路120、利用率
レジスタ電気回路130、および確認電気回路140を
含む。ページレジスタ電気回路120はデータ保存表1
25を具し、データ保存表125は多個の保存単位を具
し、メモリアクセス追跡の相関データを保存する。デー
タ保存表125は図2の表を使用して表示できる。表中
の各横列(row)は1個の保存単位で、これは8個の保
存単位(AからH)を例にする。各列は、各保存単位中
にメモリアクセスのデータを保存する。そのうち、保存
欄BKVCでVC−SDRAMのアドレスデータを保存
する。保存欄BNKでSDRAM或いはVC−SDRA
Mのバンク、或いはサブバンク(sub-bank)のアドレス
データを保存する。保存欄SEGでVC−SDRAMの
セグメント(segment)のアドレスデータを保存する。
保存欄PAGでSDRAM或いはVC−SDRAMのメ
モリページのアドレスデータを保存する。保存欄LRU
は保存単位が参考にされた利用率(utilization)の等
級データである。保存欄VLDは保存単位のデータが有
効(valid)かどうか表す。当然、この技術に習熟した
者ならわかるように、データ保存表125中で、上述デ
ータ保存に限定されなく、それは実際のニーズに合わせ
て、メモリアクセス制御が必要なその他のデータを保存
する。そのほか、データ保存表125中の各欄位を、実
際の回路設定により決めて、異なる回路チャート中に設
計する。例えば保存欄LRUを利用率レジスタ電気回路
130中に設計して、保存欄VLDを確認電気回路14
0中に設計する。
【0021】図3に示すように、比較電気回路110は
ページ比較電気回路310、バンク比較電気回路32
0、およびNANDゲート330,340,350を含
む。そのうち、ページ比較電気回路310が入力した信
号DA[27:11]および信号SEGIN[1:0]とアドレ
スデータ311〜318を比較して、その後、信号PA
GHIT[7:0]およびSEGHIT[7:0]を出力、前
述したように、アドレスデータ311〜318はデータ
保存表125中に保存したデータPAG、SEG、およ
びBKVCでもよく、また“PAG_A”は保存単位A
のPAG値を表し、その他のデータ表示はこの方式によ
る。バンク比較電気回路320は信号BANKIN[9:
0]とアドレスデータ321〜328を比較、その後、
信号BKHIT_[H:A]_、PGHIT_[H:
A]_、およびSGHIT[H:A]_を出力する。前
述のように、アドレスデータ321〜328はデータ保
存表125中に保存したデータBNKおよびVLDでも
よい。この実施例中では、信号BKHIT_[H:A]
_、PGHIT_[H:A]_、およびSGHIT_
[H:A]_は低電位で信号の作用を示す。このため、
信号BKHIT_[H:A]_、PGHIT_[H:
A]_、およびSGHIT_[H:A]_は再びNAN
Dゲート330、340、および350でヒット信号B
KHIT、ONPAG、およびSEGHITを生成さ
せ、この3個のヒット信号は低電位で作用を表す。
【0022】図4に示すように、ページレジスタ電気回
路120は保存メモリ動作に必要なアドレスデータのデ
ータ保存表125を具する以外に、さらにラッチ電気回
路410および選択電気回路420を含む。ラッチ(la
tch)回路410は比較電気回路110が送り出す信号
およびその他の回路(図では省略)が送り出す信号をラ
ッチする。ラッチ電気回路410によりラッチした信号
をデータバス412で選択電気回路420に送り、デー
タバス412はラッチ電気回路410の入力信号に対応
する多線の信号ラインを具し、ラッチした信号を選択電
気回路420へ送る。選択電気回路420はラッチ電気
回路410、利用率レジスタ電気回路130および確認
電気回路140が送る信号により信号SELを生成し
て、データ保存表125中の保存単位を選択する。その
後、信号BANK、LDA[27:11]、SEGMEN
T、およびVCSDRAMなどの、その他の入力信号に
より、選択された保存単位に対してデータ更新を行う。
前述したように、データ保存表125中にアドレスデー
タ431〜438を保存して、並びに、アドレスデータ
は比較電気回路110動作時に提供して使用する。
【0023】図5Aに示すように、利用率レジスタ電気
回路130を使用してLRU値を更新する。この構想
は、選択した保存単位に対応のLRU値を0に設定し
て、それはそのデータが最近使用されたことを表す。同
時にこの選択された保存単位のもとのLRU値より小さ
いLRUに1を加え、その他のLRU値が選択されたL
RU値より大きくなるようにする。そのキイポイントは
各保存単位のLRU値は必ず1つでなければならなく、
それは8個の保存単位を具するLRU値を例にすると、
各保存単位のLRU値は必ず0から7までの中の1個そ
して唯一で、LRU値の総和は必ず28に等しくなけれ
ばならない。これは各項目のLRU値の0から7の値の
総和を指定する。さもなければ、この装置の動作は問題
が発生する。LRU値の更新は比較信号PGCMP或い
は更新信号PGUPDを受け取った1周期後に進め、1
周期の遅延時間を新しいLRU値を計算するのに提供す
る。それがメモリバンクにヒットした時、比較後に、あ
る保存単位のアドレスデータにヒットしたことを確定し
て、信号PGCMPの1周期後にLRU値の更新を行
う。相対的に、その他どの保存単位にも未ヒット時、つ
まり保存単位のデータを更新する時、そのLRU値を更
新して、信号PGUPDの1周期後にLRU値の更新を
行う。この装置が最初作動する時、各保存単位のLRU
値を初期化する必要があり、その後の選択動作に提供す
る。
【0024】図5Bに示すように、確認電気回路140
は入力した信号により、各保存単位に対応する確認ビッ
トを出力、対応する保存単位の保存値が有効なデータか
どうか確認する。例えば、その確認ビットが設定(se
t)(例えば1に設定)された時、その対応する保存単
位の保存値が有効なメモリページアドレスであることを
表して、比較電気回路110を用いて、入力したアドレ
ス信号と比較する。ビットが未設定(reset)(例えば
0に設定)であるのを確認した時、その対応の保存単位
は有効データを未保存、或いは保存したデータが無効で
ある。
【0025】上述したこの発明のメモリページ管理装置
100によると、動作時、主に下記の主要なステップを
含む。 第一、開始時、データ保存表の各保存単位の内容を予設
値に設定して(例えばアドレスデータを0にする)、あ
らゆる不確定データが正確な比較に影響するのを防ぐ。 第二、従来のメモリアクセスのアドレスとデータ保存表
の内容を比較して、データ保存表の内容の更新或いは置
換をするかどうか決定する。 第三、LRU(Least Recently Used)と確認ビットを
結合して、どの保存単位を更新または置換するか決定す
る。
【0026】図6に示すように、開始後、ステップ61
0で、メモリマスター回路が送出のアクセスアドレスを
受け取る。ステップ612で、得たアクセスアドレスと
データ表のアドレス値を比較して、ある保存単位のアド
レス値にヒットしたかどうか判断する。
【0027】もし得たアクセスアドレスが、ある保存単
位のアドレス値にヒットしたとするとステップ614に
至り、ヒット信号を送り出す。そしてステップ628に
至り、相関するLRU値を更新して、ヒットした保存単
位のLRU値を0に設定する。この元のLRU値より小
さい各保存単位のLRU値にそれぞれ1を加えて最終ス
テップへ至り、アクセスアドレス処理を完成する。
【0028】もし得たアクセスアドレスが、どの保存単
位のアドレス値にもヒットしない時、ステップ620に
至り、データ表中で最大のLRU値を具する保存単位を
探し出す。ステップ622で、最大のLRU値を具する
保存単位のVLD値が有効かどうか判断する。探し出し
た最大LRU値を具する保存単位のVLD値が有効だと
すると、保存単位は既に有効なアドレスデータを保存し
たことを表す。それから、ステップ624へ至り、保存
単位が保存するアドレス値により復元アドレスを生成、
既にオープンした対応するメモリページをクローズして
ステップ626へ至る。
【0029】探し出した最大LRU値を具する保存単位
のVLD値が無効だとすると、保存単位は有効なアドレ
スデータが未保存であることを表示、直接にステップ6
26に至る。ステップ626で、さきほど受け取ったア
クセスアドレスを、探し出した最大LRU値を具する保
存単位中に入れる。ステップ628で、相関のLRU値
を更新して、探し出した最大LRU値を具する保存単位
のLRU値を0に設定、その他の保存単位のLRU値に
それぞれ1を加える。その後、最終ステップに至り、ア
クセスアドレス処理を完成する。更に以上述べた動作原
則を詳しく描写するため、以下で図と合わせてその動作
過程を詳しく説明する。
【0030】図7Aから図7Gに示すのは、データ表の
動作表示図である。より簡単に理解できるように、図示
したデータ表には、全ての項目を含まず、例えばアドレ
ス値はメモリページおよびメモリバンクのアドレスを示
すだけである。しかしながら、この従来の技術に習熟し
ているものなら十分に理解できるように、この動作原理
は依然として一致する。
【0031】図7Aはデータ表の初期化状態を示す。保
存単位のアドレス値全てを予設値に設定して、図示する
ように全てのアドレス値をみな0に設定する。そしてそ
れが動作する時、データ表中に存在する不確定アドレス
値が正確な比較に影響を及ぼすのを避ける。全てのアド
レス値は役に立たないため、全ての保存単位のVLD値
は無効に設定され、図示するように全ては0に設定され
る。各保存単位のLRUを唯一のLRU値に設定して、
図示するように、保存単位A〜Hをそれぞれ7〜0に設
定する。
【0032】図7Bに示すように、メモリマスター回路
がメモリに対して第1次アクセスを進める時、それが送
りだすメモリページのアドレス値が“10”だとする
と、この時、全ての保存単位は未使用のため、選択表中
のLRU値は最大の保存単位Aである。アドレスをその
中のアドレス値欄に保存して、並びにそのVLD値を設
定、0から1に変化させてから、所属するLRU値を0
に設定する。並びにデータ表中のその他保存単位の7よ
り小さいLRU値全てに1を加えて、保存単位B〜Hの
LRU値すべてに1を加える。
【0033】図7Cが示すのは、メモリマスター回路が
メモリに対して第二次アクセスを進める時で、それが送
り出すメモリページのアドレス値を“20”とする。デ
ータ表中にあるデータと比較して、データ表のどのデー
タにも未ヒットである。そのため、データ表中のLRU
値が最大の保存単位を探し出し、LRU値が7の保存単
位Bで、その後、アドレス値をその中に保存、それが所
属するVLD値を設定する。例えば、もとの0から1に
変化して、再びそれが所属するLRU値を0に設定、7
より小さいLRU値に1を加える。
【0034】図7Dが示すように、メモリに対して数回
以上のアクセス後、データ表中の保存単位全てのデータ
は全て有効となり、データ表最後のアドレス値、LRU
値、およびVLD値は図示するとおりである。
【0035】図7Eが示すのは、再びメモリに対してア
クセスを進める時で、送り出すメモリページのアドレス
値を“90”にした時である。データ表が有するデータ
と比較して、データ表中のどのデータにも未ヒット時、
データ表中のLRU値最大の保存単位、即ちLRU値が
7の保存単位Aを探し出す。その後、アドレス値をその
中に保存、そのVLD値はもともと既に設定されたもの
で再設定する必要がない。最後に、それが所属するLR
U値を0に設定して、7より小さいLRU値に1を加え
る。なぜなら保存単位AのVLD値がもともと既に設定
されているため、新しいアドレス値を更新する前に、元
々のアドレス値により、既にオープンしているメモリペ
ージをクローズする。例えば、送り出した予充電コマン
ドで予充電の作動を行う。
【0036】図7Fに示すように、再びメモリに対して
アクセスを進めて、もしそれが送り出すメモリページの
アドレス値が“40”だとすると、データ表中にあるデ
ータと比較後、データ表中の保存単位Dのアドレスデー
タにヒットしたことを確定する。そのためそのアドレス
値とVLD値を変更する必要がなく、相関するLRU値
の更新、即ちそのLRU値を元の5から0に変更、する
必要があるだけである。さらにLRU値が5より小さい
その他の保存単位、例えば保存単位A、D、F、Gおよ
びH所属のLRU値に1を加える。
【0037】図7Fが示すのは、CPUが再びメモリに
対してアクセスを進める時で、それが送り出すメモリペ
ージのアドレス値が“22”で、それとアドレス値が
“20”のメモリページが同じメモリバンク中にあると
すると、アドレス値“22”とデータ表中の保存単位B
のアドレスデータとを比較後にバンクヒット(bank hi
t)を見つける。同じメモリバンク中、同じ時間内で
は、ただ一つのメモリページしかオープンすることがで
きないため、そのVLD値不変を保持しながら、そのア
ドレスを新しいアドレス値“22”に更新する。並びに
相関するLRU値を更新して、その元々のLRU値を7
にする。そしてそれが所属するLRU値を0に設定し
て、7より小さいLRU値に1を加える。新しいメモリ
ページをオープンする前に、必ず元のアドレス値により
同一メモリバンク中で既にオープンしているメモリペー
ジをクローズする。
【0038】図8Aから図8Dおよび図9Aから図9B
に示すように、全ての回路の作動は全て参考共同のクロ
ック信号DCLKである。そのためタイムテーブル中で
はクロック信号DCLKを基準として説明する。
【0039】図8Aに示すのはページヒットのアクセス
(或いはVC−SDRAMのセグメントヒット〔segmen
t-hit〕)である。そのメモリバンクおよび既に動いた
列アドレスのデータをデータ表の保存単位内に保存する
ため、そのアドレス内容を更に動かす必要がなく、その
LRU値の更新だけが必要である(例えば0に設定す
る)。図示するように、ヒットするのが保存単位Aのデ
ータだとすると、アクセスアドレスを送出後、比較電気
回路110と比較を行い、周期T0の後、その出力信号
ONPAGおよびBKHITは高電位に変化、ページヒ
ットおよびバンクヒットを表す。その後、周期T7の
後、PGCMPが高電位に変化して、比較電気回路11
0が送り出す信号をラッチして、データ更新に使用す
る。周期T9後の信号LRU_Aの変化は、保存単位A
所属のLRU値を0に設定する。
【0040】図8Bが示すように、SDRAMのメモリ
バンク中では、同一時間内に、1個だけの列しか動かせ
ない(即ち1個のメモリページをオープンする)。その
ためアクセス動作により送出したアドレスが選んだ保存
単位により、同一のメモリバンクのメモリページに対応
するアドレスは、この次にアクセスするアドレスの更新
が必要である。図示するように、周期T0の後、比較電
気回路110が送り出す信号により、信号BKHITだ
けが高電位に変化する。この時、データ表のアドレスデ
ータにより、既にオープンしたメモリページをクローズ
する。その後、信号PGCMPは周期T5の後に高電位
に変化、比較電気回路110が送り出す信号をラッチし
て、ヒットした保存単位を選択する。そして選んだ保存
単位のメモリページデータを更新する。周期T7の後、
相関するLRU値を更新して、周期T10の後、信号P
GUPDおよびPAG_Aに合わせて、メモリページの
データを更新、同時に必要な新しいメモリページをオー
プンする。
【0041】メモリのアクセスを進めるとき、そのアド
レスとデータ表のデータを比較してから、その結果がバ
ンク未ヒット(bank-miss)の状況時、必ずデータ表中
から1個の保存単位を探し出して最近使用したデータを
保存する。この状況下を二種類の状況に分け、それぞれ
図と合わせて以下で詳しく説明する。
【0042】図8Cに示すのは、バンク未ヒットのアク
セス状況で、データ表中に未使用の保存単位がある。比
較電気回路110によりメモリアクセスのアドレスを比
較して、どの保存単位のデータにもヒットしていないこ
とを確定する。そのため信号ONPAGおよびBKHI
Tはすべて未変化である。周期T1の後、信号PGCM
Pにより信号をラッチして、再びVLD値が未設定の保
存単位を選択、上記の動作方式により、必ずLRU値が
最大の保存単位を選択する。例えばLRU値が7の保存
単位だと、選択したのは保存単位Aである。その後、周
期T4の後、信号PGUPDに合わせて、信号PAG_
AおよびBNK_Aのアドレスデータを保存単位Aに書
き入れ、同時に信号VLD_AによりそのVLD値を設
定、再び1周期後、信号LRU_AによりそのLRU値
を0に設定する。同時にその他の関係する保存単位のL
RU値を更新して、7より小さいLRU値に1を加え
る。
【0043】図8Dに示すような状況時、例えばLRU
値が7の、必ずデータ表中からLRU(Least Recently
Used)の保存単位を探し出して新しいデータを保存す
る。図示するように、比較電気回路110によりメモリ
アクセスのアドレスと比較、保存単位のどのデータとも
未ヒットであることを確定する。信号ONPAGおよび
BKHITはいずれも未変化で、周期T1の後、信号P
GCMPは信号をラッチして、例えばLRU値が7の、
LRU値が最大の保存単位を探し出し、選択したのを保
存単位Aとする。新しい値が選択した保存単位の元から
あるデータを交換する前に、必ず元のメモリバンクデー
タがSDRAMに対して予充電(precharge)の動作を
行う必要があり、元のメモリバンクおよびサブバンク
(sub-bank)をクローズする。これはスキャンフリップ
フロップ(flip flop)を使用して達成することができ
て、信号PGCMPが出現する時のクロック信号の立上
りエッジ時、即ち周期T7の立上がりエッジで、選択し
た保存単位の元のデータをラッチして、信号LPGBK
およびLPGSBのメモリバンクおよびサブバンクの予
充電コマンドを生成する。その後、周期T6の後、信号
PGUPDに合わせ、信号PAG_AおよびBNK_A
送出のデータをデータ表中で選択した保存単位に書き入
れる。並びに周期T8の後、相関のLRU値を更新す
る。即ち選択した保存単位のLRU値を0に設定して、
その他全て保存単位のLRU値に1を加える。
【0044】上記の信号LPGBKおよびLPGSBに
対して、システムが八個のメモリバンクを具するとする
と、8ビット幅の信号LPGBK[0:7]で表示して、
そのうち各ビットは1個のメモリバンクに対応する。ま
た信号LPGBK[0]はシステムの第1メモリバンク
を表す。並びに、各メモリバンクが二個のサブバンクを
具すると、四個のビットの信号LPGSB[1:0]で表
示する。VC−SDRAM使用時、選択した保存単位が
既にデータを有すると、復原(restore)データ(RX
PAG[27:11]、RXSEG[1:0])を生成して復原
周期(restorecycle)に提供する。
【0045】コンピューターシステムで、同時に異なる
タイプのメモリを使用する可能性があるため、必ず異な
るメモリの制御方式に合わせることを考慮しなければな
らなく、制御方式で調整する。コンピューターシステム
で同時にEDO/FP DRAMおよびSDRAMを使
用するとき、EDO/FP DRAMの8ビット幅の信
号CAS#[7:0]はSDRMAMと一緒に使用する。
その他、DRAM更新(refresh)を行う前、全てのメ
モリバンクは必ずアイドル(idle)状態で、予充電を経
過しなければならない。ページ更新信号PGFLHは確
認ビットを無効に設定して(即ち対応するVLD値を0
に設定する)、メモリ更新周期をつくり、EDO/FP
DRAMからSDRAMに切り替えるときに用いる。
続いてタイムテーブルと合わせてEDO/FP DRA
MからSDRAMに切り替える状況を説明する。
【0046】図9Aに示すように、前一時アクセスがE
DO/FP DRAMのデータアクセスであるとする
と、周期T1の時、前回のアクセスにより、信号PGU
PDに合わせ、信号PAG_AおよびBNK_Aのアド
レスデータを保存単位Aに保存する。同時に周期T3
で、信号LRU_Aを通して、そのLRU値を0に設
定、信号VLD_Aは設定を保持する。続いて周期T4
で出現の信号PGCMPは、SDRAMに対してアクセ
スして、比較電気回路110で比較後、どの保存単位の
データにもヒットしていないことを確定する。EDO/
FP DRAM不使用時、オープンしたメモリページを
保持することはできない。そのため保存単位Aを用い
て、次回アクセスのデータを保存する。周期T5の後、
信号PGFLHは高電位に変化して、その後周期T6の
時、信号VLD_Aを低電位に変化させ、EDO/FP
DRAMをクローズする。その後、周期T7で、信号
PGUPDに合わせて、信号PAG_AおよびBNK_
AのSDRAMのアドレスデータを保存単位Aに保存し
て、必要なメモリページをオープンする。同時に周期T
8の時、信号VLD_Aを高電位に回復、そのVLD値
を有効に設定して、そのLRU値は0を維持する。
【0047】図9Bに示すように、前回のアクセスがE
DO/FP DRAMのデータアクセスだとすると、周
期T1の時、前回のアクセスにより、信号PGUPDに
合わせ、信号PAG_AおよびBNK_Aのアドレスデ
ータを保存単位Aに保存する。並びに周期T3で、信号
LRU_Aにより、そのLRU値を0に設定する。同時
に信号LRU_Bは、例えば保存単位BのLRU値に1
を加えるなどして、連動して変化して、信号VLD_A
は設定を保持する。続いて、周期T3で出現の信号PG
CMPは、SDRAMに対してアクセスして、比較電気
回路110で比較後、そのヒット保存単位Bのデータを
確定する。そのため周期T5の後、直接に相関のLRU
値を更新、即ち信号LRU_Bで保存単位BのLRU値
を0に設定して、保存単位BのもとのLRU値より小さ
いLRU値に1を加える。例えば、信号LRU_Aによ
り保存単位AのLRU値が0から1に変化する。そして
周期T5の後、信号PGFLHは高電位に変化して、信
号VLD_Aを低電位に変化させ、EDO/FP DR
AMをクローズする。
【0048】メモリの更新周期は上記の状況と異なり、
全てのメモリバンクの予充電を行うために必ず全ての保
存単位のVLD値を無効に設定する必要がある。メモリ
更新後、前述の原則により動作させる。また、VC−S
DRAM使用時、それが自動予充電コマンドを使用する
ため、その他の相関する保存データの更新が必要ない。
以上のごとく、この発明を好適な実施例により開示した
が、もとより、この発明を限定するためのものではな
く、同業者であれば容易に理解できるように、この発明
の技術思想の範囲において、適当な変更ならびに修正が
当然なされうるものであるから、その特許権保護の範囲
は、特許請求の範囲および、それと均等な領域を基準と
して定めなければならない。
【0049】
【発明の効果】上記構成により、この発明は下記の優れ
た点を有す。メモリ追跡マスター回路の各アクセス動作
により、ページヒット率を増加してデータをメモリマス
ター回路に共同で使用させるだけでなく、予め次のパイ
プラインアクセス(pipelinedaccess)の予充電が必要
かどうか判断する。このように現在のアクセスを進める
とき、予め予充電コマンドをもう一つのメモリバンクに
送って、先にもう一つのメモリバンクに対して予充電を
進め、アクセスの遅延時間を減少させる。従って、産業
上の利用価値が高い。
【図面の簡単な説明】
【図1】 この発明にかかる、メモリアクセス追跡のメ
モリページ管理装置の構成図である。
【図2】 この発明にかかる、メモリページ管理装置使
用のデータ保存表である。
【図3】 この発明にかかる、メモリページ管理装置の
比較電気回路の詳細な構成図である。
【図4】 この発明にかかる、メモリページ管理装置の
ページレジスタ電気回路の詳細な構成図である。
【図5】 (A)この発明にかかる、メモリページ管理
装置の利用率レジスタ電気回路の詳細な回路図である。
(B)この発明にかかる、メモリページ管理装置の確認
電気回路の詳細な回路図である。
【図6】 この発明にかかる、メモリページ管理装置の
動作流れ図である。
【図7】 (A)から(G)は、この発明にかかる、メ
モリページ管理装置のデータ表の動作過程図である。
【図8】 (A)から(D)は、この発明にかかる、メ
モリページ管理装置の異なる動作状況下でのタイムテー
ブルである。
【図9】 (A)と(B)は、この発明にかかる、メモ
リページ管理装置の異なる動作状況下でのタイムテーブ
ルである。
【符号の説明】
100 メモリページ管理装置 110 比較電気回路 120 ページレジスタ電気回路 125 データ保存表 130 利用率レジスタ電気回路 140 確認電気回路 310 ページ比較電気回路 320 バンク比較電気回路 330 NANDゲート 340 NANDゲート 350 NANDゲート 410 ラッチ電気回路 412 データバス 420 選択電気回路

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 アクセスアドレスを受け取り、並びにペ
    ージヒット信号およびバンクヒット信号を出力して、 メモリページ管理装置が、 複数個の保存単位を具し、複数個のメモリページのアド
    レスデータを保存して、前記各保存単位がメモリページ
    のアドレスデータを保存して、前記各アドレスデータが
    バンクアドレスデータおよびページアドレスデータを含
    むページレジスタ電気回路、 前記ページレジスタ電気回路に接続して、アクセスアド
    レスを受け取り、並びに前記アクセスアドレスと前記ペ
    ージレジスタ電気回路のデータの比較結果により、前記
    ページヒット信号および前記バンクヒット信号を出力し
    て、前記アクセスアドレスが前記ページレジスタ電気回
    路中に保存した前記メモリページのアドレスデータの一
    つのバンクアドレスデータにヒット時、前記バンクヒッ
    ト信号は作用、前記アクセスアドレスが前記ページレジ
    スタ電気回路中に保存した前記メモリページのアドレス
    データの一つの前記バンクアドレスデータおよび前記ペ
    ージアドレスデータにヒット時、前記バンクヒット信号
    および前記ページヒット信号が同時に作用する比較電気
    回路、 前記ページレジスタ電気回路に接続して、前記保存単位
    の使用状況を把握して、前記アクセスアドレスが前記メ
    モリページのアドレスデータに未ヒット時、利用率レジ
    スタ電気回路により、前記保存単位からLRUの保存単
    位を探し出して、並びに前記アクセスアドレスを前記L
    RUの保存単位に保存する利用率レジスタ電気回路、そ
    して前記ページレジスタ電気回路に接続して、前記保存
    単位のデータが有効かどうか判断する確認電気回路、を
    含むことを特徴とするメモリアクセス追跡のメモリペー
    ジ管理装置。
  2. 【請求項2】 上記アクセスアドレスが上記ページレジ
    スター電気回路中に保存した上記メモリページのアドレ
    スデータの一つのバンクアドレスデータにヒット、しか
    し上記ページアドレスデータに未ヒット時、上記アクセ
    スアドレスにより、上記ページアドレスデータを更新す
    ることを特徴とする請求項1記載のメモリアクセス追跡
    のメモリページ管理装置。
  3. 【請求項3】 複数個の保存単位を提供して、複数個の
    メモリページのアドレスデータを保存して、 アクセスアドレスを受け取り、 前記アクセスアドレスと前記保存単位のアドレスデータ
    を比較、 前記アクセスアドレスが前記保存単位の一つのアドレス
    データにヒット時、ヒット信号を送り出し、 前記アクセスアドレスが前記保存単位の一つのアドレス
    データに未ヒット時、前記保存単位はLRUの保存単位
    を探し出し、前記アクセスアドレスを前記LRUの保存
    単位に保存して、そして、 前記アクセスアドレスが前記保存単位の一つのアドレス
    データに未命中、前記LRUの保存単位が既に有効のア
    ドレスデータを保存した時、前記アクセスアドレスを前
    記LRUの保存単位に保存する前に、前記LRUの保存
    単位は先に保存のアドレスデータが復原アドレス信号を
    生成して、対応するメモリページの状態を復原する、ス
    テップを含むことを特徴とするメモリアクセス追跡のメ
    モリページ管理方法。
JP2000059647A 1999-03-05 2000-03-03 メモリアクセス追跡のメモリページ管理装置および方法 Pending JP2000267930A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW88103372 1999-03-05
TW088103372A TW416032B (en) 1999-03-05 1999-03-05 Memory pages management device and method for tracking memory access

Publications (1)

Publication Number Publication Date
JP2000267930A true JP2000267930A (ja) 2000-09-29

Family

ID=21639871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000059647A Pending JP2000267930A (ja) 1999-03-05 2000-03-03 メモリアクセス追跡のメモリページ管理装置および方法

Country Status (4)

Country Link
US (1) US6490665B1 (ja)
JP (1) JP2000267930A (ja)
DE (1) DE19957612A1 (ja)
TW (1) TW416032B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003083661A1 (en) * 2002-04-03 2003-10-09 Via Technologies, Inc. Memory-access management method and system for synchronous dynamic random-access memory or the like

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625700B2 (en) * 2001-05-31 2003-09-23 Sun Microsystems, Inc. Arbitration and select logic for accessing a shared memory
KR100678913B1 (ko) * 2005-10-25 2007-02-06 삼성전자주식회사 가상 메모리 시스템에서 페이지 폴트를 줄이는 장치 및방법
CN101751341B (zh) * 2008-12-18 2012-05-23 慧国(上海)软件科技有限公司 非易失性存储器资料管理方法及非易失性储存装置
KR101612922B1 (ko) * 2009-06-09 2016-04-15 삼성전자주식회사 메모리 시스템 및 메모리 시스템 관리 방법
WO2013095644A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Page miss handler including wear leveling logic
US10528488B1 (en) * 2017-03-30 2020-01-07 Pure Storage, Inc. Efficient name coding
TWI639920B (zh) * 2017-11-17 2018-11-01 財團法人工業技術研究院 記憶體控制器及其控制方法以及記憶體及其控制方法
US11537306B2 (en) * 2021-03-12 2022-12-27 Micron Technology, Inc. Cold data detector in memory system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0466550B1 (en) * 1990-06-29 1998-11-18 Digital Equipment Corporation Conversion of internal processor register commands to I/O space address
US5873123A (en) * 1996-06-25 1999-02-16 International Business Machines Corporation Processor and method for translating a nonphysical address into a physical address utilizing a selectively nonsequential search of page table entries
US5781922A (en) * 1996-11-19 1998-07-14 International Business Machines Corporation Page boundary caches
US6069638A (en) * 1997-06-25 2000-05-30 Micron Electronics, Inc. System for accelerated graphics port address remapping interface to main memory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003083661A1 (en) * 2002-04-03 2003-10-09 Via Technologies, Inc. Memory-access management method and system for synchronous dynamic random-access memory or the like
GB2402523A (en) * 2002-04-03 2004-12-08 Via Tech Inc Memory-access management method and system for synchronous dynamic random-access memory or the like

Also Published As

Publication number Publication date
US6490665B1 (en) 2002-12-03
TW416032B (en) 2000-12-21
DE19957612A1 (de) 2000-09-07

Similar Documents

Publication Publication Date Title
US6484246B2 (en) High-speed random access semiconductor memory device
US6381190B1 (en) Semiconductor memory device in which use of cache can be selected
US5617348A (en) Low power data translation circuit and method of operation
US6219765B1 (en) Memory paging control apparatus
JP2000021160A (ja) 半導体集積回路及びデータ処理システム
US20010022754A1 (en) Synchronous memory with programmable read latency
US5724547A (en) LRU pointer updating in a controller for two-way set associative cache
US6363460B1 (en) Memory paging control method
US5974497A (en) Computer with cache-line buffers for storing prefetched data for a misaligned memory access
JP2000267930A (ja) メモリアクセス追跡のメモリページ管理装置および方法
US6571323B2 (en) Memory-access management method and system for synchronous dynamic Random-Access memory or the like
JP3789998B2 (ja) メモリ内蔵プロセサ
JP2005038427A (ja) ダイナミック周波数スケーリングキャッシュメモリの休止時間を利用する方法、回路及びシステム
KR100298955B1 (ko) 데이타처리시스템
US5577218A (en) Memory access control method wherein block access is performed as a sequential access to an address updated by incrementation
CN117271390A (zh) 一种基于目录监听的cache一致性实现架构及方法
US5611072A (en) Cache with an extended single cycle read/write system and method
JPH01229345A (ja) データ処理装置
US5577228A (en) Digital circuit for performing multicycle addressing in a digital memory
US5813028A (en) Cache read miss request invalidation prevention method
JPH05120135A (ja) キヤツシユ制御方式
JPH03235143A (ja) キャッシュメモリ制御装置
JP2822913B2 (ja) 半導体記憶装置
JPH0784866A (ja) メモリ制御回路
JPH0749813A (ja) キャッシュメモリの制御方式およびキャッシュタグメモリの制御方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050315

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050616

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060810

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090410

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090415