JP2014130418A - メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム - Google Patents

メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム Download PDF

Info

Publication number
JP2014130418A
JP2014130418A JP2012286704A JP2012286704A JP2014130418A JP 2014130418 A JP2014130418 A JP 2014130418A JP 2012286704 A JP2012286704 A JP 2012286704A JP 2012286704 A JP2012286704 A JP 2012286704A JP 2014130418 A JP2014130418 A JP 2014130418A
Authority
JP
Japan
Prior art keywords
memory
mirroring
data
normal
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012286704A
Other languages
English (en)
Other versions
JP5618219B2 (ja
Inventor
Norihiko Inoue
憲彦 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2012286704A priority Critical patent/JP5618219B2/ja
Publication of JP2014130418A publication Critical patent/JP2014130418A/ja
Application granted granted Critical
Publication of JP5618219B2 publication Critical patent/JP5618219B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】通常のアクセス速度を低下させることなく、システム動作中にメモリモジュールを交換することのできるメモリミラーリング装置を得ること。
【解決手段】上位装置1からの指令で稼働し前記各メモリモジュール用のアクセス命令を生成するメモリアクセス命令生成部4を備え、このメモリアクセス命令生成部4が、通常時に機能して前記第1,第2の各メモリ駆動制御部50,51へ所定の動作指令を送信する通常時アクセス命令生成部40と、第1,第2の各メモリモジュール10,20の内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部50,51を介して実行する障害時アクセス命令生成部41とを備えたこと。
【選択図】図1

Description

本発明は、メモリミラーリング装置に係り、特にシステム動作中に障害の発生したメモリモジュールを新規メモリモジュールに交換する構成のメモリミラーリング装置、メモリミラーリング方法、及びそのプログラムに関する。
一般に、メモリミラーリングは、上位装置のデータを2以上のメモリに同一に格納することで、一方のメモリに障害があっても他方のメモリから正常なデータを読み出し可能とすることで、データ保護の安全性を高める手法である。
このようなメモリミラーリング装置にて、主にメモリモジュールの障害に起因してシステム動作中にメモリモジュールを交換した場合、交換により実装した新規メモリモジュールを再びシステムに動的に組み込むためには、該メモリモジュールに対する初期化処理が必須である。メモリホットプラグを用いた装置の際にも同様である。
この初期化の期間は、メモリインターフェイス制御にて通常運用系( 交換していない方)のメモリモジュールアクセスと初期化用のメモリモジュールアクセスが競合するため、この初期化の期間はメモリモジュールへのアクセスが制限されてしまう。この結果、システム全体のメモリアクセス性能低下が余儀なくされる。
これに関連した先行技術として、以下に示す技術文献(特許文献1乃至4)が知られている。
特許文献1には、CPUからシステム動作中に交換メモリをオンラインで診断することを目的として(第2頁左上欄)、テストモードフラグがオンの際には障害発生により切り離されているメモリユニットを診断タスクのアクセス先とする手法(第2頁右下欄)が開示されている。
特許文献2には、デュアル構成で二重化されたメモリの交換をシステム停止せずに行うことを目的として(段落0001,0005)、オンライン運転中のメモリ内容を新たに挿入されたメモリへコピーする手法(段落0011、0016〜0018、図3)が開示されている。
特許文献3には、上位装置のオペレーティングシステム側にメモリ縮退機能がなくてもシステムを停止させずに動的にメモリ(DIMM)を交換することを目的として(段落0006〜0008)、パリティーデータから交換したメモリのデータを復元する手法(段落0052)が開示されている。
特許文献4には、システムを停止させず障害メモリモジュールを交換することを目的として(段落0013)、複数の直列メモリに1つの予備メモリを装備し、数回エラーが発生したメモリのデータをエラー発生後に予備メモリにコピーする手法(段落0034)が開示されている。
特開平04−74243号公報 特開平06−110760号公報 特開2003−303139号公報 特開2006−268556号公報
しかしながら、上記特許文献1から4及びこれらを組み合わせた技術では、主にメモリモジュールの障害に起因して、システムの動作中にメモリを交換すると、交換後に実装した新規メモリモジュールを再びシステムに組み込むため、メモリの初期化処理等のために通常のアクセスが制限され、システムのメモリアクセス性能が低下する、という不都合があった。
例えば、特許文献4記載の手法では、動的なメモリ交換において通常系のメモリと交換対象のメモリとが同一のバスに接続されているため交換後のメモリ初期化に際しては通常系のメモリへのアクセスが必然的に低下してしまう、という不都合があった。
[発明の目的]
本発明は、上記関連技術の有する不都合を改善し、通常のアクセス速度を低下させることなく、システム動作中にメモリモジュールを交換することのできるメモリミラーリング装置、メモリミラーリング方法、及びそのプログラムを提供することを、その目的とする。
上記目的を達成するため、本発明に係るメモリミラーリング装置は、メモリミラーリング状態に装備された第1,第2の各メモリモジュールと、この各メモリモジュールに個別に対応して設けられ上位装置の指令により所定のデータの書込み又は読出しを実行する第1,第2のメモリ駆動制御部を有するメモリインターフェイス制御部とを備えている。
そして、上位装置からの指令で稼働し前記各メモリモジュール用のアクセス命令を生成するメモリアクセス命令生成部を備えると共に、このメモリアクセス命令生成部が、
通常時に機能して前記第1,第2の各メモリ駆動制御部へ所定の動作指令を送信する通常時アクセス命令生成部と、
前記第1,第2の各メモリモジュールの内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する障害時アクセス命令生成部とを備える、という構成を採っている。
上記目的を達成するため、本発明に係るメモリミラーリング方法は、メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を予め装備された通常系アクセス命令生成部が生成し、
この生成されたメモリアクセス命令に従って前記第1,第2の各メモリ駆動制御部が稼働し前記メモリミラーリング状態に装備された第1,第2の各メモリモジュールへの読み出し又は書き込みを実行し、
前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合には、予め装備された障害時アクセス命令生成部が稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する、という構成を採っている。
上記目的を達成するため、本発明に係るメモリミラーリング用動作プログラムは、メモリミラーリング状態に装備された第1,第2の各メモリに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
前記上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を生成する通常系アクセス命令生成機能、
この生成されたメモリアクセス命令に従って前記メモリミラーリング状態に装備された前記第1,第2の各メモリモジュールへの読み出し又は書き込みを実行する読出し書込み制御機能、
および前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合に機能して当該交換されたメモリモジュールの初期化指令を対応する何れか一方の前記メモリ駆動制御部に対して発信するための障害時アクセス命令生成処理機能、
を設け、これらの各機能をコンピュータに実現させるようにする、という構成を採っている。
本発明は、以上のように構成したので、これによると、交換したメモリモジュールを通常アクセスを遅延させることなく初期化することができ、このため、システム全体の動作速度を低下させずにシステムの動作中に故障したメモリの交換をすることが可能となる、という上記関連技術にない優れたメモリミラーリング装置、メモリミラーリング方法、及びそのプログラムを提供することができる。
本発明にかかるメモリミラーリング装置の一実施形態の基本的構成を示すブロック図である。 図1に開示した実施形態の具体的な構成を示すブロック図である。 図1に開示した実施形態における何れか一方のメモリモジュールの選択フロー(データ読出し動作)を示すフローチャートである。 図1に開示した実施形態におけるメモリモジュールの交換時におけるメモリコントローラの基本的な制御動作の手順を示すフローチャートである。 図3に開示したフローチャートにおける縮退1(ステップB2)部分の詳細動作例を示すフローチャートである。 図3に開示したフローチャートにおける縮退2(ステップB3)部分の詳細動作例を示すフローチャートである。
次に、本発明にかかるメモリミラーリング装置の一実施形態を、図面を参照して詳細に説明する。
最初に、本実施形態の基本的な構成を説明し、その後に具体的な構成を説明する。
〔基本構成〕
図1において、本実施形態におけるメモリミラーリング装置2は、メモリミラーリング状態に装備された第1,第2の各メモリモジュール10,20と、この各メモリモジュール10,20に個別に対応して装備され上位装置1の指令により所定のデータの書込み又は読出しを実行する第1,第2のメモリ駆動制御部50,51を有するメモリインターフェイス制御部5とを備えている。
又、上位装置1からの指令で稼働し前記各メモリモジュール10,20用のアクセス命令を生成するメモリアクセス命令生成部4を備えている。
このメモリアクセス命令生成部4は、通常時に機能して前記第1,第2の各メモリ駆動制御部50,51へ所定の動作指令を送信する通常時アクセス命令生成部40と、上記第1,第2の各メモリモジュール10,20の内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュール10(又は20)の初期化を、対応する何れか一方の前記メモリ駆動制御部50(又は51)を介して実行する障害時アクセス命令生成部41とを備えている。
このため、本実施形態にあっては、障害時アクセス命令生成部41と前記第1,第2の各メモリ駆動制御部50,51とが有効に連係して作動し、交換したメモリモジュール10(又は20)を、稼働中のメモリモジュール20(又は10)とは独立して初期化することができ、このため、システム全体の動作速度を低下させずにシステムの動作中に故障したメモリの交換をすることが可能となる、という利点がある。
前述したメモリインターフェイス制御部5には、更に、第1,第2の各メモリモジュール10,20の何れか一方に障害が発生した場合にこれを検知して対応する何れか一方の前記メモリ駆動制御部50,51へ排除指令を出力するリプライデータ制御部59が装備されている。又、このリプライデータ制御部59は、具体的には後述するが、上位装置1からアクセスされた正常データを当該上位装置1に向けて送る正常データ送出機能を備えている。
これにより、障害発生にかかるメモリモジュール10(又は20)が、対応するメモリ駆動制御部50(又は51)によって論理的に排除され且つ外部表示部(図示せず)を介して交換要請が外部表示されるようになっている。
以下、これを更に詳述する。
〔具体的な構成〕
前述した第1,第2の各DIMM10,20は、図1の場合と同様に、メモリコントローラ3に制御されて同一のデータを格納し記憶する機能を備え、外部に対しては相互にメモリミラーリングを構成している(図2参照)。
この第1,第2の二個のメモリモジュール(以後は、具体的にJEDEC 準拠の汎用品メモリモジュールを前提として「DIMM」と記述する)10,20は、具体的には、対応するDIMM用スロット10A,20Aによって個別に保持されている。
又、この各DIMM10,20に対する上位装置1からのアクセス指令(読出し書込み指令)は、前述したようにメモリコントローラ3に伝達され、このメモリコントローラ3のメモリ駆動制御部50,51によって、各DIMM10,20に対するアクセスが個別に且つ同時に実行されるようになっている。
メモリコントローラ3は、具体的には、前述したメモリアクセス命令生成部4とメモリインターフェイス制御部5とに加えて、更に、DIMM10又は20に障害が発生した場合に当該障害にかかるメモリモジュールであるDIMM10又は20の電源を必要に応じて停止制御する電源動作制御部3Aを備えている。
この内、メモリアクセス命令生成部4は、前述した図1に場合と同様に、通常の場合に機能して上位装置1から上記各DIMM10,20について成されるアクセス指令に対応して当該DIMM用の読出し指令又は書込み指令を生成し出力する通常系アクセス命令生成部40と、通常時には動作停止状態を維持し且つDIMM障害が発生した場合に機能して交換された新規のDIMM10又は20についてその初期化動作を実行する障害系アクセス命令生成部41とを備えている。
又、メモリインターフェイス制御部5は、メモリアクセス命令生成部4の通常系又は異常系のアクセス命令生成部40,41からのアクセス指令に基づいて、前記DIMM10に対する前記上位装置1からの読み出し又は書き込み若しくはDIMM初期化動作を実行する第1のメモリ駆動制御部50を備えている。
更に、このメモリインターフェイス制御部5は、通常系又は異常系のアクセス命令生成部40,41からのアクセス指令に基づいて前記DIMM20に対する前記上位装置1からの読出し又は書込み若しくはDIMM初期化動作を実行する第2のメモリ駆動制御部51を備えている。
そして、このメモリインターフェイス制御部5における上記第1,第2の各メモリ駆動制御部50,51は、DIMM用チャネル10B,20Bを介して、メモリモジュールである前記各DIMM10,20にそれぞれ個別に連結されている。
以下これを更に詳述する。
まず、前述した第1のメモリ駆動制御部50は、具体的には、上記各アクセス命令生成部40又は41(制御は排他) から受け取ったメモリアクセス命令に基づいてDIMM用チャネル10Aのアドレス線10aとデータ線10bを介して第1のDIMM10へのアクセスを制御する。
同様に、第2のメモリ駆動制御部51は、上記各アクセス命令生成部40又は41(制御は排他) から受け取ったメモリアクセス命令を元にDIMM用チャネル20Aのアドレス線20aとデータ線20bを介して第2のDIMM20へのアクセスを制御する。
また、前述した通常系アクセス命令生成部40は、配線300を介して上位装置1からDIMMアクセス命令を受け取り、通常時は同一命令を各メモリ駆動制御部50,51に配線400を介して同時に出力し、DIMM用チャネル10B,20Bでそれぞれ同一動作を行わせて、メモリミラーリングを実現している。
ここで、前述した異常系アクセス命令生成部41は、通常時は待機系として機能し、各メモリ駆動制御部50と51には配線410を介して何も出力しない。
一方、DIMM障害が発生して、例えば第1のDIMM10が論理的に切り離された場合、通常系アクセス命令生成部40は、第2のメモリ駆動制御部51のみに命令を出力し、対応するDIMM用チャネル20Bのみを制御する機能を有する。同時に、異常系アクセス命令生成部41は、第1のメモリ駆動制御部50のみに命令を出力し、切り離しが発生したDIMM用チャネル10Bのみを制御する機能を有する。
同様に、DIMM障害により第2のDIMM20が論理的に切り離された場合、通常系アクセス命令生成部40は、第1のメモリ駆動制御部50のみに命令を出力しDIMM用チャネル10Aのみを制御する。同時に、異常系アクセス命令生成部41は、第2のメモリ駆動制御部51のみに命令を出力し、切り離しが発生した側の前記DIMM用チャネル20Bの制御を行う。
前述したメモリインターフェイス制御部5は、第1,第2の各メモリ駆動制御部50,51に加えて、更に、当該第1,第2の各メモリ駆動制御部50,51に対応して個別に連結された第1,第2の各エラー検出訂正回路52,53と、この各エラー検出訂正回路52,53の出力を入力して何れか一方のデータを特定し前記上位装置1へ向けて出力するリプライデータ制御部59とを備えている。
上記第1,第2の各エラー検出訂正回路52,53は、前記各メモリモジュールからの読出しデータの有効性を個別に判定すると共にエラー検出なしの場合に当該各読出しデータをそれぞれ正常セータと認定する機能を備えている。
又、この第1,第2の各エラー検出訂正回路52,53は、読出しデータの有効性の判定時に訂正可能エラーを検出した場合には、当該訂正可能エラーを訂正しこれを正常データとして出力する機能をそれぞれが備えている(請求項3)。
また、第1のエラー検出訂正回路52は、第1のDIMM10からの読出し動作時にエラーコードで保護された読出しデータのエラー検出(訂正可能エラー、訂正不可エラー)を行う。そして、訂正可能エラーを検出した場合は訂正したデータを配線520に出力する。
更に、第1のエラー検出訂正回路52は、読み出しデータ以外にも第1のDIMM10の物理的な故障(障害)を配線10e(汎用DIMMのErrorout信号を想定) を介して監視し且つ障害の発生に際しては障害データを配線520に出力しており、配線10eが有効(故障解除)になった場合は当該配線520に出力する障害データを無効にする。
同様に、第2のエラー検出訂正回路53は、第2のDIMM20からの読出し動作時にエラーコードで保護された読出しデータのエラー検出(訂正可能エラー、訂正不可エラー)を行う。そして、訂正可能エラーを検出した場合は訂正したデータを配線530に出力する。
更に、第2のエラー検出訂正回路53は、読み出しデータ以外にも第2のDIMM20の物理的な故障(障害)を配線20e(汎用DIMMのErrorout信号を想定) を介して監視し且つ障害の発生に際しては障害データを配線520に出力しており、配線10eが有効(故障解除)になった場合は配線530に出力するデータを無効にする。
上記リプライデータ制御部59は、第1のDIMM10又は第2のDIMM20の読出しデータを配線520,530とを介してそれぞれ受け取り、図2のフローに従い、何れか一方を選択し、これをメモリアクセスのリードデータとして配線500に出力する。
そして、通常時(メモリミラー状態)は、配線520と配線530とを介して同一データを受け取りデフォルトとして配線520を選択する(図3:ステップS101〜S103参照) 。
即ち、前述したリプライデータ制御部59は、上記各エラー検出訂正回路52,53で正常データと認定したデータの内の一つ(各DIMM10又は20からの読出しデータ)を、上位装置1へ出力する機能を備えている。この場合、リプライデータ制御部59は、本実施形態では、第1のDIMM10からのデータを優先的に特定し上位装置1へ出力する機能を備えている。
前記リプライデータ制御部59は、上記各エラー検出訂正回路52,53を介して得られる前記各DIMM10,20からエラーアウト線10e,20eを介して得られるデータに基づいて障害の発生有無を判定する障害有無判定機能と、この障害有りと判定された第1のDIMM10又は第1のDIMM20を交換対象として論理的に排除する前記排除指令を対応する前記第1又は第2のメモリ駆動制御部へ通知する排除指令出力機能とを備えている。
〔実施形態の動作〕
最初に全体的な動作を説明する。
まず、上位装置1からの指令でメモリアクセス命令生成部4が稼働し、第1,第2の各DIMM10,20に対する通常時のアクセス命令を予め装備された通常系アクセス命令生成部40が生成する(メモリアクセス命令生成工程)。
続いて、この生成されたメモリアクセス命令に従って第1,第2の各メモリ駆動制御部50,51が稼働し、メモリミラーリング状態に装備された第1,第2の各DIMM10,20への読み出し又は書き込みを同時に実行する(読出し書込み制御工程)。
一方、この第1,第2の各DIMM10,20への読み出し又は書き込みの実行に相前後して、第1,第2の各DIMM10,20の内の何れか一方が障害等の発生により交換装備された場合には、予め装備された障害時アクセス命令生成部41が稼働して当該交換された第1又は第2のDIMM10(又は20)の初期化を、対応する何れか一方の前記メモリ駆動制御部50(又は51)を介して実行する(交換メモリ初期化工程)。
ここで、前述した障害の発生に伴う前記メモリモジュールの交換に先立って、第1,第2の各DIMM10,20の内の何れか一方に障害が発生した場合には、当該障害情報を入手したリプライデータ制御部59が対応する前記メモリ駆動制御部50,51へ排除指令を発信すると共に前記上位装置1からアクセスされた正常データを前記上位装置に送出する(障害メモリ用排除指令発信工程)。
又、前述した交換メモリの初期化後に、前記上位装置1からアクセスされた正常データを当該上位装置1に送出するに際し、前記リプライデータ制御部は、正常動作後の第1,第2の各DIMM10,20から得られる正常データの内、一方のDIMM(メモリモジュール)である第1のDIMMからの正常データを、第2のDIMMから得られる正常データに優先して前記上位装置1へ出力するようにし、これによって、初期化後の現状復帰の円滑化が図られている。
以下、これを、具体的に説明する。
(実施形態の動作/通常時)
次に、第1の動作として、上記実施形態におけるメモリミラーリング装置2の通常時の動作を説明する(図4:ステップS201参照)。
最初に、メモリライト(書き込み)動作に関して説明する。
上位装置1から配線300を介してメモリライト命令が入力されると、図1,図2に開示した通常系アクセス命令生成部40は、配線400を介して第1,第2の各メモリ駆動制御部50,51に、同一メモリライト指令を出力する。
ここで、障害系アクセス命令生成部41は通常時は待機系となり、第1,第2の各メモリ駆動制御部50,51には何も出力しない。この場合、第1のメモリ駆動制御部50は配線10aと10bとを介して第1のDIMM10への書き込みを行う。同様に、第1のメモリ駆動制御部51も、同一データを配線20aと20bとを介して第2のDIMM20に書き込みを行う。
次に、メモリリード(読み出し)動作に関して説明する。
上記通常系アクセス命令生成部40は、上位装置1から配線300を介してメモリリード命令が出力されると、配線400を介して第1,第2の各メモリ駆動制御部50,51に同一メモリ内容のリード指令を出力する。この場合、異常系アクセス命令生成部41は待機系となり、各メモリ駆動制御部50,51に何も出力しない。
続いて、第1のメモリ駆動制御部50は、配線10aと配線10bを介して第1のDIMM10からの読出しを行う。同様に、第2のメモリ駆動制御部51も、配線20aと配線20bを介して、同一データを第2のDIMM20から読み出す。
次に、第1のエラー検出訂正回路52は、第1のDIMM10の読出しデータのエラー検出を配線10bを介して行うと共に、エラー検出しなかった場合は配線520にデータをそのまま出力する。一方、訂正可能エラーを検出した場合は、訂正したデータを配線520に出力する。第2のエラー検出訂正回路53も、同様の処理をして、データを配線530に出力する。
続いて、リプライデータ制御部59は、配線520,530に出力されたデータを図3のデータ選択フローチャートに従い選択する。
ここで、上記リプライデータ制御部59のデータ選択動作を、図3のフローチャートに基づいて詳述する。
まず、第1のDIMM10の読出しデータに基づいて当該DIMM10の有効性(縮退無し)が判定され、有効との判定により、次のステップへ移行する(図3:ステップS101/イエス)。次のステップでは、訂正不可能エラー(又はErrorout)が検出されたか否かが判定され、検出されない場合(図3:ステップS102/ノー)、当該第1のDIMM10からのデータが読出しデータとして選択される(図3:ステップS103)。
一方、ステップS101で第1のDIMM10の非有効性が、又はステップS102で当該DIMM10にて訂正不可能エラー(又はErrorout)が検出された場合には、外部に対する第1DIMM10の切り離し(例えば論理的切り離し:書き込み抑制等)が実行され、続いて、次のステップで、第2のDIMM20の有効性が判定される(図3:ステップS104)。
尚、上記第1のDIMM10の切り離し動作は、リプライデータ制御部59の指令に基づいて、例えば、対応する第1のメモリ駆動制御部50が、実行する。
続いて、上記有効性判定のステップS104で、第2のDIMM20の読出しデータに基づいて当該DIMM20の有効性(縮退無し)が、前述した第1のDIMM10の場合と同様に判定され、有効との判定により次のステップへ移行する(図3:ステップS104/イエス)。次のステップでは、前述した第1のDIMM10の場合と同様に、訂正不可能エラー(又はErrorout)が検出されたか否かが判定され、検出されない場合(図3:ステップS105/ノー)、当該第2のDIMM20からのデータが読出しデータとして選択される(図3:ステップS106)。
一方、ステップS104で第2のDIMM10の非有効性が、又はステップS105で当該DIMM10にて訂正不可能エラー(又はErrorout)が検出された場合には、外部に対する第2のDIMM10の切り離し(例えば論理的切り離し:書き込み抑制等)が実行され、続いてシステム全体が停止制御される(図3:ステップS107)。
即ち、通常時は、配線520のDIMM10からの読出しデータが優先的に選択され、メモリアクセスのリードデータとして配線500を介して上位装置1に出力される(図3:ステップS101〜S103参照) 。
ここで、通常系アクセス命令生成部40は、通常のメモリアクセス命令以外にも、汎用のDIMM制御に必要なDIMMチャネル初期化専用の一連の命令や、通常動作時に定期的に発行するリフレッシュ命令も、合わせて第1,第2の各メモリ駆動制御部50,51に出力し、同時制御を指令する。
(実施形態の動作/DIMM障害時)
次に、第2の動作として、DIMM障害発生時の動作を説明する。
DIMM10又は20から読み出したデータの訂正不可エラー(又はErrorout信号)が確定すると、障害発生にかかるDIMM10又は20が論理的に切り離しとなり、図3のフロー中の通常(ステップS201)から縮退1(図4:ステップS202)へと移行する。
ここでは、DIMM用チャネル10A側が切り離しとなるケースを例として、順を追って説明する。
前記メモリリード動作(読出し動作)で第1のエラー検出訂正回路52で訂正不可能エラー(又はErrorout)信号を配線10eを介して検出した場合、即時に図4の縮退1(図4:ステップS202)に移行し、DIMM用チャネル10Bは通常系から論理的に切り離され、通常系アクセス命令生成部40は第2のメモリ駆動制御部51のみに命令を出力し、DIMM用チャネル20Bのみで通常メモリアクセス動作を継続する。
この時、リプライデータ制御部59は、図3のフローに従いDIMM用チャネル10Bでエラー検出時は図3のステップS101〜S102,S104〜S106のフローに従い、又、DIMM用チャネル10Bの切り離し以降は図3のステップS101,S104〜S106に従い、それぞれ第2のDIMM20の読出しデータを固定的に選択する。
同時に障害系アクセス命令生成部41は、切り離された側の第1のメモリ駆動制御部50と接続し、DIMM用チャネル10Bの制御を通常動作とは独立して行う。
これにより、DIMM用チャネル20B側は性能低下無しに通常メモリアクセス動作が維持可能となる。
(DIMM交換と初期設定時の動作)
次に、論理的に切り離されたDIMM用チャネル10Bに対するDIMM交換からDIMMの初期設定までの一連の動作を、図5のフローチャートに従い、順に説明する。
最初に、DIMM用チャネル10B側の電源オフ(OFF)の前準備として、メモリコントローラ3から出力するDIMM用チャネル10B側の一連のインタフェース信号を、一般の汎用DIMM仕様に従い固定値に設定する(図5:ステップS301)。
次に、メモリコントローラ3は、電源動作制御部3Aを稼働させてDIMM用チャネル10B側のみ電源オフにする(図5:ステップS302)。
続いて、故障DIMM10の物理的な交換を実施して新規なDIMM10を装備し(図5:ステップS303)、DIMM用チャネル10B側の電源オン(ON)前の準備として、メモリコントローラ3側の設定を実施する(図5:ステップS304)。その後、電源動作制御部3Aを稼働させてDIMM用チャネル10B側の電源をオンする(図5:ステップS305)。
続いて、新規に交換した第1のDIMM10の素性確認のため、SPDリードを実施し(図5:ステップS306)、DIMM用チャネル10Bの立ち上げのための初期化シーケンスを、メモリコントローラ3側から設定し(図5:ステップS307)、DIMM用チャネル10B立ち上げのためのDIMM10に対する一連の初期設定を、図1の障害系メモリアクセス命令生成部41と第1のメモリ駆動制御部50経由で実施する。
同時に、DIMM10へのリフレッシュも有効にする(図5:ステップS308)。更に、立ち上げたDIMM10の良品確認と初期値格納を目的として、簡易的なDIMMテスト(図5:ステップS309)を実行する。
テストの1例として、第1のDIMM10の全アドレスに対してオール「1」をライト後に全アドレスを読出して期待値オール「1」を確認し、次に、オール「0」をライト後に全アドレス読出して期待値オール「0」を確認する。
このテストにより、データオール「1」および「0」の確認と初期値オール「0」の格納が実現可能となる。
最後に、障害系アクセス命令生成部41からのリフレッシュを停止する(図5:ステップS310)。こまでの一連の動作完了で交換した第1のDIMM10が物理的に使用可能となり、縮退2(図5:ステップS203)に移行する。
ここで、障害系アクセス命令生成部41は、前述した縮退1(図5:ステップS102) のみで使用され、交換が発生したDIMM用チャネル10B側の第1メモリ駆動制御部50と接続し、DIMM用チャネルの初期化に必要な一連の命令と定期的に発行するリフレッシュ命令とを生成する(図5:ステップS308〜S310)。
本実施形態における縮退1のように、メモリミラーリングにおいて片側DIMMが切り離された状態においては、従来例のように通常系アクセス命令生成部40のみしか存在せず、障害系アクセス命令生成部41が存在しなかった場合には、通常系アクセス命令生成部40が通常系のメモリアクセスを処理しながら、更にDIMM交換が発生したDIMMチャネルの初期化フローを実施しなければならない。このため、前述した従来例あっては、通常メモリアクセスの性能低下が発生する。
特に、図5のステップS308〜S310はDIMM用チャネル10B(又は20B)経由でDIMM10(又は20)の初期化を実施しなければならない。このため、メモリアクセス命令生成部4による制御が必須である。
この問題を解決するために本実施形態では、DIMM交換が発生したDIMMチャネルを専用に初期化する障害系アクセス命令生成部41を設け、通常系アクセス命令生成部40が制御する通常メモリアクセスとは独立して動作することで、メモリアクセス性能の低下を排除することを可能にした。
(縮退2における動作)
次に、第3の動作として、縮退2における動作(図4:ステップ203)を、図6のフローチャートに従って詳述する。
この縮退2(図4:ステップ203) のフェースでは、通常系のDIMM20の内容を、交換が完了した新規のDIMM10へ全てコピーする。
ここで、前述したDIMM用チャネル10Bが切り離しとなったケースに関して、順を追って説明する。
まず、縮退2(図4:ステップ203) に移行すると、通常系アクセス命令生成部40は、配線400を介して第1,第2の各メモリ駆動制御部50,51に接続する。この場合、メモリアクセス命令生成部41は再び待機系となる。ただし、通常系アクセス命令生成部40は、切り離しとなったDIMM用チャネル10Bに対しては、メモリライト命令のみを発行し、メモリリード命令は発行しない。
よって、リプライデータ制御部59は、第1のDIMM10の配線520に出力されるリードデータも受け取らない。リードデータは配線530のDIMM用チャネル20B側からのみを、継続して受け取る。
そして、通常系DIMM20の内容を全てコピーするためのスタートアドレスを、DIMM読出しアドレスとして設定する(図6:ステップ401)。DIMM読出しアドレスに対するメモリリード指示が図1の配線300を介して上位装置1から入力されると、通常系DIMM20から該当データが読み出され配線500を介して前記上位装置1へ出力される(図6:ステップ402)。
この場合、前述したように、通常系アクセス命令生成部40は切り離されたDIMMチャネル10Bにはリード指示を出力しないため、リードはDIMM用チャネル20B側のみから実行される。次に、前記上位装置1からの読出しアドレスに対応して、前記第2のDIMM20からの読出しデータを書き込む命令が、前記上位装置1から配線300を介して入力されると、第1のDIMM10及び第2のDIMM20の両方に、同一データが書き込まれる(図6:ステップ403)。
次に、現状のDIMM読出しアドレスに対して定数(DIMM読出し単位長) を加算して、次のDIMM読出しアドレスを生成する(図6:ステップ404)。このDIMM読出しアドレスがDIMMに予め割り付けられた全アドレス領域を終了していない場合、ステップS402に戻る。
一方、全アドレス領域を終了している場合は、第2のDIMM20から第1のDIMM10へのメモリコピー終了、と判断し(図6:ステップ405)、通常処理(図4:ステップS201)に戻り、再びメモリミラーリング状態となる。
そして、この通常状態に戻ると、通常系アクセス命令生成部40は配線400を介して第1,第2の各メモリ駆動制御部50,51にメモリリード命令を含めた全ての同一メモリアクセス命令を出力する。
又、DIMM用チャネル20Bが切り離しとなるケースに関しては、通常側がDIMM用チャネル10B、切り離し側である障害系がDIMM用チャネル20Bとなり、前述したDIMM用チャネル10Bが切り離しとなる場合と同様の動作制御が行われる。
ここで、上述した実施形態における各構成部分の関連したデータ処理にかかる連係動作については、これをコンピュータが実行可能にプログラム化し当該コンピュータに実現させるように構成してもよい。
この場合、本プログラムは非一時的な記憶媒体(例えば、DVD、CD、フラッシュメモリ等)に記録されてもよい。その場合、本プログラムは記憶媒体からコンピュータによって読み出され実行される。
〔実施形態の効果〕
第1の効果は、障害系アクセス命令生成部41が有効に機能して、メモリミラーリングにおけるメモリモジュールである第1のDIMM10又は第1のDIMM20の交換時に従来より生じていたメモリアクセス性能の低下を、確実に回避することが可能となる。
第2の効果はメモリミラーリングにおけるメモリモジュール交換時間を短縮することで短時間でメモリミラーリング状態に復旧することが可能になり、システムの信頼度を有効に維持することができる。
その理由は、通常運用系である通常系アクセス命令生成部40のほかに、障害等で交換が発生したメモリモジュールを専用に初期化する障害系メモリアクセス命令生成部41を別に設けたことで、ミラーリング構成の片方のメモリモジュールを交換する場合に通常系のメモリアクセスと並列に、交換したメモリモジュールに対する初期化および組み込みが実行可能なためである。
このように、本実施形態によると、図1のメモリミラーリング装置において、通常系アクセス命令生成部40のほかに障害等で交換が発生したメモリモジュールを専用に初期化する障害系メモリアクセス命令生成部41を設けることで、メモリモジュール交換時の通常系メモリアクセスへの影響を最小限にし、かつメモリ交換時間を短縮することでメモリミラーリング状態への復旧の迅速化が可能になり、システムの可用性が維持できるという前述した関連技術にない優れた効果を奏するメモリミラーリング装置、メモリミラーリング方法、及びそのプログラムを得ることができる。
上述した実施形態については、その新規な技術的内容の要点をまとめると、以下のようになる。尚、ここにまとめた新規な技術的内容については、本発明をこれに限定するものではない。
〔付記1〕
メモリミラーリング状態に装備された第1,第2の各メモリモジュールと、この各メモリモジュールに個別に対応して装備され上位装置の指令により所定のデータの書込み又は読出しを実行する第1,第2のメモリ駆動制御部を有するメモリインターフェイス制御部とを備えたメモリミラーリング装置において、
前記上位装置からの指令で稼働し前記各メモリモジュール用のアクセス命令を生成するメモリアクセス命令生成部を備えると共に、
このメモリアクセス命令生成部が、通常時に機能して前記第1,第2の各メモリ駆動制御部へ所定の動作指令を送信する通常時アクセス命令生成部と、前記第1,第2の各メモリモジュールの内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する障害時アクセス命令生成部とを備えたことを特徴とするメモリミラーリング装置。
〔付記2〕
付記1記載のメモリミラーリング装置において、
前記メモリインターフェイス制御部は、
前記第1,第2の各メモリモジュールの何れか一方に障害が発生した場合にこれを検知して対応する何れか一方の前記メモリ駆動制御部へ排除指令を出力すると共に前記上位装置からアクセスされた正常データを前記上位装置に送るリプライデータ制御部を、予め備えていることを特徴としたメモリミラーリング装置。
〔付記3〕
付記2記載のメモリミラーリング装置において、
前記メモリインターフェイス制御部が、更に、前記各メモリモジュールに対応して個別に装備され当該各メモリモジュールからの読出しデータの有効性を個別に判定すると共にエラー検出なしの場合に当該各読出しデータをそれぞれ正常セータと認定する第1,第2のエラー検出訂正回路を装備し、
この第1,第2の各エラー検出訂正回路で正常データと認定されたデータの内の一の読出しデータを、前記リプライデータ制御部が前記上位装置へ出力する機能を備えていることを特徴とするメモリミラーリング装置。
〔付記4〕
付記3記載のメモリミラーリング装置において、
前記第1,第2の各エラー検出訂正回路は、読出しデータの有効性の判定時に訂正可能エラーを検出した場合には当該訂正可能エラーを訂正しこれを正常データとして出力する機能をそれぞれが備えていることを特徴としたメモリミラーリング装置。
〔付記5〕
付記3又は4に記載のメモリミラーリング装置において、
前記リプライデータ制御部は、前記各エラー検出訂正回路で有効と判定されたデータの内、一方のメモリモジュールである前記第1のメモリモジュールからのデータを優先して前記上位装置へ出力する機能を備えていることを特徴としたメモリミラーリング装置。
〔付記6〕
付記3又は4に記載のメモリミラーリング装置において、
前記リプライデータ制御部は、前記各メモリモジュールからの読出しデータに基づいて障害の発生有無を判定する障害有無判定機能と、この障害有りと判定されたメモリモジュールを交換対象として論理的に排除する前記排除指令を対応する前記第1又は第2のメモリ駆動制御部へ送信する排除指令送信機能とを備えていることを特徴としたメモリミラーリング装置。
〔付記7〕(方法の発明/付記1対応)
メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
前記上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を予め装備された通常系アクセス命令生成部が生成し(メモリアクセス命令生成工程)、
この生成されたメモリアクセス命令に従って前記第1,第2の各メモリ駆動制御部が稼働し前記メモリミラーリング状態に装備された第1,第2の各メモリモジュールへの読み出し又は書き込みを実行し(読出し書込み制御工程)、
前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合には、予め装備された障害時アクセス命令生成部が稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する構成としたこと(交換メモリ初期化工程)を特徴とするメモリミラーリング方法。
〔付記8〕(付記2対応)
付記7記載のメモリミラーリング方法において、
前記障害等の発生に伴う前記メモリモジュールの交換に先立って、
第1,第2の各メモリモジュールの内の何れか一方に障害が発生した場合に当該障害情報を入手したリプライデータ制御部が対応する前記メモリ駆動制御部へ排除指令を発信すると共に前記上位装置からアクセスされた正常データを前記上位装置に送出する工程(障害メモリ用排除指令発信工程)を設けたことを特徴とするメモリミラーリング方法。
〔付記9〕(付記5対応)
付記7記載のメモリミラーリング方法において、
前記交換メモリ初期化後に、前記上位装置からアクセスされた正常データを当該上位装置に送出するに際し、正常動作後の第1,第2の各メモリモジュールから得られる正常データの内、一方のメモリモジュールである前記第1のメモリモジュールからの正常データを、前記リプライデータ制御部が第2のメモリモジュールから得られる正常データに優先して前記上位装置へ出力することを特徴としたメモリミラーリング方法。
〔付記10〕(プログラム発明/付記7対応)
メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
前記上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を生成する通常系アクセス命令生成機能、
この生成されたメモリアクセス命令に従って前記メモリミラーリング状態に装備された前記第1,第2の各メモリモジュールへの読み出し又は書き込みを実行する読出し書込み制御機能、
および前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合に機能し、当該交換されたメモリモジュールの初期化指令を対応する何れか一方の前記メモリ駆動制御部に対して発信する障害時アクセス命令生成処理機能、
を設け、これらの各機能をコンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
〔付記11〕(付記8対応)
付記10記載のメモリミラーリング用動作プログラムにおいて、
前記障害等の発生に伴い交換される前記メモリモジュールの交換に先立って、
第1,第2の各メモリモジュールの内の何れか一方に障害が発生した場合に当該障害情報に基づいて機能し対応する前記メモリ駆動制御部へ排除指令を発信する機能、および前記上位装置からアクセスされた正常データを前記上位装置に送出する正常データ送出処理機能、
を設け、これらを前記コンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
〔付記12〕(付記9対応)
付記10記載のメモリミラーリング用動作プログラムにおいて、
前記交換メモリ初期化後に、前記上位装置からアクセスされた正常データを当該上位装置に送出するに際し、正常動作後の前記第1,第2の各メモリモジュールから得られる正常データの内、一方のメモリモジュールである前記第1のメモリモジュールからの正常データを前記第2のメモリモジュールからの正常データに優先して前記上位装置へ出力する優先出力処理機能を設け、
これを前記コンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
本発明は、全てのコンピュータ及びコンピュータを組み込んだ情報機器のメモリ用として利用される。
1 上位装置
2 メモリミラーリング装置
3 メモリコントローラ
4 メモリアクセス命令生成部
5 メモリインターフェイス制御部
10 第1のメモリモジュール(第1のDIMM)
11 第2のメモリモジュール(第2のDIMM)
40 通常系アクセス命令生成部
41 障害系アクセス命令生成部
50 第1のメモリ駆動制御部
51 第2のメモリ駆動制御部
52 第1のエラー検出訂正回路
53 第2のエラー検出訂正回路
59 リプライデータ制御部
上記目的を達成するため、本発明に係るメモリミラーリング装置は、メモリミラーリング状態に装備された第1,第2の各メモリモジュールと、この各メモリモジュールに個別に対応して設けられ上位装置の指令により所定のデータの書込み又は読出しを実行する第1,第2のメモリ駆動制御部を有するメモリインターフェイス制御部とを備えている。
そして、上位装置からの指令で稼働し前記各メモリモジュール用のアクセス命令を生成するメモリアクセス命令生成部を備えると共に、このメモリアクセス命令生成部が、
通常時に前記第1,第2の各メモリ駆動制御部の各々へ所定の動作指令を送信する一方、前記第1,第2のメモリモジュールの内の何れか一方に障害が生じた場合と前記第1,第2のメモリモジュールの内の何れか一方が障害等により交換装備された場合には他方のメモリーモジュールのメモリ駆動制御部に対してのみ前記所定の動作指令を送信する通常時アクセス命令生成部と、
前記第1,第2の各メモリモジュールの内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する障害時アクセス命令生成部とを備える、という構成を採っている。
上記目的を達成するため、本発明に係るメモリミラーリング方法は、メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
上位装置からの指令で予め装備された通常系アクセス命令生成部が稼働し、通常時には前記第1,第2の各メモリ駆動制御部の各々へのアクセス命令を生成する一方、前記第1,第2のメモリモジュールの内の何れか一方に障害が生じた場合と前記第1,第2のメモリモジュールの内の何れか一方が障害等により交換装備された場合には他方のメモリーモジュールのメモリ駆動制御部に対してのみアクセス命令を生成し、
この生成されたアクセス命令に従って前記第1,第2の各メモリ駆動制御部が稼働し前記メモリミラーリング状態に装備された第1,第2の各メモリモジュールへの読み出し又は書き込みを実行し、
前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合には、予め装備された障害時アクセス命令生成部が稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する、という構成を採っている。
上記目的を達成するため、本発明に係るメモリミラーリング用動作プログラムは、メモリミラーリング状態に装備された第1,第2の各メモリに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
前記上位装置からの指令で稼働し、通常時には前記第1,第2の各メモリ駆動制御部の各々へのアクセス命令を生成する一方、前記第1,第2のメモリモジュールの内の何れか一方に障害が生じた場合と前記第1,第2のメモリモジュールの内の何れか一方が障害等により交換装備された場合には他方のメモリーモジュールのメモリ駆動制御部に対してのみアクセス命令を生成する通常系アクセス命令生成機能、
この生成されたアクセス命令に従って前記メモリミラーリング状態に装備された前記第1,第2の各メモリモジュールへの読み出し又は書き込みを実行する読出し書込み制御機能、
および前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合に機能して当該交換されたメモリモジュールの初期化指令を対応する何れか一方の前記メモリ駆動制御部に対して発信するための障害時アクセス命令生成処理機能、
を設け、これらの各機能をコンピュータに実現させるようにする、という構成を採っている。
上記第1,第2の各エラー検出訂正回路52,53は、前記各メモリモジュールからの読出しデータの有効性を個別に判定すると共にエラー検出なしの場合に当該各読出しデータをそれぞれ正常データと認定する機能を備えている。
又、この第1,第2の各エラー検出訂正回路52,53は、読出しデータの有効性の判定時に訂正可能エラーを検出した場合には、当該訂正可能エラーを訂正しこれを正常データとして出力する機能をそれぞれが備えている(請求項3)。
〔付記3〕
付記2記載のメモリミラーリング装置において、
前記メモリインターフェイス制御部が、更に、前記各メモリモジュールに対応して個別に装備され当該各メモリモジュールからの読出しデータの有効性を個別に判定すると共にエラー検出なしの場合に当該各読出しデータをそれぞれ正常データと認定する第1,第2のエラー検出訂正回路を装備し、
この第1,第2の各エラー検出訂正回路で正常データと認定されたデータの内の一の読出しデータを、前記リプライデータ制御部が前記上位装置へ出力する機能を備えていることを特徴とするメモリミラーリング装置。

Claims (12)

  1. メモリミラーリング状態に装備された第1,第2の各メモリモジュールと、この各メモリモジュールに個別に対応して装備され上位装置の指令により所定のデータの書込み又は読出しを実行する第1,第2のメモリ駆動制御部を有するメモリインターフェイス制御部とを備えたメモリミラーリング装置において、
    前記上位装置からの指令で稼働し前記各メモリモジュール用のアクセス命令を生成するメモリアクセス命令生成部を備えると共に、
    このメモリアクセス命令生成部が、
    通常時に機能して前記第1,第2の各メモリ駆動制御部へ所定の動作指令を送信する通常時アクセス命令生成部と、
    前記第1,第2の各メモリモジュールの内の何れか一方が障害等により交換装備された場合に稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する障害時アクセス命令生成部とを備えたことを特徴とするメモリミラーリング装置。
  2. 請求項1記載のメモリミラーリング装置において、
    前記メモリインターフェイス制御部は、
    前記第1,第2の各メモリモジュールの何れか一方に障害が発生した場合にこれを検知して対応する何れか一方の前記メモリ駆動制御部へ排除指令を出力すると共に前記上位装置からアクセスされた正常データを前記上位装置に送るリプライデータ制御部を、予め備えていることを特徴としたメモリミラーリング装置。
  3. 請求項2記載のメモリミラーリング装置において、
    前記メモリインターフェイス制御部が、更に、前記各メモリモジュールに対応して個別に装備され当該各メモリモジュールからの読出しデータの有効性を個別に判定すると共にエラー検出なしの場合に当該各読出しデータをそれぞれ正常セータと認定する第1,第2のエラー検出訂正回路を装備し、
    この第1,第2の各エラー検出訂正回路で正常データと認定されたデータの内の一の読出しデータを、前記リプライデータ制御部が前記上位装置へ出力する機能を備えていることを特徴とするメモリミラーリング装置。
  4. 請求項3記載のメモリミラーリング装置において、
    前記第1,第2の各エラー検出訂正回路は、読出しデータの有効性の判定時に訂正可能エラーを検出した場合には当該訂正可能エラーを訂正しこれを正常データとして出力する機能をそれぞれが備えていることを特徴としたメモリミラーリング装置。
  5. 請求項3又は4に記載のメモリミラーリング装置において、
    前記リプライデータ制御部は、前記各エラー検出訂正回路で有効と判定されたデータの内、一方のメモリモジュールである前記第1のメモリモジュールからのデータを優先して前記上位装置へ出力する機能を備えていることを特徴としたメモリミラーリング装置。
  6. 請求項3又は4に記載のメモリミラーリング装置において、
    前記リプライデータ制御部は、前記各メモリモジュールからの読出しデータに基づいて障害の発生有無を判定する障害有無判定機能と、この障害有りと判定されたメモリモジュールを交換対象として論理的に排除する前記排除指令を対応する前記第1又は第2のメモリ駆動制御部へ送信する排除指令送信機能とを備えていることを特徴としたメモリミラーリング装置。
  7. メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
    前記上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を予め装備された通常系アクセス命令生成部が生成し(メモリアクセス命令生成工程)、
    この生成されたメモリアクセス命令に従って前記第1,第2の各メモリ駆動制御部が稼働し前記メモリミラーリング状態に装備された第1,第2の各メモリモジュールへの読み出し又は書き込みを実行し(読出し書込み制御工程)、
    前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合には、予め装備された障害時アクセス命令生成部が稼働して当該交換されたメモリモジュールの初期化を、対応する何れか一方の前記メモリ駆動制御部を介して実行する構成としたこと(交換メモリ初期化工程)を特徴とするメモリミラーリング方法。
  8. 請求項7記載のメモリミラーリング方法において、
    前記障害等の発生に伴う前記メモリモジュールの交換に先立って、
    第1,第2の各メモリモジュールの内の何れか一方に障害が発生した場合に当該障害情報を入手したリプライデータ制御部が対応する前記メモリ駆動制御部へ排除指令を発信すると共に前記上位装置からアクセスされた正常データを前記上位装置に送出する工程(障害メモリ用排除指令発信工程)を設けたことを特徴とするメモリミラーリング方法。
  9. 請求項7に記載のメモリミラーリング方法において、
    前記交換メモリ初期化後に、前記上位装置からアクセスされた正常データを当該上位装置に送出するに際し、正常動作後の第1,第2の各メモリモジュールから得られる正常データの内、一方のメモリモジュールである前記第1のメモリモジュールからの正常データを、前記リプライデータ制御部が第2のメモリモジュールから得られる正常データに優先して前記上位装置へ出力するようにしたことを特徴とするメモリミラーリング方法。
  10. メモリミラーリング状態に装備された第1,第2の各メモリモジュールに個別に対応して稼働し、上位装置の指令により所定のデータの書込み又は読出しを第1,第2のメモリ駆動制御部が実行するメモリミラーリング装置にあって、
    前記上位装置からの指令で稼働し前記各メモリモジュールに対する通常時のアクセス命令を生成する通常系アクセス命令生成機能、
    この生成されたメモリアクセス命令に従って前記メモリミラーリング状態に装備された前記第1,第2の各メモリモジュールへの読み出し又は書き込みを実行する読出し書込み制御機能、
    および前記第1,第2の各メモリモジュールへの読み出し又は書き込みの実行に相前後して、第1,第2の各メモリモジュールの内の何れか一方が障害等の発生により交換装備された場合に機能し、当該交換されたメモリモジュールの初期化指令を対応する何れか一方の前記メモリ駆動制御部に対して発信する障害時アクセス命令生成処理機能、
    を設け、これらの各機能をコンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
  11. 請求項10記載のメモリミラーリング用動作プログラムにおいて、
    前記障害等の発生に伴い交換される前記メモリモジュールの交換に先立って、
    第1,第2の各メモリモジュールの内の何れか一方に障害が発生した場合に当該障害情報に基づいて機能し対応する前記メモリ駆動制御部へ排除指令を発信する機能、および前記上位装置からアクセスされた正常データを前記上位装置に送出する正常データ送出処理機能、
    を設け、これらを前記コンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
  12. 請求項10記載のメモリミラーリング用動作プログラムにおいて、
    前記交換メモリ初期化後に、前記上位装置からアクセスされた正常データを当該上位装置に送出するに際し、正常動作後の前記第1,第2の各メモリモジュールから得られる正常データの内、一方のメモリモジュールである前記第1のメモリモジュールからの正常データを前記第2のメモリモジュールからの正常データに優先して前記上位装置へ出力する優先出力処理機能を設け、
    これを前記コンピュータに実現させるようにしたことを特徴とするメモリミラーリング用動作プログラム。
JP2012286704A 2012-12-28 2012-12-28 メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム Active JP5618219B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012286704A JP5618219B2 (ja) 2012-12-28 2012-12-28 メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012286704A JP5618219B2 (ja) 2012-12-28 2012-12-28 メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2014130418A true JP2014130418A (ja) 2014-07-10
JP5618219B2 JP5618219B2 (ja) 2014-11-05

Family

ID=51408773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012286704A Active JP5618219B2 (ja) 2012-12-28 2012-12-28 メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム

Country Status (1)

Country Link
JP (1) JP5618219B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858160A (zh) * 2020-06-23 2020-10-30 杭州龙境科技有限公司 一种便于云手机访问的IeMMC方法和系统
JP7477574B2 (ja) 2022-09-28 2024-05-01 Necプラットフォームズ株式会社 メモリミラーリング装置、及びメモリミラーリング方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6220045A (ja) * 1985-07-19 1987-01-28 Fujitsu Ltd 記憶装置の現用・予備切替方式
JPH06223001A (ja) * 1993-01-25 1994-08-12 Omron Corp 二重化システムのコピー処理方法
JP2002333935A (ja) * 2001-03-15 2002-11-22 Hewlett Packard Co <Hp> 冗長コントローラシステムにコントローラを活線挿入する方法およびシステム
JP2004054615A (ja) * 2002-07-19 2004-02-19 Fujitsu Ltd 多重化された外部メモリの等価性回復プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6220045A (ja) * 1985-07-19 1987-01-28 Fujitsu Ltd 記憶装置の現用・予備切替方式
JPH06223001A (ja) * 1993-01-25 1994-08-12 Omron Corp 二重化システムのコピー処理方法
JP2002333935A (ja) * 2001-03-15 2002-11-22 Hewlett Packard Co <Hp> 冗長コントローラシステムにコントローラを活線挿入する方法およびシステム
JP2004054615A (ja) * 2002-07-19 2004-02-19 Fujitsu Ltd 多重化された外部メモリの等価性回復プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858160A (zh) * 2020-06-23 2020-10-30 杭州龙境科技有限公司 一种便于云手机访问的IeMMC方法和系统
CN111858160B (zh) * 2020-06-23 2023-12-22 杭州龙境科技有限公司 一种便于云手机访问的IeMMC方法和系统
JP7477574B2 (ja) 2022-09-28 2024-05-01 Necプラットフォームズ株式会社 メモリミラーリング装置、及びメモリミラーリング方法

Also Published As

Publication number Publication date
JP5618219B2 (ja) 2014-11-05

Similar Documents

Publication Publication Date Title
US20040168101A1 (en) Redundant memory system and memory controller used therefor
US9195553B2 (en) Redundant system control method
US10691565B2 (en) Storage control device and storage control method
US20110043323A1 (en) Fault monitoring circuit, semiconductor integrated circuit, and faulty part locating method
JP6282482B2 (ja) プログラマブル回路装置、コンフィギュレーション情報修復方法
JP2011170589A (ja) ストレージ制御装置、ストレージ装置およびストレージ制御方法
JP2009140353A (ja) 再構成可能な集積回路、及びこれを用いた自己修復システム
JP5618219B2 (ja) メモリミラーリング装置、メモリミラーリング方法、及びそのプログラム
US10216595B2 (en) Information processing apparatus, control method for the information processing apparatus, and recording medium
US7320093B2 (en) Storage apparatus
WO2021088368A1 (zh) 一种存储器的修复方法及装置
JP5104479B2 (ja) 情報処理装置
JP5099342B2 (ja) Plc用の部品実装基板
JP5910356B2 (ja) 電子装置、電子装置制御方法及び電子装置制御プログラム
JP4470949B2 (ja) フォールトトレラントコンピュータおよびその制御方法
JP2008146239A (ja) 二重化制御装置、及びそのメモリ部の複数ビットエラーの自動修復方法
JP2008262426A (ja) 2重化コントローラシステム、そのコントローラ
JP6111605B2 (ja) コンピュータシステム、コンピュータシステムの診断方法及び診断プログラム
JP2011154593A (ja) メモリ装置およびそのセルフチェック制御方法
JP2010128511A (ja) マイクロコンピュータ及びフェイルセーフ対策方法
CN113868000B (zh) 一种链路故障修复方法、系统及相关组件
JP2011076528A (ja) Raidカードの冗長化方法及びraidカードの冗長化装置
JP2010061258A (ja) デュプレックスプロセッサシステム及びプロセッサ二重化方法
JP4721746B2 (ja) プロセス制御用コンピュータシステム
JP2008250936A (ja) 二重化制御装置、及びそのトラッキング方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140812

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140904

R150 Certificate of patent or registration of utility model

Ref document number: 5618219

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150