《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc

上传人:仙人指路1688 文档编号:3026168 上传时间:2023-03-09 格式:DOC 页数:18 大小:626KB
返回 下载 相关 举报
《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc_第1页
第1页 / 共18页
《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc_第2页
第2页 / 共18页
《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc_第3页
第3页 / 共18页
《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc_第4页
第4页 / 共18页
《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc》由会员分享,可在线阅读,更多相关《《数字信号处理》课程设计基于System View的卷积码译码器的设计.doc(18页珍藏版)》请在三一办公上搜索。

1、基于System View的卷积码译码器的设计摘要 本课程设计在SystemView 平台上设计了卷积码译码器,SystemView系统中提供了专门的卷积码编码和译码图符,使用户能快速地建立基于卷积码的仿真系统,本课程设计对(2,1,6)的大数逻辑译码原理,以及维比特译码原理进行了解释,利用SystemView进行了(2,1,3)卷积码译码器的仿真。系统运行以后将译码后得到的波形与原始的码元输入信号进行比较,系统参数经过修改以后能够正确地将编码后的信号译码为原始的码元。关键字 卷积码译码器,System View,(2,1,3)卷积码译码器1 引言 卷积码的译码方法主要有两类,代数译码和概率译

2、码。代数译码是根据卷积码的本身编码结构进行译码,译码时不考虑信道的统计特性。概率译码在计算时要考虑信道的统计特性。典型的算法如:最大似然译码、维比特译码、序列译码等。本课程设计利用SystemView 平台进行卷积码译码器的实现,SystemView系统中提供了专门的卷积码编码和译码图符,使用户能快速地建立基于卷积码的仿真系统,本课程设计对(2,1,6)的大数逻辑译码原理,以及维比特译码原理进行了解释,利用System View进行了(2,1,3)卷积码译码仿真,系统参数经过修改以后能够正确地将编码后的信号译码为原始的码元。1.1 卷积码简介卷积码也称为连环码是一种非分组码,分组码编码时,先将

3、输入的信息序列分为长度为k的码元的字段,然后按照一定的编码规则,给含k个信息元的段附加上r长的监督元,于是生成n 长的码组。在编码时,各n长码组是分别编码的,各码组之间没有约束关系,因此译码时各码组之间是分别独立进行的。卷积码则不同于此,卷积编码属于信道编码,主要用来纠正码元的随机差错,它是以牺牲效率来换取可靠性的,利用增加监督位,进行检错和纠错。卷积码把k个信息位编成n位,k和n通常很小,特别适宜于串行形式传输,延时小,n个码元与当前段的k个信息位有关,而且与前N-1段的信息有关,编码过程相互关联的码元为个,N或称为卷积码的约束长度 ,常把卷积码记作(n,k,N) ,一般来说对于卷积码k和n

4、时较小的整数,常把卷积码记作(n、k、N)卷积码,它的编码效率为k/n。 1.2 卷积码的译码原理卷积码的译码方法有两类:一类是大数逻辑译码,又称门限译码;另一类是概率译码,概率译码又分为维比特译码和序列译码两种。门限译码方法是以分组码理论为基础的,其译码设备简单且速度较快,但是误码性能要比概率译码法差。(1) 大数逻辑译码该译码方法是从线性码的伴随式出发,找到一组特殊的能够检查信息位置是否发生错误的方程组,从而实现纠错译码。下面通过一各例子来说明该译码的工作原理。设有(2,1,6)卷积码的编码器,它的监督矩阵为:H=像分组码那样,由H可得伴随式EH,E=(e,e,e,e.e,e)是信道传输后

5、所产生得错误图样。这样就有式中EH=S=(S1,S2,S3,S4,S5,S6)S1= e+ eS2= e+ eS3= e+eS4= e+e+eS5= e+ e+e+eS6= e+ e+ e+e+e由上面的方程,可以得到下列方程2:S1= e+ eS4= e+e+eS5= e+ e+e+eS2+ S6= e+ e+ e+ e+e该方程的特点是,错误元e在各个方程中都出现,其他的错误元在方程中出现的次数不超过一次,我们称具有该特点的方程为正交于e错误元的一致检验和。这样一来,在相邻的12个码元中,若错误图样 E中的错误个数不多余2个,且其中一个发生在 e位上,那么方程组2中至少有三个方程位,即大于

6、或等于3。如果E中错误个数不多于2个,且e位上未发生错误,则方程组中的的小于或等于2,由此可以根据来进行大数判决,以决定对收到e进行纠正或不纠正。下图1.1为卷积码的门限译码器:图1.1 (2,1,6)卷积码的门限译码器该译码器由输入分路开关、两组移位寄存器、四个模2加法器和大数判决门组成。开关把收到的序列进行信息位和监督位的分路,信息移位寄存器存入6格信息于“1”,模2加法器在输出端产生移位监督位,该监督位同收到的监督位在“2”模2加法器处相加,从而得到校正子送给“校正子移位寄存器”组,校正子移位寄存器在得到连续六格校正子以后,按照方程组2输出校正子值,在门限电路也就是大数判决门处实现门限判

7、决,若的和大于或等于3则输出位1,反之则输出0。判决门输出1就可通过“4”,模2加法器改变e位置上的信息位,纠正了错误,反之判决器输出位0则不会改变检验是正确的信息位,判决门输出位1时,则还用来改变有关的已发生错误的校正子,为后续码元的纠正做好准备,可以看到该译码器可以纠正在约束长度内的两位随机错误,如果要纠正多于2位的随机差错,则需要找约束长度更长且性能更好的卷积码。(2)维比特译码维特比的译码和序列译码都属于概率译码,当卷积码的约束长度不大时,与序列译码相比,维比特译码器更简单且计算速度更快。概率译码的译码基本思想是:把接收序列与所有可能的发送序列做比较,选择其中码距最小的时译格序列作为发

8、送序列。如果发送的L信息比特,对于(n、k)卷积码来说可能发送的序列有2个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列,当传输率和信息组数L比较大时使得译码器难以实现。VB算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法,它是接收字段、计算和比较字段,丛冢选择一段有最大似然可能的码段,从而使整个码序列是一个有最大似然值的序列。维比特译码缺点是,随着约束长度的增加,算法的复杂度增加也很快。约束长度N为7时,要比较的路径就有64条,为8时路径变为128条(2(N-1),所以维比特译码一般应用在约束长度小于10的场合中。编码(举例约束长度为7):编码器7个延迟器的状

9、态(0,1)组成了整个编码器的64个状态,每个状态在编码器输入0或1时,会跳转到另一个之中。比如110100输入1时,变成101001(其实就是移位寄存器)。并且输出也是随之而改变的。 解码的过程就是逆过程。算法规定t时刻收到的数据都要进行64次比较,就是64个状态每条路有两条分支(因为输入0或1)。同时,跳转到不同的两个状态中去,将两条相应的输出和实际接收到的输出比较,量度值大的抛弃(也就是比较结果相差大的),留下来的就叫做幸存路径,将幸存路径加上上一时刻幸存路径的量度然后保存,这样64条幸存路径就增加了一步。在译码结束的时候,从64条幸存路径中选出一条量度最小的,反推出这条幸存路径(叫做回

10、溯),得出相应的译码输出。 这样的算法在TI的C54x的dsp上使用100M的速率运行,都无法达到数传速度的要求,主要的时间消耗在每条路径的两次比较上,两次比较的时间一共需要从内存中取3个数(上一时刻幸存路径的量度,两个状态跳转相应的输出值),比较结束以后,还需要对内存写入2个数(幸存路径新的总量度,下一个跳转的状态)。这样,每个时钟节拍需要比较的次数就是64*2次,每次存取数就要5次,一个数据包是256byte,知道解码一包所大概需要的时间,加上其他的开销,最后实验出来的结果是大概0.06m,但是用64k速率传输的时候只要0.03m即可传完。2 SystemView介绍2.1 SystemV

11、iew简介SystemView是ELANIX公司一个完整的Win/95/98/NT单机和网络平台的动态系统设计、仿真和分析的可视化设计工具。它提供开发各种系统的模拟和数字工具,这些系统包括DSP、信号处理、通信和控制以及构造通用数字系统模型。SystemView的环境包括一套可以选择的能够增加核心库功能的用于特殊应用的库。这些库包括:通讯库、DSP库、逻辑库、射频模拟库(RF)、支持使用VC/BC编程的用户扩充代码库、自动程序生成(APG)、TI C6XX/54X DSP实时仿真(与TI code Compoer Studio协同仿真)、CDMA/APS,数字影象广播(DVB)、自适应滤波器库

12、、联合Matlab仿真库 等。System View的XiLinx FPGA库,能准确迅速地直接用XiLinx FPGA实现DSP系统设计,另外Elanix最新推出符合第三代移动通讯的3GPP库, Turbo Code (TPC) 库 。SystemView 是一个用于现代系统设计,仿真的动态分析工具。从信号处理,滤波器设计,通信系统直到一般的系统数学模型,SystemView 在友好而且功能齐全的窗口环境下,为用户提供了一个嵌入式精密分析引擎。SystemView 利用图符和亚系统功能,可以定义一些简单的功能组,再通过对这些简单功能组的连接进而实现一个大系统。SystemView 能自动执行

13、系统连接检查,通知用户连接出错并通过显示指出出错的图符。SystemView 属于一个系统级的工作平台,可以进行包括数字信号处理(DSP)系统,模拟与数字通信系统,信号处理和控制系统的仿真分析,通过时域波形,眼图,功率谱,星座图和各类曲线给出系统的仿真分析结果。2.2 SystemView功能简介Systemview主要由库中的图符来完成不同的仿真功能。它由以下的库组成:(1)基本库:SystemView的基本库包括信源库、算子库、函数库、信号接收器库等,它为该系统仿真提供了最基本的工具。(2)信号源:SystemView为我们提供了16种信号源,可以用它来产生任意信号。(3)算子库:功能强大

14、的算子库多达31种算子,可以满足您所有运算的要求 。 (4)函数库:32种函数尽显函数库的强大库容。(5)信号接收方式库:12种信号接收方式可以任意选择,满足不同的显示要求,有图象显示,数据显示等。 (6)展功能库:扩展功能库提供可选择的能够增加核心库功能的用于特殊应用的库。它允许通信、DSP、射频/模拟和逻辑应用。 (7)通信库:包含有大量的通信系统模块,是快速设计和仿真现代通信系统的力工具。这些模块从纠错编码、调制解调、到各种信道模型一应俱全。 (8)DSP库:能够在你将要运行DSP芯片上仿真DSP系统。该库支持大多DSP芯片的算法模式。例如乘法器、加法器、除法器和反相器的图标代表真正的D

15、SP算法操作符。还包括高级处理工具:混合的Radix FFT、FIR和IIR滤波器以及块传输等。 (9)逻辑库:逻辑运算自然离不开逻辑库了,它包括象与非门这样的通用器件的图标、74系列器件功能图标及用户自己的图标等。(10)射频/模拟库:支持用于射频设计的关键的电子组件,例如:混合器、放大器和功率分配器等。 3卷积码译码器仿真3.1 卷积码译码器概述本次课程设计利用SystemView软件进行了卷积码译码器的仿真,利用SystemView软件提供的通信仿真平台,选择码元模块作为码元输入,经过采样变为数字信号,通过卷积码编码器模块进行卷积码编码,然后采样再送入卷积码译码器,将译码后的信号与码元输

16、入进行比较从而观察系统能否正确的进行译码,从而知道设计是否正确。译码器设计框图如图3.1所示:图3.1 译码器原理 3.2 System View仿真图根据译码原理设计的卷积码译码器如图3.2所示图3.2 卷积码译码仿真图其中各个模块的作用,如下: 0模块:伪随机信号,可以设置幅度,频率、信号阶数、偏置和相位参数,可以按指定的参数产生伪随机序列作为码元输入 1模块:采样模块,可以设置采样速率、孔径偏差、时间,对采样信号进行采样,但是不插入新的采样值,图种的4、16模块均位采样模块 10模块:保持模块,可以设置增益选择保持最后一次采样还是保持0,放于采样图符或压缩图符之后用于对采样值进行保持,2

17、0、19模块均为保持模块 2模块:卷积码编码器,可以设置码长、信息位、约束位、门限、偏置,按指定的参数对输入信号进行卷积编码 11模块:多项式模块,22模块也为多项式模块 24模块:采样延迟 15模块:卷积码译码器,可以设置码长、信息位、约束位、门限、偏置,按制定设置的卷积码进行译码 18模块:图形显示模块,显示译码后得到的信号,5模块显示的示输入码元的图形,图21显示的是编码后经过保持后得到的图形3.3参数设置伪随机信号的参数设置如图3.3所示:图3.3 输入码元参数设置采样器1中参数设置中采样频率和信号源的频率设置为一样,所以采样频率应设置为1Hz,其参数设置如图3.4所示:图3.4 采样

18、器参数设置经过编码以后得到的波形有很多三角波,保持模块可以使图形中的三角波经过保持以后得到漂亮的矩形波,图3.5为保持模块的参数设置: 图3.5 保持模块参数设置卷积码编码器,将经采样后的输入码进行卷积码的编码,在本次课程设计中,我们选取的是(2,1,3)卷积码,所以其参数设置中,n=2,k=1,l=3,生成多项式是自动生成的,下图3.6为卷积码编码器的参数设置:图3.6 卷积码编码器参数设置多项式模块完成码极性变换,将单极性码变成双极性码,它的原理是经一个多项式(-1+2x),0转化为-1,1仍为1,那么就将0到+1伏范围的单极性码转换为-1到+1伏范围的双极性码。其参数设置如图3.7所示:

19、图3.7 多项式模块参数设置采样器4中参数设置要注意因为经过编码后,1个码元的输入对应有2个码元输出,所以码率增大一倍,所以此时其参数设置中,采样率应设为2Hz,其参数设置如下图3.8所示:图3.8 采样器4参数设置因为码元经过编码译码后,延迟很大,若没有经过延迟模块消除延迟则再图形显示器中显示的码元数很少,所以在译码器前加入译个延迟模块参数设置如图3.9所示:图3.9 延迟器参数设置卷积码译码器的参数设置,因为设计的是(2,1,3)的卷积码所以卷积码译码器中的n,k,L必须设置为2,1,3,还要输入“Path Length”(路径长度)参数,通常路径长度要设置为编码约束长度的5倍左右,除此之

20、外还要选择硬件判决还是软件判决。通常软件判决比硬件判决可多得12dB的增益,在本次设计中选择了硬判决,参数设置如图3.10所示:图3.10 卷积码译码器参数设置采样器16中的采样速率应设置为1,因为经过卷积码译码器后2位码元对应一位,采样速率由译码前的2Hz变为1Hz,参数设置如图3.11所示:图3.11 采样器16参数设置在仿真中,要进行系统时间的设置,如开始时间、结束时间、采样数目、采样率、时间步长、频率分辨率和系统的循环次数等。其中采样频率=1/时间步长,频率分辨率=采样频率/采样点数,另外采样点数必须为整数。系统的循环次数则提供了用户系统自动重复运行的功能。要注意的是,系统采样率要大于

21、图中码元的采样率。 其参数设置如下图3.12所示:图3.12 系统时间参数设置 4 运行结果及译码分析图4.1 码元输入波形4.2 卷积码编码后的波形本课程设计选择随机码元输作为输入码元,码元输入频率为1Hz,(2,1,3)编码器将一个码元编码为2个码元,所以图4.1码元输入中的一个码元对应图4.2中编码波形的两个码元。图4.3 卷积码译码后的波形上图4.1为码元输入经过卷积码编码器后得到的波形,图4.2为码元输入波形,因为采样数目比较多,所以我们只取前面部分码元来进行分析。本课程设计选择随机码元输入作为输入码元,码元输入频率为1Hz,(2,1,3)编码器将一个码元编为2个码元,所以图4.1码

22、元输入中的一个码元对应图4.2中编码波形的两个码元。从图4.1可以读出前半部分输入的码元为(1010111),根据(2,1,3)译码器的原理,经过编码器后应该得到11010001001001,观察上图4.2编码后的图形可以得出编码是正确的,下图4.3为经过卷积码译码器以后的波形,由于经过编码译码以后的信号延迟很大,所以图形显示器显示的只有前面一部分的译码信号。从图中可以读出经过卷积码译码器得出的信号为(1010111),译码得到的信号有一定的时延,从图形显示器中只可以看到前面一部分信号的波形,但是译码得出的信号与原始的码元输入时一致的,所以可以得出系统可以将编码后的信号正确的译码为原始的码元输

23、入信号。4 结束语本课程设计首先介绍了卷积码得特点,将分组码得特点与卷积码特点进行了比较,分析了卷积码译码中的大数逻辑译码与维比特译码的译码原理,并且进行了性能的比较。以(2,1,3)卷积码为例,在在SystemView平台下,利用其丰富的图符库和强大的计算功能,对卷积码的译码过程进行了软件实现。根据仿真结果再一次论证了卷积码的译码过程,对译码以后得到的图形与原始的码元输入进行了比较,从而验证了设计的卷积码译码系统可以将编码后得到的信号正确的译码为原始的码元输入,卷积码具有很多分组码所不具有的优点,因此在通信网络中广泛的得到应用。参考文献1 樊昌信.通信原理M.北京:国防工业出版社,19942

24、 孙屹,戴妍峰.SystemView通信仿真开发手册.北京: 国防工业大学,2004 3 曹志刚.现代通信原理M.北京:清华大学出版社,19924 罗卫兵,孙桦,张捷.System View动态系统分析及通信系统仿真设计M.西安:西安电子科技大学出版社,2001课程设计成绩评定学 院 专 业 班 级 学 号 学生姓名 指导教师 课程成绩 完成日期 指导教师对学生在课程设计中的评价评分项目优良中及格不及格课程设计中的创造性成果学生掌握课程内容的程度课程设计完成情况课程设计动手能力文字表达学习态度规范要求课程设计论文的质量指导教师对课程设计的评定意见综合成绩 指导教师签字 2007年1月 15日长沙理工大学数字信号处理课程设计报告甘凌霞学 院 计算机与通信工程 专 业 通信工程 班 级 通信03-01 学 号 200354080105 学生姓名 甘凌霞 指导教师 单树民 课程成绩 完成日期 2007年1月14日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号