Codifica HDB3
# Codifica HDB3

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

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- |
