当前位置:首页 > EDA > 电子设计自动化
[导读]引言数据采集技术是一种流行且实用的电子技术。它广泛应用于信号检测、信号处理、仪器仪表等领域。近年来,随着数字化技术的不断发展,数据采集技术也呈现出速度更高、通道更多、数据量更大的发展趋势。本设计中数据采

引言

数据采集技术是一种流行且实用的电子技术。它广泛应用于信号检测、信号处理、仪器仪表等领域。近年来,随着数字化技术的不断发展,数据采集技术也呈现出速度更高、通道更多、数据量更大的发展趋势。

本设计中数据采集系统的核心器件是凌力尔特公司的A/D转换芯片LTC2207。本文研究了在ARM核S3C2440芯片和FPGA控制下对直流数据和正弦信号的采集应用,并进行了相关的仿真验证。

1 LTC2207芯片介绍[1]

1.1 LTC2207的功能特性

LTC2207是16位A/D转换器,它的采样速率为105 Msps。LTC2207是针对输入频率为700 MHz的高频、宽动态范围信号进行数字化处理而设计的。它可以利用PGA前端(输入范围为 1.5VP?P 或2.25VP?P )对该ADC的输入范围进行优化。

LTC2207非常适合于要求苛刻的通信应用。它的AC性能包括78.2 dB噪声层和100 dB无杂散动态范围(SFDR);250 MHz时SFDR>83 dB(输入范围为1.5VP?P时);80fsRMS的超低抖动实现了高输入频率的欠采样和卓越的噪声性能;最大DC规格包括整个温度范围内的±4LSB INL、±1LSB DNL(无漏失码)。

LTC2207具有单一的3.3 V供电电源,单一的电源允许CMOS输出摆幅为0.5~3.6 V。它同时具有700 MHz全功率带宽 S/H (采样及保持),可选的内部抖动和数据输出(Randomizer)随机函数发生器,功耗为900 mW。LTC2207可利用正弦波时钟、PECL、LVDS、TTL或CMOS输入对 ENC+和 ENC-输入进行差分或单端驱动。可任选的时钟占空比稳定器在全速和多种时钟占空比条件下实现了高性能。

LTC2207的引脚说明略——编者注。

1.2 LTC2207的时序说明

LTC2207时序图如图1所示。LTC2207是带有前端PGA的CMOS多步转换器。模拟输入是差分信号以提高共模噪声抑制,最大限度地利用输入范围。此外,差分输入信号可以降低取样保持电路的谐波。编码输入也比共模抑制输入具有更强的抗干扰能力。

 

 图1 LTC2207时序图

LTC2207的采集取决于ENC+/ENC-输入引脚的状态,由图1可知LTC2207在ENC+引脚的上升沿时(ENC-引脚的下降沿时)采样模拟输入信号。它有5个流水线模数转换阶段,经过7个周期后,一个模拟采样输入就会转换为一个数字值,数字输出上/下溢出则由OF引脚上的逻辑高电平表示。

此A/D转换器有一个延迟的编码输入作为数字输出,提供了CLKOUT+和CLKOUT-两信号;需要使用正弦时钟编码信号CLKOUT+/CLKOUT-将数据同步转换到数字系统。数据在CLKOUT+的上升沿或CLKOUT-的下降沿锁存,在CLKOUT+下降沿和CLKOUT-上升沿时更新。

2 硬件电路设计

信号采集部分主要完成对模拟信号的调理和A/D转换芯片的采集。A/D转换芯片的输入信号是差分的,而被采集的信号是单端的,这就需要把单端信号转换成差分信号。输入的信号经过MAX4201缓冲后,由差分驱动器AD8131转换成差分信号,驱动A/D转换芯片LTC2207。

采用LVDS转发器MAX9150转换FPGA所给的时钟信号,作为LTC2207的采集控制信号ENC。MAX9150的转换电路如图2所示。

 

 

图2 MAX9150的转换电路

 

 

图3 采集输入信号的前端调理电路

