RS码在车载无线通信中的应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
在现代数字电子技术领域中,纠错码保护技术已经得到了广泛的应用。纠错码技术是一种通过增加一定的冗余信息来提高信息传输可靠性的有效方法。RS码是多进制BCH纠错码的重要子类,是一种典型的纠错码。在线性分组码中,它具有最强的纠错能力,既能纠正随机错误,也能纠正突发错误。随着对RS码研究的深入,RS编译码算法的改进和VLSI技术的发展,以ASIC或FPGA为基础实现信道编码的研究得到了广泛地开展。。
    本文从Reed-Solomon(RS)码的结构出发,阐述了一种基于FPGA的RS(255,239)编、译码器的Verilog HDL设计方法。首先简单介绍了RS码的基本原理,并根据RS译码中的时域编、译码原理,将适合计算机仿真的伴随式计算算法、BM迭代算法、Chien搜索算法、Forney算法转换成Verilog语言。利用Altear公司的开发软件Quartus II将上述算法模块进行编译得到各电路功能模块,并进行了仿真。使用现场可编程门阵列Altera公司的FLEX系列芯片,设计实现了在FPGA上译码速率最高达到14M波特的RS(255,239)的硬件编、译码器,并以此为基础设计实现了可变长的RS编、译码器和动态RS编、译码器。
    随着信息技术的发展和工程施工科学化的进一步要求,施工现场机群(智能化工程机群)的调度控制变得越来越重要。本文将设计得到的可变长的RS编、译码器应用于智能化工程机群的无线通信中,并设计了车载无线通信系统中的无线收发模块部分系统。
RS is the abbreviation of Reed-Solomon code, a nonbinary BCH code that hasstrong capacity to correct outburst of errors. As an important means to improve datastorage and transmission reliability, RS is widely used for error control in datacommunications and storage system. It is one of the most effective and widely usedapplications of error control coding.
    Since the day of its birth, RS has played an important role in the digital storageequipment (hard disks, CD, DVD, etc.), digital communications systems (cellularphone, microwave-, etc.), digital television, DVB, satellite communications (includingdeep-space communication systems), and broadband modems demodulate (xDSL, etc.).RS is also recommended to be standard codes of different industries, such as deepspace communications, CD and CD-ROM, digital television transmission system.
    As to encoders of RS, currently in most ASIC, digital television broadcasting(DVB) uses RS (204,188);and deep-space satellite communications systems, RS(255,223) code. In programmable logic devices, RS encoders are widely applied;whileRS decoders are seldom used. Low-rate code flow is commonly achieved by singlechip processor and DSP. It is because RS encoding devices are simpler, while thealgorithms of decoders are more complex;besides C language is more convenient indescribing algorithm than HDL (hardware description language). To design a chipunder rapid implementation by HDL is challenging and time consuming. It needshardware engineering skills and more chip resources (over 10,000).
    Previously, PLD fell short of the requirements or was too expensive. EDAsoftware also had limited functions. Their integrated capabilities in complexalgorithms were often poor. Now, with the decrease of chip prices and the increase ofintegration, and also the help of powerful EDA software, decoders can be applied incheap FPGA/CPLD. Though Altera Co. and Xilinx Co., programmable logic device
    suppliers, can provide IP soft core, it needs authorization;plus, the soft core it providesis built on the basis of DVB coding and then put other coding rates into consideration.Thus it's inefficient and consumes more resources. Moreover, it only providescompiled .vho documents but no source code.With the development of information technology and further requirement onproject automation, the onsite control of construction fleet (intelligent engineeringgroup) becomes increasingly important. Writer once participated in an intellectualizedmechanical engineering vehicle-mounted wireless systems, during which priorcorrection RS encoding has been involved. Taking into account the costs, andaccording to the RS principles, writer designed (255,239) coding devices based onFPGA. And we also brought out variable length RS and dynamic RS coding devices.1. Design and implement of the RS (255,239) encoder and decoderFundamental parameters of RS (n, k) in GF ( 2m):code length: n = 2 m?1message section: kintendance section: n ? k=2tminimum distance: d = 2t +1Fundamental parameters of RS (255, 239) in GF ( 28):m =8 , t =8code length: n =28 ?1=255message section: k =239intendance section: n ? k=2t =16minimum distance: d = 2t +1=17(1)Design and Realization of RS encoderThere are two RS coding theories. One is time domain encoding, and the other isfrequency domain encoding. This thesis only discusses time domain encoding. RScoding is mainly about generator polynomial g(x) of code. Its encoder can be dividedinto two basic categories: N-K level encoder and K-level encoder. Generally speaking,
    the coding circuit of cyclic codes is a N-K level encoder, which can also be dividedinto two categories: one is g(x) multiplicative circuit, and the other is g(x) divisioncircuit.①Polynomial multiplication circuits based coding devices: the coding charactersare for non-system code. So in decoding, the first thing is to retrieve information fromreception code. Its coding efficiency is markedly lower than system coding, which isused in actual application.②Polynomial division circuit coding devices: Information Group m(x) multipliedby x n? k equals m(x) x n? k. The result is divided by g(x) to get corresponding residualr(x), then forming codes with original message group. This thesis uses division circuitto achieve RS coding, as shown in diagram 1.g 0 g 1 g 15encoding output 21encoding inputFig.1 The RS encoder of N-K level composed by division circuitPrimitive polynomial and generator polynomial were adopted in this article asfollowing:f ( x)= x8 +x4+x3+x2+1 (1)reg1 reg2 reg16feedback
    816365412299850365959131041896820930()87654321615141312111093891719161475169418231942225112016120151041410713109121021116110769+++++++++=++++++++++++++++=+++++++xxxxxxxxxxxxxxxxaxaxaxaxaxaxaxaxagxxaxaxaxaxaxaxax(2)N-K level RS encoder is primarily composed by a group of pictographic feedbackshift register and control circuits. It is n-k=16 level encoder. g 15 ,,g1,g0 arefeedback coefficients of linear feedback register, which are corresponding tocoefficients in g(x), namely, coefficient of x 15 is a 120 =59;…;x 1, a 225 =36;x 0, a 120 =59.The value attained by reg16 register XOR currentinput message coded is the value in feedback register.Coding steps:① Reset all registers, switch to 1, then 239 message codes will enter divisioncircuit one by one for easy output in turn;② When the final code enters, switch to 2, then the first check digit exports;③ Check digits are imported into register by clock rhythms, and then exported inone batch. Coding ends when last check digit is exported.(2)Design and realization of RS decoderIn 1960, Peterson laid the theoretical basis of binary BCH decoding system andlater extended to nonbinary by Gorensten and Zierler. In 1965, Forney resolved theBCH decodes of correcting errors and erasures. In 1966, Berlekamp made theBerlekamp-Massey algorithm. Since then, many authors had constantly set newdecoding methods such as Euclid decoding algorithm, Continued Fraction decodingalgorithm, etc. In 1978, based on codes of MS polynomial, Hart proposed frequencydomain decoding by applying spectrum analysis which is commonly used in digitalsignal processing techniques.RS decoding can be divided into two categories: time domain decoding andfrequency domain decoding.Frequency domain decoding is to treat coding characters as serial numbers,
    change it into frequency domain by implementing DFT in limited field, and then useits frequency domain characteristics when decoding. Because of increased complexityby DFT, frequency domain decoding is usually more complex than time domaindecoding, and therefore FFT is only applied in certain exceptional circumstances, say,decoding of specific long codes (for example n equals to exponentials of 2).Time domain encoding is to treat coding characters as the signal sequence on timeaxis, and encode by utilizing the algebraic structure of codes. Currently the mostwidely used and important method is Berlekamp-Massey algorithm of time domain.Due to the importance of RS codes, research in this area is most detailed andthorough. In this thesis, we adopt the classic iterative decoding algorithms.Decoding process can be divided into the following steps :① by receiving R (x), we get =∑ =++?ijs j Yixi, jm0 ,m01,,m02t1。 .② Derive error location polynomialσ(x) from s j.③ Seekσ(x), get the number of wrong locations, and identify positions.④ Derive deficient values by positions and get deficient drawing E (x).⑤ R (x) -E (x) =C (x), rectification process is completed.Principle of decoder shown in diagram 2R(x) C(x)Fig.2 The principle of RS decoderSyndromecalculationErrorpolynomialBMalgorithmError locationChien searchErrormagnitudesForneyalgorithmDelayDelay
    2. Advancement of RS decoderRS (255,239) have received widespread application in many areas. However, inmost applications, the length of data frame is less than 239 bytes. If RS (255,239)remains unchanged, it will lead to decreased efficiency in the transmission of dataframes, while increase possibilities of inaccuracy due to interference in transmission.So in practice, RS (255,239) shortened code is more applicable.2 types of improved methods can be proposed based on RS (255,239) encoders:(1)Variable length RS coding devices (coding length can be preset)Code length: 17-255 bytes;message space length: 1-239 bytes, check digits spacelength: 16 bytes, correction capacity t=8.(2)Dynamic RS coding devices (coding length is dynamic)Code length: 17-255 bytes;message space length: 1-239 bytes, check digits spacelength: 16 bytes, correction capacity t=8.
引文
[1] Elwyn,R.Blerlekamp.bit-serial Reed-Solomon encoder[J].IEEE on Trans inform theory.1982,28(6):869-874.
    [2] Howard M.Shao,Truong T.K.Leslie J.Deutsch,Joseph H.Yuen.A VLSI design of a pipeline reed-Solomon decoder[J].IEEE Transaction on computers.1985,34(5):393-403.
    [3] S.lin,T.Kasam.Encoding and Decoding of Reed-Solomon Codes in Dual Basis.电子学报.1986,4:6-20.
    [4] Erl-Huei Lu,Chiou-Yng Lee,Ron-Tsai.Decoding algorithm for DEC RS codes.Electronics Letters.2000,6(36):546-548.
    [5] C.L.Chen. High speed decoding of BCH codes. IEEE Trans on IT.1981,2:254-256.
    [6] D.C.Gorentein,W.W.Peterson and W.Znerler. Two-error correcting BCH codes are quasiperfect. Inform control.1960,3:291-294.
    [7] P.Stevens. Extension of the BCH decoding algorithm to decode binary cyclic codes up to their maximum error correction capacities. IEEE Trans on IT. 1988,5:1332-1341.
    [8] T.Helleseth. All Binary 3-error-correcting BCH codes of length 2 m ?1 have covering radius 5. IEEE Trans on IT. 1978,2:257-258.
    [9] Shayan Y.R,Le-Ngoc T,Bhargava V.K. Design of Reed Solomon (16,12) codec for North American Advanced Train Control System. IEEE Transactions on Vehicular Technology.1990,39(4):400-409.
    [10] D.V.Sarwate,N.R.Shanbhag. High-Speed Architecture for Reed Solomon Decoders[J].IEEE Trans on VLSI Systems.2001,9(5):641-645.
    [11] H.M.Shao,T.K.Truong,L.J.Deutsch et al.A VLSI design of a pipeline Reed-Solomon decoder[J] .IEEE Trans Compute.1985,C-34:393-403.
    [12] J.Chen ,P.Owsley .A Burst Error Correcting Algorithm for Reed Solomon Codes[J] .IEEE Trans Inform Theory .1992,38:1807-1812 .
    [13] Liuguo Yin,Jianhua Lu,K.Ben Letaief,et al.Burst error correcting algorithm for Reed-Solomon codes[J].Electronics Letters.2001,37:695-696.
    [14] M.Hattori,R.J.McEliece,G.Solomon.Subspace Subcodes of Reed Solomon Codes[J].IEEE Transaction on Information theory.1998,44(5):1861-1880.
    [15] C.L.Dantec, P.Piret.An encoder to match Reed-Solomon codes over GF(q) to a subalphabet of GF(q).IEEE Trans Inform Theory.1999,45(5):1697-1701.
    [16] J.M.Jensen.Subgroup subcodes.IEEE Trans. Inform. Theory.1995,41(3):781-785.
    [17] H.C.Chang,C.B.Shung,C.Y.Lee.A Reed-Solomon product code(RS-PC) decoder chip for DVD applications[J] .IEEE Journal of Solid-State Circuits.2001,36(2):229-238.
    [18] J.H.Jeng,T.K.Truong.On decoding of both errors and erasures of a Reed-Solomon code using and inverse free Blerlekamp-Massey algorithm [J].IEEE Trans on Communications.1999,47(10):1488-1494.
    [19] K.Seki,K.Mikami,M.Baba.N.Shinohara,S.Suzuki,H.Tezuka.Single ship 10.7Gb/s FEC CODEC VLSI using time multiplexed RS decoder[J]. IEEE custom Integrated Circuits conference.2001,36(2):289-292.
    [20] L.L.Yang,L.Hanzo.Performance Analysis of Coded M-ary Orthogonal Signaling Using Errors-and Erasures Decoding Over Frequency Selective Fading Channels . IEEE journal on Selected Areas in Communications.2001,19(2):211-221.
    [21] Shiozaki.A.Decoding of redundant residue polynomial codes using Euclid's algorithm.IEEE Trans Information Theory.1988,34(5):1351-1354.
    [22] A.Shiozaki,T.K.Troung,K.M.Cheung,I.S.Reed. Fast transform decoding of nonsystematic Reed Solomon codes.The Telecommunicati-ons and Data Acquisition Report.1989:130-140.
    [23] Liu K.Y.Architecture for VLSI design of Reed-Solomon encoders.IEEE Transactions on Computers.1982,31:170-175.
    [24] Ebel W.J,Tranter W.H.The performance of Reed-Solomon codes on a bursty noise channel.IEEE Transactions on Communications.1995,234(43):298-306.
    [25] Liu K.Y,Reed I.S,Truong T.K.High-radix transforms for Reed-Solomon codes over Fermat primes . IEEE Transactions on Information Theory.1977,23:776-778
    [26] Shayan Y.R.Modified time domain algorithm for decoding Reed Solomon codes.IEEE Transactions on Communications.1993:41(7):144-146.
    [27] Mandelbaum.D. On decoding of Reed-Solomon codes.IEEE Transactions on Information Theory.1971,17(6):707-712.
    [28] Keiichi Iwamura,Yasunori Dohi,Hideki Imai.A Design of Reed Solomon Decoder with Systolic Array Structure . IEEE Transactions on Communications.1995,44(1):118-122.
    [29] Vardy Alexander,Be'ery Yair.Bit level soft decision decoding of Reed Solomon codes.IEEE Transactions on Communications.1991,39(3):440-444.
    [30] Taipale D.J,Seo M.J.An efficient soft decision Reed Solomon decoding algorithm.IEEE Transactions on Information Theory.1994,40(4): 1130-1139.
    [31] 梁炜新,王群生,牟刚.基于 FPGA 的通用 RS 编解码器的 VHDL 设计方法.电视技术,2004,16(3):16-20.
    [32] 蒲建发,苏凯雄.一种基于 FPGA 的 RS 编码器的设计.宁德师专学报,2004,16(1):10-13.
    [33] 张玉良,陈晓敏.RS(255,223)码硬件译码器的实现.计算机工程与应用. 2005,27:103-104.
    [34] 刘晓明,瞿金桥,谢明钦,胡旭.DVB 标准 RS 码译码的新技术.2004,19-20:8-11.
    [35] 方立,吕昕,邓次平.RS 码译码器的 VLSI 设计.2002.3(23):422-425.
    [36] 王伟,徐辉,邹火儿.一种 RS 码译码器的硬件实现方法.2004,1:9-10.
    [37] 陈虎,刘振坚.RS 码在井下通信中的应用.工矿自动化.2005,2:10-13.
    [38] 杨忠立,刘玉君,王云鹤,唐冬明.RS 码纠突发错误译码算法研究与实现.信息工程大学学报.2004,4(5):77-79.
    [39] 吴彬彬,顾斌.移动通信系统中 RS 码编译码器的 DSP 实现.电子工程师,2004,30(6):25-27.
    [40] 李晓春,沈保锁.CDPD 系统中的 RS 码的 FPGA 设计与实现[J].天津大学学报,2003,36(2):220-224.
    [41] 曾晓洋,郝志航,魏仲慧. RS 码时域编码算法及其计算机模拟[J]. 系统工程与电子技术,2001,23(3):16-18.
    [42] 鞠苏明,毕光国.一种 RS 码的快速译码方法.通信学报.1999,20:274-278.
    [43] 姚明余,忻鼎稼.BCH 码的一种新的译码方法.通信学报,1989,5:10-14.
    [44] 王新梅,肖国镇.纠错码—原理与方法.西安电子科技大学出版社,2001:242-317.
    [45] 朱起悦.RS 码编码和译码的算法[J].电讯技术,1999,39(2):65-67.
    [46] 王新梅,肖国镇.纠错码—原理与方法.西安电子科技大学出版社,2001:242-317.
    [47] 王新梅.纠错码与差错控制.人民邮电出版社.1989.
    [48] 傅祖芸.信息论-基础理论与应用.北京:电子工业出版社.2001:73-126.
    [49] 褚振勇,翁木云.FPGA 设计及应用.西安电子科技大学出版社,2002:25-73.
    [50] 夏宇闻.Verilog 数字系统设计教程.北京航空航天大学出版社.2003:10-250.
    [51] R.E.Blahut,徐秉铮等译.差错控制码的理论与实践.华南理工大学出版社.1988.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700