基于 FPGA的查找表的一种测试方法
A Test Approach for Look-Up Table Based FPGAs
-
摘要: 现场可编程门阵列是可以经过配置后实现不同数字电路的数字设备。 FPGA可以再配置,而且这使得它适用于VLSI芯片的原型成型和硬件仿真,以及复杂数字系统的制造。特别地,FPGA适用于这样一些系统的原型,即其正确操作对于评价新型体系结构是必要的。在这种情况下,有必要在设计期间改变新的体系结构,而且这需要对FPGA再配置若干次。但是,如果频繁地对同一FPGA进行再配置,则使其很容易出错。 FPGA测试对于保障这些设备的可靠使用是非常重要的。在已经出版的文献中,不同方面的FPGA测试都已经得到考虑。比如在某些文献中就考虑了LE(即逻辑部件)。用于查找表LUT(Look up Table,简称LUT)/RAM测试的算法已经在一些文献中有所介绍。本文仅考虑LE的测试,但不涉及SRAM的互连或配置。 LE测试的不同方法可以分成三类: 一是使用 I/O腿把测试向量应用到LE,并得到测试结果。把I/O腿用于测试减少了其用于正常操作的数量,而且增加了PCB(印制版)制图的复杂度。 二是提出了使用 JTAG的方法。在这种方法中,JTAG腿用作应用测试向量和得到测试结果的接口。一些FPGA厂商不给出JTAG实现的细节信息,这使得JTAG方法不适用于许多种FPGA。 三是一个 BIST体系结构就可以测试全部的LE。我们的FPGA测试方法就属于此类。 然而,我们的方法测试一个 FPGA使用的再配置较少。关于此类以往的方法都是通过两个阶段来测试一个FPGA。在第一个阶段,一些LE包含着CUT,而且其他的LE包含着BIST体系结构。在这个阶段只有CUT的LE得到了测试。在第二个阶段,CUT和BIST进行交换。因此,那些在第一个阶段没有得到测试的LE在第二个阶段得到了测试。 我们提出了一种方法,它可以消除第二个阶段的再配置。在我们的方法中,虽然 TPG为CUT生成了测试向量,但是配置成TPG的LE可以进行自测试。因此,TPG和CUT的交换不再需要了,而且配置的数量减少了50%。 我们测试 LE有两个步骤:第一步是为LUT的测试设计一套配置。在第二步中,我们对LE的非LUT部分做同样的事情。对于LUT的测试来说,我们使用BIST体系结构。TPG和CUT同时进行测试,因此,重复进行配置就没有必要了。对于LE非LUT部分的测试来说,我们有一个类似于上述第三类的方案,其中BIST测试FPGA的LE,而这些LE组成了TPG且CUT进行了交换。重复进行配置是没有意义的,因为我们仅仅用两次配置测试LE的非LUT部分,这使得配置的总数达到4个。对于一个具有4输入LUT的FPGA来说,这与LUT测试需要8次配置形成了鲜明的对比。Abstract: This paper describes a test architecture for minimum number of test configurations in test of FPGA (Field Programmable Gate Array) LUTs (Look Up Tables). The test architecture includes a TPG (TestPattern Generator) that is tested while it is generating test data for LEs (Logic Elements) that form the CUT (Circuit Under Test). This scheme eliminates the need for switching LEs between CUT, TPG and ORA (Output Response Analyzer) and having to perform many more reconfigurations of the FPGA. An external ORA locates faults of the FPGA under test. In addition to the LUTs, a scheme is presented for testing other parts of LEs. Compared with other methods, the presented scheme uses the least number of reconfigurations of an FPGA for its LUT testing.
下载: