专利名称:用于表征电路板测试覆盖率的方法和设备的制作方法
技术领域:
本发明一般地涉及用于表征电路板测试覆盖率的方法和设备。
经过最近十年,电路板已经向受限制访问的方向演变了。事实上,可以预料的是,可访问的节点少于20%的电路板将很快变得普遍起来。一些引发访问限制的因素包括●逐渐增加的电路板密度(器件/平方厘米逐渐增加)●电路板版图中精细的线路和空间几何结构(即,更小的探测目标)●间距密度逐渐增加的栅状阵列器件●需要精确版图而不提供探测目标的高频信号
●比任何测试设备上可以使用的最大数目大几倍的电路板节点计数上述变化已经使得对电路板测试覆盖率“旧”模型的应用至少变得困难了,并且在很多情形下没有意义。
电路板测试覆盖率“旧”模型的有用性也受到新的以及完全不同的测试方法(例如,自动光学检测(AOI,Automated Optical Inspection)和自动X射线检测(AXI,Automated X-ray Inspection))的出现的影响。很多新的测试方法非常擅长于对特定缺陷的测试,但是却在它们所能测试的缺陷数目方面受到限制。因此,越来越常见的是,认为进行了有效测试的器件是被充分测试的器件的假设变得错误了。结果是,电路板常常进行不同的测试过程,这些测试过程组合起来,定义了用于特定电路板的“测试组合”(test suite)。
因为表征电路板测试覆盖率的上述情况,所以需要新的用于表征电路板测试覆盖率的方法和设备。
“电路板测试覆盖率”(或者简单称“覆盖率”)是对测试组合的质量的指示。
“缺陷性质”是任何不可接受地偏离标准的性质。缺陷性质包括,但不限于●开路的焊点●焊料不够、过多或形状不规整的焊点(可能有或没有电学表现)●由过多的焊料、弯曲的管脚或器件位置不正造成的短路●坏死的器件(例如,被静电放电毁坏的集成电路,或破损的电阻器)●不正确放置的元件●丢失的元件●被旋转180度的极化元件●没有对齐的元件(一般是横向位移)通过执行“测试”,电路板可以被测试以找到潜在的缺陷性质。如在这里所定义的那样,测试是任意复杂性的试验,如果元件(或元件集合)和它们相关联的连接的被测试的性质都是可以接受的,那么测试将能通过。如果任何被测试的性质是不可接受的,测试可能失败。简单的测试可能测量单个电阻的值。复杂的测试可能测试很多元件之间数以千计的连接。“测试组合”是一个测试或多个测试的组合,它们的集合被设计用于充分地测试电路板,以使电路板在现场中可以执行它预定的功能。
用于表征电路板测试覆盖率的方法过去,测试工程师一般会问道“测试失败时意味着什么?”但是,这个问题常常由于与不曾预料的缺陷的相互作用,或者甚至是测试本身的鲁棒性而变得模糊。例如,使用在线(In-Circuit)测试对简单的数字器件进行测试时,测试可能由于很多原因而失败,这包括●这是错误的器件;●在一个或多个管脚上有开路的焊点;●器件坏死;或者●上游器件因缺陷被不适当地禁止对于表征电路板测试覆盖率,询问“测试通过时意味着什么?”显得更有意义。例如,如果通过了简单的电阻测量,则可以知道电阻存在,正发挥功能,位于正确的阻值区间内,并且具有既非开路又非短路的连接。
图1图示了用于表征电路板测试覆盖率的方法100。方法100开始于对电路板潜在的缺陷性质的列举102,而不考虑这些潜在的缺陷性质可能怎样被测试。对于每个所列举的潜在的缺陷性质,产生一个性质分数104。每一个性质分数指示测试组合是否对潜在的缺陷性质进行测试。然后,在106,性质分数被根据一个加权结构组合,表征测试组合的电路板测试覆盖率。
潜在的缺陷性质通过对电路板描述信息的解析,可以列举电路板潜在的缺陷性质,这些信息包括但不限于拓扑数据(包括XY位置数据)、网表(netlist)、材料清单和/或计算机辅助设计(CAD)数据。
电路板潜在的几个缺陷性质共同构成了“缺陷域(defectiveuniverse)”。图2图示了这样的缺陷域200,以及覆盖缺陷域200的多个测试设备(测试设备A、测试设备B和测试设备C)的维恩图(VENNdiagram)。尽管图2图示了测试设备的维恩图,但是构成缺陷域200的潜在的缺陷性质可以(一般地应该)被列举,而不用考虑潜在的缺陷性质可能怎样被测试。
对于电路板,存在很多可以被列举的潜在的缺陷性质。在图1方法的一个实施例中,潜在的缺陷性质被分组为“元件性质”和“连接性质”。这两组中的性质被认为占到了电路板潜在的缺陷性质的90%以上。
元件和连接的性质还可以再细分为“基础性质”(fundamentalproperty)和“质量性质”(qualitative property)。基础性质是直接影响电路板的工作的性质。质量性质可能不直接或立即影响电路板工作,但却具有迟早在某时产生作用的潜在性(即,作为隐含的缺陷),或指示了制造过程的问题,这些问题应该在恶化到影响基础性质之前被解决。
元件性质如这里所定义的那样,“元件”是置于电路板上的任何物体,例如,无源元件(例如,电阻器或电感器)、集成电路(IC)、接线器、散热装置、机械提取器(mechanical extractor)、条形码标签、射频干扰(RFI)罩、多芯片模块(MCM)、电阻器组等。基本上,列在电路板材料清单中的任何项目都是元件(尽管大多数元件将采取电子器件的形式)。但是,需要注意的是,MCM或电阻器组的内部元件一般不算作元件。虽然上述所列出的元件都是有形的,但是元件也可以是无形的(例如,快闪存储器或复杂可编程逻辑器件(CPLD)的下载,或器件簇的功能测试)。
在图1方法的一个实施例中,元件的基础性质包括存在性、正确性、方向性和活跃度。在这些当中,存在性是最关键的,因为如果缺少元件,那么其他3项也就不能够被评估了。
需要注意的是,器件的存在性测试有时候会暗示器件是正确的。但是,存在性和正确性最好作为两个截然不同的性质来列举,以使得在表征电路板测试覆盖率时,不会做出关于元件正确性的不正确的假设。例如,可以从电阻测量测试确定电阻性元件是否存在。但是,相同的测试仅能部分地评估正确的电阻器是否存在(例如,因为电阻测量测试不能确定电阻器是碳复合电阻、线绕电阻、10瓦特的电阻还是0.1瓦特的电阻)。
在不能完全确定元件存在时,存在性可以被判定为“被部分测试的”。例如,对于连接在VCC和数字输入管脚之间的上拉(pull-up)电阻,边界扫描测试可以确认该管脚保持在高电平。但是,这种状态在管脚断开或悬浮时也可能发生。
存在性质的子集是“非存在性质”。和期望确定电路板的元件是否进行了存在性测试相同,在某些情形下希望确定元件不在电路板上(例如,给定的电路板没有加载可选元件的情形)。
确定测试组合是否对元件正确性进行了测试仅能在确定了测试组合对元件存在性进行测试之后(或同时)进行。对元件正确性进行测试的方法包括使用自动光学探测(AOI)系统读取印刷在元件上的识别(ID)号码,或者执行边界扫描测试来读取被编程进IC的ID码。
在不能完全确定元件正确的时候,正确性可以被判定为“被部分测试的”。例如,考虑前面所讨论的电阻测量测试。
另一个基础的元件性质是方向性。一般地说,方向性缺陷表现为元件发生90度增量的旋转错误。测试组合有很多方法可以测试方向性缺陷。例如,AOI系统可以寻找IC上的定位槽。自动X光探测(AXI)系统可以寻找极化的片状电容器的方向。在线测试(ICT)系统可以确认二极管的极性。
元件的活跃度性质可以包括和所期望的一样多的因素。在图1方法的一个实施例中,活跃度意味着总体上是有功能的,而不是意味着元件执行得好得足以完成任何特定的目的。例如,如果通过边界扫描互连测试,那么参加测试的元件肯定是相当活跃的(即,它们的测试访问端口(TAP)是好的,它们的TAP控制器在工作,它们的I/O管脚在工作等)。如果一个7400四-与非门(NAND)中的一个NAND门通过了测试,则IC活跃的估计也可以被作出。同样,电阻值的成功测量指示了电阻器总体上有功能(例如,电阻器没有破损,内部没有开路或短路)。
在图1方法的一个优选实施例中,所列举的元件的唯一的质量性质是元件的对齐性。对齐性缺陷包括相对小距离的横向位移,少许角度的旋转,或者“横列定向(bill-boarding)”(器件被焊接到适当的位置上,但是却侧放着而不是平放在电路板上)。对齐性与定向性不同的是,对齐性缺陷可能不会导致立即的故障,但却可能指示了恶化的工艺问题或未来的可靠性问题。
在这里有时上述元件性质总地被称为PCOLA性质(即,存在性、正确性、方向性、活跃度和对齐性)。图1的方法最好列举电路板的所有这些潜在的缺陷性质,可能的话还有其他缺陷性质。但是,列举少于所有这些性质和/或不同的性质属于本发明所公开的范围。而且,PCOLA性质集合中的不同的性质可以对电路板上的不同的元件和/或元件类型进行列举。
无形元件性质虽然已经引入了“无形元件”的这一概念,但是无形元件性质还是值得进一步地讨论的。无形元件通常通过添加一个或多个动作而与有形元件相联系。在快闪存储器或CPLD下载的背景下,动作是在电路板上编程的过程,该过程将位值加载到相关的有形元件中。一旦得到确认,无形元件以及它们的性质可以被当作用于表征电路板测试覆盖率目的的电路板的“元件空间”的一部分来对待。很多在上文概括的元件性质和连接性质对于无形元件是不适用的。例如,对于快闪存储器的下载仅有存在性和正确性(即,编程存在性和编程正确性)适用。
依元件类型的性质尽管PCOLA元件性质被认为占到了元件潜在的缺陷性质的90%或更多,但是这些性质中的一些对于特定元件类型可能是没有意义的。如果不需要测试一种性质,那么就没有必要去列举它。因此,图1的方法的一个实施例,对于不同的元件类型列举了不同的潜在的缺陷性质。
依封装类型的件质有时,可能不知道元件的类型,但识别封装的类型却是可能的。在这种情形下,图1的方法可以针对不同封装类型列举不同的潜在的缺陷性质(因为元件类型常能从封装类型中推测出来)。
连接性质“连接”(一般地)是指怎样将元件电连接到电路板。结果是,连接在元件管脚和电路板节点焊盘之间形成。为本发明公开的目的,“引线”一词一般被用来指代把元件连接到电路板的任何方式,这包括管脚、导线、球点、柱点和其他接触。焊接的和压配(press-fit)的元件都包含连接。特定的元件可以有零个或更多的到电路板的连接。例如,电阻器仅有两个连接,IC可能有数百个连接,而散热装置则可能没有连接。
连接的一个特殊的例子是光连接(例如,在光发射和光接收器件之间的连接,或者在光发射/接收器件和光连接器或光缆之间的连接)。光连接尽管不是电连接,但却被用来传输信号。因此,在依靠光纤缆线连接光电发射器到光电接收器的电路板上,发射器、接收器和光缆都是元件,其中,在光缆每一端都有连接。
下面讨论的前提是,裸电路板在有价值的元件被安装在它们上之前是“已知良好的”。因此,可以假设在安装元件的时刻,电路板没有任何内在的节点微缺陷(例如,短路、开路或例如不适当的特征阻抗的质量项)。
在图1方法的实施例中,连接的基础性质包括短路、开路和质量。
短路是一种非期望的连接。短路一般由例如弯曲的管脚或过多的焊料的附着缺陷造成的。结果是,短路可以使用基于临近度的模型(proximity-based model)被列举(见图3)。如果两个管脚(例如,管脚A、B、C、D、E)位于所指定的“短路半径,r”之内,那么对于它们,存在被不适当地连接的可能,在两个管脚之间的短路应该作为电路板潜在的缺陷性质被列举。使用1)每个管脚的XY位置,2)安装有元件的电路板的一侧(顶部或底部),以及3)关于元件300是否是表面贴装还是通孔安装的信息,可以进行基于临近度的短路的列举。
因为短路是两个管脚的自反性质(即,如果管脚A与管脚B短路,那么管脚B与管脚A短路),那么通过只针对两个管脚之一列举短路,可以得到测试组合的覆盖率的最好的评价。
在列举短路时,可能的是,在短路半径内的两个管脚将由电路板的版图连接到同一节点。结果是,可能看上去在这两个管脚之间不存在潜在的缺陷短路性质。但是,弯曲的管脚或过多的焊料可能依然存在,所以管脚可能以一种不适当的方式被短路。结果是,对于这些管脚,短路性质仍然能被列举。仅仅一部分测试设备能对这样的短路性质进行测试,所识别的缺陷可能是良性的。但是,这些缺陷可能对可靠性问题或工艺问题提出警告。
过去,能访问电路板全部节点的电测试设备将测试每一个节点与所有其他节点的电气独立性(除非存在为什么该节点可以被适当地短路的理由)。尽管全面,但这些测试设备还是对许多非常不可能的短路进行了测试。因此,宝贵的测试时间被浪费了。既然那些到电路板节点的电访问已经变得受到限制,就出现了检测短路的新技术。许多这样的技术关注电路板节点的子集,这些子集一般是(但并不一定是)不相交的。通过使用基于临近度的模型列举潜在的短路,图1的方法能更好地表征这些新技术的短路覆盖率。
开路(在这里有时称为“接点开路”)指在连接中缺少连续性。开路一般对以下情形是完全的,例如,当在管脚和它被假设连接到的电路板节点焊盘之间存在无限大的直流(DC)阻抗时。存在一类“有阻性”的连接,这些连接并非真正的开路,该开路在测试期间可能是电气上不可见的。为了本说明的目的,基于这些有阻性连接的潜在的缺陷作为质量连接性质进行列举。
图1方法的优选实施例中,所列举的连接的唯一的质量性质是“接点质量”,或简称“质量”。接点质量包括如焊料过多、焊料不足、浸润性差、空隙等缺陷。一般地,这些缺陷不会导致立即的(或永久的)开路或短路。但是,它们指示了需要解决的工艺问题和可靠性问题。例如,焊料不足可能在电路板的生命后期导致开路接点。在相邻管脚上过多的焊料可能增加管脚间的电容值,以致损害它们的高速信号特性。不恰当的浸润或空隙可能导致连接中的电阻值增加。如恰当形成但却破损的接点的某些质量缺陷非常难以测试。但是,这些缺陷应该在列举电路板的潜在的缺陷性质中被考虑。如果没有测试设备能够对潜在的缺陷性质进行测试,那么最好是在电路板测试覆盖率被评价时揭示这一情况。
关于开路和短路,需要注意的是,光连接一般容易开路,但是短路将仅在其他光电器件之间是可能的,就如同如果光缆被交换时可能发生的那样。
在这里有时,上述连接性质被总称为SOQ性质(即,短路、开路和质量)。图1的方法最好列举电路板所有这些潜在的缺陷性质,以及其他可能的潜在的缺陷性质。但是,列举少于所以这些性质和/或不同的性质属于本发明所公开的范围。而且,对于在电路板上的不同的元件和/或元件类型,可以列举SOQ性质集合中不同的某些性质。
性质评分根据图1的方法,对于所列举的每一个潜在的缺陷性质,产生一个性质分数。每一个性质分数指示了测试组合是否对一个潜在的缺陷性质进行了测试。
在简单的评分系统中,对一个潜在的缺陷性质要么进行了测试,要么没有。但是,这样的简单评分系统常常不能揭示不同测试组合所提供的测试覆盖率中足够的变化。在图1的方法的一个实施例中,对潜在的缺陷性质进行测试的测试组合按如下进行评分完全测试的(Fully Tested)、部分测试的(Partially Tested)或未测试的(Untested)。为了更容易组合这些分数,它们可以被转化为数字等价物,如未测试的=0部分测试的=0.5完全测试的=1.0如同在本说明后面将更详细地解释那样,如果性质由在测试组合中两个或更多的测试进行测试,对于同一个潜在的缺陷性质能产生两个或更多性质分数。在这样的例子中,不应当假设两个部分测试的分数相加产生一个完全测试的分数。这样的相加仅能通过分析两个测试的每一个所测试的对象的范围来实现。因此,缺省地,使用MAX()函数组合两个性质分数是更安全的。因此,例如,两个部分测试分数400,402(图4)组合产生了部分测试的分数404。图4图示了对应于同一元件的ICT和AOI测试的PCOLA分数的组合。
元件评分如果PCOLA性质是已经被列举的性质,那么对于给定元件(d)的性质分数(dps),可以被组合来产生如下的“原始元件分数”(RDS)RDS(d)=dps(P)+dps(C)+dps(O)+dps(L)+dps(A)单独的元件分数可以被组合来产生电路板元件分数(即,测试组合的元件覆盖率的大体上的指示)。
可以对不同测试组合和同一电路板的电路板元件分数进行比较来确定每一组合为电路板所提供的相对测试覆盖率。那么,这些比较可以用来选择为电路板提供充分的测试覆盖率的测试组合。但是,需要注意的是,提供“最好的”覆盖率的测试组合可能由于执行所需的时间、执行的成本、实现的轻易性这些因素而没有被选择。电路板元件分数也可以为调整测试组合的组成的目的而进行比较。例如,如果“在现场”中发现了某缺陷,则可以要求针对这一缺陷的附加测试。
电路板元件分数也可以对给定的测试系统进行比较。对同一类型的所列举的缺陷,以这种方式可以评价测试系统在测试不同类型的电路板的能力上的鲁棒性。
连接评分如果SOQ性质是已经被列举的性质,那么对于给定连接(c)的性质分数(cps),可以被组合来产生如下的“原始连接分数”(RCS)RCS(c)=cps(S)+cps(O)+cps(Q)
单独的连接分数可以被组合来产生电路板连接分数(即,测试组合的连接覆盖率的大体上的指示)。
类似于电路板元件分数对于不同的测试组合和/或电路板可以进行比较,也可以比较电路板连接分数。
性质分数的产生性质分数源于测试组合的测试。对于每一个测试,可以确定1)该测试涉及了什么元件和连接,以及2)该元件和连接的潜在的缺陷性质被该测试测试得有多好。如下是一些示例性的用于从测试导出分数的公式。
未加电的模拟电测试如下是可以被未加电的模拟测试系统所使用的定义测试语句(Test statement)对于模拟在线(in-circuit),这是执行测量的源级测量语句(即,“电阻器”)。如果测试发生器不能写入合理的测试,那么它就在模拟在线测试中对测量语句进行注释。
器件界限(Device_ imit)被输入电路板的拓扑中的器件的公差。
测试界限(Test_limit)在测试源中指定的测试的上、下界。尽管上、下界需要被分开考虑,但为简单起见,在下面的规则中它们被合起来对待。
对于电阻器、电容器、熔丝、跳线、电感器、场效应晶体管(FET)、二极管和齐纳二极管的模拟在线测试,分数存在性(P)if(test_statement未被注释)then P=Full正确性(C)if(L>Untested)then C=Partial活跃度(L)if(test_limit<1.8*device_limit)then L=Full,else if(test_statement未被注释)then L=Partial方向性(O)if(test_type是二极管(DIODE)、齐纳二极管(ZENER)或FET)and(L>Untested)then O=Full短路(S)if(P>Untested)thenMark_Shorts_Coverage(Node_A,Node_B)
开路(JO)if(P>Untested)then器件的管脚分数JO=FullMark_Shorts_Coverage例程标记任何相邻的管脚(Node_A,Node_B)是完全测试的。这包括除目标器件外的器件上的管脚对。
对于晶体管(两个二极管测试和一个放大倍数(BETA)测试),分数存在性(P)if(BE_diode_statement未被注释)and(BC_diode_statement未被注释)then P=Full,else if((BE_diode_statement未被注释)or(BC_diode_statement未被注释))then P=Partial正确性(C)if(L>Untested)then C=Partial活跃度(L)if((BETA_test_statement未被注释)and(BETA_test_limit<1.8*BETA_device_limit))thenL=Full,else if(BETA_Test_statement未被注释)then L=Partial方向性(O)if(L>Untested)then O=Full,else if(P>Untested)then O=Full在基极、发射极和集电极接点上的短路和开路覆盖率被包括进二极管的上述测试中。
在上述评分中,需要注意的是,BE(基极/发射极)和BC(基极/集电极)测试是检测该器件存在性的PN结测试。二极管测试是被用来测试结的。也需要注意的是,BETA_test_statement测量了晶体管对于基极电流的两个不同值的电流增益。
对于元件库,包括但是不限于电阻器组,每一子(child)的分数可以被用来评估它的父(parent)。因此,存在性(P)P=<任何子的最好的存在性分数>
正确性(C)if(L>Untested)then C=Partial活跃度(L)if(children_live_tested_fully等于total_number_of_children)then L=Full,else if(children_live_tested_fully>=1)then L=Partial
方向性(O)if(L=Full)then O=Full在子器件管脚上的短路和开路覆盖率被包括进它们的子测试中。
需要注意的是,children_live_tested_fully等于分数L=Fully的子器件数目。同样的,total_number_of_children等于子器件的总数,但不包括“无测试”的子器件。“无测试”器件具有输入到电路板拓扑中的“NT”选项。
对于开关(switch)(阈值测试一可以有子测试)和电位计(有两个子测试的电阻器测试),如下规则可以在所有子测试已经根据前面所提供的规则评分后被应用存在性(P)P=<子的最好的存在性分数>
正确性(C)if(L>Untested)then C=Partial活跃度(L)if(subtest_tested_fully等于total_number_of_subtests)then L=Full,else if(subtest_tested_fully>=1)then L=Partial方向性(O)O=L在所测试的器件的管脚上的短路和开路覆盖率被包括进它们的子测试中。
对于并联网络中的电容器,其中,等效电容值是器件值的和,每一电容器被如下评估存在性(P)if(test high_limit-device_high_limit)<(test_low_limit)then P=Full短路(S)if(P>Untested)thenMark_Shorts_Coverage(Node_A,Node_B)开路(JO)if(P>Untested)then两个连接分数为JO=Full在上述公式中,连同测试系统本身预期的测试误差,test_high_limit是电容器累积公差的上限(test_low_limit正好相反)。device_high_limit是正被测试的器件的正公差,其被加到它的标称值上。Node_A和Node_B是在电容器管脚上的那些节点。
只有那些被确定用于对存在性进行测试的电容器对于接点短路和接点开路覆盖率是符合条件的。并联的电容器对于正确性、活跃度和方向性这些剩余的性质是不符合条件的。
对于旁路电容器,这一规则暗示了只有大的、低频的旁路电容器将获得存在性的分数。小的、高频的电容器对于存在性将评分为未测试的。例如1.假设C1=500nF与C2=100nF并联,二者都有10%的公差。
对于C1,660-550=110<540,于是P=Full.
对于C2,660-110=550<540,于是P=Untested.
2.考虑6个并联100nF电容器,所有都有10%的公差。
对于Cx,660-110=550>540,于是对于每一电容器P=Untested.
测试引擎测试对于器件上的每一管脚,测试引擎(TestJet)测试测量管脚和置于该器件封装上方的传感器板之间的电容值。器件的一些管脚能从测试中略去。对于每个所测试的器件,测试引擎测试评分如下存在性(P)if(at_least_one_pin_tested)then P=Full开路(JO)所有被测试的管脚分数为JO=Full在一些情形,由于访问受限,测试引擎测量是通过被直接连接到所测试器件的串联电阻而进行的。因此,串联电阻的性质被间接地测量了。该测试引擎管脚测量仅在串联电阻存在并被连接时才能通过。因此,串联电阻的存在性继承了所测试的管脚的接点开路分数(即,对于电阻器P=所测试管脚的JO分数)。类似的,电阻器每一管脚的接点开路分数是间接地由管脚的测试所测试的。串联元件的接点开路分数也继承了所测试器件接点的JO分数(即,JO=所测试管脚的JO分数)。因此,在访问受限的环境中,传统上不被认为是测试目标的器件性质也可以被测试。因此,去询问“如果测试通过意味着什么?”值得的。
极件检测极性检测测试通常包含多电容器的子测试,可以如下评分
存在性(P)if(device_test_statement未被注释)then P=Full方向性(O)if(device_test_statement未被注释)then O=Full连接检测测试连接检测测试通常包含多器件的子集,可以如下评分存在性(P)if(device_test_statement未被注释)then P=Full开路(JO)if(P>Untested)then所测试的管脚分数为JO=Full魔术测试魔术测试(magic test)是包含多器件测试的一种测试。以下的评分将依赖于由编译器为每一器件所计算的故障覆盖率数字。特定故障的值“2”意味着该故障是能够探测和诊断的。特定故障的值“1”意味着该故障仅是可探测的。
存在性(P)if(OpensDetected>=1)then P=Full正确性(C)if(L>Untested)then C=Partial活跃度(L)if((VeryHigh>=1)and(VeryLow>=1))then L=Partial方向性(O)if((test_type is FET)and(L>Untested))then O=Partial数字在线测试数字在线测试(不包括边界扫描)是从已准备的测试向量库中提取的,并经常根据电路板拓扑进行修正。对于数字在线测试,器件和连接性质可以评分如下存在性(P)if(pin_outputs_toggled>0)then P=Full正确性(C)if(pin_outputs_toggled>0)then C=Partial方向性(O)if(pin_outputs_toggled>0)then O=Full活跃度(L)if(pin_outputs_toggled>0)then L=Full接点开路(JO)if(pin_is_output)and(pin_toggled)then JO=Full,else if((pin_outputs_toggled>0)and(pin_is_input)and(pin_toggled))then JO=Partial
在上述公式中,pin_outputs_toggled是被测试的用于接收高、低信号的输出(或双向)管脚的数目。
输入管脚开路最好从不被评分为好于Partial,这是由于1)故障模拟模式非常稀少,2)一些测试向量可能由于拓扑冲突(例如,打结的管脚)而已经被抛弃了。
边界扫描测试边界扫描在线测试可以像简单的数字在线测试来进行评分(见上文)。
所有边界扫描测试都包括测试访问端口(TAP)完整性测试,TAP完整性测试确保了边界扫描控制连接和链(chain)配线正在工作。因此,在后续部分中覆盖的每一测试将覆盖所有与这一测试基本结构相关的缺陷。对于边界扫描链中的每一器件,给定如下的分数存在性(P)P=Full正确性(C)if(器件具有标识码(ID Code))then C=Full,else C=Partial方向性(O)O=Full活跃度(L)L=Full开路(JO)对于TCK,TMS,TDI,TDO管脚,JO=Full;对于TRST*和符合性(compliance)使能管脚,JO=Partial间接的覆盖率检测所有的TAP和符合性使能管脚以得到串联元件的间接的覆盖率(参见本说明后面的“间接的器件覆盖率”)。
对于连接测试,评分如下开路(JO)对于每一被测试的管脚,JO=Full对于每一固定高/低压或维持高/低压的管脚,JO=Partial间接的覆盖率检测所有所测试的管脚以得到串联元件的间接的覆盖率。
对于互联测试,评分如下开路(JO)对于每一所测试的管脚,JO=Full对于每一固定高/低压或维持高/低压的管脚,JO=Partial短路(S)对于所有所测试的节点,Mark_Shorts_Coverage()。加电的节点应该被添加到这一列表中,因为在边界扫描节点和加电节点之间的短路也被探测到。
间接的覆盖率检测所有所测试的管脚以得到串联元件的间接的覆盖率。
对于总线测试,如下评分接点开路(JO)对于每一所测试的管脚,JO=Full;对于每一被固定高/低压或保持高/低压管脚,JO=Partial间接的覆盖率检测所有所测试的管脚以得到串联元件的间接的覆盖率。
对于加电的短路测试,如下评分短路(S)对于每一与硅节点B相关联的没有用钉固定的节点A,Mark_Shorts_Coverage(A,B)间接的覆盖率检测所有所测试的管脚以得到串联元件的间接的覆盖率。
硅钉固定测试测试了目标非边界扫描器件。对于这些测试,器件可以被给予和数字在线器件相同的评分。因此,开路(JO)对于每一用来测试目标器件管脚的边界扫描管脚,JO=<继承的目标器件管脚的JO值>
间接的覆盖率检测所有所测试的管脚以得到串联元件的间接的覆盖率。
模拟功能测试施加到器件的测试将接收PCOL和JO分数。施加到电路功能的测试可以被认为是“无形的”,并如下评分存在性(P)if(device_test_statement未被注释)then P=Full在上述情形中,device_test_statement可以采用多种形式。例如,许多模拟加电测试包含对测量子测试的调用。其他测试不包含子测试,仅进行单一的测量。因此,需要多个标准来确定测试源是否被注释了。例如,对于具有子测试的测试,编译器能寻找未被注释的“测试”语句;对于不具有子测试的测试,编译器能寻找未被注释的“测量”或“报告模拟”语句。剩余的PCOL和JO性质可以如下评分正确性(C)if(L>Untested)then C=Partial活跃度(L)if(P>Untested)then L=Partial方向性(O)if(P>Untested)then O=Full开路(JO)if(P>Untested)then对于被测试的管脚JO=Full需要注意的是,上述正确性和活跃度评分假设了测试执行了对器件功能的有意义的测量。
关于接点开路,被测试的管脚被定义为被连接到源或探测器。所以,只有子测试实际上被调用并且没有被注释,在子测试中发现的连接才应该被考虑进覆盖率中。
取样测试假设试样(coupon)测试是被很好形成的。即,制造过程被假设为在放置过程中遵循有关器件顺序的规则。对于取样测试,“样本”是被定义为实际被测试的器件。样本代表了“组分”,这是未被测试的器件。样本根据它的类型被评分,样本的组分如下评分正确性(C)<组分继承它们样本的C等级>
间接的器件覆盖率一些器件,由于访问受限,不是由测试设备直接测试,但是可以使得一些性质被间接测试(例如,当看上去无关的测试通过时,可以推导出除非非目标元件存在并被连接,否则该测试不能通过)。
如果测试资源通过如串联终端电阻器的串联元件被连接到所测试的器件,那么通过测试所测试的器件,电阻器的存在性被间接地测试。因此,存在性(P)P=<所测试器件的存在性分数>
如果测试资源通过如串联终端电阻器的串联元件被连接到所测试的器件上,那么通过测试所测试的器件,电阻器管脚的开路性质被测试。该串联元件的开路性质继承了所测试器件的开路分数。
开路(JO)JO=<所测试器件管脚的开路分数>
自动X射线检测(AXI)测试AXI系统查看电路板上密集的对象,例如导线焊点和在某些电容器内的钽嵌片(slug),其中一些可能被极化。AXI系统也能够评定接点的质量。AXI系统也能够将一组问题(例如,开路)与缺少器件或对齐性问题相关联。
开路(JO)对于每一所查看的接点,分数JO=Full存在性(P)如果器件的所有管脚都被查看并相关联,那么对于该器件,分数P=Partial短路(S)对于每一所查看的接点对,分数S=Full对齐性(A)如果器件的所有管脚都被查看并相关联,那么对于该器件,分数A=Partial接点质量(Q)对于每一所查看的接点,如果测试了不足/缺少或过多,那么分数Q=Partial;否则如果对不足/缺少和过多都进行了测试,那么分数Q=Full对于钽电容器,如果电容器被查看,分数P=Full;如果电容器的极性被查看,分数方向性(O)=Full。
加权结构有时希望根据加权结构把性质分数组合起来。在这种方式下,可以针对不同的性质,给测试覆盖率的值较多或较少的重要性。
元件性质权重如果PCOLA性质是那些已被列举的,那么一个给定元件(d)的性质分数(dps)可以根据元件性质权重(dpw)组合起来,产生如下的“原始元件分数”(RDS)RDS(d)=dps(P)*dpw(P)+dps(C)*dpw(C)+dps(O)*dpw(O)+dps(L)*dpw(L)+dps(A)*dpw(A)在上面的公式的一个实施例中,元件性质权重是加起来等于1.0的五个分数。这些分数因不同的元件类型而变化(或者因不同的单独元件——例如,当某类型中的多个元件有很多差异时)。例如,由于电阻器是非极化的,它的方向性权重可以被指定成0.0的元件性质权重。然后更多的权重可以被分给电阻器的其他性质权重。相反的情况是二极管,它的方向性可被给予更多的重要性。
对于不同的元件类型,可以如何指定权重的例子图示在图5中。注意,对于每一种元件类型,质量性质,即对齐性都被给予10%的性质权重。既然在线测试系统不能测试对齐性,那么在线测试系统(单独进行)最多能为电路板提供90%的测试覆盖率,将需要例如AOI的直观检验系统来补充完全电路板的测试覆盖率。虽然AOI测试系统也能测试存在性,正确性和方向性,但是它不能测试活跃度。所以,AOI测试系统(单独进行)不能为电路板提供100%的测试覆盖率。
注意,图5的性质权重把元件的权重的90%归于其基本性质。这90%的权重可以在元件的相关性质当中平均分配。因此,对于极化的电容器、二极管和数字IC,给予存在性、正确性、方向性和活跃度以相等的权重。然而,对非极化的对称元件,象SMT电阻器,根本不给方向性质以任何权重。
元件类型权重元件类型也可以被加权,因此在评估电路板测试覆盖率时允许给予元件类型或多或少的重要性。例如,假设一块电路板,具有故障率为100PPM(百万分之一)的1000个表面贴装的电阻器,同时具有平均管脚数为500和故障率为5000 PPM的100个数字元件。相对坏的电阻器,制造者可能更加担心坏的IC,尽管电路板上电阻器的数量是IC的10倍。给IC更多的加权会造成少量地检测IC的测试看上去比彻底检测IC的测试糟糕一些。相反,不给IC更多的加权会造成彻底检测电阻器的测试组合看上去比它们实际上要好。
分配元件类型权重的一个办法就是把电路板的元件类型故障帕累托图归一化到单位权重1.0之上。在单位权重1.0之上标准化电路板的元件类型误差的Pareto图。另一个办法就是使用均匀分布(例如,当无法得到故障的历史记录时)。
如果使用了元件类型加权,那么元件类型权重dw(t),其中t是一个元件类型,可以作为系数乘入元件的原始分数中去,如下RD(d)=dw(t)*[dps(P)*dpw(P)+dps(C)*dpw(C)+dps(O)*dpw(O)+dps(L)*dpw(L)+dps(A)*dpw(A)]封装类型权重如果已知封装类型,封装类型可以类似于元件类型被加权的方式获得加权。
总数调整加权(population adjusted weighing)在至此已公开的评分和加权系统中,比较不同电路板的电路板测试覆盖率是困难的。例如,带有一些元件和连接的电路板可能获得电路板元件分数100,但是带有成千上万元件和连接的电路板可能获得了分数20,000。乍看上去,一个人可能认为后面的电路板具有更好的测试覆盖率。然而,如果第一电路板可获得的最大分数是110,而第二电路板可获得的最大分数是30,000,很显然,第二电路板的测试覆盖率不是那么好。
为了更简单地对比电路板测试覆盖率的分数,引入两个概念。第一个是“值域(range)”。正如这里所定义的,值域规定了任何电路板可以获得的测试覆盖率的最低分数和最高分数。最好,选择值域的高端,从而不必经常借助于使用分数(fraction)就能实现评分上高度的间隔尺寸。例如,电路板元件分数的值域可能是从0到100,000,而电路板连接分数的值域可能也是0到100,000。因此,具有理想的电路板测试覆盖率的电路板会获得分数BDS=100,000,BCS=100,000。但是,因为很多电路板没有足够数量的元件和连接能够符合理想分数的条件,所以还引入了“总数调整加权”的概念。
采用总数调整加权,元件权重根据实际在电路板上的元件的总数进行调整。假如一块电路板有1000个电阻器,100个数字IC,200个电容器,没有其他元件类型。正常情况下指定给其他元件类型的权重不可能对电路板的测试覆盖率分数有所贡献,电路板的理想的分数在元件和连接的值域100,000以内将总是很好的。为针对总数重新分配元件权重,可按如下步骤进行1.令N为电路板上元件的总数量。
2.令n(t)为元件类型t(范围从1到N)的总数。
3.令dw(t)为元件类型t的元件类型权重(其中,对于全体t,对dw(t)求和=1.0)。
4.对于全体t,对n(t)*dw(t)求和,并且称其为“元件权重调节器(adjuster)”,A。这个元件权重调节器指示了在一块给定的电路板上的元件类型的总数。
5.对于给定的元件d,计算元件分数DS(d)为DS(d)=RDS(d)*Range*dw(t)/A执行上面的步骤,电路板最大可能的“电路板元件分数”将总是等于值域。然而,实际的电路板元件分数(BDS)可按如下计算BDS=对于所有的元件d,对DS(d)求和。
连接性质权重如果SOQ性质是那些已被列举的,那么一个给定连接(c)的性质分数(cps)可以根据连接性质权重(cpw)组合起来产生如下的“原始连接分数”(RCS)RCS(d)=cps(S)*cpw(S)+cps(O)*cpw(O)+cps(Q)*cpw(Q)
在上面公式的一个实施例中,连接性质权重是加起来等于1的三个分数(fraction)。这些分数可以对不同的连接类型而变化(例如,电子的相对于光子的),但不必如此。
可以选择连接性质权重来反映一个性质的重要性。例如,在今天的SMT技术中,开路比短路更加普遍,所以开路可以被更多地加权。
注意,对于给定的连接可能存在零个或者更多的短路。因此,性质权重需要根据一个给定连接可能发生的短路的总数进行调整。采用一般情况下分配给单个短路的权重(例如,0.4),并在没有短路的情况下,把该权重加到开路性质的权重上去,这样就可以完成上面的调整。如果存在一个或多个可能的短路,那么通过将一个连接的短路性质除以s,其中s是可能的短路的数量,短路的权重可以在可能的短路当中分配。这个概念在图6中图示出来。
电路板测试覆盖率图7图示了电路板测试覆盖率结果可以被报告给用户的方式。但是,需要注意的是,图7更多地是一种概念性的图示,而不一定是打算来描述特定的、可以呈现给用户的“屏幕图像”。
图7图示了作为树的根的“电路板测试覆盖率”。在本发明的一个实施例中,不存在指示电路板测试覆盖率的单一的指示或“分数”。相反,电路板测试覆盖率是由电路板元件分数和电路板连接分数的组合(即,电路板元件覆盖率和电路板连接覆盖率的指示)来表示的。电路板元件分数指示了测试组合测试电路板上所有元件的所有潜在的缺陷性质的能力。类似地,电路板连接分数指示了测试组合测试电路板上所有连接的所有潜在的缺陷性质的能力。
如果用户期望更详细地检查电路板元件覆盖率,用户可以深入研究多个单独的元件的分数(覆盖率指示)。或者(未示出),用户可以从元件覆盖率深入研究到“元件类型”,然后深入研究单独的元件。
对于每一元件,用户可以深入研究该元件的单独的性质。如果需要,如前面描述的那样,性质可以按“基础的”和“质量的”进行分组。
与用户可以更详细地检查元件覆盖率的方法相同,用户可以深入研究多个单独的连接和/或连接组(未示出)的分数(覆盖率指示)。对于每一连接,用户可以深入研究连接的单独的性质。如果适合,性质可以按“基础的”和“质量的”进行分组。
图7还图示了元件和连接之间的对应。作为该对应的结果,用户可以被提供一种选择,即深入研究元件覆盖率,然后转而查看对于特定元件(或者也许是元件类型)的连接覆盖率。
比转电路板测试覆盖率(一般意义上的)上述章节已经介绍了被设计来对测试同一电路板的两个测试组合进行测试覆盖率分数的比较的概念。图8把这一概念以用于比较两个测试组合的电路板测试覆盖率的方法800更一般地图示了。方法800从电路板潜在的缺陷性质的列举开始802,而不考虑两个测试组合中的任何一个。对于每个测试组合,该组合根据该组合是否对所列举的潜在的缺陷性质进行了测试而进行评分804。然后,806比较两个测试组合相应的分数来确定每一组合为电路板所提供的相对覆盖率。
理论最大分数至少存在两类在表征电路板测试覆盖率中有用的理论“最大分数”。这些是1)假设所有潜在的缺陷性质都是完全(Fully)测试的,而能够获得的最大分数(元件和连接);2)如果一种测试组合具有鲁棒性的,通过特定的测试系统(或者多个系统)能够获得的最大分数。
假设所有的潜在的缺陷性质都是完全测试的,而能够获得的最大分数(元件和连接),简单地说就是Max1(BDS)=for all d,Sum RDS(d);(其中,BDS=电路板元件分数;并且所有影响RDS(d)的元件性质是完全测试的)Max1(BCS)=for all c,Sum RCS(c);(其中,BCS=电路板连接分数;并且所有影响RDS(d)的连接性质是完全测试的)上述“最大分数”在确定是否存在超出测试组合的覆盖率范围的潜在的缺陷性质方面是有用的。但是,上述最大值不能指出缺陷是否超出测试组合的覆盖率范围,这是因为1)该测试组合不具有鲁棒性;或者2)对该缺陷进行测试超出了可以使用的测试系统的能力。所以,如果测试组合是具有鲁棒性的,计算出能通过特定的测试系统(或多个系统)获得的最大分数是有用的。该第二对最大分数并不假设所有影响RDS(d)和RCS(c)的性质分数是完全测试的,但是却假设给定特定的测试系统(或多个系统),每一性质分数获得了可能的最大值。因此,Max2(BDS)=for all d,Sum RDS(d);(其中,给定特定的测试系统(或多个系统),所有影响RDS(d)的元件性质被设定为它们的最大值。)Max2(BCS)=for all c,Sum RCS(c);(其中,给定特定的测试系统(或多个系统),所有影响RCS(c)的元件性质被设定为它们的最大值。)图9图示了任意的电阻器相对于测试技术的最大理论元件PCOLA分数,图10图示了任意的数字器件相对于测试技术的最大理论元件PCOLA分数。如果存在给定的测试系统能在任何时候将讨论中的特定元件类型(例如,图9中的电阻器和图10中的数字器件)评分为完全或部分的覆盖率的任何方法,那么在图9和图10中的表格,通过把性质评估为“完全的”或“部分的”来简单地填充。在填写图9和图10中的表格时,对例如与高值的电容器并联的低值的电容器的可测试性,或者给定IC是否具有由散热装置掩盖的可读标签的考虑,一般不予考虑(因为焦点在“理论”最大值上)。
如果Max2(BDS)和Max2(BCS)分数是针对AXI测试系统计算,那么该AXI PCOLA分数能从图9和图10中提取。但是,如果Max2(BDS)和Max2(BCS)分数是针对AXI和AOI以及测试系统的组合进行计算,那么图9和图10中AOI和AXI行的对应的PCOLA分数可以使用Max()函数组合,并且随后Max()PCOLA分数能在计算Max2(BDS)和Max2(BCS)分数中使用。在后一种情形,需要注意的是,如对于AOI和AXI测试的组合,其最大正确性分数是“完全的”。
用于表征电路板测试覆盖率的设备图11图示了用于表征电路板测试覆盖率的设备1100的第一实施例。设备1100包括1)装置1102,用于列举电路板的潜在的缺陷性质,而不考虑潜在的缺陷性质可能如何被测试;2)装置1104,用于根据每个所列举的潜在的缺陷性质,对测试组合是否对潜在的缺陷性质进行了测试进行确定和评分;以及3)装置1106,用于组合分数来表征测试组合的电路板测试覆盖率。作为例子,设备1100可以具有软件、固件、硬件,或它们某些的组合的形式。在设备1100的一个实施例中,它的每一元件由存储于计算机可读存储介质的计算机可读程序代码实施,计算机可读存储介质如CD-ROM、DVD、软盘、硬盘驱动器或存储芯片。
图12图示了用于表征电路板测试覆盖率的设备的第二实施例。该设备由存储于计算机可读存储介质1200上的计算机可读程序代码1206、1212、1216、1218实施。程序代码的第一部分1206建立了电路板潜在的缺陷性质的列表1208。该代码实现这些是通过解析电路板的描述性信息1202来提取电路板的元件和连接信息,然后把潜在的缺陷性质1204和所提取的元件和连接信息相关联。程序代码的第二部分1212解析测试组合1210,并从其中提取测试对象1214。每一测试对象1214包括测试的细节,以及由该测试进行测试的元件和连接的列表。程序代码的第三部分1216通过逐一识别共有的元件和连接,把测试对象1214和潜在的缺陷性质列表1208的条目相关联。程序代码的第四部分1218,根据在相关联的测试对象1214中的测试是否对潜在的缺陷性质进行了测试,来为所述潜在的缺陷性质列表1208中潜在的缺陷性质分配性质分数。
程序代码的各部分之间不需要截然分开。因此,代码、对象、例程等可以被多个代码部分共享,并且代码各部分可以或多或少地依靠实现该代码的方式被整合。
代码所访问的描述性的电路板信息可以采用电路板的扩展标示语言(XML)拓扑文件的形式。但是,该描述性的信息可以具有其他的形式,可以是源于电路板网表、材料清单,CAD数据或其他来源。
元件和连接信息可以采用多种形式。例如,元件信息可以采用元件名称或元件部件号码。连接可以采用管脚或节点信息的形式。
与电路板元件和连接信息由代码相关联的潜在的缺陷性质可以从诸如连同它们潜在的缺陷性质一道的存储元件、封装、和/或连接类型的数据库中得到。然后,来自这个数据库的信息可以与为特定电路板标识的元件和连接相关联。在图12的设备的一个实施例中,数据库可以通过界面(例如,显示在计算机屏幕上的图形用户界面(GUI))更新。
与电路板元件和连接相关联的性质可以包括上文所标识的PCOLA和SOQ性质中的某些或所有性质。而且,不同的潜在的缺陷性质可以与不同的元件和连接类型相关联。对于一个连接可能的短路,通过评价该连接到在电路板描述性信息中所标识的其他管脚和/或节点的连接的临近程度,程序代码可以将连接的短路性质与零个或更多短路进行关联。
在图12的设备的一个实施例中,测试对象被创建为XML对象。但是,作为本技术领域的普通技术人员将认识到,测试对象可以被多样地保留。如在这里所使用地,“对象”不仅仅含括“面向对象”编程意义上的对象,而且是为跟踪测试细节的目的而保留的任何数据结构,以及由该测试进行测试的元件和连接的列表。
图13图示了用于表征电路板测试覆盖率的设备的第三实施例。同样,该装置是由存储于计算机可读存储介质1300上的计算机可读程序代码1302实施。与图12中图示的设备不同,在图13中图示的设备不参与电路板潜在的缺陷性质的列表的建立。相反,程序代码1302解析现有的测试组合和电路板潜在的缺陷性质的列表,然后根据测试组合是否对潜在的缺陷性质进行测试,并根据加权结构来为潜在的缺陷性质分配性质分数。
图13的设备的一个实施例中,性质分数包括完全测试的、部分测试的和未测试的数字等价物。
当潜在的缺陷性质由测试组合中两个或更多测试进行测试,并且对于相同的潜在的缺陷性质存在两个或更多性质分数时,附加的程序代码能使用MAX函数组合两个或更多的性质分数。程序代码也能够组合给定元件的性质分数来产生给定元件的元件分数。同样地,程序代码能够组合给定连接的性质分数来产生给定连接的连接分数。程序代码也可以组合所有元件的性质分数来产生电路板元件分数,以及组合所有的连接分数来产生电路板连接分数。
在图13设备的一个实施例中,计算机可读程序代码还包括了程序代码,用于i)访问元件性质的元件性质权重,和ii)根据元件性质的元件性质权重,组合给定元件的性质分数。
在图13设备的另一个实施例中,计算机可读程序代码包括了程序代码,用于i)访问元件类型的元件类型权重,和ii)根据元件类型权重,组合对应于不同元件类型的性质分数。
图13的设备还可以包括用于通过把元件类型故障帕累托图归一化到单位权重1.0之上来分配元件类型权重的程序代码。另外(或此外),该设备可以包括用于使用均匀分布分配元件类型权重的程序代码。
图13设备的程序代码也可以根据加权结构来组合性质分数,通过i)计算元件权重的调节器,该调节器指示在给定的电路板上的元件类型的总数,和ii)根据元件权重的调节子组合性质分数。该程序代码还可以i)访问连接性质的连接性质权重,和ii)根据连接性质的连接性质权重组合给定连接的性质分数。
注意,用于表征电路板测试覆盖率的设备不需要运行测试数据。
虽然这里已经详细描述了本发明示意性的和当前最佳的实施例,但是应当明白,本发明思想可以用各种方式实施和使用,并且附加的权利要求被有意构建为包括了除现有技术的限制以外的这种多样性。
权利要求
1.一种表征电路板测试覆盖率的方法,包括a)列举电路板潜在的缺陷性质,而不考虑潜在的缺陷性质可能如何被测试;b)对所列举的每一个潜在的缺陷性质,产生一个性质分数,该性质分数指示测试组合是否对潜在的缺陷性质进行测试;和c)根据加权结构组合性质分数,以表征测试组合的电路板测试覆盖率。
2.如权利要求1所述的方法,其中,组合性质分数以表征电路板的测试覆盖率包括对于给定的器件,组合元件的性质分数以产生元件分数。
3.如权利要求2所述的方法,其中,根据加权结构组合性质分数包括a)把元件性质权重分配给元件的性质;和b)根据元件性质权重组合元件性质。
4.如权利要求3所述的方法,其中,对于不同的元件类型,元件性质被分配了不同的元件性质权重。
5.如权利要求3所述的方法,其中,对于不同的单独元件,元件性质被分配了不同的元件性质权重。
6.如权利要求3所述的方法,其中,给定元件的元件性质权重加起来等于1.0。
7.如权利要求1所述的方法,其中,根据加权结构组合性质分数包括a)把元件类型权重分配给元件类型;和b)根据所述的元件类型权重组合性质分数。
8.如权利要求7所述的方法,其中,通过把电路板的元件类型故障帕累托图归一化到单位权重1.0之上来分配元件类型权重。
9.如权利要求7所述的方法,其中,使用均匀分布来分配元件类型权重。
10.如权利要求7所述的方法,其中,根据加权结构组合性质分数还包括a)计算元件权重的调节器,该调节器指示在给定的电路板上的元件类型的总数;和b)根据元件权重调节器组合性质分数。
11.如权利要求1所述的方法,其中,根据加权结构组合性质分数包括a)把封装类型权重分配给封装类型;和b)根据封装类型权重组合性质分数。
12.如权利要求1所述的方法,其中,组合性质分数以表征电路板的测试覆盖率包括对于给定的连接,组合连接的性质分数以产生连接分数。
13.如权利要求12所述的方法,其中,根据加权结构组合性质分数包括a)把连接性质权重分配给连接的性质;和b)根据所述的连接性质权重组合给定连接的性质分数。
14.如权利要求13所述的方法,其中,给定连接的连接性质权重加起来等于1.0。
15.如权利要求13所述的方法,其中,被分配给连接的短路性质的连接性质权重分布在该连接可能的多个短路中。
16.用于评价电路板测试覆盖率的设备,包括a)计算机可读存储介质;和b)存储在计算机可读存储介质中的计算机可读程序代码,包括了用于i)解析测试过程和电路板潜在的缺陷性质的列表,和ii)根据测试过程是否对潜在的缺陷性质进行了测试,并根据加权结构将性质分数分配给潜在的缺陷性质的程序代码。
17.如权利要求16所述的设备,其中,计算机可读程序代码还包括用于组合给定元件的性质分数以产生该给定元件的元件分数的程序代码。
18.如权利要求17所述的设备,其中,计算机可读程序代码还包括用于i)访问元件的性质的元件性质权重,和ii)根据元件性质的元件性质权重组合给定元件的性质分数的程序代码。
19.如权利要求18所述的设备,其中,对于不同的元件类型,元件性质有不同的元件性质权重。
20.如权利要求18所述的设备,其中,对于不同的单独元件,元件性质有不同的元件性质权重。
21.如权利要求18所述的设备,其中,给定元件的连接性质权重加起来等于1.0。
22.如权利要求16所述的设备,其中,计算机可读程序代码还包括用于i)访问元件类型的元件类型权重,和ii)根据元件类型权重组合对应于不同元件类型的性质分数的程序代码。
23.如权利要求22所述的设备,其中,计算机可读程序代码还包括用于通过把元件类型故障帕累托图归一化到单位权重1.0之上来分配多个元件类型权重的程序代码。
24.如权利要求22的设备,其中,计算机可读程序代码还包括用于使用均匀分布分配元件类型权重的程序代码。
25.如权利要求22的设备,其中,计算机可读程序代码还包括用于通过i)计算元件权重的调节器,该调节器指示在给定的电路板上的元件类型的总数;和ii)根据元件权重的调节器组合性质分数,来根据加权结构组合性质分数的程序代码。
26.如权利要求16所述的设备,其中,计算机可读程序代码还包括用于i)访问封装类型的封装类型权重,和ii)根据封装类型权重组合对应于不同封装类型的性质分数的程序代码。
27.如权利要求16所述的设备,其中,计算机可读程序代码还包括用于组合给定连接的性质分数以产生该给定连接的连接分数的程序代码。
28.如权利要求27所述的设备,其中,计算机可读程序代码还包括用于i)访问连接的性质的连接性质权重,和ii)根据该连接的性质的连接性质权重组合给定连接的性质分数的程序代码。
29.如权利要求28所述的设备,其中,给定连接的被加权的性质分数加起来等于1.0。
30.如权利要求28所述的设备,其中,被分配给连接的短路性质的性质权重分布在该连接可能的多个短路中。
全文摘要
本发明公开了用于表征电路板测试覆盖率的方法和设备。在一种方法中,列举电路板潜在的缺陷性质,而不考虑所述的潜在的缺陷性质可能如何被测试。对于每一个所列举的潜在的缺陷性质,产生一个性质分数。每个性质分数指示了测试组合是否对潜在的缺陷性质进行了测试。接着,根据加权结构把性质分数组合起来以表征测试组合的电路板测试覆盖率。
文档编号G01R31/28GK1479112SQ03148050
公开日2004年3月3日 申请日期2003年6月27日 优先权日2002年9月1日
发明者肯尼思·P·帕克, 凯瑟琳·J·赫德, 埃里克·A·拉莫斯, A 拉莫斯, J 赫德, 肯尼思 P 帕克 申请人:安捷伦科技有限公司