CN108683476B - 一种降低计算复杂度和硬件成本的硬判决译码方法 - Google Patents
一种降低计算复杂度和硬件成本的硬判决译码方法 Download PDFInfo
- Publication number
- CN108683476B CN108683476B CN201810301389.1A CN201810301389A CN108683476B CN 108683476 B CN108683476 B CN 108683476B CN 201810301389 A CN201810301389 A CN 201810301389A CN 108683476 B CN108683476 B CN 108683476B
- Authority
- CN
- China
- Prior art keywords
- iteration
- processing unit
- output
- order
- data stream
- 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
- 238000000034 method Methods 0.000 title claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 39
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims description 2
- 208000011580 syndromic disease Diseases 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0052—Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
-
- 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明涉及一种降低计算复杂度和硬件成本的硬判决译码方法,基于CS‑RiBM算法进行改进,包括下面几个方面:(1)在保证得到正确译码结果的前提下,采用新的初始化条件,直接将新数据流中的第1次迭代的结果赋值为初始值进行运算;(2)加入判断校验子的0次项s0是否为0的机制;(3)删除每次迭代中必然出现的一个零值,即减少一个冗余的处理单元;(4)为实现在合适的时机将输出设为0,对原处理单元进行一定的修改,修改后的处理单元与原来处理单元相比,加入一个二路选择器用以在合适的时机将输出设置为0。
Description
所属技术领域
本发明属于信道编码中差错控制编码领域,涉及一种降低计算复杂度和硬件成本的硬判决译码算法。
背景技术
随着科技进步和发展,信息交换日益频繁,通信技术现已能克服对空间和时间的限制,正向着数字化、综合化、智能化等方向快速发展。相比于模拟通信,数字通信具有抗干扰能力强、灵活性高、便于集成化、可实现高质量的远距离通信、易于加密等优点,因此应用范围越来越广,已成为现代通信的主要传输方式。然而,由于传输信道的不理想,数字信号在传输过程中会不可避免地受到外界噪声干扰而出现传输错误,如何利用差错控制以使数据得到可靠重现成为数字通信系统设计的一个重要课题。在各类常见的差错控制码中,RS码属于非二进制BCH码最重要的一个子类,具有非常出色的纠正随机符号错误和随机突发错误能力,因此在通信和数据存储中得到广泛的应用,涉及从深空通信到高密度磁盘等多个方面。
RS码的译码算法主要有两大类:软判决译码算法和硬判决译码算法。硬判决虽然不能获得与软判决相当的译码增益,但是译码算法和VLSI实现都比较简单,因此成为目前的工业实现中的主流算法。BM(Berlekamp-Massey)算法作为最经典的译码算法之一,由于存在大量的求逆运算导致硬件实现较为困难,因此去除了逆运算单元的iBM(inversionless BM)算法被提出。然而iBM算法仍然存在硬件架构不规则且关键路径延迟过长的问题,因此RiBM(Reformulated inversionless BM)算法进入了人们的视线。RiBM硬件架构包含了3t+1个齐次的处理单元(ProcessingElement,PE),排列规则,仅需要2t次迭代就可以完成错误位置多项式和错误估值多项式的计算,每次迭代占1个时钟周期,因此完成计算总共需要2t个时钟周期,在本说明中,t指代RS码的纠错能力。目前最先进的硬判决译码算法是2016年在RiBM算法基础上衍生出的CS-RiBM(Compensated Simplified-Reformulated inversionless BM)算法,该算法在保证译码性能不损失的前提下,去掉了t-1个冗余的处理单元,显著降低了硬件资源消耗。
值得注意的是,一方面,以上几种算法的迭代次数均为2t,由于未与具体的数据流实例相结合,因此缺少缩减迭代次数的相关研究或发现。另一方面,从理论层面分析,在每次迭代中,错误位置多项式系数至多占据t+1个处理单元,错误估值多项式系数至多占据t个处理单元,因此必不可少的处理单元数目是2t+1。而即使在最先进的CS-RiBM译码架构中,处理单元数目仍为2t+2个。综上两方面所述,以CS-RiBM算法为基础,一个能够最大限度降低计算复杂度和硬件成本的硬判决译码方法需要得到进一步的研究。
发明内容
本发明的目的在于提供一种保证译码器译码性能的前提下,最大程度地缩减迭代次数、精简译码器架构的硬判决译码方法,主要技术方案如下:
一种降低计算复杂度和硬件成本的硬判决译码方法,基于CS-RiBM算法进行改进,包括下面几个方面:
(1)在保证得到正确译码结果的前提下,采用新的初始化条件:得到新的数据流,Δ(r,z)指代错误位置多项式Λ(r,z)和校验子多项式S(z)的乘积,指代Δ(r,z)的高阶部分;Θ(r,z)指代中间多项式B(r,z)和S(z)的乘积,指代Θ(r,z)的高阶部分,指代和B(r,z)的组合多项式,之后直接将新数据流中的第1次迭代的结果赋值为初始值进行运算;
(3)删除每次迭代中必然出现的一个零值,即减少一个冗余的处理单元,具体操作是:在迭代过程中,若相邻两次迭代第r次迭代和第r+1次迭代中零值出现在相同的第i个处理单元PEi,在删去第r次迭代中的零值后,为保证数据流的有序,将第r次迭代中第i+1个处理单元PEi+1的输出设置为0,同时将第r+1次迭代中第i-1个处理单元PEi-1的输入也设置为0;若相邻两次迭代中零值出现在不同的处理单元PEi和PEi-1,可以直接删去这两处的零值而不用对其他处理单元的输入输出做出改变;
(4)为实现在合适的时机将输出设为0,对原处理单元进行一定的修改,修改后的处理单元与原来处理单元相比,加入一个二路选择器用以在合适的时机将输出设置为0。
本发明针对目前最先进的硬判决译码算法——CS-RiBM算法仍存在优化空间的问题,提出将新的初始化设置方法引入该算法,最终减少了迭代运算的次数,降低了运算的时间复杂度。之后,为了进一步删去冗余的零输入零输出单元,对处理单元、补偿单元和控制单元均作出相应修改,最终显著降低了硬判决译码算法的硬件成本。在本发明中,利用上述方法可以在保证译码性能不损失的前提下最大程度地缩减迭代次数、精简译码器架构。
附图说明
图1为RS(255,239)码执行改进后算法的数据流例子示意图。
图2为消去零值前后示意图。(1)消去零值前对应的输入输出;(2)消去零值后对应的输入输出。
图3为PE4处理单元。
图4为控制单元示意图。(1)控制单元CONTROL1;(2)修改后的控制单元CONTROL3。
图5为调整后的关键方程求解模块整体架构图。
具体实施方式
本发明主要针对CS-RiBM硬判决译码算法,结合具体的数据流实例,通过设置新的初始化条件达到缩减迭代周期、减小时间复杂度的目标。在更改初始化值的基础上,通过分析各数据间输入和输出的关系,进一步删除不必要的单元,精简译码器架构,降低硬件成本,实现硬件成本的最小化。
下面结合附图和实例对本发明进行详述。为方便起见,本说明中一律以用途最广泛的RS(255,239)码(t=8)作为实例进行阐述,相关参数含义如表1所示。
(1)对于RS码的CS-RiBM译码算法,原来的初始化条件是:通过Modelsim仿真发现,若采用新的初始化条件:同样可以得到正确的译码结果。在此情况下,根据s0是否为0作以下分析:若s0=0,则根据原算法:到2t+1,γ(0)=1可得若s0≠0,由于同样可以得到由以上分析可得,第1次迭代(r=0)产生的值仅是初始化值的移位,因此可以直接将第1次迭代的结果作为初始值,即去掉一次迭代计算,并由此得到新的数据流。
(3)经过对初始化值的修改,当前的译码器数据流例子如图1所示,当前的迭代次数是2t-1,注意到在每次迭代中,错误位置多项式和错误估值多项式之间总是相隔着至少1个零值。在现有的算法条件下,这个零值负责为错误估值多项式的最后一个系数和错误位置多项式的第一个系数的更新计算提供必要的乘数。为进一步减小硬件资源的消耗,提出一种可以删除每次迭代中的零值的方法,即减少一个PE。具体操作是:在迭代过程中,若相邻两次迭代(第r次迭代和第r+1次迭代)中零值出现在相同的处理单元PEi,在删去第r次迭代中的零值后,为保证数据流的有序,需要将第r次迭代中PEi+1处理单元的输出设置为0,同时将第r+1次迭代中PEi-1处理单元的输入也设置为0;若相邻两次迭代(第r次迭代和第r+1次迭代)中零值出现在不同的处理单元PEi和PEi-1,可以直接删去这两处的零值而不用对其他处理单元的输入输出做出改变。以图1实线框内的数据作为例子进行分析,虚线框里就是想去掉的零值。由于其他的数据无论是否为0,并不影响分析,所以为方便起见将其他的数据(包括打算去掉的零值)进行编号,如图2所示。目的是去掉δ10,δ11,δ12,δ13和δ04处的零值,其中δ10的作用是输出(零值)作为δ01的输入,δ20的作用是输出(零值)作为δ11的输入。若去掉δ10和δ11,为了不使数据流发生紊乱,将δ20的输出设为0,作为δ01的输入即可满足要求。同理,若去掉δ11和δ12,需要将δ21的输出设为0,作为δ02的输入。若去掉δ12和δ13,需要将δ22的输出设为0,作为δ03的输入,需要注意,因为δ13到δ04是零输入零输出,所以不必将δ23的输出强制设为0作为δ04的输入,仍然按照原来的设定将δ23的输出作为δ14单元的输入即可。δ14到δ05、δ24到δ15的情况可类比于δ23到δ14的分析。
(4)为了实现在合适的时机将输出设为0,需要对原来的处理单元进行一定的修改。需要修改的PE有t=8个(PE39-16),图3展示的是对CS-RiBM算法架构中的PE3进行修改而得到的PE4单元。与PE3相比,PE4加入了一个二路选择器用以在合适的时机将输出设置为0。当控制信号MC6i(r)=0时,修改后的处理单元和原来一样正常地完成输出;否则,当MC6i(r)=1时,新的处理单元将会直接将0作为输出。从整个数据流来看,在新的算法中并没有损失任何一次非零数据的输入输出运算,因此译码性能不会有任何损失。
(5)由于处理单元的变化,控制单元也需要做出相应的调整,具体的控制部分电路图如图4所示,A,B,C由控制单元CONTROL1生成,CONTROL1和CONTROL3组合起来实现架构的整体控制。图5是调整后的关键方程求解模块整体架构图。
表1
Claims (1)
1.一种降低计算复杂度和硬件成本的硬判决译码方法,基于CS-RiBM算法进行改进,包括以下的步骤:
(1)在保证得到正确译码结果的前提下,采用新的初始化条件: 得到新的数据流,Δ(r,z)指代错误位置多项式Λ(r,z)和校验子多项式S(z)的乘积,指代Δ(r,z)的高阶部分;Θ(r,z)指代中间多项式B(r,z)和S(z)的乘积,指代Θ(r,z)的高阶部分,指代和B(r,z)的组合多项式,之后直接将新数据流中的第1次迭代的结果赋值为初始值进行运算;
(3)删除每次迭代中必然出现的一个零值,即减少一个冗余的处理单元,具体操作是:在迭代过程中,若相邻两次迭代第r次迭代和第r+1次迭代中零值出现在相同的第i个处理单元PEi,在删去第r次迭代中的零值后,为保证数据流的有序,将第r次迭代中第i+1个处理单元PEi+1的输出设置为0,同时将第r+1次迭代中第i-1个处理单元PEi-1的输入也设置为0;若相邻两次迭代中零值出现在不同的处理单元PEi和PEi-1,直接删去这两处的零值而不用对其他处理单元的输入输出做出改变;
(4)为实现在合适的时机将输出设为0,对原处理单元进行一定的修改,修改后的处理单元与原来处理单元相比,加入一个二路选择器用以在合适的时机将输出设置为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810301389.1A CN108683476B (zh) | 2018-04-04 | 2018-04-04 | 一种降低计算复杂度和硬件成本的硬判决译码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810301389.1A CN108683476B (zh) | 2018-04-04 | 2018-04-04 | 一种降低计算复杂度和硬件成本的硬判决译码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108683476A CN108683476A (zh) | 2018-10-19 |
CN108683476B true CN108683476B (zh) | 2021-03-26 |
Family
ID=63799891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810301389.1A Expired - Fee Related CN108683476B (zh) | 2018-04-04 | 2018-04-04 | 一种降低计算复杂度和硬件成本的硬判决译码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108683476B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1841982A (zh) * | 2005-03-31 | 2006-10-04 | 中国科学院空间科学与应用研究中心 | 一种高速译码芯片 |
CN101552613A (zh) * | 2009-05-14 | 2009-10-07 | 上海交通大学 | 基于外信息符号变化的低密度校验码译码方法 |
KR20100032102A (ko) * | 2008-09-17 | 2010-03-25 | 인하대학교 산학협력단 | 고속 저복잡 BCH 복호기의 불합도 계산이 필요 없는 RiBM 알고리즘을 이용한 오류위치 연산 방법 및 오류위치 연산 회로 |
CN102638273A (zh) * | 2012-02-29 | 2012-08-15 | 哈尔滨工业大学 | 一种提高译码器吞吐率的ar4ja码译码方法 |
CN102857234A (zh) * | 2011-06-29 | 2013-01-02 | 比亚迪股份有限公司 | Reed Solomon解码器及解码方法 |
CN104579368A (zh) * | 2014-12-11 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种信道纠错码rs码解关键方程电路 |
CN105812000A (zh) * | 2016-03-03 | 2016-07-27 | 西安电子科技大学 | 一种改进的bch软判决译码方法 |
-
2018
- 2018-04-04 CN CN201810301389.1A patent/CN108683476B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1841982A (zh) * | 2005-03-31 | 2006-10-04 | 中国科学院空间科学与应用研究中心 | 一种高速译码芯片 |
KR20100032102A (ko) * | 2008-09-17 | 2010-03-25 | 인하대학교 산학협력단 | 고속 저복잡 BCH 복호기의 불합도 계산이 필요 없는 RiBM 알고리즘을 이용한 오류위치 연산 방법 및 오류위치 연산 회로 |
CN101552613A (zh) * | 2009-05-14 | 2009-10-07 | 上海交通大学 | 基于外信息符号变化的低密度校验码译码方法 |
CN102857234A (zh) * | 2011-06-29 | 2013-01-02 | 比亚迪股份有限公司 | Reed Solomon解码器及解码方法 |
CN102638273A (zh) * | 2012-02-29 | 2012-08-15 | 哈尔滨工业大学 | 一种提高译码器吞吐率的ar4ja码译码方法 |
CN104579368A (zh) * | 2014-12-11 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种信道纠错码rs码解关键方程电路 |
CN105812000A (zh) * | 2016-03-03 | 2016-07-27 | 西安电子科技大学 | 一种改进的bch软判决译码方法 |
Non-Patent Citations (2)
Title |
---|
Area-Efficient Reed–Solomon Decoder Using Recursive Berlekamp–Massey Architecture for Optical Communication Systems;Yanyan Liu ; Zhibin Liang ; Yang Wang ; Wei Lu ; Wei Zhang;《IEEE Communications Letters》;20170802;第21卷(第11期);全文 * |
Efficient Berlekamp-Massey Algorithm and Architecture for Reed-Solomon Decoder;Zhibin Liang & Wei Zhang;《Journal of Signal Processing Systems》;20160106;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108683476A (zh) | 2018-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110915141B (zh) | 基于极化码的turbo乘积码 | |
US5471500A (en) | Soft symbol decoding | |
US5502735A (en) | Maximum likelihood sequence detector | |
US5375129A (en) | Maximum likelihood sequence detector | |
CN108847848B (zh) | 一种基于信息后处理的极化码的bp译码算法 | |
EP0771079A2 (en) | Data transmission device | |
US7184468B2 (en) | Method and system for implementing a conditional one's complement of partial address | |
US20040153942A1 (en) | Soft input soft output decoder for turbo codes | |
JP2001267938A (ja) | パラレル化されたスライディングウィンドウ処理によるmapデコーディング | |
Gabay et al. | Joint source-channel coding using real BCH codes for robust image transmission | |
JP4497744B2 (ja) | ターボ符号に関するノイズの評価方法および装置及びそれらを使用するシステム | |
EP2339757B1 (en) | Power-reduced preliminary decoded bits in viterbi decoder | |
Hiller et al. | Seesaw: An area-optimized FPGA viterbi decoder for PUFs | |
JP4814310B2 (ja) | 等化制御に関する方法及び装置 | |
CN108683476B (zh) | 一种降低计算复杂度和硬件成本的硬判决译码方法 | |
JP2002505051A (ja) | カルマンフィルタによるソース制御チャネル復号化のための方法及び装置 | |
CN103188040A (zh) | Turbo均衡及其帧间、帧内相关预测的方法和装置 | |
KR20060065452A (ko) | 리드-솔로몬 복호 장치 및 수정된 유클리드 알고리즘연산회로 | |
CN110784283B (zh) | 确定前向纠错帧边界的方法、装置和解码系统 | |
JP2003264467A (ja) | ビタビ復号回路 | |
CN117200809B (zh) | 用于纠两个误码的rs码的低功耗钱搜索和错误估值电路 | |
CN110875745A (zh) | 一种面向高速硬件电路实现的gii码译码算法 | |
Chye et al. | Development and research of models of data transmission systems with adaptation to communication channel status and implementation of “deferred precision” principle | |
US8914716B2 (en) | Resource sharing in decoder architectures | |
Zhang et al. | Novel interpolation and polynomial selection for low-complexity chase soft-decision Reed-Solomon decoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210326 |