LabVIEW FPGA教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[LabVIEW FPGA教程]将外部IP导入LabVIEW FPGA
概览
通过将第三方IP 集成到NI LabVIEW软件,您能使用许多的针对Xilinx现场可编程门整列
(Field-programmable gate arrays, FPGA)进行优化的算法,在实现高性能的同时提高代码重用度。LabVIEW FPGA模块提供两种方法用来实现外部代码的导入:组件级IP(Component-Level Intellectual Property, CLIP)节点和IP集成节点。本白皮书将讨论这两种方法。
目录
1. CLIP节点介绍
2. 在FPGA应用中使用CLIP
3. IP集成节点介绍
4. CLIP和IP集成节点的区别
5. 相关资源
1. CLIP节点介绍
CLIP节点是一种用于将已有的FPGA IP导入LabVIEW FPGA硬件的同时通过LabVIEW FPGA程序框图与它进行通讯的框架。一旦导入成功,相对于LabVIEW FPGA,IP可以独立地、并行地运行。IP既能以原始VHDL的形式也能以诸如电子设计交换格式(Electronic design interchange format, EDIF)网表等中间文件的形式存在。这一功能要求使用者具有一定数字电路设计经验和VHDL的基本知识,因为所导入的IP 通常是一种底层的硬件描述语言(Hardware description language, HDL)。
对于不同的FPGA目标,其所支持的CLIP也不同。请参考目标硬件的的定义文档获取关于CLIP支持的信息。部分FPGA目标可支持以下一种或者两种类型的CLIP:
用户定义的CLIP—导入VHDL代码,直接与FPGA VI进行通讯。
套接字CLIP—导入VHDL代码,直接和不与LabVIEW FPGA模块关联的一个FPGA VI以及FPGA引脚进行通信。一些FPGA目标在FPGA中定义了一个您可以插入套接字CLIP的固定式CLIP套接字。
图1.在由使用者定义的CLIP节点中导入VHDL代码可以与一个FPGA VI进行通讯;反之,一个套接字CLIP节点允许IP同时连接到FPGA VI和可用FPGA引脚。
获取最新的信息,请参考标题为使用VHDL代码作为组件级IP(FPGA模块)的LabVIEW FPGA模块帮助。
2. 在FPGA应用中使用CLIP
1. 创建或者获取IP。
2. 在FPGA目标属性中声明CLIP以及定义IP接口。
3. 将CLIP添加到项目中。
4. 在一个FPGA VI中使用CLIP。
创建或者获取IP
要将CLIP添加到一个FPGA目标中,您必须提供VHDL代码形式的IP以编译成FPGA对象。您能使用以下方式提供VHDL代码::
o创建VHDL代码。
o通过其它的硬件描述语言(HDL)创建您自己的可兼容IP核心,例如通过Xilinx CORE Generator 利用Verilog进行创建。
o从Xilinx或合作伙伴那购买IP核心。
注意:在LabVIEW FPGA的CORE Generator IP选板中有超过50种Xilinx IP模块,无需使用CLIP或IP 集成节点导入IP模块您就能将其集成到您的LabVIEW FPGA VI的数据流中。
了解如何使用Xilinx CORE GeneratorIP选板提高IP的重用度。
在使用CLIP节点时,需要特别注意的是LabVIEW FPGA所支持的数据类型以及如何将它们转换为VHDL 数据类型。如果您的IP使用的逻辑向量并不不是表一中所列的数据类型之一,您必须编写一个VHDL外层程序来对标准LabVIEW类型进行扩展、缩短或者分解,从而符合IP的数据宽度。
请参考LabVIEW FPGA模块帮助,获取更多关于您IP的注意事项,包括使用外部时钟、交叉时钟域、使用同步寄存器、执行异步重置,以及使用约束和层次条件。
1. 创建一个带有FPGA硬件新LabVIEW项目。右键点击FPGA目标,并选择属性。属性对话框有一段
标有“组件级IP(Component-Level IP)”的部分。点击创建文件按钮创建XML文件。
图2. 点击“Create File”开始定义XML声明文档。
1. 点击Add Synthesis File…按钮,并浏览代表顶层组件IP(即simple_and.vhd )的VHDL文档.再
点击Next>
图3. 添加了您的IP的综合文件后,点击Next>。
2. 配置向导的余下部分用来安装XML声明文档。本例中,点击Next>按钮默认安装向导的余下部分,验
证输入文件的语法,再点击剩下的Next>按钮。
图4. 配置向导中生成的XML声明文件必须为导入的IP模块而列出。
一旦您完成了CLIP配置向导,CLIP声明名称(在XML文档中已定义)将出现在文件的路径旁。在本对话框中,您能够为需要导入的所有不同IP模块声明多个CLIP节点。
将一个CLIP项添加到一个LabVIEW项目中
在FPGA中声明CLIP实际上并没有将它添加到项目中去,因为你能够在同一个FPGA上完成一个CLIP 的多个实例。在下一步中,你将创建一个先前已经被声明的simpleAND CLIP项的实例。
1. 右键点击FPGA目标,并选择New Component-Level IP。在CLIP对话框中会出现选择所需的CLIP,
给这个实例一个唯一的标识名,以及通过“Clock”信号类型,选择时钟连接到CLIP中的任意线路。在本例中,后面两个选项默认不选。
图5. 本对话框显示当你将一个CLIP的实例添加到项目中后,选择CLIP,定义一个名称,同时配置
时钟。
2. 一旦您点击本对话框中的OK按钮,本CLIP和出现在项目中的所有与之相关的输入和输出都被标有
该实例的名称。