Sample采样 adaptation 适应 analog模拟 endpoint短点 token记号 star星 topology 拓扑 integrate 综合 provide提供 divided 分裂 Characterization 特性描述 interact相互影响 reply 回答 field 域
Usb物理设计者读5-11章;usb控制器设计者读5、8、10、11章;usb设备驱动者读5、9、10章
每个USB总线上最多接127个设备,每个USB Host控制都会自带一个USB hub,称为Root Hub
USB Host控制器
负责处理主机和设备之间的电气和协议层的互联。常见的规格
①OHCI:主要是非PC系统上的USB控制器芯片
②UHCI:PC系统的USB控制器芯片,USB1.1规格
③EHCI:兼容OHCI、UHCI, USB2.0规格
USB设备就是插在USB总线上工作的设备广义上,可以把USB Hub也当成是USB 设备,在USB设备的逻辑组织中包含设备、配置、接口和端点4个层次。
USB设备的逻辑结构
端点是USB通信的最基本形式,它是唯一可寻址的部分,每一个USB设备接口在主机看来就是一个端点的集合
端点是位于USB设备或主机上的一个缓冲区,用来存放和发送USB的各种数据USB设备的逻辑结构 ,每个设备必须有端点0,它用于设备枚举和对设备进行一些基本的控制功能。
除了端点0,其余的端点在设备配置之前不能与主机通信,只有向主机报告这些端点的特性并被确认后才可以被激活
端点支持的最大包大小叫做数据有效负载基于PnP机制,设备被枚举时,它必须向主机报告各个端点的特性,包括端点号,通信方向,数据有效负载,带宽要求等USB设备的逻辑结构每个USB设备有一个唯一的地址,这个地址是在设备连上主机时,由主机分配的设备中的每个端点在设备内部有唯一的端点号,这个端点号是在设计设备时给定的,每个端点都是一个简单的连接点,或者支持数据流进设备,或者支持其流出设备
USB描述符,当USB设备插入USB主机时,USB主机就可以获取USB设备的类型,生产厂商等。标准的USB设备有5中USB描述符
①设备描述符 一个USB设备只有一个设备描述符
②配置描述符 一个设备描述符可以包含多个配置描述符
③接口描述符 一个配置描述符可以包含多个接口描述符
④端点描述符 一个接口描述符可以包含多个端点描述符
⑤字符串描述符
USB传输
①控制传输---主要用于传输设备控制命令、设备状态查询、确认命令。当USB设备收到这些数据和命令后,将按照FIFO的原则处理到达的数据。比如USB host 给设备发送一个Reset的命令每一设备都有控制传输,用来初始化设备
②中断传输---传输的数据量很小主要用于键盘、鼠标,游戏手柄等外部设备上。一个固定的速率传输数据。以固定的时间间隔。USB中断传输中的中断与传统中断有区别设备不能主动的发起任何一次传输,所有的传输都是由USB Host发起的。USB Host主机每隔一段时间检查USB设备。
③等时传输
④批量传输
Transfer
USB的数据传递首先是基于传输(Transfer)的:控制传输,中断传输,控制传输,等时传输,批量传输
Transaction
一次传输由一个或多个事务组成(Transaction)事务可以分为In,Out,Setup三种事务
Packet
一个事务由一个或多个包组成(Packet)构成。
①令牌包(Setup)
②数据包(data)
③握手包(Ack)
④特殊包
域
一个包由多个域构成,域可分为同步域(SYNC),标识域(PID),地址域(ADDR),端点域(ENDP),帧号域(FRAM),数据域(DATA),校验域(CRC)
USB设备枚举
(1)设备连接。USB设备经USB总线连接主机。
(2)设备上电。USB设备可以自供电,也可以使用USB总线供电。
(3)主机检测到设备,发出复位。主机通过检测设备在总线的上拉电阻检测到有新的设备连接,并获释设备是全速设备还是低速设备,然后向该端口发送一个复位信号。
(4)设备默认状态。设备从总线上接收到一个复位信号后,才可以对总线的处理操作做出响应。设备接收到复位信号后,就暂时使用默认地址(00H)来响应主机的命令。
(5)地址分配。当主机接收到有设备对默认地址(00H)响应的时候,就分配给设备一个空闲的地址,以后设备就只对该地址进行响应。
(6)读取USB设备描述符。主机读取USB设备描述符,确认USB设备的属性。
(7)设备配置。主机依照读取的USB设备描述符来进行配置,如果设备所需的USB资源得以满足,就发送配置命令给USB设备,表示配置完毕。
(s)挂起。如果使用总线供电,为了节省电源,当总线保持空闲状态超过3ms以后,设备驱动程序就会进入挂起状态,在挂起状态时,USB设备保留了包括其地址和配置信息在内的所有内部状态,设备的消耗电流不超过500uA。