WO2005026996A2 - Verfahren zum prüfen einer elektrischen schaltung - Google Patents

Verfahren zum prüfen einer elektrischen schaltung Download PDF

Info

Publication number
WO2005026996A2
WO2005026996A2 PCT/DE2004/002047 DE2004002047W WO2005026996A2 WO 2005026996 A2 WO2005026996 A2 WO 2005026996A2 DE 2004002047 W DE2004002047 W DE 2004002047W WO 2005026996 A2 WO2005026996 A2 WO 2005026996A2
Authority
WO
WIPO (PCT)
Prior art keywords
electrical
pattern recognition
components
component
circuit
Prior art date
Application number
PCT/DE2004/002047
Other languages
English (en)
French (fr)
Other versions
WO2005026996A3 (de
Inventor
Hans-Ulrich Armbruster
Martin Frerichs
Tilmann NEUNHÖFFER
Original Assignee
Infineon Technologies Ag
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies Ag filed Critical Infineon Technologies Ag
Publication of WO2005026996A2 publication Critical patent/WO2005026996A2/de
Publication of WO2005026996A3 publication Critical patent/WO2005026996A3/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Definitions

  • circuit simulations are usually carried out to check the circuits, in which the electrical behavior of the circuits is completely simulated.
  • Circuit simulations of this type are useful for detecting weak points in the design of the circuits, but they have the disadvantage that the circuit behavior only for the respectively specified stimulus vector or for the respectively selected set of input voltages and / or other parameters (e.g. . Temperature) is examined. An error can therefore only be found if this stimulus vector or this set of parameters requests the circuit in such a way that an error contained in the circuit occurs and becomes recognizable.
  • Another disadvantage of incoming circuit simulations is the comparatively high computing time.
  • the invention has for its object to provide a method for checking an electrical circuit in which an in-depth electrical circuit simulation is not required and despite all circuit errors are reliably detected.
  • a method for generating an error signal which indicates a design error in an electrical circuit having a plurality of electrical components.
  • the electrical circuit is examined for the presence of at least one predetermined functional block formed by at least one electrical component.
  • the error signal is generated when at least one component parameter of an electrical component of the
  • Function block is unsuitable or forms an unsuitable combination of parameters with respect to component parameters of other components or if at least one electrical component of the function block has an unsuitable component type or if a combination of
  • Components has at least one unsuitable component type or if at least one electrical component of the functional block is connected to an unsuitable network.
  • An important advantage of the method according to the invention is that no detailed electrical simulation of the circuit is carried out with it. So no input voltages or electrical currents are taken into account.
  • a "static" check of the circuit design is carried out in the method according to the invention. This leads to a considerable saving in running time and also guarantees that the tested components or. the checked one
  • At least two component parameters are preferred, in particular one mathematical function, linked to one another, the result of the link then being used to generate the error signal.
  • the linkage can include, for example, at least one quotient formation.
  • At least one of the component parameters preferably describes a transistor width or a transistor length.
  • the quotient formation already mentioned is preferably carried out using at least one transistor width and at least one transistor length.
  • Circuit is examined based on a circuit diagram for the presence of the at least one function block.
  • the presence of the at least one functional block is preferably carried out with the aid of a pattern recognition method.
  • a pattern recognition method customary pattern recognition methods and techniques can be used.
  • the pattern recognition method can be carried out particularly easily, quickly and therefore advantageously, for example with a data processing system.
  • “easily” recognizable function blocks it is readily possible to recognize them directly or directly in the context of a one-step pattern recognition process. The process can then be carried out in one step.
  • a one-step pattern recognition sometimes no longer leads to the goal.
  • the pattern recognition is carried out at least in two stages: in a first step, a modified circuit diagram is formed from the circuit diagram by combining at least two electrical components of the electrical circuit to form an assembly. In a second step, the pattern recognition is then continued on the basis of the modified circuit diagram.
  • the pattern recognition is preferably carried out in several stages, with the circuit diagram being modified again in each further pattern recognition step by combining at least two components of the electrical circuit to form an assembly, splitting an assembly already formed in a previous pattern recognition step and / or already forming it Assemblies are summarized. The pattern recognition process is then continued with the most recently modified circuit diagram.
  • An electrical circuit can be completely described by a circuit diagram.
  • a description of the electrical circuit which is comparable or equivalent in terms of information content is formed by a network list which has a specific or predetermined syntax.
  • a network list can also be used to check the electrical circuit.
  • the pattern recognition process can be carried out with the network list in one, two or more stages.
  • a modified network list is formed from the network list in a first step, in that at least two components of the electrical circuit are combined to form an assembly.
  • the pattern recognition is then continued in a second step using the modified network list.
  • the procedure is such that in each pattern recognition step the network list is modified in each case by combining at least two components of the electrical circuit into an assembly, splitting an already formed assembly and / or assembling already formed assemblies.
  • the pattern recognition process is continued with the last modified network list.
  • modified circuit diagrams or the modified network lists are formed using a predefined control file which is predefined.
  • This rule file can also be specified as suitable
  • control file can be changed or supplemented by the user. Adaptations to the respective electrical circuit to be checked are thus easily possible.
  • Figures 1 to 6 show different circuit diagrams of one and the same electrical circuit.
  • Figures 1 and 2 show an electrical circuit used as an example.
  • This electrical circuit consists of 8 interconnected transistors Mll, M12, M21, M22, M31, M32, M41 and M42.
  • the transistors Mll, M21, M31 and M41 are designed, for example, as p-channel transistors; the transistors M12, M22, M32 and M42 are n-channel transistors.
  • the overall circuit according to FIGS. 1 and 2 has the following function:
  • the transistors M31 and M32 form an inverter and at the same time a driver with the input signal IN.
  • This inverter or driver is formed by the block “inv3" in FIG. 2.
  • the output signal of the inverter inv3 is output in FIGS. 1 and 2 at the network node "netl".
  • the network nodes - hereinafter referred to briefly as "networks" - netl and net2 are either electrically connected to one another or separated from one another. Whether the two networks netl and net2 have an electrical connection depends on a transfer gate T1 formed by the two transistors M41 and M42 The respective circuit state of the transfer gate T1 determine input signals EN and ENQ.
  • the output signal of the inverter inv3 arrives at the input of an inverter invl formed by the two transistors Mll and M12 and forms an input signal for this inverter invl.
  • the transfer gate T1 is switched off - this means that the two transistors M41 and M42 are not conducting - the feedback signal from an inverter inv2 formed by the two transistors M21 and 22 keeps the output signal OUT of the inverter invl stable.
  • the circuit according to FIGS. 1 and 2 could therefore be referred to as a latch module or memory module. In the circuit according to FIGS.
  • the maximum current driven by transistors M31 and M41 must be at least four times stronger than the maximum current driven by transistor M22. Taking into account twice the current delivery capacity of an n-channel transistor, the rule can be formulated that the common effective width of the two transistors M31 and M41 must be eight times as large as that of the transistor M22. 2. The maximum current driven by the two transistors M32 and M42 must be four times stronger than the maximum current driven by transistor M21. Accordingly, this means that the common effective width of the two transistors M32 and M42 must be twice as large as that of the transistor M21.
  • circuit diagram or the network list for the circuit diagram according to FIGS. 1 and 2 is to be used to check whether the above-mentioned design rule with regard to transistors M31, M41, M22, M32, M42, M21 has been observed, it must first be recognized that it is with the two
  • Transistors Mll and M12 is an inverter (inverter invl), in the feedback branch of which by the two Transistors M21 and M22 formed inverter inv2.
  • inverter invl inverter invl
  • the two transistors M31 and M32 driver transistors and the two transistors M41 and M42 form the transfer gate T1, which connects the driver transistors M31 and M32 to the input of the inverter invl.
  • the electrical circuit according to FIG. 1 is completely recorded and stored as a circuit diagram or network list, for example in a computer-readable file.
  • the connections or networks “VDD” and “GND” are always assigned a fixed potential, which is unchangeable and therefore cannot fluctuate.
  • the "VDD” and “GND” networks are therefore each assigned a “fixedV” network type; the “fixedV” network type is understood to mean that the potential is “fixed” and cannot change.
  • the "VDD” network the network type "power” is assigned, from which it follows that the network “VDD” is a supply connection to which supply voltage is always present.
  • the “GND” network is correspondingly assigned the “ground” network type, from which it can be seen that the "GND” network is ground potential.
  • Inverter of the circuit identified as assemblies is done in such a way that the following pattern recognition rule is applied to the network list formed with the aid of a data processing system:
  • This pattern recognition rule recognizes all those inverters which contain a p-channel transistor (referred to as “pmos”) and an n-channel transistor (referred to as “nmos").
  • the “inl” and “outl” networks form the input and the output of the inverter.
  • the network “outl” must not be the
  • the p-channel transistor should be connected to a "power” type network in accordance with the pattern recognition rule.
  • the n-channel transistor "nmos”, however, should be connected to a "ground” type network.
  • the inverter invl For example, for the formation of the inverter invl the instance xl of the type "pmos” the transistor Mll; the instance x2 of the type “nmos” the transistor M12.
  • the network “inl” connected to the two gate connections of the transistors Mll and M12 is identified in the inverter invl as network "net2".
  • the network "outl”, which must not be at a constant potential, is recognized as the network "OUT" of the circuit.
  • the corresponding transistor parameters are entered in FIG. 1 for each transistor.
  • each inverter "invl”, “inv2" and “inv3" contains the parameters w / 1 as parameters - that is, the quotient between width and Length - for each of the associated individual transistors; the ratios w / 1 are denoted by the variables wlp (for the p-channel transistor) and wln (for the n-channel transistor). The following applies:
  • wln W / 1 for n-channel transistors.
  • a rule for forming transfer gates is then processed for the circuit diagram or for the network list.
  • Each transfer gate should consist of a p- and an n-channel transistor.
  • the rule can be as follows:
  • the width (wp and wn) and length (lp and In) of the transistors is stored as parameter o .
  • Cell loopl is assigned the type "loop".
  • the ratios w / 1 of the assigned transistors are for this cell loopl saved as wlpinvl, wlninvl, wlpinv2 and wlinv2. The following numerical values are obtained:
  • FIG. 3 The result of the cell formation of the cell loop1 is shown in FIG. 3.
  • the corresponding parameters of the loop1 cell are also shown in FIG. 3.
  • Inverter inv3 could not be assigned to an "inverter loop".
  • all transistors that do not belong to the cell loopl must be included in the circuit diagram or in the network list Become "recognizable”. This requires that all of the inverter cells still present have to be dissolved again so that any driver transistors can be recognized as such in the further pattern recognition process.
  • the dissolving of all inverter cells is carried out according to the following rule:
  • the inverter inv3 according to FIG. 3 is recognized and its components, that is to say the two transistors M31 and M32, are broken down or “flattened”. After applying the rule, therefore Circuit diagram or in the network list, the transistors M31 and M32 again as individual transistors (see FIG. 4).
  • the rule for this is as follows:
  • the w / 1 ratios - in other words the ratio between transistor width and transistor length - are transferred as new parameters to the newly formed cell "transloopl". Furthermore, the transistor parameters wlp and wln of the transfer gate cell Tl are transferred as wlptrans and wlntrans. This is in 5 shown in detail.
  • the network "netl” is identified within the framework of this rule as the network to be driven and thus receives the type
  • MOS transistors pass through and end on "power" or "ground” type networks. This search is performed according to the following rule:. blockrule nobuild d g s xl: pmos d: fixedV g s: tobedriven. gets xl: pdri ver. endblockrule
  • the transistor M31 is now found, since it is connected to a drain connection at the supply connection “VDD” with the type “fixedV”.
  • the transistor M31 has its source connection connected to the "netl” network of the "tobedriven” type.
  • This transistor M31 is plugged into a "pdriver” type cell.
  • This new "pdriver” cell has as its only parameter the w / 1 ratio of the transistor M31 -
  • a transistor of the type "ndriver" is formed from the transistor M42.
  • the result of this rule is a network list or a circuit diagram as shown in FIG. 6.
  • FIG. It has three components or three assemblies, namely the transloop structure with the
  • Driver transistors M31 and M32 enable the inverter inv1 formed by the two transistors Mll and Ml 2 to be reversed even if the feedback inverter inv2 formed by the two transistors M21 and M22 counteracts such reversal.
  • rules are applied to patterns recognized in the circuit design.
  • the network list or the circuit diagram is first examined for the existence of circuit parts that are predefined in a rule file. Subsequently, the circuit parts or assemblies found are combined in new cells and / or cells already formed are dissolved. Modified circuit diagrams or modified network lists are created. The newly formed cells can be combined into further, larger units or assemblies until all the assemblies or functional groups relevant for the application of the rule to be carried out have been found. The properties of the cells formed are then checked, with reference to the design parameters of the components belonging to the cells or the respective component types are used.
  • the method described does not require any dynamically variable voltages or other electrical circuit parameters to check the circuit; only the network list or the circuit diagram is required.
  • the method is therefore a purely “static” test that has nothing in common with dynamic electrical circuit modulation. Because of the static processing of the network list, the described method is significantly faster than “dynamic” simulation programs; it also offers the certainty that all circuit parts defined as samples or functional blocks can be checked with complete fault coverage.
  • Parameters of the components of the function blocks can be calculated. These parameters calculated at the cell level are then used and checked by further rules until it is finally determined whether the function blocks to be checked are error-free or faulty. To the
  • One aspect of the described method therefore consists in carrying out calculations with the parameters of the components which are used for the new formation or redefinition of cells and subsequently carrying out tests.
  • the parameters that can be taken into account are, for example
  • the described method can, for example, be implemented in a computer program and with the aid of a
  • the program then reads in two files, for example.
  • the first file contains a description of the circuit in the form of a circuit diagram or preferably in the form of a network list.
  • the second file is a rule file, in which the patterns are described and defined that are to be searched for in the net list.
  • a pattern can be defined flexibly by:

Abstract

Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zum Überprüfen einer elektrischen Schaltung anzugeben, bei der eine eingehende elektrische Schaltungssimulation nicht erforderlich ist und trotz allem Schaltungsfehler zuverlässig erkannt werden. Diese Aufgabe wird erfindungsgemäß durch ein Verfahren zum Erzeugen eines Fehlersignals gelöst, das einen Entwurfsfehler in einer eine Mehrzahl an elektrischen Bauelementen aufweisenden elektrischen Schaltung angibt, wobei die elektrische Schaltung auf das Vorhandensein zumindest eines vorgegebenen, durch zumindest ein elektrisches Bauelement gebildeten Funktionsblocks untersucht wird und das Fehlersignal erzeugt wird, wenn zumindest ein Bauelement-Parameter eines elektrischen Bauelements des Funktionsblocks ungeeignet ist oder in Bezug auf Bauelement-Parameter anderer Bauelemente eine ungeeignete Parameter-Kombination bildet oder wenn zumindest ein elektrisches Bauelement des Funktionsblocks einen ungeeigneten Bauelementetyp aufweist oder wenn eine Kombination von Bauelementen zumindest einen ungeeigneten Bauelementetypen aufweist oder wenn zumindest ein elektrisches Bauelement des Funktionsblocks an ein ungeeignetes Netz angeschlossen ist.

Description

Beschreibung
Verfahren zum Prüfen einer elektrischen Schaltung
Elektrische Schaltungen, insbesondere integrierte Halbleiterschaltungen bzw. Halbleiterchips werden bereits vor ihrer Fertigung auf Funktionsfähigkeit getestet, um eine Herstellung fehlerbehafteter Schaltungen bzw. Chips zu vermeiden.
Zur Überprüfung der Schaltungen werden heutzutage üblicherweise Schaltungssimulationen durchgeführt, bei denen das elektrische Verhalten der Schaltungen vollständig simuliert wird. Schaltungssimulationen dieser Art sind zwar zur Erkennung von Schwachstellen im Design der Schaltungen nützlich, jedoch haben sie den Nachteil, dass das Schaltungsverhalten nur für den jeweils vorgegebenen Stimulus-Vektor bzw. für den jeweils gewählten Satz von EingangsSpannungen und/oder sonstigen Parametern (z. B. Temperatur) untersucht wird. Ein Fehler kann daher nur dann aufgefunden werden, wenn dieser Stimulus-Vektor bzw. dieser Satz von Parametern die Schaltung in einer Weise fordert, dass ein in der Schaltung enthaltener Fehler auftritt und erkennbar wird. Ein weiterer Nachteil eingehender Schaltungssimulationen besteht in der zwangsläufig relativ hohen Rechenzeit.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zum Überprüfen einer elektrischen Schaltung anzugeben, bei der eine eingehende elektrische Schaltungssimulation nicht erforderlich ist und trotz allem Schaltungsfehler zuverlässig erkannt werden.
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen gemäß Patentanspruch 1 gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind in Unteransprüchen angegeben. Danach ist erfindungsgemäß ein Verfahren zum Erzeugen eines Fehlersignals vorgesehen, das e inen Entwurf sfehler in einer eine Mehrzahl an elektrischen Bauelementen aufweisenden elektrischen Schaltung angibt . Bei dem erf indungsgemäßen Verfahren wird die elektrische Schaltung auf das Vorhandensein zumindest eines vorgegebenen, durch zumindest ein elektrisches Bauelement gebildeten Funktionsblocks hin untersucht . Das Fehlersignal wird erzeugt , wenn zumindest ein Bauelement -Parameter eines elektrischen Bauelements des
Funkt ionsblocks ungeeignet ist oder in Bezug auf Bauelement - Parameter anderer Bauelemente e ine ungeeignete Parameter- Kombination bildet oder wenn zumindest ein elektrisches Bauelement des Funktionsblocks einen ungeeigneten Bauelementetyp aufweist oder wenn eine Kombination von
Bauelementen zumindest einen ungeeigneten Bauelementetypen aufweist oder wenn zumindest ein elektrisches Bauelement des Funktionsblocks an ein ungeeignetes Netz angeschlossen ist .
Ein wesentlicher Vorteil des erfindungsgemäßen Verfahrens besteht darin, dass bei diesem keine eingehende elektrische Simulation der Schaltung durchgeführt wird . Es werden also keine Eingangs Spannungen oder elektrischen Ströme berücksichtigt . Im Unterschied zu vorbekannten dynamischen Simulationsverfahren, bei denen eine eingehende elektrische Simulation der Schaltung erfolgt , wird bei dem erfindungsgemäßen Verfahren eine „ statische" Prüfung des Schaltungsentwurfs durchgeführt . Dies führt zu einem erheblichen Lauf zeitgewinn und garantiert darüber hinaus , dass bei den geprüften Bauelementen bzw . den überprüften
Funktionsblöcken eine vollständige Fehlerabdeckung erreicht wird; denn Eingangsvektoren bestehend aus vorgegebenen Eingangsspannungen, Eingangsströmen oder sonstigen Parametern sind bei dem erfindungsgemäßen Verfahren überflüssig .
Zum Erzeugen des Fehlersignals werden bevorzugt zumindest zwei Bauelement-Parameter, insbesondere durch eine mathematische Funktion, miteinander verknüpft, wobei das Verknüpfungsergebnis anschließend zur Erzeugung des Fehlersignals herangezogen wird. Die Verknüpfung kann beispielsweise zumindest eine Quotientenbildung einschließen.
Bei mehreren Bauelement-Parametern können sich diese auf dasselbe Bauelement und/oder auf verschiedene Bauelemente, sei es desselben Funktionsblocks oder unterschiedlicher Funktionsblöcke, beziehen.
Bevorzugt beschreibt mindestens einer der Bauelement - Parameter eine Transistorweite oder eine Transistorlänge.
Die bereits erwähnte Quotientenbildung wird vorzugsweise unter Heranziehung zumindest einer Transistorweite und zumindest einer Transistorlänge durchgeführt .
Bezüglich der „ungeeigneten" Netze besteht vorzugsweise die Möglichkeit, diese per Namen oder als regulären Ausdruck vorzugeben oder diese nach einer vorgegebenen Regel bei der Durchführung des Verfahrens, d. h. im Rahmen der Prüfung, festzulegen.
Besonders einfach und damit vorteilhaft lässt sich das erfindungsgemäße Verfahren durchführen, wenn die elektrische
Schaltung anhand eines Schaltplanes auf das Vorhandensein des zumindest einen Funktionsblock.es hin untersucht wird.
Das Vorhandensein des zumindest einen Funktionsblocks wird vorzugsweise mit Hilfe eines Mustererkennungsverfahrens durchgeführt. Diesbezüglich kann auf übliche Mustererkennungsverfahren und -techniken zurückgegriffen werden.
Besonders einfach, schnell und damit vorteilhaft lässt sich das Mustererkennungsverfahren beispielsweise mit einer Datenverarbeitungsanlage durch ühren . Bei „einfach" erkennbaren Funktionsblöcken ist es ohne Weiteres möglich, diese im Rahmen eines einstufigen Mustererkennungsverfahrens unmittelbar bzw. direkt zu erkennen. Das Verfahren kann dann einstufig durchgeführt werden.
Bei komplexen Funktionsblöcken führt mitunter eine einstufige Mustererkennung nicht mehr zum Ziel . In diesem Fall wird es als vorteilhaft angesehen, wenn die Mustererkennung zumindest zweistufig durchgeführt wird: In einem ersten Schritt wird aus dem Schaltplan ein modifizierter Schaltplan gebildet, indem zumindest zwei elektrische Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden. In einem zweiten Schritt wird die Mustererkennung dann anhand des modifizierten Schaltplans fortgesetzt.
Bei besonders komplexen Funktionsblöcken wird die Mustererkennung bevorzugt mehrstufig durchgeführt, wobei bei jedem weiteren Mustererkennungsschritt der Schaltplan erneut modifiziert wird, indem zumindest zwei Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden, eine bereits in einem vorangegangenen Mustererkennungsschritt gebildete Baugruppe aufgespalten wird und/oder bereits gebildete Baugruppen zusammengefasst werden. Anschließend wird das Mustererkennungsverfahren jeweils mit dem zuletzt modifizierten Schaltplan fortgesetzt.
Eine elektrische Schaltung lässt sich durch einen Schaltplan vollständig beschreiben. Eine im Informationsgehalt vergleichbare bzw. äquivalente Beschreibung der elektrischen Schaltung wird durch eine Netzliste gebildet, die eine spezielle bzw. vorgegebene Syntax aufweist. Anstelle des Schaltplanes kann zur Überprüfung der elektrischen Schaltung somit auch eine Netzliste verwendet werden. Das Mustererkennungsverfahren kann mit der Netzliste einstufig, zweistufig oder mehrstufig durchgeführt werden.
Bei einem zweistufigen Mustererkennungsverfahren wird in einem ersten Schritt aus der Netzliste eine modifizierte Netzliste gebildet, indem zumindest zwei Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden. Anschließend wird die Mustererkennung in einem zweiten Schritt anhand der modifizierten Netzliste fortgesetzt.
Bei einem mehrstufigen Mustererkennungsverfahren wird derart vorgegangen, dass bei jedem Mustererkennungsschritt die Netzliste jeweils modifiziert wird, indem zumindest zwei Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden, eine bereits gebildete Baugruppe aufgespalten wird und/oder bereits gebildete Baugruppen zusammengefasst werden. Das Mustererkennungsverfahren wird jeweils mit der zuletzt modifizierten Netzliste fortgesetzt.
Im Übrigen wird es als vorteilhaft angesehen, wenn die Bildung der modifizierten Schaltpläne bzw. die Bildung der modifizierten Netzlisten anhand einer vordefinierten Regeldatei erfolgt, die fest vordefiniert ist. Dieser Regeldatei können auch die als geeignet vorgegebenen
Parameter bzw. die als geeignet vorgegebenen Bauelementetypen für die elektrische Schaltung vorgegeben werden. Beispielsweise bei einer Softwareimplementierung kann die Regeldatei benutzerseitig beliebig geändert bzw. ergänzt werden. Anpassungen an die jeweilig zu überprüfende elektrische Schaltung sind somit ohne Weiteres möglich.
Die Erfindung wird nun anhand eines Ausführungsbeispiels erläutert. Dabei zeigen Figuren 1 bis 6 unterschiedliche Schaltpläne ein und derselben elektrischen Schaltung. Die Figuren 1 und 2 zeigen eine als Beispiel zugrunde gelegte elektrische Schaltung. Diese elektrische Schaltung besteht aus 8 miteinander verbundenen Transistoren Mll, M12, M21, M22, M31, M32, M41 und M42. Die Transistoren Mll, M21, M31 und M41 sind beispielsweise als p-Kanal -Transistoren ausgebildet; bei den Transistoren M12, M22, M32 und M42 handelt es sich um n-Kanal -Transistoren .
Die Gesamtschaltung gemäß den Figuren 1 und 2 hat folgende Funktion:
Die Transistoren M31 und M32 bilden einen Inverter und gleichzeitig einen Treiber mit dem Eingangssignal IN. Dieser Inverter bzw. Treiber ist in der Figur 2 durch den Block „inv3" gebildet. Das Ausgangssignal des Inverters inv3 wird in den Figuren 1 und 2 an dem Netzknoten „netl" ausgegeben.
Die Netzknoten - nachfolgend kurz „Netze" genannt - netl und net2 sind elektrisch entweder miteinander verbunden oder voneinander getrennt. Ob die beiden Netze netl und net2 eine elektrische Verbindung aufweisen, hängt von einem Transfergatter Tl ab, das durch die beiden Transistoren M41 und M42 gebildet ist. Den jeweiligen Schaltungszustand des Transfergatters Tl bestimmen Eingangssignale EN und ENQ .
Ist das Transfergatter Tl durchgeschaltet, so gelangt das Ausgangssignal des Inverters inv3 zum Eingang eines durch die beiden Transistoren Mll und M12 gebildeten Inverters invl und bildet für diesen Inverter invl ein Eingangssignal.
Ist hingegen das Transfergatter Tl abgeschaltet - dies bedeutet, dass die beiden Transistoren M41 und M42 nicht leiten - so bleibt durch die Rückkopplung eines durch die beiden Transistoren M21 und 22 gebildeten Inverters inv2 das Ausgangssignal OUT des Inverters invl stabil. Die Schaltung gemäß den Figuren 1 und 2 könnte man somit als Latch-Baustein bzw. Speicherbaustein bezeichnen. Bei der Schaltung gemäß den Figuren 1 und 2 kann nun der Fall eintreten, dass - bei einer logischen „Null" am Eingang IN des Inverters inv3 und bei geöffnetem Transfergatter Tl - das Netz net2 über die Transistoren M41 und M31 auf das Potential VDD (Versorgungsspannung) aufgeladen werden soll, obwohl gleichzeitig der Inverter inv2 versuchen wird, das Netz net2 auf Massepotential „GND" zu halten. Das Umschalten des Potentials am Netzknoten net2 kann daher nur dann erfolgen, wenn die Treibertransistoren M41 und M31 deutlich stärker und größer dimensioniert sind als der Transistor M22 des Inverters inv2.
Daraus lässt sich folgende Designregel für die Funktionstüchtigkeit der Schaltung formulieren:
1. Der durch die Transistoren M31 und M41 maximal getriebene Strom muss mindestens viermal stärker sein als der maximal durch den Transistor M22 getriebene Strom. Unter Berücksichtigung der doppelt so hohen Stromlieferfähigkeit eines n-Kanal Transistors kann damit die Regel formuliert werden, dass die gemeinsame effektive Weite der beiden Transistoren M31 und M41 achtmal so groß sein muss wie die des Transistors M22. 2. Der durch die beiden Transistoren M32 und M42 maximal getriebene Srom muss viermal stärker sein als der maximal durch den Transistor M21 getriebene Strom. Dies bedeutet entsprechend, dass die gemeinsame effektive Weite der beiden Transistoren M32 und M42 doppelt so groß sein muss wie die des Transistors M21.
Soll nun anhand des Schaltplanes bzw. der Netzliste zum Schaltplan gemäß den Figuren 1 und 2 geprüft werden, ob die oben genannte Designregel bezüglich der Transistoren M31, M41, M22, M32, M42, M21 eingehalten ist, muss zunächst überhaupt einmal erkannt werden, dass es sich bei den beiden
Transistoren Mll und M12 um einen Inverter handelt (Inverter invl) , in dessen Rückkopplungs zweig der durch die beiden Transistoren M21 und M22 gebildete Inverter inv2 liegt. Darüber hinaus muss erkannt werden, dass die beiden Transistoren M31 und M32 Treibertransistoren und die beiden Transistoren M41 und M42 das Transfergatter Tl bilden, das die Treibertransistoren M31 und M32 mit dem Eingang des Inverters invl verbindet .
Um diese Arbeitsweise der Schaltung erkennen zu können, kann beispielsweise wie folgt vorgegangen werden:
1. Zunächst wird die elektrische Schaltung gemäß der Figur 1 vollständig erfasst und als Schaltplan bzw. Netzliste beispielsweise in einer computerlesbaren Datei abgespeichert.
2. Die elektrische Schaltung gemäß der Figur 1 weist die
Anschlüsse „IN", „VDD", „GND" und „OUT" auf. Den Anschlüssen bzw. Netzen „VDD" und „GND" ist jeweils stets ein festes Potential zugewiesen, das unveränderlich ist und somit nicht schwanken kann. Den Netzen „VDD" und „GND" wird daher jeweils ein Netztyp „fixedV" zugeordnet; unter dem Netztyp „fixedV" wird dabei verstanden, dass das Potential „fix" ist und sich nicht ändern kann. Darüber hinaus wird dem Netz „VDD" der Netztyp „power" zugewiesen, woraus hervorgeht, dass es sich bei dem Netz „VDD" um einen Versorgungsanschluss handelt, an dem stets Versorgungsspannung anliegt. Dem Netz „GND" wird in entsprechender Weise der Netztyp „ground" zugewiesen, aus dem hervorgeht, dass es sich bei dem Netz „GND" um Massepotential handelt .
3. In einem ersten Mustererkermungsschritt werden die
Inverter der Schaltung als Baugruppen identifiziert. Dies geschieht konkret in der Weise, dass auf die gebildete Netzliste mit Hilfe einer DV-Anlage beispielsweise folgende Mustererkennungsregel angewandt wird:
. jbloc rrule inverter outl inl vdd vss xl :pmos vdd :power inl outl : I flxedV PARDEF wp=w lp=l x2 :n os vss : ground inl outl : ! fixedV PARDEF wn=w ln=l . gets inverter : inv . pa.ra.rn wlp= ' wp/lp ' wln= ' wn/ln ' . endblockrule
Diese Mustererkennungsregel erkennt alle diejenigen Inverter, die einen p-Kanal Transistor (als „pmos" bezeichnet) und einen n-Kanal -Transistor (als „nmos" bezeichnet) enthalten. Den Eingang und den Ausgang des Inverters bilden die Netze „inl" und „outl". Das Netz „outl" darf dabei nicht den
Netztyp „fixedV" tragen, da das Potential am Ausgang outl des Inverters vom Potential am Eingang inl des Inverters abhängt.
Der p-Kanal Transistor („pmos") soll gemäß der Mustererkennungsregel an ein Netz vom Typ „power" angeschlossen sein. Der n-Kanal Transistor „nmos" soll hingegen an ein Netz vom Typ „ground" angeschlossen sein.
Vorliegend werden somit die Inverter invl, inv2 und inv3 gebildet, die bereits oben im Zusammenhang mit den
Erläuterungen zur Figur 2 eingeführt worden sind. Auf diese Inverter invl, inv2 und inv3 trifft das durch die o.g. Mustererkennungsregel definierte Muster eines „Inverters" zu.
Dabei entspricht z.B. für die Bildung des Inverters invl die Instanz xl vom Typ „pmos" dem Transistor Mll; die Instanz x2 vom Typ „nmos" dem Transistor M12. Das mit den beiden Gate- Anschlüssen der Transistoren Mll und M12 verbundene Netz „inl" wird bei dem Inverter invl als Netz „net2" identifiziert. Das Netz „outl" , das nicht auf konstantem Potential liegen darf, wird als Netz „OUT" der Schaltung erkannt .
Durch die genannte Regel werden nicht nur die entsprechenden Inverter in der elektrischen Schaltung gemäß der Figur 1 erkannt, sondern es werden darüber hinaus auch vorgegebene Parameter, nämlich die Weite (=w) und die Länge (=1) der jeweiligen Transistoren, weiter verarbeitet. Die entsprechenden Transistorparameter sind in der Figur 1 für jeden Transistor eingetragen.
Wird mit der Mustererkennungsregel von der DV-Anlage nun das jeweilige Inverter-Muster in der Netzliste aufgefunden, so wird eine neue Zelle gebildet, die einen Inverter als neue Baugruppe enthält. Der neu in die Netzliste aufgenommene Inverter ersetzt dabei jeweils die beiden Transistoren, die den Inverter bilden. Den neuen Baugruppen bzw. den neuen Zellen wird der Typ „inv" - also ein Invertertyp - zugeordnet. Jeder Inverter „invl", „inv2" und „inv3" enthält als Parameter jeweils die Verhältnisse w/1 - also den Quotienten zwischen Weite und Länge - für jeden der zugehörigen Einzeltransistoren; die Verhältnisse w/1 werden mit den Variablen wlp (für den p-Kanal Transistor) und wln (für den n-Kanal Transistor) bezeichnet. Dabei gilt :
wlp = w / 1 für p-Kanal Transistoren und
wln = W / 1 für n-Kanal Transistoren.
4. In entsprechender Weise wird für den Schaltplan bzw. für die Netzliste anschließend eine Regel zur Bildung von Transfergattern abgearbeitet. Jedes Transfergatter soll jeweils aus einem p- und einem n-Kanal Transistor bestehen. Die Regel kann wie folgt lauten:
. blockrule transferl out in vdd vss xl :pmos in : ! fixedV vdd ou t : ! fixedV PARDEF wp=W lp=L x2 : nmos in : ! fixedV vss ou t : ! fixedV PARDEF wn=W ln=L . ets transferl : trans . param wlp= ' wp/lp ' wln- ' wn/ln ' . endblockrule
Mit dieser Regel werden die beiden Transistoren M41 und- M42 aufgefunden, die zusammen den Block Tl, also das Transfergatter Tl, bilden. Das aufgefundene Transfergatter erhält den Typ „trans". Als Resultat ergibt sich dann der Schaltkreis wie er in der Figur 2 beschrieben ist.
Wiederum wird das Verhältnis zwischen Weite (wp und wn) und Länge (lp und In) der Transistoren als Parameter o abgespeichert. Dabei ist in der Figur 2 erkennbar, dass das Verhältnis wlp zwischen Weite und Länge des p-Kanal - Transistors wlp = 12 beträgt, da dessen Weite b = 6 und dessen Länge 1 = 0,5 ist. Entsprechend ist das Verhältnis wln zwischen Weite und Länge beim n-Kanal -Transistor wln = 6 , da nämlich die Weite des Transistors w = 3 und die Länge 1 = 0,5 beträgt .
5. Ausgehend von der Netzliste bzw. dem Schaltplan gemäß der Figur 2 soll nun festgestellt werden, ob es in der elektrischen Schaltung Inverter gibt, die „gegeneinander geschaltet" bzw. rückgekoppelt sind. Hierzu wird folgende Regel abgearbeitet :
. blockrule loopl [out] [in] vdd vss xl : inv out in vdd vss PARDEF x:wlpl=wlp xwlnl=wln x2 : inv in out vdd vss PARDEF χwlp2=wlp xwln2=wln . gets loopl : loop # wlpl and wlnl describe w/1 of inverter driving first net (out)
# wlp2 and wln2 describe w/1 of inverter driving second net (in) .param wlpinvl= ' xwlpl ' wlninvl = ' xwlnl ' wlpinv2= ' xwlp2 ' wlninv2= 'xwln2 ' . endblockrule
Aufgrund dieser Regel wird erkannt, dass die beiden Inverter invl und inv2 eine Rückkoppelschleife bilden. Daher wird diese Schleife zu einer Zelle „loopl" zusammengefasst. Der
Zelle loopl wird der Typ „loop" zugeordnet. Die Verhältnisse w/1 der zugeordneten Transistoren werden für diese Zelle loopl als wlpinvl, wlninvl, wlpinv2 und wlinv2 gespeichert. Dabei werden folgende Zahlenwerte erhalten:
wlpinvl = wlp (invl) = 4 wlninvl = wln (invl) = 2 wlpinv2 = wlp (inv2) = 1 wlninv2 = wln (inv2) = 1.
Das Ergebnis der Zellenbildung der Zelle loopl ist in der Figur 3 dargestellt. Die entsprechenden Parameter der Zelle loopl sind in der Figur 3 ebenfalls angegeben.
6. Bei dem Schritt unter Punkt 5 wurden die beiden Inverter invl und inv2 zu der Zelle loopl zusammengefasst, da diese beiden Inverter eine Rückkoppe1schleife bildeten. Der
Inverter inv3 hingegen ließ sich keiner „Inverterschleife" zuordnen. Um nun erkennen zu I önnen, welche Transistoren als Treibertransistoren für die Zelle loopl in Frage kommen, müssen in dem Schaltplan bzw. in der Netzliste alle Transistoren, die nicht zur Zelle loopl gehören, wieder „erkennbar" werden. Dies erfordert, dass alle noch vorhandenen Inverter-Zellen wieder aufgelöst werden müssen, damit eventuelle Treibertransistoren im weiteren Mustererkennungsverfahren als solche erkennt werden können. Das Auflösen aller Inverter-Zellen wird gemäß folgender Regel durchgeführt :
. blockrule nobuild out in vdd vss . label flatteninv xl : inv out in vdd vss . flatten xl . endblockrule
Gemäß dieser „ Inverter-Auflösungsregel" wird der Inverter inv3 gemäß der Figur 3 erkannt und in seine Bestandteile, also in die beiden Transistoren M31 und M32, aufgelöst bzw. „ausgeflacht". Nach Anwendung der Regel liegen daher im Schaltplan bzw. in der Netzliste die Transistoren M31 und M32 wieder als Einzeltransistoren vor (vgl. Figur 4).
Bezüglich der beiden Transistoren M31 und M32 entspricht der Status gemäß der Figur 4 somit dem ursprünglichen Status gemäß der Figur 1. Das zwischenzeitliche Zuordnen der Transistoren M31 und M32 zu dem Inverter inv3 wurde somit vollständig rückgängig gemacht -
7. Die nachfolgende Regel kombiniert die im Rahmen des
Schrittes unter Punkt 6 gebildete loop-Zelle „loopl" und die Transfergatterzelle des Typs „trans", die wie bereits unter Punkt 4 erläutert erkannt wird, zu einer neuen Zelle des Typs „transloopl" . Die Regel hierzu lautet wie folgt:
.Jbloαforule transloopl in vdd vss [netl] (a) out xl : trans in : ! signal netl (a) PARDEF xwlptrans=wlp xwlntrans=wln x2 : loop netl ou t vdd vss PARDEF xwlpl=wlpl xwlnl=wlnl xwlp2=wlp2 xwln2=wln2
. gets transloopl : transloop in : tobedriven .param wlptrans= ' xwlptrans ' wlntrans= ' xwln trans ' wlpinvl= 'xwlpl ' wlpinv2= ' xwlp2 ' wlninvl= ' wlnl ' wlninv2= ' xwln2 ' . ndbl ockrul e
Die w/1-Verhältnisse - also jeweils das Verhältnis zwischen Transistorweite und Transistorlänge - werden als neue Parameter auf die neu gebildete Zelle „transloopl" übertragen. Des Weiteren werden die Transistorparameter wlp und wln der Transfergatterzelle Tl als wlptrans und wlntrans übertragen. Dies ist in der Figur 5 im Detail dargestellt.
Das Netz „netl" wird im Rahmen dieser Regel als das zu treibende Netz identifiziert und erhält somit den Typ
„tobedriven". Die Zelle transloopl selbst erhält den Typ „transloop" . 8. Ausgehend von der in der Figur 5 dargestellten Netzliste bzw. ausgehend von dem in der Figur 5 dargestellten Schaltplan werden jetzt alle diejenigen elektrischen Pfade identifiziert, die durch Source- oder Drainanschlüsse von
MOS-Transistoren hindurchlaufen und an Netzen vom Typ „power" oder „ground" enden. Diese Suche wird gemäß folgender Regel durchgeführt : . blockrule nobuild d g s xl :pmos d: fixedV g s : tobedriven . gets xl : pdri ver . endblockrule
Mit dieser Regel wird nun der Transistor M31 aufgefunden, da dieser mit einem Drain-Anschluss am Versorgungsanschluss „VDD" mit dem Typ „fixedV" verbunden ist. Darüber hinaus ist der Transistor M31 mit seinem Source-Anschluss am Netz „netl" des Typs „tobedriven" angeschlossen. Dieser Transistor M31 wird in eine Zelle des Typs „pdriver" gesteckt. Diese neue Zelle „pdriver" besitzt als einzigen Parameter das w/1- Verhältnis des Transistors M31 -
Analog wird aus dem Transistor M42 eine Zelle des Typs „ndriver" gebildet.
Als Ergebnis dieser Regel entsteht eine Netzliste bzw. ein Schaltplan, wie er in der Figur 6 dargestellt ist.
9. Im neunten und letzten Schritt wird die GesamtStruktur erkannt und die Prüfung der Parameter gemäß den eingangs genannten Vorgaben durchgeführt . Hierzu wird folgende Regel angewandt : . blockrule nobuild (g) (f) (h) vdd vss xl : pdriver vdd :power (g) netl : tobedriven PARDEF wlp=wl x2 : ndriver vss . - ground (f) netl : tobedriven PARDEF wln=wl x3 : transloop netl (hj PARDEF wlptrans=wlptrans wln trans=wlntrans wlpinvl=wlpinvl wlpinv2=wlpinv2 wlninvl=wlninvl wlninv2=wlninv2 .param wlpdriver= ' 1/ ( (1/wlp) + (wlptrans) ) ' wlndriver= ' 1/ ( (1/wln) + (1 /wlntrans) ) ' ndriverpfeedback= ' 2*wlndriver/wlpinvl ' pdrivern feedback^ ' wlpdriver/ (2 *wlninvl) < . check "feedback inv too strong ndriver/pfeedback < 4 " ' 2*wlndriver/wlpinv2 ' "feedback inv too strong, pdriver /n feedback < 4 " ' wlpdri ver/ (2*wlninvl) ' . endblockrule
Die dieser Regel zugrunde gelegte GesamtStruktur ist in der Figur 6 dargestellt. Sie weist drei Bestandteile bzw. drei Baugruppen auf, nämlich die transloop-Struktur mit der
Bezeichnung „transloopl" sowie die beiden Treiberbausteine mit den Bezeichnungen „pdriver und „ndriver".
Die eingangs genannten Designregeln für die Transistoren M31, M41, M22, M32, 42 und M21 werden separat für die Kombination „pmos-Transistor M31 als Treiber mit nmos-Transistor als Rückkopplung" und für die Kombination „nmos-Transistor als Treiber mit pmos-Transistor als Rückkopplung" durchgeführt. Im Rahmen der Prüfung wird jeweils festgestellt, ob die genannten Transistoren w/1 -Verhältnisse aufweisen, die es den
Treibertransistoren M31 bzw. M32 ermöglichen, den durch die beiden Transistoren Mll und Ml 2 gebildeten Inverter invl auch dann umzusteuern, wenn der durch die beiden Transistoren M21 und M22 gebildete Rückkoppel -Inverter inv2 einem solchen Umsteuern entgegenwirkt.
Konkret muss also geprüft werden, ob der durch die Transistoren M31 und M41 maximal getriebene Strom viermal stärker ist als der maximal durch den Transistor M22 getriebene Strom und ob der durch die Transistoren M32 und
M42 maximal getriebene Strom viermal stärker ist als der maximal durch den Transistor M21 getriebene Strom. Diese Bedingungen sind erfüllt wenn gilt (vgl . Fig . 6 und Fig . 1 ) :
1/ ( 1/wl [pdriver] + l/wlptrans [trans loopl] ) > 8 * wlninvl [transloopl ] 1/ ( 1/wl [ndriver] + l/wlntrans [trans loopl] ) > 2 * wlpinvl [transloopl]
bzw .
l/ ( l [M31] /w [M31] + 1 [M41] /w [ 41] ) > 8 * w [M22 ] / l [M22 ]
1/ ( l [M32 ] / [M32 ] ) + 1 [M42 ] / [M42 ] ) > 2 * w [M21] /l [M22 ]
Falls im Rahmen der Durchführung der Prüfung festgestellt wird, dass die Treibertransistoren und die
Transfergattertransistoren zu klein oder die Transistoren des Rückkoppelinverters zu groß dimensioniert sind, wird ein Fehlersignal erzeugt, das einen Designfehler anzeigt. Die entsprechenden Fehlersignale können in einem Protokoll festgehalten werden.
Zusammengefasst werden bei dem beschriebenen Verfahren also Regeln auf im Schaltungsentwurf erkannte Muster angewendet . Die Netzliste bzw. der Schaltplan wird dabei zunächst auf die Existenz von Schaltungsteilen untersucht, die in einer Regeldatei vordefiniert werden. Anschließend werden die aufgefundenen Schaltungsteile bzw. Baugruppen in jeweils neuen Zellen zusammengefasst und/oder bereits gebildete Zellen aufgelöst. Dabei werden modifizierte Schaltpläne bzw. modifizierte Netzlisten gebildet. Die neu gebildeten Zellen können zu weiteren, größeren Einheiten bzw. Baugruppen zusammengefasst werden, bis alle für die Anwendung der durchzuführenden Regel relevanten Baugruppen bzw. Funktionsgruppen aufgefunden worden sind. Danach werden die Eigenschaften der gebildeten Zellen überprüft, wobei auf die Designparameter der zu den Zellen gehörenden Bauelementen oder auf die jeweiligen Bauelementetypen zurückgegriffen wird.
Das beschriebene Verfahren benötigt zur Überprüfung der Schaltung keine dynamisch veränderlichen Spannungen oder sonstigen elektrischen Schaltungsparameter; es ist lediglich die Netzliste bzw. der Schaltplan erforderlich. Es handelt sich bei dem Verfahren somit um eine rein „statische" Prüfung, die mit einer dynamischen elektrischen Schaltungsmodulation nichts gemein hat. Aufgrund der statischen Bearbeitung der Netzliste ist das beschriebene Verfahren deutlich schneller als „dynamische" Simulationsprogramme; es bietet darüber hinaus die Sicherheit, dass alle als Muster bzw. Funktionsblöcke definierten Schaltungsteile mit vollständiger Fehlerabdeckung überprüfbar sind.
Das Prinzip der beschriebenen Prüfung besteht - wie oben beispielhaft erläutert - darin, den gefundenen Baugruppen bzw. Funktionsblöcken jeweils Parameter zuzuordnen, die aus
Parametern der Bauteile der Funktionsblöcke berechnet werden. Diese auf Zellebene berechneten Parameter werden dann von weiteren Regeln weiter verwendet und geprüft, bis letztendlich feststeht, ob die zu überprüfenden Funktionsblöcke fehlerfrei oder fehlerbehaftet sind. Zum
Zwecke der Mustererkennung von Baugruppen oder Funktionsblöcken innerhalb einer Netzliste oder eines Schaltplanes kann dabei auf die in der Literatur bekannten Algorithmen zur Mustererkennung zurückgegriffen werden.
Ein Aspekt des beschriebenen Verfahrens besteht also darin, mit den Parametern der Bauteile, die zu einer Neubildung bzw. Neudefinition von Zellen herangezogen werden, Berechnungen anzustellen und anschließend Prüfungen durchzuführen. Berücksichtigt werden können als Parameter beispielsweise die
Dimensionierung, die Art und Zahl der Bauteile (Blocktypen) und/oder die Art der Kontaktierung dieser Bauteile (Netztypen) .
Das beschriebene Verfahren kann beispielsweise in einem Computerprogramm implementiert und mit Hilfe einer
Datenverarbeitungsanlage durchgeführt werden. Das Programm liest dann beispielsweise zwei Dateien ein. Die erste Datei enthält eine Beschreibung des Schaltkreises in Form eines Schaltplanes oder vorzugsweise in Form einer Netzliste. Die zweite Datei ist eine Regeldatei, in der die Muster beschrieben und definiert sind, die in der Netzliste gesucht werden sollen. Ein Muster kann dabei flexibel definiert werden durch:
- Bauteiltypen
- Blocktypen
- Netz- oder Pintypen und/oder
- Verbindungen zwischen den zugehörigen Bauteilen.
Wenn das jeweils definierte Muster in der Netzliste gefunden wird, werden in der Regeldatei definierte Schlussfolgerungen festgelegt und diese dann ausgeführt.
Diese Schlussfolgerungen können Folgendes enthalten:
Generierung einer neuen Zelle, die das gefundene Muster beinhaltet, Zuordnung eines Typs zu dieser Zelle, Zuordnung eines Typs zu den Zuleitungen (Pins) der Zelle, - Berechnung beliebiger Parameter aus den Parametern der gefundenen bzw. identifizierten Bauteile und Zuordnung dieser berechneten Parameter an die neue Zelle, Ausführung von Prüfungen und Ausgabe von Fehlermeldungen.

Claims

Patentansprüche
1. Verfahren zum Erzeugen eines Fehlersignals, das einen Entwurfsfehler in einer eine Mehrzahl an elektrischen
Bauelementen aufweisenden elektrischen Schaltung angibt, wobei die elektrische Schaltung auf das Vorhandensein zumindest eines vorgegebenen, durch zumindest ein elektrisches Bauelement gebildeten Funktionsblocks untersucht wird und das Fehlersignal erzeugt -wird, wenn zumindest ein Bauelement-Parameter eines elektrischen Bauelements des Funktionsblocks ungeeignet ist oder in Bezug auf Bauelement- Parameter anderer Bauelemente eine ungeeignete Parameter-Kombination bildet oder - wenn zumindest ein elektrisches Bauelement des Funktionsblocks einen ungeeigneten Bauelementetyp aufweist oder wenn eine Kombination von Bauelementen zumindest einen ungeeigneten Bauelementetypen aufweist oder - wenn zumindest ein elektrisches Bauelement des Funktionsblocks an ein ungeeignetes Netz angeschlossen ist.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass zumindest zwei Bauelement -Parameter, insbesondere durch eine mathematische Funktion, miteinander verknüpft werden und das Verknüpfungsergebnis zur Erzeugung des Fehlersignals herangezogen wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Verknüpfung zumindest eine Quotientenbildung einschließt.
4. Verfahren nach einem der vorangehenden Ansprüche 2 bis 3 , dadurch gekennzeichnet, dass sich mindestens zwei der Bauelement -Parameter auf Bauelemente desselben Funktionsblocks beziehen.
5. Verfahren nach einem der vorangehenden Ansprüche 2 bis 4, dadurch gekennzeichnet, dass sich mindestens zwei der Bauelement -Parameter auf Bauelemente unterschiedlicher Funktionsblöcke beziehen.
6. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass mindestens einer der Bauelement-Parameter eine Transistorweite beschreibt.
7. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass mindestens einer der Bauelement -Parameter eine Transistorlänge beschreibt.
8. Verfahren nach einem der vorangehenden Ansprüche 2 bis 7, dadurch gekennzeichnet, die Quotientenbildung unter
Heranziehung zumindest einer Transistorweite und zumindest einer Transistorlänge durchgeführt wird.
9. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, das ungeeignete Netze fest vorgegeben sind oder nach einer vorgegebenen Regel festgelegt werden.
10. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die elektrische Schaltung anhand eines Schaltplanes auf das Vorhandensein des zumindest einen Funktionsblockes untersucht wird.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass eine die elektrische Verschaltung der elektrischen Bauelemente angebende Netzliste erzeugt wird und die elektrische Schaltung anhand der Netzliste auf das Vorhandensein des zumindest einen Funktionsblockes untersucht wird.
12. Verfahren nach einem der vorangehenden Ansprüche, dadurch geke nzeichnet, dass das Vorhandensein des zumindest einen Funktionsblocks mit Hilfe eines Mustererkennungsverfahrens durchgeführt wird.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass das Mustererkennungsverfahren mit einer Datenverarbeitungsanlage durchgeführt wird.
14. Verfahren nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass die Mustererkennung als einstufiges Verfahren durchgeführt wird.
15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass die Mustererkennung zumindest zweistufig durchgeführt wird, - wobei in einem ersten Schritt aus dem Schaltplan ein modifizierter Schaltplan gebildet wird, indem zumindest zwei elektrische Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden, und - wobei die Mustererkennung in einem zweiten Schritt anhand des modifizierten Schaltplans fortgesetzt wird.
16. Verfahren nach Anspruch 15, dadurch gekennzeichnet, dass die Mustererkennung mehrstufig durchgeführt wird, - wobei bei jedem Mustererkennungsschritt der jeweils zuvor modifizierte Schaltplan erneut modifiziert wird, indem Baugruppen oder Bauelemente zusammengefasst oder bereits gebildete Baugruppen aufgelöst werden, und - wobei das Mustererkennungsverfahren jeweils mit dem zuletzt modifizierten Schaltplan fortgesetzt wird.
17. Verfahren nach einem der vorangehenden Ansprüche 1 bis 14, dadurch gekennzeichn t, dass die Mustererkennung zumindest zweistufig durchgeführt wird, - wobei in einem ersten Schritt aus der Netzliste eine modifizierte Netzliste gebildet wird, indem zumindest zwei elektrische Bauelemente der elektrischen Schaltung zu einer Baugruppe zusammengefasst werden, und - wobei die Mustererkennung in einem zweiten Schritt anhand der modifizierten Netzliste fortgesetzt wird.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet , dass die Mustererkennung mehrstufig durchgeführt wird, - wobei bei jedem Mustererkennungsschritt die jeweils zuvor modifizierte Netzliste erneut modifiziert wird, indem Baugruppen oder Bauelemente zusammengefasst oder bereits gebildete Baugruppen aufgelöst werden, und - wobei das Mustererkennungsverfahren jeweils mit der zuletzt modifizierten Netzliste fortgesetzt wird.
PCT/DE2004/002047 2003-09-12 2004-09-08 Verfahren zum prüfen einer elektrischen schaltung WO2005026996A2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10343347.3 2003-09-12
DE10343347A DE10343347A1 (de) 2003-09-12 2003-09-12 Verfahren zum Prüfen einer elektrischen Schaltung

Publications (2)

Publication Number Publication Date
WO2005026996A2 true WO2005026996A2 (de) 2005-03-24
WO2005026996A3 WO2005026996A3 (de) 2006-04-20

Family

ID=34305905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2004/002047 WO2005026996A2 (de) 2003-09-12 2004-09-08 Verfahren zum prüfen einer elektrischen schaltung

Country Status (2)

Country Link
DE (1) DE10343347A1 (de)
WO (1) WO2005026996A2 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734798A (en) * 1995-12-01 1998-03-31 Hewlett-Packard Co. Method and apparatus for extracting a gate modeled circuit from a fet modeled circuit
US20020038446A1 (en) * 2000-08-09 2002-03-28 Gate Extractor Gate extractor
US6389578B1 (en) * 1999-05-26 2002-05-14 Hewlett-Packard Company Method and apparatus for determining the strengths and weaknesses of paths in an integrated circuit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504691A (en) * 1991-11-08 1996-04-02 U.S. Philips Corporation Method and device for tracking down a prespecified subcircuit in an electrical circuit, method for constructing integrated circuit masks using the method
DE10160513B4 (de) * 2001-10-31 2012-02-23 Qimonda Ag Verfahren zur Verarbeitung von Daten, die Parameter bezüglich einer Anzahl Bauelemente einer elektrischen Schaltung darstellen

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734798A (en) * 1995-12-01 1998-03-31 Hewlett-Packard Co. Method and apparatus for extracting a gate modeled circuit from a fet modeled circuit
US6389578B1 (en) * 1999-05-26 2002-05-14 Hewlett-Packard Company Method and apparatus for determining the strengths and weaknesses of paths in an integrated circuit
US20020038446A1 (en) * 2000-08-09 2002-03-28 Gate Extractor Gate extractor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GAMBLES J W ET AL: "An HOL Theory For Logic States with Indeterminate Strengths" PROCEEDINGS OF THE 1991 INTERNATIONAL WORKSHOP ON THE HOL THEOREM PROVING SYSTEM AND ITS APPLICATIONS, 28. August 1991 (1991-08-28), Seiten 96-103, XP010229214 DAVIS, CALIFORNIA, USA *
LIOY A: "Fault modelling and collapsing in MOS circuits" INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS, 7. Juni 1988 (1988-06-07), Seiten 685-688, XP010069642 ESPOO, FINLAND *

Also Published As

Publication number Publication date
WO2005026996A3 (de) 2006-04-20
DE10343347A1 (de) 2005-04-14

Similar Documents

Publication Publication Date Title
EP0010173B1 (de) Halbleiterplättchen mit verbesserter Prüfbarkeit der monolithisch hochintegrierten Schaltungen
DE3712178C2 (de)
DE102007042752B4 (de) Verfahren zur Analyse der Zuverlässigkeit technischer Anlagen mit Hilfe von physikalischen Modellen
EP0093947B1 (de) Programmierbare Logikanordnung
DE3520003C2 (de)
DE2659199A1 (de) Logische majoritaetsentscheidungsschaltung
DE102015105879A1 (de) Chip und Verfahren zur Herstellung eines Chips
DE2014649A1 (de) Elektronisches Zuordnernetzwerk
DE4220196A1 (de) Halbleiterspeichervorrichtung mit fehlerkorrekturschaltung und fehlerkorrekturverfahren fuer daten in einer halbleiterspeichervorrichtung
DE4107870C2 (de)
DE10335809B4 (de) Integrierte Schaltung mit einem zu testenden elektronischen Schaltkreis und Testsystem-Anordnung zum Testen der integrierten Schaltung
DE10322246A1 (de) Für Energieversorgung bestimmtes internes Spannungs-Steuergerät mit zwei Schaltkreisen zur Erzeugung von zwei Referenzspannungen für interne Energiezufuhr
DE19601862C2 (de) Vorrichtung und Verfahren zur Entdeckung von fehlerhaften Logikteilschaltungen mittels eines anomalen Ruheversorgungsstroms
EP0203535A2 (de) Verfahren zur Simulation eines Fehlers in einer logischen Schaltung und Schaltungsanordnung zur Durchführung desselben
DE10138142A1 (de) Verfahren zur Analyse einer integrierten elektrischen Schaltung
DE60223043T2 (de) Elektronischer schaltkreis und testverfahren
WO2005026996A2 (de) Verfahren zum prüfen einer elektrischen schaltung
DE10343344B4 (de) Verfahren zum Prüfen einer elektrischen Schaltung
EP0733910B1 (de) Platine mit eingebauter Kontaktfühlerprüfung für integrierte Schaltungen
DE60320057T2 (de) System und Verfahren zur Schaltungsprüfung
DE10343346B4 (de) Verfahren zum Prüfen einer elektrischen Schaltung und Einrichtung zur Durchführung des Verfahrens
EP0757254A2 (de) Integrierte Schaltung
DE3824504A1 (de) Cmos-exklusiv-oder-schaltung
WO2011091795A2 (de) Elektronische schaltungsanordnung zum verarbeiten von binären eingabewerten
DE10200857A1 (de) Verfahren und System zum Finden von Statischen NAND- und NOR-Gattern in einer Schaltung und Identifizieren der FET, die Bestandteil jedes Gatters sind

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BW BY BZ CA CH CN CO CR CU CZ DM DZ EC EE EG ES FI GB GD GE GH HR HU ID IL IN IS JP KE KG KP KR KZ LK LR LS LT LU LV MA MD MG MK MW MX MZ NA NI NO NZ OM PG PH PT RO RU SC SD SE SG SK SL SY TJ TN TR TT TZ UA UG US UZ VC VN ZA ZM

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SZ TZ UG ZM ZW AM AZ BY KG MD RU TJ TM AT BE BG CH CY DE DK EE ES FI FR GB GR HU IE IT MC NL PL PT RO SE SI SK TR BF CF CG CI CM GA GN GQ GW ML MR SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase