Codice AMI modificato - Modified AMI code
I codici AMI modificati sono una tecnica di telecomunicazioni digitali per mantenere la sincronizzazione del sistema . I codici di riga alternate mark inversion (AMI) vengono modificati mediante l'inserimento deliberato di violazioni bipolari . Esistono diversi tipi di codici AMI modificati, utilizzati in vari sistemi T-carrier ed E-carrier .
Panoramica
La frequenza di clock di una portante T in arrivo viene estratta dal suo codice di linea bipolare. Ogni transizione di segnale offre al ricevitore l'opportunità di vedere l'orologio del trasmettitore. Il codice AMI garantisce che le transizioni siano sempre presenti prima e dopo ogni indicatore (1 bit), ma mancano tra spazi adiacenti (0 bit). Per evitare la perdita di sincronizzazione quando nel payload è presente una lunga stringa di zeri , nel codice di linea vengono inserite violazioni bipolari intenzionali, per creare un numero sufficiente di transizioni per mantenere la sincronizzazione; questa è una forma di codifica a lunghezza limitata . L' apparecchiatura terminale di ricezione riconosce le violazioni bipolari e rimuove dai dati utente i segni attribuibili alle violazioni bipolari.
T-carrier è stato originariamente sviluppato per applicazioni vocali. Quando i segnali vocali vengono digitalizzati per la trasmissione tramite portante T, il flusso di dati include sempre 1 bit sufficiente per mantenere la sincronizzazione. (Per aiutare questo, l' algoritmo μ-law per la digitalizzazione dei segnali vocali codifica il silenzio come un flusso continuo di 1 bit.) Tuttavia, quando viene utilizzato per la trasmissione di dati digitali , il codice di linea AMI convenzionale potrebbe non avere segni sufficienti per consentire il ripristino dell'orologio in arrivo e la sincronizzazione viene persa. Ciò accade quando ci sono troppi zeri consecutivi nei dati utente trasportati.
Il modello esatto di violazioni bipolari che viene trasmesso in un dato caso dipende dalla velocità di linea ( cioè , il livello del codice di linea nella gerarchia della portante T ) e dalla polarità dell'ultimo contrassegno valido nei dati utente prima del inaccettabile lunga stringa di zeri. Non sarebbe utile avere una violazione immediatamente dopo un contrassegno, poiché ciò non produrrebbe una transizione. Per questo motivo, tutti i codici AMI modificati includono uno spazio (0 bit) prima di ogni segno di violazione.
Nelle descrizioni seguenti, " B " indica un segno di bilanciamento con polarità opposta a quella del segno precedente, mentre " V " indica un segno di violazione bipolare, che ha la stessa polarità del segno precedente. Per preservare l'auspicabile assenza di polarizzazione DC della codifica AMI , il numero di segni positivi deve essere uguale al numero di segni negativi. Ciò avviene automaticamente per i segni di bilanciamento ( B ), ma il codice di riga deve garantire che i segni di violazione positivi e negativi si bilanciano a vicenda.
Soppressione del codice di lunghezza zero
La prima tecnica utilizzata per garantire una densità minima di contrassegni era la soppressione del codice zero, una forma di riempimento di bit , che impostava il bit meno significativo di ciascun byte a 8 bit trasmesso a 1. (Questo bit non era già disponibile a causa della segnalazione di bit rubati .) Ciò ha evitato la necessità di modificare il codice AMI in alcun modo, ma ha limitato le velocità di trasmissione dati disponibili a 56.000 bit al secondo per canale vocale DS0 . Inoltre, la bassa densità minima di quelli (12,5%) a volte portava a un aumento dello slittamento dell'orologio sullo span.
La maggiore richiesta di larghezza di banda e la compatibilità con gli standard G.703 e ISDN PRI che richiedevano 64.000 bit al secondo, hanno portato questo sistema a essere sostituito da B8ZS.
B8ZS (T1 nordamericano)
Comunemente utilizzato nel codice di linea nordamericano T1 ( segnale digitale 1 ) da 1,544 Mbit / s, bipolare con sostituzione a otto zeri (B8ZS) sostituisce ogni stringa di 8 zeri consecutivi con il modello speciale " 000VB0VB ". A seconda della polarità del segno precedente, potrebbe essere 000 + −0− + o 000− + 0 + - .
B6ZS (T2 nordamericano)
Alla velocità T2 nordamericana (6,312 Mbit / s), vengono inserite violazioni bipolari se si verificano 6 o più zeri consecutivi. Questo codice di linea è chiamato bipolare con sostituzione a sei zeri (B6ZS) e sostituisce 6 zeri consecutivi con il modello " 0VB0VB ". A seconda della polarità del segno precedente, potrebbe essere 0 + −0− + o 0− + 0 + - .
HDB3 (E-carrier europeo)
Utilizzato in tutti i livelli del sistema E-carrier europeo , il codice bipolare ad alta densità di ordine 3 (HDB3) sostituisce qualsiasi istanza di 4 bit 0 consecutivi con uno dei pattern " 000V " o " B00V ". La scelta è fatta per garantire che le violazioni consecutive siano di polarità diversa; cioè separati da un numero dispari di normali segni + o - .
| Parità di +/- bit dalla V precedente |
Modello | Impulso precedente | Codificato |
|---|---|---|---|
| Anche | B00V | + | −00− |
| - | +00+ | ||
| Dispari | 000V | + | 000+ |
| - | 000- |
Queste regole vengono applicate al codice mentre viene creato dalla stringa originale. Ogni volta che ci sono 4 zeri consecutivi nel codice saranno sostituiti da 000−, 000+, +00+ o −00−. Per determinare quale modello utilizzare, è necessario contare il numero di più (+) e il numero di meno (-) dall'ultimo bit di violazione V, quindi sottrarre uno dall'altro. Se il risultato è un numero dispari, viene utilizzato 000− o 000+. Se il risultato è un numero pari, viene utilizzato +00+ o −00−. Per determinare quale polarità usare, si deve guardare all'impulso che precede i quattro zeri. Se deve essere usata la forma 000V allora V copia semplicemente la polarità dell'ultimo impulso, se deve essere usata la forma B00V allora B e V scelti avranno la polarità opposta dell'ultimo impulso.
Esempi
Di seguito sono riportati alcuni esempi di codici di flussi di bit con AMI e HDB3. Tutti assumono le stesse condizioni di partenza: il precedente 1 bit era - e la violazione precedente era un numero pari di 1 bit fa. (Ad esempio, i bit precedenti avrebbero potuto essere ++ -.)
| Ingresso | 10000110 2 |
| AMI | + 0000− + 0 |
| HDB3 | + B00V− + 0 |
| + −00 - + - 0 |
| Ingresso | 101000001100001100000001 2 |
| AMI | + 0−00000 + −0000 + −0000000 + |
| HDB3 | + 0−000V0 + −B00V− + B00V000 + |
| + 0−000−0 + - + 00 + - + - 00−000 + |
| Ingresso | 1010000100001100001110000111100001010000 2 |
| AMI | + 0−0000 + 0000− + 0000 - + - 0000 + - + - 0000 + 0−0000 |
| HDB3 | + 0-000V + 000V- + B00V - + - 000V + - + - B00V + 0-B00V |
| + 0-000- + 000 + - + - 00 - + - + 000 + - + - + - 00- + 0- + 00 + |
| Ingresso | 10000000000 2 |
| AMI | +000000000 |
| HDB3 | + B00VB00V00 |
| + -00- + 00 + 00 |
B3ZS (T3 nordamericano)
Alla velocità T3 nordamericana (44,736 Mbit / s), vengono inserite violazioni bipolari se si verificano 3 o più zeri consecutivi. Questo codice di linea è chiamato bipolare con sostituzione a tre zero (B3ZS) ed è molto simile a HDB3. Ogni serie di 3 zeri consecutivi viene sostituita da " 00V " o " B0V ". La scelta è fatta per garantire che le violazioni consecutive siano di polarità diversa, cioè separate da un numero dispari di segni B normali .
| Numero di bit B dall'ultimo V |
Modello | Polarità dell'ultimo B |
Codificato |
|---|---|---|---|
| Dispari | 00V | + | 00+ |
| - | 00− | ||
| Anche | B0V | + | −0− |
| - | +0+ |
Guarda anche
Altri codici di riga che hanno 3 stati:
- Codifica bipolare o inversione del segno alternativo
- Codice ternario ibrido
- Codifica MLT-3
- 4B3T
Questo articolo incorpora materiale di pubblico dominio tratto dal documento della General Services Administration :
"Federal Standard 1037C" .