×
嵌入式 > 技术百科 > 详情

DDS在通用多通道数据采集卡中的应用

发布时间:2021-06-30 发布时间:
|

摘 要:提出一种基于DDS和FPGA技术的通用多通道PCI数据采集卡的实现方案。采用DDS器件输出信号经过整形分频后作为数据采集卡的采样时钟,从而实现了任意采样率的设定,同时使用FPGA实现了多种可编程触发方式。

在水声测量和许多其他应用领域中,待测信号的频率范围都是比较宽的。比如在水声领域,远距离水声通信、浅层剖面声纳或被动噪声测量中经常使用的频率可低到1-2KHz甚至几百Hz;而高分辨率成像声纳等通常使用的声信号频率为几百KHz甚至1-2MHz。对于不同频率范围的信号,通常要求的采样率也不同。有时为了配合信号处理算法,甚至要求采样率可以在一定范围内随意设定,这就对数据采集卡的采样时钟发生器提出了较高要求。其中M、N是两个可编程分频器,在锁相环的反馈支路中串有分频器M,因而输出采样时钟频率为时钟源频率的(M/N)倍。但是由于分频比M、N均为整数,并且锁相环工作的频率范围有限,M只能在很有限的范围内取值,因而输出采样时钟的可调范围有限,且调整步长较大。此外,锁相环的设计和调整也比较困难,成本较高。为了更好的解决这一问题,本文提出了以直接数字式频率合成(DDS)器件为核心的新型采样时钟发生器结构。

1 基于DDS技术的采样时钟发生器

1.1 DDS技术简介

DDS技术出现于二十世纪70年代,它是一种全数字频率合成技术。它将先进的数字信号处理理论与方法引入信号合成领域,实现了合成信号的频率转换速度与频率准确度之间的统一。它具有相位变换连续、频率转换速度快、频率分辨率极高、相位噪声低、易于用微机等多种方法控制以及体积小、集成度高等多种优点,因而近年来DDS在理论和应用上得到了飞速的发展。

讲述DDS原理的文章很多,本文就不再赘述了。

1.2 DDS采样时钟发生器结构

由于DDS器件具有输出频率可以精确数控,且频率转换方便、频率分辨率高的特点,因而很适合作为数据采集系统的时钟源。

由计算机或其他MCU向DDS器件送出频率控制字,产生预定频率和幅度的正弦波信号。由于DDS输出的正弦信号频谱纯度不很高,含有较多的高频成分,如果没有滤除这些高频成分就直接进行整形,会造成输出时钟信号出现大量尖刺,使得采样孔径抖动严重,将极大的损害采集系统的性能。因此,在DDS的输出端接入了低通滤波器,经过滤波后的正弦信号经过整形电路后得到相同频率的TTL电平时钟信号。这个时钟信号经过可编程分频器(这部分的功能在后面详述)后的输出就作为整个采样和A/D变换的采样时钟。

2 数据采集卡的设计

除了上述的任意可编程采样率的要求外,水声信号测量通常要求测量系统的动态范围和分辨率较高,并且由于水声系统中常使用多个换能器组成阵列,因而测量系统的信号采集应采用多通道同时采样的结构。而目前的现有数据采集卡难以同时满足这几个要求。为此,本文在DDS采样时钟发生器的基础上设计并实现了4通道高速数据采集卡。

2.1 数据采集卡的结构

采集卡的主要技术指标如下:4个单端模拟通道,4通道同时采样,每个通道采样率为100sps-8Msps可任意设定,分辨率为12bit。为了实现采集数据的实时存储,采用了PCI总线与主机接口。

4个通道的输入模拟信号经过缓冲放大和抗混迭滤波器后分别送入4片ADC中,由采样时钟发生器产生的采样时钟控制对模拟信号进行采样、保持和量化,输出的4路12bit数据复用为一路32bit数据送入FPGA中缓存并打包成帧并加入帧号等信息。成帧后的数据受主机端程序控制,通过PCI接口控制器经PCI总线送入主存中,根据需要进行处理或存盘,从而完成数据采集过程。

2.2 元器件的选用

ADC采用了模拟器件公司(ADI)的AD9220子区式高速ADC,分辨率为12bit,采样率最高为10Msps,片内带有高速低噪声采样保持放大器和电压参考源,可以简化设计。采集卡中所有的控制和时序逻辑全部由一片FPGA实现,综合考虑规模、速度、功耗等因素,选用了Xilinx公司的XCS30。该器件为Spartan系列FPGA,成本低速度快,可用逻辑门数为30000门。采样时钟发生器中DDS器件选用ADI的AD9830单片DDS集成电路,其最高时钟频率为50MHz,内置10bit D/A变换器,频率控制字长32bit,频率分辨率可达0.005Hz,完全满足本设计的需要。PCI总线控制器选用了Cypress公司的CY7C09449(PCI-DP),其特点是接口方式灵活,具备PCI总线Master能力,可以实现与主存或其他Slave设备的DMA传输,这对保证实时高速数据采集是十分必要的。

