已阅读5页,还剩59页未读, 继续免费阅读
(无线电物理专业论文)usb接口引擎的软核设计与fpga兑现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 u s b ( u n i v e r s a ls e r i a lb u s ,通用串行总线) 是当今消费电子产品和仪器设 备中应用最广的接口协议之一,然而目前国内的u s b 芯片只有极少数几款,产品 研究善处于起步阶段,绝大部分产品主要由国外的i c 设计芯片厂商女u c y p r e s s 、 n e c 等一些国际著名公司提供。因而,如果能够自主开发设计u s b 芯片以替代 国外同类产品,将会有很好的市场前景和利润空间。 本论文课题是针对基于f p g a ( f i e l dp r o g r a m m a b l eg a t ea r r a y ,现场可编 程门阵列器件) 的数字电子产品应用设计一种实际可复用的u s b 接口引擎软核。 该软核主要是用于处理u s b 标准协议包的通信处理,通过外接m c u ( m u l t i p o i n t c o n t r o lu n i t ,微控制器) 就可以实现完整的u s b 接口通讯功能。它的功能相当 于一些u s b 弓i 擎的专用芯片如:p h i l i p s 的p d i u s b d l 2 等,其优点是结构简单、 灵活性高、复用设计方便。 功能仿真和综合测试结果显示本论文所设计的接口引擎软核符合设计要求, 并且软核的性能和市场上同类产品基本一致。本沦文的创新之处在于:1 、从可 配置性角度出发设计了低速、全速、高速三种可选模式;2 、支持最多3 1 个可 配置端点;3 、采用了可综合、可移植的r t l ( r e g i s t e r t r a n s f e r l e v e l ,寄存器 传输级) 代码设计规则,同时也开发了可综合的验证测试代码:4 、完全由硬件 实现u s b 通信功能。 关键宇:u s b 接口引擎,寄存器传输级,i p 软核 a b s t r a c t u s b ( u n i v e r s a ls e r i a lb u s ) i so n eo ft h em o s tp e r v a s i v eb u ss t a n d a r d s n o w a d a y si nc o n s u m e de l e c t r o n i cd e v i c e sa n dp e d p h e r a l s t h e r ea r ef e wu s b i c sd e s i g n e db yl o c a lc o m p a n i e sa tp r e s e n t m o s to ft h e ma r ei m p o r t e df r o m t h o s ew o r l d w i d ei cc o r p o r a t i o n s ,l i k ec y p r e s sa n dn e c e t c s o ,t od e s i g nt h i s k i n do fu s bc o n t r o l l e ri ci n d e p e n d e n f l y i n s t e a do fu s i n gt h es i m i l a rp r o d u c t s a b o a r d ,w o u l db eo fal a r g ep o t e n t i a im a r k e ta n dp r o f i t t h e p u r p o s e o ft h i sp a p e ri st od e s i g naf e a s i b l ea n dr e u s a b l eu s b s i e ( s e r i a l i n t e r f a c ee n g i n e ) i pc o r e 。b a s e do nf p g a 。t h i si pc o r eh a n d l e st h es t a n d a r d u s bt r a n s a c t i o n s a n de m b e d d e dw i t ham c ui tw o u l dp r o v i d ea l lt h eu s b f u n c t i o n a l i t i e s s oi th a st h em e r i t so fs i m p l ea r c h i t e c t u r ea n de a s yr e d e s i g n i t i ss i m i l a rt os o m es p e c i a lu s bs i ei c s ,l i k ep d i u s b d l 2f r o mr o y a lp h i l i p s e l e c t t o n i c s t h r o u g ht h es i m u l a t i o na n dv e r i f i c a t i o n ,t h er e s u l t ss h o wt h a to u rs i ec o r ec a n r e p l a c et h es a m ep r o d u c t i o ni m p o d e d t h ei n n o v a t i o n si no u rd e s i g na r e :1 f l e x i b l es p e e dm o d ec o n f i g u r a t i o n ,l o w - s p e e d f u l l - s p e e d h i g h s p e e d ;2 u pt o 3 1e n d p o i n t sa r ea v a i l a b l ew h e nd e v e l o p i n gs p e c i a lp r o d u c t s ;3 a p p l y i n gr t l m e t h o d o l o g ya n da l s od e v e l o p e dv e r i f i c a t i o nt e s tb e n c hs o u r c ec o d e ;4 h a r d w i r e du s bp r o t o c o ll a y er n of i r m w a r ei n v e n t i o nr e q u i m d k e y w o r d s :u s bs e r i a li n t e r f a c ee n g i n e ,r e g i s t e rt r a n s f e rl e v e l ,i pc o r e 厦门大学学位论文原创性声明 兹呈交的学位论文,是本人在导师指导下独立完成的研究成 果。本人在论文写作中参考的其他个人或集体的研究成果,均在 文中以明确方式标明。本人依法享有和承担由此论文而产生的权 利和责任。 声明人( 签名) :岛靶l 年月日 厦门大学学位论文著作权使用声明 本人完全了解厦门大学有关保留、使用学位论文的规定。厦门大 学有权保留并向国家主管部门或其指定机构送交论文的纸质版和电 子版,有权将学位论文用于非赢利目的的少量复制并允许论文进入学 校图书馆被查阅,有权将学位论文的内容编入有关数据库进行检索, 有权将学位论文的标题和摘要汇编出版。保密的学位论文在解密后适 用本规定。 本学位论文属于 1 、保密( ) ,在年解密后适用本授权书。 2 、不保密( ) ( 请在以上相应括号内打“”) 日期:年月 日 日期:年月日 第一章绪论 第一章绪论 u s b 的提出和应用为计算机外围接口带来了革命性的变化,随着u s b 接口设 备种类的增多和u s b 应用研究的不断深入,u s b 为我们带来了一个令人瞩目的巨 大市场。本章首先介绍u s b 的提出背景,u s b 技术的发展概况,其次说明i p 核的 设计流程和关键问题,最后具体介绍本文的工作。 1 1 引言 利用计算机进行工作学习和休闲娱乐已经是人们生活中不可或缺的一部分, 在使用过程中的方便快捷更是现代人追求的重点。但是,随着计算机的外围设备 逐渐地增多,接口规格的多样化以及计算机上有限的接口数量,传统外围接口已 经无法满足众多外设连接的需要。因此人们就希望有一种通用的接口可以解决这 个问题,它应该是快速的、双向的、同步的、动态连接而且价格低廉的串行接口。 为此,h p 、旧m 、i n t e l 、m i c r o s o f t 、n e c 等计算机与通信工业领先的公司于1 9 9 4 年联合提出了u s b ( u n i v e r s a ls e r i a lb u s ,通用串行总线) 技术概念【1 1 ,并在 1 9 9 5 年成立了u s b 技术推广的企业联盟u s bi m p l e m e n t e r sf o r u m ( 简称 u s b i f ) 【2 】。 同沿用己久的串并口和p s l 2 口等相比,u s b 具有接口统一,数据传输速率高, 支持即插即用,易于扩充等优点;相对于i e e e1 3 9 4 ,u s b 的主要优势在于其价 格低廉,支持热插拔【3 】【4 】。在短短几年内,u s b 接口就得到了普及和广泛的应 用,在现有的计算机系统设计中一般都扩展有2 至4 个u s b 接口,以供连接外设 用。除此之外在嵌入式系统( 如常用的数字设备、数码相机、移动存储设备、 p d a 掌上电脑、机顶盒等) 中,u s b 技术也得到了极其广泛的应用。 1 2u s b 技术发展概况 在1 9 9 4 年1 0 月,u s b i f 联盟推出了最早的u s b0 7 版本,它定义了u s b 协 议最核心的概念。在1 9 9 5 年i n t e l 公司首先推出了第一个u s b 的硅片。随着u s b 第一章绪论 技术应用前景的不断明朗,到1 9 9 6 年u s b i f 联盟又提出了升级版的u s b1 o 版 本,与此同时第一款u s b 产品问世,m i c r o s o f t 推出外挂式的驱动程序,从此u s b 进入了实质性的发展与应用阶段【5 】。 1 9 9 8 年,在进一步对以前版本的标准进行阐述和扩充的基础上,u s b i f 联 盟发布了u s b 标准的1 1 规澍6 】,它规定了u s b 有两种传输速度( 低速1 5 m b s 和全速1 2 m b ,s ) 以满足不同需要:同时支持热插拔和即插即用;有同步、中断、 控制和批传输四种方式;连接线最长距离可达5 米;采用星型拓扑结构,理论上 可以同时连接1 2 7 个设备;各种外设分享u s b 带宽;同时,其它外设和主机正在 通信时,总线也允许添加、设置、使用以及拆除外设。同年,m i c r o s o f t 推出了 w i n 9 8 系统,系统内置了支持u s b 接口的驱动模块【5 】。正是在i n t e l 和m i c r o s o f t 的大力支持下,u s b 设备开始了突飞猛进的发展。 随着现代各种外设对视频及图像处理的质量要求越来越高,要求计算机处理 能力和接口速率也越来越高,即使是全速的1 2 m b su s b 接口都很难完全满足需 要。因此在2 0 0 0 年u s b - i f 联盟推出了新的u s b2 o 1 1 ,它增加了最快为4 8 0m b s 的高速传输模式,并且可以向下兼容u s b1 1 ,即使用同样的电缆、同样的连接 器、同样的连接方式就能到达4 8 0m b s 的接口速度。此时的u s b 接口已经成为 接1 3 技术中的主流总线技术【7 l 。 为了解决传统的u s b 接口设备之间无法相互识别的问题,u s b i f 公布了 u s bo n - t h e g o ( 简称u s bo t g ) 协议标准【8 】。它实际上是对于传统u s b2 0 的一个补充协议。根据厂商的需要,u s bo t g 可以定义为主控、从属和双重角 色的不同身份,从而支持点对点的传输,实现了设备之间独立通信,避免u s b 接口网络问可能出现两个从属或者两个主控设备的情况。 近几年随着无线技术的快速发展,无线u s b 接口技术f 9 】也应运而生。无线 u s b 是基于u w b ( u l t r aw i d e b a n d ,超宽带无线通信技术) 技术的宽频带、低 功率谱密度优点【1 0 】,结合现有u s b2 0 接1 3 技术经过简单的变换而来【1 1 】。无线 u s b 最大的特色是“无线”。无线u s b 技术建立了双重鉴别架构,i , i 以防止数据被 盗或修改,并且在3 米内的数据传输率能够达至= j 4 8 0 m b p s ,在1 0 米距离上能够实 现11 0 m b p s 的数据传输率。同时,无线u s b 还继承传统标准串行总线的“休眠”、 第一章绪论 “待机”、“唤醒”等省电特色。因此,无线u s b 技术有着u s b2 0 和i e e e1 3 9 4 无法 比拟的优点,它将给u s b 电子产品的应用发展带来极大的变化【1 2 】。 无论对于哪种u s b 协议规范,它最核心不变的就是u s b 的通讯技术,包括 u s b 的传输方式、编码方式和通讯包格式等。因而,如果能够开发出一种具有 可移植特点、灵活机动的u s b 通讯控制核,并且可以应用在任何一种u s b 设备 中,它必定会有很好的市场前景。为此,本文希望能够提供一个实际可复用的 u s b 接口引擎i p ( i n t e l l e c t u a lp r o p e r t y ,知识产权) 核设计。 1 3u s bl p 核筒述 芯片设计业正面临着一系列的挑战:芯片性能越来越强,规模越来越大,开 发周期越来越长,设计质量越来越难于控制,因此芯片设计成本越来越趋于高昂 【1 3 。i p 技术被认为是最有前途的解决方案【1 4 1 0 数年间,业界出现了许多新兴 的i p 供货商,并且i p 种类也随着产品应用的多元化而愈趋广泛。 i p 是指在电子设计中预先开发、用于s o c ( s y s t e mo nc h i p ,片上系统) 设 计的可复用模块。从设计流程的阶段来分,i p 大体可以分为软i p 、固i p 和硬i p 三 类【1 5 l 。软i p ( 也称为s o f ti p ) 是纯功能逻辑性的硬件描述程序,它是利用v h d l 、 v e r i l o g 或s y s t e mc 等设计语言所设计的i p ,授权时会进行加密防护以确保l p 不 被盗拷、抄袭。软i p 属于前期设计,它只保证功能逻辑正确,但电压、时序等更 实际层面的规格并未定义。固i p ( f i r mi p ) 则是进一步的设计,它的主要特点 是将功能电路中较严苛要求的部分( 如时序、电压) 先行硬化实现,一般以门电 路级网表形式提交用户使用。硬i p ( p h y s i c a li p ) 则接近后期投产阶段的型态, 它是完成了综合的功能块,已有固定的拓扑布局和具体工艺,并经过工艺验证, 是已经决定版图面积、电压、时序等具体规范的l p 设计。因此,设计深度愈深, 利用i p 核进行后续应用所需要做的工作就越少,但是灵活性也就越小。 目前,很多国外的l p 公司都提供u s bi p 产品,如o p e n c o r e s 1 6 t - 的免费 u s b i p 资源,或c l p d f p g a 业者x i l i n x 提供的范例d h l 程序【1 7 】和a l t e r a 的 m e g a c o r ei p 18 等等。 x i l i n x 公司提供了6 款u s bi p 核的范例。t r e n ze l e c t r o n i c 公司在2 0 0 0 年 第一章绪论 9 月推出f u l l s p e e du s b1 1f u n c t i o nc o n t r o l l e r ,它是用v h d l 描述的、可综 合的行为级模型,附带给出了u s bp a c k e t - o n e n t e dt e s t b e n c h 和e v a l u a t i o nk i t ,a p p l i c a t i o nn o t e 供购买者后续开发。2 0 0 3 年1 1 月c a s t 公司推出u s b1 1 f u n c l i o nc o n t r o l l e r ( c u s b ) 的a l l i a n c ec o r e ,c u s b 提供u s bs i e 的功能,工 作频率是4 8 m h z ,它采用h d l 建模并以网表形式提交,额外再付费时提供r t l 产品。a l d e c ( t h e d e s i g n v e r i f i c a t i o n c o m p a n y ) 是在2 0 0 6 年4 月推出的u s b 1 1l pc o r e 和u s b2 0i pc o r e ,它能够满足不同的设计需要,都是以通过 验证的r t l 形式提交。 a l t e r am e g a c o r ei p 中提供了完整的u s b1 1 和2 oi p 系列,包括了主机、 h u b 和设备。m e n t o rg r a p h i c s 的m u s b f s f c d lu s b1 ,1f u l ls p e e df u n c t i o n c o n t r o l l e r 是以r t l 级模型设计、网表形式提交的软核,它符合全速的要求和设 计应用;另外一款m u s b h s f c d lu s b2 0h i g h s p e e df u n c t i o nc o n t r o l l e r , 则是增加了4 8 0 m h z 高速的功能。除此之外还有s y s t e ml e v e ls o l u t i o n s 公司提 供的以v e r i l o g 语言描述、r t l 模型设计的s l s u s b f s f c v lu s bf u n c t i o n c o n t r o l l e r 产品等等。 在国内,u s bi p 的研发才刚剐起步,市场上可以看到的国内设计公司的产 品只有极少数的几款【19 】,包括上海华杰芯片的u s b l 1 和u s b2 0t r a n s c e i v e r , 上海众华电子的u s b1 1 ,2 0 ,四川登巅微电子的一款u s b2 0t r a n s c e i v e r 。另 外,近年来国内也有一些单位或研究机构在探索独立设计u s b 芯片和i p 核,但 是只处于研发阶段,还没有实际的产品推向市场【2 0 】- 【2 6 】。 综上所述,目前市场上出现的u s bi p 核主要以软核的方式授权,这种授权 方式又分为有内置m c u 内核与仅提供u s b 接口引擎两种。后者仅处理u s b 标 准协议包的通信处理,需要外接m c u 来构成完整的u s b 设备系统;由于其结 构相对简单,设计复杂性低且应用的灵活性更高,所以绝大多数的i p 供应商更 多的提供此种u s bi p 核。 从整个i p 市场来看,绝大多数供应商提供软i p 或硬i p 授权,固l p 授权相对稀 少 1 4 1 。事实上软i p 、硬i p 并无绝对的优劣,全视需求而定:若需要较大的变化 灵活性,则选择软l p :若需要节省更多的研发验证时间和花费,则硬i p 较合适。 第一章绪论 本文的设计从实际的实验设备、经费和设计时间的条件出发,采用i p 软核的设计 方法进行u s b 接口引擎的开发。 1 4l p 软核设计和关键技术 i p 软核设计的典型流程如图1 - 1 所示【2 7 】。在开始阶段,当软核的设计要求 确定后,要不断地修改软核的功能,并划分成子模块,定义好各个子模块的功能 和性能。在划分好的子模块基础上,开发r t l 代码和综合脚本,开发测试平台 ( t e s t b e n c h ) ,以便验证r 1 l 代码。在将子模块集成为软核的过程中,生成顶 层网表并用于功能验证与综合。 定义核的设计要求 开发行为模型并验证 划分子模块 r j 语画丽勘能要求 。j r _ 一f 1 一j 予模块的r t l子模块测试平台 _综合_ _ 0 满足r t l 代码故 溪露西霸赢i i i 藤j 障覆盖率的测试 子模块集成 注:有阴影的框表示固核所需的附加步骤 图1 1 用于软核和固核的基于r t l 综合的设计流程 为了支持最大范围的应用,并提供最好的可重用收益,优秀的l p 核 2 8 2 9 】 应该具有满足不同设计需要的可配置性,采用业界标准接口,遵循确保l p 时序 收敛的r t l 设计规则,为方便软核集成需要交付完整的数据、资料的特点。因 第一章绪论 此,我们的u s bi p 软核的关键设计也在于总体定义、r t l 级设计和l p 打包。 首先,对于u s b 接口来说,可配置性主要体现在可能提供多种可配置方法 ( 低速、全速、高速) ,以及遵照u s b 协议规范进行准确定义和模块划分。只 有规划好,才能够设计好。确定规格和划分模块是l p 开发是否成功最为关键的 一步。 好的r t l 代码是软核成功设计的最为关键的一步【4 9 】。r t l 代码风格决定了 软核的可移植性和可复用性,还决定了综合后芯片的面积和性能,因此,在软核 设计中,应该指定r t l 代码设计规则并严格执行。而r t l 设计规则的基本原理, 就是要开发出简单、易懂、结构分明、采用简单结构和一致的命名方法、且便于 验证和综合的代码【3 0 】【3 1 】。 在i p 软核开发基本结束后,设计者需要将零散分布的设计信息集成,进行i p 打包。它的主要目的是提供完整、清晰、明了的设计信息,以供i p 购买者方便、 准确的使用。由于时问限制,我们的工作暂时还没有涉及到u s bi p 软核打包。 1 5 本课题研究的意义及其内容 总的来说,带有u s b 接口的嵌入式控制应用系统是今后电子产品发展的趋 势。灵活可复用的u s b 接口引擎i p 软核,采用外接m c u 的方式,就可以用来 实现电子产品的u s b 接口功能,因此,u s b 接口引擎i p 软核的设计是有很好 的市场前景的。不过,要开发出符合市场需求的高质量的u s b 接口引擎l p 软核, 关键在于如何准确定义和如何采用r t l 级h d l 来设计和实际兑现验证我们的设 计结果。为此,本论文课题工作主要是设计研发u s b 接口引擎l p 核及i p 核的 f p g a 兑现验证。 本论文的内容共分为七章,除本章外,第二章对u s b 协议原理进行总体介 绍,特别是与本设计密切相关的通信原理部分;第三章给出u s b 接口引擎的总 体设计,说明其功能要求、整体模块划分及接1 :3 信号定义;第四章具体阐述了各 个子模块的r t l 设计和功能验证结果;第五章给出我们设计的u s b 接口引擎基 于f p g a 的软核综合和结果分析:最后在第七章对本论文的工作进行了总结和 展望。 第一章u s b 协泌原理 第二章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 总线体系结构 u s b 是一种电缆总线,支持在主机( h o s t ) 和各式各样的即插即用的外设 ( p e r i p h e r a l s ) 之间进行数据传输,它通过主机分配的分牌协议,辅助设备共享 u s b 带宽。一个u s b 系统由u s b 电缆,u s b 主机和u s b 设备组成,如图2 1 所示。其中,u s b 电缆为四芯软质规格,d + 和d 两根差分信号线是用于发送和 接受信号,v b u s 是+ 5 v 电源线,g n d 地线,它们向设备提供电源。 u s b 电缆 v b u s _ _ 芦, v s u s d + 寸rr 、yy 。、7yff d + 昏u 、_ u ,j 土。l ld g n d 。 i v 一g n d 图2 1u s b 系统 2 。1 1u s b 拓扑结构 在u s b 主机和u s b 设备之间,u s b 的物理连接是有层次性的星型拓扑结 构( at i e r e ds t a rt o p o l o g y ) 。u s b 主机是一个起协调作用的实体,负责监督 u s b 的拓扑结构。主机系统整合了根集线器( r o o th u b ) ,以便提供更多的连 接点。u s b 设备分为集线器( h u b ) 和功能部件( f u n c t i o n ) 两种。只有集线器 可以提供更多的u s b 连接点:而f u n c t i o n 为主机提供具体的功能,它又分为一 般设备和复合设备( c o m p o n e n td e v i c e ) 两种。主机要在f u n c t i o n 使用前对它 第二章u s b 协议原理 进行配置( c o n f i g u r a t i o n ) 。图2 - 2 是u s b 物理层的拓扑结构。 -_ i + u s bh o s t 、 j 设备卜7 1 ( r o o lh u b ) 、设备 图2 - 2u s b 物理层拓扑结构 2 1 2 端点和通道 虽然在物理结构上,设备通过集线器连到主机上,但在逻辑上,主机是直接 与各个逻辑设备通信的,如图2 3 所示。 图2 3u s b 通信流 每个u s b 逻辑设备有一个唯一的地址( f u n c t i o na d d r e s s ) ,这个地址由主 机在配置时分配。一个u s b 逻辑设备对u s b 系统来说就是一个端点( e n d p o i n t ) 集合,每一个端点是主机与设备间通信流的一个结束点,它或者支持数据流进设 备,或者支持数据流出设备。同时,每个端点在设备内部有唯一的端点号 ( e n d p o i n tn u m b e r ) ,它是在u s b 产品设计时给定。 所有u s b 设备都必须把两个端点号是o 的端点作为缺省控制端点( d e f a u l t 否一 嘛一 匦 堕 、b 各 一丫堕 一彩、叫、;。露 。y几,托l一一器酱| 一设。ip_: 一 一羚一翼。、麓 第二章u s b 协议原理 e n d p o i n t ) ,因此它既是输入端点也是输出端点。设备额外的端点只有在设备被 配置后方可使用。除端点o 以外的其它端点最大数目取决于具体设备的实现。低 速设备在0 号输入及输出端点外,只能有2 个额外的可选端点:而全速和高速设 备可具有的额外端点数是最多1 5 个额外的输入端点和最多1 5 个额外的输出端 点。 任何u s b 传输发生之前,主机和设备之间必须先建立一个通道( p i p e ) , 但它并不是物理上的传送通路,而是端点和主机控制器的软件之间的连接,体现 了主机上缓存和端点间传送数据的能力。通道分为流( s t r e a m ) 和消息 ( m e s s a g e ) 两种格式。流是指通信的数据内容不具有u s b 定义格式;消息则 是通信的数据内容必须是u s b 定义的格式。在通道中传送数据时,u s b 不解释 的其具体内容,而解释工作由客户软件和应用层软件负责。 由收和发两个o 号端点组成的通道叫缺省控制通道( d e f a u l tc o n t r o lp i p e ) , 设备上电复位后,此通道就可以使用;其它通道只在设备被配置后才可使用。另 外根据传输方式的不同,通道有双向和单向两种;消息通道是双向的,控制传输 是唯一使用消息通道的传输;流管道是单向的,其它传输均使用流通道。 2 2 传输方式及传输事务 2 2 1 传输和事务的概念 传输( t r a n s f e r ) 是当主机需要和设备通信时,由主机发起和执行一次通信 请求的过程。为了适应不同传输速率以及不同响应时间,u s b 有四种基本的传 输方式:控制传输( c o n t r o lt r a n s f e r ) 、批传输( b u l kt r a n s f e r ) 、中断传输 ( i n t e r r u p tt r a n s f e r ) 和同步传输( i s o c h r o n o u st r a n s f e r ) 。 每一次传输都是由事务( t r a n s a c t i o n s ) 所组成的;一次传输可能只传送几 个字节的数据,也可能传送一个长的文件,因此一次传输可由一个或多个事务构 成,每个事务负责传输一部分数据。每个事务都可以选用不同的事务阶段( s t a g e ) 来完成,包括标记( t o k e n ) 阶段、数据( d a t a ) 阶段以及握手( h a n d s h a k e ) 阶段。 u s b 总线采用定期轮询的方式,无论那种传输方式和事务,具体何时在总线 第二章u s b 协议原理 上进行由主机决定,并且总是由主机启动。在低速与全速时,主机将传输分割成 1 毫秒的帧( f r a m e ) ;在高速时,传输被分割成1 2 5 微秒的微帧( m i c r o f r a m e , 八分之一的帧) 。每帧的开头是一个s o f 信息包( s t a r to ff r a m e ) ,然后跟 着传输数据的事务。主机可以在帧内任意编排事务,一个完整的传输可能需要多 个帧才能完成,但是事务是个单一的通信,必须无中甑地完成,其它任何通信都 不能插入到事务的中间。 2 2 2 传输方式 u s b 有控制传输、批传输、中断传输和同步传输四种方式。表2 1 给出了是 四种传输方式的主要特征比较。 表2 1 四种传输方式的主要特征比较 。11。,_。-_。_q。_q。r_。一 传输类型i 控制传输 | 批传输i | 中断传输 同步传输 面一再一一f 一r p 一一 蒿蓠产蔫荔芦蓠i 矿蓠蓄_ r 一r 一 l 单,双向l 双向 厂_ r 一一r l 单向l 单向j l 单向 ! 最大数据 高速1 6 4 | 5 1 2i1 0 2 4 1 1 0 2 4 2 0 4 8 3 0 7 2 ; p 负荷度降i j 画f 面五r i 亭阿! | ( b y t e 驯磊f i 一医一再一_ 医一_ i! = 。 一- 二一= 量= 二_ 暑。:= 二二二= 二= 二二二二意j i ,一二二。一? | 延时的限制 ! 非周期性 | 非9 猡性! 固定延迟9 粤期性 ;! + 最大数据净负荷区良度是m a x i m u md a t ap a y l o a ds i z e ,缩写是w m a x p a c k e t s i z e 。 控制传输用来主机读取设备的信息、设置设备的地址以及选择设置配置。所 有u s b 设备都必须在端点0 的默认管道支持控制传输。控制传输允许访问一个 设备的不同部分。 批传输适合使用在传输量大、实时性要求不高但准确性强的数据传输时,打 印机、扫描仪、移动硬盘通常以这种方式和主机通信可获得任何带宽访问总线。 第二章u s b 协议原理 批传输有着可以传输大量的数据而不会阻塞总线的特点,这是因为它总是让其它 类型的传输先执行结束,直到有时间再进行。 中断传输使用在数据必须在指定时间内完成的传输上,常用于支持数据量少 的周期性传输需求,如键盘、鼠标以及操纵杆等低速设备上。除了控制传输之外, 低速设各就支持中断传输,不支持批传输和同步传输。中断传输与其它传输方式 一样,只发生在主机轮询设备的时候,并不是由设备触发的硬件中断。 同步传输适用在以固定速率或特定时间内的传输,常用来传输量大、实时性 强但准确性要求不高的数据,通常情况下,音频、视频设备以这种方式和主机通 信。当收到错误的数据时,同步传输不会自动重新传送,所以它必须能够容忍偶 然发生的错误。 同一时刻、多个不同传输类型的外设可能都希望和主机交换数据,但是它们 共享着主机的数据通道,因此必须按照一定的顺序进行。在分配u s b 带宽的时 候,u s b 首先预留一定的带宽给控制传输,这是因为u s b 系统允许随时插入新 的设备并进行配置。 对于同步和批传输,必须要求足够的带宽来保证在一定的时间内完成,如果 带宽不够,主机就拒绝配置这两类传输。另外,批传输可以使用控制、中断和同 步传输未使用的全部剩余带宽;当总线很忙的时候,批传输可能被延迟,而当总 线空闲的时候,批传输会进行得非常快。 2 2 3 传输事务 事务( t r a n s a c t i o n ) 格式根据端口类型而变化。 控制传输事务最少有建立和状态2 个事务阶段,同时有选择性地包括数据 ( d a t as t a g e ) 阶段。图2 - 4 说明了建立( s e t u p ) 事务的格式,它类似于输出, 但是使用的是s e t u pp i d 而不是o u tp i d ,数据阶段上总是使用d a t a 0p i d 。 收到建立的f u n c t i o n 必须接受建立数据并用a c k 应答:如果数据被损坏,则丢 弃数据且不返回握手。 第二章u s b 协议原理 图2 _ 4 控制建立事务 批处理事务类型的特点是以错误检测和重试的方式保证主机和f u n c t i o n 之间 的数据的无错发送的能力。图2 5 所示,批处理事务是由标记,数据和握手包构 成的三时相( t h r e e p h a s e ) 的事务。在某些流控制和挂起条件下,数据时相被 握手信号替换,从而产生了没有数据传输的两时相的事务。 图2 - 5 批处理事务格式 2 第二章u s b 西议坂理 中断事务可由输入或输出构成。如果端e l 没有等待事务的中断可供返回, f u n c t i o n 在数据时相里返回n a k 握手;如果中断端口的停止特征被设置了, f u n c t i o n 将返回s t a l l 握手;如果中断是等待事务的,f u n c t i o n 像数据包那样返回 中断信息。当端口为实际的中断数据使用中断传送机制的时候,必须遵循数据切 换( d a t at o g g l e ) 机制【1 】。图2 6 说明了中断事务格式。 图2 - 6 中断传输事务 如图2 - 7 所示,同步事务有标记和数据时相而没有握手时相。同步事务不支 持握手时相或者重试能力。 图2 - 7 同步事务格式 第二章u s b 协议原理 2 。3u s b 通信协议标准 u s b 的传输事务都是由信息包( p a c k e t ) 构成的,根据不同的事务类型就有 不同的信息包;每个事务包含一个、两个或三个信息包。每个信息包中包含都一 个p i d ( p a c k e ti d e n t i f i e r ,包标识符) ,用来识别包类型。 2 3 1 刚d 类型和信息包类型 每个u s bp a c k e t 都从8 位的s y n c 字段开始,紧跟着的是8 位的p i d 。如图2 8 所示,p i d 3 :0 1 指出了它的类型,p i d 7 :4 是对p i d 3 :0 求反码产生的检验码。 (lsb)(msb) ! 亚叵卫丑亘卫固夏亚亚 图2 8 p i d 格式 表2 2p i d 和包类型 r 。r 。2 一严2 。f 。一 i 纠d 类型| p i d 名称 | p i d 3 :0 :f 描述 | o u t0 0 0 1bl 主机至l j f u n c t i o n 事务 ;一一l 一 = - := = = 一= = = = = 二二二一一一- - = = =| i n j1 0 0 1 b f u n c t i o n 到主机事务 l。一=一l-=一=暑-:-=。一。=一 | s 0 f 0 1 0 1 b:| s t a r to ff r a m e 和帧号 = = = 一b = 一= 譬= = = 一 s e t u p :l110 1b :l 主机至l j f u n c t i o n 建立一个控制传输 f 。 r 一一厂一一一一 d a t a o;0 0 1 1 bl 偶数的d a t ap i d l 一一l 一= = = = l - - - 、一一一一。一 d a t a l i1 0 1 1 8| 奇数的d a t ap i d 0 = = = = 一j ,二一二- 一- = 蕊一一一一。一一。一 | d a t a 20 1 1 1 bl 在微帧中同步传输的高速d a t ap i d :m d a t a 一一 1 1 1 1 b 在微帧中同步传输的高速d a t ap i d 。 r “r 一一一f 一i a c k 0 0 1 0 b ;| 接收器收到无错p a c k e t i p 一_ = v = ;= = _ = v = _ 二一。 。= 。= = 一= 。- = u = u 一。l h a n d s h a k ! n a k 1 0 1 0 b l 接收端不能接收或发送端不能发送 ; 一一一,j 。一= 一一= 一、= = 。一。一| e s t a l l;1 1 1 0 bl 端1 :3 挂起或控制传输请求不支持 l j + j f 一。”。j 2 。一2 。f 2 一? 。”+ “2 2 一2 。一一j n y e t 0 1 1 0 b | 接收器还没做回应| 第二章u s b 协议原理 p r e1 1 0 0 b( t o k e n ) 主机发送的前同步信号,允 许下行的低速设备 e r r1 1 0 0 b ( h a n d s h a k e ) s p l i t 事物有错 s p e c i a ls p l l t1 0 0 0 b( t o k e n ) 高速数据分割传输 p l n g0 1 0 0 b( t o k e n ) 在高速数据流中检测批终端 或者同步终端 r e s e r v e d0 0 0 0 b保留的p i d 壤中p i d 以m s b ( 最高有效位) 在前的顺序表示;而数据传输时l s b ( 最低有效位) 在前。 u s b 定义了四大类p i d :标记( t o k e n ) 、数据( d a t a ) 、握手( h a n d s h a k e ) 和特殊p i d ( s p e c i a l ) ,每一类又分为若干个,如表2 - 2 所示。u s bp a c k e t 相对 应的就分为t o k e n 包、s o f 包、d a t a 包,h a n d s h a k e 包和s p e c i a lp i d 包。依据 包种类的不同,p i d 后面可能跟着地址、数据、状态信息或是帧号以及循环冗余 校验码。 2 3 2t o k e n 包 u s b 事务总由一个t o k e n 包开始,只有主机能发出t o k e n 包。图2 9 显示了标 记包的字段格式。标记由p i d ( i n 、o u t 或者s 日- u p ) ,a d d r 和e n d p 构成。 图2 - 9t o k e n 包格式 如图2 9 所示,t o k e n 包同时使用2 种地址字段:7 位f u n c i i o n 地址( a d d r ) 和4 位端口地址( e n d p ) ,它们指出了t o k e n 通讯操作的目的地,任何字段有错 都将导致此t o k e n 包被忽略。 a d d r 6 :0 总共可以定义1 2 8 个设各地址:上电或者复位后,设备的a d d r 第二章u s b 协泌原理 默认值为零,主机通过枚举( e n u m e r a t i o n ) 对设备指定其地址。另外,e n d p 3 :0 】 给逻辑设备带来了更灵活的寻址方式。 2 3 3s o f 包 s o f 包是特殊的t o k e n 包,由s o fp i d 和帧号( f r a m en u m b e r ) 字段构 成,如图2 1 0 所示。11 位的帧号是在每一帧的最初时刻被发送,主机每过一帧 就将帧号内容加1 ,达到其最大值7 f f h 时归零。s o f 事务不要求设备返回任何 信息,因此不能保证发送的s o fp a c k e t 都能被收到。 e 1 i 瓣咕5 哺$ 七iti 图2 1 0 s o f 包格式 2 。3 4d a t a 包 数据包则e 扫p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 风光储项目运营管理方案
- 2026中国中药配方颗粒质量标准统一与市场扩容机遇分析
- 城市排水管网QV检测方案
- 云计算企业人力资源发展框架
- 夜景亮化工程规划设计方案
- 停车场区域联动管理方案
- 市政工程原材料检测技术方案
- 压力容器安装及调试竣工验收报告
- 农村供水设施提质及管网延伸工程经济效益和社会效益分析报告
- 2026年福建宁德福安市统计局招聘40名备考题库及一套答案详解
- 26年宫颈癌靶向疗效评估规范
- 2026年高级会计师真题及答案解析
- 2025年三峡集团社会招聘考试笔试试题及答案
- 2026年气象局机关遴选公务员面试题
- 2026年全国电工(中级)职业技能考试题库(附答案)
- 2026年病理科技师面试常见问题与专业解答
- 2025年湖南长沙市初二学业水平地理生物会考真题试卷+解析及答案
- (二模)2026年广州市普通高中高三毕业班综合测试(二)数学试卷(含答案详解)
- 2026年市级科技馆电气维护岗招聘笔试电路故障排查题
- JJF1033-2023计量标准考核规范
- 江苏省小学科学实验知识竞赛题库附答案
评论
0/150
提交评论