基于边界扫描技术的数字系统测试研究

发布者:电竞狂人最新更新时间:2010-06-10 来源: 倪 军 杨建宁关键字:FPGA  CPLD  边界扫描  数字系统测试  JTAG 手机看文章 扫描二维码
随时随地手机看文章

  摘 要: 介绍了支持JTAG标准的IC芯片结构、边界扫描测试原理以及利用边界扫描技术控制IC芯片处于特定功能模式的方法。针对IC芯片某种特定的功能模式给出了设计思路和方法,并用两块xc9572 pc84芯片互连的PCB板为例进行设计分析和实验实现。通过实验实现,体现了边界扫描技术易于电路系统调试和方便系统设计的特点,且设计的系统控制逻辑简单方便,易于实现。

  当今,微电子技术已经进入超大规模集成电路(VLSI)时代。随着芯片电路的小型化及表面封装技术(SMT)和电路板组装技术的发展,使得传统测试技术面临着巨大的挑战。在这种情况下,为了提高电路和系统的可测试性,联合测试行动小组(JTAG)于1987年提出了一种新的电路板测试方法——边界扫描测试,并于1990年被IEEE接纳,形成了IEEE1149.1标准,也称为JTAG标准[1]。这种技术以全新的“虚拟探针”代替传统的“物理探针”来提高电路和系统的可测性。由于 JTAG标准的通用性很好, 现在许多IC公司都提供了支持边界扫描机制的IC芯片,甚至部分FPGA和CPLD芯片也采用了这一技术。

  本文介绍支持JTAG标准的IC芯片结构,并以Xilinx公司的两块xc9572_ pc84芯片为例,探讨并利用边界扫描技术控制IC芯片处于某种特定功能模式的方法,并且针对IC芯片某种特定的功能模式设计该芯片的JTAG控制器。

  1 支持JTAG标准的IC芯片结构

  边界扫描技术的核心就是在IC芯片的输入输出引脚与内核电路之间设置边界扫描结构。JTAG 标准定义了一个4-wire串行总线[2],通过这四条测试线访问边界扫描单元,可以达到测试芯片内核与外围电路的目的。图1示出了支持JTAG标准的IC芯片结构。图中,扫描结构由测试存取通道(TAP)、边界扫描寄存器(BSR)、TAP控制器、指令寄存器(IR)和辅助寄存器等组成。

  1.1 TAP

  TAP是由4-wire串行测试线组成的测试存取通道,JTAG标准定义的所有操作都由这四条测试线来控制。这四条测试线分别是:测试时钟输入线(TCK),测试方式选择输入线(TMS),测试数据输入线(TDI),测试数据输出线(TDO)。

[page]

  1.2 TAP控制器

  TAP控制器是边界扫描测试的核心控制器,具有一个16状态的有限状态机。它与TCK信号同步工作,并响应TMS信号。在TCK信号和TMS信号的控制下, TAP控制器可以选择使用指令寄存器扫描还是数据寄存器扫描,以及选择用于控制边界扫描测试的各个状态。图2描述了TAP控制器的状态转换全过程[3]。

  无论当前状态如何, 只要TMS保持5个TCK 时钟为高电平, TAP控制器都会回到Test_Logic_Reset状态, 使测试电路不影响IC芯片本身的正常逻辑。需要测试时,TAP控制器跳出该状态, 选择数据寄存器扫描(Select_DR_Scan)或选择指令寄存器扫描(Select_IR_Scan)进入图2的各个状态。一个标准的测试过程如下:TAP控制器在Capture_IR状态捕获指令信息, 经过Shift_IR状态移入新指令,新指令经过Update_IR状态成为当前指令;紧接着,当前指令在Select_DR_Scan状态选择相应的测试数据寄存器, 在Capture_DR状态捕获前一测试向量的响应向量,在Shift_DR状态移出该响应向量,同时移入下一测试向量,在Update_DR状态将新的测试量并行加载到相应的串行数据通道,直到移入最后一个测试向量为止。其中,Pause_DR状态和Pause_IR状态暂停数据移位状态;而四个Exit状态是不稳定状态,它们为状态转换提供灵活性。

  1.3 BSR

  BSR是边界扫描技术的核心,它构成边界扫描链,其中的每一个边界扫描单元(BSC)都是由触发器Q、多路选择开关mux组成。图3示出了JTAP标准中BC_ 1 类型的BSC的结构[3]。

  在图3中,SI为BSC的串行输入端,连接上一个器件(BSC)的串行输出端SO,依次相连便构成边界扫描链。该扫描链的首端接TDI引脚,末端接TDO引脚。当MODE为0时,芯片工作在正常模式下。当芯片工作在测试模式时,测试数据在移位信号(SHIFT=1)的控制下,通过SI 端进入到多路选择器1(MUX1)中,通过SO端进入下一个BSC的SI端;当芯片工作在捕获方式时(SHIFT=0),触发器Q1将捕获BSR并行输入端(DI)的数据,送入SO端,在扫描链中传递捕获的数据,并在TDO回收数据,以此来检测故障的存在并且定位故障所在的位置。当MODE为1时,芯片工作在更新方式下,Q1中的数据在更新信号(UPDATE)的作用下,进入到多路选择器2(MUX2)中,通过BSR的并行输出端(DO)进入芯片的内核中。[page]

  1.4 IR

  IR是向各个数据寄存器发出各种操作码并确定其工作方式的指令寄存器,图4示出了一种IR单元的结构[4]。由图4可以看出,IR单元是由一个触发器Q1和一个锁存器Q2构成的。CAPTURE DATE信号控制IR装载指令,SHIRFT IR信号控制指令在IR中的移位;CLK IR信号是从TCK获得的时钟信号,用于为BSR的捕获操作、移位操作提供时钟信号。UPDATE IR信号用于将当前指令装入锁存器Q2,以决定将要执行的操作模式和将要用到的测试数据寄存器的类别。

  1.5 辅助寄存器

  辅助寄存器包括器件标志寄存器和旁路寄存器,器件标志寄存器用于存储器件制造商、器件序列号和器件版本号等信息,借助它可以辨别板上器件的制造商, 还可以通过它检测是否已将正确的器件安装在电路板的正确位置上。旁路寄存器用于将边界扫描单元直接旁路,把扫描数据直接传递给下一个扫描器件。

  2 基于边界扫描技术的数字系统测试

  基于边界扫描技术的数字系统测试包括两个方面,一是对IC芯片电路功能测试及系统互连测试;二是利用边界扫描技术控制IC芯片处于某种特定的功能模式,以方便电路系统的设计和调试。本文主要论述后者。

  2.1 测试系统组成

  测试系统由主机(PC机)、测试仪和PCB实验板组成,测试仪通过标准口(RS232)与PC机连接,通过串行标准信号电缆与PCB板上的测试存取通道相连,如图5所示。

  PCB板由Xilinx公司的两块xc9572 pc84芯片互连组成,芯片符合IEEE1149.1的JTAG接口标准,具有84个外部引脚、4个JTAG引脚、5个VCC引脚、6个VSS引脚、69个双向数据输入/输出引脚,xc9572系列芯片未实现异步复位信号引脚TRST,电缆不需要提供这一信号线。该器件的边界扫描寄存器由216个边界扫描单元组成,其中9个单元是内部属性的单元,其余207个单元组成69组边界扫描单元组[5]。

[page]

  2.2 设计分析与实现

  2.2.1 设计内容与分析

  在图5所示的测试系统中,要求两片IC芯片分别实现不同功能的数据处理。为了对存储器实现分时访问,可以设定其中的一片xc9572_ pc84芯片(IC2)受到另一片xc9572_ pc84芯片(IC1)的控制,使IC2进入高阻模式(高阻模式是JTAG标准中推荐的任选模式之一),用以对存储器的访问屏蔽一段时间,此时受控芯片IC2的所有输出管脚都将处于浮空状态即高阻态。

  从图2描述的TAP控制器的状态机可知,通过改变IC芯片自身的输入输出状态,就可以进行边界扫描测试或利用JTAG接口使IC芯片处于某个特定的功能模式。

  支持JTAG标准的芯片都附有特定的BSDL(Boundary Scan Description Language)描述文件[3]。BSDL语言是硬件描述语言(VHDL)的一个子集。它对该芯片的边界扫描特性进行描述,用来沟通厂商、用户与测试工具之间的联系,为自动测试图形生成工具、检测特定的电路板提供相关的信息;在BSDL文件的支持下可生成由JTAG标准定义的测试逻辑。BSDL文件可与软件工具结合起来,用于测试生成、结果分析和故障诊断。

  通过对xc9572 pc84芯片的BSDL部分文件[6]的分析可知:

  ……

  attribute INSTRUCTION_CAPTURE of xc9572_pc84:

  entity is \'000XXX01\'&

  attribute INSTRUCTION_DISABLE of xc9572_pc84 : entity is \'HIGHZ\'&

  attribute INSTRUCTION_OPCODE of xc9572_pc84:entity is

  \'BYPASS (11111111),\' &

  \'EXTEST (00000000),\' &

  \'IDCODE (11111110),\' &

  \'INTEST (00000010),\' &

  \'SAMPLE (00000001),\' &

  \'USERCODE (11111101)\' ;

  ……

  通过该部分代码可得出,控制该芯片进入高阻模式需要写入指令寄存器的控制码为11111100。此时应选择旁路寄存器将边界扫描寄存单元旁路,以使扫描数据直接传递给下一个扫描器件。

  2.2.2 设计实现

  根据上面的分析可以得出,要使芯片从正常工作模式下受控进入 JTAG 高阻状态需要经过以下五个步骤:

  ①复位。由于Xilinx 9572_ pc84芯片不具备 TRST 管脚,而且芯片正常工作时TMS持续为高电平,所以控制器进入复位状态需要使TMS端接收低电平信号,控制TAP控制器完成复位操作。

  ②进入Shift_IR状态。由TAP控制器状态机可以看出,当持续5个TCK上升沿使TMS端接收到01100时,则进入Shift_IR状态。

  ③ 将指令码写入指令寄存器。在Shift_IR状态,通过TDI将高阻状态指令码11111100写入指令寄存器,需要5个TCK周期,此时TMS需保持4个周期低电平。

  ④进入 Exit1_IR 状态。在Shift_IR状态的第5个TCK的上升沿,使TMS=1,进入 Exit1_IR状态。

  ⑤进入Update_IR状态。在进入Exit1_IR状态后,使TMS=1,进入Update_IR状态。此时芯片进入高阻状态。[page]

  按照上述步骤,采用数字系统中状态机的设计思想[5],用VHDL语言编写出相应的功能块,控制xc9572_ pc84芯片(IC2)进入JTAG高阻状态(限于篇幅,VHDL源程序未列出),就可以进行边界扫描测试了。将VHDL源程序经过编译、仿真后可得到如图6所示的JTAG控制时序波形图。

  JTAG测试技术是一种新的测试技术,这种技术是建立在具有JTAG标准接口的芯片之上的。由于这种芯片内置一些预先定义好的功能模式,所以可以通过边界扫描通道使芯片处于某个特定的功能模式,以提高系统控制的灵活性并便于系统设计。本文通过设计实例,详细介绍了利用边界扫描技术控制IC芯片处于高阻模式的思路和方法,并且通过实验实现,达到了预期目标。基于边界扫描技术的测试机制在产品全寿命周期的不同阶段都可以共享,因此利用边界扫描技术可以方便地对电路系统进行调试、测试,显著地降低了产品的开发周期和费用。

  参考文献

  1 IEEE std 1149.1-2001:IEEE Standard Test Access Port and Boundary Scan Architecture[S]. New York, USA,2001

  2 Lee Nayes, Larry Lauenger. Addin Boundary Scan Test Cability to an Existing Multi- strategy Tester[J]. Autotestcon, 1993

  3 陈光禹,潘中良.可测试性设计技术[M].北京:电子工业出版社,1997

  4 杨廷善.边界扫描技术及其应用[M].测控技术,2000;(199):5~8

  5 姜立东.VHDL语言程序设计及应用[M]. 北京: 北京邮电大学出版社,2001

  6 专用集成电路和集成系统自动化设计方法[M].北京:国防工业出版社,1997

  7 高 平,成 立. 数字VLSI电路测试技术—BIST方案[J].半导体技术2003;28(9):29~32

