LabVIEW FPGA编译系统主要包含三个组件:LabVIEW、编译服务器和编译工作站。编译FPGA VI为可下载至终端上的FPGA芯片的位文件时,上述三个组件分别实现下列功能:

  • LabVIEW-向编译服务器发送编译请求。
  • 编译服务器-接收来自LabVIEW的请求,并发送编译任务至可用的编译工作站。
  • 编译工作站-接受来自编译服务器的任务请求并编译FPGA VI。

如在同一计算机上安装LabVIEW FPGA模块和Xilinx编译工具,则无需对上述3个编译组件进行额外的配置。默认情况下,LabVIEW和编译工作站使用安装在本地计算机上的编译服务器localhost。如在远程计算机上安装Xilinx编译工具,可使用一个或多个远程编译工作站远程编译FPGA VI。

编译过程详解

编译时间取决于VI的大小、处理器速度以及编译计算机的可用内存量。计算机内存不够的情况下,较小的程序框图可能会快速完成编译,而较大的程序框图需要使用大量的虚拟内存,进而导致编译失败或完成时间大幅超出预计。

下列步骤列出了编译FPGA VI的过程。LabVIEW在编译状态窗口显示编译状态。如已连接编译服务器,可查看不同的编译报告。

  1. 生成中间文件—LabVIEW将FPGA VI转换为发送至编译服务器的中间文件(HDL代码)。
  2. 排序-编译服务器排序任务并发送中间文件至编译工作站,以用于编译。
  3. HDL编译、分析和综合-编译工作站转换中间文件(HDL代码)为数字逻辑元素。
  4. 映射-编译工作站在FPGA的物理块间拆分应用逻辑。
  5. 布局和布线-编译工作站分配逻辑至FPGA的物理逻辑块并在逻辑块间布线,以满足编译的资源或定时限制。
  6. 生成编程文件-编译工作站创建二进制数据,LabVIEW将这些数据存储在比特文件内。
  7. 创建比特文件-LabVIEW在项目文件夹的子目录内保存该比特文件。可在FPGA VI中下载和/或运行该应用。