(57)【要約】【課題】小規模な情報処理装置において、高性能なシステム、高信頼性システム、安価なシステムを柔軟に実現することを目的とする【解決手段】複数の記憶装置を制御するシステム制御装置が、プロセッサからのプロセッサバス幅のデータを複数の分割データに分割する手段と、分割した複数の分割データを複数の記憶装置に分散して同時に転送する第１の転送手段と、分割した複数の分割データを時分割して同一の記憶装置に順次転送する第２の転送手段と、第１の転送手段又は第２の転送手段のいずれかを動作させるモード制御手段とを備える。【選択図】  図１
2008033588.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、複数の記憶装置と、前記複数の記憶装置を制御するシステム制御装置から成る情報処理装置において、前記システム制御装置は、プロセッサからのプロセッサバス幅のデータを複数の分割データに分割する手段と、前記分割した複数の分割データを複数の記憶装置に分散して同時に転送する第１の転送手段と、前記分割した複数の分割データを時分割して同一の記憶装置に順次転送する第２の転送手段と、前記第１の転送手段又は前記第２の転送手段のいずれかを動作させるモード制御手段とを備える情報処理装置。
【請求項２】
前記システム制御装置は、複数の記憶装置から同時に１回で読み出した複数の分割データをプロセッサバス幅のデータに合成してプロセッサに転送する第３の転送手段と、１つの記憶装置から複数回に分けて順次読み出した複数の分割データをプロセッサバス幅のデータに合成してプロセッサに転送する第４の転送手段とを備え、前記モード制御手段は前記第１の転送手段を動作させる場合には前記第３の転送手段を動作させ、前記第２の転送手段を動作させる場合には前記第４の転送手段を動作させる請求項１記載の情報処理装置。
【請求項３】
前記第４の転送手段は、各記憶装置から順次読み出した分割データの内いずれか１つを選択する手段を備え、前記モード制御手段は、動作中の記憶装置から読み出した分割データにエラーが発生した場合には他の記憶装置から読み出した分割データに切り換えて前記第４の転送手段を動作させる請求項２記載の情報処理装置。
【請求項４】
前記第４の転送手段は、各記憶装置から順次読み出したデータの内いずれか１つを選択する手段を備え、前記モード制御手段は、記憶装置が１つだけ実装されている場合には当該記憶装置からの読み出しデータを選択して前記第４の転送手段を動作させる請求項２記載の情報処理装置。
【請求項５】
前記システム制御装置は、第１の記憶装置の分割データを第２の記憶装置にコピーするために前記第１の記憶装置から読み出し分割データを一時的に格納する格納手段を備え、前記第４の転送手段は、合成データを前記格納手段に転送する手段を備え、前記第２の転送手段は、転送データとして前記格納手段に格納された合成データを選択する選択手段を備え、前記モード制御手段は、データコピー動作を実行する場合には第１の記憶装置から読み出した分割データを前記格納手段に転送するように前記第４の転送手段を動作させ、前記格納手段に格納された合成データを第２の記憶装置に転送するように前記第２の転送手段を動作させる請求項２記載の情報処理装置。
【請求項６】
前記モード制御手段は、動作中の記憶装置から読み出した分割データにエラーが発生した場合に、エラーが発生した記憶装置が交換された後に、前記データコピー動作を実行させる請求項５記載の情報処理装置。
【請求項７】
前記記憶装置はメモリコントローラと記憶モジュールから成る請求項１乃至６記載の情報処理装置。
【請求項８】
プロセッサと、複数の記憶装置と、前記複数の記憶装置を制御するシステム制御装置から成る情報処理装置において、前記システム制御装置は、前記プロセッサからのプロセッサバス幅のデータを複数の分割データに分割して格納する複数のライトデータバッファと、前記複数のライトデータバッファから読み出した分割データから各記憶装置に転送する分割データを選択する各記憶装置対応の複数の第１セレクタと、当該情報処理装置の動作モードを指定するモードレジスタと、前記モードレジスタの指示に従って前記複数の記憶装置に対するアクセスを制御するモード制御部とを備え、
前記モード制御部は、高性能モードが指示された場合には、前記複数のライトデータバッファから複数の分割データを同時に読み出し、前記第１セレクタに前記同時に読み出された複数の分割データを選択させ、選択された複数の分割データを対応する複数の記憶装置に同時に転送し、高信頼モードが指示された場合には、前記複数のライトデータバッファから分割データを順次読み出し、前記順次読み出された分割データを前記第１セレクタに順次選択させ、選択された分割データを各記憶装置に順次転送する情報処理装置。
【請求項９】
前記システム制御装置は、複数の記憶装置から同時に転送されてきた複数の分割データのエラー検出と訂正を行う第１チェック回路と、１つの記憶装置から転送されてきた分割データを一時保持する第１レジスタと、前記第１レジスタに保持された分割データと次に転送されてきた分割データをプロセッサバス幅のデータに合成してエラー検出と訂正を行う第２チェック回路と、他の記憶装置から転送されてきた分割データを一時保持する第２レジスタと、前記第２レジスタに保持された分割データと次に転送されてきた分割データをプロセッサバス幅のデータに合成してエラー検出と訂正を行う第３チェック回路と、前記第２チェック回路の訂正出力と前記第３チェック回路の訂正出力のいずれかを選択する第２セレクタと、前記第１チェック回路の訂正出力と前記第２セレクタの出力のいずれかを選択する第３セレクタと、前記第３セレクタの出力を格納し前記プロセッサに送出するリードデータバッファとを備え、
前記モード制御部は、高性能モードが指示された場合には、前記第３セレクタに前記第１チェック回路の訂正出力を選択させ、高信頼性モードが指示された場合には、前記第３セレクタに前記第２セレクタの出力を選択させる請求項８記載の情報処理装置。
【請求項１０】
前記システム制御装置は、前記第３セレクタの出力を格納する複数のコピーデータバッファと、前記複数のライトデータバッファの出力と前記複数のコピーデータバッファの出力のいずれかを選択して前記前記第１セレクタに送出する第４セレクタとを備え、
前記モード制御部は、データコピーモードが指示された場合には、前記第３セレクタに前記第２セレクタの出力を選択させ、前記第４セレクタに前記複数のコピーデータバッファの出力を選択させ、前記複数のコピーデータバッファから分割データを順次読み出し、前記順次読み出された分割データを前記第１セレクタに順次選択させ、選択された分割データを各記憶装置に順次転送する請求項９記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単一の装置を用いて、高性能なシステム、冗長なメモリ構成およびメモリホットスワップを実現する信頼性の高いシステム、及び少ない記憶容量を持つ安価なシステムを柔軟に実現することが可能な情報処理装置にかかるものである。
【背景技術】
【０００２】
従来、プロセッサ、ノースブリッジ間バス転送単位のデータ幅（プロセッサバス幅）でインタリーブ、冗長なメモリ構成、メモリホットスワップを行なっていた。プロセッサバス幅でインタリーブ、冗長なメモリ構成、メモリホットスワップを行なうためにはプロセッサ、ノースブリッジ間バスのスループットに対し、ノースブリッジ、記憶装置間バスは２倍以上のスループットが必要であるため、小規模な情報処理装置においては冗長なメモリ構成、メモリホットスワップを実現することが難しかった。
【０００３】
【特許文献１】特開２００６−１８３３７公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
プロセッサ、ノースブリッジ間バスと同等程度のスループットの、ノースブリッジ、記憶装置間バスを持つ小規模な情報処理装置において、システムの要求に応じ、高性能なシステム、高信頼性システム、安価なシステムを柔軟に実現することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、プロセッサと、複数の記憶装置と、前記複数の記憶装置を制御するシステム制御装置から成る情報処理装置において、前記システム制御装置が、プロセッサからのプロセッサバス幅のデータを複数の分割データに分割する手段と、前記分割した複数の分割データを複数の記憶装置に分散して同時に転送する第１の転送手段と、前記分割した複数の分割データを時分割して同一の記憶装置に順次転送する第２の転送手段と、前記第１の転送手段又は前記第２の転送手段のいずれかを動作させるモード制御手段とを備える情報処理装置である。
【０００６】
さらに、本発明は、前記システム制御装置が、複数の記憶装置から同時に１回で読み出した複数の分割データをプロセッサバス幅のデータに合成してプロセッサに転送する第３の転送手段と、１つの記憶装置から複数回に分けて順次読み出した複数の分割データをプロセッサバス幅のデータに合成してプロセッサに転送する第４の転送手段とを備え、前記モード制御手段は前記第１の転送手段を動作させる場合には前記第３の転送手段を動作させ、前記第２の転送手段を動作させる場合には前記第４の転送手段を動作させる情報処理装置である。
【発明の効果】
【０００７】
本発明によれば、小規模な情報処理装置においてもシステム（ユーザ）の要求に応じ、高性能なシステム、高信頼性システム、安価なシステムを柔軟に実現することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施例を図面を用いて詳細に説明する。
【０００９】
図１は、本発明の一実施例を示したものである。図１は、情報処理装置内のプロセッサ１、ノースブリッジ（システム制御装置）２、記憶装置３の構成図を示したものである。記憶装置３−１、３−２上にはメモリコントローラ４、記憶モジュール５が搭載される。記憶装置３はメモリカードその他の形態で構成される。プロセッサ１とノースブリッジ２はプロセッサ・ノースブリッジ間バス６を介してデータを１２８ビット幅で転送する。
【００１０】
ノースブリッジ２は、プロセッサ１からの１２８ビットデータを２つに分割し、分割した２つの６４ビットデータを動作モードに応じて、分散又は時分割して記憶装置３−１、３−２に転送する。
【００１１】
ノースブリッジ２は、リードエンジン７、ライトエンジン８、モードコントローラ９、モードレジスタ２０を持つ。
【００１２】
モードコントローラ９は、リードエンジン７、ライトエンジン８を制御して高性能モード、低コストモード、高信頼性モード、データコピーモードの４つの動作モードを実現する。高い性能が求められるシステムでは、高性能モードにし、記憶装置３−１、３−２を同時にパラに使用することで、スループットを向上させることができる。低コストが求められるシステムでは、低コストモードにし記憶装置３−１のみ、もしくは３−２のみで動作させることで安価なシステムを実現することができる。高い信頼性が求められるシステムでは、高信頼性モードにし、記憶装置３−１、３−２を２重化して使用することで可用性を向上させることができる。また一時的に高信頼性モードから低コストモードに遷移することで記憶装置のホットスワップが実現できる。ホットアド時にはデータコピーモードにし追加した記憶装置に、他方の記憶装置上のデータをコピーする。
【００１３】
モードレジスタ２０は、システム（ユーザ）から指定された動作モードが設定され、モードコントローラ９へ動作指示を与える。
【００１４】
図２は、ノースブリッジ２上のライトエンジン８の構成図を示したものである。ライトエンジン８は、ライトデータバッファ１０−１、１０−２、コピーデータバッファ１１−１、１１−２、ライトデータ・コピーデータ間セレクタ１２−１、１２−２、ライトデータモードセレクタ１３−１、１３−２からなる。
【００１５】
プロセッサ１から転送されてきた１２８ビットデータは２つの６４ビットライトデータＷＤi０、ＷＤi１に分割されてライトデータバッファ１０−１、１０−２に格納される。リードエンジン７から転送されてきた２つの６４ビットのリードデータＲＤ０、ＲＤ１はコピーデータバッファＣＤ０，ＣＤ１に格納される。
【００１６】
ライトデータバッファ１０−１から読み出されたデータＷＤ０とコピーデータバッファ１１−１から読み出されたデータＣＤ０はライトデータ・コピーデータ間セレクタ１２−１に転送され、ライトデータバッファ１０−２から読み出されたデータＷＤ１とコピーデータバッファ１１−２から読み出されたデータＣＤ１はライトデータ・コピーデータ間セレクタ１２−２に転送される。ライトデータ・コピーデータ間セレクタ１２−１，１２−２はモードコントローラ９からのセレクト信号ＣＷＳＥＬ０、ＣＷＳＥＬ１により制御される。
【００１７】
ライトデータ・コピーデータ間セレクタ１２−１，１２−２から出力されるデータＣＷＤ０，ＣＷＤ１はそれぞれライトデータモードセレクタ１３−１，１３−２に転送される。ライトデータモードセレクタ１３−１，１３−２はモードコントローラ９からのセレクト信号ＷＤＳＥＬ０、ＷＤＳＥＬ１により制御される。ライトデータモードセレクタ１３−１，１３−２から出力される６４ビットのデータＷＤｏ０，ＷＤｏ１は記憶装置３−１，３−２に転送される。
【００１８】
ライトデータバッファ１０−１、１０−２は２ポートＲＡＭで構成され、ライトアドレスＷＤＢＦ＿ＷＡ及びライトイネーブルＷＤＢＦ＿ＷＥ（図示せず）を制御してデータの書き込みを行い、リードアドレスＷＤＢＦ＿ＲＡ（図示せず）を制御してデータの読み出しを行う。
【００１９】
コピーデータバッファ１０−１、１０−２も２ポートＲＡＭで構成され、コピーデータバッファライトアドレスＣＤＢＦ＿ＷＡ及びコピーデータバッファライトイネーブルＣＤＢＦ＿ＷＥ（図示せず）を制御してデータの書き込みを行い、コピーデータバッファリードアドレスＣＤＢＦ＿ＲＡ（図示せず）を制御してデータの読み出しを行う。
【００２０】
図３は、ノースブリッジ２上のリードエンジン７の構成図を示したものである。リードエンジン７は、フリップフロップ１４−１、１４−２、ＥＣＣ回路１５−１、１５−２，１５−３、マスタデータ・スレーブデータ間セレクタ１６−１、１６−２、リードデータモードセレクタ１７−１，１７−２、リードデータバッファ１８−１，１８−２からなる。
【００２１】
記憶装置３−１，３−２から転送されてきた６４ビットのデータＲＤｉ０、ＲＤｉ１はＥＣＣ回路１５−１に転送され、訂正データＣＲＤ０、ＣＲＤ１がリードデータモードセレクタ１７−１，１７−２に転送される。ＥＣＣ回路１５−１で訂正ができないエラーが検出されるとエラー信号ＥＲ１がモードコントローラ９に送出される。
【００２２】
記憶装置３−１から転送されてきた６４ビットのデータＲＤｉ０は、フリップフロップ１４−１に転送されて１サイクル遅らせたデータＭＲＤ０としてＥＣＣ回路１５−２に転送されると共に、そのままデータＭＲＤ１としてＥＣＣ回路１５−２に転送され、訂正データＣＭＲＤ０、ＣＭＲＤ１がマスタデータ・スレーブデータ間１６−１，１６−２に転送される。ＥＣＣ回路１５−２で訂正ができないエラーが検出されるとエラー信号ＥＲ２がモードコントローラ９に送出される。
【００２３】
同様に、記憶装置３−２から転送されてきた６４ビットのデータＲＤｉ１は、フリップフロップ１４−２に転送されて１サイクル遅らせたデータＳＲＤ０としてＥＣＣ回路１５−３に転送されると共に、そのままデータＳＲＤ１としてＥＣＣ回路１５−３に転送され、訂正データＣＳＲＤ０、ＣＳＲＤ１がマスタデータ・スレーブデータ間セレクタ１６−１，１６−２に転送される。ＥＣＣ回路１５−３で訂正ができないエラーが検出されるとエラー信号ＥＲ３がモードコントローラ９に送出される。
【００２４】
マスタデータ・スレーブデータ間セレクタ１６−１，１６−２はモードコントローラ９からのセレクト信号ＭＳＳＥＬにより制御される。マスタデータ・スレーブデータ間セレクタ１６−１，１６−２から出力されるデータＭＳＲＤ０，ＭＳＲＤ１はそれぞれリードデータモードセレクタ１７−１，１７−２に転送される。
【００２５】
リードデータモードセレクタ１７−１，１７−２はモードコントローラ９からのセレクト信号ＲＤＳＥＬ０、ＲＤＳＥＬ１により制御される。リードデータモードセレクタ１７−１，１７−２から出力される６４ビットのデータＲＤ０、ＲＤ１はリードデータバッファ１８−１、１８−２及びコピーデータバッファ１１−１，１１−２に転送される。
【００２６】
リードデータバッファ１８−１、１８−２は２ポートＲＡＭで構成され、リードデータバッファライトアドレスＲＤＢＦ＿ＷＡ及びリードデータバッファライトイネーブルＲＤＢＦ＿ＷＥ（図示せず）を制御してデータの書き込みを行い、リードデータバッファリードアドレスＲＤＢＦ＿ＲＡ（図示せず）を制御してデータの読み出しを行う。
【００２７】
図５は、高性能モード時のプロセッサ１からのデータを記憶装置３に転送する際のノースブリッジ２の動作を示すタイミングチャートである。
【００２８】
プロセッサ１から転送されてきたデータＤ００〜Ｄ７１は、図２のライトエンジン８に入り、ライトデータバッファライトイネーブルＷＤＢＦ＿ＷＥ、ライトデータバッファライトアドレスＷＤＢＦ＿ＷＡを図５のように制御することでライトデータバッファ１０−１，１０−２に格納される。
【００２９】
ライトデータバッファリードアドレスＷＤＢＦ＿ＲＡを毎サイクルインクリメントしてデータＷＤ０、ＷＤ１を読み出し、ライトデータ・コピーデータ間セレクタ１２−１、１２−２のセレクト信号ＣＷＤＳＥＬ０、ＣＷＤＳＥＬ１でそれぞれデータＷＤ０，ＷＤ１を選びデータＣＷＤ０、ＣＷＤ１を出力し、ライトデータモードセレクタ１３−１、１３−２のセレクト信号ＷＤＳＥＬ０、ＷＤＳＥＬ１でそれぞれＣＷＤ０，ＣＷＤ１を選びデータＷＤｏ０，ＷＤｏ１を出力する。
【００３０】
この結果、記憶装置３−１への転送データＷＤｏ０は、Ｄ００，Ｄ１０、…、Ｄ７０となり、記憶装置３−２への転送データＷＤｏ１は、Ｄ０１，Ｄ１１，…、Ｄ７１となる。
【００３１】
図６は、高信頼性モード及び低コストモード時のプロセッサ１からのデータを記憶装置３に転送する際のノースブリッジ２の動作を示すタイミングチャートである。
【００３２】
プロセッサ１から転送されてきたデータＤ００〜Ｄ７１は、図２のライトエンジン８に入り、ライトデータバッファライトイネーブルＷＤＢＦ＿ＷＥ、ライトデータバッファライトアドレスＷＤＢＦ＿ＷＡを図６のように制御することでライトデータバッファ１０−１，１０−２に格納される。
【００３３】
ライトデータバッファ１０−１，１０−２のリードアドレスＷＤＢＦ＿ＲＡを隔サイクルインクリメントしてデータＷＤ０，ＷＤ１を読み出し、ライトデータ・コピーデータ間セレクタ１２−１、１２−２のセレクト信号ＣＷＤＳＥＬ０，ＣＷＤＳＥＬ１でそれぞれデータＷＤ０，ＷＤ１を選びデータＣＷＤ０，ＣＷＤ１を出力し、ライトデータモードセレクタ１３−１、１３−２のセレクト信号ＷＤＳＥＬ０、ＷＤＳＥＬ１で１サイクル毎にデータＣＷＤ０，ＣＷＤ１を交互に選びデータＷＤｏ０，ＷＤｏ１を出力する。
【００３４】
この結果、記憶装置３−１、３−２への転送データＷＤｏ０、ＷＤｏ１は、共にＤ００，Ｄ０１、Ｄ１０、…、Ｄ７１となる。
【００３５】
図７は、高性能モード時の記憶装置３からのデータをプロセッサ１に転送する際のノースブリッジ２の動作を示すタイミングチャートである。
【００３６】
記憶装置３−１から転送されてきたデータＤ００、Ｄ１０、…、Ｄ７０と記憶装置３−２から転送されてきたデータＤ０１、Ｄ１１、…、Ｄ７１は図３のリードエンジン７に入り、ＥＣＣ回路１５−１でエラー訂正される（ＣＲＤ０，ＣＲＤ１）。エラー訂正できない場合はエラー信号ＥＲ１がモードコントローラ９に送出される。リードデータモードセレクタ１７−１、１７−２のセレクト信号ＲＤＳＥＬ０、ＲＤＳＥＬ１をそれぞれＣＲＤ０、ＣＲＤ１にすることで、リードデータバッファ１８−１，１８−２に格納するデータＲＤ０はＤ００、Ｄ１０，…、Ｄ７０になり、ＲＤ１はＤ０１、Ｄ１１，…、Ｄ７１となる。
【００３７】
リードデータバッファライトイネーブルＲＤＢＦ＿ＷＥ，リードデータバッファライトアドレスＲＤＢＦ＿ＷＡを図７のように制御することでリードデータバッファ１８−１，１８−２にデータＲＤ０，ＲＤ１が格納される。
【００３８】
リードデータバッファ１８−１，１８−２にデータが揃った後に、リードデータバッファリードアドレスＲＤＢＦ＿ＲＡを毎サイクルインクリメントしてデータＲＤo０，ＲＤｏ１を読み出す
この結果、プロセッサ１への転送データＲＤｏ０は、Ｄ００，Ｄ１０、…、Ｄ７０となり、転送データＲＤｏ１は、Ｄ０１，Ｄ１１，…、Ｄ７１となる。
【００３９】
図８は、高信頼モードおよび低コストモード時の記憶装置３からのデータをプロセッサ１に転送する際のノースブリッジ２の動作を示すタイミングチャートである。
【００４０】
記憶装置３−１から転送されてきたデータＤ００、Ｄ０１，Ｄ１０、…、Ｄ７１と記憶装置３−２から転送されてきたデータＤ００、Ｄ０１，Ｄ１０、…、Ｄ７１は図３のリードエンジン７に入る。
【００４１】
記憶装置３−１から転送されてきた６４ビットのデータＲＤｉ０をフリップフロップ１４−１で１サイクル遅らせたデータをＭＲＤ０とし、遅らせないデータをＭＲＤ１とする。ＭＲＤ０，ＭＲＤ１それぞれ２，４，６，８，１０，１２，１４，１６サイクル目に着目すると、１サイクル遅らせたデータＭＲＤ０はＤ００，Ｄ１０，…、Ｄ７０、遅らせないデータＭＲＤ１はＤ０１，Ｄ１１，…、Ｄ７１となる。このデータはＥＣＣ回路１５−２でエラー訂正され、マスタデータＣＭＲＤ０，ＣＭＲＤ１となる。エラー訂正できない場合はエラー信号ＥＲ２がモードコントローラ９に送出される。
【００４２】
同様に、記憶装置３−２から転送されてきた６４ビットのデータＲＤｉ１は、ＥＣＣ回路１５−３でエラー訂正後スレーブデータＣＳＲＤ０，ＣＳＲＤ１となる。エラー訂正できない場合はエラー信号ＥＲ３がモードコントローラ９に送出される。
【００４３】
マスタデータ・スレーブデータ間セレクタ１６−１、１６−２のセレクト信号ＭＳＳＥＬは図４（モードコントローラ９の動作表）で示されるデータを選択する（ＭＳＲＤ０，ＭＳＲＤ１）。
【００４４】
即ち、高信頼モード時には、マスタデータＣＭＲＤ０，ＣＭＲＤ１、スレーブデータＣＳＲＤ０，ＣＳＲＤ１それぞれのＥＣＣ結果に応じて、どちらかのデータにエラーが発生した場合にはＯＫ側のデータを選択する。両者ともＯＫの場合はいずれを選択しても良いが例えばマスタデータを選択する。両者ともエラーの場合は出力データには意味は無いが仮にスレーブデータを選択することとする。
【００４５】
又、低コストモード時には、記憶装置搭載情報に従って、記憶装置３−１のみが搭載されている場合はマスタデータＣＭＲＤ０，ＣＭＲＤ１を選択し、記憶装置３−２のみが搭載されている場合はスレーブデータＣＳＲＤ０，ＣＳＲＤ１を選択する。記憶装置搭載情報は、Ｈ／Ｗで記憶装置の搭載状況を検出してモードコントローラ９に与えられるか、あるいはシステム（ユーザ）からの指示によりモードレジスタ２０に設定してモードコントローラ９に与えられても良い。
【００４６】
次に、リードデータモードセレクタ１７−１、１７−２のセレクト信号ＲＤＳＥＬ０、ＲＤＳＥＬ１をそれぞれＭＳＲＤ０、ＭＳＲＤ１とすることで、リードデータバッファ１８−１に格納するデータＲＤ０はＤ００、Ｄ１０，…、Ｄ７０になり、リードデータバッファ１８−２に格納するデータＲＤ１はＤ０１、Ｄ１１，…、Ｄ７１となる。
【００４７】
リードデータバッファライトイネーブルＲＤＢＦ＿ＷＥ，リードデータバッファライトアドレスＲＤＢＦ＿ＷＡを図８のように制御することでリードデータバッファ１８−１，１８−２にデータＲＤ０，ＲＤ１が格納される。
【００４８】
リードデータバッファ１８−１，１８−２にデータが揃った後に、リードデータバッファリードアドレスＲＤＢＦ＿ＲＡを１０サイクル目から毎サイクルインクリメントしてデータＲＤo０，ＲＤｏ１を読み出す。
【００４９】
この結果、プロセッサ１への転送データＲＤｏ０は、Ｄ００，Ｄ１０、…、Ｄ７０となり、転送データＲＤｏ１は、Ｄ０１，Ｄ１１，…、Ｄ７１となる。
【００５０】
図９は、高信頼モード時の記憶装置３−１からのデータを記憶装置３−２にコピーするデータコピー動作を示すタイミングチャートである。
【００５１】
記憶装置３−１から転送されてきたデータＤ００、Ｄ０１，Ｄ１０、…、Ｄ７１は図３のリードエンジン７に入る。
【００５２】
記憶装置３−１から転送されてきたデータＲＤｉ０をフリップフロップ１４−１で１サイクル遅らせらせたデータをＭＲＤ０とし、遅らせないデータをＭＲＤ１とする。ＭＲＤ０，ＭＲＤ１それぞれ２，４，６，８，１０，１２，１４，１６サイクル目に着目すると、ＭＲＤ０はＤ００，Ｄ１０，…、Ｄ７０、ＭＲＤ１はＤ０１，Ｄ１１，…、Ｄ７１となる。このデータはＥＣＣ回路１５−２でエラー訂正され、マスタデータＣＭＲＤ０，ＣＭＲＤ１となる。
【００５３】
マスタデータ・スレーブデータ間セレクタ１６−１、１６−２のセレクト信号ＭＳＳＥＬはマスタデータＣＭＲＤ０，ＣＭＲＤ１を選択する（ＭＳＲＤ０，ＭＳＲＤ１）。
【００５４】
リードデータモードセレクタ１７−１、１７−２のセレクト信号ＲＤＳＥＬ０、ＲＤＳＥＬ１をそれぞれＭＳＲＤ０、ＭＳＲＤ１にすることで、ライトエンジン８内にあるコピーデータバッファ１１−１，１１−２に格納するデータＲＤ０はＤ００、Ｄ１０，…、Ｄ７０になり、ＲＤ１はＤ０１、Ｄ１１，…、Ｄ７１となる。
【００５５】
コピーデータバッファ１１−１，１１−２に格納するデータＲＤ０，ＲＤ１をライトエンジン８に送り、コピーデータバッファライトイネーブルＣＤＢＦ＿ＷＥ，コピーデータバッファライトアドレスＣＤＢＦ＿ＷＡを図９のように制御することでコピーデータバッファ１１−１，１１−２にデータＲＤ０，ＲＤ１が格納される。
【００５６】
コピーデータバッファリードアドレスＣＤＢＦ＿ＲＡを隔サイクルインクリメントしてデータＣＤ０，ＣＤ１を読み出し、ライトデータ・コピーデータ間セレクタ１２−１、１２−２のセレクト信号ＣＷＤＳＥＬ０，ＣＷＤＳＥＬ１でそれぞれデータＣＤ０，ＣＤ１を選びデータＣＷＤ０，ＣＷＤ１を出力し、ライトデータモードセレクタ１３−１、１３−２のセレクト信号ＷＤＳＥＬ０、ＷＤＳＥＬ１で１サイクル毎にＣＷＤ０，ＣＷＤ１を交互に選びデータＷＤｏ０，ＷＤｏ１を出力する。
【００５７】
この結果、記憶装置３−１、３−２への転送データＷＤｏ０、ＷＤｏ１は、共にＤ００，Ｄ０１、Ｄ１０、…、Ｄ７１となる。尚、本実施例では、記憶装置３−１、３−２のメモリコントローラを同期させて動作させているために、記憶装置３−１からのデータを記憶装置３−１に書き戻す処理も行っている。
【００５８】
以上により単一のシステムで目的により、高性能なシステム、高信頼性システム、安価なシステムに対応する記憶装置の動作モード制御方式を実現できる。
【図面の簡単な説明】
【００５９】
【図１】情報処理装置内のプロセッサ、ノースブリッジ、記憶装置の構成図
【図２】ノースブリッジ内のライトエンジンの構成図
【図３】ノースブリッジ内のリードエンジンの構成図
【図４】高信頼性モード時及び低コストモード時のモードコントローラの動作表
【図５】高性能モード時のライト動作タイミングチャート
【図６】高信頼性モード時及び低コストモード時のライト動作タイミングチャート
【図７】高性能モード時のリード動作タイミングチャート
【図８】高信頼性モード時及び低コストモード時のリード動作タイミングチャート
【図９】高信頼性モード時のデータコピー動作タイミングチャート
【符号の説明】
【００６０】
１：プロセッサ
２：ノースブリッジ
３−１、３−２：記憶装置
４：メモリコントローラ
５：記憶装置
６：プロセッサ・ノースブリッジ間バス
７：リードエンジン
８：ライトエンジン
９：モードコントローラ
１０−１、１０−２：ライトデータバッファ
１１−１、１１−２：コピーデータバッファ
１２−１、１２−２：ライトデータ・コピーデータ間セレクタ
１３−１、１３−２：ライトデータモードセレクタ
１４−１，１４−２：フリップフロップ
１５−１，１５−２，１５−３：ＥＣＣ回路
１６−１，１６−２：マスタデータ・スレーブデータ間セレクタ
１７−１，１７−２：リードデータモードセレクタ
１８−１，１８−２：リードデータバッファ
２０：モードレジスタ
【図１】
2008033588.tif 000003
【図２】
2008033588.tif 000004
【図３】
2008033588.tif 000005
【図４】
2008033588.tif 000006
【図５】
2008033588.tif 000007
【図６】
2008033588.tif 000008
【図７】
2008033588.tif 000009
【図８】
2008033588.tif 000010
【図９】
2008033588.tif 000011