自动执行ADC数据收集

描述

本文介绍模数转换器(ADC)的自动数据收集系统。它讨论了自动化数据收集的优势以及硬件和软件的详细说明。它继续解释系统的操作并给出一些数据示例。

介绍

为了更高效、更可重复地表征数据转换器,可以自动进行实验室测试设置。有三个主要优点:

由于软件配置了测试设备,因此每次检定零件时都使用相同的仪器设置。

当软件捕获数据时,它会将其存储在文件中,自动消除由于数据输入不正确而导致的错误。手动获取数据时,必须手动写入所有数据,然后手动输入到文件或电子表格中。这些步骤很繁琐,并且可能是错误的来源。

由于PC正在驱动测量和数据收集过程,因此收集数据的速度比手动完成的速度要快得多。几分钟内即可采集数千个数据点。手动收集相同数量的数据可能需要几天时间。一旦数据在指定的文件中,就可以将其保存为文本文件,以便可以使用Gnuplot或Excel等软件程序轻松评估或绘制。

由于大多数实验室仪器都具有通用接口总线(GPIB)接口,因此几乎任何手动实验室测量都可以自动化。

GPIB的背景

GPIB 最初由惠普公司开发为 HP-IB,是一种高速通信接口,可实现可编程仪器的互连和控制。控制器卡通常驻留在PC中,用于控制各种测试仪器,如逻辑分析仪、信号和数据发生器、数字电压表和电源。GPIB由IEEE标准化,现在以GPIB,HP-IB和IEEE-488总线三个名称而闻名。

自动设置的优势

使用自动测试设置的一个优点是,它加快了表征零件的任务。理想情况下,软件应该提前编写和调试,这样当零件可用时,就不会花费宝贵的时间编写和调试软件代码。对于我们的测试设置,Visual C++被选为编程语言。

通过 功能 自动 化 测试 设置, 一些 更 困难 的 数据 转换 器 绘图, 如 积分 非线性 ( INL)、 微分 非线性 (DNL) 和 快速 傅里叶 变换 (FFT) 图 可以在 几分钟 内 提供。

模块化软件允许重复使用其他程序。通过灵活的代码,该软件可以轻松修改为具有不同速度和分辨率的其他转换器。

自动设置的另一个关键优势是,设计工程师不需要熟悉设备和仪器,因为软件会自动对所有仪器设置进行编程。尽管对设备的基本知识对于确保准确的结果仍然至关重要。在测试运行时,工程师通常不必亲自到场。通常,监督测试和获取数据的任务被委托给实验室技术人员,从而进一步解放工程师。

设置要求

GPIB 接口卡

GPIB 接口卡插入其中一个 PC 扩展槽,允许 PC 与具有 GPIB 接口的任何测试仪器进行通信。每台仪器都需要一根 GPIB 电缆。仪器使用串行菊花链互连,从PC开始,到最后一个仪器结束。每台仪器都需要一个唯一的 GPIB 地址。可用地址为 0 到 31。GPIB 总线上可以包含的仪器数量取决于电缆的长度及其连接方式。在实际应用中,可同时连接多达 10 台仪器。

模式生成器

模式生成器创建用于与被测设备 (DUT) 通信的所有 I/O 数据模式。由于在本例中,ADC具有串行输出,因此模式发生器也用于提供控制解串器板时序的信号。解串器板允许更有效地使用逻辑分析仪存储器。串行外设接口(SPI)信号(时钟、数据和片选)来自码型发生器。对于双线I²C接口,生成时钟和数据信号。由于I²C数据线是双向的,因此需要具有集电极开路缓冲器的电路。

数据模式通过 GPIB 接口加载。GPIB 接口还控制码型生成器的设置。

逻辑分析仪

对于ADC,逻辑分析仪用于捕获转换数据并将其存储在文件中。逻辑分析仪的设置由GPIB控制,但由于GPIB的速度限制,我们的数据文件通过局域网(LAN)传输到PC。

信号或脉冲发生器

需要两个信号/脉冲发生器。一个用于生成转换时钟(或采样频率)。另一个用于生成ADC输入信号(或测试频率)。来自两个单元的信号应同步。这称为相干测试。请注意,转换时钟发生器驱动码型发生器。

电源

电源电压需要为DUT和解串器板供电。如果需要,这些电源可以进行编程,以进一步自动化测试设置。

直流电源

需要一个干净的直流电源为ADC或DAC提供基准电压源。我们的设置中使用了Datel校准器。

反序列化板

该电路用于将ADC的串行数据输出转换为并行格式,以便逻辑分析仪可以更有效地捕获数据。虽然数据可以通过代码反序列化,但并行格式可以更好地利用逻辑分析仪存储器。

图 1 说明了仪器如何与 PC 互连以及彼此互连。对于并行接口ADC,不需要解串器板。

转换器


图1.串行或并行输出ADC设备的互连。
 

软件

该软件是使用Visual C++开发的,与Win95 / 98或Windows NT兼容。这些程序都是使用GUI界面在Windows中编写的,使其用户友好。

该软件的主要功能之一是称为 INIT 或 SETUP 的初始化功能(参见图 3)。当操作员单击此功能时,它会在模式生成器中设置正确的模式,并设置逻辑分析器,以便准备好捕获数据。操作员无需触摸仪器,只需确保它们已通电并正确连接。

该软件允许操作员选择转换器采样率和设备的分辨率。它还允许控制采集的样本数量。在进行转换时,数据将写入文件。

使用两个程序,一个用于控制和数据采集,另一个用于分析数据。控制和采集程序控制数据生成器并从逻辑分析仪获取数据。分析软件计算 INL、DNL 和 FFT。

还可以为其他测试开发软件,例如零电平误差、满量程误差和增益误差。然而,这需要一个软件伺服回路,并且是另一个应用笔记的主题。

分析软件是一个通用程序,可用于分析任何ADC的数据。以下是该软件的示例屏幕。

转换器


图2.测试81的屏幕。

转换器

 

转换器


图3.用于控制的屏幕。

操作

要对INL或DNL执行FFT或测试,必须正确选择测试频率和采样频率,以确保:(1)转换器中的所有数字代码都得到执行,以及(2)信噪比和谐波失真测量不会受到测试方法的影响。使用质数方法,获取质数个测试音周期,这导致数据端点之间没有中断。该方法产生频谱纯结果,其中测试音和谐波都包含在一个频率箱中。也就是说,FFT具有有限带宽的离散频率箱。正确选择采样和测试音频率会导致测试音的所有能量出现在单个频率箱中。转换时钟发生器和测试音发生器必须同步以进行相干测试,这一点很重要。

例如,给定采样频率f样本=100ksps,测试音频率f测试= 1kHz,获取的点数N = 4096,我们可以确定应该使用什么频率。每个频率箱的带宽由f样本/N=24.41。将此结果四舍五入为 25Hz。现在重新计算采样频率得到 25 × N=102.4ksps。要确定测试音频率,请从 f 开始测试/25=40。选择最接近 40 的质数,即 41。这会产生重新计算的测试音频率 41 × 25=1025Hz。请注意,f测试是一个有理数,可以很容易地加载到大多数信号发生器中。无理数会导致FFT泄漏并导致错误的SNR。单面FFT将有2048(N/2)个箱。假设每个箱的宽度为25Hz,FFT应扩展到51.2kHz,正好是f样本/2.所有测试音能量应在第 41 个箱或 25 × 41=1025Hz 处。

用于测试频率的函数发生器应具有低失真。如果没有低失真信号发生器,可以使用滤波器来减少谐波。

使用以下步骤完成数据收集过程:

单击 INIT 按钮,以便设置逻辑分析仪和码型生成器。

输入将存储转化数据的文件名。

如有必要,请选择要测试的转换器的分辨率。这通常设置为默认为正确的值。

选择 FFT 中的点数或转换数。

单击“运行”按钮。此时,程序将设置转换器,开始转换并捕获所需的转换数据量。然后,数据将保存在所需的文件中。

保存数据后,可以将文件加载到 Test81 或任何其他从原始转换数据计算所需信息的程序。

FFT结果可以绘制成与测量相关的各种谐波或杂散图。此外,动态性能数字显示在控制窗口和绘图上。其中包括SFDR,SNR,SINAD,THD和ENOB。每个谐波(最多五分之一)与频率和相对电平一起表示。

INL和DNL可以使用ADC输入端的线性斜坡信号或使用正弦直方图方法进行计算。正弦直方图方法的优点是使用干净的正弦波,而不必生成高度线性的斜坡。对于具有交流输入信号的应用,正弦直方图方法是更好的ADC性能晴雨表,因为它提供交流输入的测试数据,这与某些仅使用直流输入信号进行测试的转换器不同。

要设置正弦直方图 INL/DNL 检验,请运行素数周期计算。这可确保执行所有代码箱,并且整个直方图将具有正弦概率分布¹。转换器应略微过驱动。这将溢出直方图的第一个和最后一个箱,但此数据将被丢弃。自动计算失调和增益,并生成DNL和INL图。

下面是使用 Gnuplot 绘制的示例图。

转换器


图4.动态性能 (FFT) 图。

转换器


图5.直方图。

转换器


图6.DNL 图。

转换器


图7.INL图。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分