主要内容

用FIL向导生成块

步骤1:设置FPGA设计软件工具

赛灵思公司软件

英特尔软件

微芯片软件

步骤2:启动FIL向导

通过选择以下调用方法之一打开FPGA-in-the-loop向导:

  • 在MATLAB命令窗口中,输入以下命令:

    > > filWizard
  • 在Simuli金宝appnk中®工具条上的应用程序选项卡,在代码验证、验证和测试点击费尔向导

要恢复之前的会话,使用此命令:

filWizard(“。/Subsystem_fil/子系统_fil.mat”)

步骤3:设置“FIL Block”的“FIL Options”

费尔选项页面:

  1. 费尔模拟:选择金宝app

  2. 董事会的名字:选择FPGA开发板。如果您还没有下载HDL Verifier™FPGA板支持包,请参见金宝app下载FPGA单板支持包金宝app.(如果您没有看到任何板列出,那么您还没有下载支持包)。金宝app如果您计划自己定义自定义板,请参见FPGA单板定制

  3. FPGA-in-the-Loop连接: FIL模拟连接方法。下拉菜单中的选项将根据所选目标板支持的连接方法进行更新。金宝app如果目标板和HDL验证器支持该连接,则可以选择金宝app以太网JTAG,或串行总线

  4. 高级选项:

    在选择以太网连接时,可以根据需要调整单板的IP地址和MAC地址。

    选项 指令
    单板IP地址

    如果单板的IP地址不是默认IP地址(192.168.0.2),则使用此选项设置单板的IP地址。

    如果默认的单板IP地址(192.168.0.2)被其他设备占用,或者需要配置不同的子网,请按照以下原则修改单板IP地址。

    • 子网地址,通常是单板IP地址的前三个字节,必须与主机IP地址的子网相同。

    • 单板IP地址的最后一个字节和主机IP地址的最后一个字节不能相同。

    • 单板的IP地址不能与其他计算机的IP地址冲突。

      例如,如果主机IP地址是192.168.8.2,那么如果可用的话,可以使用192.168.8.3。

    单板MAC地址

    一般情况下,不需要修改单板的MAC地址。如果您将多个FPGA开发板连接到一台主机,请更改任何其他板的MAC地址,以便每个地址都是唯一的。每块单板必须有单独的网卡。

    如果需要修改单板MAC地址,请单击单板MAC地址字段。指定的地址与连接到计算机的任何其他设备的地址不同。具体FPGA开发板的单板MAC地址可参考单板标签或产品文档获取。

    FPGA系统时钟频率(MHz):输入目标时钟频率。对于Intel板和Xilinx ise支持的板,金宝appfilWizard检查请求的频率与请求板的可能频率。如果这个板不可能达到要求的频率,filWizard返回一个错误并建议一个替代频率。对于Xilinx vivado支持的金宝app电路板或PCI Express®板,filWizard无法检查频率。合成工具在要求的频率上做出最大努力,但如果无法达到指定的频率,则可以选择替代频率。默认为25MHz。

    在FPGA上开启数据缓冲:选择此选项可增强仿真性能。选中后,FIL将利用FPGA上的bram在基于帧的处理模式下缓冲以太网数据包。当BRAM资源在设计中很少时,请清除此参数。仅适用于以太网连接。

  5. 点击下一个

步骤4:为FIL块添加HDL源文件

源文件页面:

  1. 指定要在FPGA中协同仿真的HDL设计。这些文件是FPGA板上需要验证的HDL设计文件。

    单击,表示源文件添加.使用文件选择对话框选择文件。

    FIL向导尝试识别源文件类型。类型中的任何文件类型都不是您所期望的,可以通过选择文件类型下拉列表。可接受的文件类型是:

    • 硬件描述语言(VHDL)®

    • Verilog®

    • 网表

    • Tcl脚本

    • 约束

    • 其他人

      “其他”是指:

      • 对于英特尔,指定为的文件其他被添加到FPGA项目中,但它们对生成的块没有影响。例如,您可以在自述文件并将其包含在文件列表中。

      • 对于Xilinx,指定为其他可以是Xilinx ISE接受的任何文件。ISE查看文件扩展名,以确定如何使用该文件。例如,如果你加上foo.vhd并将其指定为其他, ISE将该文件视为VHDL文件。

  2. 指定哪个文件包含顶级HDL文件。

    选中标题列中包含顶级HDL模块的HDL文件行上的复选框顶级.FIL向导自动填充顶级模块名称字段中显示所选HDL文件的名称。如果顶级模块名称和文件名不匹配,您可以在此对话框中手动修改顶级模块名称。在继续之前指示顶级模块名称。

  3. (可选)要显示源文件的完整路径,请选中标题框显示源文件的完整路径

  4. 点击下一个

