- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA高速信号采集及处理系统设计
基于FPGA高速信号采集及处理系统设计
摘要:随着计算机技术的突飞猛进以及移动通讯技术在日常生活中的不断深入,数据采集不断地向高速、智能化的方向发展。本文针对此需求,实现了一种基于FPGA的高速数据采集系统。该系统利用AD器件对信号进行模数转换,利用FPGA设计内部模块进行ADC的逻辑控制并实现数据缓存功能。
本文首先介绍了高速数据采集技术的国内外发展现状,确定了系统总体方案,完成了FPGA与A/D的芯片选型; 利用Protel完成了硬件电路原理图的设计,并使用Quartus II完成了FPGA内部模块的设计,实现了时钟管理模块、数据采集控制模块和数据缓存模块。最后在 Cyclone开发板上完成了FPGA程序的下载测试,验证了程序的正确性。
关键词 FPGA 高速数据采集 A/D模数转换
0绪论
0.1课题背景
在国防生产和科学研究涉及的各行业中,需要对各种数据进行采集,如温度、流量、频率等。在图像处理、瞬态信号检测、实时故障监测等领域,更是要求高速度、高精度、高实时性的数据采集技术[1]。
数据采集系统的任务,就是将采集传感器输出的模拟信号进行处理并转换成计算机能识别的数字信号,由计算机进行相应的计算和处理来满足不同的需要,得出所需的数据。数据采集系统性能的好坏,是由它的精度和速度来决定的。在保证精度的前提下,应当用尽可能高的采样速度,这样才能满足实时采集、实时处理和实时控制对速度的要求[2]。
0.2现状分析
在传统的数据采集系统中,我们通常采用单片机或DSP,控制ADC、存储器以及其他一些外围电路的工作。存在时钟频率低,指令受限,软件周期长等问题限制了高速数据的采集处理,而FPGA的出现则大大弥补了以上不足,FPGA的时钟频率很高,内部时延非常小;全部的控制逻辑都可由硬件完成,速度快,效率高,非常适于大数据量的高速传输控制;而且FPGA的组成形式灵活,可以集成外围控制、译码和接口等各种电路。通过编程,用户可立刻把一个通用FPGA芯片配置成需要的硬件数字电路,其内部丰富的布线资源给修改、测试和系统升级提供了极大的方便。目前主流的FPGA内部一般都嵌有可配置的高速RAM,PLL,LVDS,LVTTL以及硬件乘法累加器等功能模块,可以很好的解决并行和速度问题。
1系统实现方案
系统总体思想为:首先对模拟信号进行信号调理,将电信号调整到ADC的输入范围内,然后对信号进行A/D转换。FPGA将采样得到的数据送到缓存,存放至缓存中的数据通过数据接口送至MCU。系统的所有时钟由FPGA统一产生,系统的采样、转换与缓存也由FPGA统一协调控制。系统主要包括三个部分:时钟管理模块、数据采集控制模块和数据缓冲模块。其中时钟管理模块由分频程序实现,为系统各个模块提供正常工作所需的时钟;数据采集控制模块通过控制A/D转换器的时序控制AD的工作;数据缓冲模块通过FPGA内部的FIFO来完成。
系统工作过程为:模拟信号先经过模数转换器将模拟信号转化为数字信号后送入FPGA,FPGA再将数据写入FIFO存储芯片,FPGA对FIFO 发出读命令后,FPGA可以将数据从FIFO中读取之后送到读数接口,后续的MCU即可获取所采集的数据。
考虑到充分利用FPGA内部的丰富资源,本设计选用由FPGA内置IP核产生的FIFO来实现数据缓存,同时也不用再选取单独的数据缓存芯片,提高了资源利用率,简化了硬件结构。
2硬件电路设计
2.1硬件整体方案设计
硬件设计主要包括电源电路、下载配置电路、外部时钟电路、接口电路及AD9288与AD7278的外围电路。
2.2具体电路设计
2.2.1电源电路
本系统外部电源采用5V输出开关电源。系统中,FPGA 的IO 的电源电压是3.3V,内核的电压是1.5V,AD9288及AD7278的供电电压均可设为3.3V。利用SMV1117电源芯片分别将5V 转到3.3V,将3.3V 转到1.5V,再利用电容与电感电路由1.5V产生FPGA内部PLL所需电压,加上一些旁路电容,即可满足电压需求。
2.2.2下载配置电路
FPGA 通过JTAG 下载代码到片子里运行,代码存放在RAM 里,断电后代码即消失。因此,FPGA需要非易失性存储器用来存放代码,每次上电后把代码从配置芯片读至FPGA然后运行。
2.2.3外部时钟电路
FPGA内部模块工作时需要一个时钟基准,因此需要一个外部晶振,频率为100MHz。
2.2.4接口电路
为了将FPGA内部缓存的数据读出,并能够读出FPGA内部FIFO的空满状态,需要设计接口电路将这些信号输出,同时为了给AD9288和AD7278 接入模拟输入信号,需
原创力文档


文档评论(0)