标题:
开放式FPGA增加测试灵活性
[打印本页]
作者:
Bazinga
时间:
2014-12-6 18:56
标题:
开放式FPGA增加测试灵活性
现在的大多数仪器通过将封闭式FPGA与固定固件相结合来实现仪器的各种功能。如果您看过一个拆解后的示波器,您可能已经看过里面的FPGA.FPGA提高了测试仪器的处理能力,而且如果您会使用仪器中的开放式FPGA,就可以自己编写仪器的测试功能。
仪器厂商早就认识到FPGA的优势,而且也利用其独特的处理能力来实现仪器的各种特性:
*在示波器上进行预触发采集
*在矢量信号分析仪上通过信号处理生成I和Q数据
*实时实现模式生成和高速数字仪器的向量比较
测试设备制造商正在致力于帮助用户更好地利用FPGA,以针对更多的特定应用进行优化。为了帮助您理解这一转变的好处,以下几点是FPGA特别适用于测试应用的关键属性:
*确定实时的处理
*真正的并行执行
*可重配置
*低延迟
再进一步思考一下,您可以利用开放式FPGA来实现以前无法实现的哪些功能呢?为了说明这些可能性,以下介绍了一些利用开放式FPGA的常见测试应用。
加速测试系统
在高产量生产线的末端生产测试中,测试时间分秒必争。当生产线的测试速率与生产速率相匹配时,生产效率达到最大。如果无法实现这一匹配,则必须采用创新的技术来缩短测试时间。传统的方法通过以太网、USB或GPIB将独立的台式仪器连接到PC主机上。由于待测设备通过不同的数据总线分别进行控制、测量和处理,因而所需要的测试时间相对较长。另一种方法是使用开放式FPGA来加速该过程,如图1所示。
图1:在测试仪器中,开放式FPGA可实现触发和后处理等功能。
FPGA没有利用外部通信总线,而是使用PXIe等高速总线来连接仪器,并通过其配置端口(如I2C、SPI或其他控制总线)连接到待测设备。在此类应用中,FPGA可控制DUT(待测设备)、触发其他仪器开始采集采样数据,甚至对这些采样数据进行处理,将其转换成对主机有意义的结果。
低延迟是能够加快此类应用运行速度的一个关键因素。FPGA本身并不具有操作系统,它是在具有高速时钟速率的硬件上实现所有逻辑。这意味着一个响应可能需要一个时钟周期来进行采集、一个时钟周期来进行处理以及一个时钟周期来做出响应。如果时钟速率为200MHz(时钟周期为4ns),则一个完整的响应需要12ns.由于FPGA的确定性特性,这种响应并不是一次性的,而是每一次都是12ns.因此,FPGA就可以省去与主机相关的延迟,而且可以最小化基于主机的处理的非确定性延迟。
协议感知
今天,并不是所有的数字和MEMS器件可以针对已知的结果向量进行测试。例如,给PDM(脉冲密度麦克风)一个激励信号,由于PDM的模拟特性,每次测试得到的比特流都会不一样。为了获得此类待测设备相关的有意义结果,首先需要根据相应协议解码数字流,之后再比较结果。使用开放式FPGA,您可以对测试系统进行配置,在FPGA上执行PDM协议,而不是将其传输到CPU上进行解读。从更宽泛的角度来说,您今天可以对FPGA进行配置来执行PDM协议,明天也可对同一个FPGA进行重新配置来执行其他协议,以测试数字温度传感器、加速度计、或MEMS器件。
在图2中,协议并不是在CPU上执行,而是在FPGA上。正因为如此,该测试系统可以支持快速握手脚本,适应精确等待周期等协议行为,并根据该通信做出决策。这种方法不仅可以让您接收来自DUT的更高层数据,如PDM麦克风解码后的模拟数据,而且也可以让您使用更高级别的命令来编写测试脚本。
图2. FPGA可用于处理协议,使其感知总线所使用的协议。
闭环测试:功率放大器
在无线通信系统中,功率放大器集成电路可在将信号发送至天线之前增加信号的强度。功率放大器通常在一个特定的输出功率下具有特定的性能。因此,当功率放大器在特定输出功率电平下运行时,有必要对功率放大器进行测试。但是,我们通常只是粗略地知道放大器的增益(例如±3分贝),而且放大器的增益在设备运行范围内是非线性的。越接近最大输出功率,增益越低。因此,在进行任何性能测量之前必须“调整”放大器的输出。输出调整通常称为功率调整或功率伺服。其基本原理是,调整放大器的输入功率直至测量得到正确的输出功率。
用于测量功率放大器的传统测试装置如图3所示。VSG(矢量信号发生器)生成一个激励波形至DUT(待测设备)。功率计可确保DUT输出的是正确的功率电平。最后,VSA(矢量信号分析仪)测量待测设备的性能——如EVM(误差矢量幅度)或ACP(邻信道功率)。这些测量是在各种中心频率和功率电平下进行的。
图3.用于测量功率放大器输出的传统测试装置包含一个VSG、VSA和功率计。
功率放大器的输出功率必须根据每个所需的中心频率和功率电平进行调整。在调整过程中可以遵循以下步骤:
●根据待测设备的估算增益,选择一个起始VSG功率电平。
●设置VSG功率电平。
●等待VSG稳定。
●等待DUT稳定。
●使用功率计进行测量。
●如果功率在量程内,则退出。否则计算新的VSG功率电平,并返回步骤2.
调整所需的时间取决于待测设备的类型、所需的精度以及所使用的仪器类型,通常为几百毫秒到几秒。调整完成后,使用VSA进行性能测量。
图4显示的是一个待测设备在调整过程中的输出,该设备采用传统方法来获得28dBm的平均输出功率。如果功率放大器的增益呈线性且匹配数据表中规定的标准增益,则VSG生成的第一个点会输出28dBm的功率。相反,放大器的输出只有26.5dBm,这说明功率放大器规定的标准增益并不准确。因此,需要对VSG输出功率进行调整,同时VSA捕获另一个点。此时的平均功率为27.6dBm,这表明了放大器处于增益压缩状态。总体上,该方法需要七个步骤以及大约150毫秒的时间才能使放大器的输出达到所需的级别。在这个例子中,每个步骤的待测设备稳定时间为10ms.但是,稳定时间根据每个待测设备而有所不同,这会大大影响整体的调整时间。
图4.调整功率放大器输出的传统方法显示了功率电平呈逐步增大状态。
VST(矢量信号收发仪)结合了VSG、VSA和FPGA.这一组合使您可将功率调整算法的运行转移到硬件上。在图5中,虽然没有功率计,但是您也可以运行一个系统校准步骤,在VSA上获得与功率计相同的精确度。
图5.矢量信号收发仪结合了信号发生器、信号分析仪和FPGA.
功率放大器的输出功率调整步骤类似于传统方法步骤,不同的是调整循环是在开放式FPGA内部运行。在FPGA内运行循环可大大降低每次调整所需的时间。与在主机上运行控制循环相比,通过使用开放式FPGA,并在FPGA上执行控制循环,调整待测设备输出功率所需的时间将大大缩短。对于本例中的DUT,功率调整只需大约5毫秒,而采用传统方法则需要150毫秒。请注意,基于硬件的方法比传统方法多一个步骤。但是,调整所需的总体时间却少得多。与图4相比,在图6中,前面几个步骤执行的速度非常快(缩短了平均时间),之后随着调整循环的收敛,点之间的间距不断增大。
图6.与传统方法相比,基于硬件的调整可使功率电平上升的时间大大缩短。
信号处理
用户可编程FPGA最典型的应用之一是减少仪器上必须发送回主机进行处理的数据量,从而将通信总线释放出来进行其他数据传输,同时降低了CPU的负荷。常见的方法包括对采集的数据集进行复杂触发、滤波、峰值检测或者执行FFT(快速傅立叶变换)。
例如,在图7所示的应用中,有四个待测设备需要并行进行测试。ADC(模拟数字转换器)将采样数据传送至FPGA,但当收到一个自定义触发才会开始采集数据。在采集数据时,FPGA会对测量结果进行实时平均,然后将计算结果序列化到记录中。接着,对记录的数据进行FFT,然后开始测量SFDR(无杂散动态范围)、SNR(信噪比)和SINAD(信噪失真比)。这些结果仅仅是来自ADC的输入信号的一小部分数据,通过DMA FIFO(直接内存存取,先入先出)机制传输至主机。
图7.开放式FPGA可让您采集数据、对信号取平均值以去噪、将并行数据转化为串行数据,并应用数学运算、FFT和滤波。
FFT作为DSP中的一个基本函数,FFT可用于许多测试应用。FPGA具有这个功能有助于测试频域触发、数据压缩、基于频率的闭环控制和图像处理等应用。图8显示了该示例如何使用LabVIEW FPGA实现FFT.
图8.代码显示了开放式FPGA上执行FFT的位置。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0