(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf_第1页
(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf_第2页
(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf_第3页
(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf_第4页
(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(微电子学与固体电子学专业论文)32位高性能dsp可测性研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着v l s i 规模和复杂度的不断提高,可测性设计问题已经成为集成电路设 计中重要的一部分。论文介绍了d s p 芯片的可测性设计方法,根据故障效应对各 种可测性设计的方法进行了分类,比较了各种测试方法的优缺点和适用范围。详 细讨论了适用于3 2 位d s p 芯片的测试方法和测试平台的结构,对测试平台的主要 部件测试总线控制器t b c 的功能和结构进行了分析。从测试接口说明、控制 逻辑电路设计、扫描寄存器和扫描通路三个方面对3 2 位d s p 芯片内部可测性设计 进行了深入的分析。在扫描通路的设计中,引入了化整为零和层次化的设计方法, 对测试指令寄存器、旁路寄存器以及数据寄存器的设计进行了改进,减少了测试 路径,降低了测试成本。基于t b c 测试平台,对d s p 芯片中的a l u 进行了测试, 测试结果验证了测试平台的可行性和a l u 的正确性。 关键字:可测性全扫描测试法测试平台 a b s t r ( 玎 a b s t r a c t w i t ht h ei n o r e a s i n gc o m p l e x i t yo fv l s lt e s t a b i l i t yh a sb e c o m ea l li m p o r t a n tp a r t i nt h ed e s i g no fi n t e g r a t e dc i r c u i t i nt h i sp r e s e n tt h e s i s ,t h et e s t a b i l i t yo fa3 2 - b i t h i g h - p e r f o r m a n c ed s p i sd i s c u s s e d ,t h et e s t a b i l i t i e sb yu s i n gt h ef a u l te f f e c tm o d e l sa r c c l a s s i f i e d t h ea d v a n t a g e sa n dd i s a d v a n t a g e sa r ec o m p a r e df o rt e s t a b i l i t y t h et e s t m e t h o da n dt e s tp l a t f o r mf o rt h e3 2 - b i td s p c h i pa f u l l ya n a l y s e d f o rt h ek e yp a r ti n t h et e s tp l a t f o r m ,t h et b c sm a i nf u n c t i o n sa n ds t r u c t u r ea les t u d i e d f r o mt h r e e a s p e c t s :d e s i g no ft h es c a n - p a t h ,d e s i g no fl o g i c a lc i r i t , s c a nr e g i s t e r sa n ds c a n - p a t h , t h et e s t a b i l i t yi sa n a l y s e d i nt h ed e s i g no fs c a l l - p a t h , t h eh i e r a r c h yi sp o i n t e do u t , a n d t h et e s t i n gf o ri n s t r u c t i o nr e g i s t e r s ,b y - p a s sr e g i s t e r sa n dd a t ar e g i s t e p si si m p r o v e d , w h i c hd e c r e a s et h et e s t i n gp a t ha n dr e d u c et h et e s t i n gc o s t b a s i n go nt h et b ct e s t p l a t f o r m ,t h ea l u i nt h ed s pc h i pi st e s t e d , w h i c hd e m o n s t r a t e st h et e s tp l a t f o r mi s f e a s i b l ea n dt h ea l ui sc o r r e c t k e yw o r d s :t e s t a b i l i t y f u l ls c a nb a s e dt e s tt e s tp l a t f o r m 西安电子科技大学 学位论文独创性( 或创新性) 声明 秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是 我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除 了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人 已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或其 它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研 究所做的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名:耸噬日期堕:! :覃 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定, 即:研究生在校攻读学位期间论文工作的知识产权单位属西安电子科技 大学。学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可 以公布论文的全部或部分内容,可以允许采用影印、缩印或其它复制手 段保存论文。同时本人保证,毕业后结合学位论文研究课题再攥写的文 章一律署名单位为西安电子科技大学。 ( 保密的论文在解密后遵守此规定) 本学位论文属于保密,在j 解密后适用本授权书。 本人签名: 导师签名: 日期逊:f ! 聋 绪论 第一章绪论 本章在介绍d s p 发展过程的基础上,引出自主设计d s p 芯片的重要意义,然 后介绍d s p 芯片设计中引入可测性设计的必要性,最后说明了本论文的研究背景 和论文的主要工作内容。 1 1d s p 芯片发展状况 自从数字信号处理器芯片( d i 垂t a ls i g n a lp r o c e s s o r s ,d s p ) 问世以来,d s p 就 以其数字器件特有的稳定性、可重复性、可大规模集成,特别是可编程性和易于 实现自适应处理等特点,给信号处理的发展带来了重大的机遇,使得信号处理的 手段更加灵活,功能更加强大。近年来,d s p 芯片的功能越来越强大,其应用领 域扩大到国民经济的各个方面,同时在军事领域也有广泛的用途。 数字信号处理( d i g i t a ls i g n a lp r o c e s s i n g ,简称d s p ) 是- - i - 】涉及许多学科而又 广泛应用于许多领域的新兴学科。2 0 世纪6 0 年代以来,随着计算机和信息技术的 飞速发展,数字信号处理技术应运而生并得到迅速的发展。在过去的二十年时间 里,数字信号处理已经在通信等领域得到极为广泛的应用。 数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起 来的。数字信号处理在理论上的发展推动了数字信号处理应用的发展。反过来, 数字信号处理的应用又促进了数字信号处理理论的提高。而数字信号处理的实现 则是理论和应用之间的桥梁。 虽然数字信号处理的理论发展迅速,但在2 0 世纪8 0 年代以前,由于实现方 法的限制,数字信号处理的理论还得不到广泛的应用。直到2 0 世纪7 0 年代末8 0 年代初世界上第一片单片可编程d s p 芯片的诞生,才将理论研究结果广泛应用到 低成本的实际系统中,并且推动了新的理论和应用领域的发展。d s p 芯片的诞生 及发展对近2 0 年来通信、计算机、控制等领域的技术发展起到十分重要的作用。 世界上第一个单片d s p 芯片应当是1 9 7 8 年a m i 公司发布的$ 2 8 1 1 ,1 9 7 8 年 美国i n t d 公司发布的商用可编程器件2 9 2 0 是d s p 芯片的一个重要里程碑。这两 种芯片内部都没有现代d s p 芯片所必须有的单周期乘法器。1 9 8 0 年,日本n e c 公司推出的u p d 7 7 2 0 是第一个具有乘法器的商用d s p 芯片。在这之后,最成功的 d s p 芯片当属美国德州仪器公司( t e x a si n s t r u m e n t s ,简称t i ) 的一系列产品。t i 公司在1 9 8 2 年成功推出其第一代d s p 芯片t m s 3 2 0 1 0 及其系产品t m s 3 2 0 11 、 2 3 2 位高性能d s p 可测性研究 t m s 3 2 0 c 1 0 c 1 4 c 1 5 c 1 6 c 1 7 等,之后相继推出了第二代d s p 芯片t m s 3 2 0 2 0 、 t m s 3 2 0 c 2 5 c 2 6 c 2 8 ,第三代d s p 芯片t m s 3 2 0 c 3 0 c 3 1 c 3 2 ,第四代d s p 芯片 t m s 3 2 0 c 4 0 c 4 4 ,第五代d s p 芯片t m s 3 2 0 c 5 x c 5 4 x ,第二代d s p 芯片的改进 型t m s 3 2 0 c 2 x x ,集多片d s p 芯片于一体的高性能d s p 芯片t m s 3 2 0 c 8 x 以及 目前速度最快的第六代d s p 芯片t m s 3 2 0 c 6 2 ) ( c 6 7 x 等。t i 将常用的d s p 芯片 归纳为三大系列,即:t m s 3 2 0 c 2 0 0 0 系列( 包括t m s 3 2 0 c 2 x c 2 x x ) 、 t m s 3 2 0 c 5 0 0 0 系列( 包括t m s 3 2 0 c 5 x c 5 4 x c 5 5 x ) 、t m s 3 2 0 c 6 0 0 0 系列 ( t m $ 3 2 0 c 6 2 x c 6 7 x ) 。如今,t i 公司以成为世界上最大的d s p 芯片供应商,其 d s p 市场份额占全世界份额的5 0 。 1 2d s p 可测性设计研究的意义 数字信号处理芯片d s p 是一个复杂的数字系统,它的集成度往往可以达到几 十万门,甚至达到几百万门。在对d s p 芯片进行缺陷测试时,如果纯粹的采用数 据域测试技术,对给定的数字信号运用适当的算法求出其最小完备测试集,其测 试过程常常是十分的繁杂的。即使是借助于计算机进行测试,也需要使用大量的 内存空间和消耗大量的时间。另一方面,虽然d s p 芯片的规模在不断的扩大和提 高,但是应用于测试的引脚数目却没有得到增加,相对来说还在减少,从而进一 步增加了测试难度,测试问题日趋严峻,有时甚至使芯片测试比芯片本身的设计 和生产需要付出更高的代价。因此,为了减小测试的难度,人们普遍接受的途径 是在设计过程中就注意电路的可测性,即所谓的可测性设计。使之可以方便快速 的设计、制造出高质量的数字信号处理芯片。这一点已经得到国外d s p 生产产家 的认同,在现有的d s p 芯片中几乎无一例外的引入了可测性设计,其中以t i 公司 的产品为例:c 3 0 0 0 系列产品采用的测试方法是一般意义下的全扫描测试方法,并 且和在线仿真公用其中的测试引脚。到了c 5 0 0 0 和c 6 0 0 0 系列产品中,t i 公司采 用的都是j t a g 标准的边缘扫描的测试结构,形成了一种更加具有通用性的测试方 法。 在进行数字信号处理芯片的设计过程中引入可测性设计具有深远的意义,在芯 片中引入可测性设计不仅可以缩短设计生产的周期,而且可以大大的降低设计生 产的成本。如表1 1 所示,给出了在芯片设计的不同阶段测试的成本。 绪论 表1 1 芯片设计中不同阶段的测试成本 3 一 测试的阶段 测试成本 测试难度 芯片级测试( w a f e r ) $ o 。0 1 s 0 1 容易 封装芯片的层次 $ o 1 - - , $ 1较容易 p c b 板的层次 $ 1 - $ 1 0一般 系统级的层次 $ 1 0 - - $ 1 0 0 困难 现场测试的层次 $ 1 0 0 - $ 1 0 0 0很难 从上面的表可以看出,测试的成本随着测试层次的提高而成倍的增加,并且 测试的难度也呈现上升的趋势。所以为了减小成本,我们最好的办法就是在芯片 内部引入测试电路。这已经得到广泛的认同,但是在国内这方面的工作还相对比 较落后,我们急需在芯片的设计过程中总结出一种方便实用的测试方法。从而提 高对芯片内部节点的可控制性和可观测性,降低设计成本和周期。 1 3 本文研究工作 本文重点是v l s i 可测性分析与设计方面,并以d s p 为本文的研究对象。本 文研究工作和论文的具体安排为: 第1 章介绍了自主设计d s p 芯片的重要意义和d s p 芯片引入可测性设计意 义,最后说明了论文的研究背景和论文的主要工作内容。 第2 章介绍了现在国内外主流的可测性设计的方法。本文中主要从故障效应 的角度把可测性设计分为电流测试法和电压测试法两大类。 第3 章讨论了芯片所采用的测试方法,并且介绍了为实现测试而搭建的测试 平台。本文中讨论的测试平台采用通用计算机作为主控制机,通过测试总线控制 器( t b c ) 来实现对数字信号处理芯片的测试,这种方法简单实用并且具有很强 的通用性,可以应用于其他芯片的测试中。 第4 章阐述了芯片内部为了满足测试要求所进行的硬件电路设计。首先,讨 论了芯片与测试总线控制芯片t b c 之间的通信接口定义;然后,对t b c 输入的控 制信号的解码电路的设计讨论;最后,主要是讨论芯片内部扫描通路的设计以及 所引入的各种扫描寄存器的设计。 第5 章详细介绍了芯片内部a l u 模块的测试实例。对于a l u 模块的测试, 则采用第3 章中引入的测试平台来编程实现。 结束语中对全文进行了总结并提出了今后研究方向。 第二章现有可测性设计的种类和方法 第二章现有可测性设计的种类和方法 在本章中回顾了可测性设计的发展历程,总结了现有的可测性设计方法,并 且根据故障效应把各种可测性设计的方法进行了分类。简单讨论了各种测试方法 的优缺点和适用范围。 2 1 可测性设计的发展历程 对于测试性的研究始于6 0 年代,通过几十年的研究和实践,进入了8 0 年代 后逐渐趋于完善和成熟。在6 0 年代后期,由于芯片集成度的限制,在电路设计方 面中引入可测性设计往往带来很大的硬件开销,这就使得有关的可测性设计方案 具有很大的局限性。最早实现的可测性设计是针对印制版的测试,如扩展访问功能 的印制版测试e a c t ( e x t e n d e d a c c e s sc a r dt e s t i n g ) ,芯片的现场测试c i p t ( c h i p i np l a c et e s t ) ,多路选择逻辑和可测性控制功能等,他们都是针对在测试固定装置 上进行的硬制版测试技术,提出了关于硬制版上节点的可观察性、可控制性和可 隔离性设计。此后,在关于ms y s t e m 3 6 0 系统级测试的文献中,首次提出了 针对电路内部逻辑的测试的扫描设计方案,并在n e c 公司的n e a cs e r i e s - 2 2 0 0 、 m o d e - 7 0 0 计算机的测试中运用了基于扫描测试的扫描移位测试法。另一种在7 0 年代得到了工业界广泛认可和推广的设计方案是m m 公司提出的l s s t ( 1 e v e l s e n s i t i v es c a nt e s t i n g ) ,他将l s a 和电平灵敏设计有机的结合起来。进入 8 0 年代,j t a g 提出了标准的边界扫描体系结构,最后的目标是应用到芯片、印制 版与完整系统上的一套完善的标准化技术,这在可测性设计技术的发展史上是一 个里程碑。国内可测性设计的发展相对比较落后,对于我国的测试工作承受着来 自世界贸易的各种压力。首先是对质量的迫切要求。可以断言下一个十年的优胜 者将是以可靠性致胜的,其最终的目标毫无疑问是零故障。实际上,至少必须高 到能保证应用中不会出现故障。 2 2 可测性设计的分类 对电路的可测性的分析是进行v l s i 可测性设计的基础,电路和系统中的硬件 故障主要由两方面的因素引起:生产过程中产生的缺陷,以及工作条件下的操作 应力和老化机理。故障与物理失效相关,而故障效应则是与故障在电路节点上产 生的逻辑效应有关。由于故障是通过相应的故障效应来反映的,因此电路的可测 6 3 2 位高性能d s p 可测性研究 性是与故障效应以及测试诊断原理密切相关的。故障效应一般可采用节点电位和 电流值来表示,对于这两种不同的故障效应表示方法,对应的测试方法以及进一 步的电路可测性的定义都是不同的。所以从故障效应的分类可以引出两大类可测 性设计的方法g 2 2 1 电位测试法 主要是针对用节点的电位表示的故障效应而引入的一种测试方法。典型的故 障类型的测试包括:工业标准的固定为l ( s t r u c k - a t 1 ) 、固定为0 ( s t u c k - a t 0 ) 和线 与( w i r e , - a n d ) 、线或( w i r e - o r ) 等。电位测试方法的基本原理是通过测试访问 输入端口向电路施加的测试代码,利用测试代码来设置电路节点的状态并激发有 关的故障类型( s t u c k a t - 1 、s t u c k - a t 0 、w i r e - a n d 和w i r e 0 1 等) 使得存在故障的节 点和不存在故障时的节点状态相反;同时利用测试代码来设置电路节点关于故障 的敏感路径,使得故障节点电位的影响可以传输到测试访问输出口。在电位测试 方法中,电路的可测性是电路节点的可访问性等价的。电路节点的可访问性包括 三个基本的要素:可控制性、可观测性和可隔离性。可控制性是指通过测试访问 的端口设置电路内部节点状态的能力;可观测性是指测试访问端口获取测试响应 的能力;可隔离性是指在测试方式下,以逻辑的方式切断电路之间或电路内部的 正常连接,以保证可控制性和可观测性能够可靠的实现的能力。一般文献中常常 提到的是可访问性中的可控制性和可观测性,并提出了关于电路节点的可控制性 和可观测性的计算方法,但忽略了其中的可隔离性。实际上,只有利用可隔离性, 芯片和电路模块的测试才可以在不影响系统其他部分的情况下独立的进行。这对 于故障定位,防止故障效应在相邻的芯片或电路模块中传播,以及在系统中实现 层次化的测试策略都具有重要的意义。可隔离性具有与可控性和可观测性一样的 重要性,他们共同构成可测性的三个基本要素。 2 2 2 电流测试法 对于用电流表示的故障效应,对应的测试方法称为电流测试法,典型的电流 测试方法是关于c m o s 电路静态电源电流的i d d q 的测试。i d d q 测试是对c m o s 失效芯片进行筛选的一种有效的初始测试手段,他可以直接发现电路中的桥连故 障、栅氧化短路故障以及c m o s 工艺流程中限制成品率的一些主要故障类型。其 中一些故障类型是传统的电压测试技术所不能发现的。i d d q 测试的基本原理是: 在加电复位后,采用测试代码以一定的频率来激励被测试的芯片;当激励操作完 成,芯片的内部节点被激发到一定的电位状态后,测试芯片电源节点上的i d d q 第二章现有可测性设计的种类和方法 7 一 电流。就测试激励而言,其原理与电压测试方法是相同的,可测试性就是电路节 点的可访问性,主要是节点电位的可控制性;就测试响应而言,对于与i d d q 测 试兼容的c m o s 电路,在芯片电源节点上测得的大的i d d q 电流与失效芯片的故 障具有很好的一一对应的关系,芯片将具有高度的可观测性。这样c m o s 电路关 于i d d q 测试的可测试性将包括电路节点的可控制性和电路关于i d d q 测试的兼 容性两方面的内容。 从上面的分析可知,根据不同的故障效应和测试方法所定义的可测性实质上 是对同一电路结构的不同属性的度量,他们之间并不存在矛盾。引入v l s i 可测性 设计的目的就是为了v l s i 电路和系统提供广泛的可测性特点,以便于支持所有的 测试情况:芯片测试、印制版测试、印制版上的芯片测试以及系统诊断等。丰富 的v l s i 芯片资源为可测试性的设计提供了广阔的空间。随着对v i , s i 可测性设计 研究的深入,以及可测性设计在电路和系统中的成功应用,尤其是i e e e l1 4 9 1 标 准的推广应用,已逐步建立起一套系统的可测性设计的设计准则和方法论。v l s i 可测性设计涉及以下7 个方面的内容:( 1 ) 实现芯片级逻辑电路可测性设计。芯片 是组成电路系统的基本单元,芯片级可测性设计是更高层可测性设计的基础和起 点;( 2 ) 具有高的测试效率。应支持静态的单拍测试和多拍的带速度测试 ( a t - s p e e d - t e s t ) ,利用被测试电路中的测试逻辑实现测试代码的生成和测试响应的 处理;( 3 ) 覆盖广的故障模型并支持多种测试方法的实现。在支持电压测试方法, 如结构测试和功能测试的基础上,同时支持电路测试方法,如m o q 的测试;( 4 ) 实 现统一的测试接口和测试信号协议。统一的测试接口和测试信号协议,有利于实 现测试总线的连接和测试系统的组织,以及支持系统环境中层次化的测试实现;( 5 ) 实现设计的标准化。可测试性设计的标准化是保证测试技术通用性的关键;( 6 ) 实 现测试逻辑的规范化描述和测试逻辑的自动综合。实现测试逻辑的规范化描述, 将测试和综合结合起来,以自动化的方式来实现可测性设计是缩短设计开发周期 的必然要求;( 7 ) 研究v l s i 可测性设计对测试算法和测试设备的影响。v l s i 可测 性设计的引入极大的简化了测试算法的复杂度和测试设备的复杂度,对测试算法 和测试设备的设计产生了深远的影响。 2 3 现有的可测性设计方法 目前可测性设计的方法很多,最有代表性的测试方法包括:美国i b m 公司的 电平灵敏扫描设计法( l s s d ) 、日本n e c 公司的扫描通路法、扫描置位法、随机 存取扫描法、边界扫描测试法以及内测试法( b i s t ) 。这些方法都属于电位测试法 的范畴。在电流测试法中,主要是2 2 节中讨论的i d d q 测试法。 上面的各种测试方法都有自己的优点和缺点,电路设计工程师在实际的可测性 3 2 位高性能d s p 可测性研究 设计中,一方面在这些方法的基础上又进行了更加广泛的发展和延伸,得到了性 能更加优越的测试方法。如在扫描通路法中,通过对扫描路径的优化设计,发展 了部分扫描的测试方法。另一方面,更多的设计者并不偏向于仅仅应用某种特定 的测试方法,而是在芯片设计中同时引入多种测试方法,通过几种方法之间互补 来解决更加复杂的测试问题。这是当前主流的测试方法。如在电路的设计过程中, 采用i e e e l l 4 9 1 边界扫描测试技术和i d d q 测试技术的结合的方法。或在芯片内 部引入内测试( b i s t ) 的同时,还在芯片的引脚处引入扫描单元,实现边界扫描 测试。所以究竟采用何种测试方法,应该根据具体的设计要求,因地制宜。 可测试性作为衡量硬件设计的一个属性,是反映给芯片产生测试程序难易程度 的一个量化参数,主要包括可控制性和可观测性2 个方面。早期的测试是和设计分 开的,测试工作只在芯片出厂后考虑,但现在的测试和设计是同时进行的,被称为可 测试性设计。有很多技术可以用来提高芯片的可测试性,如存储器的结构比较规则, 一般采用m a r c h 算法进行测试;边界扫描结构又为芯片之间的互联测试、板级测试 和系统级测试提供了便利;内建自测试也在不断地应用于存储器和逻辑器件的可测 试性设计中;宏测试技术可以完成基于扫描的黑盒测试:以上这些可测试性设计技 术都已经在芯片设计中得到广泛应用。扫描测试是提高时序电路可测试性的有效 方法,在工程实现中一般可分为两种:全扫描和部分扫描。 第四章可测性设计的逻辑实现 第三章芯片采用的可测性设计方法 3 1 采用的测试方法 9 一 高性能数字信号处理芯片,为了减小生产成本和提高设计速度,在设计过程 中引入可测性设计是非常必要的,但是要对这种复杂的超大规模集成电路进行可 测性设计必须考虑实现可测性设计以后引入的额外面积的大小。在可测性设计中 通过借助测试总线控制芯片t b c ( t e s tb u sc o n t r o l l e r s ) ,可以很方便的搭建一个测 试平台,而芯片内部只需进行比较小的改动,使芯片的可测性设计中增加的额外 面积减到最小程度。所以可测性设计分成两个部分来完成:搭建一个测试平台和 芯片内部为了配合测试平台的工作进行的相应硬件设计。这一章我们将讨论测试 平台的搭建,以及测试总线控制器t b c 的内容。对于芯片内部的设计我们将在第 四章中进行详细的讨论。 3 1 1 测试平台的定义 高性能数字信号处理芯片采用改进的哈佛结构的总线设计,内部逻辑设计中 应用了多个可嵌入式的核,如a l u 、乘法器、r a m 和a r a u 等,这种设计方法 大大缩减了设计的周期,却给可测性设计带来了很大的问题,在可测试设计中通 过对几种不同方法的比较,最后选用了全扫描的测试结构。全扫描测试方法虽然 在测试图形的长度上比部分扫描法要长,但是可以获得更高的缺陷覆盖率,也不 需像部分扫描的测试方法那样进行扫描寄存器的选择逻辑电路的设计。对于测试 引脚的设计上,并没有专门设计i e e e l l 4 9 1 规定的引脚定义,而是采用和全速在 线仿真公用相应的引脚定义,即咖o ,e m u l ,e 狮t j 2 和e m u 3 端口,从而减少了总 引脚数,并增加了引脚的利用率。我们以这种结构设计为基础建立了一个较完善 的测试平台,用串行的测试扫描图形来对内部节点的控制和观测等操作,完成芯 片的测试工作。测试的内容主要包括内部寄存器和内存、指令、中央处理单元、 硬件乘法器、外部总线操作、程序流程和外设等的仿真和验证。 测试过程中搭建的测试平台由三个部分组成,各部分的描述如下所示: ( 1 ) 控制测试的计算机。对测试激励的产生、加载和对测试激励响应信号的后 续处理,是通过这个计算机来控制实现的; ( 2 ) 测试总线控制芯片t b c 。被测芯片和计算机之间的连接通过一个测试总线 控制芯片( t b c ) s n 7 4 a c t 8 9 9 0 来实现,t b c 可以把计算机产生的并行测试指令 1 0 3 2 位高性能d s p 可测性研究 和测试向量串行的扫入芯片,同时还可以把芯片串行扫出的测试响应通过总线并 行的输入到计算机中。 ( 3 ) 在芯片内部加入扫描测试控制电路,把通用的寄存器改进为适合扫描测试 的寄存器结构。本章内容从三个方面来阐述这个测试平台的结构:计算机、t b c 和芯片之间的连接和通信;t b c 芯片结构、工作方式和编程实现方法的介绍;芯 片内部的可测性设计结构。下面各节将分别就这几个方面进行讨论。 3 1 2 测试平台的结构设计 如图3 1 所示的结构框图就是对芯片进行测试的控制平台。控制平台主要有一 个控制计算机( 一般通用p c ) 和一个测试总线控制器一( t b c ) 组成。 图3 1 测试平台的结构框图 如图所示的测试平台具体的测试工作过程如下: ( 1 ) 首先在测试之前,选择一定的测试图形产生算法,然后根据各种不同的 约束条件( 用来避免总线冲突等) ,产生相应测试图形( 包含测试指令和测试数据) 。 生成的测试图形存储在宿主机的存储器中。 ( 2 ) 当进行测试时,通过控制计算机中的编译器产生相应的测试主命令,通 过宿主机和t b c 之间的数据总线输入到t b c 的指令寄存器中。t b c 内部有自己 的指令译码单元电路。通过t b c 内部的指令解码电路对指令寄存器中的主命令进 行译码,产生相应的一串序列信号,使芯片内部的工作状态根据标准的i e e e l l 4 9 1 的t a p 状态迁移图从某一个状态变到另一个状态,从而控制扫描通路的工作方式, 如移位测试指令( s h i r i r ) 、移位测试数据( s h i r d r ) 等。测试存储接口控制器( t a p ) 的状态迁移图,如图3 2 所示。 第四章可测性设计的逻辑实现 ( 3 ) 如果需要可以通过控制计算机对t b c 中一个3 2 位的计数器寄存器进行 赋值,从而告诉t b c 在s h i l i i r 或s h i l i d r 状态下需要移位的指令或数据的长度。 ( 4 ) 当第二步产生的t m s 序列是s h i l i i r 或s h i f t d r 状态,存储在计算机存 储器中的测试图形( 包括测试指令和测试数据) ,通过宿主机和t b c 之间的数据 总线并行的加载到测试总线控制芯片( t b c ) 中,然后t b c 对计算机并行输入的 测试数据进行缓冲控制,最后通过t b c 的测试数据输出端口( t d o ) 串行的扫入 芯片中,实现测试激励的加载过程。同样的,相应的被测试芯片对测试激励的响 应结果通过t b c 的测试数据输入端口( t d i ) 放入t b c 芯片中的输出缓冲寄存器 中,并最终并行输出到控制计算机中。 图3 2 t a p 状态迁移图 3 2 测试总线控制器t b c 的功能与结构 t b c 在整个测试过程中完成三个功能:( 1 ) 完成对测试主命令的译码过程, 从而产生各种测试模式的选择信号t m s 序列,实现状态的迁移。( 2 ) 将并行的输 入测试指令或数据按照一定的循序串行的输出到被测试芯片内。( 3 ) 完成测试结 果的接收和输出。所以测试总线控制器t b c 有自己的命令格式,内部也有自己的 命令解码单元。在这一节中我们将讨论t b c 的功能和结构。 3 2 位高性能d s p 可测性研究 3 2 1 测试总线控制器t b c 的功能与接口描述 测试总线控制器t b c 的接口设计与i e e e l l 4 9 1 1 9 9 0 ( j t a g ) 测试存储接口 和边缘扫描的结构设计完全兼容( 测试中用的是s n 7 4 a c t 8 9 9 0 芯片) 。串行测试 总线所需要的测试信号线,包括测试时钟( t c k ) 、测试模式选择信号( 踟s ) 、 测试数据输入信号( t d i ) 和测试数据输出信号( t d o ) ,可以直接经过测试总线 控制器t b c 连接到被测试芯片相应端口,而不需其他的辅助逻辑。t b c 工作时为 被测试芯片产生t m s 和t d i 信号,接受被测试芯片输出的t d o 信号。相应的引 脚连接关系如图3 1 。对于测试时钟,t b c 首先通过测试时钟输入端口t c k i 接收 外部时钟,然后经过缓冲通过t c k o 端口输出,从而提供测试时钟,测试总线控 制器t b c 的大部分操作都与测试时钟输入t c k i 同步,也就是芯片的输出时钟线 h l 。为了更好的利用t b c 来实现测试或仿真,在t b c 测试芯片中有6 个测试模 式选择信号输出端t m s 0 5 ,它们可以分别产生不同的t m s 序列,从而实现并 行控制6 个扫描链路( 这些扫描通路公用t d i 、t d o 和t c k 信号端口) 。所有测 试信号输出端口,还可以通过t o f f 引脚来控制是否有效,见序列发生器模块的结 构框图。输入引脚t r s t 可以实现t b c 的复位操作。另外t b c 还有四个事件控制 端口,用于和被测试芯片之间进行异步通信,每一个事件都有自己的事件产生和 事件监测逻辑,监测到的事件可以用两个1 6 位的计数器来记数控制。 测试控制计算机通过5 位的地址总线、1 6 位的数据总线和相应的读写控制线来 控铝i j t b c 的操作,五位的地址总线可以使控制计算机寻址t b c 片内的2 4 个寄存器, 计算机通过对t b c 内部2 4 个寄存器的读写,实现控制操作。t b c i 内部寄存器的描述 见表3 1 。2 4 个寄存器中含有1 0 个控制寄存器和4 个状态寄存器,测试时首先要进 行的工作就是通过1 0 个控制寄存器对测试总线控制器t b c 进行配置。t b c 内部状态 寄存器的状态通过引脚r d y 和1 n t 来影响控制计算机的读写操作。除了控制寄存器 和状态寄存器外,还有两个命令寄存器、计数寄存器、1 个输出缓冲和1 个输入缓 冲寄存器,两个命令寄存器分别存放主命令和从命令,主命令告诉t b c 需要执行 的操作,使t b c 产生一个t m s 输出序列,使被测试芯片从一个t a p 状态迁移到另一 个状态。从命令主要是控铝j t b c 的操作进程,比如执行、暂停或复位等操作。本 小节的下面部分将更加详细的讨论t b c 的结构和工作情况。宿主机和t b c 之间的通 信如图3 3 所示。 第四章可测性设计的逻辑实现 圈3 3t b c 与控制计算机的接口 1 3 t b c 与宿主机之间的接口以及t b c 与被测芯片之间的接口,它们都是异步时 序设计,所以宿主机的工作时钟并不要求和测试时钟t c k 同步。t b c 和宿主机之 间的接1 2 i 信号包括5 位地址总线( a 4 a 0 ) 、1 6 位的数据总线( d 1 5 - d 0 ) 、相应的 读写信号线( r d 、w r ) 以及状态信号线( r d y ) 。它们之间的数据传输按照宿主 机的时钟信号进行操作。地址译码可以通过p a l ( 可编程阵列逻辑) 来实现。5 位 地址线实现对t b c 芯片内部2 4 个寄存器进行寻址:其中1 0 个控制寄存器、2 个 命令寄存器、6 个控制内部计数器模块的寄存器、4 个状态寄存器、一个传输数据 寄存器和一个接受数据寄存器。这2 4 个寄存器中1 6 个是可读可写的,7 个只能进 行读操作,还有一个只有进行写操作。数据之间的通信是通过1 6 位的数据总线进 行,r d y 等控制信号告诉测试控制计算机下一步的可以进行的操作。表3 1 给出 了t b c 内部各个寄存器的详细描述 表3 1t b c 内部2 4 个寄存器的描述 地寄存器名寄存器功能描述寻址方式 址 0 0c o n t r o l 0 中断控制位 可读可写 0 1 c o n t r o l l 生产制造测试功能可读可写 0 2c o n t r o l 2 t m s 0 1 7 m s 5 的连接选择 可读可写 0 3c o n t r o l 3 t m s e v e n t 功能、t d o 端口的开关、可读可写 t m s t c k 的数据格式 0 4 ,c o n t r o i a延时控制和t d i 、t d o 端口的数据格式 口j1 实口j 写 控制 0 5c o n t r o l 5 e v e n t 引脚数据输出和方向可读可写 0 6c o n t r o l 6 e v e n t 0 1 输入的事件选择可读可写 0 7 c o n t r o l 7 e v e n t 2 3 输入的事件选择 可读可写 0 8c o n t r o l 8 c o u n t e r l 的控制寄存器 可读可写 0 9c o n t r o l 9 c o u n t e r 2 的控制寄存器可读可写 0 am i n o r 替换中断标志位、控制测试运行、读出可读可写 1 4 3 2 位高性能d s p 可测性研究 c o 嗄 嗄a 卜】d 状态值、向c o u n t e r 载入计数值和软 件中断 0 1 3n 扎u o r 状态命令、执行命令和扫描命令可读可写 c o n i a n ) 0 c c o u n t e r l c o u n t e r l 低1 6 位值可读可写 u p d a t a 0 0 dc o u n t e r1c o u n t e r l 高1 6 位值 可读可写 u p d a i a 1 0 ec o u n t e r 2 c o u n t e r 2 低1 6 位值可读可写 u p d a t a 0 o f c o u n t e i 匕 c o u n t e r 2 高1 6 位值可读可写 u p d a t a l 1 0s t a t u s o 内部状态 只读 1 1s t a t u s l 外部信号和外部请求只读 1 2s t a t u s 2 测试芯片和缓冲器的状态只读 1 3s t a t u s 3 未用到只读 1 4 c a p t u r e 0 c o u n t e r l 低1 6 位值只读 1 5c a p t u i 己e 1 c o u n t e r l 高1 6 位值只读 1 6 r e a db u f f e r t d i 端口的输入缓冲只读 1 7、脉i t eb u f f e r t d o 端口的输出缓冲只写 这2 4 个寄存器分别控制t b c 的不同功能,其中1 0 个控制寄存器用来配置测 试总线控制器( t b c ) 的工作状态,这是进行测试之前首先需要完成的工作。3 2 位的测试命令分为m i n o rc o m m a n d 和m a j o rc o m m a n d 两部分,其中 m a j o rc o m m a n d 用来描述需要执行的命令和执行结束后t b c 所处的状态; m i n o rc o m m a n d 用来控制测试过程的开始、中断或结束。而4 个c o u n t e r u p d a t a 寄存器和两个c a p t u r e 寄存器来控制t b c 的计数器模块和事件控制模 块,实现测试的外部干预。 3 2 2t b c 模块结构组成 t b c 模块作为计算机和被测试芯片之间的一个接口模块,可以实现从d 1 5 一d 0 并行输入的数据,通过内部序列发生模块按照一定的顺序从t d o 串行输出到待测 芯片的激励输入端e le m u 2 ,还实现测试指令的译码,从而产生各种测试方式选 择信号,接口定义见图3 1 。其结构框图如图3 4 所示。 从结构图中可以看出,t b c 实现了测试控制计算机和被测试芯片之间的连接 通信。整个逻辑结构分成两个部分,分别是t b c 模块与被测试芯片之间的联系控 制逻辑电路和t b c 与测试控制计算机之间的联系控制逻辑电路。t b c 芯片最终为 被测试芯片提供下面的信号( 如表3 2 所示) 。 第四章可测性设计的逻辑实现 1 1 瞒5 - - 2 i 寡i 盯3 一o 图3 4 测试控制芯片的结构框图 表3 2t b c 产生的测试信号 t d i 测试数据输入端 t d o 测试数据输出端 t c l k i 测试时钟输入端 t c l k o 测试时钟输出端 t m s 测试模式输出端 t r s t 测试复位信号 整个t b c 内部有六个模块组成:分别是事件控制模块、计数器模块、命令控 制模块、序列控制模块、串口数据控制模块和接口控制主模块。下面我们将分别 介绍它们各自的功能结构。 3 2 3 序列控制模块的结构和组成 在t b c 内,序列控制模块产生和被测芯片直接通信的测试信号。并且序列控 制模块是根据i e e es t dl1 4 9 1 的标准来产生测试信号,包括测试模式选择信号 t m s 、测试输出信号t d o 和测试输入信号t d i 。序列控制模块产生的t m s 序列, 使被测试芯片根据t a p 状态迁移图来控制测试系统的状态( 状态迁移图3 2 ) , 在这个过程中需要知道测试系统当前特定的状态;一般是通过t r s t 信号使测试 系统进入t e s t - l o g j 【c - r c s o t 状态。 当进入s h i f t - d r 和s h i f t i r 状态时,由宿主机提供的测试数据通过串口模 块的输出端口s d o 进入序列控制模块的序列产生器,然后通过t d o 进入被测芯 片。另外,通过序列控制模块的输入端口t d i 获取的激励响应信号,经过多路选 择器到达序列接受器,最后通过串口模块的输入端e 1s d i 进入串口模块,通过缓 存并行的送到宿主机,进行数据的后续处理。 璐 一一 髓瓿磷研 一一一碱燃瓣 l 1 6 3 2 位高性能d s p 可测性研究 螺r 撬嫂琏舜的撅蛔伪蟹 m r 校j 憾籽俏哆的惩盼 譬敷捌输出l q 雅暂i 储垮 翻r 毂批输九鲍蟓鲰龆哆 3 2 4 串口模块结构 图3 5 序列控制模块结构图 在t b c 芯片内部,直接和测试控制计算机进行通信的模块是串口模块。为了 充分利用t b c 芯片来实现测试功能,对串口模块操作过程的理解是至关重要的。 因为在t a p 状态图中的几个非稳态:s h i f t - d r 和s h i f t - i r 状态下,所有由测试 控制计算机发出的测试数据和测试指令都是通过串口模块进行处理,然后串行输 出到序列控制器的序列发生器中,而且接受到的激励响应信号也是通过串e l 模块 加载到宿主机中。电路结构框图如图3 6 所示。 和序列控制模块相似,串口模块也可以分成两个部分:测试数据输出部分和 测试数据输入部分。 测试数据输出部分,含有一个f i f o 以及两个缓冲寄存器。由序列控制模块的 序列接受器接受到的测试结果序列首先通过f i f o 进行移位,输出到缓冲寄存器中, 等缓冲寄存器的内部已经放满了一个1 6 位或3 2 的结果,控制计算机对缓冲寄存 器进行一次读操作,对于何时进行结果的读操作是通过t b c 内部状态寄存器来控 制。 测试数据输出部分和输入部分基本相同,来自测试控制计算机的测试数据或 测试指令输入到数据缓冲寄存器。数据缓冲器由两个1 6 位的寄存器组成,宿主机 通过数据总线把一个1 6 位的测试数据或测试指令写入第一个寄存器中,缓冲寄存 器可以

温馨提示

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

评论

0/150

提交评论