首页 百科知识 /器件的测试技术

/器件的测试技术

时间:2022-10-26 百科知识 版权反馈
【摘要】:FPGA/CPLD器件的内部逻辑测试是为了保证设计的正确性和可靠性而进行的。指令寄存器用于控制数据寄存器的访问及测试操作。上电后,TAP控制器处于复位状态,指令寄存器初始化,BST电路无效,器件正常工作。BYPASS模式是TAP控制器缺省的测试数据的串行移位模式,数据信号在TCK上升沿进入,通过Bypass寄存器,在TCK下降沿输出。SAMPLE/PRELOAD模式用于在不中断器件正常工作状态的情况下捕获器件内部数据。

2.5 FPGA/CPLD器件的测试技术

在FPGA/CPLD器件的应用技术中,FPGA/CPLD器件的测试是很重要的一个方面,测试包括多个部分,如逻辑设计的正确性验证、引脚的连接、I/O功能的测试等。

2.5.1 内部逻辑测试

FPGA/CPLD器件的内部逻辑测试是为了保证设计的正确性和可靠性而进行的。由于设计时总有可能考虑不周,故在设计完成后,必须经过测试,而为了对复杂逻辑进行测试,在设计时就必须考虑用于测试的逻辑电路,即可测性设计(design for test,DFT)。

可测性设计可以通过硬件电路来实现,如ASIC设计中的扫描寄存器,测试时可把ASIC中的关键逻辑部分用测试扫描寄存器来代替,从而对其逻辑的正确性进行分析。而在FPGA/CPLD器件中采用这种方式,有其特殊性,也即如何在可编程逻辑中设置这些扫描寄存器。

有的FPGA/CPLD器件产品采取软硬结合的方法,在FPGA/CPLD器件内部嵌入某种逻辑,再与EDA软件相配合,可变成嵌入式逻辑分析仪,帮助设计人员完成测试。

当然,设计人员也可以自己利用FPGA/CPLD器件来设计测试逻辑,也即用软件方式来完成测试逻辑的设计,但这需要有经验,也很费时。

在内部逻辑测试时,应注意测试的覆盖率,覆盖率越高越好,当不能保证必要的覆盖率时,就需要采取别的办法。

2.5.2 JTAG边界测试技术

JTAG边界测试技术是20世纪80年代由联合行动测试组(Joint Test Action Group,JTAG)开发的IEEE 1149.1—1990规范中定义的测试技术,是一种边界扫描测试(board scan test,BST)方法,该方法提供了一个串行扫描路径,能够捕获器件中核心逻辑的内容,也可测试器件引脚之间的连接情况。

该规范简化了测试程序,受到了用户的热烈欢迎,主流的FPGA/CPLD产品都支持它。

IEEE 1149.1—1990规范中定义了5个引脚用于JTAG边界测试,引脚定义如下。

TCK(test clock input):测试时钟输入引脚,作为BST信号的时钟信号。

TDI(test data input):测试信号输入引脚,测试指令和测试数据在TCK上升沿到来时输入BST。

TDO(test data output):测试信号输出引脚,测试指令和测试数据在TCK下降沿到来时从BST输出。

TMS(test mode select):测试模式选择引脚,控制信号由此输入,负责TAP控制器的转换。

TRST(test reset input):测试复位输入引脚,可选,在低电平时有效。

为了实现边界扫描测试,芯片内还必须有BST电路,JTAG BST电路由TAP控制器和寄存器组成,内部结构如图2.5.1所示。

TAP控制器是一个16位的状态机,它的作用是接收TCK、TMS、TRST输入的信号,产生UPDATEIR、CLOCKIR、SHIFTIR、UPDATEDR、CLOCKDR、SHIFTDR等控制信号,控制内部寄存器组完成指定的操作。

内部寄存器组包括以下寄存器。

(1)指令寄存器(instruction register)。指令寄存器用于控制数据寄存器的访问及测试操作。指令寄存器接收TAP控制器产生的UPDATEIR、CLOCKIR、SHIFTIR信号,产生控制指令经译码器输出给数据寄存器组。

(2)旁路寄存器(bypass register)。旁路寄存器是个1位的寄存器,用于TDI引脚和TDO引脚之间的旁路通道。

(3)边界扫描寄存器(board scan register)。边界扫描寄存器是一个串行移位寄存器,由所有边界扫描单元构成,利用TDI引脚作输入,TDO引脚作输出。设计者可以用它来测试外部引脚的连接,也可以在器件运行时利用它捕获内部数据。

(4)器件ID寄存器。

img112

图2.5.1 JTAG BST电路内部结构图

(5)ISP/ICR寄存器。

(6)其他寄存器。

上电后,TAP控制器处于复位状态,指令寄存器初始化,BST电路无效,器件正常工作。利用TMS引脚输入控制信号,TAP控制器可完成状态转换,当TAP控制器前进到SHIFT-IR状态时,由TDI输入相应指令,进入TAP控制器的相应命令模式,并以BYPASS、EXTEST、SAMPLE/PRELOAD 3种模式之一进行测试数据的串行移位。TAP控制器这三种命令模式的含义如下。

(1)BYPASS模式。BYPASS模式是TAP控制器缺省的测试数据的串行移位模式,数据信号在TCK上升沿进入,通过Bypass寄存器,在TCK下降沿输出。

(2)EXTEST模式。EXTEST模式用于器件外部引脚的测试。

(3)SAMPLE/PRELOAD模式。SAMPLE/PRELOAD模式用于在不中断器件正常工作状态的情况下捕获器件内部数据。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