Lançamento do GNU Radio 3.10.0

Após um ano de desenvolvimento, um novo e significativo lançamento da plataforma livre de processamento digital de sinais GNU Radio 3.10 foi formado. A plataforma inclui um conjunto de programas e bibliotecas que permitem criar sistemas de rádio arbitrários, esquemas de modulação e formas de sinais recebidos e transmitidos que são programados, enquanto dispositivos de hardware simples são usados para captura e geração de sinais. O projeto é distribuído sob a licença GPLv3. A maior parte dos componentes do GNU Radio é escrita na linguagem Python, enquanto as partes críticas para desempenho e latência são escritas em C++, permitindo o uso do pacote em tarefas em tempo real.

Em combinação com transceptores programáveis universais, que não estão vinculados a uma faixa de frequência ou tipo de modulação de sinal, a plataforma pode ser utilizada para criar dispositivos como estações base para redes GSM, dispositivos para leitura remota de etiquetas RFID (identificações eletrônicas e passes, cartões inteligentes), receptores GPS, WiFi, transmissores e receptores de rádio FM, decodificadores de TV, radares passivos, analisadores espectrais e muito mais. Além do USRP, o pacote pode utilizar outros componentes de hardware para entrada e saída de sinais, como drivers disponíveis para placas de som, sintonizadores de TV, dispositivos BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP e S-Mini.

O pacote também inclui uma coleção de filtros, codecs de canal, módulos de sincronização, demoduladores, equalizadores, codecs de voz, decodificadores e outros elementos necessários para a criação de sistemas de rádio. Os elementos mencionados podem ser usados como blocos de construção para compor um sistema acabado, o que, combinado com as capacidades de definição de fluxos de dados entre blocos, permite projetar sistemas de rádio mesmo sem habilidades de programação.

Principais mudanças:

  • Um novo módulo gr-pdu foi adicionado, que contém ferramentas para manipulação de objetos do tipo PDU (Unidade de Dados do Protocolo), aplicados aos dados transferidos entre os blocos do GNU Radio. Todos os blocos PDU foram transferidos do módulo gr-blocks para os módulos gr-network e gr-pdu, e uma camada de compatibilidade foi mantida no lugar do gr-blocks. Os tipos de vetor PDU agora estão disponíveis no namespace gr::types, enquanto as funções para manipulação de PDU estão no namespace gr::pdu.
  • Foi adicionado um novo módulo gr-iio, que fornece uma estrutura de entrada/saída para organizar a troca de dados entre o GNU Radio e dispositivos industriais baseados no subsistema IIO (Industrial I/O), como PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3-EBZ, AD-FMCOMMS4-EBZ, ARRADIO e AD-FMCOMMS5-EBZ.
  • Foi proposta uma compatibilidade experimental com a classe Custom Buffer, que facilita a transferência de dados entre os blocos do GNU Radio e aceleradores de hardware baseados em GPU, FPGA e DSP. O uso do custom_buffer permite evitar a necessidade de escrever blocos especiais para utilizar aceleração do lado da GPU e possibilita mover dados diretamente do buffer circular do GNU Radio para a memória da GPU, executar núcleos CUDA e retornar dados com os resultados para os buffers do GNU Radio.
  • A infraestrutura de registro foi migrada para utilizar a biblioteca spdlog, o que aumentou a facilidade de trabalho com logs, eliminou a necessidade de chamadas a iostream e cstdio, garantiu suporte a expressões libfmt para formatação de strings e modernizou a interface de programação. A biblioteca Log4CPP, anteriormente utilizada, foi removida das dependências.
  • Foi realizada a migração para o uso do padrão C++17 no desenvolvimento. A biblioteca boost::filesystem foi substituída por std::filesystem.
  • Os requisitos para compiladores (GCC 9.3, Clang 11, MSVC 1916) e dependências (Python 3.6.5, numpy 1.17.4, VOLK 2.4.1, CMake 3.16.3, Boost 1.69, Mako 1.1.0, PyBind11 2.4.3, pygccxml 2.0.0) foram aumentados.
  • Foram adicionados bindings Python para os blocos RFNoC.
  • Nos blocos para a construção da interface gráfica gr-qtgui, foi adicionada a compatibilidade com Qt 6.2. Uma nova opção "—output" foi adicionada à interface gráfica GRC (GNU Radio Companion) para blocos hierárquicos.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster