检查电路的方法

文档序号:6493882阅读:208来源:国知局
专利名称:检查电路的方法
电路、尤其是集成半导体电路或半导体芯片,在其制成之前就已经被测试功能性,以避免制造带有差错的电路或芯片。
为检查电路而通常执行电路仿真,其中仿真电路的电特性。电路仿真虽然可以被用来识别电路设计中的弱点,但它具有以下缺点,即只分别针对一个预定的激励矢量或一个预定的输入电压和/或其它参数(例如温度、电流等)激励组来检查电路特性。因此,只有当每次所采用的激励矢量或所采用的参数激励组以某种方式要求该电路使得该电路中所含的设计差错出现并变得可识别时,电路中的差错才能被找到。
详细的电路仿真的另一缺点在于较高的计算时间。
本发明所基于的任务在于,提供一种用于检查电路的方法,其中不需要详细的电路仿真但能可靠地识别电路差错。
根据本发明,该任务通过具有权利要求1所述的特征的方法来解决。本发明的优选扩展方案在从属权利要求中被给出。
据此,根据本发明规定了一种用于产生标记信号的方法,所述标记信号给出了在电路的哪些部件中或在电路的哪些电路区域中可能出现至少通过电压电位或逻辑态定义的预定电路状态。在该方法中,通过以下方式根据一个描述所述电路的电路结构的原始网络列表形成一个被变换的网络列表至少一个预定部件组或至少一个预定部件类的电路的所有电部件至少分别就一个端子对而被作为短路处理。经一个或多个要被作为短路处理的部件相连的所有网络节点(下面也简称为网络)分别被组合成一个等效类。在此,等效类应被理解为一个“虚构的”等效网络,该等效网络在进一步仿真时替代所有所属的网络。在此,每个等效类分别被分配在所属的网络节点之一上可能出现的所有电压电位或逻辑态。接下来通过考虑如此形成的等效类来确定是否和在哪些部件中或在所述电路的哪些电路区域中可能出现预定的电路状态。产生一个信号作为所述标记信号,该信号标记了借助于所述被变换的网络列表被识别的在所述原始网络列表中的部件或电路区域,并由此使其能被识别。
本发明的主要优点在于,它可以非常简单地被实现,因为电路的检查是借助于“被变换的”或被简化的网络列表来执行的。在此,通过以下方式来形成被变换的网络列表,即网络列表的单个或多个网络节点被组合成一个等效类。显然,一个等效类被看成为代表原始网络列表的“被组合的”网络节点或网络的一个新的网络或新的网络节点。通过把网络组合成等效类,原始网络列表被简化,因为在进一步的检查中总共需要考虑更少的网络或网络节点。也即,换句话说,检查是在一种被简化的“等效电路”上执行的。因此本发明的核心在于,借助于一个相对于原始网络列表被简化的被变换的网络列表来检查电路。
对此,本发明的另一主要优点在于,被变换的网络列表可以在不用大的花费的情况下形成,因为根据本发明简单地把仅一个预定的“规则”应用于原始网络列表。在此,这种规则包括,至少一个预定部件组或至少一个预定部件类的所有电部件被作为短路处理。由此实现了通过相应定义的部件相连的至少所有网络节点可以被组合为一个等效类。
为了实现所述标记信号以特别高的概率实际定义一个差错并且不表示“误告警”,根据该方法的一种改进方案被视为是有利的,即在形成标记信号之后,借助于所述原始网络列表再检验或认证所述预定的(例如紧急的)电路状态是否可能在被该标记信号所标记的部件中或在被该标记信号所标记的电路区域中实际出现。这种认证例如可以通过所述电路的子区域的详细仿真来实现,方式是所述电路的被标记的子区域本身被详细地仿真。
如果在认证时确定所述预定的电路状态在被该标记信号所标记的部件中或电路区域中没有出现,那么优选地通过形成一个被校正的标记信号来校正所述的标记信号。
为了避免在形成标记信号时的差错,被认为有利的是,单独地考虑所谓的“停止网络”。在此,“停止网络”被理解为被固定地分配了电压电位、电流或逻辑态的电路网络节点或连接引脚。这种停止网络必须被排除纳入到等效类中,因为不允许在这种“停止网络”中分配与所述被固定分配的电位或被固定分配的状态不同的电位或状态。“停止网络”例如可以通过电路的外部端子或外部引脚来形成,其被固定地施加了固定的电位、例如接地电位或供电电压电位。但“停止网络”另外也可以例如通过存在于电路中的电压源或电流源来形成,其在电路内在预定的网络处预给定固定的电压电位或电流。因为停止网络一直被分配固定的电位或状态,所以它们不能被纳入到等效类中。
如果在形成等效类时确定存在“停止网络”,那么,每个“停止网络”的电压电位、电流或逻辑态被拷贝到与该“停止网络”相连的每个等效类中。于是,只在一个方向上、也即在等效类的方向上拷贝“停止网络”的电位或状态。从等效类向“停止网络”的反向拷贝是被排除的。
为了避免电路的电仿真,根据该方法的一种进一步改进是有利的,也即所述电路的所有部件被单独地就部件的每个端子对而作为短路或非导电处理。在该方法的这种改进中,仅仅还进行电路的静态“仿真”,因为电路的部件不再被详细地仿真,而只是还总体地被作为短路或非导通处理。在部件只有两个端子或连接引脚的情况下,该部件仅仅被作为短路或非导通处理。在部件具有多个端子的情况下,所有可能的端子对之间的连接线路被定义例如在部件(例如晶体管)具有三个端子A1、A2和A3的情况下,由此针对各端子之间的连接A1-A2、A1-A3和A2-A3分别确定该连接线路是否应被作为短路或非导通处理。也即,在三个端子时需要三次确定。相应地,在部件(例如具有衬底端子的MOS晶体管、晶闸管)具有四个端子A1、A2、A3和A4的情况下,由此针对各端子之间的连接A1-A2、A1-A3、A1-A4、A2-A3、A2-A4和A3-A3分别确定该连接线路是否应被作为短路或非导通处理。也即,在四个端子时需要六次确定。
优选地,至少一个预定晶体管类的所有晶体管就其开关线路而被作为短路处理。在此,概念“开关线路”在场效应晶体管的情况下被理解为源极-漏极-线路,在双极性晶体管的情况下被理解为射极-集电极-线路。在该方法的该改进方案中考虑了晶体管的开关线路通常可以被接通,使得可以认为施加在开关线路的一个端子上的电位或状态也可以分别到达该开关线路的另一个端子。通过在形成等效类时把该开关线路处理为“短路”而考虑了这种情况。
就电阻的处理而言,被认为有利的是,电阻值低于一预定极限值的所有电阻被作为短路处理,以及电阻值高于该预定极限值的所有电阻被作为非导通处理。在该方案中考虑了在低欧姆电阻时,被施加在电阻的一个端子上的电位被近似“不衰减地”或不变地也到达该电阻的另一端子。但在高欧姆电阻时出现明显的电压降,使得被施加在电阻的一个端子上的电位不能毫无问题地到达另一端子。在这种情况下,电阻可以被简化地作为“非导通”处理。
以相应的方式,可以为电路的任意部件、也即还为奇异的“部件”或器件制定相应的规则,它给出是否或在何种情况下,相应部件的端子对应该被作为短路或非导通处理。
优选地,本发明的方法被用于为这样的电路状态产生标记信号,该电路状态是特别紧急的并且表现为电路差错。
电路设计中的差错例如可能在于,在预定的网络节点上达到或低于/超过预定的极限电压电位或预定的极限电流,或达到一个预定的逻辑态。与此相应地,优选地当对于预定的网络节点以及由此对于预定的等效类而达到或低于/超过分别预定的极限电压电位时,或相应的网络节点达到分别预定的逻辑态时,便产生所述的标记信号。
另外,当给所选择的部件施加一个达到或低于/超过一个为该部件单独所预定的极限电压的电压时,电路设计中的差错也可能出现。相应地,优选地当对于预定的部件而达到或低于/超过被规定为紧急的状态时,便产生所述标记信号。
在此,极限电压和极限状态的预给定可以单独地针对每个部件而单个地产生;但作为替换方案,也可以为预定的部件类或部件类别的所有部件预给定相应的极限电压,然后为所属的部件类或部件类别的所有以下部件产生标记信号,即这些部件低于/超过了分别为该部件类或部件类别所预给定的极限值。
非常简单并因此有利的是,可以利用一种数据处理设备来执行所述的方法,其中向该数据处理设备输入所述电路的电路结构作为原始网络列表。
另外,本发明所基于的任务还在于,提供一种在不需要详细电路仿真的情况下可被用于检查电路的设备,但应该可靠地识别电路差错。
根据本发明,该任务通过具有权利要求14所述的特征的设备来解决。本发明设备的优选扩展方案在从属权利要求中被给出。
就本发明设备的优点而言,联系本发明方法参考上述实施方案。
另外,设有以下程序的数据载体也被视为本发明,该程序被构造使得数据处理设备在按照该程序之后执行如权利要求1-13之一所述的方法步骤。
下面示例地借助五个电路来讲述本发明。在此

图1-7示出了没有“停止网络”的电路实施例,图8-14示出了具有“停止网络”的电路实施例,图15和16示出了具有“停止网络”的另一电路实施例,图17示出了没有“停止网络”的另一电路实施例,以及图18和19示出了具有“停止网络”的第三电路实施例。
在下面所讲述的本发明实施例中,利用一种网络列表来描述电路。在此,该网络列表原则上可以具有任意的数据结构。这里在实施例范围内所采用的数据结构具有以下格式typedef struct noderec /*在一个单元内的网络数据结构*/{...
netPinSetArray pinTypeSet;/*网络或等效网络的引脚类型*/netPinSetArray origPinTypeSet;/*原始网络列表中的引脚类型*/netPinSetArray eqPinTypeSet; /*暂时用于等效环中的引脚类型*/struct noderec *equivalent; /*等效节点通过短路装置的环形链接*/equiMasterRefRec *equiMaster; /*不同实例化中的等效网络的主网络的列表*/equiMasterPinTypeRec *equiMasterPin;/*用于所有equiMaster… 用于等效网络的引脚类型*/}typedef long netPinSetArray[PINSBT_SIZE];/*可以存储多个引脚类型(例如VDD,IN,OUT,...)或也可以存储不同的电压水平*//*在实例instId内的主节点*/struct equiMasterRefRec{struct equiMasterRefRec *next;noderec *master;long instId;};/*在实例instId内的主管的所有等效网络的引脚类型*/struct equiMasterPinTypeRec{struct equiMasterPinTypeRec *next;netPinSetArray equiPinTypeSet;long instId;};在这种数据结构中,每个网络或每个网络节点都具有一个用单词“等效”标明的指针。该指针“等效”被用于所有等效网络(也即所有属于一个等效类的网络)的暂时环形链接。如果形成了一个等效类,则在该类中选出一个网络、即所谓的主管。因为在实例化与实例化之间,一个单元(cell)内的等效类可能是不同的,所以每个网络为一个单元的每次实例化而在列表内存储equiMaster指针,以指向网络所属的等效类的相应主管。概念“等效环”和“等效类”在下面被同义地使用。
每个等效环的引脚类型被存储在变量“equiMasterPin”中。等效环中的每个网络都具有一个这样的引脚类型“equiMasterPin”。
每个网络的引脚类型被存放在原始网络列表的变量“origPinTypeSet”中。变量“pinTypeSet”包含有分别在网络列表的当前状态下(也即例如根据电路的哪些部件被视为短路或不导通)有效的网络引脚类型。
以网络列表的网络的上述数据结构为基础,需要通过实例进行两个分开的循环的运行。所述两个循环运行中的第一个在下面被称为步骤I,所述两个循环运行中的第二个在下面被称为步骤II。两个循环运行在这里是必需的,因为网络特性必须通过网络列表的层级来传递。
下面首先以一般的抽象形式来讲述所述步骤。然后接着借助附图来详细讲述如何使用该步骤。
在步骤I中,首先各个网络的引脚类型“上-下”地从上向下被传下来。接着,等效类“下-上”地被组合,并且引脚类型向上移动。
在步骤II中,首先引脚类型“上-下”地从上向下被传下来,其中这次已经考虑了被修正过的网络列表、也即等效类或等效环。接着,“下-上”地利用被修正的网络列表执行检查。
步骤I和II详细地如下被执行步骤I步骤I包括循环地调用用于为所有实例产生等效的函数。在此,执行以下的单个步骤I.1.在该步骤中,在按照下-上顺序的层级下降之前逐个实例地执行初始化。在此,网络的引脚类型被传下来。
I.2.在该步骤中,按照下-上顺序依赖于实例建立等效类。在此,网络列表通过链接等效环或等效类中的电路的被短路部件而被补充。原始的网络列表不受此影响。只须基于原始的网络列表执行相应的变换或在等效环上相应地“行走”,以便能够访问被修正的网络列表。作为替代方案,也可以用相应的方式产生和存储一个独立的被修改的网络列表。
I.2.1.当所有在预定的规则文件中规定的电路部件应该就其一个或多个端子对而被作为短路进行处理时,所属的网络或网络节点被设为等效和被链接。在此,这不仅涉及一个单元内的部件,而且还涉及一个单元本身-在该单元中所属的引脚被设为等效。在此,概念“设为等效”被理解为每个网络节点分别被分配了所分配的等效类的所有其余网络节点的所有状态(电位、逻辑态、等等)。
如果在要被作为短路处理的部件处的网络是一个停止网络,则该网络不被一起插入到等效环中。替而代之的是,该停止网络的引脚类型被拷入到该等效环中;这是因为,虽然等效环中的网络可以采取相应的网络特性,但它们不是无限制地继续传递。通过考虑“停止网络”,该方法变得依赖于实例。
接下来,例如在场效应晶体管的情况下,开关线路(也即源极-漏极线路)被作为短路处理,以及在双极性晶体管的情况下,基极-发射极线路被作为短路处理。电阻根据电阻值的大小被视为短路或被视为非导通。
I.2.2.在该步骤中,为每个等效类确定一个节点作为主管。在该主管中录入等效环的所有引脚类型。优选地选择这样的网络作为主管,该网络具有连接通往更高的单元中,也即例如连接到外部网或引脚。如果不存在这样的网络,则选择等效环的任一网络。
I.2.3.对于所有的主网络,在该步骤中变量“equiMasterPin”被设立,并被占用了该主管的暂时设立的变量“equiPinTypeSet”。
I.2.4.父单元内的通过局部等效环在当前单元内被连接的所有网络在一个等效环内被链接。子网络的变量“equiPinTyperSet”被传送给父单元中的相应连接的网络。
步骤II在步骤II中,通过层级执行循环的运行,以及对所有的实例执行校验函数的调用。在此,每个实例地依次执行以下单步骤II.1.等效类的引脚类型被“上-下”地向下传到实例中。
II.2.1.通过从列表equiMaster装载用于相应实例的数据,对等效类进行更新。
II.2.2.所有的检查被“下-上”地在实例中启动。
以抽象的一般形式讲述的方法步骤I和II现在详细地借助于附图所示的电路例子来讲述。
在图1中可以看到两个单元A,其分别通过两个串联的晶体管构成。在此,图1中左边的单元A构成实例1(Inst1),图1中右边的单元A构成实例2(Inst2)。
正如可以从图1得到的一样,两个实例1和2中的每一个或单元A具有三个网络Net1、Net2和Net3。这些网络Net1、Net2或Net3中的每一个都具有一个特性,其用E1、E2或E3表示。这种特性例如可以是诸如“VDD”(等于供电电压)的引脚类型,或者是譬如2.8V的其它电压。
单元A被两次用作为单元B内的实例Inst1和实例Inst2。此外,单元B具有一个被连接到网络Net11和Net13上的晶体管10。此外,四个网络Net11、Net12、Net13和Net14分别在单元A和C之间构成了连接网络。单元C具有网络Net21、Net22、Net23和Net24,这些网络把被装在单元C中的单元B连接到单元C上。
在图2中现在可以看出用于单元A的实例Inst1的步骤I。在此,按照下-上-顺序执行该步骤。在该步骤内,与实例Inst1的单元A的两个晶体管毗连的所有网络被组合到一个等效环中(步骤I.2.1),因为单元A的两个晶体管被作为短路进行处理。网络Net1、Net2和Net3的特性被分布到该等效环内的所有网络上。这意味着,三个网络Net1、Net2和Net3中的每一个分别具有三个特性,也即特性E1、E2、E3。
在图3中可以看出如何详细地执行步骤I.2.2。两个网络Net11和Net12在单元B内与实例Inst1的单元A的等效环相连接。因此两个网络Net11和Net12进入单元B中的等效环。实例Inst1的单元A的预先形成的等效环的网络特性从网络Net1被传递到网络Net11;这是因为网络Net1预先根据步骤I.2.2被选择为主管。作为结果,网络Net11现在具有特性E1、E2和E3。
在图4中描述了为实例inst2的单元A执行相应的步骤。在该单元中,处理也是按照下-上-顺序被执行的。
在图5中描述了用于单元B的步骤I。可以看出,网络Net11、Net12、Net13和Net14被组合到一个等效环中,这与上面联系步骤I.2.1所讲述的是一样的。在此,该网络的网络特性被传递到单元B的环中的所有网络。
结果是可以确定网络Net1、Net2和Net3以及网络Net11、Net12、Net13和Net14现在分别可能具有所述的三个特性E1、E2和E3。
图6示出了用于单元B的步骤I.2.4。网络Net21、Net22、Net23和Net24通过单元B中的等效环相连接。在此,单元B中的等效环的网络特性从根据步骤I.2.2已被选择为主管的网络Net11被传递到网络Net21。网络Net21现在具有特性E1、E2和E3。
在图7中描述了通过传递网络特性所形成的等效类的结果。单元C内的所有网络此时具有特性E1、E2和E3。通过等效类或通过等效环而形成的被变换的网络列表现在可以按照检查步骤II进行检查。在此,原始网络列表继续可供使用。
结果是由此可以确定通过图1-7所示的从网络特性到网络的分配关系形成一个被变换的网络列表,该网络列表可以被考虑用于检查的目的和用于产生一个标记出现预定电路状态的标记信号。
在图1-7所示的实施例中,可以给单元C的每个网络分配每个特性,因为没有网络构成所谓的“停止网络”。现在联系图8-14来阐述如何能例如在电路中执行用于产生标记信号的方法,在其网络列表中需要考虑所谓的“停止网络”。
在图8中示出了与图1相同的初始电路。但图8所示的电路与图1所示的电路的区别在于,网络Net23现在是一个“停止网络”。这意味着,网络Net23被固定地分配了一种网络特性,例如电压电位、电流或逻辑态。因此,网络Net23不能具有不同于这些预定特性的特性。网络Net23的网络特性在下面被称为“EX”。在步骤I中,网络特性EX被拷贝到通过层级与该“停止网络”Net23相连的网络上。这在图8中被示出;因此图8示出了网络特性EX被拷贝到与网络Net23相连的位于单元B中的网络和单元A的实例Inst2中的Net1。
在图9和图10中,按相应的或等同的方式执行已经结合图2和3在第一实施例中所讲述的步骤。停止网络Net13在该时刻还不起作用。也即可以看出,实例Inst1的单元A的网络Net1、Net2和Net3分别被分配了网络特性E1、E2和E3。此外,网络Net1被选择为主管。
在图11中可以看到单元A的实例Isnt2用的步骤I。与实例Inst2的下方晶体管毗连的网络Net2和Net3被组合到一个等效环中(参见步骤I.2.1)。网络Net2和Net3的特性在该等效环内被分布到该两个网络Net2和Net3。这意味着,两个网络Net2和Net3此时具有特性E1、E2、E3和EX。网络Net1没有被一同纳入到等效环中,因为它涉及停止网络。但网络Net1的网络特性(这是特性E1和EX)被拷入到等效环中,以便也将其施加给两个网络Net2和Net3。
在图12中描述了单元A的实例Isnt2用的步骤I.2.4。实例Isnt2的单元A的等效环的网络特性从根据步骤I.2.2被选择为主管的网络Net3被传递到网络Net14。网络Net14现在具有特性E1、E2、E3和EX。同样,主网络Net1的网络特性被传递到Net13。因为网络Net13是一个“停止网络”,所以该网络Net13不被一同纳入到等效环中;只有网络Net13的网络特性被转用到网络Net11。
在图13中描述了形成等效的结果和网络特性的传递。单元C的网络Net21、Net22和Net24此时具有特性E1、E2、E3和EX。相反,停止网络Net23只具有特性E1和EX。
在图14中描述了形成等效的最终结果。与没有停止网络的第一实施例(特另参见图7)相反,现在有三个主网络,也即三个没有彼此相连的新等效类或三个“新”网络。停止网络Net23和与之相连的网络Net13和Net1没有改变其原来的网络特性。但网络Net23将其特性EX转交给其它网络。
总之,联系图1-14所讲述的方法因此在于,将原始网络列表变换成被变换的网络列表,其中该原始网络列表仍被保留。仍保留原始网络列表是重要的,因为在错误输出时应该保留对原始网络列表的参考或“交叉参考”。譬如需要该原始网络列表用于图形“探测”或“测试”。此外,出现紧急电路状态的部件或网络优选地应该总是在原始网络列表中通告,因为只有原始网络列表才具有对实际电路设计的直接参考。
在新形成的被修正或被变换的网络列表中,接管了迄今为止的网络的网络特性。因为多个“老”网络被转化成一个“新”网络,所以一个新网络可以采取多个不同的网络特性(例如多个电压、多个逻辑态、等等)。通过形成上述等效类,网络特性可以在电路的不同部件上进行传递或拷贝。
因此所述方法的特征在于,通过应被视为短路的电路部件相连接的所有网络被组合到等效类中。每个等效类表示一个新的逻辑网络或电网络。在此,等效类的形成在相应的电路层级上进行。此时考虑没有被一同纳入到等效类中的“停止网络”。取而代之的是,只是把停止网络的引脚类型拷贝到相应的等效类中,由此使所有毗连的“停止网络”的引脚类型在该等效类中被已知。此外还考虑子网络的等效类。由此,该方法是依赖于实例而不再依赖于单元。这譬如意味着,同一单元可以被布线在不同的实例中。如果这里涉及不能被一同纳入到等效类中的停止网络,则这在传递网络特性时被考虑。
所讲述的方法的优点在于,网络列表能够根据一个单独的“规则文件”中的要求被快速地变换成另一个网络列表,而且该被变换的网络列表能够被用于静态地检查电特性。
如果在执行本方法时(如结合图1和14所示的例子所讲述的)所有的部件都被视为短路或不导通,则可以借助于被变换的网络列表对电路的电特性执行完整的静态的检查。与在电路的动态的详细的电路仿真中的可能情况相比,电路的这种静态检查具有明显更快的速度和明显更好的测试覆盖面。在此,由于对原始列表的“交叉参考”,仍然可以将发现的差错分别分配给电路的有关电路区域。所述的方法另外也可以应用于层级的网络列表。
现在联系图15-19来示例地讲述如何能借助于被变换或被修正的网络列表来产生标记信号。
在图15中可以看到五个MOS晶体管NMOS1、NMOS2、NMOS3、NMOS4和NMOS5。在此,晶体管NMOS5的一个开关线路端子(也即源极或漏极端子)被连接到标号为P2的网络节点或网络上。晶体管NMOS5的另一端子与网络B连接,在该网络B上也连接了晶体管NMOS4的一个开关线路端子。晶体管NMOS4的另一开关线路端子与晶体管NMOS2的一个开关线路端子以及网络A相连接。晶体管NMOS2的另一开关线路端子与晶体管NMOS1的一个开关线路端子以及网络P1相连接。晶体管NMOS1的另一开关线路端子与晶体管NMOS3的一个开关线路端子以及网络C电连接。晶体管NMOS3的另一开关线路端子形成网络D。
两个网络或网络节点P1、P2被分别固定地分配一个电状态量,具体说就是网络P1被分配了供电电压VDD,网络P2被分配了接地电位VSS。
此外,五个晶体管NMOS1至NMOS5被作为短路处理。两个网络P1和P2的电状态量的固定分配以及晶体管NMOS1至NMOS5被作为短路的处理例如可以通过以下编程指令来实现ercDefines{defPins{pin″VSS″=″P2″pin″VDD″=″P1″}shortDevices {short″MOS″excludingPinTypes″VSS″″VDD″}}通过把五个晶体管NMOS1至NMOS5作为短路处理,两个网络P1、P2上的电压电位VDD、VSS此时可以被分配给通过这些晶体管与网络P1、P2相连的所有网络。
但这里应考虑,所述两个网络P1和P2具有固定分配的电位、也即电位VDD和VSS,因此该两个网络P1和P2被理解为所谓的“停止网络”。
这意味着,网络P2上的电位VSS通过要被作为短路处理的晶体管NMOS5到达或被“传播“到网络B,并通过要被作为短路处理的晶体管NMOS4到达或被“传播”到网络A。也即,两个网络A和B由此被分别分配了电位VSS。以相应的方式,网络P1上的电位VDD通过要被作为短路处理的晶体管NMOS2到达网络A,并通过要被作为短路处理的晶体管NMOS4到达网络B。两个网络A和B由此被分别分配了两个电位VSS和VDD。
然而,如在图16中可以看出的一样,电位VDD与网络P2之间不产生分配关系,同样,电位VSS与网络P1之间也不产生分配关系。这是在于以下原因被固定分配了电状态量的两个网络P1和P2形成了“停止网络”。在图15和16所示的例子中(如上所述),网络P1被固定分配了电位VDD,网络P2被固定分配了电位VSS。
以相应的方式,电位VDD此时通过被作为短路处理的晶体管NMOS1被分配给网络C。因此电位VDD可能或必须也被分配给网络D,因为晶体管NMOS3也应被作为短路处理。
结果是,由此形成一种电压电位分配关系,如图16中所示。这意味着,两个网络A和B分别被分配了电位VSS和VDD,两个网络CD分别被分配了电位VDD。两个网络P1和P2保持被固定分配给它们的电位VDD或VSS,因为它们是停止网络。也即适用P1VDDP2VSSAVDD,VSSBVDD,VSSCVDDDVDD也即,一方面是网络C和D,另一方面还有网络A和B由此分别形成一个等效类。
现在可以如此地检查图15和16所示的电路,看是否达到预定的、至少通过一个电状态量定义的电路状态。这需要参照一个例子来进行说明,其中为所有那些没有与电位VDD连接或没有与电位VSS连接的节点输出一个标记信号(或检查信号)。相应的询问可以用编程语言表示如下ercRules{reportNet{pinTypescondition count″VSS″″VDD″<=1title″No path to VDD or no path to VSS″}}
如从图16可以看出的一样,网络P1、P2、C和D被通告。网络P1和P2被通告,是因为它们是停止网络且不能采取其它电位。网络C和D被通告,是因为它们不能采取电位VSS。也即产生一个检查信号。
另一种检查询问例如可以是这样,使得可能处于电位VSS的所有网络或网络节点应该被输出。相应的寻找或检查询问可以用编程语言表示如下ercRules{reportNet{pinTypesconditionincluding″VSS″title″path to VSS″}}该检查询问的结果可能是,网络A和B以及P2可能具有电位VSS。电位P1不可能(如上所述)具有电位VSS,因为它涉及一个停止网络。相应地,两个网络C和D也不可能具有电位VSS,因为它们只通过停止网络P1被施加了电位VDD。
在图17中以一种变型方式描述了如图15和16所示的实施例。在图17所示的电路中,网络P1也被分配了电位VDD以及网络P2被分配了电位VSS。但与图15、16所示的实施例不同,这里并不涉及固定的分配,所以两个网络P1和P2没有形成停止网络。因此两个网络P1和P2除了预先被分配的电位VDD或VSS外还分配了另外的其它电位。网络的引脚占用或引脚类型的定义以及短路例如可以通过以下程序行来定义
ercDefines{defPins{pin″VSS″=″P2″pin″VDD″=″P1″}shortDevices{short″MOS″}}如果现在在这里采用联系图15和16所讲述的方法,则被分配给网络P2的VSS通过被作为短路处理的晶体管NMOS5到达网络B,并从那里通过被作为短路处理的晶体管NMOS4到达网络A。另外,电位VSS可以通过被作为短路处理的晶体管NMOS2到达网络P1,因为网络P1不再形成停止网络。然后,电位VSS从网络P1通过晶体管NMOS1到达网络C,并从那里通过晶体管NMOS3到达网络D。由此,电位VSS可以因此施加到所有网络P1、P2、A、B、C和D上。
以相应的方式,电位VDD现在也被分配到网络A、B、C和D(如同在以上实施例中一样),并且另外通过晶体管NMOS5到达网络P2,因为网络P2同样不再形成停止网络。
结果是,所有网络可以分别具有两个电位VSS和VDD。也即适用P1VDD,VSSP2VDD,VSSAVDD,VSSBVDD,VSSCVDD,VSSDVDD,VSS网络P1、P2、A、B、C和D由此形成一个等效类。
在图18和19中描述了第五电路,下面借助它来讲述检查方法或标记方法的执行。
从图18可以看到一个“小的”n沟道型MOS场效应晶体管NMOSSMALL,其利用它的一个开关线路端子(源极端子)与网络P5相连。在网络P5上施加电位VSS。晶体管NMOS SMALL的栅极毗连电位为VINT的P4。晶体管NMOS SMALL的另一开关线路端子(漏极端子)被连接到一个“小的”p沟道型MOS场效应晶体管PMOS SMALL的一个开关线路端子(漏极端子)上。晶体管PMOS SMALL的另一开关线路端子(源极端子)与被施加了电位VINT的网络P2相连。
晶体管PMOS SMALL的栅极端子通过一个电阻R与一个“大的”p沟道型MOS场效应晶体管PMOS BIG的一个开关线路端子相连,后者的另一个开关线路端子与网络P1相连。晶体管PMOS BIG的栅极端子与被施加了电位VSS的网络P3相连。
网络P1、P2、P3、P4和P5涉及停止网络,它们只能具有被分配给它们的电位。
电阻值大于500欧姆的所有电路电阻应该被视为不导通的,相反,电阻值小于或等于500欧姆的其余所有电阻应该是理想地或无损耗地导通的。据此,电阻R被作为短路处理。
网络P1、P2、P3、P4和P5网络的电位的相应分配以及各部件的电特性的定义例如利用以下编程规则来实现/*引脚类型和电压的分配*/ercDefines{defPins{pin″VSS″voltage 0 =″P5″″P3″pin″VINT″ voltage 2.0=″P2″″P4″pin″VPP″voltage 3.0=″P1″}/*应被用于传递电压的部件以及停止网络的定义*/shortDevices{short″MOS″BIGshort″MOS″SMALLshort″RES″value=<500excludingPinTypes″VPP″″VINT″″VSS″}图18和19所示的电路现在应该被如此地检查,看在小的p沟道型晶体管PMOS SMALL中是否可能出现过高的电压。p沟道型晶体管PMOS SMALL涉及这样的晶体管,其中在栅极端子和源极或漏极端子之间不可以施加大于VINT的电压。根据上述定义,电压VINT=2伏特。
为了执行检查,首先必须确定电路的哪些网络节点或哪些网络必须被分配哪些电位或状态。为此进行如下过程首先确定,网络P2是一个停止网络,这样该网络P2只能具有电位VINT。但该电位VINT可以通过晶体管PMOS SMALL(该晶体管就其开关线路或其源极-漏极-端子对而应被作为短路处理)到达网络A。此外,网络A也被分配了电位VSS,因为晶体管NMOS SMALL就其开关线路或其源极-漏极-端子对而应被作为短路处理。
网络P1处的电位VPP通过就其开关线路或其源极-漏极-端子对而应被作为短路处理的晶体管PMOS BIG达到网络B。由于电阻R只具有电阻值R=100欧姆,所以该电阻根据以上规则应被视为短路;因此电位VPP同样被分配给网络C,并由此被分配给晶体管PMOS SMALL的栅极端子。
由此形成一种电位分配,如图19所示。
由此应该确定在网络A上以及由此在晶体管PMOS SMALL的漏极端子上可能出现电位VSS和VINT,并且在网络C上以及由此在晶体管PMOS SMALL的栅极端子上可能出现电位VPP。
现在应该如此地检查电路,看在“小的”p沟道型晶体管PMOS SMALL中是否施加一个大于VINT的栅极-源极-电压或栅极-漏极-电压。这种检查询问例如可以是如下这个样子/*测试规则*/reportDevice{″MOS″models SMALLcondition nodeVoltage{voltage″GATE″-voltage″SDRAIN″>″VINT″}||nodeVoltage{voltage″SDRAIN″-voltage″GATE″>″VINT″}title″SMALL MOS,voltage difference Gate-Sour-ce/Drain/Substrate>VINT″}根据该检查询问来检查是否存在“小的”MOS场效应晶体管,其中在栅极端子和源极或漏极端子之间施加了一个超过电压极限VINT=2V的电压。
该检查询问的解可以从图19直接看出;因为在图19中示出了在小的p沟道型晶体管PMOS SMALL的漏极端子和栅极端子之间可以施加一个以下值的栅极-漏极-电压UgdUgd=VPP-VSS=3伏特,以及Ugd=VPP-VINT=1伏特。
如果栅极端子被施加电位VPP,则于是可以在栅极端子和漏极端子之间形成一个电压差Vgd=3V>2V。因此明显超过了预定的极限电压或最大电压差Ugd=VINT=2V。
因此作为上述检查询问的结果,该小的p沟道型晶体管PMOS SMALL被通告。也即,图18和19所示的电路的规格是定得不够的。需要采用一个“大的”p沟道型晶体管PMOS BIG来代替小的p沟道型晶体管PMOS SMALL,因为在“大”类型的MOS晶体管情况下在栅极端子和源极端子之间或在栅极端子和漏极端子之间的VDD的电压差是非紧急的。
替而代之的是,图18和19所示的电路也可以例如通过提高电阻R的电阻值而进行另外的修正。也即,如果电阻R的电阻值具有大于500欧姆的值,则电位VPP就不会通过该电阻R被“传播”到p沟道型晶体管PMOS SMALL的栅极端子,使得在该晶体管上不会出现过电压。于是该晶体管不被通告。
另外,所述的检查方法还可以考虑其它电路参数。于是例如询问“在晶体管上是否超过预定的极限电压”另外还可以与晶体管的几何参数结合起来。例如,对于在源极端子和漏极端子之间施加了大于VINT的电压差而且其栅极长度小于280nm的所有“小的”p沟道型晶体管,可以借助于上述的检查方法被找到。相应的检查询问例如如下
reportDevice{″MOS″models P_SMALLcondition length<280&&
nodeVoltage{voltage″SDRAIN″>″vint″}&&
nodeVoltage{voltage″SOURCE″-voltage″DRAIN″>″vint″}title″Small PMOS,length<280,voltage SOURCE-DRAIN>vint″}因此结果是利用上述方法能够非常简单地实现电路的完整检查,而不需要电路的完整的电仿真。
权利要求
1.用于产生标记信号的方法,所述标记信号给出了在电路的哪些部件中或在电路的哪些电路区域中可能出现至少通过电压电位或逻辑态定义的预定电路状态,其中-通过以下方式根据一个描述所述电路的电路结构的原始网络列表形成一个被变换的网络列表-至少一个预定部件组或至少一个预定部件类的电路的所有电部件至少分别就一个端子对而被作为短路处理,-经一个或多个要被作为短路处理的部件相连的所有网络节点分别被组合成一个等效类,其中每个等效类分别被分配所属的网络节点的所有电压电位或逻辑态,-通过考虑所述等效类确定是否和在哪些部件中或在所述电路的哪些电路区域中可能出现预定的电路状态,以及-产生一个信号作为所述标记信号,该信号标记了借助于所述被变换的网络列表被识别的在所述原始网络列表中的部件或电路区域。
2.如权利要求1所述的方法,其特征在于,接下来借助于所述原始网络列表认证所述预定的电路状态是否可能在被标记的部件中或在被标记的电路区域中实际出现。
3.如权利要求2所述的方法,其特征在于,通过形成一个被校正的标记信号来校正关于以下部件和电路区域的标记信号,即在这些部件和电路区域中得出的认证是所述预定的电路状态被排除。
4.如上述权利要求之一所述的方法,其特征在于,所述电路的被固定分配有电压电位或逻辑态的网络节点或连接引脚被排除纳入到一个等效类中。
5.如权利要求4所述的方法,其特征在于,具有固定分配的电压电位或逻辑态的每个网络节点的电压电位或逻辑态被拷贝到分别与该网络节点相连的每个等效类中。
6.如上述权利要求之一所述的方法,其特征在于,所述电路的所有电部件被单独地就部件的每个端子对而作为短路或非导电处理。
7.如上述权利要求之一所述的方法,其特征在于,至少一个预定晶体管类的所有晶体管就其开关线路而被作为短路处理。
8.如上述权利要求之一所述的方法,其特征在于,电阻值低于一预定极限值的所有电阻被作为短路处理,以及电阻值高于该预定极限值的所有电阻被作为非导通处理。
9.如上述权利要求之一所述的方法,其特征在于,选择一个对该电路紧急的电路状态、尤其是多个紧急的电路状态作为预定的电路状态,以及对所述紧急的电路状态、尤其是对多个紧急的电路状态执行所述方法。
10.如上述权利要求之一所述的方法,其特征在于,给以下网络节点或等效类产生所述标记信号,该网络节点或等效类达到或低于/超过一个预定极限电压电位或达到一个预定逻辑态。
11.如上述权利要求1-9之一所述的方法,其特征在于,给以下部件产生所述标记信号,在该部件中施加了一个达到或低于/超过一个为该部件单独所预定的极限电压的电压。
12.如上述权利要求1-9之一所述的方法,其特征在于,给以下部件产生所述标记信号,在该部件中施加了一个达到或低于/超过一个为该相应的部件类所预定的极限电压的电压。
13.如上述权利要求之一所述的方法,其特征在于,借助于一个数据处理设备执行所述方法,向该数据处理设备输入所述电路的电路结构作为原始网络列表。
14.用于产生标记信号的设备,所述标记信号给出了在电路的哪些部件中或在电路的哪些电路区域中可能出现至少通过电压电位或逻辑态定义的预定电路状态,所述设备具有-存储器,其中存储了描述所述电路的电路结构的原始网络列表,以及-与所述存储器相连的计算机装置,该计算机装置被构造使得-该计算机装置通过以下方式根据所述原始网络列表形成一个被变换的网络列表-至少一个预定部件组或至少一个预定部件类的电路的所有电部件被作为短路处理,-经一个或多个要被作为短路处理的部件相连的所有网络节点分别被组合成一个等效类,其中所述计算机装置分别给每个等效类分配所属的网络节点的所有电压电位或逻辑态,-该计算机装置通过考虑所述等效类确定是否和在哪些部件中或在所述电路的哪些电路区域中可能出现预定的电路状态,以及-该计算机装置产生一个信号作为所述标记信号,该信号标记了借助于所述被变换的网络列表被识别的在所述原始网络列表中的部件或电路区域。
15.如权利要求14所述的装置,其特征在于,所述计算机装置被构造使得,该计算机装置在产生标记信号时执行如上述权利要求2-13之一所述的方法步骤中的至少一个。
16.具有程序的数据载体,该程序被构造使得,数据处理设备在安装该程序之后执行如上述权利要求1-13之一所述的方法步骤。
全文摘要
本发明所基于的任务在于,提供一种用于检查电路的方法,其中不需要详细的电路调制但能可靠地识别电路差错。根据本发明,该任务通过一种用于产生标记信号的方法来解决,所述标记信号给出了在电路的哪些部件中可能出现预定的电路状态,其中通过以下方式根据一个描述所述电路的原始网络列表形成一个被变换的网络列表至少一个预定部件组的所有电部件至少分别就一个端子对而被作为短路处理,经一个或多个要被作为短路处理的部件相连的所有网络节点分别被组合成一个等效类,其中每个等效类分别被分配所属的网络节点的所有状态,通过考虑所述等效类确定是否和在哪些部件中可能出现预定的电路状态,以及产生一个信号作为所述标记信号,该信号标记了被识别的在所述原始网络列表中的部件。
文档编号G06F17/50GK1849609SQ200480026414
公开日2006年10月18日 申请日期2004年8月31日 优先权日2003年9月12日
发明者P·巴德, T·纽恩霍弗 申请人:英飞凌科技股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1