主要内容

Simscape模型在快速山羊FPGA I/O模块上的硬件在环实现

这个例子展示了如何从Simscape™半波整流器模型合成和生成FPGA位流,并下载位流到Speedgoat®FPGA I/O 334-325K目标,用于硬件在环(HIL)实现。

半工作流

  1. 使用Simscape HDL Workflow Advisor从Simscape模型生成一个HDL实现模型。HDL实现模型是一个Simulink®模型,它用HDL兼容的块替换了Simscape算法

  2. 使用HDL工作流顾问为HDL实现模型生成FPGA位流

  3. 使用Simulink实时资源管理器进行硬件在环仿真,将比特流下载到Speedgoat FPGA I/O模块。

半波整流器模型

打开Simscape半波整流器模型。在MATLAB®命令提示符中,输入:

ModelName =“sschdlexHalfWaveRectifierExample”;open_system ModelName set_param (ModelName,“SimulationCommand”“更新”);

open_system ([ModelName,' / Simscape_system '])

半波整流器由一个电阻(一个线性块)和一个二极管(一个开关线性块)组成。在输入和输出端口接口,模型有Simulink-PS Converter和PS-Simulink Converter模块。解算器设置被配置为与Simscape HDL Workflow Advisor兼容。如果打开求解器配置块的块参数对话框,使用本地解算器选择和向后欧拉指定为解算器类型.看到开始使用Simscape硬件在环工作流

要查看算法功能,请模拟模型。

sim (ModelName) open_system ([ModelName,/范围的])

2.为HDL兼容性配置Simscape模型hdlsetup功能:

hdlsetup (“sschdlexHalfWaveRectifierExample”

生成HDL实现模型

生成HDL实现模型:

1.打开Simscape HDL工作流顾问:

sschdladvisor (“sschdlexHalfWaveRectifierExample”

2.要比较HDL实现模型与原始Simscape算法的功能,请选择生成实现模型步骤,然后选择为实现模型生成验证逻辑复选框。使用一个验证逻辑宽容0.001.右键单击生成实现模型步骤和选择运行到所选任务

Advisor生成一个HDL实现模型和一个状态空间验证模型。为了比较HDL实现模型与原始Simscape算法的功能,打开并模拟状态空间验证模型。该模型的输出与原始Simscape模型匹配。有关更系统的验证,请参见验证HDL实现模型对Simscape算法的有效性

另请参阅Simscape HDL工作流顾问任务

设置和配置

Speedgoat IO334-325K FPGA模块采用Xilinx®Vivado®和IP核心代工作流的基础设施。在将HDL实现模型部署到Speedgoat I/O模块上之前:

1.安装Xilinx Vivado和安装工具路径

安装Xilinx®Vivado®的最新版本HDL语言支持和支持的第三方工具和硬件.然后,将工具路径设置为已安装的Xilinx Vivado可执行文件hdlsetuptoolpath函数。

hdlsetuptoolpath (“ToolName”“Xilinx Vivado”“路径”“C: \ Xilinx \ Vivado \ 2020.1 \ bin \ vivado.bat '

2.安装Speedgoat I/O块集和Speedgoat - HDL编码器集成包

安装Speedgoat I/O块集和Speedgoat - HDL Coder集成包。看到安装Speedgoat HCIP

3.设置I / O模块

当需要实时仿真时,需要设置I/O模块。看到Xilinx HDL软件for Speedgoat I/O模块

高密度脂蛋白工作流顾问

HDL工作流顾问指导您通过HDL代码生成和FPGA设计过程。使用Advisor来:

  • 检查模型的HDL代码生成兼容性,并修复不兼容的设置。

  • 生成HDL代码、测试台架和脚本来构建和运行代码和测试台架。

  • 执行合成和时序分析。

  • 将生成的代码部署到soc、fpga和Speedgoat I/O模块上。

要打开HDL工作流顾问,请使用hdladvisor函数。

hdladvisor (gmStateSpaceHDL_sschdlexHalfWaveRectifierEx / Simscape_system / HDL子系统)

左侧窗格包含表示一组相关任务的文件夹。展开文件夹并选择一个任务,将在右侧窗格中显示有关该任务的信息。右边窗格可以包含简单的控件,用于运行任务的高级参数和选项设置,控制代码和测试工作台的生成。要了解关于每个任务的更多信息,请右键单击该任务并选择这是什么?.看到开始使用HDL工作流顾问

为快速山羊目标计算机生成FPGA比特流

1.打开HDL实现模型,然后打开实现模型的HDL Workflow Advisor。

open_system (gmStateSpaceHDL_sschdlexHalfWaveRectifierEx) hdladvisor (gmStateSpaceHDL_sschdlexHalfWaveRectifierEx / HDL子系统)

2.在设置目标装置和合成工具任务,指定目标工作流程作为Simulink实时FPGA I/O而且目标平台作为Speedgoat io334 - 325 k

3.在设定目标参考设计任务时,选择的值x4为参数作为PCIe车道,并选择运行这个任务

4.在设置目标接口任务,映射输入和输出数据类型端口到作为PCIe接口并选择运行这个任务

5.在设置目标频率任务,设置目标频率(MHz)作为One hundred.

6.右键单击生成Simulink实时界面任务和选择运行到所选任务生成HDL IP核、FPGA位流,并将该位流下载到快速山羊目标计算机的IO334 I/O模块。

生成一个Simulink实时接口模型,命名为gm_gmStateSpaceHDL_sschdlexHalfWaveRectifierEx_slrt

为了快速创建原型,您可以将Workflow Advisor设置导出到脚本中。该脚本是一个MATLAB文件,您可以从命令行运行它。您可以修改并运行脚本,或者将设置导入到HDL Workflow Advisor用户界面中。要保存工作流,请在HDL工作流顾问用户界面中选择>文件导出到脚本.将文件保存为hdlworkflow_slrt_IO334.m

要导入此文件,请在HDL工作流顾问用户界面中选择文件>从脚本导入.在“导入工作流配置”对话框中,选择hdlworkflow_slrt_IO334.m文件。HDL工作流顾问根据导入的脚本更新任务。看到使用脚本运行HDL工作流

向高速山羊IO334-325k目标部署比特流

1.连接开发计算机到目标

使用交叉网线将开发计算机连接到目标。Speedgoat目标计算机的默认IP地址为192.168.7.5.设置开发计算机与目标计算机通信链路的IP地址192.168.7.2因为通信链路必须在同一网络中。

2.安装和配置Simulink实时资源管理器

您可以使用Simulink实时资源管理器下载比特流。要打开Simulink实时资源管理器,输入命令slrtExplorer.或者,您可以从实时选项卡。

slrtExplorer

的Simulink编辑器显示实时选项卡中配置的模型slrealtime.tlc目标代码生成。

a.在“Simulink Real-Time Explorer”中,在“Target Configuration”页签中,配置开发计算机的设置。

  • IP地址作为192.168.7.5,或根据需要设置自定义目标计算机IP地址。

  • 的名字作为TargetPC1,或根据需要设置自定义目标计算机名称。

b.如果需要更改开发计算机上的设置,请单击改变IP地址按钮在目标计算机上应用相应的更改。

3.创建实时应用程序

打开Simulink实时接口模型。向模型添加Scope块,并将其连接到输出。记录输出信号,在仿真数据检查器上查看仿真结果。

4.构建并运行实时应用程序

单击运行在目标按钮实时选项卡,编译并下载模型到Speedgoat IO334-325k目标。

在仿真数据检查器上观察输出仿真结果。下载模型的仿真结果与原始Simscape模型的仿真结果相匹配。

Baidu
map