- 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和USB2.0的数据采集系统.doc
基于FPGA和USB2.0的数据采集系统
【摘要】本课题设计了一套基于FPGA和USB2.0的便携高速数据采集系统,以FPGA最小片上系统为控制核心,对A/D转换芯片TLC5510和USB2.0接口芯片CY7C68013的控制,来实现对信号的高速采集和传输。
【关键词】数据采集;FPGA;USB2.0;A/D转换
一、引言
近年来,对于数据采集系统的要求与日俱增,现代数据采集系统已经从传统的试验测量中的数据采集与处理跨入到工业与过程控制。它已成为现代工业自动化的不可缺少的一个组成部分。
本课题是对EDA技术的应用,即利用EDA工具实现基于FPGA的数据采集。本文按照EDA开发流程,采用Verilog语言对FPGA进行编程来实现数据采集和传输的功能。用Verilog语言编写代码,进行时序仿真,各模块都在逻辑综合工具QuartusⅡ下进行综合,并编程下载到FPGA芯片Cyclone IV系列EP4CE30F23C6芯片,经A/D转换器将模拟数据转换成数字数据,再通过USB2.0接口电路送入PC机输出。
二、系统总体设计
该系统主要由FPGA控制模块、A/D转换、USB接口部分组成,如图1所示。
A/D转换器将所要采集的模拟信号转换成数字信号,由FPGA接收、缓冲、存储,经USB2.0端口传回至主机工作站。高速A/D转换器采用转换速率为20MHz的TLC5510。
FPGA利用内部的SRAM提供数据输入/输出的双缓冲功能。采用双缓冲的原因同USB中的大端点所配置的双缓冲类似,均是防止数据的溢出和保证数据传输的连续性。本文选用Altera公司的Cyclone系列芯片EP4CE30F23C6。
CY7C68013是Cypress公司推出的EZ-USB FX2系列智能USB接口芯片。其作用是把A/D转换器采集的数据以高速的数据序列形式发送到主机。其中,USB2.0端口提供一个能和计算机连接的数据传输接口。
系统工作过程为:A/D转换器在FPGA的ADC接口控制电路控制下,把模拟信号转换成数字信号,并将指定通道的采样数据存入FPGA内部FIFO缓存。同时,FPGA的USB接口控制逻辑查询CY7C68013是否空闲,如果空闲,那么由FPGA的USB接口控制逻辑将指定通道的采样结果,从FPGA内部FIFO缓存送入CY7C68013的内部FIFO。当内部的FIFO容量达到一定程度后,CY7C68013自动将数据打包传送到PC机。由于固件程序把CY7C68013设置为特定的自动模式,因此CY7C68013把数据送往PC机期间的所有操作无需CY7C68013中CPU的干预,从而保证足够的数据传输速率。采样过程中FPGA的USB接口控制逻辑依次取走批量数据,在USB接口打包传送时A/D转换持续进行,FPGA内部FIFO也被持续写入转换结果。
图1 系统总体框图
三、硬件设计
本系统的硬件主要分为两个部分:A/D转换芯片TLC5510和FPGA构成的数据采集模块,另一部分由FPGA和USB控制芯片CY7C68013构成的数据传输模块。
(1)数据采集模块
经过处理后的信号进入模数转换电路,选用的高速A/D芯片是TI公司的TLC5510。它是一种采用CMOS工艺制造的8位高阻抗并行A/D芯片,能提供的最小采样率为20MSPS。由于TLC5510采用了半闪速结构及CMOS工艺,因而大大减少了器件中比较器的数量,而且在高速转换的同时能够保持较低的功耗。TLC5510与FPGA的接口电路如图2所示。
FPGA提供TLC5510 20MHz的工作时钟和使能输出信号OE,低电平有效。模拟信号经过TLC5510转换成数字信号后,将采样数据传给FPGA的FIFO保存。
图2 FPGA与TLC5510的接口电路图
(2)数据传输模块
在数据传输模块中,采用的是Cypress公司的EZ-USB FX2芯片CY7C68013。这是一款性能较高的USB2.0微控制器。在单芯片上集成了USB2.0收发器、SIE(串行接口引擎)、增强的8051微控制器和可编程的外围接口。
为了保证较高的传输速度,使用不经过CPU的SLAVE FIFO(从FIFO)控制工作模式。在该方式下FX2的CPU不直接参与USB数据处理,而是简单地把FX2作为USB和外部数据处理逻辑之间的通道,数据流并不经过CPU,而是通过FX2的FIFO直接传输。FIFO由外部控制器控制,外部控制器可像普通FIFO一样对FX2的多层缓冲FIFO进行读写;与此同时,FIFO提供外部控制器所需的时序信号、握手和输出使能等信号。
在本设计中,采用Slave FIFO从机方式实现FPGA对FX
文档评论(0)