




已阅读5页,还剩60页未读, 继续免费阅读
(计算机应用技术专业论文)通信芯片验证方法的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨工程大学硕士学位论文 摘要 芯片的验证工作,对提高投片成功率起到关键性作用。有资料显示,造成 芯片一次投片成功率低于5 0 的主要原因就是功能验证还不够完善。根据不同 领域的验证对象和不同层次的验证模块,功能验证有很多研究方向,如针对 c p u 、片上总线、存储器等的验证。由此可见根据研究对象制定验证策略和验证 方法对于提高投片成功率具有很大指导意义。 通信芯片一般具有实现收发帧、重传、竞争信道、退避等功能。根据这些 特点,它的功能验证需要模拟网络环境中的情况来设计测试用例,验证范围不 仅包括芯片自身在竞争到信道后的模块处理情况,还包括在网络中的多站点竞 争的情况。针对这些要求论文提出了分阶段的验证策略,第一阶段采用单向施 加激励触发的白盒验证方法,第二阶段模拟多站点的网络环境,施加多站点竞 争发送数据等测试用例,并应用站点的处理结果触发下一事务的发生,达到循 环自触发的半自动化测试。 目前验证技术的发展都是要达到抽象化、自动化、可重用性和可形式化验 证等目标。论文研究通信芯片的验证方法也是从上述几方面出发,验证环境采 用层次化结构,封装接口引脚并实现功能的事务级抽象;采用加约束的随机生 成器产生测试用例,提高验证自动化程度;验证层次中各模型功能独立,便于 重用到其他通信芯片或下一代研发产品的验证中;采用s y s t e m v e r i l o g 语言搭建 验证模型,使用断言来验证协议属性或要求,能够实现部分形式化验证。最后 使用结构覆盖率和功能覆盖率相结合的方法分析验证情况,使验证达到工程要 求。 关键词:验证技术;功能验证;通信协议;断言;随机化 哈尔滨二r 程大学硕士学位论文 a b s t r a c t c h i pv e r i f i c a t i o np l a y sak e yp a r tt oi n c r e a s et h er a t i oo ft a p i n g o u ts u c c e s s f u l l y s o m ed a t ai n d i c a t et h a tt h em a j o rr e a s o nw h yt h er a t i oo ft a p i n g - o u ts u c c e s s f u l l y o n e t i m ei sb e l o w5 0 i st h a tf u n c t i o nv e r i f i c a t i o ni sn o tw e l ld o n e a c c o r d i n gt o v e r i f i e do b j e c t si nd i f f e r e n ta r e a sa n dv e r i f i e dm o d u l e si nd i f f e r e n tl e v e l s ,t h e r ea r e m a n yf u n c t i o nv e r i f i c a t i o nd i r e c t i o n s ,s u c ha sc p u ,o n - c h i pb u s ,m e m o r ya n ds oo i l s om a k i n gv e r i f i c a t i o ns t r a t e g i e sa n dm e t h o d sa c c o r d i n gt oi n v e s t i g a t e do b j e c t sh a sa g r e a tg u i d i n gs i g n i f i c a n c e g e n e r a l l y , c o m m u n i c a t i o nc h i p s h a v et h e s ef u n c t i o n s :f r a m e e x c h a n g e , r e t r a n s m i s s i o n ,c h a n n e lc o m p e t i t i o n ,b a c ko f fa n ds oo n b a s e do nt h e s ec h a r a c t e r s , t e s tc a s e sm u s tb ed e s i g n e db ys i m u l a t i n gn e t w o r ke n v i r o n m e n ti nt h ef u n c t i o n v e r i f i c a t i o n n o t o n l y t h ec h i p p r o c e s s i n g c o n d i t i o n sa f t e r g e t t i n g c h a n n e l c o m p e t i t i o nb u ta l s ot h ec o m p l i c a t e dc o n d i t i o n so fm u l t i s t a t i o nc o m p e t i t i o na r e c o n t a i n e di nt h ev e r i f i c a t i o n o nt h e s er e q u i r e m e n t s ,p e r i o d so fv e r i f i c a t i o nm e t h o d a r ep r e s e n t e di nt h i st h e s i s w h i t eb o xv e r i f i c a t i o nm e t h o dw i t hs i n g l ed i r e c t i o nt e s t c a s e si st a k e ni nt h ef i r s tp e r i o d m u l t i s t a t i o nn e t w o r ke n v i r o n m e n ti ss i m u l a t e di n t h es e c o n dp e r i o d t e s tc a s e si m i t a t i n gt r a n s m i t t i n gu n d e rm u l t i s t a t i o nc o m p e t i t i o n a r ea d d e d t h en e x tt r a n s a c t i o ni st r i g g e r e db yt h er e s u l t sw h i c hg e n e r a t e db yt h e s t a t i o n s h a l fa u t o m a t i o ni si m p l e m e n t e db ys e l f - t r i g g e r e dc i r c u l a r l y a t p r e s e n t ,a b s t r a c t i o n , a u t o m a t i o n ,r e u s a b i l i t y a n d e a s y i n g t of o r m a l v e r i f i c a t i o na r et h ev e r i f i c a t i o nt e c h n i q u e s g o a l s i nt h i s t h e s i s ,r e s e a r c h o n c o m m u n i c a t i o nc h i p s v e r i f i c a t i o nm e t h o d ss t a r t sf r o mt h e s ea s p e c t st o o m u l t i - l e v e l h i e r a r c h yi sb u i l ti nt h ev e r i f i c a t i o n ,i n t e r f a c ep i n sa r ep a c k a g e da n df u n c t i o n sa r e a b s t r a c t e di n t ot r a n s a c t i o nl e v e l t e s tc a s e sa l eg e n e r a t e db yt h er a n d o mn u m b e r g e n e r a t o rw i t hc o n s t r a i n t s ,w h i c hi n c r e a s e st h ea u t o m a t i o no fv e r i f i c a t i o n e a c h m o d u l ei nt h ev e r i f i c a t i o nh i e r a r c h yi sf u n c t i o n - i n d e p e n d e n t i ti se a s yt ob er e u s e d i n t oo t h e rc o m m u n i c a t i o nc h i p s v e r i f i c a t i o no rn e x tg e n e r a t i o np r o d u c t s v e r i f i c a t i o n v e r i f i c a t i o nm o d u l e sa led e s c r i b e db ys y s t e m v e r i l o g ,a n dp r o t o c o lp r o p e r t i e sa n d r e q u k e m e n t sa r e v e r i f i e db ya s s e r t i o n s ,w h i c hc a nr e a l i z ef o r m a lv e r i f i c a t i o n 哈尔滨工程大学硕士学位论文 p a r t i a l l y f i n a l l y , s t r u c t u r ec o v e r a g ea n df u n c t i o nc o v e r a g er r ec o m b i n e dt oa n a l y z e t h ev e r i f i c a t i o n ,w h i c hc a l lm a k ev e r i f i c a t i o nm e e tt h ee n g i n e e r i n gr e q u i r e m e n t s k e y w o r d s :v e r i f i c a t i o nt e c h n o l o g y ;f u n c t i o nv e r i f i c a t i o n ;c o m m t m i c a t i o n p r o t o c o l ;a s s e r t i o n ;r a n d o m i z a t i o n 哈尔滨工程大学 学位论文原创性2 声明 本人郑重声明:本论文的所有工作,是在导师的指导 下,由作者本人独立完成的。有关观点、方法、数据和文 献的引用已在文中指出,并与参考文献相对应。除文中已 注明引用的内容外,本论文不包含任何其他个人或集体己 经公开发表的作品成果。对本文的研究做出重要贡献的个 人和集体,均己在文中以明确方式标明。本人完全意识到 本声明的法律结果由本人承担。 作者( 签字) :么捆 日期:d 咖莎年月厂万日 哈尔滨工程大学硕士学位论文 1 1 选题的目的和意义 第1 章绪论 由于信息技术的飞速发展,使得人们对网络通信的需求也随之不断提高, 拥有更快的通信速度、更好的通信质量、更大的通信流量、更便捷的通信方式, 这些都是目前网络通信的研究方向。蜂窝移动通信系统、无线局域网、蓝牙技 术、家庭网络、红外线技术等移动通信技术纷纷涌现。这些技术的出现,不仅 极大的方便人们的生活,同时也推动了通信技术的发展。 由于硬件某些时候有比软件速度更快等特点,使得集成电路设计厂商不断 研制新的通信芯片和通信设备,比如无线通信网卡、手机芯片、交换机、路由 器等。由于这些通信产品或设备都具有收发、路由选择等功能,使得他们具有 一些共性,那么在设计和验证这些通信芯片的过程中必然也有一些相近之处。 课题选择对通信芯片进行验证,是因为大部分通信芯片都遵守i e e e 网络 协议规范,根据网络五层或七层结构的特点来设计产品。在协议的控制下,两 个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需 要使用下面一层所提供的服务。而芯片硬件设计的部分往往集中在物理层和数 据链路层,物理层的任务是透明地传送比特流;数据链路层的任务是发送上层 交付的数据到物理层,接收下层提交的数据,分析帧内数据和控制信息( 如同 步信息、地址信息、差错控制,以及流量控制信息) 等。目前对于通信芯片的 验证方法大多是采用功能验证中自盒测试与原型验证方法相结合。在白盒测试 中模拟网络竞争情况下的测试用例比较复杂,而使用原型验证方法往往由于硬 件平台容量的限制,要同时模拟多个站点需要很多个原型板,增加了验证成本。 课题研究了目前的验证方法学,并分析其中的层次结构和指导原则,针对 通信芯片的验证提出了验证平台的搭建方法,该方法的意义主要体现在以下五 个方面。 第一,采用基于断言的验证方法,把断言插入到设计中去,便于随时随处 检查砌m 代码功能及时序。它可以检查一些边角情况,为验证人员提高覆盖率 提供了捷径。 哈尔滨工程大学硕士学位论文 第二,采用抽象化的层次结构搭建验证平台,具有封装,继承,递归等面 向对象特性。一旦低层次的功能得到验证,就能借助于层次结构化的测试平台 在更高的层面上进行验证工作,突破了总线功能模型很难添加新的协议层的单 一结构特点。 第三,采用单向测试激励触发和双向循环触发网络相结合的验证策略,使 验证更加全面,验证平台更能测试出真实网络竞争环境下芯片的功能。 第四,使用随机仿真模拟自动化。精心设计信号源,使随机激励生成一些 目前也许还不能预知的有显著意义的测试信号和条件。当随机激励源不能生成 所需的激励信号时,或者所需的激励不能用无侧重的随机信号源来产生时,可 以对激励信号源施加约束,产生人为规定的激励概率( 一般为1 0 0 ) 。 第五,层次结构分明,使得功能模型和实例化模型分开,便于重用功能模 型。对于通信芯片而言,由于其共有许多功能特性,使得验证平台的移植、重 用功能模型具有更加重要的意义。 综上,研究目前正在火热发展的通信芯片的共有特性,并针对这些特性来 说明采用验证方法学的指导思想来搭建验证平台是具有很大意义的。 1 2 目前验证技术研究现状 集成电路验证研究内容很多,如:口核模块级验证( b l o c k l e v e l v e r i f i c a t i o n ) 、仿真验证( s i m u l a t i o n ) 、系统级验证( s y s t e m l e v e lv e r i f i c a t i o n ) 、 软硬件协同验证( h 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 ) 、快速原型验证( r a p i d s y s t e mp r o t o t y p e ) 、等价性检查( e q u i v a l e n tc h e c k i n g ) 、静态时序分析和时序 验证( s t a t i ct i m i n ga n a l y s i s & t i m i n gv e r i f i c a t i o n ) 、物理验证( p h y s i c a l v e r i f i c a t i o n ) 等。随着验证技术的逐步发展,验证方法由最初的直接测试向量 生成( 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 ) ,到约束随机测试( c o n s t r a i n t e dr a n d o m t e s t ) ,再到覆盖率驱动验h 正( c o v e r a g e d r i v e nv e r i f i c a t i o n ) ,一直到最新的基于 断言的验证方法( a s s e r t i o n - b a s e dv e r i f i c a t i o n ) ,各种验证方法都在不断创新发 展。 芯片验证的任务包括对设计的验证和对实现的验证f 1 j 。对设计的验证是检 查设计的描述是否与设计要求一致;对实现的验证是检查综合后的电路结构是 2 哈尔滨工程大学硕士学位论文 否与抽象层次的设计一致。前者主要侧重于功能验证,采用软件搭建验证平台 进行验证和基于f p g a 的模拟验证。而后者大部分为等价性检验。 由于功能验证是设计过程中比较重要的步骤,对检验设计起到关键的作 用,因此它也成为目前验证工程师和学术界研究的热点。功能验证用于检查集 成电路设计是否符合设计计划制定的功能要求。正在发展和使用的功能验证方 法有如下几种: 1 ) 基于总线结构的验证方法。开发各种总线功能模型( b f m ) ,这些模 块具有可重用性,可以移植或嵌入到验证平台中。 2 ) 覆盖率触发的验证方法。根据工具提供的代码覆盖率,分支覆盖率等 信息评佶验证策略,指导验证过程和测试用例的范围。 3 ) 基于断言的验证方法i 硼。使用断言可以很方便的对一个给定输入设计的 期望行为进行精确的描述,从而可以很方便的描述输入输出行为、总线协议以 及设计中的一些复杂的关系。 另外还有动态模拟、形式验证、软硬件协同验证等方法,都是验证人员经 常使用的验证方法。 1 3 课题的主要研究内容 课题是结合了目前正在发展的各种验证技术,以验证方法学为指导,采用 s y s t e m v e r i l o g 语言来搭建验证平台,验证通信芯片。通过对一个符合无线通信 协议8 0 2 1l b 的设计模型来搭建验证平台的方法来说明此验证方法的益处。验 证结果表明该验证方法达到了预期的目的,使验证平台具有较好的验证覆盖率, 很高的可重用性,较少的验证代码量。 主要的研究内容有以下几个方面。 1 ) 详细分析当前常用的芯片验证技术及其特点,研究正在发展的验证方 法。总结目前验证通信芯片的方法,并分析他们的优缺点。 2 ) 对通信芯片的设计进行研究,分析其协议规范,研究他们在收发帧、 竞争退避等方法中数据的传输和控制功能的设计共性。通过归纳通信芯片所共 有的这些特性,设计了一个拥有上述共性的通信芯片,它符合i e e e 8 0 2 1 1 b 协 议i b s s 模式下的通信方式。具有检测信道回避碰撞、支持节能方式、a e k 应答 机制及支持可重传等功能。片内采用a r m 公司的高速a h b 总线作为连接控制模 3 哈尔滨工程大学硕士学位论文 块和存储器等模块的总线。 3 ) 对通信芯片的设计进行验证:提出了基于抽象化层次结构的验证环境 搭建方法。该层次结构包括信号层、功能层、场景层等。每一层都对应不同的 抽象层次,高层次具有很高的事务抽象层次,便于在高层次加入事务级的测试 用例。根据层次结构各模块的可重用性,提出在测试过程采用单向测试激励和 双向自触发激励的方法相结合。单向测试即为在上层施加激励,检测被测设计 的结果是否符合设计的要求,但这种情况对于信道的竞争和退避不能做到随机 化。因而采用双向自触发的方法对上述情况进行补充测试,使验证更加全面和 随机化。 4 ) 产生测试用例采用加约束的随机数生成方法,实现了测试的半自动化。 采用基于覆盖功能点和基于断言相结合的功能覆盖率统计方法,并根据工具提 供的结构覆盖率和验证人员编写的验证环境产生的功能覆盖率来分析验证工作 的情况,提出基于各种覆盖率结果不高的改进方法,通过逐渐完善验证环境或 者修改设计来使覆盖率达到设计要求。 1 4 论文的结构 论文的结构安排如下: 第一章说明课题的目的和意义,并介绍目前验证技术的研究现状。阐述了 课题的主要研究内容以及论文的结构安排。 第二章介绍验证技术的相关知识,详细分析了验证的常用技术、方法、验 证策略,以及验证技术的发展趋势。说明了目前对于通信芯片采用的验证方法 和策略,并总结这些方法的特点。 第三章分析通信协议的发展趋势,总结通信芯片设计共有的功能特性,针 对这些特性设计了符合8 0 2 1 1 b 协议的i b s s 模式下通信规范的设计模型。该模 型具有基本收发数据帧、随机退避算法竞争信道、支持节能方式、支持重传功 能等通信芯片的特点。 , 第四章为通信芯片的设计模型搭建层次化的验证平台,采用单向触发和双 向自触发的验证策略,把验证工作分为两个阶段,两个阶段的模块移植性和重 用性很强,不需要编写大量的重复代码,而且可以达到很高的随机化测试用例 的生成,使验证更加接近真实环境。采用了功能覆盖率和结构覆盖率统一的分 4 哈尔滨工程大学硕士学位论文 析方法,根据得到的不同结果更改验证的测试用例,逐步完善测试用例,使其 达到验证要求的覆盖率。根据实验结果分析,这种针对通信芯片的验证方法不 仅减少了验证代码的编写,提高了验证工作进展的速度,而且加约束的随机化 提高了芯片功能验证的效率。 结论是对课题研究内容的总结,并对通信芯片验证工作的发展趋势进行讨 论,指出下一步需要研究的内容,以及课题设计和研究的不足之处。 5 哈尔滨工程大学硕士学位论文 第2 章集成电路验证方法和技术的研究 验证是集成电路设计工作中十分重要的一环,电路规模越大系统越复杂, 占用验证时间越长。目前集成电路的验证方法和技术不断更新和发展,不断完 善了验证方法学的体系结构和内容。 2 1 验证流程 目前的验证工作大体分以下几个层次:系统验证,功能验证,逻辑验证, 版图验证。 2 1 1 基本的验证工作层次 基本的验证工作层次如图2 1 所示。在芯片设计的过程中,每一个层次都 要进行验证,验证工作是对设计的保障。在各层次验证的手段和目的不同,采 用的方法也不同。由于验证层次的差异使得验证工作的流程也不相同旧。 l 设计规倍 1 l 刊 ,+ 系统设计和描述 系统验证hl 系统划分 , 子系统功能描述 功能验证卜一; 综合 , 逻辑描述 逻辑验证h1 版图综合 ,t 版图描述 版图验证hl 芯片 图2 1 基本验证层次示意图 6 哈尔滨工程大学硕士学位论文 2 1 2 验证工作的流程 从图2 1 可以看出验证工作分段独立是很明显的特征。每个任务都在其阶 段使用独立的工具、环境、用户接口和模型。由于验证的目的不同使得纵向的 复用是有限的或者基本不可能。有些相同的信息在每一层都有,而这些信息在 这一阶段的验证后就不再被使用了。 分段独立的特性也存在于工程与工程之间,很少有公司有一个对于所有工 程都适用的通用验证环境。一旦派生出新的工程,就需要建立新的验证环境。 因为每个工程都各不相同,重用模型或信息是不可能的。 验证被认为是设计的一部分f f - a l 。验证策略也是由设计小组来制定,传统的 验证工作在代码完成后才开始,由设计人员来写验证代码。这种方法适合于小 规模设计,验证只占据整个设计很小的比例。随着设计规模的增加j 复杂性的 增大,验证已经占据设计中很大的比例。开发人员已经意识到验证必须作为独 立的开发工作来做了。 把验证过程从设计过程中独立出来不仅提高了工程效率,也提高了工作质 量。当前的大规模设计不仅需要多重复杂的测试激励,而且需要不同层次的集 合。在设计之后才开始验证工作增加了开发时间。把验证工作独立出来,使他 并行于设计过程,在设计工作进行的时候就开始设计验证平台,在设计工作结 束后可以立即执行验证平台来验证设计。 项目设计人员通常描述设计和验证的软件和硬件流程如图2 2 所示“v 字 型结构。在设计流程中,工程是从设计开始,设计结束后是测试和验证,设计 从高级系统级设计到低级芯片到模块级,然后在集成在一起。验证是从模块级 到芯片级再到系统级的层次。 系统 集成 图2 2 传统的验证工作进展情况 7 统验证系 芷 系 靴 嘶瓤 | 驯 c 哈尔滨工程大学硕士学位论文 目前的高级验证流程改变了传统“v ”字型的结构。在基本的“v ”字型结 构中,验证任务包括设计测试用倒,编写测试代码,运行和调试测试环境。所 有的这些任务都等待设计集成的完成,整个流程是线性的。高级验证流程的方 法使测试用例和验证环境的开发平行于设计的开发,所以在设计完成后就可以 进行调试工作。如图2 3 所示高级验证流程。 系统设计 集成 统测试 图2 3 高级验证流程 从图2 3 中可以清晰看出,采用高级的验证流程,不仅没有影响验证质量, 而使得项目完成时间大大缩短。 2 2 验证方法 根据验证阶段的不同和验证对象的差异,采用的验证方法是不同的。归纳 起来,功能验证的方法有三种:黑盒法、自盒法和灰盒法陋t 。 1 ) 黑盒法 黑盒验证的示意图如图2 4 所示。它不考虑设计内部的实现细节,所有验证 的内容都是通过设计对外接口完成的。被验证的黑盒可以是整个系统,- 二个芯 片,一个芯片的一个单元,也可能是一个模块。验证工程师不关心设计的内部 结构和设计内部的状态,只需要根据输入预测出输出,然后与黑盒的输出进行 比较即可。 黑盒验证的优点是测试用例独立于设计实现,有利于设计和验证分离,让 验证工程师在不了解设计实现的情况下,从设计规格出发去检查被测电路,这 样有利于不受设计的思维限制,增加验证的可信度,缺点是出现错误很难定位, 缺乏可观察性。 8 哈尔滨 t 程大学硕士学位论文 l l l i i i l 图2 4 黑盒验证示意图 2 ) 白盒法 白盒验证的示意图如图2 5 所示,它要求对所要验证的设计内部结构和实 现细节都非常清楚,验证的内容包括设计内部的状态机、触发器、存储器等, 并可以对设计内部进行完全的控制和观测【l j 。 l l i i i i l 一一。i 图2 5 自盒验证示意图 这种方法的优点是可以迅速建立想要的电路状态,隔离特定的功能,能够 很容易地观察设计每个部分对激励的响应情况,及时报告验证结果与预期结果 的差异。缺点在于需要验证工程师知道设计实现的细节,容易落入通过实现过 程来设计测试激励的思维定式中i l o j 。 3 ) 灰盒法 灰盒验证是黑盒验证和白盒验证的折衷,是在知道设计细节的情况下采用 9 哈尔滨工程大学硕士学位论文 黑盒验证的测试用例。它不仅调试效率比黑盒验证高,又能对设计内部进行控 制和观察,易于错误定位,而且具有很好的移植性。灰盒验证测试的方式同黑 盒验证一样也是通过设计的对外接口、特殊引脚或性能寄存器、测试寄存器等 输出结果判断设计的正确性。 2 3 验证策略 单元验证要验证的模块很小或者功能单一,因此它的验证策略比较简单。 只要结合验证功能编写测试用例即可。系统验证的策略有以下几种:自顶向下 的验证、自底向上的验证、基于平台的验证和基于系统接口的验证。 1 ) 自顶向下的验证 一般的验证策略都是采用自顶向下的验证方法,如图2 6 所示。 图2 6 自项向f 的验证 验证工作首先研究开发要求,制定系统规范,然后并行于系统设计的验证 工作为系统级验证,它从系统规范中提取出设计所需要验证的所有特性。把这 些特性结合系统规范,制定出详细的验证计划。系统验证的主要内容包括建立 系统行为模型并把它放到系统级的测试环境中进行验证。系统级的测试环境应 该是模块化的,可以很方便的移植到对设计的功能验证和网表验证,对于不同 1 n 哈尔滨工程大学硕士学位论文 的抽象层次可根据该层次的具体要求增强相应的测试功能。利用基于事务的模 拟技术建立系统级测试环境,一方面它可以很方便地进行系统级的验证,另一 方面可以直接用于对设计顶层模块间直接连接关系的验证,从系统级验证移植 到功能验证,这样的系统级测试环境只需相应的总线功能模型代替基于指令的 或基于事务的数据模型即可1 9 1 。在综合、芯片的布局布线设计要通过网表验证 来保证质量,一般既可以采用形式验证手段,也可以采用门级模拟的手段来验 证设计的综合实现和物理实现是否正确。验证的最后一阶段是用时序分析和物 理验证来确保芯片的正确性。 2 ) 自底向上的验证 自底向上的验证如图2 7 所示。这种方法的验证首先针对设计输入的每个 模块独立进行0 级验证,一在0 级验证无误后针对设计输入的模块间内部连接进 行1 级验证,成功后针对设计输入的功能和接口实现2 级验证,最后上升到验 证系统级功能的3 级验证工作阶段o 在全面的芯片功能验证后,对布局布线后 的综合设计进行网表验证,最后是物理验证。 其中0 至3 级验证内容如下: 图2 7 官底向上的验证 哈尔滨工程大学硕十学位论文 0 级验证由设计工程师负责,进行仔细的模块验证( 包括直接验证和随机 验证) 。设计工程师提交给验证工程师的设汁一方面要通过代码质量检查( 其内 容包括没有初始化的变量、综合器不支持的数据类型或行为级描述、模块例化 时端口不匹配等) :另一方面要通过测试覆盖率检查,保证行测试覆盖率达到 1 0 0 。对礤宏模块的测试,测试的环境有口提供者给出,测试的结果可以作 为口选择的依据i 0 1 。 1 级验证用于验证系统存储器的映射和模块间互联的正确性。测试内容包 括通过片上处理器或片外处理器模型对设计各个模块中的寄存器进行读写操 作,对于设计中的每个数据通路,通过外部接口写入激励数据,经过设计中各 个模块间的接口传送,在设计的输出端口采集结果。验证系统存储器映射和设 计对象的内部互连关系。这些测试可以手工建立,也可以由工具在读入系统级 互连关系和存储器映射关系之后自动生成。 2 级验证主要验证设计对象的基本功能和外部互连关系。编写的测试都是 用来检验每一个功能块的主要功能路径和每一个i o 引脚。 3 级验证主要是验证整个芯片的系统功能。传统的方法是采用穷举式对集 成后的设计对象进行功能测试。现在可以采用加约束的随机化方法将测试集进 行分类命中,减少测试用例的运行。在编写测试用例时特别考虑那些边角情况、 边界情况、设计间断点、错误条件和异常处理,以确保测试全面。 3 ) 基于平台的验证一 一一一一一一一一一一一一一一一一一一一、 图2 8 基于平台的验证 1 2 哈尔滨工烈大学硕十学位论文 基于平台的验证如图2 8 所示。这种验证方法一般适用于可移植的验证平 台的再次验证。其中可移植的平台是已经验证过的,开发过程中集成的硬件 和软件i p 也是验证过的。验证的内容主要是开发平台和新增加i p 模块之间的 接口。 4 ) 基于系统接口的验证 基于系统接口的验证如图2 9 所示。它是指在系统设计阶段对设计对象中 所使用的功能模块在其接口层次上进行抽象,建立相应的接口模型。这种接口 模型可以帮助设计工程师对模块进行充分验证,验证工程师也可以很方便地进 行模块间互连关系的验证和系统功能模拟。常见的接口包括基于片上总线的接 口,基于存储器读写的接口等。 图2 9 基于系统接口的验证 验证策略要随着设计而制定。有时要采用几种策略相结合的方法进行验 证。由于软件可以实现抽象级别较高的事务级功能模拟,所以有时也可以通过 编写软件程序来代替某些硬件环境,和硬件电路设计同时运行进行验证。 2 4 验证技术 目前正在发展的验证技术有如下几种: 1 ) 基于事件的模拟 这种方法把输入激励的任何一个变化都视为一个事件,每一个模拟时间模 拟器处理一个事件1 1 3 l 。每发生一个事件,就对整个设计重新进行计算直到模拟 出现稳定状态为止。如果输入信号在一个时钟周期内到达,但是不同的输入信 号到达的时间不尽相同,则基于事件的模拟机制决定模拟器在一个时钟周期内 计算多次。 1 3 哈尔滨工程大学硕士学位论文 基于事件的模型包括时序模型和功能模型。基于事件的模拟同时覆盖了设 计的功能和时序模型,模拟结果精确,便于检测出设计对象中的毛刺,尤其适 用于异步电路的模拟。缺点是模拟速度取决于设计对象的规模和模拟中行为的 抽象层次,如果设计对象规模很大,那么其模拟将会很慢。另外,因为基于事 件的模拟器使用复杂算法调度各个事件,并且需要多次计算输出量,模拟的速 度受到一定限制。 2 ) 基于周期的模拟 基于周期的模拟在时钟周期内没有时间概念,它只在时钟的上升沿或下降 沿进行触发,每一个时钟周期的时间对电路计算一次。基于周期的模拟器只对 同步设计有效。 因为每一个逻辑元素在每个周期中只计算一次,基于周期的模拟显著的提 高了模拟执行的速度。它所提供的模拟速度是基于事件的模拟器的5 1 0 0 倍。 对于大型设计,模拟速度可以提高到每秒1 0 0 0 个时钟周期 1 4 1 。最适用于那些需 要大型模拟向量的设计对象,如微处理器、专用集成芯片和系统芯片。它的缺 点是,因为它只响应时钟信号而无法检测出设计对象中的毛刺。另外,它没有 将设计对象的时序纳入考虑范围,因此需要使用时序静态分析工具来进行时序 验证。 3 ) 基于事务的验证 事务就是设计对象与事务处理器之间通过接口所作的一次数据或控制的传 输。事务可以是一个简单事务,如读取某个存储器单元,也可以是一个复杂事 物,如传输整个结构式数据报文。 基于事务的验证对每个设计都要求有总线功能模型。总线功能模型采用常 用的验证语言来编写,为在设计对象的硬件接口上运行事务提供了一种手段。 它根据接口协议的要求来驱动各个互连线信号,只检测元件之间的事务i 停1 7 。 这种验证方法允许在信号或引脚级之外的事务级之上的设计对象进行模拟 和调试。建立系统中各功能模块之间所有可能的事务类型,并系统地加以测试。 这种验证不需要很细致的测试平台及大型向量,因为抽象层次提高到了事务级 而不是信号或引脚级;- 所以提高了验证速度,可以很容易的实现自检查和定向 随机测试。 4 ) 结构覆盖率驱动的验证 1 4 哈尔溟工程大学硕士学位论文 。dj i 置暑;| e ;昌 结构覆盖状况分析是对设计对象的寄存器传输级视图的一种分析。它研究 的覆盖类型有:语句覆盖、电平翻转覆盖、有限状态机覆盖、触发覆盖、分支 覆盖、表达式覆盖、路径覆盖和信号覆盖。 结构覆盖状况分析提供了测试对设计的覆盖分析能力,通过工具得到的覆 盖率结果说明了功能覆盖状况f 洛嘲。这些量化的分析既可以在各个功能模块的级 别上进行,也可以在整个系统级进行。分析工具可以提供验证测试分析报告, 包括测试激励已经测试到的设计代码、状态机状态以及信号的翻转情况,为测 试提供了量化评价的手段和查明设计对象未被测试的地方。 5 软硬件协同验证 软硬件协同验证是一种在硬件流片封装之前,验证s o c 系统硬件和软件是 否能够正确工作的技术。协同验证系统由一个硬件执行环境和一个软件执行环 境组成,通过事件和命令,使这两个环境间进行相互控制l 镯。敬件的执行环境 用于产生总线周期的序列,协同验证工具将总线周期转换成许多信号事件或者 命令集,并驱动这些信号事件命令进入硬件执行环境,然后对总线周期响应进 行硬件环境取样,这一响应又被传送回软件环境。同时,保持硬件及软件环境 间的同步以便发现硬件或软件环境错失响应而导致有误的情形。 协同验证可以在硬件开发的同时,让软件在硬件模拟平台上运行,从而硬 件和软件可以同时调试,而不是串行进行,大大缩短了集成电路的开发时间。 协同验证能提前发现很多系统级的错误。但是由于验证能力和模拟速度问题, 已有的协同验证环境还无法提供足够高的性能在目标实时操作系统上运行整个 应用软件。 6 ) 硬件仿真器 硬件仿真器以硬件的形式测试系统。把门级网表作为输入,使用真实的硬 件环境进行验证,通过软件驱动验证,与真实的硬件元件相连接。它首先把设 计映射到仿真器元件上,然后给定测试向量并检测仿真器的输出。这种方法对 于处理复杂设计可以得到更高的吞吐量,但是需要可综合的测试平台和昂贵的 仿真器。 整个仿真系统是专门设计出来的软件和硬件系统,通常含有可重配置逻辑 或现场可重编程的逻辑门阵列。由于这些系统以硬件方式实现,所以其运行速 度比软件仿真器快好几个数量级,并且在有些情况下,其运行速度可以接近目 哈尔滨f :程大学硕士学位论文 标设计对象的速度。 7 ) 硬件加速器 为了加速逻辑模拟而把门级网表映射到专门的硬件中。硬件加速技术将软 件模拟中全部或部分元件映射到特意为加快某些模拟操作速度而设计出来的硬 件平台中圈。最普遍的做法是测试平台仍然以软件形式运行,而几个待验证的 设计对象在硬件加速器中运行。 硬件仿真加速器可以提供非常快的仿真运行速度,但是同时也需要很长的 代码编译时间。而且,硬件仿真加速器也非常昂贵,比起软件仿真来说难以使 用。对于要进行应用程序测试的大型设计,硬件仿真加速器是适合的:但是对 于小模块设计来说,它不是非常适合的工具。 8 ) 原型验证 臣亟茎- 亟i - 习 l使用示波器等具调试i - _ _ - - _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 一 图2 1 0s o c 原型验证流程 原型验证是将硬件原型和软件原型相结合进行验证。它的本质在于快速地 1 6 哈尔滨工程大学硕士学位论文 实现s o c 设计中的硬件模块,让软件模块在真正的硬件上高速运行,实现s o c 设计的软硬件协同验证p q 。验证流程如图2 1 0 所示。 该技术较传统的协同验证技术不同之处在于它实现的基础是强大的f p g a 和有力的设计描述及编译工具。原型验证系统由三个部分组成:系统硬件、软 件编译器和运行程序。系统硬件设计的核心部分是定制的原型电路板,用来实 现s o c 设计中的关键模块,系统硬件的常规模块则可由商用芯片实现。软件编 译器把寄存器级或门级设计及其验证环境扁平化,映射到系统硬件。运行程序 控制原型系统的运行、设计调试,一般采用c 语言编程,并且有开放的软件结 构,便于后期紧密集成。 9 ) 静态检查 静态检查是对设计对象的代码在语法上正确性的检查。语法上的类型包括 变量初始化、结构语法支持和端口匹配等。静态检查可以在设计周期的早期进 行,查出设计代码中的简单错误,避免在高层次验证中发现错误而耗费大量的 时间进行错误定位。 1 0 ) 静态时序分析 时序验证用来确定设计是否己满足时序要求。时序验证对设计对象中的每 一个存储元素和锁存器都有时序要求,如建立时间、保持时间和各种延迟时序。 静态时序分析是检测电路是否满足时序要求限制的方法。通过分析电路的拓扑 路径,检测它们的时序特性和它们对电路延时的影响,静态时序分析不需要模 拟,不需要输入模式。检查速度快、完整,可以达到1 0 0 的覆盖率。但是时 序验证对大型设计对象是一种挑战性难题,因为每一个输入都可能有多个信号 来源,并且时序可能会根据电路运行状况而变化。 1 1 ) 形式化验证 形式化验证是数学的证明一个描述具有某些属性或两个不同抽象层次的 描述在功能上是等价的。形式化验证技术有:定理证明、模型检验和等价性检 测。形式化验证方法不需要用于验证的测试平台和测试向量。理论上,形式化 验证技术将保证非常高的验证速度和1 0 0 的覆盖率。 应用于功能验证的形式验证有如下两种:模型检查,一模型检查又称特性检 查,是验证设计的功能特点。检验程序在所有可能的输入条件下探测设计的全 部状态空间,以发现动态模拟难以找到的错误。模型检验对于以控制为主的设 1 7 哈尔滨工程大学硕士学位论文 计验证比以数据通路为主的设计验证更有效,这是由于后者一般有很大和很深 的状态空间,验证要花费很多的存储器和处理时间。定理证明,典型的方法是 支持一种基于形式逻辑的说明语言和一组命令形式的策略,用以机械地构造逻 辑中的一个断言的证明过程。定理证明系统的变化很大,定理证明不需要验证 测试,但需要特性的公式表达,并且不受输入或状态空间的限制。适合于数据 通路型的设计和高层应用的验证。定理证明的主要缺点是自动化不如模型检验 好,因为用户必须用定理证明器的命令来构造证明过程;另一个缺点就是当证 明结论为不成立时,只能用人工方法分析原因,不能自动跟踪定位错误。 1 2 ) 基于断言的验证 基于断言的验证是把形式化方法集成到传统模拟流程中的一种有效的方 法。设计人员在r t l 设计中插入设计意图( 断言) 并且进行模拟,然后用形式 化技术检查断言,限制条件,也就是合法接口行为的断言,和其他断言同时一 同参加模拟。断言检查的结果改进模拟的有效性。即使利用传统的模拟验证, 断言也可以大大提高模拟的效率。基于断言的验证要由用户写出断言,断言表 示要验证的性质,因此需要性质描述语言。例如逻辑和时序方面的性质。这些 也是验证语言要解决的问题l - 5 , - z n l 。 基于断言的验证能够提高对设计的可控制性和可观察性,实现很高的功能 覆盖率验证,通过检查断言可以确定口是否正确地集中到设计中。基于断言的 验证可以缩短验证时间。 在众多的验证技术中,任何单独一种验证技术都没有使一次流片的成功率 超过5 0 。在工程实际中,常常采用多种技术相结合的方法来进行验证,从而 保证更加严格的验证设计。但是需要验证人员进行科学的设计,否则将会有重 复的工作量,增加验证时间,降低验证效率。 2 5 验证技术的发展趋势 目前的设计验证方法迅速发展,设计和验证语言层出不穷。验证发展将呈 现以下几方面发展趋势。 一第一,形式化方法取得了长远进展,特别是等价性检验已经集成到标准验 证流程中。而模型检验技术以及定理证明等还不能成为设计环境的主流验证方 法的主要原因有: 哈尔滨工程大学硕士学位论文 1 ) 缺乏主流的性质描述语言。 2 ) 缺乏供设计公司使用的商业化工具。 3 ) 缺乏有效地使用形式化方法学的指导原则。 4 ) 在改变验证方法带来的收益是否明显的问题上还有待迸一步证明。 第二,形式化方法还需要和传统的方法相结合才能发挥作用。而设计和验 证方法的进步应当是渐进的,不可能是突然性的改变。因此根据目前验证方法 的现状,数模混合芯片的设计越来越多,混合验证方法应当成为主流的验证方 法。 第三,基于断言的验证是结合形式化验证和传统的模拟验证可行的途径。 断言对于表示接口限制、设计性质和设计假
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电商物流仓储作业流程规范
- 新项目审计全过程管理方案
- 2025年康复医学康复方案设计实践考察试卷答案及解析
- 现代物流企业运输调度方案设计模板
- 表演艺术专业考级证书考试题库
- 中小学课程标准与教学实施指南
- 电力设备故障诊断与维修流程
- 工厂车间6S管理推行方案
- 高校线上教学平台使用指南及技术支持
- 销售团队季度目标制定指南
- 人教版六年级上册道德与法治教案(5篇)
- 第1课 从食物采集到食物生产 课件-高二历史统编版(2019)选择性必修2 经济与社会生活
- 生涯拍卖会课件高一上学期主题班会
- 中医形神兼养
- GB/T 44241-2024虚拟电厂管理规范
- SYT 6680-2021 石油天然气钻采设备 钻机和修井机出厂验收规范-PDF解密
- 实用美术基础中职全套教学课件
- 子宫内膜癌的预防和早期发现
- 债权债务法律知识讲座
- 个人停车位租赁合同模板
- 食品保质期检测记录表
评论
0/150
提交评论