LTC2207的模拟差分信号输入前端的调理芯片采用低噪声、低功耗、超高速开环缓冲器MAX4201和高速差分驱动器AD8131。采集输入信号的前端调理电路如图3所示。图中MAX4201采用±5 V供电,对地并联的电容给电源滤波,为缓冲器提供无干扰的电源。缓冲后的信号,由MAX4201的5引脚输出,其输出阻抗是50 Ω,再经过AD8131完成单端到差分的转换。

LTC2207的采集控制电路如图4所示。其中,AIN+、AIN-为差分模拟输入信号;ENC+、ENC-为采集芯片的时钟控制信号;D0~D15为16位数据输出信号;CLKOUT+、CLKOUT-为时钟输出信号。

 

 

图4 LTC2207的采集控制电路图

3 ARM与FPGA的编程控制[2]

采用硬件描述语言VerilogHDL,对LTC2207相关引脚的使能以及FPGA如何读取采集来的数据的程序如下:

always @(posedge clk or negedge rst_n)

if(!rst_n)

begin

/OE2_2207 ﹤= 1?b0;//相关引脚的软件配置

MODE2_2207 ﹤= 1?b1;

RAND2_2207 ﹤= 1?b0;

PGA2_2207 ﹤= 1?b0;

DITH2_2207 ﹤= 1?b1;

SHDN2_2207 ﹤= 1?b0;

DATA2_receive ﹤= 16?d0;

state ﹤= IDLE;

done2 ﹤= 1?b0;

end

else

begin

case(state)

IDLE: if(start_reg)

begin

en_9150 ﹤=1;

state ﹤= READ_DATA;

end

READ_DATA:

begin//FPGA读取采集来的数据

en_9150 ﹤=0;

if(CLKp2_2207_reg)

begin

DATA2_receive ﹤= DATA2_2207;

done2 ﹤= 1?b1;

state ﹤= IDLE;

end

else

done2 ﹤= 1?b1;

end

default: ;

endcase

end

与S3C2440 GPJ1口连接的FPGA端的start控制程序代码如下[3]:

always @(posedge clk or negedge rst_n)

if(!rst_n)

begin

start_reg1 ﹤= 0;

start_reg2 ﹤= 0;

end

else

begin

start_reg1 ﹤= start;

start_reg2 ﹤= start_reg1;

end

assign start_reg = start_reg1 & (~start_reg2);

S3C2440控制启动FPGA开始采集的start程序如下[4]:

#include

#include "2440addr.h"

#include "2440lib.h"

#include "def.h"

#include "fpga.h"

void delay(int a) {//延迟

int k;

for(k=0;k

}

void start(){

rGPJCON=(1﹤﹤2)+(0﹤﹤6); //设置I/O口GPJ1为输出属性,GPJ3为输入属性

rGPJUP=0x1fff;//禁止GPJ端口的上拉

rGPJDAT=(0﹤﹤1);//初始化时置低电平

while(1) {

rGPJDAT=(1﹤﹤1);//GPJ1置高

delay(50);

rGPJDAT=(0﹤﹤1);//GPJ1置低

delay(500);

}

}

4 仿真验证[5]

采用QuartusII软件中的调试工具SignalTapII逻辑分析仪进行仿真验证。当采集输入为0.453 V直流量时,FPGA采集的数据仿真如图5所示。

可以观察数据3337h、3333h、332Bh、3 337h等变化不大,仅在低5位有所变化。根据A/D采集原理,输入电压/参考电压=采样值/216。所给参考电压是2.25 V,采样值若取以上数据中的3 334h(在相对稳定的数据中任取一个),转换成十进制为13 108,代入以上公式: 13108×2?25/65536=0.45。得到FPGA读到的数据计算的输入电压是0.45 V,而此时测得的实际输入电压是0.453 V。误差很小,约为0.6%,基本由噪声所致,采得的数据比较精确。

当采集输入为1.125 V直流量时,FPGA采集来的数据仿真如图6所示。同理若取其中的7FE0h,此时算得的误差约为0.8‰。

当采集输入为1.16 V直流量时FPGA采集来的数据仿真如图7所示。

从图中可发现此输入下数据已经达到满值(输入超过1.125 V),OF为高,说明数据有溢出。

当采集输入是由信号发生器给的200 kHz正弦信号时FPGA采集来的数据仿真如图8所示。

由一个周期采样点数公式N=Tsig/Tsam=fsam/fsig,知此输入频率下采样点数为40 MHz/200 kHz=200,若看坐标-250处的0F17h,则找出一个周期后的那个数是不是和初始值相同。FPGA坐标为150时的数据仿真如图9所示。它处在坐标150的位置为0F07h,和0F17h相差很小。取对应的多组数观察都证明对模拟信号的数据采集亦是比较正确的。

 

 

图5 当采集输入为0.453 V直流量时FPGA采集来的数据仿真

 

 

图6 当采集输入为1.125 V直流量时FPGA采集来的数据仿真

 

 

图7 当采集输入为1.16 V直流量时FPGA采集来的数据仿真

 

 

图8 当采集输入为200 kHz正弦信号时FPGA采集来的数据仿真

 

 

图9 FPGA坐标为150时的数据仿真

结语

针对A/D转换芯片LTC2207,详细描述了以FPGA和ARM作为控制器的采样设计。采用FPGA直接对A/D进行配置,避免了采用DSP、单片机等进行配置的传统方式[6],因而设计灵活、简单、通用性强。通过对采集来的数据进行仿真验证,发现在ARMFPGA控制下16位A/D芯片LTC2207得到了很好的采集应用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

从ChatGPT到AI手机、AI PC,AI正在各种不同型态的设备上落地。而作为几百亿台移动设备和嵌入式设备的计算核心的供应商,Arm也敏锐捕捉到了这一新的重大机遇,持续在全线的新产品中增加AI的功能和特性,助力实现设备...

关键字: ARM Cortex-X925 Immortalis G925 终端计算子系统 CSS for Client

大数据集计算的真正限制来自网络和内存两大瓶颈,而AMD Alveo V80则能够处理掉这两大瓶颈,并且帮助客户大幅降低TCO。

关键字: AMD HBM Alveo V80 加速卡 FPGA 自适应SoC

业内消息,近日Arm公司官宣推出全新的基于Arm v9架构的CPU、GPU IP,以及设计软件工具,以帮助智能手机更好地处理人工智能(AI)任务,并加速AI应用。

关键字: ARM 芯片IP 黑鹰 超大核 Cortex-A725

随着嵌入式的快速发展,在工控、通信、5G通信领域,FPGA以其超灵活的可编程能力,被越来越多的工程师选择。近日,米尔电子发布2款FPGA的核心板和开发板,型号分别为:基于紫光同创Logos-2系列PG2L100H的MYC...

关键字: FPGA 核心板 开发板

在某FPGA系统中,对电源系统进行调试,在同样的测试条件下,发现其中有一块板相对其它的板功耗总偏大,进而对其进行调试分析。

关键字: 电源 纹波调试 FPGA

最新消息,昨天北京开源芯片研究院官宣 ,2024 年 5 月 21 日开芯院通过线上会议的方式,向会员单位正式发布了全球首个开源大规模片上互联网络(Network on Chip,NoC)IP—— 研发代号“温榆河”。这...

关键字: ARM 垄断 开源 片上互联网络 温榆河

UART(Universal Asynchronous Receiver/Transmitter)是一种通信协议,用于在电子设备之间传输数据。它是一种串行通信协议,意味着数据位按顺序一个接一个地传输。

关键字: FPGA UART串口通信

电源系统设计包括设计参数之间的许多权衡,例如尺寸、成本、效率和负载瞬态性能。为了设计功率级,必须建立各种特性,例如瞬态容限、纹波电压和负载特性。

关键字: 降压转换器 电源设计 控制

Bourns® TLVR1005T 和 TLVR1105T 系列采用双绕组结构和低感值设计,可提供快速瞬态响应,并可依据 CPU、FPGA 和 ASIC 负载要求进行延展

关键字: 数据驱动 电感器 FPGA
关闭
关闭