基于MATLAB的信道编码分析

基于MATLAB的信道编码分析
基于MATLAB的信道编码分析

题目:基于MATLAB的通信系统仿真

———信道编码对通信系统性能的影响

专业:通信工程

姓名:崔校通

学号:201300484316

日期: 2016.12.22

目录

一、引言 (2)

二、信道编码理论 (2)

2.1、信道编码的目的 (2)

2.2、信道编码的实质 (3)

2.3、信道编码公式 (3)

三、线性分组码的编译码原理 (3)

3.1、线性分组码的基本概念 (3)

3.2、生成矩阵和校验矩阵 (4)

四、MATLAB仿真 (5)

4.1仿真 (5)

4.1.1原理说明 (5)

4.1.2各子函数说明 (5)

4.2仿真源程序 (5)

4.2.1信道编码 (5)

4.2.2信道解码 (6)

4.2.3交织 (6)

4.2.4解交织 (7)

4.2.5信道衰落 (7)

六程序及仿真图 (8)

1、file1:信道编码对通信系统性能的影响,有无信道编码的影响 (8)

2、file2:在周期性深衰落的信道条件下,交织对通信系统性能的影响 (10)

3、file3:在交织条件下,不同时长的周期性深衰落对系统性能影响的比较

(13)

基于MATLAB的通信系统仿真

———信道编码对通信系统性能的影响摘要:简述信道编码理论,详细说明分组码的编译原理、实现方法及检错纠错能力,用MATLAB仿真有无信道编码条件下对通信系统性能的影响及信道编码在不同信道下对通信系统性能的影响,如AWGN信道和深衰落信道。

关键词:信道编码、分组码、MATLAB仿真、性能

一、引言

提高信息传输的有效性和可靠性始终是通信技术所追求的目标,而信道编码能够显著的提升信息传输的可靠性。1948年,信息论的奠基人C.E.Shannon在他的开创性论文“通信的数学理论”中,提出了著名的有噪信道编码定理.他指出:对任何信道,只要信息传输速率R不大于信道容量C, 就一定存在这样的编码方法:在采用最大似然译码时,其误码率可以任意小.该定理在理论上给出了对给定信道通过编码所能达到的编码增益的上限,并指出了为达到理论极限应采用的译码方法.在信道编码定理中,香农提出了实现最佳编码的三个基本条件:(1 )采用随机编译码方式; (2 )编码长度L→∞ , 即分组的码组长度无限; (3)译码采用最佳的最大似然译码算法。

二、信道编码理论

2.1、信道编码的目的

在数字通信系统中由于信道内存在加性噪声及信道传输特性不理想等容易造成码间串扰同时多用户干扰、多径传播和功率限制等也导致错误译码。为了确保系统的误比特率指标通常采用信道编码。信道编码是为了保证信息传输的可靠性、提高传输质量而设计的一种编码。它是在信息码中增加一定数量的多余码元,使码字具有一定的抗干扰能力。

2.2、信道编码的实质

信道编码的实质就是在信息码中增加一定数量的多余码元(称为监督码元),使它们满足一定的约束关系,这样由信息码元和监督码元共同组成一个由信道传输的码字。举例而言,欲传输k 位信息,经过编码得到长为n(n>k)的码字,则增加了 n - k = r 位多余码元,我们定义 R = k / n 为编码效率。【2】

2.3、 信道编码公式

令信息速率为f b ,经过编码以后的速率为f t ,定义:R =f b /f t 为编码率。则对于任何一个信道,总存在一个截止速率R 0,只要R

三、线性分组码的编译码原理

3.1、 线性分组码的基本概念

一个[n ,k ]线性分组码, 是把信息划成k 个码元为一段(称为信息组), 通过编码器变成长为n 个 码元的一组, 作为[n , k ]线性分组码的一个码字。 若每位码元的取值有q 种(q 为素数幂), 则共有q k 个码字。 n 长的数组共有q n 组, 在二进制情况下, 有2n 个数组。 显然, q n 个n 维数组(n 重)组成一个GF(q )上的n 维线性空间。 如果q k (或2k )个码字集合构成了一个k 维线性子空间, 则称它是一个[n ,k ]线性分组码。即将k 维k 重信息空间的元素线性映射到n 维n 重矢量空间(接收矢量/收码) 的k 维n 重子空间(码空间)。如下图为[7,3]码

)1(log 10

0/20N E R b e R -+-=121

ln 1)1(00

0-=-R b R N E

3.2、生成矩阵和校验矩阵

生成矩阵:

[]????

?????

???==0110001101001011001001111000 Q G k I

G 称为生成矩阵,因为可以用它产生整个码组A ,即有

[][]G

34560123456a a a a a a a a a a a A ==

生成矩阵的性质:具有[I k Q ]形式的生成矩阵称为典型生成矩阵。由典型生成矩阵得出的码组A 中,信息位的位置不变,监督位附加于其后。这种形式的码组称为系统码。 矩阵G 的各行也必须是线性无关的。如果已有k 个线性无关的码组,则可以将其用来作为生成矩阵G ,并由它生成其余码组。【3】 监督矩阵:

[]r PI H =??

???

?????=001101101011011001110

监督矩阵可用来校验和纠错。

四、MATLAB仿真

4.1仿真

4.1.1原理说明

采用模块化编程,力求把每个功能独立成各个模块,让程序更清晰。首先介绍各个子程序及其实现的基本功能。此次还采用了交织与解交织,其主要作用是,一个实际上的突发信道,经过发送端交织和接收端解交织的信息处理后,就完全等效成一个随机独立差错信道,信道交织编码实际上就是一类信道改造技术,它将一个突发信道改造成一个随机独立差错信道。它本身并不具备信道编码检、纠错功能,起到信号预处理的作用

4.1.2各子函数说明

运行环境为Matlab7.0版本

通信过程的每个模块写成子程序函数:

Channelcoding 为信道编码函数

Channeldecoding 为信道解码纠错子函数

Interwaving 为交织子函数

Deinterwaving 为解交织子函数

addfade为向信道加入衰落参数的子函数

awgn 为库函数,向信源加高斯白噪声

pskmod 为库函数,用于信号调制,输出为复数

pskdemod 为库函数,用于信号解调

4.2仿真源程序

4.2.1信道编码

%信道编码子函数,sym为编码码流,G为生成矩阵,k为编码方式的长度,如(7,4)码的4

function bitcoded=channelcoding(sym,G,k)

A=vec2mat(sym,k);

U=A*G;

U=mod(U,2);

bitcoded=reshape(U',1,[]);

4.2.2信道解码

function bitdecoded=channeldecoding(recode,Etab,Smatrix,H,n,k) % 前向纠错函数,实现纠错功能

% bidecoded为纠错后返回的比特流

% recode为输入的比特流

% E为错误图样表,S为对应的伴随式表

% H为监督矩阵,n,k为码的类型,如(7,4)码,n=7,k=4 row=length(recode)/n; %行数

E=zeros(row,n); %错误图样

RM=zeros(row,n); %纠错之后的矩阵

R=vec2mat(recode,n);

S=R*H'; %伴随矩阵

S=mod(S,2);

for i=1:row

for j=1:2^(n-k) %查表纠错

if(S(i,:)==Smatrix(j,:))

E(i,:)=Etab(j,:);

RM(i,:)=R(i,:)+E(i,:);

RM(i,:)=mod(RM(i,:),2);

break;

end

end

end

bitdecoded=reshape(RM',1,[]); %转化为比特流

4.2.3交织

function retbit=interweaving(bitstream,row,col)

%功能:实现对输入比特的交积

% retbit为交积后返回的比特流向量

% bitstream 为需要交积的比特流向量

% row 和col为交积器的行和列,

% 通过改变col就可以改变交积深度

retbit=zeros(1,length(bitstream));

bitarr=vec2mat(bitstream,row);

bitarr=bitarr';

for i=1:length(bitstream)/(row*col)

temp=bitarr(:,((i-1)*col+1):i*col);

retbit(1,((i-1)*(row*col)+1):(i*(row*col)))=reshape(temp',1,[]);

end

4.2.4解交织

function retbits=deinterweaving(bitstream,row,col)

%功能:实现对输入比特的解交积

%rebits为解交积后返回的比特流

% bitstream输入的比特流

%row 和col为交积器的行和列,通过改变col就可以改变交积器的长度retbits=zeros(1,length(bitstream));

bitarr=vec2mat(bitstream,col);

for i=1:length(bitstream)/(row*col)

temp=bitarr((i-1)*row+1:i*row,:);

retbits(1,(i-1)*row*col+1:i*row*col)=reshape(temp,1,[]);

end

4.2.5信道衰落

function code=addfade(modcode,Tf,isperiod,isfade)

%功能:向传输序列modcode叠加衰落性信道的衰落参数k(t)

%code为加入衰减参数之后返回的序列。

% modcode为调制之后的序列

% Tf 为衰落时间,以ms为单位,小于10ms,

% Tf=1,表示衰落1ms

% isperiod 周期衰落和一次性衰落的标志,

% isperiod=1表示周期性衰落,0表示一次性衰落

% isfade表示是否存在衰落,1存在,0不存在衰落直接返回modcode

if(isfade==1)

if(isperiod==1) %周期性衰落

for k=1:length(modcode)/(100*Tf)

a=(k-1)*100*Tf+31;

b=(k-1)*100*Tf+30+10*Tf;

modcode(1,a:b)=0.1*modcode(1,a:b);

end

else %一次衰落

a=31;

b=30+10*Tf;

modcode(1,a:b)=0.1*modcode(1,a:b);

end

code=modcode;

else

code=modcode;

end

六程序及仿真图

1、file1:信道编码对通信系统性能的影响,有无信道编码的影响

执行时间:Elapsed time is 355.023518 seconds.

tic

clc

%功能:有无信道编码性能比较

M=2; %进制

b=log2(M) ; %每符号比特数

n=128*10000 ; %符号数

G=[1 1 1 1 0 0 0;1 0 1 0 1 0 0;0 1 1 0 0 1 0;1 1 0 0 0 0 1] ; %生成矩阵H=[1 0 0 1 1 0 1;0 1 0 1 0 1 1;0 0 1 1 1 1 0] ; %监督矩阵

Etab= [0 0 0 0 0 0 0;0 0 0 0 0 0 1; %错误图样

0 0 0 0 0 1 0;0 0 0 0 1 0 0;

0 0 0 1 0 0 0;0 0 1 0 0 0 0;

0 1 0 0 0 0 0;1 0 0 0 0 0 0];

Smatrix=Etab*H'; %对应的伴随式sym=randint(n,1,M);

sym=de2bi(sym,'left-msb'); %模拟信源编码

bitcoded=channelcoding(sym,G,4); %信道编码,(7,4)码modbit=pskmod(bitcoded,M);

%在传输序列modbit加入AWGN噪声

S nr=0:0.2:15; %噪声为0到15d

L=length(snr)

ser=zeros(1,L);

ser2=zeros(1,L);

for k=1:L

y=awgn(modbit,10*log10(b)+snr(k),'measured');

zsym=pskdemod(y,M); %复数解调

zbit=de2bi(zsym,'left-msb');

recode=reshape(zbit',1,[]);

Rstream=recode;

err=(Rstream~=bitcoded);

errnum=sum(err);

ser(k)=log10(errnum/length(bitcoded));

%纠错

bitdecoded=channeldecoding(Rstream,Etab,Smatrix,H,7,4);

err=(bitdecoded~=bitcoded);

errbits=sum(err);

ser2(k)=log10(errbits/(length(bitcoded)));

end

plot(snr,ser,'b-*')

hold on

plot(snr,ser2,'r-o')

grid on

legend('没有信道编码','信道编码');

xlabel('Eb/No(dB)');

ylabel('SER');

title('2PSK有无信道编码性能比较');

toc %

Elapsed time is 278.288819 seconds.程序运行时间

结论:由上图在较高信噪比的时候编码增益很明显大大提高了误码性能,但是在低信噪被的时候编码增益较小甚至可能是负值,则是因为编码后信息比特能量扩散到多个编码比特上,每个编码比特能量有所降低,如果信噪比低的话,编码冗余带来的性能增益可能弥补不了编码比特的能量的降低,因此信道中信噪比的波动会显著降低编码性能

2、file2:在周期性深衰落的信道条件下,交织对通信系统性能的影响

tic

clc

%功能:有无信道编码性能比较

M=2; %进制

b=log2(M) ; %每符号比特数

n=128*10000 ; %符号数

interrow=8;intercol=10;%交积矩阵的行和列

G=[1 1 1 1 0 0 0;1 0 1 0 1 0 0;0 1 1 0 0 1 0;1 1 0 0 0 0 1] ; %生成矩阵H=[1 0 0 1 1 0 1;0 1 0 1 0 1 1;0 0 1 1 1 1 0] ; %监督矩阵

Etab= [0 0 0 0 0 0 0;0 0 0 0 0 0 1; %错误图样

0 0 0 0 0 1 0;0 0 0 0 1 0 0;

0 0 0 1 0 0 0;0 0 1 0 0 0 0;

0 1 0 0 0 0 0;1 0 0 0 0 0 0];

Smatrix=Etab*H'; %对应的伴随式sym=randint(n,1,M);

sym=de2bi(sym,'left-msb'); %模拟信源编码

bitcoded=channelcoding(sym,G,4); %信道编码,(7,4)码interv=interweaving(bitcoded,interrow,intercol); %交积向量modbit=pskmod(bitcoded,M);

modbit2=pskmod(interv,M);

%向传输序列modcode叠加衰落性信道的衰落参数k(t) modbitfade=addfade(modbit,1,1,1);

modbitfade2=addfade(modbit2,1,1,1);%1ms周期性衰落modbitfade3=addfade(modbit2,2,1,1);%衰落时长2ms

%在传输序列modbit加入AWGN噪声

snr=0:0.2:25; %噪声为0到25d

L=length(snr)

ser=zeros(1,L);

ser2=zeros(1,L);

for k=1:L

y=awgn(modbitfade,10*log10(b)+snr(k),'measured');

y2=awgn(modbitfade2,10*log10(b)+snr(k),'measured');

y3=awgn(modbitfade3,10*log10(b)+snr(k),'measured');

zsym=pskdemod(y,M); %复数解调

zsym2=pskdemod(y2,M);

zsym3=pskdemod(y3,M);

zbit=de2bi(zsym,'left-msb');

zbit2=de2bi(zsym2,'left-msb');

zbit3=de2bi(zsym3,'left-msb');

recode=reshape(zbit',1,[]);

recode2=reshape(zbit2',1,[]);

recode3=reshape(zbit3',1,[]);

deinterv=deinterweaving(recode2,interrow,intercol);%解交积向量

deinterv3=deinterweaving(recode3,interrow,intercol);

Rstream=recode;

Rstream2=deinterv;

Rstream3=deinterv3;

%纠错

bitdecoded=channeldecoding(Rstream,Etab,Smatrix,H,7,4);

bitdecoded2=channeldecoding(Rstream2,Etab,Smatrix,H,7,4);

bitdecoded3=channeldecoding(Rstream3,Etab,Smatrix,H,7,4);

err=(bitdecoded~=bitcoded);

errbits=sum(err);

ser(k)=log10(errbits/(length(bitcoded)));

err2=(bitdecoded2~=bitcoded);

errbits2=sum(err2);

ser2(k)=log10(errbits2/(length(bitcoded)));

err3=(bitdecoded3~=bitcoded);

errbits3=sum(err3);

ser3(k)=log10(errbits3/(length(bitcoded)));

end

plot(snr,ser,'b-*')

hold on

plot(snr,ser2,'r-o')

hold on

plot(snr,ser3,'k-+')

grid on

legend('有信道编码没有交织1ms衰落','有信道编码有交织1ms衰落','有信道编码有交织2ms衰落');

xlabel('Eb/No(dB)');

ylabel('SER');

title('2PSK衰落信道有无交织性能比较');

toc %Elapsed time is 1504.524053 seconds.%该程序运行时间

结论:衰落信道使系统的误码性能大大的降低,尤其是时延扩展远大于码元宽度的衰落,如瑞利衰落信道,此时信道属于慢深衰落,容易使得传输的信息出现连续的错误,当出现的错误大于信道编码的纠错能力时,就无法产生编码增益,甚至可能是性能恶化。此时必须使用交织把连续的错误打破分到不同的编解码分组中,尽量使没组只有少量甚至一个错误,此时编码增益将会大大提高,就如上图所示。

3、file3:在交织条件下,不同时长的周期性深衰落对系统性能影响的比较

图表在下一页,程序由file2中修改参数即可,故在此不贴源程序。

结论:程序只需在file2的基础上修改加衰落函数addfade的参数即可改变衰落时长:

File2中信道是1ms的周期性衰落,信息传输速率是10kbps,所以会出现周期性的连续10个比特出现深衰落,此时交织深度为10,可以解决深衰落带来的影响。但在file3中信道变为2ms的周期性衰落,交织深度依旧为10,此时每个分组中可能有两个以上的错误,超出了汉明码的纠错能力,误码性能将会恶化。此时的

SNR-SER曲线如下图中间那条所示,性能介于没有交织的1ms深衰落和交织的1ms深衰落之间。如果要改善系统的误码性能,就只能增加交织深度,知道满足信道编码的纠错能力,但是交织深度加深的话,会加大编译码的时延,不适合实时通信,所以应该根据实际通信系统的需求在两者之间取一个平衡。

参考文献:

【1】傅祖芸, 赵建中.信息论与编码.电子工业出版社,2006

【2】田宝玉,信息论基础,人民邮电出版社

【3】Andrea Goldsmith,无线通信,人民邮电出版社

信道编码实验指导书

HDB3编解码实验 一、实验目的 1、熟悉HDB3编解码的原理; 2、观察HBD3码编码和解码的结果,结合原理进一步理解编解码的过程; 3、学习通过软件编程实现HDB3编解码实验 二、实验电路及工作原理 1、HDB3码简介 CCITT建议,HDB3码的全称是三阶高密度双极性码,为PCM系统欧洲系列时分多路复接一次群2.048Mbit/s,二次群8.488Mbit/s,三次群34.368Mbit/s的线路接口型。它将信息符号‘1’变换成“+1”或“-1”的线路码,将连“0”数限制为小于等于3,当信息符号出现4个连“0”时用特定码取代。用于HDB3码将连“0”减少到至多3个,所以它的功率谱与信源统计无关,这对于接收端定时提取十分有利。此项实验问软件编程实现。 数字基带信号的传输是数字通信系统的重要组成部分之一。在数字通信中,有些场合可不经过载波调制和解调过程,而对基带信号进行直接传输。为使基带信号能适合在基带信道中传输,通常要经过基带信号变化,这种变化过程事实上就是编码过程。于是,出现了各种各样常用码型。不同码型有不同的特点和不同的用途。 作为传输用的基带信号归纳起来有如下要求:1 希望将原始信息符号编制成适合与传输用的码型;2 对所选码型的电波形,希望它适宜在信道中传输。可进行基带传输的码型较多。 AMI码 AMI码称为传号交替反转码。其编码规则为代码中的0仍为传输码0,而把代码中1交替地变化为传输码的+1-1+1-1,、、、。举例如下。 消息代码:0 1 1 1 0 0 1 0 、、、 AMI 码:0 +1 -1 +1 0 0 -1 0 、、、或 0 -1 +1 -1 0 0 +1 0 、、、 AMI码的特点: 无直流成分且低频成分很小,因而在信道传输中不易造成信号失真。 编码电路简单,便于观察误码状况。 由于它可能出现长的连0串,因而不利于接受端的定时信号的提取。 HDB3码 这种码型在数字通信中用得很多,HDB3码是AMI码的改进型,称为三阶高密度双极性码。它克服了AMI码的长连0传现象。 2、HDB3编码的原理 先将二进制序列中的“0”码变成“0”而把序列的“1”交替的变换为+1、-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的LDPC信道编码的研究及实现

本科毕业设计任务书 题目:基于MATLAB的LDPC信道编码的研究及实现

一、毕业设计内容及要求 1、课题说明: 随着无线通信技术的发展和各种传输方式对可靠性要求的不断提高,信道编码作为抗干扰技术的重要手段之一,在数字通信技术领域和数字传输领域显示出越来越重要的作用。近年来,基于中继的协作通信技术通过有效利用空间分集,显著改善通信系统的性能。协作通信技术还可以利用纠错码以进一步提高系统性能。Turbo码和LDPC码作为一种能够逼近香农限的优异差错编码技术,在现代通信中起着举足轻重的作用。LDPC码的种种优点使其成为下一代移动通信(4G)的强有力竞争者,因此LDPC码已经成为信道编码领域的研究热点之一。 本选题的基本任务:在了解LDPC码字的重要作用的基础之上,通过对LDPC码的编译码算法的深入研究,利用MATLAB对LDPC码进行模拟仿真,建立仿真分析模型,分析编码过程中码长、列重、围长等参数的影响,译码时采用不同的译码算法并做出比较。 2、毕业设计的主要内容: (1)了解信道编码在通信系统中的重要作用; (2)掌握LDPC信道编码工作的基本原理; (3)熟悉并掌握LDPC码的编译码算法; (4)利用MATLAB建立LDPC信道编码的仿真模型; (5)对系统进行优化并比较分析码长、列重等参数的影响; (6)比较分析不同的译码算法的影响。 3、毕业设计的基本要求: (1)了解课题的相关知识; (2)调研,比较国内外相关方面的课题; (3)设计方案要进行技术分析,以选择较为合理的方案; (4)实验要求有实验方法和实验数据以及数据分析; (5)设计说明书应包括与有关的叙述说明和计算,内容完整、计算正确; (6)书写工整。计算公式和引用数据要正确,并说明其来源; (7)设计说明书应包括中英文摘要、目录、前言、正文、小结、参考文献; (8)设计说明书图纸应能较好地表达意图,图面布局合理,符合国家制图标准和有关规范。 4、毕业设计工作量: (1)写开题报告,要求不少于2000字;

《移动通信》实验:信道编解码

《移动通信》实验:信道编解码 班级:学号:姓名: 一、实验名称:信道编解码 时间:2018.05.09、2018.05.11 地点:E-513、E-412 指导老师:胡倩彭祯 二、实验目的 通过本次试验,了解信道编码的基本原理,加深对奇偶校验码、汉明码等算法的理解。 三、相关原理 奇偶监督码分为技术监督码和偶数监督码两种,两者原理相同,本实验采用偶监督码。在偶数监督码中,无论信息位多少,监督位只有1位,它使码组中“1”的数目为偶数。在接收端,求“模2和”,若结果为1,则存在错码。 汉明码有3位监督码 S1=a6⊕a5⊕a4⊕a2 S2= a6⊕a5⊕a3⊕a1 S3= a6⊕a4⊕a3⊕a0 在发送端编码是,信息位a6、a5、a4的值取决于输入信号,因此他们是随机的。 接收端收到每个码组后,先计算出S1、S2、S3,再按照表判断错码情况。 四、源程序及运行结果 偶监督码: #include #include #include #include

#include using namespace std; string a[100]={"0"}; int k=0; int num(string m[]) { int j=0; for(int i=0;i<100;i++) { if(a[i]=="1") j++; } return j; } void Error(string m[]) { srand(time(0)); int x; x=rand()%k; if(x!=k) { if(m[x]=="1") m[x]="0"; else m[x]="1"; } Sleep(1000);

数字通信系统matlab仿真

课程设计报告 题目:基于MATLAB的通信系统仿真 ———信道编码对通信系统性能的影响 专业:通信工程 姓名:XXX 学号:0730xxxx

基于MATLAB 的通信系统仿真 ———信道编码对通信系统性能的影响 摘要:简述信道编码理论,详细说明分组码的编译原理、实现方法及检错纠错能力,用MATLAB 仿真有无信道编码条件下对通信系统性能的影响及信道编码在不同信道下对通信系统性能的影响,如AWGN 信道和深衰落信道。 关键词:信道编码、分组码、MATLAB 仿真、性能 一、引言 提高信息传输的有效性和可靠性始终是通信技术所追求的目标,而信道编码能够显著的提升信息传输的可靠性。1948年,信息论的奠基人C.E.Shannon 在他的开创性论文“通信的数学理论”中,提出了著名的有噪信道编码定理.他指出:对任何信道,只要信息传输速率R 不大于信道容量C, 就一定存在这样的编码方法:在采用最大似然译码时,其误码率可以任意小.该定理在理论上给出了对给定信道通过编码所能达到的编码增益的上限,并指出了为达到理论极限应采用的译码方法.在信道编码定理中,香农提出了实现最佳编码的三个基本条件 :(1 )采用随机编译码方式 ; (2 )编码长度L→∞ , 即分组的码组长度无限 ; (3)译码采用最佳的最大似然译码算法。【1】 二、信道编码理论 1、信道编码的目的 在数字通信系统中由于信道内存在加性噪声及信道传输特性不理想等容易造成码间串扰同时多用户干扰、多径传播和功率限制等也导致错误译码。为了确保系统的误比特率指标通常采用信道编码。信道编码是为了保证信息传输的可靠性、提高传输质量而设计的一种编码。它是在信息码中增加一定数量的多余码元,使码字具有一定的抗干扰能力。 2、信道编码的实质 信道编码的实质就是在信息码中增加一定数量的多余码元(称为监督码元),使它们满足一定的约束关系,这样由信息码元和监督码元共同组成一个由信道传输的码字。举例而言,欲传输k 位信息,经过编码得到长为n(n>k)的码字,则增加了 n - k = r 位多余码元,我们定义 R = k / n 为编码效率。【2】 3、 信道编码公式 令信息速率为f b ,经过编码以后的速率为f t ,定义:R =f b /f t 为编码率。则对于任何一个信道,总存在一个截止速率R 0,只要R

信道编码实验

实验五信道编码实验 实验目的:1、学习并理解信道编码的根本目的、技术要求与基本目标等基本概念; 2、学习并理解信道编码的根本目的、技术要求与基本目标等基本概念;掌握线性分组码的物理涵义、数学基础及检纠错原理;掌握循环码的码型特点、检纠错能力、编译码方法及基本技术; 3、学会使用MATLAB工具检纠错模拟与分析。 实验仪器:MATLAB软件,PC机 实验原理(概括性文字叙述、主要公式、电路图等) 如果说信源编码的目的是为了提高信号传输的有效性的话,那么信道编码则是为了提高通信的可靠性而采取的一种编码策略。信道编码的核心基础是纠错编码理论,是在信息码后面附加上一些监督码,以便在接收端发现和纠正误码。 数字通信系统简化模型 编码信道:包括信道编码器、实际信道、信道译码器。 该模型是研究信道纠错编码和译码的模型,集中研究通信可靠性。 通信可靠性问题:消息通过信道传输的时候,如何选择编码方案来减少差错。首先与信道统计特性有关,其次与编码方法、译码方法也有关系。 信道是信号从信源传送到信宿的通路。 由于信道有干扰,使得传送的数据流(码流)中产生误码。 误码的处理技术有纠错、交织、线性内插等。 信道编码的目的是提高信息传输或通信的可靠性。

信道编码的任务是降低误码率,使系统具有一定的纠错能力和抗干扰能力,提高数据传输效率。 信道编码的过程是在源数据码流中加插一些码元,达到在接收端进行检错和纠错的目的。 在带宽固定的信道中,总的传送码率是固定的,由于信道编码增加了数据量,其结果只能是以降低传送有用信息码率为代价了。 降低误码率:在传输的信息码之中按一定规律产生一些附加数字,经信道传输,在传输中若码字出现错误,收端能利用编码规律发现码的内在相关性受到破坏,从而按一定的译码规则自动纠正或发现错误,降低误码率。 实验内容及数据处理: 利用MATLAB仿真二进制码在离散信道无记忆信道中传输产生的误码率,设传送二进制码“0”的概率P0=0.6,"1"的概率p1=1-p0。利用单极性基带信号传输,从判决输入端观测,用电平s0=0传输“0”,用电平s1=A传输“1”,信道中的噪声是加性的零均值高斯噪声,方差为柯西的平方,求在最佳门限电平判决下传输误码率Pe与A2/柯西平方下的曲线,每一个给定噪声方差下仿真传输序列长度为105bit,仿真程序代码如下: clear; s0=0;s1=5; p0=0.6;%信源概率 p1=1-p0; A2_over_sigma2_dB=-5:0.5:20;%仿真信噪比范围 A2_over_sigma2=10.^(A2_over_sigma2_dB./10); sigma2=s1^2./A2_over_sigma2; N=1e5; for k=1:length(sigma2) X=(randn(1,N)>p0); n=sqrt(sigma2(k)).*randn(1,N); xi=s1.*X+n; C_opt=(s0+s1)/2+sigma2(k)/(s1-s0)*log(p0./p1); y=(xi>C_opt); err(k)=(sum(X-y~=0))./N; end semilogy(A2_over_sigma2_dB,err,'o');hold on; for k=1:length(sigma2) C_opt=(s0+s1)./2+sigma2(k)./(s1-s0).*log(p0./p1); pe0=0.5-0.5*erf((C_opt-s0)/(sqrt(2*sigma2(k)))); pe1=0.5+0.5*erf((C_opt-s1)/(sqrt(2*sigma2(k))));

基于matlab的turbo码编码的结题报告 彭锦程

基于matlab的turbo码编码的结题报告 姓名:彭锦程 学号:10021230 同组人:李世斌 学号:10021229 指导老师:徐小平

一:引言 自从香农的信道编码定理提出之后,人们对设计出好的信道码的探索与研究就从未间断。1993 年,在国际通信会议上法国学者C Berrou 等人首次提出了Turbo 码。在加性高斯白噪声的环境下,采用编码效率R=1/2、交织长度为65536 的Turbo 码,经过18 次迭代译码后,在Eb/N0=0.7dB 时,其误码率已低于10-5,与香农极限只相差0.7dB。Turbo 码以其优异的性能引起各国研究学者的强烈关注,成为研究的热点课题。在第3 代移动通信系统的建议中,无论是UMTS(WCDMA)还是IS2000(CDMA2000),都已将Turbo 码作为高速率、高质量数据传输中信道编码方案的标准。虽然至今Turbo 码在数学上的机理还没有定论,但是,Turbo 码的优越性能及其迭代译码算法的思想,很大程度上已经被人们所理解。 Shannon 编码定理指出:如果采用足够长的随机编码,就能逼近Shannon 信道容量。而Turbo 码以其接近Shannon 理论极限的译码性能,已被采纳为3G移动通信系统的信道编码标准之一。Turbo 码巧妙地将两个简单分量码通过伪随机交织器并行级联来构造具有伪随机特性的长码,并通过在两个软输入/ 软输出(SISO) 译码器之间进行多次迭代实现了伪随机译码。采用迭代译码的方法来提高通信系统的译码性能是Turbo 码的最大特点。 Turbo 码的编码器、译码器结构繁琐,是一种非常复杂的信道编码方案,这使得对Turbo 码的理论分析十分困难,且只能对运算复杂度作宏观分析,对Turbo码的具体实现并没有一个清楚的度量。因此,使用计算机对Turbo 码进行仿真分析是十分必要的。考虑到Turbo 码系统编译码的数据处理量很大,利用生成矩阵对信息序列进行编码、译码时的迭代计算等等,都涉及了矩阵运算,故采用Matlab/ Simulink 来进行建模仿真,同时分析了迭代次数、交织长度及不同译码算法对Turbo 码性能的影响。 二:Turbo 码的编码器和译码器原理 Turbo 码编码器组成 Turbo 码的编码器的基本结构如图1 所示。 图1 Turbo 码的编码器结构图 Turbo 码编码器主要由两个递归系统卷积编码器(RSC) 、一个交织器与一个删余和复用单元组成。递归系统卷积编码器是指带有反馈的系统卷积编码器,其码率可设为R = k/ n ;交织器用来改变信息序列的排列顺序,获得与原始信息序列内容相同,但排列不同的信息序列;删余和复用单元的作用是从总体上改善Turbo码码率,因此通过删余和复用单元, Turbo 码可以获得不同码率的码字。编码器的码字通过信道输出到译码器内。 Turbo 码译码器原理

实验七_信道编码仿真实现

实验七信道编码仿真实现 班级:08电子信息工程二班 实验人:马华臣 一、实验目的 理解信道编码的思想,掌握信道编码的编程实现原理及技术。 二、实验内容 1.随机产生二进制信源消息序列。 产生随机数的方法与前面类似,利用srand( (unsigned)time( NULL ) )和rand()函数模拟产生随机数。 2.利用信道编码方法进行编译码。 信道的编译码分三部分,即编码部分,信道模拟部分,译码部分。编码部分采用汉明编码。模拟信道,采用rand()函数随机确定产生差错的位置。译码部分,采用标准阵列表直接全表查找的方法译码。本程序实现的是对汉明(5,2)码的编码与译码(课本P362-363)。 生成矩阵为: G= 1 0 1 1 1 0 1 1 0 1 三、程序 //汉//汉明(5,2)码的编码与标准阵列译码/// ///////////////////////////// #include "stdio.h"

#include "math.h" #include"stdlib.h" #include "time.h" void main() { int aa[10000]; int i; int N; //////////////////////// int b[4][7]={{1,0,1,1,1},{0,1,1,0,1}};//定义生成矩阵 int y=0,s=0; int j,k,m,n; int a[4],q[7],rr[10000/2*5]; ////////////////////////// int p,u,D=0; int cc[2500],dd[2500],ee[2500]; int e[7][5]={{1,0,0,0,0},{0,1,0,0,0},{0,0,1,0,0},{0,0,0,1,0},{0,0,0,0,1}, {1,0,1,0,0},{1,0,0,0,1}};//定义错误图样 int w[10000/2*5]; int ww[10000/2]; printf("汉明(5,2)码的编码与标准阵列译码:\n"); printf("请输入你想产生的二进制个数(至少四个但不超过1万):"); scanf("%d",&N); //输入想产生的信源的个数 while(N<4) { printf("输入无效,请重新输入"); printf("请输入你想产生的二进制个数(至少四个):"); scanf("%d",&N); } printf("随机产生的二进制序列为:\n"); srand( (unsigned)time( NULL ) ); //产生一个随机序列,并把它放入a[]中for(i=0;i

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

基于matlab的通信系统仿真要点

创新实践报告 报告题目:基于matlab的通信系统仿真学院名称:信息工程学院 姓名: 班级学号: 指导老师: 二O一四年十月十五日

一、引言 现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求通信系统技术研究和产品开发缩短周期,降低成本,提高水平。这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术和工具才能实现。在这种迫切的需求之下,MATLAB应运而生。它使得通信系统仿真的设计和分析过程变得相对直观和便捷,由此也使得通信系统仿真技术得到了更快的发展。通信系统仿真贯穿着通信系统工程设计的全过程,对通信系统的发展起着举足轻重的作用。通信系统仿真具有广泛的适应性和极好的灵活性,有助于我们更好地研究通信系统性能。通信系统仿真的基本步骤如下图所示:

二、仿真分析与测试 (1)随机信号的生成 利用Matlab 中自带的函数randsrc 来产生0、1等概分布的随机信号。源代码如下所示: global N N=300; global p p=0.5; source=randsrc(1,N,[1,0;p,1-p]); (2)信道编译码 1、卷积码的原理 卷积码(convolutional code)是由伊利亚斯(p.Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k 比特的信息段编成n 个比特的码组,监督码元不仅和当前的k 比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N 称为编码约束长度,将nN 称为编码约束长度。一般来说,卷积码中k 和n 的值是比较小的整数。将卷积码记作(n,k,N)。卷积码的编码流程如下所示。 可以看出:输出的数据位V1,V2和寄存器D0,D1,D2,D3之间的关系。根据模2 D0D2D1D3 + + M V1 V2 OUT 02 1V D D =⊕0123 2V D D D D =⊕⊕⊕

基于MATLAB的调制解调与信道编译码仿真

基于MATLAB 的调制解调与信道编译码仿真 摘要:随着信息时代的步伐,通信技术得到了全面的发展,信息技术已成为了21世纪最强大的国际化动力。在通信技术中,信息的调制、解调和误码纠错都占有重要的地位。MATLAB 作为一款功能强大的数学工具软件,在通信领域中得到了很广泛的应用。本文基于MATLAB 对信号进行模拟仿真设计,实现对二进制相移键控、循环码的纠错仿真、BPSK 的调制解调等进行仿真设计。 关键字:MATLAB 、调制解调、2PSK 、BPSK 、重复码。 一 、二进制和四进制相移键控调制仿真设计 1.1 二进制相移键控(2PSK )原理 相移键控是利用载波的相位变化来传递数字信息的,而振幅和频率保持不变。在2PSK 中常用0和π分别表示二进制“0”和“1”,2PSK 的信号时域表达式为: 2t )e c p s k n w t ?+()=Acos( n ?表示为第n 个符号的绝对相位,因此上式可改写为: 2Acosw t -Acosw t 1-P P e {psk c c t ()=概为概率为率 由于表示信号的两种码形完全相同,极性相反,故2PSK 信号一般表示一个双极性全占空矩形脉冲序列与一个正弦载波相乘。 2p ()sk e t =s(t)cosw c t 其中: s(t)=∑n a g(t-nTs); 这里,g(t)为脉宽Ts 的单个矩形脉冲;n a 的统计特征为 n a = 概率为 概率为 即发送二进制“0”时(a 1n =+),2p ()sk t e 取0相位;发送二进制符号“1”时(a 1n =+),2p ()s k t e 取π相位。这种以载波的不同相位直接法去表示相应二进制数字信号的调

基于MATLAB的信道编码分析

题目:基于MATLAB的通信系统仿真 ———信道编码对通信系统性能的影响 专业:通信工程 姓名:崔校通 学号:201300484316 日期: 2016.12.22

目录 一、引言 (2) 二、信道编码理论 (2) 2.1、信道编码的目的 (2) 2.2、信道编码的实质 (3) 2.3、信道编码公式 (3) 三、线性分组码的编译码原理 (3) 3.1、线性分组码的基本概念 (3) 3.2、生成矩阵和校验矩阵 (4) 四、MATLAB仿真 (5) 4.1仿真 (5) 4.1.1原理说明 (5) 4.1.2各子函数说明 (5) 4.2仿真源程序 (5) 4.2.1信道编码 (5) 4.2.2信道解码 (6) 4.2.3交织 (6) 4.2.4解交织 (7) 4.2.5信道衰落 (7) 六程序及仿真图 (8) 1、file1:信道编码对通信系统性能的影响,有无信道编码的影响 (8) 2、file2:在周期性深衰落的信道条件下,交织对通信系统性能的影响 (10) 3、file3:在交织条件下,不同时长的周期性深衰落对系统性能影响的比较 (13)

基于MATLAB的通信系统仿真 ———信道编码对通信系统性能的影响摘要:简述信道编码理论,详细说明分组码的编译原理、实现方法及检错纠错能力,用MATLAB仿真有无信道编码条件下对通信系统性能的影响及信道编码在不同信道下对通信系统性能的影响,如AWGN信道和深衰落信道。 关键词:信道编码、分组码、MATLAB仿真、性能 一、引言 提高信息传输的有效性和可靠性始终是通信技术所追求的目标,而信道编码能够显著的提升信息传输的可靠性。1948年,信息论的奠基人C.E.Shannon在他的开创性论文“通信的数学理论”中,提出了著名的有噪信道编码定理.他指出:对任何信道,只要信息传输速率R不大于信道容量C, 就一定存在这样的编码方法:在采用最大似然译码时,其误码率可以任意小.该定理在理论上给出了对给定信道通过编码所能达到的编码增益的上限,并指出了为达到理论极限应采用的译码方法.在信道编码定理中,香农提出了实现最佳编码的三个基本条件:(1 )采用随机编译码方式; (2 )编码长度L→∞ , 即分组的码组长度无限; (3)译码采用最佳的最大似然译码算法。 二、信道编码理论 2.1、信道编码的目的 在数字通信系统中由于信道内存在加性噪声及信道传输特性不理想等容易造成码间串扰同时多用户干扰、多径传播和功率限制等也导致错误译码。为了确保系统的误比特率指标通常采用信道编码。信道编码是为了保证信息传输的可靠性、提高传输质量而设计的一种编码。它是在信息码中增加一定数量的多余码元,使码字具有一定的抗干扰能力。

基于MATLAB的模拟通信系统的设计

现代通信原理课程设计 设 计 报 告 课题名称: 专业班级: 姓名: 学号: 起止时间: 2007.12.27-2008.01.13 重庆交通大学 计算机与信息学院

目录 一、课题内容 (1) 二、设计目的 (1) 三、设计要求 (1) 四、实验条件 (1) 五、系统设计 (1) 1. 通信系统的原理 (1) 2. 所设计子系统的原理 (4) 六、详细设计与编码 (5) 1. 设计方案 (5) 2. 编程工具的选择 (7) 3. 编码与测试 (7) 4. 编码与调试过程 (13) 5. 运行结果及分析 (14) 七、设计心得 (21) 八、参考文献 (23)

一、课题内容 基于MATLAB的模拟通信系统仿真-FM和DSB 二、设计目的 1、综合应用《Matlab原理及应用》、《信号与系统》、《现代通信原理》、《无线通信原理及应用》等多门课程知识,使学生建立通信系统的整体概念; 2、培养学生系统设计与系统开发的思想; 3、培养学生利用软件进行通信仿真的能力。 三、设计要求 1、每3人一组,组内成员进行各自分工,分别完成不同子系统的详细功能; 2、对通信系统有整体的较深入的理解,深入理解自己仿真部分的原理的基础,画出对应的通信子系统的原理框图; 3、提出仿真方案; 4、完成仿真软件的编制; 5、仿真软件的演示; 6、提交详细的设计报告。 四、实验条件 计算机、Matlab软件 五、系统设计 1.通信系统的原理 通信系统的一般模型

信息源:消息的生成者或来源; 发送设备:将信源输出的信号变为适合信道传输的发射信号,且发送信号包含了原始信号的一切信息; 信道:传输信号的通道,可以是有线的,也可以是无线的; 噪声源:在信道中传输,噪声是绝不可避免的,噪声又可为加性噪声(线性的噪声)和乘性噪声(非线性的噪声),一般我们只考虑加性噪声; 接收设备:从接收信号中提取我们所希望的信号,并将其转换成适合输出传感器的形式; 受信者:消息接收者。 在通信系统中,按信号参量的取值方式不同可把信号分为两类,即模拟信号和数字信号,再按照信道中传输信号的特征,来分为模拟通信系统和数字通信系统。 下面分别来介绍模拟通信系统与数字通信系统 模拟通信系统模型

信道编码实验报告

无线通信基础课程设计报告 (信道编码) 小组成员: 指导老师: 完成时间:

无线通信系统课程设计报告 实验摘要:数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从 而使接收端产生图象跳跃、不连续等现象。信道编码通过对数码流进行相应的处理,使系统具有一定的检错和纠错能力,可极大地避免码流传送中误码的发生。提高数据传输可靠性,降低误码率是信道编码的任务。 实验名称:信道编码 实验目标:本实验的目标是领会信道编码的基本思想。并通过比较有无信道编码模块的 不同系统误码率性能,感受信道编码技术对于提高系统性能的重要意义。 实验原理:打开“Channel_Coding_74.vi”前面板如图1所示,打开程序框图并理解参与 信道编码的整个数据流。程序包含上下两个独立的部分如图2所示,下面部分是生成误码率曲线如图1(b),其结构和上面部分类似,你只需要关注上面部分程序即可;上面部分代码大致可由做7个模块组成,每一模块完成一项功能。你负责的是这个实验的“编码和解码”功能。这些模块为: 1、读取图片 LabVIEW提供了一个能够读取JPEG格式的图像并输出图像数据的模块。提供的还原像素图.vi完成图像数据到一维二进制数据的转换(图像数据→十进制二维数组→二进制一维数组),输出信源比特流。 (a)实验操作部分(b)误码率曲线 图1 前面板 2、信道编码 我们的下一个目标是对信源比特流进行信道编码。信道编码方案很多,线性分组码、卷积码、LDPC码等等;这里我们采用简单的(7,4)线性分组码。

图2 程序框图 线性分组码是一类重要的纠错码。在(n ,k )线性分组码中,常用到能纠正一位错误的汉明码。其主要参数如下: 码长: 21m n =-; 信息位:21m k m =--; 校验位:m n k =-; 最小距离: d = 3; 纠错能力: t = 1; 本次实验需要用到的是(7,4)分组码,属系统码,前四位为信息位,后三位为冗余位。 3、BPSK 调制 上一步得到的是二进制的信息比特流,需要采用一定的调制方案,将二进制的信息比特 映射成适合信道传输的符号。这里我们采用最简单的BPSK 调制:将信息0映射为幅值为1的信号,信息1映射为幅值为-1的信号,如图3所示。 (1,0)=0 图3 BPSK 映射图

电子信息工程毕设设计__基于matlab的信道编码仿真

电子信息工程毕设设计__基于matlab的信道编码仿真基于matlab的信道编码仿真 海南大学 毕业论文(设计) 题目:基于matlab的信道编码仿真学号: 姓名: 年级: 学院:信息科学技术学院系别:电子信息工程专业:电子信息工程指导教师: 完成日期: 1 基于matlab的信道编码仿真 摘要 通信技术的飞速发展,信道编码已经成功地应用于各种通信系统中。以及各种传输方式对可靠性要求的不断提高,信道编码技术作为抗干扰技术的一种重要的手段,在数字通信技术领域和数字传输系统中显示出越来越重要的作用。 信道编码的目的是为了改善通信系统的传输质量。由于实际信道存在噪声和干扰,使发送的码字与信道传输后所接收的码字之间存在差异,称这种差异为差错。一般情况下,信道噪声、干扰越大,码字产生差错的概率也就越大。 本文利用matlab对二进制对称信道(BSC),高斯白噪声信道(AWGN)两种信道的仿真,(7,4)Hamming码对信道的仿真,通过误码率的曲线图来了解信道的编码。并利用matlab的simulink模块仿真,运用simulink里的卷积码viterbi译码器来对二进制对称信道和高斯白噪声信道的仿真,观察误码率的曲线图来了解2个信道的不同。 关键字:matlab,信道,编码,译码,Simulink。

1 基于matlab的信道编码仿真 Abstract With the rapid development of communication technology, channel coding has been successfully applied to various communications systems. And a variety of transmission of the continuous improvement of reliability requirements, anti-jamming channel coding technology as an important means of technology in the field of digital communications technology and digital transmission systems in a more and more important role. The purpose of channel coding is to improve the transmission quality of communications systems. As the actual existence of the channel noise and interference, the transmitted codewords and channel transmission received after the difference between code words, said this difference is wrong. Under normal circumstances, channel noise, the greater the interference, the code word generated the greater the probability of error. In this paper, matlab binary symmetric channel (BSC), Gaussian white noise channel (AWGN) two channel simulation, (7,4) Hamming code simulation of the channel, through the bit error rate curve to understand the channel coding. Using matlab to simulink block simulation, using simulink in the viterbi decoder to convolutional codes on the binary symmetric channel and Gaussian white noise channel simulation, observation error rate graphs to understand the two different channels

信道编码综述

信道编码综述 学院: 学号: 姓名: 2013年11月13日

信道编码综述 摘要:信道编码是通过信道编码器和译码器实现的用于提高信道可靠性的理论和方法。本文综合概述了信道编码的历史背景、要求和编码的基本原理。 关键词:信道编码;历史背景;基本原理 0引言: 随着现代通信技术和计算机技术的迅速发展,每天都在不断涌现新的通信业务和信息业务,同时用户对通信质量、数据传输速率和可靠性的要求也在不断提高。数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从而使接收端产生图象跳跃、不连续、出现马赛克等现象。所以通过信道编码这一环节,对数码流进行相应的处理,使系统具有一定的纠错能力和抗干扰能力,可极大地避免码流传送中误码的发生。提高数据传输效率,降低误码率是信道编码的任务。信道编码的本质是增加通信的可靠性。随着信道编码理论和数字通信技术不断发展,信道编码技术会在通信工程领域得到越来越广泛的应用。 1 信道编码技术的发展史 1948年,Bell实验室的C.E.Shannon发表的《通信的数学理论》,是关于现代信息理论的奠基性论文,它的发表标志着信息与编码理论这一学科的创立。Shannon在该文中指出,任何一个通信信道都有确定的信道容量C,如果通信系统所要求的传输速率R小于C,则存在一种编码方法,当码长n充分大并应用最大似然译码(MLD,Maximum Likelihood Decoding)时,信息的错误概率可以达到任意小。 Shannon指出了可以通过差错控制码在信息传输速率不大于信道容量的前提下实现可靠通信,但却没有给出具体实现差错控制编码的方法。20世纪40年代,R.Hamming和M.Golay提出了第一个实用的差错控制编码方案,使编码理论这个应用数学分支的发展得到了极大的推动。通常认为是R.Hamming提出了第一个差错控制码。汉明码是在原编码的基础上附加一部分代码,使其满足纠错码的条件。它属于线性分组码,由于线性码的编码和译码能轻易实现,至今仍是

信道编码综合设计与建模

信道编码综合设计与建模

摘要 以(7,4)线性分组码为例的信道编码译码系统,它对输入的四位信息码进行Hamming编码,对于输入接收到的七位信息码进行译码,当接收到的信息码有一位错误时,可以纠正这一位错误码,进而译出正确的码组。 关键词:编码;译码;纠错;

目录 信道编码综合设计与建模 (1) 目录 (3) 1、设计要求 (4) 2、设计思路 (4) 3、设计原理以及方案 (4) 3.1 设计原理 (4) 3.2 设计方案 (5) 3.2.1主程序流程图 (5) 3.2.2编码器程序流程图 (6) 3.2.3译码器程序流程图 (7) 4、设计实现 (9) 4.1 matlaB程序运行代码 (9) 5、总结 (11) 6、附录:程序代码 (13)

1、设计要求 以(7,3)或者(7,4)为分组码为例设计信道编码综合系统 1.1构造编码器、解码器、信道组成的整个编码系统 1.2进行编码理论分析与计算,检错、纠错能力分析与验证 1.3调整系统参数,观察各点码速率,功率谱; 1.4分析系统性能改善情况; 2、设计思路 构建一个编码器使实现译码与编码功能并且可供选择,在编码器中在得出代码之后绘制功率谱密度曲线 3、设计原理以及方案 3.1 设计原理 设分组码(n,k)中,k=4,为能纠正一位误码,要求r≥3,现取r=3,则n=k+r=7.我们用a0a1a2a3a4a5a6表示这7个码元,用s0、s1、s2表示有三个校验方正计算得到的校正子,并假设s0、s1、s2校正子码组与五码位置的对应关系如表1所示。 图 1 (7,4)码校正子与误码位置 由表可知,当误码位置在时,校正子s0=1;否则s0=0。因此有s0=a2⊕a4⊕a5⊕a6,同理有S1=a1⊕a3⊕a4⊕a6和S2=a0⊕a3⊕a5⊕a6。在编码时a6、a5、a4、a3为信息码元,a0、a1、a2为监督码元。则监督码元可由以下监督方程唯一确定: 由上面方程可得到图2所示的16个码组。在接收端收到每个码组后,计算出s2、

相关文档
最新文档