(57)【要約】【課題】パケット伝送時のワードのエラーを検出する。【解決手段】パケット内のワードのエラーを検出するために、前記ワードのデータ部（ＤＮ）を読み取るステップと、前記データ部（ＤＮ）から生成された第一の入力と、前記パケット内の識別子（ＶＮ、Ｕ０）から生成された第二の入力とのイクスクルーシブオア（ＸＯＲ）処理を行うことで、第１のコードを生成するステップとを有し、前記識別子は、パケットの識別子あるいはワードの順序位置を識別するビットセットを有する。【選択図】図４Ａ
2006203951.tif 000002
【特許請求の範囲】
【請求項１】
パケット内のワードのエラーを検出する方法において、
前記ワードのデータ部を読み取るステップと、
前記データ部から生成された第一の入力と、前記パケット内の識別子から生成された第二の入力とのイクスクルーシブオア処理を行うことで、第一のコードを生成するステップとを有し、
前記識別子は、パケットの識別子あるいはワードの順序位置を識別するビットセットを有することを特徴とする、エラー検出方法。
【請求項２】
請求項１に記載のエラー検出方法において、
前記第一の入力は、前記データ部に第一の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項３】
請求項１または２に記載のエラー検出方法において、
前記第二の入力は、前記識別子に第二の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項４】
請求項１に記載のエラー検出方法において、
前記第二の入力は、前記パケット識別子に第二の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項５】
請求項１または請求項４に記載のエラー検出方法において、
前記第二の入力は、前記ワード順序位置を識別するビットセットに第三の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項６】
請求項１乃至５の何れか１項に記載のエラー検出方法において、
前記第一のコードと、前記ワードとを出力するステップをさらに備えたことを特徴とする、エラー検出方法。
【請求項７】
請求項１乃至６の何れか１項に記載のエラー検出方法において、前記第二の入力をマスクするステップをさらに備えることを特徴とする、エラー検出方法。
【請求項８】
請求項１に記載のエラー検出方法において、
ワードの入力を受け付けるステップをさらに備え、
前記第一のコードを生成するステップは、前記第一の入力と前記第二の入力に加え、前記ワードに含まれたエラーコードから生成される第三の入力のイクスクルーシブオア処理を行うことで、前記第一のコードを生成することを特徴とする、エラー検出方法。
【請求項９】
請求項８に記載のエラー検出方法において、
前記第三の入力は前記エラーコードに第四の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項１０】
請求項１に記載のエラー検出方法において、前記第一の入力は前記データ部であることを特徴とする、エラー検出方法。
【請求項１１】
請求項１または１０に記載のエラー検出方法において、前記第二の入力は前記識別子であることを特徴とする、エラー検出方法。
【請求項１２】
請求項１または１０に記載のエラー検出方法において、前記第二の入力は、前記パケット識別子であることを特徴とする、エラー検出方法。
【請求項１３】
請求項１または１０に記載のエラー検出方法において、前記第二の入力は、前記ワードの順序位置を識別するビットセットであることを特徴とする、エラー検出方法。
【請求項１４】
請求項１０乃至１３の何れか１項に記載のエラー検出方法において、
前記データ部から、第二のコードを生成するステップをさらに備えることを特徴とする、エラー検出方法。
【請求項１５】
請求項１４に記載のエラー検出方法において、
前記第二のコードは、前記データ部に第一の行列を掛け合わせて生成されるものであることを特徴とする、エラー検出方法。
【請求項１６】
請求項１４または１５に記載のエラー検出方法において、
前記第一のコードと前記第二のコードとを出力するステップをさらに備えることを特徴とする、エラー検出方法。
【請求項１７】
請求項１または請求項１０乃至１３の何れか１項に記載のエラー検出方法において、
ワードの入力を受け付けるステップと、
前記ワードに含まれたデータ部とから生成された第三の入力と、前記ワードに含まれた第三のコードから生成された第四の入力とのイクスクルーシブオア処理を行い、チェックコードを生成するステップと、をさらに備えることを特徴とする、エラー検出方法。
【請求項１８】
請求項１７に記載のエラー検出方法において、
前記第三の入力は、前記データ部と第一の行列とを掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項１９】
請求項１７または１８に記載のエラー検出方法において、
前記第四の入力は、前記第二のコードと第二の行列を掛け合わせたものであることを特徴とする、エラー検出方法。
【請求項２０】
少なくともパケットが入力する入力端と、
前記パケット内のデータ部から生成された第一の入力と、前記パケット内の識別子から生成された第二の入力のイクスクルーシブオア処理を行う処理部と、
前記処理部による処理結果を出力する出力端と、を備えたことを特徴とする、情報を伝送する機能を有する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エラー検出に関し、さらに特定すると多重ワード通信におけるエラー検出に関する。
【背景技術】
【０００２】
（関連出願の相互参照）
本願発明の主題は、下記に掲げる出願の主題と関連している。
【０００３】
日本特許出願番号Ｈ９−５３０３０４、弁護士用ドケット番号２２６８、“非同期パケット交換”の名称で、Ｔｈｏｍａｓ  Ｍ．Ｗｉｃｋｉ、Ｐａｔｒｉｃｋ  Ｊ．Ｈｅｌｌａｎｄ、  Ｔａｋｅｓｈｉ  Ｓｈｉｍｉｚｕ、Ｗｏｌｆ−Ｄｉｅｔｒｉｃｈ  ＷｅｂｅｒおよびＷｉｎｆｒｉｅｄ  Ｗ．Ｗｉｌｃｋｅによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０４０３、弁護士用ドケット番号２２６９、“ダイナミックなネットワーク・トポロジー探査のシステムおよび方法”の名称で、Ｔｈｏｍａｓ  Ｍ．Ｗｉｃｋｉ、Ｐａｔｒｉｃｋ  Ｊ．Ｈｅｌｌａｎｄ、Ｗｏｌｆ−Ｄｉｅｔｒｉｃｈ  ＷｅｂｅｒおよびＷｉｎｆｒｉｅｄ  Ｗ．Ｗｉｌｃｋｅによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０４０３、弁護士用ドケット番号２２７０、“低い待ち時間、高いクロック周波数  プレジオ非同期  パケットベースクロスバー・スイッチング・チップ・システムおよび方法”の名称で、Ｔｈｏｍａｓ  Ｍ．Ｗｉｃｋｉ、Ｊｅｆｆｒｅｙ  Ｄ．Ｌａｒｓｏｎ、Ａｌｂｅｒｔ  ＭｕおよびＲａｇｈｕ  Ｓａｓｔｒｙによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０３２８、弁護士用ドケット番号２２７１、“パケットスイッチングネットワーク内のルーチングデバイス出力アクセス用調整方法および装置”の名称で、Ｊｅｆｆｒｅｙ  Ｄ．Ｌａｒｓｏｎ、Ａｌｂｅｒｔ  ＭｕおよびＴｈｏｍａｓ  Ｍ．Ｗｉｃｋｉによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０４０５、弁護士用ドケット番号２２７２、“電圧の揺れを少なくし、かつ、内部のブロック化データパスを生じさせないクロスバースイッチおよびその方法”の名称で、Ａｌｂｅｒｔ  ＭｕおよびＪｅｆｆｒｅｙ  Ｄ．Ｌａｒｓｏｎによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０３１８、弁護士用ドケット番号２２７４、“フロー制御プロトコル・システムおよび方法”の名称で、Ｔｈｏｍａｓ  Ｍ．Ｗｉｃｋｉ、Ｐａｔｒｉｃｋ  Ｊ．Ｈｅｌｌａｎｄ、Ｊｅｆｆｒｅｙ  Ｄ．Ｌａｒｓｏｎ、Ａｌｂｅｒｔ  Ｍｕ、Ｒａｇｈｕ  ＳａｓｔｒｙおよびＲｉｃｈａｒｄ  Ｌ．Ｓｃｈｏｂｅｒ、Ｊｒ．によって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０３５０、弁護士用ドケット番号２２７５、“相互接続の障害検出およびその位置特定方法および装置”の名称で、Ｒａｇｈｕ  Ｓａｓｔｒｙ、Ｊｅｆｆｒｅｙ  Ｄ．Ｌａｒｓｏｎ、Ａｌｂｅｒｔ  Ｍｕ、Ｊｏｈｎ  Ｒ．Ｓｌｉｃｅ、Ｒｉｃｈａｒｄ  Ｌ．Ｓｃｈｏｂｅｒ、Ｊｒ．およびＴｈｏｍａｓ  Ｍ．Ｗｉｃｋｉによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０２１７、弁護士用ドケット番号２２７７、“多重ワード通信におけるエラー検出方法および装置”の名称で、Ｔｈｏｍａｓ  Ｍ．Ｗｉｃｋｉ、Ｐａｔｒｉｃｋ  Ｊ．ＨｅｌｌａｎｄおよびＴａｋｅｓｈｉ  Ｓｈｉｍｉｚｕによって１９９６年２月２２日に出願、
日本特許出願番号Ｈ９−５３０２０２、弁護士用ドケット番号２２７８、“正のソース帰還をそなえたクロック動作されるセンス増幅器”の名称で、Ａｌｂｅｒｔ  Ｍｕによって１９９６年２月２２日に出願、
を参考として、上記の出願の全てを本願発明の全体に亘って取り入れている。
【０００４】
パケットスイッチネットワークの様な通信システムは、装置が情報を伝送しかつ受信することを可能とする。図１Ａを参照すると、通常のパケットスイッチネットワークが示されている。各通常の装置１０、１２、１６、１８は、ネットワーク中の他の装置１０、１２、１６、１８にデータを送信しさらに受信するための送信サイトおよび受信サイトの両者として動作する。通常のルータ１４は、各送信装置１０、１２、１６、１８からパケットの形でデータを受信し、それを、パケット中に含まれるヘッダ情報に基づいて、正しい受信装置１０、１２、１６、１８に送る。
【０００５】
ヘッダ情報は、ルート情報と“殆ど固有の”パケット番号を含む識別子をその他の情報に加えて含んでいる。殆ど固有のパケット番号は、送信サイトによってランダムにまたは順次選択された多数のビットを有する識別子であっても良く、これによって識別子を同様に殆ど固有にする。識別子が同時にルータ１４に送信された他のパケットからのヘッダの識別子と同じであることは殆どないが、ルータ１４に送信された２個のヘッダが同一の識別子を持つ小さな可能性は存在する。
【０００６】
さて図１Ｂを参照すると、通常のパケット１０２が示されている。ヘッダ１１０は、多くのワードデータ１１２、１１４、１１６を一定の順序で伴う。図１Ｂのヘッダ１１０は、８０から１１５ビットにおいて、識別子１３０を有しているが、その他のサイズの識別子およびビット位置が可能である。識別子１３０は“比較的固有の”情報を含んでいる。各データワード１１２、１１４、１１６およびヘッダ１１０は、添付のエラーコード１２０、１２２、１２４、１２６を有し、これらは残りの個々のデータワード１１２、１１４、１１６またはヘッダ１１０情報中のエラーを検出しさらに訂正するために使用されうる。例えば、パケット１０２中の各ワード１１０、１１２、１１４、１１６は、送信サイトにおいて伝送のための１３６ビットワードを形成するために、１２８ビットのデータまたはヘッダ情報と８ビットのエラーコード１２０、１２２、１２４、１２６を含む。エラーコード１２０、１２２、１２４、１２６は、各ワード１１０、１１２、１１４、１１６のデータ部分１７０内のエラーを検出しまたは訂正するために、受信サイトでデータ１７０に対してチェックされる。一旦データが正しいと決定されると、エラーコード１２０、１２２、１２４、１２６は、受信サイトによってデータ位置１７０から取り除かれ、各ワード１１０、１１２、１１４、１１６のデータ部分１７０が受信サイトによる使用に対して準備される。
【０００７】
通常のエラー検出およびエラー検出と訂正コードは、デジタル伝送の一個のワードに関したエラーを検出し訂正する。多くの方法が、種々のエラー検出コードおよびエラー検出とコード訂正を実現するために使用されている。Ｒａｏ  Ｔ．Ｒ．Ｎ．＆  Ｅ．Ｆｕｊｉｗａｒａによる“コンピュータシステムに対するエラー制御コード化”（Ｐｒｅｎｔｉｃｅ  Ｈａｌｌ、１９８９年）、Ｄ．Ｋ．  Ｐｒａｄｈａｎ  ＆  Ｊ．Ｊ．Ｓｔｉｆｆｌｅｒによる“エラー訂正コードおよび自己チェック回路”、２７−３７（Ｃｏｍｐｕｔｅｒ、Ｖｏｌ．１３、Ｎｏ．３、  １９８０年３月）、Ｈ．Ｉｍａｉによる“エラー制御コード化技術の本質”（Ａｃａｄｅｍｉｃ  Ｐｒｅｓｓ、１９９０年）またはＥ．Ｆｕｊｉｗａｒａ  ｅｔ．ａｌによる“コンピュータにおけるエラー制御コード”６３−７２（Ｃｏｍｐｕｔｅｒ、１９９０年７月）に記載された方法を、ワード１１０、１１２、１１４、１１６のデータ部分内のあるエラーを検出するために使用することができる。
【０００８】
エラーコード１２０、１２２、１２４、１２６は、ワード１１０、１１２、１１４、１１６のデータ部分１７０にエラーコードの設計者によって予め定義された行列（ｍａｔｒｉｘ）を掛け合わせる、２値行列乗算プロセスを使用して生成することができる。例えば、上述のエラーコードは、各ワード１１０、１１２、１１４、１１６のデータ部分１７０とアペンディックスＡに示す行列との２値行列乗算によって生成される。アペンディックスＡの行列と各ワード１１０、１１２、１１４、１１６との各２値行列積は、ワード１１０、１１２、１１４、１１６のデータ部分１７０にそれぞれ添付されるべきエラーコード部分１２０、１２２、１２４、１２６である。
【０００９】
２値行列乗算は以下のように働く。
【００１０】
２個の行列Ａ、Ｂを、次のように仮定する。
【００１１】
Ａ＝ａ１ａ２・・・ａｎ    Ｂ＝ｂ１１ｂ１２ｂ１３・・・ｂ１ｍ  （式１ａおよび１ｂ）
ｂ２１ｂ２２ｂ２３・・・ｂ２ｍ
・
・
・
ｂｎ１ｂｎ２ｂｎ３・・・ｂｎｍ
【００１２】
２値行列乗算法を用いたＡ×Ｂは、ｍビットの結果、
Ｃ＝ｃ１ｃ２ｃ３・・・ｃｍ            （式２）
を形成する。なお、
ｎ
ｃｉ＝Σａｊ×ｂｊｉ                  （式３ａ）
ｊ＝１
である。さらに２個の数値の“積”（‘ｘ’によって示される）は２値“ＡＮＤ”機能であり、数値の順列の“合計”はその順列の“イクスクルーシブオア（排他的ＯＲ）”であり：もし順列中の‘１’の数が偶数の場合０であり、その他は１である。
【００１３】
式３中の各積は、ａｊまたはｂｊｉが既に０であると分かっている場合、これらの項が結果ｃｉに影響を与えないので、計算する必要はない。さらに一個の行列の項が既に０または１であると分かっている場合、その積それ自身を計算する必要はない：１に等しい既知の項とＡＮＤ処理された、他の行列中の対応する項は、互いにイクスクルーシブオア（排他的論理和）処理される。このようにして式３ａは、既知の値ｂｊｉに対して、
ｎ
ｂｊｉ＝１であるｊに対してのみ  ｃｉ＝Σａｊ    （式３ｂ）
ｊ＝１
となる。
【００１４】
通常のエラー検出およびエラー検出コードは、パケット１０２の各ワード１１０、１１２、１１４、１１６内で特定のエラーを検出し、あるいは検出して訂正することができるが、これらの通常のエラー検出コードとエラー検出および訂正コードは、その本来の順序から外れたパケット１０２内のワードまたは別のパケット中のワードに代わって不適切に挿入された一個のパケットからのワードのような、イントラワード（ワード内）エラーの存在を検出することはできない。
【００１５】
この二つの問題の内の第１の問題は、ワード１１０、１１２、１１４、１１６が正しくない順序で組み立てられ、伝送されまたは受信された場合に生じる。各ワード１１０、１１２、１１４、１１６内のデータ部分１７０は対応するエラー検出またはエラー検出および訂正コード１２０、１２２、１２４、１２６に一致するので、エラー検出またはエラー検出および訂正コード１２０、１２２、１２４、１２６を、順序外エラーを同定するために使用することはできない。第２の問題は、別のパケットに位置するワードが第１のパケットのワード１１０、１１２、１１４、１１６間に挿入された場合に生じる。この問題は、ワードが適正にメモリ中に書き込まれず、新しい値の代わりに古い値が残っている場合に発生する。この不適切に挿入されたワードにおけるデータ部分１７０は対応するエラーコードに一致し得るので、エラー訂正および検出コードを使用して、そのワードが間違ったパケット内に不適切に挿入された事実を同定することは出来ない。この結果、これらの特別な２個のエラーを検出するために、別の手段が必要である。
【００１６】
ワードのミッシングまたは不適切な挿入を同定するための一方法は、チェックサム（検査合計）技術を用いることである。伝送サイトは、最終チェックサムワード１１８を追加する。このチェックサムワードは、チェックサム１１８の上のワード１１０、１１２、１１４、１１６から各列（ｃｏｌｕｍｎ）の、偶数または奇数両方の、パリティを含んでいる。例えば、列０のパリティは、列０のワード１１０、１１２、１１４、１１６をイクスクルーシブオア処理することによって決定される。パケットを受信した後、各列のビットをテストして正しいパリティを確かめる。不適切に挿入されたワードまたはミッシングワードは、パリティエラーを発生しうる。チェックサム１１８は、巡回冗長チェックサム、すなわりＣＲＣであっても良い。しかしながらチェックサム１１８の使用は、全てのワード１１０、１１２、１１４、１１６、１１８がエラーを検出する以前に受信される必要がある。ワードは順次受信されるため、各ワード１１０、１１２、１１４、１１６を受信サイトで使用するまでに、不必要な遅延が発生する。さらに、チェックサム方法は、各ワード１１０、１１２、１１４、１１６がそのパケット内にあるがしかし本来の順序から外れている場合のパケットを同定することは出来ない。
【発明の開示】
【発明が解決しようとする課題】
【００１７】
データの行列乗算および情報の彩色を使用して、パケット内のワードのエラーコード上に彩色し、パケット内の順序を外れかつ不適切に挿入されたワードを素早く検出することを可能とし、かつ受信時の瞬時の使用に対してデータワードを変更しないままにして置くことを可能とする。また、エラーコードが計算された後にパケット中のデータワードに対して彩色を実施してパケット中の順序から外れかつ不適切に挿入されたワードの検出を素早く行なうことを可能とする一方で、エラーコードを彩色するために必要なロジックを単純化する。
【課題を解決するための手段】
【００１８】
上記課題を解決するために、本発明は、ワードのデータ部を読み取るステップと、前記データ部から生成された第一の入力と、前記パケット内の識別子から生成された第二の入力とのイクスクルーシブオア処理を行うことで、第１のコードを生成するステップとを有し、前記識別子は、パケットの識別子あるいはワードの順序位置を識別するビットセットを有することを特徴とする、エラー検出方法を提供する。
【００１９】
上記課題を解決するために、本発明は、少なくともパケットが入力する入力端と、前記パケット内のデータ部から生成された第一の入力と、前記パケット内の識別子から生成された第二の入力のイクスクルーシブオア処理を行う処理部と、前記処理部による処理結果を出力する出力端と、を備えたことを特徴とする、情報を伝送する機能を有する装置を提供する。
【発明を実施するための最良の形態】
【００２０】
本発明では、“彩色”技術を、順序から外れたデータまたは不適切に挿入されたワードを同定するために使用する。再び図１を参照すると、“ハッシング”および“彩色”は、ビットのセットと、ヘッダまたはデータワード１１０、１１２、１１４、１１６のデータ１７０またはエラー１７２部分の全てまたは一部のビットとのイクスクルーシブオアを取る事を意味する。彩色されたデータまたはエラーコードに対して２回同じパターンのイクスクルーシブオアを実行することによって、データまたはエラーコードの色消しが可能となる。本発明は、一個またはそれ以上の既知のパターンを、ワード１１０、１１２、１１４、１１６の幾つかまたは全てのエラーコード部分１７２またはデータ部分１７０に彩色する。彩色はパケットの受信によって除去される。チェックサム１１８はパケット１００中では使用されない。この除去は各ワード１１０、１１２、１１４、１１６の予期された順序と集まりに従って実施されるため、順序から外れたワードまたは不適切に挿入されたワードは、エラーをエラーコード部分１７２又はデータ部分１７０中に生じる。データ部分１７０がエラー検出またはエラー部分１７２のエラー検出と訂正コードを用いて検証される場合、このデータ部分１７０は間違いが多いとして同定されるであろう。
【００２１】
本発明の一実施例では、データワード１１２、１１４、１１６のエラー部分１７２が彩色され、他の実施例ではデータワード１１２、１１４、１１６のデータ部分１７０が彩色される。第１の実施例は、“エラーコードの彩色”として知られており、第２の実施例は“データの彩色”として知られている。
【００２２】
Ａ．エラーコード上への彩色
エラー検出またはエラー検出と訂正コードは、２個の行列の２値行列乗算法を使用して、順序およびパケット識別子と共に生成されかつハッシュされる。図２Ａおよび３を参照すると、ヘッダワードＤ０  を持つ各パケットとデータＤ１  からＤｙ  までのｙワードに対して、伝送時のヘッダパケットに添付するｍビットのエラーコードＥ０  は：
Ｅ０＝ＤＤ０×Ｈ’                        （式４）
で示され、ＤＤ０２０９は、Ｄ０２００、Ｚ１２０２、Ｚ２２０４およびＺ３２０８の連結であり、また
Ｚ１２０２はｍ個の‘０’列；
Ｚ２２０４はｑ（以下に定義する）個の‘０’列；さらに
Ｚ３２０８はｙ個の‘０’列；
を示す。さらに一実施例では、
Ｈ’３０８は、Ｋ３１８上のＪ３１４上のＩ３１２上のＧ３１０の連結である。なお、Ｇ３１０はアペンディックスＡの行列のような、エラー検出または検出／訂正行列であり；
Ｉ３１２は、１からｙの全てのｋに対して、Ｉｋｋ＝‘１’を除いて全てが‘０’のｙビットの正方形単位行列であり；
Ｊ３１４は、以下に示すビット位置Ｕ０に対応した行（Ｒｏｗ）の全ての列（Ｃｏｌ）を有する、Ｇのサブセット３１６であり；さらに
Ｋ３１８は、Ｊではない全ての行の全ての列を有するＧのサブセット３２０である。
【００２３】
アペンディックスＡの行列のような、幾つかのエラー検出または検出／訂正行列では、各行はその行列の他の行に対して直交している。一実施例では、ＪおよびＫは、Ｋ上のＪ上のＧで形成された行列の各行が、Ｋ上のＪ上のＧで形成された行列の一行置きの各行に対して直交するような、如何なる値をも取りうる。
【００２４】
さて図２Ａおよび２Ｂを参照すると、
Ｎ＝１からｙ                          （式５）
である各データワードＤＮに添付するためのエラーコードＥ０は：
ＥＮ  ＝ＤＤＮ  ×Ｈ’                （式６）
である。なおＤＤＮ２１９は、ＤＮ２１０、ＺＮ２１２、Ｕ０２１４およびＶＮ２１８の連結であり、
Ｕ０は、“殆ど固有”即ち別のヘッダによって複製される可能性が低いと期待される、Ｄ０のｑビット識別子部分２０６であり；さらに
ＶＮは、最後の‘０’へのＮの代わりに‘１’を置換した、ｙ個の‘０’列、例えば、Ｖ１＝０００００００１、Ｖ２＝００００００１０等である。
【００２５】
受信サイトにおいて、彩色情報は、対応するエラーコードから色消しされ、ｙ＋１個のチェックコードＣ０〜Ｃｙを形成する。この各チェックコードは、ワード中にエラーが無い場合、即ちそのワードが正しい順序にあり、さらにそのワードが正しいパケット中にありる場合、全て０であるべきである。ヘッダに対するエラーコードＣ０は、
Ｃ０＝ＣＣ０×Ｈ’                    （式７）
であり、この場合ＣＣ０２０９は、Ｄ０２００、Ｅ０２１２、Ｚ２２０４およびＺ３２０８の連結である。
【００２６】
残りのデータワードのためのエラーコードＣＮは、
ＣＮ＝ＣＣＮ×Ｈ’                    （式８）
であり、なお、ＣＣＮ２１９はＤＮ２１０、ＥＮ２１２、Ｕ０２１４およびＶＮ２１８の連結である。
【００２７】
図１を参照すると、一実施例では、ヘッダ１１０はワード０であり、８個までのデータワード１１２、１１４、１１６がヘッダに続き、ワード１〜８、パケット１００の殆ど固有の部分１３０はヘッダ１１０のビット８０〜１１５であり、Ｋが掛け合わされた２値行列となるＪではないｙ個の列は列８〜１５、１４０、１４２、１４４、１４６である。８ビットのエラーコードは、Ｇ行列としてアペンディックスＡ中のテーブルを用いて上述したように計算され、このエラーコードはパケットの伝送に先立って各ワードに添付される。受信時において、上述したチェックコードが計算され、このチェックコードが全て０であるかどうかを見るためにチェックされる。チェックコードが全て０である場合、ビットエラーまたは、順序から外れたまたは間違って挿入されたワードエラーが発生していないことを示す。
【００２８】
図４Ａを参照すると、ビットエラーまたは順序から外れまた間違って挿入されたワードエラーを検出するための、本発明に基づく一実施例の方法が示されている。図４Ａの方法は、伝送サイトにおいてパケットの各ワードに対してエラーコードを形成し、そして再び受信サイトにおいてそのパケットをチェックすることによって、実現される。以下に示すように、式４、５、７および８において各行列対を全て一度に掛け合わせる必要はなく、各行列はサブ行列に分解することができるため、サブ行列対を２値行列乗算法を用いて掛け算し、各サブ行列対の積を、本来の行列対の単独の２値行列乗算と同じ結果を得るために、イクスクルーシブオア処理する。全てのサブ行列対の積は、“彩色積”として知られている。
【００２９】
カウンタＮを０にセットし（４１０）、一実施例では０から９である、パケット中のどのワードが処理されているかを追跡し続ける。全てのＮに対して彩色積ＶＮ×Ｋが計算される（４１２）。これはその結果がパケット中のどのワードに対しても独立しているからである。一実施例では、ＶＮ×Ｋは現在のＮの値に対してのみ計算される。このような実施例では、一個のＫのみに対するステップ４１２は、ステップ４１４の下に移され、ステップ４１４の下から始まるループ内に入る。一実施例では、ＶＮ×Ｋの“計算”は、ＶＮおよびＫが、両者とも、予め計算されかつテーブル中に記憶された積を有する定数であるため、表探索である。他の実施例では、ＶＮ×Ｋは、２値行列乗算技術を用いて実際に計算される。計算の結果は、将来の使用に備えて記憶される。
【００３０】
ヘッダワードＤ０の一部分とＪサブ行列は、彩色積Ｕ０×Ｊを計算するために使用され（４１４）、この値は、将来の使用に備えて記憶される。他の実施例では、Ｕ０×Ｊは以下に示すように使用される時点で計算されるが、このような実施例ではＵ０は記憶されなければならない。ヘッダワードがＤ０で各データワードがＤ１からＤ８である、現在のワードＤＮをＤＮ×Ｇの計算に使用する（４１６）。
【００３１】
ステップ４１８は、受信サイトにおいて彩色積ＥＮ×Ｉを計算することにより、実行される。伝送サイトでは、ステップ４１８は一実施例では全てが０に等しいＥＮによって実行され、または別の実施例ではこのステップ４１８は省略される。
【００３２】
式４および６と７および８において示した様に、ヘッダワードに対する計算は、残りのデータワードに対する計算とは異なっている。その結果、もしＮ＝０であると（４２０）、現在のワードはヘッダワードであり、ステップ４１６と４１８の結果をイクスクルーシブオア処理し、結果を得る（４２２）。そうでない場合は、現在のワードはデータワードであり、現在のＮの値に対するステップ４１２の結果およびステップ４１４、４１６および４１８の結果はイクスクルーシブオア処理され、結果を形成する（４２４）。
【００３３】
一実施例では、上述のステップ４１６、４１８、４２０、４２２、４２４は、パケット中の全てのワードが処理される（４２６）まで繰り返される。伝送サイトでは、ステップ４２２と４２４の結果は各ワードＤ０からＤ８に添付される（４３０）。受信サイトでは、ステップ４２２と４２４の結果がチェックされ、各ビットが０であることが確かめられ（４３２）、エラーが発生していないことを示す（４３６）。もしステップ４２２、４２４の何れかの結果が０で無い場合、エラーが発生し（４３２、４３４）、そのワード中の一個またはそれ以上の正確でないビット、パケット中の順序を外れたワード、または不適切に挿入されたワードがパケット中にあることを示し、そしてこの方法を終了する（４３８）。
【００３４】
別の実施例では、ステップ４２２、４２４によって形成された各結果は、一回に一個添付されまたはチェックされる。図４Ｂには、本発明の一実施例にかかる代替的方法が示されている。ステップ４１０、４１２、４１４、４１６、４２０、４２２、４２４は上述したようにして動作するが、しかしステップ４２６は後段にずらされ、ステップ４２８、４３０、４３２、４３４および４３６がステップ４２２と４２４からの各結果の計算後に実行されるようにしている。これによって、エラーコードが計算された時点で各データワードに即時に添付され、または即時にチェックされることを可能とし、これによってもしエラーが発見されると、プロセスを停止する（４３８）ことが可能となる。この実施例では、エラーは、受信装置が送信装置にそのパケットを再送信するための要求を発生することを可能とし、あるいは、パケット中の全てのワードが受信されチェックされた後にエラーを検出するのみである図４Ａに記載した実施例よりも、より速くパケットの処理を停止することを可能とする。
【００３５】
図４Ａおよび４Ｂを参照すると、一実施例では、ステップ４２８は実施されず：その代わりに、ステップ４３２、４３４、４３６および４３８を省略してステップ４３０を伝送サイトにおいてのみ実施し、またはステップ４３０を省略して、受信サイトにおいてのみステップ４３２、４３４、４３６および４３８を実施する。
【００３６】
図５に、本発明の一実施例に基づいてエラーコードを計算するための装置５００を示す。ＤＩおよびＥＩ入力５１０は、ヘッダまたはデータワードのｋビットデータ部分およびｒビットを有する対応エラーコードをアクセプトする。一実施例では、装置５００は送信および受信サイトにおいて使用され、送信サイトにおいて入力５００のＥＩ入力を全て０にする。他の実施例では、入力５１０は、送信サイトにおいてヘッダのデータ部分またはデータワードのみをアクセプトする。
【００３７】
モジュールＭ１・５１６は、ＤＩおよびＥＩ入力５１０に接続された入力５１２と、上述したＧおよびＩ行列を記憶する例えばＲＯＭまたはフラッシュメモリのような記憶装置５３６に接続された入力５１１とを有している。モジュールＭ１・５１６は、入力５１０におけるＤＩと入力５１１におけるＧ行列との積を、さらに入力５１０におけるＥＩと入力５１１におけるＩ行列との積を、２値乗算法またはこれに等価な方法を用いて形成する。一実施例では、入力５１１と５１２は、ＤＩとＥＩがＭ１・５１６に同時に提供されることを可能とし、さらにＧおよびＩが同時にモジュールＭ１・５１６に提供されることを可能とする。その他の実施例では、ＧおよびＩ行列は、モジュールＭ１・５１６に含まれる記憶装置中に記憶される。その他の実施例では、ＧおよびＩ行列は記憶されず、さらにＧおよびＩの値１を有するエレメントに対応するＤＩおよびＥＩ入力５１０は、式３ｂのロジックを用いてイクスクルーシブオア処理される。一実施例では、モジュールＭ１・５１６はライン５４０上に同時に両方の積を出力し、他の実施例ではそれらの積は順次出力されかつイクスクルーシブオア回路５３０によって組み立てられる。その他の実施例では、それらの積はライン５４０上への出力に先立ってイクスクルーシブオア処理される。
【００３８】
モジュールＭ２・５１８は、入力５１４を介してＵ０に対応するｍビットのＤＩに接続され、入力５１０の入力ＤＩのＵ０に対応するビットと、入力５１３における上述したＪ行列との２値行列乗算が計算される。これによって、入力５１０のＤＩ入力がＤ０に結合された時点でのＵ０の計算が可能となる。レジスタＲ１・５１０は、ヘッダＤ０がパケットのデータワードと共に使用されるために入力５１０のＤＩ入力に在る場合、モジュールＭ２・５１８によって形成された積をラッチする。ヘッダワードは、レジスタＲ１・５２０がパケット中の残りのデータワードからヘッダを区別することができる限り、常にパケットの第１のワードとして到着する必要はない。しかしながら、このようなケースにおいて、ヘッダに先立って到達するデータワードは、もしヘッダがそのデータワードの色消しを行なうのに必要な識別子情報を含んでいる場合、ヘッダが到着するまで記憶されねばならない。その他の実施例では、モジュールＭ２・５１８は、記憶モジュール５３６に接続されず、その代わりにＪ行列をモジュールＭ２・５１８中に記憶する。その他の実施例では、Ｊ行列は記憶されず、値１を有するＪのエレメントに対応するＵ０は、式３ｂを用いてイクスクルーシブオア処理される。しかしながら、Ｊ行列はＧ行列のサブセットであるので、モジュールＭ１・５１６とＭ２・５１８による記憶装置５３６の使用は、モジュールＭ１・５１６によるＧ行列中での使用およびモジュールＭ２・５１８による単独での使用のために、Ｊ行列の２重の記憶を必要とすることもある。
【００３９】
モジュールＭ３は、入力５３７を介して記憶モジュール５３６から上述のＫ行列を受信するように接続され、あるいはまた、Ｋ行列をモジュールＭ３・５２６内に記憶するすることもできる。Ｋ行列はＧ行列のサブセットであり、そのためこれに代わる実施例では、ＫはＭ１・５１６によるＧ行列での使用およびモジュールＭ３・５２６による単独での使用のために記憶されるので、追加の記憶装置が必要である。その他の実施例では、計算の速度を向上するために、ＶＮ×Ｋの結果を再計算しモジュールＭ３・５２６中の記憶装置５３６または類似の装置のような記憶装置中に記憶する。これは、出力５４４に供給される結果が入力５１０のいずれをも必要としないためである。
【００４０】
一実施例では、マスクＡ１・５２２とＡ２・５２８は、先行するステージ５２０と５２６のそれぞれの入力をマスクし、先行するステージの出力がヘッダワードに対応している場合、これらの出力を阻止する。式４および７において上述したように、ヘッダワードのための計算は、ＶＮ×ＫあるいはＵＩ×Ｊを使用せず、そのためＡ１・５２２とＡ２・５２８は、出力５４６、５４４がヘッダワードに対応する場合、全てが０に等しい出力５４８、５５０を有する。イクスクルーシブオア５３０は、出力５４０、５４８、５５０のイクスクルーシブオアをとってｒビットのＥＯ出力５３４を形成する。
【００４１】
送信サイトにおいて、ＥＯ出力５３４は、入力５１０においてデータワードＤＩに添付されるエラーコードＥＮであり、データワードＤＩは変更無しにＤＯ出力５３２に転送される。受信サイトでは、ＥＯ出力５３４はＣＮであり、これは上述したいずれのエラーも検出されない場合全て０である。ＥＯ出力５３４は検証器５６０の入力５６２に接続され、この検証器５６０はもしＥＯ出力５３４の全てのビットが０である場合、その出力５６４において真を示す。
【００４２】
Ｂ．データ上への彩色
エラーコード上に彩色するために必要とされる以外のロジックを単純化することが望まれ、さらにデータが受信サイトにおいて彩色されずに到着する必要はないため、データに彩色しても良い。
【００４３】
図６には、本発明の一実施例に従ってデータに彩色する方法が示されている。カウンタＮは、各ワードの順序を追跡するために使用され、これが０の場合ヘッダワードに相当する。Ｎは０にセットされ（６１０）、ワードが受信される（６１２）。エラーコードは、例えばＤＮ×Ｇの２値行列乗算のような何れかのエラーコード発生技術を用いて生成される（６１４）。このようにして生成されたエラーコードは、一実施例では伝送のためにデータワードに添付され（６１６）、または他の実施例では別に送信され添付されない。Ｎが０の場合（６１８）、ステップ６１２において受信されたワードはヘッダであり、Ｕ０に対応する列Ｄ０は上述したように、後の使用のために記憶される。もしＮが０ではない（６１８）と、ステップ６１２において受信されたワードはヘッダワードではなく、ＤＮを含むパケットに対応するヘッダからのＵ０は、Ｕ０からのビットをＵ０と同じ列内のＤＮ中のビットによってイクスクルーシブオア処理する事によって、ＤＮ中に彩色される（６２２）。一実施例では、順序情報ＶＮは、ＶＮを、Ｕ０によってイクスクルーシブオア処理されないＤＮ中の何れかのビットによってイクスクルーシブオア処理することによって、ＤＮ中に彩色される（６２４）。ステップ６１２、６１４、６１６、６１８、６２２、６２４、６２６は、パケット中の全てのワードに対してＮに１を加えた後（６２８）、繰り返され、その後この方法は終了する（６３０）。
【００４４】
図７には、本発明の一実施例に基づいて、パケット中のデータワード中のデータの色消しをする方法が示されている。カウンタＮはヘッダワードを示すために０にセットされ（７１０）、データワードとエラーコードが受信され、そのデータワードは図６を参照して説明したように彩色されている。もしＮが０の場合、ステップ７１２で受信されたワードはヘッダワードであり、ヘッダワードからのＵ０がデータワードの色消しに用いるため、記憶される（７１６）。そうでない場合、ステップ７１２で受信されたワードはデータワードであり、このデータワードはデータワードＤＮをＶＮ（７１８）と、ＶＮと同じビット位置のＵ０（７２０）によってイクスクルーシブオア処理することによって色消しされ、さらにＵ０は図６を参照して説明したように、ＤＮ中に彩色される。チェックコードＣＫＮは、色消しされたデータワードＤＮ×Ｇとイクスクルーシブオア処理された、ＥＮ×Ｉの２値行列乗算を用いて計算される（７２２）。チェックコードは、全てが０であるかを見るためチェックされ（７２４）、もしチェックコードが０で無い場合、ビットエラー、順序エラーまたは間違って挿入されたワードエラーが発生し、処理が終了する（７２６）。そうでない場合は、Ｎは加数され（７２８）、ステップ７１０を除く上記のステップは、パケット中の全てのワードが処理されるまで（７２８）繰り返される。
【００４５】
図８には、本発明の一実施例に基づいてパケット中のワードを彩色するための装置が示されている。データ入力ＤＩ・８１０はデータまたはヘッダワードをアクセプトし、モジュールＭ１・８２４は、入力８１０において受信されたデータワードとＧ行列との２値行列乗算を用いて色消しされたデータワードのエラーコードを計算する。一実施例では、Ｇ行列はモジュールＭ１・８２４中のＲＯＭに記憶され、さらに他の実施例では式３ｂの原理が、Ｇ中の１に等しいビットに対応するＤＩ中のビットをイクスクルーシブオア処理するために使用される。Ｒ１・８１２は、ＤＩ・８１０がヘッダＤ０を受信した場合、Ｕ０をラッチする。Ａ１・８１４は、ＤＩ・８１０がヘッダＤ０を受信した場合を除いて、ヘッダを彩色しないようにＲ１・８１２の出力をその出力に通過させる。Ｃ１は、０から始まるＤＩ・８１０において受信されるワードをカウントすることによって、各ＤＮに対してＶＮを提供する。Ａ２・８１８は、ＤＩがＤ０を受信する場合、即ちＡ２・８１８が全て０に等しい出力を有する場合を除いて、ヘッダを彩色しないために、出力Ｃ１・８１６をその出力に通過させる。Ｘ１・８２０は、Ａ１・８１４とＡ２・８１８からの彩色情報をイクスクルーシブオア処理し、伝送すべき彩色されたデータ出力８２２を提供する。
【００４６】
図９には、データワードを色消しするための装置が示されている。彩色されたデータとエラーコードは、ＤＩ＋ＥＩ入力９１０によって受信される。Ｒ１・９１２は、入力９１０がヘッダデータとエラーコードを含んでいる場合、データワードの色消しに使用するために、Ｕ０をラッチする。Ｃ１・９１６は、図８のＣ１・８１６と同じ方法でＶＮを提供する。Ａ１・９１４およびＡ２・９１８は、図８のＡ１・８１４とＡ２・８１６と同様に動作する。イクスクルーシブオアＸ１・９２０は、Ａ１およびＡ２からのビットを入力９１０において、図８を参照して示したように彩色された物と同じＤＩのビットとイクスクルーシブオア処理し、色消しされたデータ出力ＤＯ・９２２を形成する。ＤＯ・９２２はＧによって乗算された２値行列であり、入力９１０からのＥＩはＩ行列によって乗算された２値行列であり、各結果は他のものとイクスクルーシブオア処理されて、ＥＯ出力９２６においてチェックコードＣＫＮを形成する。ＣＫＮは、ビットエラー、順位エラーまたは間違って挿入されたワードエラーが発生しない場合、０である。ＥＯ出力は、全てのビットがその入力において０の場合真を出力するチェック９５０の入力と接続されても良い。
【００４７】
【表１】
2006203951.tif 000003
【００４８】
【表２】
2006203951.tif 000004
【００４９】
【表３】
2006203951.tif 000005
【００５０】
【表４】
2006203951.tif 000006
【００５１】
【表５】
2006203951.tif 000007
【００５２】
【表６】
2006203951.tif 000008
【００５３】
【表７】
2006203951.tif 000009
【００５４】
【表８】
2006203951.tif 000010
【００５５】
【表９】
2006203951.tif 000011
【図面の簡単な説明】
【００５６】
【図１Ａ】通常のパケットスイッチネットワーク中のルータに接続された４個の装置の概略ブロック図。
【図１Ｂ】通常のパケット中のヘッダとデータとチェックサムワードを示すブロック図。
【図２Ａ】本発明の一実施例に基づいてヘッダワードを彩色するための、第１の行列中のデータ位置と彩色情報を示すブロック図。
【図２Ｂ】本発明の一実施例に基づいてデータワードを彩色するための、第１の行列中のデータ位置と彩色情報を示すブロック図。
【図３】本発明の一実施例に基づいた第２の行列中の彩色情報の位置を示すブロック図。
【図４Ａ】本発明の一実施例に基づいてパケット中のヘッダとデータワードのためのエラーコードの彩色および色消し方法を説明するためのフローチャート。
【図４Ｂ】本発明の他の実施例に基づいてパケット中のヘッダとデータワードのためのエラーコードの彩色および色消し方法を説明するためのフローチャートである。
【図５】本発明の一実施例に基づいてパケットのヘッダとデータワードのためのエラーコードの彩色および色消しをするための装置の概略ブロック図。
【図６】本発明の他の実施例に基づいてパケットのデータワード中のデータを彩色するための方法を説明するフローチャート。
【図７】本発明の他の実施例に基づいてパケットのデータワード中のデータを色消しするための方法を説明するフローチャート。
【図８】本発明の他の実施例に基づいてパケットのデータワード中のデータを彩色するための装置の概略ブロック図。
【図９】本発明の他の実施例に基づいてパケットのデータワード中のデータを色消しするための装置の概略ブロック図。
【符号の説明】
【００５７】
ＶＮ、Ｕ０    識別子
ＤＮ    データ部
Ｋ，Ｊ，Ｇ    行列
ＸＯＲ    イクスクルーシブオア
【図１Ａ】
2006203951.tif 000012
【図１Ｂ】
2006203951.tif 000013
【図２Ａ】
2006203951.tif 000014
【図２Ｂ】
2006203951.tif 000015
【図３】
2006203951.tif 000016
【図４Ａ】
2006203951.tif 000017
【図４Ｂ】
2006203951.tif 000018
【図５】
2006203951.tif 000019
【図６】
2006203951.tif 000020
【図７】
2006203951.tif 000021
【図８】
2006203951.tif 000022
【図９】
2006203951.tif 000023