(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf_第1页
(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf_第2页
(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf_第3页
(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf_第4页
(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(信息与通信工程专业论文)mpegsoc中cpu子系统的设计及软硬件协同验证的研究.pdf.pdf 免费下载

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

文档简介

浙江大学硕士学位论文 摘要 作为国家重点扶持的产业之一,中国的1 c 设计业近年来发展迅猛,设讨能 力也有大幅度提升。涌现了一批以视音频编解码s o c 芯片为代表的高端芯片,其 中有些芯片还得到了高端设备制造商的认可。 但是s o c 芯片的规模曰益庞大,功能曰益复杂,一次性非重发费用n r e 越来 越昂贵,而芯片的产品周期却越来越短。伴随着s o c 设计风险和上市时间的压力, s o c 设计工程师们也面l 临着以s o c 的验证为代表的诸多技术难题。 数字电视已经步入寻常百姓家,随着国家对数字电视发展的进一步政策指 向,以及数字电视上下游厂家的共同努力,数字电视产业的井喷式发展己指日可 待。 本文介绍了基于数字电视机顶盒应用的i d p e g s o c 芯片中c p u 子系统的设计。 包括c p u 予系统的硬件设计以及软件设计。c p u 子系统的硬件设计主要包括c p u 予系统的存储结构,外围的i p 功能模块设计等。c p u 孑系统的软件设计主要包 括r t o s 在c p u 子系统上的移植,以及基于机顶盒应用的软件系统设计。 验证已经成了s o c 的设计过程中的瓶颈。与传统的a s i c 功能验证不同,s o c 的验证包括了硬件部分的验证,软件部分的验证以及软硬件接u 的验证,软件部 分的高速高效验证很难用传统的a s i c 功能验证方法实现,但是软件设计的失败 也将导致s o c 芯片的设计失败。因此在s o c 的验证中,软硬件协同验证居于核心 地位。 本文讨论了软硬件协同验证技术,主要包括基于仿真环境的软硬件协同验 证,以及基于f p g a 原型的软硬件协同验证。基于仿真环境的软硬件协同验证主 要采用模拟技术,利用软件环境或部分硬件加速模拟虚拟的原型目标系统,然后 在该原型目标系统上执行软件代码,达到软硬件协同仿真验证的目的。基于f p g a 原型的软硬件验证,主要利用f p g a 可编程逻辑的特性,在p c b 板级完成整个目 标应用系统的原型样机,使原型系统可以在实际速度或接近于实际速度的条件下 运行,能对复杂的s o c 系统进行高速高效的开发和验证,从而减少设计失败的风 险并缩短项目周期。 关键词 s o c ,数字电视,c p u 了系统,软硬件协同验征 浙江大学硕士学位论文 a b s t r a c t t h ei n d u s t r yo f l cd e s i g ni nc h i n ap r o g r e s s e sr a p i d l y l o t so fs o c c h i p sw i t h h i g hp e r f o r m a n c ea n dc o m p l e xf u n c t i o nc o m eu pt h e s ey e a r s n e v e r t h e l e s s ,as o c d e s i g nc o s tm u c hm o r et h a ne v e rb e f o r e s o cd e s i g n e r sf r o n tv a r i o u st e c h n i c a l p r o b l e m s ,s u c ha sv e r i f i c a t i o no fs o c sc o m p l e xf u n c t i o n s o cd e s i g nb e c o m e s ar i s k yv o c a t i o n , d i g i t a lt e l e v i s i o n i so nt h ew a ya l r e a d y i t sag r e a tc h a n c ef o rb o t ht h ei c d e s i g n e ra n dt h ee q u i p m e n tp r o v i d e r t h i sp a p e ri n t r o d u c e st h ec p us u b s y s t e md e s i g no fm p e g s o cw h i c hi sf o r s e t t o p b o xa p p l i c a t i o n t h eh a r d w a r ed e s i g no fc p us u b - s y s t e mi n c l u d e sc p u s m e m o r ys y s t e m ,p e r i p h e r a l1 pm o d u l e s ,e t c t h i sp a p e ra l s oi n t r o d u c e st h ea p p l i c a t i o n s o f t w a r ef o r t h ed t v s e t t o p b o xr u n n i n go nm p e g - s o c v e r i f i c a t i o nb e c a m et h eb o t t l e - n e c k 醚i nt h ef l o wo fs o cd e s i g n u n l i k et h e t r a d i t i o n a la s i cd e s i g n ,s o ca l w a y si n c l u d eo n eo rm o r em i c r o - p r o c e s s o r ,as o c c o m p r i s e sh a r d w a r ea n ds o f t w a r ew h i c hi sr u n n i n go nt h es o c sh a r d w a r e s os o c d e s i g ns h o u l dc h e c ks o f t w a r ea sw e l la sh a r d w a r e t h i sp a p e rd i s c u s s e st h et e c h n o l o g yo fh a r d w a r e s o f t w a r ec o v e r i f i c a t i o n ,w h i c h i n c l u d e sc o - v e r i f i c a t i o nb a s e do ns i m u l a t i o na n dc o - v e r i f i c a t i o no nf p g ap r o t o t y p i n g t h em e t h o do fc o - v e r i f i c a t i o nb a s e do ns i m u l a t i o ni s b a s i c a l l yo nt h es o f t w a r e s i m u l a t i o n h o s t ( s u c h a sp co r w o r k s t a t i o n ) c o n s t r u c t sv i r t u a l s o c s h a r d w a r e a n ds o c ss o f t w a r en l n so nt h ev i f l u a ls y s t e m t h ev e r i f i c a t i o ni s a c c o m p l i s h e db yc o s i m u l a t i o n c o v e r i f i c a t i o no nf p g ap r o t o t y p i n gi sav e r yi m p o r t a n tm e t h o di ns o c v e r i f i c a t i o n t h et a r g e ts y s t e mb a s e do nf p g ap r o t o t y p i n gc o u l d r u n x , o nt h e c i r c u m s t a n c ew h i c hi sv e r yc l o s e l yt ot h er e a ls y s t e mb a s e do ns o cs i l i c o nc h i p u s i n gt h ef p g ap r o t o l y p i n gw o u l dr e d u c er i s k so f s o cd e v e l o p m e n te f f e c t i v e l y k e yw o r d s : s o c , c p us u b s y s t e m ,d i g i t a lt v ,c o - v e r i f i c a t i o n 浙江大学硕士学位论文 第一章绪论 据统计,2 0 0 4 年中国集成电路设计业的规模达到了8 1 5 亿元人民币,增长 率达到8 1 5 。虽然低端芯片占据市场主流的格局并没有改变,但这掩盖不了中 国i c 设计业技术水平正在迅速提高的事实。除了传统的基于逻辑综合的a s i c 设计方法,中国本土i c 设计公司已经开始采用基于i p 集成的平台化s o c 设计方 法。近两年来涌现出了更多的s o c 芯片,如珠海炬力的基于m p 3 应用的s o c 芯片, 中科院计算所的基于中国数字音视频编解码技术标准( a v s ) 的凤心一号等等复杂 的编解码芯片以及一系列基于中国自主标准的芯片。且某些芯片已经得到了中国 高端系统制造商的认可。 随着芯片设计s o c 时代的到来,中国的i c 产业见证着前所未有的巨大机遇, 但同时也面临着s o c 系统级芯片设计本身所带来的诸如在时序收敛、设计验证、 i p 集成、软硬件协同设计、i p 的获取、算法优化、低功耗设计等众多的技术问 题。这些技术问题最终反映到如何控制s o c 系统级芯片设计的风险,以及如何缩 短s o c 系统级芯片的设计周期,尽量加快上市时间( t i m et om a r k e t ) , 从而适 应产品周期越来越短的市场压力。 1 1 is o c 的产生 1 is o c 概述 将整个电子系统集成在同一芯片上,称为片上系统( s o c ,s y s t e m0 nc h i p ) , 也称为系统级芯片。作为a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t s ) 设计方法学中的新技术,s o c 始于2 0 世纪9 0 年代中期。 从市场应用层面看,根据市场需求集成电路厂家长期以来不断发展系列品 种,增强i c 功能,扩大1 c 规模,集成电路开发和生产。其主要着眼点放在品种的 通用性、系列化、标准化上面。但随着信息技术的发展,各种系统的融合及市场 竞争的要求,使集成电路厂家意识到应用的重要性,针对不同应用,提供给客户 整体的解决方案。另一方面,从微电子自身技术发展层面看,随着集成电路设计 方法学和制造工艺的不断发展和成熟,使得单颗芯片上的逻辑容量和功能复杂度 不断增大,促进了不同类型的专用电路相互集成的各种嵌入式片上系统集成技术 和产品的发展。从而推动了由传统a s i c 向s o c 的转变。 浙江大学硕士学位论文 系统级芯片设计与传统的集成电路( i n t e g r a t e dc i r c u i t s ,简称i c ) 设计小 同。传统i c 设计关注的是如何创建一个全新的设计并进行有效的验证,复杂的i p ( i n t e l l e c t u a lp r o p e r t y ) 模块、嵌入式软件、不断增长的晶体管数量,这些都 变成了传统方法日益沉重的负担。系统级芯片设计关注的则是如何高效率的评 估、验证和集成各个软硬件模块,系统级芯片设计的方法以i p 复用和系统集成为 基础,包括更深入的系统级设计、软硬件并行设计与验证以及在设计流程的所有 层次上进行验证等。在系统级芯片设计开发中硬件模块的集成与嵌入式软件的设 计验证将非常关键,而传统设计方法中软件开发和硬件开发几乎是相互独立的。 1 1 2s o c 主要关键技术 s o c 的主要关键技术有: 1 i p 核复用技术 i p 核的使用不等同于集成电路设计中的单元库的使用,它所涉及的内容几乎 覆盖了集成电路设计中的所有课题,包括测试、验证、模拟、低功耗等。i p 核的 设计也不只是简单的设计抽取和整理,它所涉及的设计思路、时序要求、性能要 求等均需要人们重新审视传统的设计方法。 2 低功耗设计 按芯片集成度的摩尔定律发展,s o c 中的晶体管数的将按时间的指数增涨, 如果不采取有效的低功耗技术,未来单颗芯片的功耗可能会大得惊人。巨大的功 耗给使用封装及可靠性方面都带来了问题,因此低功耗的设计是片上系统设计的 必然要求。 3 互连线分析 在超深亚微米工艺条件下。互连线的延时已经远远超过晶体管的延时,互连 延迟主导系统性能的问题随着工艺技术的不断进步将变得越来越突出。到深亚微 米,逻辑设计则必须结合物理特性才能精确给出时延、功耗、可布性、面积等信 息,互连线变成了时延和功耗的重要角色。 4 软硬件协同设计 软硬件协同设计就是通过软件和硬件的并发设计,充分发挥软件和硬件的协 同作用,来达到系统级的设计目标。软硬件协同设计是一个复杂的问题,这需 要仔细的测量和设计判断。软硬件协同设计是硬件结构和在硬件上的软件执行的 设计方法学。协同设计的目标是发展自定义多处理器,它可能包括一个或多个 c p u ,还包括硬件、特定功能单元,除了自定义多处理器之外,还有有效使用这 个多处理器的自定义软件。而由此还带来了软硬件协同验证技术( 后文中将详细 讨论协同验证技术) 和软硬件协同综合等巨大的挑战。软硬件协同综合综合了硬 浙扛大学填士学位如文 系统级芯片设计与传统的集成电路( 1 n l e g r a t e dc i r c u i t s ,简称i c ) 设f r 小 同。传统i c 设计关注的是如伺创建个争新的设计并进行有效的验证复杂的i p ( 1r 【t e 1e n t i 3 p r o p e r t y ) 模块、嵌入式软件、小断增长的晶体管数量,这些都 变成了传统方法日益沉重的负担。系统级芯片设计芙注的则足如何高效率的评 估、验证和集成各个软硬件模块,系统级芯片设计的方法以i p 复用和系统集成为 基础,包括更深入的系统级设计、软硬件并行设计与验证以及在设计流程的所有 层次上进行验证等。在系统级芯片设计开发中硬件模块的集成与嵌入式软件的设 计验证将非常关键,而传统设计方法中软件开发和硬件开发几乎是相互独立的。 1 1 2s o c 主要关键技术 s o c 的主要关键技术有: 1 i p 核复用技术 j p 核的使用不等同于集成电路设计中的单元库的使用,它所涉及的内容几乎 覆盖了集成电路设计中的所有课题,包括测试、验证、模拟、低功耗等。i p 核的 设计也不只是简单的设计抽取和整理它所涉及的设计思路、时序要求、性能要 求等均需要人们重新审视传统的设计方法。 2 低功耗设讦 按芯片集成度的摩尔定律发展,s o c 中的晶体管数的将按时间的指数增涨, 如果不采取有效的低功耗技术,未来单颗芯片的功耗可能会大得惊人。巨大的功 耗给使用封装及可靠性方面都带来了问题,因此低功耗的设计是片上系统设计的 必然要求。 3 互连线分析 在超深亚微米工艺条件下,互连线的延时已经远远超过晶体管的延时,互连 延迟主导系统性能的问题随着工艺技术的不断进步将变得越来越突出。到深亚微 米,逻辑设计则必须结合物理特性才能精确给出时延、功耗、可布性、面积等信 息,互连线变成了时延和功耗的重要角色。 4 软硬件协同设计 软硬件协同设计就是通过软件和硬件的并发设计,充分发挥软件和硬什的协 同作用,来达到系统级的设计目标“。软硬件协同设计是个复杂的问题,这需 要仔细的测量和设计判断。软硬什协同设计是硬件缔构和在硬件卜的软件执行的 设训方法学。协同设计的目标是发展自定义多处理器,它可能包括一个或多个 c p u ,还包括硬件、特定功能单元,除了自定义多处理器之外,还有有效使刚这 个多处理器的自定义软件。而由此还带来了软硬件协同验证技术( 后文中将详细 讨论协同验证技术) 和软硬件协同综合等巨人的挑战。软硬件协同综合综合了硬 讨论协同验证技术) 和软硬件协同综合等巨大韵挑战。软硬件协吲综台综台了硬 浙江大学硕士学位论文 件设计和在这个硬件上执行的软件。协同综合的目标是综合满足性能或者其他目 的的一个执行,又使制造成本最低化:同时考虑允许更为强壮的折中设计的硬件 和软件结构。软硬件协同设计从系统的建模到最后的协同综合设计实现是一个复 杂的迭代收敛的设计过程。 5 s o c 的测试 s o c 芯片测试比传统的专用集成电路a s i c n u 试要复杂得多。对s o c 芯片进行全 面的功能测试的代价是难以承受的,因此通常采取分别测试所有电路功能模块的 策略。在s o c 芯片中存在着各种不同类型的电路模块,每个模块要求的测试方式 也各不相同“。其中微处理器模块( c p u 或者d s p ) 与传统的c p u d s p 测试类似, 通常采用边界扫描方式结合矢量测试方式;模块存储器测试一般采用内建自测试 法( b i s t ,b u i l d i n - - s e l ft e s t ) 。s o c 芯片背后所蕴涵的复杂的功能和先进的 工艺给s o c 的测试技术和测试成本都带来了更大的压力。 6 s o c 的验证 仿真与验证是芯片设计流程中最复杂、最耗时的环节,随着s o c 设计规模的 不断增大,验证工作的开销越来越大。从统计资料中可以发现1 9 9 6 年的3 0 万门的 芯片设计中验证工作在整个项目中占据了3 0 4 0 的时间与资源,到了2 0 0 0 年1 0 0 万门的芯片设计中验证工作已经在整个项目中占据了5 0 8 0 的时间与 资源“。 s o c 设计不仅在规模上与传统的芯片有着很大的差别,而且在设计方法上也 有着本质的不同。在s o c 设计中不仅包含大量的硬件电路设计,而且包含了相当 部分的软件设计。也就是在复杂的s o c 的验证中,不仅要保证单个模块的功能得 到完全验证,同时还要从系统的角度,在整个芯片的水平上做软硬件的协同验证。 这使得s o c 验证的工作量和复杂度都大大增加,从而对传统的验证方法提出了新 的挑战。 1 2s o c 的验证技术 系统级s o c 芯片的验证已经成了当前s o c 设计流程的瓶颈。如何对s o c 设计进 行高速高效的验证以减d x s o c 的设计风险和加快产品的上市周期是当今集成电路 设计领域中最为关注的问题之一。 1 2 1 传统的验证方法 验证流程可以分为功能验证、等价性验证、静态时序分析、动态时序分析和 版图验证等几个主要阶段。本文重点关注的是芯片的功能验证。传统的功能验证 浙江大学硕士学位论_ 文 手段主要有: 直接测试向量生成 直接测试向量生成( d i r e c t e dt e s tv e c t o rg e n e r a t i o n ) 遵守w y t w y v o 原 则,即w h a t - y o u t h o u g h t o f js - w h a t y o u - v e r i f y o n l y ,所以需要产生大量的 测试向量才能覆盖尽可能多的各种传输组合。 约束随机测试 随机测试( r a n d o mt e s t ) 方法改进了直接测试向量生成的不足。这种方法 让测试向量随机生成,因此在足够长的时间内可以产生大量的随机向量这样可 以比较容易地覆盖到一些考虑不到的情况。但是这样有可能将时间浪费在一些根 本不需要产生的测试向量上,于是在随机测试上加上约束,称之为约束随机测试 ( c o n s t r a i n e dr a n d o mt e s t ) ,以便有效的缩短验证时间。 覆盖驱动验证 覆盖主要指的是代码覆盖( c o d ec o v e r a g e ) 和功能覆盖( f u n e t i o n a l c o v e r a g e ) 。代码覆盖可以在仿真时由仿真器直接给出,主要用来检查r t l 代码 哪些没有被执行到。使用代码覆盖可以有效地找出冗余代码,但是并不能很方便 地找出功能上的缺陷。使用功能覆盖则可以使设计者找出功能上的缺陷,一般说 来,对一个设计覆盖点的定义和条件约束是在验证计划中提前定义好的,然后在 验证环境中具体编程实现,把功能验证应用在约束随机环境中可以有效检查是否 所有需要出现的情况都已经遍历。功能验证与面向对象编程技术结合可以在验证 过程中有效地增减覆盖点。这些覆盖点既可以是接口上的信号,也可以是模块内 部的信号,因此既可以用在黑盒验证也可以用在自盒验证中。通过在验证程序中 定义错误状态可以很方便地找出功能上的缺陷。 1 2 2 软硬件协同验证 基于平台的s o c 设计以i p 模块为基础,利用这些传统的功能验证技术可以对 s o c 中的i p 模块的功能进行验证,但是对于s o c 芯片而言最关键的系统级功能, 则无法通过这些传统的验证手段对其进行高速有效的验证。 s o c 芯片与传统a s i c 芯片最大的一个区别是s o c 芯片中通常都含有一个或多 个微处理器,而反映到芯片的最终应用上就是要在s o c 芯片上运行比较复杂豹软 件。事实上,s o c 芯片的一个优势就是将传统嵌入式系统的载体由基于p c b 的板 级硬件电路转移到单颗芯片上,s o c 上的软件系统是s o c 设计的一个重要组成部 分,软硬件接口设计的失败也将导致s o c 芯片设计的失败。而用传统的人工对 s o c 芯片的硬件设计加测试激励向量的传统验证方法显然无法满足s o c 设计高速 高效的要求,而传统的嵌入式系统开发流程中先等硬件制造完成后进行软件设计 浙扛大学硕十学位论文 和测试的方式也将增大s o c 设计失败的风险并在很大程度上延缓r 广工如的上市 周期。 软硬件协同验证是随着s o c 技术而发展起来的一项验证技术。 软硬件协同验 证的主要目的是验证系统级芯片软硬件接口的功能和时序,以及在芯片制造出来 前开发调试应用软件。软硬件协同验证可以使软件工程师尽早的接触到硬件设 计,从而使软件的开发和测试和硬件设计并发进行。与传统的先硬件后软件的串 行开发模式相比,软硬件协同验证可以大大缩短整个项目的开发周期,同时,软 硬件协同验证为硬件设计的验证提供了额外的激励信号。事实上,软硬件协同仿 真提供了在真实系统中出现的激励信号,与人为构造的测试向量相比,具有更高 的可信度,从而可以极大的改善硬件验证的准确性。 软硬件执同验证在s o c 的验证中居于核心地位,本文将在第四章和第五章中分 别具体阐述了基于仿真环境的软硬件协同验证技术和基于f p g a 原型的协同验证 技术。 1 3 机顶盒中的系统级多媒体解码芯片m p e g s o c 1 3 1 数字电视简介 数字电视从a t s c ,d v b 等标准的提出发展到现在,短短十几年,已经在世界范 围内广泛应用。美国己从2 0 0 2 年开始在所有商业电视台播放数字电视节目,计划 至t j 2 0 0 6 年5 ) 7 结束所有的模拟电视广播,全面由数字信号取代。日本继模拟m u s e 制式的高清h i v is i o n 节目之后,已经开通b s h i 的数字高清电视业务。在中国虽 然数字电视的国家标准还没有最终确定,但是在广电总局推动下,已经在全国大 范围内进行了数字电视的试播和投入营运。广电总局也已经制定了至t j 2 0 1 5 年前停 播模拟电视的目标。 数字电视主要有三种标准,美国高清晰度数字电视联盟的a t s c 标准,欧洲的 d v b 标准,以及日本的i s i ) b 标准。这三种标准虽然在信道上各有差异,但是都将 m p e g 一2 作为其主要的信源编解码格式。 m p e g ( m o v i n gp i c t u r ee x p e r tg r o u p ) 委员会是国际标准化组织i s o 和国 际电工委员会i e c 在1 9 8 8 年的一次会议上成立的,m p e g 委员会制定的标准称之 为m p e g 标准。目标是如何把计算机系统和广播电视结合起来建立一个统一的信 息网络,具体地说,质量适当的图象( 包括伴音) 数据必须成为计算机数据的一 种,和已有的数据在计算机内兼容,并且能在现有的计算机网络和广播电视等通 讯网络中兼容传输。 1 9 9 4 年1 1 月,m p e g 一2 制定完成,编号为i s o i e c1 3 8 1 8 。m p e g 一2 标准分为 浙江大学硕士学位论又 系统、视频、音频、测试软件模拟、软件实现、系统的接口规范等部分。从整体 上来说,m p e g 的语法规则包括两层编码:第层( 外层) 为多路复合层( 即系统 层) ;第二层( 内层) 为压缩层( 即音频编码和视频编码) 。相应地,衔p e g 一2 解码器 从整体上将由两个层次的三个主要模块构成,即第一层( 外层) 是系统解码器:第 二层( 内层) 是音频解码器和视频解码器。 1 3 2 数字电视终端接收设备 终端设备在数字视频广播中称为综合解码接收机( i r d :i n t e g r a t e dr e c e i v e r d e c o d e r ) 它的一个典型结构如图l l 所示“”“。它包括调谐器、解调器、t s 流解复用、视频音频解码、n t s c p a l 编码器、音频d a c 以及通用异步串行接口 ( u a r t ) 等外围接口模块。 卧一 者掰器 视黼 图1 ii r d 的结构框图 调谐器首先将接收到的信号变换到中频然后对之进行第二次变频,将中心 频率变换到适合a o 操作的频点。在解调模块,进行相应的解调、去卷积交织、 r e e d - s o l o r n o n 解码和解扰码操作,得到m p e g 2 传送流( t s ,t r a n s p o r ts t r e a m ) 。 t s 流中每个t s 包都由一个p i d 标识其所属的节目流或是否携带系统服务信息。 解复用模块根据t s 包的p i d 、p s i s i 进行滤波操作,将和服务相关的信息存放 到宿主c p u 进行处理,将压缩的视频音频数据流分别送到视频音频解码模块进 行解压缩,如果数据流被加密,那么它们在被送去解压缩之前,还必须首先被送 浙江大拳碗士学位论文 到解密模块进行解密。解压缩后得到的视频数据和p c m 首频数蛞,分别送到电视 信号编码器和音频d a 转换器,转换成符合电视机输入格式的信号送入电视机。 c p u 在整个系统中起着控制器的作用。它初始化系统,控制、监视系统中的 所有其他模块并响应中断,另外它还提供了一定的运算处理能力:处理节目导航 和用户接口等。 1 3 3m p e g s o c 图卜2m p e g s o c 功能框图 m p e g s o c 是基于m p e g 一2 的系统级多媒体解码芯片。m p e g - s o c 中集成了如 1 3 2 所述的终端接收机中的t s 流解复用和视频音频解码的功能。该芯片中集 成了3 2 位r i s c 核,可作为多媒体播放设备、数字机顶盒接收机等多种应用方案 中的主芯片。 图卜2 是m p e g s o c 系统级芯片的功能框图。包括c p u 子系统、系统层解复 用、视音频解码、视音频播放、在屏显示o s d ( o ns c r e e nd i s p l a y ) 等功能模 块。m p e g s o c 实现的主要功能是将基于i s o i e c1 3 8 1 8 标准的m p e g 一2 压缩码流 解码,并转成普通的视频格式( y i j v ) 和音频格式( p 删) 。 1 4 本文的主要工作和章节安排 芯片设计的s o c 时代已经来临,中国的i c 设计业面临巨大的机遇和挑战。 基于i p 集成的s o c 系统级芯片中通常都集成了一个或多个微处理器核,这是与 传统a s i c 设计中一个很大的区别。在s o c :矗片的功能结构中,基于微处理器核 的c p u 子系统的主要功能是控制s o c 芯片的正常运作,并在c p u 子系统上运行最 终的用户软件。 s o c 芯片系统功能的最终体现是在s o c 芯片这个载体上运行用户需要的应用 软件系统。因而除了芯片的硬件设计和验证,运行于芯片上的软件系统的设计和 浙江大学硕士学位论文 验证也成t s o c 芯片开发过程中不可或缺的一部分。e h j v c 产生了一系列设计、验 证过程中的技术难题。 s o c 上的软件系统是s o c 设计的一个有机组成部分,软硬件接口设计的失败也 将导致s o c 芯片设计的失败。传统a s i c 功能验证方法不能满足对s o c 系统的验证效 率和验证覆盖率的要求。传统的嵌入式系统开发流程中先硬件后软件的串行设计 方式也将增大s o c 设计失败的风险并在很大程度上延缓了产品的上市周期。 软硬件协同验证的主要目的是验证系统级芯片软硬件接口的功能和时序,验 证系统级芯片软硬件设计的正确性,以及在:卷片流片回来前开发应用软件。软硬 件协同验证对s o c 芯片设计的成败起着非常关键的作用。 本文介绍了在m p e g s o c 中c p i j 子系统的软件,硬件设计,并讨论了s o c 中 的软硬件协同验证技术。本文的主要工作和章节安排如下: 第二章介绍m p e g s o c 中c p u 子系统的硬件设计。 本文介绍了a r m 等业界主流的c p u 核及其相应的s o c 片上总线,并具体说明 了在m p e g s o c 中基于c , c o r e 的c p u 子系统中的硬件结构设计,以及u a r t ,中 断控制器等c p u 重要外围接口模块的设计。 第三章介绍m p e g - s o c 中c p i j 子系统的软件设计。 本文介绍了s o c 中r t o s 的特点和作用,并结合b l p e g s o c ,说明了p c o s i i 在c , c o r e 上的移植,以及m p e g s o c 基于数字电视机顶盒应用方案的软件系统设 计。 第四章讨论了基于仿真环境的软硬件协同验证技术。 基于仿真环境的软硬件协同验证是在软硬件协同仿真的环境中观察仿真结 果的正确与否达到系统功能验证的目的。本文讨论了软硬件协同仿真系统的组 成、协同仿真的基本方法以及几种实用的有助于提高软硬件协同仿真性能的方 法,并介绍t m p e g s o c 的功能验证及其软硬件协同仿真环境。 第五章讨论了基于f p g a 原型的协同验证技术。 基于f p g a 原型的验证使得s o c 设计者可以在系统实际运行速度或接近实际 运行速度的环境下验证设计的功能,并通过以f p g a 为核心的原型样机观察最终 系统的实际功能。基于f p g a 原型的软硬件协同验证使得复杂s o c 设计的高速高 效验证成为可能,而且可以使软件设计工作尽早开始,有效地缩短了s o c 设计的 项目周期。本文讨论了基于f p g a 的软硬件协同验证实用技术,介绍f p g a 原型的 浙江大学硕士学位论文 意义,并讨论了f p 6 a 协同验证环境的组成、流程,f p g a 协同验证的方法。最后 介绍了m p e g - s o c 项目中f p g a 协同验证的调试工具和调试技术,以及m p e g s o c 的f p g a 协同验证流程。 一一塑竖查兰堡主兰篁笙苎 第二章c p u 子系统的硬件设计 在基于i p 集成的s o c 系统级芯片设计中,其中最关键的i p 无疑是以r i s c 为代表的处理器核。业界主流的i p 提供商提供的c p u 核基本上都是一个裸核, 需要自行为其设计相应的存储结构系统,包括外围的如中断控制器,u a r t 等模 块,以构成一个完整c p u 子系统的硬件设计。s o c 芯片上的软件主要就是由该c p u 予系统来执行。 本章首先介绍了几款业界主流的针对s o c 设计的c p u 核及其s o c 片内总线, 随后详细说明了在m p e g s o c 中基于c , c o r e 的c p u 子系统的硬件部分设计。 2 1 1a r m 2 1s o c 中常用的c p u 核 在嵌入式微处理器领域,a r m 是最为成功的公司之。a r m 公司只提供a r m 处理器核的技术,本身并不制造芯片,但是几乎所有的大公司都有基于a r m 核的 产品,尤其在嵌入式领域,基于a r m 核的微控制器更是占据了绝对地位。 a r m 处理器核主要有a r m 7 ,a r m 9 ,a r m l l 等系列。其中a r m 7 采用3 级流水线, 程序空间和数据空间混合,面向对价位和功耗敏感的低端消费类应用。a r m 9 系 列采用5 级流水线。 a r m 是3 2 位指令字长的的r i s c 处理器,为了提高代码密度和执行效率,同 时也支持1 6 位的t h u m b 指令集。a r m 体系结构支持用户模式,管理模式等7 中 不同处理器模式。a r m 处理器共有3 7 个3 2 位的寄存器,包括3 1 个通用处理器 和6 个状态寄存器。寄存器被安排成重叠的分组,即在不同的模式下可见的寄存 器组是不同的。其中,在用户模式下可见的寄存器为r o a r l 5 等1 6 个通用寄存 器和相应的状态寄存器。 a r m 核的片上总线采样a m b a ( a d v a n c e dm i c r o c o n t r o l l e rb u sa r c h i t e c t u r e ) 总线规范。a m b a 总线规范是个开放标准,可免费从a r m 获得。a m b a 是一种用 于高性能嵌入式系统的总线标准。它独立于处理器和制造工艺技术,增强了各种 应用中的外设和系统宏单元的可重用性。目前,a m b a 拥有众多第三方支持,被 a r m 公司9 0 以上的合作伙伴采用,在基于a r m 处理器内核的s o c 设计中,已经 成为泛支持的互联标准之一。 典型的基于a m b a 的s o c 系统如图2 1 所示 塑垩茎兰塑主兰焦堡苎 瑚b 黼b i j 龟e 图2 1 典型的基于a m b a 的s o c 系统“1 a m b a 总线是一个多总线系统。主要包括a h b 总线( a m b a 的规范中定义了a s b 总线,但实际应用中a s b 基本都被a h b 所取代) 和a p 8 总线,a m b a 的a h b 适用 于高性能和高时钟频率的系统模块。它作为高性能系统的骨干总线,主要用于连 接高性能和高吞吐量设备之问的连接,如c p u 、片上存储器、d 淞设备和d s p 或 其它协处理器等。其主要特性o ”如下: 支持多个总线主设备控制器 支持猝发、分裂、流水等数据传输方式 单周期总线主设备控制权转换 3 2 1 2 8 位数据总线宽度 具有访问保护机制,以区分特权模式和非特权模式访问,指令和数据读 取等 支持字节、半字和字传输 a m b a 的a p b 适用于低功耗的外部设备,它已经过优化,以减少功耗和对外设 接口的复杂度。其主要特性如下: 低速、低功耗外部总线; 单个总线主设备控制器: 协议非常简单,加上c l o c k 和r e s e t ,总共只有4 个控制信号; 最大3 2 位数据总线: 读数据总线与写数据总线分开。 2 1 2m i p s m i p s 科技公司是全球用于数字消费品与商业应用产晶中的标准处理器架构 浙江大学硕士学位论盅 及核心的领导供应商。m i p s 的处理器核主要有m i p s 4 k ,m i p s 4 k e ,m i p s 2 4 k 等 系列。其中m i p s 2 4 k 是6 4 位数据位宽的处理器。m i p s 是3 2 位指令字长的r i s c 处理器,但某些型号也支持m i p s t 6 e t m1 6 位压缩指令集。m i p s 有用户模式,核 心模式,调试模式等三种工作模式,3 2 位的m i p s 处理器m i p s 3 2 架构有r o a r 3 1 等3 2 个通用处理器,p c 寄存器以及若干协处理器的寄存器。 m i p s 核的总线接口为m i p s 的e c “接口。在基于m i p s 的s o c 系统设计中, 需要在m i p s 处理器外挂一个e c 总线控制器,以提供m i p s 核和s o c 系统中的其 他模块的通信,如图2 - 2 所示。 介厂_ h 嚣| l 篮p 母k l 一 l 一 f h f 蔷撼| 妙一 图2 2 基于m i p s 核的模块连接示意图 典型的设计是在将e c 总线控制器设计为e c 协议和a h b 协议的桥接转换嚣, 用于两者之间的协议转换,则就可以方便的将m i p s 核应用于基于a m b a 总线的 s o c 设计中。 2 1 3 方舟 方舟科技是我国第一家嵌入式c p u 提供商。2 0 0 1 年发布的a r c a lc p u 是我国 历史上第一款实用的3 2 位r i s c 微处理器。a r c a 2 是方舟于2 0 0 2 年推出的应用于 s o c 设计的c p u 核。 a r c a 2c p u 核“”采用5 级流水线结构,包括c p u 核存储器管理单元高速缓存以 及总线接口单元处理器;采用哈佛存储器结构,包括容量可配的指令缓存和数据 缓存:指令地址和数据地址通过独立的指令t l b 和数据t l b 进行转换;基于j t a g 接 口的片内调试模块。 方舟处理器提供两种运行模式:用户模式( u s e rm o d e ) 和特权模式 ( s u p e r v is o rm o d e ) 。两种模式的切换受软件控制。仅在有异常发生时才使处理 器从用户模式切换至0 特权模式,同时仅有r t e $ 目令可以使处理器从特权模式切换 到用户模式。方舟有3 8 个寄存器。其中包括3 2 个通用寄存器( r o a r 3 1 ) ,5 个控制 寄存器及1 个程序计数器( p c ) 。当处理器处于特权模式时,所有寄存器均是司见 。 一一 塑垩查! 堡兰篁堡茎 的。而在用户模式下,仅有通用寄存器年 i 程序计数器可见。 在s o c 设计方面,方舟采用o s c 总线连接要求高性能存储器带宽的片上设备, 采用o c p 总线连接简单的不要求高- 陛能存储器带宽的设备。方舟同时也提供一整 套基于g n u 的针对嵌入式开发的工具链。 2 1 4o p e n r i s c o p e n r i s c 是开放源码的3 2 位r i s c 核,和成熟的商用c p u , h 比,具有较大的成 本优势。o p e n r is c 内核结构中包括可配置的指令、数据高速缓存( c a c h e ) 和指令、 数据内存管理单元( 蛳u ) 、中断控制器和计时器等。在开发环境方面,o p e n r i s c 有g c c 编译器、指令仿真器和软件仿真器等一系歹i j g n u m 具链。以o p e n r i s c l 2 0 0 为例,其内核具有以下特点”1 : 采用哈佛结构和o r - b i s 3 2 目令集: 5 级指令流水线,大部分指令单周期执行; 3 2 个3 2 位寄存器; 具有可配置的指令和数据c a c h e ; 集成了可选的乘法、除法和乘加单元; 集成了基于j t a g 的调试接口,方便程序的调试和仿真; 采用w i s h b o n e 片上总线接口。 w i s h b o n e 是s i l i c o r e 公司转让给o p e n c o r e 的s o c 总线标准。该总线规范定义 了标准i p 核之间的数据交换方式,其目的是通过减轻片上系统的集成问题来鼓励 设计重用,通过在i p 核之间创造一种通用接口来完成,提高了系统的可移植性和 可靠性。它具有如下特点“: 简单、紧凑的i p 核硬件接口,只需要很少的逻辑门: 包括全套通用的传输总线协议,包括单读写周期,块传输周期,r m w ( r e a d - - m o d i f y w r i t e ) 周期和e v e n t 周期; 支持用户自定义的t a g ,这对于区分数据传输,中断向量,高速缓存控制 操作和其他的总线操作非常有用: 主从设备体系结构用于灵活的系统设计; 支持各种各样的i p 核互连包括:单向总线,双向总线,基于多路复用的 互连,基于三态门的互连和片# b i o 。 支持点对点、共享总线、总线交换、数据流连接等多种总线互连方法: 简单灵活的时序。 浙江大学硕士学位论文 2 2 基于c , c o r e 的c p u 子系统结构 2 2 1c , c o r e m p e g s o c 中的c p u 核选用了c c o r e 。c , c o r e 是3 2 位精简指令集处理器 ( r i s c ,r e d u c e di n s t r u c t i o ns e tc o m p u t e r ) 。其主要特性有: 3 2 位读取存储r i s c 架构; 高效的4 级流水线结构: 固定长度的1 6 位指令集; 支持字节、半字和字存取: 1 6 个3 2 位的通用寄存器; 多数指令单周期操作; 超级以及普通用户两种工作模式; 附力f 1 1 6 个3 2 位的交替寄存器用于快速中断; 基于j t a g 标准的o n c e ; 琏扦群 虿鬻臀劁弦

温馨提示

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

评论

0/150

提交评论