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