相对于基于处理器的终端,FPGA上的并行操作通常会加快执行速率并降低抖动。每个并行操作在其专有的FPGA硬件区域执行,以实现真正的并发执行。因此,并行FPGA操作的整体执行时间等于较慢的操作的执行时间。单处理器上相同操作的整体执行时间等于全部执行时间的和值。

如要创建并行操作可在单个程序框图上适用多个独立的While循环。例如,实现多个数据采集引擎(每个均适用独立的采样速率)。如下列程序框图所示。

在包含高频和低频信号的系统中使用独立的采样速率可高效获取数据。配置一个数据采集引擎为高采样率,以测量高频信号。配置一个数据采集引擎为低采样率,以测量低频信号。

如在并行操作间使用共享资源可能遇到禁用并行执行的风险,因为每个操作均需等待,直至共享资源可用才能执行。可能的共享资源包括数字I/O资源、模拟I/O资源、存储器项、寄存器项、中断线、局部和全局变量及非重入子VI。

提示 每个并行操作使用一定数量的FPGA空间。如FPGA上空间不足且具有相同的并行操作,通过为操作创建子VI可节省空间并使其为非可重用。但为操作创建非可重用子VI即牺牲了并行执行。

通过连线在循环间传输数据将引入数据流延迟,进而影响循环并行执行。

  • 存储器项
  • 寄存器项
  • 全局或局部变量
  • FIFO