步骤5:验证DUT I/O端口是否为FIL Block

DUT I/O端口页面:

  1. 查看端口清单。FIL向导解析顶级HDL模块以获得所有I/O端口,并将它们显示在DUT I/O端口表中。解析器尝试根据端口名称确定端口类型。向导然后在“端口类型”下显示这些信号。

    确保所有输入/输出/重置端口/时钟都按预期映射。如果解析器为任何端口分配了不正确的端口类型,您可以手动更改信号。对于同步设计,指定时钟,复位,或者,如果需要,时钟使能信号。该表中指定的端口类型必须与HDL代码中相同。至少有一个输出端口。

    选择手动输入端口信息添加或删除信号。

    点击再生用原始端口定义(来自HDL代码)重新加载表。

  2. 点击下一个

步骤6:指定FIL Block的输出类型

输出类型页面:

  1. 指定输出数据类型。向导分配数据类型。如果任何输出数据类型不是您所期望的,请手动更改该类型。

    选择从:

    • 定点

    • 整数

    • 逻辑

    数据类型可以依赖于指定的位宽。

    您可以指定输出类型签署无符号,或部分长度

  2. 点击下一个

步骤7:为FIL块指定构建选项

构建选项页面:

  • 为输出文件指定文件夹。您可以使用默认选项。通常默认是一个以顶级模块命名的子文件夹,位于当前文件夹下。

  • 总结显示ISE项目文件和FPGA编程文件的位置。您可能需要这两个文件来对FIL块掩码进行高级操作。

步骤8:初始化构建

点击构建来启动FIL块生成。

  1. FIL向导生成一个以顶级模块命名的FIL块,并将其放在一个新模型中。

  2. FIL向导打开一个命令窗口。

    • 在此窗口中,FPGA设计软件执行合成、拟合、PAR和FPGA编程文件生成。

    • 当该过程完成时,命令窗口中的一条消息提示您关闭窗口。

步骤9:整合和模拟

将FIL块插入模型

在您的模型中,用在新模型中生成的FIL块替换DUT子系统。以不同的名称保存模型。然后您可以使用原始模型作为参考模型。

如果您从HDL工作流顾问生成了您的FIL块,则不太可能需要调整FIL块上的任何设置。如果您使用FIL向导生成了您的FIL块,您可能需要调整一些设置。有关调整FIL块设置的说明,请参见费尔模拟

加载编程文件到FPGA

英特尔单板使用说明Linux

确保您的FPGA开发板已设置、打开,并使用JTAG电缆连接到您的机器。编程使用JTAG接口,即使您为模拟选择了不同的连接。

FPGA编程的步骤如下:

  1. 双击Simulink模型中的FIL块以打开块掩码。金宝app

  2. 主要选项卡上,单击负载通过JTAG线缆将编程文件下载到FPGA。

    加载过程可能需要几分钟到几分钟或更长时间,这取决于子系统的大小。有时,对于大型子系统,这个过程可能需要一个半小时或更长时间。

  3. 消息窗口指示FPGA编程文件何时按预期加载。点击好吧

    以太网连接

    串行总线连接

运行仿真

在Si金宝appmulink中运行包含费尔模拟块。FIL模拟的结果应该与Simulink参考模型或原始HDL代码的结果相匹配。金宝app

请注意

RAM初始化:Simulink每次都从时金宝app间0开始,这意味着Simulink模型中的RAM在每次运行时都被初始化为0。然而,这种假设在硬件中并不成立。FPGA中的RAM从一个模拟结束到下一个模拟开始保存它的值。如果您的设计中有RAM,则第一次模拟与Simulink匹配,但随后的运行可能不匹配。金宝app解决方法是在重新运行模拟之前重新加载FPGA位流。要重新加载位流,请单击负载在FIL块掩码上。

相关的话题