JPH0991163A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0991163A
JPH0991163A JP8073541A JP7354196A JPH0991163A JP H0991163 A JPH0991163 A JP H0991163A JP 8073541 A JP8073541 A JP 8073541A JP 7354196 A JP7354196 A JP 7354196A JP H0991163 A JPH0991163 A JP H0991163A
Authority
JP
Japan
Prior art keywords
bus
information
processing device
failure
master
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
JP8073541A
Other languages
English (en)
Other versions
JP3502216B2 (ja
Inventor
Toru Watabe
徹 渡部
Yasutomo Sakurai
康智 桜井
Takumi Kishino
琢己 岸野
Yoshio Hirose
佳生 廣▲瀬▼
Koichi Odawara
孝一 小田原
Kazuyasu Nonomura
一泰 野々村
Takumi Takeno
巧 竹野
Shinya Kato
慎哉 加藤
Takahito Noda
敬人 野田
Takumi Nonaka
巧 野中
Tamotsu Matsuo
保 松尾
Seiji Goto
誠司 後藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP07354196A priority Critical patent/JP3502216B2/ja
Priority to US08/674,786 priority patent/US5835697A/en
Priority to GB0006990A priority patent/GB2345362B/en
Priority to GB0007303A priority patent/GB2345364B/en
Priority to GB9929773A priority patent/GB2342479B/en
Priority to GB0007412A priority patent/GB2345365B/en
Priority to GB9614344A priority patent/GB2303234B/en
Priority to CN96110641A priority patent/CN1122217C/zh
Publication of JPH0991163A publication Critical patent/JPH0991163A/ja
Priority to US09/140,797 priority patent/US6073249A/en
Application granted granted Critical
Publication of JP3502216B2 publication Critical patent/JP3502216B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1679Temporal synchronisation or re-synchronisation of redundant processing components at clock signal level
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/182Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits based on mutual exchange of the output between redundant processing components
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

(57)【要約】 【課題】比較的小規模なハードウェア量で十分な高信頼
性機能を実現できるコスト的にも安価な装置とする。 【解決手段】TMRユニット10は、少なくとも3台の
処理装置10−1〜10−3をバス12で接続し、同時
に同じ処理動作を行う。その内、1台はマスター処理装
置であり、残りはスレーブ処理装置である。マスター処
理装置10−1のみがバス12に生成した情報を出力す
る。多重化制御回路48は、各処理装置10−1〜10
−3に設けられ、各装置が生成した出力情報とバス12
上に出力されたバス情報との比較に基づいて故障を検出
し、内部回路に必要な処理を行わせる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、多重化ユニットを
構成する少なくとも3台のプロセッサをバスで接続して
同じ処理を同時に実行することで故障を検出して必要な
処理を行う高信頼性情報処理装置に関し、多重化ユニッ
トの内の1台をマスター処理装置、残りをスレーブ装置
として故障を検出する高信頼性の情報処理装置に関す
る。
【0002】近年、情報処理装置が各種分野で広く使用
されてきたのに伴い、情報処理装置が故障した場合、社
会的、経済的に大きな影響を与える可能性が考えられ
る。このため出来る限り故障が発生しにくく、また、万
一故障が発生した場合でも、確実に故障が検出でき、更
には、処理装置が停止せずに、処理内容の整合性を保ち
ながら、処理を続行できるような、信頼性の高い情報処
理装置が求められている。
【0003】
【従来の技術】従来、高信頼性情報処理装置としては、
3重以上の多重化構成を備えた情報処理装置が提供され
ている。このような多重化処理装置を実現する方法とし
ては、次のようなものが考えられている。一つのユニッ
ト内に、3台以上のプロセッサ等の処理装置と多数決論
理回路を用意する。多数決論理回路は、同一クロックで
同期動作している3個以上の処理装置の出力信号に対
し、多数決論理に基づいた演算を行い、その結果を、主
記憶ユニット等の他の処理装置に送出する方法である。
【0004】
【発明が解決しようとする課題】しかしながら、多数決
論理を用いた多重化処理装置にあっては、各処理装置の
実行サイクル数は増えないが、多数決論理を行う分だけ
実行サイクル数が増して処理時間が遅くなる。また、専
用の多数決論理回路そのもののハードウェア量が大き
く、また処理装置と多数決論理回路の間にも多数の信号
線が必要になり、回路構成が複雑化しコスト的にも高価
であった。
【0005】本発明は、このような問題点に鑑みてなさ
れたもので、比較的小規模なハードウェア量で十分な高
信頼性機能を実現できるコスト的にも安価な高信頼性情
報処理装置を提供することを目的とする。
【0006】
【課題を解決するための手段】図1は本発明の原理説明
図である。本発明の情報処理装置は、多重化処理装置、
最小構成で処理装置を3台備えた3重化処理装置10
(以下「TMRユニット」という)を基本とする。ここ
でTMRユニット10とは、次の条件を満足する装置で
ある。
【0007】少なくとも3台の処理装置10−1〜1
0−3をバス12で接続している。 3台の処理装置10−1〜10−3は同一クロックに
同期して同じ処理を行う。 処理装置10−1〜10−3の内、1台の処理装置1
0−1がマスター処理装置に設定され、残りの処理装置
10−2,10−3がスレーブ処理装置に設定されてい
る。
【0008】マスター処理装置10−1は、生成した
情報をバス12に出力し、またバス12の情報を取り込
む。 スレーブ処理装置10−2,10−3は、生成した情
報をバス12に出力せず、バス12の情報の取り込みの
みを行う。 このようなTMRユニット10につき、本発明は、処理
装置10−1〜10−3の各々に、多重化制御回路(T
MR制御回路)48を設ける。多重化制御回路48は、
処理装置10−1〜10−3が生成した出力情報とバス
12上に出力されたバス情報との比較に基づいて故障を
検出し、内部回路に必要な処理を行わせる。
【0009】ここで処理装置10−1〜10−3で生成
されてバス12に出力される情報とは、データ、アドレ
ス、バス制御情報等の各種の情報を意味する。多重化制
御回路48は、バス情報と各処理装置10−1〜10−
3が生成した出力情報との不一致からバス情報の故障を
検出するバス情報一致判定回路を有し、バス情報一致判
定回路による故障検出の判断を、各処理装置10−1〜
10−3が生成した出力情報の出力タイミングで行う。
【0010】多重化制御回路48は、バス12上に生成
した情報を出力する際に、情報出力タイミングを示すタ
イミング信号を生成する出力タイミング生成回路と、マ
スター処理装置の割当て状態で、タイミング信号を専用
の信号線により他の処理装置に出力するタイミング信号
出力回路と、マスター処理装置の割当て状態では、信号
線から入力した装置自身が生成したタイミング信号また
は装置自身が生成したタイミング信号で、バス情報と出
力情報の比較による故障検出を行い、スレーブ処理装置
の割当て状態では、信号線から入力したマスター処理装
置からのタイミング信号または装置自身が生成したタイ
ミング信号で、バス情報と出力情報を比較して不一致時
に故障を検出するバス情報故障検出回路を備える。
【0011】多重バス構成の場合は、各バス毎に出力タ
イミング生成回路、タイミング信号出力回路、及びバス
情報故障検出回路を設ける。マスター処理装置の故障検
出時に、マスター処理装置が割り当てられた処理装置1
0−1の多重化制御回路48は、装置自身でバス12と
の接続を切り離し、スレーブ処理装置が割り当てられた
処理装置10−2,10−3の多重化制御回路48にあ
っては、残りの処理装置10−2,10−3の中で新た
なマスター処理装置を決定し、縮退した多重化ユニット
を再構成する。多重化制御回路は、マスター処理装置を
設定するためマスター情報レジスタ回路を備える。
【0012】このような本発明の高信頼性情報処理装置
によれば、TMRユニットを構成している各処理装置
は、バスに生成した情報(データ、アドレス、その他の
バス制御情報を含む)を出力する場合、マスター処理装
置が生成した情報のみが出力され、スレーブ処理装置の
生成した情報は、バスに出力されないように抑止され
る。この状態でTMRユニットを構成する各処理装置
は、処理装置が生成した情報を出力するタイミングで、
バス上に出力された情報を取り込み、処理装置が生成し
た出力情報とバス上の情報が一致するか否かを処理装置
が生成した情報出力タイミングで行い、不一致の際にT
MRユニット内での故障を判定する。
【0013】バスは1本でもよいし、多重バス構成でも
よい。多重バス構成の場合は、バス毎に故障検出を行
う。特定バスの故障が検出された場合には、故障バスを
切り離し、残った正常なバスのみを使用した縮退構成で
処理を継続する。TMRユニットを構成している各処理
装置は、バスから受信したバス情報、処理装置が生成し
た出力情報、情報出力タイミングを、一旦、装置内に保
持した後に故障検出を行う。この場合、バスのアクセス
サイクル数は若干増加するが、検出処理を終るまでバス
上に情報を維持する必要がないので、バスのサイクルタ
イムを短くでき(高速化)、全体としてのバス性能の向
上が図られる。
【0014】マスター処理装置は、バス上に情報を出力
する場合、同時に情報出力タイミングを示す信号を出力
する。出力されたタイミング信号は、TMRを構成して
いる各処理装置間に用意された専用の信号線を用いて、
TMRを構成している各処理装置に入力される。TMR
ユニットを構成しているマスター処理装置を含む各処理
装置は、マスター処理装置から送られてきた情報出力タ
イミング信号と、各処理装置が生成した同様な情報出力
タイミング信号の論理和を取り、これを内部の一致検出
タイミング信号として使用する。バス情報と装置が生成
した出力情報の比較による不一致か否かの検出は、一致
検出タイミング信号に基づいて行われる。
【0015】尚、常時出力されるバス情報の一致検出
は、特別な出力タイミング信号は使用せずに、バス上の
情報と各処理装置が生成した出力情報を比較すればよ
い。TMRユニットを構成する各処理装置でバス情報の
不一致による故障が検出された場合、各処理装置は故障
検出信号を生成し、各処理装置間に用意された専用の信
号線を用いて各処理装置に送る。マスター処理装置を含
む各処理装置は、送られてきた故障検出信号により故障
発生を判定する。故障が検出された場合、TMRユニッ
トを構成している各処理装置は、受け取った故障検出信
号の判定パターンに従い故障箇所を判定する。
【0016】故障が検出された場合、故障データによる
各種資源の破壊を抑止するため、バスから入力された情
報は、故障検出が完了するまでの必要な時間だけ保持さ
れ、内部回路の制御には、保持された情報が使用され
る。また、故障が検出された場合は、内部回路の各種資
源の更新を抑止する。更に故障検出で、故障した処理装
置はバスから切り離される。
【0017】バスから切り離された処理装置がマスター
処理装置であることを判定した場合、残りの正常な処理
装置の中から新しいマスター処理装置を決定する。マス
ター処理装置の再決定が行われ縮退したTMRユニット
が再構成されると、故障発生で保持していた情報を新マ
スター処理装置がバスに再転送し、リトライを行わせ
る。
【0018】この再転送は、装置内部で転送指示を行っ
てもよいし、各装置間に専用の信号線を接続し、故障を
検出したマスター処理信号から再転送を指示する信号を
送って行ってもよい。この再転送は、TMRユニットを
構成する処理装置に限定されず、同じバスに接続されて
いる他の処理装置についても同様である。 (生存処理装置表示フラグ)TMRユニット12を構成
する処理装置10−1〜10−3の多重化制御回路48
には、現在どの処理装置が正常に動作しており、どの処
理装置が故障等によって多重化ユニット10から離脱し
ているかを示す生存処理装置表示フラグを備えた生存処
理装置表示フラグ回路を設けている。
【0019】生存処理装置表示フラグのフラグ信号は、
故障判定結果のマスク出力とマスク入力に使用される。
例えば、出力マスク回路は、装置自身がTMRユニット
10からの離脱でオフしている生存処理装置表示フラグ
の信号により、装置自身からの情報の出力をマスクして
出力する。これによってTMRユニット10を離脱した
処理装置が、誤った故障検出結果をTMRユニット10
を構成する他の処理装置10−2,10−3に通知して
故動作させてしまうことを防止する。
【0020】また多重化制御回路48は、バスの出力許
可状態の時にオンするバス出力許可フラグをセットした
バス出力許可フラグ回路を有することから、出力マスク
回路は、装置自身からの情報の出力を、バス出力許可フ
ラグの信号によりマスクして出力する。これによってT
MRユニット10を離脱した処理装置が、誤った故障検
出結果をTMRユニット10を構成する他の処理装置1
0−2,10−3に通知して故動作させてしまうこと
を、二重化して確実に防止する。
【0021】また生存処理装置表示フラグのフラグ信号
は、入力マスク回路において、他の処理装置からの出力
情報をマスクして入力する。これによってRMRユニッ
ト10を離脱した他の処理装置から誤った故障検出結果
が通知されても、故動作しないようにできる。各処理装
置10−1〜10−3の多重化制御回路48は、各処理
装置がどの処理装置をマスター処理装置として認識して
いるかを示すマスター情報を、専用の信号線を介して入
出力することにより互いに通知するマスタ情報通知回路
を備える。
【0022】また多重化制御回路は、マスター情報故障
判定回路を備え、マスター情報通知回路における装置自
身のマスター情報と他の処理装置から通知されたマスタ
ー情報との比較結果に基づいて、マスター情報故障を起
した処理装置を示すマスター故障判定信号を生成する。
TMRユニット10を構成している処理装置10−1〜
10−3は、マスター処理装置のバス情報の故障あるい
はマスター情報の故障が判定された場合には、残りの正
常な処理装置の中から、新しいマスター処理装置を決定
し、マスター情報の内容を更新する。
【0023】(バス故障可能性フラグ)TMRユニット
10を構成している各処理装置10−1〜10−3が、
多重化制御回路48とバス12との間に、更にトランシ
ーバ回路を設けた装置構成の場合、バス12自体の故障
が発生すると、マスタ処理装置10−1で正常で且つ全
てのスレーブ装置12−2,12−2でバス情報故障あ
りとなる故障検出パターンが得られる。この故障検出パ
ターンは、多数決処理によりマスター装置故障のように
判定されてしまう。
【0024】そこで、このバス故障可能性パターンを検
出した際にバス故障可能性フラグをオンするバス故障検
出回路を設ける。バス故障可能性フラグがオンしたら、
マスター処理装置を更新をすると共に旧マスター処理装
置の多重化ユニットからの切り離しは行わないようにす
る。バス故障可能性パターンの故障が一度発生し、バス
故障可能性フラグをオンした後に、旧マスター処理装置
の故障を検出した場合は、旧マスター処理装置の故障と
断定し、多重化ユニットから切り離す。
【0025】またバス故障可能性パターンの故障が一度
発生し、バス故障可能性フラグをオンした後に、バス自
体の故障を検出した場合は、もう一度、バス故障可能性
パターンが検出されるので、その時にバス自体を切り離
す。バスの多重化構成の場合には、バス毎にバス故障検
出回路を設け、バス自体の故障が検出された場合は、故
障したバスを切り離し、残った正常なバスのみを使用
し、縮退したバス構成で構成で処理を続行する。
【0026】更に、TMRユニット10を構成している
処理装置が故障すると、通常、ハードウェアで故障した
処理装置が自動的に切り離され、縮退構成を形成して処
理を続行する。 (ウェイクアップモード)TMRユニット10を構築し
ている複数の処理装置処理装置10−1〜10−3の中
で、例えば処理装置10−3が故障すると、2台の処理
装置10−1,10−2に縮退したTMRユニット10
が再構築される。尚、2台の処理装置でほTMRユニッ
トを構成している場合も含む。
【0027】この場合、故障した処理装置10−3を新
しい処理装置に交換し、3重化構成に戻す必要がある。
3重化構成に戻すためには、交換処理装置10−3のク
ロックレベルの同期が完了した後に、TMRユニット1
0の処理装置10−1,10−2のメモリを交換処理装
置10−3にコピーして一致させる必要がある。しか
し、メモリコピー中に多重化動作を行うと、コピーの済
んだコピー元のメモリ内容が書き替えられ、メモリ内容
の一致が保証できない。このためメモリコピーが完了す
るまでは、TMRユニット10としての多重化動作を禁
止せざるを得ず、この間、システムが停止状態となる。
【0028】そこで本発明によれば、故障処理装置の交
換から多重化動作開始までのシステム停止時間を最小限
にする高信頼性情報処理装置が提供される。本発明の高
信頼性情報処理装置は、モード設定部により、故障によ
りTMRユニット10から切り離された例えば処理装置
10−3を新しい処理装置に交換して、TMRユニット
10を構成している処理装置10−1,10−2とのク
ロックレベルの同期化が行われた時に、ウェイクアップ
モードを設定する。
【0029】このウェイクアップモードの設定状態で
は、マスター処理装置10−1のメモリ制御部は、内部
でのメモリアクセスをバス12を経由して行わせ、スレ
ーブ処理装置10−2及び交換処理装置10−3の各メ
モリ制御部は、内部でのメモリアクセスを、バス12上
のデータを取り込んで行わせる。具体的には、ウェイク
アップモードの設定状態で、リードアクセスは次のよう
になる。マスター処理装置10−1のメモリ制御部は、
プロセッサからメモリに対するリードアクセスがあった
場合、メモリのリードデータをバス12に転送すると同
時にバス12からリードデータを取り込んでプロセッサ
に転送する。またスレーブ処理装置10−2および交換
処理装置10−3の各メモリ制御部は、メモリに対する
リードアクセスがあった場合、バス12からマスター処
理装置10−1が転送したリードデータを取り込んでプ
ロセッサに転送する。
【0030】またウェイクアップモードの設定状態での
ライトアクセスは次のようになる。マスター処理装置1
0−1のメモリ制御部は、プロセッサからメモリに対す
るライトアクセスがあった場合、メモリのライトデータ
をバス12に転送すると同時に、バス12からライトデ
ータを取り込んでメモリに転送して書き込む。スレーブ
処理装置10−2および交換処理装置10−3の各メモ
リ制御部は、メモリに対するライトアクセスがあった場
合、バス12からマスター処理装置10−1が転送した
ライトデータを取り込んでメモリに書き込む。
【0031】このように故障装置を交換した後のウェイ
クアップモードの設定状態では、マスター処理装置のメ
モリアクセスによるデータは全てバス上に転送され、ス
レーブ装置及び交換処理装置のメモリに反映される。こ
のため多重化動作とメモリコピー動作を並行して行って
も、多重化動作によるメモリ書き替えでコピーしたメモ
リ内容が一致しなくなることはない。
【0032】このためTMRユニットとしてのシステム
停止は、故障処理装置を交換してからクロックレベルの
同期を取るまでの最小時間に抑えることができる。クロ
ックレベルの同期が取れたら、メモリコピーが完了して
いなくともTMRユニット10としての多重化動作を再
開でき、更にメモリコピーが完了したら、交換処理装置
を含めたTMRユニット10の再構築による多重化動作
に移行できる。 (ディレクトリ方式)本発明のTMRユニット10で
は、メモリ容量の拡大、プロセッサ数の増加、共通バス
性能に対応するため、ディレクトリ方式のメモリシステ
ムを採用する。
【0033】ディレクトリ方式は、メモリをあるブロッ
ク単位に分け、各メモリブロックがどのような状態であ
るかを、ブロックアドレスに対応したエントリ(アドレ
ス)によりディレクトリメモリに保持する。メインメモ
リのメモリブロック状態とは、同じデータを1又は複数
のプロセッサのキャッシュ上に保持している状態を示す
シェアード状態、キャッシュ上に保持する最新データと
メモリ内容が異なっ状態を示すダーティ状態、メインメ
モリ内のデータが最新で、どのプロセッサのキャッシュ
上にも存在しない無効状態(インバリッド)などがあ
る。ディレクトリメモリは、管理するメモリのサイズを
ブロックサイズで割った容量が必要であり、かなり大き
なメモリ容量となる。本発明の高信頼システムとしての
TMRユニット10では、故障した処理装置をシステム
の電源を切らずに新しい装置に交換した時、TMRユニ
ットとしてのシステム動作を停止し、交換した処理装置
との間でクロックレベルの同期及び内部状態を同じに設
定し、続いてシステムを起動して既存の処理装置のメモ
リを交換処理装置にコピーした後に、再度、TMRユニ
ットを再構築して本来のTMRユニットとしての多重化
動作を再開する。
【0034】この装置交換に伴なう処理装置間で内部状
態を同じに設定する際に、ディレクトリメモリを全て無
効化させる必要がある。即ち、システムを停止した際に
マスター処理装置10−1及びスレーブ処理装置10−
2につき、ディレクトリメモリ上でダーティ状態となっ
てキャッシュ上に最新データが存在するブロックを、全
てメインメモリにライトバックしてインバリッド状態と
した後、交換処理装置を含む全ての処理装置10−1〜
10−3のディレクトリメモリを無効化し、初期状態と
する。
【0035】この場合のディレクトリメモリの無効化
は、無効化処理を高速化して短時間で済ます必要があ
る。即ち、無効化処理は、プロセッサがディレクトリメ
モリ制御部を経由してディレクトリメモリに対し、1エ
ントリずつ無効を示す値を順次ライトする。このため全
エントリのライトをプロセッサが行って無効化する場
合、無効化の間、TMRユニット10のシステム動作は
停止する。本発明の高信頼情報処理装置では、数ミリセ
カンドといった短時間のシステム停止でも運用に影響が
出てしまう場合がある。
【0036】そこで、本発明は、ディレクトリメモリの
無効化を瞬時で完了するようにした高信頼性情報処理装
置を提供することを目的とする。この目的を達成するた
め、TMRユニット10を構成する処理装置10−1〜
10−3の各々は、ディレクトリメモリに、所定のブロ
ックサイズに分けられたメインメモリの各メモリブロッ
クの状態を示すディレクトリ情報を格納すると共に、電
源投入によるシステムの初期設定時にディレクトリ情報
の特定ビットに特定の値αを書き込んでおく。またディ
レクトリ情報の特定ビットと同じ値αを格納した指示レ
ジスタを準備する。
【0037】ディレクトリメモリのデータ制御部は、デ
ィレクトリメモリの読出し時に特定ビットの値と指示レ
ジスタ値を比較し、一致していればディレクトリ情報を
有効とし、一致していなければメインメモリのデータが
最新で他の部位に存在しないことを示す無効化を示す値
にディレクトリ情報を更新する。このため、無効化部に
よつて、処理装置の交換時等に、指示レジスタの値αを
別の値βに変更するだけで、データ制御部によりディレ
クトリメモリの全内容を瞬時に無効化させることができ
る。
【0038】ここで、データ制御部によるディレクトリ
メモリの無効化を禁止させる制御レジスタを設け、指示
レジスタの値とディレクトリ情報の特定ビットの値が一
致しなくとも、ディレクトリ情報を有効とすることも可
能である。これは故障によりTMRユニット10から外
された処理装置を、故障の修理後にTMRユニット10
以外の処理装置として使用する場合等、運用中の無効化
を必要としない場合に利用できる。
【0039】またTMRユニットにあっては、複数回無
効化を行いたい場合もある。この場合、一度無効化を行
うと、ディレクトリメモリの特定ビットは指示レジスタ
で変更した値βに変更される。そこで無効化終了で指示
レジスタを元の値αに戻し、次の無効化で指示レジスタ
の値を再びβに変更した場合、ディレクトリメモリの特
定ビットは前回の無効化でβとなっており、指示レジス
タの値と一致するため有効となり、無効化できない。
【0040】このため、無効化が終了したらディレクト
リメモリの特定ビットの値βを元の値αに戻す再度の初
期化が必要となる。しかし、運用中の初期化はプロセッ
サの負担となる。そこで本発明にあっては、ディレクト
リメモリの制御部に次のような初期化機能を設ける。即
ち、初期化起動レジスタと初期化完了表示レジスタを設
け、初期化制御部により、プロセッサから初期化起動レ
ジスタに一定値が書き込まれた時に、データ制御部にデ
ィレクトリメモリの初期化動作を開始させる。初期化動
作中は、ディレクトリメモリの特定ビットに指示レジス
タと同じ値αを書き込み、他のビットには無効状態を示
す値を書き込む。
【0041】ディレクトリメモリの全領域(全エント
リ)の書込みが済んだら、完了表示レジスタに初期化完
了を示す値を書き込む。このようなディレクトリメモリ
の初期化を無効化後に行なうことで、複数回の無効化を
可能とする。ディレクトリメモリの初期化動作におい
て、1エントリ毎の処理間隔が短いとプロセッサからの
アクセスがビジィとなり、性能低下の原因となる。そこ
で、時間間隔指示レジスタを設け、初期化制御部による
ディレクトリメモリのエントリ単位の初期化動作の時間
間隔を指定し、プロセッサのアクセスに対するビジィを
低減し、性能低下を抑える。
【0042】メインメモリは、最大実装可能範囲で任意
の実装状態をとる。ディレクトリメモリは、メインメモ
リの最大実装の最大容量をブロックサイズで割った数の
エントリをもつ。しかし、初期化処理の際に未実装のメ
インメモリのエントリの初期化を行うことは、初期化の
時間を必要以上に長くする。そこで、メインメモリの実
装数に応じた初期化エントリ数を指示する初期化エント
リ数レジスタを設け、アドレス比較部で、初期化動作中
に更新される初期化対象アドレスが初期化エントリ数レ
ジスタの指示するエントリ数に一致したときに、初期化
制御部に初期化動作の終了を指示する。これによってメ
インメモリの実装に対応したディレクトリメモリのエン
トリのみの初期化を可能とする。
【0043】またメインメモリの実装は飛び飛びに行わ
れることもあるので、初期化開始アドレスレジスタの指
示する開始アドレスに、初期化エントリレジスタの指示
する初期化エントリ数をアドレス加算部で加算して初期
化終了アドレスを求める。
【0044】そして、アドレス比較部で、初期化動作中
に更新される初期化対象アドレスが前記加算部からのア
ドレスに一致したときに、初期化動作の終了を指示し、
メインメモリの実装に対応したディレクトリメモリの離
散した実装エントリの初期化を可能とする。この場合、
アドレス加算部を使用せず、初期化終了アドレスを指示
する終了アドレスレジスタを設けてもよい。
【0045】
【発明の実施の形態】
<目次> 1.TMR構成 2.多重バス構成 3.故障検出の高速化 4.故障検出タイミングの通知 5.故障検出結果の通知 6.故障箇所の判定 7.故障発生時の各種資源の更新抑止 8.故障処理装置の切り離し 9.マスター処理装置の再決定 10.保持情報の再転送 11.再転送指示信号の生成 12.生存処理装置表示フラグ 13.マスター情報の保証 14.バス故障検出 15.バス切り離しソフト通知 16.故障装置交換時のウェイクアップモード 17.ディレクトリメモリ 1.TMR構成 (1)装置構成 図2は本発明による高信頼性情報処理装置におけるTM
R構成を示す。図2において、TMRユニット10は、
処理装置10−1,10−2,10−3の3台を少なく
とも備える。TMRユニット10を構成する処理装置1
0−1,10−2,10−3は、情報の受渡しを行うた
め、バス12に接続されている。バス12にはTMRユ
ニット10以外の処理装置10−nも接続される。尚、
以下の説明にあっては、処理装置とはTMRユニット1
0を構成している処理装置10−1〜10−3を、特別
な説明がない限り意味する。
【0046】TMRユニット10を構成する処理装置1
0−1〜10−3は、TMR構成での動作中には、処理
装置10−1〜10−3の内の1台がマスター処理装置
として動作し、残りの2台がスレーブ処理装置として動
作している。通常はマスター処理装置がバス12に必要
な情報を出力し、全ての処理装置(1台のマスター処理
装置と2台のスレーブ処理装置)がバス12上の情報の
チェックを行い、故障検出を行っている。以下に、TM
Rユニット10を構成する処理装置10−1〜10−3
の内部構成と動作を処理装置10−1のTMR制御回路
48を例にとって説明する。 (2)自処理装置のマスター/スレーブ判定 処理装置10−1〜10−3に対しては、TMRユニッ
ト10を構成する各処理装置間で重複しないように設定
された処理装置番号#1,#2,#3が外部から入力さ
れている。ここで、処理装置番号#1〜#3を外部から
入力せず、処理装置内部で設定するようにしてもよい。
【0047】しかしながら、装置内部での特別な設定を
せず、処理装置を例えばバックパネルなどに挿入した時
点で自動的に固定的な処理装置番号が入力されるように
した方が、設定誤りが発生する可能性がなくなる。この
ため、高信頼性情報処理装置としては外部入力による処
理装置番号の設定の方が有利である。処理装置10−1
を例にとると、装置内部にはマスター情報レジスタ14
が用意されており、現在のマスター処理装置番号例えば
#1が設定されている。このマスター処理装置番号#1
は、他の処理ユニット10−2,10−3のマスター情
報レジスタ14にも同様に設定されている。
【0048】マスター情報一致判定回路16には、入力
端子18およびドライバ20を介して外部から入力され
た自処理装置の処理装置番号#1と、マスター情報レジ
スタ14に保持されているマスター処理装置番号#1が
入力されている。マスター情報一致判定回路16は、入
力された2つの装置番号の一致検出を行う。装置番号が
一致していた場合には自処理装置がマスター処理装置で
あると判断し、自マスター信号E1をオンにする。
【0049】ここで信号のオンとは、信号の論理レベル
をHレベルにセットすることを意味する。このことから
信号のオフとは、Hレベルにある信号をLレベルに立ち
下げることを意味する。処理装置10−1にあっては、
マスター情報一致判定回路16が入力した2つの装置番
号が共に#1であることから、自マスター信号E1をオ
ンする。これに対し、処理装置10−2,10−3側に
あっては、装置番号が不一致になることから自処理装置
はスレーブ処理装置であると判断し、自マスター信号E
1をオフすることになる。 (3)バスへの情報出力 処理装置10−1に設けられた出力情報生成回路22
は、不図示の内部回路からの各種指示により必要に応じ
て出力情報D1を生成している。この出力情報D1に
は、データ,アドレスおよび各種のバス制御信号が含ま
れている。出力情報生成回路22で生成された出力情報
D1は、バス用トライステート回路24に入力される。
バス用トライステート回路24には出力ドライバ26が
設けられ、出力情報生成回路22からの出力情報D1を
入出力端子30からバス12に出力する。
【0050】出力情報生成回路22による出力情報の生
成と同時に、出力タイミング生成回路32が出力タイミ
ング信号としてバス出力信号E2を生成する。生成され
たバス出力信号E2は、バス出力イネーブル生成回路3
4に入力される。この実施例ではバス出力イネーブル生
成回路34は、ANDゲート36で実現される。バス出
力イネーブル生成回路34にはマスター情報一致判定回
路16で生成された自マスター信号E1も入力される。
【0051】このためバス出力イネーブル生成回路34
では、入力されたバス出力信号E2と自マスター信号E
1が共にオンの場合にのみ、即ち処理装置10−1がマ
スター処理装置である場合にのみ、バス用トライステー
ト回路24のドライバ26に対するバスイネーブル信号
をオンにする。バス用トライステート回路24のドライ
バ26は、バス出力イネーブル生成回路34からのバス
イネーブル信号E3をイネーブル端子に受け、バスイネ
ーブル信号E3がオンの場合にのみ出力情報生成回路2
2からの出力情報D1をバス12に出力する。 バス用
トライステート回路24の入出力端子30は、外部のバ
ス12に接続され、TMRユニット10を構成している
他のスレーブ処理装置10−2,10−3やTMRユニ
ット10以外の処理装置10−nと接続される。 (4)バス情報の故障検出 バス12上の情報は処理装置10−1に入力され、バス
用トライステート回路24の入力ドライバ28を経由し
てバス情報一致検出回路38にバス情報D2として入力
される。また内部出力情報生成回路22で生成された情
報D1も、バス情報一致判定回路38に入力される。バ
ス情報一致判定回路38は、入力された2つの情報D
1,D2の一致判定を行う。
【0052】2つの情報D1,D2が一致していた場合
には、バス情報一致判定回路38はバス正常信号E4を
オンにする。また2つの情報D1,D2が不一致であっ
た場合は、バス正常信号E4をオフにする。バス情報故
障検出回路40はインバータ42とANDゲート44で
構成され、バス情報一致判定回路38から出力されたバ
ス正常信号E4と出力タイミング生成回路32で生成さ
れたバス出力信号E2が入力される。バス情報故障検出
回路40は、バス出力信号E2がオンで且つバス正常信
号E4がオフの場合にのみ、バス情報の故障検出を意味
する不一致発生信号E5をオンにする。
【0053】この不一致発生信号E5は、後の説明で明
らかにする処理装置内部の各回路に供給される。不一致
発生信号E5を受けた各内部回路は、不一致発生信号E
5がオンの場合は、TMRユニット10を構成している
処理装置10−1〜10−3のいずれか(バス12自体
の故障も含む)で故障が発生したと判断し、必要な故障
処理を行う。
【0054】以上のように、図2のTMR構成にあって
は、TMRユニット10を構成している3台の処理装置
10−1〜10−3以外に、各処理装置10−1〜10
−3で生成したバス情報の多数決などを行う別の装置は
不要であり、3台の同一の処理装置10−1〜10−3
のみでTMR構成による高信頼性機能を経済的に実現で
きる。 2.多重バス構成 (1)装置構成 図3は多重バス構成をとる本発明の高信頼性情報処理装
置の実施例である。まずTMRユニット10を構成する
処理装置10−1〜10−3は、複数のバス、この実施
例にあっては2つのバス12−1,12−2により接続
され、データの受渡しを行うことになる。TMRユニッ
ト10以外の処理装置10−nについても、バス12−
1,12−2に接続される。
【0055】TMRユニット10を構成する処理装置1
0−1〜10−3は、TMR構成による動作中、処理装
置10−1〜10−3の内の1台がマスター処理装置と
して動作し、残りの2台の処理装置がスレーブ処理装置
として動作している。通常は、マスター処理装置がバス
12−1,12−2のいずれかに対し必要な情報を出力
し、全処理装置(1台のマスター処理装置と2台のスレ
ーブ処理装置)がバス12−1または12−2の出力情
報をチェックし、故障検出を行っている。
【0056】バス12−1,12−2の2つによる多重
バス構成にあっては、各処理装置10−1〜10−3が
各バス12−1,12−2ごとに図2の実施例に示した
ような故障検出機能をもっている。以下に、多重バス構
成におけるTMRユニット10の処理装置10−1〜1
0−3の内部構成を処理装置10−1を例にとって説明
する。 (2)処理装置の内部構成 TMRユニット10の処理装置10−1〜10−3は、
処理装置10−1に代表して示すように、内部回路は大
きく分けて3つの回路により構成されている。1つはT
MR処理機能以外の本来の処理装置の機能を実現するた
めの各種処理回路46である。残り2つはTMR処理機
能を実現するためのTMR制御回路48−1,48−2
であり、基本的には、同一の機能を有する回路が外部の
バス12−1,12−2に対応して設けられている。即
ち、TMR制御回路48−1が外部のバス12−1に対
応して設けられ、TMR制御回路48−2が外部のバス
12−2に対応して設けられる。
【0057】各種処理回路46とTMR制御回路48−
1,48−2は、データ/制御用の信号線50で接続さ
れている。この実施例にあっては、データ/制御用の信
号線50は2つのTMR制御回路48−1,48−2で
共通としているが、信号線50をTMR制御回路48−
1,48−2ごとに別々に設けてもよい。TMR制御回
路48−1,48−2から各種処理回路46に対して
は、切り離し通知信号E6,E7の信号線が接続されて
いる。この実施例にあっては、バス故障の切り離し通知
信号E6,E7を出力する場合を例にとっているが、バ
ス切り離し情報をTMR制御回路48−1,48−2内
に保持し、各種処理回路46が必要に応じバス切り離し
情報を取りに行ってもよい。またバス切り離し情報は、
TMR制御回路48−1,48−2の内部ではなく各種
処理回路46の内部で、必要な期間、保持するようにし
てもよい。
【0058】正常な運用状態で各種処理回路46が外部
のバス12−1,12−2と情報のやり取りを行う場合
は、使用するバス12−1または12−2に対応するT
MR制御回路48−1または48−2との間で必要な情
報のやり取りを行う。対応するTMR制御回路48−1
または48−2は、各種処理回路46から処理を依頼さ
れた情報に対し、外部のバス12−1または12−2と
の間で必要な情報のやり取りを行う。
【0059】このとき例えばバス12−1に関する故障
が発生し、TMR制御回路48−1の内部のバス切り離
し検出回路52−1でバス12−1に関する故障を検出
した場合、検出結果を保持するFF54−1をオンにす
る。このFF54−1は、リセット指示がくるまで故障
検出結果のオン状態を保持する。FF54−1がオンに
なった場合、対応するバス切り離し通知信号E6がオン
となり、各種処理回路46にバス12−1の故障検出が
通知される。
【0060】各種処理回路46は、切り離し通知信号E
6のオンにより、対応するバス12−1側で故障が発生
したことを認識し、バス12−1の故障発生に対応する
処理を行うと共に、以後、外部のバスを使用する場合は
残った正常なバス12−2のみを使用するようにし、故
障したバス12−1を切り離した縮退状態で継続処理を
行うことになる。
【0061】このようなバス故障はバス12−2側につ
いても同様であり、TMR制御回路48−2のバス切り
離し検出回路52−2でバス12−2に関する故障を検
出して検出結果を保持するFF54−2をオンし、バス
切り離し通知信号E7により各種処理回路46に通知
し、バス12−2の故障発生に対応する処理と、故障し
たバス12−2の切り離しの縮退処理を行う。 3.故障検出の高速化 (1)故障検出を高速化するための構成 図4は、3台の処理装置10−1〜10−3でTMRユ
ニット10を構成し、単一の外部のバス12で接続して
情報のやり取りを行っており、更にTMR構成をとらな
い他の処理装置10−nも接続している。TMRユニッ
ト10を構成する3台の処理装置10−1〜10−3
は、処理装置10−1に代表して示す内部構成をもつ。
【0062】処理装置10−1の内部構成は図2の実施
例と同じであるが、更に故障検出を高速化するため、バ
ス12に出力する情報D1を保持するFF56、バス1
2上に出力された情報D2を保持するFF58、更に出
力タイミング信号生成回路32からのバス出力信号E2
を保持するFF60を新たに設けている。このようにF
F56,58,60を設けたことで、それ以降の回路部
における判断処理を待つことなく、バス12側に対する
内部回路の処理を終了することができ、バス12の故障
検出の高速化を図ることができる。
【0063】具体的には、出力情報生成回路22で出力
情報D1が生成され、バス用トライステート回路24を
介してバス12に出力されると、この出力情報D1はF
F56に保持される。また出力情報D1の生成と同時に
出力タイミング生成回路32よりバス出力信号E2が出
力されるが、これもFF60で保持される。更にバス1
2上の情報は、バス用トライステート回路24を介して
バス情報D2としてFF58に保持される。
【0064】FF56,58に保持された情報D1,D
2は、バス情報一致判定回路38で比較判定され、その
判定結果がバス情報故障検出回路40でFF60に保持
されたバス出力信号E8を用いてバス情報の故障検出を
行う。図2のFFによる保持を行わない場合にあって
は、バス情報一致判定回路38およびバス情報故障検出
回路40による判定結果および検出結果が得られるま
で、外部のバス12に対する出力情報D1の出力状態お
よび内部の出力タイミング生成回路32からのバス出力
信号E2の出力状態を保持しなければならず、故障検出
のためにバスの1サイクルの時間が長めに必要となる。
これに対し、FF56,58,60を設けたことで出力
情報D1,バス情報D2およびバス出力信号E2の出力
状態の継続がFFの保持タイミングまでの短い時間で済
み、故障検出の高速化が実現できる。この場合、バスサ
イクル数は増加するが、サイクル時間の短縮の方が大き
い。 (2)バス情報の故障検出 図4の実施例において、FF56,58,60を設ける
ことで故障検出の高速化を図った場合の動作を説明す
る。出力情報生成回路22で生成された出力情報D1
は、バス用トライステート回路24に与えられる。ここ
で処理装置10−1はマスター処理装置であることか
ら、バス出力イネーブル生成回路34からのバスイネー
ブル信号E3がオンとなってドライバ26をイネーブル
状態としている。
【0065】この出力情報D1は出力ドライバ26、入
出力端子30を経由してバス12に出力される。このと
き出力タイミング生成回路32が出力したバス出力信号
E2は、FF60に一旦保持され、バス出力信号E8と
してバス情報故障検出回路40に出力される。バス12
上に出力された情報は処理装置10−1に入力され、バ
ス用トライステート回路24を経由してFF58に一旦
保持される。このとき内部の出力情報生成回路22で生
成した出力情報D1は、別のFF56に保持されてい
る。FF56,58に保持された出力情報D1とバス情
報D2は、バス情報一致判定回路38に入力される。
【0066】バス情報一致判定回路38は、入力された
2つの情報D1,D2の一致判定を行い、一致していた
場合はバス正常信号E4をオンし、不一致であった場合
にはバス正常信号E4をオフにする。バス情報故障検出
回路40は、バス情報一致判定回路38から出力された
バス正常信号E4とFF60に保持されたバス出力信号
E8を入力し、バス出力信号E8がオンで且つバス正常
信号E4がオフの場合にのみ、バス情報の故障検出を意
味する不一致発生信号E5をオンにする。
【0067】バス情報故障検出回路40からの不一致発
生信号E5は、処理装置10−1の図示しない内部回路
に入力され、バス12自体の故障を含み、TMRユニッ
ト10を構成している処理装置10−1〜10−3のい
ずれかで故障が発生したと判断し、必要な故障処理を行
う。このようなTMRユニット10を構成している各処
理装置10−1〜10−3について、バス12に出力さ
れた出力情報、自らが生成した出力情報、更に自らが生
成した出力タイミングのそれぞれをバスごとに保持し、
装置内に保持したこれらの情報を使用してバス情報の故
障検出を行うことにより、バス12のアクセスサイクル
数は若干増加するがバス12のサイクルタイム自体を高
速化することができ、全体的にバス性能の向上を図るこ
とができる。 4.故障検出タイミングの通知 (1)装置構成 図5は図4の実施例に更に、バス12に対する情報出力
の出力タイミングに関する故障を検出する機能を設けた
ことを特徴とする。図5の実施例にあっては、TMRユ
ニット10を構成する処理装置10−1〜10−3の中
の処理装置10−1に代表して示すように、図4の実施
例に設けた回路に加え、更に、出力タイミング用トライ
ステート回路62、FF70およびバス情報チェックタ
イミング生成回路72を設けている。
【0068】即ち、出力タイミング生成回路32で生成
されたバス出力信号E2は、出力タイミング用トライス
テート回路62に設けられた出力ドライバ64に入力さ
れる。出力ドライバ64のイネーブル端子には、マスタ
ー情報一致判定回路16より出力された自マスター信号
E1が入力される。処理装置10−1はマスター処理装
置であることから、自マスター信号E1はオンになって
おり、出力ドライバ64がイネーブル状態にあり、バス
出力信号E2は出力ドライバ64から入出力端子68に
出力される。この入出力端子68−1に相当する端子
が、他の処理装置10−2,10−3にも入出力端子6
8−2,68−3として設けられており、入出力端子6
8−1〜68−3の間を専用の信号線75で接続してい
る。
【0069】このため、出力タイミング用トライステー
ト回路62の出力ドライバ64から出力された処理装置
10−1のバス出力信号E2は、信号線75を介して他
の処理装置10−2,10−3の入出力端子68−2,
68−3に供給される。一方、出力タイミング用トライ
ステート回路62には入力ドライバ66が設けられてお
り、入出力端子68を介して信号線75より入力したバ
ス出力信号を入力して、出力タイミング信号E9を得る
ようにしている。出力タイミング用トライステート回路
62に対する処理装置10−1自身で生成したバス出力
信号E2はFF60に保持され、また出力タイミング用
トライステート回路62の入力ドライバ66より出力さ
れた出力タイミング信号E9はFF70に保持される。
【0070】FF60,70の出力は、ORゲート74
を備えたバス情報チェックタイミング生成回路72に入
力される。バス情報チェックタイミング生成回路72
は、ORゲート74により、処理装置10−1自身で生
成したバス出力信号E2のFF60による保持信号と、
信号線75を介して入力した出力タイミング信号のFF
70の保持信号のOR出力として、バスチェック信号E
10を出力する。
【0071】このバスチェック信号E10は、バス情報
故障検出回路40にバス情報一致判定回路38からのバ
ス正常信号E4と共に入力される。正常な動作状態にあ
っては、FF60による内部のバス出力信号E2の保持
出力と信号線75による出力タイミング信号のFF70
による保持出力は、同時に得られる。これに対し、同じ
動作を行っている処理装置10−1〜10−3の間で出
力タイミングにずれがあると、スレーブ処理装置となる
処理装置10−2,10−3にあっては、FF60,7
0の保持出力のいずれか一方が先に得られる。例えば、
FF70によりマスター処理装置10−1からの出力タ
イミング信号が先にオンして、バス情報チェックタイミ
ング生成回路72より出力されるバスチェック信号E1
0がオンになったとする。
【0072】このとき処理装置10−2または10−3
では出力タイミング生成回路32からのバス出力信号E
2はオンとなっておらず、出力情報生成回路22からの
出力情報D1の送出が行われていないため、バス情報一
致判定回路38からのバス正常信号E4はオフとなって
おり、バスチェック信号E10のみがオンすることで不
一致発生信号E5がオンし、処理装置10−1〜10−
3の間で情報出力タイミングに関する故障が発生したこ
とを認識することができる。 (2)出力タイミングと故障検出 次に図5の実施例における処理装置10−1の動作を説
明する。
【0073】処理装置10−1のマスター情報一致判定
回路16は、マスター情報レジスタ14の装置番号と外
部から入力された自処理装置の番号とを比較し、両者が
一致していることから、自マスター信号E1をオンして
おり、このため出力タイミング用トライステート回路6
2の出力バッファ64をイネーブル状態としている。出
力情報生成回路22は、内部回路からの各種の指示によ
り必要に応じて出力情報D1を生成している。生成され
た情報D1は、バス用トライステート回路24の出力ド
ライバ26に与えられる。このとき同時に出力タイミン
グ生成回路32よりバス出力信号E2が生成されてオン
となり、バス出力イネーブル生成回路34からのイネー
ブル信号E3がオンとなり、出力ドライバ26がイネー
ブル状態になる。このため出力情報生成回路22からの
出力情報D1は、出力ドライバ26よりバス12に出力
される。
【0074】一方、出力タイミング生成回路32で生成
されたバス出力信号E2は、出力タイミング用トライス
テート回路62の出力ドライバ64に入力される。出力
ドライバ64は、このときマスター情報一致判定回路1
6からの自マスター信号E1がオンとなることでイネー
ブル状態にあり、入力したバス出力信号E2を入出力端
子68を介し信号線75に出力する。同時に、出力タイ
ミング生成回路32からのバス出力信号E2はFF60
に保持される。
【0075】出力タイミング用トライステート回路62
の入力ドライバ66は、このとき出力ドライバ64より
出力されたバス出力信号E2を出力タイミング信号E9
として入力し、FF70に保持させる。ここでFF70
は出力タイミング信号の遅延を考慮して設けられてお
り、遅延が問題にならない場合は設ける必要はない。バ
ス情報チェックタイミング生成回路72は、FF60,
70の保持出力のORをとることでバスチェック信号E
10をオンとする。
【0076】一方、バス情報一致判定回路38は、FF
56に保持された出力情報D1とFF58に同時に保持
されたバス情報D2の一致判定を行い、両情報D1,D
2が一致していた場合はバス正常信号E4をオンにし、
不一致であった場合にはバス正常信号E4をオフにす
る。バス正常信号E4は、バスチェック信号E10と共
にバス情報故障検出回路40に入力される。バス情報故
障検出回路40は、バス情報一致検出回路からのバス正
常信号E4がオフの場合にのみ、バスチェック信号E1
0がオンとなったタイミングで、バス情報の故障検出を
意味する不一致発生信号E5をオンにする。
【0077】バス情報故障検出回路40より出力された
不一致発生信号E5は、図示しない内部の各回路に与え
られ、バス12自体の故障を含むTMRユニット10を
構成している処理装置10−1〜10−3のいずれかで
故障が発生したと判断し、必要な故障処理を行う。 5.故障検出結果の通知 (1)装置構成 図6に示すTMRユニット10を構成する処理装置10
−1〜10−3は、バス情報の不一致を検出した場合、
不一致検出を示す信号をバス情報故障検出信号として処
理装置10−1〜10−3ごとに別々に出力する。処理
装置10−1〜10−3は、専用の信号線86−1,8
6−2,86−3を介して他の処理装置から送られてく
るバス情報故障検出信号を受信し、故障発生の判定を行
う。
【0078】これによって、TMRユニット10を構成
する処理装置10−1〜10−3のいずれかで発生した
故障を全処理装置で検出することができる。このような
故障検出結果の通知のため、図6の処理装置10−1に
代表して示すように、図5の構成に加え新たに、一致検
出用トライステート回路76、装置番号デコード回路8
2、FF88,90,92およびバス情報故障通知信号
生成回路94が設けられる。
【0079】一致検出用トライステート回路76には、
処理装置10−1〜10−3に対応して3つのトライス
テート回路が設けられる。即ち、処理装置10−1に対
応してイネーブル端子付きの出力ドライバ78−1と入
力ドライバ80−1が設けられ、処理装置10−2に対
応してイネーブル端子付きの出力ドライバ78−2と入
力ドライバ80−2が設けられ、更に処理装置10−3
に対応してイネーブル端子付きの出力ドライバ78−3
と入力ドライバ80−3が設けられている。
【0080】装置番号デコード回路82は、外部から入
力された装置番号#1をデコードして、デコード信号E
11−1,E11−2またはE11−3のいずれか1つ
をオンにする。ここで、デコード信号E11−1は装置
番号#1のデコードでオンし、デコード信号E11−2
は装置番号#2のデコードでオンし、更にデコード信号
E11−3は装置番号#3のデコードでオンする。
【0081】装置番号デコード回路82からのデコード
信号E11−1〜E11−3は、一致検出用トライステ
ート回路76の出力ドライバ78−1〜78−3のイネ
ーブル端子に与えられる。これによって、外部から設定
された装置番号#1に対し装置番号デコード回路82は
デコード信号E11−1のみをオンしているため、出力
ドライバ78−1のみがイネーブル状態となる。
【0082】出力ドライバ78−1〜78−3には、バ
ス情報故障検出回路40によるバス情報の不一致を示す
バス情報故障検出信号E5が並列的に入力される。出力
ドライバ78−1〜78−3の出力は入出力端子84−
11,84−12,84−13のそれぞれに接続され、
専用の信号線86−1,86−2,86−3を介して他
の処理装置10−2,10−3に接続される。
【0083】処理装置10−2,10−3は、処理装置
10−1と同様、対応する入出力端子84−21〜84
−23および84−31〜84−33を備えており、そ
れぞれ専用の信号線86−1〜86−3に接続してい
る。一致検出用トライステート回路76に設けた入力ド
ライバ80−1〜80−3の出力は、FF88,90,
92のそれぞれに接続される。
【0084】FF88,90,92はバス情報故障検出
信号の遅延を考慮して設けられたもので、遅延が問題に
ならない場合は設ける必要はない。FF88,90,9
2に保持されたバス情報故障検出信号は、それぞれ保持
信号E13,E14,E15として、ORゲート96を
用いたバス情報故障通知信号生成回路94に入力され
る。
【0085】バス情報故障通知信号生成回路94は、処
理装置10−1,10−2,10−3に対応したバス情
報故障検出信号の保持信号E13,E14,E15のO
Rをとって、処理装置10−1〜10−3のいずれかで
故障を検出したことを示す不一致発生信号E16を内部
回路へ出力する。 (2)故障検出結果の外部出力と装置内での故障検出 次に、図6の処理装置10−1の動作を故障検出結果の
外部出力と装置内での故障検出に分けて説明する。
【0086】図5の実施例で説明したとおり、処理装置
10−1で生成した出力情報とバス12上のバス情報が
不一致の場合、バス情報故障検出回路40からのバス情
報故障検出信号E5がオンとなり、一致検出用トライス
テート回路76に入力される。一方、外部から入力され
た処理装置番号#1は装置番号デコード回路82で解読
され、装置番号#1に対応したデコード信号E11−1
のみをオンにする。このため、一致検出用トライステー
ト回路76の処理装置10−1に対応した出力ドライバ
78−1のみがイネーブル状態となり、バス情報故障検
出信号E5は信号線86−1に出力され、他の処理装置
10−2,10−3に送られるとともに、FF88に保
持される。
【0087】一方、他の処理装置10−2,10−3に
おいて、同様にしてバス情報故障検出信号が信号線86
−2または86−3に出力されている場合には、一致検
出用トライステート回路76の入力ドライバ80−2,
80−3よりバス情報故障検出信号の受信信号が得ら
れ、FF90,92に保持される。この結果、FF88
には処理装置10−1で検出したバス情報故障検出信号
E5が保持され、FF90には処理装置10−2より信
号線86−2を介して送られてきたバス情報故障検出信
号が保持され、更にFF92には処理装置10−3より
信号線86−3を介して送られてきたバス情報故障検出
信号が保持され、それぞれ保持信号E13,E14,E
15としてバス情報故障通知信号作成回路94に入力さ
れる。
【0088】バス情報故障通知信号作成回路94は、処
理装置10−1〜10−3の各々のバス情報故障検出を
示す保持信号13,E14,E15のORをとり、処理
装置10−1〜10−3のいずれかで故障を検出したこ
とを示す不一致発生信号E16を生成して内部回路へ出
力し、必要な故障処理を行わせる。 6.故障箇所の判定 (1)装置構成 図7は、TMRユニット10を構成する処理装置10−
1〜10−3のいずれかでバス12の故障を含む処理装
置の故障が検出された場合に、どこで故障が発生したか
を判定するようにした実施例である。この故障箇所の判
定のため、処理装置10−1に代表して示すように、図
6に設けたバス情報故障通知信号生成回路94に代えて
新たに故障処理装置を判定するバス情報故障判定回路9
8が設けられる。
【0089】バス情報故障判定回路98に対しては、F
F88,90,92で保持された処理装置10−1,1
0−2,10−3ごとのバス情報故障検出信号E13,
E14,E15が入力される。更に、バス情報故障判定
回路98に対しては、現在、マスター処理装置として設
定している装置番号をセットしたマスター情報レジスタ
14からのレジスタ信号E0を入力している。
【0090】このレジスタ信号E0は、処理装置10−
1〜10−3の装置番号を#1,#2,#3とすると、
2ビット信号で表わされる。処理装置10−1をマスタ
ー装置とした場合にはマスター装置番号#1に対応した
(01)が出力され、処理装置10−2をマスター装置
とした場合には装置番号#2に対応した2ビットデータ
(10)が出力され、更に処理装置10−3をマスター
装置とした場合には装置番号#3を示す2ビットデータ
(11)が出力され、各々レジスタ信号E0として入力
される。
【0091】バス情報故障判定回路98は、各処理装置
10−1〜10−3からのバス情報故障検出信号E13
〜E15およびマスター情報レジスタ14からのレジス
タ信号E0に基づき、故障箇所を示す判定信号E18,
E19,E20またはE21のいずれかをオンとする。
図8は図7のバス情報故障判定回路98の回路ブロック
図である。図8において、バス情報故障判定回路98
は、マスター処理装置を決めるマスター番号#1,#
2,#3の各々に対応して、#1用故障判定回路10
0、#2用故障判定回路102および#3用故障判定回
路104を備える。
【0092】即ち、処理装置10−1がマスター装置に
設定されていると#1用故障判定回路100の出力信号
が判定に用いられ、処理装置10−2がマスター装置に
セットされていると#2用故障判定回路102の出力信
号が判定に用いられ、また処理装置10−3がマスター
装置にセットされている場合には#3用故障判定回路1
04の出力信号が判定に用いられる。
【0093】#1用故障判定回路100はANDゲート
106,108,112,114,116およびORゲ
ート110で構成される。#2用故障判定回路102お
よび#3用故障判定回路104も#1用故障判定回路1
00と同じゲート回路を有する。#1用故障判定回路1
00,#2用故障判定回路102および#3用故障判定
回路104の相違は、入力信号E13,E14,E15
の入力位置が相違している。
【0094】入力信号E13は処理装置10−1のバス
情報故障検出信号であり、入力信号E14は処理装置1
0−2のバス情報故障検出信号であり、更に入力信号E
15は処理装置10−3のバス情報故障検出信号であ
る。#1用故障判定回路100には、入力信号E13,
E14,E15の順番に入力される。これに対し#2用
故障判定回路102には、入力信号E14,E15,E
13の順番に入力される。
【0095】更に#3用故障判定回路104には、入力
信号E15,E13,E14の順番に入力される。#1
用故障判定回路100,#2用故障判定回路102およ
び#3用故障判定回路104に続いては、選択回路11
8,120,144が設けられる。選択回路118は、
#1用故障判定回路100からの4つの信号出力に対応
してANDゲート126,128,130,132を設
けている。ANDゲート126,128,130,13
2は、マスター情報レジスタ14からのレジスタ信号E
0としての2ビットのレジスタ信号E16,E17を入
力したANDゲート124により選択される。 (2)故障処理装置の判定 処理装置10−1をマスター装置とした場合のマスター
情報レジスタ信号E16,E17は、装置番号#1を2
ビットで表わした(01)であることから、上位ビット
のレジスタ信号E17を反転入力することで、レジスタ
信号(01)の入力で出力が1となり、ANDゲート1
26,128,130,132を許容状態とする。
【0096】この選択回路118の構成は、選択回路1
20,144についても同様であり、レジスタ信号E1
6,E17の2ビットデータで許容状態を作り出すAN
Dゲート134,145に対する入力状態が異なる。即
ち、選択回路120にあっては、処理装置10−2をマ
スター装置とした場合の装置番号#2の2ビットレジス
タ信号(10)で出力を1とするように、レジスタ信号
E16を反転入力としている。
【0097】また選択回路144は、処理装置10−3
をマスター装置としたときの装置番号#3に対応した2
ビットデータ(11)で出力1となるように、ANDゲ
ート145にレジスタ信号E16,E17を直接入力し
ている。最終段には、選択回路118,120,144
の各出力のORをとる4つのORゲート154,15
6,158,160が設けられる。ORゲート154,
156,158,160の出力信号E18,E19,E
20,E21は故障箇所の判定信号であり、判定信号E
18がオンすると処理装置10−1の故障を示す。判定
信号E19がオンすると処理装置10−2の故障を示
し、判定信号E20がオンすると処理装置10−3の故
障を示し、更に判定信号E21がオンするとバス12の
故障を示す。
【0098】図9は、マスター処理装置を装置番号#1
の処理装置10−1としたときの図8の実施例における
故障判定内容である。図9において、○印が、処理装置
10−1〜10−3が正常でそれぞれのバス情報故障検
出信号E13,E14,E15がオフとなって故障検出
なしの場合である。また×印が、処理装置10−1〜1
0−3のバス情報故障検出信号がオンとなって故障検出
ありの場合である。
【0099】まずモード1にあっては、処理装置10−
1〜10−3のいずれにおいても故障検出が行われてお
らず、この場合の故障処理装置の判定結果は、全処理装
置が正常となる。モード2は、スレーブ処理装置として
の処理装置10−3が故障した場合である。モード3
は、スレーブ処理装置としての処理装置10−2が故障
した場合である。
【0100】モード4は、マスター処理装置としての処
理装置10−1が正常でスレーブ処理装置としての処理
装置10−2,10−3の両方で故障が検出された場合
である。この場合には、2台のスレーブ処理装置として
の処理装置10−2,10−3が故障ではなく、マスタ
ー処理装置としての処理装置10−1に故障があるもの
と判定される。モード5は、処理装置10−1が故障し
た場合である。
【0101】モード6は、マスター処理装置としての処
理装置10−1と2台のスレーブ処理装置の内の処理装
置10−3が故障を検出した場合である。この場合は二
重故障ということができる。モード7も、マスター処理
装置としての処理装置10−1と2台のスレーブ処理装
置の内の処理装置10−2が故障を検出した場合であ
り、この場合にも、いわゆる二重故障と判定する。
【0102】モード8は処理装置10−1〜10−3の
全てが故障を検出した場合であり、この場合には、処理
装置10−1〜10−3の故障ではなくバス12の故障
と判定される。図8の#1用故障判定回路100は、図
9におけるモード4,5、モード3、モード2およびモ
ード8における、それぞれの故障箇所の判定を論理的に
行う。まずANDゲート106にはバス情報故障検出信
号E13,E14,E15の3つが入力され、その内、
処理装置10−1の故障検出を示す信号E13が反転入
力となっている。このため、(E13,E14,E1
5)=(011)となるモード4でANDゲート106
の出力はオンとなる。
【0103】ANDゲート108は、処理装置10−1
の故障検出信号E13を入力すると共に、処理装置10
−2の故障検出信号E14を反転入力している。このた
め、(E13,E14)=(10)となったときAND
ゲート108の出力がオンする。これは図9のモード5
における処理装置10−1,10−2の故障検出状態を
判定している。このとき処理装置10−3の故障検出状
態は無視し、回路構成を簡略化している。
【0104】ORゲート110は、図9のモード4とモ
ード5はいずれも処理装置10−1の故障であることか
ら両者のORをとり、選択回路118およびORゲート
154を介して、処理装置10−1が故障箇所であるこ
とを示す判定信号E18をオンとしている。ANDゲー
ト112は、処理装置10−2の故障検出信号E14を
入力すると共に、処理装置10−3の故障検出信号を反
転入力する。このため、(E14,E15)=(10)
のときANDゲート112の出力がオンとなる。これは
図9のモード3の処理装置10−2が故障した場合であ
り、したがって選択回路118およびOR回路156を
介して判定信号E19がオンとなり、モード3の故障判
定結果、即ち処理装置10−2が故障箇所であることを
示す。
【0105】ANDゲート114は、処理装置10−2
の故障検出信号E14を反転入力し、処理装置10−3
の故障検出信号E15をそのまま入力する。このため、
(E14,E15)=(01)のときANDゲート11
4の出力がオンになる。これは図9のモード2における
処理装置10−3が故障した場合であり、選択回路11
8およびORゲート158を介して判定信号E20がオ
ンとなり、モード2の処理装置10−3が故障箇所であ
ることを示す。
【0106】更にANDゲート116は、3つの故障検
出信号E13,E14,E15のANDをとっており、
これは図9のモード8の処理装置10−1〜10−3の
全てが故障を検出した場合であり、選択回路118およ
びORゲート160を介して判定信号E21をオンし、
これによってバス12の故障を示すことになる。図8の
#2用故障判定回路102が有効となるのは、処理装置
10−2をマスター処理装置とし残り2つの処理装置1
0−1,10−3をスレーブ処理装置とした場合であ
る。このとき判定条件は、図9におけるマスター処理装
置を処理装置10−2とし、第1のスレーブ処理装置を
処理装置10−3とし、第2のスレーブ処理装置を処理
装置10−1とすればよい。
【0107】同様に、#3用故障判定回路104が有効
となるのは、処理装置10−3をマスター処理装置とし
た場合である。この場合の判定条件は、図9のマスター
処理装置を処理装置10−3とし、第1のスレーブ処理
装置を処理装置10−1とし、第2のスレーブ処理装置
を処理装置10−2とすればよい。 7.故障発生時の各種資源の更新抑止 (1)装置構成 図10は、TMRユニット10の各処理装置10−1〜
10−3で故障が検出された場合に、故障が発生したサ
イクルの情報による装置内部の各資源の更新を抑止する
ための実施例である。図10の実施例は、図6の故障検
出の実施例に加え、処理装置10−1に代表して示すよ
うに、更新抑止の対象となる内部回路の一部162、内
部制御回路164、バス12からのデータを保持するた
めのFF166を新たに示している。
【0108】ここで図10の実施例は図6の実施例によ
る故障検出を例にとっているが、これ以外の図2,図
4,図5に示した故障検出についても同様に適用でき、
この場合には、バス情報を保持するためのFFの段数が
必要に応じて変更されることになる。 (2)バス情報の保持 図6の実施例で詳細に説明したように、処理装置10−
1でバス情報の故障が検出されると、バス情報故障通知
信号生成回路94からバス情報故障通知信号E16が出
力される。
【0109】一方、バス12から入力された情報は、バ
ス用トライステート回路24に続いて設けられたFF5
8と次の内部回路の一部分162に至る経路に設けたF
F166の2つにより、2サイクルに亘り順次保持され
る。FF166は、バス情報故障通知信号作成回路94
におけるバス情報故障通知信号E16の生成とバス12
からの情報のタイミングを合わせるために設けている。
【0110】ここでFF58に保持されたバス情報をD
2、次のFF166に保持されたバス情報をD2−1と
する。FF166に保持されたバス情報D2−1は、内
部回路の一部分162に送られる。 (3)各種資源の更新抑止 ここで、更新抑止の対象となる資源としてTMRユニッ
ト10以外の処理装置からリードしてきたデータにより
更新される内部回路のレジスタを例にとって、故障発生
時の更新抑止を説明する。
【0111】図11は図10の内部回路の一部分162
の一例を示す。この内部回路の一部分はFFを用いたレ
ジスタ176を有し、レジスタ176のデータ入力側に
ANDゲート168,170,172とORゲート17
4を用いたマルチプレクサ回路を設けている。またレジ
スタ176はイネーブル端子180を有し、図10のバ
ス情報故障通知信号E16をインバータ178を介して
入力している。
【0112】レジスタ176を更新するためにTMRユ
ニット10以外の処理装置からデータをリードした場
合、バス12上のデータは、2サイクル後にバスデータ
D2−1として、レジスタ176に対する入力マルチプ
レクサ回路のANDゲート168に入力する。ANDゲ
ート168には図10の内部制御回路164からバス選
択信号E22が入力しており、バス12からのデータD
2−1の入力と同時にバス選択信号E22がオンにな
る。このとき、他のANDゲート170,172に対す
る選択信号はオフとなっている。
【0113】バス選択信号E22のオンにより入力マル
チプレクサ回路のANDゲート168より出力されたデ
ータD2−1は、ORゲート174を介してレジスタ1
76に入力される。通常時にあっては、バス情報故障通
知信号E16がオフにあり、レジスタ176はイネーブ
ル状態にあるため、バス12上のデータが2サイクル後
にレジスタ176にセットされる。
【0114】しかしながら、バス情報の故障が検出され
た場合には、バス情報故障通知信号E16が2サイクル
後にオンとなるため、2サイクル後のタイミングでイン
バータ178による反転信号を受けたイネーブル端子1
80はオフとなり、レジスタ176に対するデータD2
−1の書込みは抑止される。このため、バス情報の故障
発生時のデータによるレジスタ176の内容の破壊を抑
止することができる。
【0115】この実施例における各種資源の更新抑止
は、レジスタの制御を例にとっているが、他の内部回路
についても必要に応じて同様の制御を行い、故障発生時
のバス情報による内部資源の破壊を抑止することができ
る。また図11の内部回路については、故障検出時の抑
止サイクル期間は1サイクルとなるが、必要に応じて連
続して必要なサイクル間、抑止するようにしてもよい。 8.故障処理装置の切り離し (1)装置構成 図12は、故障発生時に故障箇所がバスを介して他の処
理装置に悪影響を及ぼさないようにTMRユニット10
から切り離すための構成を備えた実施例である。
【0116】図12において、処理装置10−1に代表
して示すTMRユニット10を構成する処理装置は、故
障検出については図7と同じであるが、図7のバス情報
故障判定回路98に代えてバス情報故障判定回路182
を設け、また図7のバス出力イネーブル生成回路34に
代えてバス出力イネーブル生成回路184を設けてい
る。
【0117】バス情報故障判定回路182に対しては、
図7の実施例と同様、処理装置10−1,10−2,1
0−3ごとのバス情報故障検出信号のFF88,90,
92による保持信号E13,E14,E15が入力され
る。また装置番号デコード回路82でデコードされた外
部からの装置番号#1のデコードによるデコード信号E
11−1,E11−2,E11−3が入力される。
【0118】処理装置10−1にあっては、装置番号#
1を入力していることから、装置番号デコード回路82
より出力される3つのデコード信号の内のデコード信号
E11−1のみがオンとなっている。更にバス情報故障
判定回路182には、マスター情報レジスタ14に保持
されている現在のマスター処理装置の装置番号#1を示
すマスター装置番号信号E0も入力している。このマス
ター装置番号信号E0は2ビットの信号E16,E17
からなり、装置番号#1の場合は(E17,E16)=
(01)となっている。
【0119】バス情報故障判定回路182は、入力され
たバス情報故障検出信号E13,E14,E15、装置
番号のデコード信号E11−1〜E11−3、およびマ
スター装置番号信号E0(E16,E17の2ビット信
号)に基づき、故障した処理装置が自分自身か否かの判
定を行い、自分自身の故障と判定した場合には故障処理
装置判定信号E24をオンにする。
【0120】バス出力イネーブル生成回路184は、正
常状態でオンされるバス出力許可フラグをもっている。
バス出力許可フラグがオンで、且つマスター情報一致判
定回路16からの自マスター信号E1がオンしている状
態で、出力情報生成回路22による出力情報D1の生成
に同期して出力タイミング生成回路32で生成されたバ
ス出力信号E2がオンになると、バス用トライステート
回路24の出力ドライバ26に対するイネーブル信号E
3をオンする。 (2)故障処理装置の判定 図13は図12のバス情報故障判定回路182の実施例
である。
【0121】図13において、バス情報故障判定回路1
82は、処理装置10−1をマスター装置とした場合に
故障箇所を判定する#1用故障判定回路186、処理装
置10−2をマスター装置としたときの故障箇所を判定
する#2用故障判定回路188、および処理装置10−
2をマスター装置としたときの故障箇所を判定する#3
用故障判定回路190を備える。
【0122】#1用、#2用、#3用の各故障判定回路
186,188,190は、#1用故障判定回路186
に代表して示すように、同じ回路構成をもつ。即ち、4
つのANDゲート106,108,112,114とO
Rゲート110を備える。この回路は、図7のバス情報
故障判定回路98の実施例を示した図8の#1用故障判
定回路100のANDゲート116を除いた回路であ
る。
【0123】#1用、#2用、#3用故障判定回路18
6,188,190に続いては、選択回路192,19
4,196が設けられる。この選択回路192,19
4,196も、図8の選択回路118,120,122
におけるANDゲート132,142,152を除いた
と同じ回路である。続いてORゲート154,156,
158が設けられ、これは図8の最終段のORゲート1
60を除いたと同じ回路である。更に、ANDゲート1
98,200,202とORゲート204の出力回路部
が設けられる。
【0124】図13の#1用故障判定回路186は、処
理装置10−1,10−2,10−3の故障検出信号E
13,E14,E15を入力しており、図9に示した表
に従った故障処理装置の判定を論理的に行う。即ちAN
Dゲート106は、図9のモード4におけるマスター処
理装置としての処理装置10−1が正常で、スレーブ処
理装置としての2台の処理装置10−2,10−3で故
障検出となった場合に、出力をオンし、マスター処理装
置としての処理装置10−1の故障を判定する。
【0125】またANDゲート108は、図9のモード
5におけるマスター処理装置としての処理装置10−1
が故障しスレーブ処理装置としての2台の処理装置10
−2,10−3が正常なときに出力がオンし、処理装置
10−1の故障を判定する。ANDゲート106,10
8のいずれの出力がオンとなった場合にも処理装置10
−1の故障であることから、ORゲート110でとりま
とめて出力する。
【0126】ANDゲート112は、図9のモード3の
スレーブ処理装置としての処理装置10−2が故障のと
き出力がオンし、処理装置10−2の故障を判定する。
更にANDゲート114は図9のモード2であり、スレ
ーブ処理装置としての処理装置10−3が故障のとき出
力がオンし、処理装置10−3の故障を判定する。続い
て設けられた選択回路192は、マスター情報レジスタ
14にセットされたマスター装置番号#1に対応した2
ビットの信号E16,E17の組合せによる(E17,
E16)=(01)によってANDゲート124の出力
をオンし、3つのANDゲート126,128,130
を許容状態として#1用故障判定回路186からの判定
信号を出力させる。
【0127】このため、ORゲート154の出力信号E
18がオンするとマスター処理装置としての処理装置1
0−1の故障を示し、ORゲート156の出力信号E1
9がオンするとスレーブ処理装置としての処理装置10
−2の故障を示し、更にORゲート158の出力信号E
20がオンするとスレーブ処理装置としての処理装置1
0−3の故障を示すことになる。
【0128】次のANDゲート198,200,202
の各々には、図12の装置番号デコード回路82からの
デコード信号E11−1,E11−2,E11−3が入
力されている。処理装置10−1にあっては、外部から
装置番号#1がセットされているため、デコード信号E
11−1のみがオンとなり、ORゲート154からの処
理装置10−1の故障を示す信号E18のみが選択さ
れ、ORゲート204を介して故障処理装置判定信号E
24として、図12のバス出力イネーブル生成回路18
4に出力される。
【0129】マスター処理装置が処理装置10−2とな
った場合には、#2用故障判定回路188、選択回路1
94、ORゲート156、ANDゲート200の系統が
有効となり、マスター処理装置としての処理装置10−
2において自装置の故障を検出した際に故障処理装置判
定信号E24がオンとなる。更に、処理装置10−3が
マスター処理装置となった場合には、#3用故障判定回
路190、選択回路196、ORゲート158、AND
ゲート202の系統が有効となり、同様に処理装置10
−3の故障検出で故障処理装置判定信号E24をオンす
るようになる。 (3)バス情報の出力抑止 図14は、図12のバス出力イネーブル生成回路184
の実施例である。このバス出力イネーブル生成回路18
4は、フラグレジスタ204、フラグレジスタ204に
対するデータ入力用のANDゲート206、フラグレジ
スタ204のライトイネーブルとリセットを制御するO
Rゲート202、更に出力用のANDゲート208で構
成される。
【0130】フラグレジスタ204にはバス出力許可フ
ラグが用意されている。このバス出力許可フラグは、処
理装置の運用開始時にフラグをオンするためのセットデ
ータD3とソフトセット指示信号E25をソフトウェア
の処理で供給することで、初期値としてバス出力許可フ
ラグ1がセットされ、以後、通常動作時はフラグ1が保
持されている。
【0131】図13のバス情報故障判定回路182によ
り自装置による故障検出に基づき故障処理装置判定信号
E24がオンになると、ORゲート202を介してフラ
グレジスタ204にリセットが掛かり、バス出力許可フ
ラグが0にリセットされる。フラグレジスタ204にバ
ス出力許可フラグ1がセットされて保持されているとき
には、ANDゲート208に対するフラグ信号E26は
オンしており、またマスター処理装置の場合には図12
のマスター情報一致判定回路16より出力される自マス
タ信号E1もオンになっている。このため図12の出力
タイミング生成回路32からのバス出力信号E2がオン
になったとき、図14のANDゲート208の出力する
イネーブル信号E3がオンとなり、バス用トライステー
ト回路24に設けている出力ドライバ26をイネーブル
状態として、出力情報生成回路22からの出力情報をバ
ス12に送出することができる。
【0132】これに対し、自装置の故障検出に基づく故
障処理装置判定信号E24のオンでフラグレジスタ20
4のフラグが0にリセットされると、フラグ信号E26
もオフとなってANDゲート208を禁止状態とし、イ
ネーブル信号E3をオフに固定する。これによって故障
を起こした処理装置からバス12に対する出力情報の送
出を禁止し、バス12から切り離す。このように故障を
起こした処理装置をバス12から切り離すことで、他の
処理装置に悪影響を及ぼすことを防止できる。 9.マスター処理装置の再決定 (1)装置構成 図15は、現在マスター処理装置となっている処理装置
が故障発生によりバスから切り離された場合に、残され
ている正常なTMRユニット10を構成する処理装置間
で新たにマスター処理装置を決定して処理を継続するた
めのマスター処理装置の再決定の実施例である。
【0133】図15において、TMRユニット10を構
成する処理装置10−1,10−2,10−3は、現在
マスター処理装置となっている処理装置10−1に代表
して示す構成をもつ。この処理装置10−1の構成は、
図7の実施例に設けているバス情報故障判定回路98の
代わりにマスター処理装置故障判定回路212を設け、
更に図7のマスター情報レジスタ14の代わりに別の構
成をもつマスター情報レジスタ214を設けたことを特
徴とする。それ以外の構成は図7の実施例と同じであ
る。 (2)マスター処理装置の故障判定 処理装置10−1には、マスター処理装置の故障を判定
するためマスター処理装置故障判定回路212が設けら
れる。マスター処理装置故障判定回路212には、一致
検出用トライステート回路76より得られた処理装置1
0−1〜10−3の各故障検出結果に基づく信号がFF
88,90,92で保持され、故障検出信号E13,E
14,E15として入力している。
【0134】またマスター情報レジスタ214に保持さ
れている現在のマスター処理装置番号、即ち処理装置1
0−1の装置番号#1を示すマスター番号信号E0も入
力されている。このマスター番号信号E0は信号E1
7,E16の2ビットの信号であり、マスター装置番号
#1,#2,#3に対し2ビット信号(E17,E1
6)は(01)(10)(11)のように設定される。
【0135】マスター処理装置故障判定回路212は、
入力された故障検出信号E13,E14,E15および
マスター番号信号E0(E17,E16の2ビットデー
タ)に基づいて、マスター処理装置の故障判定を行う。
図16は図15のマスター処理装置故障判定回路212
の実施例である。図16において、処理装置10−1を
マスター処理装置としたときの故障判定は#1用故障判
定回路216で行われる。処理装置10−2をマスター
処理装置としたときの故障判定は#2用故障判定回路2
18で行われる。更に、処理装置10−3をマスター処
理装置としたときの故障判定は#3用故障判定回路22
0で行われる。
【0136】#1用故障判定回路216はANDゲート
106,108およびORゲート110を備える。#1
用故障判定回路216の判定条件は、図9の表に従う。
即ち、図9のモード4とモード5のパターンにおける故
障検出信号E13,E14,E15の入力に基づき、O
Rゲート110の出力がオンになる。即ち、モード4は
マスター処理装置としての処理装置10−1が正常でス
レーブ処理装置としての2台の処理装置10−2,10
−3を検出した故障の場合であり、この場合にはマスタ
ー処理装置としての処理装置10−1の故障と判定され
る。
【0137】このとき故障検出信号E13はオフ、故障
検出信号E14,E15の2つがオンとなる。したがっ
て、ANDゲート106の出力がオンになる。図9のモ
ード5はANDゲート108で判定される。モード5は
マスター処理装置としての処理装置10−1が故障でス
レーブ処理装置としての処理装置10−2が正常な場合
であり、この場合にはマスター処理装置としての処理装
置10−1の故障と判定される。このとき故障検出信号
E13がオン、故障検出信号E14がオフであることか
ら、ANDゲート108の出力がオンになる。
【0138】マスター処理装置が処理装置10−2,1
0−3である場合の#2用故障判定回路218と#3用
故障判定回路220については、回路構成は同じである
が故障検出信号E13,E14,E15の入力位置が異
なっている。#2用故障判定回路218はマスター処理
装置にセットされている処理装置10−2の故障を検出
して出力をオンする。また#3用故障判定回路220は
マスター処理装置に処理装置10−3が設定されている
場合に故障を検出して出力をオンするようになる。
【0139】#1,#2,#3用故障判定回路216,
218,220に続いては、3入力のANDゲート26
0,262,264が設けられる。ANDゲート260
は図8の選択回路118に設けているANDゲート12
4,126を1つにしたものである。ANDゲート26
2も図8の選択回路120に設けているANDゲート1
34,136を1つにしたものである。同様に、AND
ゲート264も図8の選択回路122に設けているAN
Dゲート145,146を1つにしたものである。
【0140】ANDゲート260は、図15のマスター
情報レジスタ214にマスター処理装置として処理装置
10−1の装置番号#1に対応する2ビットデータ(0
1)がセットされて信号E17がオフ、E16がオンの
とき許容状態となり、#1用故障判定回路216の出力
をマスター処理装置故障判定信号E27として出力す
る。
【0141】またANDゲート262は、図15のマス
ター情報レジスタ214にマスター処理装置を処理装置
10−2としたときの2ビットデータ(10)がセット
されているときの信号E17のオン、信号E16のオフ
で許容状態となり、#2用故障判定回路218によるマ
スター処理装置としての処理装置10−2の判定に基づ
く故障判定信号E28を出力する。
【0142】更にANDゲート264は、図15のマス
ター情報レジスタ214にマスター処理装置を処理装置
10−3としたときの装置番号#3に応じてセットされ
た2ビットデータ(11)による信号E17,E16の
両方のオンで許容状態となり、#3用故障判定回路22
0からのマスター処理装置として処理装置10−3の故
障判定信号E29を出力する。
【0143】ANDゲート260,262または264
からのマスター処理装置に関する故障判定信号は、OR
ゲート234でとりまとめられ、マスター処理装置故障
判定信号E30として、現在、マスター処理装置の設定
が行われている処理装置においてのみ出力され、図15
のマスター情報レジスタ214に供給される。 (3)マスター処理装置番号の更新 図15のマスター情報レジスタ214には、処理装置の
運用開始時にソフトウェアからの指示により初期値とし
てのマスター処理装置番号、例えば処理装置番号#1に
対応した2ビットデータ(01)がセットされる。この
状態で、マスター処理装置故障判定回路212におい
て、現在、マスター処理装置となっている処理装置10
−1の故障が判定され、マスター処理装置故障判定信号
E30がオンしたとする。
【0144】この場合、マスター情報レジスタ214は
内蔵した2ビットレジスタを1ビットインクリメントし
て、新マスター処理装置番号への更新を行う。例えば、
現在、マスター処理装置番号#1であれば、故障判定に
より新マスター処理装置番号#2に更新される。図17
は図15のマスター情報レジスタ214の実施例であ
る。図17のマスター情報レジスタ214には、FF2
38,240を備えた2ビットレジスタ236が設けら
れる。2ビットレジスタ236はFF238で1ビット
目(下位ビット)を生成し、FF240で2ビット目
(上位ビット)を生成し、それぞれFF238,240
の出力は2ビット信号E16,E17となる。
【0145】2ビットレジスタ236の1ビット目のF
F238の入力段にはANDゲート242,244およ
びORゲート246を備えた入力マルチプレクサ回路が
設けられる。また、2ビット目のFF240の入力段に
も、ANDゲート248,250、EX−ORゲート2
52およびORゲート254を備えた入力マルチプレク
サ回路が設けられる。
【0146】更に、2ビットレジスタ236に設けたF
F238,240のライトイネーブル端子に対しては、
ORゲート256よりソフトセット指示信号E31また
は図15のマスター処理装置故障判定回路212からの
マスター処理装置故障判定信号E30が与えられてい
る。更に、ANDゲート242,248の一方の入力に
は、ソフトウェアによるセットデータD4が与えられ
る。
【0147】電源投入直後の初期状態にあっては、2ビ
ットレジスタ236のFF238,240は共にリセッ
トされて零出力となっている。この状態でソフトウェア
によりセットデータD4を01とし且つソフトセット指
示信号E31をオンすると、2ビットレジスタ236の
1ビット目のFF238に、セットデータD4に従って
1が書き込まれる。
【0148】2ビット目のFF240には、セットデー
タD4に従って0が書き込まれる。したがって初期状態
にあっては、2ビットレジスタ236の2ビット信号E
17,E16は(01)であり、10進でマスター装置
番号#1を表わしている。この2ビットレジスタ236
のFF238に1がセットされFF240に0がセット
された最初の処理装置10−1をマスター処理装置にセ
ットした状態で、FF238の帰還出力とFF240の
帰還出力によりEX−OR252の出力が1となり、F
F240の入力ポートは1にセットされている。これに
対し、FF238の入力ポートは0にセットされてい
る。
【0149】このような処理装置10−1の装置番号#
1を2ビットレジスタ236にセットした2ビットデー
タ(01)の保持状態で、マスター処理装置にセットさ
れている処理装置10−1で故障が判定され、故障判定
信号E30がオンになったとする。この故障判定信号E
30は、ORゲート256を介して2ビットレジスタ2
36におけるFF238,240のライトイネーブル端
子をオンする。
【0150】FF238は入力が0であることから1か
ら0にセットされ、またFF240は入力が1であるこ
とから0から1にセットされ、2ビット信号E17,E
16は(10)に変化し、この2ビットデータ(10)
は処理装置10−2を示す10進の装置番号#2を表わ
す。このようにして、現在、マスター処理装置となって
いる処理装置での故障判定信号に基づき、マスター情報
レジスタ214に新たなマスター処理装置を示す処理装
置10−2の装置番号#2への更新が行われる。
【0151】図18は図15のマスター情報レジスタ2
14によるマスター処理装置番号の更新をとりまとめた
ものであり、装置番号#1の場合には#2に更新され、
#2の場合は#3に更新され、更に#3の場合は#1に
更新される。 10.保持情報の再転送 (1)装置構成 図19は、故障が発生して必要があれば新たなマスター
処理装置の再決定が行われた後に、TMRユニット10
以外の処理装置を含む各処理装置に保持してある故障発
生以降に各装置が生成した各種の情報を、新たに再構築
した処理装置系によってバスに再出力するための実施例
である。
【0152】このような故障検出後の再構成後の保持情
報の再転送により、縮退したTMR構成によって故障発
生処理からのリトライを行うことで信頼性を保証でき
る。図19の実施例は、TMRユニット10を構成する
処理装置10−1〜10−3の中の処理装置10−1に
代表して示すように、処理装置10−1は図15の実施
例のマスター処理装置故障判定回路212の代わりにバ
ス情報故障判定回路300を設け、また出力データ生成
回路22側に新たに再転送制御回路302を設けてい
る。 (2)処理装置の故障判定 図15の実施例で説明したと同様、TMRユニット10
を構成する処理装置10−1〜10−3の各々で生成さ
れた故障検出信号は、一致検出用トライステート76に
入力され、FF88,90,92を経由し、バス情報故
障判定回路300に対し処理装置10−1〜10−3に
対応した故障検出信号E13,E14,E15として入
力される。
【0153】バス情報故障判定回路300には更に、マ
スター情報用レジスタ214にセットされたマスター処
理装置番号例えばマスター処理装置番号#1に対応した
2ビットレジスタ情報(01)を示すマスター番号信号
E0も入力する。このマスター番号信号E0は、2ビッ
トの信号E16,E17で構成される。バス情報故障判
定回路300は、FF88,90,92に保持された故
障検出信号E13,E14,E15およびマスター情報
レジスタ214からのマスター番号信号E0の入力に基
づき、マスター処理装置の故障を示す故障処理装置判定
信号E30を、新マスター処理装置を決定するためにマ
スター情報レジスタ214に必要があれば出力する。ま
た再転送制御回路302に対し、故障検出時に保持して
いる出力情報をバス12に再転送するための制御信号
(3サイクルオン信号)E32を出力する。
【0154】図20は図19のバス情報故障判定回路3
00の実施例である。図20においては、#1用故障判
定回路216、#2用故障判定回路218および#3用
故障判定回路220が設けられる。これら#1用,#2
用および#3用故障判定回路216,218,220
は、図15のマスター処理装置故障判定回路212の実
施例を示した図16と同じものである。
【0155】続いて設けられたANDゲート260,2
62,264およびORゲート234よりなる回路も、
図16の回路と同じ回路である。ORゲート234の出
力は、後述する2サイクルオン信号E31´の反転信号
と共に、ANDゲート235に入力される。この回路部
によって、現在、マスター処理装置となっている処理装
置の故障発生を示す処理装置故障判定信号E30を生成
し、図19のマスター情報レジスタ214に供給して、
マスター処理装置の故障発生時、マスター処理装置番号
の更新を行わせる。このためのマスター情報レジスタ2
14としては、図17の回路が使用される。
【0156】ここで、2サイクルオン信号E31´の反
転信号を、ANDゲート235に入力しているのは、一
度、バス情報による故障が検出された場合、故障処理装
置をTMRユニット10の構成から離脱させるまでの
間、同じ処理装置による故障が連続して発生する可能性
があるため、連続故障の検出を抑止している。この場
合、他の原因により連続して故障が発生した場合には、
再転送制御回路302による現在の故障に基づく再転送
時に再度故障検出が行われることになる。
【0157】故障検出信号E13,E14,E15は、
ORゲート271でとりまとめられ、その出力が故障検
出時に1サイクルの間オンとなる1サイクルオン信号E
31を生成する。ORゲート271からの故障検出時に
オンとなる1サイクルオン信号E31は後述する2サイ
クルオン信号E31´の反転信号と共にANDゲート2
72に入力される。そのANDゲート272の出力はF
F273,FF274,FF275に順次ラッチされ、
ORゲート276でFF273の出力とFF274の出
力の論理和をとることで、故障検出から2サイクルの間
オンとなる2サイクルオン信号E31´を生成する。
【0158】同様に、ORゲート277で、2サイクル
オン信号E31´と、FF275の出力の論理和をとる
ことで、故障検出から3サイクルの間オンとなる3サイ
クルオン信号E32を生成する。この3サイクルオン信
号E32は、図19の再転送制御回路302に出力され
る。 (3)再転送制御 図19の処理装置10−1に設けた再転送制御回路30
2には、出力データ生成回路22で生成されたバス12
に対する出力データD1を入力し、またバス情報故障判
定回路300からの3サイクルオン信号E32が入力さ
れている。3サイクルオン信号E32がオフとなってい
る通常時にあっては、出力情報D1は再転送制御回路3
02を通過して、バス用トライステート回路24より外
部のバス12に転送される。
【0159】故障発生時は、1サイクル目から3サイク
ル目までの出力データD1を再転送制御回路302内に
保持し、4サイクル目からオンとなるバス情報故障判定
回路300からの2サイクルオン信号E32により保持
している出力情報D1のバス12に対する再転送を行
う。図21は図19の再転送制御回路302の実施例で
ある。再転送制御回路302はFF278,279,2
80を直列接続し、最終段にANDゲート282,28
4およびORゲート286を用いたマルチプレクサ回路
を設けている。このマルチプレクサ回路のANDゲート
284には、故障検出に基づく3サイクルオン信号E3
2が直接入力され、ANDゲート282側には反転入力
されている。
【0160】通常時、3サイクルオン信号E32はオフ
であることから、ANDゲート284が禁止状態、AN
Dゲート282が許容状態にあり、入力した出力情報D
1はANDゲート282およびORゲート286を通っ
て出力情報D1−1としてそのまま出力される。一方、
入力データD1は1サイクル目でFF278に保持さ
れ、2サイクル目でFF279に保持され、3サイクル
目でFF28に保持されている。このため再転送制御回
路302には、バス12に出力した情報を含む3サイク
ル分の出力情報がリアルタイムで保持されることにな
る。
【0161】バス情報の故障が発生すると、2サイクル
後でバス情報故障判定回路300より故障処理装置判定
信号E30がマスター情報レジスタ214に出力され
て、マスター処理装置が故障した場合は、新マスター処
理装置番号の更新による新たなマスター装置への切替え
が行われる。続いて、故障発生から3サイクル後にバス
情報故障判定回路300からの3サイクルオン信号E3
2がオンとなる。
【0162】これにより図21の再転送制御回路302
のANDゲート284が許容状態となり、故障検出から
FF280,279,278に順次保持している3サイ
クル分の出力情報をバス12に再度転送し、必要がある
場合は、新マスター装置に切り替えた新たなTMRユニ
ット10の構成、即ち2台の処理装置例えば処理装置1
0−2,10−3でTMRユニット10を構成し、処理
装置10−2をマスター処理装置にした状態での再転送
によるリトライを行うようになる。
【0163】この場合、再転送制御回路302の機能に
より保持している3サイクル分の出力情報を転送するの
は、新たなマスター処理装置となった処理装置10−2
から行われることになる。勿論、故障を起こした、それ
までマスター処理装置となっていた10−1は、バス1
2から切り離されている。尚、スレーブ処理装置が故障
した場合は、故障したスレーブ処理装置をバス12から
切り離し、従来からのマスター処理装置及び、残ったス
レーブ処理装置でTMRユニット10を構成し、マスタ
ー処理装置によるリトライを行うようにする。
【0164】また、図19の実施例にあっては、TMR
ユニット10を構成する処理装置10−1〜10−3に
おける故障検出時の再転送制御を説明しているが、故障
検出に基づくマスター処理装置の切替えまでにTMRユ
ニット10以外の処理装置がバス12に情報を出力して
いた場合には、他の処理装置が装置内部に保持している
保持データを再度該当するサイクルでバス12に出力す
るようになる。
【0165】これは、TMRユニット10の処理装置1
0−1〜10−3を含めてバス12に情報を出力する機
能をもった全ての処理装置は装置内部に再転送用の送出
情報保持回路を備えていることによる。またバス12か
ら情報を受信する機能を有する全ての処理装置は、装置
内部にTMRユニット10を構成する処理装置10−1
〜10−3のいずれか、またはバス12で故障が発生し
たことを検出する機能と、故障を検出した場合は故障デ
ータによる内部資源の更新を抑止する機能を備えてい
る。
【0166】以上のような故障検出時に必要により新マ
スター処理装置への切替えが済んだ後の保持情報の再転
送により、正常なタイミング時にバス情報に誤りがある
場合は勿論のこと、誤ったタイミングでバス情報を送出
した場合、例えばTMRユニット10以外の処理装置が
バス情報を送出しているタイミングに、誤ってTMRユ
ニット10を構成している処理装置即ちマスター処理装
置がバス情報を出力した場合、本来のバス情報を送出す
べき処理装置が正常なバス情報を再送出することによ
り、最終的に、正しいバス情報の転送を正常終了するこ
とができる。 11.再転送指示信号の生成 (1)装置構成 図22は、バスを含むTMRユニット10を構成する処
理装置10−1〜10−3で故障が発生した場合に、マ
スター処理装置からスレーブ処理装置、更にはTMRユ
ニット10以外の他の処理装置に対し再転送指示を示す
信号を送出して、故障発生後の新たなTMRユニットの
縮退構成でバスに情報を再出力するための実施例であ
る。
【0167】図22の実施例は、TMRユニット10を
構成する処理装置10−1〜10−3につき、現在マス
ター処理装置にセットされている処理装置10−1に代
表して示す構成をもつ。処理装置10−1におけるバス
12の故障を含む各処理装置10−1〜10−3の故障
検出については図19の実施例と同じであるが、再転送
指示のための信号を生成するため、図19の実施例にお
けるバス情報故障判定回路300および再転送制御回路
302が若干構成の異なるバス情報故障判定回路305
および再転送制御回路312となっている。
【0168】更にTMRユニット10を構成する他の処
理装置10−2,10−3、更にTMRユニット10以
外の他の処理装置に対し、再転送指示用の信号を送出す
るため、新たに再転送信号用トライステート回路306
を設けている。 (2)処理装置の故障判定 処理装置10−1に設けた一致検出用トライステート7
6は、図19の実施例と同様、各処理装置10−1〜1
0−3で生成された故障検出結果に基づく信号を受けて
故障検出信号E13,E14,E15をFF88,FF
90,FF92経由でバス情報故障判定回路305に入
力する。またバス情報故障判定回路305には、マスタ
ー情報レジスタ214にセットされた現在のマスター処
理装置を示す2ビットデータでなるマスター番号信号E
0が入力される。
【0169】このマスター番号信号E0は、この場合、
処理装置10−1をマスター処理装置としていることか
ら、装置番号#1に対応した2ビットデータ(01)の
入力となる。この2ビットデータは信号E17,E16
で表わされ、(E17,E16)=(01)となってい
る。図23は図22のバス情報故障判定回路305の実
施例である。故障検出信号E13,E14,E15はO
Rゲート271に入力される。ORゲート271の出力
は、後述する2サイクルオン信号E31´の反転と共
に、ANDゲート272に入力され、TMRユニット1
0を構成する処理装置10−1〜10−3のいずれかで
故障が発生したことを示すTMR系故障検出信号E34
を生成する。
【0170】このTMR系故障検出信号E34は、図2
2の再転送信号用トライステート回路306に出力され
る。またANDゲート272の出力はFF273,FF
274に順次保持され、FF273の出力とFF724
の出力をORゲート276に入力してORをとること
で、故障発生2サイクル後から2サイクルの間オンする
2サイクルオン信号E31´を生成する。
【0171】ANDゲート272の入力に、2サイクル
オン信号E31´の反転信号を入力するのは、一度、バ
ス情報の故障が検出された場合、故障した処理装置をT
MRユニット10から離脱させるまでは故障が連続して
発生する可能性がある。したがって、連続故障の検出を
抑止するため、2サイクルオン信号E32の反転によ
り、TMR系故障検出信号E34をオフしている。
【0172】選択回路216,218,220、マスタ
ー情報レジスタ214からのマスター処理装置の装置番
号#1に対応した2ビットデータを与える信号E17,
E16で制御されるANDゲート260,262,26
4、ORゲート234、更にANDゲート235でなる
回路が設けられる。この回路部は、図19のバス情報故
障判定回路300の実施例である図20の出力段の回路
と同じものである。この出力段の回路によって、TMR
ユニット10における現在マスター処理装置となってい
る処理装置に故障が発生したことを示す故障処理装置判
定信号E30が、図22のマスター情報レジスタ214
に出力される。 マスター情報レジスタ214は故障処
理装置判定信号E30がオンすると、現在セットしてい
るマスター処理装置の装置番号の更新を行う。具体的に
は、図17に示した回路構成をもち、図18の表に従っ
たマスター処理装置の装置番号の更新を行う。 (3)再転送指示信号の出力 バス情報故障判定回路305で生成されたTMR系故障
検出信号E34は、再転送信号用トライステート回路3
06に入力されている。再転送信号用トライステート回
路306には更に、マスター情報一致判定回路16で生
成した自マスタ信号E1が入力される。ここで処理装置
10−1はマスター処理装置であることら、自マスタ信
号E1はオンしている。
【0173】再転送信号用トライステート回路306
は、再転送指示のための信号を入出力端子308−1を
介して専用の信号線310に出力する。信号線310
は、TMRユニット10を構成する他の処理装置10−
2,10−3に設けている同じく図示しない再転送信号
用トライステート回路を接続している入出力端子308
−2,208−3に接続される。更に、図示しないTM
Rユニット10以外の他の処理装置に設けている再転送
信号用トライステート回路の入出力端子に対しても、信
号線310は接続されている。
【0174】図24は再転送信号用トライステート回路
306の実施例である。再転送信号用トライステート回
路306には、イネーブル端子付きの出力ドライバ31
4と入力ドライバ316が設けられる。出力ドライバ3
14はマスター情報一致判定回路16からの自マスタ信
号E1のオンによりイネーブル状態となり、バス情報故
障判定回路305からのTMR系故障検出信号E34を
入出力端子308−1を介して信号線310に送出し、
TMRユニット10を構成する他の処理装置10−2,
10−3、更にTMRユニット10以外の他の処理装置
に再転送を指示するための信号を送る。
【0175】入力ドライバ316は、信号線310を経
由してTMRユニット10を構成する他の処理装置から
送られてきた再転送を指示するための信号を入力し、リ
トライ信号E35として図22の再転送制御回路312
に出力する。 (4)再転送制御 図22の再転送制御回路312には、再転送信号用トラ
イステート回路306で受信したTMRユニット10を
構成する他の処理装置からの再転送を指示する信号に基
づくリトライ信号E35を入力している。リトライ信号
E35がオフしている通常状態にあっては、出力情報生
成回路22で生成した出力情報D1は、そのまま再転送
制御回路312を通過し、バス用トライステート回路2
4よりバス12に送出される。リトライ信号E35がオ
ンすると、再転送制御回路312による再転送制御が行
われる。
【0176】図25は図22の再転送制御回路312の
実施例である。リトライ信号E35は、3段接続された
FF330,332,334の初段のFF330に入力
される。FF330,332,334の各出力はORゲ
ート336でとりまとめられ、3サイクルオン信号E3
6を生成する。尚、3サイクルオン信号E36は図示し
ない内部回路にも送られ、故障発生時の内部資源の更新
抑制制御に使用される。
【0177】一方、図22の出力情報生成回路22で生
成された出力情報D1は、ANDゲート324に入力さ
れると同時に、3段に縦接続したFF318,320,
322の初段のFF318に入力される。ANDゲート
324に対しては、ORゲート336からの3サイクル
オン信号E36が反転入力されている。また、3サイク
ルオン信号E36はANDゲート326に直接入力さ
れ、ANDゲート326には最終段のFF322の出力
も入力されている。
【0178】ANDゲート324,326の出力はOR
ゲート328でとりまとめられ、出力情報D1−1とし
て図22のバス用トライステート回路24に出力され
る。図26(A)〜(I)は、図25の再転送制御回路
312のタイミングチャートである。まず図26(A)
のリトライ信号E35がオンになると、図26(B)〜
(D)のように順次FF330,332,334に保持
される。このため、図26(E)のORゲート336か
ら出力される3サイクルオン信号E36は、リトライ信
号E35がオンした次のサイクルから3サイクルの間オ
ンする信号となる。
【0179】一方、故障発生時に入力したデータD1
は、図26(F)のようにFF318に保持される。こ
のとき3サイクルオン信号E36はオフしているため、
ANDゲート326は禁止状態にあり、出力情報D1を
直接出力している。FF318に保持された出力情報D
1は、図26(G)〜(H)のように、順次、FF32
0,322に保持される。そして3サイクル目にFF3
22に保持されたとき、その保持出力が許容状態にある
ANDゲート326からORゲート328を介して3サ
イクル間、順次再転送されることになる。
【0180】このように再転送制御回路312にあって
は、バス情報に故障が発生してから再転送開始までの間
に生成された出力情報が保持され、必要により新たにマ
スター処理装置となった処理装置からバス12に再度、
転送されることになる。尚、再転送開始までにTMRユ
ニット10を構成する処理装置以外の処理装置がバス1
2に情報を出力していた場合には、その処理装置が内部
に保持している保持データを再度、該当するサイクルで
バス12に出力するようになる。この機能を実現するた
め、TMRユニット10を構成する処理装置10−1〜
10−3以外の処理装置についても、全ての処理装置が
装置内部に再転送用の送出データ保持回路を備えている
ことになる。
【0181】勿論、TMRユニット10以外の処理装置
にあっても、バス12から情報を受信する機能を有する
全ての処理装置は、TMRユニット10のマスター処理
装置から送られてきた再転送を指示する信号を受けて故
障検出を認識し、内部資源の更新を抑止する機能も備え
ている。 12.生存処理装置表示フラグ (1)生存処理装置表示フラグ 図27は、TMRユニット10を構成する処理装置10
−1〜10−3の内、どの処理装置が正常に動作してい
るか、あるいは逆にどの処理装置が故障等によってTM
Rユニットから離脱しているかを示す生存処理装置表示
フラグを設けたことを特徴とする。
【0182】図27の実施例は、図6に示したTMRユ
ニット10の処理装置10−1の構成を例にとってい
る。処理装置10−1には生存処理装置表示フラグ回路
340が設けられる。生存処理装置表示フラグ回路34
0には、TMRユニット10を構成する3つの処理装置
10−1〜10−3に対応して、フラグレジスタ34
2,344,346が設けられている。
【0183】フラグレジスタ342は処理装置10−1
の生存処理装置表示フラグを有し、フラグレジスタ34
4は処理装置10−2の生存処理装置表示フラグを有
し、フラグレジスタ346は処理装置10−3の生存処
理装置表示フラグを有する。同様に、他の処理装置10
−2〜10−3についても、生存処理装置表示フラグ回
路340が設けられている。 処理装置10−1のソフ
トウェアは、必要に応じて生存処理装置表示フラグ回路
340の各フラグレジスタ342〜346をリードする
ことにより、TMRユニット10を構成する処理装置1
0−1〜10−3の稼働状態を認識することができる。 (2)生存処理装置表示フラグによる不一致検出信号の
マスク出力 図28は、TMRユニット10を構成する処理装置10
−1〜10−3について、処理装置自身が故障等により
TMRユニット10から離脱しているときに、誤ってバ
ス情報故障検出による不一致発生信号を他の処理装置に
送出しないようにした実施形態である。
【0184】図28において、生存処理装置表示フラグ
回路340は処理装置10−1〜10−3に対応したフ
ラグレジスタ342,344,346を有する。フラグ
レジスタ342〜346は、TMRユニット10におい
て装置が正常に動作している場合にはオン、故障等によ
り離脱している場合はオフとなる。フラグレジスタ34
2,344,346に続いては、ANDゲート352,
354,356が設けられる。
【0185】ANDゲート352,354,356のそ
れぞれには、装置番号デコード回路82からのデコード
信号E11−1,E11−2,E11−3が入力され、
フラグレジスタ342,344,346からのフラグ信
号E41,E42,E43との論理積をとっている。装
置番号デコード回路82は入力端子18−1からの処理
装置番号#1をデコードして、デコード信号E11−1
のみをオンにしている。このためANDゲート352の
みが許容状態となって、フラグレジスタ342からの処
理装置10−1についての生存処理装置表示フラグに対
応したフラグ信号がORゲート348を介して出力信号
E40として出力される。
【0186】一致検出用トライステート回路76には、
マスク出力回路を構成するNANDゲート350が設け
られている。NANDゲート350の一方の反転入力に
はバス情報故障検出回路40より不一致検出信号E5が
入力され、他方の入力には生存処理装置表示フラグ回路
340からの出力信号E40が入力されている。このた
め、NANDゲート350においてバス情報故障検出回
路40による他の処理装置10−2,10−3に対する
不一致発生信号E5の出力は、生存処理装置表示フラグ
回路340からの出力信号E40によりマスクされた後
に出力される。
【0187】即ち、処理装置10−1がTMRユニット
10の中で正常に動作しているときは生存処理装置表示
フラグ回路340からの出力信号E40はオンとなり、
NANDゲート350を許容状態とする。このとき、も
しバス情報故障検出回路40による故障検出で不一致発
生信号E5がオンすると、マスク用のNANDゲート3
50を通って出力ドライバ70−1により専用の信号線
86−1を介して他の処理装置10−2,10−3にバ
ス情報故障検出結果が通知される。
【0188】一方、故障等により処理装置10−1がT
MRユニット10から離脱している場合には、フラグレ
ジスタ342のフラグはオフであることから出力信号E
40もオフとなり、マスク用のNANDゲート350を
禁止状態としている。このため、バス情報故障検出回路
40からの不一致発生検出回路がバス故障検出に基づき
オフとなっていても、他の処理装置10−2,10−3
に対するバス故障検出結果の通知を禁止することができ
る。
【0189】このようなマスク出力によってTMRユニ
ット10−1から離脱している装置は、他の処理装置に
は常にバス情報故障を検出していない状態を通知するこ
ととなり、故障した処理装置がTMRユニット10全体
に悪影響を与えることを回避できる。 (3)バス出力許可フラグによる不一致検出信号のマス
ク出力 図29は、TMRユニット10を故障等により離脱した
処理装置が誤ってバス情報故障検出結果を他の処理装置
に送出しないための他の実施形態である。
【0190】図29の実施形態にあっては、図28の一
致検出用トライステート回路76に設けたマスク出力回
路としてのNANDゲート350を更に3入力のNAN
Dゲート352とし、生存処理装置表示フラグ回路34
0からの記録信号E40に加え、バス出力イネーブル生
成回路34にセットしているバス出力許可フラグに基づ
くフラグ信号E42を入力するようにしたことを特徴と
する。
【0191】まずバス出力イネーブル生成回路34は、
図2のように、ANDゲート36を備え、マスター情報
一致判定回路16からの自マスター信号E1により出力
タイミング生成回路32からのバス出力信号E2の出力
を許容し、バス用トライステート回路24の出力ドライ
バにイネーブル信号として供給している。そこで、AN
Dゲート36に加え自マスター信号E1のオンによりバ
ス出力許可フラグをセットするフラグレジスタを設け、
フラグレジスタの出力をフラグ信号E42として、図2
9のように一致検出用トライステート回路76に設けた
マスク出力用のNANDゲート352に入力すればよ
い。
【0192】このようなバス出力許可フラグに基づくフ
ラグ信号E42をマスク出力に用いることで、故障によ
りTMRユニット10から離脱状態にある処理装置10
−1において、生存処理装置表示フラグ回路340の生
存処理装置表示フラグもしくはバス出力イネーブル生成
回路34のバス出力許可フラグの少なくとも一方が正常
であれば、離脱状態にある処理装置10−1からTMR
ユニット10を構成して正常に動作している他の処理装
置10−2,10−3に対するバス情報故障検出回路4
0からの故障検出結果に基づくオフ状態となった不一致
発生信号E5の送出を禁止することができる。
【0193】即ち、故障によりTMRユニット10から
離脱した処理装置10−1の不必要なバス情報故障検出
結果の他の処理装置10−2,10−3に対する出力禁
止のマスク出力機能を二重化して、信頼性を更に向上し
ている。 (4)生存処理装置表示フラグによる不一致検出情報の
マスク入力 図30は、TMRユニット10を構成する処理装置10
−1〜10−3の内、故障等により離脱している処理装
置から誤ってバス情報故障検出結果を示す一致検出信号
が送られてきても、誤動作しないようにマスク入力を行
う実施形態である。
【0194】図30において、一致検出用トライステー
ト回路76には、図29の実施形態で示したマスク出力
用のNANDゲート352に加え、入力ドライバ80−
1,80−2,80−3の出力側にマスク入力用のNA
NDゲート360,362,364を設けている。NA
NDゲート360,362,364の他方の入力には、
生存処理装置表示フラグ回路340に設けたフラグレジ
スタ342,344,346のフラグ信号E41,E4
2,E43が直接入力される。
【0195】このため、TMRユニット10から故障等
により離脱した処理装置は、対応するフラグレジスタ3
42,344,346の生存処理装置表示フラグがオフ
となるため、ANDゲート360,362,364の対
応するものが禁止状態となり、TMRユニット10から
離脱した処理装置から送られてくるバス情報故障検出結
果に基づくオフ状態で有効となる不一致検出信号E5の
FF88,90,92に対する出力を禁止する。このよ
うなバス情報故障検出結果のマスク入力により、TMR
ユニット10から離脱している他の処理装置より誤って
バス情報故障検出結果を示す不一致検出信号E5が送ら
れてきても、この信号を無視することができ、故障した
処理装置がTMRユニット10全体に悪影響を与えるこ
とを回避することができる。 13.マスター情報の保証 (1)マスター情報 図31は、TMRユニット10を構成する処理装置10
−1〜10−3の間でどの処理装置がマスター処理装置
として認識しているかを示すマスター情報を互いに通知
して、誤ったマスター情報の認識を防止する実施形態の
ブロック図である。
【0196】TMRユニット10を構成する処理装置1
0−1〜10−3の内、処理装置10−1に代表して示
すように、マスター処理装置はマスター情報レジスタ1
4に対する設定で決められており、例えば処理装置10
−1がマスター処理装置の割当てを受け、他の処理装置
10−2,10−3がスレーブ処理装置の割当てを受け
ているとする。
【0197】マスター情報レジスタ14は、保持された
マスター情報に基づいて自マスター信号E0を出力す
る。処理装置10−1〜10−3間でマスター情報を通
知し合うため、マスター情報用トライステート回路36
6が設けられる。マスター情報用トライステート回路3
66は、処理装置10−1〜10−3に対応して3つの
トライステート出力ドライバ368−1,368−2,
368−3及び入力ドライバ370−1,370−2,
370−3を有する。
【0198】マスター情報用トライステート回路366
の3つのトライステート回路の出力は、端子372−1
1,372−12,372−13より専用の信号線37
4−1,374−2,374−3によって、他の処理装
置10−2,10−3の対応する端子372−21〜2
3、372−31〜33に接続される。マスター情報用
トライステート回路366に設けた出力ドライバ368
−1,368−2,368−3には、マスター情報レジ
スタ14からのマスター処理装置番号信号E0が共通に
入力される。また出力ドライバ368−1〜368−3
のイネーブル端子には、装置番号デコード回路82から
のデコード信号E11−1〜E11−3がそれぞれ入力
される。
【0199】装置番号デコード回路82は、入力端子1
8−1に対する処理装置番号#1を解読してデコード信
号E11−1のみをオンとしている。このため出力ドラ
イバ368−1のみがイネーブルとなり、マスター情報
レジスタ14からのマスター処理装置番号信号E0を制
御用の信号線374−1によって他の処理装置10−
2,10−3に通知している。同時に、入力ドライバ3
70−1により処理装置自身がマスター情報レジスタ1
4のマスター処理装置番号信号E0を信号E44として
取り込んでいる。
【0200】同様なマスター情報用トライステート回路
366は、他の処理装置10−2,10−3にも設けら
れている。このため、専用の信号線374−2,374
−3によって処理装置10−2,10−3のマスター情
報レジスタ14の保持しているマスター情報に基づいた
マスター処理装置番号信号が通知され、入力ドライバ3
68−2,368−3より処理装置10−2,10−3
から通知されたマスター処理装置番号信号E45,E4
6を得ることができる。
【0201】このようなマスター情報用トライステート
回路366によるTMRユニット10を構成する処理装
置10−1〜10−3間でのマスター情報レジスタの通
知機能により、互いに通知しているマスター情報を判定
することで、装置自身がマスター処理装置であるにも係
わらずスレーブ処理装置と誤認識してTMRユニット1
0からマスター処理装置がなくなってしまったり、逆に
装置自身がスレーブ処理装置であるにも係わらずマスタ
ー処理装置と誤認識してしまってTMRユニット10に
複数のマスター処理装置が存在してしまうようなことを
回避することができる。 (2)マスター情報の故障検出 図32は、図31の実施形態に加え、TMRユニット1
0を構成する処理装置10−1〜10−3が互いに自分
の認識するマスター処理装置番号を通知し合うことによ
ってマスター情報の故障検出を行うようにしたことを特
徴とする。
【0202】このマスター情報の故障検出のため、マス
ター情報用トライステート回路366に続いてマスター
情報故障検出回路376が設けられる。マスター情報故
障検出回路376は、処理装置10−1〜10−3に対
応して3つの比較器384,386,388を設け、3
つの比較出力をNANDゲート386に入力している。
【0203】比較器384には、入力ドライバ370−
1からFF378を介して、処理装置10−1によるマ
スター情報に基づいたマスター処理装置番号信号E44
が入力される。比較器386には、入力ドライバ370
−2により処理装置10−2から通知されたマスター処
理装置番号信号E45がFF380を介して入力され
る。更に比較器388には、入力ドライバ370−3に
より処理装置10−3から通知されたマスター処理装置
番号信号E46がFF382を介して入力される。
【0204】比較器384は、処理装置10−1と処理
装置10−2のマスター処理装置番号信号E44とE4
5を比較する。比較器386は、処理装置10−2と処
理装置10−3のマスター処理装置番号信号E45とE
46を比較する。更に比較器388は、処理装置10−
3と処理装置10−1のマスター処理装置番号信号E4
6とE44を比較する。
【0205】比較器384,386,388のそれぞれ
は、2つのマスター処理装置番号信号が一致していると
出力がオンとなり、不一致でオフとなる。全ての処理装
置10−1〜10−3に正しいマスター情報が設定され
ていると、全てのマスター処理装置番号信号E44,E
45,E46は等しいことから、比較器384,38
6,388の出力は全てオンとなり、NANDゲート3
90の出力となるマスター情報故障発生信号E50はオ
フとなっている。
【0206】これに対し、いずれか1つのマスター処理
装置番号信号が不一致であった場合には、3つの比較器
384,386,388のいずれかの出力がオフとな
る。このためNANDゲート390から出力されるマス
ター情報故障発生信号E50がオンとなる。これによ
り、TMRユニット10を構成している処理装置10−
1〜10−3のいずれかでマスター情報の故障が発生し
たことを認識し、必要な故障処理を行うことができる。
【0207】なお、マスター情報用トライステート回路
366とマスター情報故障検出回路376の間にFF3
78,380,382を設け、3つのマスター装置番号
信号を1回保持するようにしているが、これはバス情報
故障が発生してから検出されるまでの時間とマスター情
報に故障が発生してから検出されるまでの時間を同じタ
イミングにするためである。またバス情報故障検出回路
40側に設けているFF56,58の段数に応じてマス
ター情報故障検出側のFFの段数も変わってくる。 (3)マスター情報の多数決処理 図33は、TMRユニット10を構成する処理装置10
−1〜10−3が互いに自分の認識するマスター処理装
置番号を多数決比較することによって、マスター情報の
故障を検出した場合に、どの処理装置のマスター情報が
故障したのかを判定するようにしたことを特徴とする。
【0208】このマスター情報が故障した処理装置を判
定するため、図32の実施形態に対し更に、マスター情
報故障判定回路392を新たに設けている。マスター情
報故障判定回路392は、処理装置10−1,10−
2,10−3に対応して、反転入力のANDゲート39
4,396,398を設けている。ANDゲート394
には、マスター情報故障検出回路376の比較器384
と386の出力が入力される。
【0209】ANDゲート396には、比較器386と
384の出力が入力される。更にANDゲート398に
は、比較器386と388の出力が入力される。AND
ゲート394は、処理装置10−1のマスター情報の故
障を判別すると、マスター情報故障信号E51をオンす
る。ANDゲート396は、処理装置10−2のマスタ
ー情報の故障を検出すると、マスター情報故障信号E5
2をオンする。更にANDゲート398は、処理装置1
0−3のマスター情報の故障を検出すると、マスター情
報故障信号E53をオンする。
【0210】例えば処理装置10−2のマスター情報が
故障したとする。このためマスター情報故障検出回路3
76にあっては、故障したマスター情報に基づくマスタ
ー処理装置番号信号E45を入力している比較384,
386の出力がオフとなり、これとは関係のない比較器
388の出力がオンとなっている。比較器384,38
6の出力はマスター情報判定回路392のANDゲート
396に入力されており、このためマスター情報故障判
定信号E52もオンとなり、処理装置10−2のマスタ
ー情報の故障と判定することができる。
【0211】他の処理装置10−1,10−3について
も、同様な論理によってマスター情報の故障が発生した
ときにどの処理装置のマスター情報が故障したのかを判
定することができる。更に図33の実施形態にあって
は、一致検出用トライステート回路76にFF88,9
0,92を介してバス情報故障についてのバス情報故障
判定回路98を設けている。このバス情報故障判定回路
98は図7の実施形態のものであり、その詳細は図8の
回路に示した通りである。即ち、処理装置10−1,1
0−2,10−3の各々がバス故障を起こした処理装置
であることを示す判定信号E18,E19,E20と、
いずれかの処理装置においてバス情報の故障が起きたこ
とを判定するバス情報故障判定信号E21を出力してい
る。このバス情報故障判定回路98の各判定信号は、後
の説明で明らかにする図37の二重化構成において利用
される。 (4)マスター情報の生存処理装置表示フラグによるマ
スク出力 図34は、TMRユニット10を構成する処理装置10
−1〜10−3が、装置自身の故障によりTMRユニッ
ト10から離脱しているときに、誤ったマスター情報を
TMRユニットを構成している他の処理装置へ通知しな
いようにした実施形態である。
【0212】図33の実施形態にあっては、処理装置1
0−1〜10−3のいずれかがTMRユニット10から
故障等により離脱しているときも、TMRユニット10
を構成している他の処理装置に対しマスター情報がその
まま出力されており、このため他の処理装置が誤った認
識を起こす恐れがある。これを回避するため、図34の
実施形態にあっては、TMRユニット10から離脱して
いる処理装置はマスター情報として存在しない処理装置
番号、この実施例にあっては処理装置番号#1,#2,
#3を使用していることから、存在しない処理装置番号
#0を出力させる。
【0213】この処理装置番号#0の通知に対し、TM
Rユニット10を構成している処理装置は他の処理装置
から存在しない処理装置番号#0をマスター情報として
通知されたときは、これを正常と認識することによって
誤動作を回避する。TMRユニット10から離脱した状
態で存在しない処理装置番号#0をマスター情報として
他の処理装置に通知するため、マスター情報用トライス
テート回路360にマスク出力用のANDゲート412
を設けている。ANDゲート412の一方の入力にはマ
スター情報レジスタ14からのマスター処理装置番号E
0が入力される。
【0214】ANDゲート412の他方の入力には生存
処理装置表示フラグ回路340からの装置自身の生存を
示すフラグ信号E40を入力する。このフラグ信号E4
0は、図28の生存処理装置表示フラグ回路340に示
したように、処理装置10−1に対応したフラグレジス
タ342に対する生存処理装置表示フラグのオンと、装
置番号デコード回路82より出力される処理装置10−
1の番号#1に対応したデコード信号E11−1に基づ
いて、オンとなる。
【0215】処理装置10−1がTMRユニット10を
構成している場合には、生存処理装置表示フラグがオン
していることからフラグ信号E40もオンとなり、AN
Dゲート412を許容状態として他の処理装置10−
2,10−3に至るマスター情報の通知を行っている。
これに対し、故障等により処理装置10−1がTMRユ
ニット10から離脱した場合には、装置自身の生存処理
装置表示フラグがオフとなり、フラグ信号E40もオフ
となることで、ANDゲート412を禁止状態とする。
【0216】このため出力ドライバ368−1による他
の処理装置10−2,10−3に対するマスター情報と
しての装置番号#1の通知は禁止され、結果として、存
在しない処理装置の装置番号#0が通知されたと同じ状
態になる。これによってTMRユニット10から離脱す
るときは、マスター情報として存在しない装置番号#0
をマスター処理装置として認識していることを他の処理
装置に通知することができる。
【0217】一方、TMRユニット10を構成して動作
中の処理装置は、TMRユニット10から離脱した他の
処理装置から存在しない処理装置番号#0をマスター情
報として通知されたときは、このマスター情報の通知を
無視しなければならない。そこで、マスター情報故障検
出回路376に、比較器384,386,388のそれ
ぞれに入力するマスター処理装置と認識した装置番号が
処理装置として存在しない装置番号#0であることを検
出して出力をオンするマスター装置番号検出器385,
387,389を設け、比較器384,386,388
の出力と共にORゲート407,408,410に入力
する。このORゲート407,408,410の出力を
NANDゲート390及びマスター情報故障判定回路3
92に与えている。
【0218】例えば処理装置10−2がTMRユニット
10から離脱して、存在しない処理装置番号#0をマス
ター情報として通知したとすると、マスター情報故障検
出回路376において装置番号#0の通知を入力した比
較器384,386の出力がオフとなる。同時に、3つ
のマスター番号検出回路385,387,389のうち
処理装置10−2に対応したマスター番号検出回路38
7が、通知された装置番号#0を検出してその出力をオ
ンする。
【0219】このため、存在しない処理装置番号#0に
より比較器384,386の出力がオフとなっている
が、マスター番号検出回路387の出力がオンとなるた
め、ORゲート407,408の出力をオンとすること
ができる。このときORゲート410の出力はオンであ
ることから、NANDゲート390から出力されるマス
ター情報故障発生信号E50はオフとなり、TMRユニ
ット10から離脱した処理装置10−2から存在しない
装置番号#0の通知があっても、これを無視して、マス
ター情報故障の検出を抑止することができる。 (5)マスター情報のバス出力許可フラグによるマスク
出力 図35は、ある処理装置が故障等によりTMRユニット
10から離脱しているときに誤ったマスター情報をTM
Rユニットを構成している他の処理装置に通知しないた
めの実施形態であり、図35の生存処理装置表示フラグ
に加えてバス出力許可フラグを用いてマスター情報のマ
スク出力を行うようにしたことを特徴とする。
【0220】図35の実施形態にあっては、マスター情
報用トライステート回路360にはマスク出力用に3入
力のANDゲート413を設けている。ANDゲート4
13には、図34と同様に、マスター情報レジスタ14
からのマスター処理装置番号信号E0と、生存処理装置
表示フラグ回路340からのTMRユニット10への加
入と離脱を示すフラグ信号E40が入力される。
【0221】更にANDゲート413には、バス出力イ
ネーブル回路34に設定したバス出力許可フラグに基づ
くフラグ信号E42を入力している。このバス出力許可
フラグに基づくフラグ信号E42は、図29におけるバ
ス情報故障検出結果のマスク出力に使用したものと同じ
ものである。このようなマスク出力用のANDゲート4
13を設けることで、生存処理装置表示フラグ回路34
0からのフラグ信号E40とバス出力イネーブル生成回
路34に設けたバス出力許可フラグに基づくフラグ信号
E42の少なくともいずれか一方の回路部が正常であれ
ば、TMRユニット10から離脱している処理装置はマ
スター情報として存在しない処理装置番号#0を出力す
ることができる。この二重化によって、故障した処理装
置がTMRユニット全体に悪影響を与えることを確実に
回避できる。 (6)マスター情報の生存処理装置表示フラグによるマ
スク入力 図36は、故障等によりTMRユニット10から離脱し
ている処理装置から、TMRユニット10を構成してい
る処理装置に誤ったマスター情報が通知されても、誤動
作しないように入力マスクするようにした実施形態であ
る。
【0222】処理装置10−1にあっては、他の処理装
置10−2,10−3から専用の信号線374−2,3
74−3により通知されたマスター情報の処理装置番号
に関する信号を、装置自身を含めて入力ドライバ370
−1,370−2,370−3により取り込んでおり、
この出力段に入力マスク用のANDゲート414,14
6,418を設けている。
【0223】ANDゲート414,416,418の他
方の入力には、生存処理装置表示フラグ回路340から
出力される処理装置10−1〜10−3ごとのフラグ信
号E41,E42,E43がそれぞれ入力されている。
このため、TMRユニット10から離脱している処理装
置に対応するフラグ信号E41〜E43はオフであるこ
とから、ANDゲート414,416,418のうち対
応するものが禁止状態に置かれ、マスター情報故障検出
回路376に対するマスター情報を示す処理装置番号信
号の入力が禁止される。
【0224】ANDゲート414,416,418で入
力がマスクされた処理装置番号信号は装置番号#0とし
て扱われる。この装置番号#0は存在しない処理装置番
号であることから、マスター情報故障回路376は入力
マスク用のANDゲート414,416,418による
入力禁止のマスクによって、故障により離脱した処理装
置がTMRユニット全体に悪影響を与えることを回避す
ることができる。 (7)バス多重化時のマスター情報の故障検出 図37は、多重バス構成をとる高信頼性情報処理装置の
実施形態である。この多重化バス構成にあっては、TM
Rユニット10を構成する処理装置10−1,10−
2,10−3は複数のバス、この実施形態にあってはバ
ス12−1とバス12−2に接続され、データの受け渡
しを行うことになる。この場合、処理装置10−1〜1
0−3が認識しているマスター処理装置番号も、バス1
2−1,12−2ごとに他の処理装置に通知される。
【0225】この場合、バス12−1,12−2ごとに
マスター処理装置が異なるような運用も考えられるが、
全てのバス12−1,12−2で同じ処理装置をマスタ
ー処理装置に設定した方が制御は非常に簡単になる。図
37の実施形態にあっては、バス12−1側は図33の
実施形態とした場合を例にとっている。ここでバス12
−1側について、処理装置10−1の多重化制御回路
を、バス情報故障制御部を構成するTMR制御回路40
0とマスター情報故障制御部を構成するTMR制御回路
402に分けて表わしている。
【0226】同じ回路構成はバス12−2側のバス情報
故障制御部としてTMR制御回路404が設けられ、バ
ス12−2のマスター情報故障制御回路部としてTMR
制御回路406が設けられる。もちろん、バス12−2
側についてはバス12−1側と全く同様な処理装置10
−1,10−2,10−3間の信号線接続が行われる。
【0227】TMR制御回路402,406には、TM
R制御回路402側に示すマスター情報故障検出回路3
76によってTMRユニット10におけるマスター情報
故障を示すマスター情報故障判定信号E50が得られ
る。またマスター情報故障判定回路394において、マ
スター情報に異常のある処理装置の判定信号E51,E
52,E53が得られている。同様な判定信号はバス1
2−2側のTMR制御回路406でも得られている。
【0228】そこで両者のマスター情報に関する故障検
出及び判定信号について、ORゲート422,424,
426,428を設け、バス12−1,12−2間で対
応する信号同士の論理和をとることによって、マスター
情報の故障発生と、どの処理装置でマスター情報の故障
が発生したかを判別できる。即ち、バス12−2に対す
るマスター情報故障制御部としてのTMR制御回路40
6からは、マスター情報故障検出信号E60、処理装置
10−1〜10−3に対応したマスター情報故障判定信
号E61,E62,E63が得られることから、それぞ
れANDゲート422,424,426,428でバス
12−1側のTMR制御回路402から得られた信号E
50,E51,E52,E53のそれぞれとの論理和を
とり、バス12−1,12−2を対象とした全体として
のマスター情報故障検出信号E70及びマスター情報の
故障が発生した処理装置の判定信号E71,E72,E
73を得ることができる。
【0229】なお、図37の多重バス構成にあっては、
処理装置10−1の各バス系統のTMR制御回路を図3
3の実施形態とした場合を例にとっているが、図34〜
図36のいずれかの実施形態の回路構成であってもよい
ことは勿論である。 (8)故障検出時の生存処理装置表示フラグのオフ 図38は、TMRユニット10を構成している処理装置
10−1〜10−3がバス情報あるいはマスター情報の
不一致により故障と判定されたときにTMRユニットか
ら離脱させるために、該当する処理装置の生存処理装置
表示フラグをオフに制御するようにした実施形態であ
る。
【0230】図38において、処理装置10−1には生
存処理装置表示フラグ制御回路341が設けられる。生
存処理装置表示フラグ制御回路341に対しては、バス
情報故障制御部としてのTMR制御回路400に設けた
バス情報故障判定回路98からのバス情報故障処理装置
を示す判定信号E18,E19,E20が入力される。
【0231】またマスター情報故障制御部としてのTM
R制御回路402に設けたマスター情報故障判定回路3
92からのマスター情報故障を起こした処理装置を示す
判定信号E51,E52,E53を入力している。生存
処理装置表示フラグ制御回路341は、図39に示す構
成をもつ。図39において、まず処理装置10−1,1
0−2,10−3に対応して、各処理装置の生存処理装
置表示フラグを格納するフラグレジスタ342,34
4,346が設けられる。フラグレジスタ342,34
4,346としては、通常、FFが使用される。フラグ
レジスタ342,344,346のデータ入力端子に対
しては、ANDゲート430,434,438の出力が
接続される。ANDゲート430,434,438は2
入力のANDゲートであり、ソフトセット指示信号E7
4を共通入力し、またセットデータE77,E78,E
79を処理装置10−1〜10−3に対応して入力する
ようにしている。即ち、フラグレジスタ342,34
4,346に対しては、プログラムにより対応する生存
処理装置表示フラグを任意にセットまたはリセットする
ことができる。
【0232】フラグレジスタ342,344,346の
ライトイネーブル端子に対しては、3入力のORゲート
432,436,440の出力が接続される。ORゲー
ト432,436,440には、図38のバス情報故障
判定回路98からのバス故障情報検出結果が得られた処
理装置を示す判定信号E18,E19,E20が入力さ
れる。同時に、図38のマスター情報故障判定回路から
出力されるマスター情報故障を起こした処理装置を示す
判定信号E51,E52,E53が入力されている。
【0233】図38,図39において、例えば処理装置
10−3で故障が発生したとすると、バス情報の故障の
場合については、処理装置10−3に対応したバス情報
故障の判定信号E20がオンとなる。これによって図3
9におけるフラグレジスタ346の表示フラグがオフと
なる。またマスター情報の故障の場合にも、同様に処理
装置10−3のマスター情報故障を示す判定信号E53
がオフとなり、フラグレジスタ346の表示フラグがオ
フされる。
【0234】このように、故障によりTMRユニット1
0から離脱した処理装置に対応する生存処理装置表示フ
ラグを全ての処理装置でオフすることにより、故障した
処理装置がTMRユニット10を構成して正常に動作し
ている他の処理装置に悪影響を及ぼすのを回避すること
ができる。 (9)故障検出時のバス出力フラグのオフ 図40は、故障発生時に、故障した処理装置がバスを介
して、TMRユニットを構成している他の処理装置に悪
影響を及ぼさないようにするため、バス出力を禁止する
ことでTMRユニット10から故障処理装置を切り離す
ようにしたことを特徴とする実施形態である。
【0235】図40において、TMRユニット10に故
障が発生すると、バス情報故障の場合には、バス情報故
障処理装置判定回路98Aの出力するバス情報故障検出
信号E21がオンとなり、またバス情報故障を起こした
処理装置を示す判定信号E18,E19,E20のいず
れかがオンとなる。これに加えバス情報故障判定回路9
8Aは、バス情報故障が処理装置自身で発生した場合に
オンする自装置故障判定信号E81を出力する。この自
装置故障判定信号E81は、バス情報故障処理装置判定
回路98Aに対する装置番号デコード回路82からのデ
コード信号E11−1〜E11−3を使用して生成され
る。
【0236】図41は、図40のバス情報故障処理装置
判定回路98Aの実施形態である。まず回路部98は図
7,図8の実施形態に示した回路構成をもっており、F
F88,90,92からの処理装置10−1〜10−3
ごとのバス情報故障検出信号E13,E14,E15が
入力され、更にマスター情報レジスタ14からのマスタ
ー処理装置番号信号E0が入力される。
【0237】回路部98からは、バス情報故障検出信号
E21及びバス情報故障を起こした処理装置10−1〜
10−3を示す判定信号E18,E19,E20が出力
される。そこで、バス情報故障の処理装置を示す判定信
号E18,E19,E20のそれぞれをANDゲート4
42,444,446に入力して装置番号デコード回路
82からのデコード信号E11−1,E11−2,E1
1−3との論理積をとり、ORゲート448でとりまと
めて、バス情報故障に関する自装置故障判定信号E81
を出力している。
【0238】このため、故障が発生した装置が例えば処
理装置10−1自身であった場合には、回路部98から
の処理装置10−1を示す判定信号E18がオンし、装
置番号デコード回路82からのデコード信号E11−1
もこのときオンになっていることから、ANDゲート4
42の出力がオンとなり、ORゲート448を介して自
装置故障判定信号E81がバス出力イネーブル生成回路
34Aに出力される。
【0239】そして内部のフラグレジスタにセットされ
ているバス出力許可フラグをオフとし、バス用トライス
テート回路24に対するイネーブル信号E3のオフによ
り、バス12に対する出力情報生成回路22からのバス
情報D1の送出を禁止する。一方、図40のマスター情
報故障制御部となるTMR制御回路402側には、マス
ター情報故障検出判定回路440が設けられる。マスタ
ー情報故障検出判定回路440は、図38に示している
マスター情報故障検出回路376とマスター情報故障判
定回路392を合わせた回路であり、更に自装置のマス
ター情報故障を判定したときにオンする自装置故障判定
信号E80を出力するようにしている。
【0240】図42は図40のマスター情報故障検出判
定回路440の実施形態であり、図38に示したマスタ
ー情報故障検出回路376及びマスター情報故障判定回
路392を備えている。マスター情報故障判定回路39
2からは、マスター情報の故障検出信号E50と、マス
ター情報の故障を起こした処理装置を示す判別信号E5
1,E52,E53が出力されている。
【0241】マスター情報故障が自装置であることを示
す自装置故障判定信号E80は、ANDゲート450,
452,454及びORゲート456の回路部で生成さ
れる。即ち、ANDゲート450,452,454の一
方の入力にマスター情報故障判定回路392からのマス
ター情報故障の処理装置を示す判定信号E51,E5
2,E53の各々を入力し、他方の入力に装置番号デコ
ード回路82からのデコード信号E11−1,E11−
2,E11−3を入力し、これら3つの論理積出力の論
理和をORゲート456でとって、マスター情報故障が
装置自身であることを示す自装置故障判定信号E80を
出力している。
【0242】このマスター情報故障処理装置判定回路4
40からのマスター情報故障に関する自装置故障判定信
号E80も、図40のようにバス出力イネーブル生成回
路34Aに与えられ、バス出力許可フラグをオフするこ
とでイネーブル信号E3をオフし、バス用トライステー
ト回路24によるバス情報のバス12に対する出力を禁
止させることになる。
【0243】図40のバス出力イネーブル生成回路34
Aは、図43の回路構成を有する。まずバス出力許可フ
ラグのセット/リセットを行うフラグレジスタ460が
設けられる。フラグレジスタ460のデータ入力端子に
は、ANDゲート456による論理積出力のためソフト
セット指示信号E82とセットデータE83が入力され
ている。
【0244】フラグレジスタ460のライトイネーブル
端子に対しては3入力のORゲート458の出力が接続
され、ORゲート458には、図41のバス情報故障処
理装置判定回路98Aからの自装置故障判定信号E8
1、図42のマスター情報故障処理装置判定回路440
からの自装置故障判定信号E80が入力されている。こ
のため、ソフトウェアによりセットされたフラグレジス
タ460のバス出力許可フラグは、装置自身のバス情報
の故障あるいはマスター情報の故障のいずれについても
強制的にリセットされる。
【0245】フラグレジスタ460の出力は、図40の
マスター情報一致判定回路16からの自マスター信号E
1及び出力タイミング生成回路32からのバス出力信号
E2が入力され、3つの信号が全てオンであればバスイ
ネーブル信号E3をオンし、バス出力を許容する。しか
しながら、装置自身のバス情報の故障またはマスター情
報の故障によりフラグレジスタ460のバス出力許可フ
ラグがオフになると、フラグ信号E84によりANDゲ
ート462が禁止状態となり、バス用トライステート回
路24に対するイネーブル信号E3をオフし、バス12
に対するバス情報の出力が禁止される。
【0246】このようにバス情報またはマスター情報の
故障によりTMRユニット10−1から離脱した処理装
置のバス出力許可フラグをオフすることにより、故障し
た処理装置がバスにアクセスして他の正常に動作してい
るTMRユニットの処理装置に悪影響を及ぼすことを回
避できる。 (10)マスター故障時のマスター更新 図44は、現在マスター処理装置となっている処理装置
がマスター情報の故障によりバスから切り離された場合
に、TMRユニット10を構成する残された正常な処理
装置から新たにマスター処理装置を決定して処理を続行
するための再決定の実施形態である。
【0247】このマスター処理装置の再決定のために、
処理装置10−1に代表して示すようにマスター情報レ
ジスタ回路14Aが設けられる。マスター情報レジスタ
回路14Aに対してはバス情報故障判定回路98Aから
のバス情報の故障を起こした処理装置を示す判定信号E
18,E19,E20と、マスター情報故障検出判定回
路440からのマスター情報故障を起こした処理装置の
判定信号E51,E52,E53が入力されている。
【0248】図45は、マスター情報レジスタ回路14
Aの実施形態である。まずマスター情報は、マスター情
報レジスタ494に格納される。マスター情報レジスタ
494に対するマスター情報の設定は、ANDゲート4
86に対するソフトセット指示信号E86とソフトデー
タE87により、ソフトウェアにより行うことができ
る。
【0249】ANDゲート486の出力は、ANDゲー
ト488、ORゲート492を介して、マスター情報レ
ジスタ494に与えられてマスター情報を設定する。な
お、ANDゲート488は必ずしも設ける必要はない。
マスター情報レジスタ494のライトイネーブル端子に
対しては、ORゲート496の出力が与えられる。ライ
トイネーブル端子は、ソフトウェアによるマスター情報
の書込時にソフトセット指示信号E86によりオンする
ことができる。またライトイネーブル端子はバス情報ま
たはマスター情報の故障検出が装置自身で発生したとき
にオンとなり、新マスター処理装置番号生成回路484
のアルゴリズムによってマスター情報を更新することが
できる。
【0250】バス情報の故障を検出した際の処理装置を
判定する判定信号E18,E19,E20は、ORゲー
ト464,466,468を介してデコード470,4
72,474に入力される。またORゲート464,4
66,468の他方の入力には、マスター情報の故障に
ついて処理装置の判定信号E51,E52,E53が入
力される。デコード470,472,474は、ORゲ
ート464,466,468の出力のオンによるバス情
報またはマスター情報の故障が判定された処理装置に対
応するデコード信号01,10,11を出力する。この
デコード出力は、マスター情報レジスタ494に対する
マスター処理装置の設定情報と同じものを使用する。
【0251】比較器476,478,480は、マスタ
ー情報レジスタ494に設定したマスター処理装置を表
わすマスター情報と、デコード470,472,474
のそれぞれより出力されたデコード信号を比較し、一致
した際に出力をオンとする。例えばマスター情報レジス
タ494にマスター処理装置10−1のマスター情報0
1が登録されており、例えば処理装置10−1のバス情
報の故障により、その判定信号E18がオンして、デコ
ード470よりデコード信号01が出力されると、比較
器476の出力がオンする。
【0252】比較器476,478,480の出力はO
Rゲート482でとりまとめられて、マスター情報故障
信号としてORゲート496を介してマスター情報レジ
スタ494のライトイネーブル端子に与えられ、マスタ
ー情報レジスタ494をイネーブル状態とする。同時
に、ANDゲート490に与えられて許容状態とし、新
マスター処理装置番号生成回路484による新たなマス
ター処理装置のマスター情報の更新を可能とする。
【0253】新マスター処理装置番号生成回路484に
よるマスター情報レジスタ494の更新は、例えば図1
7に示した新マスター処理装置の生成順序に従って新し
いマスター処理装置番号をマスター情報レジスタ494
にセットする。もちろん、新マスター処理装置を選ぶ順
序はどのような順序でも構わないが、TMRユニットを
構成する全ての処理装置が同じアルゴリズムによって更
新できるようにする必要がある。この結果、マスター処
理装置にバス情報またはマスター情報の故障が発生して
も、残りの処理装置の中から新たなマスター処理装置を
選ぶことによって引き続きTMRユニットによる処理を
続けることができる。 (11)マスター故障時のマスター非更新 図46は、現在マスター処理装置となっている処理装置
がマスター情報の故障によりバスから切り離された場
合、TMRユニット10を構成している残された正常な
処理装置の中から新たにマスター処理装置を決定しない
ようにした場合の実施形態である。
【0254】即ち、図45の実施形態にあっては、マス
ター処理装置がマスター情報の故障と認識された場合に
は、次にマスター処理装置となる順序割当てを受けた処
理装置が自分自身でマスター情報レジスタに装置自身の
番号をセットして新マスター処理装置となる。この場
合、故障を起こした処理装置が現在マスター処理装置と
なっている処理装置であれば問題ない。
【0255】しかし、そうではなく次のマスター処理装
置候補となっているスレーブ処理装置でマスター情報が
故障した場合には、現マスター処理装置が故障したと誤
認識して、故障を起こしたスレーブ処理装置自身がマス
ター処理装置になろうとし、TMRユニットの中に2台
のマスター処理装置が存在することになってシステムダ
ウンに至る危険性がある。
【0256】そこで図46の実施形態にあっては、マス
ター情報の故障が検出されてもマスター処理装置の再決
定を行わないようにしている。このため図46の処理装
置10−1に代表して示すマスター情報レジスタ回路1
4Bに対しては、マスター情報故障検出判定回路440
からの判定信号E51,E52,E53は入力されず、
バス情報故障判定回路98Aからの判定信号E18,E
19,E20のみを入力している。
【0257】図47はマスター情報レジスタ回路14B
の実施形態であり、デコード470,472,474に
対しバス情報の故障による処理装置の判定信号E18,
E19,E20のみを入力している。他の構成は図45
の回路と同じである。この結果、マスター情報の故障が
判定されてもマスター情報レジスタ494の新マスター
処理装置への更新は行われず、バス情報故障が検出され
た場合にのみ、そのときのバス情報故障の処理装置を示
す判定信号E18,E19またはE20のいずれかのオ
ンに基づいたマスター処理装置における新マスター処理
装置のためのマスター情報レジスタ494の更新が行わ
れる。 (12)マスター故障時の各種資源の更新抑止 図48は、マスター情報の故障時(バス情報故障時も含
む)に、故障発生時のバス上のデータを各処理装置が内
部回路に取り込まないように各種資源の更新を抑止する
実施形態である。
【0258】既に説明したように、バス情報の故障が発
生した場合、バス情報故障判定回路98Aからバス情報
故障判定信号E81が出力される。またマスター情報に
故障が発生したときには、マスター情報故障検出判定回
路440からマスター情報故障判定信号E80が出力さ
れる。バス12からバス用トライステート回路24に取
り込まれたデータは、FF58及び500により2回保
持される。これはバス情報故障判定信号E81の生成と
のタイミングを合わせるためである。
【0259】FF500に保持されたデータは、バスデ
ータD11としてデータ更新抑止回路496を介して内
部回路に送られる。データ更新抑止回路496は、内部
制御回路498からのバス選択信号E91、バス情報故
障判定回路98Aからのバス情報故障判定信号E81、
及びマスター情報故障判定回路440からのマスター情
報故障判定信号E80を受けて、データ更新と抑止を制
御する。
【0260】図49は、データ更新抑止回路496の実
施形態の回路図である。FF500に保持されたデータ
D11は、マルチプレクサ501のANDゲート502
に入力される。ANDゲート502には、バス選択信号
E91が入力される。マルチプレクサ501は、他の回
路に対応して例えばANDゲート504,506を備え
ている。
【0261】マルチプレクサ501は、ANDゲート5
02,504または506で選択されたいずれかのデー
タをレジスタ510の入力データパスに出力する。レジ
スタ510のイネーブル端子に対しては、ANDゲート
512及びインバータ514が設けられる。ANDゲー
ト512には、バス情報故障判定信号E81とマスター
情報故障判定信号E80が入力される。
【0262】TMRユニット10の処理装置10−1〜
10−3が正常に動作している通常時には、バス情報故
障判定信号E81及びマスター情報故障信号E80の両
方ともオフであり、このためインバータ514の出力が
オンとなってレジスタ510はイネーブル状態にある。
このため、マルチプレクサ501に対するバス選択信号
E91のオンによりバス上のデータは、データD11と
してANDゲート502,ORゲート508を介してレ
ジスタ510にセットされる。
【0263】これに対し、バス情報あるいはマスター情
報の故障が検出された場合には、バス情報故障判定信号
E81またはマスター情報故障判定信号E80がオン
し、インバータ514の出力がオフとなって、レジスタ
510をデセーブル状態とする。このデセーブル状態
は、バス上にデータが出力された後の2サイクル後のタ
イミングとなる。
【0264】このときマルチプレクサ501からバス上
のデータD11がレジスタ510に入力するが、デセー
ブル状態にあることから、レジスタ510に対するデー
タD11の書込みは抑止され、故障発生時のバス上のデ
ータによるレジスタ内容の破壊を抑止することができ
る。なお図49は、故障発生時のバス上のデータによる
レジスタ内容の破壊防止を例にとっているが、他の内部
回路においても必要に応じて同様の制御を行い、故障発
生時のデータによる資源の破壊を抑止することができ
る。また図49にあっては、抑止サイクル期間を1サイ
クルとしているが、連続して必要なサイクル数分だけ抑
止するようにしてもよい。 (13)マスター情報故障時の再転送指示 TMRユニットの動作中に故障が発生すると、そのとき
バス上のデータは信用できないため、故障した処理装置
を切り離した後、もう一度バスに再出力する必要があ
る。また同じバスに繋がっているTMRユニット以外の
処理装置は、故障の発生を装置自身で検出できないた
め、TMRユニットを構成している処理装置から故障の
発生を通知する必要がある。TMRユニットを構成する
処理装置以外の処理装置は、故障発生を通知された場
合、装置自身がバスにアクセス中であればTMRユニッ
トが再構成された後に再びバスにデータを出力する必要
がある。
【0265】図50は、故障の発生をバス12に接続さ
れている全ての処理装置10−1〜10−nに通知する
実施形態である。この故障発生時の再転送指示のため、
処理装置10−1に代表して示すように、再転送指示用
トライステート回路516が設けられる。再転送指示用
トライステート回路516に対しては、マスター情報一
致判定回路16からの自マスター信号E1、バス情報故
障判定回路98Aからのバス情報故障検出信号E21、
マスター情報故障検出判定回路440からのマスター情
報故障検出信号E50、マスター情報用トライステート
回路360より得られてFF394,396,398に
保持されたマスター情報装置番号信号E101,E10
2,E103、更にマスター情報故障検出判定回路44
0から出力されるマスター情報故障を起こした処理装置
の判定信号E51,E52,E53が入力される。
【0266】再転送指示用トライステート回路516か
らは、端子518−1により専用の信号線520によっ
て、TMRユニット10を構成する処理装置10−2,
10−3、更にTMRユニット10以外のその他の処理
装置10−nに対し接続している。図51は、図50の
再転送指示用トライステート回路516の実施形態の回
路図である。まず専用の信号線520に対するトライス
テート回路部として、出力ドライバ538と入力ドライ
バ540が設けられる。出力ドライバ538に対して
は、ORゲート536によりバス情報故障検出信号E2
1とマスター情報故障検出信号E50の論理和が与えら
れる。出力ドライバ538のイネーブル端子には、ドラ
イバ534によるイネーブル信号が与えられる。
【0267】このイネーブル信号は故障検出時にオンと
なり、そのときORゲート536に入力しているバス情
報故障検出信号E21またはマスター情報故障検出信号
E50を、専用の信号線520により他の処理装置に対
する再転送指示信号として出力する。同時に入力ドライ
バ540によって装置自身に対するリトライ信号E92
を生成する。
【0268】まずバス情報の故障を検出した場合には、
マスター情報自体は信用できるので、故障発生時点のマ
スター処理装置を示す自マスター信号E1がオンになっ
ていることを条件に、他の処理装置に再転送指示信号を
送出する。即ち、バス情報故障検出信号E21と自マス
ター信号E1はANDゲート530で論理積がとられ、
ORゲート532を介してドライバ534により出力ド
ライバ538のイネーブル端子をオンし、そのとき得ら
れているバス情報故障検出情報E21を再転送指示信号
として専用の信号線520により他の処理装置に送出す
る。
【0269】これに対しマスター情報の故障の場合に
は、処理装置自身のマスター情報自体が必ずしも信用で
きないため、マスター情報の故障を起こしていないと判
断された処理装置が認識しているマスター処理装置番号
が装置自身の装置番号と一致しているか否かチェックす
る。一致していれば、その処理装置がマスター処理装置
に代わって他の処理装置に対し再転送指示信号を送出す
るように構成する。
【0270】即ち、マスター情報の故障検出時の処理装
置を示す判定信号E51,E52,E53をANDゲー
ト518,520,522に反転入力する。ANDゲー
ト518,520,522の他方の入力には、マスター
処理装置番号信号E101,E102,E103が入力
される。いま図51の再転送指示用トライステート回路
516が図50の処理装置10−1に設けられたもので
あり、処理装置10−2でマスター情報の故障が起きた
とする。この場合、ANDゲート520に対するマスタ
ー情報の故障装置を示す判定信号E52がオンし、反転
入力であることからANDゲート520を禁止状態と
し、故障と判断されたマスター情報であるマスター処理
装置番号信号E102の入力を抑止する。
【0271】このため、許容状態にあるANDゲート5
18,522からの正しいマスター処理装置番号信号E
101,E103、例えば信号E101,E103は共
に正しいマスター処理装置番号#01であり、ORゲー
ト524を介して比較器526に設定される。比較器5
26の他方の入力には、処理装置10−1自身の処理装
置番号#1が設定されている。
【0272】このため、比較器526の出力が一致検出
によりオンし、このときマスター情報故障検出信号E5
0がオンしていることから、ANDゲート528、更に
ORゲート532を介してドライバ534よりイネーブ
ル信号をオンする。このため、ORゲート536に対す
るマスター情報故障検出信号E50が再転送指示信号と
して専用の信号線520により他の処理装置に送出され
る。再転送指示信号による通知を受けた他の処理装置
は、データの再転送、各種資源の更新抑止等の必要な故
障処理を行う。 14.バス故障検出 (1)バス故障可能性フラグ これまでに説明してきた本発明のTMRユニットの実施
形態では、各処理装置内部とバスとの間のトライステー
ト回路は1段のみであったが、実際の装置にあっては、
図52の処理装置10−1のように、処理装置10−1
の内部の論理回路によるトライステート入出力端子とバ
ス12との間に、プリント基板上で更にトランシーバ素
子546,548,548,550,552,554が
設けられることが多い。
【0273】ここで、バストランシーバ素子546はバ
ス信号用、バストランシーバ素子548は出力タイミン
グ信号用、バストランシーバ素子550はバス情報故障
検出信号(不一致検出信号)用、バストランシーバ素子
552はマスター情報信号用、更にバストランシーバ素
子554は再転送指示信号用である。そしてバスドライ
バ素子546〜554は、出力ドライバと入力ドライバ
を一体に備えている。
【0274】このように処理装置内部とバスとの間に更
にトランシーバ素子を設けた構成の場合、故障がマスタ
ー処理装置のトランシーバ素子やあるいはバス12自体
で発生すると、バス12に対しては間違ったデータが出
力されるが、マスター処理装置にあっては、論理回路内
あるいはプリント基板内で装置自身の出力データを折り
返して取り込んでいるため、装置自身は正しいデータを
取り込んでしまう。
【0275】その結果、バス情報故障検出回路40の出
力するバス情報故障検出信号(不一致検出信号)E5
は、マスター処理装置でオン、他のスレーブ処理装置で
全てオフとなり、バス情報故障判定回路98Bでは多数
決によりマスター処理装置の故障と判定されてしまう。
このため、トライステート入出力端子に続いて更にトラ
ンシーバ素子を設けた構成の場合、バス自体の故障が発
生すると、マスター処理装置の故障との区別がつかなく
なってしまう。
【0276】図53は、図52の実施形態におけるバス
情報故障判定回路98Bにおける各処理装置10−1〜
10−3からのバス情報故障検出信号、具体的にはFF
88,90,92に保持された不一致検出信号E12
1,E122,E123に基づいた判定内容である。こ
こで、バス情報の故障検出が行われていない場合を○、
バス情報の故障検出が行われている場合を×で表わして
いる。
【0277】まず、TMRユニット10を構成する処理
装置10−1〜10−3の内の1台がバス情報の故障検
出を行ったモード2,3,5の場合は、その処理装置の
故障と断定できる。また全ての処理装置10−1〜10
−3が故障検出を行ったモード8の場合にも、マスター
処理装置の故障と断定できる。もちろん、全ての処理装
置10−1〜10−3で故障検出が行われていないモー
ド1は、全処理装置が正常である。なお、モード6,7
のマスター処理装置に加えてスレーブ処理装置が1台故
障する二重故障はあり得ないことから、判定対象から除
外する。
【0278】しかしながら、モード4のように、マスタ
ー処理装置のみが故障を検出しておらず、残り2台のス
レーブ処理装置がバス情報の故障を出力していた場合に
は、故障箇所がマスター処理装置であるのかバスである
のかが特定できない。このモード4の検出パターンを、
バス故障可能性パターンという。そこで図52の実施形
態にあっては、図53のモード4のような場合にマスタ
ー処理装置の故障かバスの故障かを断定できる判定機能
を有する。この判定機能は、図52の処理装置10−1
に示すように、新たにバス故障検出回路544を設け、
バス故障信号E114を生成し、このバス故障検出信号
E114をバス情報故障判定回路98Bおよびマスター
情報レジスタ回路14Bの各々に供給することにより判
定可能とする。
【0279】図54は、図52のバス故障検出回路54
4のブロック図である。バス情報故障検出回路544
は、4入力のANDゲート590,592,594、O
Rゲート596及びバス故障可能性フラグのセットリセ
ットを行うフラグレジスタ598で構成される。NAN
Dゲート590,592,594には、それぞれ図52
のマスター装置番号デコード回路542でデコードされ
たマスター情報デコード信号E111,E112,E1
13が入力されている。
【0280】ここで処理装置10−1を例にとってお
り、処理装置10−1がマスター処理装置の割り当てを
受けていたとすると、マスター情報デコード信号E11
1のみがオンとなっている。また、ANDゲート59
0,592,594の残りの3つの入力には、図52の
一致検出用トライステート回路76に続いて設けられた
FF88,90,92に保持された処理装置10−1自
身及び他の処理装置10−2,10−3から通知された
バス情報故障検出信号(不一致検出信号)E121,E
122,E123が並列的に入力されている。
【0281】この内、ANDゲート590,592,5
94に対する対応する処理装置のバス情報故障検出信号
E121,E122,E123の各々は反転入力となっ
ている。このANDゲート590,592,594は、
図53のモード4に示すマスター処理装置からのバス情
報故障検出信号E121がオフで、残り2つのスレーブ
処理装置から通知されたバス情報故障検出信号E12
2,E123がオンの場合にのみ、ANDゲート590
の出力がオンするようになっている。
【0282】このようなモード4におけるANDゲート
590の出力のオンにより、ORゲート596を介して
バス故障検出信号E114をオンするようにしている。
同時に、フラグレジスタ598のバス故障可能性フラグ
を1にセットする。図55は、図52のバス情報故障判
定回路98Bの実施形態のブロック図である。
【0283】バス情報故障判定回路98Bは、まず入力
段にインバータ556,558,560を設け、図52
のFF88,90,92で保持したマスター処理装置及
び残りのスレーブ処理装置から通知されたバス情報故障
検出信号(不一致検出信号)E121,E122,E1
23を反転入力する。インバータ556,558,56
0の出力は、上側に設けたNANDゲート568と下側
に設けたANDゲート570に入力される。下側のAN
Dゲート570は、3つのバス情報故障検出信号E12
1,E122,E123の全てが故障検出を示してオフ
となった時の反転入力オール1によって出力をオンす
る。
【0284】即ち、図53のモード8で出力がオンす
る。これに対し上側のNANDゲート568は、3つの
バス情報故障検出信号E121,E122,E123の
少なくとも1つで故障検出が行われてオンのとき、出力
がオンする。即ち、図53のモード8以外の他のモード
で出力がオンする。インバータ556、558,56
0、NANDゲート568及びANDゲート570は、
2つのANDゲートとその出力を取りまとめた1つのO
Rゲートで構成される複合ゲート回路562,564,
566に入力される。更に複合ゲート回路562,56
4,566のそれぞれには、図52のマスター装置番号
デコード回路542より出力されたマスター情報デコー
ド信号E111,E112,E113のそれぞれが入力
している。
【0285】例えば、処理装置10−1に対応した複合
ゲート回路562を例にとると、ANDゲート570の
出力がオンする全ての処理装置からバス情報故障が通知
されたモード8の場合、処理装置10−1のマスターデ
コード信号E111のみがオンであることから、複合ゲ
ート回路562の出力がオンする。一方、NANDゲー
ト568の出力がオンとなる3つの処理装置の内の少な
くとも1つよりバス情報の故障検出の通知があった場合
には、マスター処理装置となっている処理装置10−1
自身の故障検出を示すバス情報故障検出信号E121が
故障検出によりオフとなっている時のインバータ556
の反転によるオン出力の場合にのみ、複合ゲート回路5
62の出力がオンする。
【0286】複合ゲート回路562,564,566の
出力は、各々ANDゲート572,574,576に入
力されている。ANDゲート572,574,576の
他方の反転入力には、図54のバス故障検出回路544
より出力されたバス故障検出信号E114が入力してい
る。このバス故障検出信号E114は、図53のモード
4の場合にのみオンとなって、反転入力によりANDゲ
ート572,574,576を禁止状態とし、バス情報
不一致の故障検出を起こした処理装置を示すバス情報故
障判定信号E18,E19,E20の出力を禁止する。
【0287】このモード4以外の他のモードにあって
は、バス故障検出信号E114はオフであることから、
ANDゲート572,574,576よりそのときのバ
ス情報故障検出を行っている処理装置を示すバス情報故
障判定信号E18,E19,E20のいずれかがオンと
なって出力される。ORゲート578は複合ゲート回路
562,564,566の出力の論理和をとっており、
これがTMRユニット10にバス情報故障が起きたこと
を示すバス情報故障検出信号E21を出力する。更に、
バス情報故障検出が自処理装置であることを示すバス情
報故障判定信号E81を出力するANDゲート582,
584,586、ORゲート588及びANDゲート5
80を設けている。
【0288】このANDゲート580についても、モー
ド4でオンとなるバス故障検出信号E114の反転入力
によりモード4の検出状態で自処理装置におけるバス情
報故障検出を示す判定信号E81の出力を禁止してい
る。このような図54のバス故障検出回路544及び図
55のバス情報故障判定回路98Bの構成により、図5
3のモード4のマスター処理装置のみが正常で他の2つ
のスレーブ処理装置からマスター処理装置のバス出力に
対する故障検出の通知が行われた場合、バス故障可能性
パターンの検出でマスター処理装置のバス情報故障の判
定信号E18がオンしてしまうことを阻止し、図54の
ように、バス情報故障判定回路98Bに設けているバス
故障可能性フラグ598をオンする処理を行う。これに
よって、モード4においてバス側の故障が起きた場合、
誤ってマスター処理装置でのバス情報不一致との故障判
定が行われてしまうことを防止できる。
【0289】図56は、図54のバス故障検出回路54
4によってバス故障可能性パターンを検出したときに、
マスター処理装置を切り替えるためのマスター情報レジ
スタ回路14Bの実施形態である。このマスター情報レ
ジスタ回路14Bにあっては、図54のバス故障検出回
路544より得られるバス故障検出信号E114が図5
3のモード4でオンした際に、ORゲート600を介し
てバス故障検出信号E85を強制的にオンし、ORゲー
ト496によりマスター情報レジスタ494のライトイ
ネーブル端子をオンし、新マスター処理装置番号生成回
路484の順序に従った次のマスター処理装置に切り替
えるためのマスター情報の更新を行うようにしている。
【0290】また図52の生存処理装置表示フラグ制御
回路341については、図55のバス情報故障判定回路
98Bより入力するバス情報故障の発生箇所を示す判定
信号E18,E19,E20の各々が、ANDゲート5
72,574,576において図54のバス故障検出回
路544からの故障検出信号E114でマスクされてい
る。このため、マスター処理装置の生存処理装置表示フ
ラグはオフされず、マスター情報レジスタ回路14Bの
更新によってマスター処理装置のみが切り替わって、T
MRユニット10としての処理を続行することができ
る。
【0291】更に、再転送指示用トライステート回路5
16は、バス情報故障判定回路98Bの出力するバス情
報故障検出信号E21がオンとなるので、専用の信号線
520を介してバス12に転送している全ての処理装置
に対し再転送指示信号を通知して再転送処理を行わせる
ことになる。以上のように、TMRユニット10が1回
目のバス故障可能性パターンを検出した後は、マスター
処理装置が更新されていること及びバス故障可能性フラ
グがオンになっていることを除けば、それ以前の動作状
態と変わっていない。この状態で通常のバス情報の故障
が発生すると、バス情報の故障を起こした処理装置がT
MRユニット10から切り離されることになる。 (2)旧マスター処理装置故障時のバス故障可能性フラ
グのリセット 図57は、1回目のバス故障可能性パターンの検出後、
処理装置の切り離しは行わず、マスター処理装置だけを
更新し処理を続行し、その後に旧マスター処理装置の故
障が検出されたとき、1回目のバス故障可能性パターン
の検出でセットしたバス故障可能性フラグをリセットす
る機能を備えた実施形態である。この実施形態にあって
は、処理装置10−1に代表して示すバス故障検出回路
544Aが設けられる。バス故障検出回路544Aは、
図58の回路構成を備える。
【0292】図58において、バス故障検出回路544
Aは図54の実施形態と基本的に同じであるが、バス故
障可能性フラグのセット/リセットを行うフラグレジス
タ598のライトイネーブル端子に対しORゲート60
2によりバス情報故障検出信号E21とマスター情報故
障検出信号E50の論理和出力を与えている。それ以外
の構成は図54と同じである。
【0293】即ち、図53のモード4のバス故障可能性
パターンが検出されたとき、図58のバス故障検出回路
544Aはフラグレジスタ598にバス故障可能性フラ
グをオンする。このときマスター処理装置の切り離しは
行わず、図56に示したマスター情報レジスタ回路14
Bによってマスター処理装置を更新し、処理を続行す
る。最初の故障がマスター処理装置の故障に起因してい
れば、マスター処理装置切り替え後、再び旧マスター処
理装置(この時点ではスレーブ処理装置になっている)
の故障が検出されるはずである。
【0294】このときはスレーブ処理装置のバス情報故
障を示す検出信号E21あるいはマスター情報故障を示
す検出信号E50が得られることから、ORゲート60
2を介してフラグレジスタ598のライトイネーブル端
子をオンすることで、バス故障可能性フラグをオフし、
同時に旧マスター処理装置のTMRユニット10からの
切り離しが行われる。
【0295】このようなバス故障可能性フラグのオフに
よって旧マスター処理装置が切り離された後、マスター
処理装置が別の要因で故障を発生したとき、直ちにバス
情報故障と判定されてTMRユニット10を構成できな
くなる危険性を回避することができる。 (3)バス多重化構成のバス故障可能性検出 図59は、多重バス構成をとった本発明の高信頼性情報
処理装置の実施形態であり、図57に示した単一のバス
構成の場合の処理装置10−1〜10−3の構成をバス
12−1,12−2のバス二重化構成に適用したことを
特徴とする。即ち、バス12−1,12−2に対し、処
理装置10−1に示すように、図57に示した内部回路
及びバストランシーバ素子をもつ回路が2系統設けられ
ている。
【0296】この2系統の回路部に対し、バス12−1
側についてバス故障検出回路544Aが設けられ、バス
12−2側についてバス故障検出回路604が設けられ
る。バス故障検出回路544Aは、図58と同じもので
ある。バス12−2側のバス故障検出回路604も図5
8と同じ回路構成をもち、入力するバス情報故障検出信
号E131〜E134がバス12−2側に設けたTMR
制御回路404のバス情報故障判定回路から得られ、ま
たマスター情報故障判定信号E135,E141〜E1
43が、バス12−2側に設けたTMR制御回路406
のマスター情報故障検出判定回路から得られる。
【0297】更に、多重バス故障判定回路606が設け
られる。多重バス故障判定回路606は、図60に示す
ように、NANDゲート608〜628で構成される。
NANDゲート608〜616の5つがバス12−1,
12−2側のバス情報故障検出の回路部である。例えば
ANDゲート608を例にとると、バス12−1側のバ
ス情報故障検出信号E21とバス12−2側のバス情報
故障検出信号E161の論理和をとって、システム全体
としてのバス故障検出信号E150を出力している。
【0298】ORゲート610,612,614は、バ
ス情報故障検出が起きた処理装置を示す判定信号E15
1,E152,E153を出力する。このため、ORゲ
ート610,612,614には、バス12−1側のバ
ス情報故障検出の処理装置を示す判定信号E18,E1
9,E20に対し、バス12−2側の同じ判定信号E1
62,E163,E164が各々2入力の組み合わせを
もって与えられている。
【0299】ORゲート616は、バス情報の自装置故
障検出信号E81,E165を2つのバス12−1,1
2−2について入力し、システム全体としてのバス情報
の自装置故障検出信号E154を出力する。ORゲート
618〜626の5つは、バス12−1,12−2のマ
スタ情報故障検出に関する判定を行う。ORゲート61
8は、バス12−1,12−2の各マスタ情報故障検出
信号E50,E166を入力し、全体としてのマスタ情
報故障検出信号E155を出力する。
【0300】ORゲート620,622,624は、バ
ス12−1,12−2ごとのマスタ情報故障を起こした
処理装置10−1〜10−3のそれぞれを示す2組の判
定信号E51とE167、E52とE168、及びE5
3とE169を入力して、それぞれの論理和によって各
処理装置10−1〜10−3でのマスター情報の故障を
示す判定信号E156,E157,E158を出力す
る。
【0301】ORゲート626は、バス12−1,12
−2のマスター情報の自装置故障検出信号E80,E1
69を入力して、システム全体としてのマスター情報の
自故障検出信号E159を出力する。最後のORゲート
628は、図59のバス故障検出回路544Aとバス故
障検出回路604のバス故障検出信号E114,E12
4の論理和をとって、システム全体としてのバス故障検
出信号E160を出力する。
【0302】このようにバス12−1,12−2のいず
れかのバスでバス自体の故障の可能性のあるパターンを
検出すると、バス12−1とバス12−2の故障検出に
関する信号の論理和をとった信号により、マスター処理
装置の切り離しは行わず、マスター処理装置だけを更新
して処理を続行する。 (4)バス故障発生時のバス故障可能性検出処理 図61は、1回目のバス故障可能性パターンを検出した
後、処理装置の切り離しは行わず、マスター処理装置だ
けを更新し、処理を続行したとき再びバス故障可能性パ
ターンが検出されたとき、2回目の故障検出でバス自体
の故障と判断してバスを切り離す機能を備えた本発明の
実施形態である。
【0303】図61のバス故障検出回路544Bは、1
回目のバス故障可能性パターンの検出に基づいて第1バ
ス故障検出信号E171を出力し、2回目のバス故障可
能性パターンの検出で第2バス故障検出信号E172を
出力する。なお、バス故障検出信号E114は、1回目
及び2回目のそれぞれにおいて出力される。バス故障検
出回路554Bから出力された1回目のバス故障可能性
パターンの検出に基づく第1バス故障検出信号E171
は、マスター情報レジスタ回路14Cに与えられ、マス
ター処理装置の更新を行わせる。2回目のバス故障可能
性パターンの検出でバス故障検出回路544Bから出力
された第2バス故障検出信号E172は、バス出力イネ
ーブル生成回路34に与えられ、バス出力許可フラグを
オフすることでバス12に対する接続が切り離される。
【0304】図62は、図61のバス故障検出回路54
4Bの実施形態のブロック図である。このバス故障検出
回路544Bは、基本的には図54のバス故障検出回路
544と同じであり、処理装置10−1〜10−3にお
けるバス情報不一致で得られたバス情報故障検出信号E
121,E122,E123の反転信号をANDゲート
590,592,594に並列的に入力し、ANDゲー
ト590,592,594の各々にはマスター装置番号
デコード回路542からのデコード信号E111,E1
12,E113のそれぞれを入力している。
【0305】この場合、処理装置10−1にマスター処
理装置が割り当てていれば、デコード信号E111のみ
がオンとなり、バス故障可能性パターンとなる図53の
モード4の (E121,E122,E123)=(オン,オフ,オ
フ) のときANDゲート590の出力がオンし、ORゲート
596を介してバス故障検出信号E114をオンとす
る。ORゲート596からのバス故障検出信号E114
は、ANDゲート630,632のそれぞれに入力され
ている。ANDゲート630の他方の入力には、バス故
障可能性フラグのセット/リセットを行うフラグレジス
タ598の出力が反転入力されている。
【0306】初期状態においてバス故障可能性フラグは
オフであることから、フラグレジスタ598の出力はオ
フとなっており、この反転入力でANDゲート630は
許容状態にある。したがって、第1回目の故障可能性パ
ターンの検出によりバス故障検出信号E114がオンに
なると、ANDゲート630の出力もオンとなり、第1
バス故障検出信号E171をオンするようになる。この
とき第1バス故障検出信号E171はフラグレジスタ5
98のデータ入力端子に与えられていることから、この
ときORゲート602を介して得られるバス情報故障検
出信号E21のオンによりバス故障可能性フラグがセッ
トされる。
【0307】第1バス故障検出信号E171は、図61
のように、マスター情報レジスタ回路14Cに与えられ
ることでマスター処理装置の更新が行われる。図63
は、図61のマスター情報レジスタ回路14Cのブロッ
ク図である。マスター情報レジスタ回路14Cの基本的
な構成は図56と同じであり、ORゲート600の代わ
りにORゲート634としており、ORゲート634に
図62のバス故障検出回路544Bより出力された第1
バス故障検出信号E171を入力し、強制的にマスター
情報レジスタ144の新マスター処理番号生成回路48
4による更新を行うようにしている。
【0308】再び図62を参照するに、第1バス故障検
出信号E171のオンによるマスター処理装置の更新後
に再度、同じモード4の故障パターンが検出されると、
例えばこのときマスター処理装置は処理装置10−2に
切り替わって、そのデコード信号E112がオンしてい
ることから、バス故障可能性パターンに従ったバス情報
故障検出信号としての(E121,E122,E12
3)=(オフ,オン,オフ)でANDゲート592の出
力がオンし、ORゲート596を介して再びバス故障検
出信号E114がオンする。
【0309】このときフラグレジスタ598にはバス故
障可能性フラグがオンしていることから、ANDゲート
630は反転入力により禁止されており、ANDゲート
632が許容状態にある。このため、ORゲート596
の出力のオンに伴ってANDゲート632の出力がオン
し、これが第2バス故障検出信号E172として出力さ
れる。
【0310】この2回目のバス故障可能性パターンの検
出に基づく第2バス故障検出信号E172は、図64に
示すバス出力イネーブル生成回路34Bに入力される。
バス出力イネーブル生成回路34Bの基本的な回路構成
は、図43のバス出力イネーブル生成回路34Bと同じ
であり、ORゲート636に対し図62のバス故障検出
回路544Bより第2バス故障検出信号E172を入力
し、強制的にバスレジスタ460のバス出力許可フラグ
をオフするようにしている。
【0311】このバス出力許可フラグのオフによりフラ
グ信号E84がオフとなり、ANDゲート462を禁止
状態とし、自マスター信号E1とバス出力タイミング信
号E2によるバスイネーブル信号E3のオンを禁止し、
図52のバス用トライステート回路24をバス12から
切り離す。このバス12からの処理装置10−1の切り
離しは、他の処理装置10−2,10−3においても同
時に行われる。この結果、TMRユニット10を構成す
る全ての処理装置10−1〜10−3でバス出力許可フ
ラグがオフされ、TMRユニット10のバス12からの
切り離しが行われる。この場合、もしTMRユニット1
0が図59のように多重バスを構成していたならば、故
障したバスがTMRユニット10から切り離され、残り
の縮退した多重バスによる構成で処理を続行することが
できる。 (5)バス故障可能性フラグのソフトリセット 図61のような実施形態において、バス12にノイズな
どによって間欠的な故障が発生すると、この故障はバス
故障可能性パターンとしてTMRユニット10で検出さ
れる。このバス故障可能性パターンの検出によりTMR
ユニット10はマスター処理装置が更新され、バス故障
可能性フラグがセットされる。
【0312】この状態で長時間、正常に運用された後、
再びバス12でノイズなどによって間欠的な故障が発生
すると、バス故障可能性フラグがオンのまま残っている
ため、バス故障が発生したと判定されてバス12が切り
離されてしまう。そこで、図61のバス故障検出回路5
44Bの代わりに図65のバス故障検出回路544Cを
使用し、間欠的なバスのノイズによってバスが切り離さ
れてしまうのを回避するために、一度オンしたバス故障
可能性フラグをソフトウェアでリセットする機能を備え
る。
【0313】図65のバス故障検出回路544Cは、図
62のバス故障検出回路544Bのフラグレジスタ59
8に対するORゲート602を3入力のORゲート63
8とし、バス情報故障検出信号E21、マスター情報故
障検出信号E50に加え、ソフトリセット指示信号E1
74によりフラグレジスタ598のバス故障可能性フラ
グをオフできるようにしたことを特徴とする。
【0314】このバス故障可能性フラグに対するソフト
ウェアによるリセット処理は、図66のフローチャート
のようになる。まずステップS1で、定期的にフラグレ
ジスタ598のバス故障可能性フラグをリードしてお
り、ステップS2でフラグオンを判別すると、ステップ
S3に進み、一定時間後に再びバス故障可能性フラグを
リードする。
【0315】一定時間後のフラグリードで再度フラグオ
ンであったことをステップS4で判別すると、ステップ
S5に進み、ソフトリセット指示信号E174をオンす
ることによってステップS5でバス故障可能性フラグを
リセットする。このため、ノイズなどによる間欠的なバ
ス故障が一定時間を超えて2回連続して発生しても、一
度オンしたバス故障可能性フラグはソフトウェアによる
指示で強制的にオフされることから、次のバス故障の検
出でバスが切り離されてしまうことを回避できる。 (6)バス故障可能性フラグのハードリセット 図67は、図61の実施形態におけるバス故障検出回路
544Bの代わりに使用する他のバス故障検出回路54
4Dの実施形態のブロック図である。この実施例にあっ
ては、バス故障可能性フラグが1回目の故障検出でオン
した後にタイマを起動し、タイマによる一定時間経過後
に強制的にバス故障可能性フラグをオフに戻すようにし
たことを特徴とする。
【0316】即ち、図61のバス故障検出回路544D
にあっては、図65のソフトウェアでフラグリセットを
行うバス故障検出回路544Cについて更に、フラグレ
ジスタ598のフラグオンにより出力で起動して一定時
間後にタイマ信号E175をオンするタイマ640を設
け、タイマ640のタイマ信号E175をソフトリセッ
ト指示信号E174の代わりにORゲート638に入力
したことを特徴とする。このため、1回目のバス故障可
能性パターンの検出によるORゲート596からのバス
故障検出信号E114のオンで、ANDゲート630の
オン出力によりフラグレジスタ598のバス故障可能性
フラグがオンすると、タイマ640のイネーブル入力端
子がオンとなり、そのとき出力される第1バス故障検出
信号E171によりロード端子がオンし、タイマ640
が起動する。
【0317】予め定めた一定時間が経過するとタイマ出
力信号E175がオンとなり、ORゲート638を介し
てフラグレジスタ598のバス故障可能性フラグが強制
的にオフにリセットされる。このようなタイマを用いた
ハードウェア構成により間欠的なバス故障が2回連続し
て発生するような場合にTMRユニット10からバスが
切り離されてしまうことを回避できる。 15.バス切り離しのソフト通知 (1)バス故障発生フラグ 図68は、TMRユニット10において、バス12自体
の故障が発生してバス12が切り離されたときに、この
バス故障の事象をソフトウェアに表示するための機能を
備えた実施形態である。このバス切離しとなる故障の事
象をソフトウェアに表示するため、TMRユニット10
の処理装置10−1に代表して示すように、故障表示フ
ラグ回路642が設けられる。
【0318】図69は、図68の故障表示フラグ回路6
42のブロック図である。故障表示フラグ回路642に
は、フラグレジスタ644が設けられる。フラグレジス
タ644のデータ入力端子に対しては、図68のバス故
障検出回路544Bからのバス故障可能性パターンの2
回目の検出でオンする第2バス故障検出信号E172が
入力される。
【0319】フラグレジスタのライトイネーブル端子に
は、ORゲート646により第2バス故障検出信号E1
72とソフトリセット指示信号E176の論理和出力が
与えられる。バス故障可能性パターンが2回連続して第
2バス故障検出信号E172がオンすると、フラグレジ
スタ644のバス故障発生フラグがオンし、フラグ信号
E178が出力される。このときソフトウェアは、後の
説明で明らかにする回路によって故障通知を受け、フラ
グレジスタ644のバス故障発生フラグをリードし、こ
のフラグがオンであることによりバス故障の発生を知る
ことができる。
【0320】このバス故障の発生時にあっては、バスの
切り離しが行われていることから、ソフトウェアは故障
バスで実行中にあったコマンドを縮退後も正常に残って
いるバスを通じて再実行するなどの故障処理を行う。 (2)処理装置2台動作時の故障発生フラグ 図70は、TMRユニット10が2台の処理装置のみで
縮退運転を実行中に、バス情報の故障あるいはマスター
情報の故障を検出した場合、この事象をソフトウェアに
通知するための機能を備えた実施形態である。
【0321】図70のTMRユニット10の各処理装置
については、処理装置10−1に代表して示すように、
2台の処理装置のみで縮退運転を実行しているときの故
障検出状態を示す故障表示フラグをセット/リセットす
る故障表示フラグ回路642Aが設けられている。故障
表示フラグ回路642には、生存処理装置フラグ制御回
路340から処理装置10−1〜10−3の生存を示す
生存処理装置表示フラグ信号E41〜E43が入力され
る。また、バス情報故障判定回路98Bからバス故障検
出信号E21が入力され、更にTMR制御回路402に
設けているマスター情報故障検出判定回路からのマスタ
ー情報故障検出信号E50が入力される。更に、バス故
障検出回路544Bからのバス故障可能性パターンの2
回目の検出でオンする第2バス故障検出信号E172が
入力される。
【0322】図71は、図70の故障表示フラグ回路6
42Aの実施形態のブロック図である。この故障表示フ
ラグ回路642Aは、図69の故障表示フラグ回路64
2に加え更に、処理装置2台時故障発生フラグをオンオ
フするフラグレジスタ660を設けている。フラグレジ
スタ660のデータ入力端子に対しては、生存処理装置
フラグ信号E41,E42,E43から処理装置2台の
縮退パターンがANDゲート648,650,652及
びORゲート654で検出される。
【0323】例えば図70の処理装置10−2,10−
3の2台に縮退した運転を実行している場合には、生存
処理装置フラグ信号E41は切り離しによりオフ、E4
2,E43がオンであることから、ANDゲート648
の出力がオンとなり、ORゲート654を介してAND
ゲート656に入力する。ANDゲート656の他方の
入力には、ORゲート658を介してバス情報故障検出
信号E21またはマスター情報故障検出信号E50が与
えられている。
【0324】したがって、故障検出時にはANDゲート
656の出力がオンとなり、フラグレジスタ660の処
理装置2台時故障発生フラグがオンにセットされる。F
F660のフラグリセットは、ORゲート662を経由
したソフトリセット指示信号E180で行うことができ
る。このため、ソフトウェアはバス情報故障検出信号E
21もしくはマスター情報故障検出信号E50による故
障検出の通知を受けた際に、フラグレジスタ644,6
60からのフラグ信号E178,E182をリードし、
フラグ信号E182のオンから処理装置2台時故障発生
であることを認識し、ソフトウェアは必要な故障処理を
行うことができる。 (3)ソフト通知 図72は、バス自体の故障が発生したとき、あるいはT
MRユニット10が2台の処理装置のみで縮退運転を実
行しているときにバス情報の不一致あるいはマスター情
報の不一致による故障を検出したとき、この事象をソフ
トウェアに通知するための機能を備えた実施形態であ
る。この実施形態にあっては、TMRユニット10を構
成する処理装置10−1に示すように、ソフト通知信号
生成回路664を新たに設けている。
【0325】図73は、図72のソフト通知信号生成回
路664の実施形態のブロック図である。ソフト通知信
号生成回路664は、図71の故障表示フラグ回路64
2Aに、更にORゲート666と割込信号用のFF66
8を設けている。即ち、フラグレジスタ664のバス故
障発生フラグのオンによるフラグ信号E178と、フラ
グレジスタ660の処理装置2台時故障発生フラグのオ
ンによるフラグ信号E182をORゲート666を介し
てFF668に保持するようにしている。
【0326】このため、バス故障可能性パターンが2回
連続したときのフラグレジスタ644のバス故障発生フ
ラグのオンによるフラグ信号E178により、ORゲー
ト666を介して割込信号用FF668がセットされ、
割込信号E184のオンによりソフトウェアに故障発生
が通知され、必要な故障発生処理を行うことができる。
【0327】同様に、処理装置2台で縮退運転を行って
いるときにバス情報故障またはマスター情報故障が検出
されてフラグレジスタ660の処理装置2台時故障発生
フラグがオンすると、割込信号用FF668がセットさ
れ、割込信号E184がオンとなって、ソフトウェアに
対する故障発生の割込通知が行われ、同様に、必要な故
障処理を行うことができる。 16.故障装置交換時のウェイクアップモード (1)ウェイクアップモード 図74は、TMRユニット10を構成する処理装置10
−1〜10−3のうちの1台である処理装置10−3が
故障により離脱した後に、新しい装置と交換した際の、
システム立上げ時に設定されるウェイクアップモードの
実施形態である。尚、この実施形態では、マスタ1モジ
ュール、スレーブ2モジュール(内1つは交換モジュー
ル)の3モジュール構成を例にとっているが、マスタ1
モジュール、スレーブ1モジュール(=交換モジュー
ル)の2モジュール構成についても同様に適用できる。
【0328】図74はウェイクアップモードの設定状態
であり、TMRユニット10はマスター処理装置10−
1とスレーブ処理装置10−2の2台の縮退構成をとっ
ている。交換処理装置10−3は、メモリ内容がマスタ
ー処理装置10−1及びスレーブ処理装置10−2のメ
モリ内容に一致しないことから、TMRユニット10に
復帰させることはできない。このためウェイクアップモ
ードにあっては、交換処理装置10−3に対するマスタ
ー処理装置10−1からのメモリコピー処理が行われ
る。
【0329】ここで、処理装置を交換するときの手順は
次のようになる。まず処理装置10−3が故障した状態
で、TMRユニット10はマスター処理装置10−1と
スレーブ処理装置10−2の2台に縮退して多重化動作
を行っている。この状態でオペレータは処理装置10−
3の故障を確認すると、故障した処理装置10−3を図
示のように新たな処理装置に交換する。
【0330】故障装置の交換が行われると、処理装置1
0−1〜10−3をクロック同期レベルから立ち上げな
ければならないため、この時点でTMRユニット10の
多重化動作を一旦停止する。この多重化動作による所謂
システム停止状態で、まず3台の処理装置10−1〜1
0−3の間で既存の処理装置10−1,10−2と交換
処理装置10−3との間のクロックレベルの同期化を行
い、更に交換処理装置の状態を既存の処理装置10−
1,10−2の状態と同一に設定する。
【0331】このような処理装置間の同期化及び内部状
態の設定が終了したならば、全ての処理装置10−1〜
10−3についてウェイクアップモードを設定して、マ
スター処理装置10−1とスレーブ処理装置10−2に
よるTMRユニット10としての多重化動作及び交換処
理装置10−3に対するメモリのコピー処理を起動す
る。
【0332】このようなウェイクアップモードにおける
処理動作を可能とするため、図74のマスター処理装置
10−1に代表して示すように、マスター処理装置10
−1内のプロセッサエレメント702−1及び主記憶と
してのメモリ704−1に対しメモリ制御部706−1
が設けられる。メモリ制御部706−1は、TMR制御
回路48−1を介してバス12に接続される。バス12
は、データバス12−10とアドレスバス12−11で
構成される。TMR制御回路48−1そのものは、前述
の実施例で詳細に示した回路が使用される。
【0333】メモリ制御部706−1には、ウェイクア
ップモードを設定部としてウェイクアップフラグ設定回
路1040−1が設けられる。ウェイクアップフラグ設
定回路1040−1は、交換処理装置10−1に差し替
えた後の処理装置10−1〜10−3間のクロックレベ
ルの動作終了及び内部状態の設定終了時点でウェイクア
ップフラグを1にオンする。一度オンしたウェイクアッ
プフラグは、マスター処理装置10−1のメモリ704
−1から交換処理装置10−3のメモリに対するコピー
処理が終了した時点で0にオフされる。
【0334】タイミング生成部1060は、プロセッサ
エレメント702−1からのPEアクセス信号e102
とTMR制御回路48−1からのバスアクセス信号e1
04を受けて、リードアクセス及びライトアクセスのタ
イミングでタイミング信号e60,e70,e80を出
力する。即ち、タイミング信号e60は、他の処理装置
によるリードアクセスで装置自身のメモリ704−1の
リードアクセスを行う場合にオンし、それ以外のアクセ
スでオフとなっている。タイミング信号e70は、装置
自身のプロセッサエレメント702−1によるメモリ7
04−1のリードアクセスでオンする。タイミング信号
e80は、同じく装置自身のプロセッサエレメント70
2−1によるメモリ704−1のライトアクセスでオン
する。
【0335】プロセッサエレメント702−1からはア
ドレスバス1084がマルチプレクサ1082を介して
メモリ704−1に与えられている。またマルチプレク
サ1082には、TMR制御回路48−1よりバス12
側のアドレスバス1086が入力されている。マルチプ
レクサ1082は、タイミング生成部1060からの装
置自身のプロセッサエレメント702−1によるリード
アクセスまたはライトアクセスでオンするタイミング信
号e70またはe80を、ORゲート1074を介して
入力することで、プロセッサエレメント702−1から
のアドレスバス1084をメモリ704−1に接続す
る。
【0336】これに対し、タイミング生成部1060で
他の処理装置からのリードアクセスでメモリ704−1
をリードする際のタイミング信号e60のオンの際に
は、ORゲート1074の出力がオフとなることで、マ
ルチプレクサ1082はTMR制御回路48−1からの
アドレスバス1086をメモリ704−1に接続する。
プロセッサエレメント702−1からのデータバス10
88はマルチプレクサ1076を介してメモリ704−
1に接続され、またマルチプレクサ1078からTMR
制御回路48−1を経由して外部のデータバス12−1
0に接続される。マルチプレクサ1076は、プロセッ
サエレメント702−1からのデータバス1088とT
MR制御回路48−1を経由した外部のデータバス12
−10からのデータバス1090を選択する。
【0337】即ち、タイミング生成部1060からの装
置自身のプロセッサエレメント702−1によるライト
アクセスでタイミング信号e80がオンで、ウェイクア
ップモードでないとき、マルチプレクサ1076はプロ
セッサエレメント702−1からのデータバス1088
を選択してメモリ704−1に接続する。これに対し外
部アクセスによりタイミング信号e70がオフまたはウ
ェイクアップモードになると、TMR制御回路48−1
側からのデータバス1090を選択してメモリ704−
1に接続する。
【0338】マルチプレクサ1078は、外部のデータ
バス12−10に対するメモリ704−1からのデータ
バス1092とプロセッサエレメント702−1からの
データバス1088を選択する。マルチプレクサ107
8の選択制御は、ANDゲートとORゲートを備えたゲ
ート回路1070で行われる。ゲート回路1070のA
NDゲートには、ウェイクアップフラグ設定回路104
0−1からのフラグ信号e55とタイミング生成部10
60からの装置自身のリードアクセスによるタイミング
信号e70が入力されている。
【0339】このためウェイクアップモードの設定状態
でフラグ信号e55がオン状態にあり、この状態では、
タイミング生成部1060からの装置自身のリードアク
セスを示すタイミング信号e70がオンすると、ゲート
回路1070の出力がオフとなり、メモリ704−1か
らのデータバス1092を選択して、リードデータを外
部のデータバス12−10に転送する。
【0340】またウェイクアップモードの如何に関わら
ず、タイミング生成部1060からの他の処理装置から
のリードアクセスでタイミング信号e60がオンになる
と、ゲート回路1070を介してマルチプレクサ107
8は、同様にメモリからのリードデータをデータバス1
2−10に転送するように切り替わる。マルチプレクサ
1080は、メモリ704−1からのデータバス109
2とTMR制御回路48−1を経由した外部のデータバ
ス12−10からのデータバス1090を選択する。マ
ルチプレクサ1080の選択制御は、ゲート回路107
2で行われる。ゲート回路1072は、2入力のNAN
Dゲートとインバータで構成されている。
【0341】ウェイクアップモードにあっては、フラグ
信号e55がオンしているため、ゲート回路1072の
インバータの出力はオフとなり、このためNANDゲー
トの出力はタイミング生成部1060からの装置自身の
リードアクセスのタイミング信号e70のオンオフの如
何に関わらず常にオンとなっており、マルチプレクサ1
080は外部のデータバス12−10からのデータバス
1090を選択してプロセッサエレメント702−1の
データバス1088に接続している。
【0342】このためウェイクアップモードにあって
は、メモリ704−1からのリードデータはマルチプレ
クサ1080から直接プロセッサエレメント702−1
には転送されず、マルチプレクサ1078から外部のデ
ータバス12−10に転送すると同時に、マルチプレク
サ1080側から取り込んでプロセッサエレメント70
2−1に転送するようにしている。 (2)リードアクセス 図75(A)(B)は、ウェイクアップモードの設定状
態におけるリードアクセスを、処理装置10−1〜10
−3を簡略化した状態で表わしている。
【0343】図75(A)は、処理装置10−1〜10
−3のプロセッサエレメント702−1〜702−3で
同時に、同じメモリアドレスに対するリードアクセスが
発生した状態である。即ち、TMRユニット10を構成
しているマスター処理装置10−1,10−2及び交換
処理装置10−3のプロセッサエレメント702−1〜
702−3のそれぞれは、メモリ704−1〜704−
3に対し、メモリ制御部706−1〜706−3に設け
たデータ切替部1050−1〜1050−3を介してリ
ードアクセスを一斉に行う。このとき、それぞれのウェ
イクアップフラグ設定回路1040−1〜1040−3
にあっては、フラグを1にオンしている。
【0344】図75(B)は、メモリのリードアクセス
に続くリードデータの転送を示している。まずマスター
処理装置10−1にあっては、ウェイクアップモードの
設定によりデータ切替部1050−1はメモリ704−
1からのリードデータを外部のバス12に転送し、同時
にバス12上のリードデータを取り込んでプロセッサエ
レメント702−1に転送する。
【0345】これに対しスレーブ処理装置10−2及び
交換処理装置10−3にあっては、プロセッサエレメン
ト702−2,702−3のリードアクセスで、メモリ
704−2,704−3からのリードデータはデータ切
替部1050−2,1050−3でプロセッサエレメン
ト702−2,702−3にそれぞれ転送せずに無視す
る。この代わり、バス12上のリードデータを取り込ん
で、プロセッサエレメント702−2,702−3にそ
れぞれ転送する。
【0346】このようにウェイクアップモードにおける
リードアクセスにあっては、マスター処理装置10−1
のメモリ704−1からのリードデータが、データバス
12を経由して全ての処理装置10−1〜10−3のプ
ロセッサエレメント702−1〜702−3に反映され
る。図76(A)(B)は、図74に示したマスター処
理装置と同じ内部構成について、図75におけるリード
アクセス時の処理動作を示している。
【0347】図76(A)はマスター処理装置10−1
の動作である。プロセッサエレメント702−1からの
リードアクセスにより、タイミング生成部1060はタ
イミング信号e70をオンする。このときウェイクアッ
プフラグ設定回路1040−1からのフラグ信号e55
はオンしていることから、ゲート回路1070のAND
ゲートの出力がオンし、ORゲートを介してマルチプレ
クサ1078をメモリ704−1側のデータバス109
2に切り替える。
【0348】一方、マルチプレクサ1080はフラグ信
号e55のオンによりゲート回路1072の出力がオン
していることから、常時、TMR制御回路48−1から
のデータバス1090を選択している。更に、タイミン
グ信号e70のオンによりORゲート1074を介して
マルチプレクサ1082がプロセッサエレメント702
−1からのアドレスバス1084を選択しており、メモ
リ704−1はプロセッサエレメント702−1からの
リードアドレスを受けてリードデータを出力する。
【0349】メモリ704−1からのリードデータは、
太線の矢印で示すようにマルチプレクサ1078からT
MR制御回路48−1を通って外部のデータバス12−
10に転送される。なお、外部のアドレスバス12−1
1に対してもプロセッサエレメント702−1からのア
ドレスデータが直接転送されている。この外部のデータ
バス12−10に転送されたリードデータは、同時にT
MR制御回路48−1、マルチプレクサ1080を介し
てプロセッサエレメント702−1に転送されている。
【0350】図76(B)は、リードアクセス時のスレ
ーブ処理装置10−2及び交換処理装置10−3の動作
状態である。動作は図76(A)のマスター処理装置1
0−1と同じであるが、バス12へのデータ出力は行わ
ない。このため交換処理装置10−3にあっては、マス
ター処理装置10−1によってデータバス12−10に
転送されたリードデータを、TMR制御回路48−3及
びマルチプレクサ1080を通してプロセッサエレメン
ト702−3に転送する。即ち、交換処理装置10−3
にあっては、メモリ704−3のリードアクセスによる
リードデータは無視される。スレーブ処理装置10−2
も、図76(B)の交換処理装置10−3と同じ処理動
作となる。 (3)ライトアクセス 図77は、ウェイクアップモードの設定状態におけるラ
イトアクセス時のデータ転送を示している。通常、図7
5(A)(B)に示したリードアクセスが済むと、その
後、図77のように、処理装置10−1〜10−3のプ
ロセッサエレメント702−1〜702−3はメモリ7
04−1〜704−3に対するライトアクセスが実行さ
れる。このライトアクセスの際に、マスター処理装置1
0−1はデータ切替部1050−1を介して外部のバス
12にライトデータを転送し、バス12上からライトデ
ータをデータ切替部1050−1で取り込んでメモリ7
04−1に書き込む。
【0351】一方、スレーブ処理装置10−2及び交換
処理装置10−3にあっては、プロセッサエレメント7
02−2,702−3のライトアクセスが行われると、
バス12上にマスター処理装置10−1から転送された
ライトデータをデータ切替部1050−2,1050−
3で取り込み、メモリ704−2,704−3に書き込
む。即ち、スレーブ処理装置10−2,交換処理装置1
0−3にあっては、装置自身のプロセッサエレメント7
02−2,702−3からのライトデータは無視され
る。
【0352】図78(A)(B)は、図77のライトア
クセスにおけるマスター処理装置10−1と交換処理装
置10−3の内部の処理動作を詳細に示している。図7
8(A)は、マスター処理装置10−1のウェイクアッ
プモード設定状態におけるライトアクセスである。プロ
セッサエレメント702−1のライトアクセスに伴うP
Eアクセス信号e102を受けて、タイミング生成部1
060はタイミング信号e80をオンとする。このため
ORゲート1074の出力がオンし、マルチプレクサ1
084を選択してメモリ704−1に対するアドレス設
定を行う。
【0353】マルチプレクサ1078は、ゲート回路1
070の出力がタイミング信号e80のオンにより同時
にオンすることから、プロセッサエレメント702−1
からのデータバス1088を選択してTMR制御回路4
8−1を介して外部のデータバス12−10に接続して
いる。マルチプレクサ1076は、ウェイクアップフラ
グがオンであるからデータバス12−10に出力された
データがTMR制御回路48−1を介したデータバス1
090が選択され、メモリ704−1にライトされる。
【0354】図78(B)はスレーブ処理装置10−2
及び交換処理装置10−3のライトアクセスである。動
作は、図78(A)のマスター処理装置10−1と同じ
であるが、バス12へのデータ出力は行わない。図74
の実施形態は、メモリ制御部706−1にハードウェア
構成のデータ切替部1050を設けた場合を例にとって
いるが、プロセッサ等によるソフトウェア処理によりウ
ェイクアップモードでのライトアクセス及びリードアク
セスを行うこともできる。
【0355】図79は、ソフトウェアで行うマスター処
理装置におけるライトアクセスのフローチャートであ
る。まずステップS1で、ウェイクアップフラグが1か
否かチェックする。ウェイクアップフラグが1であれば
ステップS2に進み、リードアクセスまたはライトアク
セスをチェックする。リードアクセスであれば、ステッ
プS3でメモリをリードする。
【0356】続いてステップS4で、バスにリードデー
タを転送する。そしてステップS5でバスからリードデ
ータを取り込んでプロセッサエレメントに転送する。ス
テップS2でライトアクセスを判別した場合には、ステ
ップS6でライトデータをプロセッサエレメントからバ
スに転送し、ステップS7でバスからライトデータを取
り込み、ステップS8でメモリにライトする。
【0357】このようなウェイクアップモード設定状態
に対し、通常のTMRユニットの多重化構成の動作時に
は、ウェイクアップフラグが0であることからステップ
S9に進み、リード/ライトを判別する。リードアクセ
スであればステップS10でメモリのリードを行って、
ステップS11でリードデータをプロセッサエレメント
に転送する。またライトアクセスであれば、ステップS
12でプロセッサエレメントからメモリにライトデータ
を転送し、ステップS13でメモリにライトする。即
ち、通常のメモリアクセスにあっては、外部のバスに対
するリードデータ及びライトデータの転送は行われず、
装置内部での処理となる。
【0358】図80は、図79のマスター処理に対応し
たスレーブ処理装置あるいは交換処理装置の処理のフロ
ーチャートである。まずステップS1でウェイクアップ
フラグが1にセットされていることを判別すると、ステ
ップS2でリードアクセスかライトアクセスかを判別す
る。リードアクセスであれば、ステップS3でプロセッ
サエレメントによるメモリリードを行い、ステップS4
でメモリのリードデータを無視し、バス上に転送されて
いるマスター処理装置からのリードデータを取り込み、
ステップS5でリードデータをプロセッサエレメントに
転送する。
【0359】ライトアクセスであれば、ステップS6で
プロセッサエレメントによるメモリライトを行うが、ス
テップS7でプロセッサエレメントによるライトデータ
を無視し、バス上にマスター処理装置から転送されてい
るライトデータを取り込み、ステップS8でメモリに転
送してライトする。これに対しウェイクアップフラグが
0にオフされている通常の多重化動作時には、図79の
マスター処理装置のステップS9〜S13と同様にし
て、リードアクセスまたはライトアクセスに対し装置内
部でのメモリリードによるプロセッサエレメントへの転
送、プロセッサエレメントからメモリ転送によるライト
を行う。
【0360】図81は、本発明のウェイクアップモード
の設定による処理とウェイクアップモードを設定しない
ときの処理を、処理フェーズに分けて示している。図8
1(A)はウェイクアップモードを設定しない場合の処
理である。まず通常時は、3モジュール即ち3台の処理
装置10−1〜10−3による多重化動作を行ってい
る。この状態でフェーズF2のように故障モジュールが
発生すると、フェーズF3で故障モジュールをTMRユ
ニット10から切り離し、残された正常な処理装置の中
で新たなマスター処理装置を決定し、2モジュールに縮
退した多重化動作に移行する。
【0361】2モジュールによる多重化動作に移行する
と、フェーズF4でソフト割込みにより故障モジュール
が認識されて外部出力され、オペレータが故障したモジ
ュールを認識することができる。そこでフェーズF5の
ように、オペレータは故障モジュールを抜き取り、フェ
ーズF6で新モジュールを追加する装置交換を行う。こ
の場合の装置交換は、システムは2モジュール動作状態
のまま行う活性保守となる。
【0362】フェーズF6で新モジュールが追加できた
ならば、フェーズF7で既存のモジュールによる2モジ
ュール多重動作の処理を一旦停止する。このシステム停
止状態でフェーズF8のように、まず新モジュールと既
存モジュールの間のクロックレベルの同期化を行い、更
に新モジュールの内部状態を既存モジュールの内部状態
に設定する。
【0363】続いて既存モジュールの主記憶から新モジ
ュールの主記憶に対するメモリコピーをフェーズF9で
行う。このメモリコピーの段階では、多重化動作は起動
しない。もし多重化動作を起動すると、コピー中にコピ
ー元のメモリの書替えが行われ、既存モジュールと新モ
ジュールのメモリ内容が一致しなくなるからである。メ
モリコピーが終了したならば、フェーズF10でTMR
ユニットのスレーブモジュールに割り付け、3台の処理
装置を対象にTMRユニットを再構築し、フェーズF1
1でシステム停止を解除して、3モジュール多重動作に
よる処理を再開する。
【0364】このように本発明のウェイクアップモード
をもたない場合には、フェーズF7の既存モジュールに
よる2モジュール多重動作の処理停止からフェーズF8
の同期化、フェーズF9のメモリコピー、フェーズF1
0の3モジュールの再構築の間に亘るT1時間に亘って
システム停止を必要とする。これに対し本発明のウェイ
クアップモードの設定状態を可能とした場合には、図8
1(B)のようになる。図81(B)について、フェー
ズF1〜F7は、図81(A)と同じである。フェーズ
F7で、新モジュールの交換追加に基づき2モジュール
多重動作による既存モジュールの処理を停止したなら
ば、フェーズF8で、既存モジュールと新モジュール間
のクロックレベルの同期化及び内部状態の設定を行った
後、フェーズ9でウェイクアップモードを設定するため
モードフラグを1にオンする。
【0365】続いてフェーズF10で、メモリコピーを
終了することなく処理を再開する。この処理の再開は、
既存モジュールによる2モジュール多重動作の再開であ
る。このため本発明にあっては、フェーズF7の既存モ
ジュールの処理停止からフェーズF9のウェイクアップ
モード設定までの僅かな時間T2のみがシステム停止と
なる。
【0366】フェーズF10で処理を再開したならば、
フェーズF11で既存モジュールの主記憶から新モジュ
ールの主記憶に対するメモリコピーを行う。このメモリ
コピーの際に2モジュール多重動作によって主記憶の書
替えが行われても、主記憶の書替えに伴うアクセスデー
タはマスター処理装置から外部のバスに転送され、スレ
ーブ処理装置及び交換処理装置の主記憶に反映され、常
にコピー元とコピー先のメモリ内容の一致が図られる。
【0367】これによって新モジュールのメモリコピー
の間にシステムを停止する必要がなく、2モジュール多
重動作を継続することができる。フェーズF11のメモ
リコピーが終了したならば、フェーズF12でウェイク
アップモードのフラグを0にオフする。このフラグオフ
に基づき、フェーズF13で新モジュールをTMRユニ
ットに復帰させ、3モジュールによるTMRユニットを
再構築して3モジュール多重動作の処理を再開する。
【0368】尚、ウェイクアップモードの設定状態にお
ける交換処理装置に対するメモリコピー処理は、マスタ
ー処理装置10−1のプロセッサエレメントで実行して
もよいが、プロセッサエレメントの負担を軽減するた
め、バス12に対しメモリコピー専用のシステムアダプ
タを設け、マスター処理装置10−1からのメモリコピ
ーの指示でシステムアダプタ側がマスター処理装置から
交換処理装置に対するメモリコピーのアクセスを行うよ
うにしてもよい。 17.ディレクトリメモリ (1)ディレクトリメモリの運用中の無効化 図82は本発明のTMRユニットに使用する処理装置1
0−1を取り出しており、メインメモリのアクセスにデ
ィレクトリ方式を採用している。
【0369】図82において、処理装置10−1にはプ
ロセッサエレメント702が設けられ、プロセッサエレ
メント702はCPUとキャッシュ機構で構成される。
またプロセッサエレメント702としては、キャッシュ
付きの複数のCPUを備えたマルチCPU構成であって
もよい。プロセッサエレメント702に対しては、主記
憶としてのメインメモリ704がメモリ制御部706を
介して設けられている。
【0370】メインメモリ704はディレクトリ方式に
より管理されている。このディレクトリ方式を実現する
ため、ディレクトリメモリ制御部1102とディレクト
リメモリ1100が設けられている。ディレクトリメモ
リ制御部1102は更に、今までの実施形態で明らかに
したTMR制御回路48を介して外部のバス(共通バ
ス)12に接続されている。
【0371】ディレクトリメモリ1100には、メイン
メモリ704を所定ブロック単位例えば64バイト単位
に分け、このメモリブロックが処理装置10−1内でど
のような状態にあるかを示すディレクトリ情報を、メモ
リブロックのアドレスをエントリとして保持している。
ディレクトリメモリ1100に保持するディレクトリ情
報としてのメモリブロック状態としては、例えばシェア
ード状態、ダーティ状態及び無効状態などがある。
【0372】シェアード状態とは、メインメモリ704
のメモリブロックと同じデータを1または複数のプロセ
ッサエレメント702のキャッシュに保持している状態
である。ダーティ状態とは、プロセッサエレメント70
2のキャッシュが保持する最新データとメインメモリ7
04の内容が異なる状態である。更に無効状態とは、メ
インメモリ704内のデータが最新で、どのプロセッサ
エレメントのキャッシュにも同じデータが存在しない状
態である。
【0373】本発明の高信頼性情報処理装置を構成する
TMRユニットにあっては、多重化動作中に特定の処理
装置で故障が発生すると、故障装置をTMRユニットか
ら切り離し、残された正常に動作している処理装置でT
MRユニットを再構築する。故障によりTMRユニット
から切り離された処理装置は、オペレータにより新しい
処理装置に交換される。この故障処理装置の新しい装置
への交換時に、交換処理装置をTMRユニットに復帰さ
せるためにディレクトリメモリ1100の全エントリを
無効化させる必要がある。
【0374】この無効化処理は、プロセッサエレメント
702がディレクトリメモリ1100の全エントリに対
するライト処理を行うため、無効化を行っている間、シ
ステム停止となってしまう。このシステム停止時間は可
能な限り短いことが望ましく、そこで本発明にあって
は、ディレクトリメモリ1100の無効化をごく短い時
間で瞬時に行うことを可能とする。
【0375】図83は、図82のディレクトリメモリ制
御部1102のブロックであり、プロセッサエレメント
による簡単なレジスタ指示値の変更のみをもって瞬時に
ディレクトリメモリ1100の無効化を行うことができ
る。図83において、ディレクトリメモリ制御部110
2には、アドレス生成部1104、指示レジスタ110
6、比較部1108、及びデータ制御部1110が設け
られる。ディレクトリメモリ1100は、メインメモリ
704を所定ブロック単位に分割した各エントリごとに
ディレクトリ情報を格納している。各ディレクトリ情報
は、図示の斜線の特定ビット1112とメモリブロック
状態1111で構成される。
【0376】ディレクトリメモリ1100の特定ビット
1112には、各エントリごとにシステムの電源投入に
よる初期化処理の際に、特定の値α、例えばα=0のビ
ット値が書き込まれる。またシステム立ち上げ時の初期
化処理の際には、メモリブロック状態フィールド111
1には初期状態を示すコード、例えばオール0が書き込
まれている。
【0377】指示レジスタ1106にはシステム立ち上
げ時にディレクトリメモリ1100の特性ビット111
2に書き込んだビット値αと同じ値、例えばα=0が書
き込まれている。このため、システム電源投入による立
ち上げ後の運用状態において、指示レジスタ1106の
値とディレクトリメモリ1100の特性ビット1112
の値は必ず一致している。
【0378】TMRユニットとしての動作状態におい
て、プロセッサエレメント702からのメインメモリ7
04に対するアクセスアドレスは、アドレス生成部11
04にセットされ、ディレクトリメモリ1100のリー
ドアクセスにより、対応するエントリのディレクトリ情
報がリードされる。このディレクトリ情報のリードにお
いて、特定ビット1112の値は比較部1108に与え
られ、指示レジスタ1106の値と比較される。このと
き指示レジスタ1106及び特定ビット1112の値は
共にαであり、比較部1108は一致出力を生じ、この
場合、比較部1108からの無効化指示1114はオフ
となる。
【0379】このため、データ制御部1110はディレ
クトリメモリ1100からリードしたメモリブロック状
態1111を有効として、メモリブロック状態1111
に示されるシェアード、ダーティあるいはインバリッド
(無効状態)に応じたメインメモリ704のアクセスあ
るいはプロセッサエレメント702のキャッシュアクセ
スを行うことになる。
【0380】運用中に装置交換などによりディレクトリ
メモリ1100の無効化を必要とする場合には、プロセ
ッサエレメント702の指示により指示レジスタ110
6の値αを別の値β、例えばβ=1に変更し、アドレス
生成部1104に対しディレクトリメモリ1100の全
エントリのアドレス生成を指定して無効化処理を行わせ
る。
【0381】即ち、アドレス生成部1104でディレク
トリメモリ1100のエントリとなるアドレスを指定す
るごとに、特定ビット1112を読み出して比較部11
08で比較する。このとき特定ビット1112の値はα
であるが、指示レジスタ1106の値は無効化動作のた
めにβに変更されており、比較部1108において不一
致となることで無効化指示1114がオンする。
【0382】この無効化指示1114を受けたデータ制
御部1110は、ディレクトリメモリ1100のメモリ
ブロック状態1111の如何に関わらず無効状態を示す
値、例えば初期化時と同じオール0に交換する。このよ
うなディレクトリメモリ制御部1102によるディレク
トリメモリ1100に対するアドレス指定で、先頭アド
レスから最終アドレスまでプロセッサエレメント702
の介入を必要とすることなく高速に無効化処理を完了す
る。
【0383】図84のフローチャートは、図82の処理
装置10−1におけるシステム電源投入時の立ち上げ時
におけるディレクトリメモリ1100の初期化処理であ
る。この初期化処理にあっては、ステップS1で、プロ
セッサエレメントが指示レジスタに特定値αをライト
し、続いてステップS2でアドレス生成部1104に開
始アドレスをセットし、ステップS3で、ディレクトリ
メモリ1100の特定ビット1112に指示レジスタ1
106にセットしたと同じ特定値αをライトする。
【0384】続いてステップS4で、メモリブロック状
態フィールド1111に初期状態コードをライトする。
1エントリの初期化が済むと、ステップS5で最終アド
レスか否かチェックし、最終アドレスでなければステッ
プS6でアドレスを更新し、同じ処理を繰り返す。最終
アドレスであれば、ステップS7でプロセッサエレメン
ト702に初期化終了を通知する。
【0385】図85のフローチャートは、通常の運用状
態における処理である。ステップS1で、プロセッサエ
レメント702からのメインメモリ704のアクセスに
伴うディレクトリメモリ制御部1102に対するアクセ
スがあると、アドレス生成部1104によりアクセスア
ドレスを指定してディレクトリメモリ1100のリード
を行い、特定ビット1112の値を獲得する。
【0386】続いてステップS3で、指示レジスタ11
06の値と比較部1108により比較する。ステップS
4で両者の一致が判別されると、ステップS5に進み、
ディレクトリメモリ1100のメモリ状態ブロックフィ
ールド1111を有効として、そのリードデータに従っ
た処理を実行する。万が一、比較部1108で不一致と
なった場合には無効化指示部1114がオンとなり、ス
テップS6で、ディレクトリメモリ1100のメモリブ
ロック状態フィールド1111の無効化処理が行われる
ことになる。この場合には、ステップS7で、無効化状
態に従ってメインメモリ704のアクセスとなる。
【0387】図86のフローチャートは、図83におけ
るディレクトリメモリ制御部1102の運用中における
無効化処理である。まずステップS1で、プロセッサエ
レメント702が指示レジスタ1106に初期化設定値
αと異なる値βをセットする。続いてステップS2で、
アドレス生成部1104によりディレクトリメモリ11
00の開始アドレスをセットし、ステップS3で、開始
アドレスで指定したエントリの特定ビット1112をリ
ードし、ステップS4で、指示レジスタ1106の値と
比較部1108によって比較する。
【0388】この場合、比較部1108による比較結果
は必ず不一致となることから、ステップS5でこれを判
別して、ステップS6に進み、ディレクトリメモリ11
00の特性ビット1112に指示レジスタ1106の値
βを書き込み、同時にメモリブロック状態フィールド1
111に無効化状態を示す値をライトする。続いてステ
ップS7で最終アドレスか否かチェックし、最終アドレ
スでなければステップS8でアドレスを更新し、次のエ
ントリのアクセスを行う。最終アドレスであれば、ステ
ップS9でプロセッサエレメント702に無効化終了を
通知し、これを受けてプロセッサエレメント702は例
えばTMRユニットを再構築した運用状態に移行する。
【0389】このような第1回目の無効化処理により、
ディレクトリメモリ1100における全エントリの特定
ビット1112は、無効化の際に変更した指示レジスタ
1106の値βに変更されている。図87は、図83の
ディレクトリメモリ制御部1102を論理回路で構成し
たブロック図である。データ制御部1110にはディレ
クトリ制御部1115が設けられ、プロセッサエレメン
ト702との間でアクセス情報1116のやり取りを行
っている。
【0390】通常の運用時にメインメモリに対するアク
セスが行われると、アクセス情報1116がディレクト
リ制御部1115に入力され、所定のタイミングでオン
になるアドレス保持指示1136により、メモリアクセ
スのアドレス1118がアドレス生成部1104に設け
たD−FF1134に保持される。同時にディレクトリ
制御部1115はメモリ制御信号1150を出力し、ア
クセス情報に基づいてメモリブロック状態フィールド1
111の更新を行う。
【0391】次に本発明の運用中の無効化処理を可能と
するため、まず電源投入直後の初期化時にあっては、プ
ロセッサエレメント702がメインメモリ704をクリ
アすることで、ディレクトリメモリ1110のメモリブ
ロック状態フィールド1111は、全エントリについて
オール0が設定される。このときディレクトリメモリ1
110の全エントリの特定ビット1112には、指示レ
ジスタ1106を構成するD−FFと同じ値α、例えば
α=ビット0が設定される。
【0392】指示レジスタ1106も電源投入直後の初
期化時にプロセッサエレメントからのデータ1120と
して特定値αの供給を受け、所定のタイミングでデコー
ダ1124及びANDゲート1126を設けたレジスタ
デコーダ部1122からのレジスタセット指示1130
のオンにより特定値αを保持している。このレジスタセ
ット指示1130も、ディレクトリ制御部1115から
のレジスタライト指示1128のオンに同期して行われ
る。
【0393】運用の途中で処理装置交換などに伴ってデ
ィレクトリメモリ1110を無効化する場合には、プロ
セッサエレメントが指示レジスタ1106に異なった値
β、例えばβ=ビット1をライトする。即ち、プロセッ
サエレメントからのアクセス情報1116を受けたディ
レクトリ制御部1115はレジスタライト指示1128
をオンとし、このタイミングでプロセッサエレメントよ
りアドレス1118及びデータ1120が供給され、デ
コーダ1124でレジスタライトを認識し、レジスタセ
ット指示1130をオンとし、データ1120として与
えられた異なった値βを指示レジスタ1106にセット
する。
【0394】続いてプロセッサエレメントは、ディレク
トリメモリ1110を無効化するためのアクセス情報1
116及びアドレス1118を先頭番地から順番に発行
する。このため、アドレス生成部1104でディレクト
リメモリ1110のアクセスアドレスを保持するごと
に、ディレクトリ制御部1115からのメモリ制御信号
1150によるディレクトリメモリ1110のリード動
作が行われる。
【0395】なお、ディレクトリメモリ1110からの
ディレクトリ制御部1115に対するデータは、ドライ
バ1144によるライトデータ転送、ドライバ1146
によるリードデータ転送で行われる。このときディレク
トリメモリ1110の特定ビット1112は、比較部1
108に与えられる。比較部1108はライト用のドラ
イバ1140、リード用のドライバ1142及び比較回
路1138で構成される。特定ビット1112のリード
データはドライバ1142を介して比較回路1138に
与えられ、このときβに変更された指示レジスタ110
6の値と比較される。
【0396】特定ビット1112の値は、電源投入によ
る初期化時にライトした特定値αであることから両者は
不一致となり、比較回路1138の出力する無効化指示
1114がオンとなる。この無効化指示1114のオン
によりANDゲート1148は禁止状態となり、ディレ
クトリメモリ1110のメモリブロック状態フィールド
1111からのリードデータはディレクトリ制御部11
15に供給されず、メモリブロック状態フィールド11
11が無効となる。
【0397】ディレクトリ制御部1115は無効化指示
1114のオンにより禁止状態となって、ANDゲート
1148から得られたデータをメモリ状態フィールド1
111のリードデータと見做し、これをドライバ114
4を介してメモリ状態フィールド1111にライトバッ
クする更新処理を行う。この結果、メモリブロック状態
フィールド1111は、無効化状態を示す例えばオール
0に書き替えられる。
【0398】図88は図83のディレクトリメモリ制御
部1102の他の実施例であり、新たに制御レジスタ1
160を設けることで、比較部1108による無効化指
示1114のオンを強制的に禁止できるようにしたこと
を特徴とする。本発明の高信頼性情報処理装置としての
TMRユニットを構成する場合には、装置交換に伴う運
用中におけるディレクトリメモリ1110の瞬時の無効
化が必要であるが、本発明で使用している処理装置を他
の処理装置、例えば単独で使用するような場合には、T
MRユニットにおけるような瞬時的なディレクトリメモ
リ1100の無効化は行わなくてもよい場合がある。
【0399】そこで図88の実施形態にあっては、TM
Rユニットで使用する際には制御レジスタ1160の値
による比較部1108の機能を有効とし、瞬時の無効化
を必要としない他の用途にあっては、制御レジスタ11
60の値を変更することで比較部1108による無効化
指示の機能を解除できるようにしている。図89は、図
88のディレクトリメモリ制御部1102の論理回路で
構成したブロック図である。ディレクトリメモリ制御部
1102には新たに制御レジスタ1160が設けられ、
プロセッサエレメントからのデータ1164とアクセス
情報1116に基づいたディレクトリ制御部1110か
らのレジスタライト指示1128に基づくレジスタデコ
ード部1122からのレジスタセット指示1130によ
り、制御レジスタ1160の値を変更できるようにして
いる。
【0400】制御レジスタ1160の出力は、比較部1
108に設けたANDゲート1166に入力される。A
NDゲート1166の他方には比較回路1136の出力
が入力される。このANDゲート1166の出力が無効
化指示1114としてデータ制御部1110に与えられ
ている。本発明のTMRユニットの処理装置として使用
する場合には、制御レジスタ1160にビット1を書き
込み、ANDゲート1166に対する制御出力をオンと
し、ANDゲート1166を許容状態としておく。この
ため無効化処理にあっては、比較回路1138における
不一致による無効化指示信号の出力がオンとなり、これ
がデータ制御部1110に有効に与えられ、ディレクト
リメモリ1100の無効化が行われる。
【0401】一方、TMRユニット以外の使用で運用中
における瞬時のディレクトリメモリ1110の無効化が
必要ない場合には、制御レジスタ1160にビット0を
格納してANDゲート1166に対する制御出力をオフ
としておく。これによりANDゲート1166は禁止状
態におかれ、比較回路1138における出力のオンオフ
の如何に関わらず、データ制御部1110に対する無効
化指示1114をオフとし、常にディレクトリメモリ1
100からリードしたメモリブロック状態フィールド1
111の値を有効として扱うことができる。 (2)ディレクトリメモリの運用中の初期化 図82に示したディレクトリ方式の処理装置10−1を
TMRユニットで使用する場合、システム構成によって
は複数回無効化を行いたい場合がある。この場合、図1
00のディレクトリメモリ制御部1102にあっては、
1回ディレクトリメモリ1100の無効化を行うと、そ
の特定ビット1112が無効化のために変更した指示レ
ジスタ1106の値βに変更されてしまう。
【0402】このため、無効化終了で指示レジスタ11
06を元の値αに戻し、その後に再度無効化するために
指示レジスタ1106の値をβに変更すると、特定ビッ
ト1112は最初の無効化でβとなっているため、2回
目の無効化で比較部1108は全て一致し、無効化指示
1114がオフとなり、無効化処理ができなくなる。し
たがって、運用中に複数回無効化を行うためにはディレ
クトリメモリ1100の無効化が済んだ後に、特定ビッ
ト1112の変更された値βを元の値αに戻すための初
期化処理が必要となる。この特定ビット1112を元の
値αに戻すための再度の初期化処理は、TMRユニット
として処理装置が動作している間に行われるため、図8
3のように、プロセッサエレメント702からのアクセ
ス情報及びエントリアドレスの指示で行うのではプロセ
ッサエレメント702の負担が増え、TMRユニットと
しての多重化処理の性能が低下する。
【0403】このため、図90のジェネリックフローチ
ャートのように、ステップS1で初期化した後に、ステ
ップS2で通常処理を行い、ステップS3で装置交換な
どによる最初の無効化を行った後に、ステップS4で再
度初期化処理を行い、続いてステップS5で2回目の無
効化を行うような場合、ステップS4の運用中における
再初期化におけるプロセッサエレメントの負担を低減す
るため、図91の実施例のように、ディレクトリメモリ
制御部1102側にハードウェアとしての初期化回路を
設ける。
【0404】図91において、ディレクトリメモリ制御
部1102は、図83の実施例と同様、アドレス生成部
1104、指示レジスタ1106、比較部1108及び
データ制御部1110を有する。これに加えてディレク
トリメモリ制御部1102には、ディレクトリメモリ1
100の初期化処理のためのハードウェアとして初期化
制御部1170、初期化起動レジスタ1172、初期化
アドレスレジスタ1174及び完了表示レジスタ117
6が設けられる。
【0405】ディレクトリメモリ制御部1102は、指
示レジスタ1106の値をαからβに変更することによ
ってディレクトリメモリ1100の無効化が終了する
と、プロセッサエレメント702は初期化起動レジスタ
1172に初期指示を示す値をライトする。この初期化
起動レジスタ1172のライトによる出力を受けて、初
期化制御部1170が初期化を開始する。
【0406】初期化動作は、まずディレクトリメモリ1
100の先頭アドレスを初期化アドレスレジスタ117
4にセットし、アドレス生成部1104を介してディレ
クトリメモリ1100をリードする。このリードにより
特定ビット1112と指示レジスタ1106の値を比較
部1108で比較する。このとき1回目の無効化により
ディレクトリメモリ1100の特定ビット1112は変
更値βとなっており、指示レジスタ1106の値は元の
値αに戻っている。
【0407】したがって、比較部1108は不一致によ
り無効化指示1114をオンする。この無効化指示11
14のオンを受けたデータ制御部1110は、リードデ
ータの特定ビット1112の値を指示レジスタ1106
の値αと同じにし、またメモリブロック状態フィールド
1111については初期状態に変えて再びライトする。
【0408】以上の初期化処理をディレクトリメモリ1
100の全エントリについて行い、処理を終了すると、
完了表示レジスタ1176に完了を示す値を書き込み、
プロセッサエレメント702からのステータスコマンド
に対する応答として通知する。このようなディレクトリ
メモリ1100の運用中における初期化が終了すれば、
再度、指示レジスタ1106の値をαからβに変更する
ことによるディレクトリメモリ1100の無効化を再び
行うことができる。
【0409】図92は、図91のディレクトリメモリ制
御部1102の論理回路のブロック図である。図109
において、プロセッサエレメントからのアクセス情報1
116に基づくディレクトリ制御部1115からのレジ
スタセット指示1186のタイミングで、プロセッサエ
レメントから送られてきたデータ1184が初期化起動
レジスタ1172に保持され、これにより初期化制御部
1170に対するスタート指示1188がオンとなる。
同時に初期化スタート指示1188のオンはアドレスカ
ウンタとして動作する初期化アドレスカウンタ1174
をクリアする。
【0410】初期化制御部1170には、タイマ回路1
178と一定値判定回路1180が設けられている。タ
イマ回路1178はスタート指示1188のオンを受け
ると起動し、以後、一定の周期で初期化指示1190を
出力する。この初期化指示1190はディレクトリ制御
部1115に与えられ、ディレクトリメモリ1100の
初期化更新が行われる。
【0411】このときディレクトリメモリアドレス11
85は、マルチプレクサ1182を介して初期化アドレ
スレジスタ1174より与えられている。なお無効化の
際にはマルチプレクサ1182はD−FF1134側に
切り替わり、プロセッサエレメントからのアド1118
をディレクトリメモリアドレス1185として出力す
る。
【0412】ディレクトリメモリ1100に対するメモ
リ制御信号1150により得られたメモリデータ114
5即ちリードデータは、ドライバ1146を通ってAN
Dゲート1148に入力される。このときディレクトリ
メモリ制御部1102には、図には省略しているが、図
106と同じ比較部1108が設けられており、ディレ
クトリメモリ1100の特定ビット1112の値と指示
レジスタ1106の値を比較している。
【0413】指示レジスタ1106の値はαであるが、
ディレクトリメモリ1100の特定ビット1112の値
は無効化によりβとなっており、不一致であることから
無効化指示1114がオンとなり、ANDゲート114
8を禁止状態としている。このためディレクトリ制御部
1115に対するディレクトリメモリ1100からのリ
ードによるメモリデータ1145は、オール0としてデ
ィレクトリ制御部に入力される。
【0414】ディレクトリメモリ制御部1115に入力
したオール0のリードデータは、メモリ制御信号115
0によりANDゲート1142に与えられる。このとき
初期化指示1190はオンとなってANDゲート114
2を禁止状態としており、このためディレクトリ制御部
1115からのライトデータはオール0となって、ドラ
イバ1144によりメモリデータ1145としてディレ
クトリメモリ1100に供給され、書き込まれる。
【0415】この結果、ディレクトリメモリ1100の
特定ビット1112には指示レジスタと同じα=0が書
き込まれ、ブロック状態フィールド1111も全てオー
ル0が書き込まれる。書込み終了後に初期化制御部11
70に設けたタイマ1178が再度初期化指示1190
をオンすると、初期化アドレスレジスタ1174が+1
となって次のメモリアドレスを指定する。
【0416】また初期化制御部1170に設けた一定値
判定回路1180は、初期化中における初期化アドレス
レジスタのメモリアドレス1175とディレクトリメモ
リ1100の予め定められた最大アドレスとを比較して
いる。このため、一定値判定回路1180でメモリアド
レス1175がディレクトリメモリ1100の最大アド
レスに一致すると、初期化完了指示1192がオンし、
タイマ回路1178をリセットして初期化動作を停止す
る。
【0417】同時に完了表示レジスタとしてのD−FF
1176に初期化完了指示をセットし、データ1194
としてプロセッサエレメントに通知される。この完了表
示レジスタ1176の値のプロセッサエレメントに対す
る通知は、プロセッサエレメントがステータスコマンド
などの発行により周期的に完了表示レジスタ1176を
参照してもよいし、完了表示レジスタ1176の出力を
プロセッサエレメントに対する割込としてもよい。
【0418】図93は図91の変形実施例であり、ディ
レクトリメモリ1100に対する初期化処理の間隔をプ
ロセッサエレメントからの値で任意に設定できるように
したことを特徴とする。即ち、図91の初期化制御部1
170にあっては、図92のように、タイマ回路117
8により固定的に初期化の周期を決めているが、ディレ
クトリメモリ1100のアクセス間隔が短すぎるとプロ
セッサエレメント702からのメモリアクセスがビジィ
となり、性能低下の原因となる。
【0419】また、アクセス間隔が長すぎると初期化に
時間がかかり過ぎる。更に、初期化処理のためのアクセ
ス間隔の最適値はシステムや運用形態によっても変わっ
てくる。そこで図93の実施形態にあっては、必要に応
じてプロセッサエレメント702からの指示で初期化処
理のアクセス間隔の周期を設定可能としている。図93
の実施例にあっては、図91の実施例に新たに一定間隔
指示レジスタ1200を設けている。その詳細は図94
のディレクトリメモリ制御部1102のように、初期化
制御部1170に設けたタイミング回路1178のタイ
マ周期を外部設定可能なタイマ回路とし、一定間隔指示
レジスタ1200からの一定間隔情報1202のセット
で初期化指示1190をオンするタイマ周期を可変でき
るようにしている。
【0420】一定間隔指示レジスタ1200にはレジス
タセット指示1186のオンのタイミングでプロセッサ
エレメント702からのデータ1184を保持し、この
データ1184によってタイマ回路1178のタイマ周
期を決めることができる。なお、これ以外の構成は図1
09の論理回路と同じである。 (3)メモリ実装に対応したディレクトリメモリの初期
化 図95は、図82の処理装置10−1におけるメインメ
モリ704の実装状態に対するディレクトリメモリ11
00の使用状態である。通常、メインメモリは例えばメ
インメモリ704−1からメインメモリ704−nのn
台まで拡張可能な構造となっており、実装するメモリ数
によって容量が大きく異なる。
【0421】これに対しディレクトリメモリ1100
は、メインメモリの最大容量に対応したメモリ容量をも
っている。このような拡張可能なメインメモリの構成に
おいて、実際の装置でメインメモリが最大実装になるこ
とはまれである。図95の例では3台のメインメモリ7
04−1〜704−3を実装しており、この実装状態に
対するディレクトリメモリ1100の使用状態は斜線で
示す使用領域1204となっている。このような場合に
ディレクトリメモリ1100の初期化で全領域を初期化
することは無駄であり、使用領域1204のみを初期化
すればよい。
【0422】そこで図96の実施例にあっては、ディレ
クトリメモリ1100の先頭アドレスからメインメモリ
の実装に対応した初期化エントリ数分の初期化処理を可
能とする。図96において、ディレクトリメモリ制御部
1102には図91の実施例に加え新たに初期化エント
リ数レジスタ1206とアドレス比較部1208が設け
られる。初期化エントリ数レジスタ1206にはメイン
メモリの実装数に対応した初期化エントリ数が格納され
る。この初期化エントリ数は、メインメモリの実装容量
を、ディレクトリ方式のブロック容量で割った値であ
る。
【0423】アドレス比較部1208は、初期化制御部
1170による初期化処理で更新される初期化アドレス
レジスタ1174の値と、ディレクトリメモリの初期化
終了位置を示す初期化エントリ数レジスタ1206の値
を比較し、両者が一致したときに比較出力をオンとし、
初期化制御部1170による初期化処理を終了させる。
【0424】図97は、図96のディレクトリメモリ制
御部1102における初期化制御部1170、アドレス
比較部1208及び初期化エントリ数レジスタ1206
の部分の論理回路である。まず初期化エントリ数レジス
タ1206には、プロセッサエレメントからの指示で初
期化エントリ数を示すデータ1212が与えられ、レジ
スタセット指示1210のオンのタイミングで保持され
る。
【0425】この初期化エントリ数レジスタ1206に
保持された初期化エントリ数は、アドレス比較部120
8に与えられる。一方、初期化制御部1170は、この
実施形態にあっては、タイマ回路1178のみを備え、
初期化起動レジスタ1172からのスタート指示118
8のオンにより起動し、一定のタイマ周期で初期化指示
1190をオンし、初期化アドレスレジスタ1174及
び図示しないディレクトリ制御部1115に出力する。
【0426】初期化アドレスレジスタ1174の現在の
初期化アドレス1175は、アドレス比較部1208で
初期化エントリ数レジスタ1206の値と比較される。
そして両者が一致すると初期化完了指示1192がオン
し、タイマ1178をリセットすることで初期化処理を
終了させる。図98は図96の変形実施例であり、メイ
ンメモリの実装状態が分散していることに対応し、任意
のディレクトリメモリの領域を特定して初期化処理を行
うようにしたことを特徴とする。即ち、図95における
ようなメインメモリの実装アドレスは、連続ではなく飛
び飛びに割り振られる場合がある。このような場合にデ
ィレクトリメモリの0番地から最大番地までの初期化動
作を行うと時間がかかるため、部分的に割り振られた領
域に対する初期化が必要である。
【0427】そこで図98の実施例にあっては、図96
の初期化エントリ数レジスタ1206に対し、更に、開
始アドレスレジスタ1214とアドレス加算部1216
を加えている。開始アドレスレジスタ1214には、プ
ロセッサエレメント702からの指示により任意の初期
化開始アドレスを書き込むことができる。初期化エント
リ数レジスタ1206には、初期化アドレスレジスタ1
214の開始アドレスを起点とした使用領域の初期化エ
ントリ数が格納される。開始アドレスレジスタ1214
の開始アドレスは、初期化アドレスレジスタ1174に
送られて開始アドレスが生成される。
【0428】またアドレス加算部1216で初期化エン
トリ数レジスタ1206の値と加算され、これによれ初
期化終了アドレスが算出されてアドレス比較部1208
に設定される。アドレス比較部1208は、初期化アド
レスレジスタ1174より初期化ごとに出力される初期
化対象アドレスとアドレス加算部1216からの初期化
終了アドレスとを比較し、両者が一致すると、初期化制
御部1170の制御を停止させる。
【0429】図99は、図98の初期化制御部117
0、アドレス比較部1208、初期化エントリ数レジス
タ1206、開始アドレスレジスタ1214及びアドレ
ス加算部1216についての論理回路である。即ち、図
114の回路に新たにD−FFを用いた開始アドレスレ
ジスタ1214とアドレス加算部1216を設けてお
り、開始アドレスレジスタ1214にレジスタ指示12
18のオンにより格納したデータ1220による開始ア
ドレスを初期化アドレスレジスタ1174に対するデー
タとして格納し、これをカウンタ初期値としている。
【0430】このため初期化制御部1170に設けたタ
イマ1178からの一定周期の初期化指示1190のオ
ンで、初期化アドレスレジスタ1174は、開始アドレ
スレジスタ1214でセットされた開始アドレスからの
カウントを開始し、開始アドレスからの初期化を行うこ
とになる。そしてアドレス加算部1216から出力され
た初期化終了アドレスとの一致がアドレス比較部120
8で判別されると、初期化完了指示1192をオンして
タイマ1178をオフし、初期化処理を終了する。
【0431】図100は図98の変形実施例であり、ハ
ードウェア構成を簡単にするため、プロセッサエレメン
ト702からのディレクトリメモリ1100における初
期化の終了アドレスを設定する終了アドレスレジスタ1
222を設けたことを特徴とする。それ以外の構成は図
115と同じである。図01は、図100の初期化制御
部1170、アドレス比較部1208、終了アドレスレ
ジスタ1222、開始アドレスレジスタ1214及び初
期化アドレスレジスタ1174の部分を取り出した論理
回路である。この論理回路は図116と対比すると、初
期化エントリ数レジスタ1206及び加算部1216の
代わりに、終了アドレスレジスタ1222のみで済み、
ハードウェア構成を簡略化することができる。もちろ
ん、終了アドレスレジスタ1222にセットするディレ
クトリメモリ1100の初期化終了アドレスは、プロセ
ッサエレメント702側でメインメモリの実装状態に応
じた開始アドレスの値に実装メモリ容量に基づく初期化
エントリ数を加算した値として算出して設定することに
なる。
【0432】
【発明の効果】
(TMRユニット)以上説明してきたように本発明によ
れば、大規模なハードウェア構成を用意することなく、
比較的小規模なハードウェア構成により、充分な高信頼
性機能を備えた情報処理システムを安価に実現すること
ができる。
【0433】また本発明にあっては、確実に故障を検出
することができると共に、更に故障発生時に多重化ユニ
ットを構成する全ての処理装置を停止することなく、故
障を起こした処理装置を切り離して縮退した構成を再構
築し、処理内容の整合性を保ちながら処理を続行でき
る。抑制することで、メモリコピー中の更新を抑止する
と同時に、通常動作における制限を最小限に抑えること
が可能となり、メモリコピーに時間が掛かっても、業務
の停止といった事態を確実に回避できる。またメモリコ
ピーに先立ってテストコピーを行うことで、転送制御系
回路の正常動作を確認できるため、早期に異常の検出が
可能となり、システムの迅速な復旧を図ることができ
る。
【0434】更に、メモリコピーの処理中に特定のメモ
リ領域がアクセス禁止に陥っても、 (ウェイクアップモード)本発明によれば、故障した処
理装置を新たな処理装置に交換した際の主記憶コピー中
であっても、ウェイクアップモードの設定によりマスタ
ー処理装置のメモリアクセスをバス転送を介してスレー
ブ処理装置及び交換処理装置のメモリに反映させること
で、既存の多重化ユニットを構成する処理装置による多
重化動作を停止することなく、またコピー処理によるメ
モリ内容の不一致を起こすことなく動作させ、装置交換
時のシステム停止時間を最小限にして、フォルトトレー
ラントとしての情報処理装置の高信頼化を著しく向上す
ることができる。 (ディレクトリ方式)本発明によれば、ディレクトリメ
モリの特定ビットと指示レジスタの不一致に基づいて無
効化を行うため、指示レジスタの変更のみでディレクト
リメモリの全領域の無効化が可能となり、ごく短時間で
ディレクトリメモリの無効化が完了し、TMRユニット
として運用している際のシステム停止時間を最小限に抑
え、高信頼性情報処理装置としての性能向上に大きく寄
与する。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明によるTMR系の故障を検出する実施例
のブロック図
【図3】多重バス構成の実施例を示したブロック図
【図4】故障検出を高速化するための実施例のブロック
【図5】故障検出タイミングを通知する本発明の実施例
のブロック図
【図6】故障検出結果を相互に通知する本発明の実施例
のブロック図
【図7】バス情報の故障箇所を判定する本発明の実施例
のブロック図
【図8】図7の故障処理装置判定回路の実施例を示した
回路図
【図9】図8の実施例による故障箇所の判定内容の説明
【図10】故障発生時に各種資源の更新を抑止する本発
明の実施例のブロック図
【図11】図10の更新抑止が行われる内部回路の一部
の実施例を示した回路図
【図12】故障処理装置をTMRユニットから切り離す
本発明の実施例のブロック図
【図13】図12の故障処理装置判定回路の実施例を示
した回路図
【図14】図12のバス出力イネーブル生成回路の実施
例を示した回路図
【図15】故障検出時にマスター処理装置の再決定を行
う本発明の実施例のブロック図
【図16】図15のマスター処理装置故障判定回路の実
施例を示したブロック図
【図17】図15のマスター情報レジスタの実施例を示
した回路図
【図18】図17によるマスター処理装置番号の更新の
説明図
【図19】故障時の保持情報を再転送する本発明の実施
例のブロック図
【図20】図19の故障処理装置判定回路の実施例を示
した回路図
【図21】図19の再転送制御回路の実施例を示した回
路図
【図22】故障時に保持情報の再転送を指示する本発明
の実施例のブロック図
【図23】図22の故障処理装置判定回路の実施例を示
した回路図
【図24】図22の再転送信号用トライステート回路の
実施例を示した回路図
【図25】図22の再転送制御回路の実施例を示した回
路図
【図26】図25の動作を示したタイミングチャート
【図27】生存処理装置表示フラグ回路を備えた実施形
態のブロック図
【図28】生存処理装置表示フラグによるパス情報故障
検出結果のマスク出力のブロック図
【図29】パス出力許可フラグによるパス情報故障検出
結果のマスク出力のブロック図
【図30】生存処理装置表示フラグによるパス情報故障
検出結果のマスク入力のブロック図
【図31】マスター情報通知機能を有するTMRユニッ
トのブロック図
【図32】マスター情報の故障検出機能を有するTMR
ユニットのブロック図
【図33】マスター情報の故障検出を起した装置の判定
機能を有するTMRユニットのブロック図
【図34】装置自身の生存処理装置表示フラグによりマ
スター情報をマスク出力するTMRユニットのブロック
【図35】バス出力フラグによりマスター情報をマスク
出力するTMRユニットのブロック図
【図36】各処理装置の生存処理装置表示フラグにより
他の処理装置からのマスター情報をマスク入力するTM
Rユニットのブロック図
【図37】マスター情報の通知による故障検出判定機能
を備えた多重バス構成のTMRユニットのブロック図
【図38】故障検出時に生存処理装置表示フラグをオフ
する機能を有するTMRユニットのブロック図
【図39】図38の生存処理装置表示フラグ制御回路の
ブロック図
【図40】故障検出時にバス出力許可フラグをオフする
機能を有するTMRユニットのブロック図
【図41】図40のバス情報故障判定回路のブロック図
【図42】図40のマスター情報故障検出判定回路のブ
ロック図
【図43】図40のバス出力イネーブル生成回路のブロ
ック図
【図44】マスター処理装置の故障検出時にマスター情
報を更新する機能を有するTMRユニットのブロック図
【図45】図44のマスター情報レジスタ回路のブロッ
ク図
【図46】マスター処理装置の故障検出時にマスター情
報を更新しない機能を有するTMRユニットのブロック
【図47】図46のマスター情報レジスタ回路のブロッ
ク図
【図48】故障検出時に各種資源の更新抑止機能を有す
るTMRユニットのブロック図
【図49】図48のデータ更新抑止回路のブロック図
【図50】故障検出時に再転送を指示する機能を有する
TMRユニットのブロック図
【図51】図50の再転送指示用トライステート回路の
ブロック図
【図52】バス故障可能性フラグを有するTMRユニッ
トのブロック図
【図53】図52におけるバス故障パターンの説明図
【図54】図52のバス故障検出回路のブロック図
【図55】図52のバス情報検出判定回路のブロック図
【図56】図52のマスター情報レジスタ回路のブロッ
ク図
【図57】バス故障検出フラグのリセット機能を備えた
TMRユニットのブロック図
【図58】図57のバス故障検出回路のブロック図
【図59】バス故障可能性フラグをもつ多重バス構成と
したTMRユニットのブロック図
【図60】図59の多重バス故障判定回路のブロック図
【図61】バス故障検出でバス出力イネーブルフラグを
オフして故障バスを切離すTMRユニットのブロック図
【図62】図61のバス故障検出回路のブロック図
【図63】図61のマスター情報レジスタ回路のブロッ
ク図
【図64】図61のバス出力イネーブル回路のブロック
【図65】バス故障可能性フラグをソフトウェアの指示
でリセットするバス故障検出回路のブロック図
【図66】図65のソフトウェアによるリセット処理の
フローチャート
【図67】バス故障可能性フラグをハードウェアでリセ
ットするバス故障検出回路のブロック図
【図68】バス故障表示フラグを備えたTMRユニット
のブロック図
【図69】図68の故障表示フラグ回路のブロック図
【図70】バス故障発生フラグを備えたTMRユニット
のブロック図
【図71】縮退による処理装置2台故障発生フラグを備
えたTMRユニットのブロック図
【図72】ソフトウェアに故障発生を通知する機能を備
えたTMRユニットのブロック図
【図73】図72のソフト通知信号生成回路のブロック
【図74】ウェイクアップモードにより装置交換を立ち
上げる実施例のブロック図
【図75】ウェイクアップモードのリードアクセスの処
理説明図
【図76】図75のリードアクセスの回路動作の説明図
【図77】ウェイクアップモードのライトアクセスの処
理説明図
【図78】図75のライトアクセスの回路動作の説明図
【図79】ウェイクアップモードの有無によるマスタ処
理のフローチャート
【図80】ウェイクアップモードの有無によるスレーブ
及び交換装置処理のフローチャート
【図81】ウェイクアップモードの有無による装置交換
時のシステム停止を対比した説明図
【図82】ディレクトリメモリを備えた処理装置のブロ
ック図
【図83】無効化を行うディレクトリメモリ制御部のブ
ロック図
【図84】電源投入時のディレクトリメモリの初期化処
理のフローチャート
【図85】運用中のディレクトリメモリの通常のフロー
チャート
【図86】運用中のディレクトリメモリの無効化処理の
フローチャート
【図87】図83のディレクトリメモリ制御部の回路ブ
ロック図
【図88】無効化処理の禁止を制御可能なディレクトリ
メモリ制御部のブロック図
【図89】図88のディレクトリメモリ制御部の回路ブ
ロック図
【図90】運用中における複数回の無効化と初期化処理
のジェネリックフローチャート
【図91】運用中に初期化処理を行うディレクトリメモ
リ制御部のブロック図
【図92】図91のディレクトリメモリ制御部の回路ブ
ロック図
【図93】エントリ単位の初期化処理の時間間隔を制御
可能なディレクトリメモリ制御部のブロック図
【図94】図93における時間間隔の制御部分の回路ブ
ロック図
【図95】メインメモリの実装状態とディレクトリメモ
リの使用状態の説明図
【図96】メインメモリ実装に応じた領域を初期化する
ディレクトリメモリ制御部のブロック図
【図97】図96における特定領域の初期化部分の回路
ブロック図
【図98】不連続なメインメモリ実装に応じた領域を初
期化するディレクトリメモリ制御部のブロック図
【図99】図98における特定領域の初期化部分の回路
ブロック図
【図100】図98の初期化終了アドレスの設定を簡略
化したディレクトリメモリ制御部のブロック図
【図101】図100における特定領域の初期化部分の
回路ブロック図
【符号の説明】
10:TMRユニット(3重化構成ユニット) 10−1,10−2,10−3,10−n:処理装置 12,12−1,12−2:バス 16:マスター情報一致判定回路 18−1〜18−3:外部端子 20:ドライバ 22:出力情報生成回路 24:バス用トライステート回路 26,64,78−1〜78−3:出力ドライバ 28,66,80−1〜80−3:入力ドライバ 30−1〜30−3:バス接続端子 32:出力タイミング生成回路 34:バス出力イネーブル生成回路 36,44:ANDゲート 38:バス情報一致判定回路 40:バス情報故障検出回路 42:インバータ 46:各種処理回路 48,48−1,48−2:TMR制御回路(多重化制
御回路)
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成8年8月23日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正内容】
【書類名】 明細書
【発明の名称】 情報処理装置
【特許請求の範囲】
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、多重化ユニットを
構成する少なくとも3台のプロセッサをバスで接続して
同じ処理を同時に実行することで故障を検出して必要な
処理を行う高信頼性情報処理装置に関し、多重化ユニッ
トの内の1台をマスター処理装置、残りをスレーブ装置
として故障を検出する高信頼性の情報処理装置に関す
る。
【0002】近年、情報処理装置が各種分野で広く使用
されてきたのに伴い、情報処理装置が故障した場合、社
会的、経済的に大きな影響を与える可能性が考えられ
る。このため出来る限り故障が発生しにくく、また、万
一故障が発生した場合でも、確実に故障が検出でき、更
には、処理装置が停止せずに、処理内容の整合性を保ち
ながら、処理を続行できるような、信頼性の高い情報処
理装置が求められている。
【0003】
【従来の技術】従来、高信頼性情報処理装置としては、
3重以上の多重化構成を備えた情報処理装置が提供され
ている。このような多重化処理装置を実現する方法とし
ては、次のようなものが考えられている。一つのユニッ
ト内に、3台以上のプロセッサ等の処理装置と多数決論
理回路を用意する。多数決論理回路は、同一クロックで
同期動作している3個以上の処理装置の出力信号に対
し、多数決論理に基づいた演算を行い、その結果を、主
記憶ユニット等の他の処理装置に送出する方法である。
【0004】
【発明が解決しようとする課題】しかしながら、多数決
論理を用いた多重化処理装置にあっては、各処理装置の
実行サイクル数は増えないが、多数決論理を行う分だけ
実行サイクル数が増して処理時間が遅くなる。また、専
用の多数決論理回路そのもののハードウェア量が大き
く、また処理装置と多数決論理回路の間にも多数の信号
線が必要になり、回路構成が複雑化しコスト的にも高価
であった。
【0005】本発明は、このような問題点に鑑みてなさ
れたもので、比較的小規模なハードウェア量で十分な高
信頼性機能を実現できるコスト的にも安価な高信頼性情
報処理装置を提供することを目的とする。
【0006】
【課題を解決するための手段】図1は本発明の原理説明
図である。本発明の情報処理装置は、多重化処理装置、
最小構成で処理装置を3台備えた3重化処理装置10
(以下「TMRユニット」という)を基本とする。ここ
でTMRユニット10とは、次の条件を満足する装置で
ある。
【0007】少なくとも3台の処理装置10−1〜1
0−3をバス12で接続している。 3台の処理装置10−1〜10−3は同一クロックに
同期して同じ処理を行う。 処理装置10−1〜10−3の内、1台の処理装置1
0−1がマスター処理装置に設定され、残りの処理装置
10−2,10−3がスレーブ処理装置に設定されてい
る。
【0008】マスター処理装置10−1は、生成した
情報をバス12に出力し、またバス12の情報を取り込
む。 スレーブ処理装置10−2,10−3は、生成した情
報をバス12に出力せず、バス12の情報の取り込みの
みを行う。 このようなTMRユニット10につき、本発明は、処理
装置10−1〜10−3の各々に、多重化制御回路(T
MR制御回路)48を設ける。多重化制御回路48は、
処理装置10−1〜10−3が生成した出力情報とバス
12上に出力されたバス情報との比較に基づいて故障を
検出し、内部回路に必要な処理を行わせる。
【0009】ここで処理装置10−1〜10−3で生成
されてバス12に出力される情報とは、データ、アドレ
ス、バス制御情報等の各種の情報を意味する。多重化制
御回路48は、バス情報と各処理装置10−1〜10−
3が生成した出力情報との不一致からバス情報の故障を
検出するバス情報一致判定回路を有し、バス情報一致判
定回路による故障検出の判断を、各処理装置10−1〜
10−3が生成した出力情報の出力タイミングで行う。
【0010】多重化制御回路48は、バス12上に生成
した情報を出力する際に、情報出力タイミングを示すタ
イミング信号を生成する出力タイミング生成回路と、マ
スター処理装置の割当て状態で、タイミング信号を専用
の信号線により他の処理装置に出力するタイミング信号
出力回路と、マスター処理装置の割当て状態では、信号
線から入力した装置自身が生成したタイミング信号また
は装置自身が生成したタイミング信号で、バス情報と出
力情報の比較による故障検出を行い、スレーブ処理装置
の割当て状態では、信号線から入力したマスター処理装
置からのタイミング信号または装置自身が生成したタイ
ミング信号で、バス情報と出力情報を比較して不一致時
に故障を検出するバス情報故障検出回路を備える。
【0011】多重バス構成の場合は、各バス毎に出力タ
イミング生成回路、タイミング信号出力回路、及びバス
情報故障検出回路を設ける。マスター処理装置の故障検
出時に、マスター処理装置が割り当てられた処理装置1
0−1の多重化制御回路48は、装置自身でバス12と
の接続を切り離し、スレーブ処理装置が割り当てられた
処理装置10−2,10−3の多重化制御回路48にあ
っては、残りの処理装置10−2,10−3の中で新た
なマスター処理装置を決定し、縮退した多重化ユニット
を再構成する。多重化制御回路は、マスター処理装置を
設定するためマスター情報レジスタ回路を備える。
【0012】このような本発明の高信頼性情報処理装置
によれば、TMRユニットを構成している各処理装置
は、バスに生成した情報(データ、アドレス、その他の
バス制御情報を含む)を出力する場合、マスター処理装
置が生成した情報のみが出力され、スレーブ処理装置の
生成した情報は、バスに出力されないように抑止され
る。この状態でTMRユニットを構成する各処理装置
は、処理装置が生成した情報を出力するタイミングで、
バス上に出力された情報を取り込み、処理装置が生成し
た出力情報とバス上の情報が一致するか否かを処理装置
が生成した情報出力タイミングで行い、不一致の際にT
MRユニット内での故障を判定する。
【0013】バスは1本でもよいし、多重バス構成でも
よい。多重バス構成の場合は、バス毎に故障検出を行
う。特定バスの故障が検出された場合には、故障バスを
切り離し、残った正常なバスのみを使用した縮退構成で
処理を継続する。TMRユニットを構成している各処理
装置は、バスから受信したバス情報、処理装置が生成し
た出力情報、情報出力タイミングを、一旦、装置内に保
持した後に故障検出を行う。この場合、バスのアクセス
サイクル数は若干増加するが、検出処理を終るまでバス
上に情報を維持する必要がないので、バスのサイクルタ
イムを短くでき(高速化)、全体としてのバス性能の向
上が図られる。
【0014】マスター処理装置は、バス上に情報を出力
する場合、同時に情報出力タイミングを示す信号を出力
する。出力されたタイミング信号は、TMRを構成して
いる各処理装置間に用意された専用の信号線を用いて、
TMRを構成している各処理装置に入力される。TMR
ユニットを構成しているマスター処理装置を含む各処理
装置は、マスター処理装置から送られてきた情報出力タ
イミング信号と、各処理装置が生成した同様な情報出力
タイミング信号の論理和を取り、これを内部の一致検出
タイミング信号として使用する。バス情報と装置が生成
した出力情報の比較による不一致か否かの検出は、一致
検出タイミング信号に基づいて行われる。
【0015】尚、常時出力されるバス情報の一致検出
は、特別な出力タイミング信号は使用せずに、バス上の
情報と各処理装置が生成した出力情報を比較すればよ
い。TMRユニットを構成する各処理装置でバス情報の
不一致による故障が検出された場合、各処理装置は故障
検出信号を生成し、各処理装置間に用意された専用の信
号線を用いて各処理装置に送る。マスター処理装置を含
む各処理装置は、送られてきた故障検出信号により故障
発生を判定する。故障が検出された場合、TMRユニッ
トを構成している各処理装置は、受け取った故障検出信
号の判定パターンに従い故障箇所を判定する。
【0016】故障が検出された場合、故障データによる
各種資源の破壊を抑止するため、バスから入力された情
報は、故障検出が完了するまでの必要な時間だけ保持さ
れ、内部回路の制御には、保持された情報が使用され
る。また、故障が検出された場合は、内部回路の各種資
源の更新を抑止する。更に故障検出で、故障した処理装
置はバスから切り離される。
【0017】バスから切り離された処理装置がマスター
処理装置であることを判定した場合、残りの正常な処理
装置の中から新しいマスター処理装置を決定する。マス
ター処理装置の再決定が行われ縮退したTMRユニット
が再構成されると、故障発生で保持していた情報を新マ
スター処理装置がバスに再転送し、リトライを行わせ
る。
【0018】この再転送は、装置内部で転送指示を行っ
てもよいし、各装置間に専用の信号線を接続し、故障を
検出したマスター処理装置から再転送を指示する信号を
送って行ってもよい。この再転送は、TMRユニットを
構成する処理装置に限定されず、同じバスに接続されて
いる他の処理装置についても同様である。 (生存処理装置表示フラグ)TMRユニット12を構成
する処理装置10−1〜10−3の多重化制御回路48
には、現在どの処理装置が正常に動作しており、どの処
理装置が故障等によって多重化ユニット10から離脱し
ているかを示す生存処理装置表示フラグを備えた生存処
理装置表示フラグ回路を設けている。
【0019】生存処理装置表示フラグのフラグ信号は、
故障判定結果のマスク出力とマスク入力に使用される。
例えば、出力マスク回路は、装置自身がTMRユニット
10からの離脱でオフしている生存処理装置表示フラグ
の信号により、装置自身からの情報の出力をマスクして
出力する。これによってTMRユニット10を離脱した
処理装置が、誤った故障検出結果をTMRユニット10
を構成する他の処理装置10−2,10−3に通知して
誤動作させてしまうことを防止する。
【0020】また多重化制御回路48は、バスの出力許
可状態の時にオンするバス出力許可フラグを備えたバス
出力許可フラグ回路を有することから、出力マスク回路
は、装置自身からの情報の出力を、バス出力許可フラグ
の信号によりマスクして出力する。これによってTMR
ユニット10を離脱した処理装置が、誤った故障検出結
果をTMRユニット10を構成する他の処理装置10−
2,10−3に通知して誤動作させてしまうことを、二
重化して確実に防止する。
【0021】また生存処理装置表示フラグのフラグ信号
は、入力マスク回路において、他の処理装置からの出力
情報をマスクして入力する。これによってTMRユニッ
ト10を離脱した他の処理装置から誤った故障検出結果
が通知されても、誤動作しないようにできる。各処理装
置10−1〜10−3の多重化制御回路48は、各処理
装置がどの処理装置をマスター処理装置として認識して
いるかを示すマスター情報を、専用の信号線を介して入
出力することにより互いに通知するマスター情報通知回
路を備える。
【0022】また多重化制御回路は、マスター情報故障
判定回路を備え、マスター情報通知回路における装置自
身のマスター情報と他の処理装置から通知されたマスタ
ー情報との比較結果に基づいて、マスター情報故障を起
した処理装置を示すマスター情報故障判定信号を生成す
る。TMRユニット10を構成している処理装置10−
1〜10−3は、マスター処理装置のバス情報の故障あ
るいはマスター情報の故障が判定された場合には、残り
の正常な処理装置の中から、新しいマスター処理装置を
決定し、マスター情報の内容を更新する。
【0023】(バス故障可能性フラグ)TMRユニット
10を構成している各処理装置10−1〜10−3が、
多重化制御回路48とバス12との間に、更にトランシ
ーバ回路を設けた装置構成の場合、バス12自体の故障
が発生すると、マスタ処理装置10−1で正常で且つ全
てのスレーブ装置12−2,12−2でバス情報故障あ
りとなる故障検出パターンが得られる。この故障検出パ
ターンは、多数決処理によりマスター装置故障のように
判定されてしまう。
【0024】そこで、このバス故障可能性パターンを検
出した際にバス故障可能性フラグをオンするバス故障検
出回路を設ける。バス故障可能性パターンを検出すると
バス故障可能性フラグをオンし、マスター処理装置を更
新をすると共に旧マスター処理装置の多重化ユニットか
らの切り離しは行わないようにする。バス故障可能性パ
ターンの故障が一度発生し、バス故障可能性フラグをオ
ンした後に、旧マスター処理装置の故障を検出した場合
は、旧マスター処理装置の故障と断定し、多重化ユニッ
トから切り離す。
【0025】またバス故障可能性パターンの故障が一度
発生し、バス故障可能性フラグをオンした後に、バス自
体の故障を検出した場合は、もう一度、バス故障可能性
パターンが検出されるので、その時にバス自体を切り離
す。バスの多重化構成の場合には、バス毎にバス故障検
出回路を設け、バス自体の故障が検出された場合は、故
障したバスを切り離し、残った正常なバスのみを使用
し、縮退したバス構成で処理を続行する。
【0026】更に、TMRユニット10を構成している
処理装置が故障すると、通常、ハードウェアで故障した
処理装置が自動的に切り離され、縮退構成を形成して処
理を続行する。 (ウェイクアップモード)TMRユニット10を構築し
ている複数の処理装置10−1〜10−3の中で、例え
ば処理装置10−3が故障すると、2台の処理装置10
−1,10−2に縮退したTMRユニット10が再構築
される。尚、2台の処理装置でTMRユニットを構成し
ている場合も含む。
【0027】この場合、故障した処理装置10−3を新
しい処理装置に交換し、3重化構成に戻す必要がある。
3重化構成に戻すためには、交換処理装置10−3のク
ロックレベルの同期が完了した後に、TMRユニット1
0の処理装置10−1,10−2のメモリを交換処理装
置10−3にコピーして一致させる必要がある。しか
し、メモリコピー中に多重化動作を行うと、コピーの済
んだコピー元のメモリ内容が書き替えられ、メモリ内容
の一致が保証できない。このためメモリコピーが完了す
るまでは、TMRユニット10としての多重化動作を禁
止せざるを得ず、この間、システムが停止状態となる。
【0028】そこで本発明によれば、故障処理装置の交
換から多重化動作開始までのシステム停止時間を最小限
にする高信頼性情報処理装置が提供される。本発明の高
信頼性情報処理装置は、モード設定部により、故障によ
りTMRユニット10から切り離された例えば処理装置
10−3を新しい処理装置に交換して、TMRユニット
10を構成している処理装置10−1,10−2とのク
ロックレベルの同期化が行われた時に、ウェイクアップ
モードを設定する。
【0029】このウェイクアップモードの設定状態で
は、マスター処理装置10−1のメモリ制御部は、内部
でのメモリアクセスをバス12を経由して行わせ、スレ
ーブ処理装置10−2及び交換処理装置10−3の各メ
モリ制御部は、内部でのメモリアクセスを、バス12上
のデータを取り込んで行わせる。具体的には、ウェイク
アップモードの設定状態で、リードアクセスは次のよう
になる。マスター処理装置10−1のメモリ制御部は、
プロセッサからメモリに対するリードアクセスがあった
場合、メモリのリードデータをバス12に転送すると同
時にバス12からリードデータを取り込んでプロセッサ
に転送する。またスレーブ処理装置10−2および交換
処理装置10−3の各メモリ制御部は、メモリに対する
リードアクセスがあった場合、バス12からマスター処
理装置10−1が転送したリードデータを取り込んでプ
ロセッサに転送する。
【0030】またウェイクアップモードの設定状態での
ライトアクセスは次のようになる。マスター処理装置1
0−1のメモリ制御部は、プロセッサからメモリに対す
るライトアクセスがあった場合、メモリのライトデータ
をバス12に転送すると同時に、バス12からライトデ
ータを取り込んでメモリに転送して書き込む。スレーブ
処理装置10−2および交換処理装置10−3の各メモ
リ制御部は、メモリに対するライトアクセスがあった場
合、バス12からマスター処理装置10−1が転送した
ライトデータを取り込んでメモリに書き込む。
【0031】このように故障装置を交換した後のウェイ
クアップモードの設定状態では、マスター処理装置のメ
モリアクセスによるデータは全てバス上に転送され、ス
レーブ装置及び交換処理装置のメモリに反映される。こ
のため多重化動作とメモリコピー動作を並行して行って
も、多重化動作によるメモリ書き替えでコピーしたメモ
リ内容が一致しなくなることはない。
【0032】このためTMRユニットとしてのシステム
停止は、故障処理装置を交換してからクロックレベルの
同期を取るまでの最小時間に抑えることができる。クロ
ックレベルの同期が取れたら、メモリコピーが完了して
いなくともTMRユニット10としての多重化動作を再
開でき、更にメモリコピーが完了したら、交換処理装置
を含めたTMRユニット10の再構築による多重化動作
に移行できる。 (ディレクトリ方式)本発明のTMRユニット10で
は、メモリ容量の拡大、プロセッサ数の増加、共通バス
性能に対応するため、ディレクトリ方式のメモリシステ
ムを採用する。
【0033】ディレクトリ方式は、メモリをあるブロッ
ク単位に分け、各メモリブロックがどのような状態であ
るかを、ブロックアドレスに対応したエントリ(アドレ
ス)によりディレクトリメモリに保持する。メインメモ
リのメモリブロック状態とは、同じデータを1又は複数
のプロセッサのキャッシュ上に保持している状態を示す
シェアード状態、キャッシュ上に保持する最新データと
メモリ内容が異なっ状態を示すダーティ状態、メインメ
モリ内のデータが最新で、どのプロセッサのキャッシュ
上にも存在しない無効状態(インバリッド)などがあ
る。ディレクトリメモリは、管理するメモリのサイズを
ブロックサイズで割った容量が必要であり、かなり大き
なメモリ容量となる。本発明の高信頼システムとしての
TMRユニット10では、故障した処理装置をシステム
の電源を切らずに新しい装置に交換した時、TMRユニ
ットとしてのシステム動作を停止し、交換した処理装置
との間でクロックレベルの同期及び内部状態を同じに設
定し、続いてシステムを起動して既存の処理装置のメモ
リを交換処理装置にコピーした後に、再度、TMRユニ
ットを再構築して本来のTMRユニットとしての多重化
動作を再開する。
【0034】この装置交換に伴なう処理装置間で内部状
態を同じに設定する際に、ディレクトリメモリを全て無
効化させる必要がある。即ち、システムを停止した際に
マスター処理装置10−1及びスレーブ処理装置10−
2につき、ディレクトリメモリ上でダーティ状態となっ
てキャッシュ上に最新データが存在するブロックを、全
てメインメモリにライトバックしてインバリッド状態と
した後、交換処理装置を含む全ての処理装置10−1〜
10−3のディレクトリメモリを無効化し、初期状態と
する。
【0035】この場合のディレクトリメモリの無効化
は、無効化処理を高速化して短時間で済ます必要があ
る。即ち、無効化処理は、プロセッサがディレクトリメ
モリ制御部を経由してディレクトリメモリに対し、1エ
ントリずつ無効を示す値を順次ライトする。このため全
エントリのライトをプロセッサが行って無効化する場
合、無効化の間、TMRユニット10のシステム動作は
停止する。本発明の高信頼情報処理装置では、数ミリセ
カンドといった短時間のシステム停止でも運用に影響が
出てしまう場合がある。
【0036】そこで、本発明は、ディレクトリメモリの
無効化を瞬時で完了するようにした高信頼性情報処理装
置を提供することを目的とする。この目的を達成するた
め、TMRユニット10を構成する処理装置10−1〜
10−3の各々は、ディレクトリメモリに、所定のブロ
ックサイズに分けられたメインメモリの各メモリブロッ
クの状態を示すディレクトリ情報を格納すると共に、電
源投入によるシステムの初期設定時にディレクトリ情報
の特定ビットに特定の値αを書き込んでおく。またディ
レクトリ情報の特定ビットと同じ値αを格納した指示レ
ジスタを準備する。
【0037】ディレクトリメモリのデータ制御部は、デ
ィレクトリメモリの読出し時に特定ビットの値と指示レ
ジスタ値を比較し、一致していればディレクトリ情報を
有効とし、一致していなければメインメモリのデータが
最新で他の部位に存在しないことを示す無効化を示す値
にディレクトリ情報を更新する。このため、無効化部に
よつて、処理装置の交換時等に、指示レジスタの値αを
別の値βに変更するだけで、データ制御部によりディレ
クトリメモリの全内容を瞬時に無効化させることができ
る。
【0038】ここで、データ制御部によるディレクトリ
メモリの無効化を禁止させる制御レジスタを設け、指示
レジスタの値とディレクトリ情報の特定ビットの値が一
致しなくとも、ディレクトリ情報を有効とすることも可
能である。これは故障によりTMRユニット10から外
された処理装置を、故障の修理後にTMRユニット10
以外の処理装置として使用する場合等、運用中の無効化
を必要としない場合に利用できる。
【0039】またTMRユニットにあっては、複数回無
効化を行いたい場合もある。この場合、一度無効化を行
うと、ディレクトリメモリの特定ビットは指示レジスタ
で変更した値βに変更される。そこで無効化終了で指示
レジスタを元の値αに戻し、次の無効化で指示レジスタ
の値を再びβに変更した場合、ディレクトリメモリの特
定ビットは前回の無効化でβとなっており、指示レジス
タの値と一致するため有効となり、無効化できない。
【0040】このため、無効化が終了したらディレクト
リメモリの特定ビットの値βを元の値αに戻す再度の初
期化が必要となる。しかし、運用中の初期化はプロセッ
サの負担となる。そこで本発明にあっては、ディレクト
リメモリの制御部に次のような初期化機能を設ける。即
ち、初期化起動レジスタと初期化完了表示レジスタを設
け、初期化制御部により、プロセッサから初期化起動レ
ジスタに一定値が書き込まれた時に、データ制御部にデ
ィレクトリメモリの初期化動作を開始させる。初期化動
作中は、ディレクトリメモリの特定ビットに指示レジス
タと同じ値αを書き込み、他のビットには無効状態を示
す値を書き込む。
【0041】ディレクトリメモリの全領域(全エント
リ)の書込みが済んだら、完了表示レジスタに初期化完
了を示す値を書き込む。このようなディレクトリメモリ
の初期化を無効化後に行なうことで、複数回の無効化を
可能とする。ディレクトリメモリの初期化動作におい
て、1エントリ毎の処理間隔が短いとプロセッサからの
アクセスがビジィとなり、性能低下の原因となる。そこ
で、時間間隔指示レジスタを設け、初期化制御部による
ディレクトリメモリのエントリ単位の初期化動作の時間
間隔を指定し、プロセッサのアクセスに対するビジィを
低減し、性能低下を抑える。
【0042】メインメモリは、最大実装可能範囲で任意
の実装状態をとる。ディレクトリメモリは、メインメモ
リの最大実装の最大容量をブロックサイズで割った数の
エントリをもつ。しかし、初期化処理の際に未実装のメ
インメモリのエントリの初期化を行うことは、初期化の
時間を必要以上に長くする。そこで、メインメモリの実
装数に応じた初期化エントリ数を指示する初期化エント
リ数レジスタを設け、アドレス比較部で、初期化動作中
に更新される初期化対象アドレスが初期化エントリ数レ
ジスタの指示するエントリ数に一致したときに、初期化
制御部に初期化動作の終了を指示する。これによってメ
インメモリの実装に対応したディレクトリメモリのエン
トリのみの初期化を可能とする。
【0043】またメインメモリの実装は飛び飛びに行わ
れることもあるので、初期化開始アドレスレジスタの指
示する開始アドレスに、初期化エントリレジスタの指示
する初期化エントリ数をアドレス加算部で加算して初期
化終了アドレスを求める。
【0044】そして、アドレス比較部で、初期化動作中
に更新される初期化対象アドレスが前記加算部からのア
ドレスに一致したときに、初期化動作の終了を指示し、
メインメモリの実装に対応したディレクトリメモリの離
散した実装エントリの初期化を可能とする。この場合、
アドレス加算部を使用せず、初期化終了アドレスを指示
する終了アドレスレジスタを設けてもよい。
【0045】
【発明の実施の形態】 <目次> 1.TMR構成 2.多重バス構成 3.故障検出の高速化 4.故障検出タイミングの通知 5.故障検出結果の通知 6.故障箇所の判定 7.故障発生時の各種資源の更新抑止 8.故障処理装置の切り離し 9.マスター処理装置の再決定 10.保持情報の再転送 11.再転送指示信号の生成 12.生存処理装置表示フラグ 13.マスター情報の保証 14.バス故障検出 15.バス切り離しソフト通知 16.故障装置交換時のウェイクアップモード 17.ディレクトリメモリ1.TMR構成 (1)装置構成図1 は本発明による高信頼性情報処理装置におけるTM
R構成を示す。図2において、TMRユニット10は、
処理装置10−1,10−2,10−3の3台を少なく
とも備える。TMRユニット10を構成する処理装置1
0−1,10−2,10−3は、情報の受渡しを行うた
め、バス12に接続されている。バス12にはTMRユ
ニット10以外の処理装置10−nも接続される。尚、
以下の説明にあっては、処理装置とはTMRユニット1
0を構成している処理装置10−1〜10−3を、特別
な説明がない限り意味する。
【0046】TMRユニット10を構成する処理装置1
0−1〜10−3は、TMR構成での動作中には、処理
装置10−1〜10−3の内の1台がマスター処理装置
として動作し、残りの2台がスレーブ処理装置として動
作している。通常はマスター処理装置がバス12に必要
な情報を出力し、全ての処理装置(1台のマスター処理
装置と2台のスレーブ処理装置)がバス12上の情報の
チェックを行い、故障検出を行っている。以下に、TM
Rユニット10を構成する処理装置10−1〜10−3
の内部構成と動作を処理装置10−1のTMR制御回路
48を例にとって説明する。 (2)自処理装置のマスター/スレーブ判定 処理装置10−1〜10−3に対しては、TMRユニッ
ト10を構成する各処理装置間で重複しないように設定
された処理装置番号#1,#2,#3が外部から入力さ
れている。ここで、処理装置番号#1〜#3を外部から
入力せず、処理装置内部で設定するようにしてもよい。
【0047】しかしながら、装置内部での特別な設定を
せず、処理装置を例えばバックパネルなどに挿入した時
点で自動的に固定的な処理装置番号が入力されるように
した方が、設定誤りが発生する可能性がなくなる。この
ため、高信頼性情報処理装置としては外部入力による処
理装置番号の設定の方が有利である。処理装置10−1
を例にとると、装置内部にはマスター情報レジスタ14
が用意されており、現在のマスター処理装置番号例えば
#1が設定されている。このマスター処理装置番号#1
は、他のプロセッサ10−2,10−3のマスター情報
レジスタ14にも同様に設定されている。
【0048】マスター情報一致判定回路16には、入力
端子18−1およびドライバ20を介して外部から入力
された自処理装置の処理装置番号#1と、マスター情報
レジスタ14に保持されているマスター処理装置番号#
1が入力されている。マスター情報一致判定回路16
は、入力された2つの装置番号の一致検出を行う。装置
番号が一致していた場合には自処理装置がマスター処理
装置であると判断し、自マスター信号E1をオンにす
る。
【0049】ここで信号のオンとは、信号の論理レベル
をHレベルにセットすることを意味する。このことから
信号のオフとは、Hレベルにある信号をLレベルに立ち
下げることを意味する。処理装置10−1にあっては、
マスター情報一致判定回路16が入力した2つの装置番
号が共に#1であることから、自マスター信号E1をオ
ンする。これに対し、処理装置10−2,10−3側に
あっては、装置番号が不一致になることから自処理装置
はスレーブ処理装置であると判断し、自マスター信号E
1をオフすることになる。 (3)バスへの情報出力 処理装置10−1に設けられた出力情報生成回路22
は、不図示の内部回路からの各種指示により必要に応じ
て出力情報D1を生成している。この出力情報D1に
は、データ,アドレスおよび各種のバス制御信号が含ま
れている。出力情報生成回路22で生成された出力情報
D1は、バス用トライステート回路24に入力される。
バス用トライステート回路24には出力ドライバ26が
設けられ、出力情報生成回路22からの出力情報D1を
入出力端子30からバス12に出力する。
【0050】出力情報生成回路22による出力情報の生
成と同時に、出力タイミング生成回路32が出力タイミ
ング信号としてバス出力信号E2を生成する。生成され
たバス出力信号E2は、バス出力イネーブル生成回路3
4に入力される。この実施例ではバス出力イネーブル生
成回路34は、ANDゲート36で実現される。バス出
力イネーブル生成回路34にはマスター情報一致判定回
路16で生成された自マスター信号E1も入力される。
【0051】このためバス出力イネーブル生成回路34
では、入力されたバス出力信号E2と自マスター信号E
1が共にオンの場合にのみ、即ち処理装置10−1がマ
スター処理装置である場合にのみ、バス用トライステー
ト回路24のドライバ26に対するバスイネーブル信号
をオンにする。バス用トライステート回路24のドライ
バ26は、バス出力イネーブル生成回路34からのバス
イネーブル信号E3をイネーブル端子に受け、バスイネ
ーブル信号E3がオンの場合にのみ出力情報生成回路2
2からの出力情報D1をバス12に出力する。 バス用
トライステート回路24の入出力端子30は、外部のバ
ス12に接続され、TMRユニット10を構成している
他のスレーブ処理装置10−2,10−3やTMRユニ
ット10以外の処理装置10−nと接続される。 (4)バス情報の故障検出 バス12上の情報は処理装置10−1に入力され、バス
用トライステート回路24の入力ドライバ28を経由し
てバス情報一致検出回路38にバス情報D2として入力
される。また内部出力情報生成回路22で生成された情
報D1も、バス情報一致判定回路38に入力される。バ
ス情報一致判定回路38は、入力された2つの情報D
1,D2の一致判定を行う。
【0052】2つの情報D1,D2が一致していた場合
には、バス情報一致判定回路38はバス正常信号E4を
オンにする。また2つの情報D1,D2が不一致であっ
た場合は、バス正常信号E4をオフにする。バス情報故
障検出回路40はインバータ42とANDゲート44で
構成され、バス情報一致判定回路38から出力されたバ
ス正常信号E4と出力タイミング生成回路32で生成さ
れたバス出力信号E2が入力される。バス情報故障検出
回路40は、バス出力信号E2がオンで且つバス正常信
号E4がオフの場合にのみ、バス情報の故障検出を意味
する不一致発生信号E5をオンにする。
【0053】この不一致発生信号E5は、後の説明で明
らかにする処理装置内部の各回路に供給される。不一致
発生信号E5を受けた各内部回路は、不一致発生信号E
5がオンの場合は、TMRユニット10を構成している
処理装置10−1〜10−3のいずれか(バス12自体
の故障も含む)で故障が発生したと判断し、必要な故障
処理を行う。
【0054】以上のように、図2のTMR構成にあって
は、TMRユニット10を構成している3台の処理装置
10−1〜10−3以外に、各処理装置10−1〜10
−3で生成したバス情報の多数決などを行う別の装置は
不要であり、3台の同一の処理装置10−1〜10−3
のみでTMR構成による高信頼性機能を経済的に実現で
きる。 2.多重バス構成 (1)装置構成 図3は多重バス構成をとる本発明の高信頼性情報処理装
置の実施例である。まずTMRユニット10を構成する
処理装置10−1〜10−3は、複数のバス、この実施
例にあっては2つのバス12−1,12−2により接続
され、データの受渡しを行うことになる。TMRユニッ
ト10以外の処理装置10−nについても、バス12−
1,12−2に接続される。
【0055】TMRユニット10を構成する処理装置1
0−1〜10−3は、TMR構成による動作中、処理装
置10−1〜10−3の内の1台がマスター処理装置と
して動作し、残りの2台の処理装置がスレーブ処理装置
として動作している。通常は、マスター処理装置がバス
12−1,12−2のいずれかに対し必要な情報を出力
し、全処理装置(1台のマスター処理装置と2台のスレ
ーブ処理装置)がバス12−1または12−2の出力情
報をチェックし、故障検出を行っている。
【0056】バス12−1,12−2の2つによる多重
バス構成にあっては、各処理装置10−1〜10−3が
各バス12−1,12−2ごとに図2の実施例に示した
ような故障検出機能をもっている。以下に、多重バス構
成におけるTMRユニット10の処理装置10−1〜1
0−3の内部構成を処理装置10−1を例にとって説明
する。 (2)処理装置の内部構成 TMRユニット10の処理装置10−1〜10−3は、
処理装置10−1に代表して示すように、内部回路は大
きく分けて3つの回路により構成されている。1つはT
MR処理機能以外の本来の処理装置の機能を実現するた
めの各種処理回路46である。残り2つはTMR処理機
能を実現するためのTMR制御回路48−1,48−2
であり、基本的には、同一の機能を有する回路が外部の
バス12−1,12−2に対応して設けられている。即
ち、TMR制御回路48−1が外部のバス12−1に対
応して設けられ、TMR制御回路48−2が外部のバス
12−2に対応して設けられる。
【0057】各種処理回路46とTMR制御回路48−
1,48−2は、データ/制御用の信号線50で接続さ
れている。この実施例にあっては、データ/制御用の信
号線50は2つのTMR制御回路48−1,48−2で
共通としているが、信号線50をTMR制御回路48−
1,48−2ごとに別々に設けてもよい。TMR制御回
路48−1,48−2から各種処理回路46に対して
は、切り離し通知信号E6,E7の信号線が接続されて
いる。この実施例にあっては、バス故障の切り離し通知
信号E6,E7を出力する場合を例にとっているが、バ
ス切り離し情報をTMR制御回路48−1,48−2内
に保持し、各種処理回路46が必要に応じバス切り離し
情報を取りに行ってもよい。またバス切り離し情報は、
TMR制御回路48−1,48−2の内部ではなく各種
処理回路46の内部で、必要な期間、保持するようにし
てもよい。
【0058】正常な運用状態で各種処理回路46が外部
のバス12−1,12−2と情報のやり取りを行う場合
は、使用するバス12−1または12−2に対応するT
MR制御回路48−1または48−2との間で必要な情
報のやり取りを行う。対応するTMR制御回路48−1
または48−2は、各種処理回路46から処理を依頼さ
れた情報に対し、外部のバス12−1または12−2と
の間で必要な情報のやり取りを行う。
【0059】このとき例えばバス12−1に関する故障
が発生し、TMR制御回路48−1の内部のバス切り離
し検出回路52−1でバス12−1に関する故障を検出
した場合、検出結果を保持するFF54−1をオンにす
る。このFF54−1は、リセット指示がくるまで故障
検出結果のオン状態を保持する。FF54−1がオンに
なった場合、対応するバス切り離し通知信号E6がオン
となり、各種処理回路46にバス12−1の故障検出が
通知される。
【0060】各種処理回路46は、切り離し通知信号E
6のオンにより、対応するバス12−1側で故障が発生
したことを認識し、バス12−1の故障発生に対応する
処理を行うと共に、以後、外部のバスを使用する場合は
残った正常なバス12−2のみを使用するようにし、故
障したバス12−1を切り離した縮退状態で継続処理を
行うことになる。
【0061】このようなバス故障はバス12−2側につ
いても同様であり、TMR制御回路48−2のバス切り
離し検出回路52−2でバス12−2に関する故障を検
出して検出結果を保持するFF54−2をオンし、バス
切り離し通知信号E7により各種処理回路46に通知
し、バス12−2の故障発生に対応する処理と、故障し
たバス12−2の切り離しの縮退処理を行う。 3.故障検出の高速化 (1)故障検出を高速化するための構成 図4は、3台の処理装置10−1〜10−3でTMRユ
ニット10を構成し、単一の外部のバス12で接続して
情報のやり取りを行っており、更にTMR構成をとらな
い他の処理装置10−nも接続している。TMRユニッ
ト10を構成する3台の処理装置10−1〜10−3
は、処理装置10−1に代表して示す内部構成をもつ。
【0062】処理装置10−1の内部構成は図2の実施
例と同じであるが、更に故障検出を高速化するため、バ
ス12に出力する情報D1を保持するFF56、バス1
2上に出力された情報D2を保持するFF58、更に出
力タイミング信号生成回路32からのバス出力信号E2
を保持するFF60を新たに設けている。このようにF
F56,58,60を設けたことで、それ以降の回路部
における判断処理を待つことなく、バス12側に対する
内部回路の処理を終了することができ、バス12の故障
検出の高速化を図ることができる。
【0063】具体的には、出力情報生成回路22で出力
情報D1が生成され、バス用トライステート回路24を
介してバス12に出力されると、この出力情報D1はF
F56に保持される。また出力情報D1の生成と同時に
出力タイミング生成回路32よりバス出力信号E2が出
力されるが、これもFF60で保持される。更にバス1
2上の情報は、バス用トライステート回路24を介して
バス情報D2としてFF58に保持される。
【0064】FF56,58に保持された情報D1,D
2は、バス情報一致判定回路38で比較判定され、その
判定結果がバス情報故障検出回路40でFF60に保持
されたバス出力信号E8を用いてバス情報の故障検出を
行う。図2のFFによる保持を行わない場合にあって
は、バス情報一致判定回路38およびバス情報故障検出
回路40による判定結果および検出結果が得られるま
で、外部のバス12に対する出力情報D1の出力状態お
よび内部の出力タイミング生成回路32からのバス出力
信号E2の出力状態を保持しなければならず、故障検出
のためにバスの1サイクルの時間が長めに必要となる。
これに対し、FF56,58,60を設けたことで出力
情報D1,バス情報D2およびバス出力信号E2の出力
状態の継続がFFの保持タイミングまでの短い時間で済
み、故障検出の高速化が実現できる。この場合、バスサ
イクル数は増加するが、サイクル時間の短縮の方が大き
い。 (2)バス情報の故障検出 図4の実施例において、FF56,58,60を設ける
ことで故障検出の高速化を図った場合の動作を説明す
る。出力情報生成回路22で生成された出力情報D1
は、バス用トライステート回路24に与えられる。ここ
で処理装置10−1はマスター処理装置であることか
ら、バス出力イネーブル生成回路34からのバスイネー
ブル信号E3がオンとなってドライバ26をイネーブル
状態としている。
【0065】この出力情報D1は出力ドライバ26、入
出力端子30を経由してバス12に出力される。このと
き出力タイミング生成回路32が出力したバス出力信号
E2は、FF60に一旦保持され、バス出力信号E8と
してバス情報故障検出回路40に出力される。バス12
上に出力された情報は処理装置10−1に入力され、バ
ス用トライステート回路24を経由してFF58に一旦
保持される。このとき内部の出力情報生成回路22で生
成した出力情報D1は、別のFF56に保持されてい
る。FF56,58に保持された出力情報D1とバス情
報D2は、バス情報一致判定回路38に入力される。
【0066】バス情報一致判定回路38は、入力された
2つの情報D1,D2の一致判定を行い、一致していた
場合はバス正常信号E4をオンし、不一致であった場合
にはバス正常信号E4をオフにする。バス情報故障検出
回路40は、バス情報一致判定回路38から出力された
バス正常信号E4とFF60に保持されたバス出力信号
E8を入力し、バス出力信号E8がオンで且つバス正常
信号E4がオフの場合にのみ、バス情報の故障検出を意
味する不一致発生信号E5をオンにする。
【0067】バス情報故障検出回路40からの不一致発
生信号E5は、処理装置10−1の図示しない内部回路
に入力され、バス12自体の故障を含み、TMRユニッ
ト10を構成している処理装置10−1〜10−3のい
ずれかで故障が発生したと判断し、必要な故障処理を行
う。このようなTMRユニット10を構成している各処
理装置10−1〜10−3について、バス12に出力さ
れた出力情報、自らが生成した出力情報、更に自らが生
成した出力タイミングのそれぞれをバスごとに保持し、
装置内に保持したこれらの情報を使用してバス情報の故
障検出を行うことにより、バス12のアクセスサイクル
数は若干増加するがバス12のサイクルタイム自体を高
速化することができ、全体的にバス性能の向上を図るこ
とができる。 4.故障検出タイミングの通知 (1)装置構成 図5は図4の実施例に更に、バス12に対する情報出力
の出力タイミングに関する故障を検出する機能を設けた
ことを特徴とする。図5の実施例にあっては、TMRユ
ニット10を構成する処理装置10−1〜10−3の中
の処理装置10−1に代表して示すように、図4の実施
例に設けた回路に加え、更に、出力タイミング用トライ
ステート回路62、FF70およびバス情報チェックタ
イミング生成回路72を設けている。
【0068】即ち、出力タイミング生成回路32で生成
されたバス出力信号E2は、出力タイミング用トライス
テート回路62に設けられた出力ドライバ64に入力さ
れる。出力ドライバ64のイネーブル端子には、マスタ
ー情報一致判定回路16より出力された自マスター信号
E1が入力される。処理装置10−1はマスター処理装
置であることから、自マスター信号E1はオンになって
おり、出力ドライバ64がイネーブル状態にあり、バス
出力信号E2は出力ドライバ64から入出力端子68−
に出力される。この入出力端子68に相当する端子
が、他の処理装置10−2,10−3にも入出力端子6
8−2,68−3として設けられており、入出力端子6
8−1〜68−3の間を専用の信号線75で接続してい
る。
【0069】このため、出力タイミング用トライステー
ト回路62の出力ドライバ64から出力された処理装置
10−1のバス出力信号E2は、信号線75を介して他
の処理装置10−2,10−3の入出力端子68−2,
68−3に供給される。一方、出力タイミング用トライ
ステート回路62には入力ドライバ66が設けられてお
り、入出力端子68−1を介して信号線75より入力し
たバス出力信号を入力して、出力タイミング信号E9を
得るようにしている。出力タイミング用トライステート
回路62に対する処理装置10−1自身で生成したバス
出力信号E2はFF60に保持され、また出力タイミン
グ用トライステート回路62の入力ドライバ66より出
力された出力タイミング信号E9はFF70に保持され
る。
【0070】FF60,70の出力は、ORゲート74
を備えたバス情報チェックタイミング生成回路72に入
力される。バス情報チェックタイミング生成回路72
は、ORゲート74により、処理装置10−1自身で生
成したバス出力信号E2のFF60による保持信号と、
信号線75を介して入力した出力タイミング信号のFF
70の保持信号のOR出力として、バスチェック信号E
10を出力する。
【0071】このバスチェック信号E10は、バス情報
故障検出回路40にバス情報一致判定回路38からのバ
ス正常信号E4と共に入力される。正常な動作状態にあ
っては、FF60による内部のバス出力信号E2の保持
出力と信号線75による出力タイミング信号のFF70
による保持出力は、同時に得られる。これに対し、同じ
動作を行っている処理装置10−1〜10−3の間で出
力タイミングにずれがあると、スレーブ処理装置となる
処理装置10−2,10−3にあっては、FF60,7
0の保持出力のいずれか一方が先に得られる。例えば、
FF70によりマスター処理装置10−1からの出力タ
イミング信号が先にオンして、バス情報チェックタイミ
ング生成回路72より出力されるバスチェック信号E1
0がオンになったとする。
【0072】このとき処理装置10−2または10−3
では出力タイミング生成回路32からのバス出力信号E
2はオンとなっておらず、出力情報生成回路22からの
出力情報D1の送出が行われていないため、バス情報一
致判定回路38からのバス正常信号E4はオフとなって
おり、バスチェック信号E10のみがオンすることで不
一致発生信号E5がオンし、処理装置10−1〜10−
3の間で情報出力タイミングに関する故障が発生したこ
とを認識することができる。 (2)出力タイミングと故障検出 次に図5の実施例における処理装置10−1の動作を説
明する。
【0073】処理装置10−1のマスター情報一致判定
回路16は、マスター情報レジスタ14の装置番号と外
部から入力された自処理装置の番号とを比較し、両者が
一致していることから、自マスター信号E1をオンして
おり、このため出力タイミング用トライステート回路6
2の出力バッファ64をイネーブル状態としている。出
力情報生成回路22は、内部回路からの各種の指示によ
り必要に応じて出力情報D1を生成している。生成され
た情報D1は、バス用トライステート回路24の出力ド
ライバ26に与えられる。このとき同時に出力タイミン
グ生成回路32よりバス出力信号E2が生成されてオン
となり、バス出力イネーブル生成回路34からのイネー
ブル信号E3がオンとなり、出力ドライバ26がイネー
ブル状態になる。このため出力情報生成回路22からの
出力情報D1は、出力ドライバ26よりバス12に出力
される。
【0074】一方、出力タイミング生成回路32で生成
されたバス出力信号E2は、出力タイミング用トライス
テート回路62の出力ドライバ64に入力される。出力
ドライバ64は、このときマスター情報一致判定回路1
6からの自マスター信号E1がオンとなることでイネー
ブル状態にあり、入力したバス出力信号E2を入出力端
子68を介し信号線75に出力する。同時に、出力タイ
ミング生成回路32からのバス出力信号E2はFF60
に保持される。
【0075】出力タイミング用トライステート回路62
の入力ドライバ66は、このとき出力ドライバ64より
出力されたバス出力信号E2を出力タイミング信号E9
として入力し、FF70に保持させる。バス情報チェッ
クタイミング生成回路72は、FF60,70の保持出
力のORをとることでバスチェック信号E10をオンと
する。
【0076】一方、バス情報一致判定回路38は、FF
56に保持された出力情報D1とFF58に同時に保持
されたバス情報D2の一致判定を行い、両情報D1,D
2が一致していた場合はバス正常信号E4をオンにし、
不一致であった場合にはバス正常信号E4をオフにす
る。バス正常信号E4は、バスチェック信号E10と共
にバス情報故障検出回路40に入力される。バス情報故
障検出回路40は、バス情報一致検出回路からのバス正
常信号E4がオフの場合にのみ、バスチェック信号E1
0がオンとなったタイミングで、バス情報の故障検出を
意味する不一致発生信号E5をオンにする。
【0077】バス情報故障検出回路40より出力された
不一致発生信号E5は、図示しない内部の各回路に与え
られ、バス12自体の故障を含むTMRユニット10を
構成している処理装置10−1〜10−3のいずれかで
故障が発生したと判断し、必要な故障処理を行う。 5.故障検出結果の通知 (1)装置構成 図6に示すTMRユニット10を構成する処理装置10
−1〜10−3は、バス情報の不一致を検出した場合、
不一致検出を示す信号をバス情報故障検出信号として処
理装置10−1〜10−3ごとに別々に出力する。処理
装置10−1〜10−3は、専用の信号線86−1,8
6−2,86−3を介して他の処理装置から送られてく
るバス情報故障検出信号を受信し、故障発生の判定を行
う。
【0078】これによって、TMRユニット10を構成
する処理装置10−1〜10−3のいずれかで発生した
故障を全処理装置で検出することができる。このような
故障検出結果の通知のため、図6の処理装置10−1に
代表して示すように、図5の構成に加え新たに、一致検
出用トライステート回路76、装置番号デコード回路8
2、FF88,90,92およびバス情報故障通知信号
生成回路94が設けられる。
【0079】一致検出用トライステート回路76には、
処理装置10−1〜10−3に対応して3つのトライス
テート回路が設けられる。即ち、処理装置10−1に対
応してイネーブル端子付きの出力ドライバ78−1と入
力ドライバ80−1が設けられ、処理装置10−2に対
応してイネーブル端子付きの出力ドライバ78−2と入
力ドライバ80−2が設けられ、更に処理装置10−3
に対応してイネーブル端子付きの出力ドライバ78−3
と入力ドライバ80−3が設けられている。
【0080】装置番号デコード回路82は、外部から入
力された装置番号をデコードして、デコード信号E11
−1,E11−2またはE11−3のいずれか1つをオ
ンにする。ここで、デコード信号E11−1は装置番号
#1のデコードでオンし、デコード信号E11−2は装
置番号#2のデコードでオンし、更にデコード信号E1
1−3は装置番号#3のデコードでオンする。
【0081】装置番号デコード回路82からのデコード
信号E11−1〜E11−3は、一致検出用トライステ
ート回路76の出力ドライバ78−1〜78−3のイネ
ーブル端子に与えられる。これによって、外部から設定
された装置番号#1に対し装置番号デコード回路82は
デコード信号E11−1のみをオンしているため、出力
ドライバ78−1のみがイネーブル状態となる。
【0082】出力ドライバ78−1〜78−3には、バ
ス情報故障検出回路40によるバス情報の不一致を示す
バス情報故障検出信号E5が並列的に入力される。出力
ドライバ78−1〜78−3の出力は入出力端子84−
11,84−12,84−13のそれぞれに接続され、
専用の信号線86−1,86−2,86−3を介して他
の処理装置10−2,10−3に接続される。
【0083】処理装置10−2,10−3は、処理装置
10−1と同様、対応する入出力端子84−21〜84
−23および84−31〜84−33を備えており、そ
れぞれ専用の信号線86−1〜86−3に接続してい
る。一致検出用トライステート回路76に設けた入力ド
ライバ80−1〜80−3の出力は、FF88,90,
92のそれぞれに接続される。
【0084】FF88,90,92はバス情報故障検出
信号の遅延を考慮して設けられたもので、遅延が問題に
ならない場合は設ける必要はない。FF88,90,9
2に保持されたバス情報故障検出信号は、それぞれ保持
信号E13,E14,E15として、ORゲート96を
用いたバス情報故障通知信号生成回路94に入力され
る。
【0085】バス情報故障通知信号生成回路94は、処
理装置10−1,10−2,10−3に対応したバス情
報故障検出信号の保持信号E13,E14,E15のO
Rをとって、処理装置10−1〜10−3のいずれかで
故障を検出したことを示すバス情報故障判定信号E21
を内部回路へ出力する。 (2)故障検出結果の外部出力と装置内での故障検出 次に、図6の処理装置10−1の動作を故障検出結果の
外部出力と装置内での故障検出に分けて説明する。
【0086】図5の実施例で説明したとおり、処理装置
10−1で生成した出力情報とバス12上のバス情報が
不一致の場合、バス情報故障検出回路40からのバス情
報故障検出信号E5がオンとなり、一致検出用トライス
テート回路76に入力される。一方、外部から入力され
た処理装置番号#1は装置番号デコード回路82で解読
され、装置番号#1に対応したデコード信号E11−1
のみをオンにする。このため、一致検出用トライステー
ト回路76の処理装置10−1に対応した出力ドライバ
78−1のみがイネーブル状態となり、バス情報故障検
出信号E5は信号線86−1に出力され、他の処理装置
10−2,10−3に送られるとともに、FF88に保
持される。
【0087】一方、他の処理装置10−2,10−3に
おいて、同様にしてバス情報故障検出信号が信号線86
−2または86−3に出力されている場合には、一致検
出用トライステート回路76の入力ドライバ80−2,
80−3よりバス情報故障検出信号の受信信号が得ら
れ、FF90,92に保持される。この結果、FF88
には処理装置10−1で検出したバス情報故障検出信号
E5が保持され、FF90には処理装置10−2より信
号線86−2を介して送られてきたバス情報故障検出信
号が保持され、更にFF92には処理装置10−3より
信号線86−3を介して送られてきたバス情報故障検出
信号が保持され、それぞれ保持信号E13,E14,E
15としてバス情報故障通知信号生成回路94に入力さ
れる。
【0088】バス情報故障通知信号生成回路94は、処
理装置10−1〜10−3の各々のバス情報故障検出を
示す保持信号13,E14,E15のORをとり、処理
装置10−1〜10−3のいずれかで故障を検出したこ
とを示すバス情報故障判定信号E21を生成して内部回
路へ出力し、必要な故障処理を行わせる。 6.故障箇所の判定 (1)装置構成 図7は、TMRユニット10を構成する処理装置10−
1〜10−3のいずれかでバス12の故障を含む処理装
置の故障が検出された場合に、どこで故障が発生したか
を判定するようにした実施例である。この故障箇所の判
定のため、処理装置10−1に代表して示すように、図
6に設けたバス情報故障通知信号生成回路94に代えて
新たに故障処理装置を判定するバス情報故障判定回路9
8が設けられる。
【0089】バス情報故障判定回路98に対しては、F
F88,90,92で保持された処理装置10−1,1
0−2,10−3ごとのバス情報故障検出信号E13,
E14,E15が入力される。更に、バス情報故障判定
回路98に対しては、現在、マスター処理装置として設
定している装置番号をセットしたマスター情報レジスタ
14からのレジスタ信号E0を入力している。
【0090】このレジスタ信号E0は、処理装置10−
1〜10−3の装置番号を#1,#2,#3とすると、
2ビット信号で表わされる。処理装置10−1をマスタ
ー装置とした場合にはマスター装置番号#1に対応した
(01)が出力され、処理装置10−2をマスター装置
とした場合には装置番号#2に対応した2ビットデータ
(10)が出力され、更に処理装置10−3をマスター
装置とした場合には装置番号#3を示す2ビットデータ
(11)が出力され、各々レジスタ信号E0として入力
される。
【0091】バス情報故障判定回路98は、各処理装置
10−1〜10−3からのバス情報故障検出信号E13
〜E15およびマスター情報レジスタ14からのレジス
タ信号E0に基づき、故障箇所を示す判定信号E18,
E19,E20またはE21′のいずれかをオンとす
る。図8は図7のバス情報故障判定回路98の回路ブロ
ック図である。図8において、バス情報故障判定回路9
8は、マスター処理装置を決めるマスター番号#1,#
2,#3の各々に対応して、#1用故障判定回路10
0、#2用故障判定回路102および#3用故障判定回
路104を備える。
【0092】即ち、処理装置10−1がマスター装置に
設定されていると#1用故障判定回路100の出力信号
が判定に用いられ、処理装置10−2がマスター装置に
セットされていると#2用故障判定回路102の出力信
号が判定に用いられ、また処理装置10−3がマスター
装置にセットされている場合には#3用故障判定回路1
04の出力信号が判定に用いられる。
【0093】#1用故障判定回路100はANDゲート
106,108,112,114,116およびORゲ
ート110で構成される。#2用故障判定回路102お
よび#3用故障判定回路104も#1用故障判定回路1
00と同じゲート回路を有する。#1用故障判定回路1
00,#2用故障判定回路102および#3用故障判定
回路104の相違は、入力信号E13,E14,E15
の入力位置が相違している。
【0094】入力信号E13は処理装置10−1のバス
情報故障検出信号であり、入力信号E14は処理装置1
0−2のバス情報故障検出信号であり、更に入力信号E
15は処理装置10−3のバス情報故障検出信号であ
る。#1用故障判定回路100には、入力信号E13,
E14,E15の順番に入力される。これに対し#2用
故障判定回路102には、入力信号E14,E15,E
13の順番に入力される。
【0095】更に#3用故障判定回路104には、入力
信号E15,E13,E14の順番に入力される。#1
用故障判定回路100,#2用故障判定回路102およ
び#3用故障判定回路104に続いては、選択回路11
8,120,122が設けられる。選択回路118は、
#1用故障判定回路100からの4つの信号出力に対応
してANDゲート126,128,130,132を設
けている。ANDゲート126,128,130,13
2は、マスター情報レジスタ14からのレジスタ信号E
0としての2ビットのレジスタ信号E16,E17を入
力したANDゲート124により選択される。 (2)故障処理装置の判定 処理装置10−1をマスター装置とした場合のマスター
情報レジスタ信号E16,E17は、装置番号#1を2
ビットで表わした(01)であることから、上位ビット
のレジスタ信号E17を反転入力することで、レジスタ
信号(01)の入力で出力が1となり、ANDゲート1
26,128,130,132を許容状態とする。
【0096】この選択回路118の構成は、選択回路1
20,122についても同様であり、レジスタ信号E1
6,E17の2ビットデータで許容状態を作り出すAN
Dゲート134,144に対する入力状態が異なる。即
ち、選択回路120にあっては、処理装置10−2をマ
スター装置とした場合の装置番号#2の2ビットレジス
タ信号(10)で出力を1とするように、レジスタ信号
E16を反転入力としている。
【0097】また選択回路122は、処理装置10−3
をマスター装置としたときの装置番号#3に対応した2
ビットデータ(11)で出力1となるように、ANDゲ
ート144にレジスタ信号E16,E17を直接入力し
ている。最終段には、選択回路118,120,122
の各出力のORをとる4つのORゲート154,15
6,158,160が設けられる。ORゲート154,
156,158,160の出力信号E18,E19,E
20,E21は故障箇所の判定信号であり、判定信号E
18がオンすると処理装置10−1の故障を示す。判定
信号E19がオンすると処理装置10−2の故障を示
し、判定信号E20がオンすると処理装置10−3の故
障を示し、更に判定信号E21′がオンするとバス12
の故障を示す。
【0098】図9は、マスター処理装置を装置番号#1
の処理装置10−1としたときの図8の実施例における
故障判定内容である。図9において、○印が、処理装置
10−1〜10−3が正常でそれぞれのバス情報故障検
出信号E13,E14,E15がオフとなって故障検出
なしの場合である。また×印が、処理装置10−1〜1
0−3のバス情報故障検出信号がオンとなって故障検出
ありの場合である。
【0099】まずモード1にあっては、処理装置10−
1〜10−3のいずれにおいても故障検出が行われてお
らず、この場合の故障処理装置の判定結果は、全処理装
置が正常となる。モード2は、スレーブ処理装置として
の処理装置10−3が故障した場合である。モード3
は、スレーブ処理装置としての処理装置10−2が故障
した場合である。
【0100】モード4は、マスター処理装置としての処
理装置10−1が正常でスレーブ処理装置としての処理
装置10−2,10−3の両方で故障が検出された場合
である。この場合には、2台のスレーブ処理装置として
の処理装置10−2,10−3が故障ではなく、マスタ
ー処理装置としての処理装置10−1に故障があるもの
と判定される。モード5は、処理装置10−1が故障し
た場合である。
【0101】モード6は、マスター処理装置としての処
理装置10−1と2台のスレーブ処理装置の内の処理装
置10−3が故障を検出した場合である。この場合は二
重故障ということができる。モード7も、マスター処理
装置としての処理装置10−1と2台のスレーブ処理装
置の内の処理装置10−2が故障を検出した場合であ
り、この場合にも、いわゆる二重故障と判定する。
【0102】モード8は処理装置10−1〜10−3の
全てが故障を検出した場合であり、この場合には、処理
装置10−1〜10−3の故障ではなくバス12の故障
と判定される。図8の#1用故障判定回路100は、図
9におけるモード4,5、モード3、モード2およびモ
ード8における、それぞれの故障箇所の判定を論理的に
行う。まずANDゲート106にはバス情報故障検出信
号E13,E14,E15の3つが入力され、その内、
処理装置10−1の故障検出を示す信号E13が反転入
力となっている。このため、(E13,E14,E1
5)=(011)となるモード4でANDゲート106
の出力はオンとなる。
【0103】ANDゲート108は、処理装置10−1
の故障検出信号E13を入力すると共に、処理装置10
−2の故障検出信号E14を反転入力している。このた
め、(E13,E14)=(10)となったときAND
ゲート108の出力がオンする。これは図9のモード5
における処理装置10−1,10−2の故障検出状態を
判定している。このとき処理装置10−3の故障検出状
態は無視し、回路構成を簡略化している。
【0104】ORゲート110は、図9のモード4とモ
ード5はいずれも処理装置10−1の故障であることか
ら両者のORをとり、選択回路118およびORゲート
154を介して、処理装置10−1が故障箇所であるこ
とを示す判定信号E18をオンとしている。ANDゲー
ト112は、処理装置10−2の故障検出信号E14を
入力すると共に、処理装置10−3の故障検出信号を反
転入力する。このため、(E14,E15)=(10)
のときANDゲート112の出力がオンとなる。これは
図9のモード3の処理装置10−2が故障した場合であ
り、したがって選択回路118およびOR回路156を
介して判定信号E19がオンとなり、モード3の故障判
定結果、即ち処理装置10−2が故障箇所であることを
示す。
【0105】ANDゲート114は、処理装置10−2
の故障検出信号E14を反転入力し、処理装置10−3
の故障検出信号E15をそのまま入力する。このため、
(E14,E15)=(01)のときANDゲート11
4の出力がオンになる。これは図9のモード2における
処理装置10−3が故障した場合であり、選択回路11
8およびORゲート158を介して判定信号E20がオ
ンとなり、モード2の処理装置10−3が故障箇所であ
ることを示す。
【0106】更にANDゲート116は、3つの故障検
出信号E13,E14,E15のANDをとっており、
これは図9のモード8の処理装置10−1〜10−3の
全てが故障を検出した場合であり、選択回路118およ
びORゲート160を介して判定信号E21をオンし、
これによってバス12の故障を示すことになる。図8の
#2用故障判定回路102が有効となるのは、処理装置
10−2をマスター処理装置とし残り2つの処理装置1
0−1,10−3をスレーブ処理装置とした場合であ
る。このとき判定条件は、図9におけるマスター処理装
置を処理装置10−2とし、第1のスレーブ処理装置を
処理装置10−3とし、第2のスレーブ処理装置を処理
装置10−1とすればよい。
【0107】同様に、#3用故障判定回路104が有効
となるのは、処理装置10−3をマスター処理装置とし
た場合である。この場合の判定条件は、図9のマスター
処理装置を処理装置10−3とし、第1のスレーブ処理
装置を処理装置10−1とし、第2のスレーブ処理装置
を処理装置10−2とすればよい。 7.故障発生時の各種資源の更新抑止 (1)装置構成 図10は、TMRユニット10の各処理装置10−1〜
10−3で故障が検出された場合に、故障が発生したサ
イクルの情報による装置内部の各資源の更新を抑止する
ための実施例である。図10の実施例は、図6の故障検
出の実施例に加え、処理装置10−1に代表して示すよ
うに、更新抑止の対象となる内部回路の一部162、内
部制御回路164、バス12からのデータを保持するた
めのFF166を新たに示している。
【0108】ここで図10の実施例は図6の実施例によ
る故障検出を例にとっているが、これ以外の図2,図
4,図5に示した故障検出についても同様に適用でき、
この場合には、バス情報を保持するためのFFの段数が
必要に応じて変更されることになる。 (2)バス情報の保持 図6の実施例で詳細に説明したように、処理装置10−
1でバス情報の故障が検出されると、バス情報故障通知
信号生成回路94からバス情報故障通知信号E21が出
力される。
【0109】一方、バス12から入力された情報は、バ
ス用トライステート回路24に続いて設けられたFF5
8と次の内部回路の一部分162に至る経路に設けたF
F166の2つにより、2サイクルに亘り順次保持され
る。FF166は、バス情報故障通知信号作成回路94
におけるバス情報故障通知信号E21の生成とバス12
からの情報のタイミングを合わせるために設けている。
【0110】ここでFF58に保持されたバス情報をD
2、次のFF166に保持されたバス情報をD2−1と
する。FF166に保持されたバス情報D2−1は、内
部回路の一部分162に送られる。 (3)各種資源の更新抑止 ここで、更新抑止の対象となる資源としてTMRユニッ
ト10以外の処理装置からリードしてきたデータにより
更新される内部回路のレジスタを例にとって、故障発生
時の更新抑止を説明する。
【0111】図11は図10の内部回路の一部分162
の一例を示す。この内部回路の一部分はFFを用いたレ
ジスタ176を有し、レジスタ176のデータ入力側に
ANDゲート168,170,172とORゲート17
4を用いたマルチプレクサ回路を設けている。またレジ
スタ176はイネーブル端子180を有し、図10のバ
ス情報故障通知信号E21をインバータ178を介して
入力している。
【0112】レジスタ176を更新するためにTMRユ
ニット10以外の処理装置からデータをリードした場
合、バス12上のデータは、2サイクル後にバスデータ
D2−1として、レジスタ176に対する入力マルチプ
レクサ回路のANDゲート168に入力する。ANDゲ
ート168には図10の内部制御回路164からバス選
択信号E22が入力しており、バス12からのデータD
2−1の入力と同時にバス選択信号E22がオンにな
る。このとき、他のANDゲート170,172に対す
る選択信号はオフとなっている。
【0113】バス選択信号E22のオンにより入力マル
チプレクサ回路のANDゲート168より出力されたデ
ータD2−1は、ORゲート174を介してレジスタ1
76に入力される。通常時にあっては、バス情報故障通
知信号E21がオフにあり、レジスタ176はイネーブ
ル状態にあるため、バス12上のデータが2サイクル後
にレジスタ176にセットされる。
【0114】しかしながら、バス情報の故障が検出され
た場合には、バス情報故障通知信号E21が2サイクル
後にオンとなるため、2サイクル後のタイミングでイン
バータ178による反転信号を受けたイネーブル端子1
80はオフとなり、レジスタ176に対するデータD2
−1の書込みは抑止される。このため、バス情報の故障
発生時のデータによるレジスタ176の内容の破壊を抑
止することができる。
【0115】この実施例における各種資源の更新抑止
は、レジスタの制御を例にとっているが、他の内部回路
についても必要に応じて同様の制御を行い、故障発生時
のバス情報による内部資源の破壊を抑止することができ
る。また図11の内部回路については、故障検出時の抑
止サイクル期間は1サイクルとなるが、必要に応じて連
続して必要なサイクル間、抑止するようにしてもよい。 8.故障処理装置の切り離し (1)装置構成 図12は、故障発生時に故障箇所がバスを介して他の処
理装置に悪影響を及ぼさないようにTMRユニット10
から切り離すための構成を備えた実施例である。
【0116】図12において、処理装置10−1に代表
して示すTMRユニット10を構成する処理装置は、故
障検出については図7と同じであるが、図7のバス情報
故障判定回路98に代えてバス情報故障判定回路182
を設け、また図7のバス出力イネーブル生成回路34に
代えてバス出力イネーブル生成回路184を設けてい
る。
【0117】バス情報故障判定回路182に対しては、
図7の実施例と同様、処理装置10−1,10−2,1
0−3ごとのバス情報故障検出信号のFF88,90,
92による保持信号E13,E14,E15が入力され
る。また装置番号デコード回路82でデコードされた外
部からの装置番号#1のデコードによるデコード信号E
11−1,E11−2,E11−3が入力される。
【0118】処理装置10−1にあっては、装置番号#
1を入力していることから、装置番号デコード回路82
より出力される3つのデコード信号の内のデコード信号
E11−1のみがオンとなっている。更にバス情報故障
判定回路182には、マスター情報レジスタ14に保持
されている現在のマスター処理装置の装置番号#1を示
すマスター装置番号信号E0も入力している。このマス
ター装置番号信号E0は2ビットの信号E16,E17
からなり、装置番号#1の場合は(E17,E16)=
(01)となっている。
【0119】バス情報故障判定回路182は、入力され
たバス情報故障検出信号E13,E14,E15、装置
番号のデコード信号E11−1〜E11−3、およびマ
スター装置番号信号E0(E16,E17の2ビット信
号)に基づき、故障した処理装置が自分自身か否かの判
定を行い、自分自身の故障と判定した場合には故障処理
装置判定信号E24をオンにする。
【0120】バス出力イネーブル生成回路184は、正
常状態でオンされるバス出力許可フラグをもっている。
バス出力許可フラグがオンで、且つマスター情報一致判
定回路16からの自マスター信号E1がオンしている状
態で、出力情報生成回路22による出力情報D1の生成
に同期して出力タイミング生成回路32で生成されたバ
ス出力信号E2がオンになると、バス用トライステート
回路24の出力ドライバ26に対するイネーブル信号E
3をオンする。 (2)故障処理装置の判定 図13は図12のバス情報故障判定回路182の実施例
である。
【0121】図13において、バス情報故障判定回路1
82は、処理装置10−1をマスター装置とした場合に
故障箇所を判定する#1用故障判定回路186、処理装
10−3をマスター装置としたときの故障箇所を判定
する#2用故障判定回路188、および処理装置10−
2をマスター装置としたときの故障箇所を判定する#3
用故障判定回路190を備える。
【0122】#1用、#2用、#3用の各故障判定回路
186,188,190は、#1用故障判定回路186
に代表して示すように、同じ回路構成をもつ。即ち、4
つのANDゲート106,108,112,114とO
Rゲート110を備える。この回路は、図7のバス情報
故障判定回路98の実施例を示した図8の#1用故障判
定回路100のANDゲート116を除いた回路であ
る。
【0123】#1用、#2用、#3用故障判定回路18
6,188,190に続いては、選択回路192,19
4,196が設けられる。この選択回路192,19
4,196も、図8の選択回路118,120,122
におけるANDゲート132,142,152を除いた
と同じ回路である。続いてORゲート154,156,
158が設けられ、これは図8の最終段のORゲート1
60を除いたと同じ回路である。更に、ANDゲート1
98,200,202とORゲート204の出力回路部
が設けられる。
【0124】図13の#1用故障判定回路186は、処
理装置10−1,10−2,10−3の故障検出信号E
13,E14,E15を入力しており、図9に示した表
に従った故障処理装置の判定を論理的に行う。即ちAN
Dゲート106は、図9のモード4におけるマスター処
理装置としての処理装置10−1が正常で、スレーブ処
理装置としての2台の処理装置10−2,10−3で故
障検出となった場合に、出力をオンし、マスター処理装
置としての処理装置10−1の故障を判定する。
【0125】またANDゲート108は、図9のモード
5におけるマスター処理装置としての処理装置10−1
が故障しスレーブ処理装置としての2台の処理装置10
−2,10−3が正常なときに出力がオンし、処理装置
10−1の故障を判定する。ANDゲート106,10
8のいずれの出力がオンとなった場合にも処理装置10
−1の故障であることから、ORゲート110でとりま
とめて出力する。
【0126】ANDゲート112は、図9のモード3の
スレーブ処理装置としての処理装置10−2が故障のと
き出力がオンし、処理装置10−2の故障を判定する。
更にANDゲート114は図9のモード2であり、スレ
ーブ処理装置としての処理装置10−3が故障のとき出
力がオンし、処理装置10−3の故障を判定する。続い
て設けられた選択回路192は、マスター情報レジスタ
14にセットされたマスター装置番号#1に対応した2
ビットの信号E16,E17の組合せによる(E17,
E16)=(01)によってANDゲート124の出力
をオンし、3つのANDゲート126,128,130
を許容状態として#1用故障判定回路186からの判定
信号を出力させる。
【0127】このため、ORゲート154の出力信号E
18がオンするとマスター処理装置としての処理装置1
0−1の故障を示し、ORゲート156の出力信号E1
9がオンするとスレーブ処理装置としての処理装置10
−2の故障を示し、更にORゲート158の出力信号E
20がオンするとスレーブ処理装置としての処理装置1
0−3の故障を示すことになる。
【0128】次のANDゲート198,200,202
の各々には、図12の装置番号デコード回路82からの
デコード信号E11−1,E11−2,E11−3が入
力されている。処理装置10−1にあっては、外部から
装置番号#1がセットされているため、デコード信号E
11−1のみがオンとなり、ORゲート154からの処
理装置10−1の故障を示す信号E18のみが選択さ
れ、ORゲート204を介して故障処理装置判定信号E
24として、図12のバス出力イネーブル生成回路18
4に出力される
【0129】(3)バス情報の出力抑止 図14は、図12のバス出力イネーブル生成回路184
の実施例である。このバス出力イネーブル生成回路18
4は、フラグレジスタ205、フラグレジスタ205
対するデータ入力用のANDゲート206、フラグレジ
スタ205のライトイネーブルとリセットを制御するO
Rゲート203、更に出力用のANDゲート208で構
成される。
【0130】フラグレジスタ205にはバス出力許可フ
ラグが用意されている。このバス出力許可フラグは、処
理装置の運用開始時にフラグをオンするためのセットデ
ータD3とソフトセット指示信号E25をソフトウェア
の処理で供給することで、初期値としてバス出力許可フ
ラグ1がセットされ、以後、通常動作時はフラグ1が保
持されている。
【0131】図13のバス情報故障判定回路182によ
り自装置による故障検出に基づき故障処理装置判定信号
E24がオンになると、ORゲート203を介してフラ
グレジスタ205にリセットが掛かり、バス出力許可フ
ラグが0にリセットされる。フラグレジスタ205にバ
ス出力許可フラグ1がセットされて保持されているとき
には、ANDゲート208に対するフラグ信号E26は
オンしており、またマスター処理装置の場合には図12
のマスター情報一致判定回路16より出力される自マス
タ信号E1もオンになっている。このため図12の出力
タイミング生成回路32からのバス出力信号E2がオン
になったとき、図14のANDゲート208の出力する
イネーブル信号E3がオンとなり、バス用トライステー
ト回路24に設けている出力ドライバ26をイネーブル
状態として、出力情報生成回路22からの出力情報をバ
ス12に送出することができる。
【0132】これに対し、自装置の故障検出に基づく故
障処理装置判定信号E24のオンでフラグレジスタ20
のフラグが0にリセットされると、フラグ信号E26
もオフとなってANDゲート208を禁止状態とし、イ
ネーブル信号E3をオフに固定する。これによって故障
を起こした処理装置からバス12に対する出力情報の送
出を禁止し、バス12から切り離す。このように故障を
起こした処理装置をバス12から切り離すことで、他の
処理装置に悪影響を及ぼすことを防止できる。 9.マスター処理装置の再決定 (1)装置構成 図15は、現在マスター処理装置となっている処理装置
が故障発生によりバスから切り離された場合に、残され
ている正常なTMRユニット10を構成する処理装置間
で新たにマスター処理装置を決定して処理を継続するた
めのマスター処理装置の再決定の実施例である。
【0133】図15において、TMRユニット10を構
成する処理装置10−1,10−2,10−3は、現在
マスター処理装置となっている処理装置10−1に代表
して示す構成をもつ。この処理装置10−1の構成は、
図7の実施例に設けているバス情報故障判定回路98の
代わりにマスター処理装置故障判定回路212を設け、
更に図7のマスター情報レジスタ14の代わりに別の構
成をもつマスター情報レジスタ214を設けたことを特
徴とする。それ以外の構成は図7の実施例と同じであ
る。 (2)マスター処理装置の故障判定 処理装置10−1には、マスター処理装置の故障を判定
するためマスター処理装置故障判定回路212が設けら
れる。マスター処理装置故障判定回路212には、一致
検出用トライステート回路76より得られた処理装置1
0−1〜10−3の各故障検出結果に基づく信号がFF
88,90,92で保持され、故障検出信号E13,E
14,E15として入力している。
【0134】またマスター情報レジスタ214に保持さ
れている現在のマスター処理装置番号、即ち処理装置1
0−1の装置番号#1を示すマスター番号信号E0も入
力されている。このマスター番号信号E0は信号E1
7,E16の2ビットの信号であり、マスター装置番号
#1,#2,#3に対し2ビット信号(E17,E1
6)は(01)(10)(11)のように設定される。
【0135】マスター処理装置故障判定回路212は、
入力された故障検出信号E13,E14,E15および
マスター番号信号E0(E17,E16の2ビットデー
タ)に基づいて、マスター処理装置の故障判定を行う。
図16は図15のマスター処理装置故障判定回路212
の実施例である。図16において、処理装置10−1を
マスター処理装置としたときの故障判定は#1用故障判
定回路216で行われる。処理装置10−2をマスター
処理装置としたときの故障判定は#2用故障判定回路2
18で行われる。更に、処理装置10−3をマスター処
理装置としたときの故障判定は#3用故障判定回路22
0で行われる。
【0136】#1用故障判定回路216はANDゲート
106,108およびORゲート110を備える。#1
用故障判定回路216の判定条件は、図9の表に従う。
即ち、図9のモード4とモード5のパターンにおける故
障検出信号E13,E14,E15の入力に基づき、O
Rゲート110の出力がオンになる。即ち、モード4は
マスター処理装置としての処理装置10−1が正常でス
レーブ処理装置としての2台の処理装置10−2,10
−3を検出した故障の場合であり、この場合にはマスタ
ー処理装置としての処理装置10−1の故障と判定され
る。
【0137】このとき故障検出信号E13はオフ、故障
検出信号E14,E15の2つがオンとなる。したがっ
て、ANDゲート106の出力がオンになる。図9のモ
ード5はANDゲート108で判定される。モード5は
マスター処理装置としての処理装置10−1が故障でス
レーブ処理装置としての処理装置10−2が正常な場合
であり、この場合にはマスター処理装置としての処理装
置10−1の故障と判定される。このとき故障検出信号
E13がオン、故障検出信号E14がオフであることか
ら、ANDゲート108の出力がオンになる。
【0138】マスター処理装置が処理装置10−2,1
0−3である場合の#2用故障判定回路218と#3用
故障判定回路220については、回路構成は同じである
が故障検出信号E13,E14,E15の入力位置が異
なっている。#2用故障判定回路218はマスター処理
装置にセットされている処理装置10−2の故障を検出
して出力をオンする。また#3用故障判定回路220は
マスター処理装置に処理装置10−3が設定されている
場合に故障を検出して出力をオンするようになる。
【0139】#1,#2,#3用故障判定回路216,
218,220に続いては、3入力のANDゲート26
0,262,264が設けられる。ANDゲート260
は図8の選択回路118に設けているANDゲート12
4,126を1つにしたものである。ANDゲート26
2も図8の選択回路120に設けているANDゲート1
34,136を1つにしたものである。同様に、AND
ゲート264も図8の選択回路122に設けているAN
Dゲート145,146を1つにしたものである。
【0140】ANDゲート260は、図15のマスター
情報レジスタ214にマスター処理装置として処理装置
10−1の装置番号#1に対応する2ビットデータ(0
1)がセットされて信号E17がオフ、E16がオンの
とき許容状態となり、#1用故障判定回路216の出力
をマスター処理装置故障判定信号E27として出力す
る。
【0141】またANDゲート262は、図15のマス
ター情報レジスタ214にマスター処理装置を処理装置
10−2としたときの2ビットデータ(10)がセット
されているときの信号E17のオン、信号E16のオフ
で許容状態となり、#2用故障判定回路218によるマ
スター処理装置としての処理装置10−2の判定に基づ
く故障判定信号E28を出力する。
【0142】更にANDゲート264は、図15のマス
ター情報レジスタ214にマスター処理装置を処理装置
10−3としたときの装置番号#3に応じてセットされ
た2ビットデータ(11)による信号E17,E16の
両方のオンで許容状態となり、#3用故障判定回路22
0からのマスター処理装置として処理装置10−3の故
障判定信号E29を出力する。
【0143】ANDゲート260,262または264
からのマスター処理装置に関する故障判定信号は、OR
ゲート234でとりまとめられ、マスター処理装置故障
判定信号E30として、図15のマスター情報レジスタ
214に供給される。 (3)マスター処理装置番号の更新 図15のマスター情報レジスタ214には、処理装置の
運用開始時にソフトウェアからの指示により初期値とし
てのマスター処理装置番号、例えば処理装置番号#1に
対応した2ビットデータ(01)がセットされる。この
状態で、マスター処理装置故障判定回路212におい
て、現在、マスター処理装置となっている処理装置10
−1の故障が判定され、マスター処理装置故障判定信号
E30がオンしたとする。
【0144】この場合、マスター情報レジスタ214は
内蔵した2ビットレジスタを1ビットインクリメントし
て、新マスター処理装置番号への更新を行う。例えば、
現在、マスター処理装置番号#1であれば、故障判定に
より新マスター処理装置番号#2に更新される。図17
は図15のマスター情報レジスタ214の実施例であ
る。図17のマスター情報レジスタ214には、FF2
38,240を備えた2ビットレジスタ236が設けら
れる。2ビットレジスタ236はFF238で1ビット
目(下位ビット)を生成し、FF240で2ビット目
(上位ビット)を生成し、それぞれFF238,240
の出力は2ビット信号E16,E17となる。
【0145】2ビットレジスタ236の1ビット目のF
F238の入力段にはANDゲート242,244およ
びORゲート246を備えた入力マルチプレクサ回路が
設けられる。また、2ビット目のFF240の入力段に
も、ANDゲート248,250、EX−ORゲート2
52およびORゲート254を備えた入力マルチプレク
サ回路が設けられる。
【0146】更に、2ビットレジスタ236に設けたF
F238,240のライトイネーブル端子に対しては、
ORゲート256よりソフトセット指示信号E31また
は図15のマスター処理装置故障判定回路212からの
マスター処理装置故障判定信号E30が与えられてい
る。更に、ANDゲート242,248の一方の入力に
は、ソフトウェアによるセットデータD4が与えられ
る。
【0147】電源投入直後の初期状態にあっては、2ビ
ットレジスタ236のFF238,240は共にリセッ
トされて零出力となっている。この状態でソフトウェア
によりセットデータD4を01とし且つソフトセット指
示信号E31をオンすると、2ビットレジスタ236の
1ビット目のFF238に、セットデータD4に従って
1が書き込まれる。
【0148】2ビット目のFF240には、セットデー
タD4に従って0が書き込まれる。したがって初期状態
にあっては、2ビットレジスタ236の2ビット信号E
17,E16は(01)であり、10進でマスター装置
番号#1を表わしている。この2ビットレジスタ236
のFF238に1がセットされFF240に0がセット
された最初の処理装置10−1をマスター処理装置にセ
ットした状態で、FF238の帰還出力とFF240の
帰還出力によりEX−OR252の出力が1となり、F
F240の入力ポートは1にセットされている。これに
対し、FF238の入力ポートは0にセットされてい
る。
【0149】このような処理装置10−1の装置番号#
1を2ビットレジスタ236にセットした2ビットデー
タ(01)の保持状態で、マスター処理装置にセットさ
れている処理装置10−1で故障が判定され、故障判定
信号E30がオンになったとする。この故障判定信号E
30は、ORゲート256を介して2ビットレジスタ2
36におけるFF238,240のライトイネーブル端
子をオンする。
【0150】FF238は入力が0であることから1か
ら0にセットされ、またFF240は入力が1であるこ
とから0から1にセットされ、2ビット信号E17,E
16は(10)に変化し、この2ビットデータ(10)
は処理装置10−2を示す10進の装置番号#2を表わ
す。このようにして、現在、マスター処理装置となって
いる処理装置での故障判定信号に基づき、マスター情報
レジスタ214に新たなマスター処理装置を示す処理装
置10−2の装置番号#2への更新が行われる。
【0151】図18は図15のマスター情報レジスタ2
14によるマスター処理装置番号の更新をとりまとめた
ものであり、装置番号#1の場合には#2に更新され、
#2の場合は#3に更新され、更に#3の場合は#1に
更新される。 10.保持情報の再転送 (1)装置構成 図19は、故障が発生して必要があれば新たなマスター
処理装置の再決定が行われた後に、TMRユニット10
以外の処理装置を含む各処理装置に保持してある故障発
生以降に各装置が生成した各種の情報を、新たに再構築
した処理装置系によってバスに再出力するための実施例
である。
【0152】このような故障検出後の再構成後の保持情
報の再転送により、縮退したTMR構成によって故障発
生処理からのリトライを行うことで信頼性を保証でき
る。図19の実施例は、TMRユニット10を構成する
処理装置10−1〜10−3の中の処理装置10−1に
代表して示すように、処理装置10−1は図15の実施
例のマスター処理装置故障判定回路212の代わりにバ
ス情報故障判定回路300を設け、また出力データ生成
回路22側に新たに再転送制御回路302を設けてい
る。 (2)処理装置の故障判定 図15の実施例で説明したと同様、TMRユニット10
を構成する処理装置10−1〜10−3の各々で生成さ
れた故障検出信号は、一致検出用トライステート76に
入力され、FF88,90,92を経由し、バス情報故
障判定回路300に対し処理装置10−1〜10−3に
対応した故障検出信号E13,E14,E15として入
力される。
【0153】バス情報故障判定回路300には更に、マ
スター情報用レジスタ214にセットされたマスター処
理装置番号例えばマスター処理装置番号#1に対応した
2ビットレジスタ情報(01)を示すマスター番号信号
E0も入力する。このマスター番号信号E0は、2ビッ
トの信号E16,E17で構成される。バス情報故障判
定回路300は、FF88,90,92に保持された故
障検出信号E13,E14,E15およびマスター情報
レジスタ214からのマスター番号信号E0の入力に基
づき、マスター処理装置の故障を示す故障処理装置判定
信号E30を、新マスター処理装置を決定するためにマ
スター情報レジスタ214に必要があれば出力する。ま
た再転送制御回路302に対し、故障検出時に保持して
いる出力情報をバス12に再転送するための制御信号
(3サイクルオン信号)E32を出力する。
【0154】図20は図19のバス情報故障判定回路3
00の実施例である。図20においては、#1用故障判
定回路216、#2用故障判定回路218および#3用
故障判定回路220が設けられる。これら#1用,#2
用および#3用故障判定回路216,218,220
は、図15のマスター処理装置故障判定回路212の実
施例を示した図16と同じものである。
【0155】続いて設けられたANDゲート260,2
62,264およびORゲート234よりなる回路も、
図16の回路と同じ回路である。ORゲート234の出
力は、後述する2サイクルオン信号E31´の反転信号
と共に、ANDゲート235に入力される。この回路部
によって、現在、マスター処理装置となっている処理装
置の故障発生を示す処理装置故障判定信号E30を生成
し、図19のマスター情報レジスタ214に供給して、
マスター処理装置の故障発生時、マスター処理装置番号
の更新を行わせる。このためのマスター情報レジスタ2
14としては、図17の回路が使用される。
【0156】ここで、2サイクルオン信号E31´の反
転信号を、ANDゲート235に入力しているのは、一
度、バス情報による故障が検出された場合、故障処理装
置をTMRユニット10の構成から離脱させるまでの
間、同じ処理装置による故障が連続して発生する可能性
があるため、連続故障の検出を抑止している。この場
合、他の原因により連続して故障が発生した場合には、
再転送制御回路302による現在の故障に基づく再転送
時に再度故障検出が行われることになる。
【0157】故障検出信号E13,E14,E15は、
ORゲート271でとりまとめられ、その出力が故障検
出時に1サイクルの間オンとなる1サイクルオン信号E
31を生成する。ORゲート271からの故障検出時に
オンとなる1サイクルオン信号E31は後述する2サイ
クルオン信号E31´の反転信号と共にANDゲート2
72に入力される。そのANDゲート272の出力はF
F273,FF274,FF275に順次ラッチされ、
ORゲート276でFF273の出力とFF274の出
力の論理和をとることで、故障検出から2サイクルの間
オンとなる2サイクルオン信号E31´を生成する。
【0158】同様に、ORゲート277で、2サイクル
オン信号E31´と、FF275の出力の論理和をとる
ことで、故障検出から3サイクルの間オンとなる3サイ
クルオン信号E32を生成する。この3サイクルオン信
号E32は、図19の再転送制御回路302に出力され
る。 (3)再転送制御 図19の処理装置10−1に設けた再転送制御回路30
2には、出力データ生成回路22で生成されたバス12
に対する出力データD1を入力し、またバス情報故障判
定回路300からの3サイクルオン信号E32が入力さ
れている。3サイクルオン信号E32がオフとなってい
る通常時にあっては、出力情報D1は再転送制御回路3
02を通過して、バス用トライステート回路24より外
部のバス12に転送される。
【0159】故障発生時は、1サイクル目から3サイク
ル目までの出力データD1を再転送制御回路302内に
保持し、4サイクル目からオンとなるバス情報故障判定
回路300からの2サイクルオン信号E32により保持
している出力情報D1のバス12に対する再転送を行
う。図21は図19の再転送制御回路302の実施例で
ある。再転送制御回路302はFF278,279,2
80を直列接続し、最終段にANDゲート282,28
4およびORゲート286を用いたマルチプレクサ回路
を設けている。このマルチプレクサ回路のANDゲート
284には、故障検出に基づく3サイクルオン信号E3
2が直接入力され、ANDゲート282側には反転入力
されている。
【0160】通常時、3サイクルオン信号E32はオフ
であることから、ANDゲート284が禁止状態、AN
Dゲート282が許容状態にあり、入力した出力情報D
1はANDゲート282およびORゲート286を通っ
て出力情報D1−1としてそのまま出力される。一方、
入力データD1は1サイクル目でFF278に保持さ
れ、2サイクル目でFF279に保持され、3サイクル
目でFF280に保持されている。このため再転送制御
回路302には、バス12に出力した情報を含む3サイ
クル分の出力情報がリアルタイムで保持されることにな
る。
【0161】バス情報の故障が発生すると、2サイクル
後でバス情報故障判定回路300より故障処理装置判定
信号E30がマスター情報レジスタ214に出力され
て、マスター処理装置が故障した場合は、新マスター処
理装置番号の更新による新たなマスター装置への切替え
が行われる。続いて、故障発生から3サイクル後にバス
情報故障判定回路300からの3サイクルオン信号E3
2がオンとなる。
【0162】これにより図21の再転送制御回路302
のANDゲート284が許容状態となり、故障検出から
FF280,279,278に順次保持している3サイ
クル分の出力情報をバス12に再度転送し、必要がある
場合は、新マスター装置に切り替えた新たなTMRユニ
ット10の構成、即ち2台の処理装置例えば処理装置1
0−2,10−3でTMRユニット10を構成し、処理
装置10−2をマスター処理装置にした状態での再転送
によるリトライを行うようになる。
【0163】この場合、再転送制御回路302の機能に
より保持している3サイクル分の出力情報を転送するの
は、新たなマスター処理装置となった処理装置10−2
から行われることになる。勿論、故障を起こした、それ
までマスター処理装置となっていた10−1は、バス1
2から切り離されている。尚、スレーブ処理装置が故障
した場合は、故障したスレーブ処理装置をバス12から
切り離し、従来からのマスター処理装置及び、残ったス
レーブ処理装置でTMRユニット10を構成し、マスタ
ー処理装置によるリトライを行うようにする。
【0164】また、図19の実施例にあっては、TMR
ユニット10を構成する処理装置10−1〜10−3に
おける故障検出時の再転送制御を説明しているが、故障
検出に基づくマスター処理装置の切替えまでにTMRユ
ニット10以外の処理装置がバス12に情報を出力して
いた場合には、他の処理装置が装置内部に保持している
保持データを再度該当するサイクルでバス12に出力す
るようになる。
【0165】これは、TMRユニット10の処理装置1
0−1〜10−3を含めてバス12に情報を出力する機
能をもった全ての処理装置は装置内部に再転送用の送出
情報保持回路を備えていることによる。またバス12か
ら情報を受信する機能を有する全ての処理装置は、装置
内部にTMRユニット10を構成する処理装置10−1
〜10−3のいずれか、またはバス12で故障が発生し
たことを検出する機能と、故障を検出した場合は故障デ
ータによる内部資源の更新を抑止する機能を備えてい
る。
【0166】以上のような故障検出時に必要により新マ
スター処理装置への切替えが済んだ後の保持情報の再転
送により、正常なタイミング時にバス情報に誤りがある
場合は勿論のこと、誤ったタイミングでバス情報を送出
した場合、例えばTMRユニット10以外の処理装置が
バス情報を送出しているタイミングに、誤ってTMRユ
ニット10を構成している処理装置即ちマスター処理装
置がバス情報を出力した場合、本来のバス情報を送出す
べき処理装置が正常なバス情報を再送出することによ
り、最終的に、正しいバス情報の転送を正常終了するこ
とができる。 11.再転送指示信号の生成 (1)装置構成 図22は、バスを含むTMRユニット10を構成する処
理装置10−1〜10−3で故障が発生した場合に、マ
スター処理装置からスレーブ処理装置、更にはTMRユ
ニット10以外の他の処理装置に対し再転送指示を示す
信号を送出して、故障発生後の新たなTMRユニットの
縮退構成でバスに情報を再出力するための実施例であ
る。
【0167】図22の実施例は、TMRユニット10を
構成する処理装置10−1〜10−3につき、現在マス
ター処理装置にセットされている処理装置10−1に代
表して示す構成をもつ。処理装置10−1におけるバス
12の故障を含む各処理装置10−1〜10−3の故障
検出については図19の実施例と同じであるが、再転送
指示のための信号を生成するため、図19の実施例にお
けるバス情報故障判定回路300および再転送制御回路
302が若干構成の異なるバス情報故障判定回路305
および再転送制御回路312となっている。
【0168】更にTMRユニット10を構成する他の処
理装置10−2,10−3、更にTMRユニット10以
外の他の処理装置に対し、再転送指示用の信号を送出す
るため、新たに再転送信号用トライステート回路306
を設けている。 (2)処理装置の故障判定 処理装置10−1に設けた一致検出用トライステート7
6は、図19の実施例と同様、各処理装置10−1〜1
0−3で生成された故障検出結果に基づく信号を受けて
故障検出信号E13,E14,E15をFF88,FF
90,FF92経由でバス情報故障判定回路305に入
力する。またバス情報故障判定回路305には、マスタ
ー情報レジスタ214にセットされた現在のマスター処
理装置を示す2ビットデータでなるマスター番号信号E
0が入力される。
【0169】このマスター番号信号E0は、この場合、
処理装置10−1をマスター処理装置としていることか
ら、装置番号#1に対応した2ビットデータ(01)の
入力となる。この2ビットデータは信号E17,E16
で表わされ、(E17,E16)=(01)となってい
る。図23は図22のバス情報故障判定回路305の実
施例である。故障検出信号E13,E14,E15はO
Rゲート271に入力される。ORゲート271の出力
は、後述する2サイクルオン信号E31´の反転と共
に、ANDゲート272に入力され、TMRユニット1
0を構成する処理装置10−1〜10−3のいずれかで
故障が発生したことを示すTMR系故障検出信号E34
を生成する。
【0170】このTMR系故障検出信号E34は、図2
2の再転送信号用トライステート回路306に出力され
る。またANDゲート272の出力はFF273,FF
274に順次保持され、FF273の出力とFF724
の出力をORゲート276に入力してORをとること
で、故障発生2サイクル後から2サイクルの間オンする
2サイクルオン信号E31´を生成する。
【0171】ANDゲート272の入力に、2サイクル
オン信号E31´の反転信号を入力するのは、一度、バ
ス情報の故障が検出された場合、故障した処理装置をT
MRユニット10から離脱させるまでは故障が連続して
発生する可能性がある。したがって、連続故障の検出を
抑止するため、2サイクルオン信号E32の反転によ
り、TMR系故障検出信号E34をオフしている。
【0172】選択回路216,218,220、マスタ
ー情報レジスタ214からのマスター処理装置の装置番
号#1に対応した2ビットデータを与える信号E17,
E16で制御されるANDゲート260,262,26
4、ORゲート234、更にANDゲート235でなる
回路が設けられる。この回路部は、図19のバス情報故
障判定回路300の実施例である図20の出力段の回路
と同じものである。この出力段の回路によって、TMR
ユニット10における現在マスター処理装置となってい
る処理装置に故障が発生したことを示す故障処理装置判
定信号E30が、図22のマスター情報レジスタ214
に出力される。 マスター情報レジスタ214は故障処
理装置判定信号E30がオンすると、現在セットしてい
るマスター処理装置の装置番号の更新を行う。具体的に
は、図17に示した回路構成をもち、図18の表に従っ
たマスター処理装置の装置番号の更新を行う。 (3)再転送指示信号の出力 バス情報故障判定回路305で生成されたTMR系故障
検出信号E34は、再転送信号用トライステート回路3
06に入力されている。再転送信号用トライステート回
路306には更に、マスター情報一致判定回路16で生
成した自マスタ信号E1が入力される。ここで処理装置
10−1はマスター処理装置であることから、自マスタ
信号E1はオンしている。
【0173】再転送信号用トライステート回路306
は、再転送指示のための信号を入出力端子308−1を
介して専用の信号線310に出力する。信号線310
は、TMRユニット10を構成する他の処理装置10−
2,10−3に設けている同じく図示しない再転送信号
用トライステート回路を接続している入出力端子308
−2,308−3に接続される。更に、図示しないTM
Rユニット10以外の他の処理装置に設けている再転送
信号用トライステート回路の入出力端子に対しても、信
号線310は接続されている。
【0174】図24は再転送信号用トライステート回路
306の実施例である。再転送信号用トライステート回
路306には、イネーブル端子付きの出力ドライバ31
4と入力ドライバ316が設けられる。出力ドライバ3
14はマスター情報一致判定回路16からの自マスタ信
号E1のオンによりイネーブル状態となり、バス情報故
障判定回路305からのTMR系故障検出信号E34を
入出力端子308−1を介して信号線310に送出し、
TMRユニット10を構成する他の処理装置10−2,
10−3、更にTMRユニット10以外の他の処理装置
に再転送を指示するための信号を送る。
【0175】入力ドライバ316は、信号線310を経
由してTMRユニット10を構成する他の処理装置から
送られてきた再転送を指示するための信号を入力し、リ
トライ信号E35として図22の再転送制御回路312
に出力する。 (4)再転送制御 図22の再転送制御回路312には、再転送信号用トラ
イステート回路306で受信したTMRユニット10を
構成する他の処理装置からの再転送を指示する信号に基
づくリトライ信号E35を入力している。リトライ信号
E35がオフしている通常状態にあっては、出力情報生
成回路22で生成した出力情報D1は、そのまま再転送
制御回路312を通過し、バス用トライステート回路2
4よりバス12に送出される。リトライ信号E35がオ
ンすると、再転送制御回路312による再転送制御が行
われる。
【0176】図25は図22の再転送制御回路312の
実施例である。リトライ信号E35は、3段接続された
FF330,332,334の初段のFF330に入力
される。FF330,332,334の各出力はORゲ
ート336でとりまとめられ、3サイクルオン信号E3
6を生成する。尚、3サイクルオン信号E36は図示し
ない内部回路にも送られ、故障発生時の内部資源の更新
抑制制御に使用される。
【0177】一方、図22の出力情報生成回路22で生
成された出力情報D1は、ANDゲート324に入力さ
れると同時に、3段に縦接続したFF318,320,
322の初段のFF318に入力される。ANDゲート
324に対しては、ORゲート336からの3サイクル
オン信号E36が反転入力されている。また、3サイク
ルオン信号E36はANDゲート326に直接入力さ
れ、ANDゲート326には最終段のFF322の出力
も入力されている。
【0178】ANDゲート324,326の出力はOR
ゲート328でとりまとめられ、出力情報D1−1とし
て図22のバス用トライステート回路24に出力され
る。図26(A)〜(I)は、図25の再転送制御回路
312のタイミングチャートである。まず図26(A)
のリトライ信号E35がオンになると、図26(B)〜
(D)のように順次FF330,332,334に保持
される。このため、図26(E)のORゲート336か
ら出力される3サイクルオン信号E36は、リトライ信
号E35がオンした次のサイクルから3サイクルの間オ
ンする信号となる。
【0179】一方、故障発生時に入力したデータD1
は、図26(F)のようにFF318に保持される。こ
のとき3サイクルオン信号E36はオフしているため、
ANDゲート326は禁止状態にあり、出力情報D1を
直接出力している。FF318に保持された出力情報D
1は、図26(G)〜(H)のように、順次、FF32
0,322に保持される。そして3サイクル目にFF3
22に保持されたとき、その保持出力が許容状態にある
ANDゲート326からORゲート328を介して3サ
イクル間、順次再転送されることになる。
【0180】このように再転送制御回路312にあって
は、バス情報に故障が発生してから再転送開始までの間
に生成された出力情報が保持され、必要により新たにマ
スター処理装置となった処理装置からバス12に再度、
転送されることになる。尚、再転送開始までにTMRユ
ニット10を構成する処理装置以外の処理装置がバス1
2に情報を出力していた場合には、その処理装置が内部
に保持している保持データを再度、該当するサイクルで
バス12に出力するようになる。この機能を実現するた
め、TMRユニット10を構成する処理装置10−1〜
10−3以外の処理装置についても、全ての処理装置が
装置内部に再転送用の送出データ保持回路を備えている
ことになる。
【0181】勿論、TMRユニット10以外の処理装置
にあっても、バス12から情報を受信する機能を有する
全ての処理装置は、TMRユニット10のマスター処理
装置から送られてきた再転送を指示する信号を受けて故
障検出を認識し、内部資源の更新を抑止する機能も備え
ている。 12.生存処理装置表示フラグ (1)生存処理装置表示フラグ 図27は、TMRユニット10を構成する処理装置10
−1〜10−3の内、どの処理装置が正常に動作してい
るか、あるいは逆にどの処理装置が故障等によってTM
Rユニットから離脱しているかを示す生存処理装置表示
フラグを設けたことを特徴とする。
【0182】図27の実施例は、図6に示したTMRユ
ニット10の処理装置10−1の構成を例にとってい
る。処理装置10−1には生存処理装置表示フラグ回路
340が設けられる。生存処理装置表示フラグ回路34
0には、TMRユニット10を構成する3つの処理装置
10−1〜10−3に対応して、フラグレジスタ34
2,344,346が設けられている。
【0183】フラグレジスタ342は処理装置10−1
の生存処理装置表示フラグを有し、フラグレジスタ34
4は処理装置10−2の生存処理装置表示フラグを有
し、フラグレジスタ346は処理装置10−3の生存処
理装置表示フラグを有する。同様に、他の処理装置10
−2〜10−3についても、生存処理装置表示フラグ回
路340が設けられている。 処理装置10−1のソフ
トウェアは、必要に応じて生存処理装置表示フラグ回路
340の各フラグレジスタ342〜346をリードする
ことにより、TMRユニット10を構成する処理装置1
0−1〜10−3の稼働状態を認識することができる。 (2)生存処理装置表示フラグによる不一致検出信号の
マスク出力 図28は、TMRユニット10を構成する処理装置10
−1〜10−3について、処理装置自身が故障等により
TMRユニット10から離脱しているときに、誤ってバ
ス情報故障検出による不一致発生信号を他の処理装置に
送出しないようにした実施形態である。
【0184】図28において、生存処理装置表示フラグ
回路340は処理装置10−1〜10−3に対応したフ
ラグレジスタ342,344,346を有する。フラグ
レジスタ342〜346は、TMRユニット10におい
て装置が正常に動作している場合にはオン、故障等によ
り離脱している場合はオフとなる。フラグレジスタ34
2,344,346に続いては、ANDゲート352,
354,356が設けられる。
【0185】ANDゲート352,354,356のそ
れぞれには、装置番号デコード回路82からのデコード
信号E11−1,E11−2,E11−3が入力され、
フラグレジスタ342,344,346からのフラグ信
号E41,E42,E43との論理積をとっている。装
置番号デコード回路82は入力端子18−1からの処理
装置番号#1をデコードして、デコード信号E11−1
のみをオンにしている。このためANDゲート352の
みが許容状態となって、フラグレジスタ342からの処
理装置10−1についての生存処理装置表示フラグに対
応したフラグ信号がORゲート348を介して出力信号
E40として出力される。
【0186】一致検出用トライステート回路76には、
マスク出力回路を構成するANDゲート350が設けら
れている。ANDゲート350の一方の入力にはバス情
報故障検出回路40より不一致検出信号E5が入力さ
れ、他方の入力には生存処理装置表示フラグ回路340
からの出力信号E40が入力されている。このため、
NDゲート350においてバス情報故障検出回路40に
よる他の処理装置10−2,10−3に対する不一致発
生信号E5の出力は、生存処理装置表示フラグ回路34
0からの出力信号E40によりマスクされた後に出力さ
れる。
【0187】即ち、処理装置10−1がTMRユニット
10の中で正常に動作しているときは生存処理装置表示
フラグ回路340からの出力信号E40はオンとなり、
ANDゲート350を許容状態とする。このとき、もし
バス情報故障検出回路40による故障検出で不一致発生
信号E5がオンすると、マスク用のANDゲート350
を通って出力ドライバ78−1により専用の信号線86
−1を介して他の処理装置10−2,10−3にバス情
報故障検出結果が通知される。
【0188】一方、故障等により処理装置10−1がT
MRユニット10から離脱している場合には、フラグレ
ジスタ342のフラグはオフであることから出力信号E
40もオフとなり、マスク用のANDゲート350を禁
止状態としている。このため、バス情報故障検出回路4
0からの不一致発生信号がバス故障検出に基づきオフと
なっていても、他の処理装置10−2,10−3に対す
るバス故障検出結果の通知を禁止することができる。
【0189】このようなマスク出力によってTMRユニ
ット10から離脱している装置は、他の処理装置には常
にバス情報故障を検出していない状態を通知することと
なり、故障した処理装置がTMRユニット10全体に悪
影響を与えることを回避できる。 (3)バス出力許可フラグによる不一致検出信号のマス
ク出力 図29は、TMRユニット10を故障等により離脱した
処理装置が誤ってバス情報故障検出結果を他の処理装置
に送出しないための他の実施形態である。
【0190】図29の実施形態にあっては、図28の一
致検出用トライステート回路76に設けたマスク出力回
路としてのANDゲート350を更に3入力のAND
ート352とし、生存処理装置表示フラグ回路340か
らの記録信号E40に加え、バス出力イネーブル生成回
路34にセットしているバス出力許可フラグに基づくフ
ラグ信号E42を入力するようにしたことを特徴とす
る。
【0191】まずバス出力イネーブル生成回路34は、
図2のように、ANDゲート36を備え、マスター情報
一致判定回路16からの自マスター信号E1により出力
タイミング生成回路32からのバス出力信号E2の出力
を許容し、バス用トライステート回路24の出力ドライ
バにイネーブル信号として供給している。そこで、AN
Dゲート36に加え自マスター信号E1のオンによりバ
ス出力許可フラグをセットするフラグレジスタを設け、
フラグレジスタの出力をフラグ信号E42として、図2
9のように一致検出用トライステート回路76に設けた
マスク出力用のANDゲート352に入力すればよい。
【0192】このようなバス出力許可フラグに基づくフ
ラグ信号E42をマスク出力に用いることで、故障によ
りTMRユニット10から離脱状態にある処理装置10
−1において、生存処理装置表示フラグ回路340の生
存処理装置表示フラグもしくはバス出力イネーブル生成
回路34のバス出力許可フラグの少なくとも一方が正常
であれば、離脱状態にある処理装置10−1からTMR
ユニット10を構成して正常に動作している他の処理装
置10−2,10−3に対するバス情報故障検出回路4
0からの故障検出結果に基づくオフ状態となった不一致
発生信号E5の送出を禁止することができる。
【0193】即ち、故障によりTMRユニット10から
離脱した処理装置10−1の不必要なバス情報故障検出
結果の他の処理装置10−2,10−3に対する出力禁
止のマスク出力機能を二重化して、信頼性を更に向上し
ている。 (4)生存処理装置表示フラグによる不一致検出情報の
マスク入力 図30は、TMRユニット10を構成する処理装置10
−1〜10−3の内、故障等により離脱している処理装
置から誤ってバス情報故障検出結果を示す一致検出信号
が送られてきても、誤動作しないようにマスク入力を行
う実施形態である。
【0194】図30において、一致検出用トライステー
ト回路76には、図29の実施形態で示したマスク出力
用のANDゲート352に加え、入力ドライバ80−
1,80−2,80−3の出力側にマスク入力用のAN
ゲート360,362,364を設けている。AND
ゲート360,362,364の他方の入力には、生存
処理装置表示フラグ回路340に設けたフラグレジスタ
342,344,346のフラグ信号E41,E42,
E43が直接入力される。
【0195】このため、TMRユニット10から故障等
により離脱した処理装置は、対応するフラグレジスタ3
42,344,346の生存処理装置表示フラグがオフ
となるため、ANDゲート360,362,364の対
応するものが禁止状態となり、TMRユニット10から
離脱した処理装置から送られてくるバス情報故障検出結
果に基づくオフ状態で有効となる不一致検出信号E5の
FF88,90,92に対する出力を禁止する。このよ
うなバス情報故障検出結果のマスク入力により、TMR
ユニット10から離脱している他の処理装置より誤って
バス情報故障検出結果を示す不一致検出信号E5が送ら
れてきても、この信号を無視することができ、故障した
処理装置がTMRユニット10全体に悪影響を与えるこ
とを回避することができる。 13.マスター情報の保証 (1)マスター情報 図31は、TMRユニット10を構成する処理装置10
−1〜10−3の間でどの処理装置がマスター処理装置
として認識しているかを示すマスター情報を互いに通知
して、誤ったマスター情報の認識を防止する実施形態の
ブロック図である。
【0196】TMRユニット10を構成する処理装置1
0−1〜10−3の内、処理装置10−1に代表して示
すように、マスター処理装置はマスター情報レジスタ1
4に対する設定で決められており、例えば処理装置10
−1がマスター処理装置の割当てを受け、他の処理装置
10−2,10−3がスレーブ処理装置の割当てを受け
ているとする。
【0197】マスター情報レジスタ14は、保持された
マスター情報に基づいて自マスター信号E0を出力す
る。処理装置10−1〜10−3間でマスター情報を通
知し合うため、マスター情報用トライステート回路36
6が設けられる。マスター情報用トライステート回路3
66は、処理装置10−1〜10−3に対応して3つの
トライステート出力ドライバ368−1,368−2,
368−3及び入力ドライバ370−1,370−2,
370−3を有する。
【0198】マスター情報用トライステート回路366
の3つのトライステート回路の出力は、端子372−1
1,372−12,372−13より専用の信号線37
4−1,374−2,374−3によって、他の処理装
置10−2,10−3の対応する端子372−21〜2
3、372−31〜33に接続される。マスター情報用
トライステート回路366に設けた出力ドライバ368
−1,368−2,368−3には、マスター情報レジ
スタ14からのマスター処理装置番号信号E0が共通に
入力される。また出力ドライバ368−1〜368−3
のイネーブル端子には、装置番号デコード回路82から
のデコード信号E11−1〜E11−3がそれぞれ入力
される。
【0199】装置番号デコード回路82は、入力端子1
8−1に対する処理装置番号#1を解読してデコード信
号E11−1のみをオンとしている。このため出力ドラ
イバ368−1のみがイネーブルとなり、マスター情報
レジスタ14からのマスター処理装置番号信号E0を制
御用の信号線374−1によって他の処理装置10−
2,10−3に通知している。同時に、入力ドライバ3
70−1により処理装置自身がマスター情報レジスタ1
4のマスター処理装置番号信号E0を信号E44として
取り込んでいる。
【0200】同様なマスター情報用トライステート回路
366は、他の処理装置10−2,10−3にも設けら
れている。このため、専用の信号線374−2,374
−3によって処理装置10−2,10−3のマスター情
報レジスタ14の保持しているマスター情報に基づいた
マスター処理装置番号信号が通知され、入力ドライバ3
68−2,368−3より処理装置10−2,10−3
から通知されたマスター処理装置番号信号E45,E4
6を得ることができる。
【0201】このようなマスター情報用トライステート
回路366によるTMRユニット10を構成する処理装
置10−1〜10−3間でのマスター情報レジスタの通
知機能により、互いに通知しているマスター情報を判定
することで、装置自身がマスター処理装置であるにも係
わらずスレーブ処理装置と誤認識してTMRユニット1
0からマスター処理装置がなくなってしまったり、逆に
装置自身がスレーブ処理装置であるにも係わらずマスタ
ー処理装置と誤認識してしまってTMRユニット10に
複数のマスター処理装置が存在してしまうようなことを
回避することができる。 (2)マスター情報の故障検出 図32は、図31の実施形態に加え、TMRユニット1
0を構成する処理装置10−1〜10−3が互いに自分
の認識するマスター処理装置番号を通知し合うことによ
ってマスター情報の故障検出を行うようにしたことを特
徴とする。
【0202】このマスター情報の故障検出のため、マス
ター情報用トライステート回路366に続いてマスター
情報故障検出回路376が設けられる。マスター情報故
障検出回路376は、処理装置10−1〜10−3に対
応して3つの比較器384,386,388を設け、3
つの比較出力をANDゲート386に入力している。
【0203】比較器384には、入力ドライバ370−
1からFF378を介して、処理装置10−1によるマ
スター情報に基づいたマスター処理装置番号信号E44
が入力される。比較器386には、入力ドライバ370
−2により処理装置10−2から通知されたマスター処
理装置番号信号E45がFF380を介して入力され
る。更に比較器388には、入力ドライバ370−3に
より処理装置10−3から通知されたマスター処理装置
番号信号E46がFF382を介して入力される。
【0204】比較器384は、処理装置10−1と処理
装置10−2のマスター処理装置番号信号E44とE4
5を比較する。比較器386は、処理装置10−2と処
理装置10−3のマスター処理装置番号信号E45とE
46を比較する。更に比較器388は、処理装置10−
3と処理装置10−1のマスター処理装置番号信号E4
6とE44を比較する。
【0205】比較器384,386,388のそれぞれ
は、2つのマスター処理装置番号信号が一致していると
出力がオンとなり、不一致でオフとなる。全ての処理装
置10−1〜10−3に正しいマスター情報が設定され
ていると、全てのマスター処理装置番号信号E44,E
45,E46は等しいことから、比較器384,38
6,388の出力は全てオンとなり、ANDゲート39
0の出力となるマスター情報故障発生信号E50はオフ
となっている。
【0206】これに対し、いずれか1つのマスター処理
装置番号信号が不一致であった場合には、3つの比較器
384,386,388のいずれか2つの出力がオフと
なる。このためANDゲート390から出力されるマス
ター情報故障発生信号E50がオンとなる。これによ
り、TMRユニット10を構成している処理装置10−
1〜10−3のいずれかでマスター情報の故障が発生し
たことを認識し、必要な故障処理を行うことができる。
【0207】なお、マスター情報用トライステート回路
366とマスター情報故障検出回路376の間にFF3
78,380,382を設け、3つのマスター装置番号
信号を1回保持するようにしているが、これはバス情報
故障が発生してから検出されるまでの時間とマスター情
報に故障が発生してから検出されるまでの時間を同じタ
イミングにするためである。またバス情報故障検出回路
40側に設けているFF56,58の段数に応じてマス
ター情報故障検出側のFFの段数も変わってくる。 (3)マスター情報の多数決処理 図33は、TMRユニット10を構成する処理装置10
−1〜10−3が互いに自分の認識するマスター処理装
置番号を多数決比較することによって、マスター情報の
故障を検出した場合に、どの処理装置のマスター情報が
故障したのかを判定するようにしたことを特徴とする。
【0208】このマスター情報が故障した処理装置を判
定するため、図32の実施形態に対し更に、マスター情
報故障判定回路392を新たに設けている。マスター情
報故障判定回路392は、処理装置10−1,10−
2,10−3に対応して、反転入力のANDゲート39
4,396,398を設けている。ANDゲート394
には、マスター情報故障検出回路376の比較器384
388の出力が入力される。
【0209】ANDゲート396には、比較器386と
384の出力が入力される。更にANDゲート398に
は、比較器386と388の出力が入力される。AND
ゲート394は、処理装置10−1のマスター情報の故
障を判別すると、マスター情報故障信号E51をオンす
る。ANDゲート396は、処理装置10−2のマスタ
ー情報の故障を検出すると、マスター情報故障信号E5
2をオンする。更にANDゲート398は、処理装置1
0−3のマスター情報の故障を検出すると、マスター情
報故障信号E53をオンする。
【0210】例えば処理装置10−2のマスター情報が
故障したとする。このためマスター情報故障検出回路3
76にあっては、故障したマスター情報に基づくマスタ
ー処理装置番号信号E45を入力している比較384,
386の出力がオフとなり、これとは関係のない比較器
388の出力がオンとなっている。比較器384,38
6の出力はマスター情報判定回路392のANDゲート
396に入力されており、このためマスター情報故障判
定信号E52もオンとなり、処理装置10−2のマスタ
ー情報の故障と判定することができる。
【0211】他の処理装置10−1,10−3について
も、同様な論理によってマスター情報の故障が発生した
ときにどの処理装置のマスター情報が故障したのかを判
定することができる。更に図33の実施形態にあって
は、一致検出用トライステート回路76にFF88,9
0,92を介してバス情報故障についてのバス情報故障
判定回路98を設けている。このバス情報故障判定回路
98は図7の実施形態のものであり、その詳細は図8の
回路に示した通りである。即ち、処理装置10−1,1
0−2,10−3の各々がバス故障を起こした処理装置
であることを示す判定信号E18,E19,E20と、
いずれかの処理装置においてバス情報の故障が起きたこ
とを判定するバス情報故障判定信号E21を出力してい
る。このバス情報故障判定回路98の各判定信号は、後
の説明で明らかにする図37の二重化構成において利用
される。 (4)マスター情報の生存処理装置表示フラグによるマ
スク出力 図34は、TMRユニット10を構成する処理装置10
−1〜10−3が、装置自身の故障によりTMRユニッ
ト10から離脱しているときに、誤ったマスター情報を
TMRユニットを構成している他の処理装置へ通知しな
いようにした実施形態である。
【0212】図33の実施形態にあっては、処理装置1
0−1〜10−3のいずれかがTMRユニット10から
故障等により離脱しているときも、TMRユニット10
を構成している他の処理装置に対しマスター情報がその
まま出力されており、このため他の処理装置が誤った認
識を起こす恐れがある。これを回避するため、図34の
実施形態にあっては、TMRユニット10から離脱して
いる処理装置はマスター情報として存在しない処理装置
番号、この実施例にあっては処理装置番号#1,#2,
#3を使用していることから、存在しない処理装置番号
#0を出力させる。
【0213】この処理装置番号#0の通知に対し、TM
Rユニット10を構成している処理装置は他の処理装置
から存在しない処理装置番号#0をマスター情報として
通知されたときは、これを正常と認識することによって
誤動作を回避する。TMRユニット10から離脱した状
態で存在しない処理装置番号#0をマスター情報として
他の処理装置に通知するため、マスター情報用トライス
テート回路360にマスク出力用のANDゲート412
を設けている。ANDゲート412の一方の入力にはマ
スター情報レジスタ14からのマスター処理装置番号E
0が入力される。
【0214】ANDゲート412の他方の入力には生存
処理装置表示フラグ回路340からの装置自身の生存を
示すフラグ信号E40を入力する。このフラグ信号E4
0は、図28の生存処理装置表示フラグ回路340に示
したように、処理装置10−1に対応したフラグレジス
タ342に対する生存処理装置表示フラグのオンと、装
置番号デコード回路82より出力される処理装置10−
1の番号#1に対応したデコード信号E11−1に基づ
いて、オンとなる。
【0215】処理装置10−1がTMRユニット10を
構成している場合には、生存処理装置表示フラグがオン
していることからフラグ信号E40もオンとなり、AN
Dゲート412を許容状態として他の処理装置10−
2,10−3に至るマスター情報の通知を行っている。
これに対し、故障等により処理装置10−1がTMRユ
ニット10から離脱した場合には、装置自身の生存処理
装置表示フラグがオフとなり、フラグ信号E40もオフ
となることで、ANDゲート412を禁止状態とする。
【0216】このため出力ドライバ368−1による他
の処理装置10−2,10−3に対するマスター情報と
しての装置番号#1の通知は禁止され、結果として、存
在しない処理装置の装置番号#0が通知されたと同じ状
態になる。これによってTMRユニット10から離脱す
るときは、マスター情報として存在しない装置番号#0
をマスター処理装置として認識していることを他の処理
装置に通知することができる。
【0217】一方、TMRユニット10を構成して動作
中の処理装置は、TMRユニット10から離脱した他の
処理装置から存在しない処理装置番号#0をマスター情
報として通知されたときは、このマスター情報の通知を
無視しなければならない。そこで、マスター情報故障検
出回路376に、比較器384,386,388のそれ
ぞれに入力するマスター処理装置と認識した装置番号が
処理装置として存在しない装置番号#0であることを検
出して出力をオンするマスター装置番号検出器385,
387,389を設け、比較器384,386,388
の出力と共にORゲート407,408,410に入力
する。このORゲート407,408,410の出力を
ANDゲート390及びマスター情報故障判定回路39
2に与えている。
【0218】例えば処理装置10−2がTMRユニット
10から離脱して、存在しない処理装置番号#0をマス
ター情報として通知したとすると、マスター情報故障検
出回路376において装置番号#0の通知を入力した比
較器384,386の出力がオフとなる。同時に、3つ
のマスター番号検出回路385,387,389のうち
処理装置10−2に対応したマスター番号検出回路38
7が、通知された装置番号#0を検出してその出力をオ
ンする。
【0219】このため、存在しない処理装置番号#0に
より比較器384,386の出力がオフとなっている
が、マスター番号検出回路387の出力がオンとなるた
め、ORゲート407,408の出力をオンとすること
ができる。このときORゲート410の出力はオンであ
ることから、NANDゲート390から出力されるマス
ター情報故障発生信号E50はオフとなり、TMRユニ
ット10から離脱した処理装置10−2から存在しない
装置番号#0の通知があっても、これを無視して、マス
ター情報故障の検出を抑止することができる。 (5)マスター情報のバス出力許可フラグによるマスク
出力 図35は、ある処理装置が故障等によりTMRユニット
10から離脱しているときに誤ったマスター情報をTM
Rユニットを構成している他の処理装置に通知しないた
めの実施形態であり、図35の生存処理装置表示フラグ
に加えてバス出力許可フラグを用いてマスター情報のマ
スク出力を行うようにしたことを特徴とする。
【0220】図35の実施形態にあっては、マスター情
報用トライステート回路360にはマスク出力用に3入
力のANDゲート413を設けている。ANDゲート4
13には、図34と同様に、マスター情報レジスタ14
からのマスター処理装置番号信号E0と、生存処理装置
表示フラグ回路340からのTMRユニット10への加
入と離脱を示すフラグ信号E40が入力される。
【0221】更にANDゲート413には、バス出力イ
ネーブル回路34に設定したバス出力許可フラグに基づ
くフラグ信号E42を入力している。このバス出力許可
フラグに基づくフラグ信号E42は、図29におけるバ
ス情報故障検出結果のマスク出力に使用したものと同じ
ものである。このようなマスク出力用のANDゲート4
13を設けることで、生存処理装置表示フラグ回路34
0からのフラグ信号E40とバス出力イネーブル生成回
路34に設けたバス出力許可フラグに基づくフラグ信号
E42の少なくともいずれか一方の回路部が正常であれ
ば、TMRユニット10から離脱している処理装置はマ
スター情報として存在しない処理装置番号#0を出力す
ることができる。この二重化によって、故障した処理装
置がTMRユニット全体に悪影響を与えることを確実に
回避できる。 (6)マスター情報の生存処理装置表示フラグによるマ
スク入力 図36は、故障等によりTMRユニット10から離脱し
ている処理装置から、TMRユニット10を構成してい
る他の処理装置に誤ったマスター情報が通知されても、
誤動作しないように入力マスクするようにした実施形態
である。
【0222】処理装置10−1にあっては、他の処理装
置10−2,10−3から専用の信号線374−2,3
74−3により通知されたマスター情報の処理装置番号
に関する信号を、装置自身を含めて入力ドライバ370
−1,370−2,370−3により取り込んでおり、
この出力段に入力マスク用のANDゲート414,41
,418を設けている。
【0223】ANDゲート414,416,418の他
方の入力には、生存処理装置表示フラグ回路340から
出力される処理装置10−1〜10−3ごとのフラグ信
号E41,E42,E43がそれぞれ入力されている。
このため、TMRユニット10から離脱している処理装
置に対応するフラグ信号E41〜E43はオフであるこ
とから、ANDゲート414,416,418のうち対
応するものが禁止状態に置かれ、マスター情報故障検出
回路376に対するマスター情報を示す処理装置番号信
号の入力が禁止される。
【0224】ANDゲート414,416,418で入
力がマスクされた処理装置番号信号は装置番号#0とし
て扱われる。この装置番号#0は存在しない処理装置番
号であることから、マスター情報故障回路376は入力
マスク用のANDゲート414,416,418による
入力禁止のマスクによって、故障により離脱した処理装
置がTMRユニット全体に悪影響を与えることを回避す
ることができる。 (7)バス多重化時のマスター情報の故障検出 図37は、多重バス構成をとる高信頼性情報処理装置の
実施形態である。この多重化バス構成にあっては、TM
Rユニット10を構成する処理装置10−1,10−
2,10−3は複数のバス、この実施形態にあってはバ
ス12−1とバス12−2に接続され、データの受け渡
しを行うことになる。この場合、処理装置10−1〜1
0−3が認識しているマスター処理装置番号も、バス1
2−1,12−2ごとに他の処理装置に通知される。
【0225】この場合、バス12−1,12−2ごとに
マスター処理装置が異なるような運用も考えられるが、
全てのバス12−1,12−2で同じ処理装置をマスタ
ー処理装置に設定した方が制御は非常に簡単になる。図
37の実施形態にあっては、バス12−1側は図33の
実施形態とした場合を例にとっている。ここでバス12
−1側について、処理装置10−1の多重化制御回路
を、バス情報故障制御部を構成するTMR制御回路40
0とマスター情報故障制御部を構成するTMR制御回路
402に分けて表わしている。
【0226】同じ回路構成はバス12−2側のバス情報
故障制御部としてTMR制御回路404設けられ、バ
ス12−2のマスター情報故障制御回路部としてTMR
制御回路406が設けられる。もちろん、バス12−2
側についてはバス12−1側と全く同様な処理装置10
−1,10−2,10−3間の信号線接続が行われる。
【0227】TMR制御回路402,406には、TM
R制御回路402側に示すマスター情報故障検出回路3
76によってTMRユニット10におけるマスター情報
故障を示すマスター情報故障判定信号E50が得られ
る。またマスター情報故障判定回路394において、マ
スター情報に異常のある処理装置の判定信号E51,E
52,E53が得られている。同様な判定信号はバス1
2−2側のTMR制御回路406でも得られている。
【0228】そこで両者のマスター情報に関する故障検
出及び判定信号について、ORゲート422,424,
426,428を設け、バス12−1,12−2間で対
応する信号同士の論理和をとることによって、マスター
情報の故障発生と、どの処理装置でマスター情報の故障
が発生したかを判別できる。即ち、バス12−2に対す
るマスター情報故障制御部としてのTMR制御回路40
6からは、マスター情報故障検出信号E60、処理装置
10−1〜10−3に対応したマスター情報故障判定信
号E61,E62,E63が得られることから、それぞ
れANDゲート422,424,426,428でバス
12−1側のTMR制御回路402から得られた信号E
50,E51,E52,E53のそれぞれとの論理和を
とり、バス12−1,12−2を対象とした全体として
のマスター情報故障検出信号E70及びマスター情報の
故障が発生した処理装置の判定信号E71,E72,E
73を得ることができる。
【0229】なお、図37の多重バス構成にあっては、
処理装置10−1の各バス系統のTMR制御回路を図3
3の実施形態とした場合を例にとっているが、図34〜
図36のいずれかの実施形態の回路構成であってもよい
ことは勿論である。 (8)故障検出時の生存処理装置表示フラグのオフ 図38は、TMRユニット10を構成している処理装置
10−1〜10−3のいずれかがバス情報あるいはマス
ター情報の不一致により故障と判定されたときにTMR
ユニットから離脱させるために、該当する処理装置の生
存処理装置表示フラグをオフに制御するようにした実施
形態である。
【0230】図38において、処理装置10−1には生
存プロセッサ表示フラグ回路を内蔵した生存処理装置表
示フラグ制御回路341が設けられる。生存処理装置表
示フラグ制御回路341に対しては、バス情報故障制御
部としてのTMR制御回路400に設けたバス情報故障
判定回路98からのバス情報故障処理装置を示す判定信
号E18,E19,E20が入力される。
【0231】またマスター情報故障制御部としてのTM
R制御回路402に設けたマスター情報故障判定回路3
92からのマスター情報故障を起こした処理装置を示す
判定信号E51,E52,E53を入力している。生存
処理装置表示フラグ制御回路341は、図39に示す構
成をもつ。図39において、まず処理装置10−1,1
0−2,10−3に対応して、各処理装置の生存処理装
置表示フラグを格納するフラグレジスタ342,34
4,346が設けられる。フラグレジスタ342,34
4,346としては、通常、FFが使用される。フラグ
レジスタ342,344,346のデータ入力端子に対
しては、ANDゲート430,434,438の出力が
接続される。ANDゲート430,434,438は2
入力のANDゲートであり、ソフトセット指示信号E7
4を共通入力し、またセットデータE77,E78,E
79を処理装置10−1〜10−3に対応して入力する
ようにしている。即ち、フラグレジスタ342,34
4,346に対しては、プログラムにより対応する生存
処理装置表示フラグを任意にセットまたはリセットする
ことができる。
【0232】フラグレジスタ342,344,346の
ライトイネーブル端子に対しては、3入力のORゲート
432,436,437の出力が接続される。ORゲー
ト432,436,437には、図38のバス情報故障
判定回路98からのバス故障情報検出結果が得られた処
理装置を示す判定信号E18,E19,E20が入力さ
れる。同時に、図38のマスター情報故障判定回路から
出力されるマスター情報故障を起こした処理装置を示す
判定信号E51,E52,E53が入力されている。
【0233】図38,図39において、例えば処理装置
10−3で故障が発生したとすると、バス情報の故障の
場合については、処理装置10−3に対応したバス情報
故障の判定信号E20がオンとなる。これによって図3
9におけるフラグレジスタ346の表示フラグがオフと
なる。またマスター情報の故障の場合にも、同様に処理
装置10−3のマスター情報故障を示す判定信号E53
がオフとなり、フラグレジスタ346の表示フラグがオ
フされる。
【0234】このように、故障によりTMRユニット1
0から離脱した処理装置に対応する生存処理装置表示フ
ラグを全ての処理装置でオフすることにより、故障した
処理装置がTMRユニット10を構成して正常に動作し
ている他の処理装置に悪影響を及ぼすのを回避すること
ができる。 (9)故障検出時のバス出力フラグのオフ 図40は、故障発生時に、故障した処理装置がバスを介
して、TMRユニットを構成している他の処理装置に悪
影響を及ぼさないようにするため、バス出力を禁止する
ことでTMRユニット10から故障処理装置を切り離す
ようにしたことを特徴とする実施形態である。
【0235】図40において、TMRユニット10に故
障が発生すると、バス情報故障の場合には、バス情報故
障処理装置判定回路98Aの出力するバス情報故障検出
信号E21がオンとなり、またバス情報故障を起こした
処理装置を示す判定信号E18,E19,E20のいず
れかがオンとなる。これに加えバス情報故障判定回路9
8Aは、バス情報故障が処理装置自身で発生した場合に
オンする自装置故障判定信号E81を出力する。この自
装置故障判定信号E81は、バス情報故障処理装置判定
回路98Aに対する装置番号デコード回路82からのデ
コード信号E11−1〜E11−3を使用して生成され
る。
【0236】図41は、図40のバス情報故障処理装置
判定回路98Aの実施形態である。まず回路部98は図
7,図8の実施形態に示した回路構成をもっており、F
F88,90,92からの処理装置10−1〜10−3
ごとのバス情報故障検出信号E13,E14,E15が
入力され、更にマスター情報レジスタ14からのマスタ
ー処理装置番号信号E0が入力される。
【0237】回路部98からは、バス情報故障検出信号
E21及びバス情報故障を起こした処理装置10−1〜
10−3を示す判定信号E18,E19,E20が出力
される。そこで、バス情報故障の処理装置を示す判定信
号E18,E19,E20のそれぞれをANDゲート4
42,444,446に入力して装置番号デコード回路
82からのデコード信号E11−1,E11−2,E1
1−3との論理積をとり、ORゲート448でとりまと
めて、バス情報故障に関する自装置故障判定信号E81
を出力している。
【0238】このため、故障が発生した装置が例えば処
理装置10−1自身であった場合には、回路部98から
の処理装置10−1を示す判定信号E18がオンし、装
置番号デコード回路82からのデコード信号E11−1
もこのときオンになっていることから、ANDゲート4
42の出力がオンとなり、ORゲート448を介して自
装置故障判定信号E81がバス出力イネーブル生成回路
34Aに出力される。
【0239】そして内部のフラグレジスタにセットされ
ているバス出力許可フラグをオフとし、バス用トライス
テート回路24に対するイネーブル信号E3のオフによ
り、バス12に対する出力情報生成回路22からのバス
情報D1の送出を禁止する。一方、図40のマスター情
報故障制御部となるTMR制御回路402側には、マス
ター情報故障検出判定回路440が設けられる。マスタ
ー情報故障検出判定回路440は、図38に示している
マスター情報故障検出回路376とマスター情報故障判
定回路392を合わせた回路であり、更に自装置のマス
ター情報故障を判定したときにオンする自装置故障判定
信号E80を出力するようにしている。
【0240】図42は図40のマスター情報故障検出判
定回路440の実施形態であり、図38に示したマスタ
ー情報故障検出回路376及びマスター情報故障判定回
路392を備えている。マスター情報故障判定回路39
2からは、マスター情報の故障検出信号E50と、マス
ター情報の故障を起こした処理装置を示す判別信号E5
1,E52,E53が出力されている。
【0241】マスター情報故障が自装置であることを示
す自装置故障判定信号E80は、ANDゲート450,
452,454及びORゲート456の回路部で生成さ
れる。即ち、ANDゲート450,452,454の一
方の入力にマスター情報故障判定回路392からのマス
ター情報故障の処理装置を示す判定信号E51,E5
2,E53の各々を入力し、他方の入力に装置番号デコ
ード回路82からのデコード信号E11−1,E11−
2,E11−3を入力し、これら3つの論理積出力の論
理和をORゲート456でとって、マスター情報故障が
装置自身であることを示す自装置故障判定信号E80を
出力している。
【0242】このマスター情報故障処理装置判定回路4
40からのマスター情報故障に関する自装置故障判定信
号E80も、図40のようにバス出力イネーブル生成回
路34Aに与えられ、バス出力許可フラグをオフするこ
とでイネーブル信号E3をオフし、バス用トライステー
ト回路24によるバス情報のバス12に対する出力を禁
止させることになる。
【0243】図40のバス出力イネーブル生成回路34
Aは、図43の回路構成を有する。まずバス出力許可フ
ラグのセット/リセットを行うフラグレジスタ460が
設けられる。フラグレジスタ460のデータ入力端子に
は、ANDゲート456による論理積出力のためソフト
セット指示信号E82とセットデータE83が入力され
ている。
【0244】フラグレジスタ460のライトイネーブル
端子に対しては3入力のORゲート458の出力が接続
され、ORゲート458には、図41のバス情報故障処
理装置判定回路98Aからの自装置故障判定信号E8
1、図42のマスター情報故障処理装置判定回路440
からの自装置故障判定信号E80が入力されている。こ
のため、ソフトウェアによりセットされたフラグレジス
タ460のバス出力許可フラグは、装置自身のバス情報
の故障あるいはマスター情報の故障のいずれについても
強制的にリセットされる。
【0245】フラグレジスタ460の出力は、図40の
マスター情報一致判定回路16からの自マスター信号E
1及び出力タイミング生成回路32からのバス出力信号
E2が入力され、3つの信号が全てオンであればバスイ
ネーブル信号E3をオンし、バス出力を許容する。しか
しながら、装置自身のバス情報の故障またはマスター情
報の故障によりフラグレジスタ460のバス出力許可フ
ラグがオフになると、フラグ信号E84によりANDゲ
ート462が禁止状態となり、バス用トライステート回
路24に対するイネーブル信号E3をオフし、バス12
に対するバス情報の出力が禁止される。
【0246】このようにバス情報またはマスター情報の
故障によりTMRユニット10から離脱した処理装置の
バス出力許可フラグをオフすることにより、故障した処
理装置がバスにアクセスして他の正常に動作しているT
MRユニットの処理装置に悪影響を及ぼすことを回避で
きる。 (10)マスター故障時のマスター更新 図44は、現在マスター処理装置となっている処理装置
がマスター情報の故障によりバスから切り離された場合
に、TMRユニット10を構成する残された正常な処理
装置から新たにマスター処理装置を決定して処理を続行
するための再決定の実施形態である。
【0247】このマスター処理装置の再決定のために、
処理装置10−1に代表して示すようにマスター情報レ
ジスタ回路14Aが設けられる。マスター情報レジスタ
回路14Aに対してはバス情報故障判定回路98Aから
のバス情報の故障を起こした処理装置を示す判定信号E
18,E19,E20と、マスター情報故障検出判定回
路440からのマスター情報故障を起こした処理装置の
判定信号E51,E52,E53が入力されている。
【0248】図45は、マスター情報レジスタ回路14
Aの実施形態である。まずマスター情報は、マスター情
報レジスタ494に格納される。マスター情報レジスタ
494に対するマスター情報の設定は、ANDゲート4
86に対するソフトセット指示信号E86とソフトデー
タE87により、ソフトウェアにより行うことができ
る。
【0249】ANDゲート486の出力は、ANDゲー
ト488、ORゲート492を介して、マスター情報レ
ジスタ494に与えられてマスター情報を設定する。な
お、ANDゲート488は必ずしも設ける必要はない。
マスター情報レジスタ494のライトイネーブル端子に
対しては、ORゲート496の出力が与えられる。ライ
トイネーブル端子は、ソフトウェアによるマスター情報
の書込時にソフトセット指示信号E86によりオンする
ことができる。またライトイネーブル端子はバス情報ま
たはマスター情報の故障がマスタプロセッサで発生した
ときにオンとなり、新マスター処理装置番号生成回路4
84のアルゴリズムによってマスター情報を更新するこ
とができる。
【0250】バス情報の故障を検出した際の処理装置を
判定する判定信号E18,E19,E20は、ORゲー
ト464,466,468を介してデコーダ470,4
72,474に入力される。またORゲート464,4
66,468の他方の入力には、マスター情報の故障に
ついて処理装置の判定信号E51,E52,E53が入
力される。デコーダ470,472,474は、ORゲ
ート464,466,468の出力のオンによるバス情
報またはマスター情報の故障が判定された処理装置に対
応するデコーダ信号01,10,11を出力する。この
デコーダ出力は、マスター情報レジスタ494に対する
マスター処理装置の設定情報と同じものを使用する。
【0251】比較器476,478,480は、マスタ
ー情報レジスタ494に設定したマスター処理装置を表
わすマスター情報と、デコーダ470,472,474
のそれぞれより出力されたデコーダ信号を比較し、一致
した際に出力をオンとする。例えばマスター情報レジス
タ494にマスター処理装置10−1のマスター情報0
1が登録されており、例えば処理装置10−1のバス情
報の故障により、その判定信号E18がオンして、デコ
ーダ470よりデコーダ信号01が出力されると、比較
器476の出力がオンする。
【0252】比較器476,478,480の出力はO
Rゲート482でとりまとめられて、マスター情報故障
信号としてORゲート496を介してマスター情報レジ
スタ494のライトイネーブル端子に与えられ、マスタ
ー情報レジスタ494をイネーブル状態とする。同時
に、ANDゲート490に与えられて許容状態とし、新
マスター処理装置番号生成回路484による新たなマス
ター処理装置のマスター情報の更新を可能とする。
【0253】新マスター処理装置番号生成回路484に
よるマスター情報レジスタ494の更新は、例えば図1
7に示した新マスター処理装置の生成順序に従って新し
いマスター処理装置番号をマスター情報レジスタ494
にセットする。もちろん、新マスター処理装置を選ぶ順
序はどのような順序でも構わないが、TMRユニットを
構成する全ての処理装置が同じアルゴリズムによって更
新できるようにする必要がある。この結果、マスター処
理装置にバス情報またはマスター情報の故障が発生して
も、残りの処理装置の中から新たなマスター処理装置を
選ぶことによって引き続きTMRユニットによる処理を
続けることができる。 (11)マスター故障時のマスター非更新 図46は、現在マスター処理装置となっている処理装置
がマスター情報の故障によりバスから切り離された場
合、TMRユニット10を構成している残された正常な
処理装置の中から新たにマスター処理装置を決定しない
ようにした場合の実施形態である。
【0254】即ち、図45の実施形態にあっては、マス
ター処理装置がマスター情報の故障と認識された場合に
は、次にマスター処理装置となる順序割当てを受けた処
理装置が自分自身でマスター情報レジスタに装置自身の
番号をセットして新マスター処理装置となる。この場
合、故障を起こした処理装置が現在マスター処理装置と
なっている処理装置であれば問題ない。
【0255】しかし、そうではなく次のマスター処理装
置候補となっているスレーブ処理装置でマスター情報が
故障した場合には、現マスター処理装置が故障したと誤
認識して、故障を起こしたスレーブ処理装置自身がマス
ター処理装置になろうとし、TMRユニットの中に2台
のマスター処理装置が存在することになってシステムダ
ウンに至る危険性がある。
【0256】そこで図46の実施形態にあっては、マス
ター情報の故障が検出されてもマスター処理装置の再決
定を行わないようにしている。このため図46の処理装
置10−1に代表して示すマスター情報レジスタ回路1
4Bに対しては、マスター情報故障検出判定回路440
からの判定信号E51,E52,E53は入力されず、
バス情報故障判定回路98Aからの判定信号E18,E
19,E20のみを入力している。
【0257】図47はマスター情報レジスタ14Bの実
施形態であり、デコーダ470,472,474に対し
バス情報の故障による処理装置の判定信号E18,E1
9,E20のみを入力している。他の構成は図45の回
路と同じである。この結果、マスター情報の故障が判定
されてもマスター情報レジスタ494の新マスター処理
装置への更新は行われず、バス情報故障が検出された場
合にのみ、そのときのバス情報故障の処理装置を示す判
定信号E18,E19またはE20のいずれかのオンに
基づいたマスター処理装置における新マスター処理装置
のためのマスター情報レジスタ494の更新が行われ
る。 (12)マスター故障時の各種資源の更新抑止 図48は、マスター情報の故障時(バス情報故障時も含
む)に、故障発生時のバス上のデータを各処理装置が内
部回路に取り込まないように各種資源の更新を抑止する
実施形態である。
【0258】既に説明したように、バス情報の故障が発
生した場合、バス情報故障判定回路98Aからバス情報
故障判定信号E21が出力される。またマスター情報に
故障が発生したときには、マスター情報故障検出判定回
路440からマスター情報故障判定信号E50が出力さ
れる。バス12からバス用トライステート回路24に取
り込まれたデータは、FF58及び500により2回保
持される。これはバス情報故障判定信号E21の生成と
のタイミングを合わせるためである。
【0259】FF500に保持されたデータは、バスデ
ータD11としてデータ更新抑止回路496を介して内
部回路に送られる。データ更新抑止回路496は、内部
制御回路498からのバス選択信号E91、バス情報故
障判定回路98Aからのバス情報故障判定信号E21
及びマスター情報故障判定回路440からのマスター情
報故障判定信号E50を受けて、データ更新と抑止を制
御する。
【0260】図49は、データ更新抑止回路496の実
施形態の回路図である。FF500に保持されたデータ
D11は、マルチプレクサ501のANDゲート502
に入力される。ANDゲート502には、バス選択信号
E91が入力される。マルチプレクサ501は、他の回
路に対応して例えばANDゲート504,506を備え
ている。
【0261】マルチプレクサ501は、ANDゲート5
02,504または506で選択されたいずれかのデー
タをレジスタ510の入力データパスに出力する。レジ
スタ510のイネーブル端子に対しては、ORゲート5
12及びインバータ514が設けられる。ORゲート5
12には、バス情報故障判定信号E21とマスター情報
故障判定信号E50が入力される。
【0262】TMRユニット10の処理装置10−1〜
10−3が正常に動作している通常時には、バス情報故
障判定信号E21及びマスター情報故障信号E50の両
方ともオフであり、このためインバータ514の出力が
オンとなってレジスタ510はイネーブル状態にある。
このため、マルチプレクサ501に対するバス選択信号
E91のオンによりバス上のデータは、データD11と
してANDゲート502,ORゲート508を介してレ
ジスタ510にセットされる。
【0263】これに対し、バス情報あるいはマスター情
報の故障が検出された場合には、バス情報故障判定信号
E21またはマスター情報故障判定信号E50がオン
し、インバータ514の出力がオフとなって、レジスタ
510をデセーブル状態とする。このデセーブル状態
は、バス上にデータが出力された後の2サイクル後のタ
イミングとなる。
【0264】このときマルチプレクサ501からバス上
のデータD11がレジスタ510に入力するが、デセー
ブル状態にあることから、レジスタ510に対するデー
タD11の書込みは抑止され、故障発生時のバス上のデ
ータによるレジスタ内容の破壊を抑止することができ
る。なお図49は、故障発生時のバス上のデータによる
レジスタ内容の破壊防止を例にとっているが、他の内部
回路においても必要に応じて同様の制御を行い、故障発
生時のデータによる資源の破壊を抑止することができ
る。また図49にあっては、抑止サイクル期間を1サイ
クルとしているが、連続して必要なサイクル数分だけ抑
止するようにしてもよい。 (13)マスター情報故障時の再転送指示 TMRユニットの動作中に故障が発生すると、そのとき
バス上のデータは信用できないため、故障した処理装置
を切り離した後、もう一度バスに再出力する必要があ
る。また同じバスに繋がっているTMRユニット以外の
処理装置は、故障の発生を装置自身で検出できないた
め、TMRユニットを構成している処理装置から故障の
発生を通知する必要がある。TMRユニットを構成する
処理装置以外の処理装置は、故障発生を通知された場
合、装置自身がバスにアクセス中であればTMRユニッ
トが再構成された後に再びバスにデータを出力する必要
がある。
【0265】図50は、故障の発生をバス12に接続さ
れている全ての処理装置10−1〜10−nに通知する
実施形態である。この故障発生時の再転送指示のため、
処理装置10−1に代表して示すように、再転送指示用
トライステート回路516が設けられる。再転送指示用
トライステート回路516に対しては、マスター情報一
致判定回路16からの自マスター信号E1、バス情報故
障判定回路98Aからのバス情報故障検出信号E21、
マスター情報故障検出判定回路440からのマスター情
報故障検出信号E50、マスター情報用トライステート
回路360より得られてFF395,397,399
保持されたマスター情報装置番号信号E101,E10
2,E103、更にマスター情報故障検出判定回路44
0から出力されるマスター情報故障を起こした処理装置
の判定信号E51,E52,E53が入力される。
【0266】再転送指示用トライステート回路516か
らは、端子518−1により専用の信号線520によっ
て、TMRユニット10を構成する処理装置10−2,
10−3、更にTMRユニット10以外のその他の処理
装置10−nに対し接続している。図51は、図50の
再転送指示用トライステート回路516の実施形態の回
路図である。まず専用の信号線520に対するトライス
テート回路部として、出力ドライバ538と入力ドライ
バ540が設けられる。出力ドライバ538に対して
は、ORゲート536によりバス情報故障検出信号E2
1とマスター情報故障検出信号E50の論理和が与えら
れる。出力ドライバ538のイネーブル端子には、ドラ
イバ534によるイネーブル信号が与えられる。
【0267】このイネーブル信号は故障検出時にオンと
なり、そのときORゲート536に入力しているバス情
報故障検出信号E21またはマスター情報故障検出信号
E50を、専用の信号線520により他の処理装置に対
する再転送指示信号として出力する。同時に入力ドライ
バ540によって装置自身に対するリトライ信号E92
を生成する。
【0268】まずバス情報の故障を検出した場合には、
マスター情報自体は信用できるので、故障発生時点のマ
スター処理装置を示す自マスター信号E1がオンになっ
ていることを条件に、他の処理装置に再転送指示信号を
送出する。即ち、バス情報故障検出信号E21と自マス
ター信号E1はANDゲート530で論理積がとられ、
ORゲート532を介してドライバ534により出力ド
ライバ538のイネーブル端子をオンし、そのとき得ら
れているバス情報故障検出情報E21を再転送指示信号
として専用の信号線520により他の処理装置に送出す
る。
【0269】これに対しマスター情報の故障の場合に
は、処理装置自身のマスター情報自体が必ずしも信用で
きないため、マスター情報の故障を起こしていないと判
断された処理装置が認識しているマスター処理装置番号
が装置自身の装置番号と一致しているか否かチェックす
る。一致していれば、その処理装置がマスター処理装置
に代わって他の処理装置に対し再転送指示信号を送出す
るように構成する。
【0270】即ち、マスター情報の故障検出時の処理装
置を示す判定信号E51,E52,E53をANDゲー
ト518,520,522に反転入力する。ANDゲー
ト518,520,522の他方の入力には、マスター
処理装置番号信号E101,E102,E103が入力
される。いま図51の再転送指示用トライステート回路
516が図50の処理装置10−1に設けられたもので
あり、処理装置10−2でマスター情報の故障が起きた
とする。この場合、ANDゲート521に対するマスタ
ー情報の故障装置を示す判定信号E52がオンし、反転
入力であることからANDゲート521を禁止状態と
し、故障と判断されたマスター情報であるマスター処理
装置番号信号E102の入力を抑止する。
【0271】このため、許容状態にあるANDゲート5
18,522からの正しいマスター処理装置番号信号E
101,E103、例えば信号E101,E103は共
に正しいマスター処理装置番号#01であり、ORゲー
ト524を介して比較器526に設定される。比較器5
26の他方の入力には、処理装置10−1自身の処理装
置番号#1が設定されている。
【0272】このため、比較器526の出力が一致検出
によりオンし、このときマスター情報故障検出信号E5
0がオンしていることから、ANDゲート528、更に
ORゲート532を介してドライバ534よりイネーブ
ル信号をオンする。このため、ORゲート536に対す
るマスター情報故障検出信号E50が再転送指示信号と
して専用の信号線520により他の処理装置に送出され
る。再転送指示信号による通知を受けた他の処理装置
は、データの再転送、各種資源の更新抑止等の必要な故
障処理を行う。 14.バス故障検出 (1)バス故障可能性フラグ これまでに説明してきた本発明のTMRユニットの実施
形態では、各処理装置内部とバスとの間のトライステー
ト回路は1段のみであったが、実際の装置にあっては、
図52の処理装置10−1のように、処理装置10−1
の内部の論理回路によるトライステート入出力端子とバ
ス12との間に、プリント基板上で更にトランシーバ素
546,548,550,552,554が設けられ
ることが多い。
【0273】ここで、バストランシーバ素子546はバ
ス信号用、バストランシーバ素子548は出力タイミン
グ信号用、バストランシーバ素子550はバス情報故障
検出信号(不一致検出信号)用、バストランシーバ素子
552はマスター情報信号用、更にバストランシーバ素
子554は再転送指示信号用である。そしてバスドライ
バ素子546〜554は、出力ドライバと入力ドライバ
を一体に備えている。
【0274】このように処理装置内部とバスとの間に更
にトランシーバ素子を設けた構成の場合、故障がマスタ
ー処理装置のトランシーバ素子やあるいはバス12自体
で発生すると、バス12に対しては間違ったデータが出
力されるが、マスター処理装置にあっては、論理回路内
あるいはプリント基板内で装置自身の出力データを折り
返して取り込んでいるため、装置自身は正しいデータを
取り込んでしまう。
【0275】その結果、バス情報故障検出回路40の出
力するバス情報故障検出信号(不一致検出信号)E5
は、マスター処理装置でオフ、他のスレーブ処理装置で
全てオンとなり、バス情報故障判定回路98Bでは多数
決によりマスター処理装置の故障と判定されてしまう。
このため、トライステート入出力端子に続いて更にトラ
ンシーバ素子を設けた構成の場合、バス自体の故障が発
生すると、マスター処理装置の故障との区別がつかなく
なってしまう。
【0276】図53は、図52の実施形態におけるバス
情報故障判定回路98Bにおける各処理装置10−1〜
10−3からのバス情報故障検出信号、具体的にはFF
88,90,92に保持された不一致検出信号E12
1,E122,E123に基づいた判定内容である。こ
こで、バス情報の故障検出が行われていない場合を○、
バス情報の故障検出が行われている場合を×で表わして
いる。
【0277】まず、TMRユニット10を構成する処理
装置10−1〜10−3の内の1台がバス情報の故障検
出を行ったモード2,3,5の場合は、その処理装置の
故障と断定できる。また全ての処理装置10−1〜10
−3が故障検出を行ったモード8の場合にも、マスター
処理装置の故障と断定できる。もちろん、全ての処理装
置10−1〜10−3で故障検出が行われていないモー
ド1は、全処理装置が正常である。なお、モード6,7
のマスター処理装置に加えてスレーブ処理装置が1台故
障する二重故障はあり得ないことから、判定対象から除
外する。
【0278】しかしながら、モード4のように、マスタ
ー処理装置のみが故障を検出しておらず、残り2台のス
レーブ処理装置がバス情報の故障を出力していた場合に
は、故障箇所がマスター処理装置であるのかバスである
のかが特定できない。このモード4の検出パターンを、
バス故障可能性パターンという。そこで図52の実施形
態にあっては、図53のモード4のような場合にマスタ
ー処理装置の故障かバスの故障かを断定できる判定機能
を有する。この判定機能は、図52の処理装置10−1
に示すように、新たにバス故障検出回路544を設け、
バス故障信号E114を生成し、このバス故障検出信号
E114をバス情報故障判定回路98Bおよびマスター
情報レジスタ回路14Bの各々に供給することにより判
定可能とする。
【0279】図54は、図52のバス故障検出回路54
4のブロック図である。バス情報故障検出回路544
は、4入力のANDゲート590,592,594、O
Rゲート596及びバス故障可能性フラグのセットリセ
ットを行うフラグレジスタ598で構成される。NAN
Dゲート590,592,594には、それぞれ図52
のマスター装置番号デコード回路542でデコードされ
たマスター情報デコード信号E111,E112,E1
13が入力されている。
【0280】ここで処理装置10−1を例にとってお
り、処理装置10−1がマスター処理装置の割り当てを
受けていたとすると、マスター情報デコード信号E11
1のみがオンとなっている。また、ANDゲート59
0,592,594の残りの3つの入力には、図52の
一致検出用トライステート回路76に続いて設けられた
FF88,90,92に保持された処理装置10−1自
身及び他の処理装置10−2,10−3から通知された
バス情報故障検出信号(不一致検出信号)E121,E
122,E123が並列的に入力されている。
【0281】この内、ANDゲート590,592,5
94に対する対応する処理装置のバス情報故障検出信号
E121,E122,E123の各々は反転入力となっ
ている。このANDゲート590,592,594は、
図53のモード4に示すマスター処理装置からのバス情
報故障検出信号E121がオフで、残り2つのスレーブ
処理装置から通知されたバス情報故障検出信号E12
2,E123がオンの場合にのみ、ANDゲート590
の出力がオンするようになっている。
【0282】このようなモード4におけるANDゲート
590の出力のオンにより、ORゲート596を介して
バス故障検出信号E114をオンするようにしている。
同時に、フラグレジスタ598のバス故障可能性フラグ
を1にセットする。図55は、図52のバス情報故障判
定回路98Bの実施形態のブロック図である。
【0283】52のFF88,90,92で保持した
マスター処理装置及び残りのスレーブ処理装置から通知
されたバス情報故障検出信号(不一致検出信号)E12
1,E122,E123を上側に設けたNANDゲート
568と下側に設けたANDゲート570に入力され
る。下側のANDゲート570は、3つのバス情報故障
検出信号E121,E122,E123の全てが故障検
出を示してオンとなった時出力をオンする。
【0284】即ち、図53のモード8で出力がオンす
る。これに対し上側のNANDゲート568は、3つの
バス情報故障検出信号E121,E122,E123の
少なくとも1つで故障検出が行われずオフのとき、出力
がオンする。即ち、図53のモード8以外の他のモード
で出力がオンする。バス情報故障検出信号E121,E
122,E123、NANDゲート568及びANDゲ
ート570は、2つのANDゲートとその出力を取りま
とめた1つのORゲートで構成される複合ゲート回路5
62,564,566に入力される。更に複合ゲート回
路562,564,566のそれぞれには、図52のマ
スター装置番号デコード回路542より出力されたマス
ター情報デコード信号E111,E112,E113の
それぞれが入力している。
【0285】例えば、処理装置10−1に対応した複合
ゲート回路562を例にとると、ANDゲート570の
出力がオンする全ての処理装置からバス情報故障が通知
されたモード8の場合、処理装置10−1のマスターデ
コード信号E111のみがオンであることから、複合ゲ
ート回路562の出力がオンする。一方、NANDゲー
ト568の出力がオンとなる3つの処理装置の内の少な
くとも1つよりバス情報の故障検出の通知がなかった
合には、マスター処理装置となっている処理装置10−
1自身の故障検出を示すバス情報故障検出信号E121
が故障検出によりオンとなっている場合にのみ、複合ゲ
ート回路562の出力がオンする。
【0286】複合ゲート回路562,564,566の
出力は、各々ANDゲート572,574,576に入
力されている。ANDゲート572,574,576の
他方の反転入力には、図54のバス故障検出回路544
より出力されたバス故障検出信号E114が入力してい
る。このバス故障検出信号E114は、図53のモード
4の場合にのみオンとなって、反転入力によりANDゲ
ート572,574,576を禁止状態とし、バス情報
不一致の故障検出を起こした処理装置を示すバス情報故
障判定信号E18,E19,E20の出力を禁止する。
【0287】このモード4以外の他のモードにあって
は、バス故障検出信号E114はオフであることから、
ANDゲート572,574,576よりそのときのバ
ス情報故障検出を行っている処理装置を示すバス情報故
障判定信号E18,E19,E20のいずれかがオンと
なって出力される。ORゲート578は複合ゲート回路
562,564,566の出力の論理和をとっており、
これがTMRユニット10にバス情報故障が起きたこと
を示すバス情報故障検出信号E21を出力する。更に、
バス情報故障検出が自処理装置であることを示すバス情
報故障判定信号E81を出力するANDゲート582,
584,586、ORゲート588及びANDゲート5
80を設けている。
【0288】このANDゲート580についても、モー
ド4でオンとなるバス故障検出信号E114の反転入力
によりモード4の検出状態で自処理装置におけるバス情
報故障検出を示す判定信号E81の出力を禁止してい
る。このような図54のバス故障検出回路544及び図
55のバス情報故障判定回路98Bの構成により、図5
3のモード4のマスター処理装置のみが正常で他の2つ
のスレーブ処理装置からマスター処理装置のバス出力に
対する故障検出の通知が行われた場合、バス故障可能性
パターンの検出でマスター処理装置のバス情報故障の判
定信号E18がオンしてしまうことを阻止し、図54の
ように、バス情報故障判定回路98Bに設けているバス
故障可能性フラグ598をオンする処理を行う。これに
よって、モード4においてバス側の故障が起きた場合、
誤ってマスター処理装置でのバス情報不一致との故障判
定が行われてしまうことを防止できる。
【0289】図56は、図54のバス故障検出回路54
4によってバス故障可能性パターンを検出したときに、
マスター処理装置を切り替えるためのマスター情報レジ
スタ回路14Bの実施形態である。このマスター情報レ
ジスタ14Bにあっては、図54のバス故障検出回路5
44より得られるバス故障検出信号E114が図53の
モード4でオンした際に、ORゲート600を介してバ
ス故障検出信号E85を強制的にオンし、ORゲート
97によりマスター情報レジスタ494のライトイネー
ブル端子をオンし、新マスター処理装置番号生成回路4
84の順序に従った次のマスター処理装置に切り替える
ためのマスター情報の更新を行うようにしている。
【0290】また図52の生存処理装置表示フラグ制御
回路341については、図55のバス情報故障判定回路
98Bより入力するバス情報故障の発生箇所を示す判定
信号E18,E19,E20の各々が、ANDゲート5
72,574,576において図54のバス故障検出回
路544からの故障検出信号E114でマスクされてい
る。このため、マスター処理装置の生存処理装置表示フ
ラグはオフされず、マスター情報レジスタ回路14Bの
更新によってマスター処理装置のみが切り替わって、T
MRユニット10としての処理を続行することができ
る。
【0291】更に、再転送指示用トライステート回路5
16は、バス情報故障判定回路98Bの出力するバス情
報故障検出信号E21がオンとなるので、専用の信号線
520を介してバス12に転送している全ての処理装置
に対し再転送指示信号を通知して再転送処理を行わせる
ことになる。以上のように、TMRユニット10が1回
目のバス故障可能性パターンを検出した後は、マスター
処理装置が更新されていること及びバス故障可能性フラ
グがオンになっていることを除けば、それ以前の動作状
態と変わっていない。この状態で通常のバス情報の故障
が発生すると、バス情報の故障を起こした処理装置がT
MRユニット10から切り離されることになる。 (2)旧マスター処理装置故障時のバス故障可能性フラ
グのリセット 図57は、1回目のバス故障可能性パターンの検出後、
処理装置の切り離しは行わず、マスター処理装置だけを
更新し処理を続行し、その後に旧マスター処理装置の故
障が検出されたとき、1回目のバス故障可能性パターン
の検出でセットしたバス故障可能性フラグをリセットす
る機能を備えた実施形態である。この実施形態にあって
は、処理装置10−1に代表して示すバス故障検出回路
544Aが設けられる。バス故障検出回路544Aは、
図58の回路構成を備える。
【0292】図58において、バス故障検出回路544
Aは図54の実施形態と基本的に同じであるが、バス故
障可能性フラグのセット/リセットを行うフラグレジス
タ598のライトイネーブル端子に対しORゲート60
2によりバス情報故障検出信号E21とマスター情報故
障検出信号E50の論理和出力を与えている。それ以外
の構成は図54と同じである。
【0293】即ち、図53のモード4のバス故障可能性
パターンが検出されたとき、図58のバス故障検出回路
544Aはフラグレジスタ598にバス故障可能性フラ
グをオンする。このときマスター処理装置の切り離しは
行わず、図56に示したマスター情報レジスタ回路14
Bによってマスター処理装置を更新し、処理を続行す
る。最初の故障がマスター処理装置の故障に起因してい
れば、マスター処理装置切り替え後、再び旧マスター処
理装置(この時点ではスレーブ処理装置になっている)
の故障が検出されるはずである。
【0294】このときはスレーブ処理装置のバス情報故
障を示す検出信号E21あるいはマスター情報故障を示
す検出信号E50が得られることから、ORゲート60
2を介してフラグレジスタ598のライトイネーブル端
子をオンすることで、バス故障可能性フラグをオフし、
同時に旧マスター処理装置のTMRユニット10からの
切り離しが行われる。
【0295】このようなバス故障可能性フラグのオフに
よって旧マスター処理装置が切り離された後、マスター
処理装置が別の要因で故障を発生したとき、直ちにバス
情報故障と判定されてTMRユニット10を構成できな
くなる危険性を回避することができる。 (3)バス多重化構成のバス故障可能性検出 図59は、多重バス構成をとった本発明の高信頼性情報
処理装置の実施形態であり、図57に示した単一のバス
構成の場合の処理装置10−1〜10−3の構成をバス
12−1,12−2のバス二重化構成に適用したことを
特徴とする。即ち、バス12−1,12−2に対し、処
理装置10−1に示すように、図57に示した内部回路
及びバストランシーバ素子をもつ回路が2系統設けられ
ている。
【0296】この2系統の回路部に対し、バス12−1
側についてバス故障検出回路544Aが設けられ、バス
12−2側についてバス故障検出回路604が設けられ
る。バス故障検出回路544Aは、図58と同じもので
ある。バス12−2側のバス故障検出回路604も図5
8と同じ回路構成をもち、入力するバス情報故障検出信
号E131〜E134がバス12−2側に設けたTMR
制御回路404のバス情報故障判定回路から得られ、ま
たマスター情報故障判定信号E135,E141〜E1
43が、バス12−2側に設けたTMR制御回路406
のマスター情報故障検出判定回路から得られる。
【0297】更に、多重バス故障判定回路606が設け
られる。多重バス故障判定回路606は、図60に示す
ように、ORゲート608〜628で構成される。OR
ゲート608〜616の5つがバス12−1,12−2
側のバス情報故障検出の回路部である。例えばORゲー
ト608を例にとると、バス12−1側のバス情報故障
検出信号E21とバス12−2側のバス情報故障検出信
号E161の論理和をとって、システム全体としてのバ
ス故障検出信号E150を出力している。
【0298】ORゲート610,612,614は、バ
ス情報故障検出が起きた処理装置を示す判定信号E15
1,E152,E153を出力する。このため、ORゲ
ート610,612,614には、バス12−1側のバ
ス情報故障検出の処理装置を示す判定信号E18,E1
9,E20に対し、バス12−2側の同じ判定信号E1
62,E163,E164が各々2入力の組み合わせを
もって与えられている。
【0299】ORゲート616は、バス情報の自装置故
障検出信号E81,E165を2つのバス12−1,1
2−2について入力し、システム全体としてのバス情報
の自装置故障検出信号E154を出力する。ORゲート
618〜626の5つは、バス12−1,12−2のマ
スタ情報故障検出に関する判定を行う。ORゲート61
8は、バス12−1,12−2の各マスタ情報故障検出
信号E50,E166を入力し、全体としてのマスタ情
報故障検出信号E155を出力する。
【0300】ORゲート620,622,624は、バ
ス12−1,12−2ごとのマスタ情報故障を起こした
処理装置10−1〜10−3のそれぞれを示す2組の判
定信号E51とE167、E52とE168、及びE5
3とE169を入力して、それぞれの論理和によって各
処理装置10−1〜10−3でのマスター情報の故障を
示す判定信号E156,E157,E158を出力す
る。
【0301】ORゲート626は、バス12−1,12
−2のマスター情報の自装置故障検出信号E80,E1
69を入力して、システム全体としてのマスター情報の
自故障検出信号E159を出力する。最後のORゲート
628は、図59のバス故障検出回路544Aとバス故
障検出回路604のバス故障検出信号E114,E12
4の論理和をとって、システム全体としてのバス故障検
出信号E160を出力する。
【0302】このようにバス12−1,12−2のいず
れかのバスでバス自体の故障の可能性のあるパターンを
検出すると、バス12−1とバス12−2の故障検出に
関する信号の論理和をとった信号により、マスター処理
装置の切り離しは行わず、マスター処理装置だけを更新
して処理を続行する。 (4)バス故障発生時のバス故障可能性検出処理 図61は、1回目のバス故障可能性パターンを検出した
後、処理装置の切り離しは行わず、マスター処理装置だ
けを更新し、処理を続行したとき再びバス故障可能性パ
ターンが検出されたとき、2回目の故障検出でバス自体
の故障と判断してバスを切り離す機能を備えた本発明の
実施形態である。
【0303】図61のバス故障検出回路544Bは、1
回目のバス故障可能性パターンの検出に基づいて第1バ
ス故障検出信号E171を出力し、2回目のバス故障可
能性パターンの検出で第2バス故障検出信号E172を
出力する。なお、バス故障検出信号E114は、1回目
及び2回目のそれぞれにおいて出力される。バス故障検
出回路554Bから出力された1回目のバス故障可能性
パターンの検出に基づく第1バス故障検出信号E171
は、マスター情報レジスタ回路14Cに与えられ、マス
ター処理装置の更新を行わせる。2回目のバス故障可能
性パターンの検出でバス故障検出回路544Bから出力
された第2バス故障検出信号E172は、バス出力イネ
ーブル生成回路34に与えられ、バス出力許可フラグを
オフすることでバス12に対する接続が切り離される。
【0304】図62は、図61のバス故障検出回路54
4Bの実施形態のブロック図である。このバス故障検出
回路544Bは、基本的には図54のバス故障検出回路
544と同じであり、処理装置10−1〜10−3にお
けるバス情報不一致で得られたバス情報故障検出信号E
121,E122,E123をANDゲート590,5
92,594に並列的に入力し、ANDゲート590,
592,594の各々にはマスター装置番号デコード回
路542からのデコード信号E111,E112,E1
13のそれぞれを入力している。
【0305】この場合、処理装置10−1にマスター処
理装置が割り当てていれば、デコード信号E111のみ
がオンとなり、バス故障可能性パターンとなる図53の
モード4の (E121,E122,E123)=(オフ,オン,オ
) のときANDゲート590の出力がオンし、ORゲート
596を介してバス故障検出信号E114をオンとす
る。ORゲート596からのバス故障検出信号E114
は、ANDゲート630,632のそれぞれに入力され
ている。ANDゲート630の他方の入力には、バス故
障可能性フラグのセット/リセットを行うフラグレジス
タ598の出力が反転入力されている。
【0306】初期状態においてバス故障可能性フラグは
オフであることから、フラグレジスタ598の出力はオ
フとなっており、この反転入力でANDゲート630は
許容状態にある。したがって、第1回目の故障可能性パ
ターンの検出によりバス故障検出信号E114がオンに
なると、ANDゲート630の出力もオンとなり、第1
バス故障検出信号E171をオンするようになる。この
とき第1バス故障検出信号E171はフラグレジスタ5
98のデータ入力端子に与えられていることから、この
ときORゲート602を介して得られるバス情報故障検
出信号E21のオンによりバス故障可能性フラグがセッ
トされる。
【0307】第1バス故障検出信号E171は、図61
のように、マスター情報レジスタ回路14Cに与えられ
ることでマスター処理装置の更新が行われる。図63
は、図61のマスター情報レジスタ回路14Cのブロッ
ク図である。マスター情報レジスタ回路14Cの基本的
な構成は図56と同じであり、ORゲート600の代わ
りにORゲート634としており、ORゲート634に
図62のバス故障検出回路544Bより出力された第1
バス故障検出信号E171を入力し、強制的にマスター
情報レジスタ14Cの新マスタープロセッサ番号生成回
路484による更新を行うようにしている。
【0308】再び図62を参照するに、第1バス故障検
出信号E171のオンによるマスター処理装置の更新後
に再度、同じモード4の故障パターンが検出されると、
例えばこのときマスター処理装置は処理装置10−2に
切り替わって、そのデコード信号E112がオンしてい
ることから、バス故障可能性パターンに従ったバス情報
故障検出信号としての(E121,E122,E12
3)=(オン,オフ,オン)でANDゲート592の出
力がオンし、ORゲート596を介して再びバス故障検
出信号E114がオンする。
【0309】このときフラグレジスタ598にはバス故
障可能性フラグがオンしていることから、ANDゲート
630は反転入力により禁止されており、ANDゲート
632が許容状態にある。このため、ORゲート596
の出力のオンに伴ってANDゲート632の出力がオン
し、これが第2バス故障検出信号E172として出力さ
れる。
【0310】この2回目のバス故障可能性パターンの検
出に基づく第2バス故障検出信号E172は、図64に
示すバス出力イネーブル生成回路34Bに入力される。
バス出力イネーブル生成回路34Bの基本的な回路構成
は、図43のバス出力イネーブル生成回路34Aと同じ
であり、ORゲート636に対し図62のバス故障検出
回路544Bより第2バス故障検出信号E172を入力
し、強制的にバスレジスタ460のバス出力許可フラグ
をオフするようにしている。
【0311】このバス出力許可フラグのオフによりフラ
グ信号E84がオフとなり、ANDゲート462を禁止
状態とし、自マスター信号E1とバス出力タイミング信
号E2によるバスイネーブル信号E3のオンを禁止し、
図52のバス用トライステート回路24をバス12から
切り離す。このバス12からの処理装置10−1の切り
離しは、他の処理装置10−2,10−3においても同
時に行われる。この結果、TMRユニット10を構成す
る全ての処理装置10−1〜10−3でバス出力許可フ
ラグがオフされ、TMRユニット10のバス12からの
切り離しが行われる。この場合、もしTMRユニット1
0が図59のように多重バスを構成していたならば、故
障したバスがTMRユニット10から切り離され、残り
の縮退した多重バスによる構成で処理を続行することが
できる。 (5)バス故障可能性フラグのソフトリセット 図61のような実施形態において、バス12にノイズな
どによって間欠的な故障が発生すると、この故障はバス
故障可能性パターンとしてTMRユニット10で検出さ
れる。このバス故障可能性パターンの検出によりTMR
ユニット10はマスター処理装置が更新され、バス故障
可能性フラグがセットされる。
【0312】この状態で長時間、正常に運用された後、
再びバス12でノイズなどによって間欠的な故障が発生
すると、バス故障可能性フラグがオンのまま残っている
ため、バス故障が発生したと判定されてバス12が切り
離されてしまう。そこで、図61のバス故障検出回路5
44Bの代わりに図65のバス故障検出回路544Cを
使用し、間欠的なバスのノイズによってバスが切り離さ
れてしまうのを回避するために、一度オンしたバス故障
可能性フラグをソフトウェアでリセットする機能を備え
る。
【0313】図65のバス故障検出回路544Cは、図
62のバス故障検出回路544Bのフラグレジスタ59
8に対するORゲート602を3入力のORゲート63
8とし、バス情報故障検出信号E21、マスター情報故
障検出信号E50に加え、ソフトリセット指示信号E1
74によりフラグレジスタ598のバス故障可能性フラ
グをオフできるようにしたことを特徴とする。
【0314】このバス故障可能性フラグに対するソフト
ウェアによるリセット処理は、図66のフローチャート
のようになる。まずステップS1で、定期的にフラグレ
ジスタ598のバス故障可能性フラグをリードしてお
り、ステップS2でフラグオンを判別すると、ステップ
S3に進み、一定時間後に再びバス故障可能性フラグを
リードする。
【0315】一定時間後のフラグリードで再度フラグオ
ンであったことをステップS4で判別すると、ステップ
S5に進み、ソフトリセット指示信号E174をオンす
ることによってステップS5でバス故障可能性フラグを
リセットする。このため、ノイズなどによる間欠的なバ
ス故障が一定時間を超えて2回連続して発生しても、一
度オンしたバス故障可能性フラグはソフトウェアによる
指示で強制的にオフされることから、次のバス故障の検
出でバスが切り離されてしまうことを回避できる。 (6)バス故障可能性フラグのハードリセット 図67は、図61の実施形態におけるバス故障検出回路
544Bの代わりに使用する他のバス故障検出回路54
4Dの実施形態のブロック図である。この実施例にあっ
ては、バス故障可能性フラグが1回目の故障検出でオン
した後にタイマを起動し、タイマによる一定時間経過後
に強制的にバス故障可能性フラグをオフに戻すようにし
たことを特徴とする。
【0316】即ち、図61のバス故障検出回路544D
にあっては、図65のソフトウェアでフラグリセットを
行うバス故障検出回路544Cについて更に、フラグレ
ジスタ598のフラグオンにより出力で起動して一定時
間後にタイマ信号E175をオンするタイマ640を設
け、タイマ640のタイマ信号E175をソフトリセッ
ト指示信号E174の代わりにORゲート638に入力
したことを特徴とする。このため、1回目のバス故障可
能性パターンの検出によるORゲート596からのバス
故障検出信号E114のオンで、ANDゲート630の
オン出力によりフラグレジスタ598のバス故障可能性
フラグがオンすると、タイマ640のイネーブル入力端
子がオンとなり、そのとき出力される第1バス故障検出
信号E171によりロード端子がオンし、タイマ640
が起動する。
【0317】予め定めた一定時間が経過するとタイマ出
力信号E175がオンとなり、ORゲート638を介し
てフラグレジスタ598のバス故障可能性フラグが強制
的にオフにリセットされる。このようなタイマを用いた
ハードウェア構成により間欠的なバス故障が2回連続し
て発生するような場合にTMRユニット10からバスが
切り離されてしまうことを回避できる。 15.バス切り離しのソフト通知 (1)バス故障発生フラグ 図68は、TMRユニット10において、バス12自体
の故障が発生してバス12が切り離されたときに、この
バス故障の事象をソフトウェアに表示するための機能を
備えた実施形態である。このバス切離しとなる故障の事
象をソフトウェアに表示するため、TMRユニット10
の処理装置10−1に代表して示すように、故障表示フ
ラグ回路642が設けられる。
【0318】図69は、図68の故障表示フラグ回路6
42のブロック図である。故障表示フラグ回路642に
は、フラグレジスタ644が設けられる。フラグレジス
タ644のデータ入力端子に対しては、図68のバス故
障検出回路544Bからのバス故障可能性パターンの2
回目の検出でオンする第2バス故障検出信号E172が
入力される。
【0319】フラグレジスタのライトイネーブル端子に
は、ORゲート646により第2バス故障検出信号E1
72とソフトリセット指示信号E176の論理和出力が
与えられる。バス故障可能性パターンが2回連続して第
2バス故障検出信号E172がオンすると、フラグレジ
スタ644のバス故障発生フラグがオンし、フラグ信号
E178が出力される。このときソフトウェアは、後の
説明で明らかにする回路によって故障通知を受け、フラ
グレジスタ644のバス故障発生フラグをリードし、こ
のフラグがオンであることによりバス故障の発生を知る
ことができる。
【0320】このバス故障の発生時にあっては、バスの
切り離しが行われていることから、ソフトウェアは故障
バスで実行中にあったコマンドを縮退後も正常に残って
いるバスを通じて再実行するなどの故障処理を行う。 (2)処理装置2台動作時の故障発生フラグ 図70は、TMRユニット10が2台の処理装置のみで
縮退運転を実行中に、バス情報の故障あるいはマスター
情報の故障を検出した場合、この事象をソフトウェアに
通知するための機能を備えた実施形態である。
【0321】図70のTMRユニット10の各処理装置
については、処理装置10−1に代表して示すように、
2台の処理装置のみで縮退運転を実行しているときの故
障検出状態を示す故障表示フラグをセット/リセットす
る故障表示フラグ回路642Aが設けられている。故障
表示フラグ回路642には、生存処理装置フラグ制御回
路340から処理装置10−1〜10−3の生存を示す
生存処理装置表示フラグ信号E41〜E43が入力され
る。また、バス情報故障判定回路98Bからバス故障検
出信号E21が入力され、更にTMR制御回路402に
設けているマスター情報故障検出判定回路からのマスタ
ー情報故障検出信号E50が入力される。更に、バス故
障検出回路544Bからのバス故障可能性パターンの2
回目の検出でオンする第2バス故障検出信号E172が
入力される。
【0322】図71は、図70の故障表示フラグ回路6
42Aの実施形態のブロック図である。この故障表示フ
ラグ回路642Aは、図69の故障表示フラグ回路64
2に加え更に、処理装置2台時故障発生フラグをオンオ
フするフラグレジスタ660を設けている。フラグレジ
スタ660のデータ入力端子に対しては、生存処理装置
フラグ信号E41,E42,E43から処理装置2台の
縮退パターンがANDゲート648,650,652及
びORゲート654で検出される。
【0323】例えば図70の処理装置10−2,10−
3の2台に縮退した運転を実行している場合には、生存
処理装置フラグ信号E41は切り離しによりオフ、E4
2,E43がオンであることから、ANDゲート648
の出力がオンとなり、ORゲート654を介してAND
ゲート656に入力する。ANDゲート656の他方の
入力には、ORゲート658を介してバス情報故障検出
信号E21またはマスター情報故障検出信号E50が与
えられている。
【0324】したがって、故障検出時にはANDゲート
656の出力がオンとなり、フラグレジスタ660の処
理装置2台時故障発生フラグがオンにセットされる。F
F660のフラグリセットは、ORゲート662を経由
したソフトリセット指示信号E180で行うことができ
る。このため、ソフトウェアはバス情報故障検出信号E
21もしくはマスター情報故障検出信号E50による故
障検出の通知を受けた際に、フラグレジスタ644,6
60からのフラグ信号E178,E182をリードし、
フラグ信号E182のオンから処理装置2台時故障発生
であることを認識し、ソフトウェアは必要な故障処理を
行うことができる。 (3)ソフト通知 図72は、バス自体の故障が発生したとき、あるいはT
MRユニット10が2台の処理装置のみで縮退運転を実
行しているときにバス情報の不一致あるいはマスター情
報の不一致による故障を検出したとき、この事象をソフ
トウェアに通知するための機能を備えた実施形態であ
る。この実施形態にあっては、TMRユニット10を構
成する処理装置10−1に示すように、ソフト通知信号
生成回路664を新たに設けている。
【0325】図73は、図72のソフト通知信号生成回
路664の実施形態のブロック図である。ソフト通知信
号生成回路664は、図71の故障表示フラグ回路64
2Aに、更にORゲート666と割込信号用のFF66
8を設けている。即ち、フラグレジスタ664のバス故
障発生フラグのオンによるフラグ信号E178と、フラ
グレジスタ660の処理装置2台時故障発生フラグのオ
ンによるフラグ信号E182をORゲート666を介し
てFF668に保持するようにしている。
【0326】このため、バス故障可能性パターンが2回
連続したときのフラグレジスタ644のバス故障発生フ
ラグのオンによるフラグ信号E178により、ORゲー
ト666を介して割込信号用FF668がセットされ、
割込信号E184のオンによりソフトウェアに故障発生
が通知され、必要な故障発生処理を行うことができる。
【0327】同様に、処理装置2台で縮退運転を行って
いるときにバス情報故障またはマスター情報故障が検出
されてフラグレジスタ660の処理装置2台時故障発生
フラグがオンすると、割込信号用FF668がセットさ
れ、割込信号E184がオンとなって、ソフトウェアに
対する故障発生の割込通知が行われ、同様に、必要な故
障処理を行うことができる。 16.故障装置交換時のウェイクアップモード (1)ウェイクアップモード 図74は、TMRユニット10を構成する処理装置10
−1〜10−3のうちの1台である処理装置10−3が
故障により離脱した後に、新しい装置と交換した際の、
システム立上げ時に設定されるウェイクアップモードの
実施形態である。尚、この実施形態では、マスタ1モジ
ュール、スレーブ2モジュール(内1つは交換モジュー
ル)の3モジュール構成を例にとっているが、マスタ1
モジュール、スレーブ1モジュール(=交換モジュー
ル)の2モジュール構成についても同様に適用できる。
【0328】図74はウェイクアップモードの設定状態
であり、TMRユニット10はマスター処理装置10−
1とスレーブ処理装置10−2の2台の縮退構成をとっ
ている。交換処理装置10−3は、メモリ内容がマスタ
ー処理装置10−1及びスレーブ処理装置10−2のメ
モリ内容に一致しないことから、TMRユニット10に
復帰させることはできない。このためウェイクアップモ
ードにあっては、交換処理装置10−3に対するマスタ
ー処理装置10−1からのメモリコピー処理が行われ
る。
【0329】ここで、処理装置を交換するときの手順は
次のようになる。まず処理装置10−3が故障した状態
で、TMRユニット10はマスター処理装置10−1と
スレーブ処理装置10−2の2台に縮退して多重化動作
を行っている。この状態でオペレータは処理装置10−
3の故障を確認すると、故障した処理装置10−3を図
示のように新たな処理装置に交換する。
【0330】故障装置の交換が行われると、処理装置1
0−1〜10−3をクロック同期レベルから立ち上げな
ければならないため、この時点でTMRユニット10の
多重化動作を一旦停止する。この多重化動作による所謂
システム停止状態で、まず3台の処理装置10−1〜1
0−3の間で既存の処理装置10−1,10−2と交換
処理装置10−3との間のクロックレベルの同期化を行
い、更に交換処理装置の状態を既存の処理装置10−
1,10−2の状態と同一に設定する。
【0331】このような処理装置間の同期化及び内部状
態の設定が終了したならば、全ての処理装置10−1〜
10−3についてウェイクアップモードを設定して、マ
スター処理装置10−1とスレーブ処理装置10−2に
よるTMRユニット10としての多重化動作及び交換処
理装置10−3に対するメモリのコピー処理を起動す
る。
【0332】このようなウェイクアップモードにおける
処理動作を可能とするため、図74のマスター処理装置
10−1に代表して示すように、マスター処理装置10
−1内のプロセッサエレメント702−1及び主記憶と
してのメモリ704−1に対しメモリ制御部706−1
が設けられる。メモリ制御部706−1は、TMR制御
回路48−1を介してバス12に接続される。バス12
は、データバス12−10とアドレスバス12−11で
構成される。TMR制御回路48−1そのものは、前述
の実施例で詳細に示した回路が使用される。
【0333】メモリ制御部706−1には、ウェイクア
ップモードを設定部としてウェイクアップフラグ設定回
路1040−1が設けられる。ウェイクアップフラグ設
定回路1040−1は、交換処理装置10−1に差し替
えた後の処理装置10−1〜10−3間のクロックレベ
ルの動作終了及び内部状態の設定終了時点でウェイクア
ップフラグを1にオンする。一度オンしたウェイクアッ
プフラグは、マスター処理装置10−1のメモリ704
−1から交換処理装置10−3のメモリに対するコピー
処理が終了した時点で0にオフされる。
【0334】タイミング生成部1060は、プロセッサ
エレメント702−1からのPEアクセス信号e102
とTMR制御回路48−1からのバスアクセス信号e1
04を受けて、リードアクセス及びライトアクセスのタ
イミングでタイミング信号e60,e70,e80を出
力する。即ち、タイミング信号e60は、他の処理装置
によるリードアクセスで装置自身のメモリ704−1の
リードアクセスを行う場合にオンし、それ以外のアクセ
スでオフとなっている。タイミング信号e70は、装置
自身のプロセッサエレメント702−1によるメモリ7
04−1のリードアクセスでオンする。タイミング信号
e80は、同じく装置自身のプロセッサエレメント70
2−1によるメモリ704−1のライトアクセスでオン
する。
【0335】プロセッサエレメント702−1からはア
ドレスバス1084がマルチプレクサ1082を介して
メモリ704−1に与えられている。またマルチプレク
サ1082には、TMR制御回路48−1よりバス12
側のアドレスバス1086が入力されている。マルチプ
レクサ1082は、タイミング生成部1060からの装
置自身のプロセッサエレメント702−1によるリード
アクセスまたはライトアクセスでオンするタイミング信
号e70またはe80を、ORゲート1074を介して
入力することで、プロセッサエレメント702−1から
のアドレスバス1084をメモリ704−1に接続す
る。
【0336】これに対し、タイミング生成部1060で
他の処理装置からのリードアクセスでメモリ704−1
をリードする際のタイミング信号e60のオンの際に
は、ORゲート1074の出力がオフとなることで、マ
ルチプレクサ1082はTMR制御回路48−1からの
アドレスバス1086をメモリ704−1に接続する。
プロセッサエレメント702−1からのデータバス10
88はマルチプレクサ1076を介してメモリ704−
1に接続され、またマルチプレクサ1078からTMR
制御回路48−1を経由して外部のデータバス12−1
0に接続される。マルチプレクサ1076は、プロセッ
サエレメント702−1からのデータバス1088とT
MR制御回路48−1を経由した外部のデータバス12
−10からのデータバス1090を選択する。
【0337】即ち、タイミング生成部1060からの装
置自身のプロセッサエレメント702−1によるライト
アクセスでタイミング信号e80がオンで、ウェイクア
ップモードでないとき、マルチプレクサ1076はプロ
セッサエレメント702−1からのデータバス1088
を選択してメモリ704−1に接続する。これに対し外
部アクセスによりタイミング信号e70がオフまたはウ
ェイクアップモードになると、TMR制御回路48−1
側からのデータバス1090を選択してメモリ704−
1に接続する。
【0338】マルチプレクサ1078は、外部のデータ
バス12−10に対するメモリ704−1からのデータ
バス1092とプロセッサエレメント702−1からの
データバス1088を選択する。マルチプレクサ107
8の選択制御は、ANDゲートとORゲートを備えたゲ
ート回路1070で行われる。ゲート回路1070のA
NDゲートには、ウェイクアップフラグ設定回路104
0−1からのフラグ信号e55とタイミング生成部10
60からの装置自身のリードアクセスによるタイミング
信号e70が入力されている。
【0339】このためウェイクアップモードの設定状態
でフラグ信号e55がオン状態にあり、この状態では、
タイミング生成部1060からの装置自身のリードアク
セスを示すタイミング信号e70がオンすると、ゲート
回路1070の出力がオフとなり、メモリ704−1か
らのデータバス1092を選択して、リードデータを外
部のデータバス12−10に転送する。
【0340】またウェイクアップモードの如何に関わら
ず、タイミング生成部1060からの他の処理装置から
のリードアクセスでタイミング信号e60がオンになる
と、ゲート回路1070を介してマルチプレクサ107
8は、同様にメモリからのリードデータをデータバス1
2−10に転送するように切り替わる。マルチプレクサ
1080は、メモリ704−1からのデータバス109
2とTMR制御回路48−1を経由した外部のデータバ
ス12−10からのデータバス1090を選択する。マ
ルチプレクサ1080の選択制御は、ゲート回路107
2で行われる。ゲート回路1072は、2入力のNAN
Dゲートとインバータで構成されている。
【0341】ウェイクアップモードにあっては、フラグ
信号e55がオンしているため、ゲート回路1072の
インバータの出力はオフとなり、このためNANDゲー
トの出力はタイミング生成部1060からの装置自身の
リードアクセスのタイミング信号e70のオンオフの如
何に関わらず常にオンとなっており、マルチプレクサ1
080は外部のデータバス12−10からのデータバス
1090を選択してプロセッサエレメント702−1の
データバス1088に接続している。
【0342】このためウェイクアップモードにあって
は、メモリ704−1からのリードデータはマルチプレ
クサ1080から直接プロセッサエレメント702−1
には転送されず、マルチプレクサ1078から外部のデ
ータバス12−10に転送すると同時に、マルチプレク
サ1080側から取り込んでプロセッサエレメント70
2−1に転送するようにしている。 (2)リードアクセス 図75(A)(B)は、ウェイクアップモードの設定状
態におけるリードアクセスを、処理装置10−1〜10
−3を簡略化した状態で表わしている。
【0343】図75(A)は、処理装置10−1〜10
−3のプロセッサエレメント702−1〜702−3で
同時に、同じメモリアドレスに対するリードアクセスが
発生した状態である。即ち、TMRユニット10を構成
しているマスター処理装置10−1,10−2及び交換
処理装置10−3のプロセッサエレメント702−1〜
702−3のそれぞれは、メモリ704−1〜704−
3に対し、メモリ制御部706−1〜706−3に設け
たデータ切替部1050−1〜1050−3を介してリ
ードアクセスを一斉に行う。このとき、それぞれのウェ
イクアップフラグ設定回路1040−1〜1040−3
にあっては、フラグを1にオンしている。
【0344】図75(B)は、メモリのリードアクセス
に続くリードデータの転送を示している。まずマスター
処理装置10−1にあっては、ウェイクアップモードの
設定によりデータ切替部1050−1はメモリ704−
1からのリードデータを外部のバス12に転送し、同時
にバス12上のリードデータを取り込んでプロセッサエ
レメント702−1に転送する。
【0345】これに対しスレーブ処理装置10−2及び
交換処理装置10−3にあっては、プロセッサエレメン
ト702−2,702−3のリードアクセスで、メモリ
704−2,704−3からのリードデータはデータ切
替部1050−2,1050−3でプロセッサエレメン
ト702−2,702−3にそれぞれ転送せずに無視す
る。この代わり、バス12上のリードデータを取り込ん
で、プロセッサエレメント702−2,702−3にそ
れぞれ転送する。
【0346】このようにウェイクアップモードにおける
リードアクセスにあっては、マスター処理装置10−1
のメモリ704−1からのリードデータが、データバス
12を経由して全ての処理装置10−1〜10−3のプ
ロセッサエレメント702−1〜702−3に反映され
る。図76(A)(B)は、図74に示したマスター処
理装置と同じ内部構成について、図75におけるリード
アクセス時の処理動作を示している。
【0347】図76(A)はマスター処理装置10−1
の動作である。プロセッサエレメント702−1からの
リードアクセスにより、タイミング生成部1060はタ
イミング信号e70をオンする。このときウェイクアッ
プフラグ設定回路1040−1からのフラグ信号e55
はオンしていることから、ゲート回路1070のAND
ゲートの出力がオンし、ORゲートを介してマルチプレ
クサ1078をメモリ704−1側のデータバス109
2に切り替える。
【0348】一方、マルチプレクサ1080はフラグ信
号e55のオンによりゲート回路1072の出力がオン
していることから、常時、TMR制御回路48−1から
のデータバス1090を選択している。更に、タイミン
グ信号e70のオンによりORゲート1074を介して
マルチプレクサ1082がプロセッサエレメント702
−1からのアドレスバス1084を選択しており、メモ
リ704−1はプロセッサエレメント702−1からの
リードアドレスを受けてリードデータを出力する。
【0349】メモリ704−1からのリードデータは、
太線の矢印で示すようにマルチプレクサ1078からT
MR制御回路48−1を通って外部のデータバス12−
10に転送される。なお、外部のアドレスバス12−1
1に対してもプロセッサエレメント702−1からのア
ドレスデータが直接転送されている。この外部のデータ
バス12−10に転送されたリードデータは、同時にT
MR制御回路48−1、マルチプレクサ1080を介し
てプロセッサエレメント702−1に転送されている。
【0350】図76(B)は、リードアクセス時のスレ
ーブ処理装置10−2及び交換処理装置10−3の動作
状態である。動作は図76(A)のマスター処理装置1
0−1と同じであるが、バス12へのデータ出力は行わ
ない。このため交換処理装置10−3にあっては、マス
ター処理装置10−1によってデータバス12−10に
転送されたリードデータを、TMR制御回路48−3及
びマルチプレクサ1080を通してプロセッサエレメン
ト702−3に転送する。即ち、交換処理装置10−3
にあっては、メモリ704−3のリードアクセスによる
リードデータは無視される。スレーブ処理装置10−2
も、図76(B)の交換処理装置10−3と同じ処理動
作となる。 (3)ライトアクセス 図77は、ウェイクアップモードの設定状態におけるラ
イトアクセス時のデータ転送を示している。通常、図7
5(A)(B)に示したリードアクセスが済むと、その
後、図77のように、処理装置10−1〜10−3のプ
ロセッサエレメント702−1〜702−3はメモリ7
04−1〜704−3に対するライトアクセスが実行さ
れる。このライトアクセスの際に、マスター処理装置1
0−1はデータ切替部1050−1を介して外部のバス
12にライトデータを転送し、バス12上からライトデ
ータをデータ切替部1050−1で取り込んでメモリ7
04−1に書き込む。
【0351】一方、スレーブ処理装置10−2及び交換
処理装置10−3にあっては、プロセッサエレメント7
02−2,702−3のライトアクセスが行われると、
バス12上にマスター処理装置10−1から転送された
ライトデータをデータ切替部1050−2,1050−
3で取り込み、メモリ704−2,704−3に書き込
む。即ち、スレーブ処理装置10−2,交換処理装置1
0−3にあっては、装置自身のプロセッサエレメント7
02−2,702−3からのライトデータは無視され
る。
【0352】図78(A)(B)は、図77のライトア
クセスにおけるマスター処理装置10−1と交換処理装
置10−3の内部の処理動作を詳細に示している。図7
8(A)は、マスター処理装置10−1のウェイクアッ
プモード設定状態におけるライトアクセスである。プロ
セッサエレメント702−1のライトアクセスに伴うP
Eアクセス信号e102を受けて、タイミング生成部1
060はタイミング信号e80をオンとする。このため
ORゲート1074の出力がオンし、マルチプレクサ1
084を選択してメモリ704−1に対するアドレス設
定を行う。
【0353】マルチプレクサ1078は、ゲート回路1
070の出力がタイミング信号e80のオンにより同時
にオンすることから、プロセッサエレメント702−1
からのデータバス1088を選択してTMR制御回路4
8−1を介して外部のデータバス12−10に接続して
いる。マルチプレクサ1076は、ウェイクアップフラ
グがオンであるからデータバス12−10に出力された
データがTMR制御回路48−1を介したデータバス1
090が選択され、メモリ704−1にライトされる。
【0354】図78(B)はスレーブ処理装置10−2
及び交換処理装置10−3のライトアクセスである。動
作は、図78(A)のマスター処理装置10−1と同じ
であるが、バス12へのデータ出力は行わない。図74
の実施形態は、メモリ制御部706−1にハードウェア
構成のデータ切替部1050を設けた場合を例にとって
いるが、プロセッサ等によるソフトウェア処理によりウ
ェイクアップモードでのライトアクセス及びリードアク
セスを行うこともできる。
【0355】図79は、ソフトウェアで行うマスター処
理装置におけるライトアクセスのフローチャートであ
る。まずステップS1で、ウェイクアップフラグが1か
否かチェックする。ウェイクアップフラグが1であれば
ステップS2に進み、リードアクセスまたはライトアク
セスをチェックする。リードアクセスであれば、ステッ
プS3でメモリをリードする。
【0356】続いてステップS4で、バスにリードデー
タを転送する。そしてステップS5でバスからリードデ
ータを取り込んでプロセッサエレメントに転送する。ス
テップS2でライトアクセスを判別した場合には、ステ
ップS6でライトデータをプロセッサエレメントからバ
スに転送し、ステップS7でバスからライトデータを取
り込み、ステップS8でメモリにライトする。
【0357】このようなウェイクアップモード設定状態
に対し、通常のTMRユニットの多重化構成の動作時に
は、ウェイクアップフラグが0であることからステップ
S9に進み、リード/ライトを判別する。リードアクセ
スであればステップS10でメモリのリードを行って、
ステップS11でリードデータをプロセッサエレメント
に転送する。またライトアクセスであれば、ステップS
12でプロセッサエレメントからメモリにライトデータ
を転送し、ステップS13でメモリにライトする。即
ち、通常のメモリアクセスにあっては、外部のバスに対
するリードデータ及びライトデータの転送は行われず、
装置内部での処理となる。
【0358】図80は、図79のマスター処理に対応し
たスレーブ処理装置あるいは交換処理装置の処理のフロ
ーチャートである。まずステップS1でウェイクアップ
フラグが1にセットされていることを判別すると、ステ
ップS2でリードアクセスかライトアクセスかを判別す
る。リードアクセスであれば、ステップS3でプロセッ
サエレメントによるメモリリードを行い、ステップS4
でメモリのリードデータを無視し、バス上に転送されて
いるマスター処理装置からのリードデータを取り込み、
ステップS5でリードデータをプロセッサエレメントに
転送する。
【0359】ライトアクセスであれば、ステップS6で
プロセッサエレメントによるメモリライトを行うが、ス
テップS7でプロセッサエレメントによるライトデータ
を無視し、バス上にマスター処理装置から転送されてい
るライトデータを取り込み、ステップS8でメモリに転
送してライトする。これに対しウェイクアップフラグが
0にオフされている通常の多重化動作時には、図79の
マスター処理装置のステップS9〜S13と同様にし
て、リードアクセスまたはライトアクセスに対し装置内
部でのメモリリードによるプロセッサエレメントへの転
送、プロセッサエレメントからメモリ転送によるライト
を行う。
【0360】図81は、本発明のウェイクアップモード
の設定による処理とウェイクアップモードを設定しない
ときの処理を、処理フェーズに分けて示している。図8
1(A)はウェイクアップモードを設定しない場合の処
理である。まず通常時は、3モジュール即ち3台の処理
装置10−1〜10−3による多重化動作を行ってい
る。この状態でフェーズF2のように故障モジュールが
発生すると、フェーズF3で故障モジュールをTMRユ
ニット10から切り離し、残された正常な処理装置の中
で新たなマスター処理装置を決定し、2モジュールに縮
退した多重化動作に移行する。
【0361】2モジュールによる多重化動作に移行する
と、フェーズF4でソフト割込みにより故障モジュール
が認識されて外部出力され、オペレータが故障したモジ
ュールを認識することができる。そこでフェーズF5の
ように、オペレータは故障モジュールを抜き取り、フェ
ーズF6で新モジュールを追加する装置交換を行う。こ
の場合の装置交換は、システムは2モジュール動作状態
のまま行う活性保守となる。
【0362】フェーズF6で新モジュールが追加できた
ならば、フェーズF7で既存のモジュールによる2モジ
ュール多重動作の処理を一旦停止する。このシステム停
止状態でフェーズF8のように、まず新モジュールと既
存モジュールの間のクロックレベルの同期化を行い、更
に新モジュールの内部状態を既存モジュールの内部状態
に設定する。
【0363】続いて既存モジュールの主記憶から新モジ
ュールの主記憶に対するメモリコピーをフェーズF9で
行う。このメモリコピーの段階では、多重化動作は起動
しない。もし多重化動作を起動すると、コピー中にコピ
ー元のメモリの書替えが行われ、既存モジュールと新モ
ジュールのメモリ内容が一致しなくなるからである。メ
モリコピーが終了したならば、フェーズF10でTMR
ユニットのスレーブモジュールに割り付け、3台の処理
装置を対象にTMRユニットを再構築し、フェーズF1
1でシステム停止を解除して、3モジュール多重動作に
よる処理を再開する。
【0364】このように本発明のウェイクアップモード
をもたない場合には、フェーズF7の既存モジュールに
よる2モジュール多重動作の処理停止からフェーズF8
の同期化、フェーズF9のメモリコピー、フェーズF1
0の3モジュールの再構築の間に亘るT1時間に亘って
システム停止を必要とする。これに対し本発明のウェイ
クアップモードの設定状態を可能とした場合には、図8
1(B)のようになる。図81(B)について、フェー
ズF1〜F7は、図81(A)と同じである。フェーズ
F7で、新モジュールの交換追加に基づき2モジュール
多重動作による既存モジュールの処理を停止したなら
ば、フェーズF8で、既存モジュールと新モジュール間
のクロックレベルの同期化及び内部状態の設定を行った
後、フェーズ9でウェイクアップモードを設定するため
モードフラグを1にオンする。
【0365】続いてフェーズF10で、メモリコピーを
終了することなく処理を再開する。この処理の再開は、
既存モジュールによる2モジュール多重動作の再開であ
る。このため本発明にあっては、フェーズF7の既存モ
ジュールの処理停止からフェーズF9のウェイクアップ
モード設定までの僅かな時間T2のみがシステム停止と
なる。
【0366】フェーズF10で処理を再開したならば、
フェーズF11で既存モジュールの主記憶から新モジュ
ールの主記憶に対するメモリコピーを行う。このメモリ
コピーの際に2モジュール多重動作によって主記憶の書
替えが行われても、主記憶の書替えに伴うアクセスデー
タはマスター処理装置から外部のバスに転送され、スレ
ーブ処理装置及び交換処理装置の主記憶に反映され、常
にコピー元とコピー先のメモリ内容の一致が図られる。
【0367】これによって新モジュールのメモリコピー
の間にシステムを停止する必要がなく、2モジュール多
重動作を継続することができる。フェーズF11のメモ
リコピーが終了したならば、フェーズF12でウェイク
アップモードのフラグを0にオフする。このフラグオフ
に基づき、フェーズF13で新モジュールをTMRユニ
ットに復帰させ、3モジュールによるTMRユニットを
再構築して3モジュール多重動作の処理を再開する。
【0368】尚、ウェイクアップモードの設定状態にお
ける交換処理装置に対するメモリコピー処理は、マスタ
ー処理装置10−1のプロセッサエレメントで実行して
もよいが、プロセッサエレメントの負担を軽減するた
め、バス12に対しメモリコピー専用のシステムアダプ
タを設け、マスター処理装置10−1からのメモリコピ
ーの指示でシステムアダプタ側がマスター処理装置から
交換処理装置に対するメモリコピーのアクセスを行うよ
うにしてもよい。 17.ディレクトリメモリ (1)ディレクトリメモリの運用中の無効化 図82は本発明のTMRユニットに使用する処理装置1
0−1を取り出しており、メインメモリのアクセスにデ
ィレクトリ方式を採用している。
【0369】図82において、処理装置10−1にはプ
ロセッサエレメント702が設けられ、プロセッサエレ
メント702はCPUとキャッシュ機構で構成される。
またプロセッサエレメント702としては、キャッシュ
付きの複数のCPUを備えたマルチCPU構成であって
もよい。プロセッサエレメント702に対しては、主記
憶としてのメインメモリ704がメモリ制御部706を
介して設けられている。
【0370】メインメモリ704はディレクトリ方式に
より管理されている。このディレクトリ方式を実現する
ため、ディレクトリメモリ制御部1102とディレクト
リメモリ1100が設けられている。ディレクトリメモ
リ制御部1102は更に、今までの実施形態で明らかに
したTMR制御回路48を介して外部のバス(共通バ
ス)12に接続されている。
【0371】ディレクトリメモリ1100には、メイン
メモリ704を所定ブロック単位例えば64バイト単位
に分け、このメモリブロックが処理装置10−1内でど
のような状態にあるかを示すディレクトリ情報を、メモ
リブロックのアドレスをエントリとして保持している。
ディレクトリメモリ1100に保持するディレクトリ情
報としてのメモリブロック状態としては、例えばシェア
ード状態、ダーティ状態及び無効状態などがある。
【0372】シェアード状態とは、メインメモリ704
のメモリブロックと同じデータを1または複数のプロセ
ッサエレメント702のキャッシュに保持している状態
である。ダーティ状態とは、プロセッサエレメント70
2のキャッシュが保持する最新データとメインメモリ7
04の内容が異なる状態である。更に無効状態とは、メ
インメモリ704内のデータが最新で、どのプロセッサ
エレメントのキャッシュにも同じデータが存在しない状
態である。
【0373】本発明の高信頼性情報処理装置を構成する
TMRユニットにあっては、多重化動作中に特定の処理
装置で故障が発生すると、故障装置をTMRユニットか
ら切り離し、残された正常に動作している処理装置でT
MRユニットを再構築する。故障によりTMRユニット
から切り離された処理装置は、オペレータにより新しい
処理装置に交換される。この故障処理装置の新しい装置
への交換時に、交換処理装置をTMRユニットに復帰さ
せるためにディレクトリメモリ1100の全エントリを
無効化させる必要がある。
【0374】この無効化処理は、プロセッサエレメント
702がディレクトリメモリ1100の全エントリに対
するライト処理を行うため、無効化を行っている間、シ
ステム停止となってしまう。このシステム停止時間は可
能な限り短いことが望ましく、そこで本発明にあって
は、ディレクトリメモリ1100の無効化をごく短い時
間で瞬時に行うことを可能とする。
【0375】図83は、図82のディレクトリメモリ制
御部1102のブロックであり、プロセッサエレメント
による簡単なレジスタ指示値の変更のみをもって瞬時に
ディレクトリメモリ1100の無効化を行うことができ
る。図83において、ディレクトリメモリ制御部110
2には、アドレス生成部1104、指示レジスタ110
6、比較部1108、及びデータ制御部1110が設け
られる。ディレクトリメモリ1100は、メインメモリ
704を所定ブロック単位に分割した各エントリごとに
ディレクトリ情報を格納している。各ディレクトリ情報
は、図示の斜線の特定ビット1112とメモリブロック
状態1111で構成される。
【0376】ディレクトリメモリ1100の特定ビット
1112には、各エントリごとにシステムの電源投入に
よる初期化処理の際に、特定の値α、例えばα=0のビ
ット値が書き込まれる。またシステム立ち上げ時の初期
化処理の際には、メモリブロック状態フィールド111
1には初期状態を示すコード、例えばオール0が書き込
まれている。
【0377】指示レジスタ1106にはシステム立ち上
げ時にディレクトリメモリ1100の特性ビット111
2に書き込んだビット値αと同じ値、例えばα=0が書
き込まれている。このため、システム電源投入による立
ち上げ後の運用状態において、指示レジスタ1106の
値とディレクトリメモリ1100の特性ビット1112
の値は必ず一致している。
【0378】TMRユニットとしての動作状態におい
て、プロセッサエレメント702からのメインメモリ7
04に対するアクセスアドレスは、アドレス生成部11
04にセットされ、ディレクトリメモリ1100のリー
ドアクセスにより、対応するエントリのディレクトリ情
報がリードされる。このディレクトリ情報のリードにお
いて、特定ビット1112の値は比較部1108に与え
られ、指示レジスタ1106の値と比較される。このと
き指示レジスタ1106及び特定ビット1112の値は
共にαであり、比較部1108は一致出力を生じ、この
場合、比較部1108からの無効化指示1114はオフ
となる。
【0379】このため、データ制御部1110はディレ
クトリメモリ1100からリードしたメモリブロック状
態1111を有効として、メモリブロック状態1111
に示されるシェアード、ダーティあるいはインバリッド
(無効状態)に応じたメインメモリ704のアクセスあ
るいはプロセッサエレメント702のキャッシュアクセ
スを行うことになる。
【0380】運用中に装置交換などによりディレクトリ
メモリ1100の無効化を必要とする場合には、プロセ
ッサエレメント702の指示により指示レジスタ110
6の値αを別の値β、例えばβ=1に変更し、アドレス
生成部1104に対しディレクトリメモリ1100の全
エントリのアドレス生成を指定して無効化処理を行わせ
る。
【0381】即ち、アドレス生成部1104でディレク
トリメモリ1100のエントリとなるアドレスを指定す
るごとに、特定ビット1112を読み出して比較部11
08で比較する。このとき特定ビット1112の値はα
であるが、指示レジスタ1106の値は無効化動作のた
めにβに変更されており、比較部1108において不一
致となることで無効化指示1114がオンする。
【0382】この無効化指示1114を受けたデータ制
御部1110は、ディレクトリメモリ1100のメモリ
ブロック状態1111の如何に関わらず無効状態を示す
値、例えば初期化時と同じオール0に交換する。このよ
うなディレクトリメモリ制御部1102によるディレク
トリメモリ1100に対するアドレス指定で、先頭アド
レスから最終アドレスまでプロセッサエレメント702
の介入を必要とすることなく高速に無効化処理を完了す
る。
【0383】図84のフローチャートは、図82の処理
装置10−1におけるシステム電源投入時の立ち上げ時
におけるディレクトリメモリ1100の初期化処理であ
る。この初期化処理にあっては、ステップS1で、プロ
セッサエレメントが指示レジスタに特定値αをライト
し、続いてステップS2でアドレス生成部1104に開
始アドレスをセットし、ステップS3で、ディレクトリ
メモリ1100の特定ビット1112に指示レジスタ1
106にセットしたと同じ特定値αをライトする。
【0384】続いてステップS4で、メモリブロック状
態フィールド1111に初期状態コードをライトする。
1エントリの初期化が済むと、ステップS5で最終アド
レスか否かチェックし、最終アドレスでなければステッ
プS6でアドレスを更新し、同じ処理を繰り返す。最終
アドレスであれば、ステップS7でプロセッサエレメン
ト702に初期化終了を通知する。
【0385】図85のフローチャートは、通常の運用状
態における処理である。ステップS1で、プロセッサエ
レメント702からのメインメモリ704のアクセスに
伴うディレクトリメモリ制御部1102に対するアクセ
スがあると、アドレス生成部1104によりアクセスア
ドレスを指定してディレクトリメモリ1100のリード
を行い、特定ビット1112の値を獲得する。
【0386】続いてステップS3で、指示レジスタ11
06の値と比較部1108により比較する。ステップS
4で両者の一致が判別されると、ステップS5に進み、
ディレクトリメモリ1100のメモリ状態ブロックフィ
ールド1111を有効として、そのリードデータに従っ
た処理を実行する。万が一、比較部1108で不一致と
なった場合には無効化指示部1114がオンとなり、ス
テップS6で、ディレクトリメモリ1100のメモリブ
ロック状態フィールド1111の無効化処理が行われる
ことになる。この場合には、ステップS7で、無効化状
態に従ってメインメモリ704のアクセスとなる。
【0387】図86のフローチャートは、図83におけ
るディレクトリメモリ制御部1102の運用中における
無効化処理である。まずステップS1で、プロセッサエ
レメント702が指示レジスタ1106に初期化設定値
αと異なる値βをセットする。続いてステップS2で、
アドレス生成部1104によりディレクトリメモリ11
00の開始アドレスをセットし、ステップS3で、開始
アドレスで指定したエントリの特定ビット1112をリ
ードし、ステップS4で、指示レジスタ1106の値と
比較部1108によって比較する。
【0388】この場合、比較部1108による比較結果
は必ず不一致となることから、ステップS5でこれを判
別して、ステップS6に進み、ディレクトリメモリ11
00の特性ビット1112に指示レジスタ1106の値
βを書き込み、同時にメモリブロック状態フィールド1
111に無効化状態を示す値をライトする。続いてステ
ップS7で最終アドレスか否かチェックし、最終アドレ
スでなければステップS8でアドレスを更新し、次のエ
ントリのアクセスを行う。最終アドレスであれば、ステ
ップS9でプロセッサエレメント702に無効化終了を
通知し、これを受けてプロセッサエレメント702は例
えばTMRユニットを再構築した運用状態に移行する。
【0389】このような第1回目の無効化処理により、
ディレクトリメモリ1100における全エントリの特定
ビット1112は、無効化の際に変更した指示レジスタ
1106の値βに変更されている。図87は、図83の
ディレクトリメモリ制御部1102を論理回路で構成し
たブロック図である。データ制御部1110にはディレ
クトリ制御部1115が設けられ、プロセッサエレメン
ト702との間でアクセス情報1116のやり取りを行
っている。
【0390】通常の運用時にメインメモリに対するアク
セスが行われると、アクセス情報1116がディレクト
リ制御部1115に入力され、所定のタイミングでオン
になるアドレス保持指示1136により、メモリアクセ
スのアドレス1118がアドレス生成部1104に設け
たD−FF1134に保持される。同時にディレクトリ
制御部1115はメモリ制御信号1150を出力し、ア
クセス情報に基づいてメモリブロック状態フィールド1
111の更新を行う。
【0391】次に本発明の運用中の無効化処理を可能と
するため、まず電源投入直後の初期化時にあっては、プ
ロセッサエレメント702がメインメモリ704をクリ
アすることで、ディレクトリメモリ1110のメモリブ
ロック状態フィールド1111は、全エントリについて
オール0が設定される。このときディレクトリメモリ1
110の全エントリの特定ビット1112には、指示レ
ジスタ1106を構成するD−FFと同じ値α、例えば
α=ビット0が設定される。
【0392】指示レジスタ1106も電源投入直後の初
期化時にプロセッサエレメントからのデータ1120と
して特定値αの供給を受け、所定のタイミングでデコー
ダ1124及びANDゲート1126を設けたレジスタ
デコーダ部1122からのレジスタセット指示1130
のオンにより特定値αを保持している。このレジスタセ
ット指示1130も、ディレクトリ制御部1115から
のレジスタライト指示1128のオンに同期して行われ
る。
【0393】運用の途中で処理装置交換などに伴ってデ
ィレクトリメモリ1110を無効化する場合には、プロ
セッサエレメントが指示レジスタ1106に異なった値
β、例えばβ=ビット1をライトする。即ち、プロセッ
サエレメントからのアクセス情報1116を受けたディ
レクトリ制御部1115はレジスタライト指示1128
をオンとし、このタイミングでプロセッサエレメントよ
りアドレス1118及びデータ1120が供給され、デ
コーダ1124でレジスタライトを認識し、レジスタセ
ット指示1130をオンとし、データ1120として与
えられた異なった値βを指示レジスタ1106にセット
する。
【0394】続いてプロセッサエレメントは、ディレク
トリメモリ1110を無効化するためのアクセス情報1
116及びアドレス1118を先頭番地から順番に発行
する。このため、アドレス生成部1104でディレクト
リメモリ1110のアクセスアドレスを保持するごと
に、ディレクトリ制御部1115からのメモリ制御信号
1150によるディレクトリメモリ1110のリード動
作が行われる。
【0395】なお、ディレクトリメモリ1110からの
ディレクトリ制御部1115に対するデータは、ドライ
バ1144によるライトデータ転送、ドライバ1146
によるリードデータ転送で行われる。このときディレク
トリメモリ1110の特定ビット1112は、比較部1
108に与えられる。比較部1108はライト用のドラ
イバ1140、リード用のドライバ1142及び比較回
路1138で構成される。特定ビット1112のリード
データはドライバ1142を介して比較回路1138に
与えられ、このときβに変更された指示レジスタ110
6の値と比較される。
【0396】特定ビット1112の値は、電源投入によ
る初期化時にライトした特定値αであることから両者は
不一致となり、比較回路1138の出力する無効化指示
1114がオンとなる。この無効化指示1114のオン
によりANDゲート1148は禁止状態となり、ディレ
クトリメモリ1110のメモリブロック状態フィールド
1111からのリードデータはディレクトリ制御部11
15に供給されず、メモリブロック状態フィールド11
11が無効となる。
【0397】ディレクトリ制御部1115は無効化指示
1114のオンにより禁止状態となって、ANDゲート
1148から得られたデータをメモリ状態フィールド1
111のリードデータと見做し、これをドライバ114
4を介してメモリ状態フィールド1111にライトバッ
クする更新処理を行う。この結果、メモリブロック状態
フィールド1111は、無効化状態を示す例えばオール
0に書き替えられる。
【0398】図88は図83のディレクトリメモリ制御
部1102の他の実施例であり、新たに制御レジスタ1
160を設けることで、比較部1108による無効化指
示1114のオンを強制的に禁止できるようにしたこと
を特徴とする。本発明の高信頼性情報処理装置としての
TMRユニットを構成する場合には、装置交換に伴う運
用中におけるディレクトリメモリ1110の瞬時の無効
化が必要であるが、本発明で使用している処理装置を他
の処理装置、例えば単独で使用するような場合には、T
MRユニットにおけるような瞬時的なディレクトリメモ
リ1100の無効化は行わなくてもよい場合がある。
【0399】そこで図88の実施形態にあっては、TM
Rユニットで使用する際には制御レジスタ1160の値
による比較部1108の機能を有効とし、瞬時の無効化
を必要としない他の用途にあっては、制御レジスタ11
60の値を変更することで比較部1108による無効化
指示の機能を解除できるようにしている。図89は、図
88のディレクトリメモリ制御部1102の論理回路で
構成したブロック図である。ディレクトリメモリ制御部
1102には新たに制御レジスタ1160が設けられ、
プロセッサエレメントからのデータ1164とアクセス
情報1116に基づいたディレクトリ制御部1110か
らのレジスタライト指示1128に基づくレジスタデコ
ード部1122からのレジスタセット指示1130によ
り、制御レジスタ1160の値を変更できるようにして
いる。
【0400】制御レジスタ1160の出力は、比較部1
108に設けたANDゲート1166に入力される。A
NDゲート1166の他方には比較回路1136の出力
が入力される。このANDゲート1166の出力が無効
化指示1114としてデータ制御部1110に与えられ
ている。本発明のTMRユニットの処理装置として使用
する場合には、制御レジスタ1160にビット1を書き
込み、ANDゲート1166に対する制御出力をオンと
し、ANDゲート1166を許容状態としておく。この
ため無効化処理にあっては、比較回路1138における
不一致による無効化指示信号の出力がオンとなり、これ
がデータ制御部1110に有効に与えられ、ディレクト
リメモリ1100の無効化が行われる。
【0401】一方、TMRユニット以外の使用で運用中
における瞬時のディレクトリメモリ1110の無効化が
必要ない場合には、制御レジスタ1160にビット0を
格納してANDゲート1166に対する制御出力をオフ
としておく。これによりANDゲート1166は禁止状
態におかれ、比較回路1138における出力のオンオフ
の如何に関わらず、データ制御部1110に対する無効
化指示1114をオフとし、常にディレクトリメモリ1
100からリードしたメモリブロック状態フィールド1
111の値を有効として扱うことができる。 (2)ディレクトリメモリの運用中の初期化 図82に示したディレクトリ方式の処理装置10−1を
TMRユニットで使用する場合、システム構成によって
は複数回無効化を行いたい場合がある。この場合、図1
00のディレクトリメモリ制御部1102にあっては、
1回ディレクトリメモリ1100の無効化を行うと、そ
の特定ビット1112が無効化のために変更した指示レ
ジスタ1106の値βに変更されてしまう。
【0402】このため、無効化終了で指示レジスタ11
06を元の値αに戻し、その後に再度無効化するために
指示レジスタ1106の値をβに変更すると、特定ビッ
ト1112は最初の無効化でβとなっているため、2回
目の無効化で比較部1108は全て一致し、無効化指示
1114がオフとなり、無効化処理ができなくなる。し
たがって、運用中に複数回無効化を行うためにはディレ
クトリメモリ1100の無効化が済んだ後に、特定ビッ
ト1112の変更された値βを元の値αに戻すための初
期化処理が必要となる。この特定ビット1112を元の
値αに戻すための再度の初期化処理は、TMRユニット
として処理装置が動作している間に行われるため、図8
3のように、プロセッサエレメント702からのアクセ
ス情報及びエントリアドレスの指示で行うのではプロセ
ッサエレメント702の負担が増え、TMRユニットと
しての多重化処理の性能が低下する。
【0403】このため、図90のジェネリックフローチ
ャートのように、ステップS1で初期化した後に、ステ
ップS2で通常処理を行い、ステップS3で装置交換な
どによる最初の無効化を行った後に、ステップS4で再
度初期化処理を行い、続いてステップS5で2回目の無
効化を行うような場合、ステップS4の運用中における
再初期化におけるプロセッサエレメントの負担を低減す
るため、図91の実施例のように、ディレクトリメモリ
制御部1102側にハードウェアとしての初期化回路を
設ける。
【0404】図91において、ディレクトリメモリ制御
部1102は、図83の実施例と同様、アドレス生成部
1104、指示レジスタ1106、比較部1108及び
データ制御部1110を有する。これに加えてディレク
トリメモリ制御部1102には、ディレクトリメモリ1
100の初期化処理のためのハードウェアとして初期化
制御部1170、初期化起動レジスタ1172、初期化
アドレスレジスタ1174及び完了表示レジスタ117
6が設けられる。
【0405】ディレクトリメモリ制御部1102は、指
示レジスタ1106の値をαからβに変更することによ
ってディレクトリメモリ1100の無効化が終了する
と、プロセッサエレメント702は初期化起動レジスタ
1172に初期指示を示す値をライトする。この初期化
起動レジスタ1172のライトによる出力を受けて、初
期化制御部1170が初期化を開始する。
【0406】初期化動作は、まずディレクトリメモリ1
100の先頭アドレスを初期化アドレスレジスタ117
4にセットし、アドレス生成部1104を介してディレ
クトリメモリ1100をリードする。このリードにより
特定ビット1112と指示レジスタ1106の値を比較
部1108で比較する。このとき1回目の無効化により
ディレクトリメモリ1100の特定ビット1112は変
更値βとなっており、指示レジスタ1106の値は元の
値αに戻っている。
【0407】したがって、比較部1108は不一致によ
り無効化指示1114をオンする。この無効化指示11
14のオンを受けたデータ制御部1110は、リードデ
ータの特定ビット1112の値を指示レジスタ1106
の値αと同じにし、またメモリブロック状態フィールド
1111については初期状態に変えて再びライトする。
【0408】以上の初期化処理をディレクトリメモリ1
100の全エントリについて行い、処理を終了すると、
完了表示レジスタ1176に完了を示す値を書き込み、
プロセッサエレメント702からのステータスコマンド
に対する応答として通知する。このようなディレクトリ
メモリ1100の運用中における初期化が終了すれば、
再度、指示レジスタ1106の値をαからβに変更する
ことによるディレクトリメモリ1100の無効化を再び
行うことができる。
【0409】図92は、図91のディレクトリメモリ制
御部1102の論理回路のブロック図である。図109
において、プロセッサエレメントからのアクセス情報1
116に基づくディレクトリ制御部1115からのレジ
スタセット指示1186のタイミングで、プロセッサエ
レメントから送られてきたデータ1184が初期化起動
レジスタ1172に保持され、これにより初期化制御部
1170に対するスタート指示1188がオンとなる。
同時に初期化スタート指示1188のオンはアドレスカ
ウンタとして動作する初期化アドレスカウンタ1174
をクリアする。
【0410】初期化制御部1170には、タイマ回路1
178と一定値判定回路1180が設けられている。タ
イマ回路1178はスタート指示1188のオンを受け
ると起動し、以後、一定の周期で初期化指示1190を
出力する。この初期化指示1190はディレクトリ制御
部1115に与えられ、ディレクトリメモリ1100の
初期化更新が行われる。
【0411】このときディレクトリメモリアドレス11
85は、マルチプレクサ1182を介して初期化アドレ
スレジスタ1174より与えられている。なお無効化の
際にはマルチプレクサ1182はD−FF1134側に
切り替わり、プロセッサエレメントからのアド1118
をディレクトリメモリアドレス1185として出力す
る。
【0412】ディレクトリメモリ1100に対するメモ
リ制御信号1150により得られたメモリデータ114
5即ちリードデータは、ドライバ1146を通ってAN
Dゲート1148に入力される。このときディレクトリ
メモリ制御部1102には、図には省略しているが、図
106と同じ比較部1108が設けられており、ディレ
クトリメモリ1100の特定ビット1112の値と指示
レジスタ1106の値を比較している。
【0413】指示レジスタ1106の値はαであるが、
ディレクトリメモリ1100の特定ビット1112の値
は無効化によりβとなっており、不一致であることから
無効化指示1114がオンとなり、ANDゲート114
8を禁止状態としている。このためディレクトリ制御部
1115に対するディレクトリメモリ1100からのリ
ードによるメモリデータ1145は、オール0としてデ
ィレクトリ制御部に入力される。
【0414】ディレクトリメモリ制御部1115に入力
したオール0のリードデータは、メモリ制御信号115
0によりANDゲート1142に与えられる。このとき
初期化指示1190はオンとなってANDゲート114
2を禁止状態としており、このためディレクトリ制御部
1115からのライトデータはオール0となって、ドラ
イバ1144によりメモリデータ1145としてディレ
クトリメモリ1100に供給され、書き込まれる。
【0415】この結果、ディレクトリメモリ1100の
特定ビット1112には指示レジスタと同じα=0が書
き込まれ、ブロック状態フィールド1111も全てオー
ル0が書き込まれる。書込み終了後に初期化制御部11
70に設けたタイマ1178が再度初期化指示1190
をオンすると、初期化アドレスレジスタ1174が+1
となって次のメモリアドレスを指定する。
【0416】また初期化制御部1170に設けた一定値
判定回路1180は、初期化中における初期化アドレス
レジスタのメモリアドレス1175とディレクトリメモ
リ1100の予め定められた最大アドレスとを比較して
いる。このため、一定値判定回路1180でメモリアド
レス1175がディレクトリメモリ1100の最大アド
レスに一致すると、初期化完了指示1192がオンし、
タイマ回路1178をリセットして初期化動作を停止す
る。
【0417】同時に完了表示レジスタとしてのD−FF
1176に初期化完了指示をセットし、データ1194
としてプロセッサエレメントに通知される。この完了表
示レジスタ1176の値のプロセッサエレメントに対す
る通知は、プロセッサエレメントがステータスコマンド
などの発行により周期的に完了表示レジスタ1176を
参照してもよいし、完了表示レジスタ1176の出力を
プロセッサエレメントに対する割込としてもよい。
【0418】図93は図91の変形実施例であり、ディ
レクトリメモリ1100に対する初期化処理の間隔をプ
ロセッサエレメントからの値で任意に設定できるように
したことを特徴とする。即ち、図91の初期化制御部1
170にあっては、図92のように、タイマ回路117
8により固定的に初期化の周期を決めているが、ディレ
クトリメモリ1100のアクセス間隔が短すぎるとプロ
セッサエレメント702からのメモリアクセスがビジィ
となり、性能低下の原因となる。
【0419】また、アクセス間隔が長すぎると初期化に
時間がかかり過ぎる。更に、初期化処理のためのアクセ
ス間隔の最適値はシステムや運用形態によっても変わっ
てくる。そこで図93の実施形態にあっては、必要に応
じてプロセッサエレメント702からの指示で初期化処
理のアクセス間隔の周期を設定可能としている。図93
の実施例にあっては、図91の実施例に新たに一定間隔
指示レジスタ1200を設けている。その詳細は図94
のディレクトリメモリ制御部1102のように、初期化
制御部1170に設けたタイミング回路1178のタイ
マ周期を外部設定可能なタイマ回路とし、一定間隔指示
レジスタ1200からの一定間隔情報1202のセット
で初期化指示1190をオンするタイマ周期を可変でき
るようにしている。
【0420】一定間隔指示レジスタ1200にはレジス
タセット指示1186のオンのタイミングでプロセッサ
エレメント702からのデータ1184を保持し、この
データ1184によってタイマ回路1178のタイマ周
期を決めることができる。なお、これ以外の構成は図1
09の論理回路と同じである。 (3)メモリ実装に対応したディレクトリメモリの初期
化 図95は、図82の処理装置10−1におけるメインメ
モリ704の実装状態に対するディレクトリメモリ11
00の使用状態である。通常、メインメモリは例えばメ
インメモリ704−1からメインメモリ704−nのn
台まで拡張可能な構造となっており、実装するメモリ数
によって容量が大きく異なる。
【0421】これに対しディレクトリメモリ1100
は、メインメモリの最大容量に対応したメモリ容量をも
っている。このような拡張可能なメインメモリの構成に
おいて、実際の装置でメインメモリが最大実装になるこ
とはまれである。図95の例では3台のメインメモリ7
04−1〜704−3を実装しており、この実装状態に
対するディレクトリメモリ1100の使用状態は斜線で
示す使用領域1204となっている。このような場合に
ディレクトリメモリ1100の初期化で全領域を初期化
することは無駄であり、使用領域1204のみを初期化
すればよい。
【0422】そこで図96の実施例にあっては、ディレ
クトリメモリ1100の先頭アドレスからメインメモリ
の実装に対応した初期化エントリ数分の初期化処理を可
能とする。図96において、ディレクトリメモリ制御部
1102には図91の実施例に加え新たに初期化エント
リ数レジスタ1206とアドレス比較部1208が設け
られる。初期化エントリ数レジスタ1206にはメイン
メモリの実装数に対応した初期化エントリ数が格納され
る。この初期化エントリ数は、メインメモリの実装容量
を、ディレクトリ方式のブロック容量で割った値であ
る。
【0423】アドレス比較部1208は、初期化制御部
1170による初期化処理で更新される初期化アドレス
レジスタ1174の値と、ディレクトリメモリの初期化
終了位置を示す初期化エントリ数レジスタ1206の値
を比較し、両者が一致したときに比較出力をオンとし、
初期化制御部1170による初期化処理を終了させる。
【0424】図97は、図96のディレクトリメモリ制
御部1102における初期化制御部1170、アドレス
比較部1208及び初期化エントリ数レジスタ1206
の部分の論理回路である。まず初期化エントリ数レジス
タ1206には、プロセッサエレメントからの指示で初
期化エントリ数を示すデータ1212が与えられ、レジ
スタセット指示1210のオンのタイミングで保持され
る。
【0425】この初期化エントリ数レジスタ1206に
保持された初期化エントリ数は、アドレス比較部120
8に与えられる。一方、初期化制御部1170は、この
実施形態にあっては、タイマ回路1178のみを備え、
初期化起動レジスタ1172からのスタート指示118
8のオンにより起動し、一定のタイマ周期で初期化指示
1190をオンし、初期化アドレスレジスタ1174及
び図示しないディレクトリ制御部1115に出力する。
【0426】初期化アドレスレジスタ1174の現在の
初期化アドレス1175は、アドレス比較部1208で
初期化エントリ数レジスタ1206の値と比較される。
そして両者が一致すると初期化完了指示1192がオン
し、タイマ1178をリセットすることで初期化処理を
終了させる。図98は図96の変形実施例であり、メイ
ンメモリの実装状態が分散していることに対応し、任意
のディレクトリメモリの領域を特定して初期化処理を行
うようにしたことを特徴とする。即ち、図95における
ようなメインメモリの実装アドレスは、連続ではなく飛
び飛びに割り振られる場合がある。このような場合にデ
ィレクトリメモリの0番地から最大番地までの初期化動
作を行うと時間がかかるため、部分的に割り振られた領
域に対する初期化が必要である。
【0427】そこで図98の実施例にあっては、図96
の初期化エントリ数レジスタ1206に対し、更に、開
始アドレスレジスタ1214とアドレス加算部1216
を加えている。開始アドレスレジスタ1214には、プ
ロセッサエレメント702からの指示により任意の初期
化開始アドレスを書き込むことができる。初期化エント
リ数レジスタ1206には、初期化アドレスレジスタ1
214の開始アドレスを起点とした使用領域の初期化エ
ントリ数が格納される。開始アドレスレジスタ1214
の開始アドレスは、初期化アドレスレジスタ1174に
送られて開始アドレスが生成される。
【0428】またアドレス加算部1216で初期化エン
トリ数レジスタ1206の値と加算され、これによれ初
期化終了アドレスが算出されてアドレス比較部1208
に設定される。アドレス比較部1208は、初期化アド
レスレジスタ1174より初期化ごとに出力される初期
化対象アドレスとアドレス加算部1216からの初期化
終了アドレスとを比較し、両者が一致すると、初期化制
御部1170の制御を停止させる。
【0429】図99は、図98の初期化制御部117
0、アドレス比較部1208、初期化エントリ数レジス
タ1206、開始アドレスレジスタ1214及びアドレ
ス加算部1216についての論理回路である。即ち、図
114の回路に新たにD−FFを用いた開始アドレスレ
ジスタ1214とアドレス加算部1216を設けてお
り、開始アドレスレジスタ1214にレジスタ指示12
18のオンにより格納したデータ1220による開始ア
ドレスを初期化アドレスレジスタ1174に対するデー
タとして格納し、これをカウンタ初期値としている。
【0430】このため初期化制御部1170に設けたタ
イマ1178からの一定周期の初期化指示1190のオ
ンで、初期化アドレスレジスタ1174は、開始アドレ
スレジスタ1214でセットされた開始アドレスからの
カウントを開始し、開始アドレスからの初期化を行うこ
とになる。そしてアドレス加算部1216から出力され
た初期化終了アドレスとの一致がアドレス比較部120
8で判別されると、初期化完了指示1192をオンして
タイマ1178をオフし、初期化処理を終了する。
【0431】図100は図98の変形実施例であり、ハ
ードウェア構成を簡単にするため、プロセッサエレメン
ト702からのディレクトリメモリ1100における初
期化の終了アドレスを設定する終了アドレスレジスタ1
222を設けたことを特徴とする。それ以外の構成は図
115と同じである。図01は、図100の初期化制御
部1170、アドレス比較部1208、終了アドレスレ
ジスタ1222、開始アドレスレジスタ1214及び初
期化アドレスレジスタ1174の部分を取り出した論理
回路である。この論理回路は図116と対比すると、初
期化エントリ数レジスタ1206及び加算部1216の
代わりに、終了アドレスレジスタ1222のみで済み、
ハードウェア構成を簡略化することができる。もちろ
ん、終了アドレスレジスタ1222にセットするディレ
クトリメモリ1100の初期化終了アドレスは、プロセ
ッサエレメント702側でメインメモリの実装状態に応
じた開始アドレスの値に実装メモリ容量に基づく初期化
エントリ数を加算した値として算出して設定することに
なる。
【0432】
【発明の効果】 (TMRユニット)以上説明してきたように本発明によ
れば、大規模なハードウェア構成を用意することなく、
比較的小規模なハードウェア構成により、充分な高信頼
性機能を備えた情報処理システムを安価に実現すること
ができる。
【0433】また本発明にあっては、確実に故障を検出
することができると共に、更に故障発生時に多重化ユニ
ットを構成する全ての処理装置を停止することなく、故
障を起こした処理装置を切り離して縮退した構成を再構
築し、処理内容の整合性を保ちながら処理を続行でき
る。抑制することで、メモリコピー中の更新を抑止する
と同時に、通常動作における制限を最小限に抑えること
が可能となり、メモリコピーに時間が掛かっても、業務
の停止といった事態を確実に回避できる。またメモリコ
ピーに先立ってテストコピーを行うことで、転送制御系
回路の正常動作を確認できるため、早期に異常の検出が
可能となり、システムの迅速な復旧を図ることができ
る。
【0434】更に、メモリコピーの処理中に特定のメモ
リ領域がアクセス禁止に陥っても、 (ウェイクアップモード)本発明によれば、故障した処
理装置を新たな処理装置に交換した際の主記憶コピー中
であっても、ウェイクアップモードの設定によりマスタ
ー処理装置のメモリアクセスをバス転送を介してスレー
ブ処理装置及び交換処理装置のメモリに反映させること
で、既存の多重化ユニットを構成する処理装置による多
重化動作を停止することなく、またコピー処理によるメ
モリ内容の不一致を起こすことなく動作させ、装置交換
時のシステム停止時間を最小限にして、フォルトトレー
ラントとしての情報処理装置の高信頼化を著しく向上す
ることができる。(ディレクトリ方式)本発明によれ
ば、ディレクトリメモリの特定ビットと指示レジスタの
不一致に基づいて無効化を行うため、指示レジスタの変
更のみでディレクトリメモリの全領域の無効化が可能と
なり、ごく短時間でディレクトリメモリの無効化が完了
し、TMRユニットとして運用している際のシステム停
止時間を最小限に抑え、高信頼性情報処理装置としての
性能向上に大きく寄与する。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明によるTMR系の故障を検出する実施例
のブロック図
【図3】多重バス構成の実施例を示したブロック図
【図4】故障検出を高速化するための実施例のブロック
【図5】故障検出タイミングを通知する本発明の実施例
のブロック図
【図6】故障検出結果を相互に通知する本発明の実施例
のブロック図
【図7】バス情報の故障箇所を判定する本発明の実施例
のブロック図
【図8】図7の故障処理装置判定回路の実施例を示した
回路図
【図9】図8の実施例による故障箇所の判定内容の説明
【図10】故障発生時に各種資源の更新を抑止する本発
明の実施例のブロック図
【図11】図10の更新抑止が行われる内部回路の一部
の実施例を示した回路図
【図12】故障処理装置をTMRユニットから切り離す
本発明の実施例のブロック図
【図13】図12の故障処理装置判定回路の実施例を示
した回路図
【図14】図12のバス出力イネーブル生成回路の実施
例を示した回路図
【図15】故障検出時にマスター処理装置の再決定を行
う本発明の実施例のブロック図
【図16】図15のマスター処理装置故障判定回路の実
施例を示したブロック図
【図17】図15のマスター情報レジスタの実施例を示
した回路図
【図18】図17によるマスター処理装置番号の更新の
説明図
【図19】故障時の保持情報を再転送する本発明の実施
例のブロック図
【図20】図19の故障処理装置判定回路の実施例を示
した回路図
【図21】図19の再転送制御回路の実施例を示した回
路図
【図22】故障時に保持情報の再転送を指示する本発明
の実施例のブロック図
【図23】図22の故障処理装置判定回路の実施例を示
した回路図
【図24】図22の再転送信号用トライステート回路の
実施例を示した回路図
【図25】図22の再転送制御回路の実施例を示した回
路図
【図26】図25の動作を示したタイミングチャート
【図27】生存処理装置表示フラグ回路を備えた実施形
態のブロック図
【図28】生存処理装置表示フラグによるバス情報故障
検出結果のマスク出力のブロック図
【図29】バス出力許可フラグによるバス情報故障検出
結果のマスク出力のブロック図
【図30】生存処理装置表示フラグによるバス情報故障
検出結果のマスク入力のブロック図
【図31】マスター情報通知機能を有するTMRユニッ
トのブロック図
【図32】マスター情報の故障検出機能を有するTMR
ユニットのブロック図
【図33】マスター情報の故障検出を起した装置の判定
機能を有するTMRユニットのブロック図
【図34】装置自身の生存処理装置表示フラグによりマ
スター情報をマスク出力するTMRユニットのブロック
【図35】バス出力許可フラグによりマスター情報をマ
スク出力するTMRユニットのブロック図
【図36】各処理装置の生存処理装置表示フラグにより
他の処理装置からのマスター情報をマスク入力するTM
Rユニットのブロック図
【図37】マスター情報の通知による故障検出判定機能
を備えた多重バス構成のTMRユニットのブロック図
【図38】故障検出時に生存処理装置表示フラグをオフ
する機能を有するTMRユニットのブロック図
【図39】図38の生存処理装置表示フラグ制御回路の
ブロック図
【図40】故障検出時にバス出力許可フラグをオフする
機能を有するTMRユニットのブロック図
【図41】図40のバス情報故障判定回路のブロック図
【図42】図40のマスター情報故障検出判定回路のブ
ロック図
【図43】図40のバス出力イネーブル生成回路のブロ
ック図
【図44】マスター処理装置の故障検出時にマスター情
報を更新する機能を有するTMRユニットのブロック図
【図45】図44のマスター情報レジスタ回路のブロッ
ク図
【図46】マスター処理装置の故障検出時にマスター情
報を更新しない機能を有するTMRユニットのブロック
【図47】図46のマスター情報レジスタ回路のブロッ
ク図
【図48】故障検出時に各種資源の更新抑止機能を有す
るTMRユニットのブロック図
【図49】図48のデータ更新抑止回路のブロック図
【図50】故障検出時に再転送を指示する機能を有する
TMRユニットのブロック図
【図51】図50の再転送指示用トライステート回路の
ブロック図
【図52】バス故障可能性フラグを有するTMRユニッ
トのブロック図
【図53】図52におけるバス故障パターンの説明図
【図54】図52のバス故障検出回路のブロック図
【図55】図52のバス情報検出判定回路のブロック図
【図56】図52のマスター情報レジスタ回路のブロッ
ク図
【図57】バス故障検出フラグのリセット機能を備えた
TMRユニットのブロック図
【図58】図57のバス故障検出回路のブロック図
【図59】バス故障可能性フラグをもつ多重バス構成と
したTMRユニットのブロック図
【図60】図59の多重バス故障判定回路のブロック図
【図61】バス故障検出でバス出力イネーブルフラグを
オフして故障バスを切離すTMRユニットのブロック図
【図62】図61のバス故障検出回路のブロック図
【図63】図61のマスター情報レジスタ回路のブロッ
ク図
【図64】図61のバス出力イネーブル回路のブロック
【図65】バス故障可能性フラグをソフトウェアの指示
でリセットするバス故障検出回路のブロック図
【図66】図65のソフトウェアによるリセット処理の
フローチャート
【図67】バス故障可能性フラグをハードウェアでリセ
ットするバス故障検出回路のブロック図
【図68】バス故障表示フラグを備えたTMRユニット
のブロック図
【図69】図68の故障表示フラグ回路のブロック図
【図70】バス故障発生フラグを備えたTMRユニット
のブロック図
【図71】縮退による処理装置2台故障発生フラグを備
えたTMRユニットのブロック図
【図72】ソフトウェアに故障発生を通知する機能を備
えたTMRユニットのブロック図
【図73】図72のソフト通知信号生成回路のブロック
【図74】ウェイクアップモードにより装置交換を立ち
上げる実施例のブロック図
【図75】ウェイクアップモードのリードアクセスの処
理説明図
【図76】図75のリードアクセスの回路動作の説明図
【図77】ウェイクアップモードのライトアクセスの処
理説明図
【図78】図75のライトアクセスの回路動作の説明図
【図79】ウェイクアップモードの有無によるマスタ処
理のフローチャート
【図80】ウェイクアップモードの有無によるスレーブ
及び交換装置処理のフローチャート
【図81】ウェイクアップモードの有無による装置交換
時のシステム停止を対比した説明図
【図82】ディレクトリメモリを備えた処理装置のブロ
ック図
【図83】無効化を行うディレクトリメモリ制御部のブ
ロック図
【図84】電源投入時のディレクトリメモリの初期化処
理のフローチャート
【図85】運用中のディレクトリメモリの通常のフロー
チャート
【図86】運用中のディレクトリメモリの無効化処理の
フローチャート
【図87】図83のディレクトリメモリ制御部の回路ブ
ロック図
【図88】無効化処理の禁止を制御可能なディレクトリ
メモリ制御部のブロック図
【図89】図88のディレクトリメモリ制御部の回路ブ
ロック図
【図90】運用中における複数回の無効化と初期化処理
のジェネリックフローチャート
【図91】運用中に初期化処理を行うディレクトリメモ
リ制御部のブロック図
【図92】図91のディレクトリメモリ制御部の回路ブ
ロック図
【図93】エントリ単位の初期化処理の時間間隔を制御
可能なディレクトリメモリ制御部のブロック図
【図94】図93における時間間隔の制御部分の回路ブ
ロック図
【図95】メインメモリの実装状態とディレクトリメモ
リの使用状態の説明図
【図96】メインメモリ実装に応じた領域を初期化する
ディレクトリメモリ制御部のブロック図
【図97】図96における特定領域の初期化部分の回路
ブロック図
【図98】不連続なメインメモリ実装に応じた領域を初
期化するディレクトリメモリ制御部のブロック図
【図99】図98における特定領域の初期化部分の回路
ブロック図
【図100】図98の初期化終了アドレスの設定を簡略
化したディレクトリメモリ制御部のブロック図
【図101】図100における特定領域の初期化部分の
回路ブロック図
【符号の説明】 10:TMRユニット(3重化構成ユニット) 10−1,10−2,10−3,10−n:処理装置 12,12−1,12−2:バス 16:マスター情報一致判定回路 18−1〜18−3:外部端子 20:ドライバ 22:出力情報生成回路 24:バス用トライステート回路 26,64,78−1〜78−3:出力ドライバ 28,66,80−1〜80−3:入力ドライバ 30−1〜30−3:バス接続端子 32:出力タイミング生成回路 34:バス出力イネーブル生成回路 36,44:ANDゲート 38:バス情報一致判定回路 40:バス情報故障検出回路 42:インバータ 46:各種処理回路 48,48−1,48−2:TMR制御回路(多重化制
御回路)
【手続補正書】
【提出日】平成8年8月23日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図6
【補正方法】変更
【補正内容】
【図6】
【手続補正2】
【補正対象書類名】図面
【補正対象項目名】図7
【補正方法】変更
【補正内容】
【図7】
【手続補正3】
【補正対象書類名】図面
【補正対象項目名】図8
【補正方法】変更
【補正内容】
【図8】
【手続補正4】
【補正対象書類名】図面
【補正対象項目名】図10
【補正方法】変更
【補正内容】
【図10】
【手続補正5】
【補正対象書類名】図面
【補正対象項目名】図11
【補正方法】変更
【補正内容】
【図11】
【手続補正6】
【補正対象書類名】図面
【補正対象項目名】図14
【補正方法】変更
【補正内容】
【図14】
【手続補正7】
【補正対象書類名】図面
【補正対象項目名】図27
【補正方法】変更
【補正内容】
【図27】
【手続補正8】
【補正対象書類名】図面
【補正対象項目名】図28
【補正方法】変更
【補正内容】
【図28】
【手続補正9】
【補正対象書類名】図面
【補正対象項目名】図29
【補正方法】変更
【補正内容】
【図29】
【手続補正10】
【補正対象書類名】図面
【補正対象項目名】図30
【補正方法】変更
【補正内容】
【図30】
【手続補正11】
【補正対象書類名】図面
【補正対象項目名】図31
【補正方法】変更
【補正内容】
【図31】
【手続補正12】
【補正対象書類名】図面
【補正対象項目名】図32
【補正方法】変更
【補正内容】
【図32】
【手続補正13】
【補正対象書類名】図面
【補正対象項目名】図35
【補正方法】変更
【補正内容】
【図35】
【手続補正14】
【補正対象書類名】図面
【補正対象項目名】図38
【補正方法】変更
【補正内容】
【図38】
【手続補正15】
【補正対象書類名】図面
【補正対象項目名】図39
【補正方法】変更
【補正内容】
【図39】
【手続補正16】
【補正対象書類名】図面
【補正対象項目名】図40
【補正方法】変更
【補正内容】
【図40】
【手続補正17】
【補正対象書類名】図面
【補正対象項目名】図44
【補正方法】変更
【補正内容】
【図44】
【手続補正18】
【補正対象書類名】図面
【補正対象項目名】図45
【補正方法】変更
【補正内容】
【図45】
【手続補正19】
【補正対象書類名】図面
【補正対象項目名】図46
【補正方法】変更
【補正内容】
【図46】
【手続補正20】
【補正対象書類名】図面
【補正対象項目名】図47
【補正方法】変更
【補正内容】
【図47】
【手続補正21】
【補正対象書類名】図面
【補正対象項目名】図48
【補正方法】変更
【補正内容】
【図48】
【手続補正22】
【補正対象書類名】図面
【補正対象項目名】図49
【補正方法】変更
【補正内容】
【図49】
【手続補正23】
【補正対象書類名】図面
【補正対象項目名】図50
【補正方法】変更
【補正内容】
【図50】
【手続補正24】
【補正対象書類名】図面
【補正対象項目名】図52
【補正方法】変更
【補正内容】
【図52】
【手続補正25】
【補正対象書類名】図面
【補正対象項目名】図53
【補正方法】変更
【補正内容】
【図53】
【手続補正26】
【補正対象書類名】図面
【補正対象項目名】図55
【補正方法】変更
【補正内容】
【図55】
【手続補正27】
【補正対象書類名】図面
【補正対象項目名】図56
【補正方法】変更
【補正内容】
【図56】
【手続補正28】
【補正対象書類名】図面
【補正対象項目名】図57
【補正方法】変更
【補正内容】
【図57】
【手続補正29】
【補正対象書類名】図面
【補正対象項目名】図59
【補正方法】変更
【補正内容】
【図59】
【手続補正30】
【補正対象書類名】図面
【補正対象項目名】図60
【補正方法】変更
【補正内容】
【図60】
【手続補正31】
【補正対象書類名】図面
【補正対象項目名】図61
【補正方法】変更
【補正内容】
【図61】
【手続補正32】
【補正対象書類名】図面
【補正対象項目名】図62
【補正方法】変更
【補正内容】
【図62】
【手続補正33】
【補正対象書類名】図面
【補正対象項目名】図63
【補正方法】変更
【補正内容】
【図63】
【手続補正34】
【補正対象書類名】図面
【補正対象項目名】図67
【補正方法】変更
【補正内容】
【図67】
【手続補正35】
【補正対象書類名】図面
【補正対象項目名】図68
【補正方法】変更
【補正内容】
【図68】
【手続補正36】
【補正対象書類名】図面
【補正対象項目名】図70
【補正方法】変更
【補正内容】
【図70】
【手続補正37】
【補正対象書類名】図面
【補正対象項目名】図72
【補正方法】変更
【補正内容】
【図72】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岸野 琢己 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 廣▲瀬▼ 佳生 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 小田原 孝一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 野々村 一泰 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 竹野 巧 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 加藤 慎哉 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 野田 敬人 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 野中 巧 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 松尾 保 大阪府大阪市中央区城見2丁目2番6号 富士通関西ディジタル・テクノロジ株式会 社内 (72)発明者 後藤 誠司 福岡県福岡市博多区博多駅前三丁目22番8 号 富士通九州ディジタル・テクノロジ株 式会社内

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】バスを介して接続され、同時に同じ処理動
    作を行う複数の処理装置を有し、前記処理装置の内の1
    台をマスター処理装置とし、残りをスレーブ処理装置と
    し、前記マスター処理装置は生成した情報の前記バスへ
    の送出と前記バス上の情報の取込みを行い、前記スレー
    ブ処理装置は生成した情報を前記バスへ送出せず前記バ
    ス上の情報の取込みのみを行う多重化ユニットと、 前記多重化ユニットの各処理装置に設けられ、各処理装
    置が生成した情報と前記バス上に出力された情報との比
    較に基づいて故障を検出し、内部回路に必要な処理を行
    わせる多重化制御回路と、を備えたことを特徴とする情
    報処理装置。
  2. 【請求項2】請求項1記載の情報処理装置に於いて、前
    記多重化制御回路は、前記バス上に出力された情報と各
    処理装置が生成した情報との不一致を検出する情報一致
    判定回路を有し、該情報一致判定回路による不一致検出
    の判断を、各処理装置が生成した情報の出力タイミング
    で行うことを特徴とする情報処理装置。
  3. 【請求項3】請求項1記載の情報処理装置に於いて、前
    記多重化制御回路は、 バス上に生成した情報を出力する際に、情報出力タイミ
    ングを示すタイミング信号を生成する出力タイミング生
    成回路と、 マスター処理装置の割当て状態で、前記タイミング信号
    を専用の信号線により他の処理装置に出力するタイミン
    グ信号出力回路と、 マスター処理装置の割当て状態では、前記信号線から入
    力した装置自身が生成したタイミング信号または装置自
    身が生成したタイミング信号でバス情報と出力情報の比
    較結果の出力を行い、スレーブ処理装置の割当て状態で
    は、前記信号線から入力したマスター処理装置からのタ
    イミング信号または装置自身が生成したタイミング信号
    で、バス情報と出力情報を比較結果の出力を行うバス情
    報故障検出回路と、を備えたことを特徴とする情報処理
    装置。
  4. 【請求項4】請求項1記載の情報処理装置に於いて、前
    記多重化制御回路は、バス情報と出力情報の比較により
    故障を検出した際に、専用の信号線により他の処理装置
    に故障検出結果を出力するバス情報故障検出回路と、他
    の処理装置からの故障検出結果または装置自身の故障検
    出結果が得られた時に、故障を示す故障判定信号を生成
    するバス情報故障判定回路を設けたことを特徴とする情
    報処理装置。
  5. 【請求項5】請求項1記載の情報処理装置に於いて、マ
    スター処理装置の故障検出時に、マスター処理装置が割
    り当てられた処理装置の多重化制御回路は、装置自身で
    前記バスとの接続を切り離し、スレーブ処理装置が割り
    当てられた処理装置の多重化制御回路にあっては、残り
    の処理装置の中で新たなマスター処理装置を決定して縮
    退した多重化ユニットを再構成することを特徴とする情
    報処理装置。
  6. 【請求項6】バスを介して接続され、同時に同じ処理動
    作を行う複数の処理装置を有し、前記処理装置のうちの
    1台をマスター処理装置とし、残りをスレーブ処理装置
    とし、前記マスター処理装置は生成した情報の前記バス
    への送出と前記バス上の情報の取り込みを行い、前記ス
    レーブ処理装置は生成した情報を前記バスへ送出せず前
    記バス上の情報の取り込みのみを行う多重化ユニット
    と、 前記多重化ユニットの各処理装置に設けられ、各処理装
    置が生成した出力情報と前記バス上に出力されたバス情
    報との比較に基づいて故障を検出し、内部回路に必要な
    処理を行わせる多重化制御回路と、を備えた情報処理装
    置に於いて、 前記多重化ユニットを構成する複数の処理装置の内、ど
    の処理装置が正常に動作しており、どの処理装置が故障
    等によって前記多重化ユニットから離脱しているかを示
    す生存処理装置表示フラグを備えた生存処理装置表示フ
    ラグ回路を設けたことを特徴とする情報処理装置。
  7. 【請求項7】請求項6記載の情報処理装置に於いて、前
    記多重化制御回路は、装置自身が前記多重化ユニットか
    ら離脱しているときにオフしている前記生存処理装置表
    示フラグにより、装置自身からの情報の出力をマスクし
    て出力する出力マスク回路を設けたことを特徴する情報
    処理装置。
  8. 【請求項8】請求項7記載の情報処理装置に於いて、前
    記多重化制御回路は、バスへの出力許可状態の時にオン
    するバス出力許可フラグをセットするバス出力許可フラ
    グ回路を有し、前記出力マスク回路は、装置自身からの
    情報の出力を、前記バス出力許可フラグによりマスクし
    て出力することを特徴とする情報処理装置。
  9. 【請求項9】請求項7記載の情報処理装置に於いて、前
    記多重化制御回路は、装置自身が前記多重化ユニットか
    ら離脱しているときにオフしている前記生存処理装置表
    示フラグにより、他の処理装置からの出力情報をマスク
    して入力する入力マスク回路を備えたことを特徴とする
    情報処理装置。
  10. 【請求項10】請求項1記載の情報処理装置に於いて、
    前記多重化制御回路は、前記各処理装置がどの処理装置
    をマスター処理装置として認識しているかを示すマスタ
    ー情報を、専用の信号線を介して入出力することにより
    互いに通知するマスタ情報通知回路を備えたことを特徴
    とする情報処理装置。
  11. 【請求項11】請求項10記載の情報処理装置に於い
    て、前記多重化制御回路は、前記マスター情報通知回路
    における装置自身のマスター情報と他の処理装置から通
    知されたマスター情報との比較結果に基づいて、マスタ
    ー情報故障を起した処理装置を示すマスター故障判定信
    号を生成するマスター情報故障判定回路を備えたことを
    特徴とする情報処理装置。
  12. 【請求項12】請求項11記載の情報処理装置に於い
    て、前記多重化制御回路は、前記マスター情報故障判定
    回路によりマスター処理装置のマスター情報が故障と判
    定されたときに、故障したマスター処理装置をバスから
    切り離し、残ったスレーブ処理装置の中から新マスター
    処理装置を決定して、縮退した多重化ユニットを再構成
    することを特徴とする情報処理装置。
  13. 【請求項13】バスを介して接続され、同時に同じ処理
    動作を行う複数の処理装置を有し、前記処理装置のうち
    の1台をマスター処理装置とし、残りをスレーブ処理装
    置とし、前記マスター処理装置は生成した情報の前記バ
    スへの送出と前記バス上の情報の取り込みを行い、前記
    スレーブ処理装置は生成した情報を前記バスへ送出せず
    前記バス上の情報の取り込みのみを行う多重化ユニット
    と、 前記多重化ユニットの各処理装置に設けられ、各処理装
    置が生成した出力情報と前記バス上に出力されたバス情
    報との比較に基づいて故障を検出し、内部回路に必要な
    処理を行わせる多重化制御回路と、を備えた情報処理装
    置に於いて、 前記処理装置の各々は、前記多重化制御回路のバス入出
    力回路とバスとの間に更にトランシーバ回路を設け、 前記各処理装置の多重化制御回路は、バス情報故障につ
    いてマスタ処理装置で正常と判定され、且つ全てのスレ
    ーブ装置でバス情報故障と判定されるバス故障可能性パ
    ターンを検出した際に、バス故障可能性フラグをオンす
    るバス故障検出回路を備え、前記バス故障可能性フラグ
    のオンに基づいて、マスター処理装置を更新をすると共
    に旧マスター処理装置の前記多重化ユニットからの切り
    離しは行わないことを特徴とする情報処理装置。
  14. 【請求項14】請求項13記載の情報処理装置に於い
    て、前記バス故障検出回路は、最初の前記バス故障可能
    性パターン検出による前記フラグのオンに基づいてマス
    ター処理装置の更新を行った後、再び前記バス故障可能
    性パターンを検出した時に、旧マスター処理装置の故障
    と断定して旧マスター処理装置を切り離して縮退した多
    重化ユニットを再構成させることを特徴とする情報処理
    装置。
  15. 【請求項15】請求項13又は14記載の情報処理装置
    に於いて、前記バスを複数設けて多重バスを構成し、前
    記各処理装置は各バス毎に設けた多重化制御回路の各々
    に、前記バス故障検出回路を設け、前記バス故障検出回
    路は、最初の前記バス故障可能性パターンの検出による
    前記フラグのオンに基づいてマスター処理装置の更新を
    行った後、再び前記バス故障可能性パターンを検出した
    時に、該バスに接続されるすべての処理装置を該バスか
    ら切り離して、縮退した多重バス構成で動作させること
    を特徴とする情報処理装置。
  16. 【請求項16】請求項13記載の情報処理装置に於い
    て、前記バス故障検出回路は、一定時間以上故障が発生
    せずにオン状態を継続した時に、前記バス故障可能性フ
    ラグをリセットさせることを特徴とする情報処理装置。
  17. 【請求項17】バスを介して接続され、同じ処理動作を
    同時に行う複数の処理装置を有し、前記処理装置のうち
    の1台をマスター処理装置とし、残りをスレーブ処理装
    置とし、前記マスター処理装置は生成した情報の前記バ
    スへの送出と前記バス上の情報の取り込みを行い、前記
    スレーブ処理装置は生成した情報を前記バスへ送出せず
    前記バス上の情報の取り込みのみを行う多重化ユニット
    を構築して動作する情報処理装置に於いて、 前記処理装置の各々に、 故障により前記多重化ユニットから切り離された処理装
    置を新しい処理装置に交換して前記多重化ユニットを構
    成している処理装置とのクロックレベルの同期化が行わ
    れた時に、ウェイクアップモードを設定するモード設定
    部と、 前記ウェイクアップモードの設定状態で、前記マスター
    処理装置の内部でのメモリアクセスを前記バスを経由し
    て行わせ、前記スレーブ処理装置及び交換処理装置の内
    部でのメモリアセスを前記バス上のデータを取り込んで
    行わせるメモリ制御部と、を設けたことを特徴とする情
    報処理装置。
  18. 【請求項18】請求項17記載の情報処理装置に於い
    て、前記ウェイクアップモードの設定状態で、 前記マスター処理装置のメモリ制御部は、プロセッサか
    らメモリに対するリードアクセスがあった場合、メモリ
    のリードデータを前記バスに転送すると同時に前記バス
    からリードデータを取り込んで前記プロセッサに転送
    し、 前記スレーブ処理装置および交換処理装置の各メモリ制
    御部は、メモリに対するリードアクセスがあった場合、
    前記バスから前記マスター処理装置が転送したリードデ
    ータを取り込んでプロセッサに転送することを特徴とす
    る情報処理装置。
  19. 【請求項19】請求項18記載の情報処理装置に於い
    て、前記ウェイクアップモードの設定状態で、 前記マスター処理装置のメモリ制御部は、プロセッサか
    らメモリに対するライトアクセスがあった場合、メモリ
    のライトデータを前記バスに転送すると同時に前記バス
    からライトデータを取り込んで前記メモリに転送して書
    き込み、 前記スレーブ処理装置および交換処理装置の各メモリ制
    御部は、メモリに対するライトアクセスがあった場合、
    前記バスから前記マスター処理装置が転送したライトデ
    ータを取り込んでメモリに書き込むことを特徴とする情
    報処理装置。
  20. 【請求項20】バスを介して接続され、同じ処理動作を
    同時に行う複数の処理装置を有し、前記処理装置のうち
    の1台をマスター処理装置とし、残りをスレーブ処理装
    置とし、前記マスター処理装置は生成した情報の前記バ
    スへの送出と前記バス上の情報の取り込みを行い、前記
    スレーブ処理装置は生成した情報を前記バスへ送出せず
    前記バス上の情報の取り込みのみを行う多重化ユニット
    を構築して動作する情報処理装置に於いて、 前記処理装置の各々は、 所定のブロックサイズに分けらけたメインメモリの各メ
    モリブロックの状態を示すディレクトリ情報を格納し、
    更に、電源投入によるシステムの初期設定時に前記ディ
    レクトリ情報の特定ビットに特定の値を書き込んでいる
    ディレクトリメモリと、 前記ディレクトリ情報の特定ビットと同じ値を格納した
    指示レジスタと、 前記ディレクトリ情報の読出し時に前記特定ビットの値
    と前記指示レジスタ値を比較し、一致していればディレ
    クトリ情報を有効とし、一致していなければメインメモ
    リのデータが最新で他の部位に存在しないことを示す無
    効化状態に前記ディレクトリ情報を更新するデータ制御
    部と、 前記処理装置の交換時等に、前記指示レジスタの値を別
    の値に変更して、前記ディレクトリメモリの内容を全て
    無効化させる無効化部と、を備えたことを特徴とする情
    報処理装置。
  21. 【請求項21】請求項20記載の情報処理装置に於い
    て、更に、データ制御部による前記ディレクトリメモリ
    の無効化処理を禁止させる制御レジスタを設け、前記指
    示レジスタの値と前記ディレクトリ情報の特定ビットの
    値が一致しなくとも、該ディレクトリ情報を有効とする
    ことを特徴とする情報処理装置。
  22. 【請求項22】請求項20記載の情報処理装置に於い
    て、 初期化起動レジスタと、 初期化完了表示レジスタと、 プロセッサにより前記初期化起動レジスタに一定値が書
    き込まれた時に、前記データ制御部に前記ディレクトリ
    メモリの初期化動作を開始させ、初期化動作中は、前記
    ディレクトリメモリの特定ビットに前記指示レジスタと
    同じ値を書き込み、他のビットには無効状態を示す値を
    書き込み、前記ディレクトリメモリの全領域の書込みが
    済んだら前記完了表示レジスタに初期化完了を示す値を
    書き込む初期化制御部と、を設け、前記ディレクトリメ
    モリの無効化に続いて初期化することで、複数回の無効
    化を可能とする情報処理装置。
  23. 【請求項23】請求項22記載の情報処理装置に於い
    て、更に、前記初期化制御部による前記ディレクトリメ
    モリのエントリ単位の初期化動作の時間間隔を指定する
    時間間隔指示レジスタを設けたことを特徴とする情報処
    理装置。
  24. 【請求項24】請求項22記載の情報処理装置に於い
    て、更に、 前記メインメモリの実装数に対応したディレクトリメモ
    リの初期化エントリ数を指示する初期化エントリ数レジ
    スタと、 初期化動作中に更新される初期化対象アドレスが前記初
    期化エントリ数レジスタの指示するアドレス数に一致し
    たときに、前記初期化制御部に初期化動作の終了を指示
    するアドレス比較部と、を設け、前記メインメモリの実
    装に対応した前記ディレクトリメモリの領域の初期化を
    可能とすることを特徴とする情報処理装置。
  25. 【請求項25】請求項24記載の情報処理装置に於い
    て、更に、 初期化開始アドレスを指示する開始アドレスレジスタ
    と、 前記開始アドレスレジスタの指示する開始アドレスに、
    前記初期化エントリレジスタの指示する初期化エントリ
    数を加算して初期化終了アドレスを求めるアドレス加算
    部と、を設け、前記アドレス比較部で、初期化動作中に
    更新される初期化対象アドレスが前記加算部からのアド
    レスに一致したときに、前記初期化制御部に初期化動作
    の終了を指示し、前記メインメモリの実装に対応した前
    記ディレクトリメモリの離散した領域の初期化を可能と
    したことを特徴とする情報処理装置。
  26. 【請求項26】請求項24記載の情報処理装置に於い
    て、更に、 初期化開始アドレスを指示する開始アドレスレジスタ
    と、 初期化終了アドレスを指示する終了アドレスレジスタ
    と、を設け、前記アドレス比較部で、初期化動作中に更
    新される初期化対象アドレスが前記初期化終了アドレス
    に一致したときに、前記初期化制御部に初期化動作の終
    了を指示し、前記メインメモリの実装に対応した前記デ
    ィレクトリメモリの任意の領域の初期化を可能としたこ
    とを特徴とする情報処理装置。
JP07354196A 1995-07-13 1996-03-28 情報処理装置 Expired - Fee Related JP3502216B2 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP07354196A JP3502216B2 (ja) 1995-07-13 1996-03-28 情報処理装置
US08/674,786 US5835697A (en) 1995-07-13 1996-07-03 Information processing system
GB0007303A GB2345364B (en) 1995-07-13 1996-07-08 Information processing system
GB9929773A GB2342479B (en) 1995-07-13 1996-07-08 Information processing system
GB0006990A GB2345362B (en) 1995-07-13 1996-07-08 Information processing system
GB0007412A GB2345365B (en) 1995-07-13 1996-07-08 Information processing system
GB9614344A GB2303234B (en) 1995-07-13 1996-07-08 Information processing system
CN96110641A CN1122217C (zh) 1995-07-13 1996-07-11 信息处理系统
US09/140,797 US6073249A (en) 1995-07-13 1998-08-26 Information processing system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-177102 1995-07-13
JP17710295 1995-07-13
JP07354196A JP3502216B2 (ja) 1995-07-13 1996-03-28 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0991163A true JPH0991163A (ja) 1997-04-04
JP3502216B2 JP3502216B2 (ja) 2004-03-02

Family

ID=26414684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07354196A Expired - Fee Related JP3502216B2 (ja) 1995-07-13 1996-03-28 情報処理装置

Country Status (4)

Country Link
US (2) US5835697A (ja)
JP (1) JP3502216B2 (ja)
CN (1) CN1122217C (ja)
GB (1) GB2345365B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014118985A1 (ja) * 2013-02-04 2014-08-07 三菱電機株式会社 バスモジュール及びバスシステム
JP2019003578A (ja) * 2017-06-20 2019-01-10 Necプラットフォームズ株式会社 診断制御装置、診断制御方法およびプログラム
CN109709930A (zh) * 2017-10-25 2019-05-03 株洲中车时代电气股份有限公司 一种故障导向安全控制装置及方法

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3502216B2 (ja) * 1995-07-13 2004-03-02 富士通株式会社 情報処理装置
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US5923831A (en) * 1997-09-05 1999-07-13 International Business Machines Corporation Method for coordinating membership with asymmetric safety in a distributed system
JP3344345B2 (ja) * 1998-12-15 2002-11-11 日本電気株式会社 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体
JP2000181890A (ja) * 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
US6493777B1 (en) * 1999-09-15 2002-12-10 Lucent Technologies Inc. Method for dynamically reconfiguring data bus control
US7213167B1 (en) * 2000-01-18 2007-05-01 Verso Technologies, Inc. Redundant state machines in network elements
US7908520B2 (en) * 2000-06-23 2011-03-15 A. Avizienis And Associates, Inc. Self-testing and -repairing fault-tolerance infrastructure for computer systems
JPWO2002082733A1 (ja) * 2001-03-30 2004-07-29 株式会社鷹山 無線lanシステム及び無線lanシステムの制御方法並びに制御プログラム
US20030012169A1 (en) * 2001-03-30 2003-01-16 Sunao Takatori Wireless lan system and control method and control and control program of wireless lan system
US6836840B2 (en) 2001-07-30 2004-12-28 International Business Machines Corporation Slaves with identification and selection stages for group write
US6965558B1 (en) * 2001-08-23 2005-11-15 Cisco Technology, Inc. Method and system for protecting a network interface
US7069442B2 (en) * 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
EP1353271A3 (en) * 2002-04-10 2007-09-12 Alps Electric Co., Ltd. Controller with fail-safe function
US7222254B2 (en) * 2003-09-15 2007-05-22 Intel Corporation System and method for over-clocking detection of a processor utilizing a feedback clock rate setting
US7167955B1 (en) * 2003-12-23 2007-01-23 Unisys Corporation System and method for testing and initializing directory store memory
JP2006129355A (ja) * 2004-11-01 2006-05-18 Internatl Business Mach Corp <Ibm> 情報処理装置、データ伝送システム、データ伝送方法、および該データ伝送方法を情報処理装置に対して実行させるためのプログラム
US7506196B2 (en) * 2005-02-07 2009-03-17 International Business Machines Corporation System and method for detecting a faulty object in a system
US7506197B2 (en) * 2005-02-07 2009-03-17 International Business Machines Corporation Multi-directional fault detection system
US8495411B2 (en) * 2005-02-07 2013-07-23 International Business Machines Corporation All row, planar fault detection system
US7437595B2 (en) * 2005-02-07 2008-10-14 International Business Machines Corporation Row fault detection system
US7451342B2 (en) * 2005-02-07 2008-11-11 International Business Machines Corporation Bisectional fault detection system
US7529963B2 (en) * 2005-02-07 2009-05-05 International Business Machines Corporation Cell boundary fault detection system
US7826379B2 (en) * 2005-02-07 2010-11-02 International Business Machines Corporation All-to-all sequenced fault detection system
US7246332B2 (en) * 2005-02-08 2007-07-17 International Business Machines Corporation Methods, systems and media for functional simulation of noise and distortion on an I/O bus
US7543180B2 (en) * 2006-03-08 2009-06-02 Sun Microsystems, Inc. Enhancing throughput and fault-tolerance in a parallel-processing system
JP4253332B2 (ja) * 2006-07-03 2009-04-08 株式会社東芝 復号装置、方法およびプログラム
US9757639B2 (en) 2009-11-24 2017-09-12 Seth E. Eisner Trust Disparity correction for location-aware distributed sporting events
US7934983B1 (en) 2009-11-24 2011-05-03 Seth Eisner Location-aware distributed sporting events
CN102207927B (zh) * 2011-05-27 2016-01-13 清华大学 动态可重构处理器之间的数据传输方法、处理器和系统
CN102591763B (zh) * 2011-12-31 2015-03-04 龙芯中科技术有限公司 一种基于确定性重放的处理器整体故障检测系统与方法
TW201421349A (zh) * 2012-11-27 2014-06-01 Hon Hai Prec Ind Co Ltd Dvi鏈接自動切換系統及方法
JP5983362B2 (ja) * 2012-11-29 2016-08-31 富士通株式会社 試験方法、試験プログラム、および、試験制御装置
CN104657240B (zh) * 2013-11-18 2018-08-21 华为技术有限公司 多内核操作系统的失效控制方法及装置
US9690678B2 (en) * 2014-03-19 2017-06-27 Siemens Energy, Inc. Fault tolerant systems and method of using the same
KR20160010785A (ko) * 2014-07-18 2016-01-28 삼성전자주식회사 가전기기 및 그 제어 방법
US10649690B2 (en) * 2015-12-26 2020-05-12 Intel Corporation Fast memory initialization
CN106020898A (zh) * 2016-05-30 2016-10-12 华讯方舟科技有限公司 一种多处理器设备的软件升级方法及系统
CN106384489B (zh) * 2016-09-08 2019-01-01 四川赛科安全技术有限公司 用于实现火灾报警控制器回路扩容的分管器
US10277385B1 (en) * 2018-05-27 2019-04-30 Nxp B.V. Slave node for CAN bus network

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59220865A (ja) * 1983-05-30 1984-12-12 Hitachi Ltd 二重化共有メモリのオンライン保守制御方法
AU625293B2 (en) * 1988-12-09 1992-07-09 Tandem Computers Incorporated Synchronization of fault-tolerant computer system having multiple processors
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
JPH07117905B2 (ja) * 1989-02-09 1995-12-18 日本電気株式会社 マイクロプロセッサ
US5202980A (en) * 1989-06-30 1993-04-13 Nec Corporation Information processing system capable of readily taking over processing of a faulty processor
US5297269A (en) * 1990-04-26 1994-03-22 Digital Equipment Company Cache coherency protocol for multi processor computer system
US5347639A (en) * 1991-07-15 1994-09-13 International Business Machines Corporation Self-parallelizing computer system and method
JPH05128080A (ja) * 1991-10-14 1993-05-25 Mitsubishi Electric Corp 情報処理装置
JP3063334B2 (ja) * 1991-12-19 2000-07-12 日本電気株式会社 高信頼度化情報処理装置
JPH05204692A (ja) * 1992-01-30 1993-08-13 Nec Corp 情報処理装置の故障検出・切離方式
GB2268817B (en) * 1992-07-17 1996-05-01 Integrated Micro Products Ltd A fault-tolerant computer system
US5434997A (en) * 1992-10-02 1995-07-18 Compaq Computer Corp. Method and apparatus for testing and debugging a tightly coupled mirrored processing system
JPH0773059A (ja) * 1993-03-02 1995-03-17 Tandem Comput Inc フォールトトレラント型コンピュータシステム
JP3200757B2 (ja) * 1993-10-22 2001-08-20 株式会社日立製作所 並列計算機の記憶制御方法および並列計算機
US5630056A (en) * 1994-09-20 1997-05-13 Stratus Computer, Inc. Digital data processing methods and apparatus for fault detection and fault tolerance
US5537583A (en) * 1994-10-11 1996-07-16 The Boeing Company Method and apparatus for a fault tolerant clock with dynamic reconfiguration
US5530946A (en) * 1994-10-28 1996-06-25 Dell Usa, L.P. Processor failure detection and recovery circuit in a dual processor computer system and method of operation thereof
US5577050A (en) * 1994-12-28 1996-11-19 Lsi Logic Corporation Method and apparatus for configurable build-in self-repairing of ASIC memories design
JP3502216B2 (ja) * 1995-07-13 2004-03-02 富士通株式会社 情報処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014118985A1 (ja) * 2013-02-04 2014-08-07 三菱電機株式会社 バスモジュール及びバスシステム
JP2019003578A (ja) * 2017-06-20 2019-01-10 Necプラットフォームズ株式会社 診断制御装置、診断制御方法およびプログラム
CN109709930A (zh) * 2017-10-25 2019-05-03 株洲中车时代电气股份有限公司 一种故障导向安全控制装置及方法

Also Published As

Publication number Publication date
US6073249A (en) 2000-06-06
US5835697A (en) 1998-11-10
CN1122217C (zh) 2003-09-24
GB2345365A (en) 2000-07-05
GB0007412D0 (en) 2000-05-17
GB2345365B (en) 2000-08-16
JP3502216B2 (ja) 2004-03-02
CN1159630A (zh) 1997-09-17

Similar Documents

Publication Publication Date Title
JP3502216B2 (ja) 情報処理装置
US5901281A (en) Processing unit for a computer and a computer system incorporating such a processing unit
US4503535A (en) Apparatus for recovery from failures in a multiprocessing system
EP1573544B1 (en) On-die mechanism for high-reliability processor
US6496940B1 (en) Multiple processor system with standby sparing
CA2288016C (en) Method and system for recovery in a partitioned shared nothing database system using virtual shared disks
US7627781B2 (en) System and method for establishing a spare processor for recovering from loss of lockstep in a boot processor
EP0514075A2 (en) Fault tolerant processing section with dynamically reconfigurable voting
EP0528538A2 (en) Mirrored memory multi processor system
US7441150B2 (en) Fault tolerant computer system and interrupt control method for the same
JPH0454260B2 (ja)
JPH03232045A (ja) Dmaデータ転送のためのプロトコル
JPH03182947A (ja) メモリデバイス
US20040255187A1 (en) Data synchronization for system controllers
US6832270B2 (en) Virtualization of computer system interconnects
JP3871732B2 (ja) フェイル−ファースト、フェイル−ファンクショナル、フォルトトレラント・マルチプロセッサ・システム
JP2004046507A (ja) 情報処理装置
JP3069585B2 (ja) データ処理装置における目標指定リセット法
GB2342479A (en) Fault detection in a redundant multi-processor system
GB2369693A (en) A dirty memory for indicating that a block of memory associated with an entry in it has been altered
GB2303234A (en) Multi-processor fault detection
JP3325836B2 (ja) 計算機盤
JPH08190494A (ja) 二重化処理装置を有する高信頼化コンピュータ
JP3679412B2 (ja) 故障から立直りが速い/故障に対する耐性がある計算処理
Corsini et al. Fail-safeness in a multiprocessor system. a distributed strategy based on backward error recovery

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees