主要内容

系统对象生成与费尔向导

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

赛灵思公司软件

英特尔软件

微芯片软件

第二步:开始费尔向导

打开FPGA-in-the-Loop向导

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

> > filWizard

要恢复以前的会话,使用这个命令:

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

步骤3:设置费尔选项系统对象

(这个页面是费尔™系统对象。对于仿真金宝app软件®块费尔选项,看看步骤3:设置费尔选项为费尔块。)

费尔选项页面:

  1. 费尔仿真与:选择MATLAB系统对象

  2. 董事会的名字:选择一个FPGA开发板。如果你还没有下载一个高密度脂蛋白校验™FPGA板支持包,看到的金宝app下载FPGA板支持包金宝app。(如果您没有看到任何板上市,那么你还没有下载支持包)。金宝app如果你打算自己定义一个自定义的董事会,明白了FPGA板定制

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

  4. 高级选项:

    当您选择一个以太网连接,你可以调整董事会IP和MAC地址,如果必要的。

    选项 指令
    董事会的IP地址

    使用这个选项设置董事会的IP地址如果没有默认的IP地址期间)(192.168.0.2。

    期间)如果默认董事会IP地址(192.168.0.2使用由另一个设备,或者你需要一个不同的子网,改变董事会IP地址按照以下指南:

    • 子网地址,一般前三个字节的IP地址,必须相同的子网主机IP地址。

    • 最后一个字节的IP地址必须不同于主机IP地址的最后一个字节。

    • 董事会IP地址不能与其他计算机的IP地址冲突。

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

    董事会MAC地址

    在大多数情况下,您不需要改变董事会的MAC地址。如果你超过一个FPGA开发板连接到一个主机,改变董事会MAC地址的任何额外的董事会,这样每个地址是独一无二的。你必须有一个为每个董事会独立的网卡。

    改变董事会的MAC地址,点击董事会MAC地址字段。指定一个地址不同于属于其他设备连接到你的电脑。获得董事会MAC地址为一个特定的FPGA开发板,参考标签贴在黑板上或咨询产品文档。

    FPGA系统时钟频率(MHz):输入一个目标时钟频率。对于英特尔董事会和Xilinx ISE-supported板,金宝appfilWizard检查请求的频率对那些可能请求的董事会。如果所请求的频率为这个委员会是不可能的,filWizard返回一个错误,表明另一种频率。Xilinx Vivado-supp金宝apported板,或PCI Express®板,filWizard不能检查的频率。合成工具做出最大的努力尝试请求的频率,但可以选择另一种频率如果指定的频率是不可以实现的。默认值是25MHz。

    在FPGA上启用数据缓冲:选择这个选项来提高模拟性能。选中时,费尔利用位FPGA在框架缓冲区以太网数据包处理模式。明确该参数BRAM资源稀缺时你的设计。只可用于以太网连接。

  5. 点击下一个

步骤4:增加高密度脂蛋白源文件系统对象

(这个页面是费尔系统对象。模型块H金宝appDL源文件,请参阅步骤4:为费尔块增加高密度脂蛋白源文件。)

源文件页面:

  1. 指定要cosimulated HDL设计FPGA。这些文件是HDL设计文件验证FPGA板上。

    表示源文件通过点击添加。使用文件选择对话框中选择文件。

    费尔向导试图识别源文件类型。如果任何文件类型不是你期望什么,你可以改变它的选择文件类型下拉列表。可接受的文件类型有:

    • 硬件描述语言(VHDL)®

    • Verilog®

    • 网表

    • Tcl脚本

    • 约束

    • 其他人

      “他人”是指:

      • 对英特尔来说,文件指定为其他被添加到FPGA的项目,但是他们没有影响生成的块。例如,您可以把一些评论自述文件并将其包括在这个文件列表。

      • Xilinx文件指定为其他可以是任何文件Xilinx ISE所接受。伊势的文件扩展名来确定如何使用这个文件。例如,如果你添加foo.vhd并指定名单其他,伊势会将该文件视为一个硬件描述语言(VHDL)文件。

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

    复选框的行包含高层高密度脂蛋白HDL文件模块列标题顶级。费尔向导会自动填充顶层模块名称与选定的HDL文件的名称。如果顶层模块名称和文件名称不匹配,您可以手动改变顶层模块名称的对话框。表明顶层模块名称,然后再继续。

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

  4. 点击下一个

第五步:验证DUT I / O端口系统对象

(这个页面是费尔系统对象。仿真软件金宝app,请参阅第五步:验证DUT费尔块的I / O端口。)

DUT的I / O端口页面:

  1. 检查端口清单。费尔向导解析高层高密度脂蛋白模块获取所有I / O端口和DUT的I / O端口表中显示它们。解析器试图确定端口的端口类型名称。然后,向导将显示这些信号端口类型。

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

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

    点击再生重新加载表与原端口定义(从HDL代码)。

  2. 点击下一个

第六步:为系统对象指定输出类型

(这个页面是费尔系统对象。模型块输金宝app出类型,请参阅第六步:为费尔块指定输出类型。)

输出类型页面:

  1. 指定输出数据类型。向导指定数据类型。如果任何输出数据类型不是你期望什么,手动改变类型。

    选择从:

    • 定点

    • 整数

    • 逻辑

    数据类型可以取决于指定的宽度。

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

  2. 点击下一个

第七步:指定为系统对象构建选项

(这个页面是费尔系统对象。仿真软件金宝app,请参阅第七步:指定为费尔块构建选项。)

构建选项页面:

  • 指定输出文件的文件夹。您可以使用默认选项。通常默认是一个子文件夹命名的顶层模块,坐落在当前文件夹。

  • 总结显示的位置伊势项目文件和FPGA编程文件。你可能需要这两个文件的高级操作费尔块面具。

第八步:启动建设

点击构建启动费尔系统对象的一代。

  1. 费尔向导生成以下文件:

    • 。/最高级的_fil /文件夹,MATLAB函数命名最高级的_programFPGA.m,在那里最高级的高密度脂蛋白顶级的名称。这个文件包含的代码FPGA编程文件下载到FPGA。

      函数最高级的_programFPGA %加载FPGA filProgramFPGA比特流(Xilinx, / dir / mybitstream。一点',1);结束

    • MATLAB文件命名最高级的_fil.m,在那里最高级的高密度脂蛋白顶级的名称。这个文件包含一个类定义来自hdlverifier.FILSimulation并初始化私有属性。这个文件位于当前文件夹。

      下面是一个示例使用费尔向导生成的类定义文件从DUT命名fft8

      classdef fft8_fil < hdlverifier。FILSimulation% fft8_fil is a filWizard generated class used for FPGA-In-the-Loop % simulation with the 'fft8' DUT. % fft8_fil connects MATLAB with a FPGA and cosimulate with it by % writing inputs in the FPGA and reading outputs from the FPGA. % % MYFIL = fft8_fil % % FIL syntax: % % [out1, out2, ...] = MYFIL(in1, in2, ...) connect to the FPGA, % write in1, in2, ... to the FPGA and read out1, out2, ... from % the FPGA % % fft8_fil methods: % % release - Allow property value and input characteristics changes, and % release connection to FPGA board % clone - Create fft8_fil object with same property values % isLocked - Locked status (logical) % programFPGA - Load the programming file in the FPGA % % fft8_fil properties: % % DUTName - DUT top level name % InputSignals - Input paths in the HDL code % InputBitWidths - Width in bit of the inputs % OutputSignals - Output paths in the HDL code % OutputBitWidths - Width in bit of the outputs % OutputDataTypes - Data type of the outputs % OutputSigned - Sign of the outputs % OutputFractionLengths - Fraction lengths of the outputs % OutputDownsampling - Downsampling factor and phase of the outputs % OverclockingFactor - Overclocking factor of the hardware % SourceFrameSize - Frame size of the source (only for HDL source block) % Connection - Parameters for the connection with the board % FPGAVendor - Name of the FPGA chip vendor % FPGABoard - Name of the FPGA board % FPGAProgrammingFile - Path of the Programming file for the FPGA % ScanChainPosition - Position of the FPGA in the JTAG scan chain % % File Name: fft8_fil.m % Created: 26-Apr-2012 18:18:06 % % Generated by FIL Wizard properties (Nontunable) DUTName = 'fft8'; end methods function obj = fft8_fil %THE FOLLOWING PROTECTED PROPERTIES ARE SPECIFIC TO THE HW DUT %AND MUST NOT BE EDITED (RERUN THE FIL WIZARD TO CHANGE THEM) obj.InputSignals = char('Xin_re','Xin_im'); obj.InputBitWidths = [10,10]; obj.OutputSignals = char('Xout_re','Xout_im'); obj.OutputBitWidths = [13,13]; obj.Connection = char('UDP','192.168.0.2','00-0A-35-02-21-8A'); obj.FPGAVendor = 'Xilinx'; obj.FPGABoard = 'XUP Atlys Spartan-6 development board'; obj.ScanChainPosition = 1 ; %THE FOLLOWING PUBLIC PROPERTIES ARE RELATED TO THE SIMULATION %AND CAN BE EDITED WITHOUT RERUNING THE FIL WIZARD obj.OutputSigned = [true,true]; obj.OutputDataTypes = char('fixedpoint','fixedpoint'); obj.OutputFractionLengths = [9,9]; obj.OutputDownsampling = [1,0]; obj.OverclockingFactor = 1; obj.SourceFramieSize = 1; obj.FPGAProgrammingFile = 'S:\MATLAB\demo\fft8_fil\fft8_fil.bit'; end end end
  2. 费尔向导打开一个命令窗口。

    • 在这个窗口中,FPGA设计软件进行合成,健康,PAR和FPGA编程文件生成。

    • 当这个过程完成后,在命令窗口消息提示您关闭该窗口。

步骤9:集成和模拟

创建系统对象

创建一个自定义FILSimulation从类定义文件系统对象派生使用费尔向导。这个代码片段创建类的实例并初始化所有属性。

MYFIL =最高级的_fil

如果你生成费尔系统对象的HDL工作流顾问,你不太可能需要调整任何设置。如果你使用费尔向导生成的费尔系统对象,您可能需要调整一些设置。你可以调整任何可写属性使用这些方法之一:

  • 改变属性的设置方法:

    MYFIL.set (“FPGAProgrammingFile”、“c: \ \ filfiles工作”)
  • 直接设置的属性:

    MYFIL.FPGAProgrammingFile = c: \ \ filfiles工作的
  • 编辑最高级的_fil.m直接。如果你编辑。m文件,在工作区中实例化的对象,如果你这么做了。

对象属性的详细信息,请参阅hdlverifier.FILSimulation

加载到FPGA编程文件

你可以计划FPGA使用programFPGA函数,或programFPGA费尔系统对象的方法。如果你尚未执行指导硬件设置在装货前,做现在的编程文件。

  • programFPGA功能:

    。/最高级的_fil /最高级的_programFPGA
  • programFPGA方法:

    MYFIL.programFPGA

    MYFIL的一个实例吗FILSimulation对象。

运行仿真

  1. 调用MATLAB代码的系统对象。

  2. 像平时一样MATLAB代码运行。确保你已经完成了指导硬件设置在开始之前。

    第一次调用对象与FPGA板建立沟通。

相关的话题