JPH0594370A - コンピユータメモリシステム及び仮想メモリアドレツシング区分方法 - Google Patents

コンピユータメモリシステム及び仮想メモリアドレツシング区分方法

Info

Publication number
JPH0594370A
JPH0594370A JP4063683A JP6368392A JPH0594370A JP H0594370 A JPH0594370 A JP H0594370A JP 4063683 A JP4063683 A JP 4063683A JP 6368392 A JP6368392 A JP 6368392A JP H0594370 A JPH0594370 A JP H0594370A
Authority
JP
Japan
Prior art keywords
address
memory
page
instruction
ram
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
Application number
JP4063683A
Other languages
English (en)
Other versions
JP2514292B2 (ja
Inventor
Timothy B Brodnax
ビー. ブロドナツクス テイモスイー
Bryan K Bullis
ケイ. ブリス ブライアン
Steven A King
エイ. キング ステイーヴン
Dale A Rickard
エイ. リツカード デイル
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

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)

Abstract

(57)【要約】 【目的】 変換論理と変換RAMの間の遅延を最小限に
するような仮想アドレッシングメモリの区分概要を提供
する。 【構成】 メモリアドレスバスと論理ページアドレス
が、オペランドTLB40と命令TLB42に入力され
る。TLBの出力が比較器44に入力され、ヒット又は
ミスがあるか否かをテストする。ミスがあれば、オペラ
ンドページRAM48と命令ページRAM50はトラン
シーバ54に必要な命令又はオペランドを出力し、適切
なTLB又はメモリアドレスバスにロードする。ヒット
があれば、トランシーバ56を介してメモリアドレスバ
ス上に正確なオペランド又は命令アドレスを出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】開示される本発明は概してコンピ
ュータのメモリアドレッシングに関し、特にコンピュー
タシステム内のページド(ページ付けされた)仮想メモ
リアドレッシング概要に関する。
【0002】
【従来の技術】メモリコンピュータシステムにおいて、
命令集合は16等のメモリアドレスのビットの固定数を
要するが、より大きなメモリ領域が必要な情報を記憶す
るためにしばしば必要となる。その解法は仮想メモリ、
即ち、より大きいメモリ領域にマップされる16アドレ
スビット、の使用である。仮想メモリを行うため、論理
アドレスはしばしばページ変換ランダムアクセスメモリ
(RAM)を介して物理アドレスにマップされる。例え
ば、16ビット論理アドレスは、ページ変換RAMを介
して最重要な11個の物理アドレスビットに拡張される
最重要の4ビットフィールドと、物理アドレスの最も重
要でない12個のビットとして直接用いられる12ビッ
トページアドレスフィールドから成る。従って、4個の
最重要の論理アドレスビットは、ページと称される4k
記憶領域に対応する物理アドレスにアクセスする。この
4k領域は、16ビットアドレス内の他の12個のビッ
トによってアドレス指定可能である。
【0003】ページアドレスは命令及びオペランドに対
して異なってマップされるために、変換論理が複雑であ
る。これは2ページ変換RAMを意味し、単一命令タス
ク指名集積回路チップに適合しない。結果として、ペー
ジアドレスはコンピュータシステムのアドレス変換と例
外処理チップに配置される。任意の所定の平均命令実行
時間内においてアドレス変換が頻繁なため、この区分の
最大の懸念はパフォーマンスへの影響である。変換RA
Mを2つの異なる集積回路チップに配置することによっ
て被る遅延を最小限にする必要がある。
【0004】
【発明が解決しようとする課題】従って、本発明の目的
は、変換論理と変換RAMの間の遅延を最小限にするよ
うな仮想アドレッシングメモリの区分概要を提供するこ
とである。
【0005】本発明の目的は更に、ページアドレス領域
を横切るときにアドレス変換で被る単一サイクル遅延を
除いて、プロセッサパフォーマンスを劣化しないような
仮想アドレッシング概要を提供することである。
【0006】本発明の目的はまた更に、2つのアドレス
プロセッサの間のメモリアドレスバス制御を共有するこ
とによって、変換されたアドレスが戻るためのサイクル
待ち時間を回避することである。
【0007】
【課題を解決するための手段と作用】本発明のこれらと
他の目的、特徴及び利点は、物理アドレス要求に対する
迅速な応答となるアドレスプロセッサ間の緊密な結合に
よって達成される。2つの変換索引バッファ(TLB)
は、命令ページとオペランド(データ)ページのために
最新にアクセスされた物理アドレスを保持するため用い
られる。物理アドレスは、第1のアドレスプロセッサか
らの要求に応じて第2のアドレスプロセッサに生成され
る。物理アドレスビットは、対応する変換索引バッファ
とメモリアクセスの使用を更新するため、単一サイクル
で変換RAM出力を有する第2のアドレスプロセッサに
よって発信される。続くサイクルで、適切なTLBを用
いる第1プロセッサはメモリ操作に完全なアドレスを供
給する。本発明にて用いられたTLBは論理ページアド
レスを含む。これは、変換タイミングに必要なヒット/
ミス(ヒットとは、必要な論理ページが対応する物理変
換と共にTLBに既に存在するときである)決定の比較
を可能にする。各メモリアクセスごとに、比較器は要求
された論理アドレスが、前のタイプの命令又はオペラン
ドの論理アドレスと整合するかどうかを確かめる。
【0008】区分は、第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に送ってコマンド素
子実行を発する。プットアウェイデータ及びアドレスは
汎用レジスタ28に送られ、トランシーバ30、32を
介してアドレスジェネレータ34に送られる。制御装置
は、記憶データから第1サイクル中、アドレスジェネレ
ータ34に命令/オペランドを送り出す。論理アドレス
バスは、論理ページアドレスが4ビットと1ビットパリ
ティ検査から成ると同様に、ヒット/ミス検出ビットを
含みオペランド又は命令データを出す。
【0012】AP1とAP2の間の物理ページ転送は図
3に示されている。メモリアドレスバスが、オペランド
TLBと命令TLBに入力する。論理ページアドレスも
また、オペランドTLB40と命令TLB42に入力さ
れる。2つのTLBの出力は比較器44に入力され、そ
こでヒット又はミス、即ち、ヒットとは必要な論理ペー
ジが対応する物理変換と共にTLBに既に存在するとき
である、があるか否かを確かめる論理テストを実行す
る。マルチプレクサ52は、アドレスプロセッサ2(A
P2)のオペランドページRAMと命令ページRAMを
一対にする。もしミスがあればAP2は既に循環されて
いるので、オペランドページRAM48と命令ページR
AM50は、マルチプレクサ52を介してメモリバス上
のトランシーバ54(インバータ58により使用可能)
に必要な命令又はオペランド情報を出力可能にし、適切
なTLB又はメモリアドレスバスにロードする。もしヒ
ットがあったならば、マルチプレクサ46は直ちに使用
可能となり、トランシーバ56を介してメモリアドレス
バス上に正確なオペランド又は命令アドレスを出力す
る。
【0013】命令TLB作成の詳細図が図4に示されて
いる。仮想アドレス生成論理60は、論理ページアドレ
スを比較器62に出力して、ヒット又はミスがあるか否
かを決定する。命令論理64は、第1サイクルにおい
て、コンピュータの命令取出し/オペランド取出しを論
理ページと物理ページアドレスに出力する。第2サイク
ルにおいて、命令アドレスを変換するとき前の第1サイ
クルの中にミスがあったならば、命令TLBは使用可能
になり、新たな論理ページ/物理アドレスの入力を可能
にする。
【0014】アドレス変換テーブルにおけるミスのタイ
ミング図が図5に示されている。ミスの第1サイクルに
おいて、AP2はページアドレスを物理アドレスに変換
する。第2サイクル中に、AP2がアドレスバスのペー
ジ部分を駆動する。ページミスの間に、新たな物理アド
レスがAP2から入力されて、新たなページアドレスに
よりTLBにラッチされる。ヒット回線がハイに戻ると
AP2は使用禁止となり、付加のメモリサイクルが必要
であれば駆動ページアドレスがTLBより生じる。
【0015】図6に示されるように、ページヒットがハ
イならば、AP2はサイクルを通して第2サイクルの開
始の間使用禁止となり、駆動ページアドレスがTLBよ
り生じる。従ってミスのコストは1クロックサイクルで
あり、高速コンピュータシステムにとって許容可能であ
る。
【0016】
【発明の効果】2つの個々の回路チップに配置された、
変換論理と変換RAMの間のパフォーマンスを最大限に
すると共に遅延を最小限にするコンピュータシステムの
仮想アドレッシングの概要が示されてきた。プロセッサ
のパフォーマンスは、4kアドレスページ領域を横切る
ときにアドレス変換で被る単一サイクル遅延を除いて影
響されない。また、変換されたアドレスが戻るためのサ
イクル待ち時間は、AP1とAP2間のメモリアドレス
バス制御を共有することによって回避され、AP1とA
P2は共にバスを駆動することが可能になる。
【図面の簡単な説明】
【図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

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 2つの分離したモジュールにページング
    アドレスRAMの区分をしたコンピュータメモリシステ
    ムであって、 命令及びオペランドページのために最新にアクセスされ
    た物理アドレスを保持するための変換索引バッファと、 メモリ記憶に完全なアドレスを提供するため、適切な変
    換索引バッファを用いるサイクリング手段と、 要求された論理アドレスが前の論理アドレスと整合する
    かどうかを検査して、整合するならばメモリアドレスバ
    ス上にその論理アドレスを入力し、整合しなければ1ク
    ロックサイクル内で対応するページアドレスRAMから
    メモリアドレス上に適切なアドレスを入力する比較器手
    段と、 を含むコンピュータメモリシステム。
  2. 【請求項2】 2つのアドレスプロセッサに仮想メモリ
    アドレッシングを区分するための方法であって、 索引バッファの変換を最新にアクセスされた物理アドレ
    スと比較する工程と、 各対応する整合ごとにメモリバス上に物理アドレスを入
    力する工程と、 整合が発見されない場合には、対応するアドレスページ
    RAMに問い合わせる工程と、 1クロックサイクル内で、対応するページRAMから変
    換索引バッファに正確なアドレスを順次出力する工程
    と、 を含む仮想メモリアドレッシング区分方法。
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 true JPH0594370A (ja) 1993-04-16
JP2514292B2 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 阿里巴巴集团控股有限公司 一种系统和方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60168251A (ja) * 1984-02-13 1985-08-31 Fujitsu Ltd アドレス変換制御装置
JPS62279443A (ja) * 1986-05-29 1987-12-04 Toshiba Corp アドレス変換装置
JPS63223935A (ja) * 1987-03-13 1988-09-19 Hitachi Ltd 処理装置
JPH01177145A (ja) * 1988-01-06 1989-07-13 Nec Corp 情報処理装置
JPH01226056A (ja) * 1988-03-04 1989-09-08 Nec Corp アドレス変換回路
JPH01250156A (ja) * 1987-12-18 1989-10-05 Nec Corp アドレス変換バッファ制御システム
JPH0285943A (ja) * 1989-07-14 1990-03-27 Nec Corp データ処理装置
JPH03257643A (ja) * 1990-03-08 1991-11-18 Nec Corp 情報処理装置

Family Cites Families (7)

* 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
US4695950A (en) * 1984-09-17 1987-09-22 International Business Machines Corporation Fast two-level dynamic address translation method and means
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
US5222223A (en) * 1989-02-03 1993-06-22 Digital Equipment Corporation Method and apparatus for ordering and queueing multiple memory requests
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60168251A (ja) * 1984-02-13 1985-08-31 Fujitsu Ltd アドレス変換制御装置
JPS62279443A (ja) * 1986-05-29 1987-12-04 Toshiba Corp アドレス変換装置
JPS63223935A (ja) * 1987-03-13 1988-09-19 Hitachi Ltd 処理装置
JPH01250156A (ja) * 1987-12-18 1989-10-05 Nec Corp アドレス変換バッファ制御システム
JPH01177145A (ja) * 1988-01-06 1989-07-13 Nec Corp 情報処理装置
JPH01226056A (ja) * 1988-03-04 1989-09-08 Nec Corp アドレス変換回路
JPH0285943A (ja) * 1989-07-14 1990-03-27 Nec Corp データ処理装置
JPH03257643A (ja) * 1990-03-08 1991-11-18 Nec Corp 情報処理装置

Also Published As

Publication number Publication date
JP2514292B2 (ja) 1996-07-10
US5471599A (en) 1995-11-28

Similar Documents

Publication Publication Date Title
EP0175091B1 (en) Fast two-level dynamic address translation method and means
US4525778A (en) Computer memory control
EP0232526B1 (en) Paged virtual cache system
US5475827A (en) Dynamic look-aside table for multiple size pages
US5586283A (en) Method and apparatus for the reduction of tablewalk latencies in a translation look aside buffer
JP3666689B2 (ja) 仮想アドレス変換方法
US5179674A (en) Method and apparatus for predicting valid performance of virtual-address to physical-address translations
US4378591A (en) Memory management unit for developing multiple physical addresses in parallel for use in a cache memory
US4424561A (en) Odd/even bank structure for a cache memory
JPH02189659A (ja) 仮想記憶動的アドレス変換システム
US4445172A (en) Data steering logic for the output of a cache memory having an odd/even bank structure
JPH04232551A (ja) 多重仮想アドレス変換方法及び装置
US5226170A (en) Interface between processor and special instruction processor in digital data processing system
JPS62164148A (ja) デ−タ処理システム
EP0723682B1 (en) Virtual address translation hardware assist circuit and method
JPH0371355A (ja) キヤツシユ検索装置および検索方法
JPH0594370A (ja) コンピユータメモリシステム及び仮想メモリアドレツシング区分方法
JP2000339221A (ja) 変換装置のエントリを無効化するシステム及び方法
US6134699A (en) Method and apparatus for detecting virtual address parity error for a translation lookaside buffer
US5276892A (en) Destination control logic for arithmetic and logic unit for digital data processor
EP0395835A2 (en) Improved cache accessing method and apparatus
JPH07120316B2 (ja) セグメント記述子装置
JPS6132703B2 (ja)
US6226731B1 (en) Method and system for accessing a cache memory within a data-processing system utilizing a pre-calculated comparison array
EP0302926B1 (en) Control signal generation circuit for arithmetic and logic unit for digital processor