JP2001516089A - メモリ属性パレット - Google Patents
メモリ属性パレットInfo
- Publication number
- JP2001516089A JP2001516089A JP2000510102A JP2000510102A JP2001516089A JP 2001516089 A JP2001516089 A JP 2001516089A JP 2000510102 A JP2000510102 A JP 2000510102A JP 2000510102 A JP2000510102 A JP 2000510102A JP 2001516089 A JP2001516089 A JP 2001516089A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- signal
- attribute
- memory attribute
- register
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 218
- 230000004044 response Effects 0.000 claims abstract description 18
- 101001116314 Homo sapiens Methionine synthase reductase Proteins 0.000 claims description 20
- 102100024614 Methionine synthase reductase Human genes 0.000 claims description 20
- 239000004020 conductor Substances 0.000 claims description 12
- 238000000034 method Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009448 modified atmosphere packaging Methods 0.000 description 1
- 235000019837 monoammonium phosphate Nutrition 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
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)
- Image Generation (AREA)
Abstract
Description
性を割り当てるためのメモリ属性パレットを含むコンピュータ・メモリ・システ
ムに関する。
録商標)Proプロセッサは、メモリの特定のセクションの効果的なメモリ・タ
イプを設定するために共に使用される2つの対話機構を含む。メモリ・タイプ・
レンジ・レジスタ(MTRR)は物理アドレス範囲のメモリ属性を定義する。ペ
ージ・テーブルによって直線的にアドレス指定されたメモリ・ページにメモリ属
性を動的に割り当てることができる。MTRRは通常BIOSによって設定され
る特定のアラインメントおよび長さの制約がある静的物理範囲を記述するのに適
しているが、プログラムの直線的にアドレス指定された動的なデータ構造体を記
述することができない。ページ・テーブルによって、メモリ属性をメモリの直線
的にアドレス指定されたページに動的に割り当てることができる。これによって
、メモリ属性を任意のデータ構造体に適用する際のオペレーティング・システム
(OS)とアプリケーションの柔軟性が与えられる。
スルー(WT)およびアンキャッシャブル(UC)を含むすべてのメモリ属性の
サブセットのみを提供する。ページ・ディレクトリおよびページ・テーブル・エ
ントリは、メモリ・タイプを選択する2つのビット、すなわちページ・キャッシ
ュ・ディスエーブル(PCD)およびページ・ライト・スルー(PWT)を含む
。残りの2つのメモリ・タイプは残りの予約ビットのみを使用して指定できるが
、そうすることで将来新しいメモリ属性を導入することが妨げられるであろう。
モリ・タイプの符号化を与える手段が必要である。
メモリ属性信号を選択するメモリ属性パレットを有するコンピュータ・システム
を含む。有効メモリ属性セレクタは直線メモリ属性信号を受信し、直線メモリ属
性信号に応答して有効メモリ属性信号を選択する。メモリ管理回路は有効メモリ
属性信号を受信し、有効メモリ属性信号に応答してメモリ管理信号を提供する。
本発明の特定の実施態様は、有効メモリ属性セレクタに物理メモリ属性信号を与
える物理属性レジスタを含むことができ、有効メモリ属性セレクタが直線メモリ
属性信号および物理メモリ属性信号に応答して有効メモリ属性信号を選択する。
明のいくつかの実施形態では、物理メモリ属性、例えばMTRRも指定される。
メモリ属性パレット(MAP)は索引信号を受信し、索引信号に応答して直線メ
モリ属性を選択する。有効メモリ属性セレクタは選択された直線メモリ属性信号
を受信し、物理属性レジスタから物理メモリ属性信号を受信でき、それに応答し
て、有効メモリ属性を表す有効メモリ属性信号を選択する。本発明の好ましい実
施形態では、直線メモリ属性は1つまたは複数のレジスタに書き込むことができ
る。これによって、プログラムまたはOSの作成者は、将来のメモリ属性を含め
て、メモリ属性を柔軟に選択できる。本発明によって、プログラムは選択したメ
モリ属性をメモリの特定のセクションに適用でき、それによってコンピュータ・
システムはより高いパフォーマンスを得ることができる。
本発明は特定のタイプのマイクロプロセッサに関する使用に限定されない。実際
、本発明は、マイクロプロセッサとメモリの一般に理解されている構造と信号に
関して記述されている。ただし、本発明の特定の実施形態は、Intel Co
rporationから発売されているPentium(登録商標)Proマイ
クロプロセッサ内とそれに関係するチップ・セット内で現在使用されている構造
を含む。ただし、本発明はPentium(登録商標)Proマイクロプロセッ
サで使用されている下記の構造および信号に関する使用に限定されない。Pen
tium(登録商標)Proマイクロプロセッサの基本構造および信号はPen
tium Pro Family Developer’s Manual、V
ol.1:Specification、Vol.2:Programmer’
s Reference Manual、およびVol.3:Operatin
g System Writer’s Manual(特にVol.3、第11
章)(Intel Corporation、1996)に記載されている。本
明細書で使用する「メモリ属性」という用語は、Pentium(登録商標)P
roプロセッサに関する「メモリ・タイプ」と呼ばれるものを含むが、これに限
定されるわけではない。
べるプロセッサ14を含む。コンピュータ・システム10は、異なるサイズとプ
ロセッサ14に関して異なるアクセス速度を有する様々なメモリを含む。メモリ
はメイン・メモリ16、L2キャッシュ20、およびハード・ドライブなどの周
辺装置22を含む。データは、プロセッサ14の内部にあるL1キャッシュから
読み出し、またそこに書きこむことができる。さらに、コンピュータ・システム
10は、プロセッサ26が代表する1つまたは複数の追加のプロセッサを含むこ
とができる。プロセッサ26はメイン・メモリ16をプロセッサ14と共用でき
る。データはプロセッサ・バス28、PCIバス30、バックサイド・バス34
、およびバス36を含む様々なバスを介して転送される。メモリ・コントローラ
38は様々なメモリとプロセッサ14およびプロセッサ26(ある場合)との間
のデータの転送を制御する。コンピュータ・システム10は例にすぎない。本発
明によるコンピュータ・システムはコンピュータ・システム10のすべての構成
要素(例えば別個のL2キャッシュ)を含む必要はない。さらに、メモリ・コン
トローラ38はルックアサイド、ルックスルー、ライトバック、またはライトス
ルー・キャッシュ構成などの特定の構成に限定されない。
を受信する。好ましい実施形態では、MAPは3つのメモリ属性索引信号、すな
わち、導線54、56、および58を通るPCD、PWT、およびMAP索引信
号を受信する。Pentium(登録商標)ProプロセッサではPCD(ペー
ジ・キャッシュ・ディスエーブル)およびPWT(ページ・ライト・スルー)が
採用されている。Pentium(登録商標)Proプロセッサでは、PCDお
よびPWT信号は、制御レジスタCR3のそれぞれフラグ・ビット4および3で
ある。Pentium(登録商標)Proプロセッサでは、レジスタCR3は、
CR3レジスタがページ・ディレクトリ・ポインタ・テーブルと呼ばれる、CR
4物理アドレス拡張(PAE)ビットがセットされている時を除き、ページ・デ
ィレクトリ・ベース・アドレス・レジスタと呼ばれる。
テーブル・エントリに供給される。MAP索引信号は制御レジスタCR3、ペー
ジ・ディレクトリ・エントリ、およびページ・テーブル・エントリの予約ビット
の位置に供給できる第3の索引信号である。単に例として、MAP信号ビットは
小容量(例えば、4K)のページ・テーブル・エントリ用のビット7、および大
容量(例えば、2M/4M)のページをマッピングするページ・ディレクトリ・
エントリ用のビット12である。MAP索引ビットはレジスタCR3、ページ・
ディレクトリ・エントリ、またはページ・ディレクトリ・ポインタ・エントリに
ついては定義されておらず、したがって、ゼロと見なされる。メモリ属性索引信
号がPCD、PWT、およびMAP信号と呼ばれる必要はなく、CR3レジスタ
、ページ・ディレクトリ・エントリ、またはページ・テーブル・エントリに関し
て供給される必要もないことは当然である。
R7に分割されるレジスタ60の最大8つの直線メモリ属性の1つを選択する。
セレクタ52は、マルチプレクサでもよく、導線54、56、および58を通る
索引信号PCD、PWT、およびMAPのステートに基づいてレジスタR0、R
1、...R7の1つの内容を導線82に供給する。(様々な多重化技法のうち
任意の技法を使用できる。)Pentium(登録商標)Proプロセッサの場
合のように、レジスタ60は、リング0/OSでECXレジスタを介してパラメ
ータとして「rdmsr」(読み出しモデル専用レジスタ)命令および「wrm
sr」(書き込みモデル専用レジスタ)命令に渡されるMSRアドレス0x27
7であってもよい。したがって、レジスタ60の内容、またはその一部はプログ
ラムの動作中に変更でき、それによってプログラマは柔軟にメモリ属性を選択で
きる。レジスタ60はアーキテクチャによって定義することができる。(本発明
の代替実施形態では、小容量レジスタの内容を変更することで、わずか1つまた
は2つの索引信号から多数の属性にアクセスすることができる。)
タ(MSR)であってよい。あるいは、直線属性レジスタR0、R1、...R
7は異なるアドレスを有し、互いに別個であってもよい。データはバス62を介
してレジスタ64からレジスタ60に書き込むことができる。図2に示すように
、レジスタ64はECXレジスタなどのマイクロプロセッサ内部のレジスタでも
よい。あるいは、レジスタ64はマイクロプロセッサの内部または外部のメモリ
内の位置であってもよい。レジスタ64は異なるメモリ位置を有するレジスタの
グループを表すことができる。属性データは、レジスタ64が表すことができる
メモリへのポインタを介してアクセスできる。レジスタ64とレジスタ60の間
には図示されていない追加の回路があってもよい。属性データは導線66、68
、...80を介してレジスタ60から読み出すことができる。好ましい実施形
態では、導線66、68、...80および82はNビット幅である。Nは3、
8、またはその他の数である。バス62および導線66、68、...80はま
た適当な読み出しおよび/または書き込み回路を表す。セレクタ52はレジスタ
60にいつでもアクセスできるので、レジスタ60をパレット・レジスタと呼ん
でもよい。レジスタ64はMAP50の外部にあるので、外部レジスタと呼ぶこ
ともできる(プロセッサ14の外部にあるか否かにかかわらず)。
はレジスタR1を含み、...、ビット56〜63はレジスタR7を含む。(こ
の意味では、レジスタ60は多数のレジスタと考えることもできる。さらに、説
明したように、レジスタは異なるアドレスにあってもよい)メモリ属性0(MA
P0)はレジスタ0のメモリ0〜2内にある。MA0、MA1、...、MA7
はMAP50を介して利用可能なレジスタ60内に含まれる8つのメモリ属性を
指定する。したがって、MAP50は8エントリ、8ビット幅のプログラマブル
・テーブルである。この例では、Rsvdは各ページ属性の最上位ビットで、将
来の拡張のために予約されている。もちろんメモリ属性MA0、MA1、...
、MA7を3ビットより多くのビット数、またはそれより少ないビット数で表す
ことも可能である。図2の構造のいくつかの実施例では、メモリ属性は8つより
少なくてもよい。その場合、いくつかの属性はレジスタ60の複数のエントリに
含めることができる。あるいは、索引信号の一定の組み合わせがアサートされな
いことが予想できる。
レクタ88に提供する。物理メモリ属性信号は物理メモリ属性を表す。物理属性
レジスタ84はMTRRでもよく、物理メモリ属性信号はMTTRメモリ・タイ
プの信号でもよい。有効メモリ属性セレクタ88は導線82上でセレクタ52か
ら直線メモリ属性信号も受信する。直線メモリ属性信号は直線メモリ属性を表す
。有効メモリ属性セレクタ88は、メモリ管理回路90によって受信される有効
メモリ属性信号を導線92上に生成する処理の規則に従う。メモリ管理回路90
は、有効メモリ属性信号に応答して、導線94上でメモリ管理信号を供給する。
図示のように、メモリ管理回路90はプロセッサ14内に含まれるが、プロセッ
サの外部にあってもよい。メモリ管理信号は、例えば、下の表1に概要を述べる
メモリ動作を制御するのに使用される。
ntium(登録商標)Proプロセッサを含むIntel Corporat
ionのプロセッサおよびその上で実行される既存のソフトウェアとの互換性は
、例えばリセット時にレジスタ60に正しい値を書き込むことによって維持でき
る。これらの初期値は以前の既存のページ・テーブル・メモリ・タイプおよびM
TRRとの完全な後方互換性を提供するようにプログラミングできる。さらに、
デフォルト設定はソフトウェアがMAP50について定義された予約済みページ
・テーブル・ビットを使用するケースで互換性を提供する。レジスタ60内で、
MA0〜MA7の各々の3ビットは、例えば、本明細書に合わせて下記の表1に
示すように製造される、表2(Pentium(登録商標)Pro Famil
y Developers Manual、vol.3、表11−5pp.11
−14)プロセッサに示す、Pentium(登録商標)ProプロセッサMT
RRで使用されるのと同じ符号化を有するメモリ属性を指定することができる。
−であるという点である。本発明の一実施形態では、符号化‘111は変数MT
RR(VMTRRS)については未定義のままで、一般保護(GP)違反を生成
する書き込み継続を試みる。MAPに未定義メモリ・タイプ符号化を書き込もう
とすると、可変MTRRのようなGP違反が発生することがある。表1はまた本
発明の一実施形態によるMTRRメモリ属性およびその特性を示す。
号を使用する方法と、リセット後のレジスタ60の内容である。
る。UC−およびUCは表1に定義されたUC(アンキャッシャブル)の例であ
る。UC−は、PCD、PWT=10の場合に発生する。UCは、PCD、PW
T=11の場合に発生する。下記の表3に示すように、有効メモリ属性セレクタ
88で、物理属性レジスタ84からのWCはMAP50からのUC−より優勢で
ある。これと対照的に、有効メモリ属性セレクタ88で、MAP50からのUC
は物理属性レジスタ84からのWCより優勢である。
・4Mページ・フレームを記述するために利用できる。MAP索引ビットはCR
3レジスタ(物理アドレス拡張(PAE)がイネーブルの場合のページ・ディレ
クトリ・ポインタ・テーブル)内に定義されておらず、大容量のページを記述し
ていない場合にはページ・ディレクトリ内に定義されていない。これらの場合、
PCDおよびPWT索引信号のみを使用してMAP50内に索引付けするので、
OSはページ階層のメモリ属性を記述するのにレジスタ60の最初の4エントリ
のみしか使用できないように制限される。ページ階層の各レベルのMAP索引方
式の一例を図3に示す。MAP索引ビットがゼロ以外の値の場合、予約済みビッ
ト違反はディスエーブルされるが、その他のすべての予約済みビットについては
残っている。これは、モードA/Bの4Kページ、モードBの4MBページ、お
よびモードCの4K・2MBページのそれぞれについてもあてはまる。
いて、導線82に加えるべき有効メモリ属性信号を選択するためにマッピングを
適用する。マッピングの一例を下記の表3に示す。
)およびノンライトスルー(NW)フラグがあれば0に設定されていることを前
提とする。表3の実施形態では、有効メモリ属性は直線メモリ属性がWTで物理
メモリ属性がWPまたはWCの場合に未定義である。有効メモリ属性は直線メモ
リ属性がWPで物理メモリ属性がWCまたはWTの場合にも未定義である。ただ
し、別の実施形態では、有効メモリ属性はそのような場合にも定義できる。UC
_MTRRはMTRRから受け取ったUC属性を示し、データがキャッシュに入
れられていないので、プロセッサはキャッシュをスヌープする必要がない。これ
はパフォーマンスの理由から好ましい。UC_PAGEはページ・テーブルから
受け取ったUC属性を示し、データがページ・エイリアシングからキャッシュに
入れられた可能性があるので、プロセッサはキャッシュを検査する必要がある。
一般に、ノーメンクレチャー「XX_PAGE」はページ・テーブルがMTRR
より優勢である場合に属性XXがページ・テーブルから受け取ったものであるこ
とを示す。ノーメンクレチャー「XX_MTRR」はMTRRがページ・テーブ
ルより優勢である場合に属性XXがMTRRから受け取ったものであることを示
す。以下のコメントは表3およびMicrosoftのOSで動作するように設
計された本発明の特定の実施形態に適用できる。Windows NT4.0
service pack 3以前のMicrosoft OS(例えば、DO
S、Windows3.1、Windows95、初期のWindows NT
バージョン用)の場合、プログラムfastvid.exeなどのソフトウェア
は、OSがアンキャッシャブル・メモリにUC−符号化を使用している場合に、
OSに通知することなくMTRRのメモリ・タイプをUCからWCに変更できる
。その場合、WCはUCよりも優勢である。OS NT4.0 service
pack 3は、ページ・テーブル内でUC−ではなくUCを使用し、これは
MTRRのWCよりも優勢である。UC−およびUCは表1に関して前述してい
る。
したことで、ページ送りのイネーブルならびにPCDおよびPWT索引ビットの
設定にかかわらず、有効メモリ・タイプのUCが採用されることになった。MA
Pイネーブルのプロセッサの場合、この挙動は変更できる。ページ送りおよびM
TRRがディスエーブルされる場合、有効メモリ・タイプはUCである。MTR
Rがディスエーブルされ、ページ送りがイネーブルされる場合、ページ・テーブ
ル/MAPからの有効メモリ・タイプが使用できる。
意のものに従って実施できる。マイクロプロセッサ内には、もちろん図示されて
おらずまたは本明細書に記載されていない多数の構成要素が存在する。2つの図
示された構造の間に中間構造(バッファなどの)または信号が存在することもあ
る。一部の導線は図示のように連続せず、中間構造によって中断していることが
ある。図中のボックスの境界線は例示にすぎない。実際のデバイスはそのような
区画された境界線を含む必要はないであろう。図示の構成要素の相対的なサイズ
は実際の相対的なサイズを示すものではない。
れ、必ずしも直接の接続に限定されるわけではない。本明細書で、ある構成要素
が含まれる「ことがある」、「ことができる」、または「ことが好ましい」と述
べる場合、その特定の構成要素は含まれる必要がない。
はEAXレジスタ内に値1を有するCPUID命令を実行し、EDXレジスタの
戻り値のビット16を検査することでこの機能のサポートを判定することができ
る。MAPがサポートされている場合、OSはページ属性テーブルのプログラミ
ング用に指定されたモデル専用レジスタを使用し、またページ・テーブル内に以
前予約されていたMAP索引ビットを使用することができる。
イド・バッファ(TLB)の一貫性、例えば、プロセッサ・キャッシュとTLB
のフラッシュを含む演算の特定のシーケンスを維持するような形で行われること
を保証できる。
リ属性パレットは索引信号PCD、PWT、およびMAPの特定のステートに応
答して並列の導線上に単一ビットを生成する。例えば、8つの属性があるとする
と、8本の並列の導線があり、その1つだけが一度にアサートされる。有効メモ
リ属性セレクタは並列の導線を収容し、その上を流れる信号に適当に応答する。
、単一の物理ページを異なるメモリ・タイプの2つの異なる直線ページによって
マッピングすることが可能である。この方法は未定義の結果を招く場合があり、
したがって、推奨できない。特に、WCライトはプロセッサ・キャッシュを検査
する必要がないので、WPページがキャッシュ可能なページにエイリアシングさ
れないことが好ましい。
のMAPエントリ値を有することができる。
(PSE)または物理アドレス拡張(PAE)をイネーブルするOSは、4KB
のページ・テーブル・エントリ(PTE)についてMAP索引の使用を注意深く
精査しなければならない。ページ・テーブル・エントリのMAP索引ビット(ビ
ット7)はページ・サイズを表すので、OSはPDEとしても使用される4Kバ
イトのページ・テーブル・エントリ(PTE)についてMAPエントリMA0〜
3しか使用することができない。このメモリがPTEとして使用されている場合
にOSがMAPエントリMA4〜7にアクセスしようとすれば、このメモリがP
DEとしてアクセスされる場合にPSビットを誤って設定する可能性がある。
メモリ・タイプにしておきたい場合、デフォルトのMTRRメモリ・タイプをラ
イトバックに設定し、OSがページ・テーブルの使用によってのみ管理したい領
域をカバーするMTRRをディスエーブルし、またはすべてのMTRRをディス
エーブルすることができる。
で常にイネーブルにされ、ページ送りがイネーブルにされた場合はいつでも、ま
たすべてのページ送りモード(例えばPSE、PAE)でテーブルのルックアッ
プが常に行われる。
幅広く含むと解釈すべきである。
性信号は一度に1つの物理メモリ属性しか表さず、有効メモリ属性信号は一度に
1つの有効メモリ属性しか表さないことが好ましい。あるいは、1つまたは複数
の信号が一度に複数の属性を表すことも可能である。
の拡張の場合に特に価値がある。MAP内の各エントリは、このエントリがMT
RRに常に優先する、またはMTRRに常に優先されることを可能にする2つの
優先ビットを有する。エントリごとの2ビット優先符号化を表4に示す。
きる。表4および5の手法は必要ない。OSがMAP50を常に優先させたい場
合、OSはMTRRをディスエーブルすることができる。
ッサでシステム全体についてこれらを使用することができる。ただし、これはプ
ロセスあたり1回変更が可能である。一度にMAP全体を保存/復元する特別の
1対の命令も可能である。
ディレクトリ・ポインタ・テーブル(PDPT)用に定義でき、3つのビットを
使用してMAP0〜7を索引付けできる。いくつかの実施形態では、予約済みビ
ットがなくビット7が0に定義されている、モードBまたはモードCでの4Kペ
ージ・ディレクトリの場合を除いて、すべての場合にこれがあてはまる。したが
って、OSはこれらの2つのモードでページ・テーブルを記述する場合を除いて
、8つのMAPエントリをすべて使用してそのページ送り構造を記述することが
できる。
・メモリ16内に配置することができる。
が両方共利用可能にする柔軟で、プログラミング可能で、拡張可能な手段を提供
する。本発明はまた、ページ・テーブルとMTRRにそれぞれ機能をいくらか有
する方法ではなく、単一の機構を介してすべてのメモリ属性を利用可能にするこ
とで、OSの一貫したメモリ属性使用モデルを提供する。
明および図面のその他の多数の変形形態が可能であることを理解するであろう。
したがって、本発明の範囲を定義するのは本発明の任意の変更を含む首記の請求
の範囲である。
である。
ブロック図である。
す図である。
Claims (20)
- 【請求項1】 メモリ属性索引信号を受信し、メモリ属性索引信号に応答し
て直線メモリ属性信号を選択するメモリ属性パレットと、 直線メモリ属性信号を受信し、直線メモリ属性信号に応答して有効メモリ属性
信号を選択する有効メモリ属性セレクタと、 有効メモリ属性信号を受信し、有効メモリ属性信号に応答してメモリ管理信号
を提供するメモリ管理回路と を含むコンピュータ・システム。 - 【請求項2】 有効メモリ属性セレクタに物理属性信号を提供する物理属性
レジスタをさらに含み、有効メモリ属性セレクタが直線メモリ属性信号と物理属
性信号に応答して有効メモリ属性信号を選択する請求項1に記載のシステム。 - 【請求項3】 物理属性レジスタがMTRRを含む請求項1に記載のシステ
ム。 - 【請求項4】 メモリ属性索引信号がページ・テーブルのエントリから提供
される請求項1に記載のシステム。 - 【請求項5】 メモリ属性パレットが直線メモリ属性信号を記憶するパレッ
ト・レジスタを含む請求項1に記載のシステム。 - 【請求項6】 メモリ属性信号が記憶され、次いでパレット・レジスタに転
送される少なくとも1つの外部レジスタをさらに含み、プログラムとオペレーテ
ィング・システムが少なくとも1つの外部レジスタにアクセスできる請求項5に
記載のシステム。 - 【請求項7】 メイン・メモリからメモリ属性信号を読み出し、メモリ属性
信号をパレット・レジスタに書き込む回路をさらに含む請求項5に記載のシステ
ム。 - 【請求項8】 メモリ属性パレットが有効メモリ属性セレクタに接続された
セレクタを含み、パレット・レジスタとセレクタとの間に幅Nの導線が存在する
請求項5に記載のシステム。 - 【請求項9】 システムがメモリ属性パレットと有効メモリ属性セレクタと
を含むマイクロプロセッサを含む請求項1に記載のシステム。 - 【請求項10】 メモリ管理回路がマイクロプロセッサ内に含まれる請求項
1に記載のシステム。 - 【請求項11】 システムがパーソナル・コンピュータを含む請求項1に記
載のシステム。 - 【請求項12】 メモリ管理信号に応答するメモリ・コントローラをさらに
含む請求項1に記載のシステム。 - 【請求項13】 メモリ属性索引信号を受信し、メモリ属性索引信号に応答
して直線メモリ属性信号を選択するメモリ属性パレットと、 有効メモリ属性セレクタに物理属性信号を提供する物理属性レジスタと、 直線メモリ属性信号を受信し、直線メモリ属性信号および物理属性信号に応答
して有効メモリ属性信号を選択する有効メモリ属性セレクタと、 有効メモリ属性信号を受信し、有効メモリ属性信号に応答してメモリ管理信号
を提供するメモリ管理回路と を含むコンピュータ・システム。 - 【請求項14】 メモリ属性パレットが直線メモリ属性信号を記憶するパレ
ット・レジスタを含む請求項13に記載のシステム。 - 【請求項15】 メモリ属性信号が記憶され、次いでパレット・レジスタに
転送される少なくとも1つの外部レジスタをさらに含み、プログラムとオペレー
ティング・システムが少なくとも1つの外部レジスタにアクセスできる請求項1
4に記載のシステム。 - 【請求項16】 メイン・メモリからメモリ属性信号を読み出し、メモリ属
性信号をパレット・レジスタに書き込む回路をさらに含む請求項14に記載のシ
ステム。 - 【請求項17】 メモリ管理信号に応答するメモリ・コントローラをさらに
含む請求項13に記載のシステム。 - 【請求項18】 メモリ属性索引信号を受信し、物理メモリ索引信号に応答
して直線メモリ属性信号を選択するメモリ属性パレットと、 有効メモリ属性セレクタに物理属性信号を提供する物理属性レジスタと、 直線メモリ属性信号を受信し、直線メモリ属性信号および物理属性信号に応答
して有効メモリ属性信号を選択する有効メモリ属性セレクタと を含むコンピュータ・システム。 - 【請求項19】 メモリ属性パレットが直線メモリ属性信号を記憶するパレ
ット・レジスタを含み、システムが、メモリ属性信号が記憶され、次いでパレッ
ト・レジスタに転送される少なくとも1つの外部レジスタをさらに含み、プログ
ラムとオペレーティング・システムが少なくとも1つの外部レジスタにアクセス
できる請求項18に記載のシステム。 - 【請求項20】 メイン・メモリからメモリ属性信号を読み出し、メモリ属
性信号をパレット・レジスタに書き込む回路をさらに含む請求項19に記載のシ
ステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/914,578 | 1997-08-18 | ||
US08/914,578 US5946713A (en) | 1997-08-18 | 1997-08-18 | Memory attribute palette |
PCT/US1998/015054 WO1999009510A2 (en) | 1997-08-18 | 1998-07-21 | Memory attribute palette |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001516089A true JP2001516089A (ja) | 2001-09-25 |
JP2001516089A5 JP2001516089A5 (ja) | 2006-01-05 |
JP4312952B2 JP4312952B2 (ja) | 2009-08-12 |
Family
ID=25434537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000510102A Expired - Fee Related JP4312952B2 (ja) | 1997-08-18 | 1998-07-21 | メモリ属性パレット |
Country Status (11)
Country | Link |
---|---|
US (1) | US5946713A (ja) |
JP (1) | JP4312952B2 (ja) |
KR (1) | KR100358601B1 (ja) |
CN (1) | CN1149484C (ja) |
AU (1) | AU8577298A (ja) |
BR (1) | BR9811952B1 (ja) |
DE (1) | DE19882617B4 (ja) |
GB (1) | GB2343275B (ja) |
HK (1) | HK1027183A1 (ja) |
TW (1) | TW501010B (ja) |
WO (1) | WO1999009510A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010517179A (ja) * | 2007-01-24 | 2010-05-20 | クゥアルコム・インコーポレイテッド | プロセッサにおいてキャッシュポリシーを設定するための方法および装置 |
JP2012507080A (ja) * | 2008-10-28 | 2012-03-22 | インテル・コーポレーション | コンピュータシステムにおける割り込み通信技術 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6694418B2 (en) * | 2001-03-30 | 2004-02-17 | Intel Corporation | Memory hole modification and mixed technique arrangements for maximizing cacheable memory space |
US6681311B2 (en) * | 2001-07-18 | 2004-01-20 | Ip-First, Llc | Translation lookaside buffer that caches memory type information |
KR100633144B1 (ko) | 2004-11-09 | 2006-10-11 | 삼성전자주식회사 | 색 관리방법 및 이를 적용한 색 관리장치 |
JP4783163B2 (ja) * | 2006-01-19 | 2011-09-28 | Okiセミコンダクタ株式会社 | マイクロコントローラ |
US9331855B2 (en) | 2011-07-01 | 2016-05-03 | Intel Corporation | Apparatus, system, and method for providing attribute identity control associated with a processor |
US20130111181A1 (en) * | 2011-10-31 | 2013-05-02 | Lsi Corporation | Methods and apparatus for increasing device access performance in data processing systems |
US11875168B2 (en) | 2020-03-19 | 2024-01-16 | Oracle International Corporation | Optimizing execution of foreign method handles on a virtual machine |
US11513779B2 (en) | 2020-03-19 | 2022-11-29 | Oracle International Corporation | Modeling foreign functions using executable references |
US11543976B2 (en) * | 2020-04-01 | 2023-01-03 | Oracle International Corporation | Methods for reducing unsafe memory access when interacting with native libraries |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5590289A (en) * | 1993-11-12 | 1996-12-31 | Intel Corporation | Method and apparatus for initializing a computer system having central and distributed address decode memory bus resources |
US5668949A (en) * | 1993-11-12 | 1997-09-16 | Intel Corporation | System utilizing multiple address decode resources and decoder receiving address determines address corresponding to resource based on select and ready signals by that particular resource |
US5561814A (en) * | 1993-12-22 | 1996-10-01 | Intel Corporation | Methods and apparatus for determining memory operating characteristics for given memory locations via assigned address ranges |
US5819079A (en) * | 1995-09-11 | 1998-10-06 | Intel Corporation | Instruction fetch on demand for uncacheable memory which avoids memory mapped I/O side effects in a processor with speculative instruction fetch |
-
1997
- 1997-08-18 US US08/914,578 patent/US5946713A/en not_active Expired - Lifetime
-
1998
- 1998-07-21 CN CNB988103273A patent/CN1149484C/zh not_active Expired - Fee Related
- 1998-07-21 GB GB0003909A patent/GB2343275B/en not_active Expired - Fee Related
- 1998-07-21 DE DE19882617T patent/DE19882617B4/de not_active Expired - Fee Related
- 1998-07-21 JP JP2000510102A patent/JP4312952B2/ja not_active Expired - Fee Related
- 1998-07-21 BR BRPI9811952-4A patent/BR9811952B1/pt not_active IP Right Cessation
- 1998-07-21 WO PCT/US1998/015054 patent/WO1999009510A2/en active IP Right Grant
- 1998-07-21 AU AU85772/98A patent/AU8577298A/en not_active Abandoned
- 1998-07-21 KR KR1020007001591A patent/KR100358601B1/ko not_active IP Right Cessation
- 1998-07-29 TW TW087112447A patent/TW501010B/zh not_active IP Right Cessation
-
2000
- 2000-10-05 HK HK00106316A patent/HK1027183A1/xx not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010517179A (ja) * | 2007-01-24 | 2010-05-20 | クゥアルコム・インコーポレイテッド | プロセッサにおいてキャッシュポリシーを設定するための方法および装置 |
JP2012507080A (ja) * | 2008-10-28 | 2012-03-22 | インテル・コーポレーション | コンピュータシステムにおける割り込み通信技術 |
Also Published As
Publication number | Publication date |
---|---|
US5946713A (en) | 1999-08-31 |
CN1149484C (zh) | 2004-05-12 |
DE19882617B4 (de) | 2007-06-21 |
TW501010B (en) | 2002-09-01 |
KR100358601B1 (ko) | 2002-10-25 |
WO1999009510A2 (en) | 1999-02-25 |
JP4312952B2 (ja) | 2009-08-12 |
BR9811952A (pt) | 2000-08-22 |
GB2343275A (en) | 2000-05-03 |
GB0003909D0 (en) | 2000-04-05 |
BR9811952B1 (pt) | 2011-08-23 |
WO1999009510A3 (en) | 1999-05-14 |
AU8577298A (en) | 1999-03-08 |
CN1276892A (zh) | 2000-12-13 |
KR20010022983A (ko) | 2001-03-26 |
HK1027183A1 (en) | 2001-01-05 |
DE19882617T1 (de) | 2000-09-21 |
GB2343275B (en) | 2002-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9064330B2 (en) | Shared virtual memory between a host and discrete graphics device in a computing system | |
US6643759B2 (en) | Mechanism to extend computer memory protection schemes | |
US5276833A (en) | Data cache management system with test mode using index registers and CAS disable and posted write disable | |
US6604187B1 (en) | Providing global translations with address space numbers | |
US20090077320A1 (en) | Direct access of cache lock set data without backing memory | |
EP0851353A1 (en) | Memory management in a computer system | |
US6889312B1 (en) | Selective zero extension based on operand size | |
JP2001519566A (ja) | 仮想モードでのシステム管理モードサービスを実行する方法及び装置 | |
JP2003508850A (ja) | ローカルi/oバスに近接するブリッジでの入出力(i/o)アドレス変換 | |
JP2012532381A (ja) | 凝集された小さいページを用いて拡張されたページサイズ | |
JPS60221851A (ja) | メモリ・アクセス・コントローラを具えるデータ処理装置 | |
US6954828B2 (en) | Management of caches in a data processing apparatus | |
JP2000512406A (ja) | システム管理モード情報を他の情報と共にキャッシュに入れる方法および装置 | |
JP2001516089A (ja) | メモリ属性パレット | |
US6651156B1 (en) | Mechanism for extending properties of virtual memory pages by a TLB | |
US6973562B1 (en) | Establishing an operating mode in a processor | |
JP3886189B2 (ja) | バースト可でキャッシュ不可のメモリアクセスを支援するマイクロプロセッサ装置 | |
JPH0916461A (ja) | 仮想メモリ・システム内で効率的な共用メモリを提供するためのシステムおよび方法 | |
US6571330B1 (en) | Address size and operand size prefix overrides for default sizes defined by an operating mode of a processor | |
US5127096A (en) | Information processor operative both in direct mapping and in bank mapping, and the method of switching the mapping schemes | |
US20020073296A1 (en) | Method and apparatus for mapping address space of integrated programmable devices within host system memory | |
US6715063B1 (en) | Call gate expansion for 64 bit addressing | |
JPH07111691B2 (ja) | プロセッサ・キャッシュ・マクロのためのオンチップ・メモリ・マップ | |
US6581148B1 (en) | System and method for enabling advanced graphics port and use of write combining cache type by reserving and mapping system memory in BIOS | |
CA2016399C (en) | Microcomputer system employing address offset mechanism to increase the supported cache memory capacity |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050712 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050712 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090217 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090224 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090414 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090514 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120522 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130522 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |