Un código de ruido pseudoaleatorio (PRN) genera una secuencia binaria que parece aleatoria pero es determinista y repetible. Los sistemas de navegación por satélite, como GPS, Galileo y BeiDou, junto con diversas aplicaciones de comunicación, dependen de estos códigos.
Los códigos PRN ofrecen características clave que los hacen esenciales para la navegación y la comunicación.
Siguen un patrón determinista, ya que los algoritmos los generan, asegurando una reproducción precisa. A pesar de su diseño estructurado, exhiben propiedades estadísticas similares al ruido blanco, lo que los hace parecer aleatorios.
Los ingenieros diseñan diferentes códigos para que sean ortogonales o únicos, lo que reduce la correlación cruzada y minimiza las interferencias.
En aplicaciones de GPS y GNSS (por ejemplo, sistemas de aeronaves no tripuladas), cada satélite de la constelación transmite un código PRN único.
Estos códigos cumplen múltiples funciones: ayudan a los receptores GPS a distinguir las señales de diferentes satélites, permiten el cálculo de la distancia comparando los códigos transmitidos con una versión generada localmente para determinar el tiempo de viaje de la señal, y soportan la modulación de espectro ensanchado.
Esta técnica de modulación permite que las señales se transmitan en un ancho de banda amplio, aumentando la resistencia a las interferencias y al jamming.
El GPS utiliza diferentes tipos de códigos PRN. El código C/A (Coarse/Acquisition) soporta la navegación GPS estándar y se repite cada 1 milisegundo. El código P(Y), diseñado para aplicaciones militares, cifra sus datos y se repite cada siete días.
El código M, una versión militar avanzada, mejora las capacidades anti-jamming.
Los registros de desplazamiento con retroalimentación lineal (LFSR) generan códigos PRN, produciendo secuencias con propiedades de correlación deseables para un seguimiento preciso de la señal.
Al mantener características pseudoaleatorias al tiempo que garantizan la previsibilidad y la repetibilidad, los LFSR hacen que estos códigos sean altamente fiables para la navegación y la comunicación.
Representación matemática del código PRN
Para G1 y G2, la relación de recurrencia es:
G1(n) = G1(n−3) ⊕ G1(n−10)
G2(n) = G2(n−2) ⊕ G2(n−3) ⊕ G2(n−6) ⊕ G2(n−8) ⊕ G2(n−9) ⊕ G2(n−10)
Donde ⊕ (XOR) es la operación de adición binaria.
El código PRN se forma entonces como:
PRN(n) = G1(n) ⊕ G2 (n+delay)
El retardo varía para cada satélite GPS, lo que garantiza secuencias PRN únicas.