通信原理HDB3编码与译码课程设计.docx
《通信原理HDB3编码与译码课程设计.docx》由会员分享,可在线阅读,更多相关《通信原理HDB3编码与译码课程设计.docx(18页珍藏版)》请在冰点文库上搜索。
通信原理HDB3编码与译码课程设计
课程设计I(数据通信原理)
设计说明书
HDB3编码与译码的设计与仿真
学生姓名
赵嘉伟
学号
1318064006
班级
网络工程1301班
成绩
指导教师
贾伟
数学与计算机科学学院
2015年9月12日
课程设计任务书
2015—2016学年第1学期
课程设计名称:
课程设计Ⅱ
课程设计题目:
HDB3编码与译码的设计与仿真
完成期限:
自2015年8月11日至2015年9月11日共2周
设计内容:
一、任务说明
1.使用Matlab/Simulink仿真软件。
2.设计所选择的基带传输的编码和译码系统。
3.系统能根据随机信源输入的二进制信息序列给出对应的编码及译码结果,并以图形化的方式显示出波形。
4.能观察各分系统的各级波形。
二、要求
1)对课本知识的全面复习,了解基带编码与译码原理;
2)掌握使用matlab语言及其工具箱进行基本信号分析与处理的方法。
3)用matlab和simulink设计一个通信系统,加深对通信原理基本原理和matlab应用技术的理解;
4)对MATLAB仿真软件的学习,能够使用该工具进行基带编码和译码的仿真验证;
5)通过团队合作,完成编码与译码的设计,并用MATLAB软件进行仿真验证;
6)课程设计的结果全面正确,功能模块清晰分明;
7)加强团队合作精神,开拓创新能力;
8)文档资料完整规范。
指导教师:
教研室负责人:
课程设计评阅
评语:
指导教师签名:
年月日
摘要
本课程设计是应用MATLAB软件,实现对信源的HDB3编码及译码的仿真。
设计采用MATLAB中Simulink下的模块实现对信源码的V码及加B码,然后再采用AMI编码方式实现最终的HDB3编码。
之后再按照逆推的思想来实现HDB3码的译码工作。
关键词:
MATLAB;HDB3;V码;B码;编码;译码
1.课题设计的内容
1.1数字基带信号码型设计原则
数字基带信号是数字信息的电脉冲表示,电脉冲的形式称为码型。
通常把数字信息的电脉冲表示过程称为码型编码或码型变换。
由码型还原为数字信息称为码型译码。
不同的码型具有不同的频域特性,合理的设计码型使之适合于给定信息的传输特性,是基带传输首先要考虑的问题。
通常,再设计数字基带信号码型时应考虑以下原则。
1)码型中低频,高频分量尽量少。
2)码型中应包含定是信息,以便定是提取。
3)码型变换设备要定时可靠。
4)码型具有一定检错能力,若传输码型有一定的规律性,就可根据这一规律性来检测传输质量,以便做到自动检测。
5)编码方案对发送消息类型不应有任何限制,适合于所有二进制信号。
这种与信源的统计特性无关的特性称为对信源具有透明性。
6)低误码增殖,误码增殖是指单个数字传输错误在接收端解码时,造成错误码元的平均个数增加。
从传输质量要求出发,希望他越小越好。
7)高的编码效率。
8)以上几点并不是任何基带传输码型均能完全满足的,常常是根据实际要求满足其中的一部分。
HDB3码是三元码,是把1位二进制信码变换成1位三电平均值的码。
码型有无直流的特点,而且同步信息丰富。
使用Matlab/Simulink仿真软件,设计所选择的基带传输的编码和译码系统。
系统能根据随机信源输入的二进制信息序列给出对应的编码及译码结果,并以图形化的方式显示出波形,能观察各分系统的各级波形。
最后根据课设的内容和设计的结果,书写课程设计说明书一份(按格式书写)。
说明书中要求画出整个系统框图、各点波形,并说明工作原理。
在图中表示出各点波形。
系统能测试其各分系统波形的频谱特性,在图中表示出各点频谱。
根据通信原理,并分析说明各个模块的参数。
1.2编码原理
HDB3码是三阶高密度双极性码,可看做AMI码的一种改进。
使用这种码型的目的是解决源信码中出现连0串时所带来的问题,其编码原理是这样的:
先把消息变成AMI码,然后检查AMI码的连0情况,如果没有3个以上的连0串,那么这时的AMI码与HDB3码完全相同。
当出现4个或4个以上的连0串时,则将4个连0串的第4个0变换成1码。
这个由0码变换来的1码称为破坏脉冲,用符号V表示;而原来的二进制1码称为信码,用符号B表示。
当信码序列中加入脉冲以后,信码B和破坏脉冲V的正负极性必须满足以下两个条件。
(1)B码和V码各自都应始终保持极性交替变换的规律,以便确定输出码中没有直流成分。
(2)V码必须与前一个信码同极性,以便和正常的AMI码区分开来。
但是当两个V码之间的信码B的数目是偶数是,以上两个条件就无法满足,此时应该把后面的那个V码所在的连0串中的第一个0变为补信码B',即4个连0串变为B'00V,其中B'的极性与前面相邻的B码极性相反,V码的极性与B'的极性相同。
如果两V码之间的B码数目是奇数,就不再加补信码B'。
在接收端译码时,由两个相邻的同极性码找到破坏脉冲V,从V码开始向前连续4个码(包括V码)变为4连0.经全波整流后可恢复原单极性码。
HDB3的优点是无直流成分,低频成分少,即使有长连0码时也能提取同步信息;缺点是编译码电路比较复杂。
1.3译码原理
译码的关键是寻找破坏脉冲(V码)。
若3连0的前后非零脉冲同极性,则后面的非零脉冲就是V码,讲000V译为0000;若2连0的前后非零脉冲同极性,即为B00V形式,将其译为0000。
然后,再将其余所有-1或+1译为1,即可恢复原来信码。
HDB3码保留了AMI码的优点,切实连0个数不超过4,有利于信息的提取。
2.课程设计的目的与要求
2.1课程设计的目的
课程设计是网络工程专业的实践性环节之一,是一门理论性和实践性都很强的、面向实际应用的课程。
通过本课程的学习,学生应该掌握基本的通信设计方法,通过实践使学生明白通信过程中的相关HDB3的编码与译码原理,更加深入了解HDB3的编译码过程的实现。
2.2课程设计的要求
根据相关通信原理资料和课程讲解,综合MATLAB相关知识,设计仿真系统,使其能够实现HDB3的编码及译码功能。
在编码及译码过程中,所产生的信源码使随机可变的,并且编码与译码是分开的,能够进行独立测试。
3.HDB3编码模块设计
3.1编码原理
根据HDB3的编码原理设计编码原理图(如图3.1)。
其主要模块有四个连“0”判断器、“B”码产生器、“V”码产生器和AMI编码器。
图3.1
HDB3的编码模块如图所示:
图3.2
3.2四个连“0”的判断
此判断器是用单位采样延迟器、或门电路及信号复用Switch来设计的。
四连“0”检测器电路原理图如图3.3所示。
当四个连“0”出现时,经过或门电路,产生“0”信号。
启动触发Switch,使其切换到“1”的信号,并且将结果反馈到接下来的信号中,以避免对某一些“0”信号的重复计数并进行下次四连“0”的判断;反之,如果没有没有出现四连“0”,在经过或门电路时,产生的是“1”信号弹,不能触发Switch,使其输出是“0”信号。
图3.3
3.3“B”码产生器
从HDB3码的编码规则可知,替代四连“0”码组的特殊序列可能是“000V”,也能是“B00V”,具体用哪个特殊序列去代替,要看它之前特殊序列后的“1”码的个数,当“1”码个数为偶数时,用“B00V”代替,当“1”码个数为奇数时,则用“000V”去代替。
因此,“B”码产生器要对每个特殊序列后的“1”码个数进行判别,用判别结果控制“B”码的产和与否。
“B”码产生模块如图3.4所示。
四个连“0”检测器模块的输出既作为脉冲触发信号,又作为一路被复用的信号。
并且在此过程中应用一位计数器Counter来计数,检测“1”信号的个数(这里主要是检测“1”信号是偶数个还是奇数个,以决定是否加“B”码)。
对于In1来说,由于前边四连“0”判断,这里要3个周期的延迟以达到与In2的信号同步。
在后面经过Sum使得与延迟信号合路,最终生成“V”码。
之后是AMI编码,并且运用TriggeredSubsystem来实现归零变不归零。
具体AMI编码在以后小节再具体介绍。
图3.4
3.4“V”码产生器
由于代替四连“0”组的特殊序列中都含有“V”脉冲,即每检测到一个四连“0”组,都要产生一个“V”脉冲,因此,图3.5中四个连“0”与一个定时脉冲相乘即为一个“V”码产生器。
后面模块同样也是AMI编码模块。
由于为保持与后面信号同步的原因,这里的“V”码也延迟3个周期。
图3.5
图3.6
“V”码与“B”码的测试结果如上图,图3.6所示。
其中:
波形1为源码;波形2为“V”码,延迟3个周期;波形3为“B”码与源码相加后所得,延迟三个周期。
3.5AMI码编码器
当AMI码编码器输入“0”码时,输出“0”电平,当输入“1”码时,交替地输出正负脉冲。
AMI码编码器模块如图3-0-7所示。
单极性输入信号为“1”时使用Counter模块计数,使它们分别产生所需脉冲的正脉冲和负脉冲。
对于某个输入“1”码到底输出是正脉冲还是负脉冲则由Counter及Relay所决定。
图3.7
4.HDB3译码模块设计
HDB3码译码的设计原理如下图所示:
图3.8
5.HDB3编译码的仿真及结果
5.1仿真系统中模块参数设置:
随机信源(由于是对HDB3的编译码,所以设置参数时“0”出现的概率为时80%。
为了让实验结果更明显,这里设置Sampletime:
0.5):
图5.1
单位采样延迟器的参数设计如图5.2所示:
图5.2
图5.3
图5.4
图5.5
图5.6
图5.7
图5.8
5.2仿真实验结果
图5.9
6.总结
虽然这次课程设计的时间只有短暂的2周,任务原则是设计,实则却是对课本知识的巩固和对MATLAB软件的跟深入了解、熟悉和应用。
通过这次课程设计,使对以往知识的疏漏得以补充,为以后的学习打下了更加坚实的基础。
课程设计是对所学知识的复习和巩固,是团队协作共同努力才能完成的一项任务,不但更加清楚地了解到一些实际与理论的差距,而且还培养了熟练使用资料,运用工具书的能力,把所学到的知识与实践结合起来,起到了温故而知新的作用。
在设计的过程中,通过不断的去发现错误,不断地去改正,去领悟,去获取。
在指导老师的帮助下,此次课程设计终于游逆而解,很多专业知识及专业技能不断地提升,对抽象的理论也有了更为具体的认识。
通过不断地查资料,与指导老师沟通,解决了课程设计中所面临的很多困难和问题,起初对一些专有名词的模糊认识也有了更为清楚的了解。
回顾起此课程设计,从理论到模型的初建与整合,再到实践,可以说整日都深深的陷入其中,虽说忙绿,但这不但学到了很多课本上根本无法触及到的知识,巩固了以前所学到的知识,增进了同学之间的合作与联系,而且让时间过得更加充实有意义。
课程设计不但考察了你对知识的熟练度,更多的事对团队精神考验,是每个人都懂得了只有团队的共同合作才能更好更有效地完成一项任务,更为深刻的了解到了,只有把理论与实践结合起来,从实践中得出真理,才能突显出知识的作用,从而提高自己的实际动手能力和独立思考能力。
参考文献
[1]张水英.徐伟强.通信原理及MATLAB/Simulink仿真[M].人民邮电出版社,2012.
[2]刘卫国.MATLAB程序设计教程[M].北京:
中国水利水电出版社,2005.
[3]樊昌信.曹丽娜.通信原理[M].北京:
国防工业出版社,2008.