thumb|350px|Maska nieramkowanego sygnału PCM kodowanego za pomocą kodu HDB3, wzór "wszystkie jedynki". HDB3 () – używane w telekomunikacji kodowanie liniowe oparte na kodzie AMI, stosowane głównie w Japonii, Europie i Australii (na przykład w europejskich traktach E1 i następnych). Bardzo podobne do kodowania B8ZS wykorzystywanego w amerykańskich traktach T1.
W polskich liniach przesyłowych stosuje się kod HDB3 głównie przy przesyle sygnałów PDH przy przepływnościach 2, 8 i 34 Mbit/s. Przy przepływności 140 Mbit/s wykorzystywany jest kod CMI.
Metoda Kod HDB3 zamienia 4 kolejne bity o wartości 0 ciągiem 000V lub B00V. Wyboru odpowiedniego ciągu dokonuje się w celu, aby kolejne złamania kodowe (wielokrotne występowanie tego samego symbolu – tutaj zer, ang. violation) miały różną polaryzację, czyli oddzielone były nieparzystą liczbą znaków + i −. W praktyce powoduje to utrzymanie połączenia pomiędzy nadawcą, a odbiorcą w czasie kodowania dużej liczby zer, która może wyglądać jak zakończenie nadawania. To podejście przedstawia poniższa tabela:
{|class=wikitable style="text-align:center;" ! Liczba bitów +/−od ostatniego V !! width="50" | Ciąg !! Impulspoprzedzający !! width="50" | Kod |- |rowspan=2| parzysta || rowspan="2" | B00V | + || −00− |- | − || +00+ |- |rowspan=2| nieparzysta || rowspan="2" | 000V | + || 000+ |- | − || 000-
W efekcie każde 4 kolejne bity o wartości 0 są zastępowane jednym z ciągów: 000−, 000+, +00+ lub −00−. Aby określić który ciąg musi być użyty, należy zliczać znaki + i − od ostatniego wystąpienia bitu V. Jeśli ich liczba jest parzysta, to użyty będzie ciąg +00+ lub −00−, a jeśli nieparzysta, to 000− lub 000+. Wiedząc jaki jest znak polaryzacji impulsu poprzedzającego 4 kolejne zera można dokładnie określić jaki ciąg musi być użyty. W przypadku 000V następuje skopiowanie tego znaku polaryzacji w miejsce V, a w przypadku B00V w miejsce B i V wprowadzane są impulsy o odwrotnej polaryzacji niż impuls poprzedzający.
Przykład kodowania HDB3
Przy ciągu binarnym składającym się z bitów: 1 1 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 0 1 0 0 0 0
po zastosowaniu kodu HDB3 - + 0 - 0 0 0 V + 0 0 0 V - + B 0 0 V + - + 0 0 0 V - + - + B 0 0 V + 0 - B 0 0 V
otrzymuje się - + 0 - 0 0 0 - + 0 0 0 + - + - 0 0 - + - + 0 0 0 + - + - + - 0 0 - + 0 - + 0 0 +
W przypadku kodowania kodem AMI wynik byłby następujący: - + 0 - 0 0 0 0 + 0 0 0 0 - + 0 0 0 0 - + - 0 0 0 0 + - + - 0 0 0 0 + 0 - 0 0 0 0 Zobacz też
kod modulacja
Linki zewnętrzne Techniki kodowania High Density Bipolar Order 3 Encoding (w języku angielskim) HDB3 Code (w języku angielskim)
Kategoria:Kody liniowe