HDB3编码.docx

上传人:b****5 文档编号:6927582 上传时间:2023-01-12 格式:DOCX 页数:12 大小:213.43KB
下载 相关 举报
HDB3编码.docx_第1页
第1页 / 共12页
HDB3编码.docx_第2页
第2页 / 共12页
HDB3编码.docx_第3页
第3页 / 共12页
HDB3编码.docx_第4页
第4页 / 共12页
HDB3编码.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

HDB3编码.docx

《HDB3编码.docx》由会员分享,可在线阅读,更多相关《HDB3编码.docx(12页珍藏版)》请在冰豆网上搜索。

HDB3编码.docx

HDB3编码

1、引言

数字基带信号的传输是数字通信系统的重要组成部分之一。

特别是HDB3码的使用,其不但保持AMI码的优点,更使连0串的个数减到至多0个的优点,而且还克服了AMI码的关于可能出现长连0串而造成提取定时信号困难的缺点。

基于上述的特点HDB3码在通信传输领域应用很广泛,因此其作为CCITT推荐使用的码型之一。

本课程设计的主要工作是HDB3码的编码的建模与实现,对于HDB3编码模块,一般以硬件的方式来实现的。

但它具有产品更新慢、设计灵活性差、不可重配置及现场升级性能缺乏等缺点。

因此拟采用可编程逻辑电路来实现。

可编程逻辑电路是EDA的一个重要技术基础,主要包括FPGA和CPLD,它们具有丰富的可重配置逻辑资源,既包含有大量实现组合逻辑的资源;还包含有相当数量的触发器,因此采用EDA技术进行电子系统的设计有以下优点:

(1)系统可现场编程,在线升级;

(2)用软件的方式设计硬件;

(3)整个系统可集成在一个芯片上,体积小、功耗低、可靠性高;

(4)用软件方式设计的硬件系统的转换是由有关的开发软件自动完成,降低了系统设计的难度。

2、VHDL语言的介绍

常用的硬件描述性语言有VHDL、Verilog和ABEL语言。

VHDL语言起源于美国国防部的VHSIC,VHDL是一种高级描述语言,适用于行为级和RTL级的描述相对与Verilog语言和ABEL语言这些较低一级的适合描述门级电路的描述性语言而言,其具有以下的优点:

⒈设计方法灵活、支持广泛

⒉系统硬件描述能力强

⒊VHDL语言描述与工艺不发生关系

⒋VHDL语言标准、规范,易于共享和复用

基于上述的特点,可知VHDL语言可读性好,又能被计算机识别。

VHDL语言中设计实体、程序包、设计库,为设计人员重复利用已有的设计提供了诸多技术手段。

可重复利用他人的IP模块和软核也是VHDL的另一特色,许多设计不必每次都从头再来,只要在更高层次上把IP模块组合起来,就能达到事半功倍的效果。

这样,设计人员自行开发的IP模块在集成电路设计中占有重要的地位。

因此本课程设计采用VHDL语言设计一个完善的HDB3码编码器。

3、HDB3码介绍

数字基带信号

数字基带信号的传输是数字通信系统的重要组成部分之一。

在数字通信中,有些场合可不经过载波调制和解调过程,而对基带信号进行直接传输。

为使基带信号能适合在基带信道中传输,通常要经过基带信号变化,这种变化过程事实上就是编码过程。

于是,出现了各种各样常用码型。

不同码型有不同的特点和不同的用途。

在基带传输中,常用的码型有AMI码、HDB3码、4B/3T码、CMI码以及双相码等。

其中,AMI码是将输入单极性波形的所有正脉冲变为适合于在信道传输的正负极性交替的脉冲,而HDB3码则是在AMI码基础上改进的一种双极性归零码,它除具有AMI码功率谱中无直流分量,可进行差错自检等优点外,还克服了AMI码当信息中出现连“0”码时定时提取困难的缺点,同时HDB3码频谱能量主要集中在基波频率以下,占用频带较窄,因此被广泛用作PCM线路传输码型,因此要了解HDB3码的编码规则,首先要知道AMI码的构成规则。

AMI码称为传号交替反转码。

其编码规则为代码中的0仍为传输码0,而把代码中1交替地变化为传输码的+1-1+1-1,、、、。

举例如下:

消息代码:

01110010、、、

AMI码:

0+1-1+100-10、、、或

0-1+1-100+10、、、

AMI码的特点:

(1)无直流成分且低频成分很小,因而在信道传输中不易造成信号失真。

