Vydání GNU Radio 3.10.0

Po roce vývoje byl vytvořen nový významný vydání volné platformy pro digitální zpracování signálů GNU Radio 3.10. Platforma zahrnuje sadu programů a knihoven, které umožňují vytvářet libovolné rádiové systémy, schémata modulace a formy přijímaných a odesílaných signálů, které jsou definovány programově, a pro zachycování a generaci signálů používají nejjednodušší hardware. Projekt je distribuován pod licencí GPLv3. Kód většiny komponent GNU Radio je napsán v jazyce Python, zatímco části kritické pro výkon a latenci jsou napsány v jazyce C++, což umožňuje použití balíku při řešení úloh v reálném čase.

V kombinaci s univerzálními programovatelnými přijímači a vysílači, které nejsou vázány na frekvenční pásmo a typ modulace signálu, může být platforma využita k vytvoření zařízení, jako jsou základnové stanice pro sítě GSM, zařízení pro dálkové čtení RFID štítků (elektronické identifikátory a průkazy, smart karty), GPS přijímače, WiFi, přijímače a vysílače FM rádia, TV dekodéry, pasivní radary, spektrální analyzátory a podobně. Kromě USRP může balík používat i další hardwarové komponenty pro vstup a výstup signálů, například jsou dostupné ovladače pro zvukové karty, TV tunery, zařízení BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP a S-Mini.

Součástí je také sbírka filtrů, kanálových kodeků, synchronizačních modulů, demodulátorů, ekvalizérů, hlasových kodeků, dekodérů a dalších prvků potřebných pro vytváření rádiových systémů. Tyto prvky mohou být použity jako cihly pro sestavení hotového systému, což v kombinaci s možnostmi definování datových toků mezi bloky umožňuje navrhovat rádiové systémy i bez znalostí programování.

Hlavní změny:

  • Byl přidán nový modul gr-pdu, do kterého byly přesunuty nástroje pro manipulaci s objekty typu PDU (Protocol Data Unit), používaným pro data přenášená mezi bloky GNU Radio. Všechny bloky PDU byly z modulu gr-blocks přesunuty do modulů gr-network a gr-pdu, a místo gr-blocks byla ponechána vrstva pro zajištění zpětné kompatibility. Vektorové typy PDU jsou nyní dostupné v prostoru jmen gr::types, a funkce pro manipulaci PDU jsou v prostoru jmen gr::pdu.
  • Byl přidán nový modul gr-iio, který poskytuje rámec pro vstup/výstup pro organizaci výměny dat mezi GNU Radio a průmyslovými zařízeními založenými na subsystému IIO (Industrial I/O), jako jsou PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3-EBZ, AD-FMCOMMS4-EBZ, ARRADIO a AD-FMCOMMS5-EBZ.
  • Byla zavedena experimentální podpora třídy Custom Buffer, která zjednodušuje přenos dat mezi bloky GNU Radio a hardwarovými akcelerátory založenými na GPU, FPGA a DSP. Použití custom_buffer umožňuje vyhnout se psaní speciálních bloků pro využití akcelerace na straně GPU a umožňuje přímo přesouvat data z kruhového bufferu GNU Radio do paměti GPU, spouštět jádra CUDA a vracet data s výsledkem do bufferů GNU Radio.
  • Infrastruktura pro vedení logů byla převedena na použití knihovny spdlog, což zvýšilo pohodlí práce s logy, odstranilo volání iostream a cstdio, zajistilo podporu výrazů libfmt pro formátování řetězců a modernizovalo programové rozhraní. Dříve používaná knihovna Log4CPP byla odstraněna ze závislostí.
  • Byl proveden přechod na použití standardu C++17 při vývoji. Knihovna boost::filesystem byla nahrazena std::filesystem.
  • Byly zvýšeny nároky na překladače (GCC 9.3, Clang 11, MSVC 1916) a závislosti (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).
  • Byly přidány Pythonové vazby pro bloky RFNoC.
  • Ve blocích pro vytváření grafického rozhraní gr-qtgui byla přidána podpora Qt 6.2. Do grafického rozhraní GRC (GNU Radio Companion) byla přidána možnost „—output“ pro hierarchické bloky.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster