1 引言
FPGA的出现大大缩短了集成电路设计的周期,使产品上市的时间大大缩短,并减少了设计成本。FPGA的应用越来越广泛,并且其市场份额也越来越大。但是逐渐扩大的芯片规模和更加复杂的芯片结构,给测试带来了越来越大的困难,测试成本大大增加,如何降低测试成本是很多商家和研究者共同面对的一个问题。有关FPGA测试的研究有很多。
FPGA主要由可编程逻辑资源,可编程连线资源,可编程输入输出资源组成。其中连线资源占芯片面积的60%以上,并且随着器件规模增大,连线也越来越复杂,其出现故障的可能性很大,所以连线资源测试在FPGA测试中扮演了一个很重要的角色。芯片测试包括故障检测、故障诊断和故障冗余。故障检测只检测芯片中有没有故障,如果芯片中有故障就把此芯片扔掉;故障诊断不仅要检测芯片中是否有故障,还要确定故障的位置和类型;而故障冗余是指,对于有故障的芯片采取一定的方法使得芯片可以继续使用,而不至于浪费。可以看到,故障检测是故障诊断的基础,而故障冗余又以故障诊断为前提,在本文的设计中,故障检测及故障诊断都可以支持,只要设计好需要的测试配置就可以了。
对于连线资源测试,出现了很多种方法,大致分为三类:(1)非内建自测试方法(Non—BIST),利用专有的测试仪器对芯片进行配置并加测试向量对芯片进行测试;(2)利用芯片内部可编程逻辑资源对连线资源进行测试,这是内建自测试方法(BIST),在芯片内部通过配置可编程逻辑资源自动产生测试向量,并且对测试结果进行判断。以上两种方法都是利用FPGA的可编程特性对芯片进行测试的;(3)利用可测试设计方便芯片进行测试,通过一定的硬件消耗,在芯片内部加上一定的辅助电路,使得测试比较方便、快速。本文提出的方法属于第三类方法。
与ASIC测试不同,FPGA测试需要将测试需要的配置下载到芯片中,然后加测试向量对芯片进行测试,其测试时间主要由编程下载的时间来决定,所以编程下载时间决定了测试的成本,很多研究者通过减少测试配置数目来减少测试时间,从而降低测试成本。
本文的出发点不是通过减少测试配置数目来减少测试时问,而是从另外一个角度对测试开关盒连线资源时间的减少进行了研究。通过一定的硬件消耗大大减少了编程下载的时间,降低了测试成本。
2 基于SRAM的FPGA结构简介