(2)编码电路简单,便于观察误码状况。

(3)由于它可能出现长的连0串,因而不利于接受端的定时信号的提取。

这种码型在数字通信中用得很多,HDB3码是AMI码的改进型,称为三阶高密度双极性码。

它克服了AMI码的长连0传现象。

作为传输用的基带信号归纳起来有如下要求:

(1)希望将原始信息符号编制成适合与传输用的码型;

(2)对所选码型的电波形,希望它适宜在信道中传输,可进行基带传输的码型较多。

,AMI,HDB3码之间的对应关系

假设信息码为0000011000010000,对应的NRZ码、AMI码,HDB3码如图1所示:

图1NRZ,AMI,HDB3码型图

分析表现,AMI码及HDB3码的功率谱不含有离散谱fS成份(fS=1/TS,等于位同步信号频率)。

在通信的终端需将他们译码为NRZ码才能送给数字终端机或数/模转换电路。

在做译码时必须提供位同步信号。

工程上,一般将AMI或HDB3码数字信号进行整流处理,得到占空比为的单极性归零码(RZ|τ=)。

由于整流后的AMI,HDB3码中含有离散谱fS,故可用一选频网络得到频率为fS的正弦波,经整形、限幅、放大处理后即可得到位同步信号。

4、HDB3码编码器的建模与实现

HDB3码的编码规则

HDB3码是一种AMI码的改进型,它的编码过程为:

(1)没有4个或4个连“0”串时,HDB3编码规律与AMI码相同,即“1”码变为“+1”、“-1”交替脉冲。

(2)当代码序列中出现4个或4个以上连“0”串时,则将每4个连“0”小段即“0000”的第4个0变换成与前一非“0”符号同极性的符号,用破坏符号V表示。

(3)为了使附加V符号后的序列不破坏“极性交替反转”造成的无直流特性,还必须保证相邻V符号也应极性交替。

这一点,当相邻V符号之间有奇数个非0符号时,则是能得到保证,当有偶数个非0符号时,则就得不到保证,这时再将该小段的第一个0变换成+B或-B,B符号的极性与前一非0符号的极性相反,并让后面的非0符号从V符号开始再交替变换。

基于VHDL的编码器的建模及实现

编码器的VHDL建模

图2HDB3码编码器模型

如图所示:

整个HDB3码的编码器包括3个功能部分:

添加破坏符号“V”、添加符号“B”和单极性码转变成双极性码。

基于VHDL编码器的实现

加破坏符号“V”模块的功能实际上就是对消息代码里的四个连0串的检测,即当出现四个连0串的时候,把第四个“0”变换成符号“V”,而在其他的情况下,则保持消息代码的原样输出,同时为了区别代码“1”、“V”和“0”,在添加破坏符号“V”时,用“11”标识符号“V”,用“01”标识符号“1”,用“00”标识符号“0”。

因此,添加破坏符号“V”的设计思想如下:

首先判断输入的代码是什么,如果输入的符号是“0”码,则接着判断这是第几个“0”码,如果是第四个“0”码,则把这个“0”码变换成“V”码。

在其他的情况下,让原码照常输出。

程序流程图如图3所示:

图3添加破坏符号“V”符号流程图

假设输入某信息序列,根据设计思想,输入代码一添加破坏符号“V”后的关系如下:

信息序列:

0011

添加破坏符号V后:

00000101

图4计数流程图

图5V点跟踪流程图

添加符号“B”的实现

根据HDB3码的编码规则可知:

添加破坏符号“V”模块的功能是为了

证附加“V”符号后的序列不破坏“极性交替反转”造成的无直流特性,即当相邻“V”符号之间有偶数个非0符号的时候,把后一小段的第一个“0”变换成一个非破坏符号——“B”符号。

具体是在编码输出过程中实现的。

图6编码输出流程图

根据这个设计思想,输入代码与插“V”及插“B”后的代码的关系如下:

代码:

100001000011000011

插V后:

010000001101000000110101000000110101

插B后:

010000001101000000110101100000110101

编码中单/双极性转换的实现

根据HDB3码的编码规则,可知“V”的极性是正负交替变换的,而余下的“1”和“B”本毕业设计把其看成为一体且是正负交替变换的,同时满足“V”的极性与前面的非零码极性一致。

由此本设计就把“1”和“B”看成一组,而“V”单独作为一组来做正负交替变换。

同时,已知“1”、“V”,“B”已经分别用双相码“01”,“11”,“10”标识,所以对“1”,“V”,“B”的正负交替变换很容易实现。

