(微电子学与固体电子学专业论文)mmc+host控制器可测性设计.pdf_第1页
(微电子学与固体电子学专业论文)mmc+host控制器可测性设计.pdf_第2页
(微电子学与固体电子学专业论文)mmc+host控制器可测性设计.pdf_第3页
(微电子学与固体电子学专业论文)mmc+host控制器可测性设计.pdf_第4页
(微电子学与固体电子学专业论文)mmc+host控制器可测性设计.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 测试已经成了集成电路设计制造中不可分割的一部分,而且随着集成电路工 艺复杂度和设计复杂度的提高,集成电路的测试变得越来越困难也变得越来越 重要。同时基于i p 核复用的系统芯片( s o c ) 使得测试问题更加突出。 本文首先阐述了测试的基本概念,简单地描述了故障检测的基本原理以及现 有的一些可测性方法。 为了便于s o c 内每个i p 核的测试,人们给每个i p 核之i j 以及i p 核和测试访 问机制( t a m ) 之i 日j 制定了一个标准化的接l jm 议,称之为i e e ep 1 5 0 0 协议。本 文接下来介绍了p i5 0 0 测试外壳的结构和其各个部分,包括测试外壳串行端口、 指令寄存器、旁路寄存器和边界寄存器。说明了这些模块的时序和设计规则,还 介绍了i e e ep 1 5 0 0s o c 测试体系。p 1 5 0 0 测试外壳是和i p 核内部的测试结构紧密 相连的,于是本文又介绍了内部扫描测试技术。 然后本文把以上技术应用到一个实际的:签片m m ch o s t 控制器中,并且 考虑到这个芯片的一些特殊性,对它进行了可测性设计。同时也进行了故障覆盖 率的仿真。 最后本文对s o c 测试技术的未束发展方向进行了展望。 关键词:可测性设计,p 1 5 0 0 ,测试外壳,扫描链,m m ch o s 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 ti nt h e i 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 sm o r e a n dm o r ed i f f c u l t ,a l s om o r ea n dm o r ei 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 sm a k et h et e s t i n ge v e nm o r ep r o m i n e n t 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 sd i s p l a y e df i r s ta n ds o m ec o n v e n t i o n a lt e s t m e t h o di ss h o w e d i no r d e rt o t e s te v e r ye m b e d d e di pc o r e sc o n v e n i e n t l y , p e o p l em a k eas t a n d a r d t e s t a b i l i t ym e r h o d ef o re m b e d d e dc o r e b a s e d i n t e g r a t e dc i r c u i t s ,i t i sn a m e di e e e p 15 0 0g t a n d a r d t h e np 15 0 0s t a n d a r di si n t r o d u c e di nt h i sp a p e r t h ep a p e rs h o w e dt h e s t r u c t u r eo fp15 0 0t e s tw r a p p e ra n de a c hp a r to ft h ew r a p p e r t h e s ep a n sa r ew r a p p e r s e r i a lp o r t ( w s 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 ) t h ep a p e ra l s od i s p l a y st h ed e s i g ns p e c i f i c a t i o no f t i l e s ep a r t s t h ew h o l es o ct e s ts t r u c t u r eo fi e e ep 15 0 0i ss h o w e d b e c a u s et h e w t a p p e rc l o s ec o n t a c tt ot h ei n t e r n a ls c a nc h a i n so fi pc o r e ,s ot h ep a p e ra l s oi n t r o d u c e t h et e c h n o l o g yo fi n t e m a ls c a l a t h e nt h e p a p e ra p p l y s t h et e s tt e c h n o l o g yt oai pc o r e 一m m ch o s t c o m t r o l l e ri pc o n s i d e r i n gi t sp a r t i c u l a r i t y t h ep a p e ra l s om a k e sf a u l tc o v e r a g e f o rt h ed e s i g n 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 es o ct e s tt e c h n o l o g y 1 k e yw o r d s :d f t , p 15 0 0 ,w r a p p e ls c a nc h a i n ,m m ch o s t c o m t r o l l e r 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外, 论文中不包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电 子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的 同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:日期: 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文:学校可以公布论文的全 部或部分内容,可以采用影印、缩印或其他复制手段保存论文。( 保密论文在解密 后应遵守此规定) 本人签名: 导师签名: 日期: 日期: 第一章绪论 第一章绪论 面积、速度、功耗一直是衡量集成电路( i c ) 设计好坏的三大指标。然而随 着集成电路规模的不断增大,以及工艺技术的不断进步,集成电路的可测性问题 已经成为提高产品可靠性和成品率的一个不可忽视的因素。于是可测性技术应运 而生,集成电路的可测性程度已经成为衡量集成电路设计好坏的又一大指标。尤 其是当片上系统( s y s t e m so nc h i p ,s o c ) 成为集成电路技术发展的大趋势时,由 于系统复杂度和规模的提高,可测性设计在整体产品开发中也就占据了越来越重 要的地位。 本章第一节介绍了测试的概念和意义,第二节介绍了现有的一些可测性技术, 第三节说明了本论文的结构。 1 1 测试的概念和意义 电路的测试就是检查制造好的电路的正确与否的过程。测试电路的一般过程 是:建立描述电路“好或“坏 的模型:设计出能检验电路“好”或“坏 的 测试数据;把设计好的数据施加在被检验的电路上;观察被检验电路的输出结果: 最后分析与理想的结果是否一致。 被测试的电路称为被测电路( c i r c u i tu n d e r t e s t ,c u t ) ;对被测电路产生测试 数据的方法称为测试向量生成( t e s tg e n e r a t i o n ) :产生的测试数据称为测试向量 ( t e s tp a t t e r n ,t p ) :把测试向量施加到c u t 的过程称为测试施力i i ( t e s ta p p l i c a t i o n ) ; 测试向量施加后被测试电路的输出称为测试响应( t e s tr e s p o n s e ) ;检查电路实际的 测试响应与理想的测试响应是否一致的过程称为测试分析( t e s tr 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 m m ch o s t 控制器可测性设计 功能测试主要用来寻找设计中可能存在的错误,是用来验证电路中的逻辑行为。 功能测试所使用的测试向量称为功能测试向量。功能测试向量一般由设计验证过 程中所使用的验证向量直接转换而成,也可能是由测试工程师手工生成。制造测 试又叫结构测试( 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 r e mg e n e r a t i o n ) 工具自动生成。 1 2 1 故障检测的基本原理 1 2 可测性设计技术概述 在电路测试中,用故障来描述电路中的错误,而用测试向量来检测故障。现 在用单固定型( s t u c k a t ) 故障模型来阐述这一概念【2 3 ,4 1 。单固定型故障描述的是 电路中一根线固定接到逻辑值0 或1 的现象,例如这根线与地或电源短路。 b a ( a ) 正常的与非门 b a = = ( b ) 端口出现a 0 故障 图1 2 固定型故障 b a ( c ) a 端口出现a 1 放障 图1 2 ( a ) 是一个正常的与非门;( b ) 表示该与非门的输入a 接地,描述这 个现象的就是固定0 故障,用a 0 表示;( c ) 表示该与非门的输入a 接电源,描 述这个现象的就是固定1 故障,用a 1 表示。当a 与地短接时,不论何种逻辑信 号加到与非门的输入端上,输出端z 都是输出高电平“1 ”。图1 2 只表示出了a 端口出现的两个固定型故障a o 和a 1 ,对于b 和z 端口也有这两个故障,它们 表1 1 与非门的故障及故障检测 输入正常有故障时响应 ab 响应 久沁 b 0z ,oa l b l刀l 00lllo1ll 0ll110o11 101110101 l1 0l1o001 是b 0 、b 1 、z 0 和z 1 。所以一个与非门的固定故障共有6 个。 故障检测就是对输入端施加信号,观察输出信号( 输出响应) ,然后比较该输 第一章绪论 出响应和无故障时的理想输出响应,如果二者不同,则说明检测到电路有故障。 对于图1 2 ( a ) 所示的与非门电路,输入、正常响应、故障类型及有故障的 输出响应列表如表1 1 所示。由表1 1 可知,有故障时的输出响应并非总是与无故 障时的输出响应不同,例如故障b 1 ,只有当a ,b 分别1 ,o 时,无故障输出响 应才与有故障时的响应不同,因此把a = l ,b = 0 称为故障b 1 的测试向量。由表 1 1 可以看出,只需要三个测试向量 a b = o i ,a b = 1 0 ,a b = i l 就可以检测出所有 的故障,在一定的故障检测覆盖率下,应使测试向量最简,才能缩短测试周期。 除了有固定型故障,还有桥接故障( 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 ) 。 以上几种故障模型不是绝对相互独立的,它们覆盖的物理缺陷可能有交集p 】。实际 应用中多数采用单固定故障模型( 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 j 。基于一种有效的故障模型产生测试序列是确定 性测试产生( d e t e r m i n i s t i ct e s tp a a e mg e n e r a t i o n ) 的基础。任何一种确定性的测试 产生算法,对于在一种给定故障模型下电路的每个故障,都必须解决两个问题:( 1 ) 激励故障。即在故障点产生一个与故障值相反的值。( 2 ) 传播故障。即将故障点的 值传播到电路的原始输出。 根据对象电路特性的不同,自动测试向量生成可分为组合电路的测试向量生 成和时序电路的测试向量生成。组合电路的测试向量生成方面的研究相对成熟, 它能提供很高的固定型故障覆盖率。根据向量生成机制的不一样,它又可分为确 定性测试向量生成和随机性测试向量生成随机性测试向量生成比较简单,利用 随机算法生成一组随机向量,分析所覆盖到的故障,再进一步产生一组随机向量, 分析这组向量对剩余故障的覆盖情况,通过反复这样的过程,不断提高故障覆盖 率。然而,随机生成测试向量,很难达到很高的故障覆盖率,因此在工业实践中 很少采用。目前在工业实践中广为使用的还是确定性测试向量自动生成。确定性 测试向量自动生成利用布尔差分和通路敏化等概念,针对故障模型来产生测试向 4 m m ch o s t 控制器可测性设计 量。由于确定性测试向量自动生成过程是目标制导的,可以通过不断调用其生成 过程,达到很高的故障覆盖率。在组合电路的测试向量自动生成算法中最经典的 是在二十世纪六十年代提出的d r 7 】算法。其后文献提出了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 ) 算法【8 】,它采用分支定界算法来搜索输入向量空间,相对于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 dl i n e ) ” 和“多路回退( m u l t i p l eb a c k t r a c e ) 等概念来加速搜索过程,其效率在p o d e m 算 法的基础上又得到了很大提高。因而,蝌算法被当前国际上公认为比较有效的 测试生成算法。在这些算法的基础上,研究人员孜孜不倦,实现了一系列的自动 测试生成系统,包含有: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 等i lo 1 1 ,眩l 。 相对于组合电路而言,时序电路的测试向量自动生成则要复杂得多,其生成过程 也非常耗时。时序电路的自动测试向量生成过程拓展了通路敏化的概念,结合时 间帧和状态迁移生成测试向量。由于存在寄存器,电路内部逻辑的可控制性和可 观察性变弱,因此时序电路很难取得很高的故障覆盖率,特别是对一些复杂电路, 其时序深度过大,利用时序电路的测试向量生成不仅不能够提供很高的故障覆盖 率,而且还要耗费很长的时间。研究人员在对时序电路测试生成的长期研究中, 也提出了一些原型系统。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 是把“测试仪”做到了 电路内部,因为它既要对待测电路提供输入的测试向量,又要对其输出的响应 产生的特征与期望的特征比较以给出测试通过与否的结果。所不同的是,设计 第一章绪论 的这个“测试仪 专门为这个待测电路而工作,功能单一固定。 3 ) 边界扫描设计,是为了解决板级数字电路的测试问题。系统级的边界扫结构的 应用使得可以通过层次化的测试访问机制,利用边界扫描结构测试系统中的每 个模块。 4 ) i d d q 和i d d t 可测性设计,i d d q 测试是测量c m o s 电路在稳态下的静态电 流。基于电流测试还有i d d t 测试,测量电路在动态切换过程中的动态电流。 1 3 本论文结构 在此之前,我们已经完成了海思高校合作项目“m m ch o s t 控制器设计 的 设计工作,然后进行了f p g a 验证,并且通过了海思的验收。本文主要是在自己 对可测性设计有浓厚兴趣的前提下,并以m m ch o s t 控制器为研究平台的基础 上,对可测性设计进行研究和实现。目的是提高m m ch o s t 控制器的可测性,并 且实现m m ch o s t 控制器作为s o c 系统中的一个i p 核的可测性设计。本文主要 研究了两个方面,一个是m m ch o s t 控制器的内部扫描技术的研究,另一个是 m m ch o s t 控制器p 1 5 0 0 测试外壳的实现。 本文章节的具体安排如下: 第二章首先介绍了s o c 测试的基本概念、现状及其面临的挑战。然后介绍了 针对s o c 测试的i e e ep 1 5 0 0 协议,并重点介绍了p 1 5 0 0 测试外壳的作用及其基本 结构。 第三章主要介绍了内部扫描链的结构,说明了扫描链的时序,分析了扫描链 对电路性能的影响。 第四章是本文的重点,主要是把前两章的可测性方法在m m ch o s t 控制器上 进行了研究和实现,并针对m m ch o s t 控制器的些特殊性,应用了一些特殊的 可测性手段。 第五章为论文的总结。对全文的工作进行了总结,概括了本文的主要意义, 并提出了今后的研究方向。 6 m m ch o s t 控制器可测性设计 第二章le e ep l5 0 0 测试外壳技术 随着集成电路制造技术的快速发展,电路的规模不断增大,这使得将复杂系 统集成在单个芯片上成为可能,于是便出现了系统芯片s o c 。随着s o c 结构应用 的越来越来广泛,基于核的s o c 设计流程就成为设计人员的一个新课题。工作频 率的不断提高和芯片尺寸的不断缩小也给这些不同类型的元件以及其复杂的连接 带来了一系列棘手的测试问题,传统的设计和测试方法已难以应付。 2 1s o c 测试概述 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 0 。但是,s o c 设计也给人们提出了许多挑战, 测试就是其中的挑战之一i l 引。 典型的s o c 结构如图2 1 所示,包括了多个元件,这些元件都是未经制造和 测试的i p 核。i p 核供应商提供的核只是完成了设计工作,而制造和测试的工作都 必须由系统集成工程师来进行,也就是说系统工程师还需要生产该s o c 芯片( 包 括所有的i p 核) ,并且实现对芯片内部各个i p 核的功能测试和结构测试,以及各 个i p 核之间的互连测试。正因为如此,s o c 芯片的测试变得更为困难,具体表现 图2 1s o c 的结构 在以下几个方面【1 4 1 5 】: 1 ) 测试信息传递。测试信息应包括描述i p 核内部的可测性设计、故障覆盖率、测 试矢量数据及其有效性验证、核测试操作顺序、测试模式及相应的测试协议等。 由于i p 核供应方与使用方的分离,系统集成者所需提供的芯核信息( 特别是其 结构信息) 非常有限,只能将其当作一个“黑盒 来进行处理,而不能开发出更 佳的测试方案,该现象对加密i p 核来说更为突出;与此相对应的是,芯核供应 第二章i e e ep 1 5 0 0 测试外壳技术 7 方往往并不知道芯核实际的s o c 集成环境、以及系统集成者对测试质量的具体 要求,因而提供的测试信息所能保证的测试质量等级,可能就会出现过高或过 低的情况。对于前者而言,将会引入过高的测试成本( 如测试时间、面积开销及 功耗等) ;而对于后者来说s o c 的质量可能会得不到保障。此外,测试信息用 何种格式来描述,以便于核供应方与使用方协同工作和交流,也还有待于作进 一步的规范。 2 ) 测试数据量。为了减少设计和生产成本,测试必须迅速而有效,而测试一片s o c 所花的时间与其测试数据量又是密切相关的。随着s o c 集成i p 核数目的增多、 功能越来越复杂,相应的测试数据量也随之激增,但相对而言自动测试设备 ( a u t o m a t i ct e s te q u i p m e n t ,a t e ) 传输带宽的增长又较为缓慢,从而使得两者之 间的矛盾变得越来越突出。如何有效地减少测试数据量、缩短测试时间,以提 高生产能力、降低测试成本,是s o c 测试必须面对的一大挑战。 3 ) 内嵌芯核的测试访问。由于i p 芯核深嵌在s o c 的设计中,而且它的输入输出 端口数通常要大于s o c 的输入输出引脚,因此像测试传统i c 器件一样用直接 访问s o c 引脚的测试方法往往行不通,这样就需要一合适的测试存取机带o ( t e s t a c c e s sm e c h a n i s m ,t a m ) ,将测试激励源( s o u r c e ) 连接到芯核的输入端,并将芯 核输出端连接到响应接收器( s i n k ) ,以方便测试数据的传输;与此同时还要考虑 测试控制、芯核隔离以及测试优化等一系列的问题。 为此,人们提出了一系列的方法提高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 对测试源和测试收集并未标准化,也不涉及核的内部测试方 法,因此测试源和测试收集、测试存取机构以及测试外壳的实现方法各有所异, 测试嵌入核的结构就可能有多种。接下来就将介绍i e e ep 1 5 0 0 所规定的包裹s o c 中i p 核的测试外壳。 2 2s o c 测试外壳技术 下面我们重点介绍测试外壳的结构以及各个电路模块的作用【1 6 j 。 2 2 1i e e ep 1 5 0 0 测试外壳的基本结构 i e e ep 1 5 0 0 测试外壳由以下几部分组成: 测试外壳串行端1 2 1 ( w r a p p e rs e r i a lp o r t ,w s p ) 8 m m ch o s t 控制器可测性设计 测试外壳并行端口( 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 i 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 测试外壳的基本结构。 、卯i w s i l t i t o o l rr c o r e l乏 。刁 一r刃,r刃 广 j ili 一 l l 7 i w b y ll 、, ly l i l 卜 w i r l s e l e c t w i rj? w s c 图2 2i e e ep i5 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 测试外壳并行接1 3 的一组壳终端。当 测试外壳的测试模式被配置成并行模式时则使用到这组终端。w p p 是由并行输入 ( 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 ) 写入指 令,并且根据指令来选择相应的数据寄存器。通过确定是测试模式还是正常功能 模式可以选通或屏蔽指令寄存器。 第二章i e e ep 1 5 0 0 测试外壳技术 9 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 2 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 2 2 1 测试外壳对指令的响应 测试外壳对指令的响应必须满足以下条件: 1 ) 每一条指令当其有效时都将选择一组测试外壳的寄存器( w r s ) 。 2 ) 没有被有效指令选通的寄存器( w r s ) 同样也要被控制,这样它们不会和被选 通的寄存器以及核电路发生冲突。 l o m m ch o s t 控制器可测性设计 3 ) 每一条指令将选通在w s i 和w s o 之间的一条寄存器路径,并且通过正确的信 号使得数据在这条路径上串行移位。 4 ) 对于每条指令来说,位于w s i 和w s o 之间的扫描路径的长度必须是固定的。 5 ) 当并行指令有效时,在w s i 和w s o 之间应选通旁路寄存器。 回经由前一个指令写入w b r 的需要在下一个使用的数据必须保持到下一条指令 变为有效。 写入w i r 中的指令被译码以完成两个关键功能。有效指令指定了在测试外壳 或核内的要被操作的寄存器。这些寄存器在指令有效的同时被设置成测试模式。 同样地,一条指令也指定了在w s i 和w s o 之间的一条扫描路径。一条特殊的指 令可能会选通在w s i 和w s o 之间或w p i 和w p o 之间的多条路径。此外,一些 有效指令有可能选通不在w s i 和w s o 之间或w p i 和w p o 之间的寄存器来完成 测试功能。没有被选通的寄存器也要被控制,这样它们就不会和其它处于测试模 式下的电路发生冲突。 在i e e ep 1 5 0 0 协议中定义了一些指令,其中一些指令是必须得有的,另一些 指令是可选的。下面将挑选几条指令详细说明。 2 2 2 2w sb y p a s s 指令 w sb y p a s s 指令是测试外壳设计者必须提供的指令。w sb y p a s s 指令使测 试外壳处于正常功能模式配置下。当对核没有测试操作的要求时,使用 w sb y p a s s 指令,此时w b y 寄存器被选通。w b y 寄存器给测试外壳w s i 和 w s o 之间提供了最短的串行路径。这样使得测试数据能迅速地通过测试外壳。 该条指令必须满足以下规则: 1 ) 每一个测试外壳都应该提供w sb y p a s s 指令。 2 ) w sb y p a s s 指令选通w b y 寄存器使得测试外壳的w s i 和w s o 端口被w b y 连通。 3 ) 当使用w sb y p a s s 指令时,测试外壳的操作不能影响到被测电路的正常操作。 4 ) 当使用w sb y p a s s 指令时,所有的既有测试模式又有正常功能模式的寄存器 都应该处于正常系统功能状态。 5 ) 当使用w sb y p a s s 指令时,w s c ( 测试控制信号) 可被使用。 6 ) w sb y p a s s 指令的指令编码可由测试外壳设计者自行规定。 在测试s o c 中的一个特殊的i p 核或一串i p 核时,使测试数据穿过整个w b r 可能很不方便。所以就用w b y 替代w b r 。这样就允许测试数据很快地通过不被 测试的i p 核,能使数据更直接到达被测试的i p 核,通过w b y 把这些i p 核串接 起来了。被旁路的i p 核依然能工作在正常的系统功能下。为了使i p 核工作在正常 第二章i e e ep i5 0 0 测试外壳技术 的系统功能下,也可以使用该指令。该指令在测试外壳复位后有效。 2 2 2 3w se x t e s t 指令 w s e x t e s t 指令是测试外壳设计者必须提供的指令, w se x t e s t 指令是 用来测试核外部电路以及核与核之间的互联是否正常。它必须满足以下条件。 1 ) 每一个测试外壳都应该提供w se x t e s t 指令。 2 ) 当使用w se x t e s t 时,在移位操作时只有w b r 被选通成为w s i 和w s o 之 间的串行访问通道。 3 ) 当使用w s e x t e s t 时,被测电路应该被控制,这样当被测电路的引脚上有输 入信号或时钟信号时被测电路就不会被损伤。 4 ) 当使用w s e x t e s t 时,保留在w b r 寄存器单元里的数据确定了w b r 输出 引脚上的值。输出引脚上的信号在下一个w b r 数据到来以前应该保持稳定。 5 ) 当使用w se x t e s t 时,对于c a p t u r e 操作,所有从核输入端接收到的信号都 应该能写入w b r 。 6 ) 当使用w s e x t e s t 时,对于c a p t u r e 操作,w f o 端的状态不能被改变。 7 ) 当使用w se x t e s t 时,w b r 应处于o f 模式。 8 ) 当使用w se x t e s t 时,w s c ( 测试控制信号) 可被使用。 9 ) 当使用w s e x t e s t 时,应把被测核置于安静模式( q u i e tm o d e ) ( 例如r e s e t 有效或时钟关闭) 。 1 0 ) 当使用w s e x t e s t 时且处于w b r 移位路径上的输出单元被使用了,那么在 移位时w f o s 应该被置于安全值。 1 1 ) w s指令的指令编码可由测试外壳设计者自行规定。 _extestwse x t e s t 指令使得与测试外壳连接的外部电路可被测试。位于w f o s 端 的边界寄存器单元施加测试激励,而位于测试外壳输入端的单元捕获测试结果。 当使用w s e x t e s t 时,被测电路所接收到的输入信号可能会和在正常工作 下接收到的输入信号有很大区别。如果被测电路可以容忍这些异常的输入信号, 对测试外壳就不需要有特殊的要求。然而,有些被测电路可能会因为这些异常的 输入信号导致损伤。在这种情况下,测试外壳就应该给被测电路提供保护,使其 在异常的输入信号下不会损伤。这可以通过在w se x t e s t 有效时把被测电路置 于复位或保持( h o l d ) 状态来完成。 当使用w s e x t e s t 时,测试外壳的输入端e l 可以允许信号直接送给被测电 路。这样可以使得用户自定义的输入端的安全值施加在被测电路的输入上,这样 就能确保在w s e x t e s t 有效时施加在测试外壳输入端的信号不会对被测电路误 操作。 1 2 m m ch o s t 控制器可测性设计 2 2 24w s i n t e s t - s c a n 指令 串行核测试w si n t e s ts c a n 指令是一条可选的,测试核内电路的指令。 在执行w s 一i n t e s ts c a n 指令时,测试激励通过移位的方式写入w b r 中,并通 过w b r 施加到被测电路端口。测试结果被串行扫描链所捕获,然后把结果扫出进 行检验。该条指令必须满足以下条件。 1 ) 当使用w si n t e s ts c a n 指令时,w b r 应该和内部的扫描链连接起来,形 成w s i 和w s 0 之间的一条通路。 2 ) 当使用w si n t e s ts c a n 指令时,w b r 应被置于i f 模式。 3 ) 当使用w si n t e s ts c a n 指令时,w s c ( 测试控制信号) 可被使用。 4 ) 当使用w si n t e s ts c a n 指令时,所有的w f o s 都应被置于安全或静态状态。 5 ) 当使用w si n t e s ts c a n 指令时,对于核输入端,在捕获操作中载入的数据 与核外电路或是芯片级互连的操作是无关的。 6 ) 串行扫描链由w b r 和每一个被测电路里的扫描单元组成。 7 ) w si n t e s ts c a n 指令的指令编码可由测试外壳设计者自行规定。 w si n t e s ts c a n 指令允许使用每一个测试向量对核内电路进行单步测试, 并且把响应移出串行扫描链。 当使用w si n t e s ts c a n 指令时,扫描链就成为实际的扫描点。位于核输 入端的单元用来施加测试激励,而输出端的单元捕获响应。通过扫描链把激励和 响应扫入和扫出被测电路。这个操作要求位于核输入端口的测试外壳单元能把信 号送给核内电路。 典型地,在施加激励和捕获响应之间的这段时间里,被测电路将接收到一序 列的时钟信号来完成单步测试。在使用w si n t e s ts c a n 指令时,位于核时钟 输入端的测试外壳单元可使时钟信号能送给被测电路。 当使用w si n t e s ts c a n 指令时,w f o s 的状态由测试外壳电路确定。每 一个w f o 都应被置为静态或非活动状态。这样在对被测电路进行测试时,能确保 给被测电路周围的电路提供安全的信号。 2 2 3 测试外壳串行端口( w s p ) w s p 是测试外壳终端装置。i e e ep 1 5 0 0 规定了w s p 端口信号,并通过这些 信号来完成对w 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 必须满足以下条件。 第二章i e e ep 15 0 0 测试外壳技术 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 l w r ,和u p d a t e w r 。 所有的强制信号和可选的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 l 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 中的功能

温馨提示

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

评论

0/150

提交评论