(微电子学与固体电子学专业论文)jtag的设计与研究.pdf_第1页
(微电子学与固体电子学专业论文)jtag的设计与研究.pdf_第2页
(微电子学与固体电子学专业论文)jtag的设计与研究.pdf_第3页
(微电子学与固体电子学专业论文)jtag的设计与研究.pdf_第4页
(微电子学与固体电子学专业论文)jtag的设计与研究.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

中文摘要 摘要:边界扫描技术是符合i e e e 规范的一种测试方法,j t a g 设计的实现降 低了测试的复杂度、提高了质量及缩短面市时问。适合进行超大规模集成电路的 测试。同时,j t a g 以采用更小的体积而提供更强的功能的优势,主要应用到集成 电路设计和测试验证的开发研究方面,但实现边界扫描技术需要超出铂的附加芯 片面积,同时增加了连线数目,且工作速度有所下降,这些问题有待解决。 本文通过对j t a g 标准和技术内容的研究,对j t a g 在s o c 器件中的应用结 构进行了分析,提出了相应的简化措施,以此为据,设计了可用于芯片测试的嵌 入式j t a g 模块( i p 软核) 。所设计的j t a g 模块具有结构简单、技术齐全、支持 广泛、测试设计灵活、高精度故障定位等特征,可广泛用于s o c 器件的设计。 本文通过定的理论研究,给出了一种实现j t a g 结构的具体方法,首次分析 了如何选择扫描链的数量与长度的方法与原则,并对测试功耗进行了分析。本文 的特点是紧扣i e e e l l 4 9 1 标准,并对j t a g 进行r t l 级建模和仿真以及首次对 j t a g 指令进行了分析,得出j t a g 软核的基础测试满足设计要求,并将边界扫描 测试设计应用到实际电路当中,实现对边界扫描测试理论的验证。经过仿真验证, 证明其设计可靠、方案可行,具有很好的实用价值。 关键词:j t a g :s o c 器件:边界扫描测试 分类号: a b s t r a c t a b s r r a c r b o u n d a r y - s c a nt e c h n i q u ei sat e s t i n gm e t h o do f1 e e e r e a l i z a t i o no fj t a g r e d u c e st h ec o m p l e x i t yo fl c s t i l i 吕a n di n c r e a s e st i m et om a r k e t , t h u si ti ss u i t a b l ef o r t e s t i n go f v l s i m e a n w h i l e ,d u et os t r o n g e rf u n c t i o nw i t hs m a l l e rv o l u m e ,m a i n l yu s e d i nr e s e a r c ho nl cd e s i g na n dv e r i f i c a t i o n b u tt or e a l i s eb o u n s a r y - s e a nw i l lr e q u i r e s 7 e x t r aa r e a , i n c r e a s et h en u m b e ro fl i n e s ,a n dd e c r e a s et h eo p e r a t i n gs p e e d a l lt h e s e p r o b l e m sa r ct ob es o l v e d a c c o r d i n gt or e s e a r c ho nj t a gs t a n d a r da n dt e c h n o l o g yc o n c e p t i o n t h ej 1 a g a p p l i c a t i o na r c h i t e c t u r ei ns o cd e v i c ei sa n a l y z e d , as i l i i p i y f i c dm e 龉u 比i sp r o p o s e d b a s e do nt h i s , e m b c d e dj t a gi pc a 3 r ew h i c hi sa p p l i c a b l ei nc h i pt e s t i n gi sd e s i g n e d t h ej 1 :a gi pc o r eh a st h ef o l l o w i n gf e a t u r e s :s i m p l es t r u c t o r e , m a t u r ei nt e c h n i q u e , w i d e l ys u p p o r t i v e , v a r i a b l et e s t i n gm e t h o dd e s i g n ,h i g hp r e c i s i o ne r r o rl o c a t i o n , a n di t i sw i d e l yu s e di ns o cd e s i g n t h r o u g ha c a d e m i cr e s e a r c h ,d e t a i l e dm e t h o do f j t a gr e a l i z a t i o ni sp r e s e n t e d , a n d f o rt h ef i r s tt i m e h o wt os e l e c tt h en u m b e ra n dl e n g t ho f f 沁a nc h a i na n dt e s t i n g d i s s i p a t i o na r ca n a l y z e d n i ep a p e ri sc l o s e l ya t t a c h e dt oi e e e l l 4 9 1s t a n d a r d ,a n dt h e n o v e li d e al i e si nt h ef a c tt h a ta f t e ra n a l 3 ,s i s0 1 1j t a gi n s t m c t i o na n dr t li e v e l m o d e l i n ga n ds i m u l a t i o no fj t a g , t h ef u n d a m e n t a lp a r ti nj t a gt e s t i n gf o l l o w st h e s p e c i f i c a t i o n ,b o u n d a r y s c a nt e s t i n gi sa p p l i e dt oa c t u a lc i r c u i t s ,a n df i n a l l yt h et h e o r y o fb o u n d a r y s c a ni sv e r i f i e d t h r o u g hs i m u l a t i o na n dv e r i f i c a t i o n , t h er e l i a b i l i t ya n d f e a s i b i l i t ya r es a t i s f a c t o r y , a n di ti so f 9 0 0 dv a l u e k e y w o r d s :j t a g ;s o cd e v i c e :b o u n d a r y - s e a nt e s t i n g = i 。a s s n o 致谢 本论文的工作是在我的导师李哲英教授的悉心指导下完成的,李哲英教授严 谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢三年来 李老师对我的关心和指导。 李哲英教授悉心指导我们完成了实验室的科研工作,在学习上和生活上都给 予了我很大的关心和帮助,在此向李哲英老师表示衷心的谢意。 骆丽、刘元盛、许立群老师对于我的科研工作和论文都提出了许多的宝贵意 见,在此表示衷心的感谢。 在实验室工作及撰写论文期间,赵俊良、李月梅、李博等同学对我论文中的 仿真研究工作给予了热情帮助,在此向他们表达我的感激之情。 另外也感谢家人,他们的理解和支持使我能够在学校专心完成我的学业。 1 1j t a g 技术的背景 1 引言 随着科技的发展,电子产品的开发和生产时,由于日益复杂的电路及器件的 布局、器件复杂的封装、密集的管脚等问题给电路的线路检测、线路板故障的检 查以及排除和f l a s h 、c p l d 、i s p ( 在线编程) 带来很大的麻烦,用传统的i c t ( 线 路检测设备1 已经很难,甚至不可能解决这些问题。在这种背景下,早在2 0 世纪 8 0 年代,联合测试行动组( j o i n tt e s ta c t i o ng r o u p ) 简称j t a g 起草了边界扫描测试 ( b o u n d a r y s c a nt c s t i i i g ) 规范【“,后来1 9 9 0 年被批准为i e e e 标准1 1 4 9 1 规定,简称 j t a g 标准。边界扫描测试一方面方便了芯片的故障定位,提高测试检验效率。另 一方面通过边界扫描通道可以使芯片处于某个特定功能模式,方便系统的总体设 计 目前研究工作和测试实践从不同的侧面对可测性设计技术进行了有益的探 索。1 9 8 5 年,由l b m ,a t & t , t e x a si n s t r u m e n t s , p h i l i p se l e c t r o n i c sws i e m e n s , a i c a t e l 和e r i c s s o n 等公司成立的j e t a g ( j o i n te u r o p e a nt e s ta c t i o ng r o u p ) 提出边界 扫描技术,通过存在于器件输入输出管脚与内核电路之间的b s c ( b o u n d a r ys c a n c e l l ) 对器件及其外围电路进行测试,从而提高器件的可控性和可观察性。1 9 8 6 年 由于其它地区一些公司的加入,j e t a g 改名为j t a g ,1 9 8 8 年j t a g 提出了标准, 边界扫描体系结构,名称叫b o u n d a r y s c a na r c h i t e c t u r es t a n d a r dp r o p o s a lv e r s i o n 2 0 ,最后目标是应用到芯片、印制板和完整系统上的一套完善的标准化技术。1 9 9 0 年,i e e e 正式承认了这个j t a g 标魁“,经过补充和修订以后,命名为i e e e l l 4 9 1 9 0 。同年又提出了b s d l ( b o u n d a r ys c a nd e s c r i p t i o nl a n g u a g e ,边界扫描语言) , 后来成为i e e e l l 4 9 1 9 3 的一部分。i e e e l l 4 9 1 标准大大的推动了边界扫描技术的 发展和广泛应用。 2 0 世纪9 0 年代后期,随着微电子技术和e d a 技术的飞速发展,出现了崭新 的电子系统设计方法,这就是s o c 设计方法。利用s o c 设计技术,p c b 板级电子 系统被集成在一颗集成电路芯片中。s o c 技术不仅极大缩小了电子系统的体积, 同时也避免了许多p c b 板电子系统的技术缺陷,例如分布参数引起的噪声、电磁 辐射对信号的影响、高速信号传输的信号完整性、系统功率损耗等问题。s o c 技 术在极大的提高电子产品技术性能和指标的同时,也提出了与测试和应用开发有 关的问题。许多p c b 板的测试技术无法继续使用,同时,绝大多数s o c 属于模拟 数字混合电路,其中存在c p u 核,这种器件的测试和应用开发需要比较复杂的技 术。目前s o c 器件的开发平台以p c 机为主,并在p c 中建立相应的开发软件平台。 为了满足s o c 这类复杂器件的测试和应用开发需要,自2 0 世纪9 0 年代开始,提 出了以j t a g 为核心的复杂器件测试和应用开发技术。在s o c 器件的测试和开发 中,j t a g 提供的有效通信手段和指令结构成为了核心,为s o c 器件提供了有效的 测试和开发手段与技术 1 2 边界扫描测试的基本思想 边界扫描机制的主要思想是:通过在芯片管脚和芯片内部逻辑电路之间,即 在靠近芯片的输入输出管脚上增加一个移位寄存器单元。因为这些移位寄存器单 元都分布在芯片的边界上( 周围) ,所以被称为边界扫描寄存器( b o u n d a r y s c a n r e g i s t e rc e l l ) 当芯片处于调试状态的时候,这些边界扫描寄存器可以将芯片和外 围的输入输出隔离开来通过这些边界扫描寄存器单元,可以实现对芯片输入输 出信号的观察和控制对于芯片的输入管脚,可以通过与之相连的边界扫描寄存 器单元把信号( 数据) 加载倒该管脚中去;对于芯片的输出管脚,也可以通过与 之相连的边界扫描寄存器“捕获”( c a p t u r e ) 该管脚上的输出信号。在正常的运 行状态下,这些边界扫描寄存器对芯片来说是透明的,所以正常的运行不会受到 任何影响。这样,边界扫描寄存器提供了一个便捷的方式用以观测和控制所需要 调试的芯片,从而提供芯片级、p c b 板级以至系统级的标准测试框架。在边界扫 描机制中,各边界扫描单元以串行方式连接成扫描链,从而既可以通过扫描输入 端t d i 将测试代码以串行扫描的方式输入,对相应的管脚状态进行设定:也可以 通过扫描输出端t d o 将系统的测试响应串行输出,对数据进行分析。边界扫描机 制的应用可以大大地提高电路系统的可控性和可观性。边界扫描技术降低了对测 试系统的要求,可实现多层次、全面的测试,但实现边界扫描技术需要超出7 的 附加芯片面积,同时增加了连线数目,且工作速度有所下降。 1 3 边界扫描测试的特点与优势 1 3 1 边界扫描测试的特点 基于芯片可测试性要求,选择边界扫描技术可以很好的满足条件。因为边界 扫描技术的特点主要体现在以下四个方面: 1 采用标准化测试接口、测试总线结构和测试信号协议 在4 线的1 1 4 9 1 总线结构中,被测电路是受控器,而相关的测试设备是总线 主控器,主控器采用1 1 4 9 1 测试信号协议通过测试总线对受控器进行访问,使得 所有实现i e e e l l 4 9 1 可测试性设计的芯片、p c b 、系统可以用统一的测试设备进 行测试。 2 支持层次化测试策略 不但可以对系统进行测试,也可以对系统的p c b 和芯片进行测试。在出现故 障时采用自顶而下的测试策略最终将故障定位到出错的芯片或芯片间的互连线 上。 3 是一个开放式的结构方案 可以在边界扫描设计的基础上加入其它更强的可测试性设计,比如b i s t 。 4 形成了规范化标准语言 所有与i e e e l l 4 9 1 兼容的边界扫描逻辑,都用b s d l 语言进行描述。在测试 向量方面也形成了标准格式,比如s v f 。标准化对于测试设计的自动化和通用性 起到了决定性的作用。 1 3 2 边界扫描测试的优势 对于软核而言,采用门级结构的设计的电路进行测试,设计数据量大,目标 故障数多测试生成和故障模拟的复杂性高。结构化r t l 电路描述介于行为描述 和门级描述之间,既具有电路功能的信息,又能体现电路的具体的结构实现,这 使得基于结构的电路测试方法有可能在r t l 级进行设计实现。而寄存器传输级描 面向系统芯片测试的设计优化技术研究与电路结构结合的最为紧密,同时又能比 较清晰地体现功能级特性。所以,在r t l 进行可测性设计优化,有着优于门级结 构电路的一些特性。 综上所述,在芯片中引入边界扫描设计后,可以通过边界扫描端口对其成百 上千个可控制或可观测结点进行访问,增强芯片测试的分析诊断能力;通过一次 测试,可以识别更多的故障,减少测试与修复的循环次数;基于边界扫描的芯片 测试程序可以预先根据电路的拓朴结构方便地编写,实现测试的标准化;基于边 界扫描协议的测试功能可以应用到其研制、生产和调试的不同阶段,实现测试复 用;引入边界扫描设计使得芯片内部的可控制性、可观察性得到提高,不仅测试 准备工作更加容易,还可减少甚至消除故障模拟。总之,边界扫描测试技术是提 高印制板可测性的重要手段,也是必然的趋势,它已成为未来的主流设计l 2 j 。 边界扫描技术采用这种测试总线的方法直接控制被测电路板上各个测试点的 逻辑状态,成功地解决了传统测试方法不可避免的需要在被测电路板上牵大量信 号线、增加许多针床探针的困难。虽然边界扫描测试技术也需要在被测电路板上 增加少量的器件,但是与传统的测试方法相比,其在经济效益、可实现性等各方 面的优越性都是非常显著的。正是由于边界扫描测试技术所表现出来的种种先进 性,且前己经成为国际数字系统测试领域的主流测试方法之一,并于1 9 9 0 年被 i e e e 组织定为最终的a n s f i e e e1 1 4 9 1 边界扫描标准。世界各主要i c 供应商2 0 世纪9 0 年代中期以后生产的v l s i 、v h s i c 、a s i c 等产品均支持i e e e1 1 4 9 1 标 准。 1 4j t a g 的应用前景 边界扫描( 也称为j t a g ) 技术起始于上世纪8 0 年代末,先后形成了多个i e e e 标准【1 1 2 1 1 3 1 ,分别是i e e e l l 4 9 1 、i e e e l l 4 9 4 和i e e e l l 4 9 5 等i e e e i l 4 9 1 被称 作边界扫描标准,规定了数字逻辑边界扫描机制的具体结构、应用边界扫描机制 进行测试信息获取的控制方法和边界扫描标准描述语言一b s d l 。i e e el1 4 9 4 是 模拟和数模混合电路测试标准,可以解决模拟电路的测试问题。i e e e l l 4 9 5 是模 块测试和维修总线协议的i e e e 标准( 7 1 1 8 ) 。这一标准详述了一个串行的模块测 试和维修总线结构,可以把不同模块组合成能够测试和维修的子系统。 随着边界扫描技术的标准化,以边界扫描技术为核心的全新测试概念、理论 与技术,正在受到各国测试工业界的特别关注与重视。在国外,边界扫描测试技 术与测试设备己经开始广泛应用。随着市场上支持边界扫描机制的芯片、设计开 发软件以及测试仪器的数量与日俱增,边界扫描技术的应用越来越广泛。从普通 的a s i c 芯片到高性能计算机以至于人造卫星都应用了边界扫描技术。据 s c h l u m b e r g e r 公司的w i g l e y 预言,以今后的五年内多于8 0 的半导体芯片将包含 边界扫描机制1 4 j 。 1 5 课题的研究工作与论文结构 主要研究工作包括: 研究i e e e l l 4 9 1 边界扫描标准。 研究有针对性的边界扫描技术的实现方法。 研究适用的j t a g 软核结构,并完成设计和仿真分析。 提供完整的、适合s o c 使用的j t a g 软核。 4 2 边界扫描技术的理论基础 i e e e1 1 4 9 1 标准规定的边界扫描测试受控系统的体系结构,包括4 个测试访 问端口( 又称j t a g 接口) ,测试数据输入端口t d i ,测试数据输出端1 :3t d o ,测试 时钟t c k ,测试方式选择t m s 。主要硬件单元为t a p 控制器、指令寄存器、边界 扫描寄存器及旁路寄存器。可选的有测试复位输人t r s t 及其他可选的测试数据 寄存器。指令寄存器和所有测试数据寄存器的工作由t a p 控制器产生的信号来控 制。t a p 控制器是一个时序电路,由t m s 和t c k 信号驱动。t a p 控制器共有1 6 种状态,其状态转换满足i e e e l l 4 9 i 标准定义的状态要求。t a p 控制器的这些状 态提供了边界扫描测试所需的全部过程,其中包括: 提供信号将指令移人指令寄存器中; 提供信号将测试数据移人测试数据寄存器中( 经t d i ) 。并把测试响应数据 从这些寄存器移出( 经t d o ) ; 提供信号完成测试操作,如捕获、移位、更新测试数据等 2 1 边界扫描测试的基本原理 边界扫描法是把扫描路径扩展到整个板级或系统级,同扫描路径法类似,基 于边界扫描设计法的元器件的所有与外部交换的信息( 指令、测试数据和测试结 果) 都采用串行通讯方式,允许测试指令及相关的测试数据串行送给元器件,然 后允许把测试指令的执行结果从元器件串行读出。为了完成这样的功能,边界扫 描技术包含了一个与元器件的每个引脚相接、包含在边界扫描寄存器单元中的寄 存器链,这样元器件的边界信号可用扫描测试原理进行控制和观察,这就是边界 扫描的含义。 边界扫描技术的基本原理是在核心逻辑电路的输入输出端都增加个寄存 器,这些寄存器有如下特点: 每个寄存器都可输入数据,也可输出数据; 所有寄存器可以连接成一个移位寄存器。 由于增加了这些寄存器,可以实现核心逻辑测试和i c 或p c b 之间的连线的测 试。 2 2 边界扫描设计的硬件结构 i e e e1 1 4 9 1 标准规定,边界扫描测试的硬件结构应该包括四部分:测试存取 通道( t a p ) ;t a p 控制器;指令寄存器;测试数据寄存器组。其中数据寄存器组 又包括边界扫描寄存器( b s r ) ,旁路寄存器( b y r ) ,器件标志寄存器( i d r ) 。有 时可能有专用寄存器,如图l 所示。 f i g 1t h e o r yo f t e s t i n gs y s t e m i 测试存取通道t a p 提供i c 或p c b 测试所需要的各种数据,考虑到i c 或 p c b 的输入输出端子有限,在边界扫描设计中将t a p 的端子压缩到5 个,分别是 测试时钟t c k 、测试方式选择t m s 、串行测试数据输入t d i 、串行测试数据输出 1 r i ) o 、复位输入t r s t 。 2 t a p 控制器的作用是将串行输入的t m s 信号进行译码,使边界扫描系统进 入相应的测试模式,并产生该模式下所需要的各个控制信号。例如允许指令装入 指令寄存器;将串行输入信号t d i 逐位移入数据寄存器,同时将数据寄存器中的 数据以串行方式从t d o 移出;执行测试捕获数据,移位操作和刷新输出数据等操 作。 3 指令寄存器i r 是一个附有锁存器的移位寄存器,它的长度等于指令的长度 6 ( 指令的长度在不同的系统中是不同的) 。在进行测试时指令经t d i 移入指令寄 存器i r ,然后送入指令锁存器,最后将锁存器中的指令译码后,配合t m s 信号产 生控制边界扫描的各种信号。 4 旁路寄存器,若一块p c b 上有多个具有边界扫描设计的i c 时,可将每个 i c 中的边界扫描链串联起来,以形成一个更长的移位寄存器,即更长的扫描链。 此时若要测试其中一个芯片,则测试数据仍需要在该扫描链的总长度上移动,显 然浪费了大量的测试时间。旁路寄存器b r 的设置是企图将当前没有测试的i c 的 扫描链短路起来,使此时的测试扫描链的总长度近似为所测芯片上的扫描链长度。 5 器件标志寄存器,一般的边界扫描设计中,在数据寄存器中都包含有一个 固化有该器件标志的寄存器。它是一个3 2 位的标准寄存器,其内容有关于该器件 的版本号、器件型号、制造厂商等信息。 6 边界扫描寄存器是边界扫描设计中最重要的工作寄存器。它完成测试数据 的输入、输出锁存和移位等测试必须的操作。它既允许器件内测试数据的输入输 出等操作,也允许对器件外电路的测试。例如外部器件问互连测试或外部器件测 试,也可以增加选择的测试功能,例如支持片内系统逻辑的测试。边界扫描寄存 器的结构如图2 所示。 t c k 1 d i 图2 边界扫描寄存器结构图 f i g 2f r a m e w o r k o f b o u n d a r y - s c a nr e g i s t e r 2 3 测试存取通道t a p 测试存取通道( t a p ) 是访问元器件内嵌入式测试支持功能( 包括i e e e l l 4 9 1 标准定义的测试逻辑) 的通用端口,提供i c 或p c b 测试所需要的各种数据。 i e e e l1 4 9 1 标准定义的测试逻辑至少包括3 个输入信号( t c k ,t m s 和t d l ) 的 连接和一个输出信号( t d o ) 的连接。如果t a p 控制器上电后不能复位,输入信 号( t r s t ) 的连接就要加上。t a p 的所有的输入、输出必须是专用的,不能够有 其它的用途。 2 3 1 测试时钟输入( t c k ) 边界扫描设计中的测试时钟是为测试逻辑提供的专用时钟信号,是独立的, 与原i c 或p c b 上的时钟是无关的。独立时钟的使用确保了测试数据移入或移出芯 片时不改变片上系统的逻辑状态。在允许时,可借用原系统的时钟。 当加在t c k 上的信号为0 或者1 时,测试逻辑电路中的存储元件将是非稳态。 由于许多元件的t c k 输入是由一个驱动所控制,因此要注意确保与t c k 相连结 的电路的负载尽可能的小。 测试时钟是完成测试过程中的各个步骤的基准,测试逻辑一般在t c k 的上升 沿或下降沿执行一些操作,一般应设计成用t c k 的上升沿来获取( 锁入) 数据, 用t c k 的下降沿输出( 选通) 数据。这些操作必须在t c k 发生相应的改变之后 的固定的延迟时间内完成,这个延迟时间由元件设计者提供。因此“在t c k 的上 升沿( 下降沿) ”应该理解为“在t c k 的上升沿( 下降沿) 后的一个特定的延迟 时间内”。 2 3 2 测试模式选择输入( t m s ) t a p 控制器把从t m s 接受到的信号翻译成控制测试的操作的信号。由于在测 试过程中,需要有数据捕捉、移位、暂停和输出刷新等不同的工作模式,需要有 工作方式选择来确定。这里仅有一根输入线控制,所以必须有一个输入序列来确 定工作模式。换句话说,在不同的状态下,t m s 为0 或1 时有不同的状态分支。 t m s 信号是由t c k 的上升沿来采样的,采样信号结合以输入的指令以及当前 的状态来确定下一个状态,并产生相应的控制信号,以协调整个边界扫描系统有 序的工作。 对于许多的元件来说,t m s 的输入可能来自于单个的驱动,必须注意确保由 t m s 呈现出来的负载尽可能的小。在t m s 管脚没有驱动时,t a p 控制器被强制回 到测试逻辑复位状态。这样就确保了片内系统逻辑的正常操作不受测试逻辑的影 响。 2 3 3 串行测试数据输入( t d i ) 以串行方式输入的数据t d i 有两种:一种是指令信号,它送入指令寄存器中, 另一种是测试数据,它输入到相应的测试数据寄存器中。 t d i 的信号在t c k 的上升沿被采样和输入测试数据的通过电路的数据管脚 从t d i 串行的移动移到t d o 。在时钟控制下,t d i 中的数值在t c k 的上升沿装入 所选择的寄存器( 命令寄存器或者是数据寄存器) 2 3 4 测试数据输出( t d o ) 以串行方式输出的数据有两种:一种是从指令寄存器移出来的指令位,另一 种是从各数据寄存器移出来的数据位。它们决定于t a p 控制器当前的状态。 在时钟控制下,当t a p 的输出( t d o ) 在t c k 的下降沿改变时,t a p 输入端 ( 1 m s 和t d i ) 在t c k 的上升沿移入到测试逻辑。同样,测试逻辑向元件外发送 信号发生在t c k 的下降沿,测试逻辑接受信号发生在t c k 的上升沿。 被选择的寄存器( 命令或数据) 的内容在t c k 下降沿时移出t d o 。这通常使 用边沿操作的电路。对于边沿操作应用,注意到t d o 输出的改变将被延迟到t c k 下降沿到来时,这可以通过在t d o 输出缓冲器在t c k 的下降沿包含一个d 触发 器实现主从总线构造的寄存器,由非重叠的时钟控制。 2 3 5 测试重启输入( t r s t ) 除了上述4 条i e e e11 4 9 1 标准强制规定有的t a p 通道外,该标准还提供一 个“测试系统复位”的输入通道。它的作用是令测试系统强制复位,提供t a p 控 制器的异步初始化,即与边界扫描系统当前的状态和t c k 均无关。如果没有这个 输入端,则要求在t m s 输入序列中确定一个子序列作为“复位”序列,通常以 t m s - 1 1 1 1 1 1 ( 至少5 个1 ) 作为复位序列。 给t r s t 加一个逻辑0 时,t a p 控制器将异步重置到测试逻辑复位状态。这 时元件中的其它测试逻辑将异步重置到在测试辑复位控制状态中所需的状态,不 初始化元件内部的系统逻辑。 当加在t r s t 上的信号由0 变成1 时,t m s 应该保持为l 。t a p 控制器的初 始化反过来引起了设计中所包含的其它测试逻辑的异步初始化。 当没有停止t r s t 输入时,测试逻辑能够在加在t m s 和t c k 输入端信号的 控制下继续进行操作。测试逻辑能够独立于片上系统逻辑被重启,这就可以通过 硬件设置t r s t 为逻辑0 来停止测试逻辑工作。 当加在t r s t 上的信号由0 变成l 时,测试逻辑可直接响应。如果当t m s 为 9 0 时,t r s t 和t c k 同时出现上升沿,将会出现竞争,t a p 控制器可能保持在测 试逻辑复位控制状态或者进入运行一测试,空闲控制状态 2 4 指令寄存器 指令寄存器( i r ) 和指令译码器功能上主要提供在扫描路径访问一个特殊数据寄 存器所需要的地址和控制信号。指令寄存器i r 是一个附有锁存器的移位寄存器, 寄存器的长度等于指令的长度,指令寄存器i r 可完成下述功能: 在t c k 的激励下,以串行方式将指令从t d i 逐位移入指令寄存器i r ,并 在t d o 处移出; 在指令流程中的指令锁存器状态下,将i r 中的内容装入锁存器; 在指令流程中指令捕获状态,以并行方式将专门设置的数据装入指令寄存 器i r : 在复位状态将指令锁存器复位; 在指令流程中的指令寄存器移位的状态下,可将指令寄存器向t d o 方向 移位。 在进行测试时,指令经t d l 移入指令寄存器i r ,然后送入指令锁存器,最后 将锁存器中的指令译码后,配合t m s 信号产生控制边界扫描电路的各种信号。 在正常的工作条件下,指令寄存器i r 的最低两位应分别为0 和1 ,换句话说, 每条指令的末尾都应该是0 1 结束。这样便于在用移位指令操作测试取移位功能 时可确定故障所在的i c 或p c b 。 指令寄存器访问的过程:系统上电,t a p c o n t r o l l e r 进入t e s t - l o g i c r e s e t 状态, 然后依次进入:r u n - t e s t i d l e s e l e c t - d r - s c a n s e l e c t i r - s c a n c a p t u r e - i r s h i f t i r e x r i 1 r u p d a t e i r ,最后回到r u n t e s t i d l e 状态。在c a p t u r e i r 状态 中,一个特定的逻辑序列被加载到指令寄存器当中:然后进入到s h i f l - i r 状态。在 s h i f t - i r 状态下,通过t c k 的驱动,可以将一条特定的指令送到指令寄存器当中 去。每条指令都将确定一条相关的数据寄存器。然后从s h i f t i r e x r i i r u p d a t e i r 。在u p d a t e - i r 状态,刚才输入到指令寄存器中的指令将用来更新指令 寄存器。最后,进入到r u n - t e s t i d l e 状态,指令生效,完成对指令寄存器的访问。 2 5 测试数据寄存器 寄存器分为两大类:指令寄存器和数据寄存器。在上面提到的b y p a s s 寄存器、 d e v i c ei d e n t i f i c a t i o n 寄存器和b o u n d a r y - s c a n 寄存器( 边界扫描链) ,都属于数据寄 存器。在调试当中,边界扫描寄存器( 边界扫描链) 最重要,使用的也最为频繁。 数据寄存器( d r ) 是边界扫描测试扫描路径的数据通道。i e e e1 1 4 9 1 规定边界扫描 寄存器和旁路寄存器( b y p a s s ) 是两个必须的数据寄存器。其它的数据寄存器是可选 的,芯片内部可以设置不同的数据寄存器。芯片制造厂商利用j t a g 规范通过对芯 片内置大量的数据寄存器,就可以完成对芯片的特定操作。i d c o d e 数据寄存器 是一个典型的数据寄存器,1 d c o d e 数据只能读出,读出数据就是这个芯片的 i d c o d e ,是芯片生产厂商用来表示这种型号芯片的信息。 数据寄存器访问的过程:当前可以访问的数据寄存器由指令寄存器中的当前 指令决定。要访问由刚才的指令选定的数据寄存器,需要以r u n - t e s t i d l e 为起点, 依次进入s e l e c t - d r - s c a n c a p t u r e - d r s h i f i - d r e x i t l d r - * u p d a t e - d r ,最 后回到r u n - t e s f f l d l e 状态。在这个过程当中,被当前指令选定的数据寄存器会被 连接在t d l 和t d o 之间。通过t d i 和t d o ,就可以将新的数据加载到数据寄存 器当中去,同时,也可以捕获数据寄存器中的数据。具体过程如下。在c a p t u r e d r 状态中,由t c k 的驱动,芯片管脚上的输出信号会被“捕获”到相应的边界扫描寄 存器单元中去。这样,当前的数据寄存器当中就记录了芯片相应管脚上的输出信 号。接下来从c a p t u r e d r 进入到s h i f t d r 状态中去。在s h i i t - d r 状态中,由t c k 驱动,在每一个时钟周期内,一位新的数据可以通过t d i 串行输入到数据寄存器 当中去,同时,数据寄存器可以通过t d o 串行输出一位先前捕获的数据。在经过 与数据寄存器长度相同的时钟周期后,就可以完成新信号的输入和捕获数据的输 出。接下来通过e x i t i d r 状态进入到u p d a t e - d r 状态。在u p d a t e d r 状态中,数 据寄存器中的新数据被加载到与数据寄存器的每个寄存器单元相连的芯片管脚上 去。最后,回到r u n - t e s t i d l e 状态,完成对数据寄存器的访问。 2 5 1 旁路寄存器 b y p a s s 寄存器是j t a g 规范定义的必须的数据寄存器,只有i b i t ,主要是为 了在做有多个芯片组成的j t a g 链的边界扫描测试或者数据寄存器读写的过程中 旁路那些没有参与操作的芯片,以简化操作过程。 2 5 2 边界扫描寄存器 b s r ( 边界扫描寄存器) 不仅是必须的数据寄存器,更是j t a g 结构中最重要的 数据寄存器。它就是边界扫描测试的操作对象,即扫描路径。边界扫描寄存器由 一个个边界扫描单元串连组合,每个边界扫描单元都对应了芯片的一个管脚,介 于芯片管脚和芯片内核逻辑之间,在逻辑上相当于一个内置的测试节点。边界扫 描单元可以采样截获、预置芯片管脚上的电平信号,而且这些操作可以不干扰芯 片本身的正常工作,通过j t a g 数据链( t d ir r d o ) 把数据写入和读出。边界扫描寄 存器是j t a g 规范中最重要的数据寄存器,是边界扫描测试机制的物理结构的基 础。 2 5 3 器件标志寄存器i d r 一般的边界扫描设计中,在数据寄存器中都包含有一个固化有该器件标志的 寄存器。它是一个3 2 位的标准寄存器,其内容有关于该器件的版本号、器件型号、 制造厂商等消息。 在器件标志寄存器的标准格式中,最低位应为1 。这是用于识别标志寄存器和 旁路寄存器的标志位。如果该i c 不存在器件标志寄存器,则在执行器件标志指令 1 d c o d e 时该位自动为0 ,从而选中旁路寄存器,而使扫描链不致于中断。 m s b3 12 8 2 71 2 l ll0 l s b i 版本号l 器件型号l 制造厂商 l 图3 器件标志寄存器的格式 f i g 3f o r m a to f i d e n t i f i c a t i o nr e g i s t e r 图3 第1 位到第l l 位( 共i l 位) 为制造厂商的标识位。根据国际联合电子器 件工程委员会( 脚c ) 所提出的方案,这l l 位共允许有2 0 3 2 个生产厂家的标 识。根据i e e e i l 4 9 1 的标准,代码0 0 0 01 1 11 1 1 1 用于测试中的无效代码,因此在 厂商标志中不能使用这个代码。 标志寄存器中的第1 2 位到第2 7 位用以表示器件的型号,总计可表示2 ”- 1 1 = 2 1 6 = 6 5 5 3 6 种不同的型号。余下的4 位可表示同一型号器件的1 6 种可区分的版本, 也可用于指示测试时的不同操作或不同响应等细微的差别。 器件标志寄存器的内容在测试应用中有很重要的作用,其中主要有; 在p c b 生产线上,可以检查i c 的安装位置是否正确; 在检修或替换i c 时,可检查它的型号和版本号,以便修改相应的测试程 序: 在没有图纸资料的情况下,若需要检修或编制测试程序时,可通过检查器 件标志寄存器以获得必要的信息。 2 5 a 专用数据寄存器s r 在一些l c 或p c b 的设计中,提供了一些专用的测试寄存器,并设计有专用的 指令来使用它,以完成一些特殊的测试过程。但这在i e e e11 4 9 1 标准中没有规定。 因此如果设计者设有这些专用的数据寄存器,则必须清楚地说明这些寄存器的功 能、结构以及相应的专用指令的应用方法。 d e s i g ns p e c i f i ct e s td a t ar e g i s t ,如u s e r c o d e 寄存器、i s p i c r 寄存器等, 则是可选的数据寄存器是芯片开发厂商自定义的数据寄存器。不同的芯片有不同 的d e s i g ns p e c i f i ct e s td a t ar e g i s t ,h p t d c 中就集成了大量这样的数据寄存器, 这些数据寄存器在芯片复杂的功能控制中起到了重要的作用,通过j t a g 对这些数 据寄存器进行“编程”就可以修改h i y f d c 的工作模式。随着j t a g 技术的广泛应 用,这种y r a g “编程”功能得到的极大的推广,可编程芯片f i ,g a c p l d 的逻辑 下载,f l a s h 下载等等都可以通过j t a g 完成。 2 6t a p 控制器和1 6 位有限状态机 t a p 控制器【3 】是整个j t a g 规范实现的核心控制器,内部由一个1 6 状态的有 限状态机、控制逻辑和译码电路组成。t a p 控制器的控制和数据信号一共有5 个, 除了t r s t 是可选信号外,其余4 个是必须信号,它们是1 k 、1 m s 、t d i 、t d o 。 这些信号线又被称为j t a g 总线或边界扫描测试总线。 t a p 控制器的基本功能是产生时钟信号和控制信号,这些信号是指令寄存器 和数据寄存器正常工作所要求的,其主要功能是: 提供信号允许将指令装入指令寄存器中; 提供信号将数据通过t d i 管脚移入移位寄存器中,并把数据通过t d o 管 脚从移位寄存器输出; 执行相应功能,如捕获、移位和更新数据等。 j t a g 的控制器有1 6 位有限状态机,t a p 的状态机 4 1 如图4 所示,总共有1 6 个状态。在图中,每个方格表示一个状态,方格中标有该状态的名称和标识代码。 图中的箭头表示了t a p c o n t r o l l e r 内部所有可能的状态转换流程。状态的转换是由 t m s 控制的,所以在每个箭头上有标有t m s = 0 或者t m s = 1 。在t c k 的驱动下, 从当前状态到下一个状态的转换是由t m s 信号决定。例如t a pc o n t r o l l e r 的当前 状态为s e l e c t - d r - s c a n ,在t c k 的驱动下,如果t m s = o ,t a pc o n t r o l l e r 进入 c a p t u r e d r 状态;如果t m s = l ,t a pc o n t r o l l e r 进入s e l e c t - i r - s c a n 状态。其他 状态的转换也是如此流程,下面详细介绍了1 6 个状态的意义和功能。 1 测试逻辑复位 边界扫描系统处于“逻辑复位”状态时,测试逻辑部分完全失效,从而保证 核心逻辑正常工作。此时关键的控制信号是原系统数据线上的多路开关控制信号, 即切断数据线连至测试逻辑单元的通路,打开原系统数据的流通通道。使之犹如 没有边界扫描设计一样。 图4t a p 状态机 f i g 4t a p s t 刮i t l f lm c s s a g 测试逻辑失效可以通过初始化包含i d c o d e 指令的指令寄存器来实现。如果 边界扫描设计中没有可选择的器件识别寄存器,则测试逻辑失效也可以通过 b y p a s s 指令来实现。 欲进行测试逻辑复位状态,只要在t m s 端连续加5 个t c k 脉冲宽度的1 信 号即可,而与起始时t a p 控制器的状态无关,而且只要t m s 为高电平,此状态就 会保持。 如果由于某种原因,t c k 上升沿时t m s 为低电平,那么t a p 控制

温馨提示

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

评论

0/150

提交评论