EDA技术及其创新实践(Verilog HDL版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.9 硬件测试技术

进入21世纪,集成电路技术飞速发展,推动了半导体存储、微处理器等相关技术的飞速发展,CPLD/FPGA也在其列。CPLD、FPGA和ASIC的规模和复杂程度同步增加。在CPLD/FPGA应用中,测试显得越来越重要。由于其技术本身的复杂性,测试也分多个部分:在“软”的方面,逻辑设计的正确性需要验证,这不仅在功能这一级上,对于具体的CPLD/FPGA还要考虑种种内部或I/O上的时延特性;在“硬”的方面,首先在PCB板级需要测试引脚的连接问题,其次是I/O的功能也需要专门的测试。

1.内部逻辑测试

对于CPLD/FPGA的内部逻辑测试是应用设计可靠性的重要保证。由于设计的复杂性,内部逻辑测试面临越来越多的问题。设计者通常不可能考虑得很周全,这就需要在设计时加入用于测试的部分逻辑,即进行可测性设计(DFT,Design For Test),在设计完成后用来测试关键逻辑。

在ASIC设计中的扫描寄存器,是可测性设计的一种,原理是把ASIC中关键逻辑部分的普通寄存器用测试扫描寄存器来代替,在测试中可以动态地测试、分析设计中的寄存器所处的状态,甚至对某个寄存器加以激励信号,改变该寄存器的状态。

有的CPLD/FPGA厂商提供一种技术,在可编程逻辑器件中嵌入某种逻辑功能模块,与EDA工具软件相配合提供一种嵌入式逻辑分析仪,帮助测试工程师发现内部逻辑问题。Altera的SignalTapII技术是代表之一(将在第4章中介绍)。

在内部逻辑测试时,还会涉及测试的覆盖率问题,对于小型逻辑电路,逻辑测试的覆盖率可以很高,甚至达到100%。可是对于一个复杂数字系统设计,内部逻辑覆盖率不可能达到100%,这就必须寻求别的更有效的方法来解决。

2.JTAG边界扫描测试

在20世纪80年代,联合测试行动组(JTAG,Joint Test Action Group)开发了IEEE1149.1—1990边界扫描测试技术规范。该规范提供了有效测试引线间隔致密的电路板上集成电路芯片的能力。大多数的CPLD/FPGA厂家的器件遵守IEEE规范,并为输入引脚和输出引脚以及专用配置引脚提供了边界扫描测试(BST,Board Scan Test)的能力。

边界扫描测试标准IEEE1149.1 BST的结构,即当器件工作在JTAG BST模式时,使用四个I/O引脚和一个可选引脚TRST作为JTAG引脚。四个I/O引脚是:TDI、TDO、TMS和TCK。表1-1概括了这些引脚的功能。

其实,现在FPGA和CPLD上的JTAG端口多数情况下被用来作为编程下载口,或其他信息通信口,如内部存储器通信口或嵌入式逻辑分析仪的数据通信口等。

表1-1 边界扫描IO引脚功能