(57)【要約】【課題】上位装置に負荷をかけることなく、データの書き込み速度を向上することができる記憶装置及び記憶システムを提供する。【解決手段】記憶装置１は、ホスト装置２との間でデータの送受信を行うホストブリッジ部１１と、下り方向にデータの一括伝送が可能な光分岐伝送路１５を介してホストブリッジ部１１に接続された各々接続された複数のメモリコントローラ１２Ａ〜１２Ｅと、複数のメモリコントローラ１２Ａ〜１２Ｅに各々接続された複数のメモリ１３Ａ〜１３Ｅとを備える。ホストブリッジ部１１からデータ列が一括伝送されたとき、少なくとも１つのメモリコントローラは、そのデータ列を構成する複数のデータに基づいて算出したパリティ情報をメモリに書き込み、他の複数のメモリコントローラ部は、他の複数のメモリコントローラの間で重複しないようにデータ列から選択したデータを各々メモリに書き込む。【選択図】図１
2010128940.tif 000002
【特許請求の範囲】
【請求項１】
上位装置との間でデータの送受信を行う第１の制御部と、
前記第１の制御部から下り方向にデータの一括伝送が可能な光伝送路を介して前記第１の制御部に接続された複数の第２の制御部と、
前記複数の第２の制御部に各々接続され、前記データを記憶する複数の記憶部とを備え、
前記複数の第２の制御部は、前記第１の制御部から前記光伝送路を介して一括伝送されたデータ列を受信したとき、少なくとも１つの第２の制御部は、前記データ列を構成する複数のデータに基づいてパリティ情報を算出し、その算出した前記パリティ情報を対応する前記記憶部に書き込み、他の複数の第２の制御部は、前記データ列を構成する複数のデータを対応する前記複数の記憶部に書き込む記憶装置。
【請求項２】
前記複数の第２の制御部は、前記パリティ情報を書き込むか前記データを書き込むかを前記データ列毎に決定する請求項１に記載の記憶装置。
【請求項３】
前記複数の第２の制御部は、前記データ列の書き込み先として指定された番地情報に基づいて、前記パリティ情報を書き込むか前記データを書き込むかを決定する請求項１に記載の記憶装置。
【請求項４】
前記第１の制御部は、前記複数の第２の制御部から前記複数の記憶部に記憶された前記パリティ情報及び前記データ列を受信したとき、前記パリティ情報を用いて前記データ列の誤り検出を行う請求項１に記載の記憶装置。
【請求項５】
前記第１の制御部は、前記複数の分割データのうち誤りのある分割データを検出する検出手段を有し、前記検出手段により前記誤りのある分割データを検出した場合には、前記パリティ情報及び誤りのない分割データを用いて前記誤りのある分割データの誤り訂正を行う請求項１に記載の記憶装置。
【請求項６】
さらに、前記複数の記憶部と、前記複数の記憶部に各々接続された前記複数の第２の制御部とを対にして電源をそれぞれ供給する複数の電源供給部を備えた請求項１に記載の記憶装置。
【請求項７】
上位装置と、
前記上位装置との間でデータの送受信を行う第１の制御部、前記第１の制御部から下り方向にデータの一括伝送が可能な光伝送路を介して前記第１の制御部に接続された複数の第２の制御部、及び前記複数の第２の制御部に各々接続され、前記データを記憶する複数の記憶部とを有し、前記複数の第２の制御部は、前記第１の制御部から前記光伝送路を介して一括伝送されたデータ列を受信したとき、少なくとも１つの第２の制御部は、前記データ列を構成する複数のデータに基づいてパリティ情報を算出し、その算出した前記パリティ情報を対応する前記記憶部に書き込み、他の複数の第２の制御部は、前記データ列を構成する複数のデータを対応する前記複数の記憶部に書き込む記憶装置とを備えた記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置及び記憶システムに関する。
【背景技術】
【０００２】
従来、入力されたデータのパリティを演算し、そのデータ及びパリティを異なる記憶手段に記憶させるディスクアレイ装置が知られている（例えば、特許文献１参照）。
【０００３】
このディスクアレイ装置は、入力されたデータを受信して一旦記憶すると共に、記憶したデータをデータ伝送手段に入力する複数のメモリと、複数のメモリの各々に対となるように設けられ、対となるメモリが記憶したデータと同一のデータからエラー訂正情報を生成すると共に、生成したエラー訂正情報をデータ伝送手段に入力する複数のエラー訂正情報生成手段と、メモリからのデータ、及び該メモリと対となるエラー訂正情報生成手段からのエラー訂正情報をデータ伝送手段を介して受信し、メモリからのデータ、及び該メモリと対となるエラー訂正情報生成手段からのエラー訂正情報をそれぞれ異なる記憶手段に振り分けて記憶させる記憶制御手段とを備える。
【０００４】
また、一般的にＲＡＩＤ５を採用する記憶装置では、データの書き込み時に記憶済みのパリティ及びデータを読み出し、その読み出したパリティ及びデータに基づいてパリティの演算を行ってからデータを書き込む必要があるため、書き込み速度が遅くなる。
【特許文献１】特開２００１−３３７７５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、本構成を有していない場合に比較して、上位装置に負荷をかけることなく、データの書き込み速度を向上することができる記憶装置及び記憶システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、上記目的を達成するため、以下の記憶装置及び記憶システムを提供する。
【０００７】
［１］上位装置との間でデータの送受信を行う第１の制御部と、前記第１の制御部から下り方向にデータの一括伝送が可能な光伝送路を介して前記第１の制御部に接続された複数の第２の制御部と、前記複数の第２の制御部に各々接続され、前記データを記憶する複数の記憶部とを備え、前記複数の第２の制御部は、前記第１の制御部から前記光伝送路を介して一括伝送されたデータ列を受信したとき、少なくとも１つの第２の制御部は、前記データ列を構成する複数のデータに基づいてパリティ情報を算出し、その算出した前記パリティ情報を対応する前記記憶部に書き込み、他の複数の第２の制御部は、前記データ列を構成する複数のデータを対応する前記複数の記憶部に書き込む記憶装置。
【０００８】
［２］前記複数の第２の制御部は、前記パリティ情報を書き込むか前記データを書き込むかを前記データ列毎に決定する前記［１］に記載の記憶装置。
【０００９】
［３］前記複数の第２の制御部は、前記データ列の書き込み先として指定された番地情報に基づいて、前記パリティ情報を書き込むか前記データを書き込むかを決定する前記［１］に記載の記憶装置。
【００１０】
［４］前記第１の制御部は、前記複数の第２の制御部から前記複数の記憶部に記憶された前記パリティ情報及び前記データ列を受信したとき、前記パリティ情報を用いて前記データ列の誤り検出を行う前記［１］に記載の記憶装置。
【００１１】
［５］前記第１の制御部は、前記複数の分割データのうち誤りのある分割データを検出する検出手段を有し、前記検出手段により前記誤りのある分割データを検出した場合には、前記パリティ情報及び誤りのない分割データを用いて前記誤りのある分割データの誤り訂正を行う請求項１に記載の記憶装置。
【００１２】
［６］さらに、前記複数の記憶部と、前記複数の記憶部に各々接続された前記複数の第２の制御部とを対にして電源をそれぞれ供給する複数の電源供給部を備えた前記［１］に記載の記憶装置。
【００１３】
［７］上位装置と、前記上位装置との間でデータの送受信を行う第１の制御部、前記第１の制御部から下り方向にデータの一括伝送が可能な光伝送路を介して前記第１の制御部に接続された複数の第２の制御部、及び前記複数の第２の制御部に各々接続され、前記データを記憶する複数の記憶部とを有し、前記複数の第２の制御部は、前記第１の制御部から前記光伝送路を介して一括伝送されたデータ列を受信したとき、少なくとも１つの第２の制御部は、前記データ列を構成する複数のデータに基づいてパリティ情報を算出し、その算出した前記パリティ情報を対応する前記記憶部に書き込み、他の複数の第２の制御部は、前記データ列を構成する複数のデータを対応する前記複数の記憶部に書き込む記憶装置とを備えた記憶システム。
【発明の効果】
【００１４】
請求項１，７に係る発明によれば、本構成を有していない場合に比較して、上位装置に負荷をかけることなく、データの書き込み速度を向上することができる。
【００１５】
請求項２に係る発明によれば、パリティ情報を分散して記憶部に記憶することができる。
【００１６】
請求項３に係る発明によれば、本構成を有していない場合に比較して、複数の第２の制御部を簡便な構成で実現することができる。
【００１７】
請求項４に係る発明によれば、本構成を有していない場合に比較して、誤り検出に伴う上位装置の負荷を低減することができる。
【００１８】
請求項５に係る発明によれば、パリティ情報により分割データの誤り訂正を可能にすることができる。
【００１９】
請求項６に係る発明によれば、１つの電源供給部が故障した場合でも、他の記憶部に記憶されたデータから元のデータを復元することができる。
【発明を実施するための最良の形態】
【００２０】
本実施の形態に係る記憶装置は、上位装置との間でデータの送受信を行う第１の制御部と、前記第１の制御部から下り方向にデータの一括伝送が可能な光伝送路を介して前記第１の制御部に接続された複数の第２の制御部と、前記複数の第２の制御部に各々接続され、前記データを記憶する複数の記憶部とを備え、前記複数の第２の制御部は、前記第１の制御部から前記光伝送路を介して一括伝送されたデータ列を受信したとき、少なくとも１つの第２の制御部は、前記データ列を構成する複数のデータに基づいてパリティ情報を算出し、その算出した前記パリティ情報を対応する前記記憶部に書き込み、他の複数の第２の制御部は、前記データ列を構成する複数のデータを対応する前記複数の記憶部に書き込む。
【００２１】
上記構成において、複数の第２の制御部の各々は、光伝送路を介して一括伝送されたデータ列を受信すると、パリティ及びデータのいずれかを選択し、自己に接続された記憶部に並列的に書き込む。すなわち、パリティの算出、データの選択、パリティ又はデータの記憶部への書き込み等の処理が、データ列の受信側である複数の第２の制御部によって並列的に行われる。また、第２の制御部によりパリティが算出されるので、上位装置でパリティを算出する必要がなく、上位装置の負荷が低減される。
【００２２】
［第１の実施の形態］
図１は、本発明の第１の実施の形態に係る記憶システムの概略構成の一例を示すブロック図である。この記憶システム１００は、記憶装置１がホスト装置（上位装置）２に接続されて構成されている。
【００２３】
（ホスト装置）
ホスト装置２は、データの書き込みや読み出し等を記憶装置１に要求する。このようなホスト装置２は、例えば、サーバ、コンピュータ（ＰＣ）、ワークステーション（ＷＳ）等で構成されている。
【００２４】
ホスト装置２は、ケーブル１０１を介して記憶装置１に接続されており、ホスト装置２と記憶装置１との間は、例えば、シリアルＡＴＡ、ＳＡＳ、ファイバーチャネル、インフィニバンド、ＰＣＩ  Ｅｘｐｒｅｓｓ、ＩＤＥ、ＳＣＳＩ等のインターフェース規格に則っている。なお、ケーブル１０１は、光線路でもよいし、電気線路でもよい。また、ホスト装置２は、ローカルエリアネットワーク（ＬＡＮ）やインターネット等の通信網に接続されるポートを備え、そのポートを介して他のホスト装置や端末装置に接続されていてもよい。
【００２５】
（記憶装置）
記憶装置１は、ホスト装置２との間でデータの送受信を行うホストブリッジ部（第１の制御部）１１と、ホストブリッジ部１１に後述する光分岐伝送路１５及び光合波伝送路１７等を介して接続された第１乃至第５のメモリコントローラ（第２の制御部）１２Ａ〜１２Ｅと、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅの各々に接続されて、５１２バイト等の所定のサイズを有するブロックデータ（データ列）単位でデータの書き込み及び読み出しが行われる第１乃至第５のメモリ（記憶部）１３Ａ〜１３Ｅとを備える。
【００２６】
また、記憶装置１は、ホストブリッジ部１１から送られるデータとしての電気信号を光信号に変換するＥ／Ｏ１４と、Ｅ／Ｏ１４からの光信号を分岐して下り方向に一括伝送する光分岐伝送路１５と、光分岐伝送路１５により伝送された光信号を電気信号にそれぞれ変換し、その電気信号をデータとして第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅにそれぞれ送るＯ／Ｅ１６Ａ〜１６Ｅと、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅからそれぞれ送られるデータとしての電気信号を光信号に変換するＥ／Ｏ１４Ａ〜１４Ｅと、Ｅ／Ｏ１４Ａ〜１４Ｅからの複数の光信号を１つの光信号に合波して上り方向に一括伝送する光合波伝送路１７と、光合波伝送路１７により伝送された光信号を電気信号に変換し、その電気信号をデータとしてホストブリッジ部１１に送るＯ／Ｅ１６とを備える。
【００２７】
（Ｅ／Ｏ）
Ｅ／Ｏ１４，１４Ａ〜１４Ｅは、例えば、半導体レーザや発光ダイオード等により実現された発光素子と、発光素子を駆動する駆動回路とを備える。
【００２８】
（Ｏ／Ｅ）
Ｏ／Ｅ１６，１６Ａ〜１６Ｅは、半導体フォトダイオード等により実現された受光素子と、受光素子により受光した光信号から変換さされた電流を増幅する増幅回路とを備える。
【００２９】
（光分岐伝送路）
光分岐伝送路１５は、Ｅ／Ｏ１４からの光信号を伝送する光ファイバ１５０Ａと、光ファイバ１５０Ａから入射された１つの光信号を５つの光信号に分岐する光分岐部１５１と、光分岐部１５１により分岐された５つの光信号をＯ／Ｅ１６Ａ〜１６Ｅにそれぞれ伝送する光ファイバ１５０Ｂとから構成されている。
【００３０】
光分岐部１５１は、例えば、シート状光導波路（光シートバス）、光カプラ等により構成されている。シート状光導波路は、厚さが一様のシート状の透明媒質からなり、例えば、ポリメチルメタクリレート，ポリカーボネート，アモルファスポリオレフィン等のプラスチック材料や、無機ガラス等から形成されている。シート状光導波路は、光ファイバ１５０Ａより入射された光を均一に拡散させて、５つの光ファイバ１５０Ｂに出射する。
【００３１】
（光合波伝送路）
光合波伝送路１７は、Ｅ／Ｏ１４Ａ〜１４Ｅからの５つの光信号をそれぞれ伝送する光ファイバ１７０Ａと、光ファイバ１７０Ａから入射された５つの光信号を１つの光信号に合波する光合波部１７１と、光合波部１７１により合波された１つの光信号をＯ／Ｅ１６に伝送する光ファイバ１７０Ｂとから構成されている。
【００３２】
光合波部１７１は、光分岐部１５１の入射側と出射側を入れ替えたものであり、光分岐部１５１と同様に構成されている。
【００３３】
（メモリ）
第１乃至第５のメモリ１３Ａ〜１３Ｅは、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅを介してデータの書き込み及び読み出しが行われる記憶部である。このメモリ１３Ａ〜１３Ｅには、例えば、ＤＲＡＭ等の揮発性の半導体メモリ、又はフラッシュメモリ等の不揮発性の半導体メモリが用いられる。また、第１乃至第５のメモリ１３Ａ〜１３Ｅには、図示しない電源供給部より駆動電圧が供給されている。
【００３４】
なお、メモリ１３Ａ〜１３Ｅには、磁気によるハードディスクを用いてよいし、ＤＶＤ等の光ディスクを用いてもよいし、他の記憶方式を用いてもよい。メモリ１３Ａ〜１３Ｅとして半導体メモリを用いた場合には、ハードディスク等に比べてアクセス速度、故障耐性、消費電力等の面で有利である。
【００３５】
（ホストブリッジ部）
図２は、ホストブリッジ部の概略構成の一例を示すブロック図である。このホストブリッジ部１１は、ホスト装置２に接続されて、ホスト装置２からの要求を受け付けるホストＩ／Ｆ（インターフェース）部１１０と、下り方向に順に設けられたパケットエンコーダ１１１、８Ｂ１０Ｂエンコーダ１１２、ＥＣＣエンコーダ１１３及びトランスミッタ１１４と、上り方向に順に設けられたレシーバ１１５、ＥＣＣデコーダ１１６、８Ｂ１０Ｂデコーダ１１７及びパケットデコーダ１１８とを備える。
【００３６】
ホストブリッジ部１１は、論理回路プログラムにより内部の論理回路を再構成可能な、例えば、ＦＰＧＡ（Field Programmable Gate Array）等から構成されている。
【００３７】
パケットエンコーダ１１１は、ホストＩ／Ｆ部１１０を介して受け付けたホスト装置２からの要求に応じて、下り方向に送信するパケットを生成する。ホスト装置２からの要求が書き込み要求の場合には、パケットは、例えば、書き込み先アドレスを含むヘッダと、ブロックデータ（データ列）とからなる。また、ホスト装置２からの要求が読み出し要求の場合には、パケットは、例えば、読み出し先アドレスを含むヘッダと、ダミーデータとからなる。
【００３８】
８Ｂ１０Ｂエンコーダ１１２は、パケットエンコーダ１１１により生成されたパケットを予め定められたサイズで分割し、複数の固定長フレームを生成する。そして、８Ｂ１０Ｂエンコーダ１１２は、各固定長フレームに対して８Ｂ１０Ｂ変換によるエンコード処理（ＤＣバランス変換）を行う。なお、８Ｂ１０Ｂの他に、４Ｂ５Ｂ変換、６４Ｂ６６Ｂ変換等のＤＣバランス変換を用いてもよい。
【００３９】
ＥＣＣエンコーダ１１３は、エンコード処理が行われた固定長フレームに基づいて誤り訂正符号（Error Correcting Code、以下「ＥＣＣ」と略す。）を算出し、そのＥＣＣを固定長フレームに付加することにより、ＥＣＣフレームを生成する。ＥＣＣとしては、例えば、ハミング符号、マンチェスタ符号、リードソロモン符号等の各種の誤り訂正符号を用いることができる。
【００４０】
トランスミッタ１１４は、パラレルデータとしてのＥＣＣフレームをシリアルデータに変換し、Ｅ／Ｏ１４に出力する。
【００４１】
レシーバ１１５は、Ｏ／Ｅ１６から送られたシリアルデータとしてのＥＣＣフレームをパラレルデータに変換し、ＥＣＣデコーダ１１６に出力する。
【００４２】
ＥＣＣデコーダ１１６は、ＥＣＣフレーム内のＥＣＣに基づいて、ＥＣＣフレーム内の固定長フレームのエラー検出／訂正処理を行う検出手段として機能する。ＥＣＣデコーダ１１６は、エラー検出／訂正処理により訂正不可能なエラー、すなわち、２ビット以上のエラーを検出した場合には、そのエラー位置を示す誤りフレーム位置情報をパケットデコーダ１１８に送信する。
【００４３】
８Ｂ１０Ｂデコーダ１１７は、エラー検出／訂正処理が行われた固定長フレームに対して、８Ｂ１０Ｂ変換によるデコード処理を行う。また、８Ｂ１０Ｂデコーダは、デコード処理により８Ｂ１０Ｂ変換の変換規則にないデータが固定長フレームに存在する等のエラーを検出する検出手段として機能し、エラーを検出した場合には、ＥＣＣデコーダ１１６と同様に誤りフレーム位置情報をパケットデコーダ１１８に送信する。
【００４４】
パケットデコーダ１１８は、デコード処理が行われた複数の固定長フレームから１つのパケットを復元する。また、パケットデコーダ１１８は、そのパケット内のパリティに基づいて、そのパケット内のブロックデータを構成する複数の分割データの誤り検出を行うパリティチェック部１１８ａを備える。
【００４５】
パリティチェック部１１８ａは、ＥＣＣデコーダ１１６又は８Ｂ１０Ｂデコーダ１１７から誤りフレーム位置情報を受信した場合には、その誤りフレーム位置情報が示すエラー位置を含む分割データ（誤りのある分割データ）に対して、パリティ及び誤りのない他の分割データを用いて誤り訂正を行う。なお、ＥＣＣデコーダ１１６及び８Ｂ１０Ｂデコーダ１１７は、パケットデコーダ１１８に誤りフレーム位置情報を送信しない構成としてもよく、その場合には、パリティチェック部１１８ａは、分割データの誤り検出のみを行うこととなる。
【００４６】
（メモリコントローラ）
図３は、メモリコントローラの概略構成の一例を示すブロック図である。この第１のメモリコントローラ１２Ａは、第１のメモリ１３Ａに接続されたメモリＩ／Ｆ部１２０と、上り方向に順に設けられたパケットエンコーダ１２１、８Ｂ１０Ｂエンコーダ１２２、ＥＣＣエンコーダ１２３及びトランスミッタ１２４と、下り方向に順に設けられたレシーバ１２５、ＥＣＣデコーダ１２６、８Ｂ１０Ｂデコーダ１２７及びパケットデコーダ１２８とを備える。
【００４７】
ここでは、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅは、同一の構成を有するため、第１のメモリコントローラ１２Ａについて説明する。また、第１のメモリコントローラ１２Ａが有するパケットエンコーダ１２１、８Ｂ１０Ｂエンコーダ１２２、ＥＣＣエンコーダ１２３、トランスミッタ１２４、レシーバ１２５、ＥＣＣデコーダ１２６、８Ｂ１０Ｂデコーダ１２７及びパケットデコーダ１２８は、ホストブリッジ部１１が有するパケットエンコーダ１１１、８Ｂ１０Ｂエンコーダ１１２、ＥＣＣエンコーダ１１３、トランスミッタ１１４、レシーバ１１５、ＥＣＣデコーダ１１６、８Ｂ１０Ｂデコーダ１１７及びパケットデコーダ１１８と基本的な機能は同様のため、両者の相違点について説明する。
【００４８】
パケットデコーダ１２８は、書き込み要求のパケットを受信した場合には、そのパケットから書き込み先アドレスとブロックデータとを抽出する。そして、パケットデコーダ１２８は、そのブロックデータ毎に、第１のメモリコントローラ１２Ａに接続された第１のメモリ１３Ａに書き込むデータを決定する書き込みデータ決定部１２８ａと、そのブロックデータに基づいてパリティを算出するパリティ算出部１２８ｂとを備える。
【００４９】
書き込みデータ決定部１２８ａは、例えば、書き込み先アドレス（番地情報）に基づいて、パリティ算出部１２８ｂにより算出したパリティを書き込むか、ブロックデータを書き込むかを決定する。
【００５０】
具体的には、書き込みデータ決定部１２８ａは、書き込み先アドレスを記憶装置１が有するメモリ１３Ａ〜１３Ｅのメモリ総数で除算したときの剰余を算出し、その剰余が自己のコントローラ番号に一致するときには、第１のメモリ１３Ａにパリティを書き込むと決定し、一致しないときには、ブロックデータを書き込むと決定する。ここで、コントローラ番号は、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅに対して「０」〜「４」がそれぞれ割り当てられている。なお、書き込みデータ決定部１２８ａは、書き込み対象を決定する際に書き込み先アドレスを用いる代わりに、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅにおいて共通の基準となる情報として、例えば、現在の時刻を用いるようにしてもよいし、ホストブリッジ部１１で発生させた乱数をパケットに付加し、その乱数を用いるようにしてもよい。その際には、パリティであるか、ブロックデータであるかを識別可能な情報を合わせて記憶しておく。
【００５１】
また、書き込みデータ決定部１２８ａは、ブロックデータを書き込むと決定した場合には、そのブロックデータをメモリ総数から１を減算したデータ分散数（ここでは、「４」）で分割した複数の分割データから１つのデータを選択し、その選択した分割データを第１のメモリ１３Ａに書き込むと決定する。
【００５２】
そして、パケットデコーダ１２８は、パリティ算出部１２８ｂにより算出したパリティか、書き込みデータ決定部１２８ａにより選択した分割データを書き込み先アドレスとともにメモリＩ／Ｆ部１２０に送る。なお、パケットデコーダ１２８は、読み出し要求のパケットを受信した場合には、そのパケットから読み出し先アドレスを抽出し、その読み出し先アドレスをメモリＩ／Ｆ部１２０に送る。
【００５３】
メモリＩ／Ｆ部１２０は、パケットデコーダ１２８から分割データ及びパリティのいずれかが送られた場合には、その分割データ及びパリティのいずれかを第１のメモリ１３Ａの書き込み先アドレスに書き込む。また、メモリＩ／Ｆ部１２０は、パケットデコーダ１２８から読み出し先アドレスが送られた場合には、その読み出し先アドレスに記憶されたデータを第１のメモリ１３Ａから読み出し、その読み出したデータをパケットエンコーダ１２１に送る。
【００５４】
上記のように、パリティ算出部１２８ｂは、メモリ１３Ａ〜１３Ｅに記憶されたパリティ及び分割データを読み出すことなくパリティを算出するので、例えば、ＲＡＩＤ５等を採用する場合に比べて、その読み出し処理を省略した分書き込み速度が速くなる。なお、ホストブリッジ部１１及びメモリコントローラ１２は、ＥＣＣによるエラー検出／訂正処理を行わない場合には、ＥＣＣエンコーダ、ＥＣＣデコーダを省略してもよく、８Ｂ１０Ｂ変換を行わない場合には、８Ｂ１０Ｂエンコーダ及び８Ｂ１０Ｂデコーダを省略してもよい。
【００５５】
（第１の実施の形態の動作）
次に、記憶システム１００の全体の動作の一例を、データの書き込み動作と読み出し動作とに分けてそれぞれ説明する。
【００５６】
（１）データの書き込み動作
データの書き込み動作の一例を、図４〜図６を参照して説明する。
【００５７】
図４は、ホストブリッジ部におけるフレーム化の流れの一例を示す図である。まず、ホストブリッジ部１１のパケットエンコーダ１１１は、ホストＩ／Ｆ部１１０を介してホスト装置２からの書き込み要求を、書き込み先アドレス及び書き込みデータとともに受け付けると、書き込み要求に応じたパケットを生成する。
【００５８】
具体的には、パケットエンコーダ１１１は、書き込みデータを、例えば、５１２バイト単位で分割し、複数のブロックデータ２００ｂを生成する。そして、パケットエンコーダ１１１は、各ブロックデータに、書き込み先アドレスを含む８バイトのヘッダ２００ａを付加して、図４（ａ）に示すように、５２０バイトのパケット２００を生成する。なお、１つのブロックデータ２００ｂをデータ分散数で分割したときの４つのデータが、分割データ２００ｃである。
【００５９】
次に、８Ｂ１０Ｂエンコーダ１１２は、その５２０バイトのパケット２００を４０バイト（３２０ビット）単位で分割し、図４（ｂ）に示すように、４０バイトの固定長フレーム２０１を１３個生成する。そして、８Ｂ１０Ｂエンコーダ１１２は、各固定長フレーム２０１に対して８Ｂ１０Ｂ変換によるエンコード処理を行い、図４（ｃ）に示すように、
８Ｂ１０Ｂエンコード済みの４００ビットの固定長フレーム２０２を生成する。
【００６０】
次に、ＥＣＣエンコーダ１１３は、その４００ビットの固定長フレーム２０２に基づいて、２０ビットのＥＣＣ２０３ａを算出する。そして、ＥＣＣエンコーダ１１３は、４００ビットの固定長フレーム２０２にその算出した２０ビットのＥＣＣ２０３ａを付加し、図４（ｄ）に示すように、４２０ビットのＥＣＣフレーム２０３を生成する。
【００６１】
そして、ＥＣＣエンコーダ１１３は、その４２０ビットのＥＣＣフレーム２０３を、例えば、２０ビット毎に分けてトランスミッタ１１４に順次送ると、トランスミッタ１１４は、２０ビット毎にパラレル／シリアル変換を行い、その変換後のシリアルデータをＥ／Ｏ１４に出力する。
【００６２】
次に、Ｅ／Ｏ１４は、トランスミッタ１１４からのシリアルデータを光信号に変換し、その変換された光信号は、光ファイバ１５０Ａを介して光分岐部１５１に送られ、光分岐部１５１により５つの方向に分岐される。
【００６３】
光分岐部１５１により分岐された光信号は、光ファイバ１５０Ｂを介してＯ／Ｅ１６Ａ〜１６Ｅにて電気信号にそれぞれ変換され、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅの各レシーバ１２５にシリアルデータとして送られる。なお、以降の処理は、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅの各々が有する各部により並列的に実行される。
【００６４】
レシーバ１２５は、そのシリアルデータを２０ビット毎にシリアル／パラレル変換を行い、その変換後のパラレルデータをＥＣＣデコーダ１２６に出力する。
【００６５】
次に、ＥＣＣデコーダ１２６は、２０ビットのパラレルデータを受け取ると、それを２１サイクル分まとめて４２０ビットとし、これを１つのＥＣＣフレーム２０３とする。ここでは、各メモリコントローラ１２Ａ〜１２Ｅによる処理の一例を図５のフローチャートに従って説明する。
【００６６】
図５は、メモリコントローラの動作の一例を示すフローチャートである。まず、ＥＣＣデコーダ１２６は、そのＥＣＣフレーム２０３内のＥＣＣに基づいて、そのパケットの固定フレームに対してエラー検出処理を行う（Ｓ１）。その結果、ＥＣＣデコーダ１２６は、２ビット以上のエラーを検出した場合には（Ｓ２：２ビット以上）、エラー終了し、例えば、ホストブリッジ部１１にデータの再送を要求する。一方、ＥＣＣデコーダ１２６は、１ビットのエラーを検出した場合には（Ｓ２：１ビット）、エラー訂正処理を行う（Ｓ３）。
【００６７】
そして、ＥＣＣデコーダ１２６は、エラー訂正処理後のＥＣＣフレーム２０３からＥＣＣを除去して、４０ビットの固定長フレーム２０２を生成する。また、ＥＣＣデコーダ１２６は、エラーを検出しなかった場合には（Ｓ２：０ビット）、ＥＣＣフレーム２０３から４００ビットの固定長フレーム２０２を生成する。
【００６８】
次に、８Ｂ１０Ｂデコーダ１２７は、その４００ビットの固定長フレーム２０２に対して１０Ｂ８Ｂ変換によるデコード処理を施し、４０バイト（３２０ビット）の固定長フレーム２０１を生成する（Ｓ１０）。
【００６９】
次に、パケットデコーダ１２８は、その４０バイトの固定長フレーム２０１を１３個順次受け取ると、それら１３個の固定長フレーム２０１から５２０バイトのパケット２００を復元する。パケットデコーダ１２８は、そのパケット２００内のヘッダを解析し、そのパケット２００が書き込み要求のパケットか、読み出し要求のパケットかを判定する（Ｓ２０）、
【００７０】
そして、そのパケット２００が書き込み要求のパケットの場合には（Ｓ２０：書き込み）、書き込みデータ決定部１２８ａは、ヘッダ内の書き込み先アドレスを参照し、その書き込み先アドレスをメモリ総数で除算したときの剰余を算出する。そして、書き込みデータ決定部１２８ａは、その剰余が自己のコントローラ番号に一致するか否かを判定する（Ｓ３０）。
【００７１】
そして、書き込みデータ決定部１２８ａが、その剰余が自己のコントローラ番号に一致すると判定した場合には（Ｓ３０：Ｙｅｓ）、パリティ算出部１２８ｂにパリティを算出するように指示を送る。パリティ算出部１２８ｂは、その指示を受け付けると、そのパケット内のブロックデータに基づいてパリティを算出する（Ｓ３１）。
【００７２】
そして、パケットデコーダ１２８は、そのパリティ算出部１２８ｂにより算出したパリティをメモリＩ／Ｆ部１２０に送ると、メモリＩ／Ｆ部１２０は、そのパリティをメモリ１３Ａの書き込み先アドレスに書き込む（Ｓ３２）。
【００７３】
一方、書き込みデータ決定部１２８ａが、その剰余が自己のコントローラ番号に一致しないと判定した場合には（Ｓ３０：Ｎｏ）、ブロックデータをデータ分散数で分割した４つの分割データのうち、１つの分割データを書き込み対象として選択する（Ｓ４０）。
【００７４】
そして、パケットデコーダ１２８は、書き込みデータ決定部１２８ａにより選択した分割データをメモリＩ／Ｆ部１２０に送ると、メモリＩ／Ｆ部１２０は、その分割データをメモリ１３Ａに書き込む（Ｓ５０）。
【００７５】
（書き込み動作におけるデータの流れ）
図６は、データの書き込み動作におけるホストブリッジ部から各メモリコントローラ間のデータの流れの一例を示す図である。ここでは、ホスト装置２からの書き込みデータＤとすると、書き込みデータＤを５１２バイト単位で分割した場合のデータをブロックデータＤ０〜Ｄ２と表し、各ブロックデータＤ０〜Ｄ２を、データ分散数（ここでは、「４」）で分割した場合のデータを分割データＤ０１〜Ｄ０４、Ｄ１１〜Ｄ１４、Ｄ２１〜Ｄ２４と表す。
【００７６】
ホストブリッジ部１１は、書き込みデータＤを３つのブロックデータＤ０〜Ｄ２に分割し、それらブロックデータＤ０〜Ｄ２を構成する分割データＤ０１〜Ｄ０４、Ｄ１０〜Ｄ１４、Ｄ２０〜Ｄ２４のフレーム化を行い、Ｅ／Ｏ１４を介して光分岐伝送路１５に送信する。
【００７７】
次に、光分岐伝送路１５には、分割データＤ０１〜Ｄ０４、Ｄ１０〜Ｄ１４、Ｄ２０〜Ｄ２４が光信号としてシリアル伝送される。
【００７８】
そして、光信号は、Ｏ／Ｅ１６Ａ〜１６Ｅを介して第１乃至第５のメモリコントローラ１２Ａ〜１２ＥによりブロックデータＤ０〜Ｄ２としてそれぞれ受信される。
【００７９】
第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅの各々は、各ブロックデータＤ０〜Ｄ３の書き込み先アドレスをメモリ総数で除算したときの剰余が自己のコントローラ番号に一致するときは、パリティを算出し、その算出したパリティを書き込み、一致しないときは、分割データを１つ選択し、その選択した分割データを書き込む。
【００８０】
例えば、ブロックデータＤ０の書き込み先アドレスが「０ｘ０００５」である場合には、書き込み先アドレス「０ｘ０００５」をメモリ総数「５」で除算したときの剰余は「０」である。従って、コントローラ番号が「０」の第１のメモリコントローラ１２Ａは、分割データＤ０１〜Ｄ０４に基づいてパリティＰ０を算出し、そのパリティＰ０を第１のメモリ１３Ａに書き込む。
【００８１】
第２乃至第５のメモリコントローラ１２Ｂ〜１２Ｅは、書き込み先アドレス「０ｘ０００５」から自己のコントローラ番号を減算し、その減算した減算値をメモリ総数「５」で除算したときの剰余を算出する。そして、第２乃至第５のメモリコントローラ１２Ｂ〜１２Ｅは、その剰余に対応する分割データを書き込み対象として選択する。
【００８２】
例えば、コントローラ番号が「１」の第２のメモリコントローラ１２Ｂにおいては、書き込み先アドレス「０ｘ０００５」から自己のコントローラ番号「１」を減算した減算値「０ｘ０００４」をメモリ総数「５」で除算したときの剰余を「４」と算出する。そして、第２のメモリコントローラ１２Ｂは、その剰余「４」に対応する分割データとして、分割データＤ０１〜Ｄ０４の中から「４」番目の分割データＤ０４を選択し、その分割データＤ０４を第２のメモリ１３Ｂに書き込む。同様にして、第３乃至第５のメモリコントローラ１２Ｃ〜１２Ｅは、分割データＤ０３，Ｄ０２，Ｄ０１をそれぞれ選択し、第３乃至第５のメモリ１３Ｃ〜１３Ｅにそれぞれ書き込む。
【００８３】
（２）データの読み出し動作
データの読み出し動作の一例を、図７を参照して説明する。
【００８４】
まず、ホストブリッジ部１１のパケットエンコーダ１１１は、ホストＩ／Ｆ部１１０を介してホスト装置２からの読み出し要求を読み出し先アドレスとともに受け付けると、その読み出し要求に応じたパケットを生成する。
【００８５】
次に、その生成されたパケットは、書き込み動作と同様に、８Ｂ１０Ｂエンコーダ１１２によるエンコード処理後、ＥＣＣエンコーダ１１３によりＥＣＣが付加されたＥＣＣフレームとして、トランスミッタ１１４を介してＥ／Ｏ１４から光信号として光分岐伝送路１５に送信される。
【００８６】
次に、その光信号は、光分岐伝送路１５により分岐されて、Ｏ／Ｅ１６Ａ〜１６Ｅにより電気信号に変換された後、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅの各レシーバ１２５により受信され、レシーバ１２５でシリアル／パラレル変換が行われ、ＥＣＣデコーダ１２６によりＥＣＣフレームとして受信される。
【００８７】
そして、そのＥＣＣフレームは、書き込み動作と同様に、ＥＣＣデコーダ１２６によるエラー検出／訂正処理（Ｓ１〜Ｓ３）、８Ｂ１０Ｂデコーダ１２７によるデコード処理（Ｓ１０）が行われ、パケットデコーダ１２８によりパケットとして復元され、そのパケットが書き込み要求のパケットか、読み出し要求のパケットかが判定される（Ｓ２０）。
【００８８】
そして、そのパケットが読み出し要求のパケットと判定された場合には（Ｓ２０：読み出し）、パケットデコーダ１２８は、そのパケット内の読み出し先アドレスをメモリＩ／Ｆ部１２０に送り、メモリＩ／Ｆ部１２０は、その読み出し先アドレスに対応する分割データ及びパリティのいずれかを第１のメモリ１３Ａから読み出す（Ｓ６０）。
【００８９】
次に、その読み出した分割データ又はパリティは、パケットエンコーダ１２１、８Ｂ１０Ｂエンコーダ１２２、ＥＣＣエンコーダ１２３及びトランスミッタ１２４を介してＥＣＣフレームとしてＥ／Ｏ１４Ａに送られ、Ｅ／Ｏ１４Ａから光信号として光合波伝送路１７に送信される。
【００９０】
次に、その光信号は、光合波伝送路１７の光合波部１７１により合波され、Ｏ／Ｅ１６により電気信号に変換された後、ホストブリッジ部１１のレシーバ１１５により受信され、レシーバ１１５でシリアル／パラレル変換が行われ、ＥＣＣデコーダ１１６によりＥＣＣフレームとして受信される。
【００９１】
次に、ＥＣＣデコーダ１１６は、そのＥＣＣフレーム内のＥＣＣに基づいて、ＥＣＣフレームのエラー検出／訂正処理を行い、その際訂正不可能なエラーな検出した場合には、そのエラー位置を示す誤りフレーム位置情報をパケットデコーダ１１８に送信する。そして、ＥＣＣデコーダ１１６は、ＥＣＣフレームからＥＣＣを除去した固定長フレームを８Ｂ１０Ｂデコーダ１１７に送る。
【００９２】
次に、８Ｂ１０Ｂデコーダ１１７は、その固定長フレームに対して１０Ｂ８Ｂ変換によるデコード処理を施し、デコード処理においてエラーを検出した場合には、そのエラー位置を示す誤りフレーム位置情報をパケットデコーダ１１８に送信する。そして、８Ｂ１０Ｂデコーダ１１７は、デコード処理後の固定長フレームをパケットデコーダ１１８に送る。
【００９３】
そして、パケットデコーダ１１８は、複数の固定長フレームからパケットを復元し、そのパケットから４つの分割データとパリティとを抽出する。
【００９４】
次に、パリティチェック部１１８ａは、ＥＣＣデコーダ１１６又は８Ｂ１０Ｂデコーダ１１７から誤りフレーム位置情報を受信している場合には、その誤りフレーム位置情報から誤りのある分割データの数を計数する。なお、誤りフレーム位置情報を受信していない場合については、誤りのある分割データの数が「０」の場合と同様に処理される。
【００９５】
誤りのある分割データの数が「０」の場合には、パリティチェック部１１８ａは、そのパケットから抽出したパリティに基づいて、その抽出した４つの分割データの誤り検出を行う。その結果、パリティチェック部１１８ａは、誤りを検出しなかった場合には、そのまま４つの分割データからなるブロックデータをホストＩ／Ｆ部１１０に送り、誤りを検出した場合には、パリティチェックによりエラーが検出された旨を示すエラー通知をホストＩ／Ｆ部１１０に送る。
【００９６】
誤りのある分割データの数が「１」の場合には、パリティチェック部１１８ａは、そのパケット内のパリティ及び誤りのない分割データを用いてその誤りのある分割データの誤り訂正を行い、その誤り訂正後の４つの分割データからなるブロックデータをホストＩ／Ｆ部１１０に送る。
【００９７】
誤りのある分割データの数が「２」以上の場合には、パリティチェック部１１８ａは、ＥＣＣ又は８Ｂ１０Ｂデコード処理によりエラーが検出された旨を示すエラー通知をホストＩ／Ｆ部１１０に送る。
【００９８】
そして、ホストＩ／Ｆ部１１０は、パリティチェック部１１８ａからブロックデータを受信した場合には、そのブロックデータを読み出しデータとして、ケーブル１０１を介してホスト装置２に送信する。また、ホストＩ／Ｆ部１１０は、パリティチェック部１１８ａからエラー通知を受信した場合には、そのエラー通知をホスト装置２に送る。
【００９９】
（読み出し動作におけるデータの流れ）
図７は、データの読み出し動作における各メモリコントローラからホストブリッジ部間のデータの流れの一例を示す図である。ここでは、読み出しデータＤとすると、読み出しデータＤを５１２バイト単位で分割した場合のデータをブロックデータＤ０〜Ｄ２と表し、各ブロックデータＤ０〜Ｄ２をデータ分散数（ここでは、４つ）に分割した場合のデータを分割データＤ０１〜Ｄ０４、Ｄ１１〜Ｄ１４、Ｄ２１〜Ｄ２４と表す。
【０１００】
第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅは、読み出し要求パケットで指定された読み出し先アドレスに対応するデータを第１乃至第５のメモリ１３Ａ〜１３Ｅからそれぞれ読み出す。
【０１０１】
例えば、読み出し先アドレスが「０ｘ０００５」の場合には、第１のメモリコントローラ１２Ａは、パリティＰ０を読み出し、第２乃至第５のメモリコントローラ１２Ｂ〜１２Ｅは、分割データＤ０４〜Ｄ０１をそれぞれ読み出す。
【０１０２】
そして、第１乃至第５のメモリコントローラ１２Ａ〜１２Ｅは、その読み出したパリティＰ０及び分割データＤ０１〜Ｄ０４のフレーム化を行い、Ｅ／Ｏ１４Ａ〜１４Ｅを介して光合波伝送路１７に送信する。その際、Ｅ／Ｏ１４Ａ〜１４Ｅからの５つの光信号は、光合波伝送路１７において時分割多重化が行われる。
【０１０３】
次に、光合波伝送路１７には、パリティＰ０及び分割データＤ０１〜Ｄ０４が光信号としてシリアル伝送され、その光信号は、Ｏ／Ｅ１６を介してホストブリッジ部１１により受信される。
【０１０４】
次に、ホストブリッジ部１１のパリティチェック部１１８ａは、パリティＰ０に基づいて、分割データＤ０１〜Ｄ０４の誤り検出を行った結果誤りを検出し、誤りフレーム位置情報により誤りのある分割データが特定されている場合には、その分割データの誤り訂正を行う。そして、ホストブリッジ部１１は、分割データＤ０１〜Ｄ０４からブロックデータＤ０を生成し、同様にしてブロックデータＤ１，Ｄ２を順次生成し、それらブロックデータＤ０〜Ｄ２からなる読み出しデータＤをホスト装置２に送る。
【０１０５】
［第２の実施の形態］
図８は、本発明の第２の実施の形態に係る記憶システムの概略構成の一例を示すブロック図である。この記憶システム１００は、第１の実施の形態と同様に、記憶装置１がホスト装置２に接続されて構成されている。
【０１０６】
本実施の形態に係る記憶装置１は、第１の実施の形態と比較して、第１乃至第５の電源供給範囲１８０Ａ〜１８０Ｅ毎に独立して設けられた第１乃至第５の電源供給部１８Ａ〜１８Ｅを備える点が異なり、その他は同様に構成されている。
【０１０７】
第１乃至第５の電源供給部１８Ａ〜１８Ｅは、自己に接続された第１及び第５の電源供給範囲１８０Ａ〜１８０Ｅに含まれる各部に駆動電圧を供給する。例えば、第１の電源供給部１８Ａは、第１の電源供給範囲１８０Ａに含まれる第１のメモリコントローラ１２Ａ、第１のメモリ１３Ａ、Ｅ／Ｏ１４Ａ及びＯ／Ｅ１６Ａに駆動電圧を供給する。
【０１０８】
ホストブリッジ部１１は、第１乃至第５の電源供給部１８Ａ〜１８Ｅのいずれかに異常が発生した場合には、その異常が発生した電源供給部に接続されたメモリからのデータの読み出しができないため、他のメモリから読み出したデータに基づいて、データを復元する。
【０１０９】
［他の実施の形態］
なお、本発明は、上記各実施の形態に限定されず、本発明の趣旨を逸脱しない範囲内で種々な変形が可能である。例えば、上記各実施の形態では、メモリコントローラ及びメモリの数は、それぞれ５つであるが、パリティ及びデータを分散して記憶できればよく、３つ以上であれば、５つに限られない。
【０１１０】
また、上記各実施の形態では、メモリコントローラの各々は、パリティ及びデータのいずれかを選択してメモリに書き込んだが、１つのメモリコントローラが固定的にパリティを書き込み、他のメモリコントローラがデータを書き込むようにしてもよい。
【０１１１】
また、上記各実施の形態では、ホストブリッジ部とメモリコントローラとの間を下り方向と上り方向とで別々の光伝送路で接続したが、１つの光伝送路を下り方向と上り方向の光伝送に共用してもよいし、上り方向を電気伝送路で接続してもよい。
【０１１２】
また、上記各実施の形態では、光合波伝送路において複数の光信号に対して時分割多重を行って伝送したが、波長分割多重等の他の多重化方式を適用してもよい。
【図面の簡単な説明】
【０１１３】
【図１】図１は、本発明の第１の実施の形態に係る記憶システムの概略構成の一例を示すブロック図である。
【図２】図２は、ホストブリッジ部の概略構成の一例を示すブロック図である。
【図３】図３は、メモリコントローラの概略構成の一例を示すブロック図である。
【図４】図４は、ホストブリッジ部におけるフレーム化の流れの一例を示す図である。
【図５】図５は、メモリコントローラの動作の一例を示すフローチャートである。
【図６】図６は、データの書き込み動作におけるホストブリッジ部から各メモリコントローラ間のデータの流れの一例を示す図である。
【図７】図７は、データの読み出し動作における各メモリコントローラからホストブリッジ部間のデータの流れの一例を示す図である。
【図８】図８は、本発明の第２の実施の形態に係る記憶システムの概略構成の一例を示すブロック図である。
【符号の説明】
【０１１４】
１…記憶装置、２…ホスト装置、１１…ホストブリッジ部、１２Ａ〜１２Ｅ…メモリコントローラ、１３Ａ〜１３Ｅ…メモリ、１４，１４Ａ〜１４Ｅ…Ｅ／Ｏ、１５…光分岐伝送路、１６，１６Ａ〜１６４Ｅ…Ｏ／Ｅ、１７…光合波伝送路、１８Ａ〜１８Ｅ…電源供給部、１００…記憶システム、１０１…ケーブル、１１０…ホストＩ／Ｆ部、１１１…パケットエンコーダ、１１２…８Ｂ１０Ｂエンコーダ、１１３…ＥＣＣエンコーダ、１１４…トランスミッタ、１１５…レシーバ、１１６…ＥＣＣデコーダ、１１７…８Ｂ１０Ｂデコーダ、１１８…パケットデコーダ、１１８ａ…パリティチェック部、１２０…メモリＩ／Ｆ部、１２１…パケットエンコーダ、１２２…８Ｂ１０Ｂエンコーダ、１２３…ＥＣＣエンコーダ、１２４…トランスミッタ、１２５…レシーバ、１２６…ＥＣＣデコーダ、１２７…８Ｂ１０Ｂデコーダ、１２８…パケットデコーダ、１２８ａ…書き込みデータ決定部、１２８ｂ…パリティ算出部、１５０Ａ，１５０Ｂ…光ファイバ、１５１…光分岐部、１７０Ａ，１７０Ｂ…光ファイバ、１７１…光合波部、１８０Ａ〜１８０Ｅ…電源供給範囲、２００…パケット、２００ａ…ヘッダ、２００ｂ…ブロックデータ、２００ｃ…分割データ、２０１，２０２…固定長フレーム、２０３…ＥＣＣフレーム、２０３ａ…ＥＣＣ
【図１】
2010128940.tif 000003
【図２】
2010128940.tif 000004
【図３】
2010128940.tif 000005
【図４】
2010128940.tif 000006
【図５】
2010128940.tif 000007
【図６】
2010128940.tif 000008
【図７】
2010128940.tif 000009
【図８】
2010128940.tif 000010