SDR实战(二)-RFSOC架构

本文详细描述了RFSOC(RadioFrequencySystem-on-Chip)的结构,包括其由可编程逻辑(PL)和处理器系统(PS)组成的传统架构,重点介绍了RF数据转换器、射频前端、前向纠错模块和设计方法,以及与ZYNQ的区别,如ARM处理器的位宽差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

高层次结构图 High level illustration

和传统的ZYNQ的组成一样,RFSOC也是由PL和PS组成。

其中下图中的红框内的RF相关的部分是硬化的,而并不是可编程逻辑,但却具有可编程性。

RFSOC的高层次结构图

  • RF Data Converter (RFDC) blocks:集成了ADC和DAC,可以在Gsps的高采样率下工作,使其可以直接采样许多radio signals。还包含可编程数字上变频器DUCs(Digital Upconverters)和数字下变频器DDCs(Digital Downconverters),用于在baseband(接近0Hz信号)和modulated frequencies之间进行转换。

  • Soft Decision Forward Error Correction (SD-FEC) blocks:软判决前向纠错模块:无线通信方案通常采用某种形式的前向纠错(FEC)编码来减轻无线电信道引入的错误(即可让接收器检测到比特错误,并在可能的情况下进行纠正)。

  • Gigabit Transceivers (GTY Transceivers):RF SoC可以用于实现无线电前端,但需要高速链路连接到核心网络,这些通常以有线或光的形式实现。RF SoC上支持所需的接口,由经过加固的GTY收发器块、高速率串行接口提供,可以实现许多不同的标准。

  • Programmable Logic(PL):可编程硬件资源,用于实现自定义无线电架构。

  • Processing System(PS):包括一个四核应用处理单元(APU)、一个双核实时处理单元(RPU),以及平台管理(PMU)和安全功能。还有本地内存、互连和外围接口。

处理器系统-PS

应用处理单元-APU

APU:Application Processing Unit。

包含一个四核 Arm Cortex-A53 处理器,它拥有四个处理核心,每个核心都有自己的专用计算单元。

每个核都包括一个浮点单元(FPU)、Neon 媒体处理引擎(MPE)、加密扩展(Crypto)、内存管理单元(MMU)和每个核心的专用一级缓存。

整个 APU 都可以访问一个 Snoop 控制单元(SCU)和二级缓存。

实时处理单元-RPU

RPU:Real-Time Processing Unit

包含两个用于实时应用和确定性系统控制的Arm Cortex-R5内核,并具有低延迟性能。

RPU包含多个计算单元和存储器,包括一个浮点单元、紧耦合存储器(TCM)、两个本地高速缓存和一个存储器保护单元(MPU)。

平台管理单元-PMU

PMU:Platform Management Unit

PMU 包含一组三个经过硬化处理的 MicroBlaze 处理单元。

MicroBlaze CPU 通过多数表决系统进行配置,以增加关键平台管理功能的可靠性。

PMU 包含多个存储器以及能够有效管理 RFSoC 设备的固件。

配置安全单元-SCU

SCU:Configuration Security Unit

RFSoC设备的安全性由配置安全单元(CSU)处理,该单元包括一个安全处理器块(SPB)和加密接口块(CIB)。

与PMU类似,SPB包含三个MicroBlaze处理单元。

这些处理单元管理Arm处理器的安全启动以及几个其他安全特性,例如物理不可克隆函数(PUFs)和防篡改保护。

可编程逻辑-PL

RFSoC设备上可用的PL相当于FPGA。PL是SDR设计的一个组成部分,因为它直接与RF-ADCs和RF-DACs的接口相连。

射频数据转换器-RFDC

PL与RF的接口

RFSoC PL 充当 RF-ADC 和 RF-DAC 通道的网关。

信号数据在 PL 和 RFDC 之间使用 AXI4-Stream 接口进行传输。

AXI4-Stream 接口特性包括一个数据源(称为主设备 /管理器)和一个数据接收器(从设备 / 下属)。

首先,对于 RF-DAC 通道,我们可以看到 PL 负责将数据传输到 RF 接口。在此设置中,PL 是管理器,RF-DAC 是下属,如图 3.9(a) 所示。在这里,显示的是复数到实数配置,因为 RF-DAC 通道中的复数数据变成了模拟实数数据。

相比之下,RF-ADC 通道将数据传输到 RF 接口供 PL 使用。在这种情况下,RF-ADC 是管理器,PL 是下属。此设置的示例如图 3.9(b) 所示,这是一个复数到复数配置的示例。

RF-ADC层次结构

RF-ADC 可以配置为三种不同类型中的任意一种,每种类型针对任何给定设备都是固定的。RF-ADC 可以配置为每Tile 4 个块、每Tile 2 个块或每Tile 1 个块(分别称为四重、双重和单重块)。例如,下述的 ZU48DR 使用每Tile 2 个块的布局(即双重块),这意味着总共需要 4 个Tiles来容纳所有 8 个 RF-ADC 块。

每个Tile都包含一个锁相环(PLL),用于生成芯片内部所需的时钟。PLL需要一个外部低抖动的片外时钟才能有效工作。

RF-DAC层次结构

与RF-ADC类似,可以配置为每Tile2个块或4个块,每个Tile都有一个PLL。

前向纠错-SD-FEC

在发送端,FEC编码器用于在调制和传输之前的源数据上,提高了链路的质量。

在接收端,FEC解码器可以检测和纠正发生的任何错误(上限取决于编码方案)。

设计方法 Design Methods

那么一般的RFSOC设计方法有哪些呢?

同样的,根据RFSOC的结构类似,设计也分为硬件部分和软件部分。

  • PL端:Vivado IDE,还有集成在MATLAB和Simulink环境中的block-based tools、Vitis™Model Composerand HDL Coder;

  • PS端:PYNQ framework。这是AMD的一个开源项目,有助于在AMD自适应计算平台上实现软件和硬件的集成和生产力。它通过将SoC硬件设计、Linux和Python的元素与Jupyter环境相结合来实现这一点,用于应用程序开发。

ZYNQ家族对比

需要注意的是ZYNQ-7000中的ARM处理器是32bit,而其他的为64bit。

### RFSOC 47DR开发板概述 RFSOC 47DR开发板采用了Xilinx ZYNQ UltraScale+ RFSoC XCZU47DR芯片,集成了高性能的模拟前端和强大的可编程逻辑资源。这款开发板不仅提供了丰富的外设接口,还具备卓越的数据处理能力。 #### 硬件规格 - **处理器配置** - 内置64位四核ARM Cortex-A53应用处理器子系统 - 双核ARM Cortex-R5实时处理器子系统[^1] - **RF数据转换器** - 支持8路ADC输入通道,每通道最大采样率为5 GSPS - 提供8路DAC输出通道,每通道最高采样速率可达9.8 GSPS - JESD207高速串行链路用于连接外部射频设备 - 多种通用I/O端口包括但不限于SPI, I2C, UART等通信协议的支持 - 配备千兆以太网控制器以便于网络通讯 - GPIO引脚可用于自定义控制线路设计[^3] ```cpp // C++代码示例:初始化UART接口 #include "xuartps.h" int main(){ XUartPs_Config *Config; int Status; Config = XUartPs_LookupConfig(XPAR_XUARTPS_0_DEVICE_ID); Status = XUartPs_CfgInitialize(&Uart, Config, Config->BaseAddress); if (Status != XST_SUCCESS){ return XST_FAILURE; } // 更多操作... } ``` #### 使用教程 对于初学者来说,可以从官方文档入手学习如何设置环境变量、安装必要的工具包以及编写简单的测试程序来验证硬件的功能性。随着技能水平提升,还可以探索更复杂的主题比如优化性能参数调整、实现特定应用场景下的算法部署等等。 ##### 安装指南 确保已准备好Linux操作系统作为主机平台,并按照以下步骤完成基本软件栈构建: 1. 下载并解压Vivado HLS版本; 2. 设置环境路径指向新安装目录; 3. 执行命令`source settings.sh`加载所需库文件; 4. 启动IDE界面开始项目创建流程。 ##### 编程入门 利用SDK(Software Development Kit),开发者可以通过图形化界面轻松地管理工程结构,同时也能借助预编译好的驱动函数简化底层交互过程。此外,在线社区论坛也是解决问题的好去处,那里聚集了许多经验丰富的工程师愿意分享自己的见解和技术心得。 #### 开发资源 为了帮助用户更好地理解和掌握这款示范平台的应用技巧,制造商通常会提供一系列辅助资料,具体如下所示: - **技术白皮书**:深入剖析架构特点与优势所在。 - **参考手册**:详尽描述各个组件的工作原理及API调用方法。 - **案例研究**:通过实际项目的成功实施展示产品价值。 - **视频课程**:由资深讲师录制的教学影片,便于直观理解概念要点。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值