




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 通信原理课程设计报告 题目: 数字基带信号HDB3码型编码转换实现 专业班级: 姓 名: 学 号:指导教师:设计任务要求: 仿真实现数字基带通信系统信源输入24位二进制序列产生HDB3码,通过高斯白噪声信道,接收端滤波、解码的时域图及频谱图。以矩形波为例,要求实现输入24位二进制序列产生AMI码,HDB3码,接收端滤波、解码上述码型。 摘要 HDB3码全称三阶高密度双极性码(英语:High Density Bipolar of Order 3,简称:HDB3码)是一种适用于基带传输的编码方式,它是为了克服AMI码的缺点而出现的,具有能量分散,抗破坏性强等特点。HDB3码实行转换一般分为三个步
2、骤,先将消息码转换AMI码然后加“V”,接着加“B”,这几部我们可以使用C语言进行编程实现。为了实现HDB3码的编码与转换,同时加深对通信系统工作原理的了解,我们采用了MATLAB软件进行编码仿真,同时学习掌握MATLAB软件的基础使用。关键词:AMI码;HDB3码;编码;解码;MATLAB;仿真 目录 1. 设计原理.4 1.1 HDB3码的介绍.4 1.2 HDB3码的编码转换规则.5 1.3 HDB3码的解码转换规则.5 1.4 HDB3码的软件程序设计.62. MATLAB软件仿真结果及其分析.10 2.1 MATLAB软件的介绍.10 2.2 仿真结果图示.12 2.3 仿真结果分析
3、.153. 设计总结及心得体会.224. 参考文献.225. 致谢.23 正文 1.设计原理1.1 HDB3码的介绍HDB3码即三阶高密度双极性码(英语:High Density Bipolar of Order 3,简称:HDB3码)是一种适用于基带传输的编码方式,“三阶”通俗讲就是最多3个连0码元,“高密度双极性”就是没有直流分量,不会连续出现+1或-1,它是为了克服AMI码的缺点而出现的,具有能量分散,抗破坏性强等特点。三阶高密度双极性码用于所有层次的欧洲E-carrier系统,HDB3码将4个连续的"0"位元取代成"000V"或"B00
4、V"。这个做法可以确保连续的相隔单数的一般B记号。1.2 HDB3的编码转换规则HDB3码的编码规则主要分为3步:1 .先将消息代码变换成AMI码,若AMI码中连0的个数小于4,此时的AMI码就是HDB3码;2 .若AMI码中连0的个数大于等于4,则将每4个连0小段的第4个0变换成与前一个非0符号(+1或-1)同极性的符号,用表示(+V,-V);3 .为了不破坏极性交替反转,当相邻V符号之间有偶数个非0符号时,再将该小段的连0码元段的第1个0变换成+B或-B,B的符号与前一非零符号的相反,并让后面的非零符号从符号开始再交替变化。例如:消息代码: 1 0 0 0 0 10 0 0 0
5、1 1 0 0 0 0 1 1AMI码: +1 0 0 0 0 -1 0 0 0 0 +1 -1 0 0 0 0 +1 -1HDB3码:+1 0 0 0 +V -1 0 0 0 -V +1 -1 +B 0 0 +V -1 +1HDB3码:+1 0 0 0 +1 -1 0 0 0 -1 +1 -1 +1 0 0 +1 -1 +1 1.3 HDB3码的解码转换规则虽然编码很复杂,但解码规则很简单,就是把原来的取代节(4个连零)找到即可,若3连"0"前后非零脉冲同极性,则将最后一个非零元素译为零,如+1000+1 就应该译成"10000",否则不用改动;若2连
6、 "0"前后非零脉冲极性相同,则两零前后都译为零,如-100-1,就应该译为0000,否则也不用改动。再将所有的-1变换成+1后,就可以得到原消息代码。例如:HDB3:0 +1 0 0 -1 0 0 0 -1 +1 0 0 0 +1 -1 +1 -1 0 0 -1 +1 0 0 -1译码:0 1 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 1 1.4 HDB3码的软件程序设计HDB3码编码程序主要包含3个部分:消息码与AMI码的转换,加“V”和加“B”加“B”加“V”AMI码 消息码 HDB3码程序译码部分主要是从收到的符号序
7、列中找到破坏极性交替的点,从而断定符号及其前面的3个符号必是连0符号,从而恢复4个连码,再将所有的-1变换成+1后,就可以得到原消息代码恢复连零码寻找破坏极性点 消息 原码-1正化HDB3码当程序完成HDB3的编码与解码后,就是对HDB3码进行加噪声与滤波处理,接着是图像方波输出部分,完整源程序如下:源程序: clc;clear all;xn=1 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0;% 输入单极性码 yn=xn;% 输出yn初始化 num=0;% 计数器初始化 for k=1:length(xn) AMI码编码部分if xn(k)=1 n
8、um=num+1; % "1"计数器 if num/2 = fix(num/2) % 奇数个1时输出-1,进行极性交替 yn(k)=1; else yn(k)=-1; end end end % AMI编码完成 num=0; % 连零计数器初始化 HDB3码编码部分yh=yn; % 输出初始化 sign=0; % 极性标志初始化为0 V=zeros(1,length(yn);% V脉冲位置记录变量 B=zeros(1,length(yn);% B脉冲位置记录变量 for k=1:length(yn) if yn(k)=0 num=num+1; % 连“0”个数计数 if n
9、um=4 % 如果4连“0” num=0; % 计数器清零 yh(k)=1*yh(k-4); % 让0000的最后一个0改变为与前一个非零符号相同极性的符号 V(k)=yh(k); % V脉冲位置记录 if yh(k)=sign % 如果当前V符号与前一个V符号的极性相同 yh(k)=-1*yh(k); % 则让当前V符号极性反转,以满足V符号间相互极性反转要求 yh(k-3)=yh(k); % 添加B符号,与V符号同极性 B(k-3)=yh(k); % B脉冲位置记录 V(k)=yh(k); % V脉冲位置记录 yh(k+1:length(yn)=-1*yh(k+1:length(yn);
10、% %让后面的非零符号从V符号开始再交替变化 end sign=yh(k); % 记录前一个V符号的极性 end else num=0; % 当前输入为“1”则连“0”计数器清零 end end % 编码完成 re=xn',yn',yh',V',B' b=xn;t=0:0.001:0.999; g=b(ceil(24*t+0.01);subplot(611); plot(t,g) axis(0 1.2 -1.2 1.2) title('信源');am=yh;t=0:0.001:0.999; ami=am(ceil(24*t+0.01);s
11、ubplot(612); plot(t,ami) axis(0 1.2 -1.2 1.2) title('信源');f=150; a=yh;t=0:0.001:0.999; m=a(ceil(24*t+0.01);st=m;subplot(613); plot(t,st) axis(0 1.2 -1.2 1.2) title('HDB3信号') %加高斯噪声 高斯噪声len=length(st); std_val=0.2; j=std_val*randn(1,len);%加入高斯噪声 nst=st+j;subplot(614) plot(t,nst) axis(
12、0 1.2 -1.2 1.2); title('高斯HBD3信号') %低通滤波器设计 wp=2*pi*2*f*0.5; 低通滤波与译码部分ws=2*pi*2*f*0.9; Rp=2; As=45; N,wc=buttord(wp,ws,Rp,As,'s'); B,A=butter(N,wc,'s'); %低通滤波h=tf(B,A); %转换为传输函数 dst=lsim(h,nst,t); subplot(615) plot(t,dst) axis(0 1.2 -1.2 1.2); title('经过低通滤波器后的信号');inp
13、ut=yh; % HDB3码输入 decode=input; % 输出初始化 sign=0; % 极性标志初始化 for k=1:length(yh) if input(k) = 0 if sign=yh(k) % 如果当前码与前一个非零码的极性相同 decode(k-3:k)=0 0 0 0;% 则该码判为V码并将*00V清零 end sign=input(k); % 极性标志 end end decode=abs(decode); u=decode;t=0:0.001:0.999; v=u(ceil(24*t+0.01);subplot(616); plot(t,v) axis(0 1.2
14、 -1.2 1.2) title('信源'); %频谱观察 Y=fft(st,1024);Z=fftshift(Y);Pyy=Z.*conj(Z)/(1024);f=1000*(0:1000)/(1024);figure(2);plot(f,Pyy(1:1001);axis(400 600,0 55);title('HDB3频谱图');xlabel('频率f(Hz)');Y=fft(decode,1024);Z=fftshift(Y);Pyy=Z.*conj(Z)/(1024);f=1000*(0:1000)/(1024);figure(3);p
15、lot(f,Pyy(1:1001);axis(400 600,0 0.05);title('解码频谱图');xlabel('频率f(Hz)');由于这个课程设计是以组为单位的,我主要负责译码的部分,下面是译码的程序。input=yh; % HDB3码输入 decode=input; % 输出初始化 sign=0; % 极性标志初始化 for k=1:length(yh) if input(k) = 0 if sign=yh(k) % 如果当前码与前一个非零码的极性相同 decode(k-3:k)=0 0 0 0;% 则该码判为V码并将*00V清零 end sig
16、n=input(k); % 极性标志 end end decode=abs(decode); 2MATLAB软件仿真结果及其分析 2.1 MATLAB软件的介绍MATLAB是一种用于数据可视化、算法开发、数据分析以及数值计算的高级技术计算语言和交互式环境。除了绘制函数/数据图像、矩阵运算等常用功能外,MATLAB还可用来创建用户界面及与调用其它语言(包括C,C+和FORTRAN)编写的程序。MATLAB有一系列的工具,这些工具可供用户使用MATLAB的函数和文件,其中许多工具是图形界面。包括MATLAB桌面和历史命令窗口、编辑器和调试器、命令窗口、路径搜索和用于用户浏览帮助、工作空间、文件的浏
17、览器。Matlab它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点,是一个高级的矩阵/阵列语言,。用户可以在命令窗口中将输入语句与执行命令同步,或者编写好一个复杂的应用程序后再一起运行。新版本的MATLAB语言是基于最为流行的C+语言基础上的,但是更具要包容性,因此语法特征与C+语言极为相似,而且更加简单,更加符合人们对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。MATLAB拥有大量计算算法。其拥有600多个工程中要用到的数学运算函数,可实现用户所需的各种计算功能
18、。函数中所使用的算法都是科研和工程计算中的满意成果,而且经过了优化和容错处理。通常情况下,用它来代替底层编程语言是可行的,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量和时间会大大减少。Matlab可以对图形进行标注和打印。高级的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了完善,让它不仅在一般数据可视化软件都具有的功能。尽管MATLAB主要用于数值运算,但利用为数众多的附加工具箱(Toolbox)它也适合不同领域的应用,比如图像处理、控制系统设计与分析、信号处理与通讯、金融建模和分析等。提供了一
19、个可视化开发环境,常用于系统模拟、动态/嵌入式系统开发等方面。 由于MATLAB具有高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来和具有完备的图形处理功能,实现计算结果和编程的可视化,因此我们选择它来进行此次课程设计的仿真软件。 2.2 仿真结果图示 图1 图1从上往下图形依次是信源波形图、AMI码波形图、HDB3码波形图、经过高斯白噪声信道的HDB3码图形、经过接收端滤波的HDB3码解码图形。 图2为解码频谱图 图 2 图3为HDB3码频谱图 图3 2.3 仿真结果分析根据AMI和HDB3的编码规则,图中的AMI和HDB3码的编码与其是一致的。信道是方差为0.2,均值为0的高斯白噪声信道。经过低通滤波后的波形通过阈值为0.3的抽样判决得出的二进制序列的消息码与信源基本一致。下图的图3,图4,图5分别为HDB3,接收端,信宿的频谱,由图中可以看出编码出来的HDB3和滤波后的HDB3码所含低频分量少,无直流分量;适合在信道传输。图4图5图6数据2将高斯信道的方差改为0.05,判决器的阈值依然是0.3,各个码型的时域图如下:图7图8图9图10分析:因为将噪声的强度变小了,所以在高斯白噪声信道的HDB3码的噪声强度有所减弱。阈值为0.3的判决器能将其还原出完整的信源。其他的AMI码,HDB3码的编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 节能技术项目在绿色数据中心构建考核试卷
- 石棉水泥制品生命周期成本分析考核试卷
- 聚合过程中的溶剂选择与回收利用考核试卷
- 私募建筑建材投资考核试卷
- 国际法律文件销毁视频监控租赁与保密协议
- 教育培训机构课程合作推广与品牌推广协议
- 跨界融合证券投资咨询合伙人战略合作协议
- 股权质押融资业务合规性审查合同
- 电信运营商市场代理补充协议
- 医院人才培养与引进补充协议
- 2020-2024年安徽省初中学业水平考试中考语文试卷(5年真题+答案解析)
- 火针疗法在皮肤科:国际视角
- 医院科研诚信课件
- 有限空间安全培训
- VTE静脉血栓栓塞症的培训
- EPC项目设计安全保障措施
- 宅基地确权委托书
- 《制作酸奶的方法》课件
- 附件16:地下室灯带临时照明系统方案
- 投顾服务方案
- 工程师转正汇报课件
评论
0/150
提交评论