这个示例向您展示了如何从硬件中记录真实的数据,以便在模拟中使用。
金宝app支持硬件平台:
Xilinx®Zynq®ZC706评估试剂盒
Xilinx Zynq UltraScale™+ MPSoC ZCU102评估试剂盒
Zynq-7000开发委员会
Altera®Cyclone®V SoC开发套件
Altera Arria®10 SoC开发套件
在许多情况下,您可能需要根据真实数据验证算法。这个例子,使用流数据从硬件到软件模型,演示如何记录来自SoC设备上的AXI4接口的信号。通过使用预先录制的数据流代替Simulink®FPGA设计,该工作流允许您将重点放在算法的处理器端。金宝app
我们建议完成流数据从硬件到软件的例子。
在本节中,将记录FPGA子系统生成的数据流数据从硬件到软件模型.在这个模型中,FPGA子系统通过拨码开关(DS1)产生频率为1kHz或10kHz的正弦信号。FPGA算法过滤信号,通过AXI4流存储通道发送给处理器。
本节要求的产品如下:下载188bet金宝搏
用于Xilinx®设备的S金宝appoC Blockset支持包
按照以下步骤从FPGA记录数据:
1.创建一个硬件通信对象,在MATLAB®命令提示符上执行以下命令。
hw = socHardwareBoard (“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;
的samplingFrequency
中的正弦波采样率流数据从硬件到软件模型.
5.添加AXI流读数据源到数据记录会话。
src addSource(博士,“AXI4流接口”)
6.初始化硬件板上用于记录的I/O源。
设置(博士)
7.使用记录
功能记录10秒的数据。
记录(博士,10)而isRecording(博士)暂停(0.1);结束
在录制过程中,通过拨动拨码开关(DS1)来改变FPGA产生信号的频率。
8.保存记录数据到文件:
保存(博士,“sine_wave_data”)
在本节中,您将从连接到FPGA的AD - FMCOMMS2/3/4射频卡捕获射频信号。数据将使用AXI4流接口从射频卡流到处理器。
本节要求的产品如下:下载188bet金宝搏
用于Xilinx®设备的S金宝appoC Blockset支持包
金宝app本节支持的硬件平台有:
Xilinx®Zynq®ZC706评估试剂盒
Zynq-7000开发委员会
配置射频卡请参见手动主机-无线电硬件设置(Xilinx Zynq-Based Radio金宝app通信工具箱支持包)
1.开放射频捕获模型.将此模型的预生成的FPGA位流加载到硬件中。
socLoadExampleBitstream (hw“soc_rfcapture”)
2.配置无线卡。
射频= rfcard (hw);射频。CenterFrequency = 1090 e6;射频。GainSource =“AGC快速攻击”;射频。BasebandSampleRate = 4 e6;射频。ShowAdvancedProperties = true;射频。ShowInternalProperties = true;射频。BISTToneMode =“基调注入Rx”;射频();
3.设置数据记录器。
= soc.recorder博士(hw);src = soc.iosource (hw,“阿喜流读”);src.devName =“mwfpga_data_capture_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_data”)
5.要回放记录的射频数据,请打开射频回放模式.控件上输入数据集名称和源名称IO数据源阻塞并模拟模型。
预先记录的数据集文件zynq_rf_data.tgz可在matlab工具箱\ \ soc \ socexamples.