Codificación de datos para GFSK inalámbrico

Estamos diseñando un enlace de RF (2GFSK) utilizando el CC1125, para reemplazar un sistema más antiguo.

El sistema anterior usa codificación de datos NRZI con relleno de bits.

El relleno de bits se usa para eliminar el presente de los datos del indicador de parada (0x7E) y para evitar tener demasiados 1 en una secuencia.

Un ingeniero de RF mayor me dijo que el relleno de bits era importante, no solo para la sincronización, sino también porque el receptor se ajusta al centro de las dos frecuencias para lograr una recepción óptima. Por lo tanto, es sensible a una secuencia larga de bits iguales, ya que se alejaría del centro y se acercaría a la frecuencia f0 o f1, según la secuencia.

Pero, en el caso de CC1125, o cualquier otro chip de RF, ¿cómo calculo el efecto sobre la sensibilidad del receptor (BER) debido a una larga secuencia de bits iguales?

Ejemplo: si enviamos un preámbulo de 24 bits, con una carga útil de 32 bytes, ¿cómo calculo la cantidad máxima de bits iguales permitidos? ?

La línea CC112x tiene una función de blanqueamiento de datos, exactamente para esto.

Respuestas (1)

Aquí hay un enfoque no matemático del problema usando FSK como ejemplo. Mi intención es mostrar que varios factores contribuyen a poder calcular una respuesta (lo que no pretendo hacer).

Piense en un cortador de datos simple sentado después de un demodulador de FM simple: -

ingrese la descripción de la imagen aquí

A continuación, imagine que el receptor no está bloqueado en ninguna transmisión válida, pero después de un rato aparece un preámbulo de TX: -

ingrese la descripción de la imagen aquí

Antes del preámbulo de TX, el cortador de datos solo recibe ruido aleatorio del demodulador y está tratando de darle sentido a ese ruido aleatorio porque no es un circuito muy inteligente.

La línea azul es el cortador de datos que intenta rastrear una señal FSK potencial y si el demodulador tiene un ancho de banda de varios MHz, la línea azul puede colocarse a varios MHz de donde debería estar cuando eventualmente se presente una transmisión adecuada . ¿Está bien hasta ahora?

Entonces, viene el preámbulo de TX y ese preámbulo de TX debe ser lo suficientemente largo como para arrastrar el filtro del cortador de datos (línea azul) desde un extremo de la salida del demodulador hasta la frecuencia central precisa de la transmisión. Ese es todo su propósito en la vida.

¿Eres capaz de ver eso en el diagrama?

El cortador de datos anterior utiliza un filtro de paso bajo RC simple que tiene un punto de 3dB a una frecuencia mucho más baja que la tasa de datos máxima. Tiene que ser así o, cuando aparecen un montón de ceros o unos en la transmisión, el filtro migrará hacia un lado de los datos y eventualmente habrá corrupción.

Así que hay varios factores: -

  • ¿Qué tan amplio podría ser el rango de frecuencia de los demoduladores en comparación con qué tan estrecho es el ancho de banda de la transmisión?
  • ¿Qué longitud tiene el preámbulo para alinear el circuito de recuperación de datos con la frecuencia del centro de transmisión?
  • ¿Qué tipo de filtros (primer orden, segundo orden, etc.) se utilizan para alinear la recuperación de datos?
  • ¿Cuánto ruido hay? En otras palabras, ¿a qué distancia del centro preciso del flujo de bits FSK puede estar la estimación del circuito de recuperación de datos antes de que el ruido se corrompa?
  • Cuán inteligente es el sistema de recuperación de datos para adaptar sus filtros (una vez bloqueados en un preámbulo) para que la desviación de la frecuencia central precisa (debido a ejecuciones continuas de ceros o unos) se ralentice. Por supuesto, esto puede marcar una gran diferencia: la inteligencia en esta área es fundamental para reducir la longitud del preámbulo mientras se vive con corridas extensas sin transición de datos.

Este fue un ejemplo simple de FSK.

Muchas gracias, por su respuesta tan detallada. Tiene completamente sentido. Le dije al ingeniero mayor que el chip tiene soporte de blanqueamiento PN9, para garantizar la alternancia de bits. Pero él preferiría convertir la carga útil en NRZI y hacer el relleno de bits, todo un proceso manual, porque eso era lo que hacían en el sistema anterior y lo probaron mucho. Pero mi temor es que todas las decisiones de diseño en el antiguo sistema se tomaron porque era la tecnología disponible en ese entonces. Creo que la mejor manera, para mí, sería configurar el transmisor y el receptor con un atenuador entre ellos y probar. ?
Siempre puede usar un codificador de datos en la carga útil
¿De dónde es esa imagen increíble?
@m.Alin Lo dibujé el año pasado para responder otra pregunta en ese entonces, ¡pero ayúdate a ti mismo, te encanta LOL!
:)) Se ve muy bien; que software usaste para hacerlo?
@m.Alin Lo dibujé en microsoft.word y lo copié en pantalla para pintar y convertirlo a png. Tómate otra cerveza, se verá aún mejor LOL.
De hecho, creo que su explicación y dibujo respondieron otra pregunta mía. Hace un tiempo miré un transmisor FSK y un sistema reviever con una desviación de frecuencia de 12.5Khz. Pero no pude ver cómo podría funcionar bien, porque impondría exigencias muy altas a los osciladores. Pero si lo hago bien, mirando su dibujo, el transmisor y el receptor no necesitan ser 100% precisos con frecuencia central. Porque el cortador de datos rastrearía hasta el centro de la transmisión. Por lo tanto, el filtro del demodulador debe configurarse para cubrir el error de frecuencia en el sistema. ¿Estoy en lo correcto?
Así es como lo veo, pero no seguí su última oración sobre el filtro demodulador, no estoy seguro de lo que quiere decir. Si te refieres al filtro frente a la segmentación de datos, solo sigue el nivel promedio del demodulador.
Lo siento, al leerlo ahora, puedo ver que no tiene mucho sentido. Lo intentaré de nuevo: si la desviación de frecuencia es pequeña, en comparación con la frecuencia de transmisión de 868 MHz, digamos 12,5 KHz. Entonces, si no hubiera un seguimiento del preámbulo, se requerirían osciladores extremadamente precisos tanto en TX como en RX, porque el RX debe estar entre las dos frecuencias de modulación f0 y f1 para obtener datos correctos. Pero como se muestra en su dibujo, si el ancho de banda del receptor, antes de la segmentación de datos, es lo suficientemente grande como para cubrir cualquier error de compensación en la frecuencia, entonces la segmentación rastrearía hasta el centro de los datos. Es eso correcto ?
Sí, generalmente en los dispositivos que he usado (434 MHz), el ancho de banda completo es de aproximadamente 1 o 2 MHz y la desviación es probablemente de aproximadamente el 5 % de este rango. Solo tienes que seguir meneando esos datos.