主要内容

多相信道器

这个例子展示了如何使用hdl优化的Channelizer块来处理传入的模数转换器(ADC)样本,并产生具有512 MHz带宽的频谱。MATLAB®通过TCP/IP连接使用FPGA API函数显示结果谱图。返回的信道器数据是有限的突发,由捕获循环中的AXI4寄存器触发。该模型还包含一个到数字-模拟转换器(DAC)的接口,通过使用一个数字控制振荡器(NCO)来驱动在AXI4上以某种频率命令的音调。

需求

  • Vivado®设计套件的支持版本列于HDL语言支持和支持的第三方工具和硬件

  • Xilinx®Zynq®UltraScale+™ZCU111评价试剂盒或Xilinx Zynq UltraScale+ ZCU216评价试剂盒

  • 高密度脂蛋白编码器™

  • Xilinx RFSoC设备的HDL编码器支持包

开放的例子

打开示例项目并将示例文件复制到一个临时目录。

1.通过在MATLAB命令提示符中输入这些命令,导航到Xilinx RFSoC设备的HDL Coder支持包的根示例目录。

CD (hdlcoder_rfsoc_examples_root)

2.中复制所有示例文件PolyphaseChannelizer文件夹到临时目录。

模拟信道器模型

要更详细地了解信道器模型,请运行的模拟rfsocChannelizer.slx并查看功率谱视图和谱图。

你可以在这个块中看到channelizer的处理过程:rfsocChannelizer/多相Channelizer/Channelizer接收处理.FFT_Capture逻辑根据触发器条件捕获数据TriggerCapture,它由一个AXI4寄存器驱动。状态机不等待触发器,而是将下一个可用的帧从通道器处理到直接内存访问(DMA)。导通器块Start-Of-Frame而且有效的控制线是用来帮助确定什么时候闩上框架。

生成HDL和合成比特流

右键单击被测试的通道转换器子系统设备(DUT)。选择HDL代码,然后按HDL工作流顾问.在HDL Workflow Advisor的步骤1.1中,选择目标平台作为Xilinx Zynq Ultrascale+ RFSoC ZCU111评估试剂盒Xilinx Zynq Ultrascale+ RFSoC ZCU216评估试剂盒

在进行下一步之前,请将这些参考设计参数设置为指定的值。

  • AXI4-Stream DMA数据宽度64

  • ADC采样率(MHz)2048

  • ADC抽取模式(xN)4

  • 每个时钟周期的ADC样本4

  • ADC混合器类型绕过

  • DAC采样速率(MHz)2048

  • DAC插补方式(xN)4

  • 每个时钟周期的DAC样本4

  • DAC混合器型绕过

  • ADC/DAC NCO混合器LO (GHz)禁用

  • 启用多瓷砖同步

如果您使用的是ZCU216板,请另外设置DAC DUC模式参数全DUC Nyquist (0-Fs/2)

位流编译完成后,如果使用HDL Workflow Advisor脚本,则编写FPGA位文件。

信道器频谱数据捕获

FPGA返回通道器的输出,即频谱的频域数据。捕获逻辑在接收到AXI4上的信号条件时获取一帧。编程完成后,运行脚本hostIO_rfsocChannelizer_interface.m

%% %数据捕获循环% for ii=1:150% writePort (hFPGA,“TriggerCapture”,假);% writePort (hFPGA,“TriggerCapture”,真正的);% writePort (hFPGA,“TriggerCapture”,假);% rd_data = readPort(hFPGA,"S2MM_Data");% idx = mod(ii,length(FrequencyArr)) + 1;% nco_tone = FrequencyArr(idx);% fprintf('更改NCO Tx音调为%d MHz \n',nco_tone);% writePort (hFPGA“AXI4_NCO_incr uint16 (incrScale * nco_tone * 1 e6);% fft_frame = reinterp_stream_data(rd_data);% spectrum = 20*log10(abs(fft_frame(1:6 6 6));% scopeSpectrum(谱);% scopeSpectrogram(谱);%结束% disp('已完成频率扫描');

显示了150次捕获的光谱图和光谱图。NCO使用捕获前声明的数组中的不同音调命令。

相关的话题

Baidu
map