JP2570466B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP2570466B2
JP2570466B2 JP2129560A JP12956090A JP2570466B2 JP 2570466 B2 JP2570466 B2 JP 2570466B2 JP 2129560 A JP2129560 A JP 2129560A JP 12956090 A JP12956090 A JP 12956090A JP 2570466 B2 JP2570466 B2 JP 2570466B2
Authority
JP
Japan
Prior art keywords
processor
address
address conversion
conversion table
directory
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
JP2129560A
Other languages
English (en)
Other versions
JPH0424845A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2129560A priority Critical patent/JP2570466B2/ja
Priority to CA002042684A priority patent/CA2042684C/en
Priority to EP91108028A priority patent/EP0457345B1/en
Priority to AU77140/91A priority patent/AU637229B2/en
Priority to DE69130514T priority patent/DE69130514T2/de
Publication of JPH0424845A publication Critical patent/JPH0424845A/ja
Priority to US08/292,046 priority patent/US5440728A/en
Application granted granted Critical
Publication of JP2570466B2 publication Critical patent/JP2570466B2/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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置に関し、特にマルチプロセッサ
構成でのプロセッサ障害時におけるアドレス変換テーブ
ルのディレクトリ管理に関する。
〔従来の技術〕
従来、この種の情報処理装置は第2図に示すように構
成されており、演算プロセッサ24から主記憶1へのアク
セスを行なう場合、演算プロセッサ24から線2401を介し
リクエストコードと、論理アドレス及びプロセッサ番号
を送出し、選択器2を経てレジスタ3にセットする。
レジスタ3から線305を介しリクエストコードを制御
部20に送ると共に論理アドレスの部分空間番号及びプロ
セッサ番号を線301を介し比較部12〜15に送る。比較部1
2〜15は、線301からの部分空間番号と、ディレクトリ4
〜7の部分空間番号及び線301からのプロセッサ番号と
ディレクトリ4〜7のプロセッサ番号とを調べ、一致す
ると線1201,1301,1401,1501を介し制御部へ報告する。
ここでディレクトリ4はアドレス変換部16と、ディレク
トリ5〜7は各々アドレス変換部17〜19とセットになっ
ており、ディレクトリ4〜7は第3図に示す様に演算プ
ロセッサ24〜27の各々に1対1に対応するプロセッサ番
号4ビットと、レジスタ3の論理アドレスの部分空間番
号に対応する部分空間番号を保持している。さらにここ
での論理アドレスは第4図に示す様に30ビットのアドレ
スとし、部分空間番号10ビット,ページ番号10ビット,
ページ内アドレス10ビットとする。
レジスタ3からの論理アドレスのページ番号は線302
を介し、アドレス変換部16〜19に送り、アドレス変換部
16〜19は該当するテーブル内のアドレスを読出し、線16
01,1701,1801,1901を介し、選択器21に送る。
制御部20はレジスタ3からのリクエストコードを線30
5より受けると記憶部1へのアクセスと判断すると線120
1,1301,1401,1501からの一致結果を調べ一致した比較器
12〜15に対応するアドレス変換部16〜19のアドレスを選
択するように線2001を介し選択器21を選択し、信号線21
01を介し、レジスタ22にセットする。同時にレジスタ3
のページ内アドレスも線304を介しレジスタ22にセット
する。これでレジスタ3の論理アドレスは物理アドレス
としてレジスタ22にセットされたことになり、線2201を
介し、記憶部1へのアクセスを行なう。
次にディレクトリ4〜7及びアドレス変換部16〜19へ
のアドレス変換テーブルの登録について説明する。
演算プロセッサ25から部分空間番号“20"のアドレス
変換テーブルをロードする場合、演算プロセッサ25から
線2501を介し、プロセッサ番号と部分空間番号“20"及
び論理アドレスがリクエストコードと伴に選択器2で選
択されレジスタ3にセットされる。レジスタ3の構成は
第5図であり、ここでの部分空間番号は論理アドレスの
部分空間番号と同一ビット位置のものであるがアドレス
変換テーブルに登録すべき部分空間番号を示しており、
この時の論理アドレスとは別である。この時の論理アド
レスは、記憶部1からアドレス変換部16〜19に登録すべ
きアドレス変換テーブルの読出しの先頭アドレスを示し
ている。また、この時の記憶部へのアクセスではアドレ
ス変換は行なわない。このため、アドレス変換テーブル
読出しのための記憶部1へのアクセスで使用するアドレ
スは、レジスタ3の論理アドレスの部分空間番号とペー
ジ番号が線303を介し、選択器21で選択されレジスタ22
にセットされると共にレジスタ3の論理アドレスのペー
ジ内アドレスは線304を介しレジスタ22にセットされる
ことで論理アドレスをレジスタ22に直接セットし、記憶
部1からのアドレス変換テーブルの読出しが行なわれ
る。論理アドレスの構成から部分空間ごとにページ番号
10ビットにあたる1024ページ分の情報を記憶部1から読
み出すが、これらのアドレスは全て演算プロセッサ側で
生成され、常時レジスタ3に論理アドレスのみセットし
ていくもとである。
制御部20は、レジスタ3のリクエストコードより、ア
ドレス変換部16〜19へのアドレス変換テーブルの登録処
理であることを知ると、比較部12〜15に対し、ディレク
トリ4〜7に未使用のものがあるかを調べる(比較部12
は第6図に示すように構成してあり、比較部13〜15も同
様の構成である)。このため制御部20は選択器1210で
“0"を選択し、ディレクトリ4からのプロセッサ番号と
比較する。比較器1211はレジスタ3のプロセッサ番号と
ディレクトリ4のプロセッサ番号との一致を調べるため
の比較器である。ここで選択器1210からの値“0"とディ
レクトリ4からのプロセッサ番号とを比較し、一致する
ことはディレクトリ4からのプロセッサ番号(第3図の
ビット0−3)が全て“0"であり、未使用状態であるこ
とを示している。比較器1211からの結果は、選択器1214
で選択され線1201を介し制御部20へ送られる(比較器12
12はレジスタ3の論理アドレスの部分空間番号と、ディ
レクトリ4の部分空間番号の一致を調べるためのもので
あり記憶部1への通常アクセス時に使用される。この時
は比較器1211と1212の結果がアンドゲート1213で論理積
をとり、選択器1214で選択されて線1201に送られる)。
制御部20は比較部13〜15に対しても同様の処理を指示
し、結果を線1301,1401,1501を介して受け取る。ここで
ディレクトリ4が未使用であったとする。
制御部20は線1201を介し、ディレクトリ4が未使用で
あることを知るとレジスタ3のプロセッサ番号(この場
合演算プロセッサ25からのリクエストである為“0100"
がセットされている)と部分空間番号(第5図のビット
20−29で“20"とは“0000010100"がセットされている)
をディレクトリ4にセットする。さらに記憶部1から読
出されたアドレス変換テーブルは線101を介しレジスタ
8にセットされる。レジスタ8は毎マシンサイクルごと
に記憶部1からアドレス変換テーブル情報を受けアドレ
ス変換部16に送る。
アドレス変換部16は第7図に示すように構成されてお
り、レジスタ8にデータがセットされるとカウントレジ
スタ1610が“0"にセットされ選択器1611で選択されアド
レス変換テーブル1612への書込みアドレスとして送ら
れ、レジスタ8からのアドレス変換テーブル情報を書込
む。また、カウントレジスタ1610は毎マシンサイクルご
とに+1された値をセットする。
アドレス変換部17〜19もアドレス変換部16と同じ構成
である。
最後にディレクトリ4〜7及びアドレス変換部16〜19
からの登録の削除である。これは処理としてはディレク
トリ4〜7のプロセッサ番号をリセットすることにより
行なわれるディレクトリ4のプロセッサ番号が“1000"
で部分空間番号が“0000000001"、ディレクトリ5が各
々“1000",“0000001111"、ディレクトリ6が“0010",
“0000000001"、ディレクトリ7が“0001",“000000000
1"である場合に、演算プロセッサ24から部分空間番号
“0000000001"のアドレス変換部のクリアを行なう場合
を考える。
演算プロセッサ24はリクエストコードと部分空間番号
及びプロセッサ番号を線2401を介し選択器2を経てレジ
スタ3のビット0〜29に各々セットされる。レジスタ3
から命令コードが制御部201に送られると制御部20はア
ドレス変換部16〜19のテーブルの削除をする為、該当す
るディレクトリ4〜7からプロセッサ番号を削除するた
め、線301よりプロセッサ番号“1000"と部分空間番号
“0000000001"を比較器12〜15に送る。比較器12〜15
は、線301からのプロセッサ番号,部分空間番号が、デ
ィレクトリ4〜7のプロセッサ番号及び部分空間番号の
どれと一致しているかを調べる。この場合、ディレクト
リ4の内容が一致している為、線1201から一致を知らせ
る。これにより制御部20はディレクトリ4のプロセッサ
番号を“0000"として処理を終了する。
〔発明が解決しようとする課題〕
上述した従来の情報処理装置は、各演算プロセッサが
必要とするアドレス変換テーブルをその演算プロセッサ
がアドレス変換部へロードし、不用となった時も、その
演算プロセッサが削除するように命令を発行しているの
で、アドレス変換テーブルを使用中の演算プロセッサが
そのアドレス変換テーブルをクリアせずに異常を起こし
てダウンしてしまうと、他の演算プロセッサが使用でき
るはずのアドレス変換部を使用不可能なままにしてしま
い、アドレス変換テーブルの使用効率が非常に悪くな
り、多くのアドレス変換テーブルの登録処理が多くな
り、それに伴なってオーバーヘッドも大きくなり、シス
テムの性能低下をまねくという欠点があった。
〔課題を解決するための手段〕
本発明の情報処理装置は、論理アドレスの部分空間番
号と該アドレス変換テーブルへのアクセス可能な前記プ
ロセッサを示すアクセス可能プロセッサ指示ビットとで
アドレス変換テーブルを管理するディレクトリをアドレ
ス変換テーブル対応に備えたアドレス変換テーブル管理
手段と、アドレス変換テーブルの内容更新のために前記
アドレス変換テーブル管理手段への更新制御を行なうア
ドレス変換テーブル制御手段と、プロセッサが稼働可能
であることを管理するプロセッサ管理手段とを、プロセ
ッサからの指示により前記プロセッサ管理手段で示され
る稼働可能なプロセッサに対し、特定のプロセッサを前
記アドレス変換テーブル管理手段から削除するための強
制クリア指示手段と該強制クリア指示手段により前記プ
ロセッサが前記アドレス変換テーブル制御手段にディレ
クトリクリアリクエストを発行する強制制御手段と、 前記プロセッサ管理手段がシステムプロセッサに対
し、アドレス変換テーブル管理手段から特定プロセッサ
を削除するための第2の強制クリア指示手段と、前記シ
ステムプロセッサから前記第2の強制クリア指示手段に
したがい前記アドレス変換テーブル管理手段から特定プ
ロセッサの削除を前記アドレス変換テーブル制御手段に
要求する第2強制制御手段と 前記プロセッサ管理手段が前記プロセッサから前記ア
ドレス変換テーブル管理手段からの削除要求を受けると
前記プロセッサ管理手段が前記アドレス変換テーブル制
御手段に対し、前記アドレス変換テーブルの特定のプロ
セッサを削除するように指示する第3の強制制御手段と
を有している。
更に、本発明の情報処理装置は複数個のプロセッサか
らなり、部分空間番号,ページ番号とページ内アドレス
で構成した論理アドレスを物理アドレスに変換するアド
レス変換テーブルを複数個備え、かつ、前記プロセッサ
が記憶部を共有した情報処理装置において、 前記論理アドレスの部分空間番号と該アドレス変換テ
ーブルへのアクセス可能な前記プロセッサを示すアクセ
ス可能プロセッサ指示ビットとで前記アドレス変換テー
ブルを管理するディレクトリを前記アドレス変換テーブ
ル対応に備えたアドレス変換テーブル管理手段と前記ア
ドレス変換テーブルの内容更新のために前記アドレス変
換テーブル管理手段への更新制御を行なうアドレス変換
テーブル制御手段と前記プロセッサが稼働可能であるこ
とを管理するプロセッサ管理手段とを有し、 システム全体を管理するためのシステム制御プロセッ
サと 前記プロセッサ管理手段が前記システム制御プロセッ
サに対し、アドレス変換テーブル管理手段から特定プロ
セッサを削除するための強制クリア指示手段と前記シス
テムプロセッサから前記強制クリア指示手段にしたがい
前記アドレス変換テーブル管理手段から特定プロセッサ
の削除を前記アドレス変換テーブル制御手段に要求する
強制制御手段とを有している。
更に又、本発明の情報処理装置は、複数個のプロセッ
サからなり、部分空間番号,ページ番号とページ内アド
レスで構成した論理アドレスを物理アドレスに変換する
アドレス変換テーブルを複数個備え、かつ、前記プロセ
ッサが記憶部を共有した情報処理装置において、 前記論理アドレスの部分空間番号と該アドレス変換テ
ーブルへのアクセス可能な前記プロセッサを示すアクセ
ス可能プロセッサ指示ビットとで前記アドレス変換テー
ブルを管理するディレクトリを前記アドレス変換テーブ
ル対応に備えたアドレス変換テーブル管理手段と、前記
アドレス変換テーブルの内容更新のために前記アドレス
変換テーブル管理手段への更新制御を行なうアドレス変
換テーブル制御手段と前記プロセッサが稼働可能である
ことを管理するプロセッサ管理手段とを有し、 該プロセッサ管理手段が前記プロセッサから前記アド
レス変換テーブル管理手段からの削除要求を受けると前
記プロセッサ管理手段が前記アドレス変換テーブル制御
手段に対し、前記アドレス変換テーブル管理手段の特定
のプロセッサを削除するように指示する強制制御手段と
を有している。
〔実施例〕
次に、本発明の実施例について図面を参照して説明す
る。
第1図は本発明の第1の実施例を示す。第1図におい
て、1は記憶部、2′,21は選択器、3,8〜11,22はレジ
スタ、4〜7はディレクトリ、12〜15は比較部、16〜19
はアドレス変換部、20′は制御部、24〜27は演算プロセ
ッサ、28はプロセッサ管理部、29は制御プロセッサ、30
〜33はディレクトリ更新部である。
なお、第2図と同一番号のものは同じ機能をするもの
であり、番号に′のついたものは第2図の従来技術より
機能が付加されたものである。
ここで記憶部1へのアクセス及びディレクトリ4〜7,
アドレス変換部16〜19に対する登録及び削除の処理は従
来技術と同じである。
これより、演算プロセッサ24〜27のどれかが異常を起
こした場合のディレクトリ4〜7からのアドレス変換テ
ーブルの削除について示す。
演算プロセッサ24〜27において異常が検出されると線
2402,2502,2602,2702を介しプロセッサ管理部28に報告
される。プロセッサ管理部28は演算プロセッサ24〜27か
らの異常報告を受けると、異常を起こしたプロセッサ番
号と稼働可能なプロセッサを管理するプロセッサ管理レ
ジスタ2810とチェックする。
第9図はプロセッサ管理部の構成を示す図であり、演
算プロセッサ24〜27から線2402,2502,2602,2702を介し
て送られた異常報告はプロセッサ管理レジスタ2810から
現在稼働可能であるプロセッサを知ることができ、アド
レス変換テーブルの強制クリアを行なうための強制クリ
アリクエスト送出部2830によって強制クリアのリクエス
トを送出するための演算プロセッサ24〜27を決定し、線
2803〜2806を介し異常を起こしたプロセッサのプロセッ
サ番号とディレクトリのクリア処理のためのリクエスト
を送出する。ここでディレクトリのクリア処理を行なう
演算プロセッサ24〜27の決定は、プロセッサ管理レジス
タ2810で示される稼働可能なプロセッサで、一番小さい
プロセッサ番号を持つものが選ばれる。
演算プロセッサ24〜27はプロセッサ管理部28からディ
レクトリのクリア指示を受けると、異常を起こしたプロ
セッサのプロセッサ番号とディレクトリのクリアのため
のリクエストコードを線2401,2501,2601,2701を介し、
選択器で選択されレジスタ3にセットされる。レジスタ
3は第5図に示されるビット0−15にリクエストコード
を、ビット16−19にプロセッサ番号をセットし、ビット
20以降は“0"となる。
レジスタ3は線305を介し命令コードを制御部20′に
送る。制御部20′はディレクトリ4〜7に対する制御プ
ロセッサ29からのプロセッサ番号の削除処理を通常の削
除処理とは異なり、レジスタ3のプロセッサ番号とディ
レクトリ4〜7のプロセッサ番号とのみ一致チェックを
行ない部分空間番号はチェックしない。
比較部12は、線301からのプロセッサ番号とディレク
トリ4のプロセッサ番号との一致を比較器1211で調べ、
アンドゲート1213を介さず直接選択器1214で選択され制
御部20′に報告する。比較部13〜15も同様に処理を行な
い制御部20′に報告する。
同時にディレクトリ4〜7のプロセッサ番号は線401,
501,601,701を介し、ディレクトリ更新部30〜33に送ら
れると共にディレクトリ更新部30〜33に対し、レジスタ
3から線306を介し、異常を起こしたプロセッサのプロ
セッサ番号が送られる。
ディレクトリ更新部30〜33は、ディレクトリ4〜7か
らのプロセッサ番号からレジスタ3のプロセッサ番号を
リセットして線3001,3101,3201,3301を介しディレクト
リ4〜7に送られる。
第8図はディレクトリ更新部30を示す。第8図におい
て、線306からのプロセッサ番号でレジスタ3のビット1
6はインバータ3010に、ビット17はインバータ3011に、
ビット18はインバータ3012に、ビット19はインバータ30
13に送られ正負が反転され、それぞれアンドゲート3014
〜3017に送られる。線401からのプロセッサ番号は、デ
ィレクトリ4のビット0がアンドゲート3014に、ビット
1がアンドゲート3015に、ビット2がアンドゲート3016
に、ビット3がアンドゲート3017に送られ、それぞれが
論理積をとり線3001に送られる。ディレクトリ更新部31
〜33はディレクトリ更新部30と同じ構成である。
制御部20′は比較部12〜15で一致を報告したディレク
トリ4〜7に対し、ディレクトリ更新部30〜33からのデ
ータを取り込むようにセット信号を送りセットすること
で処理を終了する。
これにより、ディレクトリ4のプロセッサ番号に“01
00"がディレクトリ5〜7のプロセッサ番号にはそれぞ
れ“1000",“1100",“0010"がセットされていて、全て
の演算プロセッサが稼働可能な状態すなわちプロセッサ
管理部2810が“1111"の状態において演算プロセッサ25
から異常が起こった場合について説明する。
演算プロセッサ25から異常が検出されると、線2502を
介しプロセッサ管理部28に報告する。プロセッサ管理部
28は演算プロセッサ25に異常があることを知らされる
と、プロセッサ管理部2810の状態“1111"と演算プロセ
ッサ24〜27からの異常報告“0100"からディレクトリの
クリア処理のプロセッサ番号を決定すべく強制クリアリ
クエスト送出部2830で処理する。
強制クリアリクエスト部2830は、プロセッサ管理部28
10からのプロセッサ状態を線2850〜2853を介し、アンド
ゲート2811〜2814に“1"を取りこむ。
アンドゲート2811は線2850の“1"と線2402からの“0"
の反転“1"を取り込みアンドゲート2819に“1"を、アン
ドゲート2812は線2851の“1"と線2502からの“1"の反転
“0"を取り込みアンドゲート2820に“0"を、アンドゲー
ト2813は線2852の“1"と線2602からの“0"の反転“1"を
取り込みアンドゲート2821に“1"を、アンドゲート2814
は線2853の“1"と線2702からの“0"の反転“1"を取り込
みアンドゲート2822に“1"を送る。また、オアゲート28
15は線2502,2602,2702から“1",“0",“0"を受けアンド
ゲート2819に“1"を、オアゲート2816は線2402,2602,27
02から“0",“0",“0"を受けアンドゲート2820に“0"
を、オアゲート2817は線2402,2502,2702から“0",“1",
“0"を受けアンドゲート2821に“1"を、オアゲート2818
は線2402,2502,2602から“0",“1",“0"を受けアンドゲ
ート2822に“1"を送る。アンドゲート2819はアンドゲー
ト2811からの“1"とオアゲート2815からの“1"により線
2803に“1"を線2854を介し、アンドゲート2823〜2825に
“0"を、アンドゲート2820はアンドゲート2812からの
“0"とオアゲート2816からの“0"により線2855によりア
ンドゲート2823に“0"を線2856を介し、アンドゲート28
24,2825に“1"を送り、アンドゲート2821はアンドゲー
ト2813からの“1"とオアゲート2817からの“1"により線
2857を介し、アンドゲート2824に“1"を、線2858を介
し、アンドゲート2825に“0"を送り、アンドゲート2822
は、アンドゲート2814からの“1"とオアゲート2818から
の“1"により線2859を介し、アンドゲート2825に“1"を
送る。
アンドゲート2823は線2854からの“0"と線2855からの
“0"により線2804に“0"を、アンドゲート2824は線285
4,2856,2857からの“0",“1",“1"により線2805に“0"
を、アンドゲート2825は2854,2856,2858,2859からの
“0",“1",“0",“1"により線2806に“0"を送る。
これにより演算プロセッサ24に対し、ディレクトリの
クリア処理の指示が送られたことになり、同じに線2803
を介し異常を起こしたプロセッサのプロセッサ番号を送
出する(これは第9図には図示していない)。
演算プロセッサ24は線2803を介してプロセッサ管理部
からディレクトリのクリア指示を受けると、異常を起こ
したプロセッサのプロセッサ番号とディレクトリのクリ
アのためのリクエストコードを線2401を介し選択器2′
を経てレジスタ3にセットする。
レジスタ3は制御部20′にリクエストコードを送ると
共に、線301を介し、比較部12〜15にプロセッサ番号“0
100"を送る。比較部12はディレクトリ4のプロセッサ番
号“0100"と比較部13〜15はディレクトリ5〜7のプロ
セッサ番号“1000",“1100",“0010"と線301からのプロ
セッサ番号“0100"とを比較し、比較部12,14で一致を検
出し線1201,1401を介し制御部20′に報告する(ここで
比較一致とは同一ビットに“1"セットされていれば一致
するものである)。
レジスタ3のプロセッサ番号“0100"は線306を介しデ
ィレクトリ更新部30〜33に送られる。ディレクトリ更新
部30〜33は線306からのプロセッサ番号“0100"とディレ
クトリ4〜7のプロセッサ番号“0100",“1000",“110
0",“0010"で一致するビットを“0"に落とす。第8図に
よりディレクトリ更新部30について示すと、線306から
のプロセッサ番号“0100"はインバータ3010に“0"、イ
ンバータ3011に“1"、インバータ3012に“0"、インバー
タ3013に“0"が送られ、アンドゲート3014にはそれぞれ
“1",“0",“1",“1"が送られる。線401からのプロセッ
サ番号“0100"はアンドゲート3014に“0"、アンドゲー
ト3015に“1"、アンドゲート3016に“0"、アンドゲート
3017に“0"が送られアンドゲート3014〜3017の出力とし
て“0",“0",“0",“0"が線3001に送出される。同様の
処理がディレクトリ更新部31〜33で行なわれ、線3101に
は“1000",線3201には“1000",線3301には“0010"が送
出される。
制御部20′は線1201,1401からの一致報告によりディ
レクトリ4,6に対しディレクトリ更新部30,32からの結果
をセットする様に指示する。
したがって、ディレクトリ4のプロセッサ番号は“00
00",ディレクトリ5〜7の各々は、“1000",“1000",
“0010"となり異常を起こしたプロセッサ番号はディレ
クトリ4〜7から全てリセットされ処理を終了する。
次に、第2の実施例について説明する。
演算プロセッサ24〜27において異常が検出されると第
1の実施例同様線2402,2502,2602,2702を介しプロセッ
サ管理部28に報告される。プロセッサ管理部28は演算プ
ロセッサ〜27からの異常報告を受けると異常を起こした
プロセッサ番号とディレクトリのクリア処理リクエスト
を制御プロセッサ29に送る。制御プロセッサ29はプロセ
ッサ管理部28からのディレクトリクリア指示と異常プロ
セッサ番号が送られると、ディレクトリ4〜7とアドレ
ス変換部16〜19に対しアドレス変換テーブルの登録の削
除を行なうため、リクエストコードとプロセッサ番号を
線2901を介し選択器2′で選択されレジスタ3にセット
される。レジスタ3は第5図に示されるビット0−15に
リクエストコードを、ビット16−19にプロセッサ番号を
セットし、ビット20以降は“0"となる。
レジスタ3は線305を介し命令コードを制御部20′に
送る。制御部20′はディレクトリ4〜7に対する制御プ
ロセッサ29からのプロセッサ番号の削除処理を通常の削
除処理とは異なり、レジスタ3のプロセッサ番号とディ
レクトリ4〜7のプロセッサ番号とのみ一致チェックを
行ない部分空間番号はチェックしない。
比較部12は、線301からのプロセッサ番号とディレク
トリ4のプロセッサ番号との一致を比較器1211で調べ、
アンドゲート1213を介さず直接選択器1214で選択され制
御部20′に報告する。比較器13〜15も同様に処理を行な
い制御部20′に報告する。
同時にディレクトリ4〜7のプロセッサ番号は線401,
501,601,701を介し、ディレクトリ更新部30〜33に送ら
れると共にディレクトリ更新部30〜33に対し、レジスタ
3から線306を介し、異常を起こしたプロセッサのプロ
セッサ番号が送られる。
ディレクトリ更新部30〜33は、ディレクトリ4〜7か
らのプロセッサ番号からレジスタ3のプロセッサ番号を
リセットして線3001,3101,3201,3301を介しディレクト
リ4〜7に送られる。
ディレクトリ更新部30を第8図に示す。線306からの
プロセッサ番号でレジスタ3のビット16はインバータ30
10に、ビット17はインバータ3011に、ビット18はインバ
ータ3012に、ビット19はインバータ3013に送られ正負が
反転され、それぞれアンドゲート3014〜3017に送られ
る。線401からのプロセッサ番号は、ディレクトリ4の
ビット0がアンドゲート3014に、ビット1がアンドゲー
ト3015に、ビット2がアンドゲート3016に、ビット3が
アンドゲート3017に送られ、それぞれが論理積をとり線
3001に送られる。ディレクトリ更新部31〜33はディレク
トリ更新部30と同じ構成である。
制御部20′は比較部12〜15で一致を報告したディレク
トリ4〜7に対し、ディレクトリ更新部30〜33からのデ
ータを取込むようにセット信号を送りセットすることで
処理を終了する。
これにより、ディレクトリ4のプロセッサ番号に“01
00"がディレクトリ5〜7のプロセッサ番号にはそれぞ
れ“1000",“1100",“0010"がセットされている場合に
演算プロセッサ25から異常が検出された場合について説
明する。演算プロセッサ25から異常が検出されると線25
02を介しプロセッサ管理部に報告する。プロセッサ管理
部は演算プロセッサ25に異常があることを知らされる
と、プロセッサ番号“0100"とディレクトリのクリア処
理リクエストを制御プロセッサ29に送る。制御プロセッ
サ29は、線2901にアドレス変換テーブルの登録の削除を
行なう命令コードとプロセッサ番号“0100"を送出し、
選択器2′を経てレジスタ3にセットされる。レジスタ
3は制御部20′にリクエストコードを送ると共に、線30
1を介し、比較部12〜15にプロセッサ番号“0100"を送
る。比較部12はディレクトリ4のプロセッサ番号“010
0"と比較部13〜15はディレクトリ5〜7のプロセッサ番
号“1000",“1100",“0010"と線301からのプロセッサ番
号“0100"とを比較し、比較部12,14で一致を検出し線12
01,1401を介し制御部20′に報告する(ここで比較一致
とは同一ビットに“1"セットされていれば一致するもの
である)。
レジスタ3のプロセッサ番号“0100"は線306を介しデ
ィレクトリ更新部30〜33に送られる。ディレクトリ更新
部30〜33は線306からのプロセッサ番号“0100"とディレ
クトリ4〜7のプロセッサ番号“0100",“1000",“110
0",“0010"で一致するビットを“0"に落とす。第8図に
よりディレクトリ更新部30について示すと、線306から
のプロセッサ番号“0100"はインバータ3010に“0",イン
バータ3011に“1",インバータ3012に“0",インバータ30
13に“0"が送られ、アンドゲート3014にはそれぞれ
“1",“0",“1",“1"が送られる。線401からのプロセッ
サ番号“0100"はアンドゲート3014に“0",アンドゲート
3015に“1",アンドゲート3016に“0",アンドゲート3017
に“0"が送られアンドゲート3014〜3017の出力として
“0",“0",“0",“0"が線3001に送出される。同様の処
理がディレクトリ更新部31〜33で行なわれ、線3101には
“1000",第3201には“1000",線3301には“0010"が送出
される。
制御部20′は線1201,1401からの一致報告によりディ
レクトリ4,6に対し、ディレクトリ更新部30,32からの結
果をセットする様に指示する。
したがって、ディレクトリ4のプロセッサ番号は“00
00",ディレクトリ5〜7の各々は、“1000",“1000",
“0010"となり異常を起こしたプロセッサ番号はディレ
クトリ4〜7から全てリセットされ処理を終了する。
次に第3の実施例について説明する。
演算プロセッサ24〜27において異常が検出されると第
1,第2の実施例同様、線2402,2502,2602,2702を介しプ
ロセッサ管理部28に報告される。
プロセッサ管理部28は演算プロセッサ24〜27からの異
常報告を受けると異常を起こしたプロセッサ番号とディ
レクトリのクリア処理のためのリクエストコードを線28
01を介し選択器2′で選択されレジスタ3にセットされ
る。レジスタ3は第5図に示されるビット0−15にリク
エストコードを、ビット16−19にプロセッサ番号をセッ
トし、ビット20以降は“0"となる。
レジスタ3は線305を介し命令コードを制御部20′に
送る。制御部20′はディレクトリ4〜7に対する制御プ
ロセッサ29からのプロセッサ番号の削除処理を通常の削
除処理とは異なり、レジスタ3のプロセッサ番号とディ
レクトリ4〜7のプロセッサ番号とのみ一致チェックを
行ない部分空間番号はチェックしない。
比較部12は、線301からのプロセッサ番号とディレク
トリ4のプロセッサ番号との一致を比較器1211で調べ、
アンドゲート1213を介さず直接選択器1214で選択され制
御部20′に報告する。比較部13〜15も同様に処理を行な
い、制御部20′に報告する。
同時にディレクトリ4〜7のプロセッサ番号は線401,
501,601,701を介し、ディレクトリ更新部30〜33に送ら
れると共にディレクトリ更新部30〜33に対し、レジスタ
3から線306を介し、異常を起こしたプロセッサのプロ
セッサ番号が送られる。
ディレクトリ更新部30〜33は、ディレクトリ4〜7か
らのプロセッサ番号からレジスタ3のプロセッサ番号を
リセットして線3001,3101,3102,3301を介しディレクト
リ4〜7に送られる。
ディレクトリ更新部30を第8図に示す。線306からの
プロセッサ番号でレジスタ3のビット16はインバータ30
10に、ビット17はインバータ3011に、ビト18はインバー
タ3012に、ビット19はインバータ3013に送られ正負が反
転され、それぞれアンドゲート3014〜3017に送られる。
線401からのプロセッサ番号は、ディレクトリ4のビッ
ト0がアンドゲート3014に、ビット1がアンドゲート30
15に、ビット2がアンドゲート3016に、ビット3がアン
ドゲート3017に送られ、それぞれ論理積をとり線3001に
送られる。ディレクトリ更新部31〜33はディレクトリ更
新部30と同じ構成である。
制御部20′は比較部12〜15で一致を報告したディレク
トリ4〜7に対し、ディレクトリ更新部30〜33からのデ
ータを取込むようにセット信号を送りセットすることで
処理を終了する。
これより、ディレクトリ4のプロセッサ番号に“010
0"がディレクトリ5〜7のプロセッサ番号にはそれぞれ
“1000",“1100",“0010"がセットされている場合に演
算プロセッサ25から異常が検出された場合について説明
する。
演算プロセッサ25から異常が検出されると線2502を介
しプロセッサ管理部に報告する。プロセッサ管理部は演
算プロセッサ25に異常があることを知らされると、プロ
セッサ番号“0100"とディレクトリのクリア処理のため
のリクエストコードを線2801を介し選択器2′を経てレ
ジスタ3にセットされる。レジスタ3は制御部20′にリ
クエストコードを送ると共に、線301を介し、比較部12
〜15にプロセッサ番号“0100"を送る。比較部12はディ
レクトリ4のプロセッサ番号“0100"と比較部13〜15は
ディレクトリ5〜7のプロセッサ番号“1000",“1100",
“0010"と線301からのプロセッサ番号“0100"とを比較
し、比較部12,14で一致を検出し線1201,1401を介し制御
部20′に報告する(ここで比較一致とは同一ビットに
“1"セットされていれば一致するものである) レジスタ3のプロセッサ番号“0100"は線306を介しデ
ィレクトリ更新部30〜33に送られる。ディレクトリ更新
部30〜33は線306からのプロセッサ番号“0100"とディレ
クトリ4〜7のプロセッサ番号“0100",“1000",“110
0",“0010"で一致するビットを“0"に落とす。第8図に
よりディレクトリ更新部30について示すと、線306から
のプロセッサ番号“0100"はインバータ3010に“0",イン
バータ3011に“1",インバータ3012に“0",インバータ30
13に“0"が送られ、アンドゲート3014にはそれぞれ
“1",“0",“1",“1"が送られる。線401からのプロセッ
サ番号“0100"はアンドゲート3014に“0",アンドゲート
3015に“1",アンドゲート3016に“0",アンドゲート3017
に“0"が送られアンドゲート3014〜3017の出力として
“0",“0",“0",“0"が線3001に送出される。同様の処
理がディレクトリ更新部31〜33で行なわれ、線3101には
“1000",線3201には“1000",線3301には“0010"が送出
される。
制御部20′は線1201,1401からの一致報告によりディ
レクトリ4,6に対し、ディレクトリ更新部30,32からの結
果をセットする様に指示する。
したがって、ディレクトリ4のプロセッサ番号は“00
00",ディレクトリ5〜7の各々は“1000",“1000",“00
10"となり異常を起こしたプロセッサ番号はディレクト
リ4〜7から全てリセットされ処理を終了する。
〔発明の効果〕
以上説明したように本発明は、マルチプロセッサ構成
時にプロセッサが異常を起こした場合、アドレス変換テ
ーブルのディレクトリにあるプロセッサ番号内の異常を
起こしたプロセッサに対するビットを他の正常なプロセ
ッサを使用することでリセットすることにより、アドレ
ス変換テーブルの使用効率の低下及びアドレス変換テー
ブル数の減少により多発するアドレス変換テーブル登録
のためのオーバーヘッドを起こさせないようにする効果
がある。
【図面の簡単な説明】
第1図は本発明の実施例を示す図、第2図は従来技術を
示す図、第3図は本実施例のディレクトリを示す構成
図、第4図は論理アドレスを示す構成図、第5図はレジ
スタ3を示す構成図、第6図は比較部を示す構成図、第
7図はアドレス変換部を示す構成図、第8図はディレク
トリ更新部を示す構成図、第9図はプロセッサ管理部を
示す図である。 1……記憶部、2,2′,21,1210,1214,1611……選択器、
3,8〜11,22……レジスタ、4〜7……ディレクトリ、12
〜15……比較部、16〜19……アドレス変換部、20,20′
……制御部、24〜27……演算プロセッサ、28……プロセ
ッサ管理部、29……制御プロセッサ、1211,1212……比
較器、1213,2811〜2814,2819〜2825,3014〜3017……ア
ンドゲート、1610……カウントレジスタ、1612……アド
レス変換テーブル、3010〜3013……インバータ、2815〜
2818……オアゲート。

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】複数個のプロセッサからなり、部分空間番
    号,ページ番号とページ内アドレスで構成した論理アド
    レスを物理アドレスに変換するアドレス変換テーブルを
    複数個備え、かつ、前記プロセッサが記憶部を共有した
    情報処理装置において、 前記論理アドレスの部分空間番号と該アドレス変換テー
    ブルへのアクセス可能な前記プロセッサを示すアクセス
    可能プロセッサ指示ビットとで前記アドレス変換テーブ
    ルを管理するディレクトリを前記アドレス変換テーブル
    対応に備えたアドレス変換テーブル管理手段と前記アド
    レス変換テーブルの内容更新のために、前記アドレス変
    換テーブル管理手段への更新制御を行なうアドレス変換
    テーブル制御手段と、前記プロセッサが稼働可能である
    ことを管理するプロセッサ管理手段とを有し、 前記プロセッサからの指示により前記プロセッサ管理手
    段で示される稼働可能なプロセッサに対し特定のプロセ
    ッサを前記アドレス変換テーブル管理手段から削除する
    ための強制クリア指示手段と、該強制クリア指示手段に
    より前記プロセッサが前記アドレス変換テーブル制御手
    段にディレクトリクリアリクエストを発行する強制制御
    手段とを備えたことを特徴とする情報処理装置。
  2. 【請求項2】複数個のプロセッサからなり、部分空間番
    号,ページ番号とページ内アドレスで構成した論理アド
    レスを物理アドレスに変換するアドレス変換テーブルを
    複数個備え、かつ、前記プロセッサが記憶部を共有した
    情報処理装置において、 前記論理アドレスの部分空間番号と該アドレス変換テー
    ブルへのアクセス可能な前記プロセッサを示すアクセス
    可能プロセッサ指示ビットとで前記アドレス変換テーブ
    ルを管理するディレクトリを前記アドレス変換テーブル
    対応に備えたアドレス変換テーブル管理手段と前記アド
    レス変換テーブルの内容更新のために前記アドレス変換
    テーブル管理手段への更新制御を行なうアドレス変換テ
    ーブル制御手段と、前記プロセッサが稼働可能であるこ
    とを管理するプロセッサ管理手段とを有し、 システム全体を管理するためのシステム制御プロセッサ
    と 前記プロセッサ管理手段が前記システム制御プロセッサ
    に対し、アドレス変換テーブル管理手段から特定プロセ
    ッサを削除するための強制クリア指示手段と前記システ
    ムプロセッサから前記強制クリア指示手段にしたがい前
    記アドレス変換テーブル管理手段から特定プロセッサの
    削除を前記アドレス変換テーブル制御手段に要求する強
    制制御手段とを備えたことを特徴とする情報処理装置。
  3. 【請求項3】複数個のプロセッサからなり、部分空間番
    号,ページ番号とページ内アドレスで構成した論理アド
    レスを物理アドレスに変換するアドレス変換テーブルを
    複数個備え、かつ、前記プロセッサが記憶部を共有した
    情報処理装置において、 前記論理アドレスの部分空間番号と該アドレス変換テー
    ブルへのアクセス可能な前記プロセッサを示すアクセス
    可能プロセッサ指示ビットとで前記アドレス変換テーブ
    ルを管理するディレクトリを前記アドレス変換テーブル
    対応に備えたアドレス変換テーブル管理手段と、前記ア
    ドレス変換テーブルの内容更新のために前記アドレス変
    換テーブル管理手段への更新制御を行なうアドレス変換
    テーブル制御手段と前記プロセッサが稼働可能であるこ
    とを管理するプロセッサ管理手段とを有し、 該プロセッサ管理手段が前記プロセッサから前記アドレ
    ス変換テーブル管理手段からの削除要求を受けると前記
    プロセッサ管理手段が前記アドレス変換テーブル制御手
    段に対し、前記アドレス変換テーブル管理手段の特定の
    プロセッサを削除するように指示する強制制御手段とを
    備えたことを特徴とする情報処理装置。
JP2129560A 1990-05-18 1990-05-18 情報処理装置 Expired - Lifetime JP2570466B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2129560A JP2570466B2 (ja) 1990-05-18 1990-05-18 情報処理装置
CA002042684A CA2042684C (en) 1990-05-18 1991-05-15 Information processing apparatus
EP91108028A EP0457345B1 (en) 1990-05-18 1991-05-17 Information processing apparatus
AU77140/91A AU637229B2 (en) 1990-05-18 1991-05-17 Information processing apparatus
DE69130514T DE69130514T2 (de) 1990-05-18 1991-05-17 Informationsverarbeitungsgerät
US08/292,046 US5440728A (en) 1990-05-18 1994-08-18 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2129560A JP2570466B2 (ja) 1990-05-18 1990-05-18 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0424845A JPH0424845A (ja) 1992-01-28
JP2570466B2 true JP2570466B2 (ja) 1997-01-08

Family

ID=15012516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2129560A Expired - Lifetime JP2570466B2 (ja) 1990-05-18 1990-05-18 情報処理装置

Country Status (6)

Country Link
US (1) US5440728A (ja)
EP (1) EP0457345B1 (ja)
JP (1) JP2570466B2 (ja)
AU (1) AU637229B2 (ja)
CA (1) CA2042684C (ja)
DE (1) DE69130514T2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5279439A (en) * 1992-04-27 1994-01-18 Toyoda Gosei Co., Ltd. Fuel cap for a pressured fuel tank
JP2974526B2 (ja) * 1992-12-18 1999-11-10 富士通株式会社 データ転送処理方法及びデータ転送処理装置
JP3300776B2 (ja) * 1994-03-15 2002-07-08 株式会社日立製作所 並列プロセッサの切替え制御方式
JPH11149481A (ja) * 1997-11-19 1999-06-02 Sharp Corp 情報処理装置
JP3852693B2 (ja) * 2002-03-19 2006-12-06 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4253146A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Module for coupling computer-processors
US4400775A (en) * 1980-02-28 1983-08-23 Tokyo Shibaura Denki Kabushiki Kaisha Shared system for shared information at main memory level in computer complex
EP0071002B1 (en) * 1981-07-27 1988-05-25 International Business Machines Corporation Data processing apparatus including stored value access control to shared storage
US4670835A (en) * 1984-10-19 1987-06-02 Honeywell Information Systems Inc. Distributed control store word architecture
US4985825A (en) * 1989-02-03 1991-01-15 Digital Equipment Corporation System for delaying processing of memory access exceptions until the execution stage of an instruction pipeline of a virtual memory system based digital computer
US5539345A (en) * 1992-12-30 1996-07-23 Digital Equipment Corporation Phase detector apparatus

Also Published As

Publication number Publication date
JPH0424845A (ja) 1992-01-28
EP0457345B1 (en) 1998-11-25
AU7714091A (en) 1991-11-21
AU637229B2 (en) 1993-05-20
EP0457345A2 (en) 1991-11-21
EP0457345A3 (en) 1992-11-19
US5440728A (en) 1995-08-08
DE69130514D1 (de) 1999-01-07
CA2042684C (en) 1998-08-11
CA2042684A1 (en) 1991-11-19
DE69130514T2 (de) 1999-04-29

Similar Documents

Publication Publication Date Title
US6546471B1 (en) Shared memory multiprocessor performing cache coherency
KR880000299B1 (ko) 캐쉬장치
CA1073553A (en) Error recovery and control in a mass storage system
US4586133A (en) Multilevel controller for a cache memory interface in a multiprocessing system
US6697899B1 (en) Bus control device allowing resources to be occupied for exclusive access
EP0095033A2 (en) Set associative sector cache
US5584004A (en) Data processing system having subsystems connected by busses
US5361342A (en) Tag control system in a hierarchical memory control system
JP2570466B2 (ja) 情報処理装置
US7146533B2 (en) Method for and system producing shared usage of intercommunication fabric error logging registers in a multiprocessor environment
JPH04354039A (ja) アドレス変換装置
JPH02308349A (ja) バッファ記憶制御装置
JP3100807B2 (ja) キャッシュメモリ装置
GB2037466A (en) Computer with cache memory
JPS6242249A (ja) アドレス変換装置試験方式
DK163542B (da) Anlaeg til overvaagning af et databehandlingssystem
JPS61141054A (ja) 情報処理装置
JP2696899B2 (ja) マルチプロセッサシステム
JP2821326B2 (ja) キャッシュメモリの故障検出装置
JP2629727B2 (ja) 階層化キャッシュ装置
JPH03263252A (ja) 情報処理装置
JP2798140B2 (ja) 仮想空間制御方式
JPH06250933A (ja) 情報処理装置および主記憶装置のアクセス制御方法
JPH03278265A (ja) 情報処理装置
JPH08272687A (ja) 入出力キャッシュメモリ