




已阅读5页,还剩55页未读, 继续免费阅读
(计算机软件与理论专业论文)面向soc的事务级验证研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 近几年来随着专用集成电路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 w mc i r c u i t ) 的 迅速发展和系统芯片s o c ( s y s t e mo nac h i p ) 复杂度的不断提高,芯片验证,尤其 是功能验证日益成为电子产品开发和设计的瓶颈。验证做为芯片设计领域中最困 难和最具挑战性的课题之一,它贯穿了芯片设计的整个流程,是芯片设计过程中 发现概念和功能上错误的唯一手段。在s o c 设计中,i p ( i n t e l l i g e n tp r o p e r t y ) 重用 设计方法学和大量新设计技术的采用,对传统功能验证方法提出了新的挑战。如 何快速的验证这些卵模块和整个系统已成为系统芯片验证的难点和热点。 大量实践证明,基于事务的验证重用方法学是提高功能验证效率最有效的方 法之一。本论文描述了对s o c 进行事务验证的一般流程和设计方法;在验证方 法学和重用方法学基础上,提出了采用s y s t e m c 和s c v 验证库来创建模块化事 务级验证平台的设计方法,方便了验证平台的重用,提高了验证的效率;分析了 两种总线功能模型的实现方式;引入随机测试的理论,根据s c v 验证库的随机 机制给出了三种随机测试向量的生成方法;在讨论监视器可重用设计规则的基础 上,提出了一种监视器的设计方法,采取对物理信号的监测和数据的接收分离开 来,加快了验证的调试过程。 最后讨论了验证平台的组织结构,通过对4 x 4 p a c k e ts w i t c h 模型进行一系列 的验证实验,完成了对验证对象的功能验证,证实了模块化事务级验证方法是可 行的。结果表明,使用此模块化的验证平台有效地降低了验证人员的工作量,提 高了验证的效率。 关键字:系统芯片;验证平台;事务级验证;口核;重用 v a b s t r a c t i nt h ee l e c t r o n i ci n d u s t r yt o d a y , t h ei n c r e a s i n gc o m p l e x i t yo fa s i ca n ds o ch a s r e s u l t e di nv e r i f i c a t i o n , e s p e c i a l l yf u n c t i o n a lv e r i f i c a t i o n , j u m p i n gt ot h et o po f t h el i s t o fb o t t l e n e c k si nt h ed e s i g na n dd e v e l o p m e n to fe l e c t r o n i cp r o d u c t s v 硪f i c a t i o ni s p r o b a b l yo n eo f t h em o s td i f f i c u l ta n di m p o r t a n ta s p e c t so fc h i pd e s i g n v e r i f i c a t i o n m u s tr u nt h r o u g ht h ew h o l ef l o wo fc h i pd e s i g n ,a n di ti so n l yt h ew a yt of i n dt h e c o n c e p t u a l ,f u n c t i o n a le r r o r sb e f o r et h ed e s i g ni sc o m m i t t e dt os i l i c o n i ti sv e r y d i f f i c u l tt ou s et h et r a d i t i o n a lv e r i f i c a t i o nm e t h o dt ov e r i f ys o cw h i c hb a s e do n r e u s a b l ei pm e t h o d o l o g ya n dm a n yn e wt e c h n i q u e s h o wt or a p i d l yv e 曲i pa n dt h e w h o l es o ch a sb e c o m eaf o c u si nt h ev e r i f i c a t i o no f s o c aw a n s a c t i o n - b a s e dv e r i f i c a t i o nm e t h o d o l o g y ( t b v ) ,w h i c hb a s e do nt h e r e u s a b l em e t h o d o l o g y , 啪b et h em o s te f f e c t i v em e t h o dt om a k ef u n c t i o n a l v e r i f i c a t i o n t h i sp a p e ri n 仃o d u c e st h et b v sf l o wa n dd e s i g nm e t h o da b o u ts o c s v e r i f i c a t i o na n dp r e s e n t san e wm e t h o do fc r e a t i n gr e u s a b l em o d u l a r i z a t i o n s t e s t b e n c hw h i c hb a s e d0 1 1s y s t e m ca n ds y s t e m cv e r i f i c a t i o ns t a n d a r d ( s c v lf o r s y s t e ml e v e lv e r i f i c a t i o n ;n e w t e s tc a s e sf o rt e s t b e n c ha r eg e n e r a t e d a c c o r d i n gt ot h e d i f f e r e n tm e c h a n i s m so fr a n d o m i z a t i o nb a s e do ns c vs p e c i f i c a t i o n ;a n dt h e nt h i s p a p e ra n a l y z e st w od e s i g nm e t h o d so fb u sf u n c t i o nm o d e la n dt h er e u s a b l ed e s i g no f m o n i t o ri nt h er e u s a b l ef u n c t i o nv e r i f i c a t i o n , p r e s e n t san e wd e s i g nm e t h o df o r m o n i t o rw h i c hm o n i t o r st h es i g n a la n dt h ed a t ar e s p e c t i v e l yf o rm o r ee f f i c i e n t v e r i f i c a t i o n a tl a s t , t h i sp a p e rd e s c r i b e st h es t r u c t t l r eo ff r a m e w o r ka b o u tt e s t h e n c h , a n d i m p l e m e n t a t i o no fas e r i e so fe x p e r i m e n t st ov e t l f ys y s t e m cm o d e lo f4 x 4 p a c k e t s w i t c h 1 1 地r e s u l ti n d i c a t e st h em e t h o dp r e s e n t e di nt h ep a p e rc a nf u l f i l ls o c f u n c t i o n a lv e r i f i c a t i o ne f f e c t i v e l y k e y w o r d s :s o c :t e s t b e n c h :t b v ;口:r e u s a b l e v i 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已发表 或撰写过的研究成果。参与同一工作的其他同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 签名:日期: 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即:学 校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学校可 以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:导师签名: n 上海大学硕士学位论文 t h e p o s t 掣a d i l a t cd i s s e r t a t i o no f s h a n g h a lu n i v e r s i t y 第一章前言 1 1s o c 设计与验证技术 集成电路i c ( i n t e g r a t 艘lc i r c u i t ) 的发展随着摩尔定律演绎了三十多年,现已 进入了深亚微米发展阶段,单个i c 芯片的集成度达到了数千万和上亿的规模, 芯片设计的复杂度越来越高;同时,人们对芯片的规模、功能、速度、可靠性、 成本等要求也愈来愈高。传统设计方法成为了集成电路产业的瓶颈,为了应对芯 片设计复杂度的不断提高和用户要求的不断提高,提出了新的解决方案系统 芯片s o c ( s y s t e mo nc h i p ) 1 l 的设计方法。系统芯片是指在单一硅芯片上实现信号 采集、转换、存储、处理和i o 等功能,通过i p ( i n t e l l i g e n tp r o p e r t y ) 重用技术实 现整个系统的功能。 在单芯片上实现复杂系统,不是简单的将过去的设计集成在同一芯片上,而 是需要考虑许多新的技术。这就决定了s o c 的设计必须采用与现在的集成电路 设计不同的方法。s o c 不仅要集成一个复杂的系统,还要求解决各种干扰问题, 要有效地完成系统级设计,是一项十分艰巨的任务【2 】。特别是近年来电子产品的 更新换代周期不断缩短,要求完成芯片设计的时间更短,如果从头完成s o c 的 芯片设计,不仅浪费大量的人力物力,而且难以在规定的时间内完成。为了加快 s o c 的芯片设计,提高s o c 设计效率和可靠性,人们把经过预先设计、预先验 证、具有相对独立功能、可以重复使用的电路模块加入s o c 的设计中,从而简 化芯片的设计,缩短设计时间。这些已验证的可重复使用的电路模块就称为口例 核,利用口核进行芯片设计不再是门级设计,而是职模块和口接口级设计。 这种设计方法就称为基于m 模块的s o c 设计【4 j ,目前已是s o c 设计普遍采用的 一种方法。m 重用技术对集成电路设计,尤其是s o c 设计生产率提高方面的促 进作用相当显著,不但能缩短s o c 芯片设计的时间,还能降低设计和制造成本, 提高可靠性。因此将会给i c 产业和电子工业带来巨大的商业利益,并引起i c 产 业结构的变革。 通常一个s o c 芯片的规模在几百万门至几千万门左右,重用的口模块越来 越多。面对这么高的复杂度,验证成为芯片设计中最困难、最具挑战性的课题之 一,它往往需要花费项目总工作量的5 0 8 0 【5 】。而造成首次流片不通过的原 因中,有7 0 是在验证阶段没有发现功能缺陷导致的,而不是时序或是面积的问 题【6 1 。因此随着s o c 设计规模和复杂度的不断增加,以及产品开发周期不断缩短, 上海大学硕士学位论文 如何快速的验证这些口和整个系统己成为s o c 验证的难点和热点闭。在传统的 基于模拟的功能验证方法中,设计团队首先需要根据设计规范分别开发相应的模 块级( b l o c kl e v e l ) 和系统级( s y s t e ml e v e l ) 验证计划,验证计划通常包含验证设计 功能正确性的各种边界条件( c o m e rc a s e ) 和覆盖率需求。接下来,根据这个计划 开发验证平台( t c s t b c n c h ) 并进行设计各个层次上的验证。这一步工作将一直持续 到满足验证计划的全部要求为止。 然而,s o c 和基于m 重用的设计方法学的出现对传统功能验证方法提出了 新的挑战。在s o c 当中作为独立设计的口模块需要验证、模块与模块之间接口 需要验证、以及最终的集成系统也必须得到验证【7 j ;开发多样、独特的测试平台 需要花费非常多的努力;同时,s o c 集成者对第三方p 缺乏足够了解或相关专 业知识。因此,设计团队希望在验证过程中使用验证重用方法学( v e r i f i c a t i o n r e u s em e t h o d o l o g y ) 1 9 _ 1 1 1 ,把原先的疋验证平台,或者其中的某些构件,重用到 s o c 系统级验证平台上。 验证平台的重用是一种有效的功能验证途径,这种方法允许设计者对于任何 层次、任何应用的设计都可以以最小的花费、最大的连贯性开发高质量的验证平 台。基于事务的验证t b v ( t r a n s a c t i o nb a s e dv e r i f i c a t i o n ) 是基于模拟的验证技术 发展过程中的一个必然阶段,也是验证重用的基础和前提【l “。t b v 通过在验证 过程中引入事务( t r a n s a c t i o n ) 的概念,把信号级提升到一个更高的抽象层次事务 层,在测试和待测模块d u v ( d e s i g nu n d e rv e r i f i c a t i o n ,也叫验证对象) 之间加入 一个模块,这个模块产生t r a n s a c t i o n 所代表的信号变化,并与d u v 实际管脚对 管脚相连。从而方便了测试平台的开发和重用,有助于模拟运行的调试和覆盖率 分析【1 3 】,提高了验证的性能,同时使得验证工程师的工作效率得到极大的提高。 本论文将在事务级验证重用的基本思想下,研究s o c 的功能验证中的关键问题。 1 2 研究意义及目的 芯片设计的发展是信息产业前进的动力,也是整个社会迈向信息化的基石。 在现代社会中,人们的生产、生活、社会活动和以芯片为基础的信息系统的关系 密不可分。随着芯片设计复杂度的增加,验证复杂度也随之增加。特别是在s o c 设计中,口重用设计方法学增加了s o c 验证的困难。因为一个公司内部进行功 能模块的开发往往采用较为统一的设计方法学、接口协议和设计准则。而从外部 获得的m ,可能有其不同的设计观点和数据格式,对于不同类型的口重用如此, 即便对同一类型口也存在这样的问题。而且不同的m 是通过片上总线连接到同 一个s o c 当中,不同设计者设计的s o c 可能使用不同的片上总线,这样又给芯 2 上海大学硕士学位论文 t h cp o s t g r a d u a t ed i s s e x i o no f s h a a g h a iu n i v c r s i t y 片的功能验证带来许多问题。 为了适应日益发展的集成电路的需要,要进一步深入研究验证方法学和重用 方法学,来提高验证的效率,加快整个s o c 的设计。基于事务的验证在验证重 用方法学的基础上提出来的,作为s o c 设计验证的增强,它的技术给编码、调 试、设计工具都带来好处【1 4 1 。更重要的是,基于事务的验证减少了验证所需要的 时间和成本,不参与s o c 设计的人也能根据已经设计好的事务验证模块 t v m ( t r a n s a c t i o nv c d f i c a t i o nm o d e l ) 进行验证,提高设计效率,增强设计信心, 可以迅速发现设计缺陷,消除昂贵的返工过程,提高产品质量以及缩短产品的上 市时间。因此,快速搭建一个强大、高效、灵活、可扩展性好利于重用的验证平 台是芯片设计成功的关键因素之一。 1 3 本文的研究内容 本文研究课题来源于上海一应用材料研究与发展基金项目 s o c 并行软硬件 划分与协同模拟验证技术研究中的子课题面向s o c 事务级验证研究。 该基金项目的研究重点是研究与实现一个在并行环境下运行的高性能软硬 件划分与协同模拟系统及验证平台,对输入的s o c 系统说明,经过一种良好的 软硬件划分算法与自动划分方法,划分为比较合理且符合需求的软件与硬件部 分,并根据划分结果建立软硬件各部分的多层次模拟模型,然后,对所建模型在 事务级验证平台上进行快速验证与测试。 本文主要研究内容是如何利用事务级验证来解决当前验证方法的瓶颈,提高 验证的效率。包括事务级验证方法研究,模块化验证平台的可重用性研究,监视 待测模块监视器的研究,具体内容按章节分如下: 第一章介绍s o c 设计和s o c 的验证技术,以及本课题的来源和研究的意义。 第二章s o c 的验证方法学。讨论了s o c 的典型结构,验证的方法;重点介 绍了s o c 验证面临的挑战和采用验证重用方法学的必要性。 第三章事务级验证分析。介绍了事务级验证的元素,验证环境和流程;分 析了事务级s o c 验证中的模块验证和系统验证以及模块与模块之间 的互联关系,讨论了建立一个从模块级到系统级可重用的验证平台 的可行性。 第四章事务级验证平台的设计。基于s o c 的验证方法学和重用方法学,提 出一个模块化事务级验证平台的设计方案;描述了事务级验证平台 的组织结构;分析了两种总线功能模块实现方式;引入随机测试的 上海大学硕士学位论文 t h ep o s t f a d u a t cd i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y 理论,采用s c v 验证库设计生成随机测试向量,提高了验证的功能 覆盖率;提出一种把物理信号检测和数据接收分开的监视器设计方 法,加快了调试的过程。 第五章最后以4 x 4p a c k e ts w i t c h 芯片为例,对4 4 p a c k e ts w i t c h 模型的四 个主要功能进行验证。通过一系列的实验,评估了论文中提出的验 证平台。 第六章对课题总结,并对下一步工作进行展望。 4 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n 鲥u n i v e r s i t y 第二章s o c 验证方法学 2 1s o c 体系结构 s o c 设计一般都是由第三方m 模块集成的。一个典型的s o c 系统至少应该 包括以下部分【5 】:一个嵌入式处理器核及其存储子系统;i p 核之间的数据通路( 片 上总线体系结构) ;外部存储器的存储控制器;通讯控制器;通用f o 端口;外 设功能模块( a d c ,u a r t , u s b 等) 。图2 - 1 给出了一个基于嵌入式处理器核的s o c 结构框图。 图2 1 典型s o c 的结构 一般s o c 体系结构中采用层次化片上总线o c b ( o nc h i pb u s ) 结构,可以分 成两层:系统总线( s y s t e mb u s ) 和外设总线删p h e r a lb u s ) 。其中,系统总线主要 用于连接多个处理单元( c p u ,d s p ,f p u 等) 以及高带宽的从设备( 片上存储器、 l c d 等) ,构成s o c 的主干。而外设总线则用于连接一些优先权较低或是带宽受 到限制的从设备【l ”,这样的一些功能模块也被称之为外设( p e r i p h e r a l ) ,它们通常 在系统中用于实现具体的应用功能。与系统总线相比,外设总线更加独立于具体 的处理器核,且信号协议更加简单。通过类似这样的层次化总线结构,使得s o c 得以延续p c b 板的优良性能,可以设计出高速的s o c 芯片。 层次化的片上总线结构会带来两个方面的好处。首先通过定义标准的总线接 口,有助于s o c 象p c 机系统那样实现真正意义的混合和适配( m i x & m a t c h ) :其 次,层次化片上总线的每个总线都有它自己的特性,可以很好地满足系统内不同 功能模块的集成需求。高速的处理单元和低速的功能模块分别连接在不同的总线 上,从而提高s o c 的整体性能。 上海大学硕士学位论文 t h el o s t g r a a u 越ed i s s e r t a t i o no f s h a n g h a iu n i v e r s i 坶 2 2s o c 的验证方法 近年来随着芯片产业的发展,s o c 的验证研究在验证技术、验证流程及验证 评估等方面取得了一定程度的进步,但总体而言验证技术仍然落后于设计和制造 能力。当前s o c 业界广泛使用的验证技术主要有基于仿真的技术、静态验证技 术、形式验证技术以及物理验证与分析技术【1 4 1 ,下面分别介绍一下这几种技术。 1 仿真技术 仿真技术是一种动态验证技术,涉及到基于事件的仿真,基于周期的仿真, 基于事务的验证,软硬件协同验证,模拟混合信号仿真等等。 基于事件的仿真 在基于事件的仿真中,仅在电路某些节点的逻辑电平发生改变的情况下才对 电路中相应节点的逻辑值进行重新计算。只有在电路中发生了某个或某些事件 时,才对事件所产生的影响进行计算,以确定电路可能发生的变化。 基于周期的仿真 基于周期的仿真只是在有效的时钟边沿检测到输入信号发生变化时才重新 计算相关的输出结果,从而极大地加快了仿真器的处理速度。但基于周期的仿真 只提供了一种快速的功能仿真手段,不能进行时序分析,而且应用仅局限于同步 设计。 基于事务的验证 基于事务的验证允许在信号引脚之外的事务级之上对设计对象进行验证和 调试。将系统中各功能块之间所有可能的事务类型都建立起来,并系统的加以测 试。在基于事务的验证中使用总线功能模型b f m ( b u sf u n c t i o n a lm o d e l ) u 6 】,总 线功能模型为在设计对象的硬件接口上运行事务提供了一种手段,它根据接口协 议的要求来驱动各个互联信号。采用标准的硬件描述语言( h d l ) 或者c + + 易于构 建总线功能模型,容易实现自核对和定向随机验证,提高了验证效率。 软,硬件协同验证 软硬件协同验证中,将软件和硬件同时集成起来并加以验证。在设计周期 的早期同时对软件和硬件加以验证,这样能够加快产品的上市时间。它提供了足 够的性能来运行接口可信度测试、代码片断、各个驱动程序和实用工具的代码。 但是由于能力和仿真的速度问题,如今已有的系统验证环境还无法提供足够的性 能在目标实时操作系统上运行整个应用软件。 模拟混合信号仿真 6 上海大学硕士学位论文 t h ep o s t g r a d u md i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y 模拟混合信号仿真比单纯的模拟电路仿真或单纯的数字电路仿真复杂。通常 遵循的仿真技术是单独验证模拟混合信号功能块。模拟混合信号功能块的接口部 分被当做数字信号,在集成到系统芯片之后再去验证该接口。 2 静态验证技术 静态验证包括代码静态检查和时序分析( t u n h :l ga n a l y s i s ) 两种。用静态技术 来实现验证不需要测试平台和测试向量。 代码静态检查 代码静态检查对设计对象的代码作静态检查来验证其在语法上的正确性。可 以在设计周期的早期进行代码静态检查,查出设计代码中的简单错误,避免使用 更高级的工具而耗费大量的时间。 静态验证 静态验证的另一项技术是时序分析。时序分析是分析、诊断和确认一个设计 的时序特性的彻底方法。它将整个电路分解为一组组路径,然后分别计算电路中 每条路径的延时,并对照时序约束检查任何可能的时序违反情况。由于时序分析 不需要输入测试向量,因此比传统的仿真技术要快好几个数量级,适用于较大规 模的设计。此外,时序分析可以辨别设计中所有的关键路径( c r i t i c a lp a t h ) ,但所 辨认出的关键路径中可能存在伪路径f f a l s ep a t h ) 。时序分析只适用于同步电路设 计。相比之下,动态验证不局限于同步电路,且验证的结果比较准确,不会辨别 出伪路径,但其不足在于速度较慢,且有可能遗漏某些关键路径,因为仿真技术 在辨别关键路径时严重依赖于输入的测试向量。因此,在当前较大的设计中,通 常同时使用动态和静态验证技术,以尽可能保证设计的可靠性。 3 形式验证 形式化验证是用数学的方法证明设计的正确性,由于形式化验证采用静态 的、数学的方法,因而形式化验证不需要测试向量,目前,可以通过有限状态机 f s mf f i n i t es t a t em a c h i n e ) 、数据流图d f g ( d a t af l o wg r a p h ) 、离散事件、p e t f i 网( p e t r in e t s ) 等方法建立s o c 被设计对象的数学模型。常用两种方法【”】:等价 性检验( e q u i v a l e n c ec h e c k i n g ) 和模型检查( m o d e lc h e c k i n g ) 。 等价性检验 等价性检验是用数学的方式证明电路的两种形式是等价的。设计中一般用来 比较门级网表和r t l 级网表是否等价。许多e d a 公司己开始提供等价性检验工具, 如s y n o p s y s 公司的f o r m a l i t y 。f o n n a l i t ) r 比较两个设计时,将它们读入存储器, 然后在它们的数据结构上使用形式化的数学算法。等价性检验的最大优点是以 r t l 作为设计的基本参照( r e f e r e n c e ) ,而不管对最后的网表做过什么样的改动。 7 上海大学硕士学位论文 t h cp o s t 掣 a d u a t cd i s s e r t a t i o no f s h a n g l i a iu n i v c r s i l y 对于大规模的设计而言,门级和r t l 之间的形式化验证效率低下,特别是遇到多 次迭代的情况。在这种情况下,最好是在r t l 和门级网表之间使用一次形式化验 证,然后用门级网表做为以后迭代的基本参照。 模型检查 模型检查是用来判断被设计的s o c 对象是否满足所定义的属性要求,这些 属性从规范说明中抽象而来。模型检查工具能够自动搜集和分析上述属性,形式 化验证工程师就可以根据模型检查的结果修改相应的设计错误。这种方法适合于 对s o c 设计中复杂的控制单元进行验证,例如a m b a 片上总线的仲裁器。当然, 模型检查不能对s o c 被设计对象进行仿真,也不能进行时序上的分析;而且,随 着s o c 设计规模的增加,属性要求也将大大增加,因此模型检查工具在处理上述 属性时将面临挑战,所以模型检查只是对其它验证方法的有益补充。 4 物理验证与分析 在深亚微米设计中,必须将所有的电学问题和工艺问题都纳入考虑并解决互 联线寄生效应,因为互联线延迟凌驾于门延迟。务必分析并解决的问题有:时序、 信号完整性、串扰、取电压降、电迁移、功耗分析、工艺天线效应和光学临近 效应修正。工业界现有的做法是:在版图之前的设计阶段估算各种物理效应,在 版图之后的设计阶段再提取和分析这些物理效应。 5 各种验证方法的比较 上述这些验证方法都有其自身的优点和缺点,表2 1 给出的是部分验证方法 的比较。从表中可以看出,不同的验证方法在系统级中侧重的层次有所不同,因 此验证过程中所使用的模型也有区别。例如,基于事务的方法一般是在s o c 事 务级层次使用,采用的是事务级模型;而形式化验证方法一般在s o c 的数学算 法级层次使用,数学算法级比事务级的抽象层次更高,采用的模型是数学模型。 评价s o c 系统级验证方法最关注的是它们的验证能力、仿真速度和时间开 销等等【埽】。在s o c 系统中采用哪种验证方法取决于被设计对象的复杂性和实际 的验证要求,而且还取决于所具备的验证条件。在实际的验证过程中,可以同时 采用某几种方法一起对s o c 设计进行验证。 8 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s t m n g h a iu n i v e r s 姆 表2 - 1 验证方法的比较 基于事件的仿真 事务级验证软,硬件协同验证形式验证时序静态分析 验证功能能能能 否否 抽象层次 行为级、寄存嚣 事务级功能级寄存器传输级、门级 门级 传输级、门级 使用模型行为模型事务级模型 功能模型 算法模型 无 验证时序能能能不能能 仿真速度慢 高慢中等慢 时间开销高中等极高中等 高 成本低低中等中等低 重用性不利于利于不利于 中等不利于 2 3s o c 验证挑战 近几年半导体工业面临的主要挑战是如何才能花费比以往少得多的时间设 计出功能复杂度和应用领域多样性满足需求的系统芯片。在有待解决的各种挑战 中,验证占到了相当重要的地位。虚拟插座接口联盟i l 卅( v s i a ) 于1 9 9 9 年成立的 验证专题研究组之际,众多验证专家得出了“验证不仅是很棘手,而且是非常棘 手”的结论。设计复杂度的增加会导致验证难度的增加。实际的情况是,设计任 务随着复杂度呈线性增长时,验证所需的努力是指数倍增长的,见表2 - 2 : 表2 - 2 验证复杂度与设计规模的增长的关系 设计规模( g 咖s ) 设计参数需验证的状态数 s r f l i p f l o p 2 2 输入( i n p u t ) 2 1 “- - 2 2 c 0 8 04 k 2 0 0 个寄存器位( b i t ) ,1 52 w u , - 咖a _ 2 2 1 5 个基本输入( i n p u t ) 从表中可以看到,为了完成这样一个产品的验证,不仅仅要考虑外部端口的 组合,还需要考虑各个功能模块间的相互操作和所有的操作模式。而目前复杂芯 片都包含了多个功能模块、处理器、总线协议和接口等,这就说明在大规模的集 成电路设计中,采用穷举法来进行验证是不可行的,另外还一致认为没有任何一 种设计工具能够单独解决验证问题,需要结合传统仿真、定向验证和随机验证等 多种技术在内的一系列工具和多种语言来将设计错误减至最少。 9 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y 另外,s o c 设计所关注的焦点已经发生了变化,不再是某个新功能的设计实 现,而是如何去评估、验证和集成多个现有的软硬件模块。s o c 的设计方法将 以组装为基础,形成自己的鲜明特色,包括更深入的系统级设计、软硬件并行 设计与验证、在设计流程的所有层次上进行验证以及合理利用外界的设计咨询服 务等等。不管是功能级、逻辑级还是门级,动态仿真验证是电路设计必不可少的。 同时,s o c 的规模往往远大于普通的a s i c ,深亚微米工艺带来的设计困难,都 将使得s o c 验证的复杂度大大提高。图2 2 表明了日益增长的验证需求和验证技 术的性能之间存在着的鸿沟。 图2 - 2 验证性能与设计复杂度的关系 s o c 和基于重用的设计方法学的出现对传统功能验证方法提出了新的挑战, 主要体现在以下三个方面: ( 1 ) 验证控制问题。传统的口验证,职的输入输出端口可以被测试向量所直 接访问,而在s o c 验证过程中,单个m 模块被嵌入到s o c 中,此时的输 入输出端口已变成了m 模块的互连,口模块输入偷出端口在s o c 内部, 从s o c 的外部输入输出端口是无法直接访闯的。口模块失去了原有的可 控性和可观察性,从而使得s o c 中的p 模块的验证变得困难。同时它还意 味着要实现口模块的验证重用,必须要为单个的m 模块提供相应的验证 访问通道。 ( 2 ) 验证的重用性。在基于重用的设计方法学中,作为独立设计的m 需要验证, 集成到s o c 中的m 也必须得到验证。然而开发多样、独特的验证平台需要 花费非常多的设计。因此,类似于重用口设计s o c 一样,其他设计团队也 希望能够重用m 验证平台中的部分或全部元件来构建s o c 系统验证平台。 传统验证方法虽可以验证s o c 的基本功能,但可能会遗漏某些测试空 间;同时,验证平台是在信号级的接口上直接与d u v 相通讯,缺乏层次 化概念和较高的抽象层次,不易验证平台的扩充和重用 2 0 l 。 1 0 0暑誊黑-量。嚣 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y ( 3 ) 验证的复杂性。验证的目标是确保设计实现了预期的功能。通常一个s o c 芯片的规模在几百万门至几千万门左右,面对这么高的复杂度验证工程师 必须要开发出一套高质量( 高覆盖率) 的测试( 激励) 集。传统功能验证的抽 象层次较低,随着设计规模的不断增加,其测试集的开发存在周期长、代 码过于庞大等缺点,很大程度上影响了产品的质量和产品的设计周期。 实践证明,验证重用方法学( v e r i f i c a t i o nr e u s em e t h o d o l o g y ) 1 9 - “堤解决上述 问题的最有效方法。 2 4 基于事务的验证 在验证重用方法学的基础上,引入了基于事务的验证。基于事务的验证通过 在验证过程中引入事务的概念,把验证从信号级提升到事务级,在测试和d i j v 之 间加入一个层次,这个层次与d u v 实际管脚对管脚相连,从而使得不了解信号级 信息的验证人员也可以编写测试,方便了验证平台的开发和重用,利于验证控制。 不但有助于更好的重用激励和响应,而且有助于模拟运行的调试和覆盖率分析 【2 1 1 ,提高验证了的性能,同时使得验证工程师的工作效率得到极大的提高。t b v 在1 9 9 8 年【8 】首次提出,便迅速在集成电路中得到广泛的应用。 在传统功能验证过程中,信号级激励的编写始终面对的是0 和1 。t b v 方法 学利于设计者以更直观的方法开发验证激励,这就好像人们是通过键盘和鼠标, 而不是二进制的纸带与计算机通讯一样方便。通过将抽象层次从信号级提升到事 务级,验证工程师就很容易编写验证激励、调试模拟和分析功能覆盖率。这种支 持对约束随机测试模式尤其有用,它确保了随机激励生成器确实产生了模拟各种 可能情况的验证激励。 事务级是设计体系结构所处的抽象层次,系统的体系结构设计者决不会在一 开始就考虑电路各个具体引脚之间的关系。它们更多考虑的是整个系统的数据 流、数据的存储方式等问题。因此,从这一角度来看,t b v 方法学也是高层次设 计过程的自然延伸,它允许在系统级编写确定性激励和随机激励,并直接在系统 级行为模型上使用。 2 5 小结 本章介绍了s o c 的验证方法学的基本知识,讨论了s o c 的典型结构和s o c 的验证方法。s o c 验证方法主要有基于仿真的技术、静态验证技术、形式验证技 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n g h a iu n i v c r s i t y 术以及物理验证与分析技术四种。由于s o c 和基于重用的设计方法学的出现, 传统功能验证方法已不适应s o c 的验证,本章具体分析了s o c 验证面临新的挑 战。实践证明,验证重用方法学是解决上述问题的最有效方法。而基于事务的验 证是在验证重用方法学的基础上提出的,它的运用提高了验证的性能。 1 2 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y 第三章事务级验证分析 3 1 事务级验证的元素 基于事务的验证把验证提高到一个更高的水平,信号和细节被模型化和包装 起来,验证人员不必过多考虑细节之间的关系。在基于事务的验证平台当中有三 个主要的概念:事务,事务验证模块和测试【。 所谓事务,是指事务验证模块与设计之间的通过接口进行的数据或控制的单 一传输瞄】。每个事务都可用一个标识及相关属性来表示,如事务的名称、地址和 读写的数据、起始时间、结束时间等等。事务的概念很宽,它可以简单到一个 存储器读写操作,也可以复杂到通讯通道内整个数据包的传输。例如a ,b 各 是一组信号变化,可以认为是两个事务,如果把它们组合起来,也可以认为是一 个事务c ,c 和另一个d 事务也可以组合为一个大的事务e 。事务可以采用函数 的形式表达,如t r a n s a c t i o n x ( a r gl ,a r g2 ,a r g n ) :其中,t r a m a c t i o n x 为 事务的名称,a r g n 为事务的具体属性参数。 事务验证模块t v m ( t r a n s a c t i o nv e r i f i c a t i o nm o d e l ) ,有时也被称作总线功能 模型b f m 或者事务器( t r a n s a c t o r s ) 2 3 1 ,是任务的一种汇集,用于执行某个特定 类型的事务。它可以理解成是测试与d i n 之间的一个附加层,负责将测试激励发 出的事务与d u 、,的具体信号协议之间相互转换,如图3 1 所示。对相同的接口来 说,t v m 一旦建立好,就可以很容易地被重复使用。并且事务验证模块还能够 追踪、记录并显示包括错误在内的所有事务信息。 t v md u v 图3 - 1 事务验证模块 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r t a t i o no f s h a n g h a iu n i v e r s i t y 相对于传统的验证而言,基于事务的验证,验证工程师只需要知道事务的类 型,而不必关心附加层和管脚的信息,这可大大降低对验证工程师的要求,对芯 片知识不是很了解的人也可以从事验证工作。 测试哟是为系统中每一个事务验证模块生成任务序列的程序。测试程序间 接调用事务验证模块并触发被测试对象。 3 2 事务级验证的流程 基于事务验证的流程一般包括三个阶段:验证平台搭建、设计调试、功能覆 盖率分析。 1 验证平台搭建 验证平台,也称为测试平台,是指用来完成对待测模块d u v 提供激励,并 观察d u v 输出响应的一系列元件( c o m p o n e n t ) ,及这些元件与d u v 之间的互连 结构。传统验证平台与d l r v 之间的关系如图3 2 所示: ; 验证平台 ; l 臣 计巨寸拒画习l ! 一: i j 图3 - 2 验证平台 主要包括激励生成( s t i m u l u sc 嘲n e r a t i o n ) 和输出响应( r e s p o n s ec h e c k ) 两个 部分。激励部分用于对d u v 提供激励,响应部分用于对d u v 的输出进行处理。 验证平台为d u v 提供输入,并且监视d u v 的输出,且与d u v 一起构成一个闭 合系统,对外没有输入,也没有输出。验证工程师所面临的挑战就是如何确定 d u v 的输入模式( i n p u tp a t t e r n ) ,并判断d u v 输出的正确性 2 4 1 。 在基于事务的验证中,激励和d u v 之间多了一个附加层,事务验证模块层。 每一个接口都需要一个事务验证模块,事务验证模块反过来又由测试来驱动1 1 4 j 。 测试中含有根据设计对象的功能而建立的一组事务,验证平台如图3 - 3 所示。 j 。! 兰嚣 图3 3 基于事务验证的层次结构 1 4 上海大学硕士学位论文 t h ep o s t g r a d u a t ed i s s e r 喇o f s h a n g h a iu n i v e r s i 母 左侧是测试层,用于在系统中协调事务验证模块层的处理。测试是一个程序, 按照系统测试的要求,负责产生系统中的各种测试向量来驱动t v m ,而不考虑 d u v 接口上的具体信号协议,它给系统中的每一个事务验证模块生成组织好的 ( 确定的或随机的) 任务调用序列。 中间是事务验证模块层,一个事务验证模块本质上属于测试程序和设计本身 之间的一个抽象层次。根据d u v 抽象出事务,编写t v m 执行特定的事务,产 生事务所代表的信号变化,不同的t v m 由不同的接口协议所定义出来,并与 d u v 管脚对管脚相连。所有t v m 的集合称之为事务验证模块层。此验证平台 仅仅是一个基础,很显然,它可以进一步的划分,从而实现模块功能的独立化、 简单化。 2 设计调试 利用基于事务的验证,能快速地查看事务的属性、波形的变化、事务的输出 提示等 2 5 1 ,可以很快找到错误的事务,然后再视需要进行信号层次的调试。这样 就不必去详细查看许多底层信号和详细的数据,缩短了发现设计中的功能和时序 上的错误或与规范不一致的时间。例如要判断a m b a 总线a h b 上的r e a d w r i t e 动作是否正确。传统的方法,每一次r e a d w r i t e 操作,验证
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 艺术节现场活动主持人的讲话稿范例
- 高职院校教学改革创新案例集
- 小学语文课堂教学案例集锦
- 信息技术岗位考核标准
- 六年级语文易混形近字及词语搭配
- 公务员考试综合能力训练题库
- 医院医保报销流程及资料准备规范
- 2025广东深圳市规划和自然资源局光明管理局劳务派遣人员招聘2人笔试备考试题及答案解析
- 2026国家开发银行校园招聘笔试备考题库及答案解析
- 建筑采暖及给排水施工规范
- 7-3审计报告附注(小企业会计准则)
- iOS面试题面试手册
- 《招标采购专业实务》培训课件
- 岩土工程词汇中英文对照大词典(很全)
- GB/T 41776-2022法庭科学弹药鉴定方法
- LY/T 2787-2017国家储备林改培技术规程
- GB/T 3921-2008纺织品色牢度试验耐皂洗色牢度
- 三级安全教育档案模板(完整版)
- 第三单元名著导读《朝花夕拾》之《二十四孝图》详解 课件(共17张ppt) 部编版语文七年级上册
- 第三卷车体-第一分册70a-ccd sa02.半永久车钩
- 露天采石场供配电系统安全管理制度
评论
0/150
提交评论