三階高密度雙極性碼
三階高密度雙極性碼(英語:High Density Bipolar of Order 3,簡稱:HDB3碼)是一種適用於基頻傳輸的編碼方式,應用於電信領域[1]。它是為了克服AMI碼的缺點而出現的,具有能量分散,抗破壞性強等特點。
![HDB3編碼](http://images.weserv.nl/?url=//upload.wikimedia.org/wikipedia/commons/thumb/6/63/AMI%2C_HDB3_%281%29.jpg/400px-AMI%2C_HDB3_%281%29.jpg)
簡短定義
HDB3碼基於AMI碼。在AMI碼中,連續的二進制零序列會使得編碼的自時鐘(self-clocking)資訊遺失[2]。為了避免這種情況的發生HDB3碼將AMI碼中四個連續的二進制0使用違反AMI碼規定的極性的脈波(+1或-1)來取代。
替換表
自上一次替換以來脈波(+1或-1)的個數 | ||
上一個脈波的極性 | 奇(000V) | 偶(B00V) |
負 | 000- | +00+ |
正 | 000+ | -00- |
註:除了V位之外,其餘所有的脈波必須符合AMI極性交替的規定。
例子
由二進制序列 100001102 編碼而成的HDB3碼為 +000+−+0 (相應的AMI碼為 +0000−+0)。這是因為在四個連續的二進制0之前的唯一一個脈波的極性為正,故應在000+或者−00−中進行選擇。而又由於之前並沒有做過替換操作,且在被替換序列之前的脈波個數為奇數,故最終選擇了000+對其進行替換。
由二進制序列 10100000110000110000002 編碼而成的HDB3碼為 +0−+00+0−+−00−+−+00+00 (對應的AMI碼為 +0−00000+−0000+−000000)。第一組共五個連續的二進制0,然而只有前四個會被替換。而被替換序列之前的最後一個脈波為負,被替換序列之前脈波的個數為偶數(+1與−1各一個),故最終選擇+00+對其進行替換。緊隨其後的第一個脈波必須符合AMI碼極性正負交替的規定,故為負。
由二進制序列 1100000000102 編碼而成的HDB3碼為 +−+00+−00−+0 (對應的AMI碼為 +−00000000+0)。值得注意的是第二組連續的四個二進制零,在前一次替換操作之後,最後一個脈波的極性為正,中間沒有任何脈波(個數為0,偶數),故選用−00−進行替換。