JP2007533202A - サブ・ブロック・インターリーバおよびデインターリーバを有する多次元ブロック符号器 - Google Patents

サブ・ブロック・インターリーバおよびデインターリーバを有する多次元ブロック符号器 Download PDF

Info

Publication number
JP2007533202A
JP2007533202A JP2007507287A JP2007507287A JP2007533202A JP 2007533202 A JP2007533202 A JP 2007533202A JP 2007507287 A JP2007507287 A JP 2007507287A JP 2007507287 A JP2007507287 A JP 2007507287A JP 2007533202 A JP2007533202 A JP 2007533202A
Authority
JP
Japan
Prior art keywords
matrix
sub
block
data block
value
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
JP2007507287A
Other languages
English (en)
Other versions
JP4551445B2 (ja
Inventor
リン,シャオトン
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.)
Agere Systems LLC
Original Assignee
Agere Systems LLC
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 Agere Systems LLC filed Critical Agere Systems LLC
Publication of JP2007533202A publication Critical patent/JP2007533202A/ja
Application granted granted Critical
Publication of JP4551445B2 publication Critical patent/JP4551445B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • H03M13/2764Circuits therefore
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2721Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions the interleaver involves a diagonal direction, e.g. by using an interleaving matrix with read-out in a diagonal direction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2757Interleaver with an interleaving rule not provided for in the subgroups H03M13/2703 - H03M13/2753
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2918Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes with error correction codes in three or more dimensions, e.g. 3-dimensional product code where the bits are arranged in a cube

Abstract

インターリーバは、マッピングを生成する一般化された方法を利用する。マッピングは、データ・ブロックのビットと、関連する誤り検出/訂正情報とをインターリーブするために生成される。データ・ブロックの長さは、N×Nであり、誤り検出/訂正情報の長さは、Pである。(N+P)×(N+P)の正方行列が形成され、複数のサブ・ブロックに分割され、その行列のある部分は、誤り検出/訂正情報と関連付けられ、別の部分は、データ・ブロックのデータと関連付けられる。行列内の新しい位置は、生成元シード対と原位置シード対とに基づき、ある時間順序に従ってサブ・ブロック単位で生成される。また、時間順序は、出力インターリーブ・ブロック内の位置に対応している。新しい位置シーケンスが生成されると、行列は、対応する時間順序に基づいてデータおよび誤り検出/訂正情報で埋められる。デインターリーバは、インターリーバの逆マッピングを実施する。

Description

