收藏 分享(赏)

HDB3码的仿真.doc

上传人:精品资料 文档编号:11046017 上传时间:2020-02-05 格式:DOC 页数:15 大小:302.34KB
下载 相关 举报
HDB3码的仿真.doc_第1页
第1页 / 共15页
HDB3码的仿真.doc_第2页
第2页 / 共15页
HDB3码的仿真.doc_第3页
第3页 / 共15页
HDB3码的仿真.doc_第4页
第4页 / 共15页
HDB3码的仿真.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、1课 程 设 计 任 务 书学 院 信息科学与工程 专 业 电子信息工程学生姓名 贾元龙 学 号 0803030118设计题目 HDB3 码的仿真内容及要求:利用 MATLAB/Simulink 进行编程和仿真,仿真的内容可以是关于信源、信源编码、模拟调制、数字调制、多元调制、差错控制、多址技术、信道仿真及具体通信电路的动态仿真实现。也可以用 MATLAB 编程对通信的某一具体环节进行仿真。进度安排:2011 年 06 月 17 日 选题目查阅资料2011 年 06 月 20 日 编写软件源程序或建立仿真模块图2011 年 06 月 22 日 调试程序或仿真模型2011 年 06 月 24 日

2、 性能分析及验收2011 年 06 月 27 日 撰写课程设计报告、答辩指导教师(签字):年 月 日 学院院长(签字):年 月 日 2摘 要HDB3 码编码规则首先将消息代码变换成 AMI 码;然后检查 AMI 码中的连 0 情况,当无 4 个或 4 个以上的连 0 串时,则保持 AMI 的形式不变;若出现 4 个或 4 个以上连 0 串时,则将 1后的第 4 个 0 变为与前一非 0 符号(+1 或-1)同极性的符号,用 V 表示(+1 记为+V,-1 记为-V ) ;最后检查相邻 V 符号间的非 0 符号的个数是否为偶数,若为偶数,则再将当前的 V 符号的前一非 0 符号后的第 1 个 0

3、 变为+B 或-B 符号,且 B 的极性与前一非 0 符号的极性相反,并使后面的非 0 符号从 V 符号开始再交替变化关键词: HDB3 码 MATLAB 编码原则 V 码 B 码3目 录1 课程设计目的42 课程设计要求43 相关知识44 课程设计分析65 仿真126 结果分析147 参考文献154一、设计目的1.综合应用Matlab编程与系统仿真 、 信号与系统 、 现代通信原理等多门课程知识,使学生建立通信系统的整体概念;2.培养学生系统设计与系统开发的思想;3.培养学生利用软件进行通信仿真的能力;4.培养学生独立动手完成课题设计项目的能力;5.培养学生查找相关资料的能力。二、设计要求1

4、.每人独立完成一个题目2. 对通信系统有整体的较深入的理解, 深入理解自己仿真部分的原理的基础,画出对应的通信子系统的原理框图3. 提出仿真方案;4. 完成仿真软件的编制5. 仿真软件的演示6. 提交详细的设计报告三、相关知识在实际的传输系统中,并不是所有的代码电气波形都可以信道中传输。含有直流分量和较丰富的单极性基带波形就不适宜在低频传输特性差的信道中传输,因为它有可能造成信号的严重的畸变。5在传输码(或称线路吗)的结构将取决于实际信道特性和系统的工作条件。通常,传输码的结构应具有以下的特性:(1) 相应的基带信号无直流分理,且低频分量少:(2) 便于从信号中提取定时信息:(3) 信号中高频

5、分应尽量少以节省传输频带并减少码间串扰。(4) 不受信号源统计特性影响,即能适应于信息源变化:(5) 具有内在的检错能力,传输的码型应具有一定的规律性,以便利用这一规律性进行宏观监测:(6) 编译码设备要尽可能简单,等等。满足以上特性的传输码型种类繁多,这里使用 HDB3。要了解 HDB3 码的编码规则,首先要知道 AMI 码的构成规则,AMI 码就是把单极性脉冲序列中相邻的“1”码 (即正脉冲)变为极性交替的正、负脉冲。将 “0”码保持不变,把“1”码变为+1、-1 交替的脉冲。如:NRZ 码:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1AMI 码:-1 0 0 0

6、 0 +1 0 0 0 0 -1 +1 0 0 0 0 -1 +1HBD3码(3nd Order High Density Bipolar)的全称是三阶高密度双极性码,它是AMI 码的一种改进型,改进目的是为了保持 AMI 码的优点而克服其缺点,使连“0”个数不超过3 个。其编码规则:(1)检查消息码中连 “0”的个数。当连“0”数目小于等于3时,HBD3 码与AMI 码一样(“1 ”交替的变换为“+1”和“-1” , “0”保持不变) 。(2)当连“ 0”数目超过 3时,将每4个连“0”化作一小节,定义为“B00V“称为破坏节,其中 V 称为破坏脉冲,而 B 称为调节脉冲;(3)V 与前一个

7、相邻的非 “0”脉冲的极性相同(这破坏了极性交替的规则,所以 V 称破坏脉冲) ,并且要求相邻的 V 码之间极性必须交替。V 的取值为“+1”或“-1”;(4)B 的取值可选0 、+1或-1, ,以使 V 同时满足(3 )中的两个要求;(5)V 码后面的传号码极性也要交替。例如:消息码: 1 000 0 1 000 0 1 1 000 0 000 0 1 16AMI 码: -1 000 0 +1 000 0 -1+1 000 0 000 0 -1+1 HDB3码:-1 000-V +1 000+V -1+1-B00-V +B00+V -1+1其中的B 脉冲和V 脉冲与1 脉冲波形相同,用 V

8、或 B 表示的目的是为了示意其中的该非“0 ”码是由原信码的 “0”变换而来的。当相邻两个 V 码之间有奇数个“1”码时,能保证 V 码满足(3 )的要求,B 取“0”;当相邻两个 V 码之间有偶数个 “1”码时,不能保证 V 码极性交替,B 取“+1”或“-1” ,B 码的符号与前相邻“1”相反,而其后面的 V 码与 B 码极性相同。四、课程设计分析(1)实验编码原理框图如下所示:(1) 编码框图以下是 V 码以及 B 码产生的框图:7(2 ) V 码产生单元的工作流程图(3 )B 码产生单元的工作流程图译码规则:在接收端,将接收到的 HDB3码序列恢复为原输入二进制数字信息序列的过8程称为

9、译码。对 HDB3码而言,译码就是找到编码时插入的特殊序列并将它恢复为0000 。根据编码原则,HDB3 的译码可分为三个步骤:(1)根据 “V”的极性特点,找出特殊序列。由于编码时,每个“V”的极性都与其前一个“1 ”码的极性相同,所以,在接收序列中一旦出现连续两个同极性码时,两个同极性码的后一个即为“V” ,此“V”与其前的三位码就是一个特殊序列;(2)将所有的特殊序列都恢复为“0000 ”;(3)将正、负脉冲都恢复为“1 ”码,零电平恢复为 “0”码。下图是译码的框图:(4 )译码框图(2)程序源代码global dt df t f Nclose allN=213; %采样点数L=8;