3 提高采集卡性能的措施

3.1采样时钟发生器中低通滤波器的设计

低通滤波器的性能对保证采样时钟具有较低的jitter非常关键,因此在本设计中采用了7阶椭圆低通滤波器。为了避免引入有源器件自身电噪声,滤波器全部采用无源器件构成,滤波器对带外噪声抑制比约为-60dB。

滤波器的输入阻抗和输出阻抗均为100Ω,高于AD9830典型应用场合的50Ω,同时适当调整AD9830外接的电流设置电阻使得输出电流增大。这样可以增大输出信号电压范围,提高信号摆率(Slew Rate),有助于降低整形后时钟信号的jitter。此外,图5中以R17和R18的中点电平作为比较器的门限,这样可以保证整形后信号的占空比为50%。3.2采样时钟设置范围的分段

为了能产生较高频率(8MHz)的采样时钟,在时钟发生电路中使用了高速比较器MAX9010,其传播延迟仅5ns。当DDS输出信号频率较低的时候,信号在比较门限电平附近摆率过低,容易造成比较器多次翻转。虽然在后面的逻辑中采用了数字低通滤波器可以有效的去除这种干扰,但是仍然会引入jitter,使得采集系统性能劣化。

为此,在图三的结构中,比较器整形后的时钟信号又通过一个可编程分频器。根据需要的采样率分段设置DDS输出频率,同时为分频器设置相应的分频比从而产生最终的采样时钟。设需要的采样时钟频率为,DDS输出频率为,分频比为N,则有:

上述方案在实践中被证明是非常有效的。经过分频器输出的时钟稳定可靠,实测jitter不超过3ns,满足数据采集系统的要求。

3.3多种触发方式的实现

为了适应尽可能多的测量要求,数据采集卡应当具灵活的可编程触发方式。在本设计中,除了可以通过主机端软件控制的定时触发等方式外,还可以方便的在程序中设定通过外部触发源的电平或上升/下降沿进行触发。通过采集卡控制逻辑中的定时器可以实现以20ns的步长设置的最长达85秒的延时触发,以及每通道最多2K采样点的超前触发。各种触发方式及相应的控制和时序逻辑均使用Verilog语言设计并在FPGA中实现。

3.4数据的缓存和传输

当采集卡以最高采样率8Msps工作时,4个通道的数据打包成帧后加上帧号等其他信息,总的数据通过率约为50MBytes/s。在采集卡上用PCI-DP的16KB双口RAM对数据帧进行缓存,同时通过PCI总线将数据传送到主存中

数据先被存入Bank A,待存满后继续存入Bank B,同时向主机发出中断;主机端的中断服务程序启动DMA传输,将Bank A中的数据传输到主存中,待Bank B存满后数据又存到Bank A中,同时将Bank B中的数据传到主存;这样轮流进行,直到采集任务完成。

上述乒乓结构中,只要DMA传输的速度不慢于系统的最大数据通过率,就可以保证数据的实时传输和存储。通过优化主机端设备驱动程序的结构,实测采集卡与主存之间的平均数据传输率约为70Mbytes/s,可以满足要求。

3.5数/模混合电路的设计

由于采集卡采用PCI插卡的形式,工作在计算机内部,周围高速数字电路产生的电磁干扰和电源|稳压器中的串扰都较严重,如果设计不当会严重损害采集系统的性能。在本设计中,除了数/模混合电路中的一般性问题外,DDS输出信号上感应的高频噪声也会极大的影响整个系统的性能,因而花费了相当的精力解决这些问题。

在设计中主要应考虑模拟电路与数字电路间电源隔离、共地和电源退耦等问题,在布局布线中要仔细考虑数字/模拟电路部分的隔离、防止高速数字信号对微弱模拟信号的干扰以及内电层的分割等问题。对于比较敏感的模拟电路部分,如DDS输出滤波器、整形电路以及模拟输入信号的缓冲放大和滤波电路,则采用了金属罩进行电磁屏蔽,以进一步提高电路性能。

4 结语

本文实现的数据采集卡足以应付通常水声测量的各种需求,经多次实际测量中的应用证明,采集卡工作稳定可靠,性能达到预定指标。采集卡具备多种灵活可编程的触发方式以及DDS技术实现的可任意设定的采样率,因而具有很强的工程实用价值和广阔的应用前景。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Semtech的LoRa技术携手Chipsafer将牧场连接至云端