关键字:FPGA  CPLD  边界扫描  数字系统测试  JTAG 引用地址:基于边界扫描技术的数字系统测试研究

上一篇:安森美收购SDT,敲响医疗电子之门
下一篇:基于Nios II的多生理参数处理系统的设计

推荐阅读最新更新时间:2024-05-02 21:04

FPGA实现汽车视频和图形控制
LCD显示器真是无处不在,在家庭、超市、体育馆以及汽车内你都可以见到它们的身影。无疑车载LCD显示系统是增长最快的市场。增长的动力包括:不断下降的显示器价格、不断提升的用户体验、更多的产品性能以及车内消费类产品的集结。 典型的图形显示系统一般都是利用标准的特殊应用标准处理器(ASSP)或者定制的特殊应用集成电路(ASIC)作为控制器来构建的。但汽车图形设计师在利用这些器件构建系统时遭遇到了不小的麻烦,其中包括:较短的产品生命周期,基于PC的系统总线接口,无法适应新标准和新显示器类型等。所有这些问题都限制了设计在其它应用中的重用可能性。 图1给出了车载图形/视频系统的一个典型实例。图的左侧列出了用于驱动图形系统的
[嵌入式]
用<font color='red'>FPGA</font>实现汽车视频和图形控制
基于FPGA的步进电机控制系统的设计方案
0 引言 步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,输入脉冲总数控制步进电机的总旋转角度,电机的速度由每秒输入脉冲数目所决定,因此易实现机械位置的精准控制。而且由于步进电机价格低廉、可控性强等特点,使其在数控机床传送控制等自动控制领域中得到了广泛的应用。但随着技术的发展以及企业生产的要求,步进电机传统的以单片机等微处理器为核心单元的控制系统暴露出了如下缺点:控制策略单一不利于实现人机交互,而且控制电路复杂、控制精度低、生产成本高,系统稳定性不够,步进分辨率低、缺乏灵活性,低频时的振荡和噪声大,而且受步进电机机械结构和空间的限制,步进电机的步距角不可能无限的小,难以满足高精度开环控制的需求。由于FPGA编程方式简单
[嵌入式]
基于单片机和FPGA的空间材料高温炉控制系统
随着我国空间技术的发展,越来越多的空间科学实验得以进行。太空中的超真空、微重力、强辐射等条件为科学实验提供了在地面难以实现的环境。空间材料科学实验是一种重要的空间科学实验。不论是国际上还是国内,都投入了大量的人力、物力和财力从事空间材料科学的研究。空间材料科学的研究目的是:揭示材料制备过程中的微观机理和组分、结构与性能之间的内在关联,发现新的科学现象,丰富和发展材料科学理论,指导地面的材料制备和生产工艺。而空间材料科学的研究离不开空间材料高温炉(以下简称高温炉)。我国神舟2号和神舟3号飞船上的空间材料科学实验获得了举世瞩目的研究成果,但随着科学的发展和技术的进步,以往的空问材料高温炉,特别是其控制系统,已经不能 适应我国未来空间站上
[单片机]
基于单片机和<font color='red'>FPGA</font>的空间材料高温炉控制<font color='red'>系统</font>
Xilinx公布季报,汽车及数据中心营收剧增
Xilinx(赛灵思)截止2020年9月季报显示,收入环比增长5%,部分原因是随着汽车制造业的恢复,其汽车相关芯片销售强劲。总营收为7.67亿美元,净利润为1.94亿美元。 Xilinx最近也宣布,在过去20年里,它已售出10亿个Spartan系列FPGA,这是Xilinx产品系列从未达到的里程碑。 上周,有传闻AMD将以300亿美元收购Xilinx,但Xilinx在周三拒绝讨论此事,花旗集团(Citigroup)的一位分析师最近表示,收购可能性不大。 汽车市场半导体推动汽车、广播和消费类业务较上一季度增长36%。TI周二也报告称,随着汽车工厂从5月份开始重新开工,汽车芯片收入大为改善。 早些时候,Xilinx报道
[嵌入式]
基于CPLD/FPGA高速数据采集系统的设计
0 引 言 传统的数据采集系统一般采用单片机,系统大多通过PCI总线完成数据的传输。其缺点是数学运算能力差;受限于计算机插槽数量和中断资源;不便于连接与安装;易受机箱内电磁环境的影响。这些问题遏制了基于PCI总线的数据采集系统的进一步开发和应用。因此,需要一种更为简便通用的方式完成采集系统和计算机数据的交互。 数据采集系统性能的好坏,主要取决于它的精度和速度。在保证精度的条件下应尽可能地提高采样速度,以满足实时采集、实时处理和实时控制的要求。实践表明,采用ARM 32位嵌入式微处理器作为控制器,用USB(通用串行总线)和上位机连接构成的数据采集系统能大大提高系统数据处理的能力,降低对PC机和接口速度的依赖。 1
[嵌入式]
基于<font color='red'>CPLD</font>/<font color='red'>FPGA</font>高速数据采集<font color='red'>系统</font>的设计
一种基于FPGA的诱发电位仪系统研究与设计
   O 引言   诱发电位是指对神经系统某一特定部位给予特定刺激后在大脑皮层所产生的特定电活动,对于神经系统功能性异常的疾病有独特的检测诊断能力,也是大脑认知和脑机接口研究常用的技术手段。诱发电位仪通常包括视觉诱发电位、听觉诱发电位和体感诱发电位三种检测功能,其硬件系统核心组成部分包括:刺激信号源、脑电信号放大和数据采集。刺激信号源包括视觉刺激信号(如棋盘格、黑白闪光等)、听觉刺激信号和神经刺激信号,一般采用分离设计。   脑电信号数据采集一般包括模/数转换、数据预处理和数据传输等部分,而模/数转换芯片和主控微处理器芯片的选择主导了整个数据采集系统的性能。在目前的采集系统中,基于单片机的中低端控制芯片功能较弱,逐渐被DSP和
