(57)【要約】  インターリーバは、マッピングを生成する一般化された方法を利用する。マッピングは、データ・ブロックのビットと、関連する誤り検出／訂正情報とをインターリーブするために生成される。データ・ブロックの長さは、Ｎ×Ｎであり、誤り検出／訂正情報の長さは、Ｐである。（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の正方行列が形成され、複数のサブ・ブロックに分割され、その行列のある部分は、誤り検出／訂正情報と関連付けられ、別の部分は、データ・ブロックのデータと関連付けられる。行列内の新しい位置は、生成元シード対と原位置シード対とに基づき、ある時間順序に従ってサブ・ブロック単位で生成される。また、時間順序は、出力インターリーブ・ブロック内の位置に対応している。新しい位置シーケンスが生成されると、行列は、対応する時間順序に基づいてデータおよび誤り検出／訂正情報で埋められる。デインターリーバは、インターリーバの逆マッピングを実施する。
2007533202.tif 000002
【特許請求の範囲】
【請求項１】
信号処理の適用形態において、データ・ブロックのビットをインターリーブする方法であって、
ａ）マッピングに従って、１より大きい整数であるＤの次元を有し、次元ｄの長さを（Ｎｄ＋Ｐｄ）とし、Ｐｄを正の整数とする行列における第１の１組の位置と前記データ・ブロックの値を関連付けるステップであって、前記行列の各位置は、対応する時間順序の値を有し、前記データ・ブロックの長さは、
【数１】
2007533202.tif 000005
であるステップと、
ｂ）前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するステップと、
ｃ）前記時間順序の値に従って前記行列の各位置に値を提供するステップと
を含み、
前記マッピングは、
ｄ）前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成するステップ
によって定義される、
方法。
【請求項２】
前記ステップａ）に関して、Ｄは２であり、Ｐ１＝Ｐ２＝Ｐであり、Ｎ１＝Ｎ２であり、前記行列は、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の正方行列であり、前記データ・ブロックの長さは、Ｎ２であり、前記ステップｄ）に関して、各サブ・ブロックは、（Ｌ）×（Ｌ）の行列であり、（Ｎ＋Ｐ）をＬで割ると正の整数が得られる、請求項１に記載の発明。
【請求項３】
前記ステップｄ）に関して、前記位置シーケンスは、生成元シード・セット｛ａ，ｂ｝ＳＢ（ｍ，ｎ）と原位置シード・セット（ｐｓｌ，ｐｓ２）ＳＢ（ｍ，ｎ）とを用いて各サブ・ブロックＳＢ（ｍ，ｎ）毎に生成され、各位置の行の索引ｉと列の索引ｊとが、
ｉ＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋｛ｋ｝＊ａ，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
ｊ＝ｍｏｄ（ｍｏｄ（ｐｓ２，Ｌ）＋｛ｋ｝＊ｂ，Ｌ）＋ｆｌｏｏｒ（ｐｓ２，Ｌ）＊Ｌ）
の通り生成され、
上式で、ｋは０〜Ｌ−１の値をとり、「ｍｏｄ（●）」は数学上の法関数であり、ｆｌｏｏｒ（●）は数学上の床関数であり、次いでｐｓ１が、
ｐｓ１＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋１，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
の通り更新される、
請求項２に記載の発明。
【請求項４】
前記ステップｄ）は、ａおよびｂの値がＬと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、ａおよびｂの値を選択するステップを含む、請求項３に記載の発明。
【請求項５】
前記ステップｄ）は、前記生成元シード・セットの値が、それぞれ（Ｌ）×（Ｌ）の行列であり、Ｌｄを正の整数とする対応するサブ・ブロックの次元の長さＬｄと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、前記生成元シード・セットの値を選択するステップを含む、請求項１に記載の発明。
【請求項６】
前記ステップａ）に関して、前記誤り検出／訂正情報は、行型パリティ・ビットと列型パリティ・ビットとを含み、前記ステップｄ）は、１つまたは複数の初期の行位置および列位置の値をゼロにセットするステップを含む、請求項１に記載の発明。
【請求項７】
前記ステップａ）は、前記行列における前記サブ・ブロックに基づいて前記データ・ブロックの値を関連付ける、請求項１に記載の発明。
【請求項８】
前記ステップａ）は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、サブ・ブロックに関して予め定義された順に前記データ・ブロックの値を関連付ける、請求項７に記載の発明。
【請求項９】
前記ステップａ）は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、各サブ・ブロックに関して予め定義された位置番号の順に前記データ・ブロックの値を関連付ける、請求項７に記載の発明。
【請求項１０】
前記方法は、集積回路の形で実装されたプロセッサによって実施される、請求項１に記載の発明。
【請求項１１】
信号処理の適用形態において、インターリーブされた符号化データ・ブロックが信号として通信チャネル内を通過した後に、当該データ・ブロックをデインターリーブする方法であって、
ａ）前記インターリーブされた符号化データ・ブロックを表す１組の値を検出するステップと、
ｂ）マッピングの反転に従って、前記インターリーブされた符号化データ・ブロックをデインターリーブするステップとを含み、前記符号化データ・ブロックは、
ｃ１）長さを
【数２】
2007533202.tif 000006
とし、各Ｎｄを正の整数とするデータ・ブロックの値を、前記マッピングに従って、ある行列における第１の１組の位置と関連付けるステップであって、
ｉ）前記行列の各位置は、対応する時間順序の値を有し、
ｉｉ）前記行列は、１より大きい整数であるＤの次元を有し、次元ｄの長さは（Ｎｄ＋Ｐｄ）であり、Ｐｄは正の整数であり、
ｉｉｉ）前記マッピングは、前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成する前記ステップによって定義される、
ステップと、
ｃ２）前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するステップと、
ｃ３）前記インターリーブされた符号化データ・ブロックを形成するために、前記時間順序の値に従って前記行列の各位置に値を提供するステップと
によってインターリーブされる、
方法。
【請求項１２】
前記方法は、集積回路の形で実装された少なくとも１つのプロセッサによって実施される、請求項１１に記載の発明。
【請求項１３】
信号処理の適用形態に関して、長さを
【数３】
2007533202.tif 000007
とし、各Ｎｄを正の整数とするデータ・ブロックのビットを、符号化データ・ブロックにインターリーブする回路であって、
１より大きい整数であるＤの次元を有し、次元ｄの長さを（Ｎｄ＋Ｐｄ）とし、Ｐｄを正の整数とする行列であって、各位置が対応する時間順序の値を有する行列における第１の１組の位置と、前記データ・ブロックの値を関連付けることによって、前記データ・ブロックの各要素へのマッピングを適用するように適合された第１の回路と、
前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するように適合された第２の回路と、
前記時間順序の値に従って前記行列の各位置に値を提供するように適合された第３の回路と
を備え、
前記マッピングは、前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成するステップによって定義される、
回路。
【請求項１４】
Ｄは２であり、Ｐ１＝Ｐ２＝Ｐであり、Ｎ１＝Ｎ２であり、前記行列は、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の正方行列であり、前記データ・ブロックの長さは、Ｎ２であり、各サブ・ブロックは、Ｌ×Ｌの行列であり、（Ｎ＋Ｐ）をＬで割ると正の整数が得られる、請求項１３に記載の発明。
【請求項１５】
前記位置シーケンスは、生成元シード・セット｛ａ，ｂ｝ＳＢ（ｍ，ｎ）と原位置シード・セット（ｐｓｌ，ｐｓ２）ＳＢ（ｍ，ｎ）とを用いて各サブ・ブロックＳＢ（ｍ，ｎ）毎に生成され、各位置の行の索引ｉと列の索引ｊとが、
ｉ＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋｛ｋ｝＊ａ，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
ｊ＝ｍｏｄ（ｍｏｄ（ｐｓ２，Ｌ）＋｛ｋ｝＊ｂ，Ｌ）＋ｆｌｏｏｒ（ｐｓ２，Ｌ）＊Ｌ）
の通り生成され、
上式で、ｋは０〜Ｌ−１の値をとり、「ｍｏｄ（●）」は数学上の法関数であり、ｆｌｏｏｒ（●）は数学上の床関数であり、次いでｐｓ１が、
ｐｓ１＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋１，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
の通り更新される、
請求項１４に記載の発明。
【請求項１６】
ａおよびｂの値は、Ｌと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように選択される、請求項１５に記載の発明。
【請求項１７】
前記生成元シード・セットの値は、各サブ・ブロックがＬ×Ｌの行列であり、Ｌが正の整数である場合は、前記長さＬと相対的に素であるように選択され、各サブ・ブロック毎に相対的に一意であるように選択される、請求項１５に記載の発明。
【請求項１８】
前記誤り検出／訂正情報は、行型パリティ・ビットと列型パリティ・ビットとを含み、１つまたは複数の初期の行位置および列位置の値は、ゼロにセットされる、請求項１３に記載の発明。
【請求項１９】
前記第１の回路は、前記行列の前記サブ・ブロックに基づいて前記データ・ブロックの値を関連付ける、請求項１３に記載の発明。
【請求項２０】
前記第１の回路は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、サブ・ブロックに関して予め定義された順に前記データ・ブロックの値を関連付ける、請求項１９に記載の発明。
【請求項２１】
前記第１の回路は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、各サブ・ブロックに関して予め定義された位置番号の順に前記データ・ブロックの値を関連付ける、請求項１９に記載の発明。
【請求項２２】
前記回路は、集積回路の形で実装される、請求項１３に記載の発明。
【請求項２３】
信号処理の適用形態に関して、インターリーブされた符号化データ・ブロックを復号する復号器を有し、
前記インターリーブされた符号化データ・ブロックを表す１組の値を検出するように適合された検出器と、
マッピングの反転に従って、前記インターリーブされた符号化データ・ブロックをデインターリーブするように適合されたデインターリーバとを備え、前記符号化データ・ブロックは、
１）長さを
【数４】
2007533202.tif 000008
とし、Ｎｄを正の整数とするデータ・ブロックの値を、前記マッピングに従って、ある行列における第１の１組の位置と関連付けるステップであって、
ｉ）前記行列の各位置は、対応する時間順序の値を有し、
ｉｉ）前記行列は、１より大きい整数であるＤの次元を有し、次元ｄの長さは（Ｎｄ＋Ｐｄ）であり、Ｐｄは正の整数であり、
ｉｉｉ）前記マッピングは、前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成する前記ステップによって定義される、
ステップと、
２）前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するステップと、
３）前記インターリーブされた符号化データ・ブロックを形成するために、前記時間順序の値に従って前記行列の各位置に値を提供するステップと
によってインターリーブされる、
回路。
【請求項２４】
前記回路は、集積回路の形で実装される、請求項２３に記載の発明。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムにおけるデータの符号化、検出、および復号に関し、より詳細には、受信機による積符号誤り検出および訂正用のインターリーバおよびデインターリーバに関する。
【背景技術】
【０００２】
多くのデジタル伝送システムは一般に、シンボル・シーケンスで表されるデジタル・データを検出するための各種技法を利用している。シンボル・ビットは、典型的には伝送信号に雑音が加えられる伝送（すなわち、通信）チャネルを介して、信号として転送される。例えば、磁気記録システムは、まずデータをシンボル・ビットに符号化してから磁気媒体上への記録を行う。磁気媒体へのデータの書込み、記憶、および磁気媒体からのデータの読取りは、関連する周波数応答の伝送チャネルを介して行われるものと見なすことができる。同様に、有線、光、無線、およびセルラー通信システムも、チャネルを介して符号化データを転送し、その符号化データが後に受信機によって検出され復号される。信号は、伝送される符号化データを表す標本化信号（すなわち、標本値シーケンス）としてチャネルから読み取ることができる。処理の便宜上、それぞれ元のデータ・シーケンスの一部分を表すデータ・ブロックには、符号化および復号処理が適用される。
【０００３】
２次元以上のブロック符号でデータを符号化しその後符号化データを復号することは、符号化利得が非常に高く復号器の構造が単純である故に、多くのシステムで利用されている。データの符号化には、２つ以上の単純な符号（成分符号として知られる）を組み合わせてより強力な符号化スキームが作成される、積符号を利用することができる。符号の次元は、成分符号の数に関係することもある。
【０００４】
例えば、積符号はパリティ・ビット検査符号を利用して、２次元の場合であればＮの情報ビットを２次元のデータ・ワード（例えば、ｎ２の情報ビットを有するｎ１ワード、またはｎ１の情報ビットを有するｎ２ワード）として符号化することができる。各データ・ワードは、対応次元のベクトルを表し、ｎ１およびｎ２は、０より大きい整数である。データ（すなわち、Ｎの情報ビット）を符号化する積符号は、矩形行列ｕの形に配列され、符号化は、矩形行列ｕを形成する行ベクトル（例えば、ｎ２の情報ビット）と列ベクトル（例えば、ｎ１の情報ビット）との組合せとすることができる。この組合せは、２進値のガロア体（Ｇａｌｏｉｓ  ｆｉｅｌｄ：ＧＦ）（２）加算、乗算、あるいは線形演算としてもよい。例えば、Ｎ＝ｎ１ｎ２とした場合、一続きのＮの情報ビット（例えば、データ・ブロック）は、（ｎ１×ｎ２）の行列の情報ビットとして形成することができる。データを符号化する積符号は、それぞれ誤り検出情報および誤り訂正情報である、行型パリティ・ビットｐｒおよび列型パリティ・ビットｐｃも含む。水平行は、Ｒ１＝（ｎ１／ｋ１）の比率をもつ（ｎ１，ｋ１）ブロック符号Ｃｒにおけるｎ２の符号ワードから形成される（ここでｋ１は、行の合計の長さであり、各行のパリティ・ビット情報の長さは、ｋ１−ｎ１である）。垂直列は、Ｒ２＝（ｎ２／ｋ２）の比率をもつ（ｎ２，ｋ２）ブロック符号Ｃｃにおけるｎ１の符号ワードから形成される（ここでｋ２は、列の合計の長さであり、各列のパリティ・ビット情報の長さは、ｋ２−ｎ２である）。
【０００５】
積符号で符号化されたデータ・ブロックは典型的には、一連の符号化データ・ブロックとして伝送される。積符号は典型的には、次元単位ベースで単一ビットのパリティ検査符号が利用されている場合に単一の１ビットの誤りを訂正する場合は、符号化利得に関する最適性能を示す。行または列において誤りが偶数個発生することから生じるパリティ検査の取消し、および複数の１ビットの誤りに関連するパリティ検査の位置的な曖昧さの故に、単一の１ビットの誤りだけしか検出することも訂正することもできない。単一ビットのパリティ検査符号を有する正方積符号行列における上記の位置的な曖昧さの一例を示すために、第１行の第１要素を誤りとし、第２行の第２要素を誤りとする（順対角線上の２つの誤り）。第１および第２の行型パリティ・ビットと、第１および第２の列型パリティ・ビットはどちらも、誤りを指摘するはずであるが、第１行の第２要素と第２行の第１要素とが誤りである（逆対角線方向に２つの誤りがある）場合にも、誤りを指摘することになる。軟情報（ｓｏｆｔ  ｉｎｆｏｒｍａｔｉｏｎ）が使用可能であることは、この種の曖昧さを区別する軟復号（ｓｏｆｔ  ｄｅｃｏｄｉｎｇ）を行う際に役立つ可能性がある。
【０００６】
より多くの数の誤り、特により多くの数の連続する誤りの検出および訂正では、誤り検出情報（例えば、パリティ・ビット）に関する過剰なオーバーヘッドが追加され、それにより全体のシステムのスループットが低下する可能性がある。受信機におけるデータの誤りは、信号劣化に起因する検出および／または復号処理の誤った判断から生じることもある。信号劣化は、信号が通信チャネル内を通過するときに加えられるランダム雑音および／またはバースト雑音から生じる。
【０００７】
いくつかの積符号に関しては、その結果得られる出力シーケンスが、検出エラーの特に発生しやすいシンボル・パターンを含むこともある。例えば、あるシーケンスが全て「１」である場合は、当該シーケンスのシンボル・タイミングと受信機のサンプル・タイミングの位相がずれているかどうかを検知することが困難なこともある。したがって、インターリーバの設計が、これらのパターンを回避するロジックを含んでいることもある。
【０００８】
いくつかの通信チャネルに関する特性は、「バースト性（ｂｕｒｓｔｙ）」雑音の追加である。かかる雑音は、いくつかの伝送シンボル（データあるいは符号化データ）の期間と等価な期間にわたって伝送信号を破損させる可能性がある。バースト性雑音は、受信データのバースト誤りを発生させる可能性がある。バースト誤りの影響を最小限に抑えるために、多くの通信システムは、送信機内のインターリーバと、それに対応する受信機内のデインターリーバとを含む。インターリーブは、一般にＢＬＫ値を有するデータ・ブロック（すなわち、ＢＬＫはブロックの長さであり、１より大きい整数である）を受信するステップと、ブロック内のＢＬＫ値の順番を再配置するステップとを含む、マッピングｆ（＊）である。インターリーブは例えば、データ・ストリーム内の値の非ランダム・シーケンスを取り除くのに利用することもできる。デインターリーブ処理では、データ・ブロック内のシンボルをチャネルを介して伝送する前にインターリーブすることにより、デインターリーブ済みのブロック全体にバースト誤りが分散される。
【０００９】
「出力チャネル標本（ｏｕｔｐｕｔ  ｃｈａｎｎｅｌ  ｓａｍｐｌｅ）」という用語は、受信機の標本化処理を通じて生成される伝送チャネルからの符号化データの標本を指す。受信機は典型的には、出力チャネル標本からの符号化データを表すシンボル・ビット・シーケンスを検出する検出器を含む。復号器は、検出されたシンボル・シーケンスを検出器から受け取り、シンボル・ビット・シーケンスを復号してデータを再構成する。復号器は、符号化処理を逆に辿る単純な復号器であっても、最大ビット誤り率（ＢＥＲ）の閾値など所定の復号基準値（ｍｅｔｒｉｃ）が満足されるまで繰り返しデータの復号を行う反復復号器であってもよい。検出器は典型的には、部分応答最尤法（ＰＲＭＬ）アルゴリズム（例えば、ビタビ・アルゴリズム（ＶＡ））、最大事後決定（ｍａｘｉｍｕｍ  ａ  ｐｏｓｔｅｒｉｏｒｉ：ＭＡＰ）アルゴリズム、あるいは軟出力ビタビ・アルゴリズム（ＳＯＶＡ）を利用することができる。復号器は典型的には、検出器から生成される軟情報を使用し、軟復号スキームを利用することができる。
【００１０】
検出器および／または復号器によって使用されるこれらのアルゴリズムは典型的には、状態格子内を通る最尤経路を判定する。この経路は、受信された出力チャネル標本に対応するシンボルに関する判定順序を表す。しかしながら、受信された信号の信号対雑音比（ＳＮＲ）が低い状況では、このアルゴリズムは、格子内を通る誤った経路を判定することもあり、それにより、対応する出力チャネル標本シーケンスに関する誤った判定順序が生み出される可能性もある。かかる誤りシーケンスは一般に、検出アルゴリズムの「誤りイベント」と称される。いくつかの誤りイベントに関しては、受信ビットの順序に関する判定が、長い誤りシーケンスを生成することもあり、したがって、その誤りシーケンスが復号前に検出済みの符号化データに挿入される可能性もある。特定の実装形態で使用されるいくつかの検出アルゴリズムは、チャネル・メモリ、ＳＮＲ、およびインパルス応答に基づいて最適化され、また、間接的には主要な誤りイベントに関して最適化されている。
したがって、インターリーバは、ｉ）単一の誤りイベント検出および訂正と、ｉｉ）複数の誤りイベント検出および訂正と、ｉｉｉ）典型的な積符号の誤りパターンの回避とに関して優れた性能を有するべきである。
【発明の開示】
【課題を解決するための手段】
【００１１】
本発明によれば、インターリーバは、マッピングを生成する一般化された方法を利用する。マッピングは、データ・ブロックのビットと、関連する誤り検出／訂正情報とをインターリーブするために生成される。行列が形成され、複数のサブ・ブロックに分割され、その行列のある部分は、誤り検出／訂正情報と関連付けられ、別の部分は、データ・ブロックのデータと関連付けられる。この行列は、１より大きい整数であるＤの次元を有し、次元ｄの長さは、（Ｎｄ＋Ｐｄ）であり、Ｐｄは、正の整数であり、データ・ブロックの長さは、
【数１】
2007533202.tif 000003
である。行列内の位置は、生成元シード・セット（ｇｅｎｅｒａｔｏｒ  ｓｅｅｄ  ｓｅｔ）と原位置シード・セット（ｏｒｉｇｉｎａｌ  ｐｏｓｉｔｉｏｎ  ｓｅｅｄ  ｓｅｔ）とに基づき、ある時間順序に従ってサブ・ブロック単位で（ｓｕｂ−ｂｌｏｃｋ  ｂｙ  ｓｕｂ−ｂｌｏｃｋ  ｂａｓｉｓ）生成される。生成元シード・セットの各値は、対応するサブ・ブロックの次元の長さに関して相対的に一意であり、相対的に素であるように選択される。また、時間順序は、出力インターリーブ・ブロック内の位置に対応している。位置シーケンスが生成されると、行列は、時間順序に基づいてデータおよび誤り検出／訂正情報で埋められる。デインターリーバは、インターリーバの逆マッピングを実施する。
本発明のその他の態様、特徴、および利点は、以下の詳細な説明、添付の特許請求の範囲、および添付の図面を参照すればより完全に明らかとなるであろう。
【発明を実施するための最良の形態】
【００１２】
図１は、本発明の例示的な一実施形態によるインターリーブの方法を示している。方法１００は、ステップ１０１から１０７を含む。ステップ１０１から１０４は、例示的なインターリーバの一実装形態を対象とするマッピングを生成する設計によって利用される可能性があり、一方、ステップ１０５から１０７は、当該例示的なインターリーバの一実装形態の動作中に利用される可能性がある。本発明の例示的な一実施形態に従って動作するデインターリーバの所与の一実装形態は、対応するインターリーバのマッピングとは反対のマッピング（逆マッピングと呼ばれる）を利用することができる。本発明の例示的な一実施形態に従って生成されたマッピングが与えられると、逆マッピングが容易に生成される。
【００１３】
ステップ１０１で、長さＮＭのデータ・ブロック（入力データ・ブロック）が受信され、この場合、ＮおよびＭは１より大きい正の整数である。図１の例示的な一実施形態では、Ｎ＝Ｍ＝Ｎ２であり、２次元行列を利用している。データ・ブロックは、値シーケンスであり、各値は、当該シーケンス内の対応する位置を有する。この位置は、数値で示すことができ、時間単位と関連付けることもできる（例えば、位置４の値はＴ＝４で受信される）。データ・ブロックは、積符号で符号化することによってユーザ・データから生成することができ、かかる符号化は、本発明の実施に組み込むことができる。
【００１４】
ステップ１０２で、Ｐは０より大きい正の整数である、サイズ（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の正方行列Φが形成される。行列Φ内のＰ行およびＰ列は、誤り検出および／または訂正情報（例えば、パリティ・ビット）と関連付けられることが望ましく、一方、Ｎ行およびＮ列は、データ・ブロックのデータと関連付けられることが望ましい。ｋ＝０，．．．，Ｐ−１とした場合の位置（ｋ，ｊ）および（ｉ，ｋ）の値を０にセットすることができる。ステップ１０３で、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の行列Φは、正の整数である（Ｌ）×（Ｌ）のサブ・ブロック行列（「サブ・ブロック」）に分割され、この場合、（Ｎ＋Ｐ）はＬで割り切れる整数値である。便宜上、次の表記法が利用される。すなわち、行には０〜（Ｎ＋Ｐ−１）の番号が振られ、列には０〜（Ｎ＋Ｐ−１）の番号が振られ、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の行列Φにおけるｉ番目の行、ｊ番目の列の位置は、（ｉ，ｊ）として定義される。
【００１５】
行列Φは、図面では２次元の正方行列として示されているが、本発明は、そのように限定されるものではない。行列Φは、２次元よりも高い次元に拡大することができ、各次元は、本明細書に記載の２次元の行列Φの場合と同様の様式で構築することができる。
【００１６】
図２は、（Ｎ＋Ｐ）を１８、Ｌを６とした場合の、図１のステップ１０１および１０２に従って形成された（格子内の太めの線で境界が示される）９つのサブ・ブロックを有する１つの例示的な（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の行列Φを示している。図３は、Ｐ＝１とした場合の図２の行列Φを示している。図３に示されるように、パリティ・ビットは、第１行および第１列の各位置と関連付けられる。位置（ｉ＝０，ｊ＝０）は、何も情報を含んでおらず、０にセットされる。ＳＢ（ｍ，ｎ）として標示される９つのサブ・ブロックが形成され、この場合、１≦ｍ、ｎ≦３である。サブ・ブロックＳＢ（１，ｎ）およびＳＢ（ｍ，１）は、パリティ・ビットおよびデータ・ビットに関連する空間を含んでいるが、残りのサブ・ブロックは、データ・ビットに関連する空間しか含んでいない。
【００１７】
ステップ１０４で、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の行列Φ内の位置（ｉ，ｊ）が、ある時間順序に従って生成される。この時間順序の位置は、数値でも通し番号でも示すことができ、時間単位と関連付けることもできる（例えば、位置４の値はＴ＝４で受信される）。したがって、所与の位置（ｉ，ｊ）に関しては、生成される位置シーケンス内の対応する通し番号は、出力インターリーブ・ブロック内の位置に対応する。出力される位置シーケンスは、以下の通りサブ・ブロック単位で生成される。
【００１８】
各サブ・ブロックＳＢ（ｍ，ｎ）には、行／列の生成元シード対｛ａ，ｂ｝ＳＢ（ｍ，ｎ）と、原位置シード対（ｐｓ１，ｐｓ２）ＳＢ（ｍ，ｎ）とが割り当てられる。行列Φが２次元よりも高い次元である場合は、生成元シード・セット内の要素の数および原位置シード・セット内の要素の数は等価であり、行列Φの次元の桁と等しい。生成元シード対｛ａ，ｂ｝のａおよびｂはそれぞれ、行位置および列位置の増分値に対応する。したがって、ａ＝１である場合は、（ｉ，ｊ）に関する新しい位置ｉを計算する演算が終了したときに、ｉが１増分される（すなわち、ｉ＝（ｉ＋１））。同様に、ｂ＝１である場合は、（ｉ，ｊ）に関する新しい位置ｊを計算する演算が終了したときに、ｊが１増分される（すなわち、ｊ＝（ｊ＋１））。ａおよびｂの値を選択するときは、ａおよびｂは、Ｌと相対的に素であるように選択されることが望ましい。ａおよびｂの値は、各サブ・ブロック毎に相対的に一意であるように選択されることが望ましい。（ｎ−１）≧ｐｓ１、ｐｓ２≧０とした場合の原位置シード対（ｐｓ１，ｐｓ２）ＳＢ（ｍ，ｎ）は、サブ・ブロックＳＢ（ｍ，ｎ）内の初期の開始位置である。したがって、計算を開始するのにサブ・ブロックＳＢ（ｍ，ｎ）内で選択される最初の位置（ｉ，ｊ）は、（ｉ＝ｐｓ１，ｊ＝ｐｓ２）となる。原位置シード対（ｐｓ１，  ｐｓ２）ＳＢ（ｍ，ｎ）の値を選択するときは、値をランダムに生成することも予め定めることもできる。ただし、ｋ＝０，．．．，Ｐ−１とした場合の（ｋ，ｊ）および（ｉ，ｋ）の位置は、選択されない（これらの位置の値は、サブ・ブロックＳＢ（１，１）内で０にセットされる）。
｛ａ，ｂ｝ＳＢ（ｍ，ｎ）と（ｐｓ１，ｐｓ２）ＳＢ（ｍ，ｎ）とが各サブ・ブロックＳＢ（ｍ，ｎ）に与えられた場合、行の索引ｉは、公式（１）の通り生成され、列の索引ｊは、公式（２）の通り生成される。
ｉ＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋｛ｋ｝＊ａ，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）・・・（１）
ｊ＝ｍｏｄ（ｍｏｄ（ｐｓ２，Ｌ）＋｛ｋ｝＊ｂ，Ｌ）＋ｆｌｏｏｒ（ｐｓ２，Ｌ）＊Ｌ）・・・（２）
【００１９】
上式で、ｋは０〜Ｌ−１の値をとる。公式（１）および（２）において、「ｍｏｄ（●）」は、数学上の法関数であり、ｆｌｏｏｒ（●）は、数学上の床関数である（この場合、ｆｌｏｏｒ（ｘ，ｙ）＝ｘをｙで割った整数部）。ｋ＝０〜Ｌ−１に関する位置（ｉ，ｊ）が生成された後は、Ｌの位置が生成され、次いでｐｓ１が、公式（３）の通り更新される。
ｐｓ１＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋１，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）・・・（３）
ｐｓ２の値は、一定のままである。
【００２０】
ｐｓ１の値が更新された後は、別のＬの位置を生成するために、再びｋ＝０〜Ｌ−１に関して公式（１）および（２）が評価される。この処理は、サブ・ブロックＳＢ（ｍ，ｎ）内の全ての位置について繰り返される。初期の計算値を用いた公式（１）および（２）の評価と、ｐｓ１をＬ−１回更新する計算とを行う処理により、Ｌ２の位置がサブ・ブロック毎に生成される。
【００２１】
時間Ｔの各位置（ｉ，ｊ）は、やはり出力インターリーブ・ブロック内の位置に対応する各サブ・ブロックに関して生成される。したがって、例えば時間Ｔ＝１〜Ｔ＝Ｌ２の間のＬ２の位置（ｉ，ｊ）シーケンスを生成すると、行列Φ内の位置が識別され、その値は、時間／位置Ｔ＝１〜Ｔ＝Ｌ２において、出力インターリーブ・ブロックに挿入される（出力インターリーブ・ブロックが１次元シーケンスであるので、時間単位は、出力インターリーブ・ブロック内の位置と等しくすることができる）。
【００２２】
図４は、Ｎを３、Ｐを１とした場合の、図１の方法に従って形成された１つの例示的な行列を示している。この場合では、各サブ・ブロックは、単一ビットの値を含む。上述のように公式（１）、（２）、および（３）を評価すると、時間Ｔ＝１では位置（１，１）が得られ、時間Ｔ＝２では位置（２，２）が得られ、以下同様に、図５に示される通り位置が得られる。位置（０，０）の値は一般に、出力インターリーブ・ブロックには含まれない。
【００２３】
図１を参照すると、ステップ１０５で、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の行列Φがデータで満たされる。行列Φの各位置をデータ・ビットで埋める（関連付ける）には、いくつかの方法を利用することができる。埋め込みに関する各方法は、ｉ）データ・ブロック中の互いに隣接するビットを新しい行列内で配分する際、および／またはｉｉ）出力ブロック内の高い誤りビット・パターンを回避する際には、異なる性能を示す可能性がある。例えば、データ・ビットは、第１のサブ・ブロックの各位置に順次挿入され、次いで、第２のサブ・ブロックの各位置に順次挿入され、以下同様に全てのサブ・ブロックが満たされるまで、挿入が行われてもよい。別法として、図６は、図２の行列を埋める１つの例示的な方法を示しており、この場合の入力ブロック・シーケンス内のデータ・ビットは、新しい行列においてまず第１のサブ・ブロックの第１の位置に、次いで第２のサブ・ブロックの第１の位置に順次挿入され、以下同様に全てのサブ・ブロックの第１の位置が満たされるまで、順次挿入されていく。次いで、データ・ビットは、新しい行列においてまず第１のサブ・ブロックの第２の位置に、次いで第２のサブ・ブロックの第２の位置に、以下同様に全てのサブ・ブロックの第２の位置が満たされるまで、新しい行列内に順次挿入されていく。挿入は、全てのサブ・ブロックが満たされるまで続けられる。
【００２４】
図４および５の例を参照すると、データ・ビットｂ１〜ｂ９は、次のように行列内に挿入される。データ・ビットの値ｂ１〜ｂ３は、Ｔ＝１〜Ｔ＝３の間に識別された位置に挿入される。しかし、行列内のＴ＝４の位置は、パリティ・ビット（ｐ１）と関連付けられており、したがって、ｐ１用に予約されている。次いで、データ・ビットｂ４およびｂ５が、Ｔ＝５およびＴ＝６の位置に挿入される。Ｔ＝７の位置は、パリティ・ビット（ｐ６）と関連付けられており、したがって、ｐ６用に予約されている。同様の様式で、残りのデータ・ビットの挿入および残りのパリティ・ビットの予約が行われる。
【００２５】
ステップ１０６で、各行および各列に関連する誤り検出および訂正情報（例えば、パリティ値）が生成され、新しい行列内の対応する位置と関連付けられる。ステップ１０７で、行列Φ内の各位置に関連する値（例えば、パリティまたはデータ・ビットの値）が順次読み出されて、出力インターリーブ・ブロックが形成される。位置（ｉ＝０，ｊ＝０）のゼロの値は、出力インターリーブ・ブロックには挿入せずに破棄してもよい。
【００２６】
図７は、本発明の例示的な一実施形態に従って動作するインターリーバ７００の例示的な一実装形態を示しており、この場合のサイズＬ２のサブ・ブロックを有する行列（例えば、Ｌ＝Ｎ＝３かつＰ＝１である図４および５の例など）に関しては、ａ＝ｂ＝ｐｓ１＝ｐｓ２＝１である。入力データ・ブロックの各データ・ビットは、Ｌ２のデータ・ビットしか存在しない場合にも各データ・ビットが１〜Ｌ２＋２Ｌまでのカウンタ７０１の範囲をカバーするように、カウンタ７０１へと供給される。カウンタ７０１は、マッピング・ビットの値を生成し、その位置は、行符号化ロジック７０２および列符号化ロジック７０３によって判定される。行パリティ検査値計算機（ｒｏｗ  ｐａｒｉｔｙ  ｃｈｅｃｋ  ｖａｌｕｅ  ｃａｌｃｕｌａｔｏｒ）７０６は、行列内のＬ行のそれぞれに関するパリティ検査値を生成し、列パリティ検査値計算機（ｃｏｌｕｍｎ  ｐａｒｉｔｙ  ｃｈｅｃｋ  ｖａｌｕｅ  ｃａｌｃｕｌａｔｏｒ）７０７は、行列内のＬ列のそれぞれに関するパリティ検査値を生成する。行パリティ検査および列パリティ検査の値ならびにマッピング・ビット位置の値が、パリティ・アドレス・マッピング・ロジックへと供給される。次いで、パリティ・アドレス・マッピング・ロジック７０４は、マッピング・ビット位置の値に従って、入力データ・ビットならびに行パリティ・ビットおよび列パリティ・ビットの値で（Ｌ２＋２Ｌの長さの）レジスタ７０５を満たす調整を行う。
【００２７】
図８は、ｌｏｇ（Ｌ＋ｌ）ビットを生成するｍｏｄｕｌｏ（Ｌ＋１）計算機８０１と、ｌｏｇ（Ｌ＋１）の各ビットをＬビットに変換するＬｏｇ  Ｌ／Ｌ変換マッピング・モジュール（Ｌｏｇ  Ｌ  ｔｏ  Ｌ  ｍａｐｐｉｎｇ  ｍｏｄｕｌｅ）８０２とを利用する、図７の行符号化ロジック７０２を示している。例えば、Ｌ＝３であるときに、計算機８０１からの出力が、１（１０進数）であり、Ｌｏｇ  Ｌ／Ｌ変換マッピング・モジュール８０２以降のバイナリ形式がｂ’０１である場合は、ｂ’０００１にマッピングされ、その最初の３つの０により、パリティ検査値計算機７０６の出力Ｐ＿ｒｏｗ＿２、Ｐ＿ｒｏｗ＿３、Ｐ＿ｒｏｗ＿４がディスエーブルされ、最後の１により、パリティ検査値計算機７０６の出力Ｐ＿ｒｏｗ＿１がイネーブルされる。同様に、ｂ’１０がｂ’００１０にマッピングされると、Ｐ＿ｒｏｗ＿２だけがイネーブルされ、ｂ’１１がｂ’０１００にマッピングされると、Ｐ＿ｒｏｗ＿３だけがイネーブルされる。
【００２８】
図９は、ｍｏｄｕｌｏ（Ｌ＋１）計算機９０１と、ビット・シフタＬｏｇ（Ｌ＋１）モジュール９０２とを利用する、図７の列符号化ロジック７０３を示している。ｍｏｄｕｌｏ（Ｌ＋１）計算機９０１の出力とビット・シフタＬｏｇ（Ｌ＋１）モジュール９０２の出力とが、コンバイナ９０５において組み合わされ、コンバイナ９０５の出力が、ｍｏｄｕｌｏ（Ｌ＋１）計算機９０１に加えられ、ｍｏｄｕｌｏ（Ｌ＋１）計算機９０１が、ｌｏｇ（Ｌ＋１）のビットを生成する。ｌｏｇ（Ｌ＋ｌ）の各ビットは、Ｌｏｇ  Ｌ／Ｌ変換マッピング・モジュール９０４によってＬビットに変換される。
【００２９】
図１０は、本発明の例示的な一実施形態に従って動作するインターリーバ１００２を含む送信機１０００を示している。図１０に示されるように、送信機１０００は、インターリーバ１００２へと供給される長さＮ２のデータ・ブロックを生成する、データ生成器１００１を含む。データ生成器１００１が、積符号に従ってデータ・ブロックを生成する符号器を含んでいてもよく、あるいは、インターリーバ１００２が、積符号による符号器を組み込んでいてもよい。インターリーバ１００２は、本発明の例示的な一実装形態に従ってマッピングを行うことによってインターリーブ・ブロックを生成する。次いで、インターリーブ・ブロックは、復調器１００３が復調信号を生成し、磁気記録媒体、光媒体、または無線伝送媒体などの通信媒体を介してその信号を送信するのに利用される。
【００３０】
図１１は、本発明の例示的な一実施形態によるマッピングおよび逆マッピングをそれぞれ利用するインターリーバ１１０６ならびにデインターリーバ１１０２および１１１１を含む、受信機１１００を示している。受信機１１００を利用して、図１０の送信機１０００によって生成された信号を受信し、復号することができる。受信機１１００は、受信信号の標本ｙを生成し、標本ｙは、検出器１１０１へと供給される。検出器１１０１は、ｉ）検出シンボルに関する硬判定（ＨＤ）と、ｉｉ）対応する軟判定の信頼度情報（例えば、対数尤度比すなわちＬＬＲ）とを生成する軟出力ビタビ・アルゴリズム（ＳＯＶＡ）を利用して、標本ｙの入力シンボルを検出することができる。ＨＤおよび信頼度情報（事前信頼度（ａ  ｐｒｉｏｒｉ  ｒｅｌｉａｂｉｌｉｔｙ）情報または軟判定（ＳＤ）として示される）が、デインターリーバ１１０２に供給され、送信機１０００のインターリーバ１００２によるインターリーブを逆に辿る逆マッピングが適用される。送信機１０００のデータ生成器１００１は、Ｋの積符号の積符号化を利用し、その場合には、受信機は、反復復号方法を利用することができる。したがって、ＨＤおよび信頼度情報は、軟復号器１１０３（１）〜１１０３（Ｋ）によって実装されるＫの軟復号シーケンス（各積符号につき１つ）に加えられる。
【００３１】
軟復号器１１０３（Ｋ）の出力は、復号データに関する１組の硬判定（ＨＤ）と共に、事後信頼度（ａ  ｐｏｓｔｅｒｉｏｒｉ  ｒｅｌｉａｂｉｌｉｔｙ）情報として示される、ＨＤに関する対応する１組の信頼度の値も含む。これらのＨＤおよび事後信頼度の値は、復号の第１の繰返しにおける出力を含む。次いで、復号の第２の繰返しが実施される。次いで、送信機１０００のインターリーバ１００２によって利用されるのと同じマッピングに従って、ＨＤと事後信頼度の値とが、遅延装置（ｄｅｌａｙ）１００９から供給された入力標本ｙのシンボルと順序が揃うようにインターリーブされる。入力標本ｙ、インターリーブされたＨＤ、および入力標本に関する新しい事前信頼度の値が、検出器１１０８へと供給される（これらはＳＯＶＡアルゴリズムに従って検出されてもよい）。検出器１１０１からの（事前）ＬＬＲと、インターリーブされたインターリーバ１１０６からの事後信頼度の値とに基づいて、（コンバイナ１１０７によって）新しい事前信頼度の値が生成される。
【００３２】
検出器１１０８は、入力標本ｙに関する新しい１組のＨＤと共に、対応する新しい信頼度の値も生成する。新しいＳＤは、コンバイナ１１０７から生成された事前信頼度の値を削除することによって（コンバイナ１１１０において）修正される。修正された新しい信頼度の値および対応するＨＤは、デインターリーバ１１１１によってデインターリーブされ、デインターリーバ１１１１は、デインターリーバ１１０２と同様の逆マッピングを適用する。次いで、デインターリーバ１１１１からのデインターリーブされた信頼度の値（ＳＤ）および対応するＨＤは、軟復号器１１１２（１）〜１１１２（Ｋ）による第２の反復復号に掛けられるが、これらの軟復号器は、軟復号器１１０３（１）〜１１０３（Ｋ）について上述したのと同様の様式で復号を行うことができる。軟復号器１１１２（Ｋ）の出力は、復号データ・ストリームとして供給される１組の新しいＨＤである。
【００３３】
本明細書では、２次元の正方行列を使用してマッピングを生成するものとして本発明が説明されているが、本発明はそのように限定されるものではなく、各次元の長さが異なっていてもよいＤ次元に拡張されてもよい。したがって、Ｄのデータ・ブロックの長さが、
【数２】
2007533202.tif 000004
である場合は、長さ（Ｎｄ＋Ｐｄ）の次元ｄを有するＤ次元の行列を生成することができ、上式で、各Ｎｄは正の整数であり、Ｎｄは必ずしも等しい値をとらない。同様に、各次元は、必ずしも同じ値Ｐ単位で増分する必要はなく、むしろ１≦ｄ≦Ｄとした場合の対応する値Ｐｄ単位で増加させる必要がある。さらに、サブ・ブロックは、必ずしも長さＬと一致させる必要はなく、むしろ（Ｌ１）×（Ｌ２）の行列と一致させる必要がある（あるいは、より高い次元では次元の長さをＬｄとする必要がある）。当業者には明らかとなるように、本明細書に記載の様々な実施形態に関する様々な公式は、例示的なものであり、個々の行列サイズ、次元、およびサブ・ブロックのサイズに基づいて修正することができる。
【００３４】
本発明の例示的な一実装形態によるインターリーブは、バースト性チャネルを対象とする機能拡張版の単一および複数のビット誤り検出および訂正を可能にすることができる。この一般的なインターリーブ型マッピングの設計構造は、ある種の誤り発生パターンを所与の実装形態が回避することを可能とし、また、インターリーバ用のマッピングを生成する上で非常に優れた柔軟性をもたらすことが可能となる。
【００３５】
本発明は、通信媒体またはチャネル内をデータが通過するどのようなタイプの伝送システムでも利用することができる。本発明は、磁気記録または光記録に利用することも、有線／無線／光／非光ネットワークにおいて利用することもできる。
【００３６】
当業者には明らかとなるように、インターリーバまたはデインターリーバの様々な機能は、回路素子を用いて実装されても、デジタル領域においてソフトウェア・プログラムの処理ステップとして実装されてもよい。かかるソフトウェアは、例えばデジタル信号処理装置、マイクロ・コントローラ、あるいは汎用コンピュータで利用することができる。
【００３７】
本発明は、上記の方法を実施する方法および装置の形で実施することができる。本発明はまた、フロッピー（登録商標）・ディスケット、ＣＤ−ＲＯＭ、ハード・ドライブ、他の任意のマシン読取り可能な記憶媒体など有形の媒体に実装され、コンピュータなどのマシンにロードされ当該マシンによって実行されたときに当該マシンが本発明を実施する装置となる、プログラム・コードの形で実施することもできる。本発明は、例えば記憶媒体に記憶されるものであれ、マシンにロードされかつ／または当該マシンによって実行されるものであれ、あるいは電線や電気ケーブル、光ファイバ、または電磁放射など何らかの伝送媒体を介して伝送されるものであれ、コンピュータなどのマシンにロードされ当該マシンによって実行されたときに当該マシンが本発明を実施する装置となる、プログラム・コードの形で実施することもできる。このプログラム・コードの各セグメントは、汎用プロセッサ上に実装されたときに、特定の論理回路と近似の動作をする一意のデバイスを提供するプロセッサと組み合わされる。
【００３８】
さらに、本発明の性質を説明するために記載され図示されている部分の詳細、材料、および構成には、当業者なら添付の特許請求の範囲に示される本発明の諸原理および範囲から逸脱することなく様々な変更を加えることができることが、理解されるであろう。
【図面の簡単な説明】
【００３９】
【図１】本発明の例示的な一実施形態によるインターリーブの方法を示す図である。
【図２】図１の方法に従って形成された行列を示す図である。
【図３】複数のサブ・ブロックに分割され、データおよび誤り検出／訂正情報に関連する部分を有する図２の行列を示す図である。
【図４】Ｎを３、Ｐを１とした場合の、図１の方法に従って形成された１つの例示的な行列を示す図である。
【図５】時間順序および関連する位置を含む、図４の行列の代わりに形成された新しい１つの例示的な行列を示す図である。
【図６】図２の行列を埋める１つの例示的な方法を示す図である。
【図７】本発明の例示的な一実装形態に従って動作するインターリーバの例示的な一実装形態を示す図である。
【図８】図７の行符号化ロジックを示す図である。
【図９】図７の列符号化ロジックを示す図である。
【図１０】本発明の例示的な一実施形態に従って動作するインターリーバを含む送信機を示す図である。
【図１１】本発明の例示的な一実施形態に従って動作するインターリーバとデインターリーバとを含む受信機を示す図である。
【図１】
2007533202.tif 000009
【図２】
2007533202.tif 000010
【図３】
2007533202.tif 000011
【図４】
2007533202.tif 000012
【図５】
2007533202.tif 000013
【図６】
2007533202.tif 000014
【図７】
2007533202.tif 000015
【図８】
2007533202.tif 000016
【図９】
2007533202.tif 000017
【図１０】
2007533202.tif 000018
【図１１】
2007533202.tif 000019
【手続補正書】
【提出日】平成19年2月27日(2007.2.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
信号処理の適用形態において、データ・ブロックのビットをインターリーブする方法であって、
ａ）マッピングに従って、１より大きい整数であるＤの次元を有し、次元ｄの長さを（Ｎｄ＋Ｐｄ）とし、Ｐｄを正の整数とする行列における第１の１組の位置と前記データ・ブロックの値を関連付けるステップであって、前記行列の各位置は、対応する時間順序の値を有し、前記データ・ブロックの長さは、
【数１】
2007533202.tif 000020
であるステップと、
ｂ）前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するステップと、
ｃ）前記時間順序の値に従って前記行列の各位置に値を提供するステップと
を含み、
前記マッピングは、
ｄ）前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成するステップ
によって定義されるようになっていることを特徴とする方法。
【請求項２】
前記ステップａ）に関して、Ｄは２であり、Ｐ１＝Ｐ２＝Ｐであり、Ｎ１＝Ｎ２であり、前記行列は、（Ｎ＋Ｐ）×（Ｎ＋Ｐ）の正方行列であり、前記データ・ブロックの長さは、Ｎ２であり、前記ステップｄ）に関して、各サブ・ブロックは、（Ｌ）×（Ｌ）の行列であり、（Ｎ＋Ｐ）をＬで割ると正の整数が得られる、請求項１に記載の方法。
【請求項３】
前記ステップｄ）に関して、前記位置シーケンスが、生成元シード・セット｛ａ，ｂ｝ＳＢ（ｍ，ｎ）と原位置シード・セット（ｐｓｌ，ｐｓ２）ＳＢ（ｍ，ｎ）とを用いて各サブ・ブロックＳＢ（ｍ，ｎ）毎に生成され、各位置の行の索引ｉと列の索引ｊとが、
ｉ＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋｛ｋ｝＊ａ，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
ｊ＝ｍｏｄ（ｍｏｄ（ｐｓ２，Ｌ）＋｛ｋ｝＊ｂ，Ｌ）＋ｆｌｏｏｒ（ｐｓ２，Ｌ）＊Ｌ）
の通り生成され、
上式で、ｋは０〜Ｌ−１の値をとり、「ｍｏｄ（●）」は数学上の法関数であり、ｆｌｏｏｒ（●）は数学上の床関数であり、次いでｐｓ１が、
ｐｓ１＝ｍｏｄ（ｍｏｄ（ｐｓ１，Ｌ）＋１，Ｌ）＋ｆｌｏｏｒ（ｐｓ１，Ｌ）＊Ｌ）
の通り更新されるようになっている請求項２に記載の方法。
【請求項４】
前記ステップｄ）が、ａおよびｂの値がＬと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、ａおよびｂの値を選択するステップを含む、請求項３に記載の方法。
【請求項５】
前記ステップｄ）が、前記生成元シード・セットの値が、それぞれ（Ｌ）×（Ｌ）の行列であり、Ｌｄを正の整数とする対応するサブ・ブロックの次元の長さＬｄと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、前記生成元シード・セットの値を選択するステップを含む、請求項１に記載の方法。
【請求項６】
前記ステップａ）に関して、前記誤り検出／訂正情報が、行型パリティ・ビットと列型パリティ・ビットとを含み、前記ステップｄ）は、１つまたは複数の初期の行位置および列位置の値をゼロにセットするステップを含む、請求項１に記載の方法。
【請求項７】
前記ステップａ）が、前記行列における前記サブ・ブロックに基づいて前記データ・ブロックの値を関連付ける、請求項１に記載の方法。
【請求項８】
前記ステップａ）が、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、（ｉ）サブ・ブロックに関して予め定義された順、および（ii）各サブ・ブロックに関して予め定義された位置番号の順の少なくとも１つにて、前記データ・ブロックの値を関連付ける、請求項７に記載の方法。
【請求項９】
信号処理の適用形態において、インターリーブされた符号化データ・ブロックが信号として通信チャネル内を通過した後に、当該データ・ブロックをデインターリーブする方法であって、
ａ）前記インターリーブされた符号化データ・ブロックを表す１組の値を検出するステップと、
ｂ）マッピングの反転に従って、前記インターリーブされた符号化データ・ブロックをデインターリーブするステップとを含み、前記符号化データ・ブロックは、
ｃ１）長さを
【数２】
2007533202.tif 000021
とし、各Ｎｄを正の整数とするデータ・ブロックの値を、前記マッピングに従って、ある行列における第１の１組の位置と関連付けるステップであって、
ｉ）前記行列の各位置は、対応する時間順序の値を有し、
ii）前記行列は、１より大きい整数であるＤの次元を有し、次元ｄの長さは（Ｎｄ＋Ｐｄ）であり、Ｐｄは正の整数であり、
iii)前記マッピングは、前記行列における１つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成する前記ステップによって定義される、
ステップと、
ｃ２）前記行列における第２の１組の位置に関連する誤り検出／訂正情報を生成するステップと、
ｃ３）前記インターリーブされた符号化データ・ブロックを形成するために、前記時間順序の値に従って前記行列の各位置に値を提供するステップと
によってインターリーブされるようになっていることを特徴とする方法。
【請求項１０】
請求項１−９のうちいずれか一項に記載の方法を遂行するよう構成された装置。
【国際調査報告】
2007533202.tif 000022
2007533202.tif 000023
2007533202.tif 000024