本発明は、通信システムにおけるデータの符号化、検出、および復号に関し、より詳細には、受信機による積符号誤り検出および訂正用のインターリーバおよびデインターリーバに関する。
多くのデジタル伝送システムは一般に、シンボル・シーケンスで表されるデジタル・データを検出するための各種技法を利用している。シンボル・ビットは、典型的には伝送信号に雑音が加えられる伝送(すなわち、通信)チャネルを介して、信号として転送される。例えば、磁気記録システムは、まずデータをシンボル・ビットに符号化してから磁気媒体上への記録を行う。磁気媒体へのデータの書込み、記憶、および磁気媒体からのデータの読取りは、関連する周波数応答の伝送チャネルを介して行われるものと見なすことができる。同様に、有線、光、無線、およびセルラー通信システムも、チャネルを介して符号化データを転送し、その符号化データが後に受信機によって検出され復号される。信号は、伝送される符号化データを表す標本化信号(すなわち、標本値シーケンス)としてチャネルから読み取ることができる。処理の便宜上、それぞれ元のデータ・シーケンスの一部分を表すデータ・ブロックには、符号化および復号処理が適用される。
2次元以上のブロック符号でデータを符号化しその後符号化データを復号することは、符号化利得が非常に高く復号器の構造が単純である故に、多くのシステムで利用されている。データの符号化には、2つ以上の単純な符号(成分符号として知られる)を組み合わせてより強力な符号化スキームが作成される、積符号を利用することができる。符号の次元は、成分符号の数に関係することもある。
例えば、積符号はパリティ・ビット検査符号を利用して、2次元の場合であればNの情報ビットを2次元のデータ・ワード(例えば、nの情報ビットを有するnワード、またはnの情報ビットを有するnワード)として符号化することができる。各データ・ワードは、対応次元のベクトルを表し、n1およびn2は、0より大きい整数である。データ(すなわち、Nの情報ビット)を符号化する積符号は、矩形行列uの形に配列され、符号化は、矩形行列uを形成する行ベクトル(例えば、nの情報ビット)と列ベクトル(例えば、nの情報ビット)との組合せとすることができる。この組合せは、2進値のガロア体(Galois field:GF)(2)加算、乗算、あるいは線形演算としてもよい。例えば、N=nとした場合、一続きのNの情報ビット(例えば、データ・ブロック)は、(n×n)の行列の情報ビットとして形成することができる。データを符号化する積符号は、それぞれ誤り検出情報および誤り訂正情報である、行型パリティ・ビットpおよび列型パリティ・ビットpも含む。水平行は、R=(n/k)の比率をもつ(n,k)ブロック符号Cにおけるnの符号ワードから形成される(ここでkは、行の合計の長さであり、各行のパリティ・ビット情報の長さは、k−nである)。垂直列は、R=(n/k)の比率をもつ(n,k)ブロック符号Cにおけるnの符号ワードから形成される(ここでkは、列の合計の長さであり、各列のパリティ・ビット情報の長さは、k−nである)。
積符号で符号化されたデータ・ブロックは典型的には、一連の符号化データ・ブロックとして伝送される。積符号は典型的には、次元単位ベースで単一ビットのパリティ検査符号が利用されている場合に単一の1ビットの誤りを訂正する場合は、符号化利得に関する最適性能を示す。行または列において誤りが偶数個発生することから生じるパリティ検査の取消し、および複数の1ビットの誤りに関連するパリティ検査の位置的な曖昧さの故に、単一の1ビットの誤りだけしか検出することも訂正することもできない。単一ビットのパリティ検査符号を有する正方積符号行列における上記の位置的な曖昧さの一例を示すために、第1行の第1要素を誤りとし、第2行の第2要素を誤りとする(順対角線上の2つの誤り)。第1および第2の行型パリティ・ビットと、第1および第2の列型パリティ・ビットはどちらも、誤りを指摘するはずであるが、第1行の第2要素と第2行の第1要素とが誤りである(逆対角線方向に2つの誤りがある)場合にも、誤りを指摘することになる。軟情報(soft information)が使用可能であることは、この種の曖昧さを区別する軟復号(soft decoding)を行う際に役立つ可能性がある。
より多くの数の誤り、特により多くの数の連続する誤りの検出および訂正では、誤り検出情報(例えば、パリティ・ビット)に関する過剰なオーバーヘッドが追加され、それにより全体のシステムのスループットが低下する可能性がある。受信機におけるデータの誤りは、信号劣化に起因する検出および/または復号処理の誤った判断から生じることもある。信号劣化は、信号が通信チャネル内を通過するときに加えられるランダム雑音および/またはバースト雑音から生じる。
いくつかの積符号に関しては、その結果得られる出力シーケンスが、検出エラーの特に発生しやすいシンボル・パターンを含むこともある。例えば、あるシーケンスが全て「1」である場合は、当該シーケンスのシンボル・タイミングと受信機のサンプル・タイミングの位相がずれているかどうかを検知することが困難なこともある。したがって、インターリーバの設計が、これらのパターンを回避するロジックを含んでいることもある。
いくつかの通信チャネルに関する特性は、「バースト性(bursty)」雑音の追加である。かかる雑音は、いくつかの伝送シンボル(データあるいは符号化データ)の期間と等価な期間にわたって伝送信号を破損させる可能性がある。バースト性雑音は、受信データのバースト誤りを発生させる可能性がある。バースト誤りの影響を最小限に抑えるために、多くの通信システムは、送信機内のインターリーバと、それに対応する受信機内のデインターリーバとを含む。インターリーブは、一般にBLK値を有するデータ・ブロック(すなわち、BLKはブロックの長さであり、1より大きい整数である)を受信するステップと、ブロック内のBLK値の順番を再配置するステップとを含む、マッピングf()である。インターリーブは例えば、データ・ストリーム内の値の非ランダム・シーケンスを取り除くのに利用することもできる。デインターリーブ処理では、データ・ブロック内のシンボルをチャネルを介して伝送する前にインターリーブすることにより、デインターリーブ済みのブロック全体にバースト誤りが分散される。
「出力チャネル標本(output channel sample)」という用語は、受信機の標本化処理を通じて生成される伝送チャネルからの符号化データの標本を指す。受信機は典型的には、出力チャネル標本からの符号化データを表すシンボル・ビット・シーケンスを検出する検出器を含む。復号器は、検出されたシンボル・シーケンスを検出器から受け取り、シンボル・ビット・シーケンスを復号してデータを再構成する。復号器は、符号化処理を逆に辿る単純な復号器であっても、最大ビット誤り率(BER)の閾値など所定の復号基準値(metric)が満足されるまで繰り返しデータの復号を行う反復復号器であってもよい。検出器は典型的には、部分応答最尤法(PRML)アルゴリズム(例えば、ビタビ・アルゴリズム(VA))、最大事後決定(maximum a posteriori:MAP)アルゴリズム、あるいは軟出力ビタビ・アルゴリズム(SOVA)を利用することができる。復号器は典型的には、検出器から生成される軟情報を使用し、軟復号スキームを利用することができる。
検出器および/または復号器によって使用されるこれらのアルゴリズムは典型的には、状態格子内を通る最尤経路を判定する。この経路は、受信された出力チャネル標本に対応するシンボルに関する判定順序を表す。しかしながら、受信された信号の信号対雑音比(SNR)が低い状況では、このアルゴリズムは、格子内を通る誤った経路を判定することもあり、それにより、対応する出力チャネル標本シーケンスに関する誤った判定順序が生み出される可能性もある。かかる誤りシーケンスは一般に、検出アルゴリズムの「誤りイベント」と称される。いくつかの誤りイベントに関しては、受信ビットの順序に関する判定が、長い誤りシーケンスを生成することもあり、したがって、その誤りシーケンスが復号前に検出済みの符号化データに挿入される可能性もある。特定の実装形態で使用されるいくつかの検出アルゴリズムは、チャネル・メモリ、SNR、およびインパルス応答に基づいて最適化され、また、間接的には主要な誤りイベントに関して最適化されている。
したがって、インターリーバは、i)単一の誤りイベント検出および訂正と、ii)複数の誤りイベント検出および訂正と、iii)典型的な積符号の誤りパターンの回避とに関して優れた性能を有するべきである。
本発明によれば、インターリーバは、マッピングを生成する一般化された方法を利用する。マッピングは、データ・ブロックのビットと、関連する誤り検出/訂正情報とをインターリーブするために生成される。行列が形成され、複数のサブ・ブロックに分割され、その行列のある部分は、誤り検出/訂正情報と関連付けられ、別の部分は、データ・ブロックのデータと関連付けられる。この行列は、1より大きい整数であるDの次元を有し、次元dの長さは、(N+P)であり、Pは、正の整数であり、データ・ブロックの長さは、
Figure 2007533202
である。行列内の位置は、生成元シード・セット(generator seed set)と原位置シード・セット(original position seed set)とに基づき、ある時間順序に従ってサブ・ブロック単位で(sub−block by sub−block basis)生成される。生成元シード・セットの各値は、対応するサブ・ブロックの次元の長さに関して相対的に一意であり、相対的に素であるように選択される。また、時間順序は、出力インターリーブ・ブロック内の位置に対応している。位置シーケンスが生成されると、行列は、時間順序に基づいてデータおよび誤り検出/訂正情報で埋められる。デインターリーバは、インターリーバの逆マッピングを実施する。
本発明のその他の態様、特徴、および利点は、以下の詳細な説明、添付の特許請求の範囲、および添付の図面を参照すればより完全に明らかとなるであろう。
図1は、本発明の例示的な一実施形態によるインターリーブの方法を示している。方法100は、ステップ101から107を含む。ステップ101から104は、例示的なインターリーバの一実装形態を対象とするマッピングを生成する設計によって利用される可能性があり、一方、ステップ105から107は、当該例示的なインターリーバの一実装形態の動作中に利用される可能性がある。本発明の例示的な一実施形態に従って動作するデインターリーバの所与の一実装形態は、対応するインターリーバのマッピングとは反対のマッピング(逆マッピングと呼ばれる)を利用することができる。本発明の例示的な一実施形態に従って生成されたマッピングが与えられると、逆マッピングが容易に生成される。
ステップ101で、長さNMのデータ・ブロック(入力データ・ブロック)が受信され、この場合、NおよびMは1より大きい正の整数である。図1の例示的な一実施形態では、N=M=Nであり、2次元行列を利用している。データ・ブロックは、値シーケンスであり、各値は、当該シーケンス内の対応する位置を有する。この位置は、数値で示すことができ、時間単位と関連付けることもできる(例えば、位置4の値はT=4で受信される)。データ・ブロックは、積符号で符号化することによってユーザ・データから生成することができ、かかる符号化は、本発明の実施に組み込むことができる。
ステップ102で、Pは0より大きい正の整数である、サイズ(N+P)×(N+P)の正方行列Φが形成される。行列Φ内のP行およびP列は、誤り検出および/または訂正情報(例えば、パリティ・ビット)と関連付けられることが望ましく、一方、N行およびN列は、データ・ブロックのデータと関連付けられることが望ましい。k=0,...,P−1とした場合の位置(k,j)および(i,k)の値を0にセットすることができる。ステップ103で、(N+P)×(N+P)の行列Φは、正の整数である(L)×(L)のサブ・ブロック行列(「サブ・ブロック」)に分割され、この場合、(N+P)はLで割り切れる整数値である。便宜上、次の表記法が利用される。すなわち、行には0〜(N+P−1)の番号が振られ、列には0〜(N+P−1)の番号が振られ、(N+P)×(N+P)の行列Φにおけるi番目の行、j番目の列の位置は、(i,j)として定義される。
行列Φは、図面では2次元の正方行列として示されているが、本発明は、そのように限定されるものではない。行列Φは、2次元よりも高い次元に拡大することができ、各次元は、本明細書に記載の2次元の行列Φの場合と同様の様式で構築することができる。
図2は、(N+P)を18、Lを6とした場合の、図1のステップ101および102に従って形成された(格子内の太めの線で境界が示される)9つのサブ・ブロックを有する1つの例示的な(N+P)×(N+P)の行列Φを示している。図3は、P=1とした場合の図2の行列Φを示している。図3に示されるように、パリティ・ビットは、第1行および第1列の各位置と関連付けられる。位置(i=0,j=0)は、何も情報を含んでおらず、0にセットされる。SB(m,n)として標示される9つのサブ・ブロックが形成され、この場合、1≦m、n≦3である。サブ・ブロックSB(1,n)およびSB(m,1)は、パリティ・ビットおよびデータ・ビットに関連する空間を含んでいるが、残りのサブ・ブロックは、データ・ビットに関連する空間しか含んでいない。
ステップ104で、(N+P)×(N+P)の行列Φ内の位置(i,j)が、ある時間順序に従って生成される。この時間順序の位置は、数値でも通し番号でも示すことができ、時間単位と関連付けることもできる(例えば、位置4の値はT=4で受信される)。したがって、所与の位置(i,j)に関しては、生成される位置シーケンス内の対応する通し番号は、出力インターリーブ・ブロック内の位置に対応する。出力される位置シーケンスは、以下の通りサブ・ブロック単位で生成される。
各サブ・ブロックSB(m,n)には、行/列の生成元シード対{a,b}SB(m,n)と、原位置シード対(ps1,ps2)SB(m,n)とが割り当てられる。行列Φが2次元よりも高い次元である場合は、生成元シード・セット内の要素の数および原位置シード・セット内の要素の数は等価であり、行列Φの次元の桁と等しい。生成元シード対{a,b}のaおよびbはそれぞれ、行位置および列位置の増分値に対応する。したがって、a=1である場合は、(i,j)に関する新しい位置iを計算する演算が終了したときに、iが1増分される(すなわち、i=(i+1))。同様に、b=1である場合は、(i,j)に関する新しい位置jを計算する演算が終了したときに、jが1増分される(すなわち、j=(j+1))。aおよびbの値を選択するときは、aおよびbは、Lと相対的に素であるように選択されることが望ましい。aおよびbの値は、各サブ・ブロック毎に相対的に一意であるように選択されることが望ましい。(n−1)≧ps1、ps2≧0とした場合の原位置シード対(ps1,ps2)SB(m,n)は、サブ・ブロックSB(m,n)内の初期の開始位置である。したがって、計算を開始するのにサブ・ブロックSB(m,n)内で選択される最初の位置(i,j)は、(i=ps1,j=ps2)となる。原位置シード対(ps1, ps2)SB(m,n)の値を選択するときは、値をランダムに生成することも予め定めることもできる。ただし、k=0,...,P−1とした場合の(k,j)および(i,k)の位置は、選択されない(これらの位置の値は、サブ・ブロックSB(1,1)内で0にセットされる)。
{a,b}SB(m,n)と(ps1,ps2)SB(m,n)とが各サブ・ブロックSB(m,n)に与えられた場合、行の索引iは、公式(1)の通り生成され、列の索引jは、公式(2)の通り生成される。
i=mod(mod(ps1,L)+{k}a,L)+floor(ps1,L)L)・・・(1)
j=mod(mod(ps2,L)+{k}b,L)+floor(ps2,L)L)・・・(2)
上式で、kは0〜L−1の値をとる。公式(1)および(2)において、「mod(●)」は、数学上の法関数であり、floor(●)は、数学上の床関数である(この場合、floor(x,y)=xをyで割った整数部)。k=0〜L−1に関する位置(i,j)が生成された後は、Lの位置が生成され、次いでps1が、公式(3)の通り更新される。
ps1=mod(mod(ps1,L)+1,L)+floor(ps1,L)L)・・・(3)
ps2の値は、一定のままである。
ps1の値が更新された後は、別のLの位置を生成するために、再びk=0〜L−1に関して公式(1)および(2)が評価される。この処理は、サブ・ブロックSB(m,n)内の全ての位置について繰り返される。初期の計算値を用いた公式(1)および(2)の評価と、ps1をL−1回更新する計算とを行う処理により、Lの位置がサブ・ブロック毎に生成される。
時間Tの各位置(i,j)は、やはり出力インターリーブ・ブロック内の位置に対応する各サブ・ブロックに関して生成される。したがって、例えば時間T=1〜T=Lの間のLの位置(i,j)シーケンスを生成すると、行列Φ内の位置が識別され、その値は、時間/位置T=1〜T=Lにおいて、出力インターリーブ・ブロックに挿入される(出力インターリーブ・ブロックが1次元シーケンスであるので、時間単位は、出力インターリーブ・ブロック内の位置と等しくすることができる)。
図4は、Nを3、Pを1とした場合の、図1の方法に従って形成された1つの例示的な行列を示している。この場合では、各サブ・ブロックは、単一ビットの値を含む。上述のように公式(1)、(2)、および(3)を評価すると、時間T=1では位置(1,1)が得られ、時間T=2では位置(2,2)が得られ、以下同様に、図5に示される通り位置が得られる。位置(0,0)の値は一般に、出力インターリーブ・ブロックには含まれない。
図1を参照すると、ステップ105で、(N+P)×(N+P)の行列Φがデータで満たされる。行列Φの各位置をデータ・ビットで埋める(関連付ける)には、いくつかの方法を利用することができる。埋め込みに関する各方法は、i)データ・ブロック中の互いに隣接するビットを新しい行列内で配分する際、および/またはii)出力ブロック内の高い誤りビット・パターンを回避する際には、異なる性能を示す可能性がある。例えば、データ・ビットは、第1のサブ・ブロックの各位置に順次挿入され、次いで、第2のサブ・ブロックの各位置に順次挿入され、以下同様に全てのサブ・ブロックが満たされるまで、挿入が行われてもよい。別法として、図6は、図2の行列を埋める1つの例示的な方法を示しており、この場合の入力ブロック・シーケンス内のデータ・ビットは、新しい行列においてまず第1のサブ・ブロックの第1の位置に、次いで第2のサブ・ブロックの第1の位置に順次挿入され、以下同様に全てのサブ・ブロックの第1の位置が満たされるまで、順次挿入されていく。次いで、データ・ビットは、新しい行列においてまず第1のサブ・ブロックの第2の位置に、次いで第2のサブ・ブロックの第2の位置に、以下同様に全てのサブ・ブロックの第2の位置が満たされるまで、新しい行列内に順次挿入されていく。挿入は、全てのサブ・ブロックが満たされるまで続けられる。
図4および5の例を参照すると、データ・ビットb1〜b9は、次のように行列内に挿入される。データ・ビットの値b1〜b3は、T=1〜T=3の間に識別された位置に挿入される。しかし、行列内のT=4の位置は、パリティ・ビット(p1)と関連付けられており、したがって、p1用に予約されている。次いで、データ・ビットb4およびb5が、T=5およびT=6の位置に挿入される。T=7の位置は、パリティ・ビット(p6)と関連付けられており、したがって、p6用に予約されている。同様の様式で、残りのデータ・ビットの挿入および残りのパリティ・ビットの予約が行われる。
ステップ106で、各行および各列に関連する誤り検出および訂正情報(例えば、パリティ値)が生成され、新しい行列内の対応する位置と関連付けられる。ステップ107で、行列Φ内の各位置に関連する値(例えば、パリティまたはデータ・ビットの値)が順次読み出されて、出力インターリーブ・ブロックが形成される。位置(i=0,j=0)のゼロの値は、出力インターリーブ・ブロックには挿入せずに破棄してもよい。
図7は、本発明の例示的な一実施形態に従って動作するインターリーバ700の例示的な一実装形態を示しており、この場合のサイズLのサブ・ブロックを有する行列(例えば、L=N=3かつP=1である図4および5の例など)に関しては、a=b=ps1=ps2=1である。入力データ・ブロックの各データ・ビットは、Lのデータ・ビットしか存在しない場合にも各データ・ビットが1〜L+2Lまでのカウンタ701の範囲をカバーするように、カウンタ701へと供給される。カウンタ701は、マッピング・ビットの値を生成し、その位置は、行符号化ロジック702および列符号化ロジック703によって判定される。行パリティ検査値計算機(row parity check value calculator)706は、行列内のL行のそれぞれに関するパリティ検査値を生成し、列パリティ検査値計算機(column parity check value calculator)707は、行列内のL列のそれぞれに関するパリティ検査値を生成する。行パリティ検査および列パリティ検査の値ならびにマッピング・ビット位置の値が、パリティ・アドレス・マッピング・ロジックへと供給される。次いで、パリティ・アドレス・マッピング・ロジック704は、マッピング・ビット位置の値に従って、入力データ・ビットならびに行パリティ・ビットおよび列パリティ・ビットの値で(L+2Lの長さの)レジスタ705を満たす調整を行う。
図8は、log(L+l)ビットを生成するmodulo(L+1)計算機801と、log(L+1)の各ビットをLビットに変換するLog L/L変換マッピング・モジュール(Log L to L mapping module)802とを利用する、図7の行符号化ロジック702を示している。例えば、L=3であるときに、計算機801からの出力が、1(10進数)であり、Log L/L変換マッピング・モジュール802以降のバイナリ形式がb’01である場合は、b’0001にマッピングされ、その最初の3つの0により、パリティ検査値計算機706の出力P_row_2、P_row_3、P_row_4がディスエーブルされ、最後の1により、パリティ検査値計算機706の出力P_row_1がイネーブルされる。同様に、b’10がb’0010にマッピングされると、P_row_2だけがイネーブルされ、b’11がb’0100にマッピングされると、P_row_3だけがイネーブルされる。
図9は、modulo(L+1)計算機901と、ビット・シフタLog(L+1)モジュール902とを利用する、図7の列符号化ロジック703を示している。modulo(L+1)計算機901の出力とビット・シフタLog(L+1)モジュール902の出力とが、コンバイナ905において組み合わされ、コンバイナ905の出力が、modulo(L+1)計算機901に加えられ、modulo(L+1)計算機901が、log(L+1)のビットを生成する。log(L+l)の各ビットは、Log L/L変換マッピング・モジュール904によってLビットに変換される。
図10は、本発明の例示的な一実施形態に従って動作するインターリーバ1002を含む送信機1000を示している。図10に示されるように、送信機1000は、インターリーバ1002へと供給される長さNのデータ・ブロックを生成する、データ生成器1001を含む。データ生成器1001が、積符号に従ってデータ・ブロックを生成する符号器を含んでいてもよく、あるいは、インターリーバ1002が、積符号による符号器を組み込んでいてもよい。インターリーバ1002は、本発明の例示的な一実装形態に従ってマッピングを行うことによってインターリーブ・ブロックを生成する。次いで、インターリーブ・ブロックは、復調器1003が復調信号を生成し、磁気記録媒体、光媒体、または無線伝送媒体などの通信媒体を介してその信号を送信するのに利用される。
図11は、本発明の例示的な一実施形態によるマッピングおよび逆マッピングをそれぞれ利用するインターリーバ1106ならびにデインターリーバ1102および1111を含む、受信機1100を示している。受信機1100を利用して、図10の送信機1000によって生成された信号を受信し、復号することができる。受信機1100は、受信信号の標本yを生成し、標本yは、検出器1101へと供給される。検出器1101は、i)検出シンボルに関する硬判定(HD)と、ii)対応する軟判定の信頼度情報(例えば、対数尤度比すなわちLLR)とを生成する軟出力ビタビ・アルゴリズム(SOVA)を利用して、標本yの入力シンボルを検出することができる。HDおよび信頼度情報(事前信頼度(a priori reliability)情報または軟判定(SD)として示される)が、デインターリーバ1102に供給され、送信機1000のインターリーバ1002によるインターリーブを逆に辿る逆マッピングが適用される。送信機1000のデータ生成器1001は、Kの積符号の積符号化を利用し、その場合には、受信機は、反復復号方法を利用することができる。したがって、HDおよび信頼度情報は、軟復号器1103(1)〜1103(K)によって実装されるKの軟復号シーケンス(各積符号につき1つ)に加えられる。
軟復号器1103(K)の出力は、復号データに関する1組の硬判定(HD)と共に、事後信頼度(a posteriori reliability)情報として示される、HDに関する対応する1組の信頼度の値も含む。これらのHDおよび事後信頼度の値は、復号の第1の繰返しにおける出力を含む。次いで、復号の第2の繰返しが実施される。次いで、送信機1000のインターリーバ1002によって利用されるのと同じマッピングに従って、HDと事後信頼度の値とが、遅延装置(delay)1009から供給された入力標本yのシンボルと順序が揃うようにインターリーブされる。入力標本y、インターリーブされたHD、および入力標本に関する新しい事前信頼度の値が、検出器1108へと供給される(これらはSOVAアルゴリズムに従って検出されてもよい)。検出器1101からの(事前)LLRと、インターリーブされたインターリーバ1106からの事後信頼度の値とに基づいて、(コンバイナ1107によって)新しい事前信頼度の値が生成される。
検出器1108は、入力標本yに関する新しい1組のHDと共に、対応する新しい信頼度の値も生成する。新しいSDは、コンバイナ1107から生成された事前信頼度の値を削除することによって(コンバイナ1110において)修正される。修正された新しい信頼度の値および対応するHDは、デインターリーバ1111によってデインターリーブされ、デインターリーバ1111は、デインターリーバ1102と同様の逆マッピングを適用する。次いで、デインターリーバ1111からのデインターリーブされた信頼度の値(SD)および対応するHDは、軟復号器1112(1)〜1112(K)による第2の反復復号に掛けられるが、これらの軟復号器は、軟復号器1103(1)〜1103(K)について上述したのと同様の様式で復号を行うことができる。軟復号器1112(K)の出力は、復号データ・ストリームとして供給される1組の新しいHDである。
本明細書では、2次元の正方行列を使用してマッピングを生成するものとして本発明が説明されているが、本発明はそのように限定されるものではなく、各次元の長さが異なっていてもよいD次元に拡張されてもよい。したがって、Dのデータ・ブロックの長さが、
Figure 2007533202
である場合は、長さ(N+P)の次元dを有するD次元の行列を生成することができ、上式で、各Nは正の整数であり、Nは必ずしも等しい値をとらない。同様に、各次元は、必ずしも同じ値P単位で増分する必要はなく、むしろ1≦d≦Dとした場合の対応する値P単位で増加させる必要がある。さらに、サブ・ブロックは、必ずしも長さLと一致させる必要はなく、むしろ(L)×(L)の行列と一致させる必要がある(あるいは、より高い次元では次元の長さをLとする必要がある)。当業者には明らかとなるように、本明細書に記載の様々な実施形態に関する様々な公式は、例示的なものであり、個々の行列サイズ、次元、およびサブ・ブロックのサイズに基づいて修正することができる。
本発明の例示的な一実装形態によるインターリーブは、バースト性チャネルを対象とする機能拡張版の単一および複数のビット誤り検出および訂正を可能にすることができる。この一般的なインターリーブ型マッピングの設計構造は、ある種の誤り発生パターンを所与の実装形態が回避することを可能とし、また、インターリーバ用のマッピングを生成する上で非常に優れた柔軟性をもたらすことが可能となる。
本発明は、通信媒体またはチャネル内をデータが通過するどのようなタイプの伝送システムでも利用することができる。本発明は、磁気記録または光記録に利用することも、有線/無線/光/非光ネットワークにおいて利用することもできる。
当業者には明らかとなるように、インターリーバまたはデインターリーバの様々な機能は、回路素子を用いて実装されても、デジタル領域においてソフトウェア・プログラムの処理ステップとして実装されてもよい。かかるソフトウェアは、例えばデジタル信号処理装置、マイクロ・コントローラ、あるいは汎用コンピュータで利用することができる。
本発明は、上記の方法を実施する方法および装置の形で実施することができる。本発明はまた、フロッピー(登録商標)・ディスケット、CD−ROM、ハード・ドライブ、他の任意のマシン読取り可能な記憶媒体など有形の媒体に実装され、コンピュータなどのマシンにロードされ当該マシンによって実行されたときに当該マシンが本発明を実施する装置となる、プログラム・コードの形で実施することもできる。本発明は、例えば記憶媒体に記憶されるものであれ、マシンにロードされかつ/または当該マシンによって実行されるものであれ、あるいは電線や電気ケーブル、光ファイバ、または電磁放射など何らかの伝送媒体を介して伝送されるものであれ、コンピュータなどのマシンにロードされ当該マシンによって実行されたときに当該マシンが本発明を実施する装置となる、プログラム・コードの形で実施することもできる。このプログラム・コードの各セグメントは、汎用プロセッサ上に実装されたときに、特定の論理回路と近似の動作をする一意のデバイスを提供するプロセッサと組み合わされる。
さらに、本発明の性質を説明するために記載され図示されている部分の詳細、材料、および構成には、当業者なら添付の特許請求の範囲に示される本発明の諸原理および範囲から逸脱することなく様々な変更を加えることができることが、理解されるであろう。
本発明の例示的な一実施形態によるインターリーブの方法を示す図である。 図1の方法に従って形成された行列を示す図である。 複数のサブ・ブロックに分割され、データおよび誤り検出/訂正情報に関連する部分を有する図2の行列を示す図である。 Nを3、Pを1とした場合の、図1の方法に従って形成された1つの例示的な行列を示す図である。 時間順序および関連する位置を含む、図4の行列の代わりに形成された新しい1つの例示的な行列を示す図である。 図2の行列を埋める1つの例示的な方法を示す図である。 本発明の例示的な一実装形態に従って動作するインターリーバの例示的な一実装形態を示す図である。 図7の行符号化ロジックを示す図である。 図7の列符号化ロジックを示す図である。 本発明の例示的な一実施形態に従って動作するインターリーバを含む送信機を示す図である。 本発明の例示的な一実施形態に従って動作するインターリーバとデインターリーバとを含む受信機を示す図である。

