En la comunicación en serie de datos digitales, la recuperación del reloj es el proceso de extracción de información de sincronización de un flujo de datos en serie, lo que permite determinar con precisión la sincronización de los datos en el flujo sin información de reloj separada. Se utiliza ampliamente en comunicaciones de datos ; el concepto similar utilizado en sistemas analógicos como la televisión en color se conoce como recuperación de portadora .
Los datos en serie se envían normalmente como una serie de pulsos con restricciones de tiempo bien definidas. Esto presenta un problema para el lado receptor; si su propio reloj local no está sincronizado con precisión con el transmisor, pueden muestrear la señal en el momento equivocado y, por lo tanto, decodificar la señal incorrectamente. Esto se puede solucionar con relojes extremadamente precisos y estables, como los relojes atómicos , pero estos son caros y complejos. Los sistemas de reloj de bajo costo más comunes, como los osciladores de cuarzo , son lo suficientemente precisos para esta tarea durante períodos cortos de tiempo, pero durante un período de minutos u horas, la deriva en estos sistemas hará que la sincronización sea demasiado imprecisa para la mayoría de las tareas.
La recuperación del reloj resuelve este problema incorporando información del reloj en el flujo de datos, lo que permite determinar la sincronización del reloj del transmisor. Esto normalmente toma la forma de señales cortas insertadas en los datos que se pueden ver fácilmente y luego se utilizan en un bucle de enganche de fase u oscilador ajustable similar para producir una señal de reloj local que se puede utilizar para sincronizar la señal en los períodos entre las señales de reloj. La ventaja de este enfoque es que se puede compensar una pequeña desviación en el reloj del transmisor, ya que el receptor siempre lo igualará, dentro de ciertos límites.
El término se utiliza con mayor frecuencia para describir la transmisión de datos digitales, en cuyo caso toda la señal es adecuada para la recuperación del reloj. Por ejemplo, en el caso de los primeros módems de 300 bit/s , la sincronización de la señal se recuperaba a partir de las transiciones entre las dos frecuencias utilizadas para representar el binario 1 y 0. Como algunos datos pueden no tener ninguna transición, una larga cadena de ceros, por ejemplo, se añaden bits adicionales a la señal, los bits de inicio y de parada. Esto garantiza que haya al menos dos transiciones cada 1 ⁄ 30 de segundo, lo suficiente para permitir que el receptor configure con precisión su oscilador local.
El concepto básico también se utiliza en una variedad más amplia de campos, incluidos los usos no digitales. Por ejemplo, el pionero Wireless Set Number 10 utilizó la recuperación de reloj para muestrear correctamente las señales de voz de modulación de código de pulsos (PCM) analógicas que transportaba.
Otro ejemplo de este concepto se utiliza en los sistemas de televisión en color . La información de color se transmite a una frecuencia muy específica que puede variar de una estación a otra. Para que los receptores coincidan con precisión con la frecuencia portadora del transmisor , este envía una breve ráfaga de la señal en el espacio no utilizado antes del inicio de una línea de exploración. Esta señal de ráfaga de color se utiliza para alimentar un oscilador local en el televisor, que luego utiliza esa señal local para decodificar la información de color en la línea. En estos ejemplos, el concepto se conoce como recuperación de portadora .
Algunas transmisiones de datos digitales, especialmente las transmisiones de datos en serie de alta velocidad (como la transmisión de datos sin procesar del cabezal magnético de una unidad de disco y las redes de comunicación en serie como Ethernet ) se envían sin una señal de reloj que las acompañe . El receptor genera un reloj a partir de una referencia de frecuencia aproximada y luego alinea la fase del reloj con las transiciones en la transmisión de datos con un bucle de enganche de fase (PLL). Este es un método para realizar un proceso conocido comúnmente como recuperación de reloj y datos (CDR). Otros métodos incluyen el uso de un bucle de enganche de retardo y el sobremuestreo de la transmisión de datos. [1]
El sobremuestreo se puede realizar a ciegas utilizando múltiples fases de un reloj de funcionamiento libre para crear múltiples muestras de la entrada y luego seleccionar la mejor muestra. O bien, se puede utilizar un contador que sea impulsado por un reloj de muestreo que funcione a un múltiplo de la frecuencia del flujo de datos, con el contador reiniciado en cada transición del flujo de datos y el flujo de datos muestreado a un recuento predeterminado. Estos dos tipos de sobremuestreo a veces se denominan espacial y temporal respectivamente. [ cita requerida ] La mejor relación de error de bit (BER) se obtiene cuando las muestras se toman lo más lejos posible de cualquier transición del flujo de datos. [2] Si bien la mayoría de los diseños de sobremuestreo que utilizan un contador emplean una frecuencia de reloj de muestreo que es un múltiplo par del flujo de datos, un múltiplo impar es más capaz de crear un punto de muestreo más alejado de cualquier transición del flujo de datos y puede hacerlo a casi la mitad de la frecuencia de un diseño que utiliza un múltiplo par. En los CDR de tipo sobremuestreo, la señal utilizada para muestrear los datos se puede utilizar como reloj recuperado.
La recuperación del reloj está muy relacionada con el problema de la recuperación de la portadora , que es el proceso de recrear una versión bloqueada en fase de la portadora cuando se utiliza un esquema de modulación de portadora suprimida . Estos problemas se abordaron por primera vez en un artículo de 1956, que introdujo un método de recuperación del reloj ahora conocido como bucle de Costas . [3] Desde entonces, se han desarrollado muchos métodos adicionales.
Para que este esquema funcione, un flujo de datos debe realizar transiciones con la frecuencia suficiente para corregir cualquier desviación en el oscilador del PLL. El límite de tiempo durante el cual una unidad de recuperación de reloj puede funcionar sin una transición se conoce como su especificación de dígitos idénticos consecutivos máximos (CID). Para garantizar transiciones frecuentes, se utiliza algún tipo de señal de sincronización automática , a menudo una codificación de longitud de ejecución limitada ; la codificación 8b/10b es muy común, mientras que la codificación Manchester cumple la misma función en las revisiones antiguas de las redes de área local 802.3 .