当前位置:文档之家› 基于MATLAB的线性分组码课程设计论文

基于MATLAB的线性分组码课程设计论文

基于MATLAB的线性分组码课程设计论文
基于MATLAB的线性分组码课程设计论文

目录

TOC \o "1-3" \h \u HYPERLINK \l _Toc6750 前言.... PAGEREF _Toc6750 1

HYPERLINK \l _Toc26804 工程概况................ PAGEREF _Toc26804 1

HYPERLINK \l _Toc14622 正文.................... PAGEREF _Toc14622 2 HYPERLINK \l _Toc4430 3.1设计的目的和意义... PAGEREF _Toc4430 2

HYPERLINK \l _Toc31075 3.1.1设计的目的. PAGEREF _Toc31075 2

HYPERLINK \l _Toc18535 3.1.2设计的意义. PAGEREF _Toc18535 2 HYPERLINK \l _Toc31236 3.2 线性分组码的编码与译码原理 PAGEREF _Toc31236 2 HYPERLINK \l _Toc11233 3.2.1线性分组码的编码原理 PAGEREF _Toc11233 2

HYPERLINK \l _Toc6682 3.2.2 线性分组码的译码原理 PAGEREF _Toc6682 3 HYPERLINK \l _Toc31791 3.3 2PSK的调制与解调原理 PAGEREF _Toc31791 4 HYPERLINK \l _Toc26402 3.3.1调制的原理. PAGEREF _Toc26402 4

HYPERLINK \l _Toc27747 3.3.2解调的原理. PAGEREF _Toc27747 4 HYPERLINK \l _Toc23880 3.4 不同信噪比是的测试结果 PAGEREF _Toc23880 5 HYPERLINK \l _Toc20433 3.4.1 信噪比为1时 PAGEREF _Toc20433 5

HYPERLINK \l _Toc4861 3.4.2 信噪比为5时. PAGEREF _Toc4861 5

HYPERLINK \l _Toc31183 3.4.3 信噪比为10时 PAGEREF _Toc31183 6

HYPERLINK \l _Toc29253 3.4.4译码时当检测到错码结果如图 PAGEREF _Toc29253 6 HYPERLINK \l _Toc2127 致谢...................... PAGEREF _Toc2127 7

HYPERLINK \l _Toc30045 参考文献................ PAGEREF _Toc30045 7

前言

近年来,随着计算机、卫星通信及高速数据网的飞速发展,数据的交换、数据的交换理和存储技术得到了广泛的应用,人们对数据传输和存储系统的可靠性提出了越来越高的要求。因此,如何控制差错、提高数据传输和存储的可靠性,成为现代数字通信系统设计的重要课题。目前,绝大多数的数字计算机和数字通信系统中广泛采用二进制形式的码。而线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术。

本课程设计主要讨论数字通信系统中的信道编码中的线性分组码的编译码以及2PSK调制、解调。

分组码是一组固定长度的码组,可表示为(n,k),通常它用于前向纠错。在分组码中,监督位被加到信息位之后,形成新的码。在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。对于长度为n的二进制线性分组码,它有种2n可能的码组,从2n种码组中,可以选择M=2k 个码组(k

调制在时域上是用一个低频信号对一高频信号某一特征参量进行的控制。低频信号称为调制信号,高频信号称为载波,而调制出来的信号称为已调信号,所以调制的过程在时域就是使载波的某一特征参量随调制信号的变化而变化的过程。调制过程在频域上是一个移频的过程。解调,调制的逆过程,即从已调波中不失真地恢复原有的低频调制信号的过程。解调的方法可分为两类:相干解调(同步检波)和非相干解调(包络检波)。

本课程设计主要是采用Matlab仿真实现线性分组码的编译码和2PSK的调制与解调。在加深理论知识的基础上,对Matlab仿真也有进一步的理解。

工程概况

本次课程设计的主题是采用Matlab软件仿真实现线性分组码的仿真与分析。首先要求对Matlab软件有着较为深入地了解和认识,掌握一些Matlab软件的基本函数用法。例如:用Matlab 软件实现2PSK的调制与解调等等。同时利用软Matlab件也能对书本上的知识进行验证,,与书本上的讲解进行对照分析和比较。本次课程设计要求的技术对我们通信的学习起着很大的作用。

正文

3.1设计的目的和意义

3.1.1设计的目的

1、学会查阅资资料。

2、掌握线性分组码的编码原理、编码步骤和译码方法。

3、熟悉Matlab软件的基本操作,学会用Matlab软件进行线性分组码的编码和译码。

3.1.2设计的意义

通过本课程设计实验使我们掌握了Matlab的基本使用方法。培养了我们的实际应用的能力,提高分析问题、解决问题的能力。而且提高我们对这门课的了解深度,把理论知识和实践仿真相结合,增强了个人的动手和独立思考能力,也为以后后续课程的学习以及从事实际工作打下良好的基础。

3.2 线性分组码的编码与译码原理

3.2.1线性分组码的编码原理

对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,常记作(n,k)码,如果满足2r-1≥n,则有可能构造出纠正一位或一位以上错误的线性码。

设分组码(n,k)中,k = 11,为能纠正一位误码,要求r≥3。现取r=4,则n=k+r=15。该例子中,信息组为:

(c14c13c12c11c10c9c8c7c6c5)

码字为:

(c14c13c12c11c10c9c8c7c6c5c4c3c2c1c0)。

一个系统码的生成矩阵G,其左边k行k列应是一个k阶单位方阵Ik,因此生成矩阵G表示为:

G=[Ik P]

由H矩阵得到(n,k)线性分组码的每一码字ci,(i=1,2,…,2k),都必须满足由H矩阵各行所

确定的线性方程组,即 ci·HT=0.(15,11)码的生成矩阵G中每一行及其线性组合都是(n,k)码的码字,所以有G·HT =0。由G和H构成的行生成的空间互为零空间,即G和H彼此正交。H=[PT Ir]其右边r行r列组成一个单位方阵。

本文中采用的是(15,11)的线性分组码,线性分组码的编码由监督矩阵和生成矩阵实现。监督矩阵H为(4×11)的矩阵,由监督方程和(4×4)的单位矩阵构成,生成矩阵G为(11×15)的矩阵,由(11×11)的单位矩阵和监督矩阵的转置矩阵构成。编程时具体实现方法如下:

= 1 \* GB3 ①将要编码的序列先整形,整为11列。

= 2 \* GB3 ②如果序列不能被11整除在后边补0使其能被11整除。

= 3 \* GB3 ③将整形后的序列与生成矩阵G相乘即得到编码后的码字。

3.2.2 线性分组码的译码原理

两个码字之间,对应位取之不同的个数,称为汉明距离,用d表示。一个吗的最小距离dmin 定义为dmin=min{d(ci,cj),i≠j,ci,cj∈(n,k)},两个码字之间的距离表示了它们之间差别的大小。距离越大,两个码字的差别越大,则传送时从一个码字错成另一码字的可能性越小。码的最小距离愈大,其抗干扰能力愈强。

对于任一个(n,k)线性分组码,若要在码字内检测出e个错误,则要求码的最小距离d≥e+1; 纠正t个错误,则要求码的最小距离d≥2t+1;(3)纠正t个错误同时检测e(≥t)个错误,则要求 d≥t+e+1。

假设接收端收到的码字为B,那么它和原来发送端发送的码字A之间就有可能存在着误差。即在码组A={ a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 }中的任意一位就有可能出错。这样我们在接收端接收到一个码组时就有可能判断错发送端原来应该要表达的意思。为了描述数据在传输信道中出现错误的情况,引入了错误图样E,在错误图样中,0代表对应位没有传错,1代表传输错误。实际上错误图样E就是收序列与发送序列的差。所以在译码中用接收到的码字B模尔加错误图样E就可以得到发送端的正确码字A。因此译码的过程就是要找到错误图样E。

定义:校正子S

S = B * H EMBED Equation.3 = ( A + E ) * H EMBED Equation.3

= A * H EMBED Equation.3 + E * H EMBED Equation.3 = E * H EMBED Equation.3

因为A是编得的正确码字。根据前面所叙述,它和监督矩阵的转置相乘为0。显然,S仅与错误图样有关,它们之间是一一对应的关系。找到了校正子S,也就可以找到E。而与发送的码字无关。若E=0,则S=0;因此根据S是否为0可进行码字的检错。

如果接收码字B中只有一位码元发生错误,又设错误在第i位。即Ei-1=1,其他的Ei均为0。在后面的译码程序中,建立了一个校正子S与错误图样E对应的表。也就是收到一个B序列,

就可以通过计算得到一个校正子,而每一个校正子都对应着一个错误图样E,再通过B模尔加上E,就可以得到正确的码字A。

因为在不同的错误序列B中,同一位码元错误时对应的E是一样的,所以可以利用00000000000这个正确的码字让它每位依次错误,来求得它的校正子。而这时的矩阵B就是错误图样E。

在编程时本实验所采用的为(15,11)线性分组码,最小汉明距离为3,所以具有纠错1位检错两位的功能。编程时具体实现方法如下:

(设一个接收码字矩阵为R,R*H'=S (模2乘),则S为码字对应的伴随式矩阵如果S=0则说明接受码字无差错;

(如果S不为0,查看矩阵S中不为0的那行所在行数,该行即收码字错误所在行i;

(将S转置,将不为0的一列与H每一列进行比较,找到H中相同列,该列的列数即为错误所在列;

④由步骤((得到错误具体位置,模2加对应的错误图样就可得到正确码字。

3.3 2PSK的调制与解调原理

3.3.1调制的原理

数字调制有三种基本调制方式:振幅键控(ASK)、频移键控(FSK)和相移键控(PSK或DPSK)。2PSK调制利用载波的相位变化来传递数字信息,振幅和频率保持不变。双极性的全占空矩形脉冲序列与正弦载波相乘就得到调制信号。因此进行调制时首先进行码形变换变为双极性的,再经乘法器与载波相乘得到调制信号。

3.3.2解调的原理

解调是调制的逆过程,其作用是从接受信号中恢复出原基带信号。解调的方法分为两类:相干解调和非相干解调(如包络检波)。相干解调也称同步检波,适用于所有线性调制信号的解调。其关键是必须在已调信号的接收端产生与信号载波同频同相的本地载波。

本文中2PSK的解调用的是想干解调法,调制信号与想干载波相乘,经过低通滤波器,再抽样判决得到原信号。产生一个与载波频率相同的本地载波,与经信道加噪后的调制信号相乘,得到解调信号。然后通过低通滤波器滤波器再抽样判决,得出解调后的原始信号。(要减去滤波器的延时时间t,t=(滤波器长度+1)/2)。

3.4 不同信噪比是的测试结果

3.4.1 信噪比为1dB时

由图可知当随机生成11位0、1码字时,经过信道编码即线性分组码得到15为编码的码字。编码后的码字经过码型变换得到双极性不归零的码字。经过与载波相乘得到2PSK调制信号,调制信号在0、1变化时会存在反相工作现象。加入高斯白噪声,与相干载波相乘得到解调信号得到如图中解调后的波形。再经过低通滤波器滤除噪声,然后抽样判决由于码字是双极性码字所以判决电平为0即可。

3.4.2 信噪比为5dB时

3.4.3 信噪比为10dB时

3.4.4译码时当检测到错码结果如图

由以上实验结果可知,该程序基本完成了线性分组码的编码、调制、加噪、解调、译码(包括检错纠错)等一系列操作。当输出结果和输入时显示结果是一致的,可见程序的编码过程是正确的。对译码而言当接收码字与输入码字相同时,它提取了码字的前11位,即信息位。由此的出译码过程是正确的,不需要纠检错。而当出现错误时,经程序纠检错误后改正了接收序列的错误,并且译出了正确信息。当出现随着信噪比的降低解调信号错误率越高,由于(15,11)线性分组只能纠正一位错误,对于大于等于2位的错误不能纠正,所以信噪比低低的情况下,会出现较多的误码。需要采取纠错能力更强的信道编码方法进行编码。

致谢

在这次课程设计的撰写过程中,遇到了很多的困难,但我也得到了许多人的帮助。

首先我要感谢我的老师在课程设计上给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次报告的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。

其次,我要感谢帮助过我的同学,他们也为我解决了不少我不太明白的编程上的难题。同时也感谢学院为我提供良好的做毕业设计的环境。

最后再一次感谢所有在设计中帮助过我的老师和同学。

参考文献

[1] 樊昌新,曹丽娜.通信原理.国防工业出版社,2011

[2] 孙丽华编. 信息论与纠错编码. 电子工业出版社. 2005,3

[3] 郭文彬桑林编. 通信原理-基于MATLAB的计算机仿真. 北京邮电大学出版社. 2006.2

[4] 王华李有军编. MATLAB电子仿真与应用教程(第二版). 国防工业出版社. 2007.3

[5] 孙屹主编. MATLAB通信仿真开发手册. 国防工业出版社. 2005.1

附程序:

线性编码:

function [n,C]=xxbm(n)

a=randint(1,n);

disp('编码序列:');

disp(a);

subplot(3,2,1);

stairs(a);

axis([1 length(a) -0.5 1.5])

title('编码序列');

%判断生成的随机序列个数是否是11的整数倍

if length(a)/11==fix(length(a)/11)

b=reshape(a,11,(length(a)/11));

M=b';

F=eye(11);

S=[0 0 1 1;0 1 0 1;0 1 1 0;0 1 1 1;1 0 0 1;1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1];

K=eye(4); %4行4列的单位矩阵

G=[F,S];

H=[S',K];

C=rem(M*G,2);

disp('生成矩阵G:');

disp(G);

disp('监督矩阵H:');

disp(H);

disp('码字:');

disp(C); %得到a/11行15列的编码

else %随机序列个数不是11的整数倍,补0后编码

s1=[a,zeros(1,(fix(length(a)/11)+1)*11-length(a))]; %补0

b=reshape(s1,11,(length(s1)/11));

M=b';

F=eye(11);

S=[0 0 1 1;0 1 0 1;0 1 1 0;0 1 1 1;1 0 0 1;1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1];

K=eye(4);

G=[F,S];

H=[S',K]; %监督矩阵 C=rem(M*G,2) ;

disp('生成矩阵G:');

disp(G);

disp('监督矩阵H:');

disp(H);

disp('码字:');

disp(C);

end

subplot(3,2,2);

stairs(C(1,:));

axis([1 length(C) -0.5 1.5]);

title('编码后的码字');

数字调制:

function [fc,fs,datarate,modusignal]=BPSKmodu(bits,datarate)

fc=datarate*2;

fs=fc*8;

modusignal=[];

t=linspace(0,2,16);

carriar=cos(2*pi*t); %载波

bits=bits*2-1;% 初始相位0对应-1,1对应1

for i=1:length(bits)

modusignal=[modusignal,bits(i)*carriar];%载波与信号相乘进行调制

end

subplot(3,2,3);plot(modusignal);

title('BPSK已调波形');

信道加噪:

function cs=channel(modusignal,bits)

cs=awgn(modusignal,10); %信噪比为1时

subplot(3,2,4);plot(cs);

%title('相乘后信号频谱');

title('加噪后的波形');

解调

function k=designal(modusignal)

designal=[];

t=linspace(0,2,16);

carrier=cos(2*pi*t); %相干载波

for i=1:16:length(modusignal)

designal=[designal,modusignal(i:i+15).*carrier]; %解调后的序列end

subplot(3,2,5);plot(designal);

title('解调后的波形');

lppass=length(designal); %滤波器的长度

L=(length(lppass)+1)/2; %滤波器的延时

y=filter(lppass,1,designal);

for i=1:length(y); %滤波后的波形

if y(i)<0

y(i)=-1;

else

y(i)=1;

end

end

subplot(3,2,6);

plot(y);

axis([L length(y)+L -1.5 1.5]); %axis(xmin xmax ymin ymax)title('抽样判决后的波形');

%-----------------------------------

%抽样判决

for i=1:1:length(y)/16 %抽样间隔为1

k(i)=0;

for j=1:16

k(i)=k(i)+y((i-1)*16+j);%

end

k(i)=k(i)/16; %判决电平K(i)大于判为1小于为0

if k(i)<0

k(i)=0;

else

k(i)=1;

end

end

译码:

function I=xxym(n,C)

[a,b]=size(C);%返回c的行数和列数

S=[0 0 1 1;0 1 0 1;0 1 1 0;0 1 1 1;1 0 0 1;1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1];

K=eye(4);

H=[S',K];

A=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];%

B=eye(15);

E=[A;B]; %生成错误图样

S=rem(C*H',2);

Q=H';

m=zeros(1,a);

for i=1:a

for j=1:b

if S(i,:)==Q(j,:) %找出出错的位置

m(i)=j; %数组m记录出错的位置

end

end

end

for i=1:a %在错误的位置给出提示并纠错

switch(m(i))

case 0

disp('没有出现错误!');

G(i,:)=C(i,:)+E(1,:);

case 1

disp('注意:第1位出现一个错误!已纠错!');

G(i,:)=C(i,:)+E(2,:);

case 2

disp('注意:第2位出现一个错误!已纠错!');

G(i,:)=C(i,:)+E(3,:);

case 3

disp('注意:第3位出现一个错误!已纠错!');

G(i,:)=C(i,:)+E(4,:);

case 4

disp('注意:第4位出现一个错误!已纠错!');

G(i,:)=C(i,:)+E(5,:);

case 5

disp('注意:第5位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(6,:);

case 6

disp('注意:第6位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(7,:);

case 7

disp('注意:第7位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(8,:);

case 8

disp('注意:第8位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(9,:);

case 9

disp('注意:第9位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(10,:);

case 10

disp('注意:第10位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(11,:);

case 11

disp('注意:第11位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(12,:);

case 12

disp('注意:第12位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(13,:);

case 13

disp('注意:第13位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(14,:);

case 14

disp('注意:第14位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(15,:);

case 15

disp('注意:第15位出现一个错误!已纠错!'); G(i,:)=C(i,:)+E(16,:);

end

end

G=rem(G,2); %求出正确的编码

disp('检错并纠错后的码组:');

disp(G); %显示正确的编码

j=1;

while j<=11 %提取信息位

I(:,j)=G(:,j); %

j=j+1;

end

[m1,n1]=size(I);

I=I';

I=reshape(I,1,m1*n1); %将I变为1行m1*n1列的for i=1:n

C1(i)=I(i);

end

disp('译出的序列:');

disp(C1); %显示原信息码

matlab课程设计题目

课题一: 连续时间信号和系统时域分析及MATLAB实现 课题要求: 深入研究连续时间信号和系统时域分析的理论知识。利用MATLAB强大的图形处理功能、符号运算功能以及数值计算功能,实现连续时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB实现常用连续时间信号的时域波形(通过改变参数,分析其时域特性)。 1、单位阶跃信号, 2、单位冲激信号, 3、正弦信号, 4、实指数信号, 5、虚指数信号, 6、复指数信号。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘, 4、微分, 5、积分 三、用MATLAB实现信号的时域变换(参数变化,分析波形变化) 1、反转, 2、使移(超时,延时), 3、展缩, 4、倒相, 5、综合变化 四、用MATLAB实现信号简单的时域分解 1、信号的交直流分解, 2、信号的奇偶分解 五、用MATLAB实现连续时间系统的卷积积分的仿真波形 给出几个典型例子,对每个例子,要求画出对应波形。 六、用MATLAB实现连续时间系统的冲激响应、阶跃响应的仿真波形。 给出几个典型例子,四种调用格式。 七、利用MATLAB实现连续时间系统对正弦信号、实指数信号的零状态响应的仿真波形。 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题二: 离散时间信号和系统时域分析及MATLAB实现。 课题要求: 深入研究离散时间信号和系统时域分析的理论知识。利用MATLAB强大的图

形处理功能、符号运算功能以及数值计算功能,实现离散时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB绘制常用信号的时域波形(通过改变参数分析其时域特性) 1、单位序列, 2、单位阶跃序列, 3、正弦序列, 4、离散时间实指数序列, 5、离散时间虚指数序列, 6、离散时间复指数序列。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘。 三、用MATLAB实现信号的时域变换(参数变化,分析波形的变化) 1、反转, 2、时移(超时,延时), 3、展缩, 4、倒相。 四、用MATLAB实现离散时间系统卷积和仿真波形 给出几个典型例子,对每个例子要求画出e(k),h(k),e(i),h(i),h(-i),Rzs(k)波形。 五、用MATLAB实现离散时间系统的单位响应,阶跃响应的仿真波形 给出几个典型例子,四中调用格式。 六、用MATLAB实现离散时间系统对实指数序列信号的零状态响应的仿真波形 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题三: 连续时间信号傅里叶级数分析及MATLAB实现。 课题要求: 深入研究连续时间信号傅里叶级数分析的理论知识,利用MATLAB强大的图形处理功能,符号运算功能以及数值计算功能,实现连续时间周期信号频域分析的仿真波形。 课题内容: 一、用MATLAB实现周期信号的傅里叶级数分解与综合 以周期矩形波信号为例,绘出包含不同谐波次数的合成波形,观察合成波形与原矩形 波形之间的关系及吉布斯现象。

线性分组码的信道编码和译码

clear; clc; %编码 G=input('请输入生成矩阵G,例如:G=[1 0 1 1 1;0 1 1 0 1]\n G='); [k,n]=size(G); r=n-k; m=input('请输入需传送信息m,如m=[0 0 0 1 1 0 1 1]\n m='); l=length(m); if(mod(l,k)) disp('输入的信息有误'); else ge=l/k; %将输入序列转化成矩阵m temp1=[]; for i=1:ge temp1(i,:)=m(k*(i-1)+1:i*k); end m=temp1; %求校验矩阵H c=mod(m*G,2); A=G(:,k+1:n); H=[A',eye(r)]; disp('校验矩阵');H disp('译码矩阵');c end disp('敲回车键继续'); pause %解码 y=input('输入接收序列y,如:y=[0 0 0 0 0 0 1 1 0 1 1 0 1 1 1 1 0 0 1 0]\n y='); temp2=[]; for i=1:ge temp2(i,:)=y(1,n*(i-1)+1:i*n); end y=temp2 s=mod(y*H',2); e=s*pinv(H'); for i=1:ge for j=1:n if(e(i,j)>0.5-eps) e(i,j)=1; else e(i,j)=0; end end end cc=mod(y+e,2); %cc=xor(y,e) sc=cc(:,1:2); disp('差错图样'); e disp('估计值'); cc disp('译码序列'); sc

卷积码的编解码Matlab仿真

卷积码的编解码Matlab仿真摘要 卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力D随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文简明地介绍了卷积码的编码原理和译码原理o并在SIMULINK模块设计中,完成了对卷积码的编码和译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分别改变卷积码的重要参数来加深理解卷积码的这些参数对卷积码的误码性能的影响。经过仿真和实测,并对测试结果作了分析。得出了以下三个结论z (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.An d it has a strong ability to correct e盯ors. As correcting coding theory has a long development,the practice of convolution code is more and more extensive.In由1S由esis,the principle of convolution coding and decoding is introduced simply白rstly. Then由e whole simulation module process of encoding,decoding and the Error Rate Calculation is completed in由is design. Finally,in order to understand 由eir performances of error rate,many changes in parameters of convolution code are calculated in the simulation process.Af ter simulation and me皿UTe,an analysis of test results is presented.Th e following由ree conclusions are draw: (l)Wh en the rate of convolution Code ch皿ges,HER performance of the systemwill change. (2) For a certain rate of convolution code,when由ere is a change in the constraint length of N,BER perfonnance of由e system will change. (3) Re位ospec咀ve length will affect BE R. Key words: convolution code; rate; cons缸aint leng由; retrospective length;

MATLAB课设报告

课程设计任务书 学生姓名:董航专业班级:电信1006班 指导教师:阙大顺,李景松工作单位:信息工程学院 课程设计名称:Matlab应用课程设计 课程设计题目:Matlab运算与应用设计5 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应 用”、线性代数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MATLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形 标注、简单颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:1.5周(分散进行) 参考文献: [1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010. [2]王正林,刘明.精通MATLAB(升级版) .电子工业出版社,2011. [3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011. [4]刘保柱,苏彦华,张宏林. MATLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010. 指导教师签名:年月日 系主任(或责任教师)签名:年月日

Matlab课程设计报告

自控系统仿真软件课程设计报告 MATLAB 设计题目:牛顿摆球 姓名: 学号: 院系: 班级:1203 指导教师: 2014年12月20日

一.课程设计目的 1、熟悉课程设计的基本流程; 2、掌握MATLAB语法结构及调试方法; 3、熟悉MATLAB函数调用,熟练二维画图; 4、掌握MATLAB语言在控制方面的运用; 5、学会用MATLAB进行基本仿真; 6、掌握MATLAB编程技巧,提高编程水平。 二.系统分析 1.题目的描述: (1)牛顿摆球原理描述 五个质量相同的球体由吊绳固定,彼此紧密排列。当摆动最右侧的球并在回摆时碰撞紧密排列的另外四个球,最左边的球将被弹出,并仅有最左边的球被弹出。当然此过程也是可逆的,当摆动最左侧的球撞击其它球时,最右侧的球会被弹出。当最右侧的两个球同时摆动并撞击其他球时,最左侧的两个球会被弹出。同理相反方向同样可行,并适用于更多的球。 为了更接近现实,在这里我将考虑重力及空气阻力的影响,摆球将不会永无止境的运动下去,由于外界因素的影响,摆球运动一段时间后将回归静止状态。(2)通过MATLAB动画程序制作软件,实现下述过程 当运行程序时,把最右边的小球拉到一定的高度放下,让其碰撞其余四个小球,仅让最左边的小球被弹出,当最左边小球回摆碰撞其它球时,最右边小球又被弹出,如此循环。由于是非理想条件下,摆球的摆动幅度会随摆动次数的增加越来越小,直到静止。 时间停顿两秒,把右边两小球一起拉到一定高度放下,让其碰撞其余三个球,同样仅让左边两球被弹出,当球回摆再次碰撞时,最右边两球又被同时弹出,如此循环,因为外界因素的影响,最终五个球都会静止下来。 (3)整个实验看似简单,但要在MATLAB上完成这样一个动画过程,还是需要下点功夫,克服困难的。经过自己的努力,终于实现了整个过程,这也是一种不小的收获。 2.设计要求: (1)能够实现有阻尼摆动,即摆幅随摆动次数增加越来越小,直到静止。(2)能够让摆球弧线摆动。 三.系统设计 1.系统设计过程 (1)通过函数axis建立坐标系 (2)在坐标系范围内通过函数line画各个支架 (3)通过函数title添加标题“动量守恒实验”、函数text添加标注“牛顿摆球” (4)通过函数line画出五个球,并设定其初始位置,颜色,大小,线条的擦拭方式

MATLAB结课论文设计.

MATLAB程序设计(论文) 基于MATLAB实现语音信号的去噪 院(系)名称电子与信息工程学院 专业班级通信工程 学号 学生姓名 任课教师

论文任务

摘要 滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR 滤波器是滤波器设计的重要组成部分。利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器。课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪声语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用MATLAB 作为编程工具进行计算机实现。在设计实现的过程中,使用窗函数法来设计FIR数字滤波器,用巴特沃斯、切比雪夫和双线性变法设计IIR数字滤波器,并利用MATLAB 作为辅助工具完成设计中的计算与图形的绘制。通过对对所设计滤波器的仿真和频率特性分析,可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器,过程简单方便,结果的各项性能指标均达到指定要求。 关键词数字滤波器 MATLAB 窗函数法巴特沃斯切比雪夫双线性变换

目录 第1章绪论 (1) 1.1数字信号处理的意义 (1) 1.2语音去噪设计要求 (2) 第2章语音去噪方案设计 (3) 2.1语音去噪的应用意义 (3) 2.2 语音去噪设计框图 (3) 2.3设计原理 (4) 第3章程序分析 (5) 3.1 语音去噪采样过程 (5) 3.2 语音去噪方案 (6) 第 4 章总结 (8) 参考文献 (9) 附录 (10)

第1章绪论 1.1数字信号处理的意义 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等优点。 数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。 FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能用较高的阶数达到高的选择性。FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。FIR 数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐。 IIR滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。 滤波器的设计可以通过软件或设计专用的硬件两种方式来实现。随着MATLAB软

Matlab中卷积码译码器的误码率分析

长沙理工大学 《通信原理》课程设计报告 郭林 学院计算机与通信工程专业通信工程 班级540802 学号11 学生姓名郭林指导教师龙敏 课程成绩完成日期2008年1月11日

基于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所

matlab课程设计拟定题目

第一类:单位转换 1.长度单位换算的设计与实现 2.面积单位换算的设计与实现 3.体积单位换算的设计与实现 4.容积单位换算的设计与实现 5.质量单位换算的设计与实现 6.时间单位换算的设计与实现 7.温度单位换算的设计与实现 7.压强单位换算的设计与实现 8.角度单位换算的设计与实现 8.功率单位换算的设计与实现 第二类:曲线绘制 1.直线的自动绘制和相关计算 2.椭圆的自动绘制和相关计算 3.双曲线的自动绘制和相关计算 4.抛物线的自动绘制和相关计算 5.心脏线的自动绘制和相关计算 6.渐开线的自动绘制和相关计算 7.滚圆线的自动绘制和相关计算 8.三叶玫瑰线的自动绘制和相关计算9.四叶玫瑰线的自动绘制和相关计 10.阿基米德螺线的自动绘制和相关计算第三类:曲面绘制 1.球面的自动绘制和相关计算 2.椭球面的自动绘制和相关计算 3.单叶双曲面的自动绘制和相关计算 4.双叶双曲面的自动绘制和相关计算 5.抛物面的自动绘制和相关计算 6.双曲抛物面的自动绘制和相关计算 7.双曲柱面的自动绘制和相关计算 8.椭圆柱面的自动绘制和相关计算 9.抛物柱面的自动绘制和相关计算 10.圆锥面的自动绘制和相关计算 第四类:线性回归 1.男士身高体重相关计算经验公式 2.女士身高体重相关计算经验公式 3.男士胖瘦等级的确定 4.女士胖瘦等级的确定 5.男士身高脚长相关计算经验公式 6.女士身高脚长相关计算经验公式 7.父子身高相关性研究 8.母子身高相关性研究 9.父女身高相关性研究 10.母女身高相关性研究 第五类:学习成绩 1.期末总评自动计算的设计与实现 2.成绩等级自动评定的设计与实现 3.成绩分段自动统计的设计与实现 4.成绩分布折线自动绘制的设计与实现 5.成绩自动统计分析的设计与实现 6.试卷分布自动分析的设计与实现 7.试卷难度自动分析的设计与实现 8.考试成绩名次自动生成的设计与实现

线性分组码编码的分析与实现

课程设计任务书 2011—2012学年第一学期 专业:通信工程学号:080110501 姓名:李琼 课程设计名称:信息论与编码课程设计 设计题目:线性分组码编码的分析与实现 完成期限:自2011 年12 月19 日至2011 年12 月25 日共 1 周一.设计目的 1、深刻理解信道编码的基本思想与目的; 2、理解线性分组码的基本原理与编码过程; 3、提高综合运用所学理论知识独立分析和解决问题的能力; 4、使用MATLAB或其他语言进行编程。 二.设计内容 给定消息组M及生成矩阵G,编程求解其线性分组码码字。 三.设计要求 编写的函数要有通用性。 四.设计条件 计算机、MATLAB或其他语言环境 五.参考资料 [1]曹雪虹,张宗橙.信息论与编码.北京:清华大学出版社,2007. [2]王慧琴.数字图像处理.北京:北京邮电大学出版社,2007. 指导教师(签字):教研室主任(签字): 批准日期:年月日

该系统是(6,3)线性分组码的编码的实现,它可以对输入的三位的信息码进行线性分组码编码。 当接收到的六位码字中有一位发生错误时,可以纠正这一位错码;当接收到的码字有两位发生错误时,只能纠正一位错误,但同时能检测出另一位错误不能纠正。只有特定位有两位错误时,才能纠正两位错误。这样就译出正确的信息码组,整个过程是用MATLAB语言实现的。 关键词:编码;MA TLAB;纠错

1课程描述 0 2 设计原理 (1) 2.1 线性分组码的编码 (1) 2.1.1 生成矩阵 (1) 2.1.2 校验矩阵 (3) 2.2 伴随式与译码 (4) 2.2.1 码的距离及纠检错能力 (4) 2.2.2 伴随式与译码 (4) 3 设计过程 (5) 3.1 编码过程 (5) 3.2 仿真程序 (7) 3.4 结果分析 (11) 总结 (13) 致谢 (14) 参考文献 (15)

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所

matlab课程设计题目全

Matalab课后作业 学院:电气信息工程及其自动化 班级: 学号: 姓名: 完成日期: 2012年12月23日

1、 matlab 软件主要功能是什么?电气工程及其自动化专业本科生主要用到哪 些工具箱,各有什么功能? 答:(1)主要功能:工业研究与开发; 数学教学,特别是线性代数;数值分析和科学计算方面的教学与研究;电子学、控制理论和物理学等工程和科学学科方面的教学与研究; 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究;符号计算功能;优化工具;数据分析和可视化功能;“活”笔记本功能;工具箱;非线性动态系统建模和仿真功能。 (2)常用工具箱: (a ) MATLAB 主工具箱:扩充matlab 的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能。 (b )符号数学工具箱:符号表达式、符号矩阵的创建;符号可变精度求解;因式分解、展开和简化;符号代数方程求解;符号微积分;符号微分方程。 (c ) SIMULINK 仿真工具箱: Simulink 是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink 提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。 (d )信号处理工具箱:数字和模拟滤波器设计、应用及仿真;谱分析和估计;FFT 、DCT 等 变换;参数化模型。 (e )控制系统工具箱:连续系统设计和离散系统设计;状态空间和传递函数以及模型转换;时域响应(脉冲响应、阶跃响应、斜坡响应);频域响应(Bode 图、Nyquist 图);根轨迹、极点配置。 2、设y=23e t 4-sin(43t+3 ),要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。 程序如下: clc clear x=0:0.01:1.5; y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3); y1=diff(y); subplot(2,1,1) plot(x,y) subplot(2,1,2) plot(x(1:150),y1) 曲线如下图所示:

线性分组码编码的分析与实现

吉林建筑大学 电气与计算机学院 信息理论与编码课程设计报告 设计题目:线性分组码编码的分析与实现专业班级:电子信息工程121 学生姓名: 学号: 指导教师: 设计时间:2016.1.11-2016.1.22

第1章概述 1.1设计的作用、目的 《信息论与编码》是一门理论与实践密切结合的课程,课程设计是其实践性教学环节之一,同时也是对课堂所学理论知识的巩固和补充。其主要目的是加深对理论知识的理解,掌握查阅有关资料的技能,提高实践技能,培养独立分析问题、解决问题及实际应用的能力。 通过完成具体编码算法的程序设计和调试工作,提高编程能力,深刻理解信源编码、信道编译码的基本思想和目的,掌握编码的基本原理与编码过程,增强逻辑思维能力,培养和提高自学能力以及综合运用所学理论知识去分析解决实际问题的能力,逐步熟悉开展科学实践的程序和方法。 1.2设计任务及要求 线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术。 通过设计一组(7,3)线性分组码,来完成对任意序列的编码,根据生成矩阵形成监督矩阵,得到伴随式下,并根据其进行译码,同时验证工作的正确性,最基本的是要具备对输入的信息码进行编码,让它具有抗干扰的能力。 1. 理解无失真信源编码的理论基础,掌握无失真信源编码的基本方法; 2. 掌握哈夫曼编码/费诺编码方法的基本步骤及优缺点; 3. 深刻理解信道编码思想与目的,理解线性分组码的基本原理与编码过程。 4. 能够使用MATLAB或其他语言进行编程,编写的函数要有通用性。1.3设计内容 已知一个(7,3)线性分组码的校验元与信息元有如下限定关系。设码字为 (c6 ,c5 , c4 , c3 , c2 , c1 , c0)。 ? ? ? ? ? ? ? ⊕ = ⊕ = ⊕ ⊕ = ⊕ = 2 1 6 1 5 2 1 4 2 3 c c c c c c c c c c c c c 求出标准校验矩阵、Q矩阵、标准生成矩阵,完成对任意信息序列(23个 许用码字)的编码。 当接收码字分别为(0000000),(0000001),(0000010),(0000100),(0001000), (0010000),(0100000),(1000000),(0100100)时,写出其伴随式S,以表格形式写出伴随式与错误图样E的对应关系,纠错并正确译码,当有两位错码时,假定为c5位和c2位发生错误。

matlab课程论文

Matlab语言与应用课程作业MATLAB Simulink在电路暂态分析中的应用学生姓名陈志豪所在专业轮机工程(陆上)所在班级陆上1102 指导教师徐国保(博士) MATLAB Simulink在电路暂态分析中的应用(广东海洋大学轮机工程(陆上)1102 陈志豪)摘要本文通过引入举了实际的例子,简要介绍了Matlab语言在电工学电路暂态分析中的应用;并先使用普通方法分析暂态电路,然后再用Matlab Simulink来仿真暂态电路;通过Matlab Simulink 仿真技术,可以使得暂态分析可视化。关键词:MATLAB;Simulink仿真;电工学;暂态分析1,引言MATLAB是Matrix Laboratory的缩写,事实上MATLAB最初就是纯粹的矩阵计算软件。如今MATLAB既表示一种交互式的数值计算软件,又表示一门高级科学计算语言,是一套功能十分强大的工程计算及数据分析软件,其应用范围涵盖了数学、工业技术、电子科学、医疗卫生、建筑、金融、数字图像处理等各个领域。它把计算、图示 和编程集成到一个易用的交互式环境中,用大家熟悉的数学表达式来描述问题和求解方法,从而使许多用C 或FORTRAN实现起来十分复杂和费时的问题用MATLAB可以轻松地解决。许多工程师和研究人员发现,MATIAB能迅速测试其构思,综合评测系统性能,并能借此快速设计出更多的解决方案,达到更高的技术要求。[1]MATLAB因为提供了非常方便的绘图功能和强大的图形图像处理能力,以及强大的仿真技术,所以收到了广泛的欢迎。2,问题背景《电工学》是一门非电专业的技术基础课,通过本课程的学习,学生掌握电工技术的基本理论、基本定律、基本概念及基本分析方法和理论的实际应用。它的内容广泛,理 论性和系统性也很强。采用传统的教学模式,往往只能在理论上进行论述、推导、验证和证明,并借助 一些公式来阐述问题,很难给学生较直观的印象[2],教学效果不理想。若把MATLAB应用到学习中,利用其强大的数值计算功能、绘图功能、可视化的仿真功能,可以很好的弥补传统教学的不足,使一些不 容易理解的抽象、复杂的变化过程,通过MATLAB仿真比较直观的的显示出来,便于学生理解和应用。 同时,可以随机修改电路和参数,即时观察输出结果,从而加深学生对电路本质的理解,全面掌握教学 内容[3]。下面通过实例探讨MATLAB SIMULINK在电工学暂态分析中的应用。图1所示电路是一个一阶电路。已知R=20Ω,U=6V,U=10V,C=O.02F。假s0 设在t=O时开关S从闭合在a端换路闭合到b端,求t>O时,电容电压u和电 c 容电流i。c图1,一阶电路的电路图 3,理论推导根据一阶电路暂态分析的三要素法有:(1)确定初始值由换路前的电路求得u(0)=U=10V C0再由换路后的电路求得 (??)??????????????????i(0)===?0.2A C??????(2)确定稳态值有电路图易知:i(∞)=0A Cu(∞)=6V C (3)确定时间常数τ=RC =20×0.02=0.4s (4),求出待求响应????????i= i(∞)+[ i(0)? i (∞)]e =?0.2 e ????.??CCCC????????u= u(∞)+[ u(0) ?uC(∞)] e =6+4e ????.??CCC运用Matlab 编程画出ic和u波形图; C 其代码如下所示:subplot(1,2,1); fplot(‘6+4*exp(-x/0.4)’,[0,6]); subplot(1,2,2); fplot(‘-0.2*exp(-x/0.4)’,[0,6]); 其运行结果图2所示 图2,电容电压u和电容电流ic波形图C4,应用MATLAB进行仿真图1电路对应的仿

基于MATLAB的卷积码的分析与应用

基于MATLAB的卷积码的分析与应用

毕业设计(论文)任务书

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

目录 毕业设计(论文)任务书 ............................................................................................I 摘要........................................................................................................................... II Abstract......................................................................................... 错误!未定义书签。第1章绪论 . (1) 1.1课题研究的背景和来源 (1) 1.2主要内容 (2) 第2章相关理论介绍 (3) 2.1信道编码 (3) 2.1.1 信道编码的分类 (3) 2.1.2 编码效率 (3) 2.2线性分组码 (3) 2.3循环码 (5) 2.4卷积码 (6) 2.4.1 卷积码简介 (7) 2.4.2 卷积码的编码 (7) 2.4.3 卷积码的解码 (13) 第3章MATLAB应用 (21) 3.1数和算术的表示方法 (21) 3.2向量与矩阵运算 (21) 3.2.1 通过语句和函数产生 (21) 3.2.2 矩阵操作 (22) 3.3矩阵的基本运算 (22) 3.3.1 矩阵乘法 (22) 3.3.2 矩阵除法 (23) 3.4MATLAB编程 (23) 3.4.1 关系运算 (23) 3.4.2 控制流 (25) 第4章卷积码的设计与仿真 (27) 4.1TD-SCDMA系统 (27) 4.1.1 系统简介 (27) 4.1.2 仿真通信系统模型 (27)

基于matlab线性分组码实验设计

一、 设计题目 线性分组码编译码实验 二、 实验目的: 1. 掌握线性分组码的编码原理、编码步骤和译码方法 2. 熟悉matlab 软件的基本操作,学会用matlab 软件进行线性分组码的编 码和译码 三、 实验主要内容及要求: 设计(15,11)或(255,247)线性分组码,利用随机生成的二进制序 列及BPSK 调制方式,比较使用信道编码与未使用信道编码的误比特率曲线 四、 实验设备及软件: PC 机一台、Matlab 软件 五、 设计方案 ① (15,11)线性分 ② ① ② 该实验系统框图如上图所示,其中信源编码在本实验不做讨论,编号①采用线性分组码编码和译码,编号②为不采用信道编译码,通过这两种方法的对比,得出误码率曲线。 1. 线性分组码编码 本实验采用的是(15,11)的线性分组码,线性分组码的编码由监督矩阵 信源编码 信道编码 BPSK 调制 信道传输 噪声 解调 信道译码 信源译码 统计误码率

和生成矩阵实现,监督矩阵H为(4×11)的矩阵,由监督方程和(4×4)的单位矩阵构成,生成矩阵G为(11×15)的矩阵,由(11×11)的单位矩阵和监督矩阵的转置矩阵构成。具体实现方法如下: ①将要编码的序列先整形,整为11列 ②如果序列不能被11整除在后边补0使其能被11整除 ③将整形后的序列与生成矩阵G相乘即得到编码后的码字 其实现代码如下: function [n,C]=xxbm(n) a=randint(1,n); %生成01随机序列 disp('编码序列:'); disp(a); subplot(3,2,1); stairs(a); axis([1 length(a) -0.5 1.5]) title('编码序列'); %判断生成的随机序列个数是否是11的整数倍 if length(a)/11==fix(length(a)/11) %随机序列个数是11的整数倍,直接编码 b=reshape(a,11,(length(a)/11)); M=b'; F=eye(11); S=[0 0 1 1;0 1 0 1;0 1 1 0;0 1 1 1;1 0 0 1;1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1]; K=eye(4); G=[F,S]; H=[S',K]; C=rem(M*G,2); disp('生成矩阵G:');

matlab课程论文要求

matlab课程论文要求 一、时间安排 (一)2016年X月X日之前必须提交纸质版(时间待定,另行通知,尽早完成,以免影响其他科目的复习考试)。 (二)电子版统一写清楚学号(学号在前)+姓名+专业发送给学委。打包文件夹发送给我,不接受单独发给我的。 二、选题 (一)选题要紧密结合本学科专业的教学科研和MATLAB,符合专业培养目标的要求。 (二)论文一般为一人一题,严格控制与往年的重复率。 三、成绩评定 平时成绩(0.3)+课程论文(0.7)=最终成绩。 四、论文写作规范要求 (一)封面:封面要使用统一格式。 (二)目录:“目录”两字黑体小二号、居中,“目录”两字间空四格、与正文空一行。各部分名为宋体小四号字,各小部分名间有缩进。 (三)题目:题目要对论文的内容有高度的概括性,简明、易读,字数应在20个字以内,论文题目用黑体三号字。 (四)署名:论文署名的顺序为:专业学号学生姓名指导老师姓名,用宋体小四号字。可用以下表示: 专业:XXXXX 学号:XXXXX 学生姓名:XXXXX 指导老师姓名:XXXX (五)内容摘要:中文内容摘应简要说明所研究的内容、目的、实验方法、主要成果和特色,一般为200-300字,用宋体小四号字,其中“内容摘要”四个字加粗。 (六)关键词:一般为3-6个,用分号隔开,用宋体小四号字,其中“关键词”三个字加粗。 (七)正文:正文要符合一般学术论文的写作规范,统一用宋体小四号字,行距为1.5倍。字数一般要求为不得少于5000字。

内容要理论联系实际,涉及到他人的观点、统计数据或计算公式的要注明出处(引注),涉及计算内容的数据要求准确。标题序号从大到小的顺序为:“1”“1.1”“1.1.1”……。 (八)注释:论文中所引用文献按学术论文规范注明出处,注序要与文中提及的序号一致。注释方法参见参考文献顺序。 (九)参考文献:论文后要标注参考文献和附录,参考文献按照以下格式排列: 1.专著、论文集、学位论文、报告 [序号]主要责任者.文献题名[文献类型标识].出版地:出版者,出版年.起止页码。 [1]刘国钧,陈绍业,王凤.图书馆目录[M].北京:高等教育出版社,1957.10-12. [2]辛希孟.信息技术与信息服务国际研讨会论文集:A集[C].北京:中国社会科学出版社,1994.12-13. [3] 查正军.《基于机器学习方法的视觉信息标注研究》.[D].北京.中国科技大学.2010年.32-35 2.期刊文章 [序号]主要责任者.文献题名[J].刊名,年卷(期):起止页码. [1]何龄修.读顾城《南明史》[J].中国史研究,1998(3):12-13. [2]金显贸,王昌长,王忠东等.一种用于在线检测局部放电的数字滤波技术 [J].清华大学学报(自然科学版),1993(4):12-13. 3.电子文献 [序号]主要责任者.电子文献题名[电子文献及载体类型标识] .电子文献的出处或可获得地址,发表或更新日期/引用日期(任选). [1]王明亮.关于中国学术期刊标准化数据库系统工程的进展[EB/OL]. https://www.doczj.com/doc/b8697935.html,/pub/wml.txt/980810-2.html,1998-08-16/1998-10-04. [2]万锦坤.中国大学学报论文文摘(1983-1993).英文版[DB/CD].北京:中国大百科全书出版社,1996.

相关主题
文本预览
相关文档 最新文档