软件无线电(SDR)的架构及相关术语

news2025/1/14 10:30:58

        今天简要介绍实现无线电系统调制和解调的主要方法,这在软件定义无线电(SDR)的背景下很重要。

外差和超外差

无线电发射机有两种主要架构——一种是从基带频率直接调制到射频频率(称为外差),而第二种超外差是通过两个调制阶段来实现这种转换:第一个是从基带到中频(IF),第二个是从中频到射频(RF)。

图1 外差方案中的调制和解调上
图1 外差方案中的调制和解调上

        图1展示了外差方案中的调制和解调。在这种情况下,单级调制用于将信号从基带转换到RF频率,而单级解调状态则进行相反的转换,从RF回到基带。

超外差方案如图2所示,显示了发生的频移。特别要注意的是,中频信号通常被调制到几十到几百MHz的频率范围内,而最终的射频频段可能要高得多——高达数十GHz。

图2 使用中频(IF)的调制和解调
图2 使用中频(IF)的调制和解调


采样率的影响

        SDR中数字处理元件可以实现的采样率,特别是无线电的ADC和DAC的采样率,决定了无线电的实现方式——特别是哪些部分可以实现数字,哪些部分需要模拟电路。这是因为数字处理只能在满足奈奎斯特准则的情况下使用,换句话说,当采样率大于信号中存在的最大频率分量的两倍时,根据用于传输信号的射频频带,有可能实现所有调制和解调的数字化,具体而言,如果满足下面条件:

        其中,fs是ADC和DAC的采样率,frfmax是RF调制信号中存在的最大频率。如果满足上述条件,那么所有的模拟信号处理都可以在数字域中完成,从而实现所谓的直接射频(Direct-RF)或几乎全数字(Almost-All-Digital)无线电架构。

        如果不能满足上式的条件,另一种选择是在数字域中实现基带和中频(IF)之间的调制和解调阶段,而IF和RF之间的转换则通过模拟电路来处理。在这种情况下,ADC位于IF频段,所需的采样率可能从几十MHz到几百MHz不等。

        现在,可以继续考虑三种不同的无线电架构,它们是基于DAC和ADC的位置而产生的。请注意,所有这些模型都是简化的表示,省略了一些所需的滤波阶段。

直接RF(几乎全数字)SDR

        通过这些不同的无线电架构,我们可以看到,随着ADC和DAC技术的进步,特别是采样率的提高,越来越多的频带可以实现几乎全数字的无线电。这种几乎全数字的无线电需要非常少的模拟处理——主要包括天线、前端滤波器和放大器。从SDR的角度来看,几乎所有功能都通过数字实现是非常重要的,这意味着无线电的操作可以通过软件来控制,如图3所示。

图3 Direct-RF软件定义无线电(RFSoC)的架构
图3 Direct-RF软件定义无线电(RFSoC)的架构标题


中频采样SDR

        对于射频(RF)频率高于可用的DAC和ADC采样率的情况,可以使用超外差变频架构,基带与中频(IF)之间的调制/解调在无线电的数字部分完成,而IF与RF之间的转换则使用模拟电路处理。即便如此,通常仍然可以通过软件对模拟混频阶段施加控制。当ADC位于IF频率时,所需的采样率可能从几十兆赫兹(MHz)到几百兆赫兹(MHz)不等。这种类型的SDR架构如图4所示。

图4:数字中频软件定义无线电的架构
图4:数字中频软件定义无线电的架构


基带采样SDR

        另一类SDR,如图5所示,具有基带处理速率的ADC,所有调制和解调都在模拟域中执行,无论是使用单级还是两级。从历史上看,这种方法在DAC和ADC技术(特别是可实现的采样率)的限制下被使用,因为这是A/D接口唯一可行的位置。这种“基带采样”架构也可能被用在低成本、低数据速率的设备中,以最小化对数字处理器的要求,或者在应用中采用最先进的多GSPS数据转换器,用于发射和接收极宽频带的信号。

图5:基带采样软件定义无线电的架构
图5:基带采样软件定义无线电的架构

数字化实施的优势

        比较图3~图5可以清楚地看出,ADC使用的采样率越高,可以进行数字处理的量就越大。

        使用数字实现进行调制和解调有几个优点,包括更高的操作精度,减少组件公差的影响和更强的抗老化效应,更小的物理尺寸和简化的物料清单,功耗也可能更低。

        在SDR的背景下也有额外的好处,特别是由于软件控制无线电操作的范围增加,以及由此带来的灵活性。在使用FPGA或Soc的情况下,还可以提供硬件处理的可重编程性,从而实现更基础的升级和功能变化。

关键无线电术语和参数

在继续后面的章节之前,有必要定义一些关键术语和概念,这些术语和概念将在讨论SDR以及一般无线电系统的背景下频繁出现。这些在图6中进行了说明,并在后面进行了描述。

图6:信号和射频带宽,以及调谐范围(图示了频率、幅度、0Hz频率、RF带宽、采样率fs、调谐范围、信号带宽等概念。)
图6:信号和射频带宽,以及调谐范围(图示了频率、幅度、0Hz频率、RF带宽、采样率fs、调谐范围、信号带宽等概念。)

射频(RF)带宽(收发器)

        RF带宽这个术语描述了无线电收发器能够产生或捕获的频率范围。在SDR(以及一般数字无线电)的背景下,这与ADC和DAC采样率有关。

如图6所示,RF带宽是ADC和DAC使用的采样频率的一半。这假设使用的是单个ADC和DAC,代表的是实信号(与复信号相对)。如果使用复输入/输出,则RF带宽可以翻倍至完整的采样频率,但这需要一对ADC和DAC。复信号的主题将在第7章中介绍。

信号带宽

当提到无线电信号时,带宽是指在传输信号中存在的频率范围。注意图6中绿色信号频谱标注的信号带宽。

当使用SDR时,信号的带宽是实现设计的一个特征(可以在软件中定义)。例如,设计的发射机可能产生带宽为10kHz或100MHz的信号,具体取决于其配置。一般来说,更大带宽的信号可以以更快的速率传输数据。

最大信号带宽受限于SDR的射频带宽,这是实现SDR所使用的物理硬件设备的属性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2251424.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Electron学习笔记(四)】进程通信(IPC)

进程通信(IPC) 进程通信(IPC)前言正文1、渲染进程→主进程(单向)2、渲染进程⇌主进程(双向)3、主进程→渲染进程 进程通信(IPC) 前言 在Electron框架中&…

Power BI - Connect to SharePoint online list with Image column

1.简单介绍 当前SharePoint online list有modern和classic两种模式,现在使用modern模式的比较多。list中有Image类型的列,Power BI如何连接到SharePoint list并显示image呢 note, SharePoint list中的Image列,Lookup列,People列…

电机控制理论基础及其应用

电机控制理论是电气工程和自动化领域中的一个重要分支,它主要研究如何有效地控制电机的运行状态,包括速度、位置、扭矩等,以满足各种应用需求。电机控制理论的基础知识涵盖了电机的工作原理、数学模型、控制策略以及实现技术等方面。下面是一…

二十一、QT C++

1.1QT介绍 1.1.1 QT简介 Qt 是一个跨平台的应用程序和用户界面框架,用于开发图形用户界面(GUI)应用程序以及命令行工具。它最初由挪威的 Trolltech (奇趣科技)公司开发,现在由 Qt Company 维护&#xff…

基于Java Springboot蛋糕订购小程序

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 微信…

Kubernetes 01

MESOS:APACHE 分布式资源管理框架 2019-5 Twitter退出,转向使用Kubernetes Docker Swarm 与Docker绑定,只对Docker的资源管理框架,阿里云默认Kubernetes Kubernetes:Google 10年的容器化基础框架,borg…

7. 现代卷积神经网络

文章目录 7.1. 深度卷积神经网络(AlexNet)7.2. 使用块的网络(VGG)7.3. 网络中的网络(NiN)7.4. 含并行连结的网络(GoogLeNet)7.5. 批量规范化7.5.1. 训练深层网络7.5.2. 批量规范化层…

芯片测试-射频中的单位

射频中的单位 💢dB,dBc💢💢dB💢💢dBc💢💢3dB和0dB💢 💢dBm和dBw💢💢dBuV,dBmV和dBV💢💢dBuV&#…

【C++】数字位数提取:从个位到十位的深入分析与理论拓展

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯第一题:提取个位数解法代码解法分析代码优化拓展思考:取模运算的普适性 💯第二题:提取十位数题目解读与思路分析方法一&…

opengl 三角形

最后效果&#xff1a; OpenGL version: 4.1 Metal 不知道为啥必须使用VAO 才行。 #include <glad/glad.h> #include <GLFW/glfw3.h>#include <iostream> #include <vector>void framebuffer_size_callback(GLFWwindow *window, int width, int heigh…

如何使用Postman优雅地进行接口自动加密与解密

引言 在上一篇文章中&#xff0c;分享了 Requests 自动加解密的方法&#xff0c;本篇文章分享一下更加方便的调试某个服务端接口。 Postman Postman 这个工具后端小伙伴应该相当熟悉了&#xff0c;一般情况下我们会在开发和逆向过程中使用它来快速向接口发送请求&#xff0c;…

PDF view | Chrome PDF Viewer |Chromium PDF Viewer等指纹修改

1、打开https://www.browserscan.net/zh/ 2、将internal-pdf-viewer改为 internal-pdf-viewer-jdtest看下效果&#xff1a; 3、源码修改&#xff1a; third_party\blink\renderer\modules\plugins\dom_plugin_array.cc namespace { DOMPlugin* MakeFakePlugin(String plugin_…

2024143读书笔记|《遇见》——立在城市的飞尘里,我们是一列忧愁而又快乐的树

2024143读书笔记|《遇见》——立在城市的飞尘里&#xff0c;我们是一列忧愁而又快乐的树 第1章 年年岁岁岁岁年年第2章 遇见第3章 有个叫“时间”的家伙走过第4章 初雪第6章 回首风烟 《华语散文温柔的一支笔&#xff1a;张晓风作品集&#xff08;共5册&#xff09;》作者张晓风…

python基础(五)

正则表达式 在编写处理字符串的程序或网页时&#xff0c;经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说&#xff0c;正则表达式就是记录文本规则的代码。 符号解释示例说明.匹配任意字符b.t可以匹配bat / but / b#t / b1t等\…

【连接池】.NET开源 ORM 框架 SqlSugar 系列

.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…

《业务流程--穿越从概念到实践的丛林》读后感一:什么是业务流程

1.4 流程建模 画流程图常见的方法派别如下: 1)流图。美国国家标准协会(ANSI)制定的规范,利用VISIO中的流程符号进行画图。 2)事件驱动流程链(EPC)。ARIS(集成信息系统架构)。认为流程是由一系列事件触发,并且 针对事件的行为又将引发新的事件,流程的表现为“事件--功…

Sybase数据恢复—Sybase数据库无法启动,Sybase Central连接报错的处理案例

Sybase数据库数据恢复环境&#xff1a; Sybase数据库版本&#xff1a;SQL Anywhere 8.0。 Sybase数据库故障&分析&#xff1a; Sybase数据库无法启动。 错误提示&#xff1a; 使用Sybase Central连接报错。 数据库数据恢复工程师经过检测&#xff0c;发现Sybase数据库出现…

redis基础spark操作redis

Redis内存淘汰策略 将Redis用作缓存时&#xff0c;如果内存空间用满&#xff0c;就会自动驱逐老的数据。 为什么要使用内存淘汰策略呢&#xff1f; 当海量数据涌入redis&#xff0c;导致redis装不下了咋办&#xff0c;我们需要根据redis的内存淘汰策略&#xff0c;淘汰一些不那…

C++学习日记---第14天(蓝桥杯备赛)

笔记复习 1.对象的初始化和清理 对象的初始化和清理是两个非常重要的安全问题&#xff0c;一个对象或者变量没有初始状态&#xff0c;对其使用后果是未知&#xff0c;同样的使用完一个对象或者变量&#xff0c;没有及时清理&#xff0c;也会造成一定的安全问题 构造函数&…

Unity ShaderLab 实现3D物体描边

实现思路&#xff1a; 给物体添加第二个材质球&#xff0c;在shader的顶点着色器中使顶点的位置变大&#xff0c;然后在片元着色器中输出描边颜色。 shader Graph实现如下&#xff1a; ShaderLab实现如下&#xff1a; Shader "Custom/Outline" {Properties{[HDR]_…