JP2514292B2 - オペランドペ―ジメモリ及び命令ペ―ジメモリを有するコンピュ―タシステム - Google Patents

オペランドペ―ジメモリ及び命令ペ―ジメモリを有するコンピュ―タシステム

Info

Publication number
JP2514292B2
JP2514292B2 JP4063683A JP6368392A JP2514292B2 JP 2514292 B2 JP2514292 B2 JP 2514292B2 JP 4063683 A JP4063683 A JP 4063683A JP 6368392 A JP6368392 A JP 6368392A JP 2514292 B2 JP2514292 B2 JP 2514292B2
Authority
JP
Japan
Prior art keywords
address
memory
page
instruction
operand
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP4063683A
Other languages
English (en)
Other versions
JPH0594370A (ja
Inventor
ビー. ブロドナックス ティモスィー
ケイ. ブリス ブライアン
エイ. キング スティーヴン
エイ. リッカード デイル
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0594370A publication Critical patent/JPH0594370A/ja
Application granted granted Critical
Publication of JP2514292B2 publication Critical patent/JP2514292B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータのメモリア
ドレッシングに関し、特にコンピュータシステム内のペ
ージド(ページ付けされた)仮想メモリアドレッシング
方式に関する。
【0002】
【従来の技術】メモリコンピュータシステムにおいて、
命令セットは16等の固定数のメモリアドレスビットを
使用するが、必要な情報を記憶するためにより大きなメ
モリ領域がしばしば必要となる。その解決策は、仮想メ
モリを使用して、16個のアドレスビットをより大きい
メモリ領域にマップするものである。そのため、論理ア
ドレスはしばしばページ変換ランダムアクセスメモリ
(RAM)を介して物理アドレスにマップされる。例え
ば、16ビット論理アドレスは、ページ変換RAMを介
して11個の最上位物理アドレスビットに拡張される最
上位の4ビットフィールドと、物理アドレスの最下位の
12ビットとして直接用いられる12ビットページアド
レスフィールドから成る。従って、4個の最上位論理ア
ドレスビットは、ページと称される4k記憶領域に対応
する物理アドレスにアクセスする。この4k領域は、1
6ビットアドレス内の他の12個のビットによってアド
レス指定可能である。
【0003】ページアドレスは命令及びオペランドに対
して異なってマップされるために、変換論理が複雑であ
る。すなわち、2つのページ変換RAMが必要になり、
単一の命令ディスパッチ集積回路チップに適合しない。
結果として、それらのページ変換RAMはコンピュータ
システムのアドレス変換例外処理チップに配置され
る。どの命令ミックスでもアドレス変換が頻繁なため、
この配置の最大の懸念はパフォーマンスへの影響であ
る。変換RAMを2つの異なる集積回路チップに配置す
ることによって被る遅延を最小限にする必要がある。
【0004】
【発明が解決しようとする課題】従って、本発明の目的
は、変換論理と変換RAMの間の遅延を最小限にするよ
に構成された仮想アドレッシングメモリを提供するこ
とである。
【0005】本発明の目的は更に、ページアドレス境界
を越えたときのアドレス変換で被る単一サイクル遅延を
除いて、プロセッサパフォーマンスを劣化しないような
仮想アドレッシング方式を提供することである。
【0006】本発明の目的はまた更に、2つのアドレス
プロセッサの間メモリアドレスバス制御を共有するこ
とによって、変換されたアドレスを戻すためのサイクル
待ち時間を回避することである。
【0007】
【課題を解決するための手段と作用】本発明のこれらと
他の目的、特徴及び利点は、物理アドレス要求に対する
迅速な応答をもたらす、アドレスプロセッサ間の緊密な
結合によって達成される。2つの変換索引バッファ(T
LB)は、命令ページとオペランド(データ)ページに
対する最も最近アクセスされた物理アドレスを保持する
ため用いられる。物理アドレスは、第1のアドレスプロ
セッサからの要求に応じて第2のアドレスプロセッサ
生成される。物理アドレスビットを供給する第2のアド
レスプロセッサは、対応する変換索引バッファの更新及
びメモリアクセスでの使用のため、1サイクルの間変換
RAM出力を維持する。続くサイクルで、適切なTLB
を用いて第1プロセッサはメモリ動作のための完全なア
ドレスを供給する。本発明で用いられるTLBは論理ペ
ージアドレスを含む。このことはヒット/ミス(ヒット
とは、必要な論理ページが対応する物理変換結果と共に
TLBに既に存在するときである)決定のための比較処
理を可能にし、該処理は変換のタイミング処理に必須で
ある。各メモリアクセスごとに、要求された論理アドレ
スが当該命令タイプ又はオペランドタイプの前の論理ア
ドレスと整合するかどうかを確認するために比較器がチ
ェックされる。
【0008】本発明の構成(パーティショニング)は、
コンピュータシステムによりメモリバスで駆動される物
理アドレスのサイクル数の制御を第1プロセッサが継続
して行うことを可能にする。アービトレーションの競合
のため、要求に対するメモリの応答が不規則に変化する
ので、第1プロセッサによるサイクル数の制御が必要と
なる。第1プロセッサは、メモリバスを監視し、いつ要
求が受理されたかを決定する論理を含む。第2プロセッ
サは、ミスに続く1サイクルの間アドレスバスを駆動す
る。第1プロセッサは第2プロセッサにより変換された
値をTLBに記憶し、必要ならばその値を後続のサイク
ルで駆動する。この基本方式は、論理を 二重化する必要
性、及び第2プロセッサでのメモリ監視のための重要な
入力/出力ピンを専用することの必要性を緩和する。第
1プロセッサは、TLBでヒットが生じたことを検出し
たのと同じサイクルでアドレスバスを駆動する。第1プ
ロセッサは、メモリが第1プロセッサからの要求を受信
するまでアドレスバスを駆動し続ける。アドレスが整合
するとき、TLBが物理アドレスを供給して、変換サイ
クルが回避される。
【0009】
【実施例】一般的なコンピュータシステムが図1に示さ
れている。アドレスプロセッサ12は、主記憶装置10
から命令を読み出し、固定小数点プロセッサ18及び
動小数点プロッセッサ16のような実行素子又はアドレ
ス変換を行うアドレスプロセッサ14にコマンドをディ
スパッチする。AP1、実行素子に対するサービス要
求を命令バス(I−バス)に出力する。任意の汎用パー
ティション機能の更新は、図示されたプットアウェイ
(処分)バスを横切って行われる。
【0010】ページアドレスが命令及びオペランドに対
して異なってマップされるため、変換論理は複雑であ
る。変換RAMを2つの分離プロセッサに配置すること
によって被る遅延は、最小限にされねばならない。
【0011】アドレスプロセッサ12は図2に示されて
おり、記憶データは命令ファイル22及び記憶データレ
ジスタ24に進み、制御装置26に供給される。制御装
置26は実行素子コマンドを発する。プットアウェイデ
ータ及びアドレスは汎用レジスタ28に送られ、トラン
シーバ30、32を介してアドレス生成器34に送られ
る。制御装置26は、第1サイクルの間メモリデータか
らの命令/オペランドをアドレス生成器34へ送り出
す。論理アドレスバスはヒット/ミス検出ビットを含
み、オペランド又は命令データと共に、1ビットのパリ
ティチェック及び4ビットの論理ページアドレスを出力
する。
【0012】AP1とAP2の間の物理ページ転送は図
3に示されている。メモリアドレスバスが、オペランド
TLBと命令TLBに入力する。論理ページアドレスも
また、オペランドTLB40と命令TLB42に入力さ
れる。2つのTLBの出力は比較器44に入力され、
こでヒット(必要な論理ページが対応する物理変換結果
と共にTLBに既に存在している)かミスかを確かめる
論理テストを実行する。マルチプレクサ52は、アドレ
スプロセッサ2(AP2)のオペランドページRAM
8及び命令ページRAM50と対にされる。もしミスが
あれば、AP2は既にサイクルされているので、オペラ
ンドページRAM48及び命令ページRAM50は、マ
ルチプレクサ52に接続されたトランシーバ54(イン
バータ58により付勢される)を介してメモリバス上
必要な命令又はオペランド情報を出力し、それを適切な
TLB又はメモリアドレスバスにロードする。もしヒッ
トがあったならば、トランシーバ56が付勢されて、T
LB40又は42からマルチプレクサ46を介してメモ
リアドレスバス上に正しいオペランドアドレス又は命令
アドレスを出力する。
【0013】命令TLBの構成の詳細が図4に示されて
いる。仮想アドレス生成論理60は、論理ページアドレ
スを比較器62に出力して、そこでヒットかミスかを決
定する。命令論理64は、命令取出しの場合にアドレス
変換の第1サイクルにおいて、その第1サイクル出力を
付勢する。このとき比較器62でミスが検出されている
と、仮想論理アドレス生成論理60からの論理ページア
ドレスをロードするために、論理ページアドレス部分が
使用可能にされる。第2サイクルにおいて、命令アドレ
スを変換するとき前の第1サイクルの間でミスがあった
ならば、物理ページアドレス部分が使用可能になり、
P2からの新たな物理ページアドレスの入力を可能にす
る。
【0014】アドレス変換テーブルにおけるミスのタイ
ミング図が図5に示されている。ミスの第1サイクルに
おいて、AP2は論理ページアドレスを物理ページアド
レスに変換する。第2サイクル中に、AP2がアドレス
バスのページ部分を駆動する、すなわち新たな物理ペー
ジアドレスをアドレスバスへ出力する。この新たな物理
ページアドレスは、第2サイクルにおいて、AP1のT
LBにラッチされる( 図4参照)。ヒットがハイに戻
るとAP2は使用禁止となり、付加のメモリサイクルが
必要であれば(例えばメモリの応答が遅れたため)、同
じページアドレスがTLBから供給される
【0015】図6に示されるように、ページヒットがハ
イならば、AP2はサイクルを通して使用禁止となり、
第2サイクルの開始時には駆動ページアドレスがTLB
から供給されている。従ってミスが生じたときの遅延は
1クロックサイクルであり、高速コンピュータシステム
にとって許容可能である。
【0016】
【発明の効果】2つの独立した回路チップに配置された
変換論理と変換RAMの間の遅延を最小にすると共にパ
フォーマンスを最大にする、コンピュータシステムの仮
想アドレッシング方式が示されてきた。プロセッサのパ
フォーマンスは、4kアドレスページ境界を横切るとき
アドレス変換で被る単一サイクル遅延を除いて影響さ
れない。また、変換されたアドレスを戻すためのサイク
ル待ち時間は、AP1とAP2間メモリアドレスバス
制御を共有することによって回避され、AP1とAP2
は共にバスを駆動することが可能になる。
【図面の簡単な説明】
【図1】2つのモジュールを横切って区分されるアドレ
スプロセッシングと、一般的コンピュータシステムのブ
ロック図である。
【図2】アドレスプロセッサの略式図である。
【図3】2つのアドレスプロセッサの間のインタフェー
スを示すアドレスプロセッサの一部の詳細図である。
【図4】変換索引バッファの詳細図である。
【図5】論理ページミスのクロックタイミングシーケン
スを示す。
【図6】論理ページヒットのタイミング図である。
【符号の説明】
40 オペランドTLB 42 命令TLB 44 比較器 54、56 トランシーバ 48 オペランドページRAM 50 命令ページRAM 46、52 マルチプレクサ 58 インバータ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ブライアン ケイ. ブリス アメリカ合衆国22193、バージニア州ウ ッドブリッジ、ダービーデイル アヴェ ニュー 14754 (72)発明者 スティーヴン エイ. キング アメリカ合衆国22071、バージニア州ハ ーンドン、ライム ベイ ドライヴ 12919 (72)発明者 デイル エイ. リッカード アメリカ合衆国22111、バージニア州マ ナッサス、モーニングサイド ドライヴ 8106 (56)参考文献 特開 昭60−168251(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 オペランドページメモリ及び命令ページ
    メモリを有するコンピュータシステムであって、最も最近アクセスされたオペランドページの物理アドレ
    スを記憶するオペランド変換索引バッファ、及び最も最
    近アクセスされた命令ページの物理アドレスを記憶する
    命令変換索引バッファを含む第1の アドレス処理ユニッ
    トと、アドレス変換のためのオペランドページメモリ及び命令
    ページメモリを含む第2のアドレス処理ユニットと 、 論理アドレスを前記第1のアドレス処理ユニット及び前
    記第2のアドレス処理ユニットへ供給する手段と、第1サイクルにおいて前記 論理アドレスが最も最近アク
    セスされた物理アドレスのうちの1つに関連しているか
    どうかを調べ、もし関連していれば、前記オペランド索
    引バッファ及び前記命令索引バッファのうちの対応する
    バッファからメモリアドレスバスへの関連する物理アド
    レスの出力を開始し、もし関連していなければ、前記オ
    ペランドページメモリ及び前記命令ページメモリのうち
    の対応するメモリから前記メモリアドレスバスへの関連
    する物理アドレスの出力を第2サイクルで開始する手段
    と、 を含む、コンピュータシステム。
JP4063683A 1991-04-25 1992-03-19 オペランドペ―ジメモリ及び命令ペ―ジメモリを有するコンピュ―タシステム Expired - Lifetime JP2514292B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US69162291A 1991-04-25 1991-04-25
US691622 1991-04-25

Publications (2)

Publication Number Publication Date
JPH0594370A JPH0594370A (ja) 1993-04-16
JP2514292B2 true JP2514292B2 (ja) 1996-07-10

Family

ID=24777283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4063683A Expired - Lifetime JP2514292B2 (ja) 1991-04-25 1992-03-19 オペランドペ―ジメモリ及び命令ペ―ジメモリを有するコンピュ―タシステム

Country Status (2)

Country Link
US (1) US5471599A (ja)
JP (1) JP2514292B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819067A (en) * 1996-02-23 1998-10-06 Advanced Micro Devices, Inc. Computer system configured to translate a computer program into a second computer program prior to executing the computer program
US6986052B1 (en) 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US10120814B2 (en) * 2016-04-01 2018-11-06 Intel Corporation Apparatus and method for lazy translation lookaside buffer (TLB) coherence
US10067870B2 (en) 2016-04-01 2018-09-04 Intel Corporation Apparatus and method for low-overhead synchronous page table updates
CN112749397A (zh) 2019-10-29 2021-05-04 阿里巴巴集团控股有限公司 一种系统和方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5687282A (en) * 1979-12-14 1981-07-15 Nec Corp Data processor
JPS60168251A (ja) * 1984-02-13 1985-08-31 Fujitsu Ltd アドレス変換制御装置
US4695950A (en) * 1984-09-17 1987-09-22 International Business Machines Corporation Fast two-level dynamic address translation method and means
JPS62279443A (ja) * 1986-05-29 1987-12-04 Toshiba Corp アドレス変換装置
JPS63223935A (ja) * 1987-03-13 1988-09-19 Hitachi Ltd 処理装置
JPH01154261A (ja) * 1987-12-11 1989-06-16 Toshiba Corp 情報処理装置
US4980816A (en) * 1987-12-18 1990-12-25 Nec Corporation Translation look-aside buffer control system with multiple prioritized buffers
JPH0697441B2 (ja) * 1987-12-18 1994-11-30 日本電気株式会社 アドレス変換バッファ制御システム
JPH01177145A (ja) * 1988-01-06 1989-07-13 Nec Corp 情報処理装置
JPH01226056A (ja) * 1988-03-04 1989-09-08 Nec Corp アドレス変換回路
US5222223A (en) * 1989-02-03 1993-06-22 Digital Equipment Corporation Method and apparatus for ordering and queueing multiple memory requests
JPH0285943A (ja) * 1989-07-14 1990-03-27 Nec Corp データ処理装置
US5148538A (en) * 1989-10-20 1992-09-15 International Business Machines Corporation Translation look ahead based cache access
US5307477A (en) * 1989-12-01 1994-04-26 Mips Computer Systems, Inc. Two-level cache memory system
JPH03257643A (ja) * 1990-03-08 1991-11-18 Nec Corp 情報処理装置

Also Published As

Publication number Publication date
US5471599A (en) 1995-11-28
JPH0594370A (ja) 1993-04-16

Similar Documents

Publication Publication Date Title
US4525778A (en) Computer memory control
US5586283A (en) Method and apparatus for the reduction of tablewalk latencies in a translation look aside buffer
JP2619859B2 (ja) 自動更新する単純化キャッシュ
US4785398A (en) Virtual cache system using page level number generating CAM to access other memories for processing requests relating to a page
US4724518A (en) Odd/even storage in cache memory
US5014195A (en) Configurable set associative cache with decoded data element enable lines
JP3666689B2 (ja) 仮想アドレス変換方法
EP0258559A2 (en) Cache memory coherency control provided with a read in progress indicating memory
JPS6338794B2 (ja)
EP0407119A2 (en) Apparatus and method for reading, writing and refreshing memory with direct virtual or physical access
JPH08263424A (ja) コンピュータ装置
JPH04320553A (ja) アドレス変換機構
JPH02189659A (ja) 仮想記憶動的アドレス変換システム
JPH0713908A (ja) 多重化バスを有する情報処理システムでバック・ツー・バック・データ転送を提供する方法および装置
JPS61117637A (ja) 動的アドレス変換装置
US4583162A (en) Look ahead memory interface
JPH0362144A (ja) 情報処理システムのメモリアクセスを速くする方法及びこの方法を実施するためのシステム
JPH0260012B2 (ja)
EP0493960A2 (en) A computer system employing fast buffer copying
JP2514292B2 (ja) オペランドペ―ジメモリ及び命令ペ―ジメモリを有するコンピュ―タシステム
US7743184B2 (en) Coherent access register data transfer device and methods thereof
JPH0371355A (ja) キヤツシユ検索装置および検索方法
JPH0529946B2 (ja)
JPH11328017A (ja) 偶数/奇数キャッシュ・ディレクトリ方法及び装置
KR960007833B1 (ko) 고속 페이지 모드 선택을 위한 방법 및 장치