◆ 欢迎您预览尼佳特网站,希望能为您解决问题!如在网站没有找到的产品麻烦发邮件沟通nigat168@nigat.com  

> 自动访问> 加入收藏 > English

产品搜索

产品分类
 智能制造
  智能制造线缆组件
  无人机系列
  数据传输
  防爆防水
 航天轨道
  航空 运输线束
  航空连接器
 工业装备系列
  LFH
  DB HDD SDR
  通信网络
  圆形
  医疗系列
  工业用组合线缆
 新能源
  新能源线束
  储能接口
  换电接口
 医疗设备
  医疗接口
 消费电子类系列产品
  USB
  Micro Mini USB
  DIN
  MINI DIN
  D-SUB
   IEEE 1394
  SATA
  HDMI
  DVI
  Displayport
  Mobile 手机数码
   AUDIO JACK
  GAME 游戏机玩具插头
  CARD
  ADAPTER
  RCA
  Modular 网络
  CABLE ASS'Y 组合线缆
  其它系列
 外壳系列
  铝合金外壳
  五金外壳
  塑胶外壳
 车件 CNC 产品
  车件
  CNC产品
 其它系列
您的位置:首 页 >> 技术资讯>> 正文

USB2.0控制器CY7C68013特点与应用


www.nigat.com 2006年11月12日

     

USB2.0控制器CY7C68013特点与应用 
 
作者:长沙国防…    文章来源:单片机与嵌入式系统应用    

  摘要:介绍USB2.0协议以及Cypress公司推出的USB2.0控制器CY7C68013。USB2.0协议提供480Mb/s的传输速度,向下完全兼容流行的USB1.1协议。CY7C68013是USB2.0的完整解决方案。该芯片包括带8.5KB片上RAM的高速8051单片机、4KB FIFO存储器以及通用可编程接口(GPIF)、串行接口引擎(SIE)和USB2.0收发器,无需外加芯片即可完成高速USB传输,性价比较高。 
    关键词:USB2.0 高速模式 端点

本刊2002年到2、3期已对EZ-USB单片机的介绍。本文在此只重点介绍USB2.0的特殊之处以及芯片CY7C68013的主要特点。*

1 USB2.0的主要特点

USB协议的2.0版本于2000年4月推出。支持以下3种速度模式:

低速模式(low speed) 1.5Mb/s;

全速模式(full speed) 12Mb/s

高速模式(high speed) 480Mb/s

USB2.0协议支持现存的所有USB设备,既可以把USB1.1设备插入USB1.1的PC机接口,并且在电气上兼容USB1.1的连接线。

    1.1 数据包

USB传输的数据包的类型用称之为Packet Ids(PIDs)的特定代码来定义。USB包中共有4种PID类型,如表1所列。

表1 USB2.0的数据包类型

PID类型 PID名称
令牌 IN,OUT,SOF,SETUP
数据 DATA0,DATA1,DATA2,MDATA
握手 ACK,NAK,STALL,NYET
特殊类型 PRE,ERR,SPLIT,PIN

注:黑体字表示USB2.0增加的PID类型。

在全速模式时,每个OUT传输发送OUT数据包,不考虑外设是否处于“忙”状态而不能接收数据。针对这种浪费带宽的情况,在高速模式时推荐使用新的PID类型“PING”。主机先对OUT端点发出个较短的“PING”令牌,访问当前外设是否有数据文凭间来存放OUT的数据包。仅仅当外部设备回答“ACK”时,主机才发送较长OUT数据包。

SETUP邻牌只用于控制传输。它数据包中的前8个字节。通过这8个字节,外设对主机的设备请求进行译码。

SOF令牌代表一个USB帧的开始。

ACK(Acknowlegde)表示成功,数据接收无误。

NAK(Negavite Acknowlegde)表示忙,得发。这并不是出错,USB外设没有应答表示出错。

STALL表示未知错误,外设未能理解主机发出的设备请求,可能是外设端出错,或是主机访问并存在的资源。USB协议提供了从stall状态恢复的方法。

    NYET(Not Yet)类似于ACK,表示数据接收无误,并且指出外设还没准备好接收下一个OUT数据包。NYET PID只用于在高速模式。

其它PID详见参考文献[1]。

1.2 帧结构

USB主机每毫秒向所有的USB设备发送1上SOF包(Start of Frame),以此来提供时间基准。SOF包括1个自增的11位帧序号。FX2随时可以从寄存器中读出这个范围在[0~2047]的帧序号。

地高速模式下(480Mb/s),每个1ms长的帧被分成了8个125μs长的微帧。每个微帧也都由一个SOF包开始。帧序号还是每个毫秒自增1次,所以这8个微帧都含有相同的帧序号。为了区别每个微帧FX2提供1个只读的微帧计数器,并且FX2能在收到SOF包时产生1个中断请求,即在全速模式下1ms/次,高速模式下125μs/次。

1.3 传输类型

为了适用480 Mb/s的高速数据传输,USB.0协议扩大了各种传输类型数据包长度,与USB1.1的对照如表2所列。

表2 USB2.0与USB1.1数据包长度的对照

传输类型 数据包度/B
USB1.1 USB2.0
控制传输 8,16,32,64 64
块传输 8,16,32,64 512
中断传输 1~64 1024
同步传输 1023 1024

1.4 高速模式和全速模式的检测

USB2.0规范要求高速设备必须能在全速模式下枚举。每个高速设备都在全速模式下开始枚举过程。当与主机达成“Chirp”协议后设备再切换到高速工作模式下。详细内容见参考文献[1]第7章。FX2能自动检测高速主机,并切换到高速模式下。

1.5 传输性能分析

以USB硬盘为例分析USB2.0的高速传输性能。图1为USB2.0与硬盘接口的带宽分析。

每分转速7200带有2MB缓存的ATA100硬盘,接口数据传输速率可达100MB/s,可持续的有效传输速率只有39MB/s。

USB2.0在每个上微帧中最大可传输13个块传输包,而每个微帧长固定为125μs,所以其最大传输速率为:512×13×8×1000=53MB/s。

2 EX-USB FX2的主要特点

2.1 芯片结构

EZ-USB FX2芯片包括1个8051处理器、1个串行接口引擎(SIE)、1个USB收发器、8.5KB片上RAM、4KB FIFO存储器以及1个通用可编程接口(GPIF),如图2所示。FX2是一个全面集成的解决方案,它占用更少的电路板空间,并缩短开发时间。

EZ-USB FX2拥有1个独特的架构,其中包括1个智能串行接口引擎(SIE)。它执行所有基本的USB功能,将嵌入式MCU解放出来以用于实现专用的功能,并保证其持续的高性能的传输速率。FX2还包括2个通用可编程接口(GPIF),允许它“无胶粘接”,即可与任何ASIC或DSP进行连接,并且它还支持所有通用总线标准,包括ATA、UTOPIA、EPP和PCMCIA。EZ-USB FX2完全适用于USB2.0,并向下兼容USB1.1。

FX2有3种封装形式:56脚 SOPP、100脚的TQFF(薄形四方扁平封装)、128脚的TQFP。引脚数的区别在于输入、输出引脚数的不同,以针对不同的应用要求。

2.2 结构特点

当大部分USB1.1器件都需要微控制器参与数据从端点FIFOs到应用环境转移,如图3所示。显然,微控制器本身的工作频率在相当程度上限制了带宽的进一步提高。虽然在12Mb/s的全速模式下,这种限制并不明显,但当速度提升至480 Mb/s时,在成本严格控制下微控制器就必然成为整个系统的带宽并颈。

