RU2007106457A - Способы и устройство ldpc-декодирования - Google Patents

Способы и устройство ldpc-декодирования Download PDF

Info

Publication number
RU2007106457A
RU2007106457A RU2007106457/09A RU2007106457A RU2007106457A RU 2007106457 A RU2007106457 A RU 2007106457A RU 2007106457/09 A RU2007106457/09 A RU 2007106457/09A RU 2007106457 A RU2007106457 A RU 2007106457A RU 2007106457 A RU2007106457 A RU 2007106457A
Authority
RU
Russia
Prior art keywords
decoder
code
information
control
module
Prior art date
Application number
RU2007106457/09A
Other languages
English (en)
Other versions
RU2392737C2 (ru
Inventor
Том РИЧАРДСОН (US)
Том Ричардсон
Хой ЦЗИНЬ (US)
Хой ЦЗИНЬ
Владимир НОВИЧКОВ (US)
Владимир Новичков
Original Assignee
Квэлкомм Флэрион Текнолоджиз, Инк. (Us)
Квэлкомм Флэрион Текнолоджиз, Инк.
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 Квэлкомм Флэрион Текнолоджиз, Инк. (Us), Квэлкомм Флэрион Текнолоджиз, Инк. filed Critical Квэлкомм Флэрион Текнолоджиз, Инк. (Us)
Publication of RU2007106457A publication Critical patent/RU2007106457A/ru
Application granted granted Critical
Publication of RU2392737C2 publication Critical patent/RU2392737C2/ru

Links

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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block 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
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6513Support of multiple code types, e.g. unified decoder for LDPC and turbo 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end

Claims (40)

1. LDPC-декодер, содержащий:
источник сообщений, включающий в себя выход сообщений для выдачи N сообщений параллельно, при этом N больше 1;
модуль обработки узлов, включающий в себя N процессоров узлов, размещенных параллельно;
управляемый блок перестановки, связывающий упомянутый источник сообщений с упомянутым модулем обработки узлов, причем упомянутый управляемый блок перестановки включает в себя вход сигнала управления переупорядочиванием для приема сигнала управления переупорядочиванием, чтобы управлять переупорядочиванием сообщений в, по меньшей мере, одном наборе из N сообщений, передаваемых через упомянутый управляемый блок перестановки;
управляющий модуль для формирования первого сигнала управления адресацией как функции от сохраненной информации описания кодов, причем упомянутый управляющий модуль имеет выход первого сигнала управления адресацией, соединенный с упомянутым источником сообщений; и
модуль выбора блоков для формирования сигнала выбора адресов блоков, причем упомянутый модуль выбора блоков имеет выход сигнала выбора адресов блоков, соединенный с упомянутым источником сообщений.
2. Декодер по п.1, в котором упомянутый управляющий модуль включает в себя:
счетчик внутренних циклов для формирования упомянутого первого сигнала управления адресацией; и
счетчик внешних циклов для формирования сигнала управления внешними циклами, выдаваемого в упомянутый модуль выбора блоков, причем упомянутый счетчик внешних циклов получает приращение как функцию от значения внутренних циклов, сформированного посредством упомянутого счетчика внутренних циклов.
3. Декодер по п.2, в котором
упомянутым источником сообщений является запоминающее устройство; и
упомянутый счетчик внешних циклов сбрасывается при достижении максимального значения, определенного посредством сигнала управления коэффициентом расширения кода, причем упомянутый сигнал управления коэффициентом расширения кода указывает выбранный коэффициент SK расширения, при этом SK имеет значение, большее или равное 1.
4. Декодер по п.3, в котором упомянутый выбранный коэффициент SK расширения меньше или равен максимальному расширению K, соответствующему максимальному коэффициенту расширения, поддерживаемому упомянутым управляющим модулем.
5. Декодер по п.1, в котором модуль выбора блоков включает в себя вход сигнала информации упорядочивания блоков для приема сигнала информации упорядочивания блоков от упомянутого управляющего модуля, причем упомянутый сигнал информации упорядочивания блоков является функцией значения, сформированного посредством упомянутого внутреннего счетчика и упомянутой сохраненной информации описания кода.
6. Декодер по п.5, в котором источник сообщений включает в себя модуль формирования адресов для формирования сигнала доступа к памяти из упомянутого первого сигнала управления адресацией и упомянутого второго сигнала управления адресацией.
7. Декодер по п.6, в котором упомянутый источник сообщений включает в себя память, включающую в себя, по меньшей мере, N раз по K ячеек памяти.
8. Декодер по п.7, в котором каждая из N раз по K ячеек памяти сохраняет, по меньшей мере, 2 бита.
9. Декодер по п.1, в котором источник сообщений дополнительно включает в себя модуль восстановления для восстановления сообщений, сохраненных в упомянутой памяти перед выдачей упомянутых сообщений в упомянутый управляемый блок перестановки.
10. Декодер по п.1, в котором каждый из упомянутых процессоров узлов является процессором узлов переменных.
11. Декодер по п.1, в котором каждый из упомянутых процессоров узлов является процессором проверочных узлов.
12. Декодер по п.1, в котором каждый из упомянутых процессоров узлов является конфигурируемым процессором узла, который переключается между режимом работы узлов переменных и проверочных узлов.
13. Декодер по п.12, в котором каждый из конфигурируемых процессоров узлов принимает конфигурационную информацию, формируемую посредством упомянутого управляющего модуля из упомянутой сохраненной информации описания кода.
14. Способ выполнения обработки декодирования с контролем по четности низкой плотности (LDPC), содержащий этапы, на которых:
предоставляют декодер, включающий в себя:
модуль памяти, включающий в себя N·L·K ячеек памяти, где N и L - положительные целые числа, а K - целое число больше 1, причем каждая ячейка памяти обеспечивает сохранение нескольких битов;
управляемый модуль перестановки, соединенный с упомянутым модулем памяти, для выполнения операций переупорядочивания элементов для набора из N многобитовых элементов, чтобы изменить порядок элементов в упомянутом наборе;
модуль обработки узлов, включающий в себя N конфигурируемых процессоров узлов, размещенных параллельно, соединенный с упомянутым управляемым модулем перестановки;
набор сохраненных инструкций управления декодером; и
формируют первый сигнал переупорядочивания, используемый для управления доступом к памяти, как функцию от инструкции управления декодером, включенной в упомянутый набор сохраненных инструкций управления декодером; и
формируют второй сигнал управления переупорядочиванием как функцию от упомянутой инструкции управления декодером, причем упомянутый второй сигнал управления переупорядочиванием подают в упомянутый модуль перестановки.
15. Способ по п.14, дополнительно содержащий этапы, на которых:
выполняют операцию доступа к памяти в ячейке, определенной из первого сигнала управления переупорядочиванием; и
воздействуют на модуль перестановщика для выполнения операции переупорядочивания сообщений в соответствии с упомянутым поданным сигналом управления переупорядочиванием.
16. Способ по п.15, в котором упомянутый этап выполнения операции доступа к памяти в ячейке, определенной из упомянутого первого сигнала управления переупорядочиванием, включает в себя этапы, на которых:
формируют адрес памяти из первого значения управления адресацией, включенного в упомянутую команду управления декодером, и второго сигнала управления адресацией, сформированного из упомянутого первого сигнала переупорядочивания и значения, сформированного счетчиком циклов.
17. Способ по п.16, в котором значение, сформированное посредством упомянутого счетчика циклов, формируется как функция от сигнала индикатора длины кодового слова.
18. Способ по п.17, дополнительно содержащий этап, на котором:
конфигурируют узлы в упомянутом модуле обработки узлов как функцию от информации конфигурации, включенной в упомянутую команду управления декодером.
19. Способ декодирования информации, ранее закодированной с помощью LDPC-кодера, при этом способ содержит этапы, на которых:
принимают информацию длины первых кодовых слов, указывающую длину первых кодовых слов, которые должны декодироваться;
подают упомянутую информацию о длине кодовых слов на управляющий вход LDPC-декодера;
воздействуют на LDPC-декодер, чтобы принимать данные, которые должны декодироваться; и
воздействуют на LDPC-декодер, чтобы декодировать принимаемые данные как функцию от принимаемой информации о длине кодовых слов.
20. Способ по п.19, дополнительно содержащий этап, на котором:
принимают информацию длины вторых кодовых слов, указывающую длину дополнительных кодовых слов, которые должны декодироваться, причем упомянутая длина дополнительных кодовых слов является вторым числом битов, которое отличается от первого числа битов, указанного посредством упомянутой информации длины первых кодовых слов.
21. Способ по п.20, в котором упомянутая информация длины первых кодовых слов представляет собой сигнал первого выбранного коэффициента расширения кода, используемого для указания количества раз итеративного исполнения команд.
22. Способ по п.19, дополнительно содержащий этапы, на которых:
сохраняют первый набор информации описания структуры кода в модуле в упомянутом декодере; и
используют сохраненный первый набор информации описания кода для выполнения операции LDPC-декодирования.
23. Способ по п.22, дополнительно содержащий этап, на котором:
сохраняют второй набор информации описания структуры кода в упомянутом модуле в упомянутом декодере, причем второй набор информации описания структуры кода соответствует LDPC-коду, имеющему структуру, отличную от структуры кода, которой соответствует первый набор информации о структуре кода.
24. Способ по п.23, дополнительно содержащий этапы, на которых:
декодируют данные с помощью первого набора информации о структуре кода при осуществлении связи с первым устройством; и
декодируют данные с помощью второго набора информации о структуре кода при осуществлении связи со вторым устройством.
25. Способ по п.24, в котором первый набор информации о структуре кода используется в момент времени, отличный от момента времени, когда используется второй набор информации о структуре кода.
26. Способ по п.22, в котором упомянутый этап сохранения первого набора информации описания кода выполняется в ответ на прием сигнала, указывающего, что кодовые слова, соответствующие упомянутому первому набору информации описания кода, должны декодироваться.
27. Способ по п.22, в котором упомянутый этап сохранения первого набора информации описания кода выполняется в ответ на прием сигнала, включающего в себя кодовые слова, кодированные согласно структуре кода, соответствующей упомянутому первому набору информации описания кода.
28. Способ по п.22, в котором упомянутый первый набор информации описания включает в себя инструкции управления декодером.
29. Способ по п.28, в котором каждая инструкция управления декодером включает в себя указатель операции чтения или записи.
30. Способ по п.29, в котором каждая инструкция управления декодером дополнительно включает в себя информацию управления чередованием.
31. Способ по п.29, в котором каждая инструкция управления декодером дополнительно включает в себя информацию адреса запоминающего устройства.
32. Способ по п.31, в котором каждая инструкция управления декодером дополнительно включает в себя информацию конфигурации, указывающую то, что блок обработки узлов должен конфигурироваться как блок обработки узлов переменных или блок обработки проверочных узлов.
33. Способ реализации системы программируемого LDPC-декодера, содержащий этапы, на которых:
сохраняют в течение первого периода времени первый набор инструкций декодирования в модуле LDPC-декодера, причем упомянутый первый набор инструкций декодирования соответствует первой структуре LDPC-кода;
воздействуют на LDPC-декодер для выполнения операции LDPC-декодирования с использованием структуры сохраненных инструкций декодирования;
сохраняют в течение второго периода времени второй набор инструкций декодирования, причем упомянутый второй набор инструкций декодирования отличается от упомянутого первого набора и соответствует второй структуре LDPC-кода, которая отличается от упомянутой первой структуры LDPC-кода; и
воздействуют на декодер для выполнения операции LDPC-декодирования с использованием сохраненного второго набора инструкций декодирования.
34. Способ по п.33, в котором первый и второй наборы инструкций декодирования используются в течение различных периодов времени для выполнения операций декодирования.
35. Способ по п.33, в котором упомянутый этап сохранения первого набора инструкций декодирования выполняется в ответ на прием сигнала, указывающего то, что должны использоваться кодовые слова, соответствующие упомянутому первому набору информации описания кода.
36. Способ по п.33, в котором упомянутый этап сохранения первого набора инструкций декодирования выполняется в ответ на прием сигнала, включающего в себя кодовые слова, кодированные согласно структуре кода, соответствующей упомянутому первому набору инструкций декодирования.
37. Способ по п.33, в котором упомянутые первый и второй наборы инструкций декодирования сохраняют в упомянутом модуле в течение упомянутого первого и второго периодов времени, причем упомянутым модулем является устройство памяти.
38. Способ по п.37, в котором множество упомянутых инструкций управления декодером включает в себя указатель разрешения/блокирования операции записи.
39. Способ по п.37, в котором каждая из упомянутого множества инструкций управления декодером включает в себя информацию управления чередованием.
40. Способ по п.39, в котором каждая из упомянутого множества инструкций управления декодером дополнительно включает в себя информацию адреса памяти.
RU2007106457/09A 2004-07-21 2005-07-20 Способы и устройство ldpc-декодирования RU2392737C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/895,645 2004-07-21
US10/895,645 US7395490B2 (en) 2004-07-21 2004-07-21 LDPC decoding methods and apparatus

Publications (2)

Publication Number Publication Date
RU2007106457A true RU2007106457A (ru) 2008-08-27
RU2392737C2 RU2392737C2 (ru) 2010-06-20

Family

ID=35658677

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2007106457/09A RU2392737C2 (ru) 2004-07-21 2005-07-20 Способы и устройство ldpc-декодирования

Country Status (13)

Country Link
US (3) US7395490B2 (ru)
EP (3) EP2369749A3 (ru)
KR (3) KR100883459B1 (ru)
CN (3) CN101895301B (ru)
AU (4) AU2005329064B2 (ru)
CA (2) CA2577794C (ru)
HK (3) HK1131474A1 (ru)
NO (1) NO20070969L (ru)
NZ (1) NZ553353A (ru)
RU (1) RU2392737C2 (ru)
UA (2) UA94695C2 (ru)
WO (1) WO2006098748A2 (ru)
ZA (1) ZA200701499B (ru)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7395490B2 (en) * 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
US7617432B2 (en) * 2004-11-10 2009-11-10 Qualcomm Incorporated Hierarchical design and layout optimizations for high throughput parallel LDPC decoders
US7958424B2 (en) * 2005-06-22 2011-06-07 Trident Microsystems (Far East) Ltd. Multi-channel LDPC decoder architecture
US7934147B2 (en) * 2005-08-03 2011-04-26 Qualcomm Incorporated Turbo LDPC decoding
US7853862B2 (en) * 2005-08-03 2010-12-14 Qualcomm Incorporated Systems and methods for a turbo low-density parity-check decoder
US8196025B2 (en) * 2005-08-03 2012-06-05 Qualcomm Incorporated Turbo LDPC decoding
US8180605B1 (en) * 2005-11-23 2012-05-15 Livermore Software Technology Corporation Methods and systems for creating a smooth contact-impact interface in finite element analysis
US7818649B1 (en) * 2005-11-30 2010-10-19 Aquantia Corporation Efficient message passing scheme of iterative error correcting decoders
KR101102396B1 (ko) * 2006-02-08 2012-01-05 엘지전자 주식회사 이동통신 시스템에서의 코드워드 크기 정합 방법 및 송신장치
TW201334425A (zh) * 2007-01-24 2013-08-16 Qualcomm Inc 可變大小之封包的低密度同位檢查編碼與解碼
US8151171B2 (en) 2007-05-07 2012-04-03 Broadcom Corporation Operational parameter adaptable LDPC (low density parity check) decoder
US8095860B2 (en) * 2007-05-23 2012-01-10 The Royal Institution For The Advancement Of Learning/Mcgill University Method for implementing stochastic equality nodes
US8166364B2 (en) 2008-08-04 2012-04-24 Seagate Technology Llc Low density parity check decoder using multiple variable node degree distribution codes
US8261166B2 (en) * 2008-09-17 2012-09-04 Seagate Technology Llc Node processor for use with low density parity check decoder using multiple variable node degree distribution codes
US8443270B2 (en) * 2008-12-09 2013-05-14 Entropic Communications, Inc. Multiple input hardware reuse using LDPC codes
JP5440836B2 (ja) * 2009-03-24 2014-03-12 ソニー株式会社 受信装置及び方法、プログラム、並びに受信システム
US8407550B2 (en) * 2009-08-14 2013-03-26 Mitsubishi Electric Research Laboratories, Inc. Method and system for decoding graph-based codes using message-passing with difference-map dynamics
TWI419481B (zh) * 2009-12-31 2013-12-11 Nat Univ Tsing Hua 低密度奇偶檢查碼編解碼器及其方法
US8971261B2 (en) 2010-06-02 2015-03-03 Samsung Electronics Co., Ltd. Method and system for transmitting channel state information in wireless communication systems
US8732565B2 (en) 2010-06-14 2014-05-20 Samsung Electronics Co., Ltd. Method and apparatus for parallel processing in a gigabit LDPC decoder
US9634693B2 (en) * 2010-08-12 2017-04-25 Samsung Electronics Co., Ltd Apparatus and method for decoding LDPC codes in a communications system
US8650464B1 (en) * 2010-09-07 2014-02-11 Applied Micro Circuits Corporation Symmetric diagonal interleaving and encoding/decoding circuit and method
US8650456B2 (en) * 2010-09-08 2014-02-11 Marvell World Trade Ltd. Decoder based data recovery
CN107276717B (zh) * 2010-10-08 2020-06-26 黑莓有限公司 用于获得改进的码性能的消息重新排布
US8769365B2 (en) 2010-10-08 2014-07-01 Blackberry Limited Message rearrangement for improved wireless code performance
US8875000B2 (en) * 2010-11-01 2014-10-28 Marvell World Trade Ltd. Methods and systems systems for encoding and decoding in trellis coded modulation systems
US8726122B2 (en) * 2011-05-11 2014-05-13 Samsung Electronics Co., Ltd. High throughput LDPC decoder
US9203434B1 (en) 2012-03-09 2015-12-01 Western Digital Technologies, Inc. Systems and methods for improved encoding of data in data storage devices
US9230596B2 (en) * 2012-03-22 2016-01-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for variable rate coding in a data processing system
EP2847876B1 (en) 2012-05-11 2016-10-05 BlackBerry Limited Method and system for uplink harq and csi multiplexing for carrier aggregation
US8605383B1 (en) 2012-05-21 2013-12-10 Western Digital Technologies, Inc. Methods, devices and systems for characterizing polarities of piezoelectric (PZT) elements of a two PZT element microactuator
US8689076B2 (en) * 2012-07-02 2014-04-01 Lsi Corporation Systems and methods for enhanced bit correlation usage
US8874933B2 (en) * 2012-09-28 2014-10-28 Intel Corporation Instruction set for SHA1 round processing on 128-bit data paths
US8953785B2 (en) * 2012-09-28 2015-02-10 Intel Corporation Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor
US8972826B2 (en) 2012-10-24 2015-03-03 Western Digital Technologies, Inc. Adaptive error correction codes for data storage systems
US9021339B2 (en) 2012-11-29 2015-04-28 Western Digital Technologies, Inc. Data reliability schemes for data storage systems
US9059736B2 (en) 2012-12-03 2015-06-16 Western Digital Technologies, Inc. Methods, solid state drive controllers and data storage devices having a runtime variable raid protection scheme
US9619317B1 (en) 2012-12-18 2017-04-11 Western Digital Technologies, Inc. Decoder having early decoding termination detection
US8966339B1 (en) 2012-12-18 2015-02-24 Western Digital Technologies, Inc. Decoder supporting multiple code rates and code lengths for data storage systems
US9122625B1 (en) 2012-12-18 2015-09-01 Western Digital Technologies, Inc. Error correcting code encoder supporting multiple code rates and throughput speeds for data storage systems
US9214963B1 (en) 2012-12-21 2015-12-15 Western Digital Technologies, Inc. Method and system for monitoring data channel to enable use of dynamically adjustable LDPC coding parameters in a data storage system
US8797664B1 (en) 2012-12-22 2014-08-05 Western Digital Technologies, Inc. Polarity detection of piezoelectric actuator in disk drive
RU2522299C1 (ru) * 2013-01-11 2014-07-10 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ и устройство помехоустойчивого декодирования сигналов, полученных с использованием кода проверки на четность с низкой плотностью
KR101698875B1 (ko) * 2013-03-14 2017-01-24 한국전자통신연구원 Ldpc 부호의 복호 방법 및 장치
US9564931B1 (en) * 2014-01-09 2017-02-07 Marvell International Ltd. Systems and methods for using decoders of different complexity in a hybrid decoder architecture
EP2903166A1 (en) * 2014-02-03 2015-08-05 Centre National de la Recherche Scientifique (C.N.R.S.) Multiple-vote symbol-flipping decoder for non-binary LDPC codes
CN104052500B (zh) * 2014-06-24 2017-07-07 清华大学 Ldpc码译码器及实现方法
US9153283B1 (en) 2014-09-30 2015-10-06 Western Digital Technologies, Inc. Data storage device compensating for hysteretic response of microactuator
US20160173130A1 (en) * 2014-12-10 2016-06-16 Qualcomm Incorporated Early decode attempt of lower rate lte code blocks that are repeat combined multiple times
CN105846830B (zh) * 2015-01-14 2019-07-30 北京航空航天大学 数据处理装置
US9935654B2 (en) * 2015-02-06 2018-04-03 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
US9590657B2 (en) 2015-02-06 2017-03-07 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
CN104853403B (zh) 2015-04-20 2019-02-12 小米科技有限责任公司 控制智能设备接入的方法和装置
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US11043966B2 (en) * 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US9917675B2 (en) 2016-06-01 2018-03-13 Qualcomm Incorporated Enhanced polar code constructions by strategic placement of CRC bits
US10313057B2 (en) 2016-06-01 2019-06-04 Qualcomm Incorporated Error detection in wireless communications using sectional redundancy check information
US10291354B2 (en) 2016-06-14 2019-05-14 Qualcomm Incorporated High performance, flexible, and compact low-density parity-check (LDPC) code
KR102227250B1 (ko) * 2016-07-20 2021-03-12 후아웨이 테크놀러지 컴퍼니 리미티드 코드를 인코딩 및 디코딩하기 위한 방법과 시스템
CA3026317C (en) 2016-07-27 2023-09-26 Qualcomm Incorporated Design of hybrid automatic repeat request (harq) feedback bits for polar codes
EP3293885B1 (en) * 2016-09-09 2024-01-03 Université de Bretagne Sud Check node processing for syndrome computation in the decoding of non-binary codes, in particular non-binary ldpc codes
PT3327936T (pt) * 2016-11-23 2021-06-18 Grdf Código ldpc adaptado às aplicações de baixo débito/baixo consumo tais como a leitura remota, codificador e descodificador associados
WO2018128559A1 (en) * 2017-01-09 2018-07-12 Huawei Technologies Co., Ltd. Efficiently decodable qc-ldpc code
EP3577768A4 (en) * 2017-02-06 2020-11-25 Telefonaktiebolaget LM Ericsson (Publ) SEGMENTATION OF LDPC CODE BLOCKS
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
WO2019018120A1 (en) 2017-07-07 2019-01-24 Qualcomm Incorporated COMMUNICATION TECHNIQUES APPLYING A BASIC GRAPH SELECTION FOR A LOW DENSITY PARITY CHECK CODE
CN109639392B (zh) * 2018-11-09 2020-03-27 清华大学 广播信道传输的空间耦合ldpc码的构造方法及系统
CN109952729B (zh) * 2019-01-31 2021-12-03 香港应用科技研究院有限公司 并行ldpc解码器
CN110995285B (zh) * 2019-12-27 2023-05-05 成都达安众科技有限公司 一种uhf rfid分步式指令解码方法及芯片
US11265016B2 (en) * 2020-07-06 2022-03-01 Intel Corporation Decoding apparatus, device, method and computer program
RU2747050C1 (ru) * 2020-11-13 2021-04-23 Акционерное Общество "Крафтвэй Корпорэйшн Плс" Способ декодирования данных на основе LDPC кода

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3542756A (en) 1968-02-07 1970-11-24 Codex Corp Error correcting
US3665396A (en) 1968-10-11 1972-05-23 Codex Corp Sequential decoding
US4295218A (en) 1979-06-25 1981-10-13 Regents Of The University Of California Error-correcting coding system
US5293489A (en) 1985-01-24 1994-03-08 Nec Corporation Circuit arrangement capable of centralizing control of a switching network
US5271042A (en) 1989-10-13 1993-12-14 Motorola, Inc. Soft decision decoding with channel equalization
US5157671A (en) 1990-05-29 1992-10-20 Space Systems/Loral, Inc. Semi-systolic architecture for decoding error-correcting codes
US5313609A (en) 1991-05-23 1994-05-17 International Business Machines Corporation Optimum write-back strategy for directory-based cache coherence protocols
US5396518A (en) 1993-05-05 1995-03-07 Gi Corporation Apparatus and method for communicating digital data using trellis coding with punctured convolutional codes
US5457704A (en) 1993-05-21 1995-10-10 At&T Ipm Corp. Post processing method and apparatus for symbol reliability generation
US5526501A (en) 1993-08-12 1996-06-11 Hughes Aircraft Company Variable accuracy indirect addressing scheme for SIMD multi-processors and apparatus implementing same
US5615298A (en) 1994-03-14 1997-03-25 Lucent Technologies Inc. Excitation signal synthesis during frame erasure or packet loss
US5860085A (en) 1994-08-01 1999-01-12 Cypress Semiconductor Corporation Instruction set for a content addressable memory array with read/write circuits and an interface register logic block
CA2156889C (en) * 1994-09-30 1999-11-02 Edward L. Schwartz Method and apparatus for encoding and decoding data
US5671221A (en) 1995-06-14 1997-09-23 Sharp Microelectronics Technology, Inc. Receiving method and apparatus for use in a spread-spectrum communication system
US5867538A (en) 1995-08-15 1999-02-02 Hughes Electronics Corporation Computational simplified detection of digitally modulated radio signals providing a detection of probability for each symbol
US5721745A (en) 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor
US5968198A (en) 1996-08-16 1999-10-19 Ericsson, Inc. Decoder utilizing soft information output to minimize error rates
US5892962A (en) 1996-11-12 1999-04-06 Lucent Technologies Inc. FPGA-based processor
US5909572A (en) 1996-12-02 1999-06-01 Compaq Computer Corp. System and method for conditionally moving an operand from a source register to a destination register
US6438180B1 (en) 1997-05-09 2002-08-20 Carnegie Mellon University Soft and hard sequence detection in ISI memory channels
GB2326253A (en) 1997-06-10 1998-12-16 Advanced Risc Mach Ltd Coprocessor data access control
US5933650A (en) 1997-10-09 1999-08-03 Mips Technologies, Inc. Alignment and ordering of vector elements for single instruction multiple data processing
US5864703A (en) 1997-10-09 1999-01-26 Mips Technologies, Inc. Method for providing extended precision in SIMD vector arithmetic operations
US6195777B1 (en) 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6185418B1 (en) 1997-11-07 2001-02-06 Lucent Technologies Inc. Adaptive digital radio communication system
US6339834B1 (en) 1998-05-28 2002-01-15 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communication Research Centre Interleaving with golden section increments
DE69931751T2 (de) 1998-08-20 2006-10-19 Samsung Electronics Co., Ltd. Vorrichtung und verfahren zur einfügung von vorher bekannten bits in die eingangsstufe eines kanalkodierers
ATE270795T1 (de) 1998-09-28 2004-07-15 Comtech Telecomm Corp Turbo produktkode decodierer
US6247158B1 (en) 1998-11-30 2001-06-12 Itt Manufacturing Enterprises, Inc. Digital broadcasting system and method
US6397240B1 (en) 1999-02-18 2002-05-28 Agere Systems Guardian Corp. Programmable accelerator for a programmable processor system
US6795947B1 (en) * 1999-10-07 2004-09-21 The Regents Of The University Of California Parity check outer code and runlength constrained outer code usable with parity bits
US6473010B1 (en) 2000-04-04 2002-10-29 Marvell International, Ltd. Method and apparatus for determining error correction code failure rate for iterative decoding algorithms
US7184486B1 (en) * 2000-04-27 2007-02-27 Marvell International Ltd. LDPC encoder and decoder and method thereof
KR20100046063A (ko) * 2000-06-16 2010-05-04 어웨어, 인크. Ldpc 코드형 변조를 위한 시스템 및 방법
AU2001283012A1 (en) 2000-07-28 2002-02-13 Incyte Genomics, Inc. Protein phosphatases
US6631494B2 (en) * 2000-12-07 2003-10-07 Maxtor Corporation Ameliorating the adverse impact of burst errors on the operation of ISI detectors
US6754804B1 (en) 2000-12-29 2004-06-22 Mips Technologies, Inc. Coprocessor interface transferring multiple instructions simultaneously along with issue path designation and/or issue order designation for the instructions
US6731700B1 (en) 2001-01-04 2004-05-04 Comsys Communication & Signal Processing Ltd. Soft decision output generator
US6567465B2 (en) 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
US6938196B2 (en) * 2001-06-15 2005-08-30 Flarion Technologies, Inc. Node processors for use in parity check decoders
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6842873B1 (en) * 2001-07-10 2005-01-11 Lsi Logic Corporation Advanced forward error correction
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
WO2003021440A1 (en) 2001-09-01 2003-03-13 Bermai, Inc. Decoding architecture for low density parity check codes
JP3808769B2 (ja) * 2001-12-27 2006-08-16 三菱電機株式会社 Ldpc符号用検査行列生成方法
US6718504B1 (en) 2002-06-05 2004-04-06 Arc International Method and apparatus for implementing a data processor adapted for turbo decoding
JP3917563B2 (ja) 2002-07-03 2007-05-23 ヒューズ・エレクトロニクス・コーポレーション 低密度のパリティチェック(ldpc)コードをデコードする方法およびシステム
US7178080B2 (en) 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
US6961888B2 (en) 2002-08-20 2005-11-01 Flarion Technologies, Inc. Methods and apparatus for encoding LDPC codes
KR20040036460A (ko) * 2002-10-26 2004-04-30 삼성전자주식회사 Ldpc 복호화 장치 및 그 방법
US7702986B2 (en) * 2002-11-18 2010-04-20 Qualcomm Incorporated Rate-compatible LDPC codes
JP2006508577A (ja) * 2002-11-27 2006-03-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ランニングミニマム・メッセージパッシングldpc復号化
JP4062435B2 (ja) 2002-12-03 2008-03-19 日本電気株式会社 誤り訂正符号復号装置
US6957375B2 (en) 2003-02-26 2005-10-18 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (LDPC) code operations using a multi-level permutation
US7139959B2 (en) 2003-03-24 2006-11-21 Texas Instruments Incorporated Layered low density parity check decoding for digital communications
US6724327B1 (en) * 2003-05-29 2004-04-20 Texas Instruments Incorporated Lower latency coding/decoding
US7222284B2 (en) * 2003-06-26 2007-05-22 Nokia Corporation Low-density parity-check codes for multiple code rates
KR100809619B1 (ko) * 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
JP4123109B2 (ja) * 2003-08-29 2008-07-23 日本ビクター株式会社 変調装置及び変調方法並びに復調装置及び復調方法
US7174495B2 (en) 2003-12-19 2007-02-06 Emmanuel Boutillon LDPC decoder, corresponding method, system and computer program
US7395495B2 (en) * 2004-01-12 2008-07-01 Intel Corporation Method and apparatus for decoding forward error correction codes
US8374284B2 (en) 2004-02-12 2013-02-12 Apple, Inc. Universal decoder
US7260763B2 (en) * 2004-03-11 2007-08-21 Nortel Networks Limited Algebraic low-density parity check code design for variable block sizes and code rates
US7251769B2 (en) * 2004-03-17 2007-07-31 Lucent Technologies Inc. Methods and apparatus for communication using generalized low density parity check codes
KR100678176B1 (ko) * 2004-04-28 2007-02-28 삼성전자주식회사 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법
US7395490B2 (en) * 2004-07-21 2008-07-01 Qualcomm Incorporated LDPC decoding methods and apparatus
US7458010B2 (en) * 2004-08-05 2008-11-25 Nokia Corporation Irregularly structured, low density parity check codes
US11079672B2 (en) 2018-10-31 2021-08-03 Taiwan Semiconductor Manufacturing Company Ltd. Method and system for layout enhancement based on inter-cell correlation

Also Published As

Publication number Publication date
CN101895300A (zh) 2010-11-24
CA2672074C (en) 2013-10-08
EP2369749A2 (en) 2011-09-28
WO2006098748A3 (en) 2008-09-25
EP1787396A4 (en) 2010-06-30
AU2010200777A1 (en) 2010-03-25
RU2392737C2 (ru) 2010-06-20
EP2369749A3 (en) 2012-08-15
CA2577794C (en) 2009-10-06
CN101895301B (zh) 2012-11-14
US8683289B2 (en) 2014-03-25
UA96108C2 (ru) 2011-09-26
AU2010200776B2 (en) 2011-03-17
AU2005329064B2 (en) 2010-07-01
US7395490B2 (en) 2008-07-01
AU2010200776A1 (en) 2010-03-25
US20060020868A1 (en) 2006-01-26
HK1150476A1 (en) 2011-12-30
EP1787396A2 (en) 2007-05-23
KR100883459B1 (ko) 2009-02-16
CN101895300B (zh) 2012-07-04
HK1150475A1 (en) 2011-12-30
KR20080081993A (ko) 2008-09-10
EP2369750A3 (en) 2012-08-01
CN101449463B (zh) 2012-02-01
AU2005329064A1 (en) 2006-09-21
US20090063933A1 (en) 2009-03-05
AU2010200777B2 (en) 2011-11-24
KR100936335B1 (ko) 2010-01-12
CA2577794A1 (en) 2006-09-21
ZA200701499B (en) 2009-09-30
KR20080081352A (ko) 2008-09-09
NO20070969L (no) 2007-04-23
US8595569B2 (en) 2013-11-26
KR20070039152A (ko) 2007-04-11
HK1131474A1 (en) 2010-01-22
WO2006098748A2 (en) 2006-09-21
CN101449463A (zh) 2009-06-03
AU2010200778A1 (en) 2010-03-25
NZ553353A (en) 2010-02-26
CA2672074A1 (en) 2006-09-21
UA94695C2 (ru) 2011-06-10
EP2369750A2 (en) 2011-09-28
CN101895301A (zh) 2010-11-24
KR100937679B1 (ko) 2010-01-19
US20090063925A1 (en) 2009-03-05
AU2010200778B2 (en) 2011-03-10

Similar Documents

Publication Publication Date Title
RU2007106457A (ru) Способы и устройство ldpc-декодирования
RU2007106450A (ru) Способы и устройство ldpc-кодирования
US5150430A (en) Lossless data compression circuit and method
JP2830280B2 (ja) 可変長ストリング符合装置
KR101753498B1 (ko) 신뢰도 데이터 업데이트
CA2536259A1 (en) Methods and apparatus for encoding ldpc codes
EP2264907A3 (en) Methods and apparatus for decoding LDPC codes
JP2004364233A5 (ru)
JP4339886B2 (ja) マルチレベルの置換を使用する低密度パリティチェック(ldpc)符号動作を行うための方法および装置
TWI520501B (zh) 記憶體控制器
CN101473383B (zh) 具有错误校正能力和高效率的部分字写操作的存储器设备
CN103283149A (zh) 用于处理数据元素序列的装置和方法
US10289348B2 (en) Tapered variable node memory
US7870458B2 (en) Parallel arrangement of serial concatenated convolutional code decoders with optimized organization of data for efficient use of memory resources
KR101030726B1 (ko) 확률적 테이블에 의해 생성된 심볼을 기반으로 호프만 테이블을 적용한 메모리 효율이 개선된 멀티미디어용 호프만 디코딩 방법 및 장치
JPWO2010053152A1 (ja) 復号装置、この復号装置を有するデータ通信装置およびデータ記憶装置
US8220992B2 (en) Digital temperature information generating apparatus for semiconductor integrated circuit
KR20130055095A (ko) 연접 비씨에이치 부호, 복호 및 다계층 복호 회로 및 방법, 이를 이용한 플래쉬 메모리 장치의 오류 정정 회로 및 플래쉬 메모리 장치
CN110795271A (zh) 对用户数据执行纠错的纠错电路和使用其的纠错方法
CN102201817A (zh) 基于存储器折叠架构优化的低功耗ldpc译码器
KR20140006444A (ko) 연접 비씨에이치 부호, 복호 및 다계층 복호 회로 및 방법, 이를 이용한 플래쉬 메모리 장치의 오류 정정 회로 및 플래쉬 메모리 장치
US9244685B2 (en) System and method for check-node unit message processing
RU2747050C1 (ru) Способ декодирования данных на основе LDPC кода
RU2007107795A (ru) Эффективные по использованию памяти способы декодирования кодов с низкой плотностью контроля по честности (ldpc) и устройства для осуществления этих способов
TWI804359B (zh) 低密度奇偶校檢碼的解碼方法及裝置