具体也是在编码输出时实现。

HDB3码编码器完整源程序

------HDB3码编码器

------输出相对于输入延时了五个脉冲周期

libraryieee;

usehdb3_codingis

port(data_in:

instd_logic;

clock:

instd_logic;

data_out:

outstd_logic_vector(1downto0));

endhdb3_coding;

architecturertlofhdb3_codingis

signalreg:

std_logic_vector(3downto0);

signalparity:

std_logic;--记录破坏点间1码个数的奇偶性

signaljudge_v:

std_logic;--判断是否有破坏符

signalgrant_cnt:

std_logic;--允许开始计算破坏点间的1码个数

signallast_sign:

std_logic;--上一输出的符号

signalv_cnt:

std_logic_vector(2downto0);--v点位置跟踪计数器

begin

process(clock)--移位寄存器,插V

begin

ifrising_edge(clock)then

ifdata_in='0'andreg(3downto1)="000"then

reg<=(reg(3downto1)&’1’);judge_v<='1';grant_cnt<='1';

elsereg<=data_in®(3downto1);judge_v<='0';grant_cnt<='0';

endif;

endif;

endprocess;

process(clock)--计数

begin

ifrising_edge(clock)then

ifgrant_cnt='1'anddata_in='0'thenparity<='0';

elsifgrant_cnt='1'anddata_in='1'thenparity<='1';

elsifdata_in='1'thenparity<=notparity;

endif;

endif;

endprocess;

process(clock)--V点跟踪

begin

ifrising_edge(clock)then

ifjudge_v='1'thenv_cnt<="000";

elsifv_cnt="111"thenv_cnt<=v_cnt;

elsev_cnt<=v_cnt+1;

endif;

endif;

endprocess;

process(clock)--编码输出

begin

ifrising_edge(clock)then

ifreg(0)='1'then

ifv_cnt<="010"then

iflast_sign='1'thendata_out<="11";

elsedata_out<="01";

endif;

elsiflast_sign='1'thendata_out<="01";last_sign<=notlast_sign;

elsiflast_sign='0'thendata_out<="11";last_sign<=notlast_sign;

endif;

elsifjudge_v='1'andparity='0'then

iflast_sign='1'thendata_out<="01";last_sign<=notlast_sign;

elsedata_out<="11";last_sign<=notlast_sign;

endif;

elsedata_out<="00";

endif;

endif;

endprocess;

endrtl;

HDB3码编码器的波形仿真及分析

图7输入全“0”时编码输出

图8输入全“0”时占用

图9输入全“1”时编码输出

图10输入全“1”时占用

图11输入“000”时编码输出

图12输入“000”时占用

图13输入“000”时延时分析

由仿真波形可以得出:

CODEIN:

00000000000000000000……

CODEOUT:

0000000001……

CODEIN:

111……

CODEOUT:

0000000000011101……

CODEIN:

000110000

CODEOUT:

000000000000000001

从图7、图9、图11可知,其输出的代码与根据HDB3码编码原理算出来的代码完全一致。

波形仿真成功。

总结与心得

本次课程设计内容丰富,涉及的知识面较广。

在设计前期,通过查找资料为设计准备,使我对所学专业方面的许多知识又温习了一遍,许多以前很模糊、很孤立的部分知识通过这次设计得以贯穿,而且掌握得更加地稳固了;此外,通过这次课程设计,在软件编程方面,使我了解到了自己的许多不足之处,通过查找参考资料和指导老师耐心的辅导,使我对使用VHDL语言有了一定的掌握。

但在设计过程中也出现了不少问题,设计前期在利用MAXPLUSII软件工具对HDB3数字编码器的程序进行编译时,由于工程名和实体名不一致使得编译无法进行。

通过这次课程设计,我不仅加深了对通信原理理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。

同时,更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。

设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

参考文献

[1]樊昌信,张甫翎,徐炳祥,吴成柯.通信原理[M]国防工业出版社,

[2]王虹.通信系统原理[M]国防工业出版社,

[3]谭会生,张昌凡.EDA技术及应用[M]西安科技大学出版社,2004.4

[4]段吉海,黄智伟.基于CPLD/FPGA的数字通信系统建模与实现[M]电子工业出版社,2004.5

[5]王乐毅.EDA设计技术与方法(Ⅱ)PLD与EDA工具[J]青岛化工学院学报,2001

[6]林敏,方颖立.VHDL数字系统设计与高层次综合[M]电子工业出版社,2002

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1