基于FPGA的高速数据采集系统设计文献综述

 2022-09-21 10:09

文献综述(或调研报告):

1.国内研究现状

随着计算机技术、信息技术等的高速发展,各种各样的数据的实时采集与处理已经在科学研究和工业生产中成为必不可少的一部分。而随着采集信号种类、速度、精度要求的不断变化,我们对数据采集系统的要求也越来越高。

传统的数据采集系统往往用单片机作为控制器,整个系统中一般还会配合模数转换器ADC、存储器、接口电路和其他一些电路一起工作。这样的系统特点是实用性很强而且成本不高,但是单片机由于其自身的指令周期以及处理速度的限制,时钟频率低,各种功能要靠软件来实现,会拖慢采样的速度,无法满足高速数据采集系统的要求,采集频率无法达到200MSPS。[8][10]

现场可编程门阵列(FPGA)内部有丰富的可编程逻辑单元、大量硬件乘法器、足够的I/O引脚并且可将系统输入时钟提升到百兆赫兹级。这意味着FPGA可以有效地替代单片机的功能,满足高速采集的要求。由FPGA控制A/D进行数据采集,将采集到的数据预缓存在FIFO中进行实时处理。这样可以简化硬件电路,提升系统灵活性,并且有比单片机更高的采集频率和处理速度,满足采集速度的要求。[1][3][6]如果遇到采集的信号强度不够的情况,还可以在电路中添加可编程增益放大器,这样可以充分利用A/D转换器的满量程分辨率。[4]

除了单独使用单片机 A/D或者FPGA A/D的方案以外,我们还可以更进一步,使用单片机 FPGA A/D的方案,其中单片机也可替换为DSP或ARM,使用这样的一个设计可以满足数据采集中对高速和实时性的要求。一种方案是由FPGA负责多通道数据的同步采集与缓存,STM32(DSP)负责数据处理、存储以及与上位机通讯,相当于把FPGA直接挂载到STM32(DSP)上,将它作为STM32(DSP)的外部SRAM。[2][5]而另一种则是由FPGA负责采集数据并进行数据处理,由STM32负责数据的存储和读取。[7]单片机 FPGA A/D的方案的优点在于,它既可以满足高速数据采集的要求,还可以充分利用单片机的外设实现各种各样的功能,例如通过网卡驱动等实现高速数据的远程传输。[7]在有一篇论文中,我读到了关于乒乓式存取的内容[5],大意是使用两块SRAM轮流存储和读取数据,FPGA控制A/D和SRAM进行数据采集,当FPGA读取SRAM1中的数据后向DSP发出中断并将控制权交给DSP,DSP处理数据;与此同时FPGA仍能读取SRAM2中的数据,交替进行上述步骤。论文中认为这样的设计方法可以提高数据采集率,但实际实现的数据采集率只有6MSPS,不知道是不是因为由DSP处理数据而不是FPGA处理数据造成的,有待继续研究。

在高速数据采集系统的设计中我们可能会遇到一些平时不会遇到,但在高速采集过程中会出现的问题,如亚稳态问题和时序约束问题。亚稳态问题发生原因可能有两点:①在跨时钟域信号传输时,由于源寄存器时钟和目的寄存器时钟相移未知,所以源寄存器数据发出数据,数据可能在任何时间到达异步时钟域的目的寄存器,所以无法保证满足目的寄存器Tsu和Th的要求;②在异步信号采集中,由于异步信号可以在任意时间点到达目的寄存器,所以也无法保证满足目的寄存器Tsu和Th的要求。

要解决亚稳态问题一般有三种办法:①对异步信号进行同步处理②采用FIFO对跨时钟信号进行缓冲设计③对复位信号采用异步复位、同步处理的方法。这三种处理方法从本质上看都是进行同步,也就是要使用同步器。而同步器的一般设计方法就是把将两个触发器级联,第一个触发器看做预处理器,对数据进行缓冲,使得数据在进入第二个触发器之前稳定下来。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。