JP2003337758A - Duplexed memory system - Google Patents

Duplexed memory system

Info

Publication number
JP2003337758A
JP2003337758A JP2003126672A JP2003126672A JP2003337758A JP 2003337758 A JP2003337758 A JP 2003337758A JP 2003126672 A JP2003126672 A JP 2003126672A JP 2003126672 A JP2003126672 A JP 2003126672A JP 2003337758 A JP2003337758 A JP 2003337758A
Authority
JP
Japan
Prior art keywords
data
error
output
circuit
system bus
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.)
Pending
Application number
JP2003126672A
Other languages
Japanese (ja)
Inventor
Takashi Tanabe
隆司 田辺
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003126672A priority Critical patent/JP2003337758A/en
Publication of JP2003337758A publication Critical patent/JP2003337758A/en
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve reliability of a computer and to facilitate error restoration, repair, and replacement during operation of a system. <P>SOLUTION: A processing device 1 and a system bus controller 3 are connected together via a CPU bus, and the system bus controller 3 and a memory device 4 are duplexed to be connected to a pair of system buses 13 individually. Inside the system bus controller 3 and the memory device 4, error detection circuits 6, 80, and 85 for detecting errors in the respective buses, comparison circuits 51, 104, and 105 comparing bus output contents, bus switch circuits 7, 82, and 83, and mode setting circuits 100, 101, and 102 are arranged. Outputs of the error detection circuits are exchanged between a pair of devices, and according to a detection result from a partner side and setting contents of the mode setting circuit, the bus switch circuit is controlled. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】この発明は、高信頼計算機におけ
るメモリ装置、特に二重化メモリシステムの構成方法、
診断方法、及び障害監視方法に関するものである。 【0002】 【従来の技術】フォールトトレラント計算機の分野にお
いて、計算機の信頼性を高める最も一般的な技術の1つ
に、処理装置(CPU)あるいは記憶装置など、信頼性
上クリティカルな論理回路を多重化する方式がある。通
常、記憶装置の多重化は二重化が基本で、二重化された
記憶装置の一方を常用側、他方を待機側として構成す
る。この場合、書込み時は両方に同じデータを書き込ん
で一貫性を保ち、読出し時には常用側のデータのみを出
力させるが、仮に常用側から読み出したデータにエラー
が発生すれば、データ転送主体が待機側に切り換わり、
こちらが正しいデータを出力することでシステムの動作
継続が可能となる。 【0003】ところが従来の技術は、ほとんどがメモリ
装置のみの二重化にとどまり、制御部や接続されるシス
テムバスの二重化による高信頼化手法は確立されていな
い。従って、故障した記憶装置を切り離して診断する手
段、システム動作中の修理交換(活線交換)、記憶装置
を接続するシステムバスが故障した時の対処は、いずれ
も不十分であった。 【0004】二重化記憶装置の切り換え技術として、特
開昭59−17796号公報、特開平01−70847
号公報、特公昭60−3225号公報、特開昭63−2
73950号公報、特開昭60−238957号公報、
特開昭57−109195号公報、特開平4−2330
52号公報に記載されている方式では、記憶装置の接続
されるバスが二重化されておらず、またほとんどの方式
において、制御部の二重化がなされていなかった。さら
に記憶装置にエラーが発生した場合、読出し時なら切り
換えや修復によって正しいデータが保証されるものの、
書込み時については配慮が不足し、リトライ動作等によ
る性能の低下、処理装置側回路の複雑化を招いていた。
さらに、故障したメモリの診断時に正常なメモリに影響
を与えない考慮、故障した制御部やメモリ装置をシステ
ムの動作中に修理交換する手段、入出力制御装置が記憶
装置をアクセスする時の信頼性考慮等も十分とはいえ
ず、システム全体の信頼性向上に改善の余地が残るもの
であった。 【0005】 【発明が解決しようとする課題】前述のごとく従来の技
術にはいくつかの課題があり、これを解決するために
は、すべての構成要素を二重化する方法が考えられる。
これは単に構成要素を二組用意すれば実現できるもので
はなく、システムとして常に正しい連続動作を確保する
ために、以下の諸点に配慮しなければならない。 【0006】課題1、二重化されたシステムバスの切り
換えを高速に、しかもエラーが発生したときにもシステ
ムバスのタイミングを変えることなく、正常なデータを
保証すること。 【0007】課題2、二重化されている装置中の任意の
装置の一方が実装されていなくても正常動作が可能で、
相手側が実装されているかどうかを知るための特別な信
号線を不要にすること。 【0008】課題3、エラー発生時の故障箇所の特定及
び診断を、正常な部分に影響を与えないで実施するこ
と。 【0009】課題4、書込み時にデータパリティエラー
が発生した時でも、二重化動作が継続できる手段を簡単
に提供すること。 【0010】課題5、システムバスを二重化したときの
エラーチェックが十分に行われるようにすること。 【0011】課題6、二重化されたメモリ装置の一方に
修復不可能なエラーが発生した時、システムを停止しな
いで修理交換ができ、二重化動作を再開できること。 【0012】課題7、二重化メモリ装置として使用しな
い時に、簡単にメモリ容量を増やせること。 【0013】課題8、故障した入出力制御装置を診断す
る時にメモリにデータを書き込むことによって、復旧が
不可能となるようなメモリ破壊を招かないこと。 【0014】課題9、二重化されたシステムバスに接続
するための特別な入出力制御装置を設計しなくても、信
頼性を低下させることなく二重化メモリシステムに接続
可能とすること。 【0015】目的 この発明は以上の課題を解決するためになされたもの
で、信頼性の高い二重化メモリシステムを提供すること
を目的とする。 【0016】 【課題を解決するための手段】上記課題を解決するため
に本発明は、各種の処理を行う処理装置と、この処理装
置にCPUバスを介して接続された一対のシステムバス
制御装置と、この一対のシステムバス制御装置にそれぞ
れ接続された一対のシステムバスと、この一対のシステ
ムバスにそれぞれ接続された一対のメモリ装置と、を含
み、処理装置における書込み動作時には、システムバス
制御装置は一対のメモリ装置に同時に処理装置からのデ
ータを書き込み、処理装置における読出し動作時には、
いずれか一方のシステムバス制御装置が対応するメモリ
装置から読み出したデータを処理装置に送出する二重化
メモリシステムにおいて、各システムバス制御装置が、
データの転送される経路上に配置されて転送中のデータ
のエラーを検出する転送エラー検出手段と、転送エラー
検出手段と一対一に設けられ、転送エラー検出手段によ
るチェックの結果を保持するエラーステータスレジスタ
と、エラーステータスレジスタの保持内容に従って、メ
モリ装置から読み出したデータのCPUバスへの出力許
否を決定するCPUバス切換え回路とを有するものであ
る。 【0017】本発明によれば、転送エラー検出手段が転
送中のデータのエラーを検出し、エラーステータスレジ
スがその検出結果を保持し、CPUバス切換え回路がエ
ラーステータスレジスタの保持内容に従ってCPUバス
に対するデータの出力許否を決定する。 【0018】 【実施例】実施例1.図1は、本発明の第1実施例に係
る二重化メモリシステムである。図1において、1は処
理装置(CPU)、2は処理装置1が診断等の特殊処理
をするためのプログラムが格納されている制御ROM、
3は処理装置1とシステムバスのやりとりを制御するた
めのシステムバス制御装置、4はメモリ装置、5はシス
テムバス制御装置3に内蔵され、通常動作時にメモリ装
置から読み出したデータを処理装置1に対して送出すべ
きシステムバス制御装置を決定するためのマスタ決定回
路、6はシステムバス制御装置3に内蔵され、メモリ装
置4からの読出しデータのエラーを検出するためのエラ
ー検出回路、7はマスタ決定回路及びエラー検出回路6
の指示に従い処理装置に読出しデータを出力するかどう
かを決定するCPUバス切換え回路である。処理装置1
とシステムバス制御装置3はデータ信号8、低レベル割
込み信号9、高レベル割込み信号10、アドレス信号1
1で構成されるCPUバスで接続され、システムバス制
御装置3及びメモリ装置4は二重化されており各々3
a、3b、4a、4bで示されている。二重化されたシ
ステムバス制御装置は、CPUバス切換え信号線12a
及び12bで接続され、メモリ装置4aはシステムバス
A13aを介してシステムバス制御装置3aに、メモリ
装置4bはシステムバスB13bを介してシステムバス
制御装置3bに接続されている。 【0019】二重化部分は上記のようにA系統とB系統
に分類されているが、以下の説明においては両側を区別
する場合は構成要素番号に各々添え字aあるいはbを付
けて示し、区別しない場合は添え字を付けないで表す。 【0020】図2は、図1中のシステムバス制御装置3
に内蔵されるエラー検出回路6及びCPUバス切換え回
路7の詳細構成を示す。図中13−1はメモリ装置から
読み出されてシステムバス上に送出されたデータ信号
で、データ部32ビットとパリティ部4ビットから構成
される。14はデータ信号13−1をクロック信号15
でラッチしたデータ信号16を出力するデータラッチ回
路、17はデータ信号16をクロック信号15でラッチ
したデータ信号18を出力するデータラッチ回路、19
はデータ信号16のパリティチェックを行うエラー検出
回路、12はエラー検出回路19の出力でエラー検出時
に“1”となるエラー信号線であってCPUバス切換え
信号線として使用され、20はエラー検出回路19の出
力でエラー未検出時“1”となる正常信号線、21はエ
ラー未検出時にCPUバスに読出しデータを送出すべき
システムバス制御装置を選択するマスタモード入力信号
線、22はメモリ装置から有効なデータが送出されてい
ることを示すデータ有効信号線、23はマスタモード入
力信号線21、データ有効信号線22、エラー信号線1
2及び正常信号線20の状態をANDゲート24、25
及びORゲート26によって条件出力された信号をラッ
チする、CPUバス選択ラッチである。29はCPUバ
ス選択ラッチ23の出力信号33とデータ出力タイミン
グクロック信号30の条件によりゲート信号32を生成
するためのANDゲート、31はゲート信号32が
“1”の時にデータ信号18をCPUバスのデータ信号
8として出力し、ゲート信号32が“0”の時にはデー
タ信号8を高インピーダンス状態におく3ステートバッ
ファ、34は他方のシステムバス制御装置からのCPU
バス切換え信号12をプルアップするプルアップ抵抗で
ある。また35はCPUバス切換え信号線12aあるい
は12bのいずれか一方が“1”のときに低レベルの割
込み信号9を生成するEXORゲート、36はCPUバ
ス切換え信号線12a及び12bの両方が“1”のとき
に高レベルの割込み信号10を生成するANDゲートで
ある。EXORゲート35及びANDゲート36によ
り、処理装置に対する2種類の割込み信号が生成され
る。エラーの発生状況とCPUバス切換え信号線12、
割込み信号線9及び10の関係を図3に示す。 【0021】図4は、図2のエラー検出回路及びCPU
バス切換え回路の動作を示すタイミング図で、各々の入
出力信号を対応して示してある。図中でT01ないしT
14はクロック信号15を基準としたクロックサイクル
を示す。 【0022】図5は、データ信号18がゲート信号32
のタイミングによってデータ信号8としてドライブされ
る様子を示す。 【0023】図6は、図1のシステムバス制御装置3内
部のマスタ決定回路5の詳細を示す。図中、37はモー
ドを記憶するフリップフロップで、出力信号線41を出
力する。38はマスタを変更するマスタ変更信号線、3
9及び40は負論理のANDゲート、42は電源投入時
にフリップフロップ37を初期状態にする負論理のリセ
ット信号線である。図2にマスタ決定回路を組み込む場
合、出力信号41がマスタモード入力線21の代わりに
接続される。 【0024】図7は、図6のマスタ決定回路の動作を示
すタイミング図である。 【0025】以上のように構成される二重化メモリシス
テムの概略動作について、図1を用いて説明する。処理
装置1は電源投入後のイニシャル処理において、制御R
OM2に格納されているプログラムを実行し、システム
バス13に接続されているメモリ装置4を診断した後、
ディスク制御装置(図示せず)等の入出力制御装置を介
してOSなどのプログラムをメモリ装置4に読み込み、
以後システムが正常に動作する間、メモリ装置4に格納
されたプログラムを実行する。システムにエラーが検出
されると割込み信号9あるいは10が処理装置1に対し
て出力され、処理装置1が制御ROM2の所定エラー処
理プログラムを実行し、エラー処理完了後メモリ装置4
に格納されたプログラム実行を再開する。 【0026】プログラム実行に伴って処理装置1がメモ
リ装置4にアクセスする際、書込み動作であれば、二重
化されたシステムバス制御装置3a及び3bを介して両
側のメモリ装置4a及び4bに同時に書き込みが行われ
る。読出し動作時は、システムバス制御装置3a、3b
がともにメモリ装置に対して読み出しを指示し、メモリ
装置4a及び4bから同時に読み出しがなされ、システ
ムバスA13a及び13bを介してシステムバス制御装
置3a及び3bに読出しデータを送出する。システムバ
ス制御装置3の内部にはマスタ決定回路5が内蔵されて
おり、エラー検出回路6がメモリ装置から送られてきた
データにエラーの無いことを示せば、マスタに設定され
た側がCPUバスデータ8に読出しデータを送出する。
エラーが検出された場合には、検出した側のシステムバ
ス制御装置が相手側に対してCPUバス切換え信号線1
2を出力し、CPUバス切換え回路7によって正常な側
のシステムバス制御装置がCPUバスデータ8に読出し
データを送出する。 【0027】次にエラー検出回路6とCPUバス切換え
回路7の詳細動作について、図2を用いて説明する。 【0028】図2においてシステムバス制御装置にはマ
スタモード入力信号線21があり、いま仮にシステムバ
ス制御装置3aではマスタモード入力信号線21aが
“1”に、システムバス制御装置3bでは“0”に外部
接続されているものとする。この場合、システムバス制
御装置3aがマスタ、システムバス制御装置3bがスレ
ーブとして動作する。メモリ装置から読み出されたデー
タは、データ有効信号線22とともにシステムバスのデ
ータ信号線13−1としてシステムバス制御装置3に入
力され、システムクロック信号15によってデータラッ
チ回路14にラッチされ、データラッチ回路14の出力
信号線16はパリティ検出等のエラー検出回路19に入
力されるとともに、データラッチ回路17に供給され
る。前述のデータ信号線13−1は、データ部32ビッ
トとパリティ部4ビットで構成され、データが正常な場
合、エラー検出回路19は正常信号線20を“1”、C
PUバス切換え信号線12を“0”、エラーが検出され
た場合は両信号ともその逆の論理で出力する。 【0029】いまデータが正常であるとすれば、マスタ
側のシステムバス制御装置3aにおいて正常信号線20
aは“1”であり、ANDゲート24aを経由してOR
ゲート26aの出力が“1”になる。システムクロック
信号線15aのタイミングでCPUバス選択ラッチ23
aは“1”にセットされ、ANDゲート29aによって
データ出力タイミングクロック信号30aが“1”の期
間に限ってCPUデータバスの3ステートバッファ31
aのゲート信号32aが“1”となり、データラッチ回
路17aの出力信号線18aの内容がCPUバスにデー
タ信号線8として出力される。 【0030】一方、データにエラーが検出された場合
は、正常信号線20aが“0”になり、ゲート信号32
aが“0”となる結果、システムバス制御装置3aがC
PUバスにデータを出力することはない。 【0031】つぎにスレーブ側の動作を説明する。 【0032】データにエラーが検出されない場合、スレ
ーブ側のシステムバス制御装置3bにおいて正常信号線
20bは“1”であるが、マスタモード入力信号線21
bが“0”のためANDゲート24bは“0”となり、
しかもマスタ側のシステムバス制御装置3aからのCP
Uバス切換え信号線12aも“0”であるため、ORゲ
ート26bの出力も“0”となる。その結果、CPUデ
ータバスの3ステートバッファ31bのゲート信号32
bが“0”になり、システムバス制御装置3bはCPU
バスにデータを出力しない。ここで仮に、マスタ側のシ
ステムバス制御装置3aでエラーが検出されると、CP
Uバス切換え信号線12aが“1”となってANDゲー
ト25b及びORゲート26bの出力が“1”となり、
マスタ側のシステムバス制御装置3aに代ってスレーブ
側のシステムバス制御装置3bがCPUバスにデータ信
号線8を出力する。このためメモリ装置のみならず、シ
ステムバスレベルでの二重化が可能となる。 【0033】次に処理装置1に対する割込み信号線9及
び10の生成について、図3を用いて説明する。 【0034】EXORゲート35及びANDゲート36
は、CPUバス切換え信号12a及び12bの組合せに
よって割込み信号線9及び10の状態を決定する。メモ
リ装置4からの読出しデータが両側とも正常な場合、割
込み信号線9、10ともインアクティブになる。どちら
か一方でエラーが検出されるとEXORゲート35によ
って低レベルの割込み信号線9がアクティブになり、両
側でエラーが検出されるとANDゲート36によって高
レベルの割込み信号線10がアクティブになる。 【0035】これら二種類の割込みによる処理装置1の
動作について説明する。 【0036】低レベルの割込みは、エラーの検出にも拘
らず処理装置1に正しいデータが送らた、いわゆる軽障
害の発生を示す。処理装置1はそのまま通常のプログラ
ムを実行し、プログラムの切れ目(通常はタスクスイッ
チのタイミング)でエラー処理を行う。一方、高レベル
の割込みは、処理装置1に正しいデータが送られなかっ
た重障害を示し、処理装置1が直ちにエラー処理を行う
べき場合に使用する。 【0037】図2中のプルアップ抵抗34の役割につい
て説明する。この抵抗は修理交換によって一方のシステ
ムバス制御装置、例えばマスタ側のシステムバス制御装
置3aを取り外した際に意味を持つ。このときエラー検
出回路19aの出力信号がドライブされなくなるので、
システムバス制御装置3bに内蔵されるプルアップ抵抗
34bがCPUバス切換え信号線12aを“1”にレベ
ル固定する。これはマスタ側のシステムバス制御装置3
aがデータエラーを検出した状態と同じであり、結果と
してスレーブ側のシステムバス制御装置3bがデータを
送出する。 【0038】以上説明したシステムバス制御装置3のエ
ラー検出回路6及びCPUバス切換え回路7の動作を、
連続する8ワードデータの読み出し中にエラーが検出さ
れた場合を例に、図4を用いて説明する。 【0039】図において白丸数字のデータはメモリ装置
4aから読み出されたデータ、黒丸数字のデータはメモ
リ装置4bから読み出されたデータを示し、T01ない
しT14のタイミングに従い、システムクロック信号線
15によって、システムバス制御装置内部はクロック同
期で動作する。図はマスタ側のシステムバス制御装置3
aで3ワード目、スレーブ側のシステムバス制御装置3
bでは5ワード目にエラーが検出された時の、CPUバ
ス切換え信号線12、ゲート信号32、CPUデータバ
ス信号8、低レベル割込み信号線9の様子を示す。図に
おけるタイミングには、ラッチやゲートによる信号の遅
れが考慮され、例えばデータラッチ14の出力信号線1
6はシステムクロック15の上昇エッジより若干遅れて
出力されおり、より現実的なタイミングを示すものであ
る。 【0040】1及び2ワード目はデータのエラーが検出
されず、マスタ側のシステムバス制御装置3aのゲート
信号32aが“1”となり、CPUデータバス8にはT
03及びT04のタイミングでシステムバス制御装置3
aのデータ、すなわちメモリ装置4aからの読出しデー
タが出力される。 【0041】3ワード目でエラーが検出されると、T0
4のタイミングでエラーを検出し、CPUバス切換え信
号線12aが“1”になり、T05のタイミングではス
レーブ側のシステムバス制御装置3bのデータ、すなわ
ちメモリ装置4bからの読出しデータが出力され、同時
に低レベルの割込み信号9が出力される。 【0042】4ワード目では両側で正常なデータが検出
されるので、CPUバスの切り換えは発生せず、デフォ
ルト的に設定されたマスタ側のデータがT06のタイミ
ングで出力される。 【0043】5ワード目のデータは、スレーブ側でエラ
ーが検出されるがマスタ側は正常であり、CPUバスの
切り換えは発生せず、そのままマスタ側のデータがT0
7のタイミングで出力される。 【0044】図4に示す通り、マスタ側でエラーが検出
されない限り、常にマスタ側に接続されているメモリ装
置の読出しデータが処理装置1に出力され、エラーが検
出されたときに限ってスレーブ側に接続されたメモリ装
置の読出しデータが処理装置1に出力される。従って、
切り換えが発生しても、処理装置には正常なデータが同
一タイミングで供給されることになる。 【0045】また図4に例示するごとく、3ステートバ
ッファのゲート信号線32は、転送サイクルのうち一部
分しか“1”の状態にされていない。全期間“1”にす
ると、CPUバス切り換え時に素子の遅延によって、短
時間であるが両側の3ステートバッファの出力が衝突し
うるためである。図5に示すように、データはドライブ
の終了後も配線の浮遊容量によってデータバス上に一定
期間保持されるため、設計上必要なドライブ時間を決め
ることができる。 【0046】なお、図2ではマスタモード切換え信号線
を直接システムバス制御装置3のマスタ切り換えとして
使用したが、図6に示すマスタ決定回路を付加すること
により、処理装置1によってマスタモードを切り換える
ことができる。マスタ切換え回路の動作を図6ないし図
7を使用して説明する。 【0047】図7において、電源投入時にはタイミング
T20でリセット信号線42によって、マスタフリップ
フロップ37がマスタモード切換え信号線21の状態に
従ってセット/リセットされ、システムバス制御装置3
aのマスタモード出力信号線41aは“1”に、システ
ムバス制御装置3bのマスタモード出力信号線41bは
“0”に設定される。処理装置1からのマスタ切換え信
号線38によりT21で各々のマスタフリップフロップ
37は同期して反転し、システムバス制御装置3aのマ
スタモード出力信号線41aは“0”に、システムバス
制御装置3bのマスタモード出力信号線41bは“1”
に設定される。このマスタモード出力信号線41を図2
のマスタモード入力信号線21として使用することによ
り、システムバス制御装置3のモードを切り換えること
が可能になる。 【0048】実施例2.図8は本発明の第2実施例に係
る二重化メモリシステムで、第1実施例にCPUデータ
バスのチェック機能を追加し、さらに信頼性を高めたも
のである。 【0049】図8において50はCPUバスデータ8を
システムバス制御装置内部に取り込むためのデータレシ
ーバ回路、51はデータラッチ回路17の出力信号線1
8とデータレシーバ回路50の出力信号線55を比較す
るデータ比較回路、53はデータ比較回路51の比較結
果が不一致のときに“1”を出力する出力信号線、54
は3ステートバッファである。 【0050】図9は、データ読み出しがシステムバス制
御装置3aの側から行われたとして、図8の回路のある
部分が故障した時に各々のデータ比較回路51の信号
線、CPUバスデータ8の正常性、及び高レベルの割込
み信号線10の関係を示す図である。 【0051】図10は本発明の第2実施例の変型で、各
々のデータ比較回路51の出力信号線53をそのままシ
ステムバス制御装置の外部に出力し、AND回路56と
EXOR回路57で低レベルの割込み信号9及び高レベ
ルの割込み信号10を生成するように構成したものであ
り、同様に図11は図10の回路のある部分が故障した
時に各々のデータ比較回路51の出力信号線と、CPU
バスデータ8の正常性と、低レベルの割込み信号9と高
レベルの割込み信号線10の関係を示す図である。図1
1においても、データ読み出しはシステムバス制御装置
3aの側から行われたものとしている。 【0052】以上のように構成されるシステムバス制御
装置のCPUデータバスの比較動作について図8を用い
て説明する。 【0053】二重化メモリ装置から読み出されたデータ
は一旦データラッチ17にラッチされ、比較回路51と
3ステートバッファで構成されるドライバ回路31に供
給され、マスタ側のシステムバス制御装置3aは実施例
1の動作に従ってドライバ回路31aを介してデータを
CPUバスに出力する。またCPUバスのデータ信号8
はレシーバ回路50を通して両側のシステムバス制御装
置3内部に取り込まれ、比較回路51に入力される。比
較回路51ではデータラッチ17の出力とレシーバ回路
50の出力を比較し、一致なら“0”、不一致なら比較
エラー信号線53を出力する。ところでマスタ側のシス
テムバス制御装置3aのマスタモード出力信号線41a
は“1”に設定されているので、3ステートバッファ5
4aのイネーブル信号は、NOT回路52aにより反転
され“0”が与えられるため、エラー信号線53aは外
部に出力されない。一方、スレーブ側のシステムバス制
御装置3bのマスタモード出力信号線41bは“0”に
設定されているので、3ステートバッファ54bのイネ
ーブル信号は、NOT回路52bにより反転され“1”
が与えられるため、エラー信号線53bは3ステートバ
ッファ54bを介して出力され、高レベルの割込み信号
線10として処理装置1に通知される。 【0054】次に、図9を用いてデータ転送経路の途中
が故障した時の比較エラー信号線53、CPUデータバ
ス8の正当性、及び割込み信号線10の関係を説明す
る。この例では故障箇所として、データラッチ17、比
較回路51、ドライバ回路31、及びレシーバ回路50
が各々故障した時を示しており、全てが正常な場合は当
然のことながらCPUデータバスには正しいデターが出
力されており、割込みも発生しない。データラッチ17
aあるいはドライバ回路31aが故障すると間違ったデ
ータがCPUデータバスに出力され、これがスレーブ側
の比較回路でエラー検出されて高レベルの割込みが発生
し、読出しデータのエラーを処理装置1に知らせる。処
理装置1は制御ROM2に格納されたエラー解析処理を
実行することにより、例えばマスタ切換え信号線38を
出力し、システムバス制御装置3aから3bに変更して
再度メモリ装置からデータを読み出し、正常であればデ
ータラッチ17aあるいはドライバ回路31aの故障を
検出できる。以降、システムバス制御装置3bがマスタ
側として動作することになる。 【0055】マスタ側のレシーバ回路50aあるいは比
較回路51aが故障した時は、比較エラー信号線53a
は内部的には出力されるが、割込み信号線10が出力さ
れず、動作に影響しない。このとき、CPUデータバス
8には正常なデータが出力されるため、問題はない。一
方、スレーブ側のレシーバ回路50b、比較回路51b
またはデータラッチ17bのいずれかが故障したとき、
マスタ側から正しいデータがCPUデータバスに出力さ
れるにも拘らず、比較エラー信号線53bが“1”とな
って高レベル割込み信号線10が出力される。このとき
にも処理装置1がマスタ切換え信号線を出力するためシ
ステムバス制御装置3b側にマスタが切り換わるが、こ
のスレーブ側の故障による不要な切換えを防ぐために
は、以下の方法を用いればよい。すなわち、システムバ
ス制御装置内のエラー信号線53の状態をステータスレ
ジスタ(図示せず)に記憶させ、処理装置1が制御RO
M2に格納されたエラー処理を実行する時に、このステ
ータスレジスタの内容を調べる。この際、マスタ側でエ
ラーが発生していない場合はマスタ切換えを行なわない
ように制御すればよい。 【0056】なお図9では、データ読み出しがシステム
バス制御装置3aの側から行われたと想定とするため、
比較エラー信号線53bと高レベルの割込み信号線10
の論理は常に一致する。これは図8において、比較エラ
ー信号線53bが高レベルの割込み信号線10として出
力されるためである。このことは図9で#B_ ERR
ORとHINTRの欄の論理が一致することによって示
されている。 【0057】次に、比較エラー信号線53を両側のシス
テムバス制御装置3から出力し、これらの組合せで2種
類の異なるレベルの割込みを発生させる例を、図10な
いし図11で説明する。図10と前述の図8との相違
は、比較回路51の出力を両側外部に出力し、これらを
ANDゲート及びEXORゲートによって処理装置1に
対する割込み信号として生成する点にある。 【0058】図11によるドライバ回路31aが故障し
た時には、両側の比較エラー信号線53が“1”となり
高レベルの割込み信号線10が出力され、それ以外の部
分の故障では低レベルの割込み信号線9が出力される。
CPUデータバスに出力されるデータの正常性判断とい
う意味では、データラッチ17aの故障の場合も高レベ
ルの割込み信号線10が出力されるべきだが、これは実
施例1のようにデータラッチ17の出力にもパリティ検
査回路を付加し、スレーブ側からデータを切り換えて出
力することで解決を図るものとする。これらの結果、C
PUデータバスに出力されているデータが正常な限りは
低レベルの割込み信号、異常な場合に限って高レベルの
割込み信号を出力することができる。 【0059】実施例3.図12は、本発明の第3実施例
に係る二重化メモリシステムである。図において60
は、システムバス制御装置3に内蔵されるCPUデータ
バス側のドライバ/レシーバ、61はシステムバス側の
ドライバ/レシーバ、62はメモリ装置4に内蔵される
ドライバ/レシーバ、63は処理装置1に内蔵されるパ
リティ生成回路、64はシステムバス制御装置3に内蔵
されるCPUデータバス側のパリティ検査回路、65は
システムバス制御装置3に内蔵されるシステムバス側の
パリティ検査回路、66はメモリ装置4に内蔵されるパ
リティ検査回路、67ないし69は各々パリティ検査回
路64ないし66の結果を格納するステータスレジス
タ、70はシステムバス制御装置内部バス、71はメモ
リ、72はメモリ装置4の内部バスである。 【0060】図13は、図12のシステムにおけるメモ
リへの書込み動作時のエラー解析を、同様に図14はメ
モリから読出し動作時のエラー解析を示す図であり、ス
テータスレジスタで○印はエラー未検出を、×印はエラ
ー検出を示す。 【0061】以上のように構成される二重化メモリシス
テムの動作を、図12を用いて説明する。まず処理装置
1がメモリ装置4にデータを書き込む時は、処理装置内
部に、例えばパリティコード等のエラー検査コードを生
成し、これをCPUデータバス8に出力する。システム
バス制御装置3は処理装置1が出力したパリティ付きデ
ータをレシーバ回路60で受け取り、このデータのパリ
ティチェックをパリティ検査回路64で行い、結果をス
テータスレジスタ67に格納し、レシーバ60で受け取
ったデータは内部バス70を通ってシステムバス側のド
ライバ回路61に供給され、システムバス13に出力さ
れる。ドライバ回路の直前にはパリティ検査回路65が
あり、チェック結果は同様にステータスレジスタ68に
格納される。さらにメモリ装置4は、システムバス13
からのデータをレシーバ回路62を介して受け取り、パ
リティ検査回路66によるパリティチェックをなし、結
果をステータスレジスタ69に格納し、同時にメモリ7
1にはメモリ装置内のデータバス72の内容をそのまま
データ部とチェックコード部として書き込む。書込み時
のデータ経路のどこかでエラーが検出されると処理装置
1に対して割込みが発生し(割込み信号線は図示せ
ず)、処理装置1は制御ROM2に格納されているエラ
ー解析プログラムを実行し、故障箇所を特定する。 【0062】次に書込み時のエラー検出結果が格納され
ているステータスレジスタ64ないし66の内容と、故
障の解析例を図13により説明する。故障の発生確率は
回路規模に基づき、メモリが1万分の1、バスが10万
分の1、パリティ生成/検査回路及びドライバ/レジー
バが100万分の1と想定し、例えばメモリとパリティ
検査回路の2重故障は1万×100万=100億分の1
と仮定する。図13は、考えられる故障原因のうち故障
の発生確率が最も大きい組合せを原因と推定して作成さ
れている。故障はステータスレジスタの組合せにより8
種類が考えられ、ケース1はエラーが発生していない状
態である。ケース2はシステムバス制御装置の内部バス
70までは正常なため、システムバス13、ドライバ回
路61、メモリ装置のレシーバ回路62、またはパリテ
ィ検査回路66いずれかの故障が考えられるが、故障の
発生確率を比較して、システムバス13の故障と推定さ
れる。ケース3では経路途中のパリティ検査回路65だ
けがエラーを検出しているため、このパリティ検査回路
65のみの故障と推定する。このケースでは、パリティ
検査回路64及び66が故障で、65のみが正しい事態
もありうるが、ケース2同様、故障の発生確率から判断
する。以下のケースも同様に考えればよい。 【0063】続いてメモリ装置4からの読出し時の動作
を図12を用いて説明する。メモリ71にはデータ部と
エラーチェックコード部が格納されており、読み出され
たパリティ付きのデータは、パリティ検査回路66でパ
リティチェックされて結果がステータスレジスタ69に
格納され、続いてドライバ回路62を介してシステムバ
ス13に出力され、システムバス制御装置3がレシーバ
回路61を通してこれを受け取り、パリティ検査回路6
5によるパリティチェックの結果をステータスレジスタ
68に格納する。さらにCPUバスのドライバ回路60
直前のパリティ検査回路64によるパリティチェックの
結果がステータスレジスタ67に格納される。システム
バス制御装置3では、データにパリティエラーが検出さ
れると、実施例1の動作に従いエラーを検出していない
側のシステムバス制御装置が処理装置1に対してデータ
を送出する。 【0064】読出し時のエラー検出結果が格納されてい
るステータスレジスタ64ないし66の内容と、故障の
解析例を図14により説明する。図14においても、考
えられる故障箇所の組合せのうち、最も確率の高いもの
を原因としている。ケース8はメモリ71からの読み出
し直後からエラーが検出されているので、メモリ71の
故障または書込み時のデータ経路でのエラーが考えられ
るが、確率を比較して、前者の故障と判定する。ケース
7ではメモリから読み出した時点では正しく、その後エ
ラーが検出されているのでシステムバス13の故障、ケ
ース6ではパリティ検査回路65及びメモリ71の故障
と考えられる。以下のケースも同様に考えればよい。 【0065】実施例4.図15は、本実施例の第4の実
施例に係る二重化メモリシステムである。図において8
0は、システムバス制御装置3の内部にあってシステム
バスに送出するデータのエラーを検出するエラー検出回
路、81はエラー検出回路80の結果を相手側のシステ
ムバス制御装置に伝えるシステムバス切換え信号線、8
2は相手からのシステムバス切換え信号線81と内部の
エラー検出回路80の結果によって動作する、システム
バスを切り換えるためのシステムバス切換え回路、85
はメモリ装置4の内部にあってメモリ71から読み出し
たデータのエラーを検出するエラー検出回路、84はエ
ラー検出回路85の結果を相手側のメモリ装置に伝える
メモリエラー検出信号線、83は相手からのメモリエラ
ー検出信号線84と内部のエラー検出回路85の結果に
よって動作する、システムバスを切り換えるためのシス
テムバス切換え回路である。 【0066】図16は、図15中のシステムバス切換え
回路82及びエラー検出回路80における出力データ切
り換えの概念を示す図で、図において94はシステムバ
ス制御装置内部のデータバス70の内容を記憶するデー
タラッチ、90はシステムバスAにデータを送出するシ
ステムバスA用3ステートバッファ、91はシステムバ
スBにデータを送出するシステムバスB用3ステートバ
ッファ、86はシステムバスA用3ステートバッファ9
0の出力許可信号を生成するANDゲート、87はシス
テムバスB用3ステートバッファ91の出力許可信号を
生成するANDゲート、95は3ステートバッファ90
及び91双方の出力許可信号を生成するANDゲート、
92はシステムバス切換え信号線81a及び81bの組
合せにより低レベルの割込みを発生させるEXORゲー
ト、同様に93は高レベルの割込みを発生させるAND
ゲートである。 【0067】また図17は、図15中のシステムバス切
換え回路83及びエラー検出回路85における入力デー
タ切り換えの概念を示す図で、図において98はシステ
ムバスA13aからデータをメモリ装置4に取り込むレ
シーバ回路、99はシステムバスB13bからデータを
メモリ装置4に取り込むレシーバ回路で、各々入力デー
タ信号76及び77を出力する。83は入力データ信号
のパリティチェック等を行うエラー検出回路、73はエ
ラー検出回路の結果により正しいデータを選択してメモ
リの内部バス72に出力する選択回路である。NOTゲ
ート74の出力信号である入力切換え信号78が“1”
のときは入力データ線76を選択し、ANDゲート75
の出力信号である入力切換え信号線79が“1”のとき
は入力データ線77を選択するように構成されている。 【0068】図18は、処理装置1からメモリ装置4へ
の書込み時にデータバスの途中が故障した時のシステム
バス切換え回路82及び85によるバスの切り換えの様
子を示す図で、(A)は全て正常な状態、(B)はCP
Uバス切換え回路7a内部のレシーバが故障した状態、
(C)はシステムバスA13aが故障した状態、(D)
はシステムバス切換え回路82bのドライバが故障した
状態でのデータの流れを示している。図中破線で示され
ているデータの流れは各々の3ステートバッファが閉じ
た状態で、実際のデータは出力されない。 【0069】同様に図19は、処理装置1がメモリ装置
4からの読出し時にデータバスの途中が故障した時のC
PUバス切換え回路7、システムバス切換え回路82及
び85によるバスの切り換えの様子を示す図で、(A)
は全て正常な状態、(B)はシステムバス切換え回路8
2a内部のレシーバが故障した状態、(C)はシステム
バスA13aが故障した状態、(D)はメモリ装置4に
内蔵されているメモリ71aが故障した状態でのデータ
の流れを示している。 【0070】以上のように構成される二重化メモリシス
テムの概略動作について、図15を用いて説明する。処
理装置1がメモリ装置4に書き込みを行う時、処理装置
1からの書込みデータは、CPUデータバス8として二
重化されたシステムバス制御装置3の各々に供給され、
システムバス制御装置はシステムバス13に書込みデー
タを送出する直前にエラー検査回路80でデータのパリ
ティチェックを行い、その結果をシステムバス切換え信
号線81として相互に交換しており、エラーが検出され
ない時、マスタ側のシステムバス制御装置3aはシステ
ムバスA13aに、スレーブ側のシステムバス制御装置
3bはシステムバスB13bに、各々データを出力す
る。エラーが検出されると、前述のシステムバス切換え
信号線81が“1”になり、システムバス切換え回路8
2によってエラーを検出した側のシステムバス13への
出力を停止し、代わって相手側のシステムバス制御装置
が両側のシステムバスに書込みデータを出力する。また
メモリ装置4ではシステムバスに出力されている書込み
データを両側のシステムバス13から取り込み、エラー
検出回路85でパリティチェックを行い、エラーの発生
していないシステムバスのデータをメモリ71に書き込
む。 【0071】また、メモリ装置4からの読出し時には、
二重化されたメモリ71から読み出されたデータについ
て、内部のエラー検出回路85でパリティチェックを行
い、その結果をメモリエラー信号線84として出力して
相互通知しており、エラーがなければメモリ装置4aは
システムバスA13aに、メモリ装置4bはシステムバ
スB13bにデータを送出し、エラーが発生すると、発
生した側のメモリ装置はシステムバス切換え回路83に
よりシステムバスへのデータ出力が停止され、相手側の
メモリ装置が両側のシステムバスに読出しデータを出力
する。またシステムバス制御装置3は両側のシステムバ
スからデータを取り込み、エラー検出回路6でパリティ
チェックを行い、その結果をCPUバス切換え信号線と
して出力して相互通知しており、エラーがなければマス
タ側のシステムバス制御装置3aがCPUデータバス8
に読出しデータを出力し、エラーが検出されると検出し
た側のシステムバス制御装置はCPUバス切換え回路7
によりデータ出力が停止され、相手側のシステムバス制
御装置が代わって出力する。 【0072】まず、処理装置1からメモリ装置4にデー
タを書き込む時の詳細動作を、図16により説明する。
処理装置からの書込みデータは内部バス70を通ってデ
ータラッチ94にラッチされるとともに、エラー検出回
路80によりパリティチェックが行われる。データラッ
チ94の出力信号は3ステートバッファで構成される出
力バッファ90と91に供給されており、3ステートバ
ッファのゲート信号はマスタモード入力信号線21とシ
ステムバス切換え信号線81a及び81bとデータ出力
タイミングクロック信号30により制御されている。エ
ラー検出回路80a及び80bでエラーが検出されてい
ない時は、マスタ側のシステムバス制御装置3aでAN
Dゲート86aの出力が“1”、ANDゲート87a及
び95aの出力が“0”になっており、ORゲート96
aの出力信号が“1”、ORゲート97aの出力が
“0”になり、出力バッファ90a経由でシステムバス
A13aにデータを出力する。一方スレーブ側のシステ
ムバス制御装置3bではANDゲート86b及び95b
の出力が“0”、ANDゲート87bの出力が“1”に
なっており、ORゲート97bの出力が“1”、ORゲ
ート96bの出力が“0”になり、出力バッファ91b
経由でシステムバスB13bにデータを出力する。 【0073】ところで、システムバス制御装置3aでデ
ータのエラーが検出され、エラー検出回路80aの出力
81aが“1”になると、ANDゲート86aの出力は
“0”となり出力バッファ90aの出力は停止され、一
方システムバス制御装置3bは相手からのシステムバス
切換え信号線81aが“1”になることで、ANDゲー
ト95bの出力が“1”になり、出力バッファ90bの
出力も許可状態になり、システムバスA13a及び13
bの両側にデータを出力する。 【0074】さらに、メモリ装置4では図17に示した
ように、両側のシステムバスのデータをレシーバ回路9
8及び99により内部に取り込み、エラー検出回路83
でパリティチェックを行っており、エラーが検出されな
い場合はエラー検出回路83−1の出力は“0”、入力
データ切換え信号線78が“1”になり、システムバス
A13aのデータを内部バス72に選択出力する。一方
システムバスA13aの故障が発生するとエラー検出回
路83−1の出力が“1”、入力データ切換え信号線7
8が“0”、入力データ切換え信号線79が“1”にな
ることにより、システムバスB13bのデータを内部バ
ス72に選択出力する。 【0075】ところで、エラー検出回路83−1及び8
3−2の両方でエラーが検出されると(例えばシステム
バス13aが故障し、更にマスタ側のレシーバ回路99
aが故障した場合)、入力データ切換え信号線78及び
79の双方が“0”となり、選択回路73aはいずれの
システムバスも選択できない状態になる。このときメモ
リ71aに不正なデータ(これはエラーとして検出する
ことができない)が書込まれため、読み出し時に不正な
データが処理装置1に送出される事態が発生しうる。こ
れを回避するには以下の方法によればよい。つまり、い
ずれのシステムバスも選択できない時、メモリの内部バ
ス72aにエラーとなるデータ(例えば偶数パリティの
場合は全て“1”のデータ、奇数パリティの場合は全て
“0”のデータ)を生成するように選択回路73を構成
し、強制的にエラーデータをメモリに書き込む。この結
果、読み出し時には実施例1の動作によりスレーブ側の
システムバス制御装置3bが正しい読み出しデータを処
理装置1に送出することができる。 【0076】再び図15で説明する。処理装置1がメモ
リ装置4からデータを読み出す時の動作は、メモリ装置
内部にもシステムバス制御装置3における図16と同様
な回路が組み込まれており、メモリから読み出されたデ
ータにエラーがなければ、メモリ装置4aはシステムバ
スA13aに読出しデータを出力し、メモリ装置4bは
システムバスB13bに読出しデータを出力する。一
方、メモリ装置4bに内蔵されるメモリ71bの読出し
データにエラーが検出されると、メモリ装置4bの出力
バッファのデータ出力は停止され、メモリエラー検出信
号線84bが相手側のメモリ装置4aに出力され、この
信号によりメモリ装置4aが両側のシステムバスにデー
タを出力する。またシステムバス制御装置3の内部には
メモリ装置4と同様な入力データ選択回路があり、通常
はシステムバスA13aからの読出しデータを内部バス
に出力しているが、システムバスA13a側でエラーが
検出されると、システムバスB13bの読出しデータを
内部バスに出力する。 【0077】以上のように二重化されたメモリシステム
において、構成要素の一部が故障した場合のデータ切り
換えの様子を、書込み動作時について図18により説明
する。 【0078】(A)全て正常な状態では、処理装置1か
らの書込みデータは、システムバス制御装置3aからシ
ステムバスA13a、システムバス制御装置3bからシ
ステムバスB13bに出力され、メモリ装置4はシステ
ムバスA13aのデータを書込みデータとして選択し、
メモリ71に書き込む。 【0079】(B)CPUバス切換え回路7a内部のレ
シーバが故障した状態では、システムバス制御装置3a
からシステムバス切換え信号線81aが出力され、シス
テムバス制御装置3aの出力バッファが閉じて、代わり
にシステムバス制御装置4bが両側のシステムバスにデ
ータを出力し、メモリ装置4はシステムバスA13aの
データを書込みデータとして選択し、メモリ71に書き
込む。 【0080】(C)システムバスA13aが故障した状
態では、メモリ装置4はシステムバスB13bのデータ
を書込みデータとして選択し、メモリ71に書き込む。 【0081】(D)システムバス切換え回路82bのド
ライバが故障した状態では、システムバスB13bには
正しいデータが出力されていないが、メモリ装置4はシ
ステムバスA13aのデータを書き込むので影響はな
い。 【0082】読出し動作時について、図19により説明
する。 【0083】(A)全て正常な状態では、メモリ71か
ら読み出されたデータは、メモリ装置4aからシステム
バスA13aに、メモリ装置4bからシステムバスB1
3bに出力され、システムバス制御装置3aがCPUバ
スに読出しデータを送出する。 【0084】(B)システムバス切換え回路82a内部
のレシーバが故障した状態では、システムバス制御装置
3aのエラー検出回路でエラーが検出され、CPUバス
切換え信号線12aが出力され、この信号線によってシ
ステムバス制御装置3bがCPUバスにデータを出力す
る。 【0085】(C)システムバスA13aが故障した状
態では、システムバス制御装置内でシステムバスA13
aのエラーが検出され、システムバスB13bの読出し
データを入力データとして使用し、システムバス制御装
置3aがCPUバスにデータを送出する。 【0086】(D)メモリ装置4に内蔵されているメモ
リ71aが故障した状態では、メモリ装置4a内部のエ
ラー検出回路によりエラーが検出され、メモリエラー検
出信号線84aを出力し、この信号によりメモリ装置4
bが両側のシステムバスに読出しデータを送出し、シス
テムバス制御装置3aがCPUバスにデータを送出す
る。 【0087】実施例5.図20は、本発明の第5実施例
に係る二重化メモリシステムである。図において、10
0はシステムバス制御装置3に内蔵されCPUバスのモ
ードを設定するモード設定回路、101はシステムバス
のモードを設定するモード設定回路、102はメモリ装
置4に内蔵されてシステムバスのモードを設定するモー
ド設定回路、104はシステムバス制御装置3に内蔵さ
れて二重化されたシステムバスのデータを比較する比較
回路、105はメモリ装置4に内蔵されて二重化された
システムバスのデータを比較する比較回路である。 【0088】図21はシステムバス制御装置3内部にあ
ってCPUバスの制御を行う回路の概念を示した図であ
り、モード設定回路100、データラッチ17、比較回
路51、ドライバ31及びレシーバ50で構成され、モ
ード決定回路から出力されるAバス許可信号線106に
より、CPUバスのデータ出力を制御する。 【0089】図22は同様に、システムバス制御装置3
内部にあってシステムバスの制御を行う回路の概念を示
した図であり、システムバスAはAバス許可信号線10
6により、システムバスBはBバス許可信号線107に
より、システムバスのデータ出力を制御する。 【0090】図23は、図20におけるモード設定回路
101の詳細を示す図(100、102も同様)であ
る。図において、120はモード設定データ信号線、1
21はマスタモード入力線21に従ってモード設定デー
タ信号を選択するためのセレクタ回路、122はセレク
タ回路121の出力信号線、123はAバスのモードを
記憶するモードラッチ、125はBバスのモードを記憶
するモードラッチで、モード設定信号線103によりセ
レクタ回路の出力信号線122の内容を記憶し、各々の
モード出力信号線124、126は後段のANDゲート
とORゲートの組合せにより、最終的な出力信号であ
る、Aバス許可信号106及びBバス許可信号107を
出力する。 【0091】図24は、図23におけるモード設定回路
の動作シーケンスを示す図で、T100はリセットタイ
ミング、T101及びT104はモード設定タイミン
グ、T102はシステムバス制御装置3a側でエラーを
検出したタイミング、T103はエラーが回復したタイ
ミングを示している。 【0092】また図25は、実際の運用時のメモリ装置
4の動作とモードの関係を示したもので、(A)は全体
の流れ、(B)は診断動作(処理142)の詳細を示し
ており、図24との関係は、電源投入処理140がT1
00に、モード変更処理143がT101に、故障発生
145がT102に、モード変更処理146がT104
に、各々対応する。 【0093】以上のように構成される二重化メモリシス
テムの概略動作について、図20を用いて説明する。モ
ード設定回路100ないし102には独立してモード
A、B、C、Dの4種類のモードが設定できるようにな
っており、モード設定回路100はシステムバス制御装
置3がCPUデータバス8に読出しデータを出力する制
御を、モード設定回路101はシステムバス制御装置3
がシステムバスに書込みデータを出力する制御を、モー
ド設定回路102はメモリ装置4がシステムバスに読出
しデータを出力する制御を行う。システムバス制御装置
3によるCPUデータバスへのデータの出力制御は、モ
ード設定回路100の状態、システムバス制御装置3の
内部にあるエラー検出回路6によるエラー検出の状況、
相手からのCPUバス切換え信号線12によって制御さ
れる。システムバス制御装置3によるシステムバスへの
データの出力制御は、モード設定回路101の状態、シ
ステムバス制御装置3の内部にあるエラー検出回路80
によるエラー検出の状況、相手からのシステムバス切換
え信号線81により制御される。またメモリ装置4によ
るシステムバスへのデータの出力制御は、モード設定回
路102の状態、メモリ装置4の内部にあるエラー検出
回路85によるエラー検出の状況、相手からのシステム
バス切換え信号線84によって制御される。 【0094】また各々のバスの出力回路には、バスの内
容を比較し、その結果を外部に出力して割込み信号線を
生成するための比較回路があり、CPUバス側では出力
の直前のデータと、出力されたデータを再度入力して比
較しており、システムバス側では2つのシステムバスの
内容を比較している。 【0095】次にシステムバス制御装置3のCPUバス
側の詳細動作について、図21を参照して説明する。通
常の動作ではモード設定回路100aはモードAに、モ
ード設定回路100bはモードBに設定されており、メ
モリ装置から読み出されたデータはシステムバス制御装
置3の内部バス70を介してデータラッチ17にラッチ
されるとともに、エラー検出回路6でパリティチェック
が行われる。モードAのシステムバス制御装置3aで
は、エラー検出回路6aでエラーが検出されていなけれ
ばモード設定回路100aの出力106aが“1”にな
り、読出しデータはドライバ回路31aからCPUデー
タバス8に出力される。エラーが検出されるとモード設
定回路100aの出力106aが“0”になってデータ
の出力を停止するとともに、CPUバス切換え信号線1
2aに“1”が出力される。 【0096】モードBのシステムバス制御装置3bで
は、相手からのCPUバス切換え信号線12aが“0”
であればモード設定回路100bの出力106bが
“0”になってCPUデータバスにはデータを出力しな
いが、エラー検出回路6bでエラーが検出されていない
時に、相手からのCPUバス切換え信号線12aが
“1”になると、モード設定回路100bの出力106
bが“1”になり、読出しデータをCPUデータバス8
に出力する。またシステムの電源投入時には、両側のモ
ード設定回路100ともモードDに設定され、モード設
定回路100の出力106は常に“0”となり、このシ
ステムバス制御装置がCPUデータバスに読出しデータ
を出力することはない。(ここで注意すべきは、CPU
バスはシステムバスのように二重化されていないため、
モードA、Bのシステムバス制御装置の一方に限ってC
PUデータバスに出力が許可されることである。このた
め、モードA、Bは後述するシステムバスの制御におけ
るそれらと意味が異なる。同じ理由から、CPUバスの
制御ではモードCが使用されることはない。) 【0097】モードAのシステムバス制御装置3aはさ
らに、自分の出力データをレシーバ回路50aを介して
入力し、この入力信号線55aとデータラッチ17aの
出力信号線18aを比較しており、モードBのシステム
バス制御装置3bは、相手の出力データをレシーバ回路
50bを介して入力し、この入力信号線55bとデータ
ラッチ17bの出力信号線18bを比較している。比較
結果が異なっていると比較エラー信号線53が“1”に
なり、この信号をモードBのシステムバス制御装置3b
が3ステートバッファ54bを介して外部に出力し、高
レベルの割込み信号線10として処理装置1に通知さ
れ、処理装置は前述の図9のようなエラー解析を行う。 【0098】システムバス制御装置3によるシステムバ
スへの出力制御はメモリ装置と同等なので、次にメモリ
装置4によるシステムバスへの出力制御について、図2
2を参照して説明する。通常の動作モードでは、モード
設定回路102aはモードAに、モード設定回路102
bはモードBに設定されており、メモリから読み出され
たデータはメモリ装置の内部バス72を介してデータラ
ッチ94にラッチされるとともに、エラー検出回路85
でパリティチェックが行われる。モードAのメモリ装置
4aでは、エラー検出回路85aでエラーが検出されな
ければモード設定回路102aの出力106aが
“1”、107aは“0”になり、読出しデータはドラ
イバ回路90aからシステムバスA13aに出力され
る。エラーが検出されるとモード設定回路102aの出
力106a及び107aはともに“0”となり、データ
の出力を停止するとともに、システムバス切換え信号線
84aが“1”に出力される。またエラーが検出されて
いない時に、相手からのシステムバス切換え信号線84
bが“1”になると、モード設定回路102aの出力1
06a及び107aはともに“1”となり、読出しデー
タはドライバ回路90a及び91aから両方のシステム
バスA13a及び13bに出力される。 【0099】一方、モードBのメモリ装置4bでは、エ
ラー検出回路85bでエラーが検出されない場合、モー
ド設定回路102bの出力106bが“0”、107b
が“1”になり、読出しデータがドライバ回路90bか
らシステムバスB13bに出力される。エラーが検出さ
れるとモード設定回路102bの出力106b及び10
7bはともに“0”となり、データの出力を停止すると
ともに、システムバス切換え信号線84bが”1”に出
力される。またエラーが検出されていない時に、相手か
らのシステムバス切換え信号線84aが“1”になる
と、モード設定回路102bの出力106b及び107
bはともに“1”になり、読出しデータはドライバ回路
90b及び91bから両方のシステムバスA13a及び
13bに出力される。 【0100】さらに両側のメモリ装置4は、二重化され
たシステムバスのデータをレシーバ回路108及び10
9を介して入力し、比較回路105で比較しており、比
較結果は内部のエラー検出回路85のエラー出力信号
(システムバス切換え信号線84)とORゲートで処理
されて外部に出力され、ANDゲート93とEXORゲ
ート92で条件がとられて、処理装置1に対する異なっ
たレベルの割込み信号を生成する。処理装置1はこの割
込みを受けると、前述の図11に示すようなエラー解析
処理を行う。 【0101】モード設定回路の構成と動作について、シ
ステムバス制御装置3に内蔵されるモード設定回路10
1の場合を例に、図23及び図24を用いて説明する。
まず電源投入時にはT100のタイミングでリセット信
号線42が“0”になり、モードラッチ123及び12
5はリセットされて出力が“0”になり、モード設定回
路101a及び101bは、ともにモードD(初期モー
ド)に設定される。モードDではANDゲート127、
129及び134の出力は“0”になるためバス許可信
号線106及び107はともに“0”が出力される。 【0102】次に処理装置が図24におけるT101の
タイミングで、データ信号120−1ないし120−4
に、設定すべきモードに対応したデータ“1001”を
置いてモード設定信号線103を出力すると、セレクタ
回路121はマスタモード入力線21の状態に従って、
入力データ120のうち、2本を選択する。ここでシス
テムバス制御装置3aのマスタモード入力線21aは
“1”であるため、セレクタ回路の出力信号122−1
aには入力データ120−1が、セレクタ回路の出力信
号122−2aには入力データ120−3が出力され、
一方システムバス制御装置3bのマスタモード入力線2
1bは“0”であるため、セレクタ回路の出力信号12
2−1bには入力データ120−2が、セレクタ回路の
出力信号122−2bには入力データ120−4が出力
され、モード設定回路101aはモードAに、モード設
定回路101bはモードBに設定される。逆にいえば、
モードAとはモード出力信号124aが“1”、モード
出力信号126aが“0”となってバス許可信号線10
6aに“1”、107aに“0”が出力されるモードと
定義できる。同様にモードBではモード出力信号124
bが“0”、モード出力信号126bが“1”になり、
バス許可信号線106bには“0”、107bには
“1”が出力される。 【0103】ところで図24のT102からT103の
タイミング、つまりシステムバス制御装置3aがモード
Aでシステムバス制御装置3bがモードBにある状態
で、システムバス制御装置3a側のエラー検出回路80
aがエラーを検出すると、内部のエラー信号線81aが
“1”になり、ANDゲート127a、129a、13
4aが“0”、Aバス許可信号線106a及びBバス許
可信号線107aがともに“0”となる。一方システム
バス制御装置3bではシステムバス切換え信号線81a
(内部のエラー信号81aと論理的に同一)が“1”に
なるため、ANDゲート134bの出力が“1”とな
り、ORゲート132b及び133bの出力であるAバ
ス許可信号線106a及びBバス許可信号線107aが
ともに“1”となる。 【0104】さらに処理装置が図24におけるT104
のタイミングで、データ信号120−1ないし120−
4に設定すべきモードに対応したデータ“0101”を
置いてモード設定信号線103を出力すると、システム
バス制御装置3a内のモードラッチ123a及び125
aはともに“0”となってモード設定回路101aはモ
ードDに戻り、バス許可信号線106a及び107aは
両側“0”になる。一方、システムバス制御装置3b内
のモードラッチ123b及び125bはともに“1”と
なってモード設定回路101aはモードCに設定され、
バス許可信号線106b及び107bはともに“1”と
なる。 【0105】以上説明した二重化メモリシステムにおい
てモード設定回路を使用すると、診断、交換、復旧等の
処理を容易に行うことができる。メモリ装置4において
この機能を使用した例を、図25(B)を用いて説明す
る。 【0106】二重化されたメモリ装置は各々A系統とB
系統で示されており、各々同期してモード設定を変化さ
せながら処理をしている。まず処理140で両側のメモ
リ装置に電源が投入され、リセット時の処理141によ
って両側がモードDに設定され、いずれのメモリもデー
タを出力しない状態となる。 【0107】次に処理142における書き込み、読み出
し、比較チェックによるメモリの初期診断を図25で説
明する。メモリを診断するためには、二重化されたメモ
リ装置から独立して書込みデータを読み出す必要がある
ので、まず処理142−1aでA系統のメモリ装置をモ
ードCに、処理142−1bでB系統のメモリ装置をモ
ードDに設定し、読出しデータがA系統のメモリからの
み出力される状態にし、処理142−2aでメモリ装置
に対して書き込み、読み出し、比較を行う。このため、
A系統のメモリ装置が診断されることになる。この時、
B系統のメモリ装置にもデータは書き込まれるが、A系
統の診断結果には影響しない。次に処理142−3でA
系統のメモリ装置をモードDに、B系統のメモリ装置を
モードCに設定して、処理142−4bでB系統のメモ
リ装置を試験することができる。 【0108】処理142によるメモリ装置の初期診断が
完了すると、処理143でA系統のメモリ装置をモード
Aに、B系統のメモリ装置をモードBに設定することに
より通常動作処理144を行い、すなわちシステムバス
A13aにはA系統のメモリ装置が読出しデータを送出
し、システムバスB13bにはB系統のメモリ装置が読
出しデータを送出し、どちらかでエラーが検出されると
反対側が両方のシステムバスにデータを送出する、二重
化メモリ動作となる。故障145aによってA系統のメ
モリ装置が故障すると、B系統のメモリ装置が正しいデ
ータで応答しつつ、処理装置1は割込みをもとに故障解
析を行い、修理交換が必要と判定されると、処理146
でA系統のメモリ装置をモードDに、B系統のメモリ装
置をモードCに設定することにより、A系統のメモリ装
置はシステムバスから切り離された状態となる。この後
もB系統のメモリ装置が両側のシステムバスに読出しデ
ータを送出するので、A系統の修理交換処理147aを
実施することができる。 【0109】交換処理によって新しいメモリ装置をA系
統に挿入すると、A系統のメモリ装置はリセット処理に
よりモードDになり、その後処理150により正常なB
系統のメモリ装置からデータを読み出し、新しいA系統
のメモリ装置へ書き込むコピー動作を行う。コピーが完
了すると、処理151でA系統のメモリ装置をモードA
に、B系統のメモリ装置をモードBに設定し、通常の二
重化メモリ動作に復旧することができる。 【0110】実施例6.図26は、本発明の第6実施例
に係る二重化メモリシステムである。図において170
は、メモリ装置4に内蔵され、メモリの書き込み及び読
み出しを制御するための許可フラグ、171はメモリの
アクセスタイミングを生成する制御回路、172はメモ
リ装置に対するアクセスアドレスを判定するアドレス判
別回路、173はメモリ71に強制的にエラーを書き込
むためのエラー注入回路、177は二重化されたシステ
ムバスの両方に接続される入出力制御装置である。 【0111】図27はメモリ装置4の内部の構成を示す
図で、許可フラグ170、アドレス判別回路172、ド
ライバ220、レシーバ221、パリティ生成回路23
9、及びメモリ71で構成される。図において許可フラ
グは読出し許可フラグ170−1、書込み許可フラグ1
70−2、パリティ生成許可フラグ170−3で構成さ
れ、これらの出力の組合せでメモリへの書き込み、読み
出し、パリティの生成を制御する。 【0112】図28は図27中のアドレス判別回路の詳
細を示すもので、共通空間指定レジスタ231、個別空
間指定レジスタ232、I/Oアドレス判別回路23
0、比較回路233及び234、ANDゲート237で
構成され、出力信号として共通空間書込み信号線21
0、個別空間書込み信号線211、共通空間読出し信号
線212、個別空間読出し信号線213を生成する。 【0113】図29はシステムバスをアクセスする際の
アドレス空間の区分を示す図で、200はメモリ空間全
体を、201はI/O空間全体を示しており(A)は二
重化動作時の割付を、(B)は一重化時の割付を示して
いる。メモリ空間はさらに、共通アクセス空間202と
個別アクセス空間203に分けられている。 【0114】図30は、図26中のメモリ装置が許可フ
ラグ170によって状態遷移をする様子を示した図であ
り、許可フラグの組合せにより、切離し動作状態18
1、正常動作状態183、修復動作状態184及び保護
動作状態185に定義され、エラーの発生あるいは許可
フラグ書換えによって各状態間を遷移する。切り離し動
作状態181は書き込み、読み出しとも不可、正常動作
状態183は書き込み、読み出しとも可、修復動作状態
184は書き込みのみ可、保護動作状態185は読み出
しのみ可の状態である。 【0115】図31はエラー注入回路173と個別空間
アクセスにより、メモリ71a及び71bの診断用領域
に異なったデータ及びエラー状態を注入し、それを共通
空間アクセスによって読み出した時のデータを示すもの
である。 【0116】図32は、メモリ装置4の内部にアドレス
エラー検出回路176を設け、その出力を互いのメモリ
で交換し、相手側でエラーが検出されれば、エラーアド
レスレジスタに正しいアドレスを記憶させる構成の概念
図で、図33に詳細を示す。 【0117】以上のように構成される二重化メモリシス
テムの概略動作について、図26を用いて説明する。 【0118】メモリ装置4内部の許可フラグ170は、
読出し許可フラグと書込み許可フラグ及びパリティ生成
許可フラグの3ビットで構成され、アドレス判別回路1
72は共通アクセス空間と個別アクセス空間の判別を行
う。処理装置1から共通アクセス空間を使用する書込み
動作を行うとき、書込み許可フラグが“1”であれば、
パリティ生成許可フラグの状態に無関係にパリティ生成
を行なってメモリ71に書き込みを行い、書込み許可フ
ラグが“0”であれば書き込みを行わない。また処理装
置1から個別アクセス空間を使用する書込み動作を行う
時は、書込み許可フラグの状態に無関係にメモリ装置7
1に書き込みを行うが、パリティ生成許可フラグが
“0”であればパリティ生成を行わないでメモリ装置7
1に書き込みを行う。 【0119】次に処理装置1から共通アクセス空間を使
用する読出しを行う時は、読出し許可フラグが“1”で
あれば読み出しを行ない、読出し許可フラグが“0”で
あれば読み出しを行なわない。また処理装置1から個別
アクセス空間を使用する読み出しを行なう時は、読出し
許可フラグの状態に無関係に読み出しを行なう。 【0120】入出力制御装置177は両方のシステムバ
スに接続されており、システムバスの切換え回路は実施
例5におけるシステムバス制御装置と同様に構成され、
メモリ装置4からの読出しデータを取り込むときには、
エラーの発生していない側のシステムバスのデータを使
用する。 【0121】次に許可フラグ170、アドレス判別回路
172、エラー注入回路173の回路構成と動作につい
て、図27及び図28を用いて説明する。許可フラグ1
70は読出し許可フラグ170−1、書込み許可フラグ
170−2、パリティ生成許可フラグ170−3で構成
され、アドレス判別回路172から出力される許可フラ
グ設定信号線225に従い、システムバスから入力した
データ信号線224−1ないし224−3の内容をラッ
チする。初期状態ではリセット信号42により全てのフ
ラグは“0”に初期化される。読出しデータをシステム
バスに出力するためのゲート信号222は、読出し許可
フラグの出力である読出し許可信号線214と、アドレ
ス判別回路172の出力である共通空間読出し信号21
2と、個別空間読出し信号213により決定される。ま
ず、個別空間に対する読み出しでは個別空間読出し信号
213が“1”になるので、ORゲート219の機能に
より、読出し許可信号線214の状態と無関係にドライ
バ回路220のゲート信号222が“1”になり、シス
テムバスにメモリ71からの読出しデータを出力する。
一方共通空間に対する読み出しにおいては、共通情報読
出し信号212が“1”になっても、ANDゲート21
8により読出し許可信号線214が“1”でないとシス
テムバスに読出しデータが出力されない。 【0122】また個別空間に対する書き込みにおいて
は、個別空間書込み信号211が“1”になるので、O
Rゲート217の機能により、書込み許可信号線215
の状態と無関係にメモリ書込み信号線162が“1”に
なり、メモリ71にデータが書き込まれる。一方、共通
空間に対する書き込みにおいては、共通空間書込み信号
線210が“1”になっても、ANDゲート216の存
在により、書込み許可信号線215が“1”でないとメ
モリ書込み信号線162は“1”にならず、メモリ71
への書き込みは行われない。ところで、パリティ生成回
路239にはパリティ生成許可信号線163の制御によ
ってパリティ生成を制御する機能があり、パリティ生成
許可信号線163が“1”の時はパリティデータが正常
に生成され、“0”のときはエラーとなるように生成さ
れるものとする。従って共通空間に対する書き込みで
は、共通空間書込み信号線210が“1”になるので常
に正しいパリティ生成が行なわれるが、個別アクセス空
間時にはパリティ許可フラグ信号線338が“1”に設
定されている場合に限って、正しいパリティが生成され
る。個別空間の書込み動作でこの機能を使用すると、メ
モリ71にパリティエラーになるデータを意図的に書き
込む操作、すなわちエラー注入が可能となる。 【0123】更に、前述のアドレス判別回路172は図
28のように構成され、I/Oアドレス判別回路230
は、メモリ装置に対してレジスタアクセス等のために設
けられた固有のアドレスをデコードする。ここでシステ
ムバスのアドレス信号線13−2、マスタモード入力線
21、システムバスの書込み信号線13−4の条件をと
り、共通空間指定レジスタ設定信号線235、個別空間
指定レジスタ設定信号線236、及び許可フラグ設定信
号線225を出力する。共通空間レジスタは、設定信号
線235によってシステムバスのデータ信号線の値をラ
ッチし、個別空間レジスタ232は、設定信号線236
によってシステムバスのデータ信号線の値をラッチす
る。処理装置1からメモリ空間のアクセスがされると、
システムバス上のアドレス信号線13−2と共通空間指
定レジスタに設定されている内容を比較回路233で比
較し、一致すれば共通情報アクセス信号228が“1”
になり、この際書込み信号線13−4が“1”の場合は
ANDゲート237−3によって共通空間書込み信号線
210が“1”に、読出し信号線13−3が“1”の場
合はANDゲート237−4によって共通空間読出し信
号線212が“1”になる。同様に、個別空間指定レジ
スタの設定内容を比較回路234で比較し、一致すると
個別信号アクセス信号229が“1”になって個別空間
書込み信号211、または個別空間読出し信号線213
が“1”になる。 【0124】以上のように動作するアドレス判別回路1
72の機能を使用して、メモリ装置4のアドレス空間を
割り付ける例を、図29によって説明する。(図29に
おいて、200ないし207で示される実体は、各々幅
をもったメモリ領域である。)図29(A)は二重化メ
モリとして動作する時の設定例で、まずメモリ4aに対
し、前述の共通空間レジスタ231aに共通アクセスメ
モリA/B空間のアドレス202−1を設定し、個別空
間レジスタ232aに個別アクセスメモリA空間のアド
レス203−1を設定する。次にメモリ装置4bに対し
ては共通空間レジスタ231bに共通アクセスメモリA
/B空間のアドレス202−1を設定し、個別空間レジ
スタ232bに個別アクセスメモリB空間のアドレス2
03−2を設定する。この設定により共通空間202−
1に対するアクセスにおいては、メモリ装置4aとメモ
リ装置4bの両方が対象になり、個別アクセス空間20
3−1に対するアクセスにおいてはメモリ装置4aの
み、個別空間203−2に対するアクセスにおいてはメ
モリ装置4bのみが対象となって、二重化メモリとして
の動作が可能になる。 【0125】また、図29(B)に示すように、メモリ
装置4aに対しては共通空間レジスタ231aを共通空
間アクセスメモリA空間のアドレス202−3に、メモ
リ装置4bに対しては共通空間レジスタ231bを共通
空間アクセスメモリB空間のアドレス202−4に設定
すると、共通アドレス空間202−3に対するアクセス
ではメモリ装置4aが、共通アドレス空間202−4に
対するアクセスではメモリ装置4bが有効になり、全体
としては二重化メモリ動作に比べて2倍のメモリ容量を
提供できる。 【0126】次に前述した許可フラグ170と、共通及
び個別空間のアクセス機能を使用して、電源の投入から
通常動作、さらに故障メモリの修復及び修理交換の様子
を、読出し許可フラグと書込み許可フラグの組合せで定
義される状態遷移とともに、図30で説明する。まず状
態定義として、正常動作状態183は読出し許可フラグ
及び書込み許可フラグが“1”、修復動作状態184は
読出し許可フラグが“0”で書込み許可フラグが
“1”、保護動作状態185は読出し許可フラグが
“1”で書込み許可フラグが“0”、切り離し動作状態
181は読出し許可フラグ及び書込み許可フラグが
“0”の状態とし、さらにシステムの電源が未投入、ま
たはメモリ装置がシステムから取外されている状態18
0を補足的に定義する。 【0127】まずシステムの電源が投入されると、状態
180から遷移186により、切離し状態181に移行
する。この状態でそれぞれのメモリ装置に対して個別空
間アクセスを使用してメモリ71に対する書き込み、読
み出し、比較チェック等のメモリ診断188を行ない、
正常であれば電源投入時診断完了の移行189により正
常動作状態183に移行する。状態183ではメモリ装
置は二重化動作を行ない、エラー未発生時、及び単一の
データパリティエラーが発生した場合にも状態183に
とどまる。データパリティーエラーが重複して発生する
と、故障診断のために移行191によってメモリ装置を
切離し状態181に移行させるが、エラーの発生してい
ない側のメモリ装置は正常動作状態183にとどまる。 【0128】正常なメモリ装置が状態183、故障した
メモリ装置が切離し状態181にある場合、故障したメ
モリ装置に対しては診断処理188によって修復可否を
調べるが、一方処理装置1による診断動作中、入出力制
御装置177によるメモリ装置へのアクセスは共通空間
に対して実施されるので、正常なメモリ装置が応答して
正常動作が保証される。診断の結果修復不可能と判断さ
れれば、保守員により新しいメモリ装置との交換が行な
われ、新しいメモリ装置は挿入によってまず切り離し動
作状態181に移行し、診断にかけられる。ところで一
旦切離し状態181に移行すると、正常なメモリ装置と
の内容の相違が発生するので、このままでは正常動作状
態183に移行することができない。そこで診断終了時
の移行196によって修復動作状態184に移行する。
修復動作状態184では正常なメモリ装置から共通空間
でデータを読み出し、共通空間アクセスによる書き込み
で正常なメモリ装置と修復対象のメモリ装置の両方にデ
ータを書き込む。全領域のコピー処理194が完了する
と、修復完了の移行193により、再度両方のメモリ装
置が正常動作状態183になって二重化メモリ動作に復
旧する。この間、入出力制御装置177によるメモリ装
置へのアクセスは共通空間に対して実施されるので、書
込み動作は両方のメモリ装置に対して行われ、読出し動
作は状態183にある正常なメモリ装置が応答して正常
動作が保証される。 【0129】また正常動作状態183でアドレスパリテ
ィエラーが発生すると、エラーの発生したメモリ装置の
データ中、当該アドレスのメモリ内容が信頼できないた
め、直ちに読出し許可フラグを“0”にして読み出しを
禁止し、修復動作状態184に移行させる。アドレスパ
リティエラーが発生した後の修復動作状態184でもエ
ラーの発生したメモリ装置に対する書き込みは続行され
るので、処理装置1による修復処理開始までの間、正し
いメモリ装置との内容の相違はアドレスエラーの発生し
た箇所のみとなる。そこで必要な修復処理を施した後、
正常動作状態183に戻すことができる。 【0130】保護動作状態185の使用方法について説
明する。保護動作状態へは処理装置1からのモード切り
換え処理197により移行する。例えばシステムバス1
3に接続されている入出力制御装置177の故障を診断
する場合、この装置がメモリ装置に正しい書き込みを実
行するとは限らず、メモリ装置に対する書き込みを伴う
診断を不用意に実行させれば、メモリ71の内容を破壊
しうる。そこで二重化されたメモリ装置のうち一方を保
護動作状態185にしてメモリの内容の破壊を防止した
後診断を実行し、診断完了後保護動作状態185のメモ
リ装置から正常動作状態183のメモリ装置に内容をコ
ピーすることとする。その結果、たとえ入出力制御装置
が不正な書込み動作を行っても、正常なメモリに修復可
能である。仮に入出力制御装置が正常に動作すれば、書
込みデータは書込み許可フラグが“1”のままの通常動
作状態183のメモリ装置に書き込まれるので、この内
容を確認することで入出力制御装置の動作が診断でき
る。 【0131】次に、図26におけるエラー注入回路を使
用したエラーの注入状態と、この機能を利用した診断方
法について、図27ないし図31を用いて説明する。図
31における領域71−1は通常領域でプログラムやデ
ータが格納され、領域71−2ないし71−5が診断領
域として使用される。まずメモリ装置4aのパリティ許
可フラグを“1”に設定し、メモリ装置4aの個別空間
アクセスにより領域71−2aにデータ“8888”
を、領域71−4aにデータ“AAAA”を書き込むこ
とにより、正常なデータが生成される。次にメモリ装置
4aのパリティ許可フラグを“0”に設定し、メモリ装
置4aの個別空間アクセスにより領域71−3aにデー
タ“9999”を、領域71−5aにデータ“BBB
B”を書き込むことにより、パリティエラーを含んだデ
ータが生成される。同様にしてメモリ装置4bに対して
は、領域71−2b及び71−3bにデータ“CCC
C”及び“DDDD”の正常データを、領域71−4b
及び71−5bにはデータ“EEEE”及び“FFF
F”のパリティエラーを含んだデータを書き込む。 【0132】以上のように、診断領域に正常データとパ
リティエラーを含むデータを書き込んだ状態で、タイマ
等の機能により処理装置1が一定時間ごとに診断領域の
読み出しを行なうことで、メモリにエラーが発生した場
合は正常な側のメモリの内容を出力し、また両方のメモ
リでエラーが検出されたら高レベル割り込みが発生する
機能(実施例4における動作)を診断できる。すなわち
機能が正常ならば、領域71−2の読み出しではメモリ
71aが応答しデータ“8888”が、領域71−3の
読み出しではメモリ71aがエラーなのでメモリ71b
の正常データ“DDDD”が、領域71−5の読み出し
では両方のメモリがエラーなので高レベルの割り込みが
発生する。またメモリ装置4a内のエラー検出手段85
aが正常の動作していない場合、領域71−3の読み出
しでエラーデータの“9999”が読み出され、故障箇
所の判別が可能となる。 【0133】次に、アドレスエラーの検出について、図
32を用いて概略説明をする。処理装置1からメモリ装
置4がアクセスされる際、メモリのアドレス信号のパリ
ティチェックをアドレスエラー検出回路176で行な
い、この結果を相手側のメモリ装置にアドレスエラー検
出信号線175として出力するとともに、エラーが検出
された側は内部の読出し許可フラグを“0”にして読み
出しを禁止する。一方相手のアドレスエラー信号線17
5の変化を検出したメモリ装置は、そのアドレスをエラ
ーアドレスレジスタ174に記憶させ、割り込みによっ
てアドレスエラーの発生を知った処理装置1が制御用R
OM2に格納されている故障解析復旧プログラムを実行
し、エラーの発生したメモリアドレスを、正常な側のメ
モリ装置内のエラーアドレスレジスタ174から読み出
す。このアドレスの示すメモリの内容を読み出して再度
書き込むことにより、エラーの発生したメモリの内容が
正常なデータに復旧する。 【0134】上記の動作のうち、アドレスエラー検出と
エラーアドレスレジスタの詳細について、図33を用い
て説明する。アドレスエラー検出回路176aはシステ
ムバス上のアドレス信号線13−2aのパリティチェッ
クを行なっており、エラーを検出するとアドレスエラー
信号線175aを“1”に出力する。この信号は内部で
は読出し許可フラグ170−1aを“0”にリセットす
るとともに、ANDゲート216により書込み信号線1
62を“0”にして、誤ったアドレスへの書き込みを禁
止する。一方、相手側のメモリ装置4bでアドレスエラ
ーが検出された場合には、相手からのアドレスエラー信
号線175bが“1”になり、この時のアドレス信号線
13−2aの内容がエラーアドレスレジスタ174aに
記憶される。また読出し時にアドレスエラーが発生した
場合は、図15におけるメモリ誤り検出信号線84に相
当する信号を出力すれば、エラーの発生していないメモ
リ装置が読出しデータを出力してくれるので、正常な読
出しデータを保証できる。しかもアドレスエラーの発生
したメモリ装置は、エラーの発生した部分のみが書き変
わっていないに過ぎず、容易に修復できる。アドレスエ
ラーが発生したときの割り込み信号は、EXORゲート
92とANDゲート93によってアドレスエラー検出信
号線175aと175bの条件で生成される。いずれか
一方のメモリ装置でアドレスエラーが発生した場合はE
XORゲート92の出力が“1”になり、低レベルの割
り込み信号9が出力され、両方のメモリ装置でアドレス
エラーが発生した場合はANDゲート93の出力が
“1”になり、高レベルの割り込み信号10が出力され
る。低レベルの割り込みは、エラーの発生したアクセス
アドレスが正常なメモリ装置内のアドレスエラーレジス
タに記憶されていて修復処理可能であることを示し、高
レベルの割り込みはエラーのあったアクセスアドレスが
特定できないために修復処理が不可能なことを示す。 【0135】実施例7.図34は、本発明の第7実施例
に係る二重化メモリシステムのメモリ装置内部のデータ
エラーの検出を示す図である。図において、240はア
ドレスを入力するためのレシーバ、241は予め発生す
るエラー回数の上限値を設定するためのエラー上限値レ
ジスタ、244はエラー上限値レジスタ241に値を書
込むためのエラー上限値レジスタ設定信号線、245は
エラー検出回路、247はエラー検出回路245の出力
であるエラー検出信号246によってインクリメントさ
れ、外部からのエラー訂正信号線256によってデクリ
メントされるエラー累積カウンタ、249はエラー上限
値レジスタ241とエラー累積カウンタ247の出力を
比較し、比較結果に従い2種類の割り込み信号線を出力
するための比較回路、252はエラーが発生したアドレ
スを格納するための複数のエラーアドレスレジスタ、2
57はエラーアドレスレジスタの書込み信号258を生
成する書込み制御回路、254はメモリまたはエラーア
ドレスレジスタ252に格納されたデータを選択して出
力するセレクタ、259はセレクタ254の出力信号2
55を選択するための信号で“0”のときはメモリの読
み出しデータ233を“1”のときはエラーアドレスレ
ジスタ252−1を“2”のときはエラーアドレスレジ
スタ252−2の内容を選択出力するための制御を行な
うセレクタ切換え信号である。なおエラー上限値レジス
タ設定信号線244、エラー訂正信号線256、セレク
タ切換え信号259は例えば前述の実施例6における図
33のアドレス判別回路172により処理装置がアクセ
スするアドレスをデコートして生成される。 【0136】以上のように構成されるエラー検出の動作
について、図34を用いて説明する。まず電源投入時に
は、エラー累積カウンタ247は“0”に初期化され、
続いて処理装置からメモリ装置に内蔵されるエラー上限
値レジスタ241に、エラー上限値レジスタ設定信号線
244によってエラーアドレスレジスタの個数と同じ値
(実施例では“2”)を設定する。この後通常のメモリ
アクセス動作を行うと、セレクタ切換え信号259には
“0”が出力されており、メモリ71からの読み出しデ
ータ223はエラー検出回路245によりパリティチェ
ックが行われ、エラーが発生していなければセレクタ2
54及びドライバ回路220を経由してシステムバス1
3−1に出力される。エラーが検出されるとエラー検出
信号線246が“1”になり、エラー累積カウンタ24
7の内容がインクリメントされる。比較回路249では
前述のエラー上限値レジスタ241に設定されている内
容と、エラー累積カウンタ247の内容が比較され、エ
ラー累積カウンタの値がエラー上限値レジスタ241の
数値を越えていなければ低レベルの割込み信号線9を
“1”に、越えれば高レベルの割込み信号線10を
“1”にする。 【0137】ところで、書込み制御回路257はエラー
検出信号線246が“1”になったときに、エラー累積
カウンタの出力信号248の内容により、アドレス信号
251の内容をどのエラーアドレスレジスタに書込むか
を切換える動作を行なう。つまり初期状態ではエラー累
積カウンタ247の内容は“0”であるので書込み信号
線258−1が出力されることにより、エラーアドレス
レジスタ252−1にエラーアドレスが書込まれ、2回
目のエラー発生時にはエラー累積カウンタ247の内容
は“1”になっているので書込み信号線258−2が出
力されることにより、エラーアドレスレジスタ252−
2にエラーアドレスが書込まれる。このようにしてエラ
ーが発生したアドレスはエラーアドレスレジスタ252
に順次記憶されており、処理装置は低レベルの割り込み
を受けると障害回復処理によりエラーアドレスレジスタ
252−1のアクセスを行なうと、セレクタ切換え信号
259は“1”になりエラーアドレスレジスタ252−
1の内容がセレクタ254、データドライバ220を経
由してシステムバスに出力される。処理装置はこのよう
にしてエラーの発生したアドレスを知ることができ、こ
のアドレスで示されるメモリのデータを読み出して同じ
アドレスに書込むことによりパリティエラーの発生した
メモリの内容を修復する。この後処理装置はエラー訂正
信号線256によりエラー累積カウンタ247の内容を
デクリメントする。ところで処理装置が低レベルの割込
みを受け付けるまでの間でもメモリ装置のアクセスは実
行されており、別のアドレスでパリティエラーが発生す
ると、エラーアドレスレジスタの個数以下のエラーな
ら、発生したアドレスを記憶することができる。エラー
アドレスレジスタの個数を越えてエラーが発生した場合
は、前述の比較回路249の高レベルの割り込み信号線
が“1”になって修復不可能な重障害の発生が処理装置
に通知され、実施例5に記載したモード設定回路等の機
能を利用して、該当するメモリ装置を切り離す。 【0138】実施例8.図35は、本発明の第8実施例
に係る二重化メモリシステムであり、二重化バス変換ア
ダプタ261を介して一重のバスしか持たない通常の入
出力制御装置260を接続した様子を示す図である。図
36及び図37に二重化バス変換アダプタ261の詳細
構成を示す。 【0139】図36において、263はアドレス信号の
ドライバ/レシーバ回路、264はデータ信号のドライ
バ/レシーバ回路、269は通常の入出力制御装置26
0がシステムバスに対してアクセスする時のアドレスパ
リティを生成するパリティ生成回路、同様に271はデ
ータのパリティを生成するパリティ発生回路、270は
システムバスから通常の入出力制御装置をアクセスする
時に、二重化されたアドレスバスのパリティを検査し、
正しい方のアドレスを選択するためのパリティ検査選択
回路、同様に272はデータを選択するためのパリティ
検査選択回路である。 【0140】また図37において、276は通常の入出
力制御装置260がアクセスして良いアドレス領域を設
定するためのアドレス領域レジスタ、278は通常の入
出力制御装置260がシステムバスに出力しようとして
いるアドレスと、アドレス領域レジスタ276の内容を
比較し、その結果によりシステムバスのドライバのゲー
トを制御する比較回路である。 【0141】上記のように構成される二重化メモリシス
テムの入出力制御装置に関する動作概要を、図35を用
いて説明する。入出力制御装置177は二重化メモリシ
ステム対応に設計されたものであり、両側のシステムバ
スに対するアクセスが可能になっている。一方、通常の
入出力制御装置260は二重化メモリシステムを意識し
ていない既存のもので、それ自身は1つのシステムバス
への接続のみが可能なため、これを二重化バス変換アダ
プタ261によって二重化するとともに、エラーチェッ
クコードの生成、アドレスのチェック等を行い、信頼性
を向上させている。 【0142】次に、二重化バス変換アダプタ261の詳
細動作を、図36を用いて説明する。通常の入出力制御
装置260は、共にパリティコードを持たないアドレス
信号線262−2とデータ信号線262−1によって二
重化バス変換アダプタ261と接続されており、入出力
制御装置がシステムバス経由でメモリ装置1にアクセス
する場合は、アドレス信号線262−2にパリティ生成
回路269でパリティコードが付加されてアドレス信号
線265となり、ドライバ回路263−1を介して両側
のシステムバスにアドレス信号線13−2aと13−2
bとして出力される。またデータ信号線262−1には
パリティ生成回路271でパリティコードが付加され、
データ信号線267となり、ドライバ回路364−1を
介して両側のシステムバスにアドレス信号線13−1a
と13−1bとして出力される。 【0143】一方、二重化されたシステムバスから入出
力制御装置がアクセスされる場合は、システムバスのア
ドレス信号線13−2a及び13−2bはレシーバ回路
263−2で入力され、パリティ検査選択回路270に
よるパリティチェックの結果、エラーの発生していない
側のアドレス信号266が選択され、通常の入出力制御
装置260に対するアドレス信号線262−2として出
力される。同様にシステムバスのデータ信号線13−1
a及び13−1bはレシーバ回路264−2で入力さ
れ、パリティ検査選択回路272によるパリティチエッ
クの結果、エラーの発生していない側のデータ信号26
8が選択され、通常入出力制御装置260に対するデー
タ信号線262−2として出力される。 【0144】パリティ検査選択回路270で両側のアド
レス信号線でエラーが検出され、正しいアドレスが選択
できないときは、アドレスエラー信号線274が、また
パリティ検査選択回路272によって両側のデータ信号
線でエラーが検出され、正しいデータが選択できないと
きにはデータエラー信号線275が、各々出力され、O
Rゲート273により低レベルの割込み信号が出力され
る。この時、通常の入出力制御装置260に対する書込
み、読出し信号線(図示せず)は出力されなので、入出
力制御装置は動作を開始せず、処理装置1のソフトウェ
アによるリトライ処理を行う。 【0145】次に、図37を用いて、入出力制御装置2
60のアクセスに制限を設ける動作を説明する。アドレ
ス領域レジスタ276は入出力制御装置260がアクセ
ス可能なメモリアドレスの範囲を指定するためのもの
で、処理装置1は入出力制御装置260に対する入出力
動作の起動に先立ち、アドレス領域レジスタ設定信号2
82により、データ信号線262−1の内容をアドレス
領域レジスタ276に設定する。入出力制御装置260
が起動されてメモリへの転送が発生すると、入出力制御
装置260はアドレス信号線262−2にアクセスする
メモリアドレスを出力する。この時比較回路278は前
述のアドレス領域レジスタ276に設定された範囲内に
あるかどうかを判定し、範囲内であればドライバ出力許
可信号線279を“1”にしてシステムバスへのアクセ
スを許可し、範囲外であればドライバ出力許可信号線2
79を“0”にしてシステムバスへのアクセスを禁止す
る。またORゲート281により範囲外のアドレスがア
クセスされた時には、低レベルの割込み信号線9を
“1”にして処理装置に知らせる。 【0146】なお上記実施例では、メモリ装置のデータ
チェックコードとしてパリティデータによって説明した
が、これはパリティデータでなくECCコードであって
も同様に実現できる。 【0147】 【発明の効果】以上詳細に説明したように、本発明によ
れば、転送エラー検出手段が転送中のデータのエラーを
検出し、エラーステータスレジスタがその検出結果を保
持するため、エラー箇所の診断が可能となる。また、C
PUバス切換え回路がエラーステータスレジスタの保持
内容に従ってCPUバスに対するデータの出力許否を決
定するため、オーバーヘッドのない切換えが可能とな
る。この際、データ転送経路の途中ではパリティチェッ
クを行えばよいため、パリティ生成回路は処理装置にの
み必要となり、システム全体の回路構成が簡単になる。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a highly reliable computer.
Memory device, particularly a method for configuring a redundant memory system,
The present invention relates to a diagnosis method and a failure monitoring method. [0002] In the field of fault-tolerant computers,
And one of the most common techniques to increase computer reliability
In addition, reliability such as processing unit (CPU) or storage device
There is a method of multiplexing upper critical logic circuits. Through
Usually, multiplexing of storage devices is based on duplication,
Configure one of the storage devices as the service side and the other as the standby side
You. In this case, write the same data to both
To ensure consistency, and only read the data on the regular side when reading.
Error, but data read from the regular side
Occurs, the data transfer subject switches to the standby side,
This is the system operation by outputting the correct data
Continuation becomes possible. [0003] However, in the conventional technology, most of the memory is used.
Only the equipment is duplicated, and the control unit and connected system
No reliable method has been established by duplicating the system bus.
No. Therefore, a method of diagnosing the failed storage device separately
Stage, repair replacement during system operation (hot line replacement), storage device
What to do if the system bus connecting the
Was also inadequate. [0004] As a switching technology for a redundant storage device, there is a special technique.
JP-A-59-17796, JP-A-01-70847
JP, JP-B-60-3225, JP-A-63-2
73950, JP-A-60-238957,
JP-A-57-109195, JP-A-4-2330
In the method described in Japanese Patent Publication No. 52, the connection of a storage device is performed.
Buses are not duplicated and most systems
, The control unit was not duplicated. Further
If an error occurs in the storage device at
Although correct data is guaranteed by replacement or repair,
Insufficient consideration during writing, due to retry operation, etc.
In this case, the performance is deteriorated and the circuit on the processing device side is complicated.
In addition, when diagnosing a failed memory, it affects the normal memory
System that failed control unit or memory device
The means for repair and replacement during system operation and the I / O controller are stored
Despite sufficient consideration of reliability when accessing equipment
And there is room for improvement in the overall system reliability.
Met. [0005] As described above, the prior art
Surgery has several challenges, and to solve this,
Is a method of duplicating all components.
This can be achieved simply by preparing two sets of components.
But always ensure correct continuous operation as a system
Therefore, the following points must be considered. Problem 1: Disconnection of a duplicated system bus
Replacement is fast and the system is ready when an error occurs.
Normal data without changing the bus timing.
Guarantee. [0007] Problem 2, any of the duplicated devices
Normal operation is possible even if one of the devices is not mounted,
A special signal to know if the other side is implemented
No need for highway. [0008] Problem 3: Identification of failure location when an error occurs
And diagnosis without affecting normal parts.
When. Problem 4: Data parity error during writing
Simple means to continue redundant operation even when
To provide. Problem 5, when the system bus is duplicated
Ensure that error checking is performed adequately. Problem 6, One of the duplicated memory devices
Do not shut down the system when an unrecoverable error occurs.
That can be repaired and replaced, and that redundant operation can be resumed. Problem 7, Do not use as a dual memory device
To easily increase the memory capacity at times. Problem 8, Diagnosing a failed input / output control device
Recovery by writing data to memory when
Do not cause impossible memory destruction. Problem 9, connection to a duplicated system bus
Without having to design a special input / output control
Connect to redundant memory systems without compromising reliability
Make it possible. [0015] The present invention has been made to solve the above problems.
To provide a highly reliable dual memory system
With the goal. Means for Solving the Problems To solve the above problems
In addition, the present invention provides a processing apparatus for performing various processes,
System bus connected to the device via a CPU bus
The controller and this pair of system bus controllers
And a pair of system buses connected and connected to each other.
A pair of memory devices respectively connected to the
During the write operation in the processing unit, the system bus
The control device simultaneously stores data from the processing device in a pair of memory devices.
Data during the read operation in the processor,
Memory supported by one of the system bus controllers
Redundant transmission of data read from the device to the processing device
In the memory system, each system bus control device
Data being transferred and located on the path where data is transferred
Error detection means for detecting errors
Detection means.
Error status register that holds the result of the check
According to the contents of the error status register.
Output of data read from the memory device to the CPU bus
And a CPU bus switching circuit for determining the
You. According to the present invention, the transfer error detecting means is switched.
Detects errors in the data being sent, and sets the error status
And the CPU bus switching circuit holds the detection result.
CPU bus according to the contents of the error status register.
Is determined as to whether or not to output data. [Embodiment 1] FIG. 1 shows a first embodiment of the present invention.
This is a redundant memory system. In FIG.
Processing device (CPU) 2, processing device 1 performs special processing such as diagnosis
A control ROM storing a program for performing
3 controls the exchange of the system bus with the processing device 1.
4 is a memory device, 5 is a system bus controller
The system is built in the system bus controller 3 and has a memory device during normal operation.
The data read from the device should be sent to the processing device 1.
Master determination for determining the system bus controller
The path 6 is built in the system bus controller 3 and has a memory device.
Error for detecting an error in the data read from
A detection circuit 7 is a master determination circuit and an error detection circuit 6
Whether to output read data to the processing unit according to the instruction
CPU bus switching circuit for determining whether Processing device 1
And the system bus controller 3 transmits the data signal 8 and the low level
Signal 9, high-level interrupt signal 10, address signal 1
1 connected by CPU bus
The control device 3 and the memory device 4 are duplicated,
a, 3b, 4a, and 4b. Duplex system
The stem bus control device includes a CPU bus switching signal line 12a.
And 12b, and the memory device 4a is connected to the system bus.
Memory to the system bus control device 3a via A13a.
The device 4b is connected to the system bus via the system bus B13b.
It is connected to the control device 3b. The duplicated portion is composed of the A system and the B system as described above.
However, in the following description, both sides are distinguished.
Suffix a or b to each component number.
When no distinction is made, they are indicated without subscripts. FIG. 2 shows the system bus control unit 3 shown in FIG.
Error detection circuit 6 and CPU bus switching circuit built in
The detailed configuration of the road 7 is shown. 13-1 in the figure is from the memory device
Data signal read out and sent out on the system bus
Consists of 32 bits for the data part and 4 bits for the parity part
Is done. Reference numeral 14 denotes a data signal 13-1 which is a clock signal 15
Data latch circuit that outputs the data signal 16 latched by
Path 17 latches data signal 16 with clock signal 15
A data latch circuit that outputs the data signal 18
Is an error detection that performs a parity check on the data signal 16.
Circuit 12 is the output of error detection circuit 19 when an error is detected
Error signal line which becomes "1" and CPU bus switching
Used as a signal line, 20 is the output of the error detection circuit 19
The normal signal line which becomes “1” when no error is detected
Should send read data to CPU bus when no error is detected
Master mode input signal to select system bus controller
Line 22, indicates that valid data is being transmitted from the memory device.
Data valid signal line indicating that the
Force signal line 21, data valid signal line 22, error signal line 1
2 and the state of the normal signal line 20 are determined by AND gates 24 and 25.
And the signal conditionally output by the OR gate 26 is latched.
A CPU bus selection latch. 29 is a CPU bus
Output latch 33 and data output timing
Gate signal 32 is generated according to the condition of clock signal 30
An AND gate 31 for performing a gate signal 32
When "1", the data signal 18 is the data signal of the CPU bus.
8 when the gate signal 32 is “0”.
Three-state battery that puts the
, 34 is the CPU from the other system bus controller.
With a pull-up resistor that pulls up the bus switching signal 12
is there. 35 is a CPU bus switching signal line 12a or
Is a low level ratio when one of 12b is "1".
EXOR gate for generating an embedded signal 9 and a CPU bus 36.
When both the switching signal lines 12a and 12b are "1"
AND gate that generates a high-level interrupt signal 10
is there. EXOR gate 35 and AND gate 36
And two types of interrupt signals to the processing unit are generated.
You. Error occurrence status and CPU bus switching signal line 12,
FIG. 3 shows the relationship between the interrupt signal lines 9 and 10. FIG. 4 shows the error detection circuit and the CPU shown in FIG.
FIG. 9 is a timing chart showing the operation of the bus switching circuit.
The output signals are shown correspondingly. T01 to T in the figure
14 is a clock cycle based on the clock signal 15
Is shown. FIG. 5 shows that the data signal 18 is the gate signal 32
Is driven as a data signal 8 at the timing of
It shows how it works. FIG. 6 shows the inside of the system bus controller 3 of FIG.
The details of the master determination circuit 5 of the section will be described. In the figure, 37 is the mode.
Output signal line 41 with a flip-flop
Power. 38 is a master change signal line for changing the master, 3
9 and 40 are AND gates of negative logic, 42 is at power-on
Reset the flip-flop 37 to the initial state.
Signal line. When incorporating the master decision circuit in Fig. 2
Output signal 41 instead of master mode input line 21
Connected. FIG. 7 shows the operation of the master decision circuit of FIG.
FIG. The dual memory system configured as described above
The schematic operation of the system will be described with reference to FIG. processing
The apparatus 1 performs control R
Executing the program stored in OM2, the system
After diagnosing the memory device 4 connected to the bus 13,
Via an input / output control device such as a disk control device (not shown)
To load a program such as an OS into the memory device 4,
Thereafter, while the system operates normally, the data is stored in the memory device 4.
Executes the specified program. Error detected in system
Then, an interrupt signal 9 or 10 is sent to the processing device 1.
The processing device 1 performs a predetermined error processing in the control ROM 2.
Memory device 4 after executing the error management program and completing the error processing.
Resumes execution of the program stored in. When the processing device 1 executes the program,
When accessing the storage device 4, if a write operation is performed,
Via the system bus controllers 3a and 3b
Is simultaneously written to the memory devices 4a and 4b on the
You. During the read operation, the system bus controllers 3a, 3b
Both instruct the memory device to read,
Reading is performed simultaneously from the devices 4a and 4b, and the system
Bus A 13a and 13b via the system bus control unit.
The read data is sent to the devices 3a and 3b. System bar
The master control circuit 5 is built in the
And the error detection circuit 6 is sent from the memory device.
If the data shows no error,
Sends the read data to the CPU bus data 8.
If an error is detected, the system
CPU control signal line 1
2 is output by the CPU bus switching circuit 7 to the normal side.
System bus controller reads CPU bus data 8
Send data. Next, error detection circuit 6 and CPU bus switching
The detailed operation of the circuit 7 will be described with reference to FIG. In FIG. 2, the system bus control device
There is a star mode input signal line 21.
In the control device 3a, the master mode input signal line 21a is
External to "1" and to "0" in the system bus controller 3b.
It is assumed that they are connected. In this case, the system bus system
The control device 3a is the master and the system bus control device 3b is the thread.
Act as a slave. Data read from the memory device
The data is transmitted from the system bus together with the data valid signal line 22.
Input to the system bus controller 3 as the data signal line 13-1.
Data clock by the system clock signal 15.
Latch circuit 14 and the output of the data latch circuit 14
The signal line 16 is input to an error detection circuit 19 such as parity detection.
Is supplied to the data latch circuit 17.
You. The data signal line 13-1 has a 32-bit data section.
When the data is normal, the
In this case, the error detection circuit 19 sets the normal signal line 20 to “1”, C
The PU bus switching signal line 12 is set to "0" and an error is detected.
In this case, both signals are output with the opposite logic. If the data is normal now, the master
The normal signal line 20 in the system bus controller 3a on the side
a is “1”, and is ORed via the AND gate 24 a
The output of the gate 26a becomes "1". System clock
CPU bus selection latch 23 at the timing of signal line 15a
a is set to “1”, and is set by the AND gate 29a.
Period when the data output timing clock signal 30a is "1"
Only during the three-state buffer 31 of the CPU data bus
a becomes “1” and the data latch circuit
The contents of the output signal line 18a of the path 17a are transferred to the CPU bus.
It is output as the data signal line 8. On the other hand, when an error is detected in the data
Indicates that the normal signal line 20a becomes “0” and the gate signal 32
a becomes “0”, the system bus control device 3 a
No data is output to the PU bus. Next, the operation on the slave side will be described. If no error is detected in the data,
Normal signal line in the system bus controller 3b on the slave side.
20b is “1”, but the master mode input signal line 21
Since b is "0", the AND gate 24b becomes "0",
Moreover, the CP from the system bus controller 3a on the master side
Since the U bus switching signal line 12a is also "0", the OR gate
The output of the port 26b also becomes "0". As a result, the CPU
Gate signal 32 of data bus 3-state buffer 31b
b becomes “0”, and the system bus controller 3 b
Do not output data to the bus. Here, suppose that the master side
When an error is detected in the stem bus control device 3a, the CP
The U bus switching signal line 12a becomes "1" and the AND gate
25b and the output of the OR gate 26b become "1",
Slave instead of master system bus controller 3a
The system bus controller 3b on the side transmits data to the CPU bus.
Outputs line 8. For this reason, not only memory devices, but also
Duplication at the stem bus level becomes possible. Next, the interrupt signal line 9 and the
The generation of steps 10 and 10 will be described with reference to FIG. EXOR gate 35 and AND gate 36
Is the combination of the CPU bus switching signals 12a and 12b.
Therefore, the states of the interrupt signal lines 9 and 10 are determined. Note
If the read data from the storage device 4 is normal on both sides,
Both the signal lines 9 and 10 become inactive. Which
On the other hand, if an error is detected, the EXOR gate 35
As a result, the low-level interrupt signal line 9 becomes active,
When an error is detected on the
The level interrupt signal line 10 becomes active. The processing device 1 by these two types of interrupts
The operation will be described. [0036] Low level interrupts are subject to error detection.
The correct data was sent to the processing unit 1
Indicates the occurrence of harm. The processing device 1 is a normal program
Run the program, and break the program (usually the task switch).
Error processing). Meanwhile, high level
Is interrupted, correct data is not sent to the processing unit 1.
Processing apparatus 1 immediately performs error processing.
Use when you should. The role of the pull-up resistor 34 in FIG.
Will be explained. This resistor can be replaced by repair
Bus controller, for example, the master system bus controller.
This is significant when the device 3a is removed. At this time, error detection
Since the output signal of the output circuit 19a is not driven,
Pull-up resistor built in system bus controller 3b
34b sets the CPU bus switching signal line 12a to "1".
Fixed. This is the system bus controller 3 on the master side.
a is the same as the state where the data error is detected, and the result is
The system bus controller 3b on the slave side
Send out. The system bus control device 3 described above
The operation of the error detection circuit 6 and the CPU bus switching circuit 7
An error was detected during reading of 8 consecutive words.
This will be described with reference to FIG. In the figure, data indicated by white circles is a memory device.
The data read from 4a and the data in black circles are memos.
Indicates data read from the storage device 4b, and does not include T01.
In accordance with the timing of T14, the system clock signal line
15, the clock inside the system bus controller is
Work in a period. The figure shows the system bus controller 3 on the master side.
The third word in a, the system bus controller 3 on the slave side
b, CPU error when an error is detected in the fifth word
Switch signal line 12, gate signal 32, CPU data
2 shows the state of the data signal 8 and the low-level interrupt signal line 9. In the figure
The timing of the signal
For example, the output signal line 1 of the data latch 14 is
6 is slightly behind the rising edge of the system clock 15.
Output, indicating more realistic timing.
You. Data error detected in the first and second words
Not the gate of the system bus controller 3a on the master side
The signal 32a becomes "1" and the CPU data bus 8
03 and the system bus controller 3 at the timing of T04
a, that is, data read from the memory device 4a.
Is output. When an error is detected in the third word, T0
An error is detected at timing 4 and the CPU bus switching signal is
The line 12a becomes "1", and at the timing of T05,
Data of the system bus controller 3b on the slave side,
The read data from the memory device 4b is output,
, A low level interrupt signal 9 is output. In the fourth word, normal data is detected on both sides.
Therefore, no CPU bus switching occurs and the default
The master-side data set as default is T06
Output by The data of the fifth word has an error on the slave side.
Is detected, but the master side is normal and the CPU bus
No switching occurs, and the data on the master side remains at T0
7 is output. As shown in FIG. 4, an error is detected on the master side.
Memory device connected to the master side unless otherwise specified.
Data is output to the processing device 1 and an error is detected.
Memory device connected to the slave only when
The read data of the location is output to the processing device 1. Therefore,
Even if a changeover occurs, normal data is not transmitted to the processing unit.
It will be supplied at one timing. Also, as shown in FIG.
The gate signal line 32 of the buffer
Only the minute is in the state of "1". Set to “1” for the entire period
Then, when the CPU bus is switched, a short
It is time, but the outputs of the 3-state buffers on both sides collide
This is because As shown in Figure 5, the data is on the drive
On the data bus even after the end of
Determine the drive time required for design because it is maintained for a period
Can be FIG. 2 shows a master mode switching signal line.
As the master switching of the system bus controller 3 directly
Used, but with the addition of the master decision circuit shown in Figure 6.
Switches the master mode by the processing device 1
be able to. 6 to 6 show the operation of the master switching circuit.
7 will be described. In FIG. 7, when power is turned on, the timing
At T20, the master flip is performed by the reset signal line 42.
Flop 37 is in the state of master mode switching signal line 21
Therefore, it is set / reset, and the system bus controller 3
a, the master mode output signal line 41a is set to "1".
The master mode output signal line 41b of the bus controller 3b is
It is set to “0”. Master switching signal from processor 1
Each master flip-flop at T21 by line 38
37 is inverted synchronously, and the system bus controller 3a
The star mode output signal line 41a is set to “0” and the system bus
The master mode output signal line 41b of the control device 3b is "1".
Is set to This master mode output signal line 41 is connected to FIG.
By using as the master mode input signal line 21 of
Switching the mode of the system bus controller 3
Becomes possible. Embodiment 2 FIG. FIG. 8 relates to a second embodiment of the present invention.
In the dual memory system, CPU data is added to the first embodiment.
A bus check function has been added to further improve reliability.
It is. In FIG. 8, reference numeral 50 denotes CPU bus data 8.
Data rate for loading into the system bus controller
Circuit 51, the output signal line 1 of the data latch circuit 17.
8 and the output signal line 55 of the data receiver circuit 50 are compared.
The data comparison circuit 53 is a comparison circuit of the data comparison circuit 51.
An output signal line that outputs “1” when the results do not match, 54
Is a three-state buffer. FIG. 9 shows a system bus system for reading data.
Assuming that the operation is performed from the side of the control device 3a, the circuit of FIG.
The signal of each data comparison circuit 51 when a part fails
Line, CPU bus data 8 normality, and high level interrupt
FIG. 3 is a diagram showing a relationship between only signal lines 10. FIG. 10 shows a modification of the second embodiment of the present invention.
The output signal line 53 of each data comparison circuit 51 is
Output to the outside of the stem bus control device, and
The EXOR circuit 57 outputs a low level interrupt signal 9 and a high level interrupt signal.
And configured to generate the interrupt signal 10 of the
Similarly, FIG. 11 shows that a portion of the circuit of FIG. 10 has failed.
Sometimes the output signal line of each data comparison circuit 51 and the CPU
The normality of the bus data 8, the low-level interrupt signal 9 and the high
FIG. 3 is a diagram showing a relationship between level interrupt signal lines 10. FIG.
1, the data read is performed by the system bus controller.
3a. System bus control configured as described above
FIG. 8 shows the comparison operation of the CPU data bus of the device.
Will be explained. Data read from the dual memory device
Is temporarily latched by the data latch 17 and the comparison circuit 51
Provided to a driver circuit 31 composed of a three-state buffer
The system bus controller 3a on the master side is
1 through the driver circuit 31a.
Output to CPU bus. The data signal 8 of the CPU bus
Are the system bus controllers on both sides through the receiver circuit 50.
The data is taken into the device 3 and input to the comparison circuit 51. ratio
In the comparison circuit 51, the output of the data latch 17 and the receiver circuit
50 outputs are compared, "0" if they match, and if they do not match
The error signal line 53 is output. By the way, the master system
Master mode output signal line 41a of system bus controller 3a
Is set to “1”, the three-state buffer 5
The enable signal of 4a is inverted by the NOT circuit 52a
And "0" is given, so that the error signal line 53a is
Not output to the unit. On the other hand, the system bus system on the slave side
The master mode output signal line 41b of the control device 3b is set to "0".
Is set, the rice in the three-state buffer 54b is
The cable signal is inverted by the NOT circuit 52b to “1”.
, The error signal line 53b is
Buffer 54b, and a high level interrupt signal
The processing device 1 is notified as a line 10. Next, the middle of the data transfer path will be described with reference to FIG.
Error signal line 53 and CPU data
And the relationship between the interrupt signal line 10 and the validity of the
You. In this example, the data latch 17 and the ratio
Comparison circuit 51, driver circuit 31, and receiver circuit 50
Indicates the time of failure, and if everything is normal,
Naturally, the correct data is output on the CPU data bus.
And no interrupt is generated. Data latch 17
a or if the driver circuit 31a fails,
Data is output to the CPU data bus, which is
Error is detected by the comparison circuit and a high-level interrupt occurs
Then, the error of the read data is notified to the processing device 1. place
The processing device 1 executes the error analysis process stored in the control ROM 2.
By executing, for example, the master switching signal line 38
Output and change from the system bus controller 3a to 3b
Read the data from the memory device again.
Data latch 17a or driver circuit 31a
Can be detected. Thereafter, the system bus control device 3b becomes the master
Will work as a side. The master-side receiver circuit 50a or ratio
When the comparison circuit 51a fails, the comparison error signal line 53a
Is output internally, but the interrupt signal line 10 is output.
Does not affect operation. At this time, the CPU data bus
Since normal data is output to No. 8, there is no problem. one
On the other hand, the slave side receiver circuit 50b and the comparison circuit 51b
Or, when one of the data latches 17b fails,
Correct data is output from the master to the CPU data bus.
Despite this, the comparison error signal line 53b becomes “1”.
Thus, the high-level interrupt signal line 10 is output. At this time
The processing unit 1 also outputs a master switching signal line,
The master is switched to the stem bus control device 3b side.
To prevent unnecessary switching due to a slave side failure
The following method may be used. That is, the system
Status of the error signal line 53 in the
Stored in a register (not shown), and the processing device 1
This step is performed when the error processing stored in M2 is executed.
Check the contents of the status register. At this time, the master
If no error occurs, do not switch master
Control may be performed as follows. In FIG. 9, data reading is performed by the system.
Since it is assumed that the processing is performed from the side of the bus control device 3a,
The comparison error signal line 53b and the high-level interrupt signal line 10
Logic always matches. This is shown in FIG.
-The signal line 53b is output as the high-level interrupt signal line 10.
It is to be empowered. This is shown in FIG. 9 by #B_ERR
Indicated by the matching of the logic in the OR and HINTR columns
Have been. Next, the comparison error signal line 53 is connected to both sides of the system.
Output from the system bus controller 3
An example of generating different types of interrupts is shown in FIG.
This will be described with reference to FIG. Difference between FIG. 10 and FIG. 8 described above.
Outputs the output of the comparison circuit 51 to the outside on both sides, and
Processing unit 1 by AND gate and EXOR gate
The point is that it is generated as an interrupt signal for it. The driver circuit 31a shown in FIG.
The comparison error signal lines 53 on both sides become “1”.
The high level interrupt signal line 10 is output,
In the case of a minute failure, a low-level interrupt signal line 9 is output.
Normality judgment of data output to CPU data bus
In a sense, even when the data latch 17a fails,
Should be output, but this is
As in the first embodiment, the parity of the output of the data latch 17 is also detected.
Check circuit is added and data is switched from slave side and output.
We will try to solve it. As a result, C
As long as the data output to the PU data bus is normal
Low level interrupt signal, high level only when abnormal
An interrupt signal can be output. Embodiment 3 FIG. FIG. 12 shows a third embodiment of the present invention.
According to the present invention. In the figure, 60
Is the CPU data contained in the system bus controller 3
A bus side driver / receiver, 61 is a system bus side
The driver / receiver 62 is built in the memory device 4
The driver / receiver 63 is a
64 is built into the system bus controller 3
The parity check circuit 65 on the CPU data bus side,
The system bus side built in the system bus controller 3
The parity check circuit 66 is provided with a
Parity check circuits, 67 to 69 are parity check circuits respectively.
Status register storing the results of paths 64 to 66
, 70 is the internal bus of the system bus controller, 71 is the memo
And 72, an internal bus of the memory device 4. FIG. 13 shows a memo in the system of FIG.
FIG. 14 shows an error analysis during a write operation to the memory.
FIG. 9 is a diagram illustrating error analysis during a read operation from memory,
In the status register, ○ indicates that no error was detected, and × indicates error.
-Indicates detection. The dual memory system configured as described above
The operation of the system will be described with reference to FIG. First processing equipment
When 1 writes data to the memory device 4,
Error check codes such as parity codes
And outputs it to the CPU data bus 8. system
The bus controller 3 outputs the data with parity output from the processor 1.
The data is received by the receiver circuit 60, and the data
The parity check is performed by the parity check circuit 64, and the result is checked.
Stored in the status register 67 and received by the receiver 60
The received data passes through the internal bus 70 and is
Driver circuit 61 and output to the system bus 13.
It is. A parity check circuit 65 is provided immediately before the driver circuit.
Yes, the check result is also stored in the status register 68
Is stored. Further, the memory device 4 includes a system bus 13
From the receiver via the receiver circuit 62, and
Parity check by the parity check circuit 66
The result is stored in the status register 69, and
1 is the content of the data bus 72 in the memory device as it is
Write as data part and check code part. When writing
If an error is detected somewhere in the data path of the
1 is interrupted (interrupt signal line is not shown)
), The processing device 1 detects errors stored in the control ROM 2.
-Execute the analysis program to identify the fault location. Next, the error detection result at the time of writing is stored.
Status registers 64 to 66
An example of failure analysis will be described with reference to FIG. The failure probability is
Based on circuit size, memory is 1/10000 and bus is 100,000
1 / parity generation / check circuit and driver / reggy
Assuming that the buffer is 1 / 1,000,000, for example, memory and parity
Double failure of test circuit is 10,000 x 1 million = 1/10 billion
Assume that FIG. 13 shows a possible failure cause.
Of the combination with the highest probability of occurrence
Have been. Failure is 8 depending on the status register combination.
The type is conceivable, and case 1 is a state where no error has occurred.
It is a state. Case 2 is the internal bus of the system bus controller.
Since up to 70 is normal, the system bus 13 and driver
Path 61, a memory device receiver circuit 62, or a parity circuit.
Any failure of the inspection circuit 66 is considered,
By comparing the occurrence probabilities, it is estimated that the system bus 13 has failed.
It is. In case 3, the parity check circuit 65 is on the way.
This parity check circuit detects an injury error.
It is estimated that only 65 failures have occurred. In this case, the parity
Inspection circuits 64 and 66 are faulty and only 65 is correct
However, as in Case 2, it is determined from the probability of failure.
I do. The following case may be considered in the same manner. Subsequently, the operation at the time of reading from the memory device 4
Will be described with reference to FIG. The memory 71 has a data section
Error check code part is stored and read
The parity-added data is sent to the parity check circuit 66.
And the result is stored in the status register 69.
Stored, and then the system
13 and the system bus control device 3
This is received through the circuit 61 and the parity check circuit 6
Status check result of parity check by 5
68. Further, a driver circuit 60 for the CPU bus
Of the parity check by the immediately preceding parity check circuit 64
The result is stored in the status register 67. system
The bus controller 3 detects a parity error in the data.
Error is not detected according to the operation of the first embodiment.
The system bus controller on the side sends data to the processor 1
Is sent. An error detection result at the time of reading is stored.
Status registers 64 to 66
An analysis example will be described with reference to FIG. In FIG.
Among the possible combinations of failure points, the one with the highest probability
Is caused. Case 8 is reading from memory 71
Since an error has been detected immediately after
Possible failures or errors in the data path during writing
However, the former failure is determined by comparing the probabilities. Case
7 is correct when reading from memory,
Error has been detected, the system bus 13
In case 6, the parity check circuit 65 and the memory 71 fail.
it is conceivable that. The following case may be considered in the same manner. Embodiment 4 FIG. FIG. 15 shows a fourth embodiment of the present embodiment.
4 is a duplicated memory system according to an embodiment. 8 in the figure
0 is inside the system bus controller 3 and
An error detection circuit that detects errors in data sent to the bus
And 81, the result of the error detection circuit 80
System bus switching signal line to be transmitted to the bus controller 8
2 is a system bus switching signal line 81 from the other party and an internal
A system that operates according to the result of the error detection circuit 80
System bus switching circuit for switching the bus, 85
Is inside the memory device 4 and is read from the memory 71
An error detection circuit 84 detects an error in the data
The result of the error detection circuit 85 is transmitted to the memory device on the other side.
The memory error detection signal line 83 is a memory error
-The result of the detection signal line 84 and the internal error detection circuit 85
The system for switching the system bus
This is a system bus switching circuit. FIG. 16 shows the system bus switching in FIG.
Output data in the circuit 82 and the error detection circuit 80
This is a diagram showing the concept of switching, where reference numeral 94 denotes a system bar.
For storing the contents of the data bus 70 inside the data controller.
And a latch 90 for transmitting data to the system bus A.
3-state buffer for stem bus A, 91
3-state bus for system bus B that sends data to bus B
Reference numeral 86 denotes a three-state buffer 9 for the system bus A.
AND gate 87 for generating an output enable signal of 0
The output enable signal of the three-state buffer 91 for the system bus B is
The generating AND gate 95 is a three-state buffer 90
AND gates that generate output enable signals for both
92 is a set of system bus switching signal lines 81a and 81b
EXOR game that generates low-level interrupt by matching
Similarly, 93 is an AND that generates a high-level interrupt.
The gate. FIG. 17 shows the system bus cutoff in FIG.
Input data in the conversion circuit 83 and the error detection circuit 85.
This figure shows the concept of data switching.
Data from the memory bus A13a into the memory device 4.
The sheaver circuit 99 receives data from the system bus B13b.
Each of the receiver circuits to be loaded into the memory device 4
Data signals 76 and 77 are output. 83 is an input data signal
An error detection circuit that performs a parity check of the
Select the correct data according to the result of the error detection
And a selection circuit for outputting the signal to the internal bus 72. NOT
The input switching signal 78 which is the output signal of the port 74 is "1".
, The input data line 76 is selected, and the AND gate 75
When the input switching signal line 79, which is the output signal of
Is configured to select the input data line 77. FIG. 18 shows the processing from the processing device 1 to the memory device 4.
When data bus breaks during data write
Like bus switching by bus switching circuits 82 and 85
(A) is a normal state, (B) is a CP
A state in which the receiver in the U bus switching circuit 7a has failed;
(C) is a state in which the system bus A13a has failed, (D).
Indicates that the driver of the system bus switching circuit 82b has failed.
The data flow in the state is shown. Indicated by a broken line in the figure.
The data flow is closed by each 3-state buffer
In this state, no actual data is output. Similarly, FIG. 19 shows that the processing device 1 is a memory device.
4 when the data bus fails during reading from
PU bus switching circuit 7, system bus switching circuit 82 and
FIG. 7A is a diagram showing a state of switching buses according to FIGS.
Are all normal, (B) is a system bus switching circuit 8
2a: The receiver inside has failed, (C) is the system
The state in which the bus A13a has failed, FIG.
Data when the built-in memory 71a has failed
It shows the flow. The dual memory system configured as described above
The schematic operation of the system will be described with reference to FIG. place
When the processing device 1 writes to the memory device 4, the processing device
The write data from 1 is transferred to the CPU data bus 8
Supplied to each of the duplicated system bus controllers 3,
The system bus control unit writes data to the system bus 13.
Immediately before sending the data, the error check circuit 80
Check and send the result to the system bus switching signal.
Are exchanged with each other as line 81 and an error is detected.
When there is no system bus controller 3a on the master side,
System bus controller on the slave side
3b outputs data to the system bus B13b.
You. When an error is detected, the system bus switching described above is performed.
The signal line 81 becomes "1" and the system bus switching circuit 8
2 to the system bus 13 on the side that detected the error.
Stops output and replaces the other system bus controller
Outputs write data to the system buses on both sides. Also
In the memory device 4, the writing output to the system bus
Data is fetched from both system buses 13 and an error occurs.
A parity check is performed by the detection circuit 85, and an error occurs.
Writes unbused system bus data to memory 71
No. At the time of reading from the memory device 4,
About the data read from the duplicated memory 71,
And a parity check is performed by the internal error detection circuit 85.
Output the result as a memory error signal line 84
Mutual notification is made, and if there is no error, the memory device 4a
The memory device 4b is connected to the system bus A13a by the system bus A13a.
Data to the source B 13b, and when an error occurs,
The memory device on the generating side is sent to the system bus switching circuit 83.
Data output to the system bus is stopped
Memory device outputs read data to both system buses
I do. In addition, the system bus control device 3
Data from the error detection circuit 6
Check and check the result with the CPU bus switching signal line.
Output to each other to notify each other.
The system bus controller 3a on the data side
The read data is output to the
The system bus controller on the other side is a CPU bus switching circuit 7
Data output is stopped by the
The control device outputs on its behalf. First, the data is transferred from the processing device 1 to the memory device 4.
The detailed operation when writing data will be described with reference to FIG.
Write data from the processing device is passed through the internal bus
Data latch 94 and the error detection
A parity check is performed by the path 80. Data
The output signal of switch 94 is a three-state buffer.
Power buffers 90 and 91,
The gate signal of the buffer is connected to the master mode input signal line 21
Stem bus switching signal lines 81a and 81b and data output
It is controlled by the timing clock signal 30. D
Error detected by the error detection circuits 80a and 80b.
If not, the master side system bus control unit 3a
When the output of the D gate 86a is "1", the AND gate 87a and the
And the output of the OR gate 96a is "0".
a is "1" and the output of the OR gate 97a is
It becomes "0" and the system bus
The data is output to A13a. On the other hand, the slave system
In the bus controller 3b, AND gates 86b and 95b
Is "0" and the output of AND gate 87b is "1".
The output of the OR gate 97b is "1",
The output of the port 96b becomes "0" and the output buffer 91b
The data is output to the system bus B13b via the terminal. By the way, the system bus controller 3a
Data error is detected, the output of the error detection circuit 80a is output.
When 81a becomes "1", the output of the AND gate 86a becomes
It becomes "0" and the output of the output buffer 90a is stopped.
System bus controller 3b is the system bus from the other party
When the switching signal line 81a becomes “1”, an AND gate
The output of the output buffer 90b becomes "1".
The output is also enabled, and the system buses A13a and A13a
Output data to both sides of b. Further, in the memory device 4 shown in FIG.
Thus, the data of the system buses on both sides are
8 and 99, the error detection circuit 83
Is performing a parity check and no error is detected.
Output, the output of the error detection circuit 83-1 is "0"
The data switching signal line 78 becomes "1" and the system bus
A13a data is selectively output to the internal bus 72. on the other hand
When a failure occurs in the system bus A13a, an error detection
The output of the path 83-1 is "1", and the input data switching signal line 7
8 is "0" and the input data switching signal line 79 is "1".
As a result, the data on the system bus B13b is
Output to the switch 72. Incidentally, the error detection circuits 83-1 and 83-1
If an error is detected in both 3-2 (for example, the system
The bus 13a breaks down and the master-side receiver circuit 99
a) has failed, the input data switching signal line 78 and
79 are both "0", and the selection circuit 73a
The system bus cannot be selected. Note at this time
Incorrect data in the file 71a (this is detected as an error
Can not be written)
A situation in which data is sent to the processing device 1 may occur. This
This can be avoided by the following method. In other words, yes
If the system bus cannot be selected, the internal bus
Error data (for example, even parity
In all cases, all data is “1”, and in the case of odd parity, all
The selection circuit 73 is configured to generate “0” data).
Then, error data is forcibly written to the memory. This result
As a result, at the time of reading, the operation of the first embodiment
The system bus controller 3b processes the correct read data.
Can be sent to the processing device 1. FIG. 15 will be described again. Processing device 1 is a memo
The operation when reading data from the memory device 4 is performed by a memory device.
Internally, as in FIG. 16 in the system bus control device 3
Circuit is built in, and the data read from the memory
If there is no error in the data, the memory device 4a
The readout data is output to the memory A13a, and the memory device 4b outputs
The read data is output to the system bus B13b. one
On the other hand, reading of the memory 71b built in the memory device 4b
When an error is detected in the data, the output of the memory device 4b is output.
Buffer data output is stopped and the memory error detection signal is
No. 84b is output to the memory device 4a on the other side, and
The signal causes the memory device 4a to transfer data to the system buses on both sides.
Output data. Also, inside the system bus controller 3
There is an input data selection circuit similar to the memory device 4,
Is the internal bus for reading data from the system bus A13a.
But an error occurs on the system bus A13a side.
When detected, the read data of system bus B13b is
Output to internal bus. The memory system duplicated as described above
Data cut when some of the components fail
The state of the replacement is described with reference to FIG. 18 during the write operation.
I do. (A) In the case where everything is normal, the processing device 1
These write data are transmitted from the system bus controller 3a to the
The system bus A 13a and the system bus controller 3b
Output to the stem bus B13b, the memory device 4
Select the data of the bus A13a as the write data,
Write to the memory 71. (B) The internal circuit of the CPU bus switching circuit 7a
In the state where the sheather has failed, the system bus controller 3a
Outputs a system bus switching signal line 81a from the
The output buffer of the system bus controller 3a is closed,
The system bus controller 4b transmits data to the system buses on both sides.
And the memory device 4 is connected to the system bus A13a.
Select the data as write data and write to memory 71
Put in. (C) System bus A13a has failed
In the state, the memory device 4 stores the data of the system bus B13b.
Is selected as write data, and is written to the memory 71. (D) System bus switching circuit 82b
When the driver has failed, the system bus B13b
Although the correct data is not output, the memory device 4
There is no effect because data on the stem bus A13a is written.
No. The reading operation will be described with reference to FIG.
I do. (A) In the normal state, the memory 71
The data read from the memory device 4a
The bus A13a is connected to the system bus B1 from the memory device 4b.
3b, and the system bus controller 3a
Send the read data to the (B) Inside the system bus switching circuit 82a
The system bus controller
An error is detected by the error detection circuit 3a and the CPU bus
The switching signal line 12a is output, and the signal line
Stem bus controller 3b outputs data to CPU bus
You. (C) System bus A13a has failed
In the state, the system bus A13 is set in the system bus control device.
a is detected and the system bus B13b is read.
Using data as input data, the system bus control
The device 3a sends data to the CPU bus. (D) Memo stored in the memory device 4
In the state where the memory 71a has failed, the internal
The error detection circuit detects an error and
Outgoing signal line 84a, and the memory device 4
b sends out the read data to the system buses on both sides,
The system bus controller 3a sends data to the CPU bus.
You. Embodiment 5 FIG. FIG. 20 shows a fifth embodiment of the present invention.
According to the present invention. In the figure, 10
0 is the CPU bus mode built in the system bus controller 3.
Mode setting circuit for setting a mode, 101 is a system bus
Mode setting circuit for setting the mode of
Mode for setting the mode of the system bus
The circuit setting circuit 104 is built in the system bus controller 3.
To compare the data of redundant and duplicated system buses
The circuit 105 is built in the memory device 4 and duplicated.
This is a comparison circuit for comparing data of the system bus. FIG. 21 shows the inside of the system bus controller 3.
FIG. 1 is a diagram showing the concept of a circuit for controlling a CPU bus.
Mode setting circuit 100, data latch 17, comparison circuit
Path 51, a driver 31, and a receiver 50.
To the A bus permission signal line 106 output from the
Controls the data output of the CPU bus. FIG. 22 shows a system bus controller 3
Shows the concept of the circuit that controls the system bus inside.
The system bus A is connected to the A bus permission signal line 10.
6, the system bus B is connected to the B bus permission signal line 107.
Control the data output of the system bus. FIG. 23 shows a mode setting circuit in FIG.
FIG. 10 is a diagram showing details of 101 (same for 100 and 102).
You. In the figure, 120 is a mode setting data signal line, 1
21 is a mode setting data according to the master mode input line 21.
Selector circuit for selecting a selector signal, and 122 is a selector circuit.
The output signal line of the data circuit 121, 123
Mode latch to store, 125 stores B bus mode
The mode setting signal line 103
The contents of the output signal line 122 of the
Mode output signal lines 124 and 126 are AND gates at the subsequent stage.
And the OR gate, the final output signal
The A bus permission signal 106 and the B bus permission signal 107
Output. FIG. 24 shows the mode setting circuit in FIG.
FIG. 10 is a diagram showing an operation sequence of the embodiment.
Timing, T101 and T104 are mode setting timing
In T102, an error occurs on the system bus controller 3a side.
The detected timing, T103 is the time when the error is recovered.
Ming. FIG. 25 shows a memory device in actual operation.
4 shows the relationship between the operation and the mode of FIG.
(B) shows the details of the diagnostic operation (process 142).
The relationship with FIG. 24 is that the power-on process 140 is T1
At 00, the mode change processing 143 causes a failure to occur at T101.
145 is at T102, and mode change processing 146 is at T104.
, Respectively. The dual memory system configured as described above
The schematic operation of the system will be described with reference to FIG. Mo
Mode setting circuit 100 to 102 independently
A, B, C, and D modes can now be set.
The mode setting circuit 100 includes a system bus control device.
A system in which the device 3 outputs read data to the CPU data bus 8
The mode setting circuit 101 controls the system bus controller 3
Controls the output of write data to the system bus.
The memory setting device 102 reads the memory device 4 to the system bus.
Control to output data. System bus controller
3 controls output of data to the CPU data bus.
Mode setting circuit 100, the status of the system bus controller 3
The state of error detection by the internal error detection circuit 6,
Controlled by the CPU bus switching signal line 12 from the other party
It is. To the system bus by the system bus controller 3
Data output control depends on the state of the mode setting circuit 101 and the status.
An error detection circuit 80 inside the stem bus control device 3
Error detection status, system bus switching from partner
It is controlled by the signal line 81. In addition, the memory device 4
The output control of data to the system bus
Path 102 status, error detection inside memory device 4
Status of error detection by circuit 85, system from partner
It is controlled by a bus switching signal line 84. The output circuit of each bus includes
Compare the results, output the result to the outside, and
There is a comparison circuit for generating, and the output is
Enter the data immediately before and the output data again and compare
The system bus side has two system buses.
Compare the contents. Next, the CPU bus of the system bus controller 3
The detailed operation on the side will be described with reference to FIG. Through
In a normal operation, the mode setting circuit 100a is in the mode A,
The mode setting circuit 100b is set to mode B,
The data read from the memory device is
Latched in the data latch 17 via the internal bus 70 of the device 3
And a parity check by the error detection circuit 6.
Is performed. In the mode A system bus controller 3a
Means that an error has not been detected by the error detection circuit 6a.
For example, the output 106a of the mode setting circuit 100a becomes "1".
The read data is sent from the driver circuit 31a to the CPU data.
Output to tabus 8. If an error is detected, the mode
The output 106a of the constant circuit 100a becomes "0" and the data
Of the CPU bus switching signal line 1
"1" is output to 2a. In the mode B system bus controller 3b,
Indicates that the CPU bus switching signal line 12a from the other party is "0".
If the output 106b of the mode setting circuit 100b is
Becomes “0” and does not output data to the CPU data bus.
However, no error is detected by the error detection circuit 6b.
Sometimes, the CPU bus switching signal line 12a from the other party
When it becomes “1”, the output 106 of the mode setting circuit 100 b
b becomes “1” and the read data is transferred to the CPU data bus 8
Output to When turning on the system,
The mode setting circuit 100 is also set to mode D,
The output 106 of the constant circuit 100 is always "0",
Read data to the CPU data bus by the stem bus controller
Is not output. (It should be noted here that the CPU
Since the bus is not duplicated like the system bus,
Only one of the mode A and B system bus controllers C
Output is allowed to the PU data bus. others
Modes A and B are used for controlling the system bus described later.
The meaning is different from those. For the same reason, the CPU bus
Mode C is not used in the control. The mode A system bus controller 3a is
In addition, the own output data is transmitted via the receiver circuit 50a.
And the input signal line 55a is connected to the data latch 17a.
Mode B system comparing output signal line 18a
The bus control device 3b transmits the output data of the other party to a receiver circuit.
50b, the input signal line 55b and the data
The output signal line 18b of the latch 17b is compared. Comparison
If the result is different, the comparison error signal line 53 becomes "1".
This signal is transmitted to the mode B system bus controller 3b.
Is output to the outside via the three-state buffer 54b,
Is notified to the processing device 1 as a level interrupt signal line 10.
Then, the processing device performs the error analysis as shown in FIG. The system bus by the system bus controller 3
Since the output control to the memory is equivalent to that of the memory device,
The output control to the system bus by the device 4 is shown in FIG.
This will be described with reference to FIG. In normal operation mode, the mode
The setting circuit 102a sets the mode A to the mode setting circuit 102
b is set to mode B and read from memory
The data is transferred to the data bus via the internal bus 72 of the memory device.
Latch 94 and the error detection circuit 85
Performs a parity check. Mode A memory device
4a, no error is detected by the error detection circuit 85a.
If the output 106a of the mode setting circuit 102a is
“1” and 107a become “0”, and the read data is
Output from the inverter circuit 90a to the system bus A13a.
You. When an error is detected, the mode setting circuit 102a
The forces 106a and 107a are both "0", and the data
Signal output and the system bus switching signal line
84a is output to "1". Also when an error is detected
When there is no system bus switching signal line 84 from the other party
When b becomes “1”, the output 1 of the mode setting circuit 102a
06a and 107a are both "1" and the read data
From both driver circuits 90a and 91a.
It is output to buses A13a and 13b. On the other hand, in the memory device 4b of mode B,
If no error is detected by the error detection circuit 85b,
Output 106b of the mode setting circuit 102b is "0", 107b
Becomes "1" and the read data is
Is output to the system bus B13b. Error detected
The outputs 106b and 10 of the mode setting circuit 102b
7b are both "0" and when data output is stopped
In both cases, the system bus switching signal line 84b goes out to "1".
Is forced. If no error is detected,
These system bus switching signal lines 84a become "1".
And outputs 106b and 107 of the mode setting circuit 102b.
b are both "1" and the read data is
90b and 91b from both system buses A13a and
13b. Further, the memory devices 4 on both sides are duplicated.
The data of the system bus is transferred to the receiver circuits 108 and 10.
9 and is compared by the comparison circuit 105.
The comparison result is an error output signal of the internal error detection circuit 85.
(System bus switching signal line 84) and OR gate processing
Output to the outside, and the AND gate 93 and the EXOR gate
Conditions are taken at port 92 and the difference
And generates an interrupt signal of the specified level. Processing unit 1
Error analysis as shown in FIG.
Perform processing. Regarding the configuration and operation of the mode setting circuit,
Mode setting circuit 10 built in stem bus control device 3
The case of 1 will be described with reference to FIGS. 23 and 24.
First, when the power is turned on, a reset signal is issued at the timing of T100.
Signal 42 becomes "0" and the mode latches 123 and 12
5 is reset, the output becomes “0” and the mode setting
Roads 101a and 101b are both in mode D (initial mode).
C). In mode D, AND gate 127,
Since the outputs of 129 and 134 become “0”, the bus permission signal is output.
Signal lines 106 and 107 both output "0". Next, the processing device corresponds to T101 in FIG.
At timing, the data signals 120-1 to 120-4
And the data “1001” corresponding to the mode to be set
When the mode setting signal line 103 is output with the
The circuit 121 operates according to the state of the master mode input line 21.
Two of the input data 120 are selected. Here cis
The master mode input line 21a of the system bus controller 3a is
Since it is “1”, the output signal 122-1 of the selector circuit is output.
a, input data 120-1 is the output signal of the selector circuit.
No. 122-2a receives input data 120-3,
On the other hand, the master mode input line 2 of the system bus controller 3b
Since 1b is “0”, the output signal 12b of the selector circuit is
The input data 120-2 is input to the selector circuit 2-1b.
Input data 120-4 is output to the output signal 122-2b.
The mode setting circuit 101a sets the mode to the mode A.
The constant circuit 101b is set to mode B. Conversely,
Mode A means that the mode output signal 124a is "1"
The output signal 126a becomes "0" and the bus permission signal line 10
The mode in which "1" is output to 6a and "0" is output to 107a
Can be defined. Similarly, in mode B, the mode output signal 124
b becomes “0”, the mode output signal 126b becomes “1”,
"0" is applied to the bus permission signal line 106b, and
“1” is output. By the way, from T102 to T103 in FIG.
Timing, that is, the mode of the system bus controller 3a
A is a state in which the system bus controller 3b is in the mode B
The error detection circuit 80 on the system bus control device 3a side
a detects an error, the internal error signal line 81a
It becomes "1" and the AND gates 127a, 129a, 13
4a is "0", A bus enable signal line 106a and B bus enable
The signal lines 107a are both "0". Hand system
In the bus controller 3b, the system bus switching signal line 81a
(Logically the same as the internal error signal 81a) becomes "1"
Therefore, the output of the AND gate 134b becomes “1”.
A gate, which is the output of the OR gates 132b and 133b
Bus enable signal line 106a and B bus enable signal line 107a
Both become "1". Further, the processing device is T104 in FIG.
, The data signals 120-1 to 120-
Data "0101" corresponding to the mode to be set to 4
When the mode setting signal line 103 is output with the
Mode latches 123a and 125 in bus controller 3a
a are both "0" and the mode setting circuit 101a
Returning to the mode D, the bus permission signal lines 106a and 107a
It becomes "0" on both sides. On the other hand, in the system bus control device 3b
Mode latches 123b and 125b are both "1".
And the mode setting circuit 101a is set to the mode C,
The bus permission signal lines 106b and 107b are both "1".
Become. In the above described dual memory system,
Using the mode setting circuit allows diagnosis, replacement, recovery, etc.
Processing can be performed easily. In the memory device 4
An example using this function will be described with reference to FIG.
You. The duplicated memory devices are respectively A system and B system.
The mode settings are changed in synchronization with each other.
While processing. First, note 140 on both sides in process 140
When the power is turned on to the
Both sides are set to mode D, and both memories are
Data is not output. Next, writing and reading in process 142
FIG. 25 illustrates the initial diagnosis of the memory by the comparison check.
I will tell. To diagnose memory, duplicated notes
Write data must be read independently of the storage device
Therefore, first, in the process 142-1a, the memory device of the A system is
In mode C, the memory device of system B is
Mode D, and the read data is
And output the data to the memory device in process 142-2a.
Write, read, and compare data. For this reason,
The memory device of the A system is diagnosed. At this time,
Data is also written to the memory device of system B,
It has no effect on the diagnostic results of the Tohoku group. Next, in process 142-3, A
Set the system memory device to mode D, and set the system B memory device
The mode is set to mode C, and the memo of system B is set in process 142-4b.
The device can be tested. The initial diagnosis of the memory device by the process 142
Upon completion, the memory device of the A system is set to the mode in the process 143.
To set the memory device of system B to mode B
More normal operation processing 144 is performed, that is, the system bus
A-system memory device sends read data to A13a
A memory device of the B system is read on the system bus B13b.
Send out data, and if an error is detected in either
Duplex, with opposite side sending data to both system buses
Memory operation. Failure of the A system due to failure 145a
If the memory device fails, the B-system memory device
While responding with the data, the processing unit 1
The analysis is performed, and if it is determined that repair and replacement are necessary, the process 146 is performed.
To set the memory device of system A to mode D and the memory device of system B
By setting the device to mode C, the memory
Device is disconnected from the system bus. After this
Also, the memory device of system B reads out data to the system buses on both sides.
147a of the A system
Can be implemented. Replacement of new memory device with system A
A, the memory device of the A system will be
Mode D, and the normal B
Read data from the memory device of the system
A copy operation for writing to the memory device is performed. Copy complete
When the processing is completed, the memory device of the A system is set to the mode A
Next, the memory device of system B is set to mode B,
The operation can be restored to the redundant memory operation. Embodiment 6 FIG. FIG. 26 shows a sixth embodiment of the present invention.
According to the present invention. In the figure, 170
Are built in the memory device 4 and write and read the memory.
A permission flag for controlling the overflow, 171 is a memory
A control circuit for generating access timing, 172 is a memo
Address determination to determine the access address to the
Another circuit, 173, forcibly writes error to memory 71
177 is a duplicated system.
It is an input / output control device connected to both of the buses. FIG. 27 shows the internal structure of the memory device 4.
In the figure, the permission flag 170, the address discrimination circuit 172,
Driver 220, receiver 221, parity generation circuit 23
9 and a memory 71. In the figure,
Read permission flag 170-1, write permission flag 1
70-2, a parity generation permission flag 170-3
And write / read to / from memory with a combination of these outputs.
Control the generation of parity. FIG. 28 shows details of the address discriminating circuit shown in FIG.
The common space designation register 231, individual empty
Interval designation register 232, I / O address determination circuit 23
0, comparison circuits 233 and 234, AND gate 237
And a common space write signal line 21 as an output signal.
0, individual space write signal line 211, common space read signal
A line 212 and an individual space read signal line 213 are generated. FIG. 29 shows the state when accessing the system bus.
FIG. 4 is a diagram showing divisions of an address space, where 200 is the entire memory space;
201 shows the entire I / O space, and FIG.
(B) shows the assignment at the time of single operation.
I have. The memory space further includes a common access space 202
It is divided into individual access spaces 203. FIG. 30 shows that the memory device in FIG.
FIG. 6 is a diagram showing a state transition performed by a lag 170.
In accordance with the combination of the permission flags, the disconnection operation state 18
1, normal operation state 183, restoration operation state 184, and protection
Defined in the operation state 185, error occurrence or permission
Transition between the states is performed by rewriting the flag. Detachment
Operation state 181 cannot be written or read, normal operation
State 183 indicates that both writing and reading are possible, and a repair operation state
184 is for writing only, and the protection operation state 185 is for reading
It is in a state where only the work is possible. FIG. 31 shows the error injection circuit 173 and the individual space.
Diagnostic area of memories 71a and 71b by access
Inject different data and error conditions into
Indicates data read by spatial access
It is. FIG. 32 shows an example in which the address is stored in the memory device 4.
An error detection circuit 176 is provided, and its output is
And if an error is detected on the other side, an error
Concept of configuration to store correct address in address register
FIG. 33 shows details. The dual memory system configured as described above
The schematic operation of the system will be described with reference to FIG. The permission flag 170 in the memory device 4
Read enable flag, write enable flag and parity generation
The address discriminating circuit 1 is composed of three bits of a permission flag.
72 determines the common access space and the individual access space.
U. Writing using the common access space from the processing device 1
When performing the operation, if the write enable flag is "1",
Parity generation regardless of the state of the parity generation enable flag
To write to the memory 71, and
If the lag is "0", no writing is performed. Also processing equipment
Performs a write operation using the individual access space from device 1.
At this time, regardless of the state of the write enable flag, the memory device 7
1 is written, but the parity generation permission flag is
If "0", the memory device 7 does not perform parity generation.
1 is written. Next, the processing device 1 uses the common access space.
When reading is performed, the read permission flag is set to “1”.
If there is, read it out, and if the read permission flag is "0"
If there is, no reading is performed. Also, individually from the processing device 1
When performing read using access space, read
Reading is performed irrespective of the state of the permission flag. The input / output control unit 177 has both system buses.
And the system bus switching circuit is implemented.
It has the same configuration as the system bus control device in Example 5,
When fetching the read data from the memory device 4,
Use the system bus data on the side where no error has occurred.
Use. Next, the permission flag 170 and the address discrimination circuit
172, the circuit configuration and operation of the error injection circuit 173
This will be described with reference to FIGS. 27 and 28. Permission flag 1
70 is a read permission flag 170-1, a write permission flag
170-2, composed of a parity generation permission flag 170-3
And the permission flag output from the address determination circuit 172.
Input from the system bus in accordance with the
The contents of the data signal lines 224-1 to 224-3 are latched.
Touch. In the initial state, all signals are reset by the reset signal 42.
The lag is initialized to "0". Read data to system
The gate signal 222 to be output to the bus is read enabled.
A read enable signal line 214, which is a flag output, and an address
Common space read signal 21 which is the output of the
2 and the individual space read signal 213. Ma
Read in the individual space, the individual space read signal
Since 213 becomes “1”, the function of the OR gate 219
The read permission signal line 214,
The gate signal 222 of the bus circuit 220 becomes “1”,
The read data from the memory 71 is output to the system bus.
On the other hand, when reading from the common space,
Even if the output signal 212 becomes “1”, the AND gate 21
8 if the read enable signal line 214 is not "1".
Read data is not output to the system bus. In writing to an individual space,
Indicates that since the individual space write signal 211 becomes "1",
By the function of the R gate 217, the write enable signal line 215
Memory write signal line 162 becomes "1" regardless of the state of
Thus, data is written to the memory 71. Meanwhile, common
When writing to space, the common space write signal
Even if the line 210 goes to “1”, the existence of the AND gate 216 remains.
The write enable signal line 215 is not "1".
The memory write signal line 162 does not become “1” and the memory 71
Is not written to. By the way, parity generation times
The path 239 is controlled by the parity generation permission signal line 163.
Has a function to control parity generation.
When the enable signal line 163 is "1", the parity data is normal.
Is generated, and when "0" is generated, an error occurs.
Shall be So writing in the common space
Is always “1” since the common space write signal line 210 becomes “1”.
Parity is generated correctly, but individual access is empty.
In the meantime, the parity enable flag signal line 338 is set to “1”.
The correct parity is generated only if
You. If this function is used in the write operation of the individual space,
Intentionally write data that causes a parity error in memory 71
Operation, that is, error injection can be performed. Further, the above-mentioned address determination circuit 172 is
28, and an I / O address determination circuit 230
Is set for register access to the memory device.
And decode the unique address. Here the system
Bus address signal line 13-2, master mode input line
21, the condition of the write signal line 13-4 of the system bus
The common space designation register setting signal line 235, the individual space
The designated register setting signal line 236 and the permission flag setting signal
The signal 225 is output. The common space register uses the setting signal
The value of the data signal line of the system bus is latched by the line 235.
The individual space register 232 includes a setting signal line 236.
Latch the value of the data signal line of the system bus
You. When the memory space is accessed from the processing device 1,
Address signal line 13-2 on the system bus and the common space finger
The content set in the constant register is compared by the comparison circuit 233.
If they match, the common information access signal 228 becomes “1”.
At this time, if the write signal line 13-4 is "1",
Common space write signal line by AND gate 237-3
210 is “1” and the read signal line 13-3 is “1”.
In this case, the common space read signal is output by AND gate 237-4.
The line 212 becomes “1”. Similarly, individual space designation cash register
The setting contents of the star are compared by the comparing circuit 234, and when they match,
When the individual signal access signal 229 becomes "1", the individual space
Write signal 211 or individual space read signal line 213
Becomes “1”. Address discriminating circuit 1 operating as described above
72, the address space of the memory device 4 is
An example of assignment will be described with reference to FIG. (FIG. 29
Here, entities represented by 200 to 207 each have a width.
It is a memory area with. ) Fig. 29 (A) shows the duplex
In the setting example when operating as a memory,
The common access register is stored in the common space register 231a.
Set address 202-1 of memory A / B space, and
Address of the individual access memory A space is added to the inter-register 232a.
Address 203-1 is set. Next, for the memory device 4b
The common access memory A in the common space register 231b.
/ B space address 202-1 is set, and the individual space register is set.
Address 232b of the individual access memory B space
03-2 is set. With this setting, the common space 202-
In the access to the memory 1, the memory device 4a and the memo
And the individual access space 20
In accessing 3-1, the memory device 4a
In the access to the individual space 203-2,
Only the memory device 4b is targeted, and
Operation becomes possible. Also, as shown in FIG.
The common space register 231a is set to the common empty for the device 4a.
At the address 202-3 in the inter-access memory A space,
The common space register 231b is common to the storage device 4b.
Set to address 202-4 of space access memory B space
Then, access to the common address space 202-3 is performed.
Then, the memory device 4a is stored in the common address space 202-4.
Access to the memory device 4b is enabled,
Double the memory capacity compared to dual memory operation
Can be provided. Next, the permission flag 170 described above is
From the power-on using the
Normal operation, as well as repair and repair / replacement of faulty memory
Is defined by the combination of the read enable flag and the write enable flag.
FIG. 30 will be described together with the defined state transition. First
The normal operation state 183 is a read permission flag as a state definition.
And the write permission flag is “1”, and the restoration operation state 184 is
The read permission flag is "0" and the write permission flag is
“1”, the protection operation state 185 indicates that the read permission flag is
When "1", the write enable flag is "0", and the disconnection operation state
181 indicates that the read permission flag and the write permission flag
Set the status to “0” and turn off the system power.
Or the memory device has been removed from the system 18
0 is supplementarily defined. First, when the system is turned on, the state
Transition from 180 to transition 181 due to transition 186
I do. In this state, each memory device has its own
Write and read to / from memory 71 using
Memory diagnosis 188 such as read-out and comparison check,
If it is normal, correct by the transition 189 of the diagnosis completion at power-on.
It shifts to the normal operation state 183. In state 183, the memory
The device performs a duplex operation, when no error occurs, and
When a data parity error occurs, the state 183 is set.
Stay. Data parity errors occur repeatedly
And the memory device by the transition 191 for the fault diagnosis.
Move to the disconnection state 181, but if an error
The other memory device remains in the normal operation state 183. Normal memory device is in state 183, failed
If the memory device is in the detached state 181,
For the memory device, whether or not it can be repaired is determined by diagnostic processing 188.
On the other hand, during the diagnostic operation by the processor 1,
Access to the memory device by the control device 177 is a common space
The normal memory device responds
Normal operation is guaranteed. Diagnosis determined to be unrepairable
If it is, the maintenance personnel will replace it with a new memory device.
New memory devices are first detached by insertion
The state transits to the working state 181 and is diagnosed. By the way
When the state shifts to the disconnection state 181, the normal memory device
Differences in the contents of
Cannot move to state 183. So at the end of the diagnosis
Transition 196 to the restoration operation state 184.
In the repair operation state 184, the memory space is changed from the normal memory device to the common space.
Read data by writing and write by common space access
To both the normal memory device and the memory device to be repaired.
Write data. Copy processing 194 of all areas is completed
And the transition to completion of the restoration 193,
The device enters the normal operation state 183 and returns to dual memory operation.
To old. During this time, the memory device by the input / output control device 177
Since access to the storage is performed in a common space,
The write operation is performed on both memory devices and the read operation
Operation is normal with normal memory device in state 183 responding
Operation is guaranteed. In the normal operation state 183, the address parity is
When a memory error occurs, the memory device
During the data, the memory contents of the address
Immediately set the read permission flag to “0” and start reading.
The operation is prohibited, and the state is shifted to the restoration operation state 184. Address
Recovery operation state 184 after a security error has occurred.
The write to the failed memory device continues.
Therefore, until the restoration processing by the processing apparatus 1 starts, the
The difference between the contents of a new memory device and that of
Only the place where After performing the necessary restoration processing there,
The normal operation state 183 can be returned. The usage of the protection operation state 185 will be described.
I will tell. Mode switching from the processing device 1 to the protection operation state
The process proceeds to the replacement process 197. For example, system bus 1
Diagnosis of failure of input / output control unit 177 connected to 3
This device will write correctly to the memory device.
Does not always execute, involves writing to the memory device
If the diagnosis is executed carelessly, the contents of the memory 71 will be destroyed
Can. Therefore, one of the duplicated memory devices is preserved.
Protection operation state 185 to prevent destruction of memory contents
Post-diagnosis is executed, and after the diagnosis is completed, the
The contents are copied from the memory device to the memory device in the normal operation state 183.
I will be. As a result, even if the I / O controller
Can be restored to normal memory even if illegal write operation is performed
Noh. If the I / O controller operates normally,
Normal operation with the write enable flag remaining "1".
Since the data is written to the memory device in the operation state 183,
The operation of the I / O controller can be diagnosed by checking the contents.
You. Next, the error injection circuit shown in FIG.
Error injection status used and diagnosis method using this function
The method will be described with reference to FIGS. Figure
The area 71-1 in 31 is a normal area for programs and data.
Data is stored, and the areas 71-2 to 71-5 are stored in the diagnostic area.
Used as an area. First, the parity permission of the memory device 4a is
The enable flag is set to “1” and the individual space of the memory device 4a is set.
Data “8888” is stored in area 71-2a by access
Write data “AAAAA” to the area 71-4a.
Thus, normal data is generated. Next, the memory device
4a is set to "0" and the memory device
The data is stored in the area 71-3a by the individual space access of the device 4a.
Data “B999” in the area 71-5a.
By writing B ”, the data including the parity error
Data is generated. Similarly for the memory device 4b
Indicates that the data “CCC” is stored in the areas 71-2b and 71-3b.
C "and the normal data of" DDDD "are stored in the area 71-4b.
And 71-5b contain data "EEEE" and "FFF".
Write the data including the parity error of F ". As described above, the normal data and the parity
With the data containing the
And the like, the processing apparatus 1 makes the diagnosis area
If an error occurs in the memory by reading,
Output the contents of the normal memory,
A high-level interrupt occurs if an error is detected
The function (operation in the fourth embodiment) can be diagnosed. Ie
If the function is normal, the memory in reading the area 71-2
71a responds and data "8888" is stored in the area 71-3.
In reading, the memory 71a has an error, so the memory 71b
Normal data “DDDD” is read from the area 71-5.
Now, both memories have errors, so a high level interrupt
appear. Error detecting means 85 in the memory device 4a
If a does not operate normally, read the area 71-3
Then, the error data “9999” is read out,
The location can be determined. Next, FIG.
A brief description will be given using 32. From the processing device 1 to the memory device
When address 4 is accessed, the address signal of the memory
Is performed by the address error detection circuit 176.
This result is sent to the other memory device for address error detection.
Output as output signal line 175 and detect error
The read side sets the internal read permission flag to “0” and reads
Prohibit putting out. On the other hand, the other party's address error signal line 17
5, the memory device that detects the change in address 5
-Stored in the address register 174,
The processing device 1 that knows the occurrence of the address error
Execute the failure analysis recovery program stored in OM2
The memory address at which the error occurred to the normal side memory.
Read from error address register 174 in memory device
You. Reads the contents of the memory indicated by this address and
By writing, the contents of the memory where the error occurred
Restore normal data. Of the above operations, address error detection and
For details of the error address register, refer to FIG.
Will be explained. The address error detection circuit 176a
Parity check of the address signal line 13-2a on the
Address, and if an error is detected, an address error will occur.
The signal line 175a outputs "1". This signal is internally
Resets read permission flag 170-1a to "0"
At the same time, the write signal line 1 is
62 is set to "0" to prohibit writing to the wrong address.
Stop. On the other hand, the address error occurs in the memory device 4b on the other side.
Is detected, an address error signal from the other party is sent.
Signal line 175b becomes "1" and the address signal line at this time
13-2a is stored in the error address register 174a.
It is memorized. Also, an address error occurred during reading
In this case, the memory error detection signal line 84 in FIG.
If the corresponding signal is output,
The reading device outputs the read data.
Outgoing data can be guaranteed. Moreover, an address error occurs
In the memory device that was written, only the part where the error occurred was rewritten.
It is simply not repaired and can be easily repaired. Address
When an error occurs, an EXOR gate
92 and an AND gate 93 for detecting an address error
It is generated under the conditions of signal lines 175a and 175b. either
E if an address error occurs in one of the memory devices
The output of the XOR gate 92 becomes “1” and the low level
A write signal 9 is output, and the address is stored in both memory devices.
If an error occurs, the output of AND gate 93 is
It becomes “1” and a high level interrupt signal 10 is output.
You. A low-level interrupt indicates an errored access
Address error register in memory device with normal address
Indicates that the data is stored in the
Level interrupts have an error access address.
Indicates that the restoration process is impossible because it cannot be specified. Embodiment 7 FIG. FIG. 34 shows a seventh embodiment of the present invention.
In the memory device of the redundant memory system according to
FIG. 9 is a diagram illustrating error detection. In the figure, 240 is
Receiver 241 for inputting dress is generated in advance
Error upper limit value to set the upper limit
The register 244 writes a value to the error upper limit register 241.
Error upper limit register setting signal line 245
The error detection circuit 247 is an output of the error detection circuit 245
Is incremented by the error detection signal 246 which is
And decremented by an external error correction signal line 256.
Error cumulative counter to be incremented, 249 is the upper error limit
Output of the value register 241 and the error accumulation counter 247
Compares and outputs two types of interrupt signal lines according to the comparison result
The comparison circuit 252 performs the address in which the error occurs.
Error address registers for storing
57 generates a write signal 258 of the error address register.
The write control circuit 254 that is
Select and output the data stored in the dress register 252.
The selector 259 outputs the output signal 2 of the selector 254.
When the signal for selecting 55 is "0", the memory read
When the read data 233 is “1”, the error address
When the register 252-1 is "2", the error address register
Control for selectively outputting the contents of the master 252-2.
This is a selector switching signal. Error upper limit value register
Data setting signal line 244, error correction signal line 256, select
The data switching signal 259 is, for example, a
33, the address judging circuit 172 accesses the processing device.
The address is generated by decoding the address. Error detection operation configured as described above
Will be described with reference to FIG. First, when power is turned on
Is that the error accumulation counter 247 is initialized to “0”,
Next, the upper limit of the error built into the memory device from the processing unit
Error register upper limit register setting signal line
The same value as the number of error address registers by 244
(“2” in the embodiment). After this normal memory
When the access operation is performed, the selector switching signal 259 becomes
“0” is output, and the read data from the memory 71 is read.
The data 223 is parity-checked by the error detection circuit 245.
Check is performed and if no error has occurred, the selector 2
54 and the driver circuit 220 via the system bus 1
Output to 3-1. Error detection when an error is detected
The signal line 246 becomes “1” and the error accumulation counter 24
7 is incremented. In the comparison circuit 249,
The value set in the error upper limit value register 241 described above
And the contents of the error accumulation counter 247 are compared.
The value of the error accumulation counter is
If the value is not exceeded, the low-level interrupt signal line 9
If it exceeds “1”, the high-level interrupt signal line 10
Set to “1”. The write control circuit 257 has an error
When the detection signal line 246 becomes “1”, error accumulation
According to the content of the counter output signal 248, the address signal
Which error address register to write the contents of 251
Is performed. In other words, error accumulation in the initial state
Since the content of the product counter 247 is "0", the write signal
When the line 258-1 is output, the error address
Error address is written to register 252-1 and twice
The contents of the error accumulation counter 247 when an error occurs
Is "1", so the write signal line 258-2 is output.
The error address register 252-
2 is written with an error address. In this way,
The address where the error occurred is stored in the error address register 252.
And the processing unit sends a low-level interrupt
Error address register
When the access of 252-1 is performed, the selector switching signal
259 becomes "1" and the error address register 252-
1 passes through the selector 254 and the data driver 220.
Output to the system bus. Processing equipment is like this
To find the address where the error occurred.
Read the data from the memory indicated by the address
Parity error occurred by writing to address
Repair the contents of memory. This post-processing device corrects errors
The content of the error accumulation counter 247 is changed over the signal line 256.
Decrement. By the way, the processing unit has a low level interrupt
Access to the memory device until the
And a parity error occurs at a different address.
Error is less than the number of error address registers.
Then, the generated address can be stored. error
When an error occurs beyond the number of address registers
Is a high-level interrupt signal line of the comparison circuit 249 described above.
Is "1" and an unrecoverable serious fault occurs in the processing unit.
And a device such as the mode setting circuit described in the fifth embodiment.
Using the function, the corresponding memory device is separated. Embodiment 8 FIG. FIG. 35 shows an eighth embodiment of the present invention.
The dual memory system according to
Normal input having only a single bus via the adapter 261
FIG. 3 is a diagram showing a state where an output control device 260 is connected. Figure
36 and FIG. 37 show details of the duplex bus conversion adapter 261.
The configuration is shown. In FIG. 36, reference numeral 263 denotes an address signal.
The driver / receiver circuit 264 is a driver for data signals.
269 is an ordinary input / output control device.
0 is the address pattern when accessing the system bus.
271 is a parity generation circuit for generating parity.
A parity generation circuit 270 for generating data parity
Access normal I / O controller from system bus
Sometimes, check the parity of the duplicated address bus,
Parity check selection to select the correct address
Circuit, similarly 272 is a parity for selecting data
This is an inspection selection circuit. In FIG. 37, reference numeral 276 denotes a normal entry / exit.
An address area that can be accessed by the force control device 260 is set.
The address area register 278 for setting
The output control device 260 tries to output to the system bus
Address and the contents of the address area register 276
Comparison, and the result indicates that the system bus driver
This is a comparison circuit for controlling the operation. A dual memory system configured as described above
The outline of the operation related to the input / output control device of the system is shown in FIG.
Will be described. The input / output control unit 177 has a dual memory system.
The system is designed for
Access to the service. On the other hand, normal
The input / output controller 260 is aware of the redundant memory system.
Not an existing one, itself a single system bus
To the redundant bus conversion adapter
In addition to duplexing with the
Code code, address check, etc.
Has been improved. Next, details of the duplex bus conversion adapter 261 will be described.
The detailed operation will be described with reference to FIG. Normal I / O control
The device 260 is an address that does not have a parity code.
The signal line 262-2 and the data signal line 262-1 provide
Connected to the multiplexed bus conversion adapter 261
Control device accesses memory device 1 via system bus
To generate a parity on the address signal line 262-2.
The parity signal is added by the circuit 269 and the address signal is
Line 265, both sides via the driver circuit 263-1
Address signal lines 13-2a and 13-2
Output as b. The data signal line 262-1 has
A parity code is added by a parity generation circuit 271,
It becomes the data signal line 267, and the driver circuit 364-1
Address signal lines 13-1a to the system buses on both sides through
And 13-1b. On the other hand, input and output from the duplicated system bus
If the force control is accessed, the system bus
Dress signal lines 13-2a and 13-2b are receiver circuits
263-2, and input to the parity check selection circuit 270.
No error occurred as a result of parity check
Side address signal 266 is selected and normal input / output control
Output as address signal line 262-2 for device 260.
Is forced. Similarly, the data signal line 13-1 of the system bus
a and 13-1b are input to the receiver circuit 264-2.
Parity check selection circuit 272
As a result, the data signal 26 on the side where no error has occurred
8 is selected and the data for the normal input / output
Output as the data signal line 262-2. The parity check selection circuit 270 uses the add
An error is detected on the address signal line, and the correct address is selected.
If not, the address error signal line 274
Data signal on both sides by parity check selection circuit 272
If an error is detected in the line and the correct data cannot be selected
In this case, the data error signal lines 275 are output
A low level interrupt signal is output by the R gate 273
You. At this time, writing to the normal input / output control device 260 is performed.
Since the read signal line (not shown) is output,
The force control device does not start operation, and the software of the processing device 1 is not activated.
A retry process is performed. Next, with reference to FIG.
An operation for restricting access to 60 will be described. Address
The access area register 276 is accessed by the input / output control unit 260.
To specify the range of memory addresses that can be used
In this case, the processing device 1 performs input / output with respect to the input / output control device 260.
Prior to the start of the operation, the address area register setting signal 2
82, the contents of the data signal line 262-1 are addressed.
Set in the area register 276. Input / output controller 260
Is activated and transfer to memory occurs,
Device 260 accesses address signal line 262-2.
Output memory address. At this time, the comparison circuit 278
Within the range set in the address area register 276 described above.
It is determined whether or not the driver output is available.
Set the enable signal line 279 to “1” to access the system bus.
Driver output enable signal line 2
79 is set to "0" to prohibit access to the system bus
You. The OR gate 281 detects addresses outside the range.
Access, the low-level interrupt signal line 9
Set to "1" to notify the processing device. In the above embodiment, the data of the memory device
Explained by parity data as check code
However, this is not parity data but ECC code
Can be realized similarly. As described in detail above, according to the present invention,
Transfer error detection means can detect errors in the data being transferred.
Detected, and the error status register stores the detection result.
This makes it possible to diagnose error locations. Also, C
PU bus switching circuit holds error status register
Decide whether to output data to CPU bus according to the contents
Switching can be performed without overhead.
You. At this time, the parity check is performed in the middle of the data transfer path.
The parity generation circuit needs to be implemented in the processing unit.
Required, and the circuit configuration of the entire system is simplified.

