基于VHDL语言和可编程逻辑器件实现HDB3编译码器的设计.docx
《基于VHDL语言和可编程逻辑器件实现HDB3编译码器的设计.docx》由会员分享,可在线阅读,更多相关《基于VHDL语言和可编程逻辑器件实现HDB3编译码器的设计.docx(6页珍藏版)》请在第一文库网上搜索。
1、基于VHD1语言和可编程逻辑器件实现HDB3编译码器的设计1、引言HDB3(HighDensityBiPO1ar三阶高密度双极性)码是在AM1码的基础上改进的一种双极性归零码,它除具有AM1码功率谱中无直流分量,可进行差错自检等优点外,还克服了AMI码当信息中出现连“0”码时定时提取困难的缺点,而且HDB3码频谱能量主要集中在基波频率以下,占用频带较窄,是ITU-TG.703推荐的PCM基群、二次群和三次群的数字传输接且码型,因此HDB3码的编解码就显得极为重要了。目前,HDB3码主要由专用集成电路及相应匹配的外围中小规模集成显来实现,但集成程度不高,特别是位同步提取非常复杂,不易实现。随着可
2、编程器件的发展,这一难题得到了很好地解决。本文利用现代EDA设计方法学和VHD1语言及模块化的设计方法,设计了适合于FPGA实现的HDB3编译码器的硬件实现方案。不但克服了分立硬件电路带来的抗干扰差和不易调整等缺陷,而且具有软件开发周期短,成本低,执行速度高,实时性强,升级方便等特点。2、HDB3编解码原理要了解HDB3码的编码规则,首先要知道AMI码的构成规则,AMI码就是把单极性脉冲序列中相邻的“1”码(即正脉冲)变为极性交替的正、负脉冲。将“0”码保持不变,把“1”码变为+1、-1交替的脉冲。如:NRZ码:IOOOOIOOOOI1OOOOIIAMI码:TOOOO+10000T+10000
3、T+1HDB3码是一种AM1码的改进型,它的编码原理可简述为,在消息的二进制代码序列中:(1)当连“0”码的个数不大于3时,HDB3编码规律与AM1码相同,即“1”码变为“+1”、“T”交替脉冲;(2)当代码序列中出现4个连“0”码或超过4个连“0”码时,把连“0”段按4个“0”分节,即“0000”,并使第4个“0”码变为“1”码,用V脉冲表示。这样可以消除长连“0”现象。为了便于识别V脉冲,使V脉冲极性与前一个“1”脉冲极性相同。这样就破坏了AM1码极性交替的规律,所以V脉冲为破坏脉冲,把V脉冲和前3个连“0”称为破坏节“000V”;(3)为了使脉冲序列仍不含直流分量,则必须使相邻的破坏点V
4、脉冲极性交替;(4)为了保证前面两条件成立,必须使相邻的破坏点之间有奇数个“1”码。如果原序列中破坏点之间的“1”码为偶数,则必须补为奇数,即将破坏节中的第一个0码变为“1”,用B脉冲表示。这时破坏节变为“B的V”形式。B脉冲极性与前一“1”脉冲极性相反,而B脉冲极性和V脉冲极性相同。如:NRZ码:IOOOO1OOOO11OOOO11AM1码:T0000+10000T+10000T+1HDB3码:-1000T+1000+V-1+1-B00-V+1-1虽然HDB3码的编码规则比较复杂,但译码却比较简单。从上述原理看出:每一个破坏符号V总是与前一非0符号同极性(包括B在内)。这就是说,从收到的符号
5、序列中可以容易地找到破坏点V,于是也断定V符号及其前面的3个符号必是连0符号,从而恢复4个连0码,再将所有T变成+1后便得到原消息代码。3、编解码器设计3.1编码器设计由于VHD1不能处理负电平,只能面向“1”、“0”两种状态,所以要对它的输出进行编码,如表1所示。编码的实现是根据HDB3编码原理把二进制码编码成两路单极性的码字输出,之后经过单双变换模块形成HDB3码。在编码过程中,要经过连0检测、破坏节判断、破坏节间“1”的个数判断、调整“1”的符号输出等步骤,编码部分可分为4个模块,编码流程如图1所示。在进行HDB3编码器的设计时,需注意以下两个问题:(1)考虑将某些“0”改为“1”用一个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VHDL 语言 可编程 逻辑 器件 实现 HDB3 译码器 设计
