JP5130715B2 - データソート装置およびデータソート方法 - Google Patents
データソート装置およびデータソート方法 Download PDFInfo
- Publication number
- JP5130715B2 JP5130715B2 JP2007000534A JP2007000534A JP5130715B2 JP 5130715 B2 JP5130715 B2 JP 5130715B2 JP 2007000534 A JP2007000534 A JP 2007000534A JP 2007000534 A JP2007000534 A JP 2007000534A JP 5130715 B2 JP5130715 B2 JP 5130715B2
- Authority
- JP
- Japan
- Prior art keywords
- index
- data
- address
- read
- 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復号特有の特徴に適したソート装置とその方法を決めることは簡単ではない。
また、バッファの初期値として存在しないインデックスを保持しておく。ソートが完了すると、ある同じ大きさのデータ群を読み出す時は、バッファの対応するアドレスからインデックスを読出し、それをアドレスとしてインデックスメモリに与え、存在しないインデックスにたどりつくまで連続的に読み出したインデックスをアドレスとしてインデックスを読出すことを繰り返す。
データ順に全ての入力インデックスを読出す時は、たとえばバッファのアドレス0のインデックスをアドレスとしてインデックスメモリからインデックスを読出し、同様にインデックスを連続的に取得し、存在しないインデックスにたどり付けば、次のバッファのアドレスのインデックスに移って同様の操作をバッファの最後まで行えばよい。
以上でデータのソートは実現される。これにより、同じデータ群が既にバッファに格納されているかをその都度調べる必要がない。
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復号器のデータソート装置の構成例を示す図である。
次に、データに対応する先頭バケツメモリ322のアドレスを見る。アドレスに既にそのデータ群の先頭インデックスが確保されてないか調べる。
そのアドレスにまだその先頭インデックスが確保されていない場合、先頭バケツメモリ322のそのアドレスにデータメモリ321のインデックスを書き込む。
また、最後尾バケツメモリ323にも同様に書き込む。
そのアドレスに既に先頭インデックスが確保されている場合、入力データを読出しアドレスとして最後尾バケツメモリ323から読み出したインデックスを書き込みアドレスとして、入力インデックスをインデックスメモリ324に書き込む。
また、入力インデックスを最後尾バケツメモリ323に書き込む。
これを繰り返すことにより、インデックスがデータ順にソートされる。
なお、図6〜図21は、ソートする1サイクルごとの流れを表す。
最後に、インデックスメモリ324でデータの違いによってつながっていないインデックスをつなげる。
なお、この装置は、データの昇順、降順どちらにも適用できる。
図22は、本発明の第2の実施形態に係るABP復号器のデータソート装置の構成例を示す図である。
そこで、本第2の実施形態に係るデータソート装置32Bにおいては、バッファとしてのバケツメモリ325を1つ設け、次のような処理を行う。
また、バケツメモリ325の初期値として存在しないインデックスを保持しておく。ソートが完了すると、ある同じ大きさのデータ群を読み出す時は、バケツメモリ325の対応するアドレスからインデックスを読出し、それをアドレスとしてインデックスメモリ324に与え、存在しないインデックスにたどりつくまで連続的(芋づる式)に読み出したインデックスをアドレスとしてインデックスを読出すことを繰り返せばよい。
データ順に全ての入力インデックスを読出す時は、バケツメモリ325のアドレスADR0のインデックスをアドレスとしてインデックスメモリ324からインデックスを読出し、同様にインデックスを連続的(芋づる式)に取得し、存在しないインデックスにたどり付けば、次のバケツメモリ325のアドレスのインデックスに移って同様の操作をバケツメモリ325の最後まで行う。
以上でデータのソートは実現される。これにより、同じデータ群が既にバケツメモリに格納されているかを調べる必要がない。また、バケツメモリは、先頭バケツメモリと最後尾バケツメモリの二つは必要なく、一つで十分となる。
すなわち、本第2の実施形態のデータソート装置32Bによれば、データをソートする処理が高速化され、ソート装置の規模が縮小される。
まず、バケツメモリ325のアドレスADR0から1を読出し、その1が指すインデックスメモリ324のインデックスIDXは6であるので、バケツメモリ325の次のアドレスADR1へ移り、インデックスIDX4を読出し、インデックスメモリ324のアドレスADR4からインデックスIDX2を読出す。これを繰り返せば、データ順に並びかえられたインデックスが読み出される。
この操作は、バケツメモリ325のアドレスの数、つまりはデータの種類、大きさが多く、インデックスの種類が少ない際に起こりやすい、多くのバケツメモリ325の中身が空の場合、つまりは存在しないインデックスで占有されている場合に有効である。
図30は、本発明の第3の実施形態に係るABP復号器のデータソート装置の構成例を示す図である。
入力順に、第2の実施形態と同様にバケツメモリ325とインデックスメモリ324を図30、図31、図32、図33、図34、図35、および図36に示すように順次更新する。
これを繰り返せば、図37に示すように、0→5→1→2→3→4とデータ順にインデックスが読み出される。
この操作は、バケツメモリ325のアドレスの数、つまりはデータの種類、大きさが多く、インデックスの種類が少ない際におこりやすい、多くのバケツメモリ325の中身が空の場合、つまりは存在しないインデックスで占有されている場合に有効である。
図38は、本発明の第4の実施形態に係るABP復号器のデータソート装置の構成例を示す図である。
インデックスメモリ324はあるアドレスから読出したインデックスを読出しアドレスとして指定すると同じ値のデータの別のインデックスが読み出されるメモリである。書き込み時は、常に入力インデックスS13を書込みアドレスS16としてバケツ先頭インデックスS15を書き込む。
第2書込み読出しアドレス選択部327は、書込み時は入力インデックスS13を選択し、読出し時は読出しインデックスS18を選択する。第1書込み読出しアドレス選択部326は、書込み時は入力データS11を選択し、読み出し時は入力データS11または読出しデータS12を選択する。
なお、図39〜図45は、データとインデックスが入力された時の回路動作を、図46〜図54はソートされたインデックスを読み出すときの回路動作を示す。
まず、図39〜図45に関連付けて、書き込み時、つまりデータとインデックス入力時について説明する。
また、インデックスメモリ324にバケツメモリ325から読み出されたバケツ先頭インデックスS15を、入力インデックスS13をアドレスS16としてインデックスメモリ324に書き込む。
この際、第2書込み読出しアドレス選択部327では、入力インデックスS13を書込みアドレスS16として選択する。また、第1書込み読出しアドレス選択部326では、入力データS11を読出しアドレスS14として選択する。
ある同じ大きさのデータ群を読み出す時は、バケツメモリ325の対応するアドレスからバケツ先頭インデックスS15を読出し、それを読出しアドレスS16としてインデックスメモリ324に与え、存在しないインデックスにたどりつくまで連続的(芋づる式)に読み出したインデックスS17を読出しアドレスS16としてインデックスS17を読出すことを繰り返せば出力インデックスS18を得る。
このとき、第2書込み読出しアドレス選択部327では、インデックスメモリ324の読出しインデックスS17、すなわち出力インデックス選択部328による出力インデックスS18を選択し、第1書込み読出しアドレス選択部326では、読出しデータS12を選択する。
この場合は、第2書込み読出しアドレス選択部327では、インデックスメモリ324の読出しインデックスS17を選択し、第1書込み読出しアドレス選択部326では、読出しデータS12を選択する。
以上でデータのソートは実現される。
この操作は、バケツメモリ325のアドレスの数、つまりはデータの種類、大きさが多く、インデックスの種類が少ない際に起こりやすい、多くのバケツメモリ325の中身が空の場合、つまりは存在しないインデックスで占有されている場合に有効である。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
Claims (12)
- 複数のインデックスと当該インデックスと1対1対応するデータが入力され、インデックスをデータの種類、大きさに基づきソートするデータソート装置であって、
アドレスが所定のデータに対応し、各アドレスに当該データに対応するインデックスを保持するバッファと、
インデックスをアドレスとして指定すると、データが同じ大きさである別のインデックスを保持しているインデックスメモリと、を有し、
複数のインデックスがデータと共に入力された後、所定データに対応する前記バッファのアドレスからインデックスを読出して取得し、当該バッファから読み出したインデックスをアドレスとして前記インデックスメモリから読み出されたインデックスを取得し、当該インデックスメモリから読み出したインデックスをアドレスとして利用することを繰り返して連続的に同じ種類、大きさのインデックスを取得する機能を有し、
データの大きさの順に前記バッファのアドレスと対応付け、データに対応するインデックスの書き込みが終了した後に、前記バッファのアドレス順に同じ大きさのデータに対応するインデックスを読み出すことで、データの大きさ順にソーティングされたインデックス系列を取得する機能を有する
データソート装置。 - インデックスがデータと共に入力されると、入力されたインデックスを書き込みアドレスとして入力データに対応する前記バッファのアドレスに書き込まれ保持されたインデックスを前記インデックスメモリに書き込み、さらに入力データに対応する前記バッファのアドレスに入力インデックスを書き込む機能を有する
請求項1記載のデータソート装置。 - データが同じ大きさのインデックスを連続的に取得した後、最後尾に当たるインデックスが指すインデックスを存在しないインデックスの値に設定しておくことで、同じ種類、大きさのデータに対応するインデックスが最後尾であることを識別する機能を有する
請求項1または2記載のデータソート装置。 - 前記バッファの初期値を存在しないインデックスの値に設定する機能を有する
請求項3記載のデータソート装置。 - ソート処理後ソートされたインデックスを読み出すまでに待ち時間が存在した場合、所望のインデックス系列を前もって読み出す機能を有する
請求項1から4のいずれか一に記載のデータソート装置。 - 前記バッファとアドレスと1対1に対応するカウンタを含み、
前記カウンタで、各々のデータに蓄積したインデックス数を数えることにより、インデックスを読み出す時に、そのデータの蓄積数分だけインデックスを連続的に読み出す機能を有する
請求項1から5のいずれか一に記載のデータソート装置。 - 複数のインデックスと当該インデックスと1対1対応するデータが入力され、インデックスをデータの種類、大きさに基づきソートするデータソート方法であって、
アドレスが所定のデータに対応し、各アドレスに当該データに対応するインデックスを保持するバッファと、
インデックスをアドレスとして指定すると、データが同じ大きさである別のインデックスを保持しているインデックスメモリと、を用い、
複数のインデックスがデータと共に入力された後、所定データに対応する前記バッファのアドレスからインデックスを読出して取得し、
当該バッファから読み出したインデックスをアドレスとして前記インデックスメモリから読み出されたインデックスを取得し、
当該インデックスメモリから読み出したインデックスをアドレスとして利用することを繰り返して連続的に同じ種類、大きさのインデックスを取得し、
上記インデックスを取得するに際し、
データの大きさの順に前記バッファのアドレスと対応付け、データに対応するインデックスの書き込みが終了した後に、前記バッファのアドレス順に同じ大きさのデータに対応するインデックスを読み出すことで、データの大きさ順にソーティングされたインデックス系列を取得する
データソート方法。 - インデックスがデータと共に入力されると、入力されたインデックスを書き込みアドレスとして入力データに対応する前記バッファのアドレスに書き込まれ保持されたインデックスを前記インデックスメモリに書き込み、
さらに入力データに対応する前記バッファのアドレスに入力インデックスを書き込む
請求項7記載のデータソート方法。 - データが同じ大きさのインデックスを連続的に取得した後、最後尾に当たるインデックスが指すインデックスを存在しないインデックスの値に設定しておくことで、同じ種類、大きさのデータに対応するインデックスが最後尾であることを識別する
請求項7または8記載のデータソート方法。 - 前記バッファの初期値を存在しないインデックスの値に設定する
請求項9記載のデータソート方法。 - ソート処理後ソートされたインデックスを読み出すまでに待ち時間が存在した場合、所望のインデックス系列を前もって読み出す
請求項7から10のいずれか一に記載のデータソート方法。 - 前記バッファとアドレスと1対1に対応するカウンタを用い、
前記カウンタで、各々のデータに蓄積したインデックス数を数えることにより、インデックスを読み出す時に、そのデータの蓄積数分だけインデックスを連続的に読み出す
請求項7から11のいずれか一に記載のデータソート方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007000534A JP5130715B2 (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 |
---|---|---|---|
JP2007000534A JP5130715B2 (ja) | 2007-01-05 | 2007-01-05 | データソート装置およびデータソート方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008165712A JP2008165712A (ja) | 2008-07-17 |
JP5130715B2 true JP5130715B2 (ja) | 2013-01-30 |
Family
ID=39695075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007000534A Expired - Fee Related JP5130715B2 (ja) | 2007-01-05 | 2007-01-05 | データソート装置およびデータソート方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5130715B2 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4181723B2 (ja) * | 2000-02-29 | 2008-11-19 | 株式会社リコー | 索引作成装置、索引作成方法および記録媒体 |
JP2006244256A (ja) * | 2005-03-04 | 2006-09-14 | Fuji Xerox Co Ltd | 情報管理装置 |
-
2007
- 2007-01-05 JP JP2007000534A patent/JP5130715B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008165712A (ja) | 2008-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101176433B1 (ko) | 복호 장치 및 방법, 및 프로그램 | |
JP5276173B2 (ja) | ニア・コードワードのromリスト復号 | |
US9214958B2 (en) | Method and decoder for processing decoding | |
US8566666B2 (en) | Min-sum based non-binary LDPC decoder | |
US8103945B2 (en) | Decoding method and decoding apparatus as well as program | |
JP2006238127A (ja) | 復号装置および方法、並びにプログラム | |
CN101656541B (zh) | Rs码的译码方法和装置 | |
JP4412401B2 (ja) | 復号装置、復号方法、受信装置、および記憶媒体再生装置 | |
US8650451B2 (en) | Stochastic stream decoding of binary LDPC codes | |
KR20170020305A (ko) | 체크 노드 계산유닛을 관리하는 방법, 장치, 및 상기 방법을 실행하기 위한 소프트웨어 | |
JP2018019401A (ja) | リード・ソロモン復号器及び復号方法 | |
CN1656696A (zh) | 线性分组码的软解码 | |
Scholl et al. | Hardware implementation of a Reed-Solomon soft decoder based on information set decoding | |
JP2009225325A (ja) | 復号方法および復号装置、並びにプログラム | |
JP5130715B2 (ja) | データソート装置およびデータソート方法 | |
JP4910708B2 (ja) | 復号装置および復号方法 | |
JP4862657B2 (ja) | 復号方法および復号装置、並びにプログラム | |
CN110708077B (zh) | Ldpc码大数逻辑译码方法、装置和译码器 | |
JP2008167378A (ja) | 復号装置および復号方法 | |
JP4862658B2 (ja) | 復号方法および復号装置、並びにプログラム | |
JP2008199148A (ja) | 復号装置、復号方法、およびプログラム | |
JP2008205546A (ja) | 復号方法および復号装置、並びにプログラム | |
JP2008205547A (ja) | 復号方法および復号装置 | |
JP2008199308A (ja) | 復号装置および復号方法 | |
JP2008199149A (ja) | 復号装置および復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120330 |
|
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: 20121009 |
|
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: 20121022 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 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 |
|
LAPS | Cancellation because of no payment of annual fees |