villa在学习通信原理课程,其中有一个知识点,即为HDB3编码,她怎么也弄不明白,作为ACMer 你能帮帮她吗?
AMI码就是把单极性脉冲序列中相邻的“1”码(即正脉冲)变为极性交替的正、负脉冲。将“0”码保持不变,把“1”
码变为+1、-1交替的脉冲。如:
消息码: 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码(3nd Order High Density Bipolar)的全称是三阶高密度双极性码,它是AMI码的一种改进型,改进目的是为
了保持AMI码的优点而克服其缺点,使连“0”个数不超过3个。其编码规则:
(1)检查消息码中连“0”的个数。当连“0”数目小于等于3时,HDB3码与AMI码一样(“1”交替的变换为“+1”和
“-1”,“0”保持不变)。
(2)当连“0”数目超过3时,将每4个连“0”化作一小节,定义为“B00V"称为破坏节,其中V称为破坏脉冲,而B称
为调节脉冲;
(3)V与前一个相邻的非“0”脉冲的极性相同(这破坏了极性交替的规则,所以V称破坏脉冲),并且要求相邻的V码
之间极性必须交替。V的取值为“+1”或“-1”;
(4)B的取值可选0、+1或-1,(当B取+1的时候用+B表示,B取-1的时候用-B表示,B取0时用0表示)以使V同时满足(3)
中的两个要求;
(5)除去V码以外的非零码(即1码和B码)的极性交替。
我们规定编码后第一个非零码元为-1,第一个B的值为0。且给定的消息码中第一个码元为1.
例如:
消息码: 1 000 0 1 000 0 1 1 000 0 000 0 1 1
AMI码: -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
(样例解释:根据规则3,第三个V极性为负,而其前面的非零码1的极性为正,所以添加-B调节,使其同时满足规则3的两个条件。)