10、%每码元的采样点数M=N/L; %码元数Rb=2;Ts=0.5; %码元宽度是 0.5usdt=Ts/L;df=1/(N*dt); %MHzRT=0.5; %占空比T=N*dt ; %截短时间9Bs=N*df/2; %系统带宽t=-T/2+dt/2:dt:T/2; %时域横坐标f=-Bs+df/2:df:Bs; %频域横坐标figure(1)set(1,Position,10,50,300,200)%设定窗口位置及大小figure(2)set(2,Position,350,50,300,200)%设定窗口位置及大小EPAMI=zeros(size(f);EPHDB=zeros(size(f);

11、for ii=1:8ami=zeros(1,M);hdb=zeros(1,M);a=round(rand(1,M);b=3;%表示 0000 之间循环个数c=-1;%记载相邻 V 之间的 1 元素个数sign1=-1; %标志前一个信号sign2=-1; %标志前一个信号for ii=1:Mif a(ii)=1sign1=0-sign1;ami(ii)=sign1;endendfor ii=1:Mif b=3 %表示非 0000if a(ii)=1 10sign2=0-sign2;hdb(ii)=sign2; if c=0 %表示不是第一个 0000c=c+1; %用来计算相邻 v 之间的非

12、0 元素个数endelseif ii=M-3 else %B00Vsign2=0-sign2;hdb(ii)=sign2;hdb(ii+3)=sign2;endc=0;b=0;endelseif b3 %对 0000 的循环b=b+1;endendfor i=1:Lami1(i+0:M-1*L)=ami;hdb1(i+0:M-1*L)=hdb;endAMI=T2F(ami1);PAMI=AMI.*conj(AMI)/T;11HDB=T2F(hdb1);PHDB=HDB.*conj(HDB)/T;EPAMI=(EPAMI*(ii-1)+PAMI)/ii;EPHDB=(EPHDB*(ii-1)+P

13、HDB)/ii;figure(1)aa=30+10*log10(EPAMI+eps);%加 eps 以避免除以零bb=30+10*log10(EPHDB+eps);plot(f,aa,g);gridaxis(-8,+8,-80,80)xlabel(f (MHz)ylabel(AMIPs(f) (dBm/MHz)figure(2)plot(f,bb,b);gridaxis(-8,+8,-80,80)xlabel(f (MHz)ylabel(HDBPs(f) (dBm/MHz)figure(3)subplot(3,1,1)tt=1:40;stem(tt,a(1:40),g)title(原始 RNZ

14、 信号)subplot(3,1,2)stem(tt,ami(1:40),g)title(AMI 信号)subplot(3,1,3)12stem(tt,hdb(1:40),g)title(HDB 码)end%将下面的代码保存在 t2f.m 文件中function X=t2f(x)global dt df N t f T%X=t2f(x)%x 为时域的取样值矢量%X 为 x 的傅氏变换%X 与 x 长度相同,并为 2 的整幂。%本函数需要一个全局变量 dt(时域取样间隔)H=fft(x);X=H(N/2+1:N),H(1:N/2)*dt;end五 仿真图1314六 结果分析HDB3(High De

15、nsity Binary3)码的全称是 3 阶高密度双极性码。它是 AMI 码的一种改进型,主要是为了克服 AMI 码中连“0”时所带来的提取定时信息的困难。HDB3 编码规则是:先把消息代码中的“1”交替变成“1”和“1” , “0”仍然保持“0”不变的 AMI 码 ,然后去检查 AMI 码的连“0”的情况 ,当没有 4 个和 4 个以上连“0”串时 ,这样的 AMI 码就是 HDB3 码 ;当出现 4 个和 4 个以上连“0”串时,则将每 4 个连“0”的小段的第 4 个“0”变换成与其前一个非零符号相同极型的符号,并用“V”和“V”表示若此“V”使后面的序列破坏了“极性交替反转” 的原则

16、,则将出现直流分量。故需要保证相邻“V”的符号也是极性相反,所以,当不满足 V 也极性相反时,将这个连“0” 码无串的等一个“0” 变成“B”和“B” 。 “B”的符号与前一个非“0”码的符号相反,并且让后面的非“0” 码元符号从“V” 码开始再交替变化。HDB3 码译码比较容易,从收到的符号序列中可以容易地找到破坏点 V,于是也断定 V 符号及其前面 3 个符号必是连 0 符号,从而恢复 4 个连 0 码,再将所有的-1 变成+1 后便得到原消息代码。下面用例题来进一步说明编码与译码的原理:例:求序列101100000100000000对应的 HDB3码。 编码译码步骤如下:找出四连0序列

17、; 用特殊序列代替连0 序列,第一个特殊序列可任意选择如选择100V。将“1”和“ V”标上极性 “1 ”或“1” 。输入数据中的“1 ”和特殊序列中的“1”作为一个整体极性交替,第一个“1 ”的极性可任意选择如选择 “1” 。第一1 0 1 0 11 0 1 1 0 V0 10 0 V1 0 V- 0 + -+ 0 +0 -0 0 -+ 0 +例 5.2 图( a) 输 入 的 二 进 制 序 列( b) 用 特 殊 序 代 替 00( c) 编 码 输 出 序 列 0 0 0 0 011 0 1 15个特殊序列中的“V“与其前第一个“1”的极性相同,后面的 “V”依次极性交替。 根据上面步

18、骤列出系列各式以及画图,实现 HDB3码的编码。通过译码原理可知:V 码与 B 码的极性相同,我们可以对这个输出码从后开始译码,自然而然的可以得到原输入的序列,此时,编码与译码就完成了。另外说明:1.由于第一个特殊序和第一个“1”的极性均可任意选择,所以同一数字信息序列的 HDB3 可有四种不同的形式。2.当编码的序列足够长时,我们的编码与译码过程中更容易得到规律。以上的程序便是综合了 HDB3 的编码译码以及对于其仿真的全部过程,此是经过了本组成员的反复修改最终制作而成,对于 HDB3 的编译码有了更加深入的了解。七 参考资料1郭文彬,桑林编著,通信原理-基于 Matlab 的计算机仿真,北京邮电大学出版社,20062曹志刚,钱亚生,现代通信原理,清华大学出版社,2002 年3郭仕剑等,MATLAB 7.x 数字信号处理,人民邮电出版社, 2006 年4张辉,曹丽娜编著,通信原理学习指导,西安电子科技大学,200312345678910112131415161718t0bTbT2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报