Claims (24)

  1. 信号処理の適用形態において、データ・ブロックのビットをインターリーブする方法であって、
    a)マッピングに従って、1より大きい整数であるDの次元を有し、次元dの長さを(N+P)とし、Pを正の整数とする行列における第1の1組の位置と前記データ・ブロックの値を関連付けるステップであって、前記行列の各位置は、対応する時間順序の値を有し、前記データ・ブロックの長さは、
    Figure 2007533202
    であるステップと、
    b)前記行列における第2の1組の位置に関連する誤り検出/訂正情報を生成するステップと、
    c)前記時間順序の値に従って前記行列の各位置に値を提供するステップと
    を含み、
    前記マッピングは、
    d)前記行列における1つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成するステップ
    によって定義される、
    方法。
  2. 前記ステップa)に関して、Dは2であり、P=P=Pであり、N=Nであり、前記行列は、(N+P)×(N+P)の正方行列であり、前記データ・ブロックの長さは、Nであり、前記ステップd)に関して、各サブ・ブロックは、(L)×(L)の行列であり、(N+P)をLで割ると正の整数が得られる、請求項1に記載の発明。
  3. 前記ステップd)に関して、前記位置シーケンスは、生成元シード・セット{a,b}SB(m,n)と原位置シード・セット(psl,ps2)SB(m,n)とを用いて各サブ・ブロックSB(m,n)毎に生成され、各位置の行の索引iと列の索引jとが、
    i=mod(mod(ps1,L)+{k}a,L)+floor(ps1,L)L)
    j=mod(mod(ps2,L)+{k}b,L)+floor(ps2,L)L)
    の通り生成され、
    上式で、kは0〜L−1の値をとり、「mod(●)」は数学上の法関数であり、floor(●)は数学上の床関数であり、次いでps1が、
    ps1=mod(mod(ps1,L)+1,L)+floor(ps1,L)L)
    の通り更新される、
    請求項2に記載の発明。
  4. 前記ステップd)は、aおよびbの値がLと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、aおよびbの値を選択するステップを含む、請求項3に記載の発明。
  5. 前記ステップd)は、前記生成元シード・セットの値が、それぞれ(L)×(L)の行列であり、Lを正の整数とする対応するサブ・ブロックの次元の長さLと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように、前記生成元シード・セットの値を選択するステップを含む、請求項1に記載の発明。
  6. 前記ステップa)に関して、前記誤り検出/訂正情報は、行型パリティ・ビットと列型パリティ・ビットとを含み、前記ステップd)は、1つまたは複数の初期の行位置および列位置の値をゼロにセットするステップを含む、請求項1に記載の発明。
  7. 前記ステップa)は、前記行列における前記サブ・ブロックに基づいて前記データ・ブロックの値を関連付ける、請求項1に記載の発明。
  8. 前記ステップa)は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、サブ・ブロックに関して予め定義された順に前記データ・ブロックの値を関連付ける、請求項7に記載の発明。
  9. 前記ステップa)は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、各サブ・ブロックに関して予め定義された位置番号の順に前記データ・ブロックの値を関連付ける、請求項7に記載の発明。
  10. 前記方法は、集積回路の形で実装されたプロセッサによって実施される、請求項1に記載の発明。
  11. 信号処理の適用形態において、インターリーブされた符号化データ・ブロックが信号として通信チャネル内を通過した後に、当該データ・ブロックをデインターリーブする方法であって、
    a)前記インターリーブされた符号化データ・ブロックを表す1組の値を検出するステップと、
    b)マッピングの反転に従って、前記インターリーブされた符号化データ・ブロックをデインターリーブするステップとを含み、前記符号化データ・ブロックは、
    c1)長さを
    Figure 2007533202
    とし、各Nを正の整数とするデータ・ブロックの値を、前記マッピングに従って、ある行列における第1の1組の位置と関連付けるステップであって、
    i)前記行列の各位置は、対応する時間順序の値を有し、
    ii)前記行列は、1より大きい整数であるDの次元を有し、次元dの長さは(N+P)であり、Pは正の整数であり、
    iii)前記マッピングは、前記行列における1つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成する前記ステップによって定義される、
    ステップと、
    c2)前記行列における第2の1組の位置に関連する誤り検出/訂正情報を生成するステップと、
    c3)前記インターリーブされた符号化データ・ブロックを形成するために、前記時間順序の値に従って前記行列の各位置に値を提供するステップと
    によってインターリーブされる、
    方法。
  12. 前記方法は、集積回路の形で実装された少なくとも1つのプロセッサによって実施される、請求項11に記載の発明。
  13. 信号処理の適用形態に関して、長さを
    Figure 2007533202
    とし、各Nを正の整数とするデータ・ブロックのビットを、符号化データ・ブロックにインターリーブする回路であって、
    1より大きい整数であるDの次元を有し、次元dの長さを(N+P)とし、Pを正の整数とする行列であって、各位置が対応する時間順序の値を有する行列における第1の1組の位置と、前記データ・ブロックの値を関連付けることによって、前記データ・ブロックの各要素へのマッピングを適用するように適合された第1の回路と、
    前記行列における第2の1組の位置に関連する誤り検出/訂正情報を生成するように適合された第2の回路と、
    前記時間順序の値に従って前記行列の各位置に値を提供するように適合された第3の回路と
    を備え、
    前記マッピングは、前記行列における1つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成するステップによって定義される、
    回路。
  14. Dは2であり、P=P=Pであり、N=Nであり、前記行列は、(N+P)×(N+P)の正方行列であり、前記データ・ブロックの長さは、Nであり、各サブ・ブロックは、L×Lの行列であり、(N+P)をLで割ると正の整数が得られる、請求項13に記載の発明。
  15. 前記位置シーケンスは、生成元シード・セット{a,b}SB(m,n)と原位置シード・セット(psl,ps2)SB(m,n)とを用いて各サブ・ブロックSB(m,n)毎に生成され、各位置の行の索引iと列の索引jとが、
    i=mod(mod(ps1,L)+{k}a,L)+floor(ps1,L)L)
    j=mod(mod(ps2,L)+{k}b,L)+floor(ps2,L)L)
    の通り生成され、
    上式で、kは0〜L−1の値をとり、「mod(●)」は数学上の法関数であり、floor(●)は数学上の床関数であり、次いでps1が、
    ps1=mod(mod(ps1,L)+1,L)+floor(ps1,L)L)
    の通り更新される、
    請求項14に記載の発明。
  16. aおよびbの値は、Lと相対的に素であるように、また、各サブ・ブロック毎に相対的に一意であるように選択される、請求項15に記載の発明。
  17. 前記生成元シード・セットの値は、各サブ・ブロックがL×Lの行列であり、Lが正の整数である場合は、前記長さLと相対的に素であるように選択され、各サブ・ブロック毎に相対的に一意であるように選択される、請求項15に記載の発明。
  18. 前記誤り検出/訂正情報は、行型パリティ・ビットと列型パリティ・ビットとを含み、1つまたは複数の初期の行位置および列位置の値は、ゼロにセットされる、請求項13に記載の発明。
  19. 前記第1の回路は、前記行列の前記サブ・ブロックに基づいて前記データ・ブロックの値を関連付ける、請求項13に記載の発明。
  20. 前記第1の回路は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、サブ・ブロックに関して予め定義された順に前記データ・ブロックの値を関連付ける、請求項19に記載の発明。
  21. 前記第1の回路は、前記行列における各サブ・ブロックの前記位置シーケンスに基づいて、各サブ・ブロックに関して予め定義された位置番号の順に前記データ・ブロックの値を関連付ける、請求項19に記載の発明。
  22. 前記回路は、集積回路の形で実装される、請求項13に記載の発明。
  23. 信号処理の適用形態に関して、インターリーブされた符号化データ・ブロックを復号する復号器を有し、
    前記インターリーブされた符号化データ・ブロックを表す1組の値を検出するように適合された検出器と、
    マッピングの反転に従って、前記インターリーブされた符号化データ・ブロックをデインターリーブするように適合されたデインターリーバとを備え、前記符号化データ・ブロックは、
    1)長さを
    Figure 2007533202
    とし、Nを正の整数とするデータ・ブロックの値を、前記マッピングに従って、ある行列における第1の1組の位置と関連付けるステップであって、
    i)前記行列の各位置は、対応する時間順序の値を有し、
    ii)前記行列は、1より大きい整数であるDの次元を有し、次元dの長さは(N+P)であり、Pは正の整数であり、
    iii)前記マッピングは、前記行列における1つまたは複数のサブ・ブロックに関して、生成元シード・セットと原位置シード・セットとに基づき、前記時間順序に従って位置シーケンスをサブ・ブロック単位で生成する前記ステップによって定義される、
    ステップと、
    2)前記行列における第2の1組の位置に関連する誤り検出/訂正情報を生成するステップと、
    3)前記インターリーブされた符号化データ・ブロックを形成するために、前記時間順序の値に従って前記行列の各位置に値を提供するステップと
    によってインターリーブされる、
    回路。
  24. 前記回路は、集積回路の形で実装される、請求項23に記載の発明。
JP2007507287A 2004-04-09 2004-04-09 サブ・ブロック・インターリーバおよびデインターリーバを有する多次元ブロック符号器 Expired - Fee Related JP4551445B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2004/011097 WO2005109653A1 (en) 2004-04-09 2004-04-09 Multidimensional block encoder with sub-block interleaver and de-interleaver

Publications (2)

Publication Number Publication Date
JP2007533202A true JP2007533202A (ja) 2007-11-15
JP4551445B2 JP4551445B2 (ja) 2010-09-29

Family

ID=34957398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007507287A Expired - Fee Related JP4551445B2 (ja) 2004-04-09 2004-04-09 サブ・ブロック・インターリーバおよびデインターリーバを有する多次元ブロック符号器

Country Status (5)

Country Link
US (1) US7640462B2 (ja)
EP (1) EP1733477B1 (ja)
JP (1) JP4551445B2 (ja)
KR (1) KR101297060B1 (ja)
WO (1) WO2005109653A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8042188B2 (en) * 2005-07-15 2011-10-18 Sony Corporation Information processing apparatus, information recording medium manufacturing apparatus, information recording medium, method and computer program
CN101563829B (zh) * 2006-06-01 2012-07-04 埃克弗洛普公司 数据中心不间断配电架构
US8707139B2 (en) 2006-10-18 2014-04-22 Kencast, Inc. Systems, methods, apparatus, and computer program products for providing forward error correction with low latency
US8209582B1 (en) * 2006-11-07 2012-06-26 Marvell International Ltd. Systems and methods for optimizing a product code structure
CN101159510B (zh) * 2007-11-16 2011-09-28 海能达通信股份有限公司 一种提高信息比特传输可靠性的方法
US8165595B2 (en) * 2008-01-25 2012-04-24 Samsung Electronics Co., Ltd. System and method for multi-stage antenna training of beamforming vectors
US8051037B2 (en) * 2008-01-25 2011-11-01 Samsung Electronics Co., Ltd. System and method for pseudorandom permutation for interleaving in wireless communications
US8418034B2 (en) * 2008-02-08 2013-04-09 Kencast, Inc. Systems, methods, apparatus and computer program products for highly reliable file delivery using compound and braided FEC encoding and decoding
KR101456299B1 (ko) * 2008-02-11 2014-11-03 엘지전자 주식회사 무선통신 시스템에서 인터리빙 방법
US8280445B2 (en) * 2008-02-13 2012-10-02 Samsung Electronics Co., Ltd. System and method for antenna training of beamforming vectors by selective use of beam level training
US8621319B2 (en) * 2009-12-14 2013-12-31 Electronics And Telecommunications Research Institute Method and apparatus for iterative determination of MIMO iterative receiver
KR101311504B1 (ko) 2009-12-14 2013-09-25 연세대학교 산학협력단 다중 입력 다중 출력 반복 수신기의 반복 결정 방법 및 장치
KR20120059806A (ko) * 2010-12-01 2012-06-11 한국전자통신연구원 에러 정정 부호의 생성방법, 복호 방법 및 그 장치
EP2688211A4 (en) * 2011-07-29 2014-08-06 Huawei Tech Co Ltd NESTING AND NESTING METHODS, NESTING AND DECORATING
US8910028B1 (en) * 2011-10-27 2014-12-09 Marvell International Ltd. Implementation of LLR biasing method in non-binary iterative decoding
CN102427398B (zh) * 2011-12-31 2014-05-14 兆讯恒达微电子技术(北京)有限公司 一种基于双向奇偶校验的纠检错方法和系统及装置
US9300329B2 (en) * 2012-11-08 2016-03-29 Sk Hynix Memory Solutions Inc. Turbo-product codes (TPC) with interleaving
US9160370B2 (en) * 2014-01-02 2015-10-13 Oracle International Corporation Single component correcting ECC using a reducible polynomial with GF(2) coefficients
KR101673892B1 (ko) 2015-07-15 2016-11-08 숭실대학교산학협력단 분산 거리를 보장하는 2차원 인터리빙 방법, 이를 수행하기 위한 기록 매체 및 장치
CN106559859B (zh) * 2015-09-30 2021-01-29 华为技术有限公司 一种终端接入方法及装置
US11716097B2 (en) * 2021-12-29 2023-08-01 Western Digital Technologies, Inc. Signal correction using soft information in a data channel

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04154222A (ja) * 1990-10-17 1992-05-27 Canon Inc 符号化及び復号化装置
JPH07262030A (ja) * 1994-03-17 1995-10-13 Toshiba Corp 誤り訂正符号化装置および誤り訂正符号化方法
JP2001067813A (ja) * 1999-07-08 2001-03-16 Samsung Electronics Co Ltd 高密度ディスクのためのエラー訂正方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0674395A3 (en) * 1994-03-17 1996-01-17 Toshiba Kk Device for coding an error correction code and method for coding error correction.
DE69527525T2 (de) * 1995-08-21 2003-04-03 Alcatel Sa Verfahren zur Schachtelung von Datenrahmen, Übertragungsfehlerkorrekturanordnung und Modulator damit
JPH1115642A (ja) * 1997-06-26 1999-01-22 Sony Corp スクランブル装置およびデスクランブル装置ならびにその方法
US6823488B1 (en) * 1998-08-27 2004-11-23 Texas Instruments Incorporated Packet binary convolutional codes
JP3871109B2 (ja) 1999-05-10 2007-01-24 株式会社エヌ・ティ・ティ・ドコモ インターリーブ方法及び送信装置
US7242726B2 (en) * 2000-09-12 2007-07-10 Broadcom Corporation Parallel concatenated code with soft-in soft-out interactive turbo decoder
US6973611B2 (en) * 2001-04-17 2005-12-06 Texas Instruments Incorporated Interleaved coder and method
US6392572B1 (en) * 2001-05-11 2002-05-21 Qualcomm Incorporated Buffer architecture for a turbo decoder
EP1359672A1 (en) 2002-05-03 2003-11-05 Siemens Aktiengesellschaft Method for improving the performance of concatenated codes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04154222A (ja) * 1990-10-17 1992-05-27 Canon Inc 符号化及び復号化装置
JPH07262030A (ja) * 1994-03-17 1995-10-13 Toshiba Corp 誤り訂正符号化装置および誤り訂正符号化方法
JP2001067813A (ja) * 1999-07-08 2001-03-16 Samsung Electronics Co Ltd 高密度ディスクのためのエラー訂正方法

