1. 介绍 NI VST FPGA软件包含多层代码,提供了从底层控制到高层抽取的一切,拥有RF信号分析仪和RF信号发生器的功能。底层组件实现了具体硬件的标准功能,包括信号校准、前端控制,以及基于记录的采集和生成,被称为仪器设计库。这些库提供了互相匹配的主机和FPGA代码对,并且可以聚集以构建完整的硬件设计。LabVIEW项目样例包含了基于仪器设计库的相关主机和FPGA代码,提供了开发各种应用所需要的模板。另外,NI-RFSA和NI-RFSG仪器驱动还支持VST仪器驱动FPGA扩展,使VST FPGA源代码完美适合具体应用。
至页首
2. 仪器设计库 NI提供矢量信号收发器所用的多种仪器设计库。如上文所述,这些仪器设计库存在于用户和生产厂商的关于主机端和FPGA的代码中,,实现了仪器的常见功能。表2列出了一些顶层仪器设计库及其功能。
| DSP–板载信号处理 | | RF In–RF输入硬件配置及校准 | | RF Out–RF输出硬件配置及校准 | | Basecard–ADC及DAC配置 | | 多记录采集–多波形采集DRAM抽取抽取 | | 波形序列器–波形排序用多波形DRAM抽取抽取 | | 触发同步–多模块采样时钟同步,“T-Clk-like” | | 嵌入式配置–通过寄存器序列进行FPGA动态重新配置,LabVIEW FPGA“列表模式” |
表 1. NI VST所用顶层仪器设计库。 ni.com/vst/getting-started/zhs/所列软件安装了这些仪器设计库,在硬盘的 c:\Program Files\National Instruments\LabVIEW [version]\instr.lb\位置。这些库具有颜色和谐的粗边框,与其他VI明显有别。
图1:仪器设计库具有颜色和谐的粗边框,此独特图标使其与其他VI相区别 另外,这些库在默认情况下处于锁定状态,用户在修改内容之前,需要先通过会话框将VI解锁。下文所述是使用这些仪器设计库的详细信息,适用于任何更改。
在给定仪器设计库的主机与FPGA之间交换数据可采用多种机制。所有采用LabVIEW RIO架构和LabVIEW FPGA的NI产品均使用NI-RIO驱动,此驱动提供了单点方式的、存储器映射、基于寄存器的主机至FPGA以及FPGA至主机通信,还有从主机至FPGA以及FPGA至主机的多点连续DMA FIFO。这些都是功能强大的数据交换机制,实现主机与FPGA之间的有效通信不需要了解或者只要些许了解底层总线架构。
仪器设计库的一个常见要求是:主机代码需要将大量的设置下载到设备中,例如要对与FPGA相连接的芯片寄存器进行编程,或者更新设置组,例如FPGA上的滤波器抽头。由于一些仪器设计库要求采用此策略,并且设备的DMA通道数目有限,所以这些库可能需要共享一个FIFO,从而需要在主机端和FPGA端增加额外的逻辑来实现。另外,对于大数据集来说,此类通信一般为单向,但是可能也需要提供从FPGA至主机的某种单点确认,例如确认所有设置均已成功应用等等。所有这些概念组成为一个单独概念,称为寄存器总线,并为一些仪器设计库所采用。
寄存器总线使用一个主机到FPGA端的 DMA FIFO来下载设置,以及一些寄存器/NI-RIO控制器和指示器,用于握手,将单点数据返回主机,或者发出信号,确认已下载设置中的指令已经应用。
图 2. 寄存器总线是基于NI-RIO DMA、控制器和指示器构建的轻质协议,实现了大量设置组至FPGA的高效下载,这是给定仪器设计库的主机与FPGA侧之间的常见要求。 为了完成仲裁,每个仪器设计库均有一个独一无二的子系统ID,从而使得多个库能够共享一条寄存器总线。为了更好地总结VST仪器设计库的通信策略,表2说明了每个库所采用的策略。
| 控制器和指示器 | DMA FIFOs | 寄存器总线 | DSP | X | – | – | RF In | – | – | X | RF Out | – | – | X | Basecard | – | – | X | 多记录采集 | – | X | X | 波形序列器 | – | X | X | 触发同步 | X | – | – | 嵌入式配置 | – | – | X |
表 2. NI PXIe-5644R仪器设计库的主机与FPGA数据交换机制。 另外,通过与嵌入式配置仪器设计库配合使用,寄存器总线还可以在不牵涉主机的情况下完成FPGA触发的重新配置。
由于仪器设计库代表了卖主与用户代码之间的已定义接口,所以位于主机和FPGA两者的调色板上。在LabVIEW VI方块图的主机情境下,仪器设计库的主机侧接口见于Functions>>FPGA Interface>>NI PXIe-5644R 或者 Functions>>FPGA Interface>>NI PXIe-5645R。在FPGA侧,则位于Functions>>NI PXIe-5644R 或者 Functions>>NI PXIe-5645R下。
VST仪器设计库的主机调色板 VST仪器设计库的FPGA调色板 图 3. NI VST仪器设计库的主机和FPGA调色板。FPGA调色板包含了实现常用底层功能的其他仪器设计库 |