RU2013152333A - Способ и устройство для декодирования турбокода - Google Patents
Способ и устройство для декодирования турбокода Download PDFInfo
- Publication number
- RU2013152333A RU2013152333A RU2013152333/08A RU2013152333A RU2013152333A RU 2013152333 A RU2013152333 A RU 2013152333A RU 2013152333/08 A RU2013152333/08 A RU 2013152333/08A RU 2013152333 A RU2013152333 A RU 2013152333A RU 2013152333 A RU2013152333 A RU 2013152333A
- Authority
- RU
- Russia
- Prior art keywords
- intermediate variables
- current path
- beginning
- decoding
- code blocks
- Prior art date
Links
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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
- H03M13/2978—Particular arrangement of the component decoders
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3972—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
-
- 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/6522—Intended application, e.g. transmission or communication standard
- H03M13/6525—3GPP LTE including E-UTRA
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
1. Способ декодирования турбокода, характеризующийся тем, что в каждой процедуре итерации при выполнении многопутевого параллельного декодирования декодируемых кодовых блоков, когда модуль декодирования каждого пути выполняет декодирование, способ включает:получение модулем декодирования для декодируемых кодовых блоков в текущем пути всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу и в то же самое время получение всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу;получение модулем декодирования всех логарифмических отношений правдоподобия текущего пути согласно всем полученным первым промежуточным переменным и вторым промежуточным переменным, а также всем метрикам ветвей декодируемых кодовых блоков; иполучение модулем декодирования априорной информации и вывод результата декодирования текущего пути согласно всем логарифмическим отношениям правдоподобия.2. Способ по п.1, отличающийся тем, что получение модулем декодирования всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу и в то же самое время получение всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу включает:получение модулем декодирования всех метрик ветвей текущего пути посредством рекуррентного вычисления от начала к концу и получение всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу согласно всем полученным метрикам ветвей; и, в то же самое времяпол
Claims (13)
1. Способ декодирования турбокода, характеризующийся тем, что в каждой процедуре итерации при выполнении многопутевого параллельного декодирования декодируемых кодовых блоков, когда модуль декодирования каждого пути выполняет декодирование, способ включает:
получение модулем декодирования для декодируемых кодовых блоков в текущем пути всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу и в то же самое время получение всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу;
получение модулем декодирования всех логарифмических отношений правдоподобия текущего пути согласно всем полученным первым промежуточным переменным и вторым промежуточным переменным, а также всем метрикам ветвей декодируемых кодовых блоков; и
получение модулем декодирования априорной информации и вывод результата декодирования текущего пути согласно всем логарифмическим отношениям правдоподобия.
2. Способ по п.1, отличающийся тем, что получение модулем декодирования всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу и в то же самое время получение всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу включает:
получение модулем декодирования всех метрик ветвей текущего пути посредством рекуррентного вычисления от начала к концу и получение всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу согласно всем полученным метрикам ветвей; и, в то же самое время
получение модулем декодирования всех метрик ветвей текущего пути посредством рекуррентного вычисления от конца к началу и получение всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу согласно всем метрикам ветвей, полученным в этот раз.
3. Способ по п.2, отличающийся тем, что получение модулем декодирования всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу согласно всем полученным метрикам ветвей включает:
при рекуррентном вычислении первой, считая от начала к концу, из первых промежуточных переменных передней половины декодируемых кодовых блоков текущего пути после выполнения операции суммирования во время выполнения операции нормализации, выполнение модулем декодирования операции суммирования для рекуррентного вычисления первой, считая от начала к концу, из первых промежуточных переменных задней половины декодируемых кодовых блоков; и
выполнение модулем декодирования операции суммирования для рекуррентного вычисления второй, считая от начала к концу, из первых промежуточных переменных передней половины и в то же самое время выполнение операции нормализации первой, считая от начала к концу, из первых промежуточных переменных задней половины, затем выполнение операции суммирования для второй, считая от начала к концу, из первых промежуточных переменных задней половины во время выполнения операции нормализации второй, считая от начала к концу, из первых промежуточных переменных передней половины и так далее, чтобы получить все первые промежуточные переменные текущего пути посредством рекуррентного вычисления.
4. Способ по п.3, отличающийся тем, что получение модулем декодирования всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу согласно всем полученным метрикам ветвей включает:
при рекуррентном вычислении первой, считая от конца к началу, из вторых промежуточных переменных задней половины декодируемых кодовых блоков текущего пути после выполнения операции суммирования во время выполнения операции нормализации выполнение модулем декодирования операции суммирования для рекуррентного вычисления первой, считая от конца к началу, из вторых промежуточных переменных передней половины текущего пути декодируемых кодовых блоков; и
выполнение модулем декодирования операции суммирования для рекуррентного вычисления второй, считая от конца к началу, из вторых промежуточных переменных задней половины и в то же самое время выполнение операции нормализации первой, считая от конца к началу, из вторых промежуточных переменных передней половины, и выполнение операции суммирования для второй, считая от конца к началу, из вторых промежуточных переменных передней половины во время выполнения операции нормализации второй, считая от конца к началу, из вторых промежуточных переменных задней половины и так далее, чтобы получить все вторые промежуточные переменные текущего пути посредством рекуррентного вычисления.
5. Способ по п.4, отличающийся тем, что он дополнительно включает: сохранение в памяти модулем декодирования первых промежуточных переменных, соответствующих передней половине кодовых блоков передней половины, и первых промежуточных переменных, соответствующих передней половине кодовых блоков задней половины; а также сохранение в памяти модулем декодирования вторых промежуточных переменных, соответствующих задней половине кодовых блоков задней половины, и вторых промежуточных переменных, соответствующих задней половине кодовых блоков передней половины.
6. Способ по п.5, отличающийся тем, что получение модулем декодирования всех логарифмические отношений правдоподобия текущего пути согласно всем полученным первым промежуточным переменным и вторым промежуточным переменным, а также всем метрикам ветвей декодируемых кодовых блоков включает:
при рекуррентном вычислении первых промежуточных переменных, соответствующих задней половине кодовых блоков передней половины, и первых промежуточных переменных, соответствующих задней половине кодовых блоков задней половины, каждый раз получение одной из первых промежуточных переменных посредством рекуррентного вычисления, считывание модулем декодирования хранящейся в памяти второй промежуточной переменной, соответствующей этой позиции, и получение одного логарифмического отношения правдоподобия, соответствующего этой позиции, согласно первой промежуточной переменной, второй промежуточной переменной и метрике ветви, соответствующих этой позиции; и
при рекуррентном вычислении вторых промежуточных переменных, соответствующих передней половине кодовых блоков задней половины, и вторых промежуточных переменных, соответствующих передней половине кодовых блоков передней половины, получение каждый раз одной из вторых промежуточных переменных посредством рекуррентного вычисления, считывание модулем декодирования хранящейся в памяти первой промежуточной переменной, соответствующей этой позиции, и получение одного логарифмического отношения правдоподобия, соответствующего этой позиции, согласно второй промежуточной переменной, первой промежуточной переменной и метрике ветви, соответствующих этой позиции.
7. Способ по любому из п.п.1-6, отличающийся тем, что после получения результата декодирования каждого пути способ дополнительно включает:
выполнение проверки циклическим избыточным кодом (CRC) согласно результату декодирования каждого пути и коду CRC декодируемого кодового блока, и если результат проверки удовлетворительный, то остановку итерации и завершение процесса декодирования, а в противном случае - выполнение следующего итерационного процесса с использованием априорной информации, выводимой каждым путем.
8. Устройство для турбокода, характеризующееся тем, что оно содержит модули декодирования множества путей, причем модуль декодирования каждого пути содержит:
модуль рекуррентного вычисления, сконфигурированный так, чтобы для декодируемых кодовых блоков в текущем пути получать все первые промежуточные переменные текущего пути посредством рекуррентного вычисления от начала к концу и в то же самое время получать все вторые промежуточные переменные текущего пути посредством рекуррентного вычисления от конца к началу;
модуль вычисления логарифмического отношения правдоподобия (LLR), сконфигурированный так, чтобы получать все отношения LLR текущего пути согласно всем полученным первым промежуточным переменным и вторым промежуточным переменным, а также всем метрикам ветвей декодируемых кодовых блоков; и
модуль жесткого решения, сконфигурированный так, чтобы принимать жесткое решение на основании всех отношений LLR, полученных модулем вычисления LLR, и выводить результат жесткого решения в качестве результата декодирования.
9. Устройство по п.8, отличающееся тем, что модуль рекуррентного вычисления содержит:
первый модуль вычисления метрик ветвей, сконфигурированный для получения всех метрик ветвей текущего пути посредством рекуррентного вычисления от начала к концу;
первый модуль вычисления промежуточной переменной, сконфигурированный для получения всех первых промежуточных переменных текущего пути посредством рекуррентного вычисления от начала к концу согласно всем метрикам ветвей, полученным первым модулем вычисления метрик ветвей;
второй модуль вычисления метрик ветвей, сконфигурированный для получения всех метрик ветвей текущего пути посредством рекуррентного вычисления от конца к началу; и
второй модуль вычисления промежуточной переменной, сконфигурированный для получения всех вторых промежуточных переменных текущего пути посредством рекуррентного вычисления от конца к началу согласно всем метрикам ветвей, полученным вторым модулем вычисления метрик ветвей.
10. Устройство по п.9, отличающееся тем, что первый модуль вычисления промежуточной переменной содержит первый блок суммирования и первый блок нормализации, причем
первый блок суммирования сконфигурирован для выполнения операции суммирования в процессе рекуррентного вычисления каждой из первых промежуточных переменных; и
первый блок нормализации сконфигурирован для выполнения операции нормализации в процессе рекуррентного вычисления каждой из первых промежуточных переменных.
11. Устройство по п.9, отличающееся тем, что второй модуль вычисления промежуточной переменной содержит второй блок суммирования и второй блок нормализации, причем
второй блок суммирования сконфигурирован для выполнения операции суммирования в процессе рекуррентного вычисления каждой из вторых промежуточных переменных; и
второй блок нормализации сконфигурирован для выполнения операции нормализации в процессе рекуррентного вычисления каждой из вторых промежуточных переменных.
12. Устройство по любому из п.п.8-10, отличающееся тем, что модуль декодирования дополнительно содержит:
модуль памяти, сконфигурированный для хранения первых промежуточных переменных, соответствующих передней половине кодовых блоков передней половины, и первых промежуточных переменных, соответствующих первой половине кодовых блоков задней половины, а также вторых промежуточных переменных, соответствующих задней половине кодовых блоков задней половины, и вторых промежуточных переменных, соответствующих задней половине кодовых блоков передней половины.
13. Устройство по любому из п.п.8-10, отличающееся тем, что модуль декодирования дополнительно содержит:
выходной модуль управления, сконфигурированный для выполнения проверки при помощи циклического кода (CRC) согласно результату декодирования каждого пути и коду CRC декодируемых кодовых блоков, и если результат проверки удовлетворительный, то остановки итерации и завершения процесса декодирования, а в противном случае - выполнения следующего итерационного процесса с использованием априорной информации, выводимой каждым путем.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110105086.0A CN102158235B (zh) | 2011-04-26 | 2011-04-26 | turbo译码的方法及装置 |
CN201110105086.0 | 2011-04-26 | ||
PCT/CN2012/073593 WO2012146124A1 (zh) | 2011-04-26 | 2012-04-06 | Turbo译码的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2013152333A true RU2013152333A (ru) | 2015-06-10 |
RU2571597C2 RU2571597C2 (ru) | 2015-12-20 |
Family
ID=44439457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2013152333/08A RU2571597C2 (ru) | 2011-04-26 | 2012-04-06 | Способ и устройство для декодирования турбокода |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2704330A4 (ru) |
CN (1) | CN102158235B (ru) |
RU (1) | RU2571597C2 (ru) |
WO (1) | WO2012146124A1 (ru) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103812510A (zh) * | 2012-11-15 | 2014-05-21 | 中兴通讯股份有限公司 | 译码方法及装置 |
CN103475380A (zh) * | 2013-09-06 | 2013-12-25 | 清华大学 | 用于图像处理器的并行Turbo 译码方法 |
CN103986557B (zh) * | 2014-05-23 | 2017-06-13 | 西安电子科技大学 | 低路径延迟的LTE Turbo码并行分块译码方法 |
CN107733446B (zh) * | 2016-08-12 | 2019-06-07 | 华为技术有限公司 | 译码方法及设备、译码器 |
CN109379088B (zh) * | 2018-12-13 | 2022-03-08 | 浙江天则通信技术有限公司 | 一种并行Turbo码迭代译码的方法及系统 |
CN113691263B (zh) * | 2021-08-19 | 2024-02-27 | Oppo广东移动通信有限公司 | 多比特并行校验方法及装置、存储介质及Turbo译码器 |
CN113992213B (zh) * | 2021-10-28 | 2024-06-04 | 成都星联芯通科技有限公司 | 一种双路并行译码存储设备及方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6980605B2 (en) * | 2000-01-31 | 2005-12-27 | Alan Gatherer | MAP decoding with parallelized sliding window processing |
DE10012874A1 (de) * | 2000-03-16 | 2001-09-27 | Infineon Technologies Ag | Turbo-Decodierer und Turbo-Decodierverfahren |
JP4185314B2 (ja) * | 2002-06-07 | 2008-11-26 | 富士通株式会社 | 情報記録再生装置、光ディスク装置及び、データ再生方法 |
KR100703307B1 (ko) * | 2002-08-06 | 2007-04-03 | 삼성전자주식회사 | 터보 복호화 장치 및 방법 |
JP4554366B2 (ja) * | 2002-09-18 | 2010-09-29 | エヌエックスピー ビー ヴィ | データウィンドウを使用してデータを復号化するための方法 |
DE10310812B4 (de) * | 2003-03-12 | 2007-11-22 | Infineon Technologies Ag | Dekodiervorrichtung, Trellis-Prozessor und Verfahren |
KR100606023B1 (ko) * | 2004-05-24 | 2006-07-26 | 삼성전자주식회사 | 고속 터보 복호화 장치 |
US7925964B2 (en) * | 2006-12-22 | 2011-04-12 | Intel Corporation | High-throughput memory-efficient BI-SOVA decoder architecture |
CN101026439B (zh) * | 2007-02-07 | 2012-08-29 | 重庆重邮信科通信技术有限公司 | 一种提高Turbo码译码速率的译码方法 |
US8171384B2 (en) * | 2008-06-27 | 2012-05-01 | Freescale Semiconductor, Inc. | Device having turbo decoding capabilities and a method for turbo decoding |
CN101651458A (zh) * | 2008-08-13 | 2010-02-17 | 华为技术有限公司 | Turbo并行译码方法、装置及系统 |
CN101964665B (zh) * | 2010-10-22 | 2012-11-28 | 上海交通大学 | turbo解码中基于Log-MAP的译码方法及其译码装置 |
CN102340320B (zh) * | 2011-07-08 | 2013-09-25 | 电子科技大学 | 卷积Turbo码双向并行译码方法 |
-
2011
- 2011-04-26 CN CN201110105086.0A patent/CN102158235B/zh active Active
-
2012
- 2012-04-06 RU RU2013152333/08A patent/RU2571597C2/ru active
- 2012-04-06 WO PCT/CN2012/073593 patent/WO2012146124A1/zh active Application Filing
- 2012-04-06 EP EP12776607.9A patent/EP2704330A4/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
EP2704330A1 (en) | 2014-03-05 |
CN102158235A (zh) | 2011-08-17 |
CN102158235B (zh) | 2016-11-23 |
EP2704330A4 (en) | 2014-12-17 |
WO2012146124A1 (zh) | 2012-11-01 |
RU2571597C2 (ru) | 2015-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2013152333A (ru) | Способ и устройство для декодирования турбокода | |
CN107733446B (zh) | 译码方法及设备、译码器 | |
CN104025459B (zh) | 译码处理方法及译码器 | |
KR101323444B1 (ko) | 반복적 디코더 및 반복적 디코딩 방법 | |
US8312358B2 (en) | Tail-biting decoding method and device | |
JP2004096747A5 (ru) | ||
JP2005033705A (ja) | 復号装置および復号方法 | |
CN104092470A (zh) | 一种Turbo码译码装置及方法 | |
CN112398487A (zh) | 一种降低Turbo并行译码复杂度的实现方法及系统 | |
CN105812000B (zh) | 一种改进的bch软判决译码方法 | |
RU2013147873A (ru) | Способ и устройство для измерения текущего отношения сигнал-шум при декодировании ldpc-кодов (варианты) | |
US20080152045A1 (en) | High-throughput memory-efficient BI-SOVA decoder architecture | |
CN107708146B (zh) | 卫星终端测量信号功率的方法、装置及卫星终端 | |
CN116707707A (zh) | 联合极化检测译码方法及相关设备 | |
CN110022158B (zh) | 一种译码方法及装置 | |
CN114142873B (zh) | 一种极化码译码方法及装置 | |
WO2012109872A1 (zh) | 通信系统中的循环冗余校验处理方法、装置和lte终端 | |
US20140223267A1 (en) | Radix-4 viterbi forward error correction decoding | |
US20070286292A1 (en) | Turbo Decoding with Iterative Estimation of Channel Parameters | |
CN109412749A (zh) | 数据传输方法及装置 | |
CN103916141A (zh) | Turbo码译码方法及装置 | |
WO2009158341A3 (en) | Device having turbo decoding capabilities and a method for turbo decoding | |
CN102594370B (zh) | 一种高效低延时并行钱搜索方法和装置 | |
CN113098532B (zh) | 低时延低复杂度的极化码译码方法和系统 | |
RU148377U1 (ru) | Устройство оценки вероятности ошибки на бит по результатам анализа искаженных кодовых слов |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20160530 |
|
PD4A | Correction of name of patent owner |