GNU Radio 3.8.0 ์ถœ์‹œ

๋งˆ์ง€๋ง‰์œผ๋กœ ์ค‘์š”ํ•œ ๋ฆด๋ฆฌ์Šค ์ดํ›„ XNUMX๋…„ ํ˜•์„ฑ๋œ ์„๋ฐฉํ•˜๋‹ค GNU ๋ผ๋””์˜ค 3.8, ๋ฌด๋ฃŒ ๋””์ง€ํ„ธ ์‹ ํ˜ธ ์ฒ˜๋ฆฌ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. GNU Radio๋Š” ์†Œํ”„ํŠธ์›จ์–ด์— ์ง€์ •๋œ ์ž„์˜์˜ ๋ผ๋””์˜ค ์‹œ์Šคํ…œ, ๋ณ€์กฐ ๋ฐฉ์‹, ์ˆ˜์‹  ๋ฐ ์ „์†ก ์‹ ํ˜ธ ํ˜•์‹์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ ๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ธํŠธ์ด๋ฉฐ ๊ฐ„๋‹จํ•œ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ ํ˜ธ๋ฅผ ์บก์ฒ˜ํ•˜๊ณ  ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ์ž GPLv3์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GNU Radio์˜ ๋Œ€๋ถ€๋ถ„ ๊ตฌ์„ฑ ์š”์†Œ์— ๋Œ€ํ•œ ์ฝ”๋“œ๋Š” Python์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, ์„ฑ๋Šฅ ๋ฐ ๋Œ€๊ธฐ ์‹œ๊ฐ„์— ์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ C++๋กœ ์ž‘์„ฑ๋˜์–ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๋•Œ ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผํŒŒ์ˆ˜ ๋Œ€์—ญ ๋ฐ ์‹ ํ˜ธ ๋ณ€์กฐ ์œ ํ˜•์— ์–ฝ๋งค์ด์ง€ ์•Š๋Š” ๋ฒ”์šฉ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ€๋Šฅ ํŠธ๋žœ์‹œ๋ฒ„์™€ ๊ฒฐํ•ฉํ•˜์—ฌ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜์—ฌ GSM ๋„คํŠธ์›Œํฌ์šฉ ๊ธฐ์ง€๊ตญ, RFID ํƒœ๊ทธ ์›๊ฒฉ ํŒ๋… ์žฅ์น˜(์ „์ž ID ๋ฐ ํŒจ์Šค, ์Šค๋งˆํŠธ ์นด๋“œ)์™€ ๊ฐ™์€ ์žฅ์น˜๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์นด๋“œ), GPS ์ˆ˜์‹ ๊ธฐ, WiFi, FM ๋ผ๋””์˜ค ์ˆ˜์‹ ๊ธฐ ๋ฐ ์†ก์‹ ๊ธฐ, TV ๋””์ฝ”๋”, ํŒจ์‹œ๋ธŒ ๋ ˆ์ด๋”, ์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„๊ธฐ ๋“ฑ USRP ์™ธ์—๋„ ํŒจํ‚ค์ง€๋Š” ๋‹ค๋ฅธ ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ ํ˜ธ๋ฅผ ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ฐ€๋Šฅ ์‚ฌ์šด๋“œ ์นด๋“œ, TV ํŠœ๋„ˆ, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP ๋ฐ S-Mini ์žฅ์น˜์šฉ ๋“œ๋ผ์ด๋ฒ„์ž…๋‹ˆ๋‹ค.

์ด ๊ตฌ์กฐ์—๋Š” ํ•„ํ„ฐ, ์ฑ„๋„ ์ฝ”๋ฑ, ๋™๊ธฐํ™” ๋ชจ๋“ˆ, ๋ณต์กฐ๊ธฐ, ์ดํ€„๋ผ์ด์ €, ์Œ์„ฑ ์ฝ”๋ฑ, ๋””์ฝ”๋” ๋ฐ ๋ผ๋””์˜ค ์‹œ์Šคํ…œ์„ ๋งŒ๋“œ๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ธฐํƒ€ ์š”์†Œ ๋ชจ์Œ๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์š”์†Œ๋Š” ์™„์„ฑ๋œ ์‹œ์Šคํ…œ์„ ์กฐ๋ฆฝํ•˜๊ธฐ ์œ„ํ•œ ๋นŒ๋”ฉ ๋ธ”๋ก์œผ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ธ”๋ก ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ฒฐ์ •ํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ๊ฒฐํ•ฉ๋˜์–ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ˆ  ์—†์ด๋„ ๋ฌด์„  ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ :

  • ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ C++11 ํ‘œ์ค€๊ณผ CMake ์–ด์…ˆ๋ธ”๋ฆฌ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜๋„๋ก ์ „ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ์Šคํƒ€์ผ์€ clang-format๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.
  • ์ข…์†์„ฑ์—๋Š” MPIR/GMP, Qt5, gsm ๋ฐ codec2๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. CMake, GCC, MSVC, Swig, Boost์˜ ์ข…์†์„ฑ ๋ฒ„์ „์— ๋Œ€ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ์—์„œ libusb, Qt4 ๋ฐ CppUnit์„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Python 3๊ณผ์˜ ํ˜ธํ™˜์„ฑ์ด ๋ณด์žฅ๋˜๋ฉฐ, GNU Radio 3.8์˜ ๋‹ค์Œ ๋ฒ„์ „์€ Python 2๋ฅผ ์ง€์›ํ•˜๋Š” ๋งˆ์ง€๋ง‰ ๋ฒ„์ „์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • gnuradio-runtime์—์„œ๋Š” ๋ฆฌ์ƒ˜ํ”Œ๋ง ๋ชจ๋“ˆ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๋งฅ๋ฝ์—์„œ "์‹œ๊ฐ„" ํƒœ๊ทธ์˜ ๋ถ„์ˆ˜ ๊ฐ’ ์ฒ˜๋ฆฌ๊ฐ€ ์žฌ์ž‘์—…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • GUI๋กœ ๊ทธ๋ฆฌ์Šค (GNU Radio Companion)์€ C++์—์„œ ์ฝ”๋“œ ์ƒ์„ฑ์„ ์œ„ํ•œ ์„ ํƒ์  ์ง€์›์„ ์ถ”๊ฐ€ํ–ˆ์œผ๋ฉฐ, XML ๋Œ€์‹  YAML ํ˜•์‹์ด ์‚ฌ์šฉ๋˜์—ˆ๊ณ , blks2๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์œผ๋ฉฐ, ์บ”๋ฒ„์Šค ๋„๊ตฌ๊ฐ€ ํฌ๊ฒŒ ๊ฐœ์„ ๋˜์—ˆ์œผ๋ฉฐ ๋‘ฅ๊ทผ ํ™”์‚ดํ‘œ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • gr-qtgui GUI๊ฐ€ Qt4์—์„œ Qt5๋กœ ์ด๋™๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • gr-utils๋Š” gr_modtool ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ํฌ๊ฒŒ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. PyQwt ๊ธฐ๋ฐ˜ ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • gr-comedi, gr-fcd ๋ฐ gr-wxgui ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ์ง€์›์ด ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€