【図面の簡単な説明】 【図1】 本発明の第1実施例に係る二重化メモリシス
テムの全体構成を示すブロック図である。 【図2】 図1中のエラー検出回路6及びCPUバス切
換え回路7の構成を示す図である。 【図3】 図1中、エラー発生状況とCPUバス切換え
信号線12、割込み信号線9、10の相関を示す図であ
る。 【図4】 図2の回路の動作を示すタイミング図であ
る。 【図5】 図2の回路中、データ信号18とゲート信号
32のタイミングを示す図である。 【図6】 図1中のマスタ決定回路5の詳細を示す図で
ある。 【図7】 図6のマスタ決定回路5の動作を示すタイミ
ング図である。 【図8】 本発明の第2実施例に係る二重化メモリシス
テムのシステムバス制御回路を示す図である。 【図9】 図8中の回路の一部分が故障した時の動作を
示す図である。 【図10】 本発明の第2実施例に係るシステムバス制
御回路の変型例である。 【図11】 図10中の回路の一部分が故障した時の動
作を示す図である。 【図12】 本発明の第3実施例に係る二重化メモリシ
ステムのエラー検出回路とステータスレジスタの配置を
示す図である。 【図13】 図12における二重化メモリシステムのメ
モリ書込み時の故障箇所判定の方法を示す図である。 【図14】 図12における二重化メモリシステムのメ
モリ読出し時の故障箇所判定の方法を示す図である。 【図15】 本発明の第4実施例に係る二重化メモリシ
ステムの全体構成を示すブロック図である。 【図16】 図15中のシステムバス制御装置3に内蔵
されるシステムバス切換え回路82のシステムバス13
への出力切り換え部分を示す図である。 【図17】 図15中のメモリ装置4に内蔵されるシス
テムバス切換え回路83のシステムバス13からの入力
切換え部分を示す図である。 【図18】 図15中の二重化メモリシステムにおける
処理装置がメモリ装置へ書込みを行う際のデータバスの
切り換えを示した図である。 【図19】 図15中の二重化メモリシステムにおける
処理装置がメモリ装置からの読出しを行う際のデータバ
スの切り換えを示した図である。 【図20】 本発明の第5実施例に係る二重化メモリシ
ステムの全体構成を示すブロック図である。 【図21】 図20中のシステムバス制御装置3のCP
Uバス周辺の構成図である。 【図22】 図20中のシステムバス制御装置3のシス
テムバス周辺の構成図である。 【図23】 図20中のシステムバス制御装置3に内蔵
されるモード設定回路100の詳細図である。 【図24】 図23の回路の動作を示すタイミング図で
ある。 【図25】 図20中のメモリ装置におけるモードの遷
移を示す図である。 【図26】 本発明の第6実施例に係る二重化メモリシ
ステムの全体構成を示すブロック図である。 【図27】 図26中のメモリ装置4の内部構成を示す
図である。 【図28】 図26中のアドレス判別回路172の詳細
を示す図である。 【図29】 メモリ装置4のアドレス空間の割付を示す
図である。 【図30】 許可フラグの組合せによるメモリ装置4の
状態遷移を示す図である。 【図31】 図26中のエラー注入回路173によるメ
モリ内部のエラー注入状態を示す図である。 【図32】 本発明の第6実施例にアドレスエラー検出
機能を付加した二重化メモリシステムの全体構成を示す
ブロック図である。 【図33】 図32中のメモリ装置4の内部構成を示す
図である。 【図34】 本発明の第7実施例に係るデータエラー検
出の方式を示す図である。 【図35】 本発明の第8実施例に係る二重化バス変換
アダプタ261を含んだ二重化メモリシステムの全体構
成を示すブロック図である。 【図36】 図35中の二重化バス変換アダプタ261
の内部構造を示す図である。 【図37】 図36においてアドレス領域レジスタ27
6を付加した二重化バス変換アダプタ261を示す図で
ある。 【符号の説明】 1 処理装置(CPU)、2 制御ROM、3 システ
ムバス制御装置、4メモリ装置、5 マスタ決定回路、
6 エラー検出回路、7 CPUバス切替え回路、8
CPUデータバス、9 低レベルの割込み、10 高レ
ベルの割込み、11 CPUアドレスバス、12 CP
Uバス切替え信号線、13 システムバス、19 エラ
ー検出回路、20 正常信号線、21 マスタモード入
力信号線、30 データ出力タイミングクロック信号、
31 3ステートバッファ、34 プルアップ抵抗、3
5 EXORゲート、36 ANDゲート、38 マス
タ切替え信号線、41 マスタモードの出力信号線、4
2 リセット信号線、51 データ比較回路、53 比
較エラー信号線、60〜62 ドライバ/レシーバ、6
3 パリティ生成回路、64〜66 パリティ検査回
路、67〜69 ステータスレジスタ、70 システム
バス制御装置内部バス、71 メモリ、72メモリ装置
内部バス、73 選択回路、78 入力データ切替え信
号線、80,85 エラー検出回路、81 システムバ
ス切替え信号線、82,83 システムバス切替え回
路、84 メモリエラー検出信号線、100〜102
モード設定回路、103 モード設定信号線、104,
105 比較回路、106 Aバス許可信号線、107
Bバス許可信号線、113 比較エラー信号線、12
0 モード設定データ信号線、121 セレクタ回路、
123,125 モードラッチ、140 電源投入処
理、141,146,148 モードD状態、142
診断処理、143,151 モードA状態、144,1
52 通常動作、145 故障発生、147 修理交換
処理、149 診断処理、150 メモリコピー処理、
153,161 モードB状態、156 モードC状
態、157 通常動作、162 メモリ書き込み信号、
163 パリティ生成許可信号線、170 パリティ許
可フラグ、172 アドレス判別回路、173 エラー
注入回路、174 エラーアドレスレジスタ、175
エラーアドレス信号線、176アドレスエラー検出回
路、177 入出力制御装置、180 電源遮断状態、
181 切離し動作状態、183 正常動作状態、18
4 修復動作状態、185保護動作状態、186 カー
ド挿入/電源投入操作、187 カード取外し/電源遮
断操作、188 メモリ診断動作、189 電源投入時
診断完了、190エラー無し/単一データエラー動作、
191 重複データエラー発生、192アドレスエラー
発生、193 修復完了、194 メモリコピー動作、
195修復不可能エラー発生、196 診断終了、19
7 保護モード切替え、200 メモリ空間、201
I/O空間、202 共通アクセス空間、203 個別
アクセス空間、206 I/O空間A、207 I/O
空間B、208 メモリ空間A、209 メモリ空間
B、210 共通空間書き込み、211 個別空間書き
込み、212 共通空間読み出し、213 個別空間読
み出し、214読み出し許可信号線、215 書き込み
許可信号線、222 ドライバゲート信号線、223
メモリ読み出しデータ信号線、225 フラグ書き込み
信号線、226 メモリ書き込みデータ信号線、228
共通空間アクセス信号、229個別空間アクセス信
号、230 I/Oアドレス判定回路、231 共通空
間指定レジスタ、232 個別空間指定レジスタ、23
3,234 比較回路、235 共通空間指定レジスタ
設定信号線、236 個別空間指定レジスタ信号線、2
39 パリティ生成回路、240 アドレスレシーバ、
241 エラー上限値レジスタ、244 エラー上限値
レジスタ設定信号線、245 エラー検出回路、246
エラー検出信号線、247 エラー累積カウンタ、2
48 累積カウンタ出力信号線、249 比較回路、2
51 入力アドレス信号線、253エラーアドレス出力
信号線、254 セレクタ回路、256 エラー訂正信
号線、260 入出力制御装置、261 二重化バス変
換アダプタ、262 変換バス信号線、263 アドレ
スドライバ/レシーバ回路、264 データドライバ/
レシーバ回路、265 アドレス信号線、266 アド
レス入力信号線、267 データ信号線、268 デー
タ入力信号線、269 アドレスパリティ生成回路、2
70 アドレスパリティ生成/選択回路、271 デー
タパリティ生成回路、272 データパリティ生成回路
/選択回路、274 アドレスエラー信号線、275
データエラー信号線、276 アドレス領域レジスタ、
277アドレス領域信号線、278 比較回路、279
ドライバ出力許可信号線、282 アドレス領域レジ
スタ設定信号線。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an overall configuration of a dual memory system according to a first embodiment of the present invention. FIG. 2 is a diagram showing a configuration of an error detection circuit 6 and a CPU bus switching circuit 7 in FIG. FIG. 3 is a diagram showing a correlation between an error occurrence state and a CPU bus switching signal line 12 and interrupt signal lines 9 and 10 in FIG. 1; FIG. 4 is a timing chart showing an operation of the circuit of FIG. 2; 5 is a diagram showing timings of a data signal 18 and a gate signal 32 in the circuit of FIG. FIG. 6 is a diagram showing details of a master determination circuit 5 in FIG. 1; FIG. 7 is a timing chart showing an operation of the master determination circuit 5 of FIG. FIG. 8 is a diagram illustrating a system bus control circuit of a redundant memory system according to a second embodiment of the present invention. FIG. 9 is a diagram showing an operation when a part of the circuit in FIG. 8 fails. FIG. 10 is a modified example of the system bus control circuit according to the second embodiment of the present invention. 11 is a diagram showing an operation when a part of the circuit in FIG. 10 has failed. FIG. 12 is a diagram showing an arrangement of an error detection circuit and a status register in a redundant memory system according to a third embodiment of the present invention. FIG. 13 is a diagram showing a method of determining a failure portion at the time of writing data to the memory in the redundant memory system in FIG. 12; FIG. 14 is a diagram showing a method of determining a failure point at the time of memory reading of the redundant memory system in FIG. 12; FIG. 15 is a block diagram showing an overall configuration of a redundant memory system according to a fourth embodiment of the present invention. 16 shows a system bus 13 of a system bus switching circuit 82 incorporated in the system bus control device 3 in FIG.
FIG. 4 is a diagram illustrating a portion for switching output to a power supply. 17 is a diagram showing an input switching portion from the system bus 13 of a system bus switching circuit 83 built in the memory device 4 in FIG. 15; 18 is a diagram showing switching of a data bus when a processing device in the duplicated memory system in FIG. 15 performs writing to the memory device. 19 is a diagram illustrating switching of a data bus when a processing device in the dual memory system in FIG. 15 performs reading from the memory device. FIG. 20 is a block diagram showing an overall configuration of a duplicated memory system according to a fifth embodiment of the present invention. 21 is a diagram showing a CP of the system bus control device 3 in FIG. 20;
It is a block diagram around a U bus. FIG. 22 is a configuration diagram around a system bus of the system bus control device 3 in FIG. 20; 23 is a detailed diagram of a mode setting circuit 100 built in the system bus control device 3 in FIG. FIG. 24 is a timing chart showing an operation of the circuit of FIG. 23; FIG. 25 is a diagram showing a mode transition in the memory device in FIG. 20; FIG. 26 is a block diagram showing an overall configuration of a duplicated memory system according to a sixth embodiment of the present invention. FIG. 27 is a diagram showing an internal configuration of a memory device 4 in FIG. 26; FIG. 28 is a diagram showing details of an address determination circuit 172 in FIG. 26; FIG. 29 is a diagram showing allocation of an address space of the memory device 4; FIG. 30 is a diagram showing a state transition of the memory device 4 according to a combination of permission flags. FIG. 31 is a diagram showing an error injection state in the memory by the error injection circuit 173 in FIG. 26; FIG. 32 is a block diagram showing an overall configuration of a redundant memory system in which an address error detection function is added to the sixth embodiment of the present invention. FIG. 33 is a diagram showing an internal configuration of a memory device 4 in FIG. 32; FIG. 34 is a diagram illustrating a data error detection method according to a seventh embodiment of the present invention. FIG. 35 is a block diagram showing an overall configuration of a redundant memory system including a redundant bus conversion adapter 261 according to an eighth embodiment of the present invention. FIG. 36 shows a duplex bus conversion adapter 261 shown in FIG. 35;
FIG. 3 is a diagram showing an internal structure of the device. FIG. 37 shows an address area register 27 in FIG.
6 is a diagram showing a duplex bus conversion adapter 261 to which 6 is added. FIG. [Description of Signs] 1 processing device (CPU), 2 control ROM, 3 system bus control device, 4 memory device, 5 master determination circuit,
6 Error detection circuit, 7 CPU bus switching circuit, 8
CPU data bus, 9 low level interrupt, 10 high level interrupt, 11 CPU address bus, 12 CP
U bus switching signal line, 13 system bus, 19 error detection circuit, 20 normal signal line, 21 master mode input signal line, 30 data output timing clock signal,
31 3-state buffer, 34 pull-up resistor, 3
5 EXOR gate, 36 AND gate, 38 master switching signal line, 41 master mode output signal line, 4
2 reset signal line, 51 data comparison circuit, 53 comparison error signal line, 60 to 62 driver / receiver, 6
3 Parity generation circuit, 64-66 Parity check circuit, 67-69 Status register, 70 System bus control device internal bus, 71 memory, 72 memory device internal bus, 73 selection circuit, 78 Input data switching signal line, 80, 85 Error Detection circuit, 81 system bus switching signal line, 82, 83 system bus switching circuit, 84 memory error detection signal line, 100 to 102
Mode setting circuit, 103 mode setting signal line, 104,
105 comparison circuit, 106 A bus permission signal line, 107
B bus permission signal line, 113 comparison error signal line, 12
0 mode setting data signal line, 121 selector circuit,
123, 125 mode latch, 140 power-on processing, 141, 146, 148 mode D state, 142
Diagnostic processing, 143, 151 Mode A state, 144, 1
52 normal operation, 145 failure occurrence, 147 repair exchange processing, 149 diagnosis processing, 150 memory copy processing,
153, 161 mode B state, 156 mode C state, 157 normal operation, 162 memory write signal,
163 parity generation permission signal line, 170 parity permission flag, 172 address discrimination circuit, 173 error injection circuit, 174 error address register, 175
Error address signal line, 176 address error detection circuit, 177 input / output control device, 180 power-off state,
181 disconnection operation state, 183 normal operation state, 18
4 Recovery operation state, 185 protection operation state, 186 card insertion / power-on operation, 187 card removal / power-off operation, 188 memory diagnosis operation, 189 power-on diagnosis completed, 190 no error / single data error operation,
191 Duplicate data error occurrence, 192 address error occurrence, 193 restoration completed, 194 memory copy operation,
195 Unrecoverable error occurred, 196 Diagnosis completed, 19
7 protection mode switching, 200 memory space, 201
I / O space, 202 common access space, 203 individual access space, 206 I / O space A, 207 I / O
Space B, 208 Memory space A, 209 Memory space B, 210 Common space write, 211 Individual space write, 212 Common space read, 213 Individual space read, 214 Read enable signal line, 215 Write enable signal line, 222 Driver gate signal line , 223
Memory read data signal line, 225 Flag write signal line, 226 Memory write data signal line, 228
Common space access signal, 229 individual space access signal, 230 I / O address determination circuit, 231 common space designation register, 232 individual space designation register, 23
3,234 comparison circuit, 235 common space designation register setting signal line, 236 individual space designation register signal line,
39 parity generation circuit, 240 address receiver,
241 error upper limit value register, 244 error upper limit value register setting signal line, 245 error detection circuit, 246
Error detection signal line, 247 error accumulation counter, 2
48 accumulation counter output signal line, 249 comparison circuit, 2
51 input address signal line, 253 error address output signal line, 254 selector circuit, 256 error correction signal line, 260 input / output control device, 261 duplex bus conversion adapter, 262 conversion bus signal line, 263 address driver / receiver circuit, 264 data driver/
Receiver circuit, 265 address signal line, 266 address input signal line, 267 data signal line, 268 data input signal line, 269 address parity generation circuit,
70 address parity generation / selection circuit, 271 data parity generation circuit, 272 data parity generation / selection circuit, 274 address error signal line, 275
Data error signal line, 276 address area register,
277 address area signal line, 278 comparison circuit, 279
Driver output enable signal line, 282 address area register setting signal line.

