JP4910708B2 - 復号装置および復号方法 - Google Patents
復号装置および復号方法 Download PDFInfo
- Publication number
- JP4910708B2 JP4910708B2 JP2007000535A JP2007000535A JP4910708B2 JP 4910708 B2 JP4910708 B2 JP 4910708B2 JP 2007000535 A JP2007000535 A JP 2007000535A JP 2007000535 A JP2007000535 A JP 2007000535A JP 4910708 B2 JP4910708 B2 JP 4910708B2
- Authority
- JP
- Japan
- Prior art keywords
- index
- address
- data
- input
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Description
このようにして行列Hのランク分対角化が行われた結果得られる新たなパリティ検査行列Hnewを用いて、信頼性伝播(BP)による信頼性の更新を行う。
信頼性伝播(BP)はタナーグラフのエッジに沿ってメッセージを行き来させることによって実現される。
行列の各列に対応するノードを可変(variable:バリアブル)ノード1、各行に対応するノードを検査(check:チェック)ノード2と呼ぶ。
この信頼性伝播(BP)によるLLRの更新は事前に用意された繰り返し停止条件を満たすまで、たとえば最大繰り返し数ItHに達成するまで繰り返される。
また、LLRを更新する列は、全ての列を対象とせずとも一部の列、たとえば対角化の対象となった列についてのみ行ってもよい。
これを内側繰り返し復号と呼ぶ。このLLRの更新は事前に用意された内側繰り返し復号停止条件SC1を満たすまで繰り返される。
これを外側繰り返し復号と呼ぶ。このLLR更新は事前に用意された外側繰り返し復号停止条件SC2を満たすまで繰り返される。
今、対象となる線形符号がReed−Solomon符号であった場合、繰り返し復号停止条件SC1、SC2として、たとえば以下のものが考えられる。
(B) 限界距離復号成功または繰り返し数t≧N、
(C) Koetter−Vardy軟判定リスト復号成功または繰り返し数t≧N。
また、復号方法として、たとえば以下のものが考えられる。
(b) 限界距離復号
(c) Koetter−Vardy軟判定リスト復号
変換した順序に応じてパリティ検査行列の対角化を行い(ST3)、このパリティ検査行列を用いて信頼性伝播(BP)を行う(ST4)。
次に、LLRを計算し(ST5)、計算したLLRの信頼性順を探索し(ST6)、復号を行い、復号語をリストへ追加する(ST7)。
そして、繰り返し復号停止条件N1,N2を満足するまで以上の処理を繰り返す(ST8、ST9)。
そして、復号語を1つ選択する(ST10)。
しかし、このソート装置をどうやって実現するかについては特に提案されていない。
さらにまた、ソートの方法には、選択整列法、挿入整列法、シェルソートなど様々な方法がある。
以上から、上記制約条件やABP復号特有の特徴に適したソート装置とその方法を決めることは簡単ではない。
入力完了後、あるデータに対応するバッファのアドレスからインデックスを読出し、さらにそのインデックスをアドレスとしてインデックスメモリから読み出されたインデックスを取得しまたそのインデックスをアドレスとしてインデックスメモリに与えることを繰り返すと、連続的に同じ大きさのインデックスが取得される。
ABP復号は、リードソロモン(Read−Solomon:RS)符号やBCH符号、その他低密度でないパリティ検査行列を持つ線形符号に対する復号法であり、ある伝送路から符号語を受信すると、その受信語をより信頼できる値に更新する。
ここで言う畳み込み符号の軟出力復号とは、たとえばBCJRアルゴリズムやSOVAによる復号のことである。
ABP復号器16においては、ABPによる信頼性の更新後、硬判定後限界距離復号、リスト復号、もしくは、軟値をそのまま入力として軟判定リスト復号を行う。
この復号器20は、図4に示すように、ABP復号部21、限界距離復号(BD)復号部22、受信信頼度(LLR)保持部23、およびMAP復号部24を有している。
列インデックスS31は、入力された受信LLRの符号語の始まりからカウンタで0、1、2、3、、とカウントアップされた値を生成し利用する。
ソート入力選択部31で、初回は、列インデックスS31と受信LLRS32を選択し、繰り返し二回目以降は信頼性伝播(BP)後、更新LLRS40とその列インデックスS39を選択する。
次に、信頼度の低いシンボルに対応する列より順に、対角化部33でパリティ検査行列の対角化を行う。
最後に、対角化されたパリティ検査行列を用いて、信頼性伝播(BP)を行うことにより、値が更新される。
更新された値に対して、再びソート、対角化、信頼性伝播(BP)を行う。繰り返し数が予め決められており、その繰り返し数だけこれを繰り返す。
図6は、本発明の第1の実施形態に係るABP復号器の逆写像ソート装置の構成例を示す図である。
本実施形態は、ABP復号繰り返し二回目以降に全列のインデックスとLLRが改めて入力される、つまり一回のデータとインデックスの入力系列は繰り返しごとに完結する場合の例である。
本実施形態においては、入力されるデータS11とインデックスS13を内部で処理する。入力データS11は、受信LLRに対応し、実際には、LLRの絶対値どうしを比較するので、入力後絶対値に直されるものとする。
まず、バケツメモリ321の初期値として存在しないインデックスを保持しておく。入力が開始されると、入力データS11を読出しアドレスS14としてバケツメモリ321から読み出したインデックスS15を、入力インデックスS13をアドレスS16としてインデックスメモリ322に書き込む。また、入力データS11をアドレスS14として入力インデックスS13をバケツメモリ321に書込む。
入力が完了すると、データが同じ大きさのインデックス系列を読み出す時は、バケツメモリ321の対応するアドレスからインデックスS15を読出し、それをアドレスS16としてインデックスメモリ322に与え、存在しないインデックスにたどりつくまで連続的(芋づる式)に読み出したインデックスS17をアドレスS16としてインデックスS17を読出すことを繰り返す。
データ順に全ての入力インデックスを読出す時は、バケツメモリ321のアドレスADR0のインデックスをアドレスとしてインデックスメモリ322からインデックスS17を読出し、このインデックスS17をアドレスS16として再びインデックスメモリ322からインデックスS17を読出し、同様にインデックスを連続的(芋づる式)に取得し、存在しないインデックスにたどり付けば、次のバケツメモリ321のアドレスのインデックスに移って同様の操作をバケツメモリ321の最後まで行う。
今回は、LLRの絶対値は、0,1,2のどれかをとるものとし、インデックスは、符号長が6なので、0、1、2、3、4、5の値を取る。入力として、データS11={2,0,1,2,1,2}、インデックスS13={0,1,2,3,4,5}が入力された場合を考える。
これで、ソートは完了である。
今回は、3×6行列なので、対角化回路に、対角化対象となるインデックスを3列出力する。0、1、2のデータに対応するインデックス系列を順に読出し、計3列読み出された時点で読出しを完了する。
次の繰り返し結果のデータS11とインデックスS13が入力される前にバケツメモリ321を存在しないインデックス6に初期化しておけば、次の入力に対応できる。
この操作は、バケツメモリ321のアドレスの数、つまりはデータの種類、大きさが多く、インデックスの種類が少ない際に起こりやすい、多くのバケツメモリ321の中身が空の場合、つまりは存在しないインデックスで占有されている場合に有効である。
図18は、本発明の第1の実施形態に係るABP復号器の逆写像ソート装置の構成例を示す図である。
ABP復号では、一部の、対角化部に出力した列インデックスのみLLRを更新する復号法もあるので、この場合、二回目の繰り返し以降は、一部のLLRが更新されたインデックスしか入力されない。
このように、書込みデータ選択部326は、入力インデックスS13とインデックスメモリ322からの読出しインデックスS17を選択する部位である。
書込みデータ選択部326は、入力時に入力インデックスS13を、出力時にインデックスメモリ322の読出しインデックスS17を選択する。
また、出力インデックスS18に存在しないインデックス6が読み出されたので、次からデータ1のインデックスを読み出す。
既に3列読み出されたのでこの時点で出力は完了するが、最後に図24に示すように、バケツメモリ321のアドレスADR1に読出しインデックスS17として6を書き込んでおく。これによりメモリ内部のインデックス順の情報の更新も完了する。
二回目の繰り返しの入力は、データS11={1,0,2}、インデックスS13={1,4,2}と入力された場合を考える。
図27および図28に示すように、列インデックス4、2についても同様に行う。入力はこれで完了である。
繰り返しを重ねても、常にインデックスを出力するたびに上記の通りバケツメモリ321を更新すれば、LLRが更新された一部のインデックスのみ入力される場合に適応できる。
なお、ソート処理が完了後、インデックス読出しまでに待ち時間が存在した場合、所望のインデックス列を前もって読み出しておけばよい。この操作は、バケツメモリ321のアドレスの数、つまりはデータの種類、大きさが多く、インデックスの種類が少ない際に起こりやすい、多くのバケツメモリ321の中身が空の場合、つまりは存在しないインデックスで占有されている場合に有効である。
入力完了後、あるデータに対応するバケツメモリのアドレスからインデックスを読出し、さらにそのインデックスをアドレスとしてインデックスメモリから読み出されたインデックスを取得しまたそのインデックスをアドレスとしてインデックスメモリに与えることを繰り返すと、連続的に同じ大きさのインデックスが取得される。
また、このインデックス取得をデータの大きさ順に行うとソートされたインデックスが読み出される。
この逆写像ソート装置を利用することにより、ABP復号では、後段の対角化装置が望むタイミングで即座にインデックスを供給することができ、また、LLRが更新されたインデックスを適応的に、更新前のインデックスの順番に組み込むことができる。
また、逆写像ソートでは、入力されたLLR同じ大きさの場合、入力と逆順にインデックスが読み出される上、連続的にしかインデックスを読み出せないのだが、ABP復号にそれで問題が生じることはない。
これにより、ABP復号のソートが実現され、さらに、計算量が少ないソート方法で実現される。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
Claims (12)
- 受信語の信頼度の大きさに従いソートし、その順番に行列のランク分対角化されたパリティ検査行列を用いて、信頼性伝播(Belief propagation:BP)を行って信頼度を更新し、その更新された値に対して、再び上記動作を繰り返す復号装置であって、
受信語の信頼度(LLR)のソートを行うソート部を有し、
前記ソート部は、
入力されるデータとこれに対応するインデックスに基づいて、所定の前記ソート処理を行う逆写像ソート装置を含み、
前記逆写像ソート装置は、
アドレスが所定のデータに対応し、各アドレスに当該データに対応するインデックスを保持するバッファと、
インデックスをアドレスとして指定すると、データが同じ大きさである別のインデックスを保持しているインデックスメモリと、を有し、
インデックスがデータと共に入力された後、所定データに対応する前記バッファのアドレスからインデックスを読出して取得し、当該バッファから読み出したインデックスをアドレスとして前記インデックスメモリから読み出されたインデックスを取得し、当該インデックスメモリから読み出したインデックスをアドレスとして利用することを繰り返して連続的に同じ大きさのインデックスを取得する機能を有する
復号装置。 - 前記逆写像ソート装置は、
インデックスがデータと共に入力されると、入力されたインデックスを書き込みアドレスとして入力データに対応する前記バッファのアドレスに書き込まれ保持されたインデックスを前記インデックスメモリに書き込み、さらに入力データに対応する前記バッファのアドレスに入力インデックスを書き込む
請求項1記載の復号装置。 - 前記逆写像ソート装置は、
データが同じ大きさのインデックスを連続的に取得した後、最後尾に当たるインデックスが指すインデックスを存在しないインデックスの値に設定しておくことで、同じデータに対応するインデックスが最後尾であることを識別する
請求項1記載の復号装置。 - 前記逆写像ソート装置は、
前記バッファの初期値を存在しないインデックスの値に設定する
請求項3記載の復号装置。 - 前記逆写像ソート装置は、
データの大きさの順に前記バッファのアドレスと対応付け、データに対応するインデックスの書き込みが終了した後に、前記バッファのアドレス順に同じ大きさのデータに対応するインデックスを読み出すことで、データの大きさ順にソーティングされたインデックス系列を取得する
請求項1記載の復号装置。 - 前記逆写像ソート装置は、
インデックスを読み出す時に、インデックスメモリから読み出されたインデックスを前記バッファのそのインデックスが対応するアドレスに書込む
請求項1記載の復号装置。 - 受信語の信頼度の大きさに従いソートし、その順番に行列のランク分対角化されたパリティ検査行列を用いて、信頼性伝播(Belief propagation:BP)を行って信頼度を更新し、その更新された値に対して、再び上記動作を繰り返す復号方法であって、
受信語の信頼度(LLR)のソートを行うソートステップを有し、
前記ソートステップは、
入力されるデータとこれに対応するインデックスに基づいて、所定のソート処理を行う逆写像ソートステップを含み、
前記逆写像ソートステップにおいて、
アドレスが所定のデータに対応し、各アドレスに当該データに対応するインデックスを保持するバッファと、
インデックスをアドレスとして指定すると、データが同じ大きさである別のインデックスを保持しているインデックスメモリと、を用い、
複数のインデックスがデータと共に入力された後、所定データに対応する前記バッファのアドレスからインデックスを読出して取得し、
当該バッファから読み出したインデックスをアドレスとして前記インデックスメモリから読み出されたインデックスを取得し、
当該インデックスメモリから読み出したインデックスをアドレスとして利用することを繰り返して連続的に同じ大きさのインデックスを取得する
復号方法。 - 前記逆写像ソートステップにおいて、
インデックスがデータと共に入力されると、入力されたインデックスを書き込みアドレスとして入力データに対応する前記バッファのアドレスに書き込まれ保持されたインデックスを前記インデックスメモリに書き込み、
さらに入力データに対応する前記バッファのアドレスに入力インデックスを書き込む
請求項7記載の復号方法。 - 前記逆写像ソートステップにおいて、
データが同じ大きさのインデックスを連続的に取得した後、最後尾に当たるインデックスが指すインデックスを存在しないインデックスの値に設定しておくことで、同じデータに対応するインデックスが最後尾であることを識別する
請求項7記載の復号方法。 - 前記逆写像ソートステップにおいて、
前記バッファの初期値を存在しないインデックスの値に設定すること
請求項9記載の復号方法。 - 前記逆写像ソートステップにおいて、
データの大きさの順に前記バッファのアドレスと対応付け、データに対応するインデックスの書き込みが終了した後に、前記バッファのアドレス順に同じ大きさのデータに対応するインデックスを読み出すことで、データの大きさ順にソーティングされたインデックス系列を取得する
請求項9記載の復号方法。 - 前記逆写像ソート装置において、
インデックスを読み出す時に、インデックスメモリから読み出されたインデックスを前記バッファのそのインデックスが対応するアドレスに書込む
請求項7記載の復号方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007000535A JP4910708B2 (ja) | 2007-01-05 | 2007-01-05 | 復号装置および復号方法 |
US11/959,551 US8103945B2 (en) | 2007-01-05 | 2007-12-19 | Decoding method and decoding apparatus as well as program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007000535A JP4910708B2 (ja) | 2007-01-05 | 2007-01-05 | 復号装置および復号方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008167376A JP2008167376A (ja) | 2008-07-17 |
JP4910708B2 true JP4910708B2 (ja) | 2012-04-04 |
Family
ID=39696158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007000535A Expired - Fee Related JP4910708B2 (ja) | 2007-01-05 | 2007-01-05 | 復号装置および復号方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4910708B2 (ja) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4138700B2 (ja) * | 2004-05-31 | 2008-08-27 | 株式会社東芝 | 復号装置および復号回路 |
JP4595574B2 (ja) * | 2005-02-07 | 2010-12-08 | ソニー株式会社 | 復号装置および方法、並びにプログラム |
JP2006238127A (ja) * | 2005-02-25 | 2006-09-07 | Sony Corp | 復号装置および方法、並びにプログラム |
JP4519694B2 (ja) * | 2005-03-29 | 2010-08-04 | 財団法人北九州産業学術推進機構 | Ldpc符号検出装置及びldpc符号検出方法 |
-
2007
- 2007-01-05 JP JP2007000535A patent/JP4910708B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008167376A (ja) | 2008-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101176433B1 (ko) | 복호 장치 및 방법, 및 프로그램 | |
JP5276173B2 (ja) | ニア・コードワードのromリスト復号 | |
US8566666B2 (en) | Min-sum based non-binary LDPC decoder | |
JP2006238127A (ja) | 復号装置および方法、並びにプログラム | |
US8103945B2 (en) | Decoding method and decoding apparatus as well as program | |
JP4412401B2 (ja) | 復号装置、復号方法、受信装置、および記憶媒体再生装置 | |
US8650451B2 (en) | Stochastic stream decoding of binary LDPC codes | |
JP4462342B2 (ja) | 復号装置および復号方法 | |
KR20170020305A (ko) | 체크 노드 계산유닛을 관리하는 방법, 장치, 및 상기 방법을 실행하기 위한 소프트웨어 | |
Scholl et al. | Hardware implementation of a Reed-Solomon soft decoder based on information set decoding | |
JP2009225325A (ja) | 復号方法および復号装置、並びにプログラム | |
JP4910708B2 (ja) | 復号装置および復号方法 | |
JP3888135B2 (ja) | 誤り訂正符号復号装置 | |
JP5130715B2 (ja) | データソート装置およびデータソート方法 | |
US11323139B2 (en) | Apparatuses and methods for mapping frozen sets between polar codes and product codes | |
JP4862657B2 (ja) | 復号方法および復号装置、並びにプログラム | |
CN110708077B (zh) | Ldpc码大数逻辑译码方法、装置和译码器 | |
JP2008167378A (ja) | 復号装置および復号方法 | |
JP4862658B2 (ja) | 復号方法および復号装置、並びにプログラム | |
JP2008199148A (ja) | 復号装置、復号方法、およびプログラム | |
JP2008205547A (ja) | 復号方法および復号装置 | |
JP2008205546A (ja) | 復号方法および復号装置、並びにプログラム | |
JP2008199308A (ja) | 復号装置および復号方法 | |
JP2008199149A (ja) | 復号装置および復号方法 | |
JP2008140337A (ja) | 行列対角化装置、行列対角化方法、および復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110719 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111011 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111130 |
|
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: 20111220 |
|
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: 20120102 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150127 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |