通信原理实验报告二基带传输常用码的编码解码方法Word格式.docx
- 文档编号:8432233
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:8
- 大小:111.18KB
通信原理实验报告二基带传输常用码的编码解码方法Word格式.docx
《通信原理实验报告二基带传输常用码的编码解码方法Word格式.docx》由会员分享,可在线阅读,更多相关《通信原理实验报告二基带传输常用码的编码解码方法Word格式.docx(8页珍藏版)》请在冰点文库上搜索。
编码规则是:
1)检查消息码中“0”的个数。
当连“0”数目小于等于3时,HDB3码与AMI码一样,+1、-1交替;
2)当连“0”个数超过3时,将每四个连“0”化作一小节,定义为B00V,称为破坏节,其中V称为破坏脉冲,而B称为调节脉冲;
3)V与前一个相邻的非“0”脉冲的极性相同,并且要求相邻的V码之间极性必须交替。
V的取值为+1或-1;
4)B的取值可选0、+1或-1,以使V同时满足(3)中的两个要求;
5)V码后面的传号码极性也要交替。
译码:
从收到的符号序列中可以很容易的找到破坏点V,就可以断定V符号及前面的三个符号必须是连“0”符号,从而恢复四个连“0”码,再将所有-1变成+1后便得到原消息代码。
四、实验内容
(一)单极性非归零、双极性非归零、单极性归零、双极性归零时域波形。
实验代码:
M=10000;
%产生码元数
L=10;
%每码元复制32次
dt=0.1;
%采样间隔
T=L*dt;
%码元时间
TotalT=M*T;
%总时间
t=0:
dt:
TotalT;
%时间
F=1/dt;
%仿真频宽
df=1/TotalT;
%频率间隔
f=-F/2:
df:
F/2-df;
%频率
N=M*L;
%总长度
ShowM=16;
%显示码元数
ShowN=ShowM*L;
ShowT=(ShowN-1)*dt;
Showt=0:
ShowT;
%时间
dutyradio=0.5;
%占空比
randwave=round(rand(1,M));
%产生二进制随机码,M为码元个数
randwave(1:
16)=[1010010011010100];
onessample=ones(1,L);
%定义复制的次数L,L为每码元的采样点数
rerandwave=randwave(onessample,:
);
%复制的第1行复制L次
unipolarwave=reshape(rerandwave,1,L*M);
%重排成1*L*M数组
%单极性不归零码
subplot(4,1,1);
plot(Showt,unipolarwave(1:
ShowN));
axis([020-1.21.2]);
%双极性不归零码
bipolarwave=unipolarwave*2-1;
%转换成双极性的
subplot(4,1,2);
plot(Showt,bipolarwave(1:
axis([020-1.21.2]);
%单极性归零码:
unipolarzerowave=zeros(1,N);
fori=1:
dutyradio*L%dutyradio为占空比
unipolarzerowave(i+[0:
M-1]*L)=randwave;
end
subplot(4,1,3);
plot(Showt,unipolarzerowave(1:
%双极性归零码
bipolarzerowave=unipolarzerowave*2-1;
%转换成双极性的
subplot(4,1,4);
plot(Showt,bipolarzerowave(1:
生成图像如下:
此次实验产生的二进制码型是1010010011010100(可以更改),从实验结果看,与理论值是一致的。
第一个图像是单极性不归零码,第二个图像是双极性不归零码,第三个图像是单极性归零码,第四个图像是双极性归零码。
可以看出,
(1)单极性不归零码“1”的表示方法:
用正电平表示。
“0”的表示方法:
用零电平表示。
(2)双极性不归零码“1”的表示方法:
用负电平表示。
(3)单极性归零码“1”的表示方法:
半个码元周期用正电平表示,半个码元周期用零电平表示。
半个码元周期用负电平表示,半个码元周期用零电平表示。
(4)双极性归零码“1”的表示方法:
(二)AMI、HDB3码时域波形
%产生码元数
L=20;
%每码元复制32次
dt=0.001;
%采样间隔
%码元时间
%总时间
%时间
%仿真频宽
%频率间隔
%显示码元数
%时间
%占空比
16)=[1000010000100000];
%复制的第1行复制L次
subplot(3,1,1);
%绘制单极性码,便于与AMI码和HDB3码对照
ylabel('
单极性码'
xlabel('
时间(s)'
axis([0ShowT-0.21.2]);
%AMI码生成方法
amiwave=zeros(1,N);
lastcode=1;
fori=0:
M-1
if(randwave(i+1)==1)%有跳变
if(lastcode==1)
amiwave(i*L+1:
i*L+L)=-1;
lastcode=-1;
else
i*L+L)=1;
lastcode=1;
end
else
amiwave(i*L+1:
i*L+L)=0;
end
subplot(3,1,2);
plot(amiwave);
%绘制AMI码
AMI码'
axis([0ShowN-1.21.2]);
%解决HDB3码连续4个0及4个0以上的问题
hdb3wave=zeros(1,N);
%上一个1状态
vonevcount=0;
%相邻V之间连1数目
zerocount=0;
%连零数目
M-1%
hdb3wave(i*L+1:
vonevcount=vonevcount+1;
zerocount=zerocount+1;
if(zerocount==4)
if(mod(vonevcount,2)==1)%相邻V之间有奇数个1
if(lastcode==1)%插入000+V
hdb3wave(i*L+1:
else%插入000-V
end
vonevcount=0;
else
if(lastcode==1)%插入-B00-V
hdb3wave((i-3)*L+1:
(i-3)*L+L)=-1;
lastcode=-1;
else%插入+B00+V
(i-3)*L+L)=+1;
lastcode=1;
end
zerocount=0;
subplot(3,1,3);
plot(hdb3wave);
%绘制HDB3码
HDB3码'
此次实验产生的二进制码型是1000010000100000(可以更改),从实验结果看,与理论值是一致的。
第一个图像是单极性不归零码,第二个图像是AMI码,第三个图像是HDB3码。
(2)AMI码“1”的表示方法:
用正电平与负电平交替表示。
(3)HDB3码“1”的表示方法:
与AMI码一样,用正电平与负电平交替表示。
“0”的表示方法:
当连续的0个数少于3个时,表示方法与AMI一样;
当连续的0个数多于3个时,每4个0用B00V取代,其中,V必须要与前一个相邻的非零脉冲的极性相同,且两个V码极性要相反,B可以取正电平、负电平、零电平,以使V的取值满足要求。
五、实验心得
这次实验主要是关于基带传输常用码的编码解码方法,主要内容包括单极性非归零、双极性非归零、单极性归零、双极性归零、AMI、HDB3码的编解码。
通过实验,我对于这几种码型之间的区别与联系有了进一步的了解,之前用硬件实现过单极性非归零、双极性非归零、单极性归零、双极性归零、AMI、HDB3码的编解码。
通过此次实验,我明白了软件仿真与硬件实现的统一性,同一问题既可以用软件来实现,也可以用硬件来实现。
-8-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信 原理 实验 报告 基带 传输 常用 编码 解码 方法