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

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

Info

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
Application number
RU2013152333/08A
Other languages
English (en)
Other versions
RU2571597C2 (ru
Inventor
Цзиньчжоу ДУ
Original Assignee
ЗетТиИ Корпорейшн
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 ЗетТиИ Корпорейшн filed Critical ЗетТиИ Корпорейшн
Publication of RU2013152333A publication Critical patent/RU2013152333A/ru
Application granted granted Critical
Publication of RU2571597C2 publication Critical patent/RU2571597C2/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/29Coding, 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/2957Turbo codes and decoding
    • H03M13/2978Particular arrangement of the component decoders
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3972Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
    • 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/6522Intended application, e.g. transmission or communication standard
    • H03M13/65253GPP LTE including E-UTRA
    • 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/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/6583Normalization 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 декодируемых кодовых блоков, и если результат проверки удовлетворительный, то остановки итерации и завершения процесса декодирования, а в противном случае - выполнения следующего итерационного процесса с использованием априорной информации, выводимой каждым путем.
RU2013152333/08A 2011-04-26 2012-04-06 Способ и устройство для декодирования турбокода RU2571597C2 (ru)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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码双向并行译码方法

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