(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf_第1页
(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf_第2页
(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf_第3页
(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf_第4页
(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(微电子学与固体电子学专业论文)soc总线平台的设计与验证研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 电子产品对系统性能的要求越来越高,传统的设计方法正面临越来越大的挑战,新的设 计方法和设计思想呼之欲出。s o c ( s y s t e mo nc h i p ) 技术,将原来由许多芯片完成的功能,集 中到一块芯片中完成,为系统性能的进一步提高提供了一种很好的解决方案。由于在面积、 速度、功耗等方面的巨大优势,s o c 技术正逐渐成为i c 设计的主流。 s o c 的出现带来了一场i c 设计思想和设计方法的革命。s o c 虽然提高了系统的性能,但 却成倍地增加了单块芯片的设计规模,设计的复杂度随之增加。为了应对因此带来的挑战, 可复用技术得到广泛的使用。由于s o c 中不只集成了硬件,同时也集成了软件,而且软件部 分的设计占据越来越重要的地位,软硬件协同的设计技术也越来越受关注。 随着电路规模的不断提高,复用技术的层次也不断提高,从基于模块的复用提升到基于 平台的复用,基于平台的设计方法已经成为s o c 设计的最佳解决方案。特别是基于总线平台 的设计,不但可以提高设计效率而且提供了统一的接口标准,有利于系统开发中最大限度的 i p 复用。 a r m 公司推出的a m b a 总线。是一款功耗低、速度快、面积小的s o c 总线,同时其高 速总线a h b ( t h ea d v a n c e d h i g h p e r f o r m a n c eb u s ) 和低速总线a p b ( t h ea d v a n c e dp e r i p h e r a l b u s ) 的两级总线结构提高了传输效率,非常适用于多数嵌入式系统。a m b a 总线己成为业 内使用最广泛的s o c 总线,成为实际上的总线标准。 本文设计了一个基于a m b a 的总线平台,由a h b 和a p b 两组模块组成。a m b aa h b 总线的相关模块包括c p u 的a j 珥w r a p p e r ,d m a ,a h b 仲裁器和a h b 译码器;a m b a a p b 总线的相关模块有a p b 桥,u a r t ,定时器和中断控制器。文章对每个模块都给出了r t l 级 的设计细节,包括每个模块的外部接口,内部结构,仿真结果以及综合结果,并对整个平台 提出了一套完整的验证方案。 在文章的最后将a m b a 总线平台作为标准平台应用到了h d t vs o c 集成芯片的设计中, 实践证明,使用此平台可以在保证质量的情况下大大提高设计效率。 关键词:s o c 总线,a m b a ,基于平台的设计,软硬件协同设计,软硬件协同验证 a b s t r a c t a st h er e q u i r e m e n to fe l e c t r o n i cp r o d u c t sf o rs y s t e mp e r f o r m a n c eb e c o m e sh i g h e ra n dh i g h e r , t r a d i t i o n a li cd e s i g nm e t h o d o l o g yi sc o n f r o n t e dw i t hg r e a tc h a l l e n g ea n dn e wm e t h o d o l o g yi s v i v i d l yp o r t r a y e d s o c ( s y s t e mo nc h i p ) d e s i g n ,w h i c hi n t e g r a t e ss e v e r a lc h i p so nas i n g l e c h i p , p r o v i d e sag o o ds o l u t i o nt oi m p r o v es y s t e mp e r f o r m a n c e s o cd e s i g nh a sb e c o m e t h em a i n s t r e a m i nt h ef i e l do f i cd e s i g nb e c a u s eo f t h ea d v a n t a g eo f s m a l l e ra r e a , h i g h e rs p e e da n dl o w e rp o w e r s o cd e s i g nc a u s e sap r o f o u n dr e v o l u t i o no f l cd e s i g nm e t h o d o l o g y a l t h o u g hi ti m p r o v e ss y s t e m p e r f o r m a n c e ,s o cd e s i g ni n c r e a s e st h es c a l ea n dc o m p l e x i t yo fas i n g l e - c h i pg r e a t l y , t h e nr e u s e m e t h o d o l o g yi sp u tf o r w a r dt oa n s w e rt h ec h a l l e n g e s o cd e s i g ni n t e g r a t e sn o to n l yh a r d w a r eb u t a l s os o f t w a r e a n ds o ,h w s wc o d e s i g nt e c h n o l o g yb e c o m e sm o r ei m p o r t a n t w i t ht h eg r o w t ho fc i r c u i tc o m p l e x i t y ,r e u s el e v e l sh a v er i s e df r o mm o d u l eb a s e dl e v e lt o p l a t f o r mb a s e dl e v e la n dp l a t f o r mb a s e dd e s i g nh a sb e c o m et h eb e s ts o l u t i o nt os o cd e s i g n s p e c i a l l yt h eb u sp l a t f o r mb a s e dd e s i g nc a nn o to n l yi m p r o v ee f f i c i e n c yb u ta l s op r o v i d ea n u n i f o r mi n t e r f a c es t a n d a r d ,w h i c hw i l lh e l pt om a k et h eb e s tu s eo f i pc o r e s a m b af r o ma r m c o r p i sas o cb u sw i t hl o wp o w e r , h i g hs p e e da n ds m a l lf l r e a i ti n c l u d e st w o b u s e s :h i g h s p e e db u sa h b ( t h ea d v a n c e dh i g h - p e r f o r m a n c eb u s ) a n ds l o w s p e e db u sa p b ( t h e a d v a n c e dp e r i p h e r a lb u s ) ,t h i st w o - l e v e lb u sa r c h i t e c t u r ec a ni m p r o v et r a n s f e re f f i c i e n c yg r e a t l y a n di sv e r ya p p l i c a b l et oe m b e d d e ds y s t e m a m b ah a sb e c o m et h em o s tp o p u l a rs o cb u si nt h e i n d u s t r ya n db e c o m et h es o cb u ss t a n d a r da c t u a l l y i nt h i sd i s s e r t a t i o n ,a na m b a - b a s e db u sp l a t f o r mi sd e s i g n e d i ti sc o m p o s e do fa h bm o d u l e s a n da p bm o d u l e s a h bm o d u l e si n c l u d ea h bw r a p p e ro fc p u ,d m a ,a h ba r b i t e ra n da h b d e c o d e r ;a p bm o d u l e si n c l u d ea p bb r i d g e ,u a r t , t i m e r sa n di n t c t h er t ld e s i g nd e t a i lo f e v e r ym o d u l e ,i n c l u d i n ge x t e r n a li n t e r f a c e ,i n t e r n a ls t r u c t u r e ,s i m u l a t i o na n ds y n t h e s i sr e s u l to f e v e r ym o d u l e ,i si n t r o d u c e da n da ne f f i c i e n tv e r i f i c a t i o nm e t h o d o l o g yi sp r e s e n t e d a tt h el a s tp a r to f t h i sp a p e rt h ea p p l i c a t i o no f t h ea m b a - b a s e db u sp l a t f o r mi nt h eh d t vs o c i si n l x o d u c e d i t sp r o v e nt h a tt h eu s eo f t h ep l a t f o r mi m p r o v e sd e s i g nq u a l i t ya n de f f i c i e n c yg r e a t l y k e y w o r d s :s o cb u s ,a m b a ,p l a t f o r mb a s e dd e s i g n ,h w s wc o d e s i g n , h w s wc o - v e r i f i c a t i o n 1 1s o c 的兴起 第一章概述 随着集成电路的不断发展,各种电子产品不论是在性能、体积还是在低功耗方面都取得 了飞速的进步。但是技术的发展速度仍然满足不了日益增长的市场需求,传统的设计方法正 面临越来越大的挑战。 现在的电路系统往往是由多个i c 芯片在印刷电路板( p c b ) 上拼接而成的,尽管单个i c 的速度不断提高,功耗也不断降低,但由于p c b 板上各i c 芯片之间存在很大的连线延时, p c b 板的可靠性以及体积过大等问题,系统的整体性能受到极大的限制。随着系统向高速率、 低功耗、低电压和多媒体、网络化、移动化的发展,系统对电路的要求越来越高,传统集成电 路设计技术已无法满足性能日益提高的整机系统的要求。 而当今流行的s o c ( s y s t e mo nc h i p ) 技术则为系统性能的进一步提高提供了一种很好的 解决方案。s o c 技术是集成电路工艺不断发展的产物,随着v l s i 工艺技术的发展,单个芯片 上可以集成更多的晶体管,使得整个系统集成到一块芯片当中成为可能。 顾名思义,s o c 就是将整个系统集成到单一半导体芯片上,它囊括了各种不同的模块, 从硬件到软件,从数字逻辑到模拟器件到射频器件,一个完整的系统所必备的所有部分都集 成其中。软件部分主要包括操作系统( o s ) 、中间件( m i d d l e w a r e ) 和应用软件。数字逻辑主 要包括c p u 、d s p 、存储器、控制单元和互联逻辑、专用模块以及各种外设。模拟部分主要包 括a d c d a c 、p l l 等。射频部分主要指r f 发送接收器。 s o c 是单芯片系统,它将多个芯片之间的连线转移到了内部,不但降低了连线延时,减 小了系统的体积,而且封装也大为简化了。各个功能模块的工作环境趋于一致,并且都处于 密封状态,极大地增强了系统的抗干扰能力。不仅如此,由于s o c 设计中普遍采用 i p ( i n t e l l e c t u a lp r o p e r t y ) 技术,大大缩短了产品的上市时间,这对于电子产品的研发和生 产而言,意义尤其重大。 s o c 的兴起,带来了i c 设计思想和设计方法的一场革命。s o c 不是芯片功能的简单叠加, 为了获得最佳方案,s o c 的设计必须在一开始就从整个系统的功能和性能出发,用软硬件协 同的设计和验证方法,基于各种i p 库,自上而下地进行设计。它所关注的焦点不再是某个功 能模块的设计,而是如何充分地利用现有的i p 资源,在最短的时间里设计出符合要求的应用 系统。下面我们就介绍一下s o c 设计中的两个关键性的技术。“” 1 2s o c 的关键技术 1 2 1 i p 复用技术 数百万门规模的s o c 设计,不能一切从头开始,要将设计建立在较高的层次上。与软件设计 中的复用技术类似,s o c 设计中大量采用了i p 复用技术。基于i p 模块的s o c 设计方法,其基本 思路是通过提高系统设计的重用层次,充分利用现有的i p 资源,根据系统需求选用适当的i p 模 块,进行系统集成设计。基于i p 模块的s o c 设计方法采用了i p 模块而不是基本逻辑或电路单元 作为基础单元,以功能组装代替功能设计,提高了设计者的设计能力,能够较快地完成设计,保 证设计成功,得到价格低的产品,满足市场需求。 s o c 的设计重用是建立在i p 模块的基础上,它是将已经验证的各种宏单元模块电路制成 i p 模块,便于以后的设计重用。i p 模块作为片上系统设计的基本单元,具有独立的知识产权, 可以进行转让和出售。通常有以下几种i p 模块的存在方式: 硬i p ( h a r di p ) :一种以g d s i i 文件形式进行集成的核,它是已经经过全部设计、布局、 布线的核。 软i p ( s o f ti p ) :一种以可综合的r t l 代码交付的核。 固i p ( f i r mi p ) :是在软核的基础上开发的,是一种可综合的并带有布局规划的软核。 目前设计重用主要依靠固i p ,将r t l 级描述结合其体标准单元库进行逻辑综合优化,形 成门级网表,再通过布局布线工具最终形成设计所需的硬i p 。软i p 提供了更加灵活的产品, 可以结合具体应用,适当修改描述,并重新验证,满足具体应用要求。 开发具有知识产权的i p 模块。基于重用的设计构思、设计和验证,是基于i p 模块的片上 系统设计方法实现的重要手段。i p 的质量是i p 模块的最重要的因素,i p 模块必须是可重用、 可再定向、可配置、可升级的,而且i p 升级应符合可重用标准以确保升级后i p 模块的可重 用性。2 “4 1 1 2 2 软硬件协同设计 传统的i c 设计方法采用硬件先行的方法,即先设计硬件,再根据算法设计软件。而在深 亚微米设计中,硬件的费用是非常大的,当设计完成后,发现错误进行更改,要花费大量的 费用和时间。在对时间和费用要求苛刻的今天,此种方法是不可行的。在s o c 设计中,为了在 缩短开发周期的同时达到最佳的设计效果,就必须使用软硬件协同设计技术。9 “i ” 软硬件协同设计可以使软件设计者在硬件完成之前接触到硬件模块,从而更好地设计硬 件的驱动、应用程序、操作系统等软件,同时可以使硬件设计者尽早接触软件,为软件设计 者提供高性能的硬件平台,减少了设计中的盲目性。对软硬件的划分要从系统的角度出发, 寻找i 删s w 划分的最佳临界体系结构,以达到预定的设计目标。软硬件划分好以后,软件和硬 件的设计一直是保持并行的,在设计过程中两者交织在一起,互相支持,互相提供开发的平 台。 软硬件协同设计的流程如图1 1 所示。首先用单一的s y s t e m c i 若言对整个系统进行统一的 描述并进行模拟仿真和系统级功能验证,然后进行软硬件的划分,评估各种划分方案,找到 最佳的体系结构。接下来分别对软件和硬件部分进行细化设计,在此过程中,软硬件不断地 联合仿真,互为验证平台,以便尽早查出可能出现的错误。软件和硬件的设计都完成以后, 进行最终的系统测试。 可见,软硬件协同设计技术与传统的i c 设计方法有着本质的区别。软硬件协同设计包括 系统描述、软硬件划分和软硬件协同综台三个环节。在每个环节中,软件和硬件设计组都互 相配合,互相协作,并行设计的思想贯穿始末。这就是软硬件协同设计技术的核心。” 图1 1 软硬件协同设计的流程 1 3 基于平台的设计方法学 根据复用程度的不同,s o c 设计方法可以分为基于模块( b l o c kb a s e d ) 和基于平台 ( p l a t f o r mb a s e d ) 两种a 基于模块的设计方法,是指在设计中大量使用现成的i p 功能模块。 以缩短开发周期,是一种基于模块层次的复用技术。而基于平台的设计方法,是指在设计中 使用已有的集成平台,芯片的开发直接在集成平台上进行,是一种系统级的复用技术。可见, 基于平台的设计是i p 复用技术的扩展,它使基于个别模块级的复用提升到基于整个架构的复 用,因而可以大大提高设计效率,减小设计风险。基于平台的设计方法已经成为s o c 设计的最 佳解决方案。嘲 平台可以被定义成一个软硬件集成的结构。此结构满足一系列的结构限制条件,使软硬 件模块可以被重用。具体来说,平台是软、硬i p 模块及片上通信结构的结合体,一般还包括 嵌入式c p u 、实时操作系统( r t o s ) 、外围接口模块、中间件等。此外,还包括将此平台应用于 某一特定领域的适应性设计。 根据平台的架构特点可以将平台分为三类: 第一种是“全应用平台”,即平台供应商已经为用户提供了个完整的硬件和软件架构 系统,需要以此为参考设计,在此基础之上进行针对具体应用的开发。此类平台通常有一个 处理器、总线和一些专用模块,女h m o d e m 或m p e g 解码器。例如p h i l i p s 公司的n e x p e r i a 和t i 的 o m a p 多媒体平台、亿恒科技的m g o l d3 g 无线平台、p a r t h u s 的蓝牙平台以及a r m 的p r i m e x s y s 无线平台。 第二种是“以处理器为中心的平台”,它侧重于访问可配置的处理器而不是完整应用 如i m p r o vs y s t e m s 、a r c 、t e n s i l i c a 和t r i s c e n d 公司的产品。 第三种是“以通信为中心的平台”,它定义了互连架构但通常不提供处理器或全部应用。 女l s o n i c s 公司的s i l i c o n b a c k p l a n e 和p a l m c h i p 公司的c o r e f r a m e 结构。在嵌入式系统中, 通常是用总线通信的,所以这种平台又叫做总线平台。 基于平台的设计过程可以分为两个阶段:平台的设计和基于平台的开发。平台供应商负 责针对某一类应用领域,设计一个通用的平台架构,为针对具体应用的设计者提供一个参考 平台和快速原型。而设计者需要从预先定制的各种平台当中选择适合需求的平台,以此平台 为基础,对此平台做出适当的修改,以达到功能实现和性能优化的目的。 如图1 2 所示,平台供应商负责针对某一应用提供一个参考设计( r e f e r e n c ed e s i g n ) 。具体 应用产品的设计者从这个参考设计着手,如果参考平台提供的某些功能在产品中并不需要, 比如参考设计提供了以太网接口,而产品中不需要这一接口,那么就需要将相关的硬件模块 和软件程序、设备驱动从系统中除去。另外一方面,如果产品需要某一功能但是参考设计没 有提供,那么就需要在软件和硬件中加入相关的功能模块。 r e f e r e n c ed e s i g n d e r i v a t i v ed e s i g n 1 4 论文内容和结构 图1 2 基于平台的设计方法 本文的研究重点是s o c 总线平台的设计和验证,给出了一种基于a m b a j 6 的总线平台架 构,对此平台进行了详尽的设计,并提出了一套可行的验证方案。首先在第一章介绍了s o c 兴起的背景,继而介绍了s o c 设计中的两个关键技术一一i p 复用技术和软硬件协同设计技术, 和s o c 的重要设计方法一一基于平台的设计方法学。第二章则主要介绍了a r m 公司的a m b a 总线规范。第三章是本文的重点,给出了一种基于a m b a 的总线平台架构,说明了平台的 r t l 级设计方法,并提出了平台的验证方案。第四章给出了a m b a 总线平台在h d t vs o c 集成设计中的应用,实践证明,使用此平台可以在保证质量的情况下大大提高设计效率。第 五章对全文进行了总结。分析了本课题的不足之处,并明确了有待探索的方向。 5 第二章a m b a 总线规范 2 1 a m b a 总线概述 a 皿魄规范定义了三种总线: ( 1 ) a 船( a d v a n c e dh i g h p e r f o r m a n c eb u s ) :用于连接高性能系统模块,执行流水线操作, 它支持突发数据传输方式及单个数据传输方式,所有时序参考同一个时钟沿; ( 2 ) a s b ( a d v a n c e ds y s t e mb u s ) :是a m b a 系统总线的第一代,特点与a h b 类似,但性能比 a h b 差,目前已基本被a h b 所取代,本文的a m b a 总线平台也不包括该部分内容。 ( 3 ) a p b ( a d v a n c ep e r i p h e r a lb u s ) :是一个简单接口支持低性能的外围接口,时序较a h b 大为简化,结构简单,更注重低功耗的要求。 一个典型的a m b a 系统如图2 1 所示。高速模块如c p u ,o n c h i pm e m o r y 和d m a 设备 通过a m b a a h b 进行通信,而低速模块如u a r t ,t i m e r ,k e y p a d ,p i o 则接入a m b a a p b 总线,a h b 和a p b 之间通过桥接模块b r i d g e 进行数据传输。 删 d 幢n 蚺d h 珞翻p w f 蹦| i c 聿b 凇 棚b o 硼酌宰一玮耳n 螬,鼬 p 妇e h 阳d 坤e r a t i o n 。9 u r s t 惝n s 伯 拍枷目脚eb u sm a s t e r s s o 矗t 怕m s a c t j 。r 悸 麟毒a 聃碰鼬dp 曩靠p 礴lb 瞄舻斟 + l o w f o w m “n c h 鲥音d 1 ,f 雠a n do o n t r o i s i m 0 把 嘲向 s 蝴l e f o rm a n y 嘶蜘唰s 图2 1 一个典型的a m b a 系统 2 2a m b a a h b a h b 是高性能的系统总线,支持多主设备系统,可以提供高速的操作。a h b 总线的内部连 接情况如图2 2 所示,图中有3 个主设备和4 个从设备。a h 8 总线具有访问的唯一性,即在 菜一时刻只允许一个主设备占用,由哪一个主设备占用总线需经a r b i t e r 进行总裁。中央译 码器d e c o d e r 控制多选器,以筛选从设备返回的数据及各种状态信息。 图2 2a h b 总线的内部连接图 2 2 1a h bm a s t e r 和a h bs l a v e a h bm a s t e r 即a h b 总线上的主设备,可以通过提供个地址和控制信号来触发读操作或 写操作。图2 1 中的c p u 和d m a 就是典型的a h bm a s t e r 。a h bs l a v e 即a h b 总线上的从设备, 它在一定的地址空间内对读操作和写操作产生响应。a h bs l a v e 还可以返回访问成功、访问 失败等状态信息。 图2 3a h bm a s t e r 和a h bs l a v e 的点对点通信 a h bm a s t e r 和a h bs l a v e 的点对点通信如图2 3 所示。各信号的详细描述见表2 1 ,表 中的非向量信号其数据宽度均为1 。 信号名来源 描述 h c l k s y s t e m a h b 总线的时钟信号,上升沿有效 h r e s e t ns y s t e m a h b 总线的复位信号,低有效 h a d d r 31 :o lm a s t e r a h b 总线的地址线 h s e l xd e c o d e ra h bs l a v e 的片选信号 h w 王u t em a s t e r a h b 总线的读写信号,高写低读 h t r a n s 1 :0 】 m a s t e ra h b 总线的传输类型指示信号,分 n o n s e q u e n t i a l ,s e q u e n t i a l ,i d l e 和b u s y 四种类型 h s i z e 2 :0 m a s t e r a h b 总线的数据宽度指示信号。可以支持8 b i t , 1 6 h i t 和3 2 h l t = 种佶蝓 f m u g s t 2 :o 】 m a s t e ra 黜总线的猝发操作指示信号 h w d a t a r 3 1 :0 1 m a s t e ra h b 总线的写数据线 h r d a t a 31 :o s l a v e a h b 总线的读数据线 h r e a d ys l a v e r e a d y 信号,可以通过拉低此信号来延展总线周期 h r e s p 1 :0 】 s l a v e状态指示信号,可以返回o k a y 和e r r o r 两种 状态 2 2 2a h b 仲裁器 如图2 4 所示,在多主设备系统中耍用到仲裁器a r b i t e r 。a r b i t e r 是a h b 总线的仲裁器, 用以确保在任何时刻只有一个m a s t e r 占用总线。a r b i t e r 通过一定的仲裁机制决定在申请总 线的各m a s t e r 中哪个m a s t e r 优先级最高。a h b 仲裁器的接口图如图2 4 所示,各信号的 详细描述见表2 2 ,表中的非向量信号其数据宽度均为1 。 9 h b u s r e o x l 一 h l 0 c i 【) 【1 一 蛐u s r e 0 x 2 一 i g r a n t x l。 h l 0 c k x 2 l g r n t x 2 一 h b u s r e 0 x 1 6 一 a h b h l ( ) c k x l 6 a r b i t e r h g l l n t x l 6 珈 a s t e r 3 :0 。 础s t 2 :0 3 珏臣a s t l o c k h r e a d y h c l k 脓e s e t n 一 表2 2a h b 仲裁器的接口信号 图2 4a h b 仲裁器的接口图 信号名 方向描述 h c l k m p t i t a h b 总线的时钟信号,上升沿有效 h r e s e t h i n p u t a h b 总线的复位信号,低有效 h b u s r e q x l 1 6i n p u t 各主设备的总线申请信号 h l o c k x l 1 6 i n p u t 各主设备的锁定总线请求 h b u r s t 2 - 0 i n p u t a i m 总线的猝发操作指示信号 h r e a d y i n p ma h b 总线的r e a d y 信号 h g r a n t x l 1 6 o u t p u t a h b 总线的授权信号,用以通知相应的 m a s t e r h m a s t e r 3 :0 o u t p u t a h b 总线的授权信号,落后h g r a n t x 一个 时钟,用以控制各i t i u x 的开启 h m a s t l o c k o u t p u t 总线锁定指示信号 a r b i t e r 收到总线申请信号h b u s r e q x 后,对总线进行仲裁,仲裁结果通过h g r a n t x 输出,一个h c l k 后,使h m a s t e r 有效,以开启相应的m l l x ,让选中的m a s t e r 占用总线a 没有等待周期的授权过程如图2 5 所示。 0 h c l k h b u 8 r q x h 8 r a n t l 朔瞩 軎1 e f t 疆:珥 触d 限倒棚 h w d a , t a 3 1 :o 】 t tt 2 h r g他 。_ _ _ _ 斟 甜 埽 勰 琏 “ 舡 毯慰b p】 图2 5 没有等待周期的授权过程 带有等待周期的授权过程如图2 6 所示,因为h r e a d y 被拉低,必须插入等待周期,推 迟h m a s t e r 信号的到来。 m 3 _ m 哪期 w 、嘲3 t 棚 i i w i m t a l 3 * :a l n - h蛐v - - 岫 目 群 硝 聪h 虻 l 鍪l d 翻 敷 强 图2 6 带有等待周期的授权过程 b u r s t 传输下的总线交接如图2 7 所示,由于a h b 总线上正在进行b u r s t 操作,必须等待 b u r s t 操作完成,才能进行总线交接。 撙甄阽硼铂l m h g 潞嘲一 汹r ”h 1 m r i “ 晡帆翻鬻玛棚 h m 岬棚 p m l 嘴噼叶* 嘲 m 日糊 圳啊j q l 由 h w o a t n 3 1 :珥 ”佳韩仆 6”mw l 型 盯 留 馈 尉 h - h 尉烈h 爆一鼎 龇 h l 【 懋 搿 h t 4 d “ g 。1 h舡 摄 h t h匝 烈 h 驻蹑髓逐) 图 融跹 爿vv v 愎埘 髓甜 址 2 2 3 基本传输 图2 7b u r s t 传输下的总线交接 一个a h b 传输包括两个阶段:地址传输阶段和数据传输阶段。最简单的读写操作如图2 8 所示,主设备在h c l k 的上升沿将地址信号及控制信号发送到总线上,然后从设备在下一个时 钟的上升沿采样地址信号和控制信号并作出相应的回应,此回应在第三个时钟的上升沿由主 设备接收。 实际上,a h b 采用了流水线结构,地址传输阶段和上一次传输的数据传输阶段在时间上 是重叠的,这样可以保证a h b 传输在单时钟内就能完成。 h c u ( h r 精1 :0 1 c o n 臼o i h w o a i a 社1 :o l h r 邑 d y h r o a t a 3 1 :0 1 ll 烈慰0 慰c 撕州慰您 慰圃游圆 黑 翰阻 涮 黔i i 簿藏镬嚣) 臣 图2 8 基本的读写操作 从设备还可以在传输过程中插入等待周期,如图2 9 所示,从设备通过拉低h r e a d y 信 号而延展了总线周期。 r 瑚l 嚼 m m m 翔趣 m 日e w m m j l t a l 3 1 啦 h m - d b4 抽 |i 慰一x i x跹 ) 固( 一 麟) 臣 慰x j 鬟 d a m ) 虹 i ) 麟媳a嘲随 慰烈麟 糕纛i 烈i ) f a t 、a,灯 2 2 4 传输类型 图2 9 带有等待周期的操作 a h b 传输可分成4 种类型,如表2 3 所示。 表2 3 传输类型 h t r a n s i :0 l 类型描述 0 0i d l e 表示没有数据传输,当主设备申请到总线又暂时不传输数 据时使用。 0 lb u s y 表示主设备正在进行猝发传输,但下一个传输不能及时进 行。 1 0 n o n s e q 表示该传输是单数据传输或猝发传输的第一个传输 1 1 s e q 表示该传输是猝发传输的后续传输,而不是第一个传输 图2 1 0 是a h b 传输类型的一个例子。 m c l l ( 砰n 强鹚n :e l 融r p :a i 删鼯1 - 降0 1 h w o a t a 弘1 :o 】 h 骶 z w i 饿o a t a 1 :o l t l他t3t t s w t 7体 i f 一i 一 x x m 日) ( ;) b 慰8 qx x s 自口 x 鬟 ) ( j (救 ) :) ( 一) ( ) c 一 ) c = ;( 一) c x x xx 鬟 ) 。 x 簧 x x ) 。 ) 。(蕊) 。(恁墨k jxx 噩 乜v vv 一镪v a ) ( ) (黔弛) ;器j ( ) ( 一“工= =黔。萼j i 。; i 。世竺纂薯鬻滋 。 2 2 5 猝发操作 图2 1 0a 皿传输类型的例子 越 b 协议规定了8 种猝发操作,如表2 4 所示。按猝发长度可分为4 、8 、1 6 拍、单个传 输和不定长度猝发;按地址的变化特征可分为递增式猝发和环绕式猝发。递增式猝发中,地 址是连续增加的。而环绕式猝发中,如果传输的起始地址没有按猝发长度( 按字节数计算,等 于节拍数传输尺寸) 对齐,则当地址递增到地址边界时将环绕返回。 表2 4 猝发操作的类型 h b u r s t 2 :0 】 类型描述 0 0 0s i n g l e单个传输 0 0 1 i n c r不定长度的递增式猝发 0 1 0w r a p 44 拍环绕式猝发 1 4 0 1 li n c r 4 4 拍递增式猝发 1 0 0w r a p 8 8 拍环绕式猝发 1 0 1i n c r 8 8 拍递增式猝发 1 1 0w r a p l 6 1 6 拍环绕式猝发 1 1 l i n c r l 61 6 拍递增式猝发 8 拍环绕式猝发操作如图2 1 1 所示。 雌l k 啪骁 雌毫【朱铘 脚啮* 啦t :卅 删靛藏蘑翠:岫 h 帮雌 啦偿取蝴 h 剁的t 脚伽 h b 属氍1 柚i l 盘主 a r h 轴a t a 3 1 :田 f 1他伯h删1 |t 7僧t 尊t l o l l 一 ) ( x 。默一x ( 一“一 ) ( ;) ( 一掰蛳:( ) 一般一 烈, ) ( x x x 一) ) ( o x x 一斑o m3 ( ;j ( o e) ( ) c 一 ) ( _ ) c j f ;j ( ) 。 题 ) ( j c ) 。c 爆 x x 双) 固置砭0 盔耀) 磁) 匿) 匮怒遁) 固灌) 墨) 。 vvvvvvvvv垃 ) 0 c鬈j - ) c 露! ) c _ j 蠕j c ;_ l 臻摇黔i 惩垤:淫黔”“惩¥:爝。 2 2 6 从设备传输响应 图2 1 18 拍环绕式猝发 在a h b 的数据传输过程中,从设备除了可以通过拉低h r e a d y 信号来延展总线周期外, 还会通过h r e s p 信号反馈更为详细的状态信息。h r e s p 可以反应4 种状态,如表2 5 所示( 本 文中未实现s p l i t 模式) 。 表2 5 从设备的传输响应 h r e s p i :o 】 类型描述 0 0o k a y 数据传输正常 0 1e r r o r 出现错误 i or e l r y 当前传输没有完成,请求重拭,不主动释放总线 1 1 s p l i t 当前传输没有完成,请求重拭,主动释放总线 传输中发生错误的操作如图2 1 2 所示。 h c l k h a d d r 佟1 :o 】 c o m r 。1 h w d a t a p l :0 l h r e a a y h r e s p 瞄t :o l h r d a t a 3 1 :0 2 3a m b a a p b x j 鬟 a ) ( _ ! x舡 嬲c o t l b 怂艇 怂xx d a 垴 舡 x裂 一a尉 逮j 蹙) 囤( 垤殛您殛) 敷 删烈删 x _ _ | i 1 灌舡 图2 1 2 传输中发生错误 a p b 是a m b a 总线的一部分,特别适合于低功耗,低速度的外围设备的通信解决方案。 和a h b 总线一样,a p b 总线也是以时钟的上升沿为基准,完成各种操作。一个典型a m b a 系统中的a p b 总线如图2 1 3 所示。 2 3 1a p bs l a v e a i j i 吐幢加碰p 曲由蝴b 啦 。l o w p o a t 皇 l a 味c a 自d 啪| i n dc o f l t m j + $ 蚴口b d + s u 蛔u w f o r 嘶酌y 尊e 却h e r 脚s 图2 1 3 个典型a m b a 系统中的a p b 总线 a p b 总线中的外设都是以s l a v e 的形式接入的,a p bs l a v e 的接口图如图2 1 4 所示,其接 口简单灵活。各信号的详细描述见表2 6 ,表中的非向量信号其数据宽度均为1 。 制日 s i r 嘲 嵫 o 辞灯甜1 a p b s l a 垤, 图2 1 4a p bs l a v e 的接口图 表2 6a p bs l a v e 的接口信号 信号名方向 描 述 p c l k i n p u ta p b 总线的时钟信号,上升沿有效 p r e s e t n i n p u ta p b 总线的复位信号,低有效 p s e l x i n p u t a p b s l a v e 的片选信号,高有效 p e n a b l e i n p u t a p b 总线的使能信号 p a d d r 1 6 :o ll n p u t a p b 总线的地址线 p w i u t e l n p u t a p b 总线的读写信号,高写低读 p w d a t a 31 :0 i n p u ta p b 总线的写数据线 p r d a t a 31 :o 】o u t p u ta p b 总线的读数据线 2 3 2 基本传输 a p b 操作的状态图如图2 1 5 所示:i d l e 是开始时的默认状态,当有数据传送发生时, 总线立即转到s e t u p 状态。s e t u p 状态下,p s e l x 信号被启动。总线在s e t u p 状态只停留一个 时钟并在下一个时钟的上升沿,无条件地转到e n a b l e 状态。e n a b l e 状态下,p e n a b l e 信号被 启动,总线同样在e n a b l e 状态只停留一个时钟,其后若有数据传送发生,则直接转至s e t u p 状态,若无数据传送发生,则返回i d l e 状态。 篆一 惭 n ot r a n s 铀f t r a r t 耐e r n ot r a n s f o r 图2 1 5a p b 操作的状态图 a p b 的写操作时序图如图2 1 6 所示,读操作时序图如图2 1 7 所示。 p c l k p a d d r p w r 塍 p s 基l p e 直l e p w d 强 t t t 2t41 5 ;1 1 蛸由, 一一。l 拶 l ; !;i i ! 尉 l 强 ! iii i li i 厂一 i i h 籀嘛1掰 j i ,、 图2 1 6a p b 的写操作 g p 曲a 畦 科- 恫挥 p 葛i 目l 笋制 鸯l 苣 p 霄n m 1 2倦t4t 5 ! 魁卅时1 1 r _ _ 1 隅 l ! 灯吼 i i i旷; i i 壤穰黪嚣搿| 嚣黼d g h1j l 锺 ,、乙、 , 、; 图2 1 7a p b 的读操作 第三章a m b a 总线平台的r t l 级设计与验证 3 i 总线平台概述 a m b a 总线平台的结构如图3 1 所示,包括一个a r m 处理器,一个d m a 控制器,必要的 a h b 仲裁器和a h b 译码器,还有a p b 桥接模块。通过a p b 桥接入平台的外设有u a r t ,吊断控制 器i n t c 和定时器t i m e r s 。埘脚下面将一一介绍各个模块的实现方法。 3 2 a r m 核的w r a p p e r 图3 1a m b a 总线平台 ( 1 ) 功能描述 c p u 核在接 a h b 总线时,必须先设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论