GNU Radio学习一 :什么是GUN Radio

GNU Radio 是什么:

GNU Radio是一个通过最小程度地结合硬件(主要是USRP),用软件来定义无线电波发射和接收的方式,搭建无线电通信系统的开源软件系统,用软件来定义无线电波发射和接受的方式,搭建无线电通信系统的开源软件系统,即现在那些高性能的无线电设备所遇到的数字调制问题将变成软件问题。

GNU Radio应用程序用Python语言来编写,真实的信息处理过程是由C++浮点扩展库来实现的。因此开发者可以获得实时高效的可复用的应用开发环境。使用预先记录或生成的数据来发开信号处理算法。

GNU Radio提供一个信号处理模块的库,并且通过建立一个流向图flow graph把单个的处理模块连接在一起形成一个无线电系统。

Python用来构造流图,应用程序的图形化接口,C++用于编造各种block。

信号处理模块是使用C++来实现的,理论上来说,信号数据流不停的从输入端口流入从输出端口流出,信号处理快(blocks)的属性包括输入和输出的端口数,流过他们的数据的类型。

信号处理块的属性包括输入和输出的端口数,流过他们的数据类型,经常使用的数据流的类型是短整型(short),浮点型(float),复数(complex)类型

一些处理模块仅仅有输出端口或者输入端口,他们分别为信号源(data source)和信号接收器(sink)。

GNU  Radio包含丰富的block,包括各种滤波器、FFT变换、调制/解调模块等等

是一个设计框架,用户可以用来设计、模拟和部署的真实高效无线电系统。这是一个高度模块化,自带flow graph流程图,集成处理各种信号的库,可以很方便的将各个模块结合到一起来处理复杂的信号。

GNU Radio已经被广泛应用于无线电世界,可以用电脑软件处理包括音频处理、移动通信、卫星跟踪、雷达系统、GSM网络、数字信号广播等等。

GNU Radio 硬件平台本身并不是非常特殊的硬件,也没有包含现成的通信协议和通信标准,比如802.11、Zigbee、LTE等,但它可以用于开发并实现任何频率、任何协议的无线电通信。

 USRP是什么:

USRP(通用软件无线电外设),旨在使普通计算机能像高带宽的软件无线电设备一样工作。从本质上讲,它充当了一个无线电通讯系统的数字基带和中频部分。

USRP背后的基本设计理念是在主机CPU上完成所有的波形相关方面的处理,比如调制和解调。所有诸如数字上下变频,抽样,和内插等高速通用操作都在FPGA上完成

FPGA 是一个通用硬件,它的行为完全由配置的 bitstream 来决定,你可以把bitstream 看作是一个目标码。这个 bitsteam 是由一个高级硬件描述语言编译得到的,在 USRP 里面这是由 verilog 硬件描述语言来实现的。

FPGA所做的基本是执行高带宽下的数学运算,并减少数据传输速率。

USRP2 针对 DSP 应用优化了的大型现场可编程门阵列( FPGA )可以在高采样率下处理复杂波形。千兆以太网接口,使应用程序可以使用 USRP2 同时发送或接受 50 MHz 的射频带宽。在 USRP2 中,FPGA 出现了诸如数字上变频器和下变频器等高采样率处理器。较低采样率的操作可在主机电脑上,甚至可以在具有 32 位 RISC 微处理器和有很大用户设计自由空间的 FPGA 上做。更大的 FPGA 使得 USRP2 可以在没有电脑主机的情况下作为一个独立的系统运行。 USRP2 的配置和固件被存储在一个 SD 闪存卡里,无需特别的硬件就可以轻松编程。

USRP2 母板有四个插槽,可以插入 2 个基本接收子板和 2 个基本发送子板,或者 2 个RFX 板子。子板是用来装载 RF 接收接口或者调谐器和射频发射机的。有 2 个标注为 TXA 和 TXB 的插槽用于连接 2 个发送子板,相应的,有 2 个标注为RXA 和 RXB 的接收子板插槽 。每个子板插槽 可以访问 4 个高速 AD/DA 转换器其中的 2 个( DAC 输出用于发送, ADC 输入用于接收) 。

软件无线电的思想:

图中,一个天线,一个神奇的RF前段,一个模拟数字转换器ADC和一堆代码,ADC是一个连接连续模拟的自然世界和离散的数学世界的桥梁

ADC有两个主要特性:抽样率和动态范围。

抽样率是ADC测量模拟信号的速度,动态范围是ADC区别最低信号值和最大信号值得精度,这决定ADC数字信号输出的比特数。8位的AD转换器最多代表256个信号层次。总的来说,ADC的物理特性和价格决定了抽样率和动态范围

猜你喜欢

转载自blog.csdn.net/hyyjiushiliangxing/article/details/107140369