JP5091996B2 - 誤り訂正復号器、メモリコントローラ及び受信機 - Google Patents
誤り訂正復号器、メモリコントローラ及び受信機 Download PDFInfo
- Publication number
- JP5091996B2 JP5091996B2 JP2010202095A JP2010202095A JP5091996B2 JP 5091996 B2 JP5091996 B2 JP 5091996B2 JP 2010202095 A JP2010202095 A JP 2010202095A JP 2010202095 A JP2010202095 A JP 2010202095A JP 5091996 B2 JP5091996 B2 JP 5091996B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- parity check
- error correction
- check
- external
- 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
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/658—Scaling by multiplication or division
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
- H03M13/1117—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
- H03M13/112—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule with correction functions for the min-sum rule, e.g. using an offset or a scaling factor
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1128—Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6583—Normalization other than scaling, e.g. by subtraction
Description
(第1の実施形態)
第1の実施形態に係る誤り訂正復号器は、図1に示されるように、入力尤度保持部101、行処理部102、列処理部103、パリティ検査部104、検査行列保持部105及び尤度制御部106を有する。この誤り訂正復号器は、基本的には、いわゆるメッセージパッシング復号アルゴリズム(Sum-ProductアルゴリズムやMin-Sumアルゴリズム復号法)に基づく繰り返し復号を実施する。
通常の繰り返し復号を例えばLin回実施した結果、図4に示されるようなパリティ検査結果が得られたと仮定する。変数ノードV2,V4及びV6においてビット誤りが生じているので、チェックノードP1,P2及びP3はパリティ検査を満たさないが、チェックノードP4はパリティ検査を満たす。但し、チェックノードP4は、変数ノードV2及びV4の両方においてビット誤りが生じたことによりパリティ検査を一時的に満たしているに過ぎない。例えば、変数ノードV2及びV4のいずれかの誤りが訂正されれば、チェックノードP4はパリティ検査を満たさなくなる。故に、図4の例に関して、パリティ検査を満たすチェックノードP4から変数ノードV2に送られる外部値α42は実際には不適切な値であり、パリティ検査を満たさないチェックノードP2から変数ノードV2に送られる外部値α22は実際には適切な値であると考えられる。そこで、例えば不適切な外部値α42の影響(具体的には、絶対値など)を縮小するような重み付けを行ったり、適切な外部値α22の影響を拡大するような重み付けを行ったりすることにより、変数ノードV2のビット誤りが訂正される可能性が高くなる。但し、図1の誤り訂正復号器は、パリティ検査を満たすチェックノード(図4のチェックノードP4など)が、パリティ検査を真に満たしているのか、或いは、偶数個の変数ノードにおいてビット誤りが生じたことによりパリティ検査を一時的に満たしているに過ぎないのかを判別できない。
第2の実施形態に係る記憶装置は、前述の第1の実施形態に係る誤り訂正復号器の応用例である。本実施形態に係る記憶装置は、典型的には、フラッシュメモリなどの不揮発性メモリと、これを制御するメモリコントローラとを含むメモリカードである。
第3の実施形態に係る受信機は、前述の第1の実施形態に係る誤り訂正復号器の応用例である。本実施形態に係る受信機は、図9に示されるように、アンテナ320、周波数変換器321、A/D(アナログ/デジタル)変換器322、復調器323及び復号器324を有する。図9の受信機は、符号化及び変調された信号を受信し、復調及び復号することにより受信データを復元する。図9の受信機は、典型的には、(セルラ、無線LAN(Local Area Network)などをサポートする)無線受信機、放送波受信機などである。また、図9には示されていないが、低雑音増幅器、フィルタなどを含むことも可能である。
102・・・行処理部
103・・・列処理部
104・・・パリティ検査部
105・・・検査行列保持部
106・・・尤度制御部
301・・・復号器
302・・・メモリコントローラ
303・・・メモリカード
304・・・ホスト
305・・・半導体メモリ部
306・・・バス
307・・・ROM
308・・・CPUコア
309・・・RAM
310・・・ホストI/F
311・・・誤り訂正部
312・・・メモリI/F
313・・・符号化器
320・・・アンテナ
321・・・周波数変換器
322・・・A/D変換器
323・・・復調器
324・・・復号器
Claims (9)
- 非正則LDPC符号を利用して符号化されたデータに対して繰り返し復号を実施する誤り訂正復号器において、
チェックノードから変数ノードへの外部値を生成する行処理部と、
前記外部値に基づいて一時推定語を生成し、前記一時推定語にパリティ検査を行い、全てのチェックノードがパリティ検査を満たす場合に前記一時推定語を符号語と判定するパリティ検査部と、
前記繰り返し復号の実施回数が所定の繰り返し回数を超えても前記符号語が得られないことを含む所定の条件が満たされる場合に、変数ノードの列重みの降順に応じてより大きな値或いは等しい値を持ち、最大値が最小値と等しくない複数の第1の外部値重みを用いて、前記パリティ検査を満たさないチェックノードから変数ノードへの外部値の絶対値を拡大する重み付けを行う尤度制御部と
を具備する誤り訂正復号器。 - 前記第1の外部値重みの最小値は1よりも大きく、
前記尤度制御部は、前記所定の条件が満たされる場合に、前記パリティ検査を満たさないチェックノードから変数ノードへの外部値に前記第1の外部値重みを乗算する、
請求項1の誤り訂正復号器。 - 前記所定の条件は、前記繰り返し復号の実施回数が所定の繰り返し回数を超えているにも関わらず符号語が得られず、かつ、前記パリティ検査を満たさないチェックノードの総数が所定の最大数以下であることを含む、請求項1の誤り訂正復号器。
- 前記尤度制御部は、前記所定の条件が満たされる場合に、変数ノードの列重みの降順に応じてより小さな値或いは等しい値を持ち、最大値が最小値と等しくない複数の第2の外部値重みを用いて、前記パリティ検査を満たすチェックノードから前記パリティ検査を満たさないチェックノードに繋がっている変数ノードへの外部値の絶対値を縮小する重み付けを行う、請求項1記載の誤り訂正復号器。
- 前記第2の外部値重みの最大値は1よりも小さく、
前記尤度制御部は、前記所定の条件が満たされる場合に、前記パリティ検査を満たすチェックノードから前記パリティ検査を満たさないチェックノードに繋がっている変数ノードへの外部値に前記第2の外部値重みを乗算する、
請求項4の誤り訂正復号器。 - 前記第2の外部値重みの最大値は0以下であり、
前記尤度制御部は、前記所定の条件が満たされる場合に、前記パリティ検査を満たすチェックノードから前記パリティ検査を満たさないチェックノードに繋がっている変数ノードへの外部値の絶対値に前記第2の外部値重みを加算する、
請求項4の誤り訂正復号器。 - 前記第1の外部値重みの最小値は0以上であり、
前記尤度制御部は、前記所定の条件が満たされる場合に、前記パリティ検査を満たさないチェックノードから変数ノードへの外部値の絶対値に前記第1の外部値重みを加算する、
請求項1の誤り訂正復号器。 - 前記非正則LDPC符号を用いて符号化されたデータを不揮発性メモリから受ける読み出し部と、
請求項1記載の誤り訂正復号器と
を具備する、メモリコントローラ。 - 受信信号を復調し、前記非正則LDPC符号を用いて符号化されたデータを得る復調部と、
請求項1記載の誤り訂正復号器と
を具備する、受信機。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010202095A JP5091996B2 (ja) | 2010-09-09 | 2010-09-09 | 誤り訂正復号器、メモリコントローラ及び受信機 |
US13/043,918 US20120066563A1 (en) | 2010-09-09 | 2011-03-09 | Error correction decoder, memory controller and receiver |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010202095A JP5091996B2 (ja) | 2010-09-09 | 2010-09-09 | 誤り訂正復号器、メモリコントローラ及び受信機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012060450A JP2012060450A (ja) | 2012-03-22 |
JP5091996B2 true JP5091996B2 (ja) | 2012-12-05 |
Family
ID=45807858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010202095A Expired - Fee Related JP5091996B2 (ja) | 2010-09-09 | 2010-09-09 | 誤り訂正復号器、メモリコントローラ及び受信機 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20120066563A1 (ja) |
JP (1) | JP5091996B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9148175B2 (en) * | 2011-05-31 | 2015-09-29 | Mitsubishi Electric Corporation | Error correction coding device, error correction decoding device and method therefor |
WO2015020395A1 (ko) * | 2013-08-05 | 2015-02-12 | 엘지전자 주식회사 | 무선접속시스템에서 신호 수신 방법 및 장치 |
EP3902142A1 (en) | 2016-05-12 | 2021-10-27 | MediaTek Inc. | Qc-ldpc coding methods and apparatus |
US10318389B2 (en) * | 2016-07-15 | 2019-06-11 | Quantum Corporation | Joint de-duplication-erasure coded distributed storage |
US10581457B2 (en) | 2017-01-09 | 2020-03-03 | Mediatek Inc. | Shift coefficient and lifting factor design for NR LDPC code |
US10432227B2 (en) | 2017-01-24 | 2019-10-01 | Mediatek Inc. | Location of interleaver with LDPC code |
US10630319B2 (en) | 2017-01-24 | 2020-04-21 | Mediatek Inc. | Structure of interleaver with LDPC code |
US10484013B2 (en) | 2017-05-12 | 2019-11-19 | Mediatek Inc. | Shift-coefficient table design of QC-LDPC code for smaller code block sizes in mobile communications |
US10484011B2 (en) | 2017-05-12 | 2019-11-19 | Mediatek Inc. | Shift-coefficient table design of QC-LDPC code for larger code block sizes in mobile communications |
US10567116B2 (en) | 2017-05-12 | 2020-02-18 | Mediatek Inc. | Wireless communication using codebooks from a QC-LDPC code for shorter processing latency and improved decoder throughput efficiency |
KR20200042360A (ko) * | 2018-10-15 | 2020-04-23 | 에스케이하이닉스 주식회사 | 에러 정정 회로, 이를 포함하는 메모리 컨트롤러 및 메모리 시스템 |
KR20210015087A (ko) | 2019-07-31 | 2021-02-10 | 에스케이하이닉스 주식회사 | 오류 정정 회로, 이를 포함하는 메모리 컨트롤러 및 메모리 시스템 |
US11316532B1 (en) * | 2020-12-17 | 2022-04-26 | SK Hynix Inc. | Decoding of low-density parity-check codes with high-degree variable nodes |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6903887B2 (en) * | 2002-01-03 | 2005-06-07 | International Business Machines Corporation | Multiple level (ML), integrated sector format (ISF), error correction code (ECC) encoding and decoding processes for data storage or communication devices and systems |
US7401283B2 (en) * | 2004-09-28 | 2008-07-15 | Broadcom Corporation | Amplifying magnitude metric of received signals during iterative decoding of LDPC (Low Density Parity Check) code and LDPC coded modulation |
US8140930B1 (en) * | 2005-05-13 | 2012-03-20 | Nec Corporation | Encoder and decoder by LDPC coding |
JP2009182421A (ja) * | 2008-01-29 | 2009-08-13 | Panasonic Corp | 復号化方法及び復号化装置 |
US8234556B2 (en) * | 2008-12-30 | 2012-07-31 | Intel Corporation | Broadcast receiver and method for optimizing a scale factor for a log-likelihood mapper |
-
2010
- 2010-09-09 JP JP2010202095A patent/JP5091996B2/ja not_active Expired - Fee Related
-
2011
- 2011-03-09 US US13/043,918 patent/US20120066563A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2012060450A (ja) | 2012-03-22 |
US20120066563A1 (en) | 2012-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5091996B2 (ja) | 誤り訂正復号器、メモリコントローラ及び受信機 | |
JP5132758B2 (ja) | 誤り訂正復号器及び記憶装置 | |
JP5199255B2 (ja) | 近傍信頼性に依存するスケジューリングを用いたメッセージ・パッシングによる復号方法 | |
US8607118B2 (en) | Iterative decoding method and apparatus | |
US20110252286A1 (en) | Non-binary ldpc code decoder | |
JP4651600B2 (ja) | 低密度パリティ検査復号器における検査ノード更新方法 | |
JP2012500514A (ja) | 複数のチェックノード・アルゴリズムを用いる誤り訂正デコーダ | |
EP2164178A1 (en) | Encoding method and encoding device | |
KR100757769B1 (ko) | 저밀도 패리티 체크 코드를 디코딩하는 디코더 및 방법 | |
JP2013198017A (ja) | 復号装置及び通信装置 | |
JP4572937B2 (ja) | 復号装置および方法、プログラム、並びに記録媒体 | |
JP2008011078A (ja) | 情報符号化装置、情報復号装置、情報符号化方法、および情報復号方法 | |
JP6395658B2 (ja) | 誤り訂正復号装置、受信装置及び誤り訂正復号方法 | |
JP5674015B2 (ja) | 復号装置および方法、並びにプログラム | |
JP2009182421A (ja) | 復号化方法及び復号化装置 | |
KR20160020996A (ko) | 길이가 64800이며, 부호율이 4/15인 ldpc 부호화기 및 이를 이용한 ldpc 부호화 방법 | |
JP5385944B2 (ja) | 復号器 | |
JP5034588B2 (ja) | 軟判定復号装置および軟判定復号プログラム | |
JP4845846B2 (ja) | 復号装置および復号プログラム | |
TWI583141B (zh) | 低密度奇偶檢查碼的解碼方法與解碼器 | |
JP2008153874A (ja) | 軟判定復号装置、軟判定復号方法および軟判定復号プログラム | |
JP4755238B2 (ja) | 復号器 | |
Shin et al. | Multi-stage decoding scheme with post-processing for LDPC codes to lower the error floors | |
JP5018807B2 (ja) | 復号化装置 | |
JP5132738B2 (ja) | 誤り訂正復号器及び受信機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120802 |
|
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: 20120821 |
|
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: 20120914 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150921 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150921 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |