搜档网
当前位置:搜档网 › 卷积码编码器的设计 (1)

卷积码编码器的设计 (1)

卷积码编码器的设计 (1)
卷积码编码器的设计 (1)

湖南文理学院

课程设计报告

课程名称:通信系统课程设计

专业班级:通信工程11102班09 学生姓名:朱涛

指导教师:侯清莲

完成时间:2014-11-18

报告成绩:

目录

一、设计要求 (1)

二、设计作用与目的 (1)

三、所用设备及软件 (1)

四、卷积码编码的概念 (1)

4.1卷积码的编码描述方法 (1)

4.2 卷积编码 (2)

4.3 卷积码的树状图 (3)

4.4 卷积码的网格图 (3)

五、 EDA设计方法及工具软件QUARTUSⅡ (4)

六、改变卷积编码器的参数仿真以及结论 (4)

6.1 不同回溯长度对卷积编码器性能的影响 (4)

6.2 不同码率对卷积编码器误码性能的影响 (5)

6.3 不同约束长度对卷积编码器的误码性能影响 (6)

七、卷积码编码器的VHDL设计与仿真 (8)

7.1 VHDL设计的优点与设计方法 (8)

7.2 卷积码编码器的VHDL实现 (10)

八、心得体会 (10)

九、参考文献 (11)

卷积编码器的设计

一、设计要求

(1)画出卷积码的原理框图,说明系统中各主要组成部分的功能。

(2)使用EDA技术及VHDL语言对卷积编码器进行设计与仿真并对结果分析。

二、设计作用与目的

(1)巩固加深对通信基本知识分析以及卷积码的掌握,提高综合运用通信知识的能力。(2)掌握采用仿真软件对系统进行仿真分析。

(3)培养学生查阅参考文献,独立思考,设计,钻研电子技术相关问题的能力。

(4)掌握相关电子线路工程技术规范以及常规电子元器件的性能技术指标。

(5)培养严肃认真的工作作风与科学态度,建立严谨的工程技术观念。

(6)了解电气图国家标准,并利用电子CAD等正确绘制电路图。

(7)培养工程实践能力,创新能力与综合设计能力。

三、所用设备及软件

(1)QUARTUSⅡ

(2)PC机

四、卷积码编码的概念

4.1卷积码的编码描述方法

编码描述方法有5种:冲激响应描述法、生成矩阵描述法、多项式乘积描述法、状态图描述法和网格图描述法。卷积码的纠错能力随着N的增加而增大,而差错率随着N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。分组码有严格的代数结构,但卷积码至今尚未找到如此严密的数学手段。分组码的译码算法可以由其代数特性得到。卷积码虽然可以采用适用于分组码的门限译码(即大数逻辑译码),但性能不如维特比译码和序列译码[2]。

以二元码为例,输入信息序列为u=(u0,u1,…),其多项式表示为u(x)=u0+u1x+…

+…。编码器的连接可用多项式表示为g

(1,1)(x)=1+x+x2和g

(1,2)

(x)=1+x2,称为码的子生

成多项式。它们的系数矢量g

(1,1)=(111)和g

(1,2)

=(101)称作码的子生成元。以子生成多项式

为阵元构成的多项式矩阵G(x)=[g

(1,1)(x),g

(1,2)

(x)],称为码的生成多项式矩阵。由生成

元构成的半无限矩阵。

4.2 卷积编码

卷积码的编码器一般都比较简单。

图4.1 卷积码编码器

图4.1是一般情况下的卷积码编码器框图。它包括NK级的输入移位器,一组n个模2和加法器和n级的输出移位寄存器。对应于每段k比特的输入序列,输出n个比特。由图可知,n个输出比特不但与当前的k个输入比特有关,而且与以前的(N-1)k个输入信息比特有关。整个编码过程可以看成是输入信息序列与由移位寄存器和模2加法器的连接方式所决定的另一个序列的卷积,卷积码由此得名。本文采用的是冲击响应描述法编码思想。

图4.2(2,1,3)卷积编码器

如图4.2是卷积码(2,1,3)卷积编码器的一个框图。左边是信息的输入。下面分别是系统位输出和校验位输出。其中间是3个移位寄存器和一个模2加法器。简单的说就是信息位经过移位寄存器和一个模2加法器产生一个系统位和校验位加在一起输出。可以看出:每输入一个比特,移位寄存器中就向右移动一个位子。原来的第三个寄存器就被移出。可见卷积编码不只与现在的输入比特有关还与前面的3-1个比特有关。所以约束长度是3。在这里,其中K=1,n=2所以码率R=K/n=1/2[3]。

4.3 卷积码的树状图

对于图4.2所示的(2,1,3)卷积码编码电路,其树状图如下图4.3所示,这里,分别用a ,b ,c 和d 表示寄存器的4种状态:00,01,10和11,作为树状图中每条支路的节点。以全零状态a 为起点,当输入位信息位为0时,输出码元c1c2=00,寄存器保持状态a 不变,对应图中从起点出发的上支路;当输入位为1时,输出码元c1c2=11,寄存器则转移到状态b ,对应图中的下支路;然后再分别以这两条支路的终结点a 和b 作为处理下一位输入信息的起点,从而得到4条支路,以此类推,可以得到整个树状图。如下图4.3

图4.3(2,1,3)树状图

4.4 卷积码的网格图

状态图可以完整的描述编码器的工作过程,但是其只能显示状态转移的过程而不能显示状态转移发生的时刻,由此引出用来表示卷积码的另一种常用方法——网格图。网格图就是时 间与对应状态的转移图,在网格图中每一个点表示该时刻的状态,状态之间的连线表示状态转移。通过观察网格图可以发现在网格图中输入信息x (n )并没有标出,但如观察到转移后的状态表示(x (n ),x (n -1))就可以发现输入信息已经隐含在转移后的状态中[4]。

如下图4.4是(2,1,3)卷积编码的网格图。

00

00 状态 A 00 B 01 C 10 D 11 A 00 B 01 C 10

D 11

a a

b

11 11

01

10

a b

c d

a b c d

图4.4(2,1,3)卷积编码的网格图

五、 EDA 设计方法及工具软件QUARTUS Ⅱ

(1) 前端设计(系统建模RTL 级描述)后端设计(FPGAASIC )系统建模。 (2) IP 复用。 (3) 前端设计。

(4) 系统描述:建立系统的数学模型。

(5) 功能描述:描述系统的行为或各子模块之间的数据流图。

(6) 逻辑设计:将系统功能结构化,通常以文本、原理图、逻辑图、布尔表达式来表示设计结果。

(7) 仿真:包括功能仿真和时序仿真,主要验证系统功能的正确性及时序特性。

六、 改变卷积编码器的参数仿真以及结论

6.1 不同回溯长度对卷积编码器性能的影响

下面将以(2,1,3)卷积码来建立模块仿真。将编码模块中的Traceback depth 分别设置为20,35,45并在一个图中画出这三种方式下的误码性能曲线得到下图。从上到下的三条曲线分别是Traceback depth 为20,35,45。可以看出:回溯长度是在Viterbi 译码过程中一个很重要的参数,他决定了译码延迟,随着他的不断变化,误码性能也随误比特率曲线可以清楚地看到,当回溯长度一定时,随着信道噪声的逐渐减小,系统的误比特率逐渐降低;当回溯长度逐渐增加,系统的误比特率随之逐渐降低,但是当回溯程度a 增加到a ≥5N 时(N 为编码的约束长度),误比特率数值趋于稳定,因此,在确定回溯长度时既要考虑到随着a 的增加误比特率随之降低的趋势,也要考虑到译码延迟会变大,在选取回溯长度时,通常取a =5N 。

状态 a =00 b =01 c =10 d =11

图 6.1不同回溯长度对误码性能的影响

分析不同回溯长度对卷积码无码性能的影响时用到的程序如下:

x=-10:5;

y=x;

for i=1:length(x)

SNR=x(i);

sim(‘yima’);

y(i)=mean(BitErrorRate);

End

semilogy(x,y);

Hold on;

for i=1:length(x)

SNR=x(i);

sim(‘yima2’);

y(i)=mean(BitErrorRate);

End

semilogy(x,y);

6.2 不同码率对卷积编码器误码性能的影响

下面图是通过改变卷积码的码率为1/2和1/3而得到的二条对比曲线。上面的一条曲线是码率为1/2,下面的是码率为1/3。卷积码的码率R=k/n,他是卷积码的一个重要参数,当改变卷积码的码率时,系统的误码性能也将随之发生变化。从图中的误比特率曲线可以

看出,当码率一定时,随着信道噪声的逐渐减小,系统的误比特率也呈现出增大的趋势,也就是说码率越低,系统的误比特率就越小,误码性能就越好。

图6.2卷积码不同码率对误码性能的影响

分析不同码率对卷积码误码性能的影响时用到的程序如下:

X=0:5;

y=x;

for i=1:length(x)

SNR=x(i);

sim(‘yimal’);

y(i)=mean(BitErrorRate);

end

semilogy(x,y);

hold on;

for i=1;length(x)

SNR=x(i);

Sim(‘yima2’);

y(i)=mean(BitErrorRate);

end

semilogy(x,y);

6.3 不同约束长度对卷积编码器的误码性能影响

如下图,对于码率一定的卷积码,当约束长度N发生变化时,系统的误码性能也会随之发生变化,我们以码率R=1/2的(2,1,3)和(2,1,7)卷积码为例展开分析。上面的曲

线是(2,1,3)卷积码的误码性能曲线。下面的曲线是(2,1,7)卷积码的误码性能曲线。从图中的误比特率曲线可以清楚的看到,随着约束长度可以降低系统的误比特率,但是随着约束长度的增加,译码设备的复杂性也会随之增加,所以对于码率为1/2的卷积码,我们在选取约束长度时一般为3-9。

图6.3不同约束长度对卷积码误码性能的影响

分析不同约束长度对卷积码误码性能影响用到的程序如下:

x=0:5;

y=x;

for i=1:length(x)

SNR=x(i);

Sim(‘yima’);

y(i)=mean(BitErrorRate);

end

semilogy(x,y);

hold on;

for i=1:length(x)

SNR=x(i);

sim(‘yima1’);

y(i)=mean(BitErrorRate);

end

semilogy(x,y);

通过上面从(1)回溯长度;(2)码率;(3)约束长度这三个卷积码编码器的重要参数的变化后对译码性能的分析,我们得到在卷积码的编码,译码过程中很多条件是不可能同时满足的。所以我们要根据具体情况来选择合适的参数。

七、卷积码编码器的VHDL设计与仿真

7.1VHDL设计的优点与设计方法

VHDL语言采用自上至下和基于库的设计方法,其突出的优点是具有多层次描述系统硬件功能的能力,可以从系统的数学模型直到门级电路。

本设计所用VHDL设计平台是Altera的QuartusⅡEDA软件。QuartusⅡ界面友好,使用便捷;它支持VHDL语言文本文件,原理图,以及波形与EDIF等格式的文件作为设计输入,并支持这些文件的任意混合设计:具有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果。

7.2卷积码编码器的VHDL实现

7.2.1卷积编码器顶层建模的VHDL描述

library ieee;

use ieee.std_logic_1164.all;

entity encoder is

port (clk:in std_logic;

clr:in std_logic;

data_in:in std_logic;

c0,c1,c2:out std_logic);

end;

architecture behave of encoder is

component dff2

port(d,clk,clr:in std_logic;

q:out std_logic);

end component;

component xor2

port (a,b:in std_logic;

y:out std_logic);

end component;

component xor3

port (a,b,c:in std_logic;

y:out std_logic);

end component;

signal din,r1,r2,y1,y2: std_logic;

begin

din<=data_in;

u0:dff2port map (din, clk, clr,r1);

u1:dff2port map (r1, clk, clr,r2);

u2:xor2port map (din,r1,y1);

u3:xor3port map (din,r1,r2,y2);

c0<=din;

c1<=y1;

c2<=y2;

end;

用QuartusⅡ编译后生成的编码器图形符号如图所示。

图7.2编码器图形符号7.2.2卷积编码器VHDL仿真波形

卷积编码器VHDL仿真波形如图7.3所示。仿真前设输入信息序列datain=“11011”,速率为32kb/s。仿真结果表明,卷积编码输出为“111 100 010 110 100”,速率为96kb/s,与理论分析结果一致。

图7.3卷积编码器仿真波形

八、心得体会

我们利用Lattice公司的CPLD器件及EDA软件工具,设计的(2,1,m)卷积码编码器满足卫星信道的设计要求,并具有体积小、功耗低等优点。在设计过程中采用VHDL 硬件描述语言进行输入,可以在设计过程中利用EDA软件所提供的逻辑或时序仿真功能,实时检验电路的设计结果,从而提高硬件电路的设计功率,缩短硬件电路的开发时间。。编解码器结构简单,实现容易,将通过仿真的VHDL程序下载到FPGA芯片EPF10K10LC84-3上,并在实际扩频系统中用于差错控制,验证效果较好。需要指出,对于长突发错误000…000-111…111,解码器不能纠正,需要采用交织技术同卷积解码纠错技术相结合,将突发分离,才可进一步提高纠错性能。

九、参考文献

[1] 吴伟發.信息处理与编码[M].北京:人民邮电出版社.1999.

[2] 王新梅.肖国镇.纠错码-原理与方法[M].西安:西安电子科技大学出版社.2001.

[3] 段吉海.黄智伟.基于CPLD/FPGA的数字通信系统的建模与设计[M].北京:电子工业

出版社.2004

[4] 布哈加瓦V K.数字卫星通信[M].北京:电子工业出版社.1987Chip Flenning.A Tutorial

on Convolutional Coding with Vitcrbi Decoding.1999.

[5] Proakia JC.数字通信[M].第3版.北京:电子工业出版社.2001.

[6] 王金明.杨积斌.数字系统设计与Verilog HDL[M].北京:电子工业出版社.2002.

[7] 田耕无线通信FPGA设计.电子工业出版社.2008

[8] 樊昌信.通信原理.国防工业出版社.2009

Matlab的卷积码译码器的仿真要点

基于Matlab的卷积码译码器的 设计与仿真 学生姓名:指导老师:** 摘要本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出, 并通过Matlab软件进行设计与仿真,并进行误码率分析。在课程设计中,系统开发平台为Windows Vista Ultimate,程序设计与仿真均采用Matlab R2007a(7.4),最后仿真详单与理论分析一致。 关键词课程设计;卷积码译码器;Matlab;Simulink;设计与仿真 1引言 本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出,并通 过Matlab软件进行设计与仿真。卷积码的译码有两种方法——软判决和硬判决,此课程设计采用硬判决的维特比译码。 1.1课程设计目的 卷积码是一种向前纠错控制编码。它将连续的信息比特序列映射为连续的编码器输出符号。这种映射是高度结构化的,使得卷积码的译码方法与分组码译码所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。对于某个特定的应用,采用分组编码还是采用卷积编码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术[1]。 本课程设计便是通过Matlab设计一个硬判决维特比译码输出的完整电路,并进行误码率分析。

1.2 课程设计的原理 卷积码,又称连环码,是由伊莱亚斯(P.elias)于1955年提出来的一种非分组码。 卷积编码的最佳译码准则为:在给定已知编码结构、信道特性和接收序列的情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估值。对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的序列。 卷积码的译码方法有两大类:一类是大数逻辑译码,又称门限译码(硬判决,编者注);另一种是概率译码(软判决,编者注),概率译码又分为维特比译码和序列译码两种。门限译码方法是以分组码理论为基础的,其译码设备简单,速度快,但其误码性能要比概率译码法差[2]。 当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单,计算速度快。维特比译码算法是1967年由Viterbi提出,近年来有大的发展。目前在数字通信的前向纠错系统中用的较多,而且在卫星深空通信中应用更多,该算法在卫星通信中已被采用作为标准技术。 2维特比译码原理 采用概率译码的基本思想是:把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列作为发送序列。如果发送L组信息比特,那么对于(n,k)卷积码来说,可能发送的序列有2kL个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。当传信率和信息组数L较大时,使得译码器难以实现。维特比算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法。它并不是在网格图上一次比较所有可能的2kL条路径(序列),而是接收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个码序列是一个最大似然值得序列。 下面以图2.1的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。为了能说明解码过程,这里给出该码的状态图,如图2.2所

卷积码编码器的设计 (1)剖析

湖南文理学院 课程设计报告 课程名称:通信系统课程设计 专业班级:通信工程11102班09 学生姓名:朱涛 指导教师:侯清莲 完成时间:2014-11-18 报告成绩:

目录 一、设计要求 (1) 二、设计作用与目的 (1) 三、所用设备及软件 (1) 四、卷积码编码的概念 (1) 4.1卷积码的编码描述方法 (1) 4.2 卷积编码 (2) 4.3 卷积码的树状图 (3) 4.4 卷积码的网格图 (3) 五、 EDA设计方法及工具软件QUARTUSⅡ (4) 六、改变卷积编码器的参数仿真以及结论 (4) 6.1 不同回溯长度对卷积编码器性能的影响 (4) 6.2 不同码率对卷积编码器误码性能的影响 (5) 6.3 不同约束长度对卷积编码器的误码性能影响 (6) 七、卷积码编码器的VHDL设计与仿真 (8) 7.1 VHDL设计的优点与设计方法 (8) 7.2 卷积码编码器的VHDL实现 (10) 八、心得体会 (10) 九、参考文献 (11)

卷积编码器的设计 一、设计要求 (1)画出卷积码的原理框图,说明系统中各主要组成部分的功能。 (2)使用EDA技术及VHDL语言对卷积编码器进行设计与仿真并对结果分析。 二、设计作用与目的 (1)巩固加深对通信基本知识分析以及卷积码的掌握,提高综合运用通信知识的能力。(2)掌握采用仿真软件对系统进行仿真分析。 (3)培养学生查阅参考文献,独立思考,设计,钻研电子技术相关问题的能力。 (4)掌握相关电子线路工程技术规范以及常规电子元器件的性能技术指标。 (5)培养严肃认真的工作作风与科学态度,建立严谨的工程技术观念。 (6)了解电气图国家标准,并利用电子CAD等正确绘制电路图。 (7)培养工程实践能力,创新能力与综合设计能力。 三、所用设备及软件 (1)QUARTUSⅡ (2)PC机 四、卷积码编码的概念 4.1卷积码的编码描述方法 编码描述方法有5种:冲激响应描述法、生成矩阵描述法、多项式乘积描述法、状态图描述法和网格图描述法。卷积码的纠错能力随着N的增加而增大,而差错率随着N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。分组码有严格的代数结构,但卷积码至今尚未找到如此严密的数学手段。分组码的译码算法可以由其代数特性得到。卷积码虽然可以采用适用于分组码的门限译码(即大数逻辑译码),但性能不如维特比译码和序列译码[2]。 以二元码为例,输入信息序列为u=(u0,u1,…),其多项式表示为u(x)=u0+u1x+…+…。编码器的连接可用多项式表示为g (1,1) (x)=1+x+x2和g(1,2)(x)=1+x2,称为码的子生 成多项式。它们的系数矢量g (1,1)=(111)和g (1,2) =(101)称作码的子生成元。以子生成多项式 为阵元构成的多项式矩阵G(x)=[g (1,1)(x),g (1,2) (x)],称为码的生成多项式矩阵。由生成 元构成的半无限矩阵。

卷积码的设计与实现

湖南文理学院课程设计报告 课程名称:通信系统课程设计 院部:电气与信息工程学院 专业班级: 学生姓名: 指导教师: 完成时间: 2011 年 12 月 29日 报告成绩:

目录 目录 (2) 摘要 (3) Abstract (4) 一、引言 (5) 1.1设计任务及基本要求 (5) 1.2设计目的 (6) 1.3 设计所用仪器设备.................................................................................. 错误!未定义书签。 二、基本概念 (6) 2.1 卷积码的编码原理 (6) 2.2 卷积码编码描述 (6) 2.3 卷积码译码描述 (6) 三、卷积码的编译码原理 (6) 3.1卷积码的图形描述 (6) 3.1.1 树状图 (8) 3.1.2 网格图 (8) 3.1.3 状态图 (9) 3.2 卷积积码的编码算法 (9) 3.3卷积码的Viterbi译码 (10) 四、卷积码的仿真及性能分析 (12) 4.1 SIMULINK仿真模块 (12) 4.2 卷积码的参数对误码率的影响 (13) 4.2.1 码率对误码性能的影响 (13) 4.2.2 约束长度对误码性能的影响 (15) 4.2.3 回溯长度对卷积码性能的影响 (16) 4.3 仿真分析 (17) 总结 (18) 参考文献: (19)

摘要 卷积码是深度空间通信系统和无线通信系统中常用的一种差错控制编码。在编码过程中,卷积码充分利用了各码字间的相关性。在与分组码同样的码率和设备复杂性的条件下,无论从理论上还是从实践上都证明,卷积码的性能都比分组码具有优势。而且卷积码在实现最佳译码方面也较分组码容易。因此卷积码广泛应用于卫星通信,CDMA数字移动通信等通信系统,是很有前途的一种编码方式。对其进行研究有很大的现实意义。为了解决传统的维特比译码器结构复杂、译码速度慢、消耗资源大的问题,提出一种新型的适用于FPGA 特点,路径存储于译码输出并行工作,同步存储路径矢量和状态矢量的译码器设计方案。该设计方案通过在ISE.2i中仿真验证,译码结果正确,得到编码前的原始码元,速度显著提高,译码器复杂程度明显降低。并在实际的软件无线电通信系统中信道编解码部分得到应用,性能优良。 关键词:卷积码;误码性能;原理

卷积码编译码课设 (2)

摘要 卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文对卷积码和卷积码的编译码有一个简单的介绍且给出了信道编码的发展历史及研究状况,然后详细讨论了(2,1,2)卷积码的编码过程和译码过程,通过状态转移方程和输出方程得出状态转移表和状态转移图,然后通过维特比译码器研究,总结出了维特比译码算法,最后通过Matlab软件进行设计与仿真,得到了编码程序和译码程序,其运行结果与理论分析一致。 关键字卷积码编码、信道编码、Viterbi译码、MATLAB仿真

目录 摘要........................................... 错误!未定义书签。 一、引言 (3) 1.1发展历史及研究状况 (3) 1.2设计目的和意义 (3) 1.3设计方法 (4) 二、卷积码编译码原理 (5) 2.1 卷积码编码原理 (5) 2.2编码器 (6) 2.3 卷积码译码原理 (7) 2.4 VITEBI 译码的关键步骤 (8) 2.4.1 输入与同步单元 (8) 2.4.2 支路量度计算 (8) 2.4.3 路径量度的存储与更新 (8) 2.4.4 信息序列的存储与更新 (8) 2.4.5 判决与输出单元 (8) 三、卷积码编码实现 (9) 3.1 编码原理分析 (9) 3.2 卷积码编码流程图 (10) 四、卷积码译码实现 (11) 4.1 译码编程思路 (11) 4.2 卷积码译码流程图 (11) 五、卷积码编译码程序的编译及仿真波形 (11) 5.1 卷积码编码仿真 (12) 5.2卷积码译码仿真 (13) 5.3卷积码纠错码仿真 (14) 六、总结 (15) 七、参考文献 (16) 附录 (17)

实验九 (2,1,5)卷积码编码译码技术

实验九 (2,1,5)卷积码编码译码技术 一、实验目的 1、掌握(2,1,5)卷积码编码译码技术 2、了解纠错编码原理。 二、实验内容 1、(2,1,5)卷积码编码。 2、(2,1,5)卷积码译码。 三、预备知识 1、纠错编码原理。 2、(2,1,5)卷积码的工作原理。 四、实验原理 卷积码是将发送的信息序列通过一个线性的,有限状态的移位寄存器而产生的编码。通常卷积码的编码器由K级(每级K比特)的移位寄存器和n个线性代数函数发生器(这里是模2加法器)组成。 若以(n,k,m)来描述卷积码,其中k为每次输入到卷积编码器的bit数,n 为每个k元组码字对应的卷积码输出n元组码字,m为编码存储度,也就是卷积编码器的k元组的级数,称m+1= K为编码约束度m称为约束长度。卷积码将k 元组输入码元编成n元组输出码元,但k和n通常很小,特别适合以串行形式进行传输,时延小。与分组码不同,卷积码编码生成的n元组元不仅与当前输入的k元组有关,还与前面m-1个输入的k元组有关,编码过程中互相关联的码元个数为n*m。卷积码的纠错性能随m的增加而增大,而差错率随N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。 编码器 随着信息序列不断输入,编码器就不断从一个状态转移到另一个状态并同时输出相应的码序列,所以图3所示状态图可以简单直观的描述编码器的编码过程。因此通过状态图很容易给出输入信息序列的编码结果,假定输入序列为110100,首先从零状态开始即图示a状态,由于输入信息为“1”,所以下一状态为b并输出“11”,继续输入信息“1”,由图知下一状态为d、输出“01”……其它输入信息依次类推,按照状态转移路径a->b->d->c->b->c->a输出其对应的编码结果“110101001011”。 译码方法 ⒈代数 代数译码是将卷积码的一个编码约束长度的码段看作是[n0(m+1),k0(m+1)]线性分组码,每次根据(m+1)分支长接收数字,对相应的最早的那个分支上的信息数字进行估计,然后向前推进一个分支。上例中信息序列 =(10111),相应的码序列 c=(11100001100111)。若接收序列R=(10100001110111),先根据R 的前三个分支(101000)和码树中前三个分支长的所有可能的 8条路径(000000…)、(000011…)、(001110…)、(001101…)、(111011…)、(111000…)、(110101…)和(110110…)进行比较,可知(111001)与接收

基于matlab的2-3卷积码编码译码设计与仿真

西南科技大学 方向设计报告 课程名称:通信工程方向设计 设计名称:2/3卷积码编译码器仿真与性能分析 姓名: 学号: 班级: 指导教师: 起止日期:2011.12.12-2012.1.6 西南科技大学信息工程学院制

方向设计任务书 学生班级:学生姓名:学号: 设计名称:2/3卷积码编译码器仿真与性能分析 起止日期:2011.12.12-2012.1.6指导教师: 设计要求: (1)分析2/3卷积码编码器结构; (2)分析2/3卷积码译码的Viterbi算法; (3)基于SIMULINK进行2/3卷积码的纠错性能仿真; 方向设计学生日志 时间设计内容 12.15-12.17 查看题目及设计要求。 12.18-12.23 查阅相关资料,设计方案。 12.23-12.27 编写报告及调试程序。 12.28-12.29 完善修改课程设计报告。 12.30-12.31 答辩。

方向设计考勤表 周星期一星期二星期三星期四星期五 方向设计评语表 指导教师评语: 成绩:指导教师: 年月日

2/3卷积码编译码器仿真与性能分析 摘要: 卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文简明地介绍了卷积码的编码原理和Viterbi译码原理。并在SIMULINK模块设计中,完成了对卷积码的编码和译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分别改变卷积码的重要参数来加深理解卷积码的这些参数对卷积码的误码性能的影响。经过仿真和实测,并对测试结果作了分析。 关键词: 卷积码编码器、viterbi译码器、SIMULINK

毕业设计61基于System View的卷积码译码器的设计

基于System View的卷积码译码器的设计 摘要本课程设计在SystemView 平台上设计了卷积码译码器,SystemView系统中提供了专门的卷积码编码和译码图符,使用户能快速地建立基于卷积码的仿真系统,本课程设计对(2,1,6)的大数逻辑译码原理,以及维比特译码原理进行了解释,利用SystemView 进行了(2,1,3)卷积码译码器的仿真。系统运行以后将译码后得到的波形与原始的码元输入信号进行比较,系统参数经过修改以后能够正确地将编码后的信号译码为原始的码元。 关键字卷积码译码器,System View,(2,1,3)卷积码译码器 1 引言 卷积码的译码方法主要有两类,代数译码和概率译码。代数译码是根据卷积码的本身编码结构进行译码,译码时不考虑信道的统计特性。概率译码在计算时要考虑信道的统计特性。典型的算法如:最大似然译码、维比特译码、序列译码等。本课程设计利用SystemView 平台进行卷积码译码器的实现,SystemView系统中提供了专门的卷积码编码和译码图符,使用户能快速地建立基于卷积码的仿真系统,本课程设计对(2,1,6)的大数逻辑译码原理,以及维比特译码原理进行了解释,利用System View进行了(2,1,3)卷积码译码仿真,系统参数经过修改以后能够正确地将编码后的信号译码为原始的码元。 1.1 卷积码简介 卷积码也称为连环码是一种非分组码,分组码编码时,先将输入的信息序列分为长度为k的码元的字段,然后按照一定的编码规则,给含k个信息元的段附加上r长的监督元,于是生成n 长的码组。在编码时,各n长码组是分别编码的,各码组之间没有约束关系,因此译码时各码组之间是分别独立进行的。卷积码则不同于此,卷积编码属于信道编码,主要用来纠正码元的随机差错,它是以牺牲效率来换取可靠性的,利用增加监督位,进行检错和纠错。卷积码把k个信息位编成n位,k和n通常很小,特别适宜于串行形式传输,延时小,n个码元与当前段的k个信息位有关,而且与前N-1段的信息有关,编码过程相互关联的码元为Nn个,N或Nn称为卷积码的约束长度,常把卷

MATLAB实现卷积码编译码-

本科生毕业论文(设计) 题目:MATLAB实现卷积码编译码 专业代码: 作者姓名: 学号: 单位: 指导教师: 年月日

目录 前言----------------------------------------------------- 1 1. 纠错码基本理论---------------------------------------- 2 1.1纠错码基本理论 ----------------------------------------------- 2 1.1.1纠错码概念 ------------------------------------------------- 2 1.1.2基本原理和性能参数 ----------------------------------------- 2 1.2几种常用的纠错码 --------------------------------------------- 6 2. 卷积码的基本理论-------------------------------------- 8 2.1卷积码介绍 --------------------------------------------------- 8 2.1.1卷积码的差错控制原理----------------------------------- 8 2.2卷积码编码原理 ---------------------------------------------- 10 2.2.1卷积码解析表示法-------------------------------------- 10 2.2.2卷积码图形表示法-------------------------------------- 11 2.3卷积码译码原理---------------------------------------------- 15 2.3.1卷积码三种译码方式------------------------------------ 15 2.3.2V ITERBI译码原理---------------------------------------- 16 3. 卷积码编译码及MATLAB仿真---------------------------- 18 3.1M ATLAB概述-------------------------------------------------- 18 3.1.1M ATLAB的特点------------------------------------------ 19 3.1.2M ATLAB工具箱和内容------------------------------------ 19 3.2卷积码编码及仿真 -------------------------------------------- 20 3.2.1编码程序 ---------------------------------------------- 20 3.3信道传输过程仿真-------------------------------------------- 21 3.4维特比译码程序及仿真 ---------------------------------------- 22 3.4.1维特比译码算法解析------------------------------------ 23 3.4.2V ITERBI译码程序--------------------------------------- 25 3.4.3 VITERBI译码MATLAB仿真----------------------------------- 28 3.4.4信噪比对卷积码译码性能的影响 -------------------------- 28

卷积码的编解码Matlab仿真

卷积码的编解码Matlab仿真

卷积码的编解码Matlab仿真 摘要 卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文简明地介绍了卷积码的编码原理和译码原理。并在SIMULINK模块设计中,完成了对卷积码的编码和译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分别改变卷积码的重要参数来加深理解卷积码的这些参数对卷积码的误码性能的影响。经过仿真和实测,并对测试结果作了分析。得出了以下三个结论: (1)当改变卷积码的码率时,系统的误码性能也将随之发生变化。 (2)对于码率一定的卷积码,当约束长度N 发生变化时,系统的误码性能也会随之发生变化。 (3)回溯长度也会不同程度上地影响误码性能。 关键词:卷积码;码率;约束长度;回溯长度

Simulation and Research on Encoding and Decoding of Convolution Code Abstract Convolution code has a superior performance of the channel code. It is easy to coding and decoding. And it has a strong ability to correct errors. As correcting coding theory has a long development, the practice of convolution code is more and more extensive. In this thesis, the principle of convolution coding and decoding is introduced simply firstly. Then the whole simulation module process of encoding, decoding and the Error Rate Calculation is completed in this design. Finally, in order to understand their performances of error rate, many changes in parameters of convolution code are calculated in the simulation process. After simulation and measure, an analysis of test results is presented. The following three conclusions are draw: (1) When the rate of convolution Code changes, BER performance of the system will change. (2) For a certain rate of convolution code, when there is a change in the constraint length of N, BER performance of the system will change. (3) Retrospective length will affect BER. Key words:convolution code; rate; constraint length; retrospective length;

基于matlab的卷积码译码器的仿真设计

数字通信原理课程设计报告书

基于matlab的卷积码译码器的仿真设计 ) 1设计目的 卷积码是一种向前纠错控制编码。它将连续的信息比特序列映射为连续的编码器输出符号。这种映射是高度结构化的,使得卷积码的译码方法与分组码译码所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。对于某个特定的应用,采用分组编码还是采用卷积编码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术。 本课程设计便是通过Matlab设计一个硬判决维特比译码输出的完整电路,并进行误码率分析。 2设计的主要内容和要求 (1)要求能熟练地运用Matlab技术对卷积码译码器进行仿真。 (2)运用Matlab中Simulink单元来创建信源模块、信道模块、信宿模块、简易译码器模块等,并运用所有设计的模块来进行仿真。 3 设计原理 3.1卷积码 卷积码,又称连环码,是由伊莱亚斯(P.elias)于1955年提出来的一种非分组码。 卷积编码的最佳译码准则为:在给定已知编码结构、信道特性和接收序列的情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估值。对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的序列。 卷积码的译码方法有两大类:一类是大数逻辑译码,又称门限译码(硬判决,编者注);另一种是概率译码(软判决,编者注),概率译码又分为维特比译码和序列译码两种。门限译码方法是以分组码理论为基础的,其译码设备简单,速度快,但其误码性能要比概率译码法差。

当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单,计算速度快。维特比译码算法是1967年由Viterbi 提出,近年来有大的发展。目前在数字通信的前向纠错系统中用的较多,而且在卫星深空通信中应用更多,该算法在卫星通信中已被采用作为标准技术。 3.2 维特比译码原理 采用概率译码的基本思想是:把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列作为发送序列。如果发送L 组信息比特,那么对于(n,k )卷积码来说,可能发送的序列有2kL 个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。当传信率和信息组数L 较大时,使得译码器难以实现。维特比算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法。它并不是在网格图上一次比较所有可能的2kL 条路径(序列),而是接收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个码序列是一个最大似然值得序列。 下面以图3.2.1的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。为了能说明解码过程,这里给出该码的状态图,如图3.2.2 示。维特比译码需要利用图来说明移码过程。根据卷积码画网格的方法,我们可以画出该码的网格图,如图3.2.3所示。该图设输入信息数目L=5,所以画L+N=8个时间单位,图中分别标以0至7。这里设编码器从a 状态开始运作。该网格图的每一条路径都对应着不同的输入信息序列。由于所有可能输入信息序列共有2kL 个,因而网格图中所有可能的路径也为2kL 条。这里节点a=00,b=01,c=10, b 图3.2.1 (2,1,3)卷积码编码器 图3.2.2 (2,1,3)卷积码状态图

卷积码的仿真

湖南科技大学 信息与电气工程学院 课程设计报告 课程:通信原理 题目:卷积码的仿真 专业:电子信息工程 班级:电子二班 姓名:高二奎 学号: 1104030205

任务书

目录 一、任务与要求 (4) 1.1设计的目的 (4) 1.2 设计的基本内容 (4) 二、卷积码的介绍 (4) 2.1 卷积码的介绍 (4) 2.2 编码原理 (4) 2.3 译码原理 (7) 三、SystemView软件简介 (8) 3.1 SystemView基本特点 (8) 3.2 各单元模块功能介绍及电路设计 (8) 3.3 各模块的原理及介绍 (10) 3.4 图符库选择按钮 (10) 3.5 system view 的操作步骤 (11) 3.6 分析窗的接收计算器 (12) 四、系统仿真和调试 (12) 4.1 系统仿真 (12) 4.2 调试结果 (13) 五、总结 (15) 5.1 设计小结 (15) 5.2 心得体会 (15) 参考文献 (16)

一、任务与要求 1.1设计的目的 这次的课程设计就是基于SystemView软件的卷积码仿真设计,要学会运用SystemView,理解卷积码系统的原理,并用SystemView进行仿真设计。 1.2 设计的基本内容 SystemView是一种动态系统分析软件,也是一个非常好的仿真工具。它能按照物理概念直接建立分析和仿真,对通信技术的发展起到很大的作用。本次课程设计就是利用软件SystemView对卷积码进行可视化仿真,对信息数据的编码,传输及译码等功能的实现,充分展示了SystemView在通信仿真中灵活的应用实例。 二、卷积码的简介 2.1 卷积码介绍 非分组码的卷积码的编码器是在任一段规定时间内产生n个码元,但它不仅取决于这段时间中的k个信息位,还取决于前(K-1)段规定时间内的信息位,这K段时间内的码元数目为K·k,称参数K为卷积码的约束长度,每k 个比特输入,得到n比特输出,编码效率为k/n,约束长度为K。在k=1的条件下,移位寄存器级数m=K-1。 卷积码一般可用(n,k,K)来表示,其中k为输入码元数,n为输出码元数,而K则为编码器的约束长度。典型的卷积码一般选n和k ( k< n ) 值较小,但约束长度K可取较大值(K<10),以获得既简单又高性能的信道编码 [6]。 卷积码是1955年Elias最早提出,1957年Wozencraft提出了序列译码。 1963年Massey提出了一种性能稍差,但比较实用的门限译码方法。1967年维特比(Viterbi)提出了最大似然译码。它对存储器级数较小的卷积码的译码很容易实现,称为维特比算法或维特比译码。

删余卷积码的维特比译码器的设计与实现

删余卷积码的维特比译码器的设计与实现 在数字通信系统中,特别是面向IEEE802.11ac标准的无线通信系统中,删余卷积码与对应的维特比译码算法作为一种必选的提高信息传输可靠性的技术,具有严重的研究价值。随着人们对数据传输速率要求的不断提升,硬件设备的复杂度也在不断提高,而译码复杂度、硬件系统功耗与资源消耗问题制约了删余卷积码的维特比译码器在数字通信中的进一步发展与应用。本文基于IEEE802.11ac标准,以降低算法计算复杂度、减小硬件设计的系统功耗和硬件资源消耗为目标,对信道编译码算法(包括二进制卷积编译码、交织与扰码算法)进行设计并改进;在完成算法设计的基础上对信道编码各模块进行硬件设计,本文针对传统设计方法的高功耗和高硬件消耗问题提出优化方案。 本文的主要研究成果如下:1.针对删余卷积码的维特比译码算法在高码率下计算复杂度高的问题,提出改进的维特比译码算法。为了解决删余卷积码在码率高于的情况下,译码的计算复杂度较高,且随着码率的增大,译码复杂度也不断提高的问题,本文在传统的维特比译码算法中引入调整因子,可实现当码率大于时有用减少计算分支度量值的步骤,并且随着码率增大,改进算法对译码复杂度的优化更加明明,通过正交频分复用系统环路的搭建,可评估系统的误码率性能;2.针对删余卷积码的译码硬件设计复杂度随码率增高而提高的问题,提出在硬件设计过程中,增设存储删余位置指示信息的寄存器。该寄存器用来指示译码的输入数据是否为补零后的数据。 在计算分支度量值时,该寄存器中的数据与度量值计算结果进行相与,得到加比选模块的输入度量值,可有用减少删余卷积码的维特比译码器在计算分支度量值时的计算步骤。本文搭建FPGA验证平台,并运用QuartusⅡ软件和SignalTapⅡ在线逻辑分析仪可验证硬件设计结果;3.针对删余卷积码的维特比译码器效率低和系统延时较大的问题,提出在译码器内部对加比选模块的设计采用4个加比选子模块并行同步运算的基4方法,可有用提高系统译码效率,并降低译码延时;4.针对信道编码的硬件设计在硬件资源消耗、系统功耗和编译码性能三者之间不平均问题,本文提出串并结合的硬件设计方法。信道编码发送端采用全并行和组合逻辑进行硬件设计,可大幅降低系统功耗;信道编码接收端采用串并结合的处理方法,通过250KHz和20MHz双时钟折中处理硬件资源消耗与系统功耗问题。

北邮ASIC实验报告 (3,1,8)卷积码编码器

北京邮电大学 ASIC原理课程实验 实验报告 设计要求:(3,1,8)卷积码编码器 学院:电子工程学院 专业:电子信息科学与技术 班级: 学号: 姓名: 2013年6月20日

一、设计要求 运用verilog语言编写一个(3,1,8)卷积码编码器,并对其进行仿真。 二、卷积码编码器原理 卷积码拥有良好的纠错性能,是一种被广泛应用于移动通信的信道编码系统。一个(n,k,m)卷积码编码器由k个输入,具有m阶存储的n个输出的线形时序电路实现。通常,n和k是较小的整数,且k<n,但m比较大。当k=1时,信息序列不再分成小块,以便可以连续处理。卷积码(n,k,m)表示码率R=k/n,编码器级数m=s-1,其中s是码约束长度。 反向CDMA信道使用(3,1,8)卷积码,码率R=1/3,约束长度为9,由于k=1,n=3,m=8,则该卷积编码器包含单个输入端,一个8级移位寄存器,三个模2加法器和一个3向编码器输出的连续转向器。编码器每输入一位信息比特将产生三位编码输出。这些编码符号中,第一个输出符号G0是生成序列g1⑴编码产生的符号,第二个输出符号G1是由生成序列g1⑵编码产生的符号,最后一个输出符号G2是由生成序列g1⑶编码产生的符号,如下图所示。 该电路由一个八位寄存器、三个码生成逻辑、一个时隙发生器和一个四选一复用器构成。mux的输入为G0、G1和G2,码选择信号C[1:0]和clk1由时隙发生器产生,输出信号即为整个电路的输出Yout。 卷积编码器的初始状态用rst异步清零信号置为0,rst=0时,电路清零。 卷积编码器的初始状态全为0,初始状态之后输出的第一个编码符号由生成序列g1⑴编码产生。这里,三个生成序列分别为g1⑴=(101101111),g1⑵=(110110011), g1⑶=(111001001)。

34卷积码编码原理分析与建模仿真

3/4卷积码编码原理分析与建模仿真 一、摘要 卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文简明地介绍了卷积码的编码原理和Viterbi译码原理。并在SIMULINK模块设计中,完成了对卷积码的编码和译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分析了卷积码误比特率与信噪比之间的关系,及卷积码与非卷积码的对比。经过仿真和实测,并对测试结果作了分析。 关键词:卷积码编码建模 SIMULINK仿真

目录 一、摘要 ................................................................................................................................................................. - 1 - 二、设计目的和意义 ............................................................................................................................................. - 2 - 三、设计原理 ......................................................................................................................................................... - 3 - 3.1 卷积码基本概念 ...................................................................................................................................... - 3 - 3.2 卷积码的结构 .......................................................................................................................................... - 3 - 3.3 卷积码的解析表示 .................................................................................................................................. - 4 - 3.4 卷积码的译码 .......................................................................................................................................... - 4 - 3.4.1 卷积码译码的方式........................................................................................................................ - 4 - 3.5.2 卷积码的Viterbi译码 .................................................................................................................. - 5 - 四、详细设计步骤 ................................................................................................................................................. - 6 - 4.1 卷积码的仿真 .......................................................................................................................................... - 6 - 4.1.1 SIMULINK仿真模块的参数设置及意义 ................................................................................. - 6 - 五、设计结果及分析 ........................................................................................................................................... - 11 - 5.1不同信噪比对卷积码的影响.................................................................................................................. - 11 - 5.2卷积码的对比 ........................................................................................................................................ - 12 - 六、总结 ............................................................................................................................................................... - 14 - 七、体会 ............................................................................................................................................................... - 14 - 八、参考文献 ....................................................................................................................................................... - 14 - 二、设计目的和意义 因为信道中信号不可避免会受到干扰而出错。为实现可靠性通信,主要有两种途径:一种

基于MATLAB的卷积码的分析与应用毕业设计

毕业设计 基于MATLAB的卷积码的分析与应用

东北大学本科毕业设计(论文)毕业设计(论文)任务书毕业设计(论文)任务书 毕业设计(论文)题目: 基于MATLAB的卷积码的分析与应用 设计(论文)的基本内容: (1)介绍纠错控制编码的相关理论,重点分析卷积码的相关编码和解码理论。 (2)在MATLAB中编写卷积码的编码和解码程序,模拟通信系统,针对TD-SCDMA系统中的卷积码进行仿真。 (3) 进行纠错译码验证,纠错比较及误码率相关因素分析。 毕业设计(论文)专题部分: 题目: 设计或论文专题的基本内容: 学生接受毕业设计(论文)题目日期 第2周 指导教师签字: 2010年3月8日

基于MATLAB的卷积码的分析与应用 摘要 随着现代通信的发展,特别是在未来4G通信网络中,高速信息传输和高可靠性传输成为信息传输的两个主要方面,而可靠性尤其重要。因为信道状况的恶劣,信号不可避免会受到干扰而出错。为实现可靠性通信,主要有两种途径:一种是增加发送信号的功率,提高接收端的信号噪声比;另一种是采用编码的方法对信道差错进行控制。前者常常受条件限制,不是所有情况都能采用。因此差错控制编码得到了广泛应用。 介绍了多种信道编码方式,着重介绍了卷积码的编码方法和解码方式。介绍了MATLAB的使用方法、编程方法、语句、变量、函数、矩阵等。介绍了TD-SCDMA通信系统和该系统下的卷积码,搭建了系统通信模型。编写卷积码的编码和解码程序。用MATLAB仿真软件对TD-SCDMA系统的卷积码编解码进行仿真。对其纠正错码性能进行验证,并且对误码率进行仿真和分析。卷积码的编码解码方式有很多,重点仿真Viterbi算法。Viterbi算法就是利用卷积码编码器的格图来计算路径度量,选择从起始时刻到终止时刻的惟一幸存路径作为最大似然路径。沿着最大似然路径回溯到开始时刻,所走过的路径对应的编码输出就是最大似然译码输出序列。它是一种最大似然译码方法,当编码约束长度不大、或者误码率要求不是很高的情况下,Viterbi译码器设备比较简单,计算速度快,因而Viterbi译码器被广泛应用于各种领域。 关键词:卷积码;信道编码;TD-SCDMA;MATLAB

相关主题