(57)【特許請求の範囲】
【請求項１】
一の処理装置が他の処理装置に同期して動作し、各処理装置が、主記憶装置および前記主記憶装置に対するアクセス制御を行う主記憶制御部とを有する二重化装置であって、
前記主記憶制御部は、
前記主記憶装置から読み出したデータにエラーがあった場合に、そのデータのエラーアドレスを蓄積するエラーアドレス保持手段を備え、
所定の周期毎に、前記エラーアドレス保持手段から出力されるアドレス情報に基づいて、エラーデータの修正を行い、その修正データを前記主記憶装置内に格納し、
前記エラーアドレス保持手段は、
主記憶装置から読み出されたデータにエラーが生じた場合にそのエラーアドレスを受信するエラーアドレス受信部と、
そのエラーアドレスを保持する修正アドレス保持部と、
擬似アドレスを生成する擬似アドレス生成部と、
エラーアドレスまたは擬似アドレスを選択して出力する選択送出部と、
他の処理装置に対して同期パルスを送信する同期パルス送信部と、
他の処理装置から同期パルスを受信する同期パルス受信部と、
エラーアドレスの格納数をカウントし、所定の周期毎に、他の処理装置から受信した同期パルス数およびカウント値に基づいて、エラーアドレスまたは擬似アドレスの出力選択指示を前記選択送出部に行うエラー修正制御部とを含む
ことを特徴とする二重化装置。
【請求項２】
エラー修正制御部は、修正アドレス保持部にエラーアドレスが格納されている場合に、選択送出部にエラーアドレスの出力指示を行うとともに、同期パルス送信部を介して他の処理装置に対して同期パルスを送信する
請求項１記載の二重化装置。
【請求項３】
エラー修正制御部は、同期パルス受信部を介して他の処理装置からの同期パルスを受信したときに、修正アドレス保持部にエラーアドレスが格納されていない場合、選択送出部に対して擬似アドレスの送信指示を行う
請求項１または請求項２記載の二重化装置。
【請求項４】
エラー修正制御部は、同期パルス受信部を介して他の処理装置からの同期パルスを受信したときに、修正アドレス保持部にエラーアドレスが保持されている場合には、選択送出部にエラーアドレスを優先的に出力させる
請求項１から請求項３のうち何れか１項に記載の二重化装置。
【請求項５】
エラー修正制御部は、修正アドレス保持部に格納されている全てのエラーアドレスの出力指示を選択送出部に対して行う
請求項１、２または４記載の二重化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一の処理装置が他の処理装置に同期して動作し、各処理装置が、主記憶装置およびその主記憶装置に対するアクセス制御を行う主記憶制御部とを有する二重化装置に関する。
【０００２】
【従来の技術】
図５および図６は、従来の二重化装置の一構成例を示すブロック図である。図５および図６に示す二重化装置は、処理装置１０および処理装置２０を備えている。処理装置１０および処理装置２０は、同一の構成要素を有する。以下、処理装置１０を例にして説明する。
【０００３】
処理装置１０は、ＣＰＵ等の中央処理装置１３と、中央処理装置１３が使用するデータを蓄積する主記憶装置１１と、主記憶装置１１に対するアクセス制御を行う主記憶制御装置１２と、主記憶制御装置１２および中央処理装置１３に対して同位相のクロックを供給する二重化制御装置１４とを備えている。二重化制御装置１４は、クロック交絡バスＡＡおよびＢＢを介して処理装置２と接続され、処理装置２でのクロックと同位相のクロックをクロック信号線１４Ａを介して主記憶制御装置１２および中央処理装置１３に対して供給する。主記憶装置１１は、例えば、ＤＲＡＭで構成されている。
【０００４】
主記憶制御装置１２は、中央処理インタフェース手段１２１、アドレス保持手段１２２、書き込みデータ保持手段１２３、アクセス制御手段１２４、アドレス変換手段１２５、データ選択送出手段１２６、データ受信手段１２７、読出しデータ保持手段１２９、スクラビングアドレス生成手段３１２、リフレッシュ要求生成手段３１３およびリフレッシュアクセスサイクル手段３１４を備えている。
【０００５】
中央処理インタフェース手段１２１は、システムバス１Ｂを介して中央処理装置１３との間で情報の入出力を行う。また、中央処理制御バス１２１Ａを介してアドレス保持手段１２２、書き込みデータ保持手段１２３および読出しデータ保持手段１２９との間で情報の入出力を行う。システムバス１Ｂおよび中央処理制御バス１２１Ａは、アドレス線、データ線および制御線を含むバスである。
【０００６】
アドレス保持手段１２２は、中央処理アドレス信号線１２２Ｂを介してアドレス変換手段１２５に情報を出力するとともに、リクエスト信号線１２２Ａを介してアクセス制御手段１２４に対して情報を出力する。書き込みデータ保持手段１２３は、書き込みデータ信号線１２３Ａを介してデータ選択送出手段１２６に対して接続されている。読出しデータ保持手段１２９は、読出しデータ信号線１２７Ａを介してデータ受信手段１２７から情報を入力する。
【０００７】
スクラビングアドレス生成手段３１２は、スクラビングアドレス信号線３１２Ａおよびリフレッシュサイクル制御信号線３１４Ａを介してリフレッシュアクセスサイクル手段３１４との間で情報の入出力を行う。リフレッシュ要求生成手段３１３は、リフレッシュ要求信号線３１３Ａを介してリフレッシュアクセスサイクル手段３１４に対して情報を出力する。リフレッシュアクセスサイクル手段３１４は、リフレッシュアクセスリクエスト信号線３１Ｂを介してアクセス制御手段１２４に情報を出力するとともに、リフレッシュアクセスアドレス信号線３１Ａを介してアドレス変換手段１２５に情報を出力する。そして、リフレッシュアクセスサイクル手段３１４は、リフレッシュ周期毎に、リフレッシュとスクラビングとを順番に制御する。
【０００８】
アクセス制御手段１２４は、アクセスシーケンス制御信号線１２４Ａを介してアドレス変換手段１２５、データ選択送出手段１２６、データ受信手段１２７、読出しデータ保持手段１２９および中央処理インタフェース手段１２１に対して情報を出力する。
【０００９】
主記憶制御装置１２は、主記憶制御バス１Ａを介して主記憶装置１１との間で情報の入出力を行う。主記憶制御バス１Ａは、アドレス線、データ線および制御線を含むバスである。アドレス変換手段１２５およびデータ選択送出手段１２６は、主記憶制御バス１Ａに情報を出力する。データ受信手段１２７は、主記憶制御バス１Ａから情報を入力し、読出しデータ保持手段１２９およびデータ選択送出手段１２６に対して情報を出力する。
【００１０】
次に、主記憶装置１１内のエラーデータを修正する動作について説明する。中央処理装置１３から主記憶制御装置１２に対してデータ読出し要求があった場合には、アドレス保持手段１２２は、中央処理装置１３からのアドレスを保持し、そのアドレスをアドレス変換手段１２５に出力するとともに、アクセス制御手段１２４に主記憶装置１１に対するアクセス権を獲得するための指示を出力する。アドレス変換手段１２５は、アドレス保持手段１２２から出力されたアドレスで主記憶装置１１に対してアクセスするためのアドレスに変換し、そのアドレス情報を出力する。例えば、アドレス変換手段１２５は、アドレス保持手段１２２からのアドレスをローアドレスまたはカラムアドレスに変換する。そして、データ受信手段１２７は、中央処理装置１３から指示されたアドレスに基づいて主記憶装置１１から出力されたデータを取り込む。
【００１１】
データ受信手段１２７は、取り込んだデータについてＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋｉｎｇ  ａｎｄ  Ｃｏｒｒｅｃｔｉｎｇ）によるエラーチェックを行う。その結果、エラーが発生していた場合には、エラー修正を行った後に読出しデータ保持手段１２９および中央処理インタフェース手段１２１を介して中央処理装置１３に対して出力する。また、エラーが生じていない場合には、チェック後に読出しデータを中央処理装置１３に対して出力する。
【００１２】
一方、リフレッシュ要求生成手段３１３は、リフレッシュ周期毎（例えば、ｎ秒毎）にリフレッシュ要求を出力し、リフレッシュアクセスサイクル手段３１４は、リフレッシュ要求生成手段３１３からリフレッシュ要求を入力すると、スクラビングアドレス生成手段３１２に対してリフレッシュ制御信号を出力する。すると、スクラビングアドレス生成手段３１２は、主記憶装置１１内のエラーの確認および修正を行うアドレス（スクラビングアドレス）を生成して、リフレッシュアクセスサイクル手段３１４に対して出力する。スクラビングアドレス生成手段３１２は、リフレッシュサイクル毎に異なるスクラビングアドレスを生成する。
【００１３】
リフレッシュアクセスサイクル手段３１４は、アクセス制御手段１２４に対してリフレッシュ要求を出力するとともに、アドレス変換手段１２５に対してリフレッシュアドレスとスクラビングアドレスを出力する。アドレス変換手段１２５は、リフレッシュアクセスサイクル手段３１４が生成したリフレッシュアドレスに基づいて、主記憶装置１１のリフレッシュを実行し、スクラビングアドレスを主記憶装置１１に対してアクセスするためのアドレスに変換し、そのアドレス情報を出力する。データ受信手段１２７は、主記憶装置１１から、スクラビングアドレスにおけるデータを読み出して、そのデータにエラーがある場合には修正してデータ選択送出手段１２６に対して出力し、データ選択送出手段１２６は、その修正データを主記憶装置１１に格納する。主記憶装置１１内のデータは、１ブロック単位毎にスクラビングされる。
【００１４】
このように、従来の二重化装置では、リフレッシュサイクル毎に、スクラビングアドレスが決定され、そのスクラビングアドレスにおけるデータのスクラビングが為される。そのため、主記憶装置１１における特定のデータビットにエラーが生じたときには、スクラビングアドレスがそのエラーアドレスと同一になった場合に、そのエラーアドレスにおけるデータの修正がなされる。従って、主記憶装置１１において特定のデータビットにエラーが生じた場合には、エラーが発生してから修正が為されるまでの期間は、スクラビングの周期に左右される。
【００１５】
【発明が解決しようとする課題】
しかしながら、従来の二重化装置では、リフレッシュ周期の度に、スクラビングアドレスが１ブロック単位毎に更新されて、主記憶装置１１内のデータの確認および修正がなされるので、主記憶装置１１の容量が大きくなるにつれてスクラビングの周期が長くなり、主記憶装置１１内の特定のアドレスのデータビットにエラーが発生した場合に、そのデータビットの修復に長期間要することがある。そのため、特定アドレスのデータビットのエラーに起因して、主記憶装置１１内に偶発的に多ビットエラーが発生することがあり、主記憶装置１１内のデータの信頼性が低下することがある。
【００１６】
そこで、本発明は、主記憶装置内のデータビットにエラーが発生したとしても主記憶装置の容量に関らず迅速にそのエラー修正ができるとともに、双方の処理装置における主記憶装置に対するアクセスの同期を保つことができる二重化装置を提供することを目的とする。
【００１７】
【課題を解決するための手段】
本発明による二重化装置は、主記憶制御部が、主記憶装置から読み出したデータにエラーがあった場合に、そのデータのエラーアドレスを蓄積するエラーアドレス保持手段を備え、所定の周期毎に、エラーアドレス保持手段から出力されるアドレス情報に基づいて、エラーデータの修正を行い、その修正データを主記憶装置内に格納し、エラーアドレス保持手段は、主記憶装置から読み出されたデータにエラーが発生した場合にそのエラーアドレスを受信するエラーアドレス受信部と、そのエラーアドレスを保持する修正アドレス保持部と、擬似アドレスを生成する擬似アドレス生成部と、エラーアドレスまたは擬似アドレスを選択して出力する選択送出部と、他の処理装置に対して同期パルスを送信する同期パルス送信部と、他の処理装置から同期パルスを受信する同期パルス受信部と、エラーアドレスの格納数をカウントし、所定の周期毎に、他の処理装置から受信した同期パルス数およびカウント値に基づいて、エラーアドレスまたは擬似アドレスの出力選択指示を選択送出部に行うエラー修正制御部とを含むことを特徴とする。
【００１９】
エラー修正制御部は、修正アドレス保持部にエラーアドレスが格納されている場合に、選択送出部にエラーアドレスの出力指示を行うとともに、同期パルス送信部を介して他の処理装置に対して同期パルスを送信する。このようにすれば、主記憶制御部は、修正アドレス保持部から出力されるエラーアドレスに基づいてエラーデータの修正が行うことができる。また、他の処理装置は、一の処理装置においてデータエラーが発生したことを認識することができる。
【００２０】
エラー修正制御部は、同期パルス受信部を介して他の処理装置からの同期パルスを受信したときに、修正アドレス保持部にエラーアドレスが格納されていない場合、選択送出部に対して擬似アドレスの送信指示を行う。このようにすれば、一の処理装置における主記憶制御装置は、他の処理装置における主記憶制御卒と同期して、主記憶装置に対してアクセスすることができる。
【００２１】
エラー修正制御部は、同期パルス受信部を介して他の処理装置からの同期パルスを受信したときに、修正アドレス保持部にエラーアドレスが保持されている場合には、選択送出部にエラーアドレスを優先的に出力させる。このようにすれば、一の処理装置における主記憶制御装置は、他の処理装置における主記憶制御卒と同期して、主記憶装置に対してアクセスすることができる。
【００２２】
エラー修正制御部は、修正アドレス保持部に格納されている全てのエラーアドレスの出力指示を選択送出部に対して行う。このようにすれば、主記憶制御部は、修正アドレス保持部に格納されている全てのエラーアドレスに対応したデータの誤り修正を行うことができる。
【００２３】
【発明の実施の形態】
以下、本発明による二重化装置の実施の形態について図面を参照して説明する。図１および図２は、本発明による二重化装置の一構成例を示すブロック図である。図１および図２に示す二重化装置は、処理装置１および処理装置２を備えている。処理装置１と処理装置２とは、同一の構成を有する。図１および図２には、中央処理装置１３が、処理装置１および処理装置２において別個独立に備えられている例が示されている。なお、図１および図２において、図５および図６に示す構成要素と同一の機能を有する構成要素には、同一の符合が付されている。
【００２４】
処理装置１は、ＣＰＵ等の中央処理装置１３と、中央処理装置１３が使用するデータを蓄積する主記憶装置１１と、主記憶装置１１に対するアクセス制御を行う主記憶制御装置１２と、主記憶制御装置１２および中央処理装置１３に対して同位相のクロックを供給する二重化制御装置１４とを備えている。二重化制御装置１４は、クロック交絡バスＡＡおよびＢＢを介して処理装置２に接続され、処理装置２でのクロックと同位相のクロックをクロック信号線１４Ａを介して中央処理装置１３および主記憶制御装置１２に供給する。主記憶装置１１は、例えば、ＤＲＡＭで構成される。
【００２５】
主記憶制御装置１２は、中央処理インタフェース手段１２１、アドレス保持手段１２２、書き込みデータ保持手段１２３、アクセス制御手段１２４、アドレス変換手段１２５、データ選択送出手段１２６、データ受信手段１２７、読出しデータ保持手段１２９、スクラビングアドレス生成手段３１２、リフレッシュ要求生成手段３１３、リフレッシュアクセスサイクル手段３１４およびエラーアドレス保持手段３１５を備えている。
【００２６】
中央処理インタフェース手段１２１は、システムバス１Ｂを介して中央処理装置１３との間で情報の入出力を行う。また、中央処理制御バス１２１Ａを介してアドレス保持手段１２２、書き込みデータ保持手段１２３および読出しデータ保持機能１２９との間で情報の入出力を行う。システムバス１Ｂおよび中央処理制御バス１２１Ａは、アドレス線、データ線および制御線を含むバスである。
【００２７】
アドレス保持手段１２２は、中央処理アドレス信号線１２２Ｂを介してアドレス変換手段１２５に情報を出力するとともに、リクエスト信号線１２２Ａを介してアクセス制御手段１２４に対して情報を出力する。書き込みデータ保持手段１２３は、書き込みデータ信号線１２３Ａを介してデータ選択送出手段１２６に対して情報を出力する。読出しデータ保持手段１２９は、読出しデータ信号線１２７Ａを介してデータ受信手段１２７から情報を入力する。
【００２８】
スクラビングアドレス生成手段３１２は、スクラビングアドレス信号線３１２Ａおよびリフレッシュサイクル制御信号線３１４Ａを介してリフレッシュアクセスサイクル手段３１４との間で情報の入出力を行う。リフレッシュ要求生成手段３１３は、リフレッシュ要求信号線３１３Ａを介してリフレッシュアクセスサイクル手段３１４に情報を出力する。
【００２９】
エラーアドレス保持手段３１５は、１ビットエラー通知信号線１２８Ｂを介してデータ受信手段１２７から情報を入力するとともに、主記憶制御バス１Ａを介してアドレス変換手段１２５から情報を入力する。また、エラーアドレス保持手段３１５は、リフレッシュサイクル制御信号線３１４Ａ、修正要求信号線３１５Ａおよび修正アドレス信号線３１５Ｂを介してリフレッシュアクセスサイクル手段３１４との間で情報の入出力を行う。エラーアドレス保持手段３１５は、同期パルス信号線３１５Ｃおよび４１５Ｃを介して処理装置２内のエラーアドレス保持手段３１５との間で情報の送受信を行う。
【００３０】
リフレッシュアクセスサイクル手段３１４は、リフレッシュアクセスリクエスト信号線３１Ｂを介してアクセス制御手段１２４に情報を出力するとともに、リフレッシュアクセスアドレス信号線３１Ａを介してアドレス変換手段１２５に情報を出力する。また、リフレッシュアクセスサイクル手段３１４は、リフレッシュ周期毎に、リフレッシュ、スクラビングおよびデータ誤り修正を順番に制御する。
【００３１】
アクセス制御手段１２４は、アクセスシーケンス制御信号線１２４Ａを介してアドレス変換手段１２５、データ選択送出手段１２６、データ受信手段１２７、読出しデータ保持手段１２９および中央処理インタフェース手段１２１に対して情報を出力する。
【００３２】
主記憶制御装置１２は、主記憶制御バス１Ａを介して主記憶装置１１との間で情報の入出力を行う。主記憶制御バス１Ａは、アドレス線、データ線および制御線を含むバスである。アドレス変換手段１２５およびデータ選択送出手段１２６は、主記憶制御バス１Ａに情報を出力する。データ受信手段１２７は、主記憶制御バス１Ａから情報を入力して、データ選択送出手段１２６および読出しデータ保持手段１２９に情報を出力する。
【００３３】
図３は、処理装置１および処理装置２におけるエラーアドレス保持手段３１５の内部構成を示すブロック図である。処理装置１および処理装置２におけるエラーアドレス保持手段３１５は、同一の構成を有する。処理装置１内のエラーアドレス生成手段の構成を例に説明する。
【００３４】
エラーアドレス保持手段３１５は、エラーアドレス受信部３Ａ１、修正アドレス保持ＦＩＦＯ部３Ａ２、エラー修正制御部３Ａ３、同期パルス送信部３Ａ４、同期パルス受信部３Ａ５、ダミーアドレス生成部３Ａ６および選択送出部３Ａ７を備えている。
【００３５】
エラーアドレス受信部３Ａ１は、主記憶制御バス１Ａおよび１ビットエラー通知信号線１２８Ｂを介してエラーアドレスを受信し、そのエラーアドレスを修正アドレス格納信号線３ＡＡを介して修正アドレス保持ＦＩＦＯ部３Ａ２に格納させるとともに、ＦＩＦＯ格納完了信号線３ＡＢを介してエラーアドレスの格納完了通知を出力する。修正アドレス保持ＦＩＦＯ部３Ａ２は、ＦＩＦＯ（Ｆａｓｔ
Ｉｎ  Ｆａｓｔ  Ｏｕｔ：先入れ先だし）メモリで構成されている。
【００３６】
エラー修正制御部３Ａ３は、リフレッシュサイクル制御信号線３１４Ａを介してリフレッシュアクセスサイクル手段３１４から情報を入力し、修正要求信号線３１５Ａを介してリフレッシュアクセスサイクル手段３１４に対して情報を出力する。エラー修正制御部３Ａ３は、自系エラー修正同期指示信号線３ＡＣおよび同期パルス送信部３Ａ４を介して処理装置２に対して同期パルスを送信するとともに、同期パルス受信部３Ａ５および他系エラー修正同期指示信号線３ＡＤを介して処理装置２からの同期パルスを受信する。エラー修正制御部３Ａ３は、修正アドレス選択指示信号線３ＡＧを介して選択送出部３Ａ７に対して指示を出力する。
【００３７】
選択送出部３Ａ７は、ＦＩＦＯ出力修正アドレス信号線３ＡＥを介して修正アドレス保持ＦＩＦＯ部３Ａ２からエラーアドレスを入力するとともに、ダミーアクセスアドレス信号線３ＡＦを介してダミーアドレス生成部３Ａ６から擬似アドレス（ダミーアドレス）を入力する。ダミーアドレスは、例えば、主記憶装置１１における未使用領域のアドレスに設定される。選択送出部３Ａ７は、修正アドレス信号線３１５Ｂを介してエラーアドレスおよびダミーアドレスをリフレッシュアクセスサイクル手段３１４に対して出力する。
【００３８】
次に、本発明による二重化装置の動作について説明する。図４は、エラーアドレス保持手段３１５の動作を説明するためのフローチャートである。
【００３９】
中央処理装置１３は、主記憶制御装置１２に対して主記憶装置１１からのデータ読出し要求を行う。すると、主記憶制御装置１２では、アドレス保持手段１２２は、中央処理装置１３からのアドレスを保持し、そのアドレスをアドレス変換手段１２５に対して出力する。また、アドレス保持手段１２２は、アクセス制御手段１２４に対して主記憶装置１１に対するアクセス権を獲得するための要求を出力する。
【００４０】
アドレス変換手段１２５は、中央処理装置１３からのアドレスを主記憶装置１１に対してアクセスするためのアドレス（例えば、ローアドレス、カラムアドレス）に変換し、そのアドレスで主記憶装置１１に対してアクセスするための信号を主記憶制御バス１Ａに出力する。データ受信手段１２７は、中央処理装置１３から指示されたアドレスに基づいて主記憶装置１１から出力されたデータを取り込み、ＥＣＣにより、取り込んだデータのエラーチェックを行う。データエラーが生ずる要因として、例えば、主記憶装置１１におけるハードウェアエラーやソフトウェアエラーがある。
【００４１】
データエラーが生じていない場合には、データ受信手段１２７は、エラーチェックの後に、読出しデータを読出しデータ保持手段１２９に対して出力する。データエラーが生じている場合には、データ受信手段１２７は、読出しデータのエラー修正を行った後に修正データを読出しデータ保持手段１２９に対して出力するとともに、１ビットエラー信号をエラーアドレス保持手段３１５に対して出力する。
【００４２】
エラーアドレス保持手段３１５では、エラーアドレス受信部３Ａ１は、データ受信手段１２７から１ビットエラー信号を入力すると、主記憶制御バス１Ａからエラーアドレスを入力する。そして、エラーアドレス受信部３Ａ１は、エラーアドレスを修正アドレス保持ＦＩＦＯ部３Ａ２に格納させるとともに、エラー修正制御部３Ａ３に対してＦＩＦＯ格納完了通知を出力する。エラー修正制御部３Ａ３は、ＦＩＦＯ格納完了通知を入力すると、ＦＩＦＯカウンタをカウント（例えば、プラス１）する。例えば、ＦＩＦＯカウンタの初期値は０である。
【００４３】
リフレッシュ要求生成手段３１３は、リフレッシュサイクル毎（例えば、ｎ秒毎）にリフレッシュアクセスサイクル手段３１４に対してリフレッシュ要求を出力する。すると、リフレッシュアクセスサイクル手段３１４は、エラーアドレス保持手段３１５およびスクラビングアドレス生成手段３１２に対してリフレッシュサイクル制御信号を出力する。
【００４４】
スクラビングアドレス生成手段３１２は、リフレッシュサイクル制御信号を入力すると、主記憶装置１１内のデータ修正を行うためのアドレス（スクラビング）アドレスを生成してリフレッシュアクセスサイクル手段３１４に対して出力する。スクラビングアドレス生成手段３１２は、リフレッシュサイクル制御信号を入力する度に異なるスクラビングアドレスを生成する。
【００４５】
エラーアドレス保持手段３１５では、エラー修正制御部３Ａ３は、リフレッシュアクセスサイクル手段３１４からリフレッシュサイクル制御信号を入力すると、既にエラーアドレス受信部３Ａ１からＦＩＦＯ格納完了通知を入力しているか否かについて判断する。即ち、エラー修正制御部３Ａ３は、ＦＩＦＯカウンタ値が０であるか否かについて判断する（ステップＳ１）。
【００４６】
ＦＩＦＯカウンタ値が０でない場合、即ち、修正アドレス保持ＦＩＦＯ部３Ａ２にエラーアドレスが格納されている場合には、エラー修正制御部３Ａ３は、ＦＩＦＯカウンタ値分の同期パルスを同期パルス送信部３Ａ４を介して処理装置２に対して送信する（ステップＳ２）。なお、処理装置２では、同期パルス受信部３Ａ５は処理装置１からの同期パルスを受信してエラー修正制御部３Ａ３に対して出力する。
【００４７】
エラー修正制御部３Ａ３は、同期パルス受信部３Ａ５を介して処理装置２から同期パルスを受信したか否かについて判断する（ステップＳ３）。同期パルスを受信しなかった場合には、修正アドレス保持ＦＩＦＯ部３Ａ２に格納されているエラーアドレスを出力させるためのアドレス選択指示信号を選択送出部３Ａ７に対して出力する。すると、選択送出部３Ａ７は、修正アドレス保持ＦＩＦＯ部３Ａ２に格納されているエラーデータを読み出してリフレッシュアクセスサイクル手段３１４に対して出力し、同時に、エラー修正制御部３Ａ３は、リフレッシュアクセスサイクル手段３１４に対して修正要求信号を出力する（ステップＳ４）。なお、エラー修正制御部３Ａ３は、エラーアドレスを出力させる度に、ＦＩＦＯカウンタ値を減算し、ＦＩＦＯカウンタ値が０になるまでアドレス選択指示信号を選択送出部３Ａ７に対して出力する。
【００４８】
同期パルスを受信した場合には、エラー修正制御部３Ａ３は、アドレス選択指示信号による指示により、処理装置２から受信したパルス数とＦＩＦＯカウンタ値に基づいて選択送出部３Ａ７からエラーアドレスまたはダミーアドレスを出力させる（ステップＳ５）。このとき、エラー修正制御部３Ａ３は、エラーアドレスをダミーアドレスに優先して出力させる。なお、この場合においても、エラー修正制御部３Ａ３は、ＦＩＦＯカウンタ値が０になるまでアドレス選択指示信号を選択送出部３Ａ７に対して出力する。また、選択送出部３Ａ７がエラーアドレスまたはダミーアドレスを出力する場合には、エラー修正制御部３Ａ３は、リフレッシュアクセスサイクル手段３１４に対して修正要求信号を出力する。
【００４９】
ステップＳ１で、ＦＩＦＯカウンタ値が０であると判断された場合には、エラー修正制御部３Ａ３は、処理装置２から同期パルスを受信したか否かについて判断する（ステップＳ６）。処理装置２から同期パルスを受信しなかった場合には、エラー修正制御部３Ａ３は、修正要求信号を出力せず、選択送出部３Ａ７はエラーアドレスおよびダミーアドレスを出力しない。即ち、修正要求信号線３１５Ａおよび修正アドレス信号線３１５Ｂには、何の信号も出力されない。
【００５０】
処理装置２から同期パルスを受信した場合には、エラー修正制御部３Ａ３は、修正アドレス選択指示信号に基づいて、選択送出部３Ａ７からその受信したパルス数分のダミーデータを選択送出部３Ａ７から出力させる。即ち、選択送出部３Ａ７は、修正アドレス選択指示信号に基づいて、ダミーアドレス生成部３Ａ６からダミーアドレスを入力し、リフレッシュアクセスサイクル手段３１４に対して出力する（ステップＳ７）。また、この場合においても、選択送出部３Ａ７がダミーアドレスを出力する場合には、エラー修正制御部３Ａ３は、修正要求信号を出力する。
【００５１】
リフレッシュアクセスサイクル手段３１４は、エラーアドレス保持手段３１５から修正要求信号を入力した場合には、エラーアドレスおよびダミーアドレスを入力する。リフレッシュアクセスサイクル手段３１４は、リフレッシュ要求をアクセス制御手段１２４に対して出力するとともに、スクラビングアドレスおよびエラーアドレス（ダミーアドレス）をアドレス変換手段１２５に対して出力する。アクセス制御手段１２４は、リフレッシュ、スクラビングおよびエラーアドレスのデータ修正を実行させるためのシーケンス制御をアドレス変換手段１２５、データ選択送出手段１２６、データ受信手段１２７に対して行う。
【００５２】
アドレス変換手段１２５は、主記憶装置１１のリフレッシュを実行した後に、スクラビングアドレスを主記憶装置１１に対してアクセスするためのアドレスに変換し、そのアドレスで主記憶装置１１に対してアクセスするための信号を主記憶制御バス１Ａに対して出力する。データ受信手段１２７は、スクラビングアドレスからデータを読み出す。データ受信手段１２７は、そのデータにエラーがあった場合には修正を行い、データ選択送出手段１２６は、エラー修正されたデータを主記憶装置１１に格納する。
【００５３】
次に、アドレス変換手段１２５は、エラーアドレスで主記憶装置１１に対してアクセスするための信号を主記憶制御バス１Ａに出力する。データ受信手段１２７は、主記憶装置１１のエラーアドレスからエラーデータを読み出し、そのエラーデータをＥＣＣにより修正する。そして、データ受信手段１２７は、修正されたデータをデータ選択送出手段１２６に対して出力し、データ選択送出手段１２６は、その修正データを主記憶装置１１に格納する。
【００５４】
以上のように、本実施の形態によれば、中央処理装置１３からの指示により主記憶制御装置１２が主記憶装置１１から読み出したデータにエラーが発生していた場合には、主記憶制御装置１２は、そのエラーアドレスをエラーアドレス保持手段３１５に格納させ、リフレッシュサイクル毎に、エラーアドレス保持手段３１５からの出力に基づいて、エラーアドレスにおけるエラーデータの修正を行う。即ち、主記憶装置１１における特定のデータビットにエラーが発生したとしても、リフレッシュ周期毎にそのエラーデータの修正が可能になる。
【００５５】
従って、主記憶装置１１における特定のデータビットにエラーが発生したとしても、エラーが発生してからエラーが修正されるまでの期間は、スクラビング周期に依存せずに済むので、主記憶装置１１の記憶容量の如何に関らず、迅速にエラーデータの修正を行うことができる。よって、特定のデータビットのエラーが発生したとしても、そのエラーに起因して修復不可能な多ビットエラーに発展することを防止することができるので、主記憶装置１１におけるデータの信頼性を向上させることができる。
【００５６】
また、エラーデータの修正を行う場合において、一の処理装置においてエラーデータが存在し、他の処理装置においてエラーデータが存在していない場合には、一の処理装置は、他の処理装置に対して同期パルスを送信する。そして、一の処理装置がエラーデータの修正を行うと同時に、他の処理装置は、一の処理装置から受信した同期パルスに基づいてダミーアドレスでの修正動作を行う。したがって、双方の処理装置において、主記憶制御装置１２の主記憶装置１１に対するアクセスの同期を保つことができる。
【００５７】
なお、上記の実施の形態では、中央処理装置１３が処理装置１および処理装置２内に別個独立して備えられた例について示したが、中央処理装置１３は、二重化装置において、１つ備えられていてもよい。即ち、物理的に１つ備えられた中央処理装置が、各処理装置に備えれている主記憶装置１１に対するデータ書き込み制御およびデータ読み出し制御を行ってもよい。
【００５８】
以上に説明したように、上記の実施の形態では、２つの系（処理装置１，２）が同期してそれぞれの主記憶装置１１をアクセスするように構成されたシステムにおいて、エラー修正制御をリフレッシュタイミングにおいてまとめて実行するようにしても、２つの系の同期が維持される。従って、エラー修正制御をリフレッシュタイミングにおいてまとめて実行するようにしても、一方の系を稼働系とし、他方の系をホットスタンバイ系とするような使用方法において、稼働系とホットスタンバイ系との切替を問題なく実行することができる。また、上記の実施の形態から明らかなように、以下のような発明も本明細書において開示されている。
【００５９】
すなわち、二重化された主記憶装置のそれぞれを同期して制御するそれぞれの主記憶制御装置であり、周期的にそれぞれの主記憶装置に対するリフレッシュ制御を行うリフレッシュ手段（リフレッシュ要求生成手段３１３、リフレッシュアクセスサイクル手段３１４、アクセス制御手段１２４で構成される）、およびリフレッシュタイミングが到来すると主記憶装置に記憶されているデータのエラー修正を行うエラー修正手段（スクラビングアドレス生成手段３１２、リフレッシュアクセスサイクル手段３１４、アクセス制御手段１２４、データ受信手段１２７、データ選択送出手段１２６で構成される）を含む主記憶制御装置であって、主記憶装置から読み出されたデータにエラーがあった場合にそのデータを格納する主記憶装置のアドレスを示すエラーアドレスを順次保持し、リフレッシュタイミングが到来すると、保持していた全てのエラーアドレスを前記エラー修正手段に出力し、各エラーアドレスのデータ修正を実行させるエラーアドレス保持手段を備えた主記憶制御装置が開示されている。
【００６０】
上記の主記憶制御装置において、エラーアドレス保持手段は、エラーがあったデータのアドレスを示すエラーアドレスを順次保持する保持部（修正アドレス保持ＦＩＦＯ部３ＡＥで構成される）と、修正対象アドレス数に対応した信号（例えば同期パルス信号）を他系の主記憶制御装置におけるエラーアドレス保持手段に送る送信部（同期パルス送信部３Ａ４で構成される）と、他系の主記憶制御装置におけるエラーアドレス保持手段から受けた修正対象アドレス数と上記の保持部に保持されているアドレス数との和に相当する数のエラー修正要求をエラー修正手段に対して出力するエラー修正制御部３Ａ３を含む。このような構成によって、エラー修正時において、２つの主記憶装置に対するアクセス回数が一致する。すなわち、２つの主記憶装置に対するアクセスの同期が保たれる。
【００６１】
さらに、エラー修正時に、他系の主記憶制御装置におけるエラーアドレス保持手段から受信した修正対象アドレス数に対応した信号にもとづいてエラー修正要求がエラー修正手段に対して出力されるときに、ダミーアドレスをエラー修正手段に対して出力するダミーアドレス生成部３Ａ６が含まれているので、上記のようなアクセスの同期を維持するための制御を行っても、主記憶装置に対して悪影響が与えられることはない。
【００６２】
【発明の効果】
本発明によれば、二重化装置の各処理装置における主記憶制御部は、主記憶装置から読み出したデータにエラーがあった場合に、そのデータのエラーアドレスを蓄積するエラーアドレス保持手段を備え、所定の周期毎に、エラーアドレス保持手段から出力されるアドレス情報に基づいて、他の処理装置における主記憶制御装置と同期してエラーデータの修正を行い、その修正データを主記憶装置内に格納するので、主記憶装置内の特定のデータビットにエラーが発生したとしても、主記憶装置の容量の大きさに関らず、そのエラーデータの修正を行うことができる。
【図面の簡単な説明】
【図１】  本発明による二重化装置の一構成例を示すブロック図である。
【図２】  本発明による二重化装置の一構成例を示すブロック図である。
【図３】  処理装置１および処理装置２におけるエラーアドレス生成手段３１５の内部構成を示すブロック図である。
【図４】  エラーアドレス保持手段３１５の動作を説明するためのフローチャートである。
【図５】  従来の二重化装置の一構成例を示すブロック図である。
【図６】  従来の二重化装置の一構成例を示すブロック図である。
【符号の説明】
１      処理装置
２      処理装置
１１    主記憶装置
１２    主記憶制御装置
１３    中央処理装置
１４    二重化制御装置
１２１  中央処理インタフェース手段
１２２  アドレス保持手段
１２３  書き込みデータ保持手段
１２４  アクセス制御手段
１２５  アドレス変換手段
１２６  データ選択送出手段
１２７  データ受信手段
１２９  読出しデータ保持手段
３１２  スクラビングアドレス生成手段
３１３  リフレッシュ要求生成手段
３１４  リフレッシュアクセスサイクル手段
３１５  エラーアドレス保持手段
【図１】
0003803563.tif 000002
【図２】
0003803563.tif 000003
【図３】
0003803563.tif 000004
【図４】
0003803563.tif 000005
【図５】
0003803563.tif 000006
【図６】
0003803563.tif 000007