在对一个电路产品进行测试时,要用特定的一系列输入信号以一定的顺序加在被测电路的输入端,观察其输出端的输出结果。如果被测电路的输出结果与正常电路的输出结果相同,认为被测电路是合格的;如果二者输出结果不同则认为被测电路不合格。
  图7.2所示的被测电路中,作为测试用的输入信号, 在输入端 a, b, c, d上,分别加上信号 '0', '1', '1', '1', 即施加输入向量,记为x1 = (0, 1, 1, 1)。在正常情况下,其输出端z的输出值应为'1'。如果在输入端加上输入向量x2 = (0, 0, 1, 1), 则在正常情况下,其输出端z的输出值应为'0'。一般情况下,输出信号也组成一个向量, 本例中 z = (1), z2 = (0)。
图7.2 一个被测逻辑电路


  测试时加在电路各输入端的向量称为测试向量。对应于每个测试向量的正常电路的输出向量称为无故障输出向量。
  有了测试向量和对应的无故障输出向量,我们就可以据此测试并判断电路有无故障。于是由测试向量和无故障输出向量组成一个测试(Test),即
   T1 = { x1 ; z1} = {(0, 1, 1, 1) ; (1)}
   T2 = { x2 ; z2} = {(0, 0, 1, 1) ; (0)}
  有时候,也单把测试向量说成一个测试码:
   T1 = {(0, 1, 1, 1)}
   T2 = {(0, 0, 1, 1)}

  
假设图7.2的电路中,信号线b上有一个故障s-a-1,即其值固定为1。这时,如果分别把输入向量x1 和x2 加在电路上,则其实际输出均为1。可见,对于输入向量x1 ,其实际结果与无故障输出结果相同,不能判断是否有故障bs-a-1 。而对于输入向量x2 ,其实际结果与无故障输出结果不同,因而可以判断有故障bs-a-1 。不难理解,输入向量x1和 x2 都可以检测故障as-a-1

  
通常,要测出所有故障,需要多个测试向量,称为测试集(Test Set)。
   S = {T1, T2, ... Tk }

 
 在组合电路中,每个测试向量唯一决定一个无故障输出向量,因而每个测试向量都可以是一个测试。显然,图7.2所示的电路最多可以有16个测试。

   T1 = {(0, 1, 1, 1) ; (1)}     T2 = {(0, 0, 1, 1) ; (0)}
   T3 = {(0, 0, 0, 0) ; (0)}     T4 = {(0, 0, 0, 1) ; (1)}
   T5 = {(0, 0, 1, 0) ; (0)}     T6 = {(0, 0, 1, 1) ; (0)}
   T7 = {(0, 1, 0, 0) ; (0)}     T8 = {(0, 1, 0, 1) ; (1)}
   T9 = {(0, 1, 1, 0) ; (0)}     T10 = {(1, 0, 0, 1) ; (1)}
   T11 = {(1, 0, 1, 0) ; (0)}    T12 = {(1, 0, 1, 1) ; (0)}
   T13 = {(1, 1, 0, 0) ; (1)}    T14 = {(1, 1, 0, 1) ; (1)}
   T15 = {(1, 1, 1, 0) ; (1)}    T16 = {(1, 1, 1, 1) ; (1)}