JP2008072247A - Ldpc復号器の演算制御データ生成方法及びldpc復号器 - Google Patents

Ldpc復号器の演算制御データ生成方法及びldpc復号器 Download PDF

Info

Publication number
JP2008072247A
JP2008072247A JP2006247334A JP2006247334A JP2008072247A JP 2008072247 A JP2008072247 A JP 2008072247A JP 2006247334 A JP2006247334 A JP 2006247334A JP 2006247334 A JP2006247334 A JP 2006247334A JP 2008072247 A JP2008072247 A JP 2008072247A
Authority
JP
Japan
Prior art keywords
column
data
row
numbers
storage memory
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
JP2006247334A
Other languages
English (en)
Other versions
JP4748007B2 (ja
Inventor
Jun Kametani
隼 亀谷
Daisuke Sakai
大輔 酒井
Takashi Kutsuzawa
敬 沓沢
Satoshi Kanazawa
聡 金沢
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006247334A priority Critical patent/JP4748007B2/ja
Publication of JP2008072247A publication Critical patent/JP2008072247A/ja
Application granted granted Critical
Publication of JP4748007B2 publication Critical patent/JP4748007B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

【課題】
任意の検査行列に対応した汎用のLDPC復号器を構成するため検査行列から演算に必要なデータのメモリからの読み出し、メモリへのデータの書き込み制御データを生成して汎用のLDPC復号器を実現する。
【解決手段】
付与した検査行列に対し、列毎の1のある行の算出、列番号と算出した列重みに相当する数の複数の行番号と1で示す接続情報を同一の行番号毎にグループ化したデータを生成し、α演算時のβ格納メモリからの読み出し、演算結果のα格納メモリへ書き込みのアドレス制御データとする。
【選択図】図1

Description

本発明は低密度パリティ検査符号(LDPC)の復号に係り、特に、任意の検査行列を与えた時のLDPC符号の復号化手順と復号化装置に関するものである。
低密度パリティ検査符号(Low Density Parity Code)は優れた特性から通信システムでのディジタル情報の伝送、蓄積システムへのディジタル情報の蓄積の符号化方式として知られている。
LDPC符号化方式は以下に述べる手順で符号化、復号化が行われる。
1)符号化
符号化する情報ビットをMビットとすると、MビットにKビットの検査ビットを加えたN=(M+K)ビットの符号を生成する。K行N列の生成行列を作成し、Nビットの情報かビットに生成行列を乗算する事によりNビットのLDPCの符号を生成できる。生成行列は任意の行列で良い。
2)復号化
復号化はM行N列のパリティ検査行列(以下検査行列と表示)を任意に生成し、NビットにLDPC符号化された情報に検査行列を乗ずることにより復号できる。
検査行列は行列要素「1」が少ない任意の行列を行列を定義すれば良い。適用する分野のLDPC符号語の性質により選定する。
検査行列はその行列の性質により特性が異なり、収束するまでの繰り返し演算の回数、LDPC符号語の性質に対応して適切な検査行列が異なっている。このため、検査行列を変えて特性を確認することが必要となる。
LDPC符号の復号方法として、設定した検査行列Kらsum−product法、あるいはMin−sum法による繰り返し演算を行い、繰り返し演算後の値より復号化信号を得る。Min−sum法を基にLDPC符号の復号方法について説明する。
図6はMin−sum法によるLDPC符号の復号を示す図である。LDPC符号をメッセージノードとチェックノードとの間でMin−sum法による逐次演算行い受信語を判定して復号する手順をタナーグラフにより示している。
タナーグラフはN個のメッセージノードとM個のチェックノードが検査行列の「1」の位置に対応して接続されたグラフである。タナーグラフは検査行列の列がメッセージノードに、行がチェックノードに対応している。
メッセージノードとチェックノードの接続は、検査行列のi行j列の要素が「1」の場合にj番目のメッセージノードとi番目のチェックノードが接続されていることになる。これより、1回のαmn、βmnの演算に必要な数は「1」の数により定まり、1つのαmnを算出する場合、m番目のチェックノードに接続されている全てのメッセージノードのβが必要となり、1つのβmnを算出する場合、n番目のメッセージに接続されている全てのチェックノードのαが必要となる。1回の演算に必要な回数は「1」の数、M×列重み数(=N×行重み数)依存する。ここで、列重みは1つの列に存在する1の数であり、行重みは1つの行に存在する1の数である。
復号の手順について説明する。
1)(式1)によりβmnを演算する。
αmnの初期値は「0」とし、λは(式3)に示すように入力語yである。ここで、αm’nの「m’」はβmnのmに一致するmは演算に含めないことを意味する。
2)(式2)によりαmnを演算する。
ここでβmn’の「n’」はβmnのnに一致するnは演算に含めないことを意味する。なお、sign(x)はx>=の場合、値が「1」とし、x<0の場合、値「0」とする。
3)(式4)で得たQを(式5)で判定して受信語yを決定する。
Figure 2008072247
Figure 2008072247
Figure 2008072247
Figure 2008072247
Figure 2008072247
図7はLDPC符号の復号手順を示す図である。図6で示したMin−sum法を例にしてLDPC符号の復号手順を示している。
S11:M行N列の検査行列を与える。
S12:LDPC符号情報y(n=1〜N)を得る。
S13:下記の初期設定を行なう。
ア.尤度λは受信語のy(n=1〜N)とし保持する。
イ.αmn=0と設定し、(m=1〜M、n=1〜N)とし保持する。
ウ.演算繰り返し回数をLとし、最大演算繰り返しLmaxと初期値L=0を設定する。
S14:(式1)によりβmnの演算の演算を行いβ格納メモリに保持する。
S15:(式2)によりαmnの演算の演算を行いα格納メモリ保持する。
S16、S17:設定した繰り返し回数まで演算を繰り返し、あるいは、繰り返し演算により演算結果が収束したと判断した場合に切り返し演算を終了する。
S18:(式4)、(式5)によりQの値より受信語(y)’を推定し決定する。
次にLDPC符号の復号に必要なα演算、β演算の規模は、前述したように1つの検査行列の「1」の数に依存する。
一方、LDPC符号を適用する通信システムでは符号長Nとして例えば、N=10,000語が必要であり、検査行列は5,000行10,000の検査行列の規模となる。検査行列の行重みを6、列重み3とすると検査行列「1」の数は30,000となる。1回のα演算に必要なβの数(1回のβ演算に必要なαの数)は30,000個となる。
これより、例えば、全て並列演算で実現する場合は30,000個のβから5,000個のα演算器を使用して(α演算器への入力を6入力として6個のβより1つのαの演算と仮定)αを算出する。また、α演算器への30,000へのβを同時に読み出し、また、その演算結果を格納するためのメモリへの書き込むための制御は複雑であり、演算器、メモリ間の配線接続の数は膨大となる。同様にβ演算に複雑、膨大である。また、可変の検査行列の場合はさらに複雑となる。
また、共通演算器で実現する場合においても演算器へのデータの入出力制御が膨大になる。検査行列を固定にする場合は配線、あるいは入出力制御が膨大としても1度設定すれば良い。しかしながら、LDPC符号を適用したシステムでは複数の検査行列を設定してシステムの性能を調べ、向上させる必要があり、可変の検査行列でのLDPC複合器が望まれる。
特許文献1では検査行列の要素「1」の位置を規則的に並べる検査行列の生成し、復号する技術が開示されている。しかしながら、任意の検査行列に対する復号化方法は述べられていない。
特開2005−340920号公報
解決しようとする課題は任意の検査行列に対応して汎用のLDPC復号器を構成するため検査行列から演算器、格納メモリの制御データの生成し、汎用のLDPC復号器がないことである。
第1の発明は、α演算器、α格納メモリ、β演算器、β格納メモリを有し、入力された検査行列に対し、α演算、β演算を繰り返し実行して復号を行なうLDPC復号器における演算器制御のデータを生成するLDPC復号器の演算制御データのデータ生成方法である。
演算制御データの生成方法は、前記検査行列の列毎に1のある行を抽出し、前記抽出行番号の数が最大列重みに不足する列番号にはダミーデータを付けた行番号データを生成し、前記生成行番号に対し順番を付けて列内番号として、列番号と列内番号の組み合わせに対し、ダミーデータが無い組み合わせには接続されている情報を表す接続情報をさらに組み合わせた配列を、ダミーデータのある列番号と列内番号の組み合わせには接続されていない情報を表す接続情報を組み合わせた配列を生成し、前記接続されている接続情報を有する配列を行番号を昇順にサーチして同一の行番号をグループ化し、前記グループ化した配列の数が最大行重みの数に不足する場合は、前記接続されていない接続情報を有する列番号と列内番号の組み合わせを不足する数だけ追加して行番号を昇順に、行番号グループ内では列番号を昇順に並べた文字列を生成し、前記生成した文字列をα演算時の前記β格納メモリからの読み出し、α演算結果の前記αメモリへの格納データ書き込みの制御データとする。
第2の発明は、第1の発明のデータ生成法である。
前記生成した文字列を前記β格納メモリ、及び前記α格納メモリのアドレス、メモリ領域選択のデータとする。
第3の発明は、α演算器、α格納メモリ、β演算器、β格納メモリを有し、入力された検査行列に対し、α演算、β演算を繰り返し実行して復号を行なうLDPC復号器である。
前記LDPC復号器は、前記検査行列の列毎に1のある行を抽出する手段と、、
前記抽出行番号の数が最大列重みに不足する列番号にはダミーデータを付けた行番号データを生成する手段と、前記生成行番号に対し順番を付けて列内番号として、列番号と列内番号の組み合わせに対し、ダミーデータが無い組み合わせには接続されている情報を表す接続情報をさらに組み合わせた配列と、ダミーデータのある列番号と列内番号の組み合わせには接続されていない情報を表す接続情報を組み合わせた配列を生成する手段と、前記接続されている接続情報を有する配列を行番号を昇順にサーチして同一の行番号をグループ化する手段と、前記グループ化した配列の数が最大行重みの数に不足する場合は、前記接続されていない接続情報を有する列番号と列内番号の組み合わせを不足する数だけ追加し行番号を昇順に行番号グループ内では列番号を昇順に並べた文字列を生成する手段と、を備える。
本発明により任意の検査行列に対する復号化を行うことができ、又、回路規模の少ない汎用のLDPC復号器が実現できる。
(実施例1)
図1は本発明のLDPC復号の演算器、メモリ制御データの生成手順を示す図である。設定した検査行列からMin−sum法でLDPC復号演算を行なう場合の演算制御のための格納メモリからのデータ読み出し、格納メモリへのデータ書き込みデータの生成手順示している。
1つの検査行列に対する前述の行重みは行毎に異なり、列重みも列毎に異なる。このため、今後の説明上最大の重みと行毎の重みを区別し、最大行重みをRw、最大の列重みをCwと記述する。
S1:検査行列(M行N列)を設定する。
S2:検査行列の列毎に「1」のある行を抽出する。ここで、抽出した行番号の数はCwの数ある。
S3:Cwに不足する列番号にはダミーデータを付け、全ての列番号に対しCwに相当する行番号の表を作成する。
なお、このデータは各列番号を昇順に、「1」の存在する行番号を昇順に並べてあり、行番号を「i」、列番号を「j」とするとβijに相当する。
S4:S3で生成した列番号毎の行番号に順番を付け列内番号とし、(列番号、列内番号)の配列を生成する。
S5:S4で生成した配列に接続情報を組み合わせた(接続情報、列内番号、列番号)の配列を生成する。
ア.ダミーデータがない場合:接続情報を0として(0、列内番号、列番号)の配列を生成する。接続情報「0」は接続している事を示している。この配列の意味は列番号のメッセージノードに行番号のチェックノードが接続し、その接続数は順番に番号付けした最大列内番号に相当していることを示している。
イ.ダミーデータがある場合:接続情報を1として(1、列内番号、列番号)の配列を生成する。接続情報「1」は接続していない事を示している。
S6、S7:S5のア.で生成した配列に対し、行番号を昇順にサーチし、その行番号毎にグループに分けた配列(0、列内番号、列番号)を生成する。
列重みは個々の列により異なるので、配列の数をCwの個数に合わせて同一にするため、Cwに不足する行グループについてはS5のイ.で生成した配列を各行番号グループの配列の後ろに設定する。方法はCwに足りない各行番号グループについてダミーデータのあるS5のイ.の配列から列番号を昇順に埋める。ダミーデータの生成手順より数は過不足なく一致する。説明は省略する。
S8:S7で生成した配列に対し、行番号を昇順に、行番号グループ内では列番号を昇順に文字列を生成する。
なお、このデータは行番号グループ毎に接続情報、列内番号、列番号を示す文字列がダミーデータと併せCwの数ある。先頭の接続情報が「0」の場合、行番号のチェックノードと列番号で示すメッセージノードが接続されていることを示している。また、行番号を「i」、列番号を「j」とするとαijに相当する。
S9:S8で生成した文字列をLDPC復号器のα演算時のメモリのアドレス制御データとする。
生成文字列とα演算時でのα格納メモリ、β格納メモリのアドレス制御については後述する。
図2は本発明のLDPC復号器の構成を示す図である。付与した検査行列2に対し、LDPC復号器1は復号器基本部10、制御データ生成部20で構成する。復号器基本部10は、λ格納メモリ11、α格納メモリ12、β格納メモリ13とβ演算器14、α演算器15、α格納メモリ入出力制御部16、β格納メモリ入出力制御部17、受信語(Q)判定部18で構成する。ここでは基本部分のみを示し、実際のハードウエア構成に必要となるクロック、入出力インタフェースなどは省略している。なお、検査行列に対するLDPC復号の特性確認の例えば、特性試験機を構成する場合は制御データ生成部を復号器基本部と併せて構成しても良い。
λ格納器11は受信したyをλとして保持し、β演算器に入力される。α格納メモリ12、β格納メモリ13は各々、前述の手順で生成したデータαmn、βmnを格納し、逐次演算に伴い書き込みと読み込みが行なわれる。
β演算器14は、λ格納メモリ11からのλ、α格納メモリ12からのαmnにより(式1)に示す加算演算が行われる。
α演算器15は、β格納メモリ13からのβmnにより(式2)に示す(乗算、絶対値変換、最小値選択)が行なわれる。
また、受信語の長さNとすると、λ格納メモリの容量はN個のデータを保持し、α格納メモリ12、β格納メモリ13の容量はNの数、重みの数から確保する。図2の例では全ての列の列重みをCwとし、列番号を昇順にαmn、βmnを格納した場合の例を示している。
図3は本発明のLDPC復号の演算器、メモリ制御データ生成例を示す図である。検査行列を設定し、Min−sum法でLDPC復号演算を行なう場合の演算器、メモリに入力するデータの生成手順示している。以下では行番号、列番号、列内番号は便宜上「0」からカウントする。図1のステップ番号に対応した番号を括弧付きステップ番号で示す。
1)行重み6、列重み3の5行10列の検査行列とする。この場合、Cw=6、Rw=3となる。(S1)
2)0列目は1行、2行、4行に1があるので、(1、2、4)となり、1列目は(0、1、2)となる。また、4列目は2行、4行に1があるだけであるので、ダミーデータのDを付け(2、4、D)となる。(S2、S3)
なお、0列は(1、2、4)よりβm0を算出するに必要なα10、α20、α40を示している。
3)列番号0については3ケの行番号1、2、4に対し(0、1)、(1、2)、(2、4)の配列を得る。同様に列番号1は(0 0)、(1、1)、(2、2)となる。列番号3はダミーデータDがあるので、(0 2)、(1、4)、(2、D)となる。(S4)
4)ダミーデータが無い場合:4)で生成した配列に対し、例えば列番号0に対する配列は(0、0、0)、(0、1、0)、(0、2、0)となる。(S5のア.)
5)ダミーデータがある場合:(列内番号、列番号)の組み合わせに1を加えて(1、2、3)、(1、2、4)、(1、2、6)、(1、2、8)、(1、2、9)の配列を生成する。以下説明は省略する。(S5のイ.)
6)例えば、行番号0のグループについては(0、0、1)、(0、0、2)、(0、0、6)、(0、0、8)、(0、0、9)の5ケの元配列となりCw=6に1ケ不足するので、ダミーデータの(1、2、3)を加えた配列となる。以下説明は省略する。(S6、S7)
7)α演算時のβ格納メモリからの読み込み、α格納メモリへの書き込み制御のデータとして‘001’‘002’‘006’‘008’‘009’‘123’で始まり‘025’‘027’‘129’で終わるデータを得る。
生成手順で分るように例えば、先頭の6個の各文字列最終項(c)の1、2、6、8、9はα0nの演算に必要なβ01、β02、β06、β08、β09と最後の行重みRw=6に不足するダミーデータを示している。この制御データと格納メモリに関係については後述する。(S8、S9)
図4は本発明のα演算器、β演算器の構成例を示す図である。検査行列の最大行重みRw6、最大列重みCw=3を前提としたα演算器、β演算器の構成例を示している。
1)α演算器
乗算器1 20、乗算器2 21、絶対値変換部22、最小値変換部23で構成し、6個のβから6個のαを演算する。検査行列の1つの行毎に生成した6個のβを入力して6個のαを算出する。この6個のαは3クロックで2個ずつ6個をβ格納メモリから読み出し、6個のβの乗算結果と6個のβの絶対値変換後選択した最小値と乗算して6個のαを算出する。例えば、β01、β02、β06、β08、β09、ダミーデータより、
α01:β02、β06、β08、β09
α02:β01、β06、β08、β09
α06:β01、β02、β08、β09
α08:β01、β02、β06、β09
α09:β01、β02、β06、β08
の6個のαを得る。この6個のαを3つのメモリで構成するα格納メモリに各々格納する。格納アドレスは生成順とする。α格納メモリについては図5で述べる。
2)β演算器
加算器24で構成し、3個のαと1つのλから3個のβを演算する。β格納メモリから3個のβとλ格納メモリからλを1クロックで読み出しβを算出する。例えば、α10、α20、α40とλよりβ10、β20、β40の3個のβを得る。β格納メモリの1つのアドレスに格納する。β格納メモリ及び格納方法については図5で述べる。
図5は本発明の検査行列一例での生成制御データと格納メモリの例を示す図である。検査行列に対して生成した制御データとα格納メモリ、β格納メモリの内容を示している。なお、図3の説明と同様に行、列のカウントは便宜上0からとする。
1)検査行列
図3に示した検査行列(Rw=6、Cw=3)の5行10列の検査行列である。
2)生成制御データ
図3の5)で生成した制御データを2個ずつ2系にし、α演算時のβ格納メモリからの必要なβの読み出しと演算結果のα格納メモリへの書き込みに使う。
2つの系を各々ポート1、ポート2とし、3個の数値a、b、cを以下として処理する
a:βの有無(β有=0、β無し=1)
b:RAM選択のRAMセレクト
c:格納メモリのアドレス
実際のハードウエア構成では文字列を16進法で扱うためにHEX変換を行なうが、ここではこのままで説明する。
3)α格納メモリ
1ポートのRAM3個で構成する。各RAMの内容は図5の3)のように検査行列の「1」位置で定まるαmnをダミーデータ(後述するようにダミーデータは数0とする。)を含め格納する。例えば、RAM1にαm0、α01、α02で始まりα08、α09で終わるαを格納する。RAM2、RAM3についても同様に格納する。β演算時は各RAMのアドレス0から順次読み出し、図3のβ演算器に入力する。
4)β格納メモリ
2ポートのRAM1個で構成し、1つアドレスを3つの領域に分け、図5の4)のように検査行列の「1」位置で定まるβmnをダミーデータ(後述するようにダミーデータはβ最大値0とする。)を含め格納する。例えば、領域0にはβ10、β01、β02で始まりβ08、β09で終わるデータを領域0に格納する。領域1、領域2への格納についても同様に格納する。
β演算は3個のβが同時に算出されるので、3つのα格納メモリにβが算出された順番にRAM1、RAM2、RAM3に且つアドレス0から順番に書き込む。
次に2)で示す生成制御データを基に、α演算時のβ格納メモリからの必要なβの読み出し、演算結果のα格納メモリへの書き込みを中心に演算手順を述べる。
1)β演算
β演算はα格納メモリの3個のRAMよりアドレス順に読み出し、各メッセージノードに接続されたβを算出する。ここで、前述したようにαの初期値は全て「0」に設定しているので、1回目のβはλに同一である。例えば以下となる。
3個のRAMのアドレス「0」のα10、α20、α40よりβ10、β20、β40を算出し、β格納RAMのアドレス「0」に書き込む。β演算結果は演算結果の順番にアドレス順に書き込む。
2)α演算
α演算は1クロックに2個のβを読み出し3クロックで1つのチェックノードに接続する6個のβより算出する。6個のβから6個のαを算出し、1クロックに1個ずつ出力する。最大行重みRw=6に満たない行については図3で生成した制御データのダミーデータをβの最大値としておき最小値選択に影響をしないようにする。同様に最大列重みCw=3に満たない列については図3で生成した制御データのダミーデータに数0を設定して加算演算に影響がないようにする。
この演算に必要なRAMアドレス、データ選択、RAM選択(読み込みの場合はRAMの領域に対応させる)β有無を制御データで指定する。例えばα0jの演算は以下となる。なお、図5の制御データを上から順に0番目から始まり14番目までとして表現する。
(1)β格納メモリからβの読み出し
ア.0番目のデータ=001、002
ポート0:c=1よりアドレス=1、b=0よりRAMの領域0として、β01を読み出し、βの有無のデータ「0」よりデータ有とする。以下では(ポート番号、アドレス番号、RAM領域、β有無の「0」あるいは「1」、βij)として(ポート0、1、0、0、β01)と表現する。
(ポート1、2、0、0、β02
イ.1番目のデータ=006、008
(ポート0、6、0、0、β06
(ポート1、8、0、0、β08
ウ.2番目のデータ=009、123
(ポート0、9、0、0、β09
(ポート1、3、1、2、最大値)この場合、接続情報がないダミーデータであるので、最大値を読み出す。
この結果、読み出したβ01、β02、β06、β08、β09よりα01、α02、α06、α08、α09を算出する。
(2)α格納メモリへαの書き込み
ア.0番目のデータ=001、002
RAM0(b=0)のアドレス1(c=1)にα01を書き込む。以下では(RAM0、1、α01)と表現する。
(RAM0、2、α02
イ.1番目のデータ=006、008
(RAM0、6、α06
(RAM1、8、α08
ウ.2番目のデータ=009、123
(RAM0、9、α09
(RAM1、2、数0)この場合、接続情報がないダミーデータであるので、数0を書き込む。
これによりβ演算後にα格納メモリの各RAMからアドレス順に読み出すことができる。
以上述べたように図3で生成したデータよりβ格納メモリからの読み出し、α格納メモリへの書き込みを図3で生成した制御データで制御できる。
本発明のLDPC復号の演算器、メモリ制御データの生成手順を示す図である。 本発明のLDPC復号器の構成を示す図である。 本発明のLDPC復号の演算器、メモリ制御データ生成例を示す図である。 本発明のα演算器、β演算器の構成例を示す図である。 本発明の検査行列一例での生成制御データと格納メモリの例を示す図である。 Min−sum法によるLDPC符号の復号を示す図である。 LDPC符号の復号手順を示す図である。
符号の説明
1 LDPC復号器
2 検査行列
10 復号基本部
11 λ格納メモリ
12 α格納メモリ
13 β格納メモリ
14 β演算器
15 α演算器
16 α格納メモリ入出力制御部
17 β格納メモリ入出力制御部
18 受信語(Q)判定部
20 乗算器1
21 乗算器2
22 絶対値変換部
23 最小値選択部
24 加算器

Claims (3)

  1. α演算器、α格納メモリ、β演算器、β格納メモリを有し、入力された検査行列に対し、α演算、β演算を繰り返し実行して復号を行なうLDPC復号器における演算器制御のデータを生成するLDPC復号器の演算制御データのデータ生成方法であって、
    前記検査行列の列毎に1のある行を抽出し、
    前記抽出行番号の数が最大列重みに不足する列番号にはダミーデータを付けた行番号データを生成し、
    前記生成行番号に対し順番を付けて列内番号として、列番号と列内番号の組み合わせに対し、ダミーデータが無い組み合わせには接続されている情報を表す接続情報をさらに組み合わせた配列を、ダミーデータのある列番号と列内番号の組み合わせには接続されていない情報を表す接続情報を組み合わせた配列を生成し、
    前記接続されている接続情報を有する配列を行番号を昇順にサーチして同一の行番号をグループ化し、
    前記グループ化した配列の数が最大行重みの数に不足する場合は、前記接続されていない接続情報を有する列番号と列内番号の組み合わせを不足する数だけ追加して行番号を昇順に、行番号グループ内では列番号を昇順に並べた文字列を生成し、
    前記生成した文字列をα演算時の前記β格納メモリからの読み出し、α演算結果の前記α格納メモリへの格納データ書き込みの制御データとすることを特徴とするデータ生成方法。
  2. 請求項1記載のデータ生成法であって、
    前記生成した文字列を前記β格納メモリ、及び前記α格納メモリのアドレス、メモリ領域選択のデータとすることを特徴とする請求項1記載のデータ生成方法。
  3. α演算器、α格納メモリ、β演算器、β格納メモリを有し、入力された検査行列に対し、α演算、β演算を繰り返し実行して復号を行なうLDPC復号器であって、
    前記検査行列の列毎に1のある行を抽出する手段と、
    前記抽出行番号の数が最大列重みに不足する列番号にはダミーデータを付けた行番号データを生成する手段と、
    前記生成行番号に対し順番を付けて列内番号として、列番号と列内番号の組み合わせに対し、ダミーデータが無い組み合わせには接続されている情報を表す接続情報をさらに組み合わせた配列と、ダミーデータのある列番号と列内番号の組み合わせには接続されていない情報を表す接続情報を組み合わせた配列を生成する手段と、
    前記接続されている接続情報を有する配列を行番号を昇順にサーチして同一の行番号をグループ化する手段と、
    前記グループ化した配列の数が最大行重みの数に不足する場合は、前記接続されていない接続情報を有する列番号と列内番号の組み合わせを不足する数だけ追加し行番号を昇順に行番号グループ内では列番号を昇順に並べた文字列を生成する手段と、
    を備えたLDPC復号器。
JP2006247334A 2006-09-12 2006-09-12 Ldpc復号器の演算制御データ生成方法及びldpc復号器 Expired - Fee Related JP4748007B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006247334A JP4748007B2 (ja) 2006-09-12 2006-09-12 Ldpc復号器の演算制御データ生成方法及びldpc復号器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006247334A JP4748007B2 (ja) 2006-09-12 2006-09-12 Ldpc復号器の演算制御データ生成方法及びldpc復号器

Publications (2)

Publication Number Publication Date
JP2008072247A true JP2008072247A (ja) 2008-03-27
JP4748007B2 JP4748007B2 (ja) 2011-08-17

Family

ID=39293473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006247334A Expired - Fee Related JP4748007B2 (ja) 2006-09-12 2006-09-12 Ldpc復号器の演算制御データ生成方法及びldpc復号器

Country Status (1)

Country Link
JP (1) JP4748007B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278184A (ja) * 2007-04-27 2008-11-13 Sony Corp 復号装置
CN101977063A (zh) * 2010-11-01 2011-02-16 西安空间无线电技术研究所 一种通用型ldpc译码器
CN108683424A (zh) * 2018-08-02 2018-10-19 华侨大学 全并行双向递归流水线ldpc编码器及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004531972A (ja) * 2001-06-15 2004-10-14 フラリオン テクノロジーズ,インコーポレーテッド Ldpc符号を復号する方法と装置
JP2007110265A (ja) * 2005-10-11 2007-04-26 Samsung Electronics Co Ltd 復号装置および復号方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004531972A (ja) * 2001-06-15 2004-10-14 フラリオン テクノロジーズ,インコーポレーテッド Ldpc符号を復号する方法と装置
JP2007110265A (ja) * 2005-10-11 2007-04-26 Samsung Electronics Co Ltd 復号装置および復号方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278184A (ja) * 2007-04-27 2008-11-13 Sony Corp 復号装置
JP4743156B2 (ja) * 2007-04-27 2011-08-10 ソニー株式会社 復号装置
US8205130B2 (en) 2007-04-27 2012-06-19 Sony Corporation Decoding apparatus
CN101977063A (zh) * 2010-11-01 2011-02-16 西安空间无线电技术研究所 一种通用型ldpc译码器
CN108683424A (zh) * 2018-08-02 2018-10-19 华侨大学 全并行双向递归流水线ldpc编码器及方法
CN108683424B (zh) * 2018-08-02 2023-05-30 华侨大学 全并行双向递归流水线ldpc编码器及方法

Also Published As

Publication number Publication date
JP4748007B2 (ja) 2011-08-17

Similar Documents

Publication Publication Date Title
US7917835B2 (en) Memory system and method for use in trellis-based decoding
WO2018022821A1 (en) Memory compression in a deep neural network
CN107786211B (zh) 一种ira-qc-ldpc码的代数结构获取方法、编码方法和编码器
JP2007215089A (ja) 復号装置及び復号方法
KR102019893B1 (ko) 저밀도 패리티 검사 부호를 지원하는 통신 시스템에서 신호 수신 장치 및 방법
CN111985602A (zh) 神经网络计算设备、方法以及计算设备
JP4748007B2 (ja) Ldpc復号器の演算制御データ生成方法及びldpc復号器
CN113885831A (zh) 基于混合数据输入的存算一体电路、芯片及计算装置
JP2003296302A (ja) 行列演算処理装置
KR20190024690A (ko) 연상 메모리에서의 최소값-최대값 계산 방법
WO2024066561A1 (zh) 查找空闲存储的装置、方法及芯片
CN104185952A (zh) 处理迭代解码器的初级检验节点
CN111313912A (zh) 一种ldpc码编码器及编码方法
CN109871563B (zh) 一种复杂多态卫星系统可靠性分析方法及系统
KR102555621B1 (ko) 메모리 내의 컴퓨팅 회로 및 방법
US11165615B2 (en) Data shifting operation apparatus and method having multiple operation modes
JP2022074442A (ja) 演算装置および演算方法
WO2015133095A1 (ja) パリティ検査符号生成装置、符号化方法、符号化装置および記録媒体
CN106209115A (zh) 一种数据处理方法及电子设备
CN115765750B (zh) 数据循环移位方法和电路、以及芯片
JP4011015B2 (ja) Lut符号化方法及びlut符号化装置並びにlutカスケード論理回路
US8117507B2 (en) Decompressing method and device for matrices
KR20160057590A (ko) 공통 부분식 소거 방법 및 이를 이용한 필터
CN112332859B (zh) 低复杂度的多元ldpc码校验节点单元及数字通信设备
CN108540138B (zh) 一种csraa编码电路及编码器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110304

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110502

R150 Certificate of patent or registration of utility model

Ref document number: 4748007

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees