ஒரு வருட வளர்ச்சிக்குப் பிறகு, திறந்த மூல டிஜிட்டல் சிக்னல் செயலாக்க தளமான GNU ரேடியோ 3.10 இன் ஒரு பெரிய புதிய வெளியீடு வெளியிடப்பட்டுள்ளது. இந்த தளமானது தனிப்பயன் ரேடியோ அமைப்புகளை உருவாக்க உதவும் நிரல்கள் மற்றும் நூலகங்களின் தொகுப்பை உள்ளடக்கியது, பண்பேற்றம் திட்டங்கள் மற்றும் பெறப்பட்ட மற்றும் அனுப்பப்பட்ட சிக்னல்களின் வடிவம் நிரல் ரீதியாக வரையறுக்கப்பட்டுள்ளது, மேலும் சிக்னல் பிடிப்பு மற்றும் உருவாக்கத்திற்கு பயன்படுத்தப்படும் எளிய வன்பொருள் சாதனங்கள் உள்ளன. இந்த திட்டம் GPLv3 உரிமத்தின் கீழ் உரிமம் பெற்றது. பெரும்பாலான GNU ரேடியோ கூறுகள் பைத்தானில் எழுதப்பட்டுள்ளன, அதே நேரத்தில் செயல்திறன் மற்றும் தாமத-முக்கியமான பாகங்கள் C++ இல் எழுதப்பட்டுள்ளன, இது தொகுப்பை நிகழ்நேர பயன்பாடுகளுக்கு ஏற்றதாக ஆக்குகிறது.
அதிர்வெண் பட்டை அல்லது சிக்னல் பண்பேற்ற வகையுடன் இணைக்கப்படாத உலகளாவிய நிரல்படுத்தக்கூடிய டிரான்ஸ்ஸீவர்களுடன் இணைக்கப்படும்போது, GSM நெட்வொர்க்குகளுக்கான அடிப்படை நிலையங்கள், RFID குறிச்சொற்களை தொலைவிலிருந்து வாசிப்பதற்கான சாதனங்கள் (மின்னணு அடையாள அட்டைகள் மற்றும் பாஸ்கள், ஸ்மார்ட் கார்டுகள்), GPS பெறுநர்கள், WiFi, FM ரேடியோ பெறுநர்கள் மற்றும் டிரான்ஸ்மிட்டர்கள், டிவி டிகோடர்கள், செயலற்ற ரேடார்கள், ஸ்பெக்ட்ரம் பகுப்பாய்விகள் போன்ற சாதனங்களை உருவாக்க இந்த தளத்தைப் பயன்படுத்தலாம். USRP உடன் கூடுதலாக, தொகுப்பு சிக்னல்களை உள்ளிடுவதற்கும் வெளியிடுவதற்கும் பிற வன்பொருள் கூறுகளையும் பயன்படுத்தலாம். எடுத்துக்காட்டாக, ஒலி அட்டைகள், டிவி ட்யூனர்கள், BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP மற்றும் S-Mini சாதனங்களுக்கு இயக்கிகள் கிடைக்கின்றன.
இந்த கட்டமைப்பில் வடிகட்டிகள், சேனல் கோடெக்குகள், ஒத்திசைவு தொகுதிகள், டெமோடுலேட்டர்கள், சமப்படுத்திகள், குரல் கோடெக்குகள், டிகோடர்கள் மற்றும் ரேடியோ அமைப்புகளை உருவாக்கத் தேவையான பிற கூறுகளின் தொகுப்பும் அடங்கும். இந்த கூறுகள் ஒரு முடிக்கப்பட்ட அமைப்பைச் சேகரிக்க கட்டுமானத் தொகுதிகளாகப் பயன்படுத்தப்படலாம், இது தொகுதிகளுக்கு இடையில் தரவு ஓட்டங்களைத் தீர்மானிக்கும் திறனுடன் இணைந்து, நிரலாக்க திறன்கள் இல்லாமல் கூட வானொலி அமைப்புகளை வடிவமைக்க உங்களை அனுமதிக்கிறது.
முக்கிய மாற்றங்கள்:
- GNU ரேடியோ தொகுதிகளுக்கு இடையில் தரவு பரிமாற்றத்திற்குப் பயன்படுத்தப்படும் PDU (Protocol Data Unit) வகையின் பொருட்களை கையாளுவதற்கான கருவிகளைக் கொண்ட gr-pdu என்ற புதிய தொகுதி சேர்க்கப்பட்டுள்ளது. அனைத்து PDUகளும் gr-blocks தொகுதியிலிருந்து gr-network மற்றும் gr-pdu தொகுதிகளுக்கு நகர்த்தப்பட்டுள்ளன, பின்தங்கிய இணக்கத்தன்மையை உறுதி செய்வதற்காக gr-blocks க்கு பதிலாக ஒரு அடுக்கு தக்கவைக்கப்பட்டுள்ளது. வெக்டர் PDU வகைகள் இப்போது gr::types பெயர்வெளியில் கிடைக்கின்றன, மேலும் PDU கையாளுதல் செயல்பாடுகள் gr::pdu பெயர்வெளியில் கிடைக்கின்றன.
- GNU வானொலி மற்றும் IIO (தொழில்துறை I/O) துணை அமைப்பை அடிப்படையாகக் கொண்ட தொழில்துறை சாதனங்களுக்கு இடையே தரவு பரிமாற்றத்தை ஒழுங்கமைப்பதற்கான I/O கட்டமைப்பை வழங்கும் புதிய தொகுதி gr-iio சேர்க்கப்பட்டது, அதாவது PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3-EBZ, AD-FMCOMMS4-EBZ, ARRADIO மற்றும் AD-FMCOMMS5-EBZ.
- GPUகள், FPGAகள் மற்றும் DSPகளை அடிப்படையாகக் கொண்ட GNU ரேடியோ தொகுதிகள் மற்றும் வன்பொருள் முடுக்கிகளுக்கு இடையே தரவு பரிமாற்றத்தை எளிதாக்கும் Custom Buffer வகுப்பிற்கான சோதனை ஆதரவு அறிமுகப்படுத்தப்பட்டுள்ளது. custom_buffer ஐப் பயன்படுத்துவது GPU முடுக்கத்திற்கான சிறப்புத் தொகுதிகளை எழுத வேண்டிய தேவையை நீக்குகிறது மற்றும் GNU ரேடியோ ரிங் பஃபரிலிருந்து GPU நினைவகத்திற்கு நேரடி தரவு பரிமாற்றத்தை செயல்படுத்துகிறது, CUDA கர்னல்களைத் தொடங்குகிறது மற்றும் அதன் விளைவாக வரும் தரவை GNU ரேடியோ பஃபர்களுக்குத் திருப்பி அனுப்புகிறது.
- பதிவு உள்கட்டமைப்பு spdlog நூலகத்திற்கு மாற்றப்பட்டுள்ளது, பதிவு பயன்பாட்டை மேம்படுத்துகிறது, iostream மற்றும் cstdio க்கான அழைப்புகளை நீக்குகிறது, சரம் வடிவமைப்பிற்கான libfmt வெளிப்பாடுகளுக்கான ஆதரவை வழங்குகிறது மற்றும் API ஐ நவீனப்படுத்துகிறது. முன்னர் பயன்படுத்தப்பட்ட Log4CPP நூலகம் சார்புகளிலிருந்து அகற்றப்பட்டுள்ளது.
- C++17 தரநிலையைப் பயன்படுத்துவதற்கான மாற்றம் மேம்பாட்டில் உள்ளது. boost::filesystem நூலகம் std::filesystem ஆல் மாற்றப்பட்டுள்ளது.
- கம்பைலர்களுக்கான (GCC 9.3, Clang 11, MSVC 1916) மற்றும் சார்புநிலைகளுக்கான (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) அதிகரித்த தேவைகள்.
- RFNoC தொகுதிகளுக்கு பைதான் பிணைப்புகள் சேர்க்கப்பட்டன.
- gr-qtgui வரைகலை இடைமுக கட்டுமானத் தொகுதிகளில் Qt 6.2 ஆதரவு சேர்க்கப்பட்டுள்ளது. GRC (GNU ரேடியோ துணை) வரைகலை இடைமுகம் இப்போது படிநிலைத் தொகுதிகளுக்கான "--output" விருப்பத்தைக் கொண்டுள்ளது.
ஆதாரம்: opennet.ru
