Kodowanie

Kod HDB3

Kod bipolarny wysokiej gęstości z 3 zerami, ulepszenie AMI unikające długich sekwencji zer.

Długie sekwencje zer w kodzie AMI

ogranicza składową stałą, gdy jedynki są reprezentowane naprzemiennymi impulsami dodatnimi i ujemnymi. Długa, nieprzerwana sekwencja zer (000000...000000...) tworzy stały przedział o napięciu zero.

Odbiornik wykorzystuje przejścia sygnału do zestrojenia zegara z taktowaniem nadajnika. Podczas przedziału o napięciu zero brak przejść może zwiększyć błąd taktowania. HDB3 zastępuje wybrane sekwencje zer impulsami bipolarnymi i zachowuje regułę równoważenia kodu AMI.

HDB3: bipolarny kod wysokiej gęstości z limitem trzech zer

HDB3 jest zmodyfikowanym kodem AMI określonym w zaleceniu ITU-T G.703 dla interfejsu 2048 kbit/s używanego w systemach E1E1. Zwykłe jedynki reprezentuje naprzemiennymi impulsami, a sekwencje czterech zer zastępuje określonymi wzorcami. Zalecenie definiuje sygnał jako pseudotrójpoziomowy. Poza blokami zastępczymi zera pozostają zerami, a jedynki przyjmują naprzemiennie polaryzację dodatnią i ujemną.

  • Bipolarny kod wysokiej gęstości: Wykorzystuje poziomy +V, 0 i -V oraz reguły zastępowania sekwencji zer.
  • Limit trzech zer: Zastąpienie zapobiega wystąpieniu więcej niż trzech kolejnych symboli zero w sygnale wyjściowym.

Poza blokiem czterech zer HDB3 stosuje reguły AMI. Zastąpienie określa wstawiany impuls B oraz naruszenie AMI oznaczane jako V.

Reguły zastępowania w HDB3

Gdy koder napotyka cztery kolejne zera (00000000), zastępuje ten blok jednym z dwóch czteroelementowych wzorców: 000V albo B00V. Czwarty symbol wzorca jest zawsze V, więc dekoder może rozpoznać zastąpienie i odtworzyć cztery zera.

Impulsy B i V

  • Impuls V (Violation, naruszenie): Ten impuls niezerowy (+V lub -V) łamie regułę naprzemiennej polaryzacji AMI. Impuls V ma taką samą polaryzację jak bezpośrednio poprzedzający go impuls niezerowy. Dekoder rozpoznaje go jako element zastąpienia sekwencji zer.
  • Impuls B (bipolarny): Ten impuls niezerowy (+V lub -V) zastępuje pierwsze zero w sekwencji B00VB00V. Impuls B spełnia regułę naprzemiennej polaryzacji AMI i wpływa na wybór wzorca ograniczającego składową stałą.

Wybór wzorca z ograniczeniem składowej stałej

Koder wybiera 000V albo B00V, aby kolejne impulsy V miały naprzemienną polaryzację. Reguła HDB3 utrzymuje nieparzystą liczbę impulsów B między kolejnymi naruszeniami.

Reguła: Po wcześniejszym impulsie V koder kontroluje parzystość zwykłych impulsów niezerowych przed kolejnym blokiem zer. Nieparzysta liczba wybiera 000V, a parzysta B00V. Pierwszy blok zależy także od początkowego stanu zastępowania kodera. W tym przykładzie przyjęto 000V. Impuls B z bieżącego wzorca sprawia, że liczba impulsów między kolejnymi V pozostaje nieparzysta.

Nieparzysta liczba impulsów

Sekwencja 00000000 jest zastępowana przez 000V. Impuls V narusza regułę AMI, powtarzając polaryzację ostatniego impulsu niezerowego.

Parzysta liczba impulsów

Sekwencja 00000000 jest zastępowana przez B00V. Impuls B spełnia regułę AMI, a impuls V powtarza polaryzację impulsu B.

Przykład kodowania HDB3 krok po kroku

Zakodujmy następujący strumień binarny: 10100001100001010000110000

  1. Wejście 11: Ostatni impuls: brak. Przyjmujemy ++. Odwrócenie początkowej polaryzacji odwróciłoby wszystkie symbole niezerowe bez zmiany odkodowanych bitów.
    Zakodowano: +
  2. Wejście 00: Brak zastąpienia.
    Zakodowano: + 0
  3. Wejście 11: Ostatni impuls był ++. Zmieniamy na −-.
    Zakodowano: + 0 -
  4. Wejście 00000000: Pierwsze zastąpienie.
    Dla pierwszego bloku przyjmujemy wzorzec 000V000V, który kończy się symbolem VV.
    Poprzedni impuls niezerowy to −-.
    Naruszenie powtarza jego polaryzację.
    Zakodowano: + 0 - 0 0 0 -
  5. Wejście 11: Ostatni impuls to VV o polaryzacji −-. Zmieniamy na ++.
    Zakodowano: + 0 - 0 0 0 - +
  6. Wejście 11: Ostatni impuls był ++. Zmieniamy na −-.
    Zakodowano: + 0 - 0 0 0 - + -
  7. Wejście 00000000: Kolejne zastąpienie.
    Od ostatniego zastąpienia (000V000V) poprzedni VV ma ujemną polaryzację, a następnie występują 2 zwykłe impulsy (++ i −-).
    Jest to liczba PARZYSTA.
    Wzorzec: użyj B00VB00V. Impuls BB zmienia polaryzację ostatniego impulsu −-, dlatego BB ma znak ++.
    Polaryzacja VV powtarza BB, więc VV ma znak ++.
    Zakodowano: + 0 - 0 0 0 - + - + 0 0 +

Końcowy zakodowany sygnał: + 0 - 0 0 0 - + - + 0 0 +

Powiązane artykuły