DE10343347A1 - Verfahren zum Prüfen einer elektrischen Schaltung - Google Patents

Verfahren zum Prüfen einer elektrischen Schaltung Download PDF

Info

Publication number
DE10343347A1
DE10343347A1 DE10343347A DE10343347A DE10343347A1 DE 10343347 A1 DE10343347 A1 DE 10343347A1 DE 10343347 A DE10343347 A DE 10343347A DE 10343347 A DE10343347 A DE 10343347A DE 10343347 A1 DE10343347 A1 DE 10343347A1
Authority
DE
Germany
Prior art keywords
pattern recognition
electrical
components
modified
netlist
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
DE10343347A
Other languages
English (en)
Inventor
Hans-Ulrich Dipl.-Phys. Armbruster
Tilman Dr. Neunhoeffer
Martin Dr. Frerichs
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
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
Priority to DE10343347A priority Critical patent/DE10343347A1/de
Priority to PCT/DE2004/002047 priority patent/WO2005026996A2/de
Publication of DE10343347A1 publication Critical patent/DE10343347A1/de
Ceased legal-status Critical Current

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

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. DOLLAR A 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

  • 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 einen Entwurfsfehler in einer eine Mehrzahl an elektrischen Bauelementen aufweisenden elektrischen Schaltung angibt. Bei dem erfindungsgemäß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 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.
  • 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 Eingangsspannungen 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 Laufzeitgewinn 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 Funktionsblockes 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 durchfü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 1 bis 6 unterschiedliche Schaltpläne ein und derselben elektrischen Schaltung.
  • Die 1 und 2 zeigen eine als Beispiel zugrunde gelegte elektrische Schaltung. Diese elektrische Schaltung besteht aus 8 miteinander verbundenen Transistoren M11, M12, M21, M22, M31, M32, M41 und M42. Die Transistoren M11, 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 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 2 durch den Block „inv3" gebildet. Das Ausgangssignal des Inverters inv3 wird in den 1 und 2 an dem Netzknoten „net1" ausgegeben.
  • Die Netzknoten – nachfolgend kurz „Netze" genannt – net1 und net2 sind elektrisch entweder miteinander verbunden oder voneinander getrennt. Ob die beiden Netze net1 und net2 eine elektrische Verbindung aufweisen, hängt von einem Transfergatter T1 ab, das durch die beiden Transistoren M41 und M42 gebildet ist. Den jeweiligen Schaltungszustand des Transfergatters T1 bestimmen Eingangssignale EN und ENQ.
  • Ist das Transfergatter T1 durchgeschaltet, so gelangt das Ausgangssignal des Inverters inv3 zum Eingang eines durch die beiden Transistoren M11 und M12 gebildeten Inverters inv1 und bildet für diesen Inverter inv1 ein Eingangssignal.
  • Ist hingegen das Transfergatter T1 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 M22 gebildeten Inverters inv2 das Ausgangssignal OUT des Inverters inv1 stabil. Die Schaltung gemäß den 1 und 2 könnte man somit als Latch-Baustein bzw. Speicherbaustein bezeichnen.
  • Bei der Schaltung gemäß den 1 und 2 kann nun der Fall eintreten, dass – bei einer logischen „Null" am Eingang IN des Inverters inv3 und bei geöffnetem Transfergatter T1 – 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 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 M11 und M12 um einen Inverter handelt (Inverter inv1), in dessen Rückkopplungszweig 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 T1 bilden, das die Treibertransistoren M31 und M32 mit dem Eingang des Inverters inv1 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 1 vollständig erfasst und als Schaltplan bzw. Netzliste beispielsweise in einer computerlesbaren Datei abgespeichert.
    • 2. Die elektrische Schaltung gemäß der 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 Mustererkennungsschritt 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:
      Figure 00080001
      Figure 00090001
  • 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 „in1" und „out1". Das Netz „out1" darf dabei nicht den Netztyp „fixedV" tragen, da das Potential am Ausgang out1 des Inverters vom Potential am Eingang in1 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 inv1, inv2 und inv3 gebildet, die bereits oben im Zusammenhang mit den Erläuterungen zur 2 eingeführt worden sind. Auf diese Inverter inv1, 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 inv1 die Instanz x1 vom Typ „pmos" dem Transistor M11; die Instanz x2 vom Typ „nmos" dem Transistor M12. Das mit den beiden Gate-Anschlüssen der Transistoren M11 und M12 verbundene Netz „in1" wird bei dem Inverter inv1 als Netz „net2" identifiziert. Das Netz „out1", 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 1 erkannt, sondern es werden darüber hinaus auch vorgegebene Parameter, nämlich die Weite (=w) und die Länge (=l) der jeweiligen Transistoren, weiter verarbeitet. Die entsprechenden Transistorparameter sind in der 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 „inv1", „inv2" und „inv3" enthält als Parameter jeweils die Verhältnisse w/l – also den Quotienten zwischen Weite und Länge – für jeden der zugehörigen Einzeltransistoren; die Verhältnisse w/l werden mit den Variablen wlp (für den p-Kanal Transistor) und wln (für den n-Kanal Transistor) bezeichnet. Dabei gilt
    wlp = w/l für p-Kanal Transistoren und
    wln = W/l 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:
      Figure 00100001
  • Mit dieser Regel werden die beiden Transistoren M41 und M42 aufgefunden, die zusammen den Block T1, also das Transfergatter T1, bilden. Das aufgefundene Transfergatter erhält den Typ „trans". Als Resultat ergibt sich dann der Schaltkreis wie er in der 2 beschrieben ist.
  • Wiederum wird das Verhältnis zwischen Weite (wp und wn) und Länge (lp und ln) der Transistoren als Parameter abgespeichert. Dabei ist in der 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 l = 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 l = 0,5 beträgt.
    • 5. Ausgehend von der Netzliste bzw. dem Schaltplan gemäß der 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:
      Figure 00110001
  • Aufgrund dieser Regel wird erkannt, dass die beiden Inverter inv1 und inv2 eine Rückkoppelschleife bilden. Daher wird diese Schleife zu einer Zelle „loop1" zusammengefasst. Der Zelle loop1 wird der Typ „loop" zugeordnet. Die Verhältnisse w/l der zugeordneten Transistoren werden für diese Zelle loop1 als wlpinv1, wlninv1, wlpinv2 und wlinv2 gespeichert. Dabei werden folgende Zahlenwerte erhalten:
    wlpinv1 = wlp (inv1) = 4
    wlninv1 = wln (inv1) = 2
    wlpinv2 = wlp (inv2) = 1
    wlninv2 = wln (inv2) = 1.
  • Das Ergebnis der Zellenbildung der Zelle loop1 ist in der 3 dargestellt. Die entsprechenden Parameter der Zelle loop1 sind in der 3 ebenfalls angegeben.
    • 6. Bei dem Schritt unter Punkt 5 wurden die beiden Inverter inv1 und inv2 zu der Zelle loop1 zusammengefasst, da diese beiden Inverter eine Rückkoppelschleife bildeten. Der Inverter inv3 hingegen ließ sich keiner „Inverterschleife" zuordnen. Um nun erkennen zu können, welche Transistoren als Treibertransistoren für die Zelle loop1 in Frage kommen, müssen in dem Schaltplan bzw. in der Netzliste alle Transistoren, die nicht zur Zelle loop1 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:
      Figure 00120001
  • Gemäß dieser „Inverter-Auflösungsregel" wird der Inverter inv3 gemäß der 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. 4).
  • Bezüglich der beiden Transistoren M31 und M32 entspricht der Status gemäß der 4 somit dem ursprünglichen Status gemäß der 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 „loop1" und die Transfergatterzelle des Typs „trans", die wie bereits unter Punkt 4 erläutert erkannt wird, zu einer neuen Zelle des Typs „transloop1". Die Regel hierzu lautet wie folgt:
      Figure 00130001
  • Die w/l-Verhältnisse – also jeweils das Verhältnis zwischen Transistorweite und Transistorlänge – werden als neue Parameter auf die neu gebildete Zelle „transloop1" übertragen. Des Weiteren werden die Transistorparameter wlp und wln der Transfergatterzelle T1 als wlptrans und wlntrans übertragen. Dies ist in der 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 transloop1 selbst erhält den Typ „transloop".
    • 8. Ausgehend von der in der 5 dargestellten Netzliste bzw. ausgehend von dem in der 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:
      Figure 00140001
  • 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 „net1" 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/l-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 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:
      Figure 00140002
      Figure 00150001
  • Die dieser Regel zugrunde gelegte Gesamtstruktur ist in der 6 dargestellt. Sie weist drei Bestandteile bzw. drei Baugruppen auf, nämlich die transloop-Struktur mit der Bezeichnung „transloop1" 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/l-Verhältnisse aufweisen, die es den Treibertransistoren M31 bzw. M32 ermöglichen, den durch die beiden Transistoren M11 und M12 gebildeten Inverter inv1 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. 6 und 1):
    1/(1/wl[pdriver] + 1/wlptrans[transloop1]) > 8∙wlninv1[transloop1]
    1/(1/wl[ndriver] + 1/wlntrans[transloop1]) > 2∙wlpinv1[transloop1]
    bzw.
    1/(l[M31]/w[M31] + l[M41]/w[M41]) > 8∙w[M22]/l[M22]
    1/(l[M32]/w[M32]) + l[M42]/w[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 (18)

  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 gekennzeichnet , 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 gekennzeichnet, 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.
DE10343347A 2003-09-12 2003-09-12 Verfahren zum Prüfen einer elektrischen Schaltung Ceased DE10343347A1 (de)

Priority Applications (2)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
DE10343347A1 true DE10343347A1 (de) 2005-04-14

Family

ID=34305905

Family Applications (1)

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

Country Status (2)

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

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69227231T2 (de) * 1991-11-08 1999-05-20 Koninkl Philips Electronics Nv Verfahren und Einrichtung zum Aufspüren einer vorspezifizierten Teilschaltung in einer elektrischen Schaltung, Verfahren zum Erstellen von Masken für Integrierte Schaltungen unter Benutzung des Verfahrens
DE10160513A1 (de) * 2001-10-31 2003-07-10 Infineon Technologies Ag Verfahren zur Verarbeitung von Daten, die Parameter bezüglich einer Anzahl Bauelemente einer elektrischen Schaltung darstellen

Family Cites Families (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
CA2315552A1 (en) * 2000-08-09 2002-02-09 Semiconductor Insights Inc. Gate extractor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69227231T2 (de) * 1991-11-08 1999-05-20 Koninkl Philips Electronics Nv Verfahren und Einrichtung zum Aufspüren einer vorspezifizierten Teilschaltung in einer elektrischen Schaltung, Verfahren zum Erstellen von Masken für Integrierte Schaltungen unter Benutzung des Verfahrens
DE10160513A1 (de) * 2001-10-31 2003-07-10 Infineon Technologies Ag Verfahren zur Verarbeitung von Daten, die Parameter bezüglich einer Anzahl Bauelemente einer elektrischen Schaltung darstellen

Also Published As

Publication number Publication date
WO2005026996A2 (de) 2005-03-24
WO2005026996A3 (de) 2006-04-20

Similar Documents

Publication Publication Date Title
DE102007042752B4 (de) Verfahren zur Analyse der Zuverlässigkeit technischer Anlagen mit Hilfe von physikalischen Modellen
EP0093947B1 (de) Programmierbare Logikanordnung
DE3130714A1 (de) "testsystem fuer integrierte halbleiterschaltungselemente mit integration grossen massstabs"
DE102004012239A1 (de) Schaltung zum Transformieren eines Signals in einem Differenzmodus in ein unsymmetrisches Signal bei reduzierter Leistungsaufnahme im Standby-Zustand
EP0010173A1 (de) Halbleiterplättchen mit verbesserter Prüfbarkeit der monolithisch hochintegrierten Schaltungen
DE19581814B4 (de) Halbleiter-Testchip mit waferintegrierter Schaltmatrix
DE4220196A1 (de) Halbleiterspeichervorrichtung mit fehlerkorrekturschaltung und fehlerkorrekturverfahren fuer daten in einer halbleiterspeichervorrichtung
DE60019255T2 (de) Verfahren und Vorrichtung zur Trimmung von elektronischen Schaltungen
DE10335809B4 (de) Integrierte Schaltung mit einem zu testenden elektronischen Schaltkreis und Testsystem-Anordnung zum Testen der integrierten Schaltung
EP0203535B1 (de) Verfahren zur Simulation eines Fehlers in einer logischen Schaltung und Schaltungsanordnung zur Durchführung desselben
DE19601862C2 (de) Vorrichtung und Verfahren zur Entdeckung von fehlerhaften Logikteilschaltungen mittels eines anomalen Ruheversorgungsstroms
DE10322246A1 (de) Für Energieversorgung bestimmtes internes Spannungs-Steuergerät mit zwei Schaltkreisen zur Erzeugung von zwei Referenzspannungen für interne Energiezufuhr
DE10138142A1 (de) Verfahren zur Analyse einer integrierten elektrischen Schaltung
DE10343347A1 (de) Verfahren zum Prüfen einer elektrischen Schaltung
DE60223043T2 (de) Elektronischer schaltkreis und testverfahren
EP1495542B1 (de) Schaltungsanordnung und verfahren zur erzeugung eines dual-rail-signals
DE10343344B4 (de) Verfahren zum Prüfen einer elektrischen Schaltung
DE2335824A1 (de) Verfahren und schaltungsanordnung zum pruefen von verbindungen
EP1068580B1 (de) Verfahren zum vergleich elektrischer schaltungen
DE60320057T2 (de) System und Verfahren zur Schaltungsprüfung
DE60001450T2 (de) Vorrichtung zur funktionellen Widergabe einer spezifischen integrierten Halbleiterschaltung und deren Verwendung als Emulationsvorrichtung
DE2848621C2 (de) Verfahren zur rechnergesteuerten Simulation der Funktion einer mit Logikschaltkreisen aufzubauenden Schaltungsanordnung
EP0757254A2 (de) Integrierte Schaltung
DE10343346B4 (de) Verfahren zum Prüfen einer elektrischen Schaltung und Einrichtung zur Durchführung des Verfahrens
DE60103154T2 (de) Automatisches gerät für testbarkeitsanalyse

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection