主要内容

记录SoC设备的I/O数据

这个示例向您展示了如何从硬件中记录真实的数据,以便在模拟中使用。

万博1manbetx支持的硬件平台:

  • Xilinx®Zynq®ZC706评估试剂盒

  • Xilinx Zynq UltraScale™+ MPSoC ZCU102评估套件

  • Zynq-7000开发委员会

  • Altera®Cyclone®V SoC开发套件

  • Altera Arria®10 SoC开发套件

在许多情况下,您可能需要根据实际数据验证算法流数据从硬件到软件模型,显示如何在SoC设备上记录来自AXI4接口的信号。此工作流允许您通过替换预先记录的数据流来代替Simulink®FPGA设计,从而将重点放在算法的处理器端。万博1manbetx

我们建议完成流数据从硬件到软件实例

从FPGA记录数据

在本节中,将记录FPGA子系统生成的数据流数据从硬件到软件模型.在这个模型中,FPGA子系统通过拨码开关(DS1)产生频率为1kHz或10kHz的正弦信号。FPGA算法过滤信号,通过AXI4流存储通道发送给处理器。

本节要求的产品如下:s manbetx 845

  • 用于Xilinx®设备的S万博1manbetxoC Blockset支持包

按照以下步骤从FPGA记录数据:

1.创建一个硬件通信对象,在MATLAB®命令提示符上执行以下命令。

hw=软硬件板(“Xilinx Zynq ZC706评估试剂盒”的主机名“10.10.10.15”...“用户名”“根”“密码”“根”

在上面的命令中输入适当的硬件板名称、IP地址和用户凭据。硬件对象hw,是提供控制命令和I/O交换的通信网关。

2. 打开流数据从硬件到软件模型。将为该模型提供的预生成FPGA比特流加载到硬件。

socLoadExampleBitstream (hw‘soc_hwsw_stream_top’

3.为你的硬件板创建一个数据记录器。

= soc.recorder博士(hw);

4.创建一个AXI流读输入源对象并配置源属性。

src = soc.iosource (hw,“阿喜流读”);src.devName =“mwfpga_algorithm_wrapper_ip0: s2mm0”;samplingFrequency = 1 e5;src。dataTypeStr =‘uint32’;src.SamplesPerFrame=1000;src.SampleTime=src.SamplesPerFrame/samplingFrequency;

采样频率中的正弦波采样率流数据从硬件到软件模型

5.添加AXI流读数据记录会话的源。

src addSource(博士,“AXI4流接口”

6.初始化硬件板上用于记录的I/O源。

设置(博士)

7.使用记录功能记录10秒的数据。

记录(博士,10)虽然isRecording(博士)暂停(0.1);结束

在录制过程中,通过拨动拨码开关(DS1)来改变FPGA产生信号的频率。

8.将记录的数据保存到文件中:

保存(博士,“正弦波数据”

记录射频信号

在本节中,您将从连接到FPGA的AD-FMCOMMS2/3/4射频卡捕获射频信号。数据将通过AXI4流接口从射频卡传输到处理器。

本节要求的产品如下:s manbetx 845

  • 用于Xilinx®设备的S万博1manbetxoC Blockset支持包

万博1manbetx本节支持的硬件平台有:

  • Xilinx®Zynq®ZC706评估试剂盒

  • Zynq-7000开发委员会

配置射频卡请参见手动主机无线电硬件设置(Xilinx Zynq-Based Radio万博1manbetx通信工具箱支持包)

1. 打开射频捕获模型。将为该模型提供的预生成FPGA比特流加载到硬件。

socLoadExampleBitstream (hw“soc_rfcapture”

2.配置无线网卡。

射频=射频卡(hw);射频中心频率=1090e6;射频增益源=“AGC快速攻击”;rf.BasebandSampleRate=4e6;rf.ShowAdvancedProperties=true;rf.ShowInternalProperties=true;rf.bistoneMode=“音调注入接收”;射频();

3.设置数据记录器。

= soc.recorder博士(hw);src = soc.iosource (hw,“阿喜流读”);src.devName =“mwfpga_数据_捕获_ip0:s2mm0”;src。dataTypeStr =‘uint32’;src。SamplesPerFrame = 4000;src。SampleTime = src.SamplesPerFrame / rf.BasebandSampleRate;src addSource(博士,“AXI4流接口”);

4.创纪录的无线电信号。

设置(dr)系统(hw,'devmem 0x40010100 32 1');博士记录(1)虽然isRecording(博士)暂停(0.1);结束保存(博士,“zynq_rf_数据”

5.要播放记录的射频数据,请打开射频回放模型。在数据集上输入数据集名称和源名称IO数据源阻塞并模拟模型。

预先记录的数据集文件zynq_rf_data.tgz可在matlab\toolbox\soc\soc示例

另请参阅

用SoC设备记录的I/O数据进行模拟