[go: up one dir, main page]

JPS6329297B2 - - Google Patents

Info

Publication number
JPS6329297B2
JPS6329297B2 JP55030353A JP3035380A JPS6329297B2 JP S6329297 B2 JPS6329297 B2 JP S6329297B2 JP 55030353 A JP55030353 A JP 55030353A JP 3035380 A JP3035380 A JP 3035380A JP S6329297 B2 JPS6329297 B2 JP S6329297B2
Authority
JP
Japan
Prior art keywords
memory
address
processor
cache memory
translation mechanism
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
Application number
JP55030353A
Other languages
English (en)
Other versions
JPS56127261A (en
Inventor
Tadaaki Bando
Yasushi Fukunaga
Tetsuya Kawakami
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.)
Hitachi Ltd
Hitachi Industry and Control Solutions Co Ltd
Original Assignee
Hitachi Engineering Co Ltd
Hitachi Ltd
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 Hitachi Engineering Co Ltd, Hitachi Ltd filed Critical Hitachi Engineering Co Ltd
Priority to JP3035380A priority Critical patent/JPS56127261A/ja
Publication of JPS56127261A publication Critical patent/JPS56127261A/ja
Publication of JPS6329297B2 publication Critical patent/JPS6329297B2/ja
Granted 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は、複数のプロセツサが主記憶装置を共
有するマルチプロセツサシステムに関するもので
ある。
1つの主記憶装置を複数のプロセツサが共有す
る場合、一般に各プロセツサは高速バツフアメモ
リ(以下キヤツシユメモリと称す)を有し、使用
頻度の高いプログラム或いはデータは、(以下単
にデータと称す)このキヤツシユメモリに記憶さ
れ、各プロセツサは、主記憶装置をアクセスする
ことなく、このキヤツシユメモリから必要なデー
タを高速に読み出すようにしている。
また、1つの主記憶装置を複数のプロセツサが
共有するものであるから、主記憶装置のメモリ容
量としては、非常に大きなものが要求され、この
1つの対策としてバーチヤル、メモリの概念が採
用されている。
この場合、各プロセツサは、仮想的なアドレス
空間を有し(論理アドレス)、主記憶装置をメモ
リアクセスする場合は、論理アドレスを物理アド
レスに変換する必要があり、アドレス変換機構が
採用される。
このような、キヤツシユメモリおよびアドレス
変換機構と、主記憶装置、プロセツサの接続関係
は、従来、第1図のようになつていた。
第1図において1は主記憶装置(以下メインメ
モリと称す)、2−1,2−2はキヤツシユメモ
リ、3−1,3−2はアドレス変換機構、4−
1,4−2はプロセツサ、5は共通バス、6は入
出力プロセツサである。
すなわち、従来は、各プロセツサに、キヤツシ
ユメモリと共にアドレス変換機構が用意されてお
り、プロセツサ側から見て、アドレス変換機構、
キヤツシユメモリ、メインメモリの順序で並んで
いる。
このような従来方式の問題点は次のようなもの
である。第1には、実効的なメモリアクセス時間
が長くなることである。この理由は、プロセツサ
からキヤツシユメモリをアクセスする場合に必ら
ずアドレス変換機構を通らなければならぬという
点で、プロセツサからの論理アドレスを、アドレ
ス変換機構により、物理アドレスに変換してから
キヤツシユメモリにアクセスすることになるため
である。
第2の問題点は、アドレス変換機構が全プロセ
ツサに必要なため、プロセツサの数が増えた場
合、それにつれてハードウエア物量が大きくなる
ばかりでなく、アドレス変換機構のずれを修正し
なければならず、これが複雑となつていることで
ある。アドレス変換機構のずれの修正は、あるプ
ロセツサが、ページをスワツプした時に、ページ
テーブル、アドレス変換機構のエントリーを更新
するが、当該プロセツサのみでなく、他のプロセ
ツサもその旨の連絡をして、該当部分をクリヤし
なければならない。これは、一般にTLB Purge
(Translation Lookaside Buffer Purge)と称
され、マルチプロセツサを構成する場合のひとつ
の重要なポイントとなつている。
第3の問題点は、一般のプロセツサは、メモリ
をアクセスする場合には、論理アドレスを用いる
が、入出力プロセツサは、アドレス変換機構を持
たないために、物理アドレスでアクセスすること
から生ずるもので、両者でアドレスの受け渡しを
する際に変換が必要となるためにオーバーヘツド
が増加することである。
本発明は上記した従来の問題点に鑑み発明され
たもので、その目的とするところは、ハード量を
削減した上で、実効メモリアクセス時間の短縮が
はかれるこの種マルチプロセツサシステムを提供
するにある。
本発明の特徴は、各プロセツサに固有のキヤツ
シユメモリと、全体で共通に使われるアドレス変
換機構をひとつだけ用意し、プロセツサ側から見
て、キヤツシユメモリ、アドレス変換機構、メモ
リの順で並ぶように接続することである。このよ
うな構成にすることによつて、プロセツサに近い
所にキヤツシユメモリがあるために高速となり、
各プロセツサにアドレス変換機構を設ける必要が
ないためにハード量の削減が可能となる。
第2図に、本発明の原理構成図を示す。プロセ
ツサ4−1,4−2はそれぞれ、固有のキヤツシ
ユメモリ2−1,2−2を持ち、これがバス5に
接続されている。メインメモリ1にはアドレス変
換機構3が接続されている。このアドレス変換機
構3は、複数のプロセツサ4−1,4−2、およ
び入出力プロセツサ6から共通に使用される。こ
のような構成にした場合、プロセツサ4−1,4
−2とキヤツシユメモリ2−1,2−2が近接し
て接続されているために高速のアクセスが可能で
ある。またアドレス変換機構は、全プロセツサに
共通にひとつだけ設ければ良いために、低コスト
化を図ることが可能である。さらに、全プロセツ
サは論理アドレスで、メモリアクセスを行うこと
が可能となるために、アドレスの管理が容易とな
る。ここで、アドレス変換機構3の負荷が大きく
なり、システムのボトルネツクになるように見え
るが、アドレス変換機構は、高速ICメモリで作
ることも可能であり、心配するようなことはな
い。また、従来の構成法では必要であつた他プロ
セツサのTLB Purgeは、アドレス変換機構がひ
とつになつたために不要となる。また従来の方法
では入出力プロセツサ6が入出力転送を行う場
合、論理アドレスを物理アドレスに変換しなけれ
ばならなかつたが、本発明では、全空間が論理ア
ドレスで管理されるため不要となる。
このように、多くの利点を有しているが、ひと
つだけ、制約事項がある。これは第3図に示すよ
うに、異なる論理アドレスで、同一の物理空間を
アクセスする場合には、本方式の適用ができない
ことである。マルチプロセツサシステムにおい
て、メモリに書き込む際に、該当ブロツクが他プ
ロセツサのキヤツシユメモリにある場合には、そ
の内容を無効化しなければならない。これはキヤ
ツシユの無効化と呼ばれる良く知られた問題であ
るが、これは次のようにして対処するのが一般的
である。即ち、他のプロセツサのメモリ書き込み
アドレスを監視しておき、該アドレスに対応する
ブロツクがキヤツシユメモリにある場合には、キ
ヤツシユの無効化を行うわけである。ところが、
本発明で、第3図のようなメモリ使用が、なされ
た場合には、論理アドレスは一致しないために、
無効化を行うことができない。
しかしながら、このように、異なる論理アドレ
スで、同一物理空間を指定することは、メモリ管
理を複雑にするだけであり、このような使用法を
禁止しても実害はない場合が多い。
第4図は本発明に用いられるキヤツシユメモリ
の一実施例ブロツク図を示したものである。メモ
リアドレスレジスタ7は、プロセツサがメモリの
読み書きを行う際使用されるもので、論理アドレ
スを保持し、タグ8とブロツクアドレス9とブロ
ツク内アドレス10の3つの部分に分割される。
キヤツシユメモリは、メインメモリの一部分のコ
ピーを記憶しておくデータ記憶部13−1,13
−2と、該データ記憶部に、メインメモリのどの
論理アドレスに対応するブロツクが記憶されてい
るかを示すデイレクトリ11−1,11−2と一
致回路17,18、等から構成される。第4図に
は、比較回路が2つある謂ゆるセツトアソシアテ
イブ方式でセツト数=2の方式を示している。
プロセツサ(図示せず)がメモリアクセスを行
う場合、メモリアドレスレジスタのブロツクアド
レス9が、セレクタ15で選択されて、デイレク
トリ11及び有効ビツト12へ入力される。(1
1,12,13のサフイツクスは省略して説明す
る。)11,12は高速のICメモリより構成され
ており、ブロツクアドレス9は、該ICメモリ1
1,12のアドレス入力となる。これで、該IC
メモリがアクセスされ、これが一致回路17,1
8の入力となる。有効ビツト12は、該デイレク
ト11が有効か否かを示すものである。また、タ
グ8は、セレクタ16で選択されて、一致回路1
7,18の入力となる。一致回路17,18は、
デイレクトリ11とタグ8の比較を行い、一致し
ておりかつ有効ビツトが1であるか否かを、コン
トロール回路21及びセレクタ19に送出する。
これは、データ記憶部13に対応するブロツクが
記憶されているか否かを示すものである。デイレ
クトリ11とタグ8が一致し、有効ビツトか1の
場合には、データ記憶部13の内容がセレクタ1
9、データバス14を介してプロセツサ(図示せ
ず)に送出される。
またデイレクトリ11とタグ8が不一致か、有
効ビツトが0の場合には、コントロール回路21
にこの旨が連絡され、論理アドレスが、ドライバ
25を介して共通バス5のアドレスライン5−3
へ送出され、メインメモリ読み出しのための制御
信号が、制御ライン5−1を介してメインメモリ
(図示せず)に送出される。
また、他のプロセツサがメインメモリに書き込
む場合には、この時のアドレスが、共通バス5の
アドレスライン5−3、レシーバ26を介して、
無効化アドレススタツク20に順次記憶される。
該無効化アドレススタツク20に記憶されたアド
レスに対応するブロツクは無効化しなければなら
ないが、これは次のようにして行なわれる。無効
化は、プロセツサがキヤツシユメモリを使用しな
い時またはスタツクが満杯になつた時にプロセツ
サのメモリ使用を待たせおいて実行される。無効
化を実行する場合には、コントロール回路21か
らの選択信号22により無効化スタツク20の内
容がセレクタ15、を介して、デイレクトリ11
のアクセスを行い、この内容が一致回路17に入
力され、セレクタ16を介して送出されたタグ部
8との比較を行う。この際に内容が一致していれ
ば無効化をするためにコントロール回路21が信
号線24を介して有効ビツト12をリセツトす
る。一致していなければ何もしなくてよい。
このキヤツシユメモリの特徴は、論理アドレス
がデイレクトリ11に記憶されている点が特徴
で、このようにして、プロセツサからのメモリア
クセスは、論理アドレスでキヤツシユメモリのア
クセスを行い、キヤツシユメモリに該当ブロツク
がない時だけ、メインメモリにアクセスが行なわ
れる。
このように本発明によれば、プロセツサに近い
所にキヤツシユメモリがあるために実効メモリア
クセス時間が短縮され、アドレス変換機構は各プ
ロセツサに共通に1つ設けられるので、ハード量
の削減が可能となり、低コスト化が実現される。
【図面の簡単な説明】
第1図は従来のマルチプロセツサシステムの一
例を示すブロツク図、第2図は本発明によるマル
チプロセツサシステムの原理構成を示すブロツク
図、第3図は本発明の適用範囲外を説明するため
のアドレスマツプ図、第4図は本発明に用いられ
るキヤツシユメモリの一実施例ブロツク図であ
る。 1……主記憶装置、2−1,2−2……キヤツ
シユメモリ、3……アドレス変換機構、4−1,
4−2……プロセツサ、5……共通バス、11−
1,11−2……デイレクトリ、13−1,13
−2……データ記憶部。

Claims (1)

  1. 【特許請求の範囲】 1 共通バスに接続されている複数のブロセツサ
    が、この共通バスに接続されている主記憶装置を
    共用するマルチプロセツサシステムにおいて、各
    プロセツサにそれぞれ固有に設けられた論理アド
    レスでアクセスされるキヤツシユメモリと、該共
    通バスと主記憶装置間に全プロセツサ共通に設け
    られた論理アドレスを物理アドレスに変換するア
    ドレス変換機構を有し、各プロセツサは、当該プ
    ロセツサ固有のキヤツシユメモリを論理アドレス
    でアクセスし、所望のメモリブロツクがない場合
    該アドレス変換機構を介して主記憶装置にメモリ
    アクセスするようにしたことを特徴とするマルチ
    プロセツサシステム。 2 各キヤツシユメモリは、それぞれ、主記憶装
    置のどの論理アドレスに対応するメモリブロツク
    がキヤツシユメモリ内に記憶されているかを示す
    デイレクトリを有し、プロセツサからのメモリア
    クセス時、プロセツサから出力される論理アドレ
    スとデイレクトリに記憶されている論理アドレス
    を比較し、一致していればキヤツシユメモリの内
    容を転送し、不一致の場合は、当該論理アドレス
    をアドレス変換機構に送出するようにしている特
    許請求の範囲第1項記載のマルチプロセツサシス
    テム。
JP3035380A 1980-03-12 1980-03-12 Multiprocessor system Granted JPS56127261A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3035380A JPS56127261A (en) 1980-03-12 1980-03-12 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3035380A JPS56127261A (en) 1980-03-12 1980-03-12 Multiprocessor system

Publications (2)

Publication Number Publication Date
JPS56127261A JPS56127261A (en) 1981-10-05
JPS6329297B2 true JPS6329297B2 (ja) 1988-06-13

Family

ID=12301478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3035380A Granted JPS56127261A (en) 1980-03-12 1980-03-12 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPS56127261A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5898893A (ja) * 1981-12-09 1983-06-11 Toshiba Corp 情報処理装置
US4616341A (en) * 1983-06-30 1986-10-07 International Business Machines Corporation Directory memory system having simultaneous write and comparison data bypass capabilities
GB8408444D0 (en) * 1984-04-02 1984-05-10 Hemdal G Computer systems
JPS63170898A (ja) * 1986-07-01 1988-07-14 株式会社 東宏企画 電子安定器
US5247649A (en) * 1988-05-06 1993-09-21 Hitachi, Ltd. Multi-processor system having a multi-port cache memory

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS529495A (en) * 1975-07-12 1977-01-25 Yasumoto Takahashi Coin receiving device of vending machine

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS529495A (en) * 1975-07-12 1977-01-25 Yasumoto Takahashi Coin receiving device of vending machine

Also Published As

Publication number Publication date
JPS56127261A (en) 1981-10-05

Similar Documents

Publication Publication Date Title
US4481573A (en) Shared virtual address translation unit for a multiprocessor system
US5379394A (en) Microprocessor with two groups of internal buses
US5586297A (en) Partial cache line write transactions in a computing system with a write back cache
US5095424A (en) Computer system architecture implementing split instruction and operand cache line-pair-state management
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
JPH03142644A (ja) キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置
JPS6284350A (ja) 階層キヤツシユメモリ装置および方法
JPH0576060B2 (ja)
US5293622A (en) Computer system with input/output cache
JPH01280860A (ja) マルチポートキヤツシユメモリを有するマルチプロセツサシステム
JPH0551937B2 (ja)
JPS6329297B2 (ja)
JPH1091521A (ja) 二重ディレクトリー仮想キャッシュ及びその制御方法
US5649155A (en) Cache memory accessed by continuation requests
EP0271187B1 (en) Split instruction and operand cache management
JP2580263B2 (ja) バッファ記憶装置
JPH055137B2 (ja)
EP0224168A2 (en) Buffer storage control system
JPH0383150A (ja) アドレス変換機構付キャッシュ装置の制御方式
JP3293872B2 (ja) キャッシュ一致化方式
JPH01226056A (ja) アドレス変換回路
JPH0336648A (ja) 電子計算機及びtlb装置とマイクロプロセッサチップ
JPS63240651A (ja) キヤツシユメモリ
JPS63247852A (ja) キヤツシユメモリ制御方法
JPH0630074B2 (ja) プロセッサ