Claims (1)

【特許請求の範囲】 【請求項1】 各種の処理を行う処理装置と、この処理
装置にCPUバスを介して接続された一対のシステムバ
ス制御装置と、この一対のシステムバス制御装置にそれ
ぞれ接続された一対のシステムバスと、この一対のシス
テムバスにそれぞれ接続された一対のメモリ装置と、を
含み、処理装置における書込み動作時には、システムバ
ス制御装置は一対のメモリ装置に同時に処理装置からの
データを書き込み、処理装置における読出し動作時に
は、いずれか一方のシステムバス制御装置が対応するメ
モリ装置から読み出したデータを処理装置に送出する二
重化メモリシステムにおいて、 各システムバス制御装置は、 データが転送される経路上に配置されて転送中のデータ
のエラーを検出する転送エラー検出手段と、 転送エラー検出手段と一対一に設けられ、転送エラー検
出手段によるチェックの結果を保持するエラーステータ
スレジスタと、 エラーステータスレジスタの保持内容に従って、メモリ
装置から読み出したデータのCPUバスへの出力許否を
決定するCPUバス切換え回路と、 を有することを特徴とする二重化メモリシステム。
Claims: 1. A processing device for performing various processes, a pair of system bus controllers connected to the processing device via a CPU bus, and a pair of system bus controllers connected to the pair of system bus controllers, respectively. And a pair of memory devices respectively connected to the pair of system buses. During a write operation in the processing device, the system bus control device simultaneously transfers data from the processing device to the pair of memory devices. In a redundant memory system in which one of the system bus controllers sends data read from a corresponding memory device to the processor during a read operation in the processing device, each system bus controller transfers data. A transfer error detecting means arranged on the path to detect an error in data being transferred; An error status register that is provided one-to-one with the error detection means and holds the result of the check by the transfer error detection means; and determines whether to permit output of data read from the memory device to the CPU bus according to the content held in the error status register. A dual memory system, comprising: a CPU bus switching circuit;
JP2003126672A 2003-05-01 2003-05-01 Duplexed memory system Pending JP2003337758A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003126672A JP2003337758A (en) 2003-05-01 2003-05-01 Duplexed memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003126672A JP2003337758A (en) 2003-05-01 2003-05-01 Duplexed memory system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP14491094A Division JP3436974B2 (en) 1994-06-27 1994-06-27 Redundant memory system

