主要内容

使用Xilinx RFSoC设备实现5G NR MIB恢复

本示例演示如何在Simulink®中模拟和部署5G NR MIB Recovery算法,该算法使用的是针对Xilinx Zynq®UltraScale+™RFS金宝appoC ZCU111评估板的SoC Blockset®实现。使用本示例,您可以从5G NR波形中恢复、解调主同步信号(PSS)和次同步信号(SSS),并模拟在处理器上运行的Cell Search控制算法序列,同时与Cell Search硬件算法进行交互。在仿真中,在硬件实现之前,可以在处理器中对控制器和FPGA中的硬件算法进行系统级微调和验证。

金宝app支持的硬件平台

  • Xilinx Zynq®UltraScale+™RFSoC ZCU111评估试剂盒+ XM500 Balun卡+带通滤波器:3000-4300 MHz

设计任务和系统说明

在本例中,设计任务是构建一个用于5G应用的无线通信系统,并在Xilinx RFSoC设备上实现该系统。本例中的cell搜索和MIB恢复算法是NR cell搜索和MIB恢复算法NR HDL下行链路接收器MATLAB参考(无线HDL工具箱)的例子。该图展示了单元搜索和MIB恢复算法的概念概述。

  • SS块检测器和SS块解码器执行检测、解调和解码5G NR同步信号块(SSB)所需的所有高速信号处理任务。这使得这些部分非常适合在可编程逻辑(PL)上实现FPGA。为了在PL中实现SS块检测器和SS块译码器,本例使用了Simulink®硬件模型金宝appNR HDL细胞搜索(无线HDL工具箱)NR HDL MIB恢复(无线HDL工具箱)参考示例,分别。

  • 搜索控制器协调探测器和解码器硬件核心的运行,且运行速度较低,非常适合在集成的ARM®处理系统(PS)上进行软件实现。对于软件实现,本示例使用了搜索控制器算法NR HDL下行链路接收器MATLAB参考(无线HDL工具箱)的例子。

系统规范

  • 5G射频载波频率:3560 MHz

  • Cell Search接收算法采样率:61.44 MSPS

使用SoC模块集进行设计

创建一个SoC模型soc_5GNRMIBRecovery_top将硬件板设置为Xilinx Zynq Ultrascale+ RFSoC ZCU111评估试剂盒。该模型包括FPGA模型soc_5GNRMIBRecovery_fpga和处理器模型soc_5GNRMIBRecovery_proc,它们被实例化为模型引用。顶部型号还包括在FPGA和处理器之间共享外部内存的内存通道和内存控制器块。

open_system (“soc_5GNRMIBRecovery_top”

close_system (“soc_5GNRMIBRecovery_top”

创建一个SoC模型soc_5GNRMIBRecovery_hwtop作为一种具有静态配置的硬件算法仿真的顶级模型。该型号包括FPGA型号soc_5GNRMIBRecovery_fpga

open_system (“soc_5GNRMIBRecovery_hwtop”

close_system (“soc_5GNRMIBRecovery_hwtop”

射频数据转换器配置

一个射频soc设备有它的射频数据转换器连接到可编程逻辑。要配置ADC和DAC设置,请使用射频数据转换器(RFDC)模块。该模块在Simulink中提供了与Xilinx射频数据转换器IP的接口,用于建模用于在Xilinx RFSoC设备上实现的无线系统。金宝app

为了满足3560mhz 5G射频载波频率和61.44 MSPS基带采样率的系统要求,根据这些值配置RF Data Converter模块。DAC和ADC混频器的NCO频率设置为3.560 GHz, ADC和DAC采样率设置为3932.16 MSPS,您必须选择的值插值模式(xN)大量毁灭模式(xN),每个时钟周期的采样参数,使无线算法FPGA的有效时钟周期(采样率)是理想的值,本例为:61.44 MSPS。计算并在块掩码上显示为流时钟频率(MHz)参数。应用.设置大量毁灭模式(xN),则抽取后的有效采样率为491.52 MSPS。将时钟周期(基带采样率)设置为61.44 MSPS每个时钟周期的采样8。同样的设置插值模式(xN)8,每个时钟周期的采样是8DAC选项卡。这将意味着流的时钟频率to be 3932.16/(8*8) = 61.44 MHz。

硬件逻辑设计

FPGA模型soc_5GNRMIBRecovery_fpga包含三个子系统:传输重复、矢量插值(连接到RFDC块的DAC部分)和5G Cell搜索接收(连接到RFDC块的ADC部分)。

open_system (“soc_5GNRMIBRecovery_fpga”

close_system (“soc_5GNRMIBRecovery_fpga”

在5G Cell Search Receive子系统中,Vector Decimator模块以128位接收打包的8个样本。矢量抽取模块对输入矢量样本进行8次抽取,并发送给5G单元搜索接收子系统。向量抽取后的采样率为61.44 MSPS,这与5G cell搜索算法对其处理的预期一致。关于5G单元搜索和MIB恢复算法的完整设计,请参见NR HDL细胞搜索(无线HDL工具箱)NR HDL MIB恢复(无线HDL工具箱)示例是模型引用。单元搜索算法通过内存通道将PSS报告作为流数据发送到处理器上运行的搜索控制器。

为了提供测试5G NR波形,构建一个发射器,从块RAM读取数据样本,并将其发送到RFDC的DAC部分。使用DDR内存的处理系统的数据路径从处理器写入数据样本。矢量插值块将来自传输重复子系统的输入样本用8个(491.52 MSPS)插值,并作为8个样本的矢量一次发送。所有8个样本打包在一起作为128位轴流数据并发送到DAC。此图显示了FPGA发送和接收路径中的采样率流。

在接收路径中,Vector Decimator块从射频数据转换器块以491.52 MSPS的采样率接收打包的8个样本。Vector Decimator块对输入向量样本进行8次抽取,并发送给Cell Search Receiver。向量抽取后的采样率为61.44 MSPS,这与Cell Search Receiver对其进行处理的预期一致。Cell Search Receiver以61.44 MHz的采样时间将处理后的数据发送给处理器。在传输路径中,处理器将5G测试波形样本写入FPGA块RAM,采样率为61.44 MSPS。块RAM利用传输重复逻辑,通过矢量插值块连续地将采样数据发送到射频数据转换器。矢量插值块用8个(491.52 MSPS)插入输入样本,并作为8个样本的矢量发送到射频数据转换器块。

处理器逻辑设计

处理器逻辑包括写任务、读任务和周期任务。周期任务是由定时器驱动的任务,周期时间为1e-3,在任务管理器中定义。周期性任务驱动单元格搜索控制器块。Cell Search Controller块根据通过AXI4-Lite读寄存器和流读接口接收到的状态,通过AXI4-Lite寄存器配置和控制硬件算法。在检测到有效的PSS和SSS后,控制器使用UDP块向MATLAB主机提供单元搜索报告。UDP Write PSSReport子系统、UDP MIBReport子系统和UDP Write SSSReport子系统分别通过UDP协议将PSS报告、SSS报告和MIB报告转发给主机。

读任务是一个基于事件的任务,由来自FPGA的数据通过DDR内存到达驱动。这些数据包括生成PSS和SSS报告所需的信息,如CellID和信噪比(SNR)。处理器算法任务在任务管理器块中表示为dataTask,并指定为事件驱动的任务。写任务是一个基于事件的任务,用于将测试波形从处理器传输到FPGA。上述任务均在处理器模型中的Processor Algorithm Wrapper子系统下建模soc_5GNRMIBRecovery_proc并连接到顶层的任务管理器块。

open_system (“soc_5GNRMIBRecovery_proc”

close_system (“soc_5GNRMIBRecovery_proc”

主机模式

处理器使用UDP写块通过以太网向主机发送PSS、SSS和MIB报告。处理器模型中的UDP Write块的IP地址应该配置为主机的IP地址。

这个运行在主机上的接口模型显示了如何接收数据并向MATLAB工作空间报告。您可以使用摇杆开关来选择在MIB恢复后自动停止模型还是无限期接收。

open_system (“soc_5GNRMIBRecovery_hostUDPReceive”

close_system (“soc_5GNRMIBRecovery_hostUDPReceive”

模拟

要确认基本操作,可以使用生成的5G NR波形运行硬件模型。你可以用nrhdlexamples.generateFR1SSBurstWaveform函数。模型在初始化回调中调用这个函数,并将波形赋给工作区变量burstWaveform.由于5G Cell Search Receive子系统包含大量hdl优化的块,需要使用基于样本的信号以高采样率运行进行仿真,因此完全仿真可能需要一段时间。您可以找到SS块检测器和SS块译码器模型的模拟参考功能在NR HDL细胞搜索(无线HDL工具箱)NR HDL MIB恢复(无线HDL工具箱)分别的例子。

您可以使用此硬件模型使用测试工具快速模拟和验证硬件功能。为了在硬件模型中建模发送路径,通过射频数据转换器模块与接收机环回,测试线束使用生成的5G NR波形作为输入。通过双击手动切换块,可以在模拟搜索模式或解调模式之间进行切换。在搜索模式下,模型到达硬件状态3,即检测到PSS。搜索为每个PSS检测生成一个PSS报告。这些报告被零填充到241项,并记录到MATLAB工作区。在解调模式下,模型达到州8,表示SSB被解调,SSS被检测。一旦模型到达硬件州8时,模型开始处理MIB,并提供MIB数据。该模型还返回零填充241条目PSS报告。您可以仅为静态配置模拟此硬件模型。

如果您想查看单元搜索算法的完整硬件和软件仿真以及用于多频率搜索的控制器动态配置,请运行5G NR MIB恢复top模型。要查看检测到的PSS、其解调和恢复的MIB数据,该模型必须运行至少180毫秒。查看仿真数据检查器来监控硬件和软件状态信号。仿真数据检查器绘制细胞搜索算法的进程,包括启动和重启脉冲、频率偏移(Hz)和硬件(SS块检测器)状态。

PSS搜索操作完成,发现PSS,解调完成,发现SSS状态从上述仿真数据检查图中的硬件状态信号清晰可见。

要查看主机的PSS、SSS报表和MIB报表数据,先运行主机模型,再运行5G NR MIB恢复top模型。当主机接口模型成功运行时,该模型将PSS、SSS的接收信噪比(SNR)以dB的形式显示,并在单独的窗口中显示解码后的cell ID和MIB数据。为了进一步处理,模型还导出了三个时间序列变量到MATLAB工作空间:sll_pssReportsl_sssReportsl_mibReport

硬件实现和运行

硬件设置

根据这些连接,在XM500 Balun卡上连接SMA连接器和带通滤波器:3000-4300 MHz,以完成DAC和ADC之间的环回。

DAC229_T1_CH0 (J7) ADC225_T1_CH0 (J2)。

要在受支持的SoC板上实现该模型,请使用金宝appSoC建设者工具。请确保“Hardware Board”已设置为Xilinx Zynq UltraScale+ RFSoC ZCU111评估试剂盒系统芯片选项卡的Simulin金宝appk工具条。

打开SoC建设者,点击配置、构建和部署.后SoC建设者工具打开后,按照以下步骤操作。

  1. 选择“Build Model”设置屏幕上。单击“Next”。

  2. 单击“Next”审查任务地图屏幕上。

  3. 单击“查看/编辑内存地图”检查内存映射屏幕,以查看内存地图。单击“Next”。

  4. 控件上指定项目文件夹选择项目文件夹屏幕上。单击“Next”。

  5. 选择“构建外部模式”选择构建操作屏幕上。单击“Next”。

  6. 单击“验证”验证模型屏幕以检查要实现的模型的兼容性。单击“Next”。

  7. 单击“构建”构建模型屏幕开始构建模型。当FPGA合成开始时,一个外部外壳打开。单击“Next”。

  8. 单击“测试连接”连接硬件屏幕测试主机与SoC板的连通性。单击“Next”进入运行应用程序屏幕上。

FPGA综合可能需要30分钟以上的时间。为了节省时间,您可以按照以下步骤使用预先生成的位流。

  1. 关闭外部外壳,结束FPGA合成。

  2. 在MATLAB命令提示符下输入此命令,将预生成的位流复制到您的项目文件夹中。

  3. 点击“加载并运行”按钮,加载预生成的比特流并在SoC板上运行模型。

拷贝文件(fullfile (matlabshared.sup金宝appportpkg.getSupportPackageRoot,“工具箱”“soc”“金宝appsupportpackages”“xilinxsoc”“xilinxsocexamples”“比特流”“soc_5GNRMIBRecovery_top-XilinxZynqUltraScale_RFSoCZCU111EvaluationKit.bit”),”。/ soc_prj ');

加载位文件后,打开生成的软件模型。

通过单击以外部模式运行模型监视和优化.您可以从Simulink模型控制配置。金宝app

您可以使用软件模型中的Simulation Data Inspector来监视硬件和软件。仿真数据检查器绘制细胞搜索算法的进程,包括启动和重启脉冲、频率偏移(Hz)和硬件(SS块检测器)状态。

从硬件生成PSS, SSS和MIB报告

运行主机模型查看PSS、SSS和MIB报告。当主机接口模型运行成功时,该模型以dB的形式显示PSS、SSS的接收信噪比,并在单独的窗口中显示解码后的cell ID和MIB数据。为了进一步处理,模型还导出了三个时间序列变量到MATLAB工作空间:sl_pssReportsl_sssReportsl_mibReport

总结

本示例演示了如何使用SoC Blockset将5G NR MIB恢复算法集成到Xilinx ZCU111评估板上,并在仿真和硬件上验证该设计。实现从5G NR波形中恢复、解调PSS和SSS符号,并解码MIB报告。

另请参阅