- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
USB接口与应用解读
6.1 包 包(Packet)是USB系统中信息传输的基本单元,所有数据都是经过打包后在总线上传输的。USB包由五部分组成,即同步字段(SYNC)、包标识符字段(PID)、数据字段、循环冗余校验字段(CRC)和包结尾字段(EOP),包的基本格式如下图: 各种封包的类型与规范 6.1 包 3、数据字段是用来携带主机与设备之间要传递的信息,其内容和长度根据包标识符、传输类型的不同而各不相同。并非所有的USB包都必须有数据字段,例如握手包、专用包和SOF令牌包就没有数据字段。在USB包中,数据字段可以包含设备地址、端点号、帧序列号以及数据等内容。在总线传输中,总是首先传输字节的最低位,最后传输字节的最高位。 4、CRC字段由不同数目的位所组成。其中重要的数据封包采用CRC16的数据域(16个位),而其余的封包类型则采用CRC5的数据域(5个位)。 5、包结尾字段即发送方在包的结尾发出包结尾信号。它表现为差分线路的两根数据线保持2比特低位时间和1比特空闲位时间。USB主机根据EOP判断数据包的结束。 6.2 封包格式 ①起始(SOF)封包 SOF封包属于令牌封包的一种,但具有独自的PID类型名:SOF。这个封包常用于等时传输,并不应用于低速设备。格式如下: ③数据(data)封包 数据封包含有4个域:SYNC、PID、DATA与CRC16。DATA数据域的位值是根据USB设备的传输速度及传输类型而定,且须以8字节为基本单位。也就是,若传输的数据不足8字节,或传输到最后所剩余的也不足8字节,仍须传输8字节的数据域。格式如下: 6.3 事务 事务处理(Transaction):在USB上数据信息的一次接收或发送的处理过程。 (1)输入(IN)事务处理 输入事务处理表示USB主机从总线上的某个USB设备接收一个数据包的过程。 ①正常的输入事务处理 ②设备忙时的输入事务处理 ③设备出错时的输入事务处理 (2)输出(OUT)事务处理 ①正常的输出事务处理 (3)设置(SETUP)事务处理 ①正常的设置事务处理 6.4 USB的数据传输 在USB的传输中,制定了4种传输类型:控制传输、中断传输、批量传输以及等时传输。 控制传输是USB传输中最重要的传输。它包含3种类型:控制读取、控制写入以及无数据控制。这3种控制传输类型又分为2~3个阶段:设置阶段、数据阶段(无数据控制没有此阶段)以及状态阶段。 阶段一:设置阶段 主机从USB设备获取配置信息,并设置设备的配置值。 设置阶段的数据交换包含了SETUP令牌封包、紧随其后的DATA0数据封包以及ACK握手封包。它的作用是执行一个设置(概念含糊)的数据交换,并定义此控制传输的内容。 阶段二:数据传输阶段 数据传输阶段用来传输主机与设备之间的数据。控制读取——将数据从设备移到主机上;控制写入——将数据从主机传到设备上。 阶段三:状态阶段 状态阶段用来表示整个传输的过程已完全结束。 状态阶段传输的方向必须与数据阶段的方向相反,即原来是IN令牌封包,这个阶段应为OUT令牌封包;反之,原来是OUT令牌封包,这个阶段应为IN令牌封包。对于控制读取而言,主机会送出OUT令牌封包,其后再跟着0长度的DATA1封包。而此时,设备也会做出相对应的动作,送ACK握手封包、NAK握手封包或STALL握手封包。相对地对于控制写入传输,主机会送出IN令牌封包,然后设备送出表示完成状态阶段的0长度的DATA1封包,主机再做出相对应的动作:送ACK握手封包、NAK握手封包或STALL握手封包。 第二节 芯片的主要性能指标 USB接口芯片大致可以分为两大类: 1.仅包含USB串行接口引擎(SIE)、FIFO内存、收发器以及电压调整器的芯片。 2.针对某种特殊目的所开发的专用USB微处理器,内部包含了通用型的CPU或MPU。 常用的USB微处理器有Cypress公司的M8系列与EZ-USB系列;Atmel公司的AT43USB321 Microchip公司的PIC16C745与PIC16C765,Scanlogic公司的SL16-USB,Motorala公司的68HC705JB2、B3、B4系列等 串行接口引擎(SIE)主要功能 封包辨识,数据交换的持续产生。 包开始、包结束、RESET、RESUME的信号检测/产生。 时钟/数据的分离。 NRZI数据译码/编码以及位填充。 CRC的产生与检查、令牌封包(CRC5校验)与数据封包(CRC16校验)。 包标示符(PID)的产生以及检查/译码。 串行-并行/并行-串行转换。 USB地址与端点译码。 端点阶层流程控制 作为USB数据缓冲器。 维持DATA Toggle位的状态。 提供之后段区域设备控制器或专用控制器或县城可编程门列阵的接口
文档评论(0)