关键字 |
BCH代码,综合征块,渐进搜索块,错误检测 |
介绍 |
信息理论和编码理论应用于计算机通信和电信应用。错误纠正和检测是上述应用程序中使用的技术,能够通过不可靠的通信通道可靠地传输数字数据。许多通信信道在从源到接收机[1][6]的信息传输过程中都会受到信道噪声的影响。信道编码理论认为,通过适当的编码可以实现可靠的传输。“信道编码”是一种用于保持信息比特的原创性、避免信息比特的重传以及检测和纠正传输过程中出现的错误的技术。 |
错误检测是检测从发射机到接收机的传输过程中由噪声或其他损伤引起的错误。它使用了冗余[8]的概念,这意味着在目的地添加额外的位来检测错误。在纠错中,接收方可以使用任何纠错码,这些纠错码可以自动纠错某些错误,并可以重建原始数据。 |
A.检测方法 |
1)重复码: |
重复码是一种编码方案,它在信道上重复比特以实现无差错通信。重复编码的效率非常低,如果每组的错误都发生在完全相同的地方,就容易出现问题。 |
2)循环冗余检查(CRC): |
CRC是一种单突发错误检测循环代码,设计用于检测计算机网络中数字数据的意外变化。它不适用于检测恶意引入的错误。 |
3)校验位: |
这些是错误检测代码的最简单形式。它们可以检测输出中的单个错误或任何其他奇数个错误。偶校验是循环冗余校验(CRC)的一种特殊情况,其中1位CRC由多项式x+1生成。 |
B纠正方法 |
1)自动重复请求(ARQ): |
自动重复请求(ARQ)是一种数据传输的错误控制方法,它利用错误检测码、确认和否定确认消息以及超时来实现可靠的数据传输。如果通信信道具有变化的或未知的容量,则使用ARQ。它需要通道的可用性,由于重传可能会导致延迟增加,并且需要为重传维护缓冲区和计时器。 |
2)前向纠错(FEC): |
纠错码(ECC)或前向纠错码(FEC)是一种向消息中添加冗余数据或校验数据的系统,这样即使在传输过程中出现了许多错误,接收方也可以恢复消息。前向纠错不需要back通道,因为接收方不需要要求发送方重传数据[9][10]。 |
纠错码将来可以分为两大类,如卷积码和分组码: |
它们是逐位处理的。它们适合在硬件中实现,并且存在许多解码这些代码的算法。Viterbi算法具有较高的性能。因此,维特比译码器是最常用的译码器。 |
块代码: |
分组码被实现为(n, k)码,其中n表示码字,k定义原始信息位。因此,原始消息位需要增加的冗余位数为(n-k),分组码为固定信道码。BCH码是分组码的子集。 |
这项工作的目标是减少在综合征和渐近搜索块[5][3]中使用的成分数量。新的分解方法允许构思另一个简化搜索块,减少逻辑门的数量。 |
本文组织结构如下:第二节BCHencoder_lfsr的设计与体系结构第三节分别介绍了改进后的bch解码器和综合征和Chiensearch的详细结构。第四节给出了增强BCH(15,5)的仿真结果,并对结果进行了分析。第五节得出结论。 |
Encoder_lfsr设计和架构的BCH代码 |
本课题采用的Encoder_LFSR设计是现代数字通信系统中最常用的。这种encoder_LFSR设计几乎适用于所有BCH代码架构,它使用线性反馈移位寄存器进行多项式除法。 |
码字格式为[4]: |
C (x) = xn-k * i(x) + b(x) (3.1) |
其中,码字c(x) = c0 + c1x +…+ cn-1xn-1 |
信息位i(x)= i0 + i1x +…+ ik-1xk-1 |
余数b(x)= b0 + b1x +…+ bm-1xm-1 |
ci、ji、bi是伽罗瓦场的子集。如果取b(x)为多项式,使得k个数据位将以码字形式表示,如下所示: |
Xn-k * i(x) = q(x) * g(x) - b(x) (3.2) |
BCH代码实现为循环代码。因此,实现编码器lfsr和解码器的逻辑被控制在移位寄存器电路中。利用循环码的性质,余数b(x)可以在线性(n-k)级移位寄存器中计算,并与发生器多项式的系数反馈连接。 |
原始消息位在不改变其形式的情况下传输(在此操作期间,开关s2_in位于位置2),线性[2]在线性反馈移位寄存器中生成的奇偶校验位被传输(开关s2_in是inFor周期k+1到n,位置1),LFSR中的反馈被关闭(s1_in off)。反馈移位寄存器计算奇偶校验位(开关s1_in现在打开)。 |
BCH码译码器设计与结构 |
BCH解码器有四个模块,如下所述: |
-综合症计算器 |
-解决关键方程 |
-错误定位 |
-纠错 |
上述模块的实现和设计算法因不同的体系结构而不同。第二模块,关键方程的求解是在硬件复杂度方面与其他模块相比最难和最复杂的模块。本章包含了用于实现这些模块的不同算法的详细解释。 |
1.综合征计算器:综合征计算器也是解码器的第一个模块,该模块的设计几乎与所有BCH码解码器架构相同。此模块的输入是损坏的码字。码字、接收位和错误位的方程分别在式(5.1)、(5.2)、(5.3)[4]中给出。 |
码字方程 |
C (x) = c0 + c1x + c2x2 +…+ cn-1xn-1 (5.1) |
接收位方程 |
R (x) = r0 + r1x + r2x2 +…+ rn-1xn-1 (5.2) |
误差位方程 |
E (x) = e0 + e1x + e2x2 +…+ en-1xn-1 (5.3) |
因此,最终传输数据多项式方程为: |
R (x) = c(x) + e(x) (5.4) |
2.关键方程求解器:解码过程中的第二阶段是使用前一阶段生成的综合征找到错误定位多项式的系数。误差定位多项式为:证候与误差定位多项式的关系如下[4]: |
|
有各种算法用于求解关键方程求解器。本课题采用逆少Berlekamp Massey算法求解关键方程。 |
3.错误位置-链式搜索:计算错误位置是解码过程的下一步,可以使用链式搜索块来完成。 |
3.1链搜索算法 |
根计算如下[12][4]: |
1.对于(j = 0到n - 1) α的每一次幂,取αj作为检验根 |
2.计算当前根的多项式系数,使用,过去迭代的系数,使用,Λ i (j) = Λ i (j- 1) α持续第j次迭代 |
3.计算多项式系数的和 |
|
4.和等于 |
5.继续执行步骤1,直到j = n-1 |
纠错块输出: |
码字= r(x) ^ e(x) = ' 000010100110111 ' |
因此,码字是通过将消息位与奇偶校验位相加生成的,并传输到解码器。数据在传输过程中损坏。解码器将解码损坏的数据并检索原始码字。 |
4.纠错:链搜索块的输出被称为方程的根。方程根的倒数与解码器接收到的损坏码字的对应位置相加。这一添加的结果是在传输之前由编码器编码的原始码字。 |
仿真结果 |
框图 |
|
RTL示意图 |
|
技术示意图 |
|
设计总结 |
|
仿真输出波形 |
|
|
结论 |
本课题详细讲解了纠错码的必要性,各种纠错码的比较以及高速(15,5)BCH码的编码和解码器的设计。前面的章节讨论了编码器和解码器的设计技术,并使用Verilog描述了设计的行为。代码的模拟是在Xilinx Modelsim中完成的。在Xilinx ISC 14.3 wabpack中综合编码器和解码器设计,生成门级网表。在前面的章节中详细讨论了设计步骤、输入信号和输出信号以及设计和综合结果的仿真结果。 |
|
数字一览 |
|
|
参考文献 |
- R.C. Bose, D.K. Ray-Chaudhuri, â '  '关于一类纠错二元群codesâ '  ', Inf. Cntrl, 3, pp. 68-79, 1960年3月。
- H.O. Burton, â '  '二进制BCH无逆解码codeâ '  ', IEEE Trans。, 2001, IT- 17, (4), pp. 464-466。
- C. E.香农,“通信的数学理论”,《贝尔系统技术杂志》,第27卷,第379-423和623-656页,1948年7月和10月。
- Ernest Jamro, â '  ' '基于VHDL的BCH合成工具的设计codesâ '  ',哈德斯菲尔大学,1997年9月。
- W.W. Peterson, E.J. Weldon, â '  '纠错codesâ '  ',麻省理工学院出版社,剑桥,1972。
- W.W. Peterson, â '  ' Bose-Chaudhuri的编码和纠错程序Codesâ '  ', IRE Trans。Inf. Theory, IT-6, pp. 459-470, 1960年9月。
- 乔尔·西尔维斯特â '  '里德·所罗门Codesâ '  ', Elekrobit。2001年1月。
- g·d·法尼,lr。,"The Viterbi algorithm", Proc. IEEE, vol. 61, pp. 268-278, Mar. 1973.
- 软金科技,â '  ' BCH encoder_LFSR数据表coreâ '  ',印度,2000年12月,www.softjin.com。
- 李汉浩,â '  '一种基于Reed-Solomon的高效面积欧氏算法块Decoderâ '  ',美国康狄格大学计算机工程学院,Srorrs, CT06269。
- Dilip V. Sarwate, Naresh R. Shanbhag, â ' “Reed-Solomon解码器的高速架构,â ' ”IEEE Trans。VLSI系统,vol.9, No.5, 2001年10月。
- 陈燕尼,Keshab K. Parhi, â '  "区域高效并行译码器结构的长BCH Codesâ '  ",美国明尼阿波尼阿波尼大学电子工程学院,MN 55455 USA
- Clifford Kraft, â ' “Berlekampâ ' Â的BCH快速解码算法的封闭解Codesâ ' ”,IEEE通讯学报,第39卷,第12期,1991年12月。
|