Los códigos AMI modificados son una técnica de telecomunicaciones digitales para mantener la sincronización del sistema . Los códigos de línea de inversión de marca alternativa (AMI) se modifican mediante la inserción deliberada de violaciones bipolares . Existen varios tipos de códigos AMI modificados, que se utilizan en varios sistemas de portadora T y portadora E.
La frecuencia de reloj de una portadora T entrante se extrae de su código de línea bipolar. Cada transición de señal proporciona una oportunidad para que el receptor vea el reloj del transmisor. El código AMI garantiza que las transiciones siempre estén presentes antes y después de cada marca (1 bit), pero que falten entre los espacios adyacentes (0 bits). Para evitar la pérdida de sincronización cuando hay una cadena larga de ceros en la carga útil , se insertan violaciones bipolares deliberadas en el código de línea, para crear una cantidad suficiente de transiciones para mantener la sincronización; esta es una forma de codificación de longitud de ejecución limitada . El equipo terminal receptor reconoce las violaciones bipolares y elimina de los datos del usuario las marcas atribuibles a las violaciones bipolares.
El portador T se desarrolló originalmente para aplicaciones de voz. Cuando las señales de voz se digitalizan para su transmisión a través del portador T, el flujo de datos siempre incluye suficientes bits 1 para mantener la sincronización. (Para ayudar a esto, el algoritmo de ley μ para digitalizar señales de voz codifica el silencio como un flujo continuo de bits 1). Sin embargo, cuando se utiliza para la transmisión de datos digitales , el código de línea AMI convencional puede no tener suficientes marcas para permitir la recuperación del reloj entrante y se pierde la sincronización. Esto sucede cuando hay demasiados ceros consecutivos en los datos de usuario que se transportan.
El patrón exacto de violaciones bipolares que se transmite en un caso determinado depende de la velocidad de línea ( es decir , el nivel del código de línea en la jerarquía de portadoras T ) y de la polaridad de la última marca válida en los datos del usuario antes de la cadena inaceptablemente larga de ceros. No sería útil tener una violación inmediatamente después de una marca, ya que eso no produciría una transición. Por este motivo, todos los códigos AMI modificados incluyen un espacio (bit 0) antes de cada marca de violación.
En las descripciones que se muestran a continuación, " B " indica una marca de equilibrio con la polaridad opuesta a la de la marca anterior, mientras que " V " indica una marca de violación bipolar, que tiene la misma polaridad que la marca anterior. Para preservar la deseable ausencia de polarización de CC de la codificación AMI , la cantidad de marcas positivas debe ser igual a la cantidad de marcas negativas. Esto sucede automáticamente para las marcas de equilibrio ( B ), pero el código de línea debe garantizar que las marcas de violación positivas y negativas se equilibren entre sí.
La primera técnica utilizada para asegurar una densidad mínima de marcas fue la supresión de código cero , una forma de relleno de bits , que establecía el bit menos significativo de cada byte de 8 bits transmitido en un 1. (Este bit ya no estaba disponible debido a la señalización de bits robados ). Esto evitaba la necesidad de modificar el código AMI de cualquier manera, pero limitaba las velocidades de datos disponibles a 56.000 bits por segundo por canal de voz DS0 . Además, la baja densidad mínima de unos (12,5 %) a veces conducía a un mayor deslizamiento del reloj en el lapso.
La mayor demanda de ancho de banda y la compatibilidad con los estándares G.703 y ISDN PRI , que exigían 64.000 bits por segundo, hicieron que este sistema fuera sustituido por el B8ZS.
Comúnmente utilizado en el código de línea norteamericano T1 ( Señal digital 1 ) de 1,544 Mbit/s, el bipolar con sustitución de ocho ceros (B8ZS) reemplaza cada cadena de 8 ceros consecutivos con el patrón especial " 000VB0VB ". Dependiendo de la polaridad de la marca precedente, podría ser 000+−0−+ o 000−+0+− .
En la velocidad T2 de América del Norte (6,312 Mbit/s), se insertan violaciones bipolares si aparecen 6 o más ceros consecutivos. Este código de línea se denomina bipolar con sustitución de seis ceros (B6ZS) y reemplaza 6 ceros consecutivos con el patrón " 0VB0VB ". Según la polaridad de la marca anterior, podría ser 0+−0−+ o 0−+0+− .
El código bipolar de alta densidad de orden 3 (HDB3), que se utiliza en todos los niveles del sistema europeo de portadoras electrónicas , reemplaza cualquier instancia de 4 bits 0 consecutivos con uno de los patrones " 000V " o " B00V ". La elección se realiza para garantizar que las violaciones consecutivas sean de polaridad diferente, es decir, separadas por un número impar de marcas + o − normales .
Estas reglas se aplican al código a medida que se construye a partir de la cadena original. Cada vez que haya 4 ceros consecutivos en el código, se reemplazarán por 000−, 000+, +00+ o −00−. Para determinar qué patrón utilizar, se debe contar la cantidad de signos más (+) y la cantidad de signos menos (−) desde el último bit de violación V, luego restar uno del otro. Si el resultado es un número impar, se utiliza 000− o 000+. Si el resultado es un número par, se utiliza +00+ o −00−. Para determinar qué polaridad utilizar, se debe observar el pulso que precede a los cuatro ceros. Si se debe utilizar la forma 000V, entonces V simplemente copia la polaridad del último pulso, si se debe utilizar la forma B00V, entonces B y V elegidos tendrán la polaridad opuesta del último pulso.
A continuación se muestran algunos ejemplos de códigos de flujo de bits con AMI y HDB3. Todos asumen las mismas condiciones iniciales: el bit 1 anterior era − y la violación anterior fue un número par de bits 1 atrás. (Por ejemplo, los bits anteriores podrían haber sido ++−).
En la velocidad T3 de América del Norte (44,736 Mbit/s), se insertan violaciones bipolares si se producen 3 o más ceros consecutivos. Este código de línea se denomina bipolar con sustitución de tres ceros (B3ZS) y es muy similar a HDB3. Cada serie de 3 ceros consecutivos se reemplaza por " 00V " o " B0V ". La elección se realiza para garantizar que las violaciones consecutivas sean de polaridad diferente, es decir, separadas por un número impar de marcas B normales .
Otros códigos de línea que tienen 3 estados:
Este artículo incorpora material de dominio público de la Norma Federal 1037C. Administración de Servicios Generales . Archivado desde el original el 22 de enero de 2022.