USB2.0协议中文详解
USB2.0技术规范(中文)
3.1.1 总线布局技术
USB 连接了 USB 设备和 USB 主机 USB 的物理连接是有层次性的星型结构 每个网络 集线器是在星型的中心 每条线段是点点连接 从主机到集线器或其功能部件 或从集线 器到集线器或其功能部件 从图 3-1 中可看出 USB 的拓扑结构 3.1.1.1 USB 的主机
3.5 健壮性 USB 健壮性的特征在于 使用差分的驱动接收和防护 以保证信号完整性 在数据和控制信息上加了循环冗余码(CRC) 对装卸的检测和系统级资源的设置 对丢失或损坏的数据包暂停传输 利用协议自我恢复 对流数据进行控制 以保证同步信号和硬件缓冲管理的安全 数据和控制通道的建立 使功能部件的相互不利的影响独立开 消除了负作用
3.3.2 电源管理 USB 主机与 USB 系统有相互独立的电源管理系统 USB 的系统软件可以与主机的能源
管理系统结合共同处理各种电源子件如挂起 唤醒 并且有特色的是 USB 设备应用特有 的电源管理特性 可让系统软件和控制其电源管理
USB 的电源分配和电源管理特性使之可以被设计在电源传感系统中 如采用电池的笔 记本电脑
1.4 本书结构 第一章至第四章为读者提供了一个纲要 第五章至第十章则提供了 USB 的所有的具体
技术细节 外设厂家应着眼于第四章至第十章 USB 的主机控制器应用主要参考第四章至第七章和第九 十章 USB 设备驱动厂家主要参考第四 七 九章 Universal Serial Bus Device Class Specification 一书可以作为本书的补充
中速和低速的情况 总的来说 中速的传输是同步的 低速的数据来自交互的设备 USB 设计的初衷是针对桌面电脑而不是应用于可移动的环境下的 软件体系通过对各种主机控 制器提供支持以保证将来对 USB 的扩充
USB2.0技术规范(中文)
1.1 起因 Intel 公司开发的通用串行总线架构(USB)的目的主要基于以下三方面考虑
(一)计算机与电话之间的连接 显然用计算机来进行计算机通信将是下一代计算机基 本的应用 机器和人们的数据交互流动需要一个广泛而又便宜的连通网络 然而 由于目 前产业间的相互独立发展,尚未建立统一标准,而 USB 则可以广泛的连接计算机和电话
1.3 适用对象 该规范主要面向外设开发商和系统生产商 并且提供了许多有价值的信息给操作系
统/BIOS/设备驱动平台 IHVS/ISVS 适配器 以及各种计算机生产厂家使用 该 USB 版本的规范可以用来设计开发新产品 改进一些经典的模型 并开发相应的
软件 所有的产品都应遵循这个规范——USB 1.1
支持多功能的设备
利用低层协议 提高了总线利用率
同步传输带宽
确定的带宽和低延迟适合电话系统和音频的应用
同步工作可以利用整个总线带宽 灵活性
直接一系列大小的数据包 允许对设备缓冲器大小的选择 通过指定数据缓冲区大小和执行时间 支持各种数据传输率 通过协议对数据流进行缓冲处理 健壮性 出错处理/差错恢复机制在协议中使用 对用户感觉而言 热插拔是完全实时的 可以对有缺陷设备进行认定 与 PC 产业的一致性 协议的易实现性和完整性 与 PC 机的即插即用的体系结构的一致 对现存操作系统接口的良好衔接 价廉物美 以低廉的价格提供 1.5 兆比特率的子通道设施 将外设和主机硬件进行了最优化的集成 促进了低价格的外设的发展 廉价的电缆和连接头 运用了商业技术 升级路径 体系结构的可升级性支持了在一个系统中可以有多个 USB 主机控制器
终端用户的易用性
为接缆和连接头提供了单一模型
电气特性与用户无关
自我检测外设 自动地进行设备驱动 设置
USB2.0技术规范(中文)
技术细节 外设厂家应着眼于第四章至第十章 USB 的主机控制器应用主要参考第四章至第七章和第九 十章 USB 设备驱动厂家主要参考第四 七 九章 Universal Serial Bus Device Class Specification 一书可以作为本书的补充
3.3.2 电源管理 USB 主机与 USB 系统有相互独立的电源管理系统 USB 的系统软件可以与主机的能源
管理系统结合共同处理各种电源子件如挂起 唤醒 并且有特色的是 USB 设备应用特有 的电源管理特性 可让系统软件和控制其电源管理
USB 的电源分配和电源管理特性使之可以被设计在电源传感系统中 如采用电池的笔 记本电脑
1.3 适用对象 该规范主要面向外设开发商和系统生产商 并且提供了许多有价值的信息给操作系
统/BIOS/设备驱动平台 IHVS/ISVS 适配器 以及各种计算机生产厂家使用 该 USB 版本的规范可以用来设计开发新产品 改进一些经典的模型 并开发相应的
软件 所有的产品都应遵循这个规范——USB 1.1
键盘 鼠标 游戏棒 ISBN PBX POTS
低价格 热插拔 易用性
低价格 易用性 动态插 拔 限定带宽和延迟
高速
音频 磁盘
高带宽 限定延迟 易用性
音频 磁盘
25-500Mb/s
表 2-1
2.3 特色
USB 的规范能针对不同的性能价格比要求提供不同的选择 以满足不同的系统和部件
及相应不同的功能 其主要特色可归结为以下几点
4总线协议总线协议usb总线属一种轮讯方式的总线主机控制端口初始化所有的数据传输每一总线执行动作最多传送三个数据包时主机控制器发送一个描述传输运作的种类包这个数据包通常称为标志包tokenpacket取出属于自己的数据数据传输方向不是从主机到设备就是从设备到主机时由标志包来标志数据的传输方向数据传送接收端也要相应发送一个握手的数据包表明是否传送成功间的usb数据传输在主机和设备的端口之间流和消息流的数据不像消息的数据传送服务类型端口特性如方向和缓冲区大小即存在usb中有一个特殊的通道缺省控制通道存在从而为设备的设置查询状况和输入控制信息提供一个入口事务预处理允许对一些数据流的通道进行控制估或低估通过发送不确认握手信号从而阻塞了数据的传输速度两种模式可在用同一usb总线传输的情况下自动地动所以该模式只支持有限个低带时钟信号被转换成nrzi每一数据包中附有同步信号以使得收方可还原出向设备提供电源通过选择合适的导线长度以匹配指定的irdrop和为了保证足够的输入电压和终端阻抗在每个端口都可检测终端是否连接或分离vbus使用5v电源usb对重并区分出高所有设备都有一个上行的连接这样就避免了集线器间的非法的循环往复的连接一对符合标准的电源线并有易拆装的特性上行连接电连接器有四个方usb的系统软件和设备如何与主机协调工作主机对那种直接相连的usb设备提供电那些完全依靠电缆提供能源的设备自供电受一定布局限制的带有键盘输入笔和鼠标均为设备而且集线器总线供总线供能usb的系统软件可以与主机的能源并且有特色的是唤醒usb设备应用特有如采用电池的笔按照传输前制定好的原则方向usb设备地址和终端号的usb数据usb设备从解码后的数据包的适当位置在每次传送开始在传输开始然后发送端开始发送包含信息的数据包或表明没有发送端和接收端之存在两种类型的通道而且通道与数据带宽多数通道在usb设备设置完成后它属于消息通道从而在硬件级上防止了对缓冲区的高当不确认信号发过后可视为一个通道它没有usb所定义的结构有关当设备一启动即若总线有空闲质的流通道同时正常工作包3
usb2.0的协议及规范
Usb2.0的协议规范第1章绪论1.1 起因Intel公司开发的通用串行总线架构(USB)的目的主要基于以下三方面考虑:(一)计算机与电话之间的连接:显然用计算机来进行计算机通信将是下一代计算机基本的应用。
机器和人们的数据交互流动需要一个广泛而又便宜的连通网络。
然而,由于目前产业间的相互独立发展,尚未建立统一标准,而USB则可以广泛的连接计算机和电话。
(二)易用性:众所周知,PC机的改装是极不灵活的。
对用户友好的图形化接口和一些软硬件机制的结合,加上新一代总线结构使得计算机的冲突大量减少,且易于改装。
但以终端用户的眼光来看,PC机的输入/输出,如串行/并行端口、键盘、鼠标、操纵杆接口等,均还没有达到即插即用的特性,USB正是在这种情况下问世的。
(三)端口扩充:外围设备的添加总是被相当有限的端口数目限制着。
缺少一个双向、价廉、与外设连接的中低速的总线,限制了外围设备(诸如电话/电传/调制解调器的适配器、扫描仪、键盘、PDA)的开发。
现有的连接只可对极少设备进行优化,对于PC机的新的功能部件的添加需定义一个新的接口来满足上述需要,USB就应运而生。
它是快速、双向、同步、动态连接且价格低廉的串行接口,可以满足PC机发展的现在和未来的需要。
1.2 USB规范的目标本书规范了USB的工业标准。
该规范介绍了USB的总线特点、协议内容、事务种类、总线管理、接口编程的设计,以及建立系统、制造外围设备所需的标准。
设计USB的目标就是使不同厂家所生产的设备可以在一个开放的体系下广泛的使用。
该规范改进了便携商务或家用电脑的现有体系结构,进而为系统生产商和外设开发商提供了足够的空间来创造多功能的产品和开发广阔的市场,并不必使用陈旧的接口,害怕失去兼容性。
1.3 适用对象·该规范主要面向外设开发商和系统生产商。
并且提供了许多有价值的信息给操作系统/BIOS/设备驱动平台、IHVS/ISVS适配器,以及各种计算机生产厂家使用。
USB2.0协议解析
Device state
Operations
• • • • • • • Dynamic Attachment and Removal Address Assignment Configuration Data Transfer Power Management Request Processing Request Error
Interface
A USB logical device appears to the USB system as a collection of endpoints. Endpoints are grouped into endpoint sets that implement an interface. Interfaces are views to the function. Client software manages an interface using pipe bundles (associated with an endpoint set)
usb2.0,协议中文版
usbpd是在ccpin上传输,pd有个Vdm(Vendordefinedmessage)功能,定义了装置端id,读到支持dp或pcie的装置,dFp就进入替代(alternate)模式。
如果dFp认到deviitch,让type-cusb3.1信号脚改为
传输dp信号。aux辅助由type-c的sbu1,sub2来传。hpd是检测脚,和cc差不多,所以共用。而dp有lane0-3四组差分信号,type-c有Rx/tx1-2也是四组差分信号,所以完全替代没问题。而且在dp协议里的替代模式,可以us(usb2.0,协议中文版)b信号和dp信号同时传输,Rx/tx1传输usb数据,Rx/tx2替换为lane0,1两组数据传输,此时可支持到4k。
这里说一下,usb3.0只有一组Rx/tx,速度是5gb,usbtype-c为了保证正反都可以插就用了两组,但实际上数据传输还是只用了一组Rx/tx,速度就已经达到10gb了。如果后面升级协议,两组都传的话就和displayport一样20gb了。
工作流程
上图dFp(downstreamFacingport)也就是主,uFp(upstreamFacingport)为从。除了dFp、uFp,还有个dRp(dualRoleport),dRp可以做dFp也可以做uFp。当dpR接到uFp,dRp转化为dFp。当dRp接到dFp,dRp转化为uFp。两个dRp接在一起,这时就是任意一方为dFp,另一方为uFp。在dFp的ccpin有上拉电阻Rp,在uFp有下拉电阻Rd。未连接时,dFp的Vbus是无输出的。连接后,ccpin相连,dFp的ccpin会检测到uFp的下拉电阻Rd,说明连接上了,dFp就打开Vbus电源开关,输出电源给uFp。而哪个ccpin(cc1,cc2)检测到下拉电阻就确定接口插入的方向,顺便切换Rx/tx。
usb2.0 协议层 (中文版)
图 8-2 地址字段
8.3.2.2端口字段 如图 8-3 所示,附加的 4 位的端口( ENDP )字段在功能部件需要一个以上端口时 候允许更灵活的寻址。除了端口地址 0 之外,端口个数是由功能部件决定的。端口 字段只对输入,建立和输出标记 PID 有定义。所有的功能能部件最多提供 3 个管道:
图 8-1 PID 格式
主机和所有功能部件都必须对得到全部 PID 字段实行完整的译码。任何收到包标识 符,如果含有失败的校验字段,或者经译码得到未定义的值,则该包标识符被假定是
1
被损坏的,而且包的余项将被包接收机忽略。如果一个功能部件收到了包含了它所不
支持的事务类型或方向的合法包标识符,则不必应答。例如,只能输入的端口(IN-only
图 8-5 标记包格式
如上图所示,标记包包括了覆盖地址和端口字段的 5 位 CRC 。CRC 并不覆盖 PID, 因为它有自己的校验字段。标记和帧开始 (SOF) 包是由小包)界定的 3个个字节的 包字段数据后面的包结束( EOP ,结束。如果包被译码为合法标记或 SOF ,但却没 有在 3 个字节之后以 EOP 终止,则它被认为是无效的,并被接收器忽略。 8.4.2 数据分割特殊标记包 USB为数据分割传输定义了特殊的标记:SPLIT。与其他普通的三字节标记包不同,这 是一个四字节的标记包。数据分割传输标记包提供了携带额外特殊传输信息的更多的 传输字节。数据分割传输标记用来支持主机控制器与处于高速运转状态的集线器之间
帧开始标记和帧号
建立(装备)
在主机到功能部件建立一个控制管道的 事务中有地址+ 端口号
数据
数据 0
0011B 偶数据包 PID
(数据) ( DATA0 )
数据 1
USB2.0电气特性
HS_Drive_Enable 使电流流向数据线。)这种方法不妥之处在于,这个
17.78 mA 的固定电流总是在系统中的收发器上存在(被消耗)。
优先选用的设计是,在收发器不进行发射时,完全地关闭这个电流
源。
高速差分数据接 高速差分数据接收器用作高速数据的接收,它让收发器设计者去选择到
收器
底是如图 7-1 所示的综合分离的高速和低/全速驱动器,还是在单一一个
状态。而当信号幅值≤525mv 时,则不能指示断开。该检波器的输出在
传输高速 SOF EOP 之间的某个特定的时刻采样,如 7.1.7.3 节描述。
上拉电阻(RPU) 该电阻仅要求在上行收发器上使用,用来指示信号传输速率。高速设备 一开始是当作全速设备识别的,并且必须转到高速模式上来,正如该规
格书所阐述的那样。当工作在高速模式时,1.5k 欧姆电阻必须从电路上
允许接收器在 12bit 时间内检测到信号传输,完成 DLL 加锁,以及检测
到同步场的结束阶段,接收器必须能保证观测到最少数目的同步位。该
包络检波器还必须综合一个滤波机制,阻止在接收器眼图规格中允许的
最长差分数据转换时指示静噪,
断开包络检波器 该包络检波器在下行端口中用来检测线上的高速断开状态(VHSDSC)。当 下行驱动器的连接器上的差分信号的幅值≥625mv 时,必须指示为断开
李文荣 liwr_mail@
2008-7-21
PDF 文件使用 "pdfFactory Pro" 试用版本创建
第 7 章:电气特性
这章内容阐述了 USB 的电气特性。它包含了信号处理,功率分配和物理层规范。这篇 文章并不是专注于规范一致。这是产品设计者的责任,即保证他们自己的设计能和所有的应 用的规范要求相一致。
USB2.0协议深入解读
14
2019/11/19
中国普天信息技术研究院
15
2019/11/19
中国普天信息技术研究院
2.电源管理
USB主机与USB系统有相互独立的电源管理系统。USB的系统软件可以与主 机的能源管理系统结合共同处理各种电源子件如挂起、唤醒,并且有特色 的是,USB设备应用特有的电源管理特性,可让系统软件和控制其电源管理.
1.错误检测
USB传输介质产生的错误率是与自然界的异常现象的概率相吻合,是瞬时一现的,因 此就要在每个数据包中加入检测位来发现这些瞬时的错误,并且提供了一系列硬件和 软件设施来保证数据的正确性。
协议中对每个包中的控制和数据位都提供了循环冗余码校验,若出现了循环冗余 码的错误则被认为是该数据包已被损坏,循环冗余码可对一位或两位的错误进行100% 的修复。
10
2019/11/19
中国普天信息技术研究院
11
2019/11/19
中U国SB普电天信缆息技术研究院
12
2019/11/19
中国普天信息技术研究院
2.机械特性
电缆和连接器的机械特性将在机械特性章节详述。所有设备都有一个上行 的连接。上行连接器和下行连接器是不可简单的互换,这样就避免了集 线器间的非法的循环往复的连接,电缆中有四根导线:一对互相缠绕的 标准规格线,一对符合标准的电源线,连接器有四个方向,具有屏蔽层, 以避免外界干扰,并有易拆装的特性。
USB的电源分配和电源管理特性使之可以被设计在电源传感系统中,如 采用电池的笔记本电脑.
16
2019/11/19
典型USB外设的电源供应
中国普天信息技术研究院
USB2.0总线协议
USB总线属一种轮讯方式的总线,主机控制端口初始化所有的数据传输.每一总
全面解析USB2.0及其USB2.0的应用
1.什么是USB2.0? USB 2.0是通⽤串⾏总线输⼊、输出总线协议的⼀种完全应⽤,于2001年推出,其数据传输速率⽐传统的USB 1.1标准更快。
USB1.1的传输速率为12Mbps,即⽬前公认的“USB”。
⼀些⼚商将其产品标为“全速USB”,⽤户不要将“全速”误解为“⾼速”。
“全速USB”允许的传输率是12Mbps,⽽⾼速USB能够达到更⾼的480Mbps。
此外,USB⿏标和键盘的传输速率仅为1.5Mbps,该传输速率同样被USB推⼴组(USB Promoter Group)称为“USB”。
综上所述,USB 2.0包括三种规格:⾼速、全速和低速。
作为消费者,您⽆需了解这些专业术语,只需记住⽬前只存在“⾼速USB”和“USB”端⼝与设备。
B 2.0的传输速率是多少? USB2.0的数据传输率⼤约是480Mbps,⽐先前数据传输率12Mbps的USB1.1接⼝快40倍。
最初的USB2.0数据传输率仅为240Mbps,后来USB2.0推⼴组在1999年10⽉将该速率提⾼到480Mbps。
B2.0连接线的长是多少? USB2.0连接线的长度5⽶。
但是,如果⽤5⽶长的USB连接线分级连接5个集线器,则长度可达30⽶。
B2.0可以带给⽤户哪些好处? ⽐USB1.1快40倍的传输速率,使计算机上可以使⽤的外设的范围⼤⼤增加。
即使有多个⾼速外设连接到USB2.0总线上,系统达到瓶颈带宽的可能性仍然很⼩。
新的规格不仅继承了⽬前USB设备即插即⽤及热拔插的特性,⽽且提供了USB1.1设备的向下兼容性,使当前⽤户平稳升级。
5.如何验证我的电脑是否具有USB2.0端⼝? 您可以很容易的辨别您的电脑是否有⾼速USB端⼝。
打开“设备管理器”,展开“通⽤串⾏总线”部分,您将会看到“Enhanced(增强)”USB主控制器选项。
该名称在Windows 98下可能不同,因为这些系统中的“⾼速USB”驱动程序并⾮由微软直接提供的(该驱动将在Windows ME、2000及XP的产品升级中提供)。
USB 2.0标准简介
USB 2.0標準簡介一.什麼是USB?USB是英文Universal Serial Bus的縮寫,中文含義是“通用串列匯流排”。
它是一種應用在PC領域的新型介面技術。
早在1995年,就已經有PC機帶有USB介面了,但由於缺乏軟體及硬體設備的支援,這些PC機的USB介面都閒置未用。
1998年後,隨著微軟在Windows 98中內置了對USB介面的支援模組,加上USB設備的日漸增多,USB介面才逐步走進了實用階段。
這幾年,隨著大量支持USB的個人電腦的普及,USB逐步成為PC機的標準介面已經是大勢所趨。
在主機(host)端,最新推出的PC機幾乎100%支援USB;而在外設(device)端,使用USB介面的設備也與日俱增,例如數碼相機、掃描器、遊戲杆、磁帶和軟盤機、圖像設備、印表機、鍵盤、滑鼠等等。
USB設備之所以會被大量應用,主要具有以下優點:1.可以熱插拔。
這就讓用戶在使用外接設備時,不需要重複“關機à將並口或串口電纜接上à再開機”這樣的動作,而是直接在PC開機時,就可以將USB電纜插上使用。
2.攜帶方便。
USB設備大多以“小、輕、薄”見長,對用戶來說,同樣20G的硬碟,USB硬碟比IDE硬碟要輕一半的重量,在想要隨身攜帶大量資料時,當然USB硬碟會是首要之選了。
3.標準統一。
大家常見的是IDE介面的硬碟,串口的滑鼠鍵盤,並口的印表機掃描器,可是有了USB之後,這些應用外設統統可以用同樣的標準與PC連接,這時就有了USB硬碟、USB滑鼠、USB印表機,等等。
4.可以連接多個設備。
USB在PC上往往具有多個介面,可以同時連接幾個設備,如果接上一個有4個埠的USB HUB時,就可以再連上4個USB設備,以此類推,盡可以連下去,將你家的設備都同時連在一台PC上而不會有任何問題(注:最高可連接至127個設備)。
但是,為什麼又出現了USB2.0呢?它與USB1.1又有何區別?請別急,下面就會談到了。
FE2.1 USB2.0
FE2.1 USB2.0简介FE2.1 USB2.0是一款具有高速传输和广泛应用的USB控制器芯片。
它支持USB2.0协议,提供了稳定可靠的数据传输和设备连接功能。
本文档将介绍FE2.1 USB2.0的特性、工作原理以及使用方法。
特性•支持USB2.0规范•高速传输速率:最高480 Mbps•完全兼容USB1.1和USB1.0规范•支持多种USB设备类型,包括储存设备、打印机、键盘、鼠标等•支持多平台操作系统,如Windows、MacOS、Linux等•低功耗设计,节省能源•内置USB PHY工作原理USB2.0协议USB2.0是一种用于计算机与外部设备之间的通信协议。
它提供了高速的数据传输和设备连接功能,广泛应用于各类电子设备中。
USB2.0协议通过一个主控制器和多个外设之间的通信来实现数据的传输和设备的控制。
FE2.1 USB2.0控制器FE2.1 USB2.0是一款高性能的USB控制器芯片,内置了USB PHY,能够实现USB设备和主机之间的数据传输和控制。
它支持USB2.0规范,提供了稳定可靠的高速传输率。
FE2.1 USB2.0控制器具有低功耗设计,节省能源并延长设备的使用寿命。
使用方法硬件连接使用FE2.1 USB2.0控制器需要正确连接硬件设备,以下是连接步骤:1.将FE2.1 USB2.0控制器插入主机的USB接口。
2.将外设设备插入FE2.1 USB2.0控制器的USB接口。
软件配置使用FE2.1 USB2.0控制器需要进行软件配置,以下是配置步骤:1.安装相应的驱动程序。
2.配置USB设备的参数,如传输速率、数据格式等。
3.设定主机和外设之间的通信方式,如同步传输、异步传输等。
数据传输配置完成后,就可以开始进行数据传输了。
使用FE2.1USB2.0控制器进行数据传输的步骤如下:1.主机发送请求给外设。
2.外设接收请求并准备好相应的数据。
3.主机接收到数据并进行相应处理。
4.主机发送响应给外设。
USB协议的中文简要说明书
USB(Universal Serial Bus)USB(通用串行总线)是用于将适用USB的外围设备连接到主机的外部总线结构,其主要是用在中速和低速的外设在USB的网络协议中它负责管理整个USB系统Host与USB Device的通信Host 端有一个Root Hubÿ¸ö¶Ë¿Ú¿ÉÒÔÁ¬½ÓÒ»¸öUSB Hub 或一个USB Device¼´USB Hub可以将一个USB端口扩展为多个端口如USB键盘USB MODEM Compound Device是指带一个Hub和一个或多个不可删除的USB Device的复合设备USB的系统有且只有一个host所以将两台PC的USB 口通过A-A USB电缆连接起来如果将两个host连起来通信与它的网络协议冲突Prolific等厂家有USB到USB的设备控制器USB设备USB的设备可以接在PC上的任意的USB接口上USB的Hub有一个上行的端口(到host)从而可以使整个的系统可以扩展的连接127个外设对于USB系统来说所有的其他连接到host都称为设备只有通过host的管理与调节才能够实现数据的互相传送通常会有一个根HubUSB的设备类型(device class)虽然USB设备都会表现USB的一些基本的特征同类型的设备可以拥有一些共同的行为特征和工作协议下表中就给出一些基本的USB的设备类型分类鼠标USB_DEVICE_CLASS_HUMAN_INTERFACE图像摄相机.扫描仪USB_DEVICE_CLASS_IMAGE显示监视器USB_DEVICE_CLASS_MONITOR物理回应设备动力回馈式游戏操纵杆USB_DEVICE_CLASS_PHYSICAL_INTERFACE 电源不间断电源供应USB_DEVICE_CLASS_POWER打印机USB_DEVICE_CLASS_PRINTERBulk存储器硬盘USB_DEVICE_CLASS_STORAGEHUB USB_DEVICE_CLASS_HUBUSB的优点有以下几条 U SB为所有的USB外设提供了单一的这样一来就简化了USB外设的设计2½ÚÊ¡ÁËϵͳ×ÊÔ´ U SB支持热插拔(hot plug)和PNP(Plug-and-Play)¼ÆËã»úϵͳ¶¯Ì¬µØ¼ì²âÍâÉèµÄ²å°ÎÆäËûÆÕͨµÄÍâΧÁ¬½Ó±ê×¼4USB直接连接到Hub或者是连接到Host的设备可以通过USB电缆供电或使用两种供电方式的组合.并且支持节约能源的挂机和唤醒模式 U SB提供全速12Mbps的速率和低速 1.5Mbps的速率来适应各种不同类型的外设6USB提供了四种不同的数据传输类型Bulk数据传输同步数据传输可为音频和视频等实时设备的实时数据传输提供固定带宽 U SB的端口具有很灵活的扩展性传输方式USB有四种的传输方式同步(isochronous)大量(bulk)Ä㻹ҪÕýÈ·Ñ¡Ôñ´«ÊäµÄ·½Ê½¾ÍÖ»ÐèҪŪÇå³þËûÊDzÉÓõÄʲô¹¤×÷·½Ê½¾ÍÐÐÁË1¿ØÖÆ´«ÊäÊÇË«Ïò´«ÊäUSB系统软件用来主要进行查询控制传输方式可以包括832和64字节的数据控制传输典型地用在主计算机和USB外设之间的端点(Endpoint)0之间的传输2ͬ²½´«ÊäÌṩÁËÈ·¶¨µÄ´ø¿íºÍ¼ä¸ôʱ¼ä它被用于时间严格并具有较强容错性的流数据传输例如执行即时通话的网络电话应用时同步数据要求确定的带宽值和确定的最大传输次数即时的数据传递比完美的精度和数据的完整性更重要一些 中断(interrupt)方式传输设备的端点模式器的结构决定了它的查询频率这种传输方式典型的应用在少量的分散的键盘中断方式传输是单向的并且对于host来说只有输入的方式 大量(bulk)传输同时又没有带宽和间隔时间要求的情况下打印机和扫描仪属于这种类型可以等到所有其它类型的数据的传输完成之后再传输和接收数据每帧通常是1ms时间长在完成了系统的配置信息和连接之后用来适应整个的USB的带宽同步方式和中断方式的传输会占据整个带宽的90%数据交换一个transaction是在host和设备通常由host开始交换接下来是双方向上的数据包就会由设备返回一个握手USB系统通过IN,OUT,和SETUP 的包来指定USB地址和endpoint0通常被用来用做缺省的传送配置信息的每个SETUP 的包包含8个byte的数据对于DATA数据包来说ACK handshake的包用来指示数据传送的正确性并且请示host重新发数据或者清除这次传送将不同于总线速度的设备中就会回应一个PRE的包从而会忽略该设备DATA的数据包最大是1023bytes 从/developer处得到USB的Specificationͬʱ¿É²Î¿¼The USB Handbook by Jaff Kosar2如果要开发WDM驱动程序则需要一台有以下配置的PC然后DDK34²»Òª×öÎÞνµÄÖظ´²¢ÕÒµ½¾¡¿ÉÄܶàµÄʵÀýÔ´³ÌÐò´úÂë5同时就可以获得一个Vendor ID每个Vendor ID的零售价格是$2006Èç×ÜÏß·ÖÎöÒÇ竞争者的相应USB设备以及USB鼠标USB键盘等7MCU固件程序和客户程序代码 参加USB遵从试验驱动程序编写USB的驱动程序和以往的直接跟硬件打交道的WIN95的VXD的方式的驱动程序不同Windows下的USB软件总体框图如图2USB软件总体框图。
USB 2.0标准简介
USB 2.0标准简介一、什么是USB?USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”。
它是一种应用在PC领域的新型接口技术。
早在1995年,就已经有PC机带有USB接口了,但由于缺乏软件及硬件设备的支持,这些PC机的USB接口都闲置未用。
1998年后,随着微软在Windows 98中内置了对USB接口的支持模块,加上USB设备的日渐增多,USB 接口才逐步走进了实用阶段。
这几年,随着大量支持USB的个人电脑的普及,USB逐步成为PC机的标准接口已经是大势所趋。
在主机(host)端,最新推出的PC机几乎100%支持USB;而在外设(device)端,使用USB接口的设备也与日俱增,例如数码相机、扫描仪、游戏杆、磁带和软驱、图像设备、打印机、键盘、鼠标等等。
USB设备之所以会被大量应用,主要具有以下优点:1、可以热插拔。
这就让用户在使用外接设备时,不需要重复“关机à将并口或串口电缆接上à再开机”这样的动作,而是直接在PC开机时,就可以将USB电缆插上使用。
2、携带方便。
USB设备大多以“小、轻、薄”见长,对用户来说,同样20G的硬盘,USB硬盘比IDE硬盘要轻一半的重量,在想要随身携带大量数据时,当然USB硬盘会是首要之选了。
3、标准统一。
大家常见的是IDE接口的硬盘,串口的鼠标键盘,并口的打印机扫描仪,可是有了USB之后,这些应用外设统统可以用同样的标准与PC连接,这时就有了USB硬盘、USB鼠标、USB打印机,等等。
4、可以连接多个设备。
USB在PC上往往具有多个接口,可以同时连接几个设备,如果接上一个有4个端口的USB HUB时,就可以再连上4个USB设备,以此类推,尽可以连下去,将你家的设备都同时连在一台PC上而不会有任何问题(注:最高可连接至127个设备)。
但是,为什么又出现了USB2.0呢?它与USB1.1又有何区别?请别急,下面就会谈到了。
USB2.0协议中文详解
0~1023字节 16位
PID
DATA
CRC16
• 握手包
8位/32位 SYNC PID 8位
PID
SYNC:Low/Fu ll speed为8 位;Hispeed为32位;
12
USB 体系简介
管道(Pipe) 管道是主机和设备端点之间数据传输的模型,共有两种类型的管道;
无格式的流管道(Stream Pipe) 有格式的信息管道Message Pipe)。
任何USB设备一旦上电就存在一个信息管道,即默认的控制管道, USB 主机通过该管道来获取设备的描述、配置、状态,并对设备 进行配置。 USB 设备连接到 HOST 时,HOST必须通过默认的控制管道对其进行 枚举,完成获得其设备描述、进行地址分配、获得其配置描述、进 行配置等操作方可正常使用。USB 设备的即插即用特性即依赖于此。
局部电压供给集线器控制器调节器上?vbus可接1单位负载max下?数据口上?数据口下?vbus?可移动设备调节器电?限制电?限制复合的自己电压集线器87usb电气规范?从总线获得电压的低电压功能设备如图该种设备上的所有电压均来自vbus在任一时刻它们最多只能接一个单位负载
USB2.0协议详解
Daxiang_20111031
23
USB 数据流模型
USB HUB
HUB由HUB重发器(HUB Repeater)、转发器(Transaction Translator)以及HUB 控制器(HUB Controller)三部分组成。 HUB Repeater是上行PORT 和下行PORT之间的一个协议控制的开 关,它负责高速数据包的重生与分发; HUB 控制器负责和 HOST的通信,HOST通过 HUB 类请求和 HUB 控制器通讯,获得关于 HUB 本身和下行 PORT 的 HUB 描述符,进 行HUB和下行PORT 的监控和管理。 转发器提供了从高速和全速/低速通讯的转换能力,通过 HUB 可以在 高速 HOST 和全速/低速设备之间进行匹配。 HUB 在硬件上支持 Reset、Resume、Suspend。
usb协议中文
U S B3.0与U S B2.0的特性比较3.2 超速结构超速总线是一个分层的通讯结构,如下图所示:协议层:协议层在主机和设备间定义了end-to-end(端到端)通讯规则。
超速协议在主机和设备端点(endpoint)之间提供应用数据信息交换。
这个通讯关系叫做管道(pipe)。
它是主机导向的协议,意味着主机决定什么时候在主机和设备间进行应用数据传输。
设备可以通过一个特定端点向主机发起异步请求服务,所以它不是一个轮询协议(USB2.0为轮询协议)。
数据可以连续突发传输,提高总线效率。
对某些传输类型(块传输),协议提供流控支持。
SS设备可以异步发送,通知主机,设备的功能状态发生改变。
而不是轮询的方式。
设备端点可以通过设备异步发送的“ready”包(ERDY TP)通知主机进行数据发送与接收,主机对于“ready”通知,如果有有效的数据发送或者缓存接收数据,会添加管道。
主机发送包含主机时间戳的特殊包头(ITP)到总线上,该值可以用于保持设备和主机同步(如果需要的话)。
超速USB电源管理:链路电源管理的关键点是:·设备向主机发送异步“ready”通知·包是有路由路径的,这样就允许不参与数据通讯的链路进入或仍旧停留在低电源状态。
·如果包送到一个处于低电源状态的端口,这个端口会切换到退出低电源状态并指示这是个切换事件。
设备:·超速需要支持USB2.0对默认的控制管道的规定。
HUB设备:因为USB3.0向下兼容USB2.0,为支持USB3.0双总线结构,USB3.0 HUB在逻辑上是两个HUB的组合:一个USB2.0 HUB和一个USB3.0 HUB。
连接到上游端口的电源和地线是共享的。
集线器(HUB)参与到一个端到端的协议中,所承当的工作:·路由选择输出的包到下游端口。
·输入包混合传递到上游端口·当不在低功耗状态下时,向所有下游端口广播时间戳包(ITP),即为同步时间信息包。
USB2.0网络、传输、通讯和协议
USB2.0网络、传输、通讯和协议USB在我们生活中应用非常广泛,但绝大部分工程师都只注重USB应用层的开发,很少有人去了解USB更底层的一些技术。
今天就结合USB 2.0来简单讲述USB底层的一些基础知识。
嵌入式专栏1USB网络USB物理层网络为分层星型网络:一台主机和若干从设备。
USB 2.0 网络最多可支持127个外部节点,由于信号传播的时序限制,允许的最大层数为七个:•主机(总线主控器)的一层•集线器和设备六层Hub:集线器,提供了附加的连接点,每个集线器将单个连接点转换为多个连接点,也称为端口。
Func:即Function功能,为系统提供了发送或接收数据和控制信息的功能,每个unc包含描述设备功能和资源要求的配置信息。
Compound Device:复合设备,是实现多种功能并包括嵌入式集线器的物理程序包。
复合设备在主机上看起来像是带有一个或多个不可移动USB设备的集线器。
星形网络对于以主机为中心的开发人员,USB网络看起来像是星形网络。
集线器不会引起任何编程复杂性,并且就程序员而言是透明的。
无论是直接连接到根集线器还是通过中间集线器连接,USB设备的工作方式都相同。
在主/从网络中,所有USB设备都可用作可寻址节点,只有主机才能启动网络中的数据传输。
提示:•任何USB网络中只有一个主机。
•在第七层中只能启用功能。
•复合设备占据两层。
嵌入式专栏2USB传输速率USB的传输速率经过一代一代发展,越来越快了,去年(2019)新出来的标准:USB 4 支持高达40Gbps。
目前流行的USB 3.0、 3.1的传输速率其实已经很高了,对于绝大部分应用,这个速率完全没问题。
早期的USB传输速率相对于现在很低,但在那个时候,传输速率其实已经很高了。
(图片来源网络)嵌入式专栏3USB通信USB是轮询总线,USB主机在其中启动所有数据交换,数据往返于USB设备中的端点。
USB主机中的客户端将数据存储在缓冲区中,但没有端点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
USB 数据流模型
USB 体系在实现时采用分层的结构
19
USB 数据流模型
在 HSOT端,应用软件(Client SW)不能直接访问 USB 总
线,而必须通过USB系统软件和USB主机控制器来访问 USB 总线,在 USB总线上和USB 设备进行通讯。 从逻辑上可以分为功能层、设备层和总线接口层三个层次。
9
USB 体系简介
包
包的基本格式
同步字段 (SYNC)
PID 字段
数据 字段
CRC 字段
包结尾字段 (EOP)
10
USB 体系简介
令牌(token)包
8位 SYNC PID
8位
7位
4位 ENDP
5位 CRC5
PID
ADDR
11
USB 体系简介
数据包 8位/32 位 SYNC
8位 PID
23
USB 数据流模型
USB 接口扩展
USB HUB提供了一种低成本、低复杂度的USB 接口扩展方法。HUB
的上行PORT 面向 HOST,下行 PORT 面向设备(HUB 或功能设备)。 在下行 PORT 上,HUB 提供了设备连接检测和设备移除检测的能力, 并给各下行PORT供电。 HUB可以单独使能各下行PORT,不同PORT 可以工作不同的速度等 级(高速/全速/低速)。
21
USB 数据流模型
USB 端点、管道和接口的关系。
USB 系统中数据的传输,宏观的看来是在HOST 和 USB 功能设备之间进行;微观的看是在应用软件的 Buffer 和 USB 功能设备的端点之间进行。一般来说端 点都有 Buffer,可以认为USB通讯就是应用软件Buffer 和设备端点Buffer之间的数据交换,交换的通道称为管 道。 应用软件通过和设备之间的数据交换来完成设备的控制 和数据传输。通常需要多个管道来完成数据交换,因为 同一管道只支持一种类型的数据传输。 用在一起来对设备进行控制的若干管道称为设备的接口;
各应用软件-功能设备对之间的通讯相互独立,应用软件 通过USB设备驱动程序(USBD)发起 IRQ 请求,请求数 据传输。 主机控制器驱动程序(HCD)接收 IRQ 请求,并解析成 为 USB传输和传输事务(Transaction),并对 USB 系 统中的所有传输事务进行任务排定 (因为可能同时有多 个应用软件发起 IRQ 请求)。 主机控制器(Host Controller)执行排定的传输任务, 在同一条共享的 USB 总线上进行数据包的传输。如右图 所示。
一个 USB 设备可以包括若干个端点,不同的端 点以端点编号和方向区分。不同端点可以支持不 同的传输类型、访问间隔以及最大数据包大小。 除端点 0外,所有的端点只支持一个方向的数据 传输。端点 0是一个特殊的端点,它支持双向的 控制传输。管道和端点关联,和关联的端点有相 同的属性,如支持的传输类型、最大包长度、传 输方向等。
从而保证了只有一个设备对被广播的数据包/令牌包作出响应。 握手包表示了传输的成功与否。 数据包:USB 总线上数据传输的最小单位,包括 SYNC、数据及 EOP 三个部分。其中数据的格式针对不同的包有不同的格式。但都以 8 位的 PID 开始。PID 指定了数据包的类型(共 16种)。令牌包即指 PID 为 IN/OUT/SETUP的包。 端点(Endpoint):是 USB 设备中的可以进行数据收发的最小单元, 支持单向或者双向的数据传输。设备支持端点的数量是有限制的,除 默认端点外低速设备最多支持 2 组端点(2 个输入,2 个输出), 高速和全速设备最多支持 15 组端点。
功能层完成功能级的描述、定义和行为; 设备级则完成从功能级到传输级的转换,把一次功能级的行为转换
为一次一次的基本传输; USB 总线接口层则处理总线上的Bit流,完成数据传输的物理层实现 和总线管理。途中黑色箭头代表真实的数据流,灰色箭头代表逻辑 上的通讯。
20
USB 数据流模型
物理上,USB设备通过分层的星型总线连接到 HOST,但在逻辑上HUB是透明的,各USB 设备 和HOST直接连接,和 HOST上的应用软件形成 一对一的关系。如下图所示:
任何USB设备一旦上电就存在一个信息管道,即默认的控制管道, USB 主机通过该管道来获取设备的描述、配置、状态,并对设备 进行配置。 USB 设备连接到 HOST 时,HOST必须通过默认的控制管道对其进行 枚举,完成获得其设备描述、进行地址分配、获得其配置描述、进 行配置等操作方可正常使用。USB 设备的即插即用特性即依赖于此。
类(class)请求:
USB 还定义了若干个子类,如HUB 类、大容量存储器类等。不同的类又 定义了若干类请求,该类设备应该支持这些类请求。设备所属类在设备 描述符中可以得到。
厂商请求:
这部分请求并不是 USB 规范定义的,而是设备生产商为了实现一定的功 能而自己定义的请求。
15
USB 体系简介
0~1023字节 16位
PID
DATA
CRC16
• 握手包
8位/32位 SYNC PID 8位
PID
SYNC:Low/Fu ll speed为8 位;Hispeed为32位;
12
USB 体系简介
管道(Pipe) 管道是主机和设备端点之间数据传输的模型,共有两种类型的管道;
无格式的流管道(Stream Pipe) 有格式的信息管道Message Pipe)。
USB 体系采用分层的星型拓扑来连接 所有USB设备
6
USB 体系简介
以 HOST-ROOT HUB为起点,最多支持 7 层(Tier),也就是说任何一 个USB 系统中最多可以允许 5个 USB HUB 级联。一个复合设备 (Compound Device)将同时占据两层或更多的层。 ROOT HUB 是一个特殊的 USB HUB,它集成在主机控制器里,不占用地址。 “复合设备(Compound Device)”可以占用多个地址。所谓复合设备其 实就是把多个功能设备通过内置的 USB HUB 组合而成的设备,比如带录 音话筒的 USB 摄像头等。 一个 USB HOST 最多可以同时支持 128 个地址,地址 0 作为默认地址, 只在设备枚举期间临时使用,而不能被分配给任何一个设备,因此一个 USB HOST 最多可以同时支持 127 个地址,如果一个设备只占用一个地 址,那么可最多支持 127个 USB 设备(含USB HUB)。
7
USB 体系简介
8
USB 体系简介
USB 采用轮询的广播机制传输数据
所有的传输都由主机发起,任何时刻整个USB体系内仅允许一个数据包的 传输,即不同物理传输线上看到的数据包都是同一被广播的数据包;
USB 采用“令牌包”-“数据包”-“握手包”的传输机制
在令牌包中指定数据包去向或者来源的设备地址和端点(Endpoint),
22
USB 数据流模型
四种传输类型(控制/中断/批量/同步传输)
1. 控制传输: 控制传输是一种可靠的双向传输,一次控制传输可分为三个阶段。 第一阶段为从HOST到Device的SETUP事务传输,这个阶段指定了此次控制传输 的请求类型; 第二阶段为数据阶段,也有些请求没有数据阶段; 第三阶段为状态阶段,通过一次IN/OUT 传输表明请求是否成功完成。 控制传输通过控制管道在应用软件和 Device 的控制端点之间进行,控制传输过程中 传输的数据是有格式定义的,USB 设备或主机可根据格式定义解析获得的数据含义。 其他三种传输类型都没有格式定义。 控制传输对于最大包长度有固定的要求。对于高速设备该值为 64Byte;对于低速设备 该值为 8;全速设备可以是 8或 16或 32或 64。 高速端点的控制传输不能占用超过 20%的微帧,全速和低速的则不能超过 10%的帧。 在一帧内如果有多余的未用时间,并且没有同步和中断传输,可以用来进行控制传输。
USB2.0协USB发展历史
传统的串口、并口通讯方式逐渐不能满足现有系统或者设备的数据传输速 率需求。 以Intel为首的七家公司于1994年推出了USB(Universal Serial Bus,通用 串行总线协议)概念,并在随后的几年内不断的对USB协议进行改进,成功 推行USB 1.1; 2004年底,正式推出了USB 2.0协议。接口与USB1.1兼容; 2007秋季,正式推出了USB 3.0协议。
USB HUB
HUB由HUB重发器(HUB Repeater)、转发器(Transaction Translator)以及HUB 控制器(HUB Controller)三部分组成。 HUB Repeater是上行PORT 和下行PORT之间的一个协议控制的开 关,它负责高速数据包的重生与分发; HUB 控制器负责和 HOST的通信,HOST通过 HUB 类请求和 HUB 控制器通讯,获得关于 HUB 本身和下行 PORT 的 HUB 描述符,进 行HUB和下行PORT 的监控和管理。 转发器提供了从高速和全速/低速通讯的转换能力,通过 HUB 可以在 高速 HOST 和全速/低速设备之间进行匹配。 HUB 在硬件上支持 Reset、Resume、Suspend。
2
序
USB 1.1与USB 2.0之间的差别
3
USB2.0 协议
USB 体系简介 USB 数据流模型
USB 物理规范
USB 电气规范 USB 协议层规范 USB 设备架构; USB 主机:硬件和软件 USB HUB 规范
4
USB 体系简介
USB 是一种支持热插拔的高速串行传输总线,使用差分信号来传输数据, 最高速度可达 480Mb/S。 USB 支持“总线供电”和“自供电”两种供电模式。在总线供电模式下, USB2.0设备最多可以获得500mA的电流; USB2.0 被设计成为向下兼容的模式,当有全速 (USB 1.1)或者低速 (USB 1.0)设备连接到高速(USB 2.0)主机时,主机可以通过分离传 输来支持它们。 一条 USB 总线上,可达到的最高传输速度等级由该总线上最慢的“设备” 决定,该设备包括主机、HUB以及USB功能设备。