RS纠错编码原理及其实现方法.pdf
RS纠错编码原理及其实现方法。Zhengzhou Oriole Xinda Electronic Information Cc., Ltd前言随着越来越多的系统采用数字技术来实现,纠错编码技术也得到了越来越广泛的应用。RS码既可以纠正随机错误,又可以纠正突发错误,具有很强的纠错能力,在通信系统中应用广泛。近些年来,随着软件无线电技术的发展,RS编码、译码一般都在通用的硬件平台上实现。通常采用基于FPGA的ⅦHDL编码硬件实现,或者在DSP、单片机上用C和汇编编程软件实现。RS纠错编码涉及的领域很广,特别是设计到很多数学知识。这对那些对数学不太感冒的工程技术人员来书是个不小的挑战。尽管讲RS编码的书籍很多但是那些书都是采用循序渐进,逐步引人的方式从汉明码到循环码,从循环码到BCH码,BCH码再引入悶S码。对亍工程技术人员他们需要的是简明扼要的讲解,和详细的实现方法。本人写这篇文章的宗旨就是尽量最简单的语言最简短的篇幅来讲RS纠错编码原理,把重点来放在实现方法上。为了便于读者仿真,本文采样MLAB程序实现,程序尽量符合硬件C语言写法,读者经过简单修改即可应用到工程中去。本文读者对象本文是为那些初识瑙编码的学生、工程技术人员而写,并不适合做理论研究,如果你是纠错编码方面的学者、专家,那么本文并不适合你。由于作者水平有限,错误在所难免,恳请读者批评指正。不得更改陈文礼2008-01于郑州Zhengzhou Oriole Xinda Electronic Information Cc., Ltd必备的一些代数知识1、在纠错编码代数中,把以二进制数字表示的一个数据系列看成一个多项式。例如二进制数字序列1010111,可以表示成:M(x)=ax+a5x0+a5不5+a+4 TasK +ax+a,x+ank式中的x表示代码的位置,或某个二进制数位的位置,X前面的系数表示码的值。若a;是一位二进制代码,则取值是0或1。dM()称为信息代码多项式多项式次数称系数不为0的x的最高次数为多项式/(x)的次数,记为Of(x)2、域域在R编码理论中起着至关重要的作用。简单点说域GF(2)有2设2个符号[0,n,a2…22且具有以下性质域中的每个元素都可以用a",a,a2,om的和来表示。a←la为本原多项式p(x)的根。运算规则有:在纠错编码运算过程中,加减、乘和除的运算是在伽罗华域中进行。现以GF(2)域中运算为例:加法例:a+a=0010+0110101(模2加法相当于0005与011或减法运算与加法相同乘法例:a·a0=a(8+10)modl5除法例:cs/a0=a-2=a-2+5=a不理解没关系,下面的例子也许对你有帮助。例:mF=4,p(x)=x4+x+1求GF(2")的所有元素因为a为p(x)的根得到a4+a+1=0或a4=a+1(根据运算规则)Zhengzhou Oriole Xinda Electronic Information Cc., Ltd由此可以得到域的所有元素元素二进制对应十进制对应码值000000101000a+100l⊥0110a(a+1)=a+a(mod p(a))12a(a+a=a+a(mod p(a)1011a(a+l(modula))+a+1)10C(a+1=a+a(mod p(a )a(a23+a)a+I(mod p(a)1110a(a+a+D=aa+a(modp(a)tatI(mod p(a))11a(a3+a2+a+1)=a34a2+1(modp(a)1001a(a+a+1=a+l(mod p(a)a(a+1=l(mod(a))由此可以看岀本原多项式是求解域的全部元素的关键。读者也许会有这样的疑问我们如何得到p(x)呢?本原多城式p(x)的特性是2+得到的余式等于0O(X由于作者也是工程技术人员,具体怎么得到p(x),也没有深究过。Zhengzhou Oriole Xinda Electronic Information Cc., Ltd作者在设计RS编码时候都是根据 MATLAB指令rsgeηpoly来得到p(x)。其格式为 rsgenpoly(n,k)参数n为码长一般n=2"-1,k为信息码元个数。例如m4,码长n=15,信息码元长度为9GF(2)的本原多项式可以根据指令>>rsgenpoly(15, 9)得到ans= GF(2 4)array. Primitive polynomial =D 4+D+1 (19 decimal)有读者来信问:我要做一个(158的RS编码,在 MATLAB中输入命令 rsgenpoly(158,128),结果MAB报错Error using =- rsgenpolyN must equal 2m-1 for some integer m这里做一下解释我们S编码时普先要根据码长选取mλ选择原则是2若码长为6那么我们可以选择n=8, rsgenpey命令的第少个参数必须为2"-1,第二个参数司以随便选择只要小于2”-1就形了在此给出m∈(2,16)的所有本原多项式(m=2)P[m+1]={1,1,1}/米1+x+x3*/P[m+1]-{1,1,0,1}/米1+x+x4*/P[m11]={1,1,0,0,1}/米1+x2+x5*/P|m+1={1,0,1,0,0,1};Zhengzhou Oriole Xinda Electronic Information Cc., Ltd(m=6)/米1+x+x6*/P[m+1]={1,1,0,0,0,0,1}7)/来1+x3+x7*P[m+1]={1,0,0,1,0,0,0,1}(m=8)/米14x2+x31x4+x8*/P[m+1]-{1,0,1,1,1,0,0,0,1/*1+x4+x9半P[m1]={1,0,0,0,1,0,0,0,(m=10)/1+x3+x10*/P|m+1={1,0,0,1,0,0,0,0,/*1+x2+x11P[m+1]={1,0,0,0,0,0,0,1}(m=12)/*1+x+x4+x6+x12P[m+1]-{1,1,0,0,、1,0,0,(m=13)/*1+x+x^3+x4+x^13*/P[m+1]={1,1,0,1,1,0,0,00,0,1};(m=14)/*1+x+x6+x10+x14来P[m+1]={1,1,0,0,0,0,1,0,0,0,1,0,0,0,1}(m=15)/米14x+x15*/P[m+1]={1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1};(m=16)/*1+x+x3+x12+x16*/P[m+1]={1,1,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1};Zhengzhou Oriole Xinda Electronic Information Cc., Ltd二、线性分组码的一些基本概念1、线性分组码一般用(n,)或(n,k,d)表示n为码长,k为信息码元的数目,n-k为监督码元的数目。d表示码元距离。定义:两个码组上对应位置上数字不同的个数称为码组的距离。发送的码字C=(1,C2C3,…C接收的矢量r=(,2,信道错误图样:e=c+r例如c=(1,1,0,0,0)(1,0,001)e=(1+1,1+0,0+0,0+0,0+1)(0,1,0,0,1)从而可以看出从左端起第2位和第5位是错误的2、校验矩阵概念码长为n,信息数为k,监督数为r。这样的一组码形式为:m:m2,P,P2Pm表示第个信息码,P表示第j个校验码各个校验码可从下列线性方程组求得hm+h2m2+…+n+1B1+012+0h2m1+2m2+…+h2m+0p1p20hmn+h,2m2+…+hm+O+0+…+1p,=0式中h;是常数校验方程组可写成校验矩阵100h21h2…,h2k010h000该矩阵具有r行和n列故式(1-1)可以写成c=0或c=08Zhengzhou Oriole Xinda Electronic Information Cc., LtdH矩阵称为[n,k,r码的校验矩阵。发送矢量为C接收矢量为F若rH≠0则说明接收到的码有错误。设错误图样为e则可写成以下关系式r=c+e为了纠错必须知道那些位上存在错误。这可由校正子(又称伴随式)s来确定s=rH=cH +eh=eh译码器的主要任务就是如何从中得到最像e的错误图样e从而译出c=r-e设第讠个是错误的因此e=(00..0第个有错误s=rH=(00…0、100000)00计算出的矢量示出i是出错误的位置。3、生成矩阵概念生成矩阵G,它是一个k行,n列的矩阵若已知信息组m,通过生存矩阵可求得相应的码字。c=mxG(m是k个信息元组成的信息组)这个应该比较容易理解,在此就不做过多解释。、RS码的一些重要性质1、RS码生成多项式:码长n=2”-1,监督元数目r=n-k=2t,能纠正t个错误。Zhengzhou Oriole Xinda Electronic Information Cc., Ltd定义:在(n,k,d)的RS码中,存在唯一的n-k次多项式g(x),使得每一个码多项式c(x)都是g(x)的倍式。g(x)称为n,k,d]RS码的生成多项式一般情况下g(x)=(x-a)(x-a2)…(x-a2)2、定理:在GF(2m)中,每个非0元素(1,a,a2…a22)均满足x2=1,反之x21-1=0的根必在GF(2")中。所以x-1=(x-a)(x-a)x3、RS码的校验多项式由于生成多项式g(x)是x-1的因式g(rh(g(x)为n-k次多项式,则h(x)为k次多项式,k3x+g)hx+…+x+4)由右式可以看出x"1,x2,x的系数均等于0即gg0010h1+g1bo=0g0h+g1h11+…+8nkh2(2k)=0∴.+n-kk-10n-kk式中g0+81h1+…+8nkh1(n=k)(表示X的系数10
- 2020-12-08下载
- 积分:1
MATLAB仿真在现代通信中的应用
MATLAB仿真在现代通信中的应用,特别是无线通信仿真详细具体,适合无线通信研发人员使用。内容简介本书以现代无线电通信中的关键技术:扩频、跳频、OFDM、3G系统、无线接入系统以及常见无线通信系统作为对象,以 MATLAB/ Simulink作为仿真工具,对上述系统进行了仿真实验还对数字信号通过各种调制方式,发送滤波器后的频谱特性,以及应用各种差错控制方式后的传输特性给出了系列仿真实例。并对上述仿真内容进行了简单的原理性介绍,对于建模和仿真编程中出现的主要问题与注意事项做了相应敏讲解。仝书源程序附有光盘本书可作为高等学校通信专业的教学、科硏参考书,也可供管理部门作为参考资料、图书在版编目C|P)数据MATLAB仿真在现代通信中的应用徐明远,邵玉斌编著一西安:西安电子科技大学出版社,20114ISBN978-7-56062554-6Ⅰ①M…Ⅱ①徐…②邵…Ⅲ①通信系统一系统仿真一软件包, MATLABⅣ①TN914中国版本图书馆CP数据核字(2011第027693号策划臧延新责任编辑杨宗周出版发行西安电子科技大学出版社(西安市太白南路2号)电话(029)8824288588201467邮编70071网址www.xduph.com电子邮箱 xdupfxb00@163com经销新华书店印刷单位陕西天意印务有限责任公版次2011年4月第1版20ll年4月第1次印刷开本787毫米×1092毫米116印张13625数315千字印数1~2000册定价30.00元(含光盘)ISBN978-7-5606-25546/N·0594XDUP2846001-1煮如有印装问题可调换*本社图书封面为激光防伪覆膜,谨防盗版。前言近十年来,无线电技术突飞猛进,无线电事业快速发展。扩频、跳频、OFDM技术3G系统、蓝牙、IEEE802.11a、数字电视、智能天线等技术的出现,让人目不暇接。无线电成了现代文明的重要组成部分。人们在享受现代文明带来的方便与效率时,想到了应该对这些新技术和新系统多一些了解,然而,深奧的理论、复杂的技术、昂贵的设备与仪器给学习带来了不少的困难。人们在寻找与快速进步的技术相适应的学习与研究方法时,MATLAB仿真在新技术的学习与新系统的研发中成了有力的工具。应用 MATLAB的编程方法和功能模块,可以搭建各种仿真系统,还可以应用丰富的时间域、频率域、相位域的仿真测量仪器。许多新一代通信系统的系统级的仿真程序出现在 MATLAB软件的演示实例中,这使得学习的效率大为提高,对技术与系统的理解已经从概念深入到电路方案和参数选取的层面。建立和谐的电磁环境,需要了解各种无线电通信系统的特性,其中包括时间域、频率域、相位域以及传输特性。特别是它们之间的定量关系可以从仿真实例运行的结果中得到。也可以说,每个仿真实例就是一个小实验平台,实验中可以对通信的相关原理,甚至通信系统进行研究,其中的分类结果也可以作为资料备查。本书应用 MATLAB仿真工具对常见的调制方式、发送滤波器、差错控制方式以及各种通信系统(包括新一代的通信系统)的相关特性进行研究。可以运行的大量仿真实例,一方面给出了仿真的结果;另一方面还给出了部分仪表测量的结果可供比对。仿真实例大部分是作者在教学与科研实践中自行编制的,小部分是 MATLAB软件中的演示仿真实例全书分以下五部分:第一部分基础知识,包括数字调制、发送滤波器、通信信号的测量与表达。第二部分常用无线电通信系统,包括公众移动通信系统、专用移动通信系统、卫星通信系统。第三部分新技术与3G,包括扩频、跳频、OFDM以及3G系统。第四部分无线接入系统与数字电视,包括蓝牙、802.1a与数字电视。第五部分天线与射频技术,包括天线阵列、射频传输线、滤波器。书中给出了简单的原理介绍、 MATLAB仿真的系统、程序(光盘)以及程序运行结果。对编程中的主要问题与注意事项作了讲解。着重讨论了各种系统及输出信号的频谱特性。对于系统的传输特性,以及影响系统传输特性的因素,譬如调制方式、差错控制方式也进行了较系统的讨论。为了保持本书简练的篇幅,没有在书中详细介绍所有仿真系统中各个模块的参数设置,也没有将雷同的系列仿真系统的程序在书中展示。购书所附的光盘提供了书中提到的全部软件。点击模块打开对话框可以仔细研究其中每个模块的参数设置。若需要还可以将其拷贝出来后按照读者的意愿,遵循 MATLAB的相关规则更改参数后进行学习研究。本书可作为高等学校通信专业的教学、科研参考书,也可供管理部门作为参考资料。本书编写中的不妥和疏漏之处,还望读者给予指出。作者的联系方式:xumil@163com,shaoyun99@sina.com徐明远邵玉斌2011年1月说明1.用 MATLAB m文件编写的程序序号在本书中是这样表示的:比如程序35表示第3章的序号为5的程序。在 MATLAB软件中用CHX35表示。2. MATLAB/Simulink程序在本书及 MATLAB软件中都用SCHX3_10表示(第3章的序号为10的程序),该仿真系统框图在本书中用图3-10表示。3.本书的程序可运行在 MATLAB2008B版本目录第一部分基础知识第1章数字调制1.1非连续相位的角度调制31.1.1FSK信号的仿真1.1.2PSK信号的仿真1412连续相位的角度调制.1.3正交幅度调制29第2章发送滤波器,·,2.1概论322.2升余弦脉冲滤波器.332.3平方根升余弦滤波器4124高斯滤波器…46第3章通信信号的测量与表达3.1通信仿真中常用的信号测量模块3.1.1 Simulink基本模块中的 Sinks子库简介,,,,,,,,,,,,,,,,,513.12 Simulink通信工具箱中的 Comm sinks子库简介….52313 Simulink信号处理工具箱中的 Signal Processing Sinks子库简介533.2信号的测量…623.21窄带随机信号的产生和波形测量3.2.2各种信号的表示和测量633.3差错控制传输特性的测量与表达72331线性码……1733.32循环码.753.33里德-索洛蒙码773.34卷积码335汉明码3.3.6BCH码3.37循环冗余码8534信号统计参数的测量.…863.4.1统计模块库86342概率密度函数873.4.3瑞利衰落信道的仿真测试……344图像的灰度直方图3.5图像和视频信号的测量与表达3.5.1模块库…3.52图像的读出与显示933.53图像加噪与滤波…,.,,,·943.54图像的二维变换与反变换963.5.5图像有损压缩“““第二部分常用无线电通信系统第4章公众移动通信系统1014.1公众通信系统概述…….1014.1.1最早期的移动通信系统014.1.2第1代移动通信系统….4.1.3第2代移动通信系统1024.1.4第2.5代移动通信系统……,,,,,,,1044.1.5第3代移动通信系统1064.1.6第4代移动通信系统…1084.2GSM全球移动通信系统.,,非1094.3CDPD蜂窝数字分组数据网……11144NADC北美数字蜂窝网1134.5PDC个人数字蜂窝电话144.6 CDMA IS-95码分多址通信系统1174.7CT-2第2代无绳电话系统184.8数字增强型无绳通信标准12049PHS个人手持式电话系统12第5章专用移动通信系统12451集群通信系统…12452APCO数字集群通信系统1255.3 TETRA欧洲数字集群通信系统12754THTS地面航空电话系统…129第6章卫星通信系统1316.1铱星系统.1316.2美国ICO卫星通信系统13363甚小孔径终端卫星通信系统…135第三部分新技术与3G第7章新技术…1417.1扩频1417.2多元扩频7.3跳频…14674正交多载波调制OFDM.150第8章3G系统15281 WCDMA码分多址通信系统15282CDMA2000码分多址通信系统157第四部分无线接入系统与数字电视第9章无线接入系统…91蓝牙系统 BLUE TOOTH16592无线局域网 HiperLAN216993无线局域网802.11标准,.非,,,,,,,,,,,,,,,,甲174第10章数字电视系统10.1数字电视广播系统…17910.2卫星广播系统182第五部分天线与射频技术第11章天线187111天线方向图18711.2均匀直线阵的波束扫描…11111187113均匀圆形阵的波束扫描189114非均匀直线阵的波达方向估计19211.1 Capon法194114.2 Music法195第12章射频…19612.1波导19612.2传输线19812.3滤波器205参考文献207
- 2021-05-06下载
- 积分:1