




已阅读5页,还剩81页未读, 继续免费阅读
(信号与信息处理专业论文)usb20接口控制芯片的固件设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 u s b ( u n i v e r s a ls e r i a lb u s ,通用串行总线1 是外围设备与计算机进行连接的新型 接口总线。自从问世以来,凭借其高速度和高通用性迅速成为个人计算机与外围 设备相连的标准接口,现在市场上售出的所有p c 机都百分之百支持u s b 接口, 而且很多外设只推出u s b 版本。可以预见,u s b 的应用会越来越广泛,其传输速 率和通用性也会越来越高。 固件程序的设计是u s b 设备开发过程中非常重要的一个环节,它直接影响到 u s b 设备的传输速度。本文在深入分析u s b 2 0 协议、海量存储类规范和s c s i 指 令集的基础上,提出了一种专门针对u 盘应用的固件设计方法,重点论述了固件 实现过程中的几个关键技术,并给出了固件的调试过程和测试结果,证明u s b 2 0 接口控制芯片的固件设计达到了预期目标。 由于u s b 2 0 协议的j z 从式模式,固件的整个流程基于中断模式实现。固件 程序主要包括三部分:1 ) 初始化单片机和所有外围电路;2 ) 中断服务程序,完成各 个模块产生的中断响应:3 ) 任务处理子模块,供中断服务程序调用,完成具体的 u s b 设备操作。在实现的过程中,主处理程序完成系统的初始化并轮询中断,中 断复位程序调用底层的任务处理模块来完成相应的处理。固件负责协议的解析和 处理,不干预数据的传输,这样,一方面保证了快速的数据传输和较好的软件结 构,另一方面简化了编程和测试。 u s b 协议有严格的时间要求,这就使得程序必须在有效时问内对某些请求或 状态进行处理。因此,在调试过程中,较多借助串口输出程序的输出信息来辅助 调试,定位问题所在。调试过程分为三步进行:首先借助p c 调试软件( b u s h o u n d 、 r 8 0 5 1 5 仿真器等1 将设备端的u s b 协议调通;然后,用调试好的u s b 设备控制接 口来开发,调试p c 软件;最后,加上u s b 设备端的其它用户程序,对整个完整 的系统进行系统调试。 通过对调试过程和性能测试结果的分析,我们可以看出,固件能够控制硬件 电路快速的完成各种操作,达到了预期的设汁目标。 关键词:通用串行总线,固件,闪存,块传输,小型计算机系统专用接口 a b s t r a e t a b s t r a c t u n i v e r s a ls e r i a lb u sr u s b ) i san e wt y p eo fs e r i a lb u sw h i c hc o m l e c t sp e d p h e r m s t oc o m p u t e r s s i n c ei t sa d v e n t ,u s bh a sr a p i d l yb e c o m eas t a n d a r di n t e r f a c eb e t w e e n p e r s o n a lc o m p u t e r s ( p c s ) a n dp e r i p h e r a l sf o ri t sh i 曲t r a n s f e rs p e e da n da p p l i c a b i l i t y a l lp c so nm a r k e tt o d a ys u p p o r tu s bi n t e r f a c ew i t hn oe x c e p t i o n ,w h i l em a n y p e f i p h e r a l sa r ef o u n dw i t ho n l yu s bi n t e r f a c e s i ti sp r e d i c t a b l et h a tu s bw i l lb em o r e a n dm o r ep o p u l a rw i t hi t st r a n s f e rs p e e da n da p p l i c a b i l i t yb e i n gi n c r e a s e d f i r m w a r ei sv e r yi m p o r t a n ti nau s bd e v i c ep r o i e c t ,w h i c ha f f e c t st h et r a n s f e r s p e e do fu s bd i r e c t l y t h i sd i s s e r t a t i o np u t sf o r w a r dan e ws o l u t i o no nt h ef i r m w a r e s d e s i g no ff l a s hm e m o r yd i s kb a s e do ns t u d y l n gu s b 20p r o t o c o l ,m a s ss t o r a g ec l a s sa n d s m a l lc o m p u t e rs y s t e mi n t e r f a c e ( s c s l ) c o m m a n ds e t st h o r o u g h l y t h i sd i s s e r t a t i o n d e s c r i b e st h ek e yt e c h n o l o g i e sd u r i n gt h er e a l i z a t i o no ff i r m w a r eb e i n gd e s i g n e d a n da c o m p l e t er e c o r do fp r o c e d u r e sa n dr e s u l t st h r o u g ht h ef i r m w a r eb e i n gd e b u g g e da r e s b o w n w h i c ht e s t i f i e st h a tt h ef i r m w a r eo fu s b 2 0i m e r f a c oc o n t r o l l e ra s i ca c h i e v e s t h ed e s i r e ds i g h t s i na c c o r d a n c e w i t h t h em a s t e r - s l a v e a r c h i t e c t u r ei nu s b2 0 p r o t o c o l ,t h e w o r k f l o wo ft h ef i r m w a r ei si m p l e m e n t e db a s e do ni n t e r r u p tp a t t e r n t h ef i r m w a r e p r o g r a mi n c l u d e st h r e es e c t i o n s :i n i t i a l i z a t i o nm i c r o c o n t m l l e ra n da l lt h ep e r i p h e r a l c i r c u i t s ;i n t e r r u p ts e r v i c er o u t i n e ,w h i c ht r i g g e r si n t e r r u p t sa n de x e c u t e st h ei n t e r r u p t ; t a s km o d u l e ,w h i c hi sc a l l e db yt h ei s r d u r i n gt h ep r o c e d u r eo fr e a l i z a t i o n ,m a i n p r o g r a m m ei m p l e m e n t st h ei n i t i a l i z a t i o no fs y s t e ma n dw a i t sf o rt h eo c c u i _ r c n c co f i n t e r r u p t ,t h ei s rc a l l st h et a s km o d u l et oe x e c u t et h eo p e r a t i o n t h ef i r m w a r ea n a l y z e s t h ep r o t o c o l sa n dd o e sn o td i s t u r bt h et r a n s f e ro fd a t a t h u s ,t h i sp r o c e d u r ec a nn o to n l y g u a r a n t e et h eh i 曲t r a n s f e rs p e e da n dg o o ds o f t w a r es t r u c t u r eb u ta l s os i m p l i f yt h e d e s i g na n dt e s t d u et ot h es t r i c tt i m i n gr e q u i r e m e n t sb yu s b p r o t o c o l ,t h ef i r m w a r em u s th a n d l e c e r t a i nr e q u e s t so rs t a t u sw i t h i nv a l i dp e r i o d s h e n c ed u r i n gt h ed e b u g g i n gp r o c e s s , i n f o r m a t i o ns e n tb yo u t p u tp r o g r a mt h r o u g ht h es e r i a l p o r t c a nb e u s e dt oa s s i s t d e b u g g i n ga n dt ol o c a t et h ep r o b l e m s t h ed e b u gg o e si nt h r e es t e p s :f i r s t l yd e b u g g i n g l i a b s t r a c t t h eu s bp r o t o c o lo nt h eu s bd e v i c eu s i n gp cd e b u g g i n gs o f t w a r e ( b u s h o u n d ,r 8 0 5 1 5 e m u l a t o r ) ;a r mt h e nt od e v e l o pa n dd e b u gp cs o f t w a r eb yu s i n gt h ev a l i dc o n t r o l i n t e r f a c eo ft h eu s b d e v i c e ;f i n a l l yd e b u g g i n gt h ew h o l es y s t e mi n c l u d i n go t h e ru s e r p r o g r a m s0 1 1t h eu s bd e v i c e s e e i n gf r o mt h ef i n a ld e b u gr e s u l t s ,w ef i n d t h a t t h e w h o l ed e s i g na c h i e v et h ee x p e c t e dt a r g e t s a n a l y s i so ft h ef i n a ld e b u gr e s u l t ss h o w s t h a tt h ed e s i g nc a nc o n t r o lt h eh a r d w a r e t of i n i s hv a r i o u so p e r a t i o n sw i t hh i 曲s p e e d s ow ed r a wac o n c l u s i o nt h a tt h ed e s i g n a c q u i r e st h ea n t i c i p a t e do b j e e f i v e s 。 k e y w o r d s :u n i v e r s a ls e r i a lb u s ,f i r m w a r e ,f l a s hm e m o r y ,b u l k - o n l yt r a n s p o r t p r o t o c o l ,s m a l lc o m p u t e rs y s t e mi n t e r f a c e 玎1 图目录 图目录 图2 1u s b 总线拓扑结构4 图2 2u s b 系统的分层描述5 图2 - 3 客户软件和功能单元间的关系6 图2 4u s b 逻辑总线拓扑结构6 图2 5u s b 物理总线拓扑结构7 图2 - 6b u l k _ i n 传输8 图2 7b u l ko u t 传输_ 9 图2 8 中断h l 传输9 图2 - 9 同步h l 传输:9 图2 1 0 控制i n 传输1 0 图2 1 1u s b 移动存储结构j 1 3 图2 1 2c o m m a n d d a t a s t a t u s 流程1 4 图2 1 3c b w 包格式1 4 图2 1 4c s w 包格式1 5 图2 1 5 典型s c s i 命令块:1 7 图3 1 固件总体设计流程图2 0 图3 2 系统层次划分图2 2 图3 3u s b 2 0 接口控制芯片硬件设计总体框图2 3 图3 - 4s i e 结构框图2 5 图3 5r 8 0 5 1 5 结构框图2 7 图4 1 固件体系结构2 8 图4 2 固件初始化流程图3 0 图4 3u s b 设备配置流程3 5 图4 4g e td e s c r i p t o r 处理流程3 8 图4 5g e ts t a t u s 处理流程3 9 图4 - 6c l e a rf e a t u r e 处理流程4 0 图4 7g e tc o n f i g u r a t i o n 处理流程。4 1 图4 8s e tc o n f i g u r a t i o n 处理流程4 2 v i 图目录 图4 - 9g e ti n t e r f a c e 请求处理流程 图4 1 0s e ti n t e r f a c e 请求处理流程 图4 - 1 1b u l k _ o u t 中断响应流程 图4 1 2b u l ko u t 状态判断及数据发送过程流程 图4 1 3b u l ki n 中断处理流程j 图4 1 4r e a d ( 1 命令处理流程j 。 图4 1 5w r i t e ( 1 0 ) 命令处理流程 图4 1 6r e a dc a p a c i t y 命令处理流程 图4 1 7r e q u e s ts e n s e 命令处理流程 图4 1 8i n q u i r y 命令处理流程 图4 1 9t e s tu n i t r e a d y 命令处理流程 图4 2 0m o d es e n s e 命令处理流程 图4 2 1m o d es e l e c t 命令处理流程 图4 2 2 大页块f l a s hk 9 k 4 g 0 8 u o m 的页块结构及地址组织结构 图4 2 3 小页块f l a s hk 9 f 5 6 0 8 d o c 的页块结构及地址组织结构 图4 2 4h a s h 操作的基本时序结构 图4 2 5 固件对f l a s h 操作流程 图5 - 1u s b 2 0 接口控制芯片的调试模型 图5 2f p g a 搭建的调试电路板 图5 - 3r 8 0 5 1 5 调试软件 图5 - 4b u s h o u n d 软件工作界面 图5 5u s b 设各枚举过程 图5 - 6i n q u i r y 正确响应后主机界面 图5 7 响应i n q u i r y 过程 图5 格式化操作主机界面 图5 - 9 格式化过程 图5 1 0 写文件时主机界面 图5 1 1 写文件过程一i 图5 1 2u s b 2 0 接口控制芯片读写速度测试图 钙甜盯勰锣卯n n皿盟弱弱鲋巧拍拍卵弱缸甜酊岱嘶酌酊矾 表目录 表目录 表2 1u s b 设备状态 表2 - 3s c s i 指令集 表3 - 1r 8 0 5 1 5 与标准5 1 单片机的比较 表4 - 1r i 寄存器的选择 表4 2 外部中断说明 表4 - 3 外部中断向量表和中断优先级 表4 - 4 控制事务数据字段说明 v 1 1 1 7 2 5 3 1 3 1 3 1 3 3 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他入已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。: 4 -f 签名:一生堕 日期:年月日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:宝吐导师签名 日期:年月 日 捷 舌 第一章引言一 一 , 第一章引言 当今的计算机外部设备,都在追求高速度和高通用性。为了满足用户的需求, 以i m e l 为首的七家公司于2 0 0 0 年4 月2 7 日公开发布了u s b 2 o ( u n i v e r s a ls e r i a l b u s ,通用串行总线协议) ,在u s b l 1 的1 5 m b s 和1 2 m b s 基础上增加了4 8 0 m b s 的高速数据传输模式。与其他老式p c 机接口相比,u s b 具有热插拔、即插即用、 共享式接口、接几体积小巧、成本低、性能可靠、节省系统资源、提供电源、兼 容性好等优点。目前,u s b 端口已经成为微机主板的标准接口,由于u s b 的弹性 和易于使用,使得支持u s b 的周边设备包括u 盘、鼠标、键盘、喇叭、数据线、 扫描仪等各种不同的产品也逐年增加;可以预见,随着u s b 的发展,其传输速率 会越来越高,应用也会越来越广泛。 1 1u s b 技术发展现状及研究意义 整体而言,在全球市场规模方面,预计u s b 的产品出货量将从2 0 0 4 年的七 亿套成长至2 0 0 9 年的二十一亿一千万套,年复合成长率为2 4 9 。在u s b 的市 场应用方面,主要分为电脑相关、消费类电子与通信三大类,目前最大应用市场 为电脑相关产品。在2 0 0 5 年,u s b 在电脑相关的应用比重占整体应用的6 99 , 在消费类电子产品与通信产品的应用则分别占2 0 6 与9 5 。在u s b 2 0 推出后, 其4 8 0 m b p s 的传输速度已能符合目前电脑与周边设各传输的要求,随着个人电脑 迈向娱乐化,消费类电子产品与电脑之间的连接成为高速传输的重要应用,高速 传输在消费类电子产品的出货量将逐年增加i l j 。 由于u s b 接r 】蕴藏了巨大市场需求,国外很早就开始了u s b 20 接口芯片的 研发,甚至早在在2 0 0 1 年,c y p r e s s 和p h i l i p s 就推出了u s b 2 0 接口芯片。当前 u s b 2 0 接口控制芯片的市场份额也主要被这些国外的厂商所占据,其中c y p r e s s 、 i n t e l 、p h i l i p s 、n e t c h i p 、n e c 、t i 等几家公司的芯片比较成功。目前,市场上流 行的u s b 2 0 接口控制芯片有两种类型:一种是集成了微处理器的u s b 接口控制 芯片,如i n t e l 的8 x 9 3 0 a x 、c y p r e s s 的e z u s b 、s i e m e n s 的c 5 4 1 u 以及m o t o r o l a 、 n a t i o n a l s e m i c o n d u c t o r 等公司的产品:另一种是纯粹的u s b 接口芯片,仅处理u s b 通信,如p h i l i p s 的p d i u s b d l l ( 1 2 c 接口1 、p d i u s b p l l a 、p d i u s b d l 2 ( 并行接口) 、 电子科技大学硕士学位论文 n a t i o n a ls e m i c o n d u c t o r 的u s b n 9 6 0 2 、u s b n 9 6 0 3 、u s b n 9 6 0 4 等,前一种由于丌 发时需要单独的开发系统,因此开发成本较高;而后一种只是个芯片与微处理 器接口实现u s b 通信功能,成本较低,而且可靠性高【2 l 。 : 国内u s b 2 0 接口控制芯片现在也有一定地发展,比如青岛硅盛微电子有限公 司已经取得成功,并于2 0 0 4 年5 月申请了专矛l j l 3 1 国家相关部门也高度重视u s b 2 0 接口芯片的研发,并将其列为国家8 6 3 项目,课题组在2 0 0 2 年承接了u s b 2 0i p 核开发的国家8 6 3 项目,在2 0 0 4 年3 月通过了国家的验收。 u 盘是u s b 接口最主要的一种应用,自从1 9 9 9 年朗科生产出筇一个u 盘以 来,它便以小巧方便、存储量大、寿命长等优点取代了软盘,成为市场上最为主 流的一种便携存储设备,甚至成为一种电子产品的时尚,几乎人人都在使用鸭研 发专f 3 9 l 对u 盘应用的u s b 20 接口控制芯片不仅可以打破国外刘,u s b 接口控制 芯片的垄断,掌握核心技术和自主知识产权,而且具有巨大的市场价值。 1 2 课题来源及研究目标 本课题是由课题组与校外公司合作,开发以高性能u 盘产品为目标的u s b 2 0 接口控制芯片。本论文是此课题的一部分,详细阐述了固件的开发和调试。合作 公司足国内唯一一家成功开发出了u s b 2 0 收发器并拥有自主知识产权的公司,与 课题组有很强的技术互补性。 本课题的研究目标主要包括以下几个方面:n 与高速u s b 2 0 协议规范兼容, 并向下兼容u s b l 1 产品;2 ) 以u 盘为典型廊用,支持高速和全速两种传输方式; 3 ) 最多支持8 片n a n d 型h a s h ,每片容量最大4 g b i t ;4 1 利用此芯片只需外挂f l a s h 就可开发u 盘:5 ) 能对f l a s h 进行不间断的操作;6 1 在3 0 m 时钟下用硬件实现f l a s h 接口时序,突破f l a s h 操作的速度瓶颈;7 1 支持所有三星和东芝的8 位n a n d 型 f l a s h 芯片:8 1 支持w i n d o w s x p 、w i n d o w s 2 0 0 0 、w i n d o w s m e 操作系统:9 ) 支持 固件可升级。 1 3 我所做的工作 目前,本课题已经完成,围绕本课题,我主要做了以下工作: 1 1 对课题中涉及的理论基础做了深入的学习和研究,主要包括u s b 2 0 的协议 原理、b u l k - o n l y 传输协议、针对h a s h 介质的s c s i 指令集等,全面掌握了u 盘 第一章引言 系统的设计和固件开发。 2 1 参与了u 盘系统开发规格书的制定,硬件模块的划分和寄存器的定义。 3 1 熟悉了软件设计和开发的一般方法、步骤,使开发的软件具有较好的可靠性、 可维护性和可读性。 4 、完成了固件的设计和代码的编写,主要包括系统的初始化、设备枚举过程的 实现、b u l k o n l y 传输的实现、s c s i 指令的解析以及闪存的控制。 5 1 完成了固件的调试和系统性能的测试,验证了课题的开发达到了预期的目 标。 1 4 本论文的组织结构 :, ;1 本论文的研究重点在于以u 盘为典型应用的u s b 2 0 接口控制芯片的固件设计 和实现,固件的实现要求= h 二发者对u s b 20 传输协议,相应的特定类规范和协议, 相应的硬件以及开发软件和5 1 单片机的特性都有很好的把握。 + 综上所述,本文的组织如下,全文共分为六章: 笫一章主要讲述了u s b 技术发展现状、研究意义以及本课题的基本情况。 第二章对课题开发过程中涉及到的协议进行了简单的分析,主要包括u s b 2 0 协议、b u l k o n l y 传输协议、s c s i 指令集等。 第三章提出了固件的设计方法,固件的层次划分,并对硬件平台的设计做了 介绍。 第四章刘固件实现过程中的几个关键技术做了详细的阐述,主要包括系统初 始化过程的实现、设备枚举过程的实现、b u l k o n l y 传输过程的实现。 第五章主要描述了固件的调试过程和系统性能测试,验证了固件设计达到预 期目标。 第六章对本论文做了总结并对未来做了展望。 电子科技大学硕士学位论文 第二章协议分析 本章主要分析了论文所涉及的各种协议,包括u s b 2 0 协议、海量存储类规范 及s c s i 指令集。其中u s b 2 0 协议是所有基于u s b 2 0 接口标准的外设都必须遵 从和实现的协议:海量存储类规范是目前移动存储设备普遍遵从的一种块存储类 传输协议;s c s i 指令集里包含了针对u s b 移动存储而制定的一种操作命令协议。 下面就分别对它们做简要的分析和介绍。 t 。 2 1 u s b 2 0 协议分析 , u s b 2 0 接口是一个传输速率可以达到4 8 0 m b s 的串行接口,并由不同类型钧 外围设备共享这个接口总线。u s b 采用层次星型的总线拓扑结构,其拓扑结构殚 图2 - 1 所示。u s b 主机是整个总线的主控者,总线上的通信都是由主机发起,一 个主机最多可通过u s b 总线控制1 2 7 个外设,并负责向各个外设发出各种命令和 配置。主机在总线上发送含有设备地址和命令的令牌包,这时总线上符合该地址 的设各将接收这个包,并且按照令牌包的内容进行相应的操作。另外主机会定时 发送帧开始包,将总线时间分割为1 2 靴s 一帧( u s m 1 为l m s 一帧) 。所有总线i 的设备都是以时间分割的方式来分享总线带宽1 5 。 图2 - 1 u s b 总线拓扑结构 第一章协议分析 2 1 1u s b 的系统结构 u s b 系统从逻辑上可以被分为i 个层次:u s b 功能层、u s b 设备层和u s b 总线接口层,且每一层都由主机和u s b 设备的不同功能模块组成a 图2 2 对u s b 系统的分层结构进行了详细的描述。从逻辑上看,每二层趣是u s b 设备和主机的 对应功能模块进行通信,客户软件通过一组管道与u s b 设备的功能单元进行通信: u s b 系统软件通过缺省控制管道o 和u s b 逻辑设备进行通信;所有实际的u s b 数据传输都是由主机和u s b 设备的s i e 来完成的。 圭机互连trsb设备 u s b 功能层 u s b 设 备层 u s l 3 总线 接口层 图2 2u s b 系统的分层描述 2 1 1 1u s b 功能层 u s b 功能层负责实现u s b 设备的特定功能,如数据传输、文档打印等。该层 只要知道主机和u s b 设各之间要传输哪些数据,它由主机方的客户软件和设备方 的功能单元组成,客户软件与功能单元之问的关系如图2 - 3 所示。功能单元是客户 软件对u s b 设备的抽象,可以被看作是一个接口的集合。从逻辑上看,客户软件 只需与功能单元进行通信,但实际上,客户软件不能直接访问功能单元,它需要 调用u s b 系统软件所提供的接口与u s b 设备进行通信。不同的u s b 设备对数据 传输提出了不同的要求,如传输数据量的大小、传输速率的高低等。根据实际情 况的需要,客户软件在和u s b 设备的功能单元进行通信时可采用块传输、中断传 堕型堑盔堂雯主堂焦造塞 输、同步传输、控制传输四种传输类型。 幽23 客户软件和功能单元闸的关系 2 1 1 2u s b 设备层 u s b 设各层实现了主机和u s b 设备间的配置通信。该层需要理解u s b 通信 机讳t 和功能层所要求的传输特性,它由主机方的u s b 系统软件和设备方的u s b 逻 辑设备组成。 虽然u s b 设备是以层次星型的总线拓扑结构来连接的但在主机看来,其与 每一个u s b 逻辑设备的通信就像是直接连接在根集线器上一样,u s b 逻辑总线拓 扑结构如图2 - 4 所示。它们之间的通信不需要功能层的干预,但实际的数据传输仍 是由u s b 总线接口层完成。 图2 - 4u s b 逻辑总线拓扑结构 在u s b 系统中,配置通信通常发生在u s b 设备的连接或断开时,由u s b 逻 辑设备层完成。在正常情况下主机会周期性的查询集线器,以检测其下行端口 上是否有u s b 设备的连接或断开。 当u s b 设备连接至集线器的下行端口时,主机会很快发现,并首先使用缺省 地址和缺省管道来访问它,以得到该设备的一些配置信息;然后主机会为这个新 第二章协议分析 连接的u s b 设备分配一个唯一的地址,即殴各地址;最后主机会向相关客户软件 发出通知,让它们来进一步配置设备。 当把高速u s b 设备连接至全速集线器的下行端口时,它必须能够以全速传输 速率复位,并正确响应主机发出的下行标准u s b 设备请求:s e t a d d r e s s 、 s e t c o n f i g u r a t i o n 、g e t d e s c r i p t o r ( d e v i c e ) :和g e t d e s c r i p t o r ( c o n f i g u r a t i o n ) 。在其他时 候,高速u s b 设备不要求支持全速传输,如果支持,其需要使用设备限定描述符 和其他速率配置描述符。 当从集线器地下行端口上断开一个u s b 设备时集线器会马上禁止该端口并 向主机发出通知。u s b 系统软件和相关的客户软件会处理这个断丌操作,其设各 地址将被释放。如果断开的设备是一个u s b 集线器,则其下行端口上连接的所有 u s b 设备都将被断开,主机会分别处理每一个设各的断丌操作。 2 1 1 3u s b 总线接口层 u s b 总线接口层实现了主机和u s b 设备间数据的实际传输,它由主机方的 u s b 主控制器f 包括根集线器) 和设备方的u s b 总线接口两部分组成。 为保证u s b 总线上传输数据的完整性和消除噪声干扰,u s b 采用了n r z i ( 反 向非归零1 编码的差分信号数据在d + 和d 一线上的相位差为1 8 0 。u s b 主控制 器和u s b 设备的s i e 模块负责对数据进行n r z i 编解码和差分驱动。 在u s b 总线接口层中,u s b 设备是以层次星型的拓扑结构连接至u s b 丰控 制器的根集线器,如图2 - 6 所示。这些设备最终都是通过同一个u s b 主控制器来 和主机进行通信的,即u s b 总线上的所有设各共享一个通往主机的数据通道,因 此同一时刻只可能有一个u s b 设备和主机进行通信。 圈2 - 5u s b 物理总线拓扑结构 u s b 对其总线r 的数据进行n r z i 编码,以确保数据传输的完整性。这种编 电子科技大学硕士学位论文 码方式不需要单独的时钟信号与数据一起发送,它用电平的跳变代表“0 ”,无电 平跳变代表1 。 一 n r z l 编码用其数据流中的跳变表示同步信号,即传输数据“0 ”,这可以保 证接收方和发送方的同步。但是,一个长串的1 会导致无电平跳变,从而引起 接收方失去同步信号。为避免这种情况的发生,u s b 使用了位填充机制。 u s b 使用位填充机制来避免n r z i 码丢失同步信号,其具体做法为:如果传 输的数据中有6 个连续的1 ,那么发送方会在这6 个“1 ”后填充一个0 , 这就保证了在7 个位时间里面至少有一个跳变。数据接收方在检测到6 个连续的 1 之后,会把第7 位的0 抛弃掉。需要注意的足,如果原始数据的第7 位 本来就是0 ,位填充机制还是会在第7 位填充一个0 h 2 1 2u s l 3 数据传输 u s b 建了4 种传输类型:控制传输、块传输、中断传输和同步传输。这几 种传输在传犏数据量的大小、传输速率的高低、需同步传输或突发传输等都有不 同的要求。次完整传输包括3 个阶段:控制阶段、数据阶段、状态阶段。但不 是每种传输部包含所有的阶段。每个阶段一般包括3 个u s b 协议包:令牌包、数 据包、握手包。下面将对4 种传输进行详细的介绍。 2 12 1 块传输 块传输适用于传输数据量大、且对传输时间和传输速率均无要求的数据。当 u s b 总线带宽紧张时,它会为其他传输类型让出自己的总线带宽,其本身被延迟; 当u s b 总线空闲时,它会以很快的速率传输,其传输时间也很短。块传输只有数 据阶段,它采用差错控制和重试机制来确保数据传输的正确性。块传输特别适合 于u 盘、移动硬盘、数码相机等外设。b u l k _ h i 传输和b u l k _ o u t 传输分别如图2 - 6 和图2 7 所示。 图2 - 6 b u l ki n 传输 第二章协议贫析 图2 - b u l ko u t 传输 2 1 2 2 中断传输 中断传输适用于传输少量或中量、且对服务周期有要求的数据。u s b 为中断 传输保留了总线带宽,以保证其能在规定的周期内得到服务,但其并不是一直使 用准确的传输速率。u s b 采用差错控制和重试机制来确保中断传输的正确性。中 断传输特别适合于键赫、鼠标类设备。中断l n 传输包格式如图2 - 8 所示。 图2 - 8 中断i n 传输 2 1 2 3 同步传输 同步传输适用于传输大量、速率恒定、且对服务周期有要求的数据。同步传 输将一直使用准确的传输速率,因此其传输时阳j 是日j 以预测的。为保证数据传输 的及时性,同步传输没有采用差错控制机制和重试机制,不能保证每次传输都是 成功的。同步传输特别适合于音频和视频设备。同步i n 传输包格式如图2 - 9 所示。 囤2 - 9 同步i d 传输 2 1 2 4 控制传输 控制传输适用于传输少量、且对传输时间和传输速率均无要求、但必须保证 传输正确性的数据。u s b 为控制传输保留了总线带宽,且主机u s b 系统软件可以 电子科技大学硕士学位论文 为它动态地调整其所需的帧小帧时间,以确保其能被尽快传输。控制传输主要用 手发送和接收与u s b 设备的配置信息有关的数据,如设备地址、配置描述符等“。 控制i n 传输如图2 1 0 所示,其中数据阶段是可选的,由不同的控制命令决定。 一画 s t a t u s s t a g e 图2 1 0 控制i n 传输 s e t u p s t a g e d 4 弼 s t a g e ( o p t i o n a l ) 2 1 3u s b 设备 - 在终端用户看来,u s b 设备为主机提供了多种多样的附加功能,如扩展u s b 端口、传输文件等,但对u s b 主机来说,它与所有u s b 设备的接口都是一致的。 一个u s b 设备山三个功能模块组成:u s b 总线接口、u s b 逻辑设备和功能单元。 u s b 总线接口足u s b 设备中的串行接口引擎( s i 功;u s b 逻辑设备被u s b 系统软 件看作是一个端点的集合;功能单元被用户软件看作是一个接口的集合。它们的 功能如下: 1 、u s b 总线接i :3 模块负责实现u s b 设备和主机问数据的物理传输。 2 、u s b 逻辑设备负责处理u s b 总线接口与功能单元各端点之间的数据传输。 3 ) 功能单元负责实现u s b 设备的特定功能。 2 1 3 1u s b 设备状态 u s b 设备包含若干种状态,如上电状态、采集状态等,表2 - 1 主要介绍对于 u s b 设备和主机而言可见的状态,包括连接、上电、缺省、地址、配置和挂起状 第二章协议分析 态 7 1 。 不论u s b 设备是处于上电状态、缺省状态、地址状态还是配置状态,如果它 在3 m s 内没有检测到总线活动,它将进入挂超状态,这时它仍然会保持原有的设 备地址和配置值,根据挂起的范围不同,u s b 将其分为全局挂超和选择性挂起。 如果u s b 设各要脱离挂起状态,必须对其进行恢复。u s b 总线上的任何非空 闲信号都将使挂起的u s b 设备得到恢复。如果u s b 设备本身具有远程唤醒的功能, 它自己也可以启动系统的恢复信号。 如果u s b 设备被复位,它将回复到缺省状态,开始重新地址分配和进行配置; 如果u s b 设备供电被中断,它将回复到上电状态。 袁2 - 1u s b 设备状态 * 连接 上l _ l = ,缺省地址配置 挂起 说明 一 否设备尚未连接至u s b 是否设备己连接至u s b ,但未上电 是是否设缶已连接至u s b ,并且已上电, 但尚未被复位 是是是否设备已连接至u s b ,且己上电,并 被复位,但尚未被分配一个唯一的 地址,这时设备使用缺省地址 是 是 是是否设备已连接至u s b ,己上电,并被 复位,且分配了唯一地址,尚米被 配置 设各已连接至u s b ,且已上电,复 是是是足是 否 位、地址分配和配置操作都已完成, 且来被挂起。这时,主机可以使用 该设备所提供的功能 设各已连接至u s b ,目已卜电。当 它在3 m s 内没有检测到总线活动 时,将进入挂起状态。当设各处于 是是是 缺省、地址和配置状态时,也能进 入挂起状态。当设各处于抟起状态 时,丰机不能使用该设各所提供的 功能 1 1 电子科技大学硕士学位论文 2 1 3 2u s b 描述符 u s b 采用设备架构的概念来描述一个u s b 设备,它把u s b 设备看成一个配 置、接口和端点的集合,并采用标准u s b 描述符来说明它们,其中包括设备描述 符、配置描述符、接口描述符、端点描述符和字符串捕述符,对于高速设备,还 可包含设各限定描述符和其他速率配置描述符,这些描述符适用于所有的u s b 设 备,且它们都包含有特定功能的字段,这些特定字段在各自的描述符中都有固定 的排列顺序。 除了标准u s b 描述符外,设备类和供应商也可以自己定义其设备专用的描述 符,分别称为设备类定义描述符和供应
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- AR智能巡检方案-洞察及研究
- 第8课 金鱼饲养说课稿小学劳动小学高年级湘教版(广西)
- 第16课 壮族十字花绣-四瓣花说课稿小学劳动湘教版高年级-湘教版
- 3.7伟大的历史转折 教学设计 统编版八年级历史下册
- 2025年电气工程与自动化考试题及答案
- 第11课《岳阳楼记》说课稿 2023-2024学年统编版语文九年级上册
- 银行业信贷风险管理实务操作指南
- 江西智慧城市市政环境工程有限公司公开招聘一定任务职工以及劳务派遣招聘笔试参考题库附带答案详解
- 康定市市属国有企业公开招聘工作领导小组公开招聘康定市投资发展集团有限公司经理层人员笔试参考题库附带答案详解
- 2025租房意向金合同
- 钢铁销售基础知识培训
- 物业管理人员考核制度及标准
- GB/T 45952-2025科技馆运行评估规范
- 2025宁波写字楼租赁市场半年度研究报告-中艾世联
- 2025年事业单位统考《综合应用能力(A类)》试题及答案解析
- 基于项目学习的英语核心素养心得体会
- 第六章-材料的热性能
- 林业政策法规课件
- (完整版)抛丸机安全操作规程
- 马凡综合征课件
- 高一前三章数学试卷
评论
0/150
提交评论