【HDB3的全称 】High Density Bipolar of order 3code,三阶高密度双极性码。
【HDB3的编码规则】
一、编码规则:
1 先将消息代码变换成AMI码,若AMI码中连0的个数小于4,此时的AMI码就是HDB3码;
2 若AMI码中连0的个数大于3,则将每4个连0小段的第4个0变换成与前一个非0符号(+1或-1)同极性的符号,用表示(+1+,-1-);
3 为了不破坏极性交替反转,当相邻符号之间有偶数个非0符号时,再将该小段的第1个0变换成+B或-B,符号的极性与前一非零符号的相反,并让后面的非零符号从符号开始再交替变化。
例如:
消息代码: 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1
AMI码: +1 0 0 0 0 -1 0 0 0 0 +1 -1 0 0 0 0 +1 -1
HDB3码:+1 0 0 0 +V -1 0 0 0 -V +1 -1 +B 0 0 +V -1 +1
上面由前人编辑的编码与本人所学教材(《通信原理(第3版)》北京邮电大学出版社)一致,但操作起来每每生出许多曲折之处,譬如1的符号后来怎么变的,或者8个0连时又是怎么样,都未详解。因此本人将自己所发现的简易编法写出,如有雷同,实属幸事。
原理:HDB3码既要包含AMI的交替特性使输出无直流特性,又要不出现四个以上的连0,因此可以先满足后者。
1.把"0000"换为取代节。
规则:先将"0000"分离开来,第一个"0000"直接变为"000V",然后数相邻两个"0000"之间"1"的个数,奇数则变为"000V",偶数则变为" B00V"。
2.更新符号。
根据教材有:B总是与其前面的1或V符号相反,V总是与前面的1或B相符号相同,1总是与前面的V或B符号相反,就可以编符号了。
例如:
消息代码:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1
中间码: 1 0 0 0 V 1 0 0 0 V 1 1 B 0 0 V 1 1 B 0 0 V B 0 0 V 1 1 1 0 0 0 V 1
HDB3码:+1 0 0 0 +V -1 0 0 0 -V +1 -1 +B 0 0 + V -1 +1 -B 0 0 -V +B 0 0 +V -1 +1 -1 0 0 0 -V +1
二、HDB3码的特点:
1 由HDB3码确定的基带信号无直流分量,且只有很小的低频分量;
2 HDB3中连0串的数目至多为3个,易于提取定时信号。
3 编码规则复杂,但译码较简单。
三、解码规则
1从收到的符号序列中找到破坏极性交替的点,可以断定符号及其前面的3个符号必是连0符号,从而恢复4个连码;
2再将所有的-1变换成+1后,就可以得到原消息代码