¿Cómo realizar la recuperación de la fase del operador en el software?


13

¿Cuáles son las opciones para recuperar la fase de una señal BPSK en el software? Los únicos recursos que puedo encontrar en línea contienen diagramas de circuitos: parece que no hay nadie dispuesto a explicar esto a personas que no están familiarizadas con los circuitos analógicos.

Me gustaría cualquier explicación de cómo funciona la recuperación del operador en teoría, y también me encantaría el pseudocódigo o los ejemplos de código.


Normalmente no proporcionamos ejemplos de código, especialmente para algo tan complicado como un demodulador BPSK.
Jim Clay

1
Como indicó JimClay, no es probable que obtenga a alguien con el tiempo suficiente para proporcionar el código fuente completo para implementar un demodulador. Sin embargo, la mecánica de crear una implementación debería ser fácil si comprende los conceptos. En general, un receptor de software tendrá una estructura similar a la técnica de hardware correspondiente (por ejemplo, un sincronizador basado en no linealidad de alimentación directa o un enfoque basado en PLL retroalimentado). ¿Tenía una topología específica a la que planeaba apuntar?
Jason R

Gracias por sus comentarios @JimClay y JasonR: no quise pedir un código fuente que funcionara. He actualizado la pregunta para que sea más específica: solo estoy buscando una explicación que no presuponga una comprensión de los circuitos analógicos y los diagramas de circuitos.
Keith

Respuestas:


25

Para demodular una señal con clave de cambio de fase, de la cual BPSK es la más simple, debe recuperar la frecuencia de la portadora, la fase y la sincronización de los símbolos.

Señales de ráfaga Algunas señales son de ráfaga y proporcionan una secuencia de datos conocida llamada preámbulo o ambigüedad media (dependiendo de si aparece al principio o en medio de la ráfaga). Los demoduladores pueden usar un filtro coincidente que "busca" la secuencia de datos conocida y usarla para determinar la frecuencia de la ráfaga, la fase y la sincronización de los símbolos. Lo hacen para cada ráfaga y no necesitan molestarse con la "deriva" (la distancia gradual que se acumula entre el demodulador y la señal recibida a medida que se acumulan pequeños errores) porque las ráfagas son generalmente lo suficientemente cortas como para que la deriva no sea problema.

Señales continuas Luego hay señales continuas. En muchos sentidos, son más difíciles de recuperar que las señales de ráfagas porque normalmente no tiene una secuencia de datos conocida que lo ayude a bloquear la señal, y debe preocuparse por la deriva incluso después de bloquear la señal. Trataré de describir a un alto nivel los pasos principales que generalmente se utilizan para recuperar señales continuas.

Recuperación del operador

Por lo general, sabe en qué frecuencia estará la señal que está buscando, o al menos en qué conjunto de frecuencias podría estar. Sin embargo, incluso con este conocimiento, generalmente debe poder corregir el desplazamiento de frecuencia porque no hay dos transmisores que transmitan a la misma frecuencia. Siempre hay algún error. El método habitual, entonces, es mezclar la frecuencia en la que cree que estará la señal, y luego corregir el error de frecuencia residual. Esto se puede hacer con un Costas Loop, o tomando la cuarta potencia de los datos de la señal de banda base y buscando un pico de frecuencia. Debería haber un pico de frecuencia en el desplazamiento de la portadora * 4 (por ejemplo, si lleva una FFT de los datos a la cuarta potencia y ve un pico de frecuencia a 8300 Hz, eso significa que el desplazamiento de la portadora es 8300/4 = 2075 Hz). Este es un medio muy efectivo para obtener un bloqueo inicial en el desplazamiento de frecuencia. También puede usarlo para compensar la deriva si lo vuelve a hacer ocasionalmente. Hay otra forma de compensar la deriva que abordaré más adelante.

Fase portadora

En este punto, si trazó sus datos complejos en el plano complejo (el eje x es real, el eje y es imaginario) debería verse algo así como lo siguiente:

BPSK rotado

Si observa de cerca, puede ver dos áreas densas hacia los extremos de la línea borrosa. Esos son los puntos de constelación de BPSK. Los puntos intermedios son las transiciones entre los puntos de constelación. Esos se aclararán una vez que obtengamos el símbolo del tiempo. La razón por la que la línea está en ángulo es debido a la fase portadora. Esto se puede medir reflejando la señal multiplicando todos los puntos que tienen valores reales negativos pormijπ

BPSK girado y reflejado

y luego tomando la media de los ángulos de los puntos. Una vez que haya calculado eso, reste ese ángulo de todos los puntos a los que se haya eliminado el desplazamiento de la portadora multiplicando los puntos pormij-ω. También puede compensar la deriva del desplazamiento de la portadora con esta técnica actualizando dinámicamente el desplazamiento de fase. Una vez que los datos se corrigen por fase, debería verse así:

Ruidoso BPSK

Una vez que los datos se corrigen por fase, puede descartar la parte imaginaria de los datos porque no agrega ninguna información.

Símbolo de sincronización

Normalmente debe saber, a priori, el período de símbolo de la señal que está intentando demodular. Sin embargo, si necesita determinar el período / frecuencia del símbolo, puede hacerlo de manera similar a cómo se detectó el desplazamiento de la portadora. Puede cuadrar los datos que causarán un pico de frecuencia al doble de la frecuencia del símbolo.

Al igual que con el transportista, tendrá que obtener la fase (sincronización) correcta y luego compensar la deriva. El método habitual para ambos problemas es buscar los cruces por cero. A menos que el ruido sea bastante malo, solo debe cruzar el punto cero en el medio de una transición de símbolo de -1 a 1 o de 1 a -1. Incluso si el ruido hace que esto suceda en medio de un símbolo, no sucederá muy a menudo.

Diagrama del ojo

La imagen de arriba generalmente se llama "diagrama de ojo" o "patrón de ojo". Tiene dos períodos de símbolos de ancho y tiene muchos símbolos "apilados" uno encima del otro. No sé si está familiarizado con los osciloscopios o no, pero puede obtener un osciloscopio para mostrar una imagen como esta. De todos modos, las dos "X" son transiciones de símbolos. Las líneas altas a bajas en las X son cuando el símbolo pasa de 1 a -1, y las líneas bajas a altas en las X son cuando el símbolo pasa de -1 a 1. El punto intermedio, donde el la línea rosada es el lugar óptimo para muestrear los datos para ver si el símbolo es un 1 o -1.

Esta misma técnica se puede utilizar para manejar la deriva de sincronización de símbolos. Tome un promedio de la distancia desde el cruce por cero anterior y el siguiente cruce por cero. Si los dos promedios son casi iguales, todo está bien. Si uno es más grande que el otro, entonces necesita cambiar donde está tomando su muestra.

Una vez que haya muestreado los símbolos en los puntos correctos, sus puntos de datos deberían obtener algo parecido a los puntos de constelación BPSK clásicos.

Ruidosa constelación de BPSK

Espero que esto ayude.


Para mejorar esta maravillosa publicación, ¿tal vez podría agregar una sección de recuperación de reloj antes del tiempo de símbolo?
LWZ

Creo que puedo saber lo que tienes en mente, pero no estoy seguro. ¿Qué tenía en mente específicamente?
Jim Clay

¡Muchas gracias! No había pensado en buscar cruces por cero, o trazar lo real / imaginario en x / y de esta manera. Acabo de mirar gráficos de fase y me pregunto cómo sincronizar todo. ¡Gracias de nuevo!
Keith

@JimClay, al comienzo de la sección de sincronización de símbolos , mencionó que "normalmente debe conocer el período de símbolo de la señal que está tratando de demodular", y esto generalmente se logra mediante una unidad de recuperación de reloj, porque normalmente ganó ' t envíe un reloj junto con sus datos. Para la señal BPSK, esto es fácil, donde puede ajustar su señal al cuadrado, lo que elimina los datos. Luego, si observa el espectro de potencia, debe haber una frecuencia máxima que se denomina tono de reloj , que le proporciona el período de símbolo.
LWZ

Se agregó un párrafo sobre la frecuencia de los símbolos.
Jim Clay
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.