שחרור של GNU Radio 3.10.0

לאחר שנה של פיתוח, הוקמה גרסה משמעותית חדשה של פלטפורמת עיבוד אותות דיגיטליים חינמית, GNU Radio 3.10. הפלטפורמה כוללת קבוצה של תוכנות וספריות המאפשרות ליצור מערכות רדיו שרירותיות, כאשר סכמות המודולציה וצורת האותות הנקלטים והנשלחים נקבעות באופן תכנותי, והתקני החומרה הפשוטים ביותר משמשים ללכידה ויצירת אותות. הפרויקט מופץ תחת רישיון GPLv3. הקוד עבור רוב רכיבי GNU Radio כתוב ב-Python, החלקים הקריטיים לביצועים ולזמן השהייה כתובים ב-C++, המאפשר להשתמש בחבילה בעת פתרון בעיות בזמן אמת.

בשילוב עם משדרים-מקלטים אוניברסליים הניתנים לתכנות שאינם קשורים לפס התדרים ולסוג אפנון האות, ניתן להשתמש בפלטפורמה ליצירת התקנים כגון תחנות בסיס לרשתות GSM, התקנים לקריאה מרחוק של תגי RFID (תעודות זהות אלקטרוניות ותעודות גישה, כרטיסים חכמים), מקלטי GPS, WiFi, מקלטי ומשדרי רדיו FM, מפענחי טלוויזיה, מכ"מים פסיביים, מנתחי ספקטרום וכו'. בנוסף ל-USRP, החבילה יכולה להשתמש גם ברכיבי חומרה אחרים לקלט ופלט של אותות, לדוגמה, דרייברים זמינים עבור כרטיסי קול, מקלטי טלוויזיה, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP ומכשירי S-Mini.

הוא כולל גם אוסף של פילטרים, רכיבי קודקים לערוצים, מודולי סנכרון, מפנים, אקולייזרים, קודקים קוליים, מפענחים ואלמנטים אחרים הדרושים ליצירת מערכות רדיו. אלמנטים אלו יכולים לשמש כאבני בניין להרכבת מערכת מוגמרת, אשר בשילוב עם היכולת לקבוע זרימות נתונים בין בלוקים, מאפשרת לתכנן מערכות רדיו גם ללא כישורי תכנות.

שינויים עיקריים:

  • מודול חדש בשם gr-pdu נוסף, המכיל כלים למניפולציה של אובייקטים מסוג PDU (יחידת נתונים של פרוטוקול), המשמשים להעברת נתונים בין בלוקי רדיו של GNU. כל יחידות ה-PDU הועברו ממודול gr-blocks למודולים gr-network ו-gr-pdu, ושכבה נותרה במקום gr-blocks כדי להבטיח תאימות לאחור. סוגי PDU וקטוריים זמינים כעת במרחב השמות gr::types, ופונקציות למניפולציה של PDUs נמצאות במרחב השמות gr::pdu.
  • נוסף מודול חדש gr-iio, המספק מסגרת קלט/פלט לארגון חילופי נתונים בין רדיו GNU למכשירים תעשייתיים המבוססים על תת-מערכת קלט/פלט תעשייתית (IIO), כגון PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3-EBZ, AD-FMCOMMS4-EBZ, ARRADIO ו-AD-FMCOMMS5-EBZ.
  • מוצעת תמיכה ניסיונית עבור מחלקת Custom Buffer, שתפשט את העברת הנתונים בין בלוקי GNU Radio למאיצי חומרה המבוססים על GPU, FPGA ו-DSP. השימוש ב-custom_buffer מבטל את הצורך בכתיבת בלוקים מיוחדים כדי לאפשר האצה בצד ה-GPU ומאפשר להעביר נתונים ישירות ממאגר הטבעת של GNU Radio לזיכרון GPU, להריץ ליבות CUDA ולהחזיר נתונים עם התוצאה למאגרי GNU Radio.
  • תשתית הרישום עברה לשימוש בספריית spdlog, מה ששיפר את השימושיות של עבודה עם יומנים, ביטל את הצורך לגשת ל-iostream ו-cstdio, סיפק תמיכה בביטויי libfmt לעיצוב מחרוזות, ומודרניזציה של ממשק התוכנה. ספריית 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).
  • נוספו קישורי Python עבור בלוקי RFNoC.
  • תמיכה ב-Qt 6.2 נוספה לאבני הבניין של ממשק המשתמש הגרפי gr-qtgui. ממשק המשתמש הגרפי GRC (GNU Radio Companion) כולל כעת את האפשרות "--output" עבור בלוקים היררכיים.

מקור: OpenNet.ru

קנה אירוח אמין לאתרים עם הגנת DDoS, שרתי VPS VDS 🔥 קנה אחסון אתרים אמין עם הגנת DDoS, שרתי VPS VDS | ProHoster