GNU Radio 3.10.0 izlaišana

Pēc gada izstrādes ir izveidots jauns nozīmīgs bezmaksas digitālo signālu apstrādes platformas GNU Radio 3.10 laidiens. Platformā ir iekļauts programmu un bibliotēku komplekts, kas ļauj izveidot patvaļīgas radiosistēmas, modulācijas shēmas un saņemto un nosūtīto signālu formu, kas norādītas programmatūrā, un signālu uztveršanai un ģenerēšanai tiek izmantotas vienkāršākās aparatūras ierīces. Projekts tiek izplatīts saskaņā ar GPLv3 licenci. Lielākajai daļai GNU Radio komponentu kods ir rakstīts Python; veiktspējai un latentumam kritiskās daļas ir rakstītas C++ valodā, kas ļauj pakotni izmantot, risinot problēmas reāllaikā.

Apvienojumā ar universāliem programmējamiem raiduztvērējiem, kas nav piesaistīti frekvenču joslai un signāla modulācijas veidam, platformu var izmantot, lai izveidotu tādas ierīces kā bāzes stacijas GSM tīkliem, ierīces RFID tagu attālai nolasīšanai (elektroniskie ID un caurlaides, smart kartes), GPS uztvērēji, WiFi, FM radio uztvērēji un raidītāji, TV dekoderi, pasīvie radari, spektra analizatori utt. Papildus USRP, pakotne var izmantot citus aparatūras komponentus signālu ievadīšanai un izvadīšanai, piemēram, skaņas karšu draiverus, TV uztvērējus, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP un Ir pieejamas S ierīces -Mini.

Tajā ietilpst arī filtru, kanālu kodeku, sinhronizācijas moduļu, demodulatoru, ekvalaizeru, balss kodeku, dekoderu un citu elementu kolekcija, kas nepieciešama radio sistēmu izveidošanai. Šos elementus var izmantot kā celtniecības blokus, lai saliktu gatavu sistēmu, kas apvienojumā ar iespēju noteikt datu plūsmas starp blokiem ļauj projektēt radio sistēmas arī bez programmēšanas iemaņām.

Galvenās izmaiņas:

  • Ir pievienots jauns modulis gr-pdu, kurā ir instrumenti manipulēšanai ar objektiem ar PDU (Protocol Data Unit) tipu, ko izmanto datu pārsūtīšanai starp GNU radio blokiem. No gr-blocks moduļa visi PDU bloki ir pārvietoti uz gr-network un gr-pdu moduļiem, un gr-bloku vietā ir atstāts slānis, lai nodrošinātu atpakaļejošu saderību. Vektoru PDU veidi tagad ir pieejami gr::types nosaukumvietā, un funkcijas PDU manipulācijām tagad ir pieejamas gr::pdu nosaukumvietā.
  • Pievienots jauns modulis gr-iio, kas nodrošina ievades/izvades sistēmu datu apmaiņas organizēšanai starp GNU Radio un rūpnieciskajām ierīcēm, kuru pamatā ir IIO (Industrial I/O) apakšsistēma, piemēram, PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3. -EBZ, AD -FMCOMMS4-EBZ, ARRADIO un AD-FMCOMMS5-EBZ.
  • Ir ierosināts eksperimentāls atbalsts Custom Buffer klasei, kas vienkāršo datu pārsūtīšanu starp GNU Radio blokiem un aparatūras paātrinātājiem, kuru pamatā ir GPU, FPGA un DSP. Custom_buffer izmantošana ļauj izvairīties no īpašu bloku rakstīšanas, lai iespējotu paātrinājumu GPU pusē, un ļauj tieši pārvietot datus no GNU Radio gredzena bufera uz GPU atmiņu, palaist CUDA kodolus un atgriezt datus kopā ar rezultātu GNU Radio buferos.
  • Reģistrācijas infrastruktūra ir pārslēgta uz spdlog bibliotēkas izmantošanu, kas ir uzlabojusi lietojamību darbā ar žurnāliem, likvidējusi izsaukumus uz iostream un cstdio, nodrošinājusi atbalstu libfmt izteiksmēm virkņu formatēšanai un modernizējusi programmas saskarni. Iepriekš izmantotā Log4CPP bibliotēka ir noņemta kā atkarība.
  • Ir veikta pāreja uz izmantošanu C++17 standarta izstrādē. Boost::filesystem bibliotēka ir aizstāta ar std::filesystem.
  • Paaugstinātas prasības kompilatoriem (GCC 9.3, Clang 11, MSVC 1916) un atkarībām (Python 3.6.5, numpy 1.17.4, VOLK 2.4.1, CMake 3.16.3, Boost 1.69, Mako 1.1.0, 11B Py.2.4.3. pygccxml 2.0.0).
  • Pievienoti Python saistījumi RFNoC blokiem.
  • Gr-qtgui grafiskā interfeisa izveides blokiem ir pievienots atbalsts Qt 6.2. Pievienota opcija “--output” hierarhiskajiem blokiem GRC (GNU Radio Companion) GUI.

Avots: opennet.ru

Pievieno komentāru