EZ-USB FX2提供了一种独持架构,使USB接口和应用环境直接共享FIFO,而微控制器可不参与数据传输但允许以FIFO或RAM的方式访问这些共享FIFO,如图4所示。这种被称之为“量子FIFO”(Quantum FIFO)的处理架构,较好地解决了USB高速模式的带宽问题。

具体来说,如图5所示,USB执行OUT传输,将EP2端点设成512字节重FIFO(如2.3小节所述)。在USB端和外部接口端都并不知道有四重FIFO。看来,USB端只要有1个FIFO为“半满”,就可以继续发送数据。当胶操作的FIFO写“满”时,FX2自动将其转换到外部接口端,排除等候读取;并将USB接口队列中下一个为“空”的FIFO转移到USB接口上,供其继续写数据。外部接口端与此类似,只要1有个FIFO为“半满”,就可以继续读取数据。当前操作的FIFO读“空”时,FX2自动将其转换到USB接口端,排除等候写入;并将外部接口队列中下一个为“满”的FIFO转移到外部接口上,供其继续读取数据。

2.3 端点缓存

USB协议定义了端点作为数据的接收器和发送器。主机发送4个bit的地址和1个bit的方向来选择端点,因此USB最多可有32个端点定义:IN0~IN15和OUT0~OUT15。

FX2定义了7个端点,在高速模式下的端点缓存结构如图6所示。EP0IN&OUT、EP1IN、EP1OUT是64byte的端点缓存。EP0是默认的控制传输端点,既是IN端点也是OUT端点。EP1IN、EP1OUT支持块、中断和同步传输。EP0、EP1IN和EP1OUT只能由FX2的固件访问;而EP2、4、6和8无需固件干涉即可同片外互传高速数据。

FX2端点配置方式非常灵活。EP2、4、6和8是大容量高带宽的数据传输端点,可设为IN或OUT端点的一种,能配置成多种形式以适应带宽需要。在图6中,每一列代表1种配置方式。带阴影的方框可包括2、3、4个512或1024字节的缓存,分别表示端点可配置成双重、三重和四重缓存。双缓存是指USB可以读或写1个数据包,而另一个数据包(同一个端点内另一个缓冲存储器中的)可供外部接口操作;三重缓存加了第3个数据包存储器可供USB和外部接口需要的一方使用;四重缓存增加了第4个数据包存储器。多缓存的结构以在读写双方速度相似时有效地改善带宽,平滑带宽抖动,减少双方的互相等待时间。

3 EZ-USB FX2的接口方式

FX有2种接口方式:Slave FIFOs和可编程接口GPIF。

Slave FIFOs方式是从机方式,外部控制器可像普通FIFO一样对FX2的多层缓冲FIFO进行读写。FX2的Slave FIFOs工作方式可设为同步或异步;工作时钟可选为内部产生或外部输入;其它控制信号也可灵活地设置为高有效或低有效。

可编程接口GPIF是主机方式,可以软件编程读写控制波形,几乎可以对任何8/16 bit接口的控制器、存储器和总线进行数据的主动读写,非常灵活。

4 EZ-USB FX2的开发工具

如同EZ-USB系列的其它控制器一样,Cypress公司对FX2也提供了较为完备的开发套件CY3681。它包括带128脚CY7C68013的硬件开发板和相应的控制面板(Control panel)、GPIF代码自动生成软件(GPIFTool)以及固件方面丰富的例子和大量的帮助文档。可以尽量节省学习时间,加快开发速度。

Copyright©2008- NIGAT Electronics Shenzhen Co.,Ltd.  All right reserved 粤ICP备05066687号
尼佳特电子(深圳)有限公司  工厂地址:深圳市宝安区沙井街道 沙四高新科技园E栋(518110) 访问统计: 
业务电话:0755-2997 3249  图文传真:0755-2997 3252  移动电话:0 13428687862   在线咨询:  
在线网站:www.nigat.com   电子邮箱:nigat168@nigat.com   技术支持:中采网 IC160.com