-
实时仿真用户案例
Crank-嵌入式GUI设计和开发用户案例
021-64886750
-
实时目标机
Simulink模型库
Demo套件
info@yisuworld.com
Speedgoat及HDL Coder
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它作为专用集成电路(ASIC)领域中的一种半定制电路而出现,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。主要用于信号处理及各类高速模拟仿真。
以PWM信号的捕获为例,说明FPGA与CPU(不考虑芯片专用外设)在处理上的差异。当CPU通过GPIO对PWM信号采样时,受限于CPU的运算周期,无法做到高速的采集,获得的信号与原始信号有较大偏差,并计算出错误的占空比:
采用FPGA这种“硬电路”的方式采集信号,可以有效获得信号的信息,误差取决于采样周期(如100MHz下约为10ns):
对于实时仿真而言,模型的计算只需要占空比信息即可,因此FPGA可以作为系统的“协处理器”存在,负责信号处理或高动态性部分模型运算,并将结果与CPU交互:
FPGA算法开发
FPGA的开发与传统CPU、DSP的开发有很大不同。FPGA以并行运算为主,以硬件描述语言HDL来实现。开发者需具备较强的数字电路知识及逻辑思维能力。
MATLAB/Simulink平台的HDL Coder工具箱,有效的降低FPGA算法开发的难度;使工程师只需具备基础知识即可在Simulink环境中搭建FPGA算法,并最终部署在Speedgoat或自己的FPGA平台上。以Speedgoat平台为例,基本步骤如下:
1. Simulink环境中搭建算法模型
开发者可以使用Simulink环境中的HDL Coder/DSP System Toolbox/Communication System Toolbox/ Vision HDL Toolbox等工具箱开发算法,并将算法放置在Subsystem内,仿真调试。Simulink环境支持以单精度浮点的方式开发FPGA算法,大大降低开发难度。
2. HDL Workflow Advisor
在Subsystem上右键选择HDL Workflow Advisor,并在弹出的界面中依次设置FPGA板卡、芯片主频,以及Subsystem inport和outport与硬件板卡IO通道的映射关系:
依次完成Workflow Advisor后续的task。HDL Workflow Advisor会完成模型检查、HDL代码生成、综合、分析、、映射等工作(需要Xilinx相关软件,仅在后台调用)。在此过程中,依据设置,HDL Coder可以完成Delay Balance,关键路径寻找、代码模型链接等功能。
最终HDL Workflow Advisor可以生成一个接口模型,取代原先的算法Subsystem:
3. 编译下载运行
FPGA模型部分编译完,进一步完成整个模型的编译,生成可执行程序下载到Speedgoat硬件上,系统会自动区分CPU和FPGA,并配置两者间的通讯。
完整的流程如下:
详细流程可参见HDL Coder工具箱的帮助文档,及Speedgoat相应帮助文档。
在不远的将来,MATLAB将完善物理模型对HDL代码生成的支持。届时物理模型在完成离线仿真后,可直接迁移到Speedgoat实时仿真平台,无缝过渡到基于FPGA的半实物仿真测试阶段,这对于电气、电力电子领域有重要的意义。
Speedgoat FPGA解决方案
基于HDL Coder的模型化算法开发基础上,Speedgoat针对不同的应用领域,提供了大量的可编程FPGA硬件模块:
I/O module |
FPGA chip |
Logic cells |
Front I/O lines |
Rear I/O lines |
IO332 |
Xilinx Artix-7 |
200k |
Selectable front plug-ins |
64 LVCMOS or 32 LVDS |
IO333 |
Xilinx Kintex-7 |
325k or 410k |
Selectable front plug-ins |
64 LVCMOS or 32 LVDS |
IO334 |
Xilinx Kintex-7 |
325k |
16 x 16-bit analog in |
64 LVCMOS or 32 LVDS |
IO335 |
Xilinx Kintex-7 |
325k |
24 x 16-bit analog in |
64 LVTTL or 32 LVDS |
IO342 |
Xilinx Kintex Ultrascale |
1.45M |
Selectable plug-ins |
Selectable plug-ins |
IO397 |
Xilinx Artix-7 |
50k |
4 x 16 bit analog in, 4 x 16-bit analog out, 14 x TTL |
Not applicable |
各模块具备不同的IO通道和芯片资源,完全支持HDL Coder的模型化算法开发。当单FPGA模块资源不够时,可通过Xilinx Aurora协议,将彼此直接连接,组成更大规模的FPGA“计算集群”:
-
电力电子(含控制器和被控对象模型)
凭借多年在电力电子行业累积的经验和能力,我们为用户提供控制器模型和被控对象模型,包括标准库以及定制化服务。¥ 0.00立即购买
-
轨道交通(含控制器和被控对象模型)
凭借多年在轨道交通行业累积的经验和能力,我们为用户提供控制器模型和被控对象模型,包括标准库以及定制化服务。¥ 0.00立即购买
-
信号调理系统
在HIL测试中,硬件在环设备起到模拟被测ECU被控对象的作用。需要根据ECU的PIN脚信息,模拟相应信号。这类设备的核心为实时系统,实时系统会提供相应IO通道,处理信号的产生和采集。但这类IO通道一般为标准规格,比如数字通道为TTL规格,模拟通道只是测电压等;这与被测ECU所需的信号规格有较大差异,故需要一套信号调理系统,负责两者之间信号的转接。¥ 0.00立即购买
-
电机控制Demo套件
使用Simulink和Speedgoat转动无刷直流电机。¥ 0.00立即购买
实时目标机
实时仿真应用场景
学习与支持
关于我们
关注Speedgoat微信公众号
实时仿真解决方案
I/O接口模块
通讯协议模块
FPGA技术
被控部件仿真
Simulink模型库
Demo套件
Speedgoat实时仿真与测试
Crank嵌入式GUI设计与开发