MÉTODO Y APARATO PARA SUMAR MUESTRAS DE SEÑAL
ASINCRONA EN UNA TRAYECTORIA DE REGRESO DIGITAL
DE TELEVISIÓN POR CABLE
ANTECEDENTES DE LA INVENCIÓN La presente invención se relaciona en general con métodos y aparatos para digitalizar corrientes de datos múltiples, y más particularmente con un método y un aparato para digitalizar corrientes de datos múltiples que son geográficamente variadas . Los avances en los convertidores analógico a digital (A/D) han hecho de la trayectoria de regreso RF analógica digitalizada en un sistema de cable de Fibra Hibrida-Coaxial (HFC, por sus siglas en inglés) una alternativa atractiva para la transmisión analógica debido a que la transmisión digital relaja el requisito de láseres de transmisión lineal caros. Además, las técnicas modernas para el procesamiento de señal digital (DSP, por sus siglas en inglés) que se incorporan en dispositivos de hardware digital es configurable, que son conocidos como disposiciones de compuerta programables por campo (FPGA, por sus siglas en inglés), pueden realizar tareas de procesamiento que se hablan relegado anteriormente a
los dispositivos RF. Ejemplos de estas funciones incluyen, entre otros, agregar, filtrar, canalizar y desmodular señales. Mientras que las funciones de procesamiento de señal analógica tienen una contraparte digital, el proceso de digitalización introduce una flexibilidad y canjes adicionales que no tengan una contraparte analógica. Ejemplos simples podrían ser longitud de palabra digital (por ejemplo, un número de bits/muestra) y proporción de muestra. Una vez que el principal problema subsiste, éste es peculiar para la trayectoria de regreso digital de un sistema HFC. En este sistema, la trayectoria de regreso RF se podria digitalizar en el nodo y luego transmitirse digitalmente hacia el Centro y/o Sección de radiofrecuencia. Un problema se presenta cuando dos o más corrientes de señal digitalizada provenientes de diferentes nodos se agregarán conjuntamente, en particular si los nodos son geográficamente variados, y por lo tanto se someten a diferentes programas de mantenimiento y condiciones circundantes. Idealmente, se podrían muestrear dos corrientes de señal a idénticas proporciones de muestra y de esta forma se podrían sincronizar antes de ser sumadas.
Mientras que cada nodo podria tener frecuencias de reloj de muestreo idénticas generadas a partir de un oscilador de cristal, los osciladores adecuados desde un punto de vista de desempeño y económico para HFC pueden desplazar hasta cinco partes por millón durante el tiempo y temperatura. Para un oscilador de 100 MHz que se podria utilizar en una trayectoria de regreso de 5-40 MHz esto podria ser equivalente a un oscilador cuya variación de frecuencia real podria variar de 99.995 MHz hasta 100.005 MHz. La diferencia en el peor de los casos entre dos corrientes de datos digitales que se agregarán podria ser tanto como 10 kHz. Una vez más se debe considerar cuánto tiempo podria tomar la sincronización primero en primero fuera (FIFO, por sus siglas en inglés) para el desborde o sobre-flujo debido a la diferencia de proporción de muestras entre las dos corrientes de datos. Utilizando los números anteriores, esto se puede mostrar para que esté en el intervalo de 1-2 msec, dependiendo del tamaño de los compensadores FIFO. Esto podria dar por resultado en la pérdida de datos de trayectoria de regreso aproximadamente cada milisegundo, lo que da por resultado en un desempeño inaceptable.
Para mantener los FIFO equilibrados (es decir, la velocidad de datos de entrada igual a la velocidad de datos de salida) se podria dejar caer periódicamente una muestra de la entrada del FIFO para evitar que se desborde o repetir periódicamente una muestra en la salida del FIFO para evitar que se desborde. Sin embargo, a menos que las señales RF originales sean bastante sobre-muestreadas (por ordenes de magnitud), dejar caer o agregar periódicamente muestras introducirá un alto nivel de distorsión inaceptable de tal forma que los datos se degradarán de manera excesiva. La corriente de 10-bits A/D se pueden sincronizar hasta 105 MHz, lo cual es suficiente para satisfacer la teoria de muestreo Nyquist, aunque mucho menor que los ordenes de magnitud necesarios cuando se está muestreando una banda de regreso de 5 MHz a 40 MHz. Por lo tanto, la presente invención se dirige al problema de desarrollar un método y un aparato para digitalizar corrientes de datos múltiples cuyos relojes pueden variar debido al desplazamiento del oscilador.
SUMARIO DE LA INVENCIÓN La presente invención resuelve estos y otros
problemas al proporcionar un método y un aparato para digitalizar corrientes de datos múltiples que tienen diferentes relojes en los cuales el error debido al desplazamiento de reloj se expande a través de muchos ciclos de reloj en cantidades extremadamente pequeñas . De acuerdo con un aspecto de la presente invención, un método para combinar dos corrientes de datos interpola una o más muestras entre las muestras existentes de una de las dos corrientes de datos y luego ajusta un número de muestras a la una de las dos corrientes de datos para mantener el equilibrio en un compensador de sincronización corriente abajo. Esto se presenta antes de combinar las dos corrientes de datos. El ajuste se puede realizar al agregar o diezmar muestras provenientes de las muestras interpoladas . De acuerdo con otro aspecto de la presente invención, un aparato para combinar dos corrientes de datos incluye dos compensadores, un filtro de interpolación, un multiplexor, un controlador del compensador y un sumador. Un primero de los dos compensadores recibe una primera corriente de datos de las dos corrientes de datos y tiene su salida cronometrada mediante un primer reloj de muestra
asociado con la primera corriente de datos y tiene su salida cronometrada por el primer reloj de muestra. El filtro de interpolación recibe la segunda corriente de datos y da salida a una versión sobre-muestreada diezmada de la segunda corriente de datos. El multiplexor tiene su primera entrada acoplada a una salida del filtro de interpolación, recibe la segunda corriente de datos en su segunda entrada y da salida a una corriente de datos modificados. Un segundo de los dos compensadores recibe la corriente de datos modificados, y tiene su entrada cronometrada mediante un segundo reloj de muestra asociado con la segunda corriente de datos, tiene su salida cronometrada por el primer reloj de muestra. El segundo compensador incluye una salida del monitor de nivel. El controlador del compensador tiene una entrada acoplada a la salida del monitor de nivel del segundo compensador, tiene una primera salida que controla una salida del multiplexor, tiene una segunda salida que controla la salida del filtro polifacético interpolante y tiene una tercera salida que controla la salida del segundo compensador. El sumador entonces combina las salidas del primero y segundo compensador. De acuerdo todavía con otro aspecto de la
presente invención, un método para combinar dos corrientes de datos asincronos que tiene relojes desfasados en frecuencia consta de cuatro pasos. En primer lugar, una primera corriente de datos se cronometra en el interior y fuera de un primer compensador se utiliza un primer reloj asociado con la primera corriente de datos. En segundo lugar, una segunda corriente de datos se cronometra en el interior de un segundo compensador utilizando un segundo reloj asociado con la segunda corriente de datos y cronometrando la segunda corriente de datos fuera del segundo compensador utilizando el primer reloj. En tercer lugar, las muestras se interpolan en el interior y se diezman de las muestras de la segunda corriente de datos antes de cronometrar la segunda corriente de datos en el interior del compensador con base en un sobre-flujo o desborde del segundo compensador. Por último, se combinan las salidas del primero y segundo compensadores. Además de los cuatro pasos anteriores, una muestra proveniente del segundo compensador se puede dejar caer cuando un nivel del compensador del segundo compensador aumenta mediante una muestra, por ejemplo, al inhabilitar la escritura en el interior del segundo compensador cuando un nivel del
compensador del segundo compensador aumenta mediante una muestra. Además, se puede agregar una muestra al segundo compensador cuando un nivel del compensador del segundo compensador disminuye mediante una muestra, por ejemplo, al inhabilitar la lectura del segundo compensador cundo un nivel del compensador del segundo compensador aumenta mediante una muestra.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 representa un diagrama de bloques de una modalidad de ejemplos de un aparato de acuerdo con un aspecto de la presente invención. La Figura 2 representa un diagrama de flujo de una modalidad de ejemplo de un método de acuerdo con otro aspecto de la presente invención. La Figura 3, se muestra en una modalidad de ejemplo de un proceso de corrección de acuerdo con un aspecto de la presente invención. DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Es importante observar que cualquier referencia en la presente a "una de las modalidades" o "una modalidad" significa que se incluye un aspecto, estructura o característica particular descrito junto con la modalidad en al menos una modalidad de la invención. Las apariciones de la
frase "en una modalidad" en diversos lugares de la especificación no necesariamente todas hacen referencia a la misma modalidad. De acuerdo con un aspecto de la presente invención, se expone un método que permita que dos corrientes de datos se sumen de una forma que de por resultado en una degradación aceptable de las dos proporciones de muestra diferentes que se desfasan ligeramente debido a, por ejemplo, un desplazamiento normal de reloj . En un sentido, el método de la presente invención expande el error debido a la diferencia de desplazamientos de reloj a través de muchos ciclos de reloj al aplicar una cantidad extremadamente pequeña de error a través de aquellos muchos ciclos de reloj en lugar de un gran error durante un ciclo de reloj individual. De acuerdo con una modalidad de la presente invención, el método interpola (es decir, agrega más muestras ente muestras existentes) una de las dos corrientes de datos a través del uso de un filtro de interpolación, polifásico, modificado. Las muestras luego se agrega o se dejan caer según sea necesario para mantener un compensador de sincronización corriente abajo (por ejemplo, un FIFO), equilibrado. A medida que la salida del compensador corriente
abajo se cronometra por la corriente de datos interpolados, el equilibrio se alcanza al agregar o eliminar muestras a, o desde la corriente de datos interpolados. Como resultado, las dos corrientes se sincronizan para una totalización posterior. La corriente de datos interpolados luego se diezma (es decir, se eliminan muestras) a la proporción de muestra adicional y luego se alimenta en el FIFO de sincronización. Los datos luego se leen desde los dos FIFO, se suman conjuntamente, y se envían a la circuiteria de fibra óptica para su transmisión. La Figura 1 ilustra un diagrama de bloques de una modalidad de ejemplo 10 de un aparato para realizar la sincronización de la corriente de datos. La entrada de datos muestreados 1 en los puntos n por ciclo es la entrada a FIFOl 3 junto con el reloj de muestra 1, que se utiliza para sincronizar los datos en el interior de FIFOl 3 y sincronizar los datos fuera de FIFOl 3. La salida de FIFOl 3 se alimenta a una entrada del sumador 1, la salida de ese sumador 1 es los datos combinados que es la salida hacia el transmisor láser que es parte de la trayectoria de datos de regreso. La salida del FIFOl 3 es el dato muestreado en aproximadamente n puntos por ciclo. La entrada de datos muestreados 2 se
alimenta en una entrada de un multiplexor 5 y también en un filtro 11 interpolador polifásico modificado x m . Los dos relojes de muestra y las corrientes de datos son asincronos y hasta 10 partes por millón se desfasan en frecuencia. La salida del filtro 11 interpolador polifásico modificado x J? se alimenta a la segunda entrada del multiplexor 5. La salida del filtro 11 interpolador polifásico modificado x m es un dato muestreado diezmado en aproximadamente n puntos por ciclo. La salida del multiplexor 5 se alimenta en FIF02 2, cuya entrada se cronometra con el reloj de muestra 2. La salida de FIF02 2 se cronometra en una segunda entrada del sumador 1 mediante el reloj de muestra 1, que se utiliza para cronometrar la salida de la salida de FIFOl 3. Las salidas de cronómetro tanto de FIFOl 3 como FIF02 2 con el reloj 1 sincronizarán las dos corrientes de datos aunque FIF02 2 puede estar en desborde o sobre-flujo si el reloj de muestra 2 no es exactamente subrayado el mismo que el reloj 1. El monitoreo FIFO y el circuito control 4 funciona al vigilar el número de muestras en FIF02 2. Siempre y cuando el número de muestras en FIF02 2 esté entre los umbrales superior e inferior
establecidos, entonces el circuito de monitor 4 está en su estado normal. Si el número de muestras cae por debajo del umbral inferior, entonces el circuito del monitor 4 detecta un desborde y permite que el filtro polifásico 11 agregue muestras hasta que el número de muestras en FIF02 2 sea superior al umbral inferior nuevamente. Si el número de muestras en FIF02 2 aumenta por arriba del umbral superior, entonces el circuito del monitor 4 detecta un sóbreflujo y permite que el filtro polifásico 11 disminuya las muestras hasta que el número de muestras en FIF02 2 esté nuevamente por debajo del umbral superior. Cuando el monitoreo fijo y el circuito control 4 no detectan una condición de sobre-flujo o desborde, no es necesario ninguna corrección. Por lo tanto, se ajusta el multiplexor de entrada 5 para permitir que la entrada de datos 2 fluya directamente en FIF02 2. Regresando a la Figura 3, se muestra en la misma una modalidad de ejemplo de un proceso de corrección 30 de acuerdo con un aspecto de la presente invención. El proceso 30 inicia al detectar un número de muestras en el compensador (paso 31) . Cundo se detecta una sobre-flujo en el paso 32, el circuito del monitor 4 permite que el filtro
polifásico 11 disminuya una muestra. En el primer ciclo, el multiplexor de entrada (IMUX) 5 se ajusta a la entrada 2 (paso 32) . El multiplexor de entrada 5 se mantiene en este estado durante el resto del proceso de corrección. También en el primer ciclo, el multiplexor de filtro (FMUX) 6 se ajusta a la entrada 1 (paso 32) . Esto permite que el valor proveniente del filtro de Fase 1 (PF) 7 se cargue en FIF02 2. En el segundo ciclo, el multiplexor 6 del filtro se ajusta a la entrada 2. esto permite que el valor proveniente del filtro 8 de Fase 2 se cargue en FIF02 2. En cada ciclo sucesivo, la siguiente entrada superior del multiplexor de filtro 6 se selecciona de tal forma que los valores provenientes de cada uno de los filtros de fase se cargue en FIF02 2 (paso 33) . En el ciclo 256, el multiplexor de filtro 6 se ajusta a la entrada 256, y el valor proveniente del filtro 9 de fase 256 se carga en FIF02 2 (paso 34). En el ciclo 257, el multiplexor de entrada se ajusta a la entrada 1 y el primer multiplexor 6 se ajusta a la entrada 1 (paso 35) . También durante el ciclo 257, la estructura habilitada del FIF02 2 se deshabilita de tal forma que ningún valor se puede escribir en FIF02 2 (paso 35) . En este punto, una muestra se ha dejado caer y
el proceso de corrección se completa y el proceso regresa al paso 31. En el ciclo 258, la escritura habilitada de FIF02 2 se habilita y se pueden cargar nuevas muestras. El circuito de monitoreo 4 ya sea regresará a su estado normal o, si existe todavía una condición de sobre-flujo, entonces el circuito del monitor 4 nuevamente habilitará el proceso de corrección para dejar caer otra muestra. Cuando se detecta un desborde (paso 32), el circuito del monitor 4 habilita al filtro polifásico 11 para que agregue una muestra. En el primer ciclo, el multiplexor de entrada 5 se ajusta a la entrada 2 (paso 36) . Se mantendrá en esta posición durante el resto del proceso de corrección. También durante el primer ciclo, el primer multiplexor 6 se ajusta a la entrada 256 (paso 36) . Durante este primer ciclo, la entrada regular de muestras y el valor proveniente del filtro 9 de Fase 256 ambos se cargan en el FIF02 2 (paso 36) . Esto requiere de una implementación especial de FIF02 2 para permitir esta capacidad. En el segundo ciclo, el multiplexor de filtro 6 se ajusta a la entrada 255 de tal forma que el valor proveniente del filtro de Fase 255 se cargue en FIF02 2 (paso 37). En cada ciclo sucesivo, la siguiente entrada inferior del multiplexor de filtro 6 se
selecciona (es decir, la salida del siguiente filtro de fase inferior se selecciona como la entrada al multiplexor de filtro) (paso 37) . De esta forma, todos los filtros de Fase se ciclan a través en orden inverso y los valores de cada filtro Fase se cargan en FIF02 2 (paso 37) . En el ciclo 256, el multiplexor de filtro 6 se ajusta a la entrada y el valor proveniente del filtro 7 de Fase 1 se carga en FIF02 2 (paso 37). En el ciclo 257, el multiplexor de entrada 5 se reajusta a la entrada 1 (paso 38) . Esto completa el proceso de corrección y el proceso regresa al paso 31. El circuito de monitoreo 4 ya sea regresará a su estado normal o, si existe todavía una condición de desborde, entonces el circuito del monitor 4 nuevamente habilitará el proceso de corrección para agregar otra muestra. El filtro de interpolación 11 incluye m fases 7-9, las salidas de las cuales se alimentan en un multiplexor 6, que proporciona la salida del filtro de interpolación 11 al multiplexor 5. Una posible implementación utiliza 256 fases. En esencia, el filtro de interpolación agrega muestras y luego diezma muestras con base en el sobre-flujo y desborde de FIF02 2 para agregar pequeñas cantidades de retardo durante muchos ciclos de reloj para tomar
en cuenta el desplazamiento de reloj relativos ente el reloj de muestra 1 y el reloj de muestra 2. La salida del filtro de interpolación 11 es un dato muestreado diezmado en aproximadamente n puntos por ciclo. Las técnicas de interpolación y diezmo están bien establecidas para adaptar la proporción de una corriente de datos a otra, por lo cual no se explicará en detalle en la presente. En el caso del libro de texto, un cambio de proporción también implica que la nueva corriente de datos se pudiera cronometrar a la velocidad superior (para el caso de interpolación), una muestra se deja caer y luego la corriente de datos interpolados se podria diezmar nuevamente en disminución a la proporción de muestra de 100 MHz. Las técnicas descritas en la presente no aumentan la proporción de reloj debido a que la velocidad de reloj máxima de un FPGA es de aproximadamente 120 MHz. En esta aplicación, al iniciar con una proporción de muestra de 100 MHz, la interpolación por 256 podria dar por resultado en una proporción de reloj de muestras de 25.6 GHz, un valor que no se puede alcanzar. La estructura del filtro polifásico permite tener 256 nuevas fases de los
datos de 100 MHz originales que están corriendo en paralelo . Esto presenta un nuevo problema, sin embargo, a medida que la estructuración de un filtro de 256-polifases podria requerir muchos dispositivos FPGA (aproximadamente 100) . Para conservar el tamaño de diseño, sin pérdida de desempeño, una modalidad de ejemplo de la presente invención utiliza un filtro de interpolación FIR cuyos coeficientes se almacenan en RAM que es parte del dispositivo FPGA. Para la interpolación por 256, la modalidad almacena 256 conjuntos de coeficientes en memoria. Para un filtro de interpolación FIR de 8 contactos, cada conjunto podria tener 8 coeficientes. Esto requiere de aproximadamente 30% de la RAM disponible sobre un FPGA de tamaño medio. Para esta modalidad, se cambia el filtro polifásico modificado 11. En lugar de 256 filtros de fase y un multiplexor 256 a 1, el filtro polifásico 11 contiene un filtro de fase que puede cargar sus coeficientes desde una RAM. En lugar de cambiar la entrada del multiplexor de filtro 6 para conmutar de una fase de interpolación a la siguiente, la modalidad conmuta un nuevo conjunto de coeficientes en el filtro de fase.
Para mantener funcionando el sistema a velocidad en tiempo real sin el uso de un reloj de 25.6 GHz, se deben introducir 255 retardos de fase, seguidos por la disminución de una muestra, y luego el diezmado. Esta técnica esencialmente introduce 256 errores de fase extremadamente pequeños que se expanden sobre cualesquiera ciclos de reloj en lugar de un gran error de fase en el ciclo de reloj . De esta manera, el error de fase introducido es tan pequeño que impacta de manera insignificante el desempeño. Por ejemplo, si la señal RF que se está muestreando con un 100 MHz A/D se centra en 10 MHz, entonces existen 10 muestras por periodo. Disminuir una muestra fuera de 2560 muestras por periodo es igual a un 0.14 grado (360°/2560 muestras) de error-un valor insignificante para el paso de fase. Además, este error se expande durante un periodo de tiempo asociado con los desfasados de reloj . De esta forma, el desempeño de comunicación proveniente de los nodos no se impacta. La Figura 2 representa una modalidad de ejemplo 20 de un método de acuerdo con otro aspecto de la presente invención. Para combinar dos corrientes de datos asincronos en las cuales los relojes relativos se desfasan en frecuencia debido a
un desplazamiento de reloj normal mediante una cantidad tal como por ejemplo, 10 partes por millón, las dos corrientes de datos se deben sincronizar. Para hacer esto, en el paso 21 la primera corriente de datos se cronometra dentro y fuera de un primer compensador utilizando un primer reloj asociado con la primera corriente de datos. En el paso 22, la segunda corriente de datos se cronometra en un segundo compensador utilizando un segundo reloj asociado con la segunda corriente de datos. La segunda corriente de datos luego se cronometra fuera del segundo compensador utilizando el primer reloj . Esto sincroniza las dos corrientes de datos. Si existe algo o ningún desfasado en la frecuencia, esto podria ser suficiente. Sin embargo, debido al desfasado, es necesario algún ajuste. En el paso 23, las muestras de la segunda corriente de datos se interpolan y luego se diezman antes de cronometrar la segunda corriente de datos en el segundo compensador con base en un sobre-flujo o desborde del segundo compensador, que está corriente abajo del proceso de interpolar y diezmar. En el paso 24, las muestras de dejan caer del segundo compensador cuando un nivel del compensador del segundo compensador aumenta mediante
una muestra, por ejemplo, al inhabilitar la escritura dentro del segundo compensador cuando un nivel del compensador del segundo compensador aumenta mediante una muestra. En el paso 25, las muestras se dejan caer desde el segundo compensador cuando el nivel del compensador del segundo compensador disminuye mediante una muestra, por ejemplo, al inhabilitar la lectura fuera del segundo compensador cuando un nivel del compensador del segundo compensador aumenta mediante una muestra. Por último, en el paso 26, las salidas del primero y segundo compensadores se combinan para proporcionar una entrada para la trayectoria de datos de regreso. De esta forma, la presente invención proporciona un procedimiento para sumar digitalmente corrientes de datos geográficamente variadas, el procedimiento es consistente con la naturaleza de la arquitectura HFC. La aplicación única de algoritmos DSP, y el modelado y análisis de los impactos de desempeño, muestran una clara solución al problema de relojes distribuidos en una planta HFC. Además, el procedimiento se aplica a cualquier funcionalidad DSP que se desea para aplicar a una corriente de datos
derivada de relojes asincronos. Aunque se ilustran y describen especificamente diversas modalidades en la presente, se apreciará que las modificaciones y variaciones de la invención están cubiertas por las enseñanzas anteriores y están dentro del alcance de las reivindicaciones anexas sin apartarse del espíritu y alcance pretendido de la invención. Por ejemplo, mientras que varias de las modalidades representan el uso de formatos y protocolos de datos específicos, cualesquiera formatos o protocolos pueden bastar. Además, mientras que algunas de las modalidades describen modalidades especificas de computadora, clientes, servidores, etc., se pueden emplear otros tipos por la invención descrita en la presente. Además, estos ejemplos no se deben considerar limitantes de las modificaciones y variaciones de la invención cubierta por las reivindicaciones aunque son simplemente ilustrativos de posibles variaciones.