Nelle telecomunicazioni la codifica HDB3 è una codifica di tipo RZ (Return to Zero) dei dati di comunicazione. Essa è una Codifica di linea di tipo AMI (Alternate Marking Inversion) in quanto prevede di trasmettere un livello 0 per ogni zero logico e per ogni 1 logico trasmettere +1 o -1 alternativamente. Infatti l'acronimo sta per High Density Bipolar code su 3 livelli, appunto 0, +1 e -1.

Politica delle sostituzioni

modifica

Per consentire la decodifica del clock di trasmissione da parte del ricevitore, in trasmissione si applicano correzioni nel caso si intendano trasmettere più di tre zeri logici consecutivi: in tali casi si aggiunge durante la codifica una "violazione bipolare" (ad esempio due impulsi della stessa fase non intervallati da variazione) che consenta al ricevitore una sostituzione adeguata. Esiste una tabella che descrive tali sostituzioni:

Numero di polarità dispari Numero di polarità pari
Polarità del precedente impulso Positiva
000+
-00-
Polarità del precedente impulso Negativa
000-
+00+

Ad esempio, nella seguente tabella vi è un esempio di codifica con tutte le variazioni possibili:

stringa binaria
001
0000
11
0000
11
0000
1
0000
HDB3
00+
000+
-+
-00-
+-
+00+
-
000-