FPGA开发流程

创建了LabVIEW FPGA VI之后,应该编译将在NI的RIO硬件上运行的代码。根据代码的复杂性和开发系统的规格,为一个FPGA VI的编译时间将从数分钟到数小时不等。为了使开发效能最大,利用R系列的RIO设备,可以用精确到1比特的仿真模式,那样就可以在开始编译进程之前检验设计的逻辑。在使用FPGA仿真设备时,LabVIEW由该设备进行输入输出,并且在Windows电脑上执行VI的逻辑。在这种模式,可以用LabVIEW里的针对Windows的相同调试工具,比如重点执行、探针、断点。
  一旦LabVIEW FPGA的代码被编译,就创建了一个LabVIEW “主机” VI来,将NI RIO硬件整合到了PAC系统。图三阐明了创建FPGA应用程序的开发过程。“主机” VI运用在FPGA VI面板的控制器和指示器来在RIO设备上的FPGA和“主机”处理机械之间传递数据。这些面板被描述为FPGA上的数据寄存器。“主机”既可以是运行在Windows、个人计算机、PXI控制器或紧凑型视觉系统的PC或PXI控制器,也可以是运行在实时操作系统(RTOS)上的紧凑RIO控制器。在上面例子中,我们与LabVIEW主机VI交换了固定点、PID增长、循环速度、AIO、AOO数据。

图三.LabVIEW FPGA开发流程

  NI的RIO设备驱动程序包括一系列为开发FPGA上通信接口的功能。构建主机VI的第一步是打开一个对FPGA VI和RIO设备的引用。打开了FPGA VI的引用,如图2,也就在执行时下载并运行了编译过的FPGA代码。打开引用后,就能用读写控制函数对在FPGA上的控制器和指示器寄存器进行读写。一旦将FPGA引用写到函数内,只要选择想读写的控制器和指示器就可以了。然后可以将FPGA读写函数封装在while循环内一边持续地对FPGA进行读写。最后,图二中的LabVIEW主机VI的最后一个函数就是FPGA VI引用的关闭函数。它停止了FPGA VI并关闭了对设备的引用。现在就能通过将其他的已编译FPGA VI下载到设备来更改它的功能了。
  LabVIEW 主机VI也能用来进行浮点运算、数据记录、网络及任何不合适FPGA构造的计算。因为增强了确定性与可靠性,可以在一个有LabVIEW实时模块的RTOS(实时操作系统)上运行主机应用。LabVIEW实施系统能为与FPGA同时或不同时的功能提供确切的运算器。例如,浮点算法,包括快速傅里叶变换法、PID比例积分微分算法、自定义控制算法,经常在LabVIEW实时环境想下实现。相关的数据可以存到LabVIEW实时系统或转移到用来进行离线分析、数据记录、或用户界面显示的Windows主机。这种结构的构造如图四。每个NI提供的RIO硬件的PAC平台都能运行LabVIEW 实时VI。



图四.利用LabVIEW FPGA、LabVIEW实时系统和主机的完整PAC结构

  在每个R系列和紧凑RIO设备里都有可利用的闪存来存储已编译的LabVIEW 的FPGA VI,都能立即在设备的电源下运行应用程序。这种构造,因为FPGA有电源,它能运行FPGA VI,甚至在主机崩溃或断电时。当发生意外时这对安全编程的掉电上电序列是很理想的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等天晴i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值