USB基础简介

一、USB2.0

Universal Serial Bus (通用串行总线) 
符合USB总线数据通信要求的通信协议

1、意义

1.易用(热插拔、即插即用)

2.易扩充(USBHub可同时操作127个设备、兼容USB1.1)

3.高速(相对)

2、分类(按传输速率)

1.USB2.0 LowSpeed(1.5Mbps,适用于交互设备)

2.USB2.0 FullSpeed(12Mbps,适用于电话、音频)

3.USB2.0 HighSpeed(480Mbps,适用于海量存储、视频)

备注:USB2.0 是取代 USB1.1 的,而 USB3.0 USB2.0 的补充协议

二、USB2.0总线布局
1、主机——设备
      1)、主机在一个USB系统中是唯一存在的
      2)、不支持主机——主机或设备——设备的连接
      3)、插头和插座(A型、B型、mini、micro )
      4)、电源线(红)、地线(黑)、D+(绿)、D-(白)
      5)、USBon-the-go技术(多一根ID选择线,接地为主,悬空为从)
2、有层次性的星型结构
      1)、网络集线器(Hub)
      2)、根集线器(Root Hub)


三、USB2.0总线逻辑拓扑结构



四、USB系统逻辑结构



五、USB2.0通信方式
1、差分信号与NRZI编码
       1)、SE0状态:D+与D-上均为低电平(signal-ended)
       2)、J状态(信号序列皆以J开始):D-高电平,D+低电平(LS)D+高电平,D-低电平(FS)
       3)、K状态:与J状态相反的电平
       4)、状态维持时间:位周期,即位传输速率对应的时间。2.8ns/83.3ns/667ns(这就是USB物理传输速率的本质含义)
       5)、NRZI编码:NonReturn Zero-Invert(非回零,反向编码)
       6)、位插入编码:每碰到六个连续1,则插入一个0
       7)、NRZI编码的意义在于尽量消除缆线上的误差和延时



2、高速设备的识别
      1)、低速和全速设备的高电平为大于2.8V,低电平为小于0.3V
      2)、高速设备的高电平为0.4V,低电平为0
                a.高速设备首先作为全速设备上电

                b.如果Hub支持2.0规范,则将上电设备的状态置为SE0

                c.如果设备是高速设备则会往D-线反向灌17.78mA的电流,在D-上形成一个800mV的电平(设备此时整体阻抗约45欧姆),称为Chirp K信号

                d.Hub如果支持高速设备,则通过交替向D+和D-线灌17.78mA电流的方式,形成3对维持60us左右的ChirpJ与Chirp K信号对,表明自己支持高速设备

                e.此时设备与Hub交换速率信息过程完毕。如果满足设备与Hub都是高速的条件,设备将在500us之内通过调节自身阻抗使系统整体阻抗降低到22.5欧姆

                f.设备恢复到J状态,此时由于整体阻抗的变化,D+信号线上的电平已经变成了400mV,系统进入高速通信状态





六 、USB2.0传输协议

1、端点(ENDP)
      1)、端点是可惟一识别的USB设备的一部分,一系列独立的端点构成了USB逻辑设备
      2)、每个逻辑设备有一个被主机分配的惟一地址;每个端点在设备内部有一个设备给定的端点号(端点方向+ 端点号)
      3)、每个端点都只能支持数据流入或流出(注意不是每个端点号)
      4)、每个端点在被设置前处于未知状态,不可被主机访问(端点0除外)
      5)、端点0为缺省控制端点,设备加电复位后即可访问
      6)、一个设备最多可以有16个端点(包括端点0)

2、包(Packet)
      1)、包是USB在传输过程中的最小逻辑单位
      2)、所有的包都以同步字段封包和包末尾(SYNC / EOP)开始和结束
      3)、所有的包都包含包标识符(PID)
      4)、PID用于表示包类型
      5)、包本身没有方向概念
3、同步字段
      1)、全速/低速设备的SYNC是3对KJ,然后两个K(00000001)
      2)、高速设备的SYNC是15对KJ,然后两个K
      3)、EOP为两个SE0,然后回到J
      4)、总线解析包格式的时候不会等待EOP,而是必须在包的格式要求的最后一个字段后紧接EOP,否则该包即使格式满足要求也会被放弃

注:此后提到“包”这个概念的时候,将不再包括SYNC和EOP

类型

子类型

PID值

描述

Token

OUT

0001

Out事务开始

IN

1001

In事务开始

SOF

0101

帧事务开始

SETUP

1101

建立事务开始

Data

DATA0

0011

偶同步位数据包

DATA1

1011

奇同步位数据包(两者总是交错的)

DATA2*

0111

用于高速设备微帧同步传输的数据包,MDATA为切分后的数据包

MDATA*

1111

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值