[嵌入式]
一种基于<font color='red'>FPGA</font>的诱发电位仪<font color='red'>系统</font>研究与设计
测试系统数字稳压电源的实现
  引 言   直流稳压电源是一种比较常见的电子设备,一直被广泛地应用在电子电路、实验教学、科学研究等诸多领域。数字稳压电源是用脉宽调制波(PWM)来控制MOS管等开关器件的开通和关闭,从而实现电压电流的稳定输出。数字稳压电源还具备自诊断功能,能实现过压过流保护、故障警告等。   通过对所需求电源的分析,结合嵌入式控制技术,提出了一种基于S3C2440的测试系统数字稳压电源解决方案,以及实现该方案所采用的方法。该系统基于ARM 控制技术,对数据进行采样,运用适当的算法进行电压调节和电路保护,以达到为测试系统提供稳压电源的目的。设计的系统经过实际应用,所提供的电源稳定可靠,满足芯片测试所需电源的要求。在此给出了系统的硬件构架和软
[单片机]
<font color='red'>测试</font><font color='red'>系统</font><font color='red'>数字</font>稳压电源的实现
应用CPLD实现交通控制系统芯片设计
    摘要: 介绍可编程逻辑器件的结构和开发软件MAX+PLUSII主要特点,以交通控制系统电路芯片设计为例,叙述自顶向下的设计方法。     关键词: FLEX10K 可编程逻辑器件 自顶向下 集成电路的发展经历了从小规模、中规模、大规模和超大规模集成的过程,但随着科学技术的发展,许多特定功能的专用集成电路(ASIC)应用日益广泛,用户迫切希望根据自身设计要求自行构造逻辑功能的数字电路。复杂可编程逻辑器件CPLD(Complex Programmable Logic Devices)顺应了这一新的需要。它能将大量逻辑功能集成于1个芯片中,其规模可达几十万或上百门以上。用CPLD开发的数字系统个有容量
[传感技术]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved