3.3 CORE Generator的使用方法
Xilinx针对FPGA提供了大量成熟、高效、稳定的IP核为用户所用,使用CORE Generator可以生成Xilinx提供的各种IP。本节介绍CORE Generator的使用技巧。
3.3.1 新建CORE Generator工程
CORE Generator可新建和管理Xilinx的IP,提供图形化的界面,方便用户设置IP参数,管理生成的IP。为了能对用户的IP进行统一管理,首先需要新建一个CORE Generator工程,在工程中包含了用户IP的HDL文件、网表文件及IP的参数配置信息。
【例3-14】新建CORE Generator工程。
(1)首先需要启动CORE Generator。在开始菜单单击ISE→Tools→Core Generator,出现如图3-44所示的窗口。
图3-44 CORE Generator界面
(2)可以单击File→New Project新建工程。
(3)如果已经有了CORE Generator工程,还可以打开已有工程。可以通过选择Open project命令,打开Core Generator已经识别的工程。
(4)单击新建工程后,在弹出的New Project对话框中输入工程名称,指定工程存放路径,然后单击“保存”按钮,如图3-45所示。
图3-45 新建工程
(5)如果指定的目录不存在,会提示新建目录,此时单击“保存”按钮以新建目录。
(6)接下来会出现工程属性设置对话框,设计者需要指定器件类型等属性,如图3-46所示。
图3-46 设置属性
(7)单击Generation选项,设置生成IP的属性,如图3-47所示。设置生成的文件为VHDL类型,相应的网表文件为EDIF类型,仿真文件为行为级仿真,设计使用的综合工具为ISE,设置完毕后单击OK按钮。
图3-47 设置IP属性
(8)单击Advanced选项,可以设置高级选项,如图3-48所示。
图3-48 高级选项
如果需要将生成的IP的输入/输出信号添加IO引脚,勾选Create Netlist Wrapper with IO pads复选框。
如果生成的IP网表文件为NGC格式的文件,可以生成NDF综合优化文件。
还可以指定工程的临时目录。
(9)单击OK按钮完成新建工程。接下来可以看到IP列表窗口,设计者可以选择相应的IP设置参数,生成希望的IP,如图3-49所示。
图3-49 IP列表窗口
3.3.2 新建IP
建立好CORE Generator工程后,就可以创建IP了。CORE Generator对IP进行了分类,方便设计者选择。
【例3-15】新建IP。
(1)启动CORE Generator,打开已有工程。
(2)在打开的工程窗口中选择View by Function选项卡,找到需要的IP版本,如图3-50所示。
图3-50 寻找IP模板
(3)新建IP后窗口中会显示最新版本的IP。如果设计者希望使用其他版本的IP,可以在窗口顶端的版本下拉菜单中选择。
(4)如果设计者希望了解IP的使用方法,可以在右边窗格中单击View Data Sheet,打开相应IP的数据手册。
(5)当不知道IP所属的分类的时候,可以单击View by Name选项卡,IP会以名称为顺序排列。
(6)找到目标IP版本后,可以双击IP名称设置IP,如图3-51所示。
图3-51 设置IP
(7)定义好IP元件名称及参数后,单击Generate按钮,新的IP的文件在工程所在目录中生成,同时软件给出相应的报告,如图3-52所示。
图3-52 生成报告
3.3.3 修改已有IP的参数
每个设计中使用的IP都会不同,设计者可以为每个设计新建IP,也可以在已有IP的基础上修改参数以满足特定设计的需求。
【例3-16】修改已有IP的参数。
(1)启动CORE Generator,打开已有工程。
(2)在打开的工程窗口中选择Project IP窗格,会出现用户IP列表,如图3-53所示。选择需要改变参数的IP,会弹出与新建IP时一样的参数设置对话框。
图3-53 修改IP参数
(3)修改IP参数的方法与新建IP时设置IP参数的方法一样,设置好以后单击Finish按钮即可。
3.3.4 在设计中例化IP
创建好IP后,就可以在设计中使用IP了。设计者可以调用IP的HDL文件,如果IP为FPGA的硬核,ISE在布局布线的时候能够识别,则生成的IP不包含网表文件,否则生成的IP就包含网表文件。
【例3-17】在设计中例化IP。
(1)在CORE Generator工程所在的目录下,会包含与用户新建IP CORE名字相对应的HDL文件。如果包含网表文件,则为NGC格式的网表文件。
(2)如图3-54所示,DCM CORE是FPGA的硬核,在布局布线的时候只需要知道HDL的接口就可以了,所以只有HDL文件,没有网表文件。而DDS CORE则需要知道IP CORE内部实现的信息,所以包含了NGC格式的网表文件。
图3-54 例化文件
(3)设计者只需要在自己的设计中例化生成IP CORE的HDL文件就可以了。CORE Generator还会生成一个例子文件,方便设计者例化,例如图3-54中的Accumulator.veo文件,只需要将该文件的相应部分复制到设计文件中修改。
(4)在代码中例化好IP CORE以后,需要将其对应的HDL文件和NGC网表文件复制到ISE工程目录下,以便进行综合与布局布线,也可以在ISE工程属性中指定网表文件的位置。
(5)进行综合、布局布线,生成下载文件。
3.3.5 选择不同版本的IP
通常随着软件版本的升级和FPGA器件的更新,IP也会更新,版本越新的IP CORE,对应的功能也越强。但是如果只需要部分功能,或者老版本的IP CORE已经经过测试,则使用老版本的IP CORE即可。
【例3-18】选择不同版本的IP CORE。
(1)启动CORE Generator,打开已有工程,如图3-55所示。
图3-55 打开工程
(2)在打开的工程窗口中选择All IP versions复选框,在View by Function或者View by Name选项卡下,可以看到所有可以使用的IP版本。设计者选择相应的版本后进行参数设置。
(3)接下来的设置方法与新建IP的方法一样,不再赘述。