Publications (1)

Publication Number Publication Date
JP2003337758A true JP2003337758A (en) 2003-11-28

Family

ID=29707452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003126672A Pending JP2003337758A (en) 2003-05-01 2003-05-01 Duplexed memory system

Country Status (1)

Country Link
JP (1) JP2003337758A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005124562A1 (en) * 2004-06-22 2005-12-29 Mitsubishi Denki Kabushiki Kaisha System for elevator electronic safety device
JP2006260160A (en) * 2005-03-17 2006-09-28 Fujitsu Ltd Dual storage device, and control method for dual storage device
KR100878550B1 (en) * 2006-08-18 2009-01-14 후지쯔 가부시끼가이샤 Memory controller and method of controlling memory
WO2014002174A1 (en) 2012-06-25 2014-01-03 富士通株式会社 Information processing device and method for detecting failure of information processing device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005124562A1 (en) * 2004-06-22 2005-12-29 Mitsubishi Denki Kabushiki Kaisha System for elevator electronic safety device
US8140921B2 (en) 2004-06-22 2012-03-20 Mitsubishi Electric Corporation System for elevator electronic safety device
JP2006260160A (en) * 2005-03-17 2006-09-28 Fujitsu Ltd Dual storage device, and control method for dual storage device
JP4667093B2 (en) * 2005-03-17 2011-04-06 富士通株式会社 Dual storage device and control method of dual storage device
KR100878550B1 (en) * 2006-08-18 2009-01-14 후지쯔 가부시끼가이샤 Memory controller and method of controlling memory
US8667372B2 (en) 2006-08-18 2014-03-04 Fujitsu Limited Memory controller and method of controlling memory
WO2014002174A1 (en) 2012-06-25 2014-01-03 富士通株式会社 Information processing device and method for detecting failure of information processing device
US9891981B2 (en) 2012-06-25 2018-02-13 Fujitsu Limited Information processing apparatus and switch failure detection method

Similar Documents

Publication Publication Date Title
EP1019823B1 (en) Redundant controller diagnosis using a private lun
US5251227A (en) Targeted resets in a data processor including a trace memory to store transactions
EP0414379A2 (en) Method of handling errors in software
JP2005302024A (en) Method and system of arbitration, and program storage device (method and system of arbitration for redundant controller by output interlock mechanism and automatic switching function)
JPH02118872A (en) Dual rail processor having error checking function for reading of i/o
JPS6229827B2 (en)
JPH09190361A (en) Information processing system detecting fault by internal signal and logical lsi
JPH03184130A (en) Error processing of software
JP2002123402A (en) Method for continuing normal computer processing, multithread computer system and program product
JPH01154241A (en) Synchronized double computer system
GB2375633A (en) Redundant controller data storage system having hot insertion system and method
US8166273B2 (en) Degeneration method and information processing apparatus
US6785763B2 (en) Efficient memory modification tracking with hierarchical dirty indicators
US6961826B2 (en) Processor state reintegration using bridge direct memory access controller
US6950907B2 (en) Enhanced protection for memory modification tracking with redundant dirty indicators
JP3436974B2 (en) Redundant memory system
JP2003337758A (en) Duplexed memory system
JP2003345676A (en) Dual-memory system
GB2369693A (en) A dirty memory for indicating that a block of memory associated with an entry in it has been altered
JP2004005628A (en) Duplex memory system
JP2004005627A (en) Duplex memory system
JPH07230436A (en) Processor constituting method and information processor
JP3624051B2 (en) Information processing device
JP3576978B2 (en) Memory port, storage device, information processing system
JPH07182253A (en) Bus adaptor and bus multiplexing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060509