(微电子学与固体电子学专业论文)片上网络通讯结构可测性设计.pdf_第1页
(微电子学与固体电子学专业论文)片上网络通讯结构可测性设计.pdf_第2页
(微电子学与固体电子学专业论文)片上网络通讯结构可测性设计.pdf_第3页
(微电子学与固体电子学专业论文)片上网络通讯结构可测性设计.pdf_第4页
(微电子学与固体电子学专业论文)片上网络通讯结构可测性设计.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 测试已经成了集成电路设计制造中不可分割的一部分,而且随着集成电路工 艺复杂度和设计复杂度的提高,集成电路的测试变得越来越困难,也变得越来越 重要。在这种情况下,可测性设计( d e s i g nf o rt e s t ) 技术成为解决芯片生产测试 问题的主要手段之一,日益引起人们的重视。片上网络( n o c ) 结构的显著特点是 规模巨大和互连通讯复杂。如此大规模的结构其制造故障也会随之提高,这就对 其测试提出了更高程度的要求,需要采用合理的测试策略及测试体系来对片上网 络进行测试,以节省测试开销。因此研究n o c 测试策略及测试体系对解决n o c 及 未来电路测试难点有重要意义。 本文首先阐述了测试的基本概念,简单地描述了故障检测的基本原理以及现 有的一些可测性力法。 n o c 通讯结构的测试分为两部分:路由丌关间互连线的测试和路由开关的测 试。针对路由丌关间互连线的测试,采用m a f 测试模型,利用b i s t 测试法,设 计了t d g 单元和t e d 单元,并通过软件进行了仿真和综合。对于路由开关的测 试,由于n o c 中数据是以报文的方式进行传播,则可以把测试数据封装成报文的 形式,通过路由丌关在通讯网络中传播,进而对路由开关进行测试。根据报文地 址段的不同,测试可以分为两种:单播测试法和多播测试法。最后分析了两种方 法的测试时间。 然后本文针对n o c 中资源网络接口的多时钟域问题,设计了异步f i f o ,利用 软件对其进行功能仿真。并通过插入扫描链和隔离双端1 2 存储器,设计了异步f i f o 的测试结构。仿真结果显示,插入扫描链后电路的面积和功耗有少量增加。 最后本文对n o c 测试技术的未来发展方向进行了展望。 关键词:可测性设计,n o c 通讯结构,测试电路,异步f i f o a b s t r a c t 一一 a b s t r a c t t e s t i n gi san e c e s s a r yp a r to ft h ei cd e s i g np r o c e s s d u et ot h ec o n t i n u o u si n c r e a s e i nt h ec o m p l e x i t yo fi cd e s i g na n dp r o c e s s ,d e s i g nf o rt e s t ( d f t ) t e c h n o l o g yi sb e i n g m o r ea n dm o r ed i f f c u l ta sw e l l a si m p o r t a n t a n ds y s t e m - o n c h i p ( s o c ) ,w h i c h e m b r a c e dv a r i o u sr e u s e di pc o r e s ,m a k e st h et e s t i n ge v e nm o r ep r o m i n e n t n o wt h e c h i pd e s i g nh a sd e v e l o p e ds o c i n t on o cw h i c hi st h ec o m m u n i c a t i n go fm u l t i p l es o c t h e r em r el a r g en u m b e ro ft r a n s i s t o r sa n dm o r ec o m p l e xf u n c t i o n si nas i n g l ec h i p i n a d d i t i o nu n d e rt h ep r e s s u r eo fm a r k e t ,w em u s td e c r e a s et h ed e s i g np e r i o da n du s ea m a s so fi pc o r e si nd e s i g n s on o c a r c h i t e c t u r eh a sc h a r a c t e r i s t i c so fl a r g es c a l ea n d c o m p l e x i t yo fc o m m u n i c a t i o n b u tt h e f a u l t sd u r i n gm a n u f a c t u r i n gb e c o m em o r e d i m c u l tt o t e s ti nl a r g es c a l ea r c h i t e c t u r e w | em u s tr e s e a r c ha d v a n c e d t e s tm e a s u r e ,t h a t i su s i n gf e a s i b l em e a s u r ea n ds t r u c t u r ei nt h et e s t i n go fn o c t or e d u c et h ec o s to ft e s t i n g t h u si ti ss i g n i f i c a n tt or e s e a r c ht h et e s tm e a s u r ea n dt h es t r u c t u r eo fn o c a n de v e n 6 1 t u r ec i r c u i t s i nt h i sp a p e r , t h ec o n c e p t i o no fd f t i s m e t h o d sa r es h o w e d d i s p l a y e df i r s t l ya n ds o m ec o n v e n t i o n a lt e s t t h et e s to fn o cc o m m u n j c a t i o ns t r u c t u r ei sd i v i d e di n t ot w op a r t s :t h et e s t o f i n t e r - s w i t c hl i n k s ,a n dt e s to fs w i t c h s w eu s et h em a f m o d e la n db i s tm e t h o dt ot e s t t l l ei n t e r s w i t c hl i n k s t h et d gu n i ta n dt e du n i t a r ed e s i g n e d ,s i m u l a t e da n d s y n t h e s i z e di nt h i sp a p e r b e c a u s ed a t a sa r et r a n s m i t t e di nt h ef o r mo fp a c k e t s ,w ec a n t e s tt h es w i t c h sw i t ht h et e s tp a c k e t sc o m p o s e do ft e s td a t a s t h i sp a p e rp r o p o s e st w o d i f f e r e n ts t r a t e g i e sf o ri m p l e m e n t i n gt h et e s t :s e q u e n t i a lt e s ts t r a t e g ya n dm u l t i c a s tt e s t s t r a t e g y t h e nw ea n a l y z et h et e s tt i m eo f t w os t r a t e g y s ak i n do ft w oc l o c k sa s y n c h r o n o u sf i f oi sd e s i g n e d ,w h i c hi su s e dt or e s o l v et h e m e t a s t a b i l i t yw i t hc o m m u n i c a t i o nb e t w e e n d i f f e r e n tc l o c kr e g i o n s t h i sp a p e ri n s e t sa s c a nc h a l na n di s o l a t e st h ed u a lp o r t sm e m o r y , a n dd e s i g n st h et e s ts t r u c t u r e t h er e s u l t s h o w st h a tt h ea r e aa n dp o w e ro ft h ec i r c u i te x h i b i t sa l i t t l ei n c r e a s e f i n a l l y , t h ep a p e r l o o k sf o r w a r dt ot h en o ct e s tt e c h n o l o g y k e yw o r d s :d f t , n o cc o m m u n i c a t es t r u c t u r e ,t e s tc i r c u i t ,a s y n c h r o n o u sf i f o 西安电子科技大学 学位论文创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知。除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果:也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均己在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处, 本人签名:盈遂翅 本人承担一切相关责任。 日期:旦星。呈! 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学和中国科学院 微电子研究所。本人保证毕业离校后,发表论文或使用论文工作成果时署名单位 仍然为西安电子科技大学。学校有权保留送交论文的复印件,允许查阅和借阅论 文:学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段 保存论文。( 保密论文在解密后应遵守此规定) 本人签名:幺生蜇 导师签名: 第一章绪论 第一章绪论 面积、速度、功耗一直是衡量集成电路( i c ) 设计好坏的三大指标。然而随 着集成电路规模的不断增大,以及工艺技术的不断进步,集成电路的可测性问题 已经成为提高产品可靠性和成品率的一个不可忽视的因素。于是可测性技术应运 而生,集成电路的可测性程度已经成为衡量集成电路设计好坏的又一大指标。尤 其是随着系统复杂度和规模的提高,可测性设计在整体产品开发中也就占据了越 来越重要的地位。 本章在简要介绍v l s i 可测试性设计发展过程和原理及方法的基础上,引出 n o c ( n e t w o r ko nc h i p ) 的测试问题及其重要意义,最后再对本论文所作的主要工 作和结构作一介绍。 1 1 测试的概念和意义 电路的测试就是检查制造好的电路的正确与否的过程。测试电路的一般过程 是:建立描述电路“好”或“坏 的模型;设计出能检验电路“好”或“坏”的 测试数据:把设计好的数据施加在被检验的电路上;观察被检验电路的输出结果: 最后分析与理想的结果是否一致。 被测试的电路称为被测电路( c i r c u i tu n d e rt e s t ,c u t ) ;对被测电路产生测试 数据的方法称为测试向量生成( t e s tg e n e r a t i o n ) ;产生的测试数据称为测试向量 ( t e s tp a r e m ,t p ) ;把测试向量施加到c u t 的过程称为测试施加( t e s t a p p l i c a t i o n ) ;测试向量施加后被测试电路的输出称为测试响应( t e s tr e s p o n s e ) ; 检查电路实际的测试响应与理想的测试响应是否一致的过程称为测试分析( t e s t r e s p o n s ea n a l y s i s ) 。 整个过程可用图1 1 表示。 图1 1 电路测试过程 测试可以分成功能测试( f u n c t i o nt e s t ) 和制造测试( m a n u f a c t u r i n gt e s t ) 【1 1 。 2 片上网络通讯结构可测性设计 功能测试主要用来寻找设计中可能存在的错误,是用来验证电路中的逻辑行为。 功能测试所使用的测试向量称为功能测试向量。功能测试向量一般由设计验证过 程中所使用的验证向量直接转换而成,也可能是由测试工程师手工生成。制造测 试又叫结构测试( s t r u c t u r et e s t ) ,它是用于寻找在制造过程中可能存在的结构缺 陷( 如开路、短路等) 。制造测试所使用的测试向量称为制造测试向量。制造测试 向量一般由a t p g ( a u t o m a t i ct e s tp a t t e mg e n e r a t i o n ) 工具自动生成。 1 2可测性设计技术概述 1 2 1 故障检测的基本原理 在电路测试中,用故障来描述电路中的错误,而用测试向量来检测故障。现 在用单固定型( s t u c k a t ) 故障模型来阐述这一概念1 2 , 3 , 4 】。单固定型故障描述的是 电路中一根线固定接到逻辑值0 或l 的现象,例如这根线与地或电源短路。 a b b a = ( a ) 正常的与- = 1 f f - ( b ) a 端口出现m o 故障 图1 2 固定型故障 b a ( c ) a 端口出现a i 故障 图1 2 ( a ) 是一个正常的与非门;( b ) 表示该与t e f - j 的输入a 接地,描述这 个现象的就是固定o 故障,用a o 表示:( c ) 表示该与非门的输入a 接电源,描 述这个现象的就是固定l 故障,用1 表示。当a 与地短接时,不论何种逻辑信 号加到与非门的输入端上,输出端z 都是输出高电平“1 。图1 2 只表示出了a 端口出现的两个固定型故障a 0 和a 1 ,对于b 和z 端口也有这两个故障,它们 是b o 、b i 、z o 和z 1 。所以一个与非门的固定故障共有6 个。 表1 1 与非门的故障及故障检测 输入正常有故障时响应 ab响应入 0b oz ,0a 1b 1z l 0 olll0ll1 o1lllooll lo1l l 0lo l l l0ll0ool 第一章绪论 故障检测就是对输入端施加信号,观察输出信号( 输出响应) ,然后比较该输 出响应和无故障时的理想输出响应,如果二者不同,则说明检测到电路有故障。 对于图1 2 ( a ) 所示的与非门电路,输入、正常响应、故障类型及有故障的 输出响应列表如表1 1 所示。由表1 1 可知,有故障时的输出响应并非总是与无故 障时的输出响应不同,例如故障b l ,只有当a ,b 分别l ,o 时,无故障输出响 应才与有故障时的响应不同,因此把a = i ,b = 0 称为故障b i 的测试向量。由表 1 1 可以看出,只需要三个测试向量 a b = 0 1 ,a b = 1 0 ,a b = 1 1 ) 就可以检测出所有 的故障,在一定的故障检测覆盖率下,应使测试向量最简,才能缩短测试周期。 除了有固定型故障,还有桥接故障( b r i d g i n gf a u l t ) ,固定开路型故障 ( s t u c k o p e n ) ,i d d q 故障,延时故障( d e l a yf a u l t ) ,跳变故障( t r a n s i t i o nf a u l t ) 。 以上几种故障模型不是绝对相互独立的,它们覆盖的物理缺陷可能有交集岭j 。实际 应用中多数采用单固定故障模型( s s a t :s i n g l es t u c k a tf a u l t ) 进行电路的测试。这 是因为:( 1 ) 它需要处理的故障总数少,易于测试生成,易于精确分析故障覆盖 情况。( 2 ) 系统在使用阶段发生单故障的可能性比发生多故障的可能性大得多。 实践证明,只要单故障得覆盖率达到9 0 以上,则单固定型故障的测试集也能检 测出其他类型的故障。 对于图1 2 所示的单个与非门的故障是比较简单的,寻找能检测出这些故障的 测试向量也是很简单的。然而实际的电路具有成千上万的门或是线,寻找测试向 量的过程非常烦琐、费时,数学上可证明此过程为n p c o m p l e t e 。对于组合电路, 一个测试向量足以检测到一个故障,对于时序电路,需要一组测试向量序列才可 能检测到一个故障。测试向量一般由自动测试向量生成( a t p g ) 软件产生。a t p g 算法除了用于产生测试向量以外,还可以识别电路的冗余( 或不必要的) 逻辑, 可以证明两种电路实现是否等价【6 】。基于一种有效的故障模型产生测试序列是确定 性测试产生( d e t e r m i n i s t i ct e s tp a t t e m g e n e r a t i o n ) 的基础。任何一种确定性的测试 产生算法,对于在种给定故障模型下电路的每个故障,都必须解决两个问题:( 1 ) 激励故障。即在故障点产生一个与故障值相反的值。( 2 ) 传播故障。即将故障点 的值传播到电路的原始输出。 根据对象电路特性的不同,自动测试向量生成可分为组合电路的测试向量生 成和时序电路的测试向量生成。组合电路的测试向量生成方面的研究相对成熟, 它能提供很高的固定型故障覆盖率。根据向量生成机制的不一样,它又可分为确 定性测试向量生成和随机性测试向量生成。随机性测试向量生成比较简单,利用 随机算法生成一组随机向量,分析所覆盖到的故障,再进一步产生一组随机向量, 分析这组向量对剩余故障的覆盖情况,通过反复这样的过程,不断提高故障覆盖 率。然而,随机生成测试向量,很难达到很高的故障覆盖率,因此在工业实践中 很少采用。目前在工业实践中广为使用的还是确定性测试向量自动生成。确定性 4 片上网络通讯结构可测性设计 测试向量自动生成利用布尔差分和通路敏化等概念,针对故障模型来产生测试向 量。由于确定性测试向量自动生成过程是目标制导的,可以通过不断调用其生成 过程,达到很高的故障覆盖率。在组合电路的测试向量自动生成算法中最经典的 是在二十世纪六十年代提出的d 【7 j 算法。其后文献提出了p o d e m ( p a t h o r i e n t e d d e c i s i o nm a k i n g ) 算法【s j ,它采用分支定界算法来搜索输入向量空间,相对于d 算 法而言,搜索速度得到了很大提升。紧接着文献提出了f a n ( f a n o u t o r i e n t e dt e s t g e n e r a t i o n ) 算、法【9 1 。f a n 算法成功拓展了p o d e m 算法,它引入了“头线( h e a d l i n e ) ”和“多路回退( m u l t i p l eb a c k t r a c e ) ”等概念来加速搜索过程,其效率在 p o d e m 算法的基础上又得到了很大提高。因而,f a n 算法被当前国际上公认为比 较有效的测试生成算法。在这些算法的基础上,研究人员孜孜不倦,实现了一系 列的自动测试生成系统,包含有:a t a l a n t a ,m i n t e s t ,a t o m ,s a b a t p g 等 【lo ,i i , 眩j 。相对于组合电路而言,时序电路的测试向量自动生成则要复杂得多,其 生成过程也非常耗时。时序电路的自动测试向量生成过程拓展了通路敏化的概念, 结合时间帧和状态迁移生成测试向量。由于存在寄存器,电路内部逻辑的可控制 性和可观察性变弱,因此时序电路很难取得很高的故障覆盖率,特别是对一些复 杂电路,其时序深度过大,利用时序电路的测试向量生成不仅不能够提供很高的 故障覆盖率,而且还要耗费很长的时间。研究人员在对时序电路测试生成的长期 研究中,也提出了一些原型系统。h i t e c 是二十世纪九十年代出现的一个比较成 熟的门级时序电路a t p g 系统,因其良好的处理能力和性能而得到了广泛的认可 和应用。为了解决时序电路测试向量生成故障覆盖率比较低的问题,当前在学术 界和工业界普遍使用的方法是对待测时序电路进行可测试性设计( d f t :d e s i g nf o r t e s t a b i l i t y ) ,提高时序电路的可控制性和可观察性,将时序电路的测试向量生成问 题转化为组合电路的测试向量生成问题加以解决。 1 2 2 可测性设计的方法 为了解决同益突出的测试问题,人们不得不从设计的一开始就考虑测试问题, 这就是所谓的可测性设计问题。可测试性设计是芯片设计的重要环节,它通过在 芯片原始设计中插入各种用于提高芯片可测试性的硬件逻辑,从而使芯片变得容 易测试,大幅度节省芯片测试的成本。常用的可测性设计主要有以下一些方法: 1 ) 扫描设计是使用最多的方法,它是指将电路中的普通触发器替换为具有扫描能 力的扫描触发器,并将这些扫描触发器连接起来形成扫描链的一种设计方法。 2 ) 内建自测试b i s t 是另一种重要的可测性设计方法。内建自测试是节省芯片测 试时间和测试成本的有效手段。从某种意义上说,b i s t 是把“测试仪”做到了 电路内部,因为它既要对待测电路提供输入的测试向量,又要对其输出的响应 第一章绪论 5 产生的特征与期望的特征比较以给出测试通过与否的结果。所不同的是,设计 的这个“测试仪专门为这个待测电路而工作,功能单一固定。 3 ) 边界扫描设计,是为了解决板级数字电路的测试问题。系统级的边界扫描结构 的应用使得可以通过层次化的测试访问机制,利用边界扫描结构测试系统中的 每个模块。 4 ) i d d q 和i d d t 可测性设计,i d d q 测试是测量c m o s 电路在稳态下的静态电 流。基于电流测试还有i d d t 测试,测量电路在动态切换过程中的动态电流。 1 3 本论文结构 随着n o c 体系结构和设计方法的提出,n o c 的测试也就无疑成为一个重要问 题。正如前述,设计、制造和测试三者不可分。在n o c 体系结构中会包含有更多 的s o c ,并且它们之间需要频繁的互连通信,这就使得通过对芯片仅采取一种方 法测试不再成为可能。对n o c 而言,就需要采用混和的测试方法,其中涉及到s o c 、 存储器及f p g a 的测试方法。 本论文针对片上网络体系结构的测试研究工作,分析了n o c 的体系结构、设 计方法及测试难点,研究n o c 中交叉时钟域间通信时的亚稳态问题,同时研究了 几种常用的解决方法,最后提出了针对n o c 通讯结构的一种测试策略及层次化测 试结构。 本文章节的具体安排如下: 第二章首先介绍了可测性设计的基本概念、现状及其面临的挑战。然后介绍 了集成电路现有的几种测试技术,包括a d h o e 、边界扫描测试技术、嵌入式核测 试技术和内建自测试技术。 第三章主要介绍了n o c 的通讯结构,并针对路由开关间互连线的测试,设计 了b i s t 测试电路,针对路由开关的测试,设计了两种测试策略:单播测试法和多 播测试法,并分析了各自需要的测试时间。 第四章是针对n o c 中多时钟域问的数据传输问题,设计了一个1 6 x 3 2 的异步 f i f o ,并讨论了亚稳态的处理问题。通过插入扫描链和隔离双端口存储器单元, 设计了异步f i f o 的测试结构。 第五章为论文的总结。对全文的工作进行了总结,概括了本文的主要意义, 并提出了今后的研究方向。 6 片上网络通讯结构可测性设计 第二章集成电路测试技术 随着集成电路技术的迅速发展,芯片的集成度也越来越大,复杂程度越来越 高。电路规模每增加一个数量级,测试生成时间将增大三个数量级。传统的逻辑 设计思想使得测试生成遇到了难以逾越的障碍。有时还会出现电路设计容易,却 无法测试,甚至出现测试代价超过制造代价的倒挂局面。面对这一挑战,根本的 解决方法就是在进行系统设计时就充分考虑到测试的要求,即使用故障诊断的理 论来指导系统设计,这就是可测性设计d f t ( d e s i g nf o rt e s t ) 技术【i3 。它是以增 加电路面积为代价,以实现较大幅度地降低测试难度为目的的测试思想。 2 1a d h o e 可测性设计技术 a d h o c 可测性设计技术是相对于基于算法的可测性设计而言的,它不是一种 可以简化测试生成的设计方法,而是一些用于增加电路可控性、可观察性的设计 技巧,下面就是a d h o c 常用的几种设计技巧。 1 ) 通过添加测试点来增强电路的可控制性和可观察性【1 4 1 。 测试点是指用于提高电路可控制性和可观测性的输入输出端口,其中用于提 高可控制性的电路输入端成为控制点,用于提高可观察性的电路输出端称为观察 点。现有的可测性设计软件可以在分析电路的可测性的基础上,对那些可测性特 别差的节点增加观察点或者控制点。通常情况下,增加控制点的场合包括:三态 逻辑的控制信号,数据选择器( m u l t i p l e x ,简称m u x ) 或数据分配器( d e m u l t i p l e x ) 的数据选择信号,存储器的使能端、读写控制线,总线结构中的控制、地址和数 据总线等。而增加观察点的场合则包括:冗余逻辑的信号线,寄存器、移位寄存 器的输出端,全局反馈回路,大扇出信号的驱动信号等。 2 ) 时序单元增加复位信号或置位信号使得时序电路容易被初始化。 3 ) 测试时屏蔽内部时钟和内部复位信号。 4 ) 分割大的计数器和移位寄存器。 5 ) 分割大的组合电路。 由于计数器或者分频器的测试复杂度随着位数增加而指数增加,通过把一个 大的计数器或分频器拆分成多个小的模块分别进行测试,能够较大地减少测试时 间。 6 ) 消除测试时组合电路模块中的冗余逻辑。 冗余逻辑的存在会降低电路的故障覆盖率,并可能导致其它的故障测试失效, 第二章集成电路测试技术 7 影响a t p g 的效率,因此应该在测试模式下进行适当处理,如通过增加m u x 的方 法来打破反馈环路,使反馈环路在测试模式下失效。 7 ) 分割大的组合电路。 由于测试矢量生成的复杂度随着电路规模的三次方成正比,因此将电路分割 成较小的模块有助于降低测试难度。 2 2边界扫描测试技术 i e e el1 4 9 1 测试标准【5 1 中提出的基本边界扫描体系结构如图2 1 中所示【1 6 1 , 主要的硬件包含: 图2 1 边界扫描设计的基本结构 测试访问端口( t a p ) :封装在待测组件内对多种测试情况提供访问的通 用端口。即三个输入信号( t d i 、t c k 、t m s ) 、一个输出信号( t d o ) 以及一个 可选初始化信号( t r s t ) 。 测试时钟端口( t c k ) :t c k 为i e e el1 4 9 1 标准定义的测试逻辑提供专 用时钟,使组件间的串行测试数据路径独立于某个组件特定的系统时钟,保证测 试数据能够以相同的频率移入和移出不同的芯片而不会造成混乱。一般用t c k 的 片上网络通讯结构可测性设计 上升沿来获取数据,用t c k 的下降沿输出数据。 测试方式选择端口( t m s ) :t m s 端口处接收的信号由t a p 控制器译码后 控制测试操作的进行,信号值在t c k 的上升沿处读取。 测试数据输入端口( t d i ) :在t c k 的上升沿接收串行测试指令或数据。 随着测试时钟的给出,测试数据在边界扫描链上逐步由t d i 移向t d o 。 测试数据输出端口( t d o ) :为了确保不出现时序错误,i e e e1 1 4 9 1 标准 中规定:t d o 的输出数据被锁存在测试逻辑中,只能在t c k 的下降沿变化,实现 边沿触发操作。 测试复位输入( t r s t ) - 当t r s t 为l 时,t a p 控制器被异步初始化为 t e s tl o g i cr e s e t 控制状态。 如图2 1 所示,指令寄存器和所有测试数据寄存器的工作都由t a p 控制器产 生的信号来控制。t a p 控制器是一个时序电路,由测试方式选择( t m s ) 信号和 测试时钟( t c k ) 信号驱动,这些信号由执行测试的被测硬件接收,而由测试设 备或系统逻辑内部提供。图2 1 中每一个被命名的寄存器都可能被选择进入从t d i 到t d o 的串行信号通路中。多路选择器可选择指令寄存器或一个数据寄存器,这 个多路选择器由t a p 控制器直接控制。可使用多路选择器来选择数据寄存器,并 将所选择的数据寄存器插入到t d i 至t d o 的通路中,这个多路选择器由译码指令 来控匍l 。 2 3嵌入式核测试技术 s o c 采用基于i p 核的设计( c o r e b a s e dd e s i g n ) ,它允许在芯片设计过程中复 用已经通过验证的高性能的i p 核,从而提高了设计效率,缩短了设计周期,减少 了产品的上市时间( t t m :t i m et om a r k e t ) 。i p 核供应商提供的核只是完成了设计 工作,而制造和测试的工作都必须由系统集成工程师来进行,也就是说系统工程 师还需要生产该s o c 芯片( 包括所有的i p 核) ,并且实现对芯片内部各个i p 核的 功能测试和结构测试,以及各个i p 核之间的互连测试。正因为如此,s o c 芯片的 测试变得更为困难。 为此,人们提出了一系列的方法提高s o c 的可测性,i e e ep 1 5 0 0 的制定就是 其中之一。i e e ep 1 5 0 0 定义了测试外壳( w r a p p e r ) 的概念。测试外壳用于封装i p 核,实现i p 核与其他逻辑之间的接口。测试外壳实现了i p 核的输入输出端口与 s o c 芯片其他的逻辑电路以及t a m 的连接。i e e ep 1 5 0 0 涉及的是测试外壳和t a m 之间,以及测试外壳和测试外壳之间接口的标准化问题,并不涉及t a m 的具体构 造方法,i e e ep 1 5 0 0 对测试源和测试收集并未标准化,也不涉及核的内部测试方 法,因此测试源和测试收集、测试存取机构以及测试外壳的实现方法各有所异, 第二章集成电路测试技术 9 测试嵌入核的结构就可能有多种。接下来就将介绍i e e ep 1 5 0 0 所规定的包裹s o c 中i p 核的测试外壳。 2 3 1i e e ep 1 5 0 0 测试外壳的基本结构【1 7 】 i e e ep 1 5 0 0 测试外壳由以下几部分组成: 测试外壳串行端口( w r a p p e rs e r i a lp o r t ,w s p ) 测试外壳并行端口( w r a p p e rp a r a l l e lp o r t ,w p p ) 测试外壳指令寄存器( w r a p p e ri n s t r u c t i o nr e g i s t e r ,w l r ) 测试外壳旁路寄存器( w r a p p e rb y p a s sr e g i s t e r ,w b y ) 测试外壳边界寄存器( w r a p p e rb o u n d a r yr e g i s t e r ,w b r ) 图2 2 是i e e ep 1 5 0 0 测试外壳的基本结构。 w p i f i l i l t i t o l r r l乏 c o r e l - ,7 刃 r 刃 jl l i l 7 lw r yi ll 。 l1 ill 入 。 本s e i e c t l w i rv w i r i il _ w s c 图2 2i e e ep 15 0 0 测试外壳结构 1 ) 测试外壳串行端口( w s p ) 串行终端是i e e e1 5 0 0 测试外壳的基本接口。串行终端是用来把指令和数据写 入i e e e1 5 0 0 测试寄存器中的,或是从测试寄存器中读出指令和数据。除了图2 2 所示的串行输出( w s i ) 和串行输入( w s o ) 端口外,w s p 还包括了用来控制所 有测试寄存器的串行控制端口( w s c ) 。 2 ) 测试外壳并行端口( w p p ) w p p 是用户自定义用来提供i e e e1 5 0 0 测试外壳并行接口的一组壳终端。当 测试外壳的测试模式被配置成并行模式时则使用到这组终端。w p p 是由并行输入 l o 片上网络通讯结构可测性设计 ( w p i ) 、并行输出( w p o ) 和并行控制端( w p c ) 组成的。w p c 可能包含了w s c 的一些端口。 3 ) 测试外壳指令寄存器( w i r ) w i r 控制着测试外壳的所有操作。指令寄存器通过串行端口( w s p ) 写入指 令,并且根据指令来选择相应的数据寄存器。通过确定是测试模式还是正常功能 模式可以选通或屏蔽指令寄存器。 4 ) 测试外壳旁路寄存器( w b y ) 旁路寄存器对w s p 的w s i 端口和w s o 端口之间的路径提供旁路功能。旁路 寄存器是在w s i 和w s o 之间的默认寄存器,当其它的数据寄存器都没有被选通 时,旁路寄存器应该被当前的指令选通。旁路寄存器的目的是给测试外壳提供一 个最短的扫描路径,所以当在s o c 中有好几个核的测试外壳被串行的链接起来, 而在进行某些测试时,其中的几个核是不需要被测试的,那么就可以通过旁路寄 存器提供一个最短的扫描路径把其旁路掉。 5 ) 测试外壳边界寄存器( w b r ) w b r 是一组数据寄存器,通过它可以给被测试i p 的端口施加激励和捕获响 应。w b r 根据w i r 中的不同指令既可以提供核的内部测试,也可以提供s o c 中 核的外部测试。 2 3 2 测试外壳的指令 指令寄存器允许指令通过w s i 和w s c 串行写入测试外壳电路中。i e e e1 5 0 0 测试外壳有多种操作模式。它们是正常功能( 非测试) 操作模式,向内测试操作 模式和向外测试操作模式。不同的测试模式确定了是串行测试机制还是并行的测 试机制。 写入w i r 的指令连同i e e ep 1 5 0 0 测试外壳的信号确定了测试外壳的操作,也 可能确定了i p 核本身的操作。i e e ep 1 5 0 0 协议有一些指令集是专门为串行端口 ( w s p ) 定义的,同样也为并行端口定义了相应的指令集。i e e ep 1 5 0 0 协议必须 允许测试外核的测试通道存在。这里有一个最主要的i p 核测试指令一一 w xi n t e s t ( 用户指定的核测试指令) 这是一个弹性相当大的指令,几乎允 许执行所有的核内测试。i e e e1 5 0 0 并没有定义核内测试,但这个有相当大弹性的 指令可以针对不同的核内测试有不同的操作。这里有两个强制提供的指令:一个 是在正常功能模式下的指令( w sb y p a s s ) 和一个在外部测试下的指令 ( w se x t e s t ) 。w sb y p a s s 把测试外壳置为旁路状态,并且允许访问所有的 核功能端口。w se x t e s t 是配置测试外壳为串行外部测试状态。即使是有 w pe x t e s t 模式,也必须有w se x t e s t 指令。 第二章集成电路测试技术 2 3 3测试外壳串行端口( w s p ) w s p 是测试外壳终端装置。i e e ep 1 5 0 0 规定了w s p 端口信号,并通过这些 信号来完成对w i r ,w b y 和w b r 的读写访问。 w s p 必须含有以下信号:w s i ,w s o ,和w s c 。w s c 由测试外壳时钟信号 ( w r c k ) ,测试外壳复位信号( w r s t n ) ,s e l e c t w i r ,c a p t u r e w r ,s h i f t w r 和 u p d a t e w r 组成。如果要对w b r 进行操作,t r a n s f e r d r 也应该被包括在w s c 里。 一些对w b r 的操作可能会用到辅助时钟( a u x c k ) 。w s p 必须满足以下条件。 1 ) 测试外壳设计者必须提供w s p ,并且必须包含以下信号:w s i ,w s o ,w r c k , w r s t n ,s e l e c t w i r ,c a p t u r e w r ,s h i f i w r ,和u p d a t e w r 。 2 ) 所有的强制信号和可选的t r a n s f e r d r 信号只能被测试外壳使用( 它们不能被用 在其它的系统功能上) 。 3 ) 如果使用了a u x c k 信号,那么w r c k 和a u x c k 之间的时序关系应该被准 确详细的规定。 4 ) w s p 可以包含t r a n s f e r d r 信号。 5 ) w s p 除了有专门的时钟信号( w r c k ) 外还可以使用a u x c k 信号以完成除 w b y 和w i r 外的寄存器的操作。这些时钟信号可以和其它系统的时钟信号共 用。 6 ) 用户可以为a u x c k 选择一个名字。 强制的w s p 信号是w s i ,w s o ,w r c k ,w r s t n ,s e l e c t w i r ,c a p t u r e w r , s h i f t w r ,和u p d a t e w r 。和w s p 相连的这些信号用来选通位于w s i 和w s o 之间 的w i r 寄存器或是w d r 寄存器,并对它们进行相应的操作。w s p 可以包括可选 的t r a n s f e r d r 和a u x c k n 信号。 w s i 和w s o :扫入和扫出测试外壳指令和数据的输入输出端口。 w r c k - 一个专门为测试外壳提供的时钟用来完成i e e e1 5 0 0 中的功能。 a u x c k n :a u x c k n 是为了完成w b r 的某些操作而增加的可选辅助时钟信 号。 w r s t n :复位信号,当该信号有效时它把测试外壳置为正常系统模式。 s e l e c t w i r :s e l e c t w i r 信号确定了是对指令寄存器还是数据寄存器( 如w b y 或w b r ) 进行操作。当s e l e c t w i r 信号被置为1 时,w i r 寄存器被选通,并且 w i r 寄存器连通了w s i 和w s o 。当s e l e c t w i r 信号被置为o 时,某些w d r 或 c d r 被选通并连通w s i 和w s o 。 c a p t u r e w r ,s h i f t w r ,u p d a t e w r :这些信号是对w r 操作的控制和使能信 号。当这三个信号中的一个置为l ,另外两个置为0 时,被置为l 的信号所对应得 操作将施加在已选通的w r 上。当w i r 和w b y 被选通时,这些操作与w r c k 同 1 2 片上网络通讯结构可测性设计 步。 号。 嚣 口 赤 。 扫描 t r a n s f e r d r :当w b r 中的单元有转移( t r a n s f e r ) 功能时则需要t r a n s f e r d r 信 s e l e c t w i r 图2 - 3 指令寄存器电路的基本接口 2 3 4 测试外壳指令寄存器( w i r ) 扫描输出 w i r 是一个指令寄存器,i e e ep 1 5 0 0 的指令通过标准的w s p 端口及其时序 写入到w i r 里。w i r 同样也包含了和其它i e e ep 1 5 0 0 测试外壳组件( 例如w b r 和w b y ) 的接口,也可能含有和被测i p 核内部扫描链的接口。 图2 3 说明了在i e e ep 1 5 0 0 测试外壳体系结构中的w i r 电路。其中,端口信 号是指w s p 端口的信号,包括w r c k ,w r s t n ,s e l e c t w i r ,c a p t u r e w r ,s h i f t w r , 和u p d a t e w r 等,w i r 电路输出的控制信号包括i p 核模式选择( c o r em o d e s ) , 边界寄存器控制( w b rc o n t r o l s ) ,旁路寄存器控制( w b yc o n t r o l s ) ,内部扫描 链控制( c d rc o n t r o l s ) ,寄存器链选择( d rs e l e c t ) 等信号。这些控制信号根据 相应的指令产生,测试外壳在这些控制信号的作用下完成响应的功能。这幅图说 明了标准的数据寄存器( 例如边界寄存器( w b r ) 和旁路寄存器( w b y ) ) 和其 它的可选寄存器( 例如i p 核内部寄存器( c d r ) ) 如何被配置使得它们可以通过 w s p 被读写访问,以及如何被w i r 寄存器选通。w i r 包括移位部分,指令译码 部分和更新( u p d a t e ) 部分。测试外壳必须满足以下条件。 1 ) i e e ep 15 0 0 测试外壳有且只有一个w i r 。 2 )

温馨提示

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

评论

0/150

提交评论