基于matlab线性分组码实验设计(共13页).doc
《基于matlab线性分组码实验设计(共13页).doc》由会员分享,可在线阅读,更多相关《基于matlab线性分组码实验设计(共13页).doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上重 庆 交 通 大 学信息论与编码综合设计实验报告班 级: 级 班 姓 名: 学 号: 实验项目名称: 线性分组码编译码实验 实验项目性质: 设计性实验 实验所属课程: 信息论与编码理论 实验室(中心): 网络实验中心 指 导 教 师 : 实验完成时间: 年 月 日专心-专注-专业教师评阅意见: 签名: 年 月 日实验成绩:一、 设计题目 线性分组码编译码实验二、 实验目的:1. 掌握线性分组码的编码原理、编码步骤和译码方法2. 熟悉matlab软件的基本操作,学会用matlab软件进行线性分组码的编码和译码三、 实验主要内容及要求:设计(15,11)或(255,24
2、7)线性分组码,利用随机生成的二进制序列及BPSK调制方式,比较使用信道编码与未使用信道编码的误比特率曲线四、 实验设备及软件:PC机一台、Matlab 软件噪声五、 设计方案信道传输BPSK调制信道编码 信源编码 (15,11)线性分 解调信源译码信道译码 统计误码率 该实验系统框图如上图所示,其中信源编码在本实验不做讨论,编号采用线性分组码编码和译码,编号为不采用信道编译码,通过这两种方法的对比,得出误码率曲线。1. 线性分组码编码本实验采用的是(15,11)的线性分组码,线性分组码的编码由监督矩阵和生成矩阵实现,监督矩阵H为(411)的矩阵,由监督方程和(44)的单位矩阵构成,生成矩阵G
3、为(1115)的矩阵,由(1111)的单位矩阵和监督矩阵的转置矩阵构成。具体实现方法如下: 将要编码的序列先整形,整为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)/
4、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:); disp(G); disp(监督矩阵H:); disp(H); disp(码字:); disp(C);else %随机序列个数不是11的整数倍,补0后编码 s1=a,zer
5、os(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);endsu
6、bplot(3,2,2);stairs(C);axis(1 length(C) -0.5 1.5);title(编码后的码字);2. BPSK调制BPSK调制实现方法为:将0、1序列变为-1、1序列;将序列与载波相乘,为1时与载波相位相同,为-1时与载波相位相反。其实现代码如下: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;for i=1:length(
7、bits) modusignal=modusignal,bits(i)*carriar;endsubplot(3,2,3);plot(modusignal);title(BPSK调制后的波形);3. 信道加噪使用awgn函数对调制信号进行加噪,其实现代码如下:function cs=channel(modusignal,bits)cs=awgn(modusignal,1);subplot(3,2,4);plot(cs);title(相乘后信号频谱);title(加噪后的波形);4. BPSK解调产生一个与载波频率相同的本地载波,与经信道加噪后的调制信号相乘,得到解调信号。然后通过低通滤波器滤波
8、器再抽样判决,得出解调后的原始信号。(要减去滤波器的延时时间t,t=(滤波器长度+1)/2)其实现代码如下: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;endsubplot(3,2,5);plot(designal);title(解调后的波形);load lppassL=(length(lppass)+1)/2;y=filter(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 matlab 线性 分组码 实验设计 13
限制150内