[en] This project introduces GNSS-SDR, an open source Global Navigation Satellite System software-defined receiver. The lack of reconfigurability of current commercial-of-the-shelf receivers and the advent of new radionavigation signals and systems make software receivers an appealing approach to design new architectures and signal processing algorithms. With the aim of exploring the full potential of this forthcoming scenario with a plurality of new signal structures and frequency bands available for positioning, this paper describes the software architecture design and provides details about its implementation, targeting a multiband, multisystem GNSS receiver. The result is a testbed for GNSS signal processing that allows any kind of customization, including interchangeability of signal sources, signal processing algorithms, interoperability with other systems, output formats, and the offering of interfaces to all the intermediate signals, parameters and variables. The source code release under the GNU General Public License (GPL) secures practical usability, inspection, and continuous improvement by the research community, allowing the discussion based on tangible code and the analysis of results obtained with real signals. The source code is complemented by a development ecosystem, consisting of a website (http://gnss-sdr.org), as well as a revision control system, instructions for users and developers, and communication tools. The project shows in detail the design of the initial blocks of the Signal Processing Plane of the receiver: signal conditioner, the acquisition block and the receiver channel, the project also extends the functionality of the acquisition and tracking modules of the GNSS-SDR receiver to track the new Galileo E1 signals available. Each section provides a theoretical analysis, implementation details of each block and subsequent testing to confirm the calculations with both synthetically generated signals and with real signals from satellites in space.

[es] Este proyecto presenta GNSS-SDR, un receptor SDR (Radio Definida por Software) de código abierto para sistemas GNSS (Sistemas de Navegación Global por Satélite). La falta de capacidad de reconfiguración de la mayoría de las plataformas receptoras comerciales y la llegada de nuevos sistemas y señales de radionavegación convierten a los receptores software en un marco atractivo para el diseño de nuevas arquitecturas y algoritmos de procesado de señales. Con el objetivo de explorar el potencial de este escenario futuro con una pluralidad de nuevas señales y bandas de frecuencias disponibles para su utilización, este proyecto presenta las contribuciones al diseño de de la arquitectura de software, y ofrece detalles sobre la implementación, de un receptor GNSS multibanda y multisistema. El resultado es un banco de pruebas para el procesado de señales GNSS que permite cualquier tipo de personalización, incluyendo la intercambiabilidad de las fuentes de señal, los algoritmos de procesado de señal, la interoperabilidad con otros sistemas, formatos standard de salida de datos, y la oferta de interfaces de todas las señales intermedias, parámetros y variables. La liberación del código fuente bajo la licencia GNU General Public License (GPL) asegura usabilidad, la inspección y la mejora continua por parte de la comunidad de investigación, ya que permite la discusión basada en el código tangible y el análisis de los resultados obtenidos con señales reales. El código fuente se complementa con un ecosistema de desarrollo, que consiste en un sitio web (http://gnss-sdr.org), así como un sistema de control de revisiones, instrucciones para los usuarios y desarrolladores, y herramientas de comunicación. Se presenta en profundidad el diseño de los bloques iniciales del Plano de Procesado de Señal del receptor: el acondicionador de señal, el bloque de adquisición y el bloque canal del receptor, así como la extensión de la funcionalidad de los bloques de adquisición y tracking del receptor GNSS-SDR para poder realizar el seguimiento de las nuevas señales Galileo E1 disponibles. En cada apartado se ofrece un análisis teórico, detalles de la implementación de cada bloque y su posterior testeo para corroborar los cálculos realizados, tanto con señales generadas sintéticamente como con señales reales provenientes de los satélites en el espacio.