NI矢量信号收发器的FPGA编程
此机制是LabVIEW项目样例,将LabVIEW项目、具体VI,以及相关文件复制到用户指定的硬盘位置。另外还提供文件重命名和更新VI标题的能力。
图4.利用LabVIEW 2012项目样例,软件设计仪器的用户可以完全掌握代码的相关部分。
欲了解创建NI VST项目样例的详细信息,请访问ni.com/vst/getting-started/zhs/。
NI PXIe-5644R的软件安装程序能够创建具有不同特征的多个项目样例。最类似于默认VSA和VSG功能的项目是Simple VSA/VSG项目样例。此项目样例提供了与其他VSA和VSG API相似的主机接口。Simple VSA/VSG项目样例的高层架构和数据流如图5所示。
图5. Simple VSA/VSG项目样例在主机和FPGA上聚集仪器设计库,提供了一个VSA和VSG用户所熟悉的起点
从Simple VSA/VSG项目样例的FPGA VI开始,有四个主要回路,一些附加功能位于过程subVI内。为配置NI VST的所有可编程组件,以及FPGA上的一些仪器设计库,配置回路从主机处接收寄存器和设置,然后将其分布至各个FPGA子系统和外部电路。为了提高性能以及使主机上的多个过程均能够独立访问,有两个寄存器总线。一个用于采集,另一个用于生成,并且每一个都必须能够配置共享资源,例如计时。
图6. 配置回路负责接收主机的数据以及对仪器进行编程
RF输入回路获取模数转换器(ADC)的数据;进行复矢量校准;并进行频移、相位校准、减损,以及可变、部分、防混叠抽选。另外,RF输入回路还实现了同步以及数字式功率水平触发,然后将数据写入FIFO,并最终写入DRAM。
图7. RF输入回路以可配置I/Q速率生成已校准数据,并将其写入DRAM。
RF输出循环类似于RF输入循环,但是操作顺序相反。来自DRAM的数据进行内插、定标、频移、相位校准、内插、校准,然后通过数模转换器(DAC)生成。另外还有触发和同步所用信号。
图8. RF输出循环检索来自DRAM的数据然后生成数据
过程子VI包含有循环和状态机,实现了多数据记录采集和DRAM控制器对波形的排序。这些子VI包含了大量代码,满足了大带宽和低滞后性能要求,确保这些子VI能够在全速率ADC数据转换下溢出,以及产生全速率DAC数据而不发生下溢,同时仍然与主机之间进行波形数据传输。
读取循环实现的功能可以存在于多记录采集过程之内,然而为了方便起见而将其显示出来。该循环可以再数据离开DRAM时并在被发送到主机前进行数据处理。此路径在它自己的回路之内,从而那些并不符合120 MHz RF输入和输出回路的定时要求的IP仍然可以使用。为了适应这种IP,稍微降低此回路速率并不会影响读取性能,然而如果降得过多,则只会增加数据到达主机所需时间。这样即使采样内存被填满了,也不会丢失样点或破坏数据。
图9.读取循环提供了在已采集数据返回主机之前对其进行处理的机会。在默认情况下,读取回路返回原始数据。
虽然顶层FPGA VI集合了13个仪器设计库的功能,然而在主机上对所有这些库进行独立编程仍然不方便,并且此应用层主机代码一点也不像传统的VSA或者VSG API。为了解决此问题,Simple VSA/VSG项目样例包含了一个附加主机层,将这些仪器设计库集合在一个接口内,提供了与供应商定义的VSA/VSG API相类似的功能。LabVIEW类为此提供了一个方便的机制,即提供一个严格类型的会话,公有和私有方法,以及一个方便的子VI图标头文件保持机制。请注意,LabVIEW类中面向对象的继承,并没有用于此主机接口。
图10.LabVIEW类提供了一个方便的功能集合和主机接口保持机制。
这个简单的VSA/VSG样例项目还提供了常见的RF VSA和VSG操作所用的若干个主机样例,这些样例说明了如何正确使用主机接口。这些样例涵盖频域和I/Q采集;CW和基于序列的波形发生;以及多输入多输出(MIMO)同步。
图11.一些主机样例说明了Simple VSA/VSG项目样例使用基于类的主机接口的方法
简单VSA/VSG项目样例包含极多功能,并提供了熟悉的主机接口。然而该实用工具的代价就是代码的复杂度。具体地说,FPGA上的DRAM采用基于波形的抽取,显著增加代码量、复杂度,以及VST FPGA资源占用。然而,并不是所有应用均需要基于波形或者仪器数据移动范式。一些应用更加适合实时流数据移动架构。对于这些应用,VST Streaming项目范例是一个更好的起点,自定义的自由度更广。
图12.VST Streaming项目样例在主机和FPGA上集合了仪器设计库,提供了一个灵活地开发实时、低滞后信号处理和嵌入式应用的起
VST Streaming项目样例的顶层FPGA VI的架构与简单VSA/VSG项目样例相近。然而如果仔细考察,会发现要简单得多。可以明显看出,VST
- 基于NI PXI平台的模块化电子战模拟系统(09-25)
- WLAN测试的5要素及提升测试速度的方法(03-10)
- 了解RF仪器规格:第一部(07-24)
- 选用示波器所需考虑的10大要素(07-24)
- EDA环境结合测量软件 大幅缩短电子产品开发周期(12-12)
- 如何使用USRP-2921监测宽带频谱(09-23)