Also Published As

Publication number Publication date
EP1733477A1 (en) 2006-12-20
US20070266274A1 (en) 2007-11-15
US7640462B2 (en) 2009-12-29
EP1733477B1 (en) 2013-06-19
JP4551445B2 (ja) 2010-09-29
WO2005109653A1 (en) 2005-11-17
KR20060135018A (ko) 2006-12-28
KR101297060B1 (ko) 2013-08-19

Similar Documents

Publication Publication Date Title
JP4551445B2 (ja) サブ・ブロック・インターリーバおよびデインターリーバを有する多次元ブロック符号器
US7849388B2 (en) Signal decoding method and device, and signal storage system
JP3610329B2 (ja) 大最小距離を用いたターボ符号化方法及びそれを実現するシステム
JP4788650B2 (ja) Ldpc復号装置およびその復号方法、並びにプログラム
US8205123B2 (en) Interleaver and de-interleaver for iterative code systems
US8239711B2 (en) QPP interleaver/de-interleaver for turbo codes
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
UA63024C2 (en) Turbo coder; method and device for interleaving data elements
JP5231570B2 (ja) プルーンインタリーバおよびプルーンデインタリーバの効率的なアドレス生成
JP2008537410A (ja) クラッシュフリーなイレギュラーリピートアキュムレート符号
CN1770639A (zh) 级联的迭代和代数编码
JP2008219892A (ja) データを符号化および復号化する方法および装置
US8832523B2 (en) Multi-state symbol error correction in matrix based codes
US6606718B1 (en) Product code with interleaving to enhance error detection and correction
US20090132897A1 (en) Reduced State Soft Output Processing
US8913336B2 (en) Constrained on-the-fly interleaver address generator circuits, systems, and methods
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
US20060174184A1 (en) Method and apparatus for encoding and decoding data using a pseudo-random interleaver
Panem et al. Polynomials in error detection and correction in data communication system
US9374109B2 (en) QPP interleaver/DE-interleaver for turbo codes
JP2004511179A (ja) 断片的脱インターリーブ
WO2009018184A1 (en) Syndrome-error mapping method for decoding linear and cyclic codes
WO2005053165A1 (en) Interleaving method for low density parity check encoding
JP3896841B2 (ja) インターリーブ処理方法及びインターリーブ処理装置
US7254771B1 (en) Error-erasure decoding of interleaved reed-solomon code

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090525

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090825

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091109

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: 20100616

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100709

R150 Certificate of patent or registration of utility model

Ref document number: 4551445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees