DE10200857A1 - Verfahren und System zum Finden von Statischen NAND- und NOR-Gattern in einer Schaltung und Identifizieren der FET, die Bestandteil jedes Gatters sind - Google Patents

Verfahren und System zum Finden von Statischen NAND- und NOR-Gattern in einer Schaltung und Identifizieren der FET, die Bestandteil jedes Gatters sind

Info

Publication number
DE10200857A1
DE10200857A1 DE10200857A DE10200857A DE10200857A1 DE 10200857 A1 DE10200857 A1 DE 10200857A1 DE 10200857 A DE10200857 A DE 10200857A DE 10200857 A DE10200857 A DE 10200857A DE 10200857 A1 DE10200857 A1 DE 10200857A1
Authority
DE
Germany
Prior art keywords
fet
identifying
gate
branch
directly switched
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.)
Withdrawn
Application number
DE10200857A
Other languages
English (en)
Inventor
S Brandon Keller
Gregory Dennis Rogers
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE10200857A1 publication Critical patent/DE10200857A1/de
Withdrawn 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

Ein Verfahren zum Identifizieren von FET, die NAND- und NOR-Gatter in einer Schaltungsentwicklung mit zahlreichen FET umfassen, ist offenbart. Ein potentieller Logikgatter-Ausgangsknoten wird abgefragt, um die Konfiguration von FET um den Ausgangsknoten zu bestimmen. Die FET, die direkt zwischen den Ausgangsknoten und entweder ein hohes oder ein niedriges Potential (VDD oder GND) geschaltet sind, werden identifiziert und zusammen mit ihren entsprechenden Gate-Signalen in einem Speicher gespeichert. Zweig-FET, die von einem anderen Typ sind als die direkt geschalteten FET und die zwischen dem Ausgangsknoten und entweder VDD oder GND kanalgeschaltet sind, werden ebenfalls identifiziert. Falls ein Gate-Signal für jeden FET in einem Zweig einem Gate-Signal eines direkt geschalteten FET an dem gleichen Ausgangsknoten entspricht, dann existiert ein Logikgatter.

Description

Die vorliegende Erfindung bezieht sich allgemein auf elek­ tronische Logikgatter, die aus Transistoren bestehen. Ins­ besondere bezieht sich die Erfindung auf ein Softwarever­ fahren zum Identifizieren von FET, die Logikgattern zuge­ ordnet sind.
Bei dem Gebiet der Halbleiterchipentwicklung ist es wün­ schenswert, die Topologie eines Systems zu identifizieren. Bei dem Entwicklungsprozeß können vorgeschlagene integrier­ te Schaltungs-(IC-)Chipentwürfe unter Verwendung eines Computersystems erzeugt werden, wie z. B. einer rechnerge­ stützten Entwurfsanwendung (CAD) mit elektronischem Entwurf (E-CAD). Ein Entwurf kann in dem Computersystem gespeichert werden, so daß derselbe vor der Implementierung getestet werden kann. Insbesondere ist es wünschenswert, die Topolo­ gie eines Entwurfs zu identifizieren, der in einem Compu­ tersystem gespeichert ist, durch Identifizieren von Feldef­ fekttransistoren (FET), die ein Bestandteil sind und Logik­ gatter umfassen. Ein Entwurf kann Tausende oder Millionen oder mehr FET auf dem Chip aufweisen, so daß es unpraktisch ist, Topologien zu identifizieren, ohne ein automatisches Verfahren zu verwenden. Bestehende Verfahren zum Identifi­ zieren von Topologien sind mühsam, weil dieselben nicht in der Lage sind, die Bestandteil-FET genau zu identifizieren. Die bestehenden Verfahren überprüfen lediglich das Vorlie­ gen einer NAND- oder NOR-Topologie, unabhängig von den Si­ gnalen, die jeden FET treiben, der Bestandteil in jedem NAND- oder NOR-Gatter ist.
Außerdem sind bestehende Verfahren nicht in der Lage, "zu­ sätzliche FET" genau nachzuweisen. Oft können zusätzliche FET - diejenigen FET, die nicht Teil eines NAND- oder NOR- Gatters sind - mit einem Knoten des NAND- oder NOR-Gatters verbunden sein. Dies ergibt bei bestehenden Verfahren ein Problem, die annehmen, daß keine NAND- oder NOR-Gatter den Knoten mit dem zusätzlichen FET treiben. In der Tat ist diese Annahme ungenau. Was benötigt wird, ist ein verbes­ sertes Verfahren zum Identifizieren der FET, die Bestand­ teil von NAND- und NOR-Gattern sind.
Es ist die Aufgabe der vorliegenden Erfindung, ein Verfah­ ren, ein Medium und ein System zu schaffen, die ein zuver­ lässiges Identifizieren der FET, die Bestandteil eines NAND- und NOR-Gatters bilden, ermöglichen.
Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1, ein Medium gemäß Anspruch 8 und ein System gemäß Anspruch 15 gelöst.
Es ist ein Verfahren zum Identifizieren von FET, die in NAND- und NOR-Logikgattern in einem Schaltungsentwurf mit zahlreichen FET umfaßt sind, offenbart. Ein potentieller Logikgatter-Ausgangsknoten wird abgefragt, um die Konfigu­ ration von FET um den Ausgangsknoten zu bestimmen. Die FET, die direkt zwischen den Ausgangsknoten und entweder ein ho­ hes oder ein niedriges Potential (VDD oder GND) geschaltet sind, werden identifiziert. Falls die direkt geschalteten FET p-Typ-FET (PFET) sind, die zwischen den Ausgang und VDD geschaltet sind, dann bilden dieselben potentiell Teil ei­ nes NAND-Gatters und sind zusammen mit einem Gate-Signal, das jedem solchen direkt geschalteten PFET entspricht, in dem Speicher gespeichert. Falls die direkt geschalteten FET n-Typ-FET (NFET) sind, die zwischen den Ausgang und GND ge­ schaltet sind, dann bilden dieselben potentiell Teil eines NOR-Gatters und werden ebenfalls zusammen mit ihren Gate- Signalen in dem Speicher gespeichert. Zweig-FET, die von einem anderen Typ sind als die direkt geschalteten FET, und die zwischen dem Ausgangsknoten und entweder VDD oder GND kanalgeschaltet sind, werden ebenfalls identifiziert. Falls ein Gate-Signal für jeden FET in einem Zweig einem Gate- Signal eines direkt geschalteten FET an dem gleichen Aus­ gangsknoten entspricht, dann liegt ein Logikgatter vor. Ei­ ne Liste dieser Zweig-FET und der demselben zugeordneten Gate-Signale ist in dem Speicher gespeichert. Die gespei­ cherten Zweig-FET-Informationen werden mit den Informatio­ nen für die direkt geschalteten FET verglichen, um auf der Basis ihrer Gate-Signale die FET zu identifizieren, die das Logikgatter bilden.
Bei der Verwendung identifiziert das Verfahren PFET, die direkt zwischen den Ausgangsknoten und VDD geschaltet sind, um NAND-Gatter zu identifizieren. Das Verfahren identifi­ ziert außerdem Zweig-NFET, die von dem Ausgangsknoten zu GND kanalgeschaltet sind. Die Namen der PFET-Bauelemente und deren Gate-Signale werden in einer PFET-Hash-Tabelle aufgezeichnet. Die Zweig-NFET-Bauelementnamen und Gate- Signalnamen werden in einer NFET-Hash-Tabelle aufgezeich­ net, falls jedes der Gate-Signale auf den Zweig-NFET eben­ falls in der PFET-Hash-Tabelle vorliegt. Das Verfahren ver­ gleicht die Gate-Signale, die in jeder Hash-Tabelle er­ scheinen, und verweist auf die FET-Bauelementnamen, die die gleichen Gate-Signale aufweisen. Diese Bauelemente und Si­ gnale werden als die Bestandteil-FET des NAND-Gatters aus­ gegeben, das die Gate-Signale als Eingangssignale aufweist.
Für die Erfassung von NOR-Gattern wird das Verfahren umge­ kehrt. Die direkt geschalteten FET sind NFET, die zwischen den Ausgangsknoten und GND geschaltet sind. Die Zweig-FET werden kanalgeschaltete PFET sein, und der Zweig erstreckt sich von dem Ausgangsknoten zu VDD. Diese Bauelemente und ihre Gate-Signale sind in jeweiligen Hash-Tabellen gespei­ chert. Das Verfahren vergleicht die Signale, die in jeder Tabelle erscheinen, und gibt diese Signale und die FET- Bauelementnamen als die Bestandteil-FET des NOR-Gatters aus, das die Gate-Signale als Eingangssignale aufweist.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeich­ nungen näher erläutert. Es zeigen
Fig. 1A bis 1C herkömmliche NAND-Gatter, die durch das Verfahren identifiziert werden;
Fig. 2A bis 2B herkömmliche NOR-Gatter, die durch das Verfahren identifiziert werden;
Fig. 3 herkömmliche miteinander verbundene FET, die ein NAND-Gatter umfassen, das durch das Verfahren identifiziert wird;
Fig. 4 ein Blockdiagramm eines Computersystems, auf dem das Verfahren durchgeführt werden kann;
Fig. 5 ein Flußdiagramm des Verfahrens zum Identifizie­ ren von entweder NAND- oder NOR-Gattern;
Fig. 6 ein Flußdiagramm des Verfahrens zum Identifizie­ ren von NAND-Gattern;
Fig. 7 ein detaillierteres Flußdiagramm des in Fig. 6 gezeigten Verfahrens;
Fig. 8A und 8B Hash-Tabellen, die durch das Verfahren verwendet werden;
Fig. 9 ein Flußdiagramm des Verfahrens zum Identifizie­ ren von NOR-Gattern; und
Fig. 10 ein detaillierteres Flußdiagramm des in Fig. 9 gezeigten Verfahrens.
Fig. 1A zeigt ein Schaltbild eines 2-Eingang-NAND-Gatters, das zwei p-Typ-FET (PFET) P1, P2 umfaßt, die zu einer Span­ nung VDD und zu einem Ausgangsknoten des NAND-Gatters, der mit "out" bezeichnet ist, parallel geschaltet sind. Das Lo­ gikgatter umfaßt außerdem zwei n-Typ-FET (NFET) N1, N2, die zwischen dem Ausgangsknoten und Masse in Reihe geschaltet sind. Der Weg von dem Ausgangsknoten zu GND durch N1 und N2, und die Wege von dem Ausgangsknoten zu VDD durch P1 und P2 können als Zweige bezeichnet werden. Ein Zweig bezieht sich auf jeden Schaltungsweg durch einen oder mehrere FET von einem Ausgangsknoten. Der Zweig kann an einem GND oder VDD enden oder auch nicht. FET-Gate-Signale A und B bilden die NAND-Gattereingangssignale in Fig. 1A. Jeder FET weist einen Gatteranschluß zum Empfangen eines Signals, wie z. B. A und B in Fig. 1A, auf. Jeder FET weist Drain- und Source- Anschlüsse auf, die direkt oder indirekt durch andere FET entweder mit dem Ausgangsknoten oder einem Potential ver­ bunden sind, das mit VDD oder GND bezeichnet ist. Das NAND- Gatter kann Teil eines integrierten Schaltungs-(IC-)Chip­ entwurfs sein, der in einem Computerspeicher gespeichert ist, wie z. B. einem Höchstintegrations-(VLSI-)Entwurf. Eine Computerdatendatei, wie z. B. eine Netzliste, kann In­ formationen über die FET und andere Bauelemente und Verbin­ dungen in dem Entwurf enthalten.
Wie er hierin verwendet wird, bezieht sich der Begriff "di­ rekt geschalteter" (direkt verbundener) FET auf einen FET, der direkt zwischen einen Ausgangsknoten oder potentiellen Ausgangsknoten eines Logikgatters und entweder VDD oder GND geschaltet ist, wie z. B. der PFET in Fig. 1A. Wie er hier­ in verwendet wird, bezieht sich der Begriff "kanalgeschal­ teter" (kanalverbundener) FET auf einen FET, der "in Reihe" geschaltet ist, wobei ein Drain- oder Source-Anschluß mit einem Drain- oder Source-Anschluß eines anderen FET verbun­ den ist. In Fig. 1A sind die NFET beispielsweise kanalge­ schaltete FET. Kanalgeschaltete FET, die zwischen den Aus­ gangsknoten und entweder VDD oder GND in Reihe zu anderen FET geschaltet sind, wie z. B. die in Fig. 1A gezeigten NFET, werden als "Zweig-FET" bezeichnet. VDD und GND bezie­ hen sich auf elektrische Potentiale, wobei VDD das höhere Potential oder die höhere Spannung und GND das niedrigere Potential ist. Bei einigen Entwürfen kann sich VDD auf die Stromquelle beziehen und GND kann sich auf eine Masse be­ ziehen. "Ausgang" oder "Ausgangsknoten" bezieht sich auf einen zu testenden Knoten, der potentiell der Ausgang eines Logikgatters ist.
Fig. 1B zeigt ein alternatives Ausführungsbeispiel eines 2- Eingang-NAND-Gatters mit zusätzlichen n-Typ-FET. Ein Fach­ mann auf diesem Gebiet wird erkennen, daß jede Anzahl von Konfigurationen mit unterschiedlichen Anzahlen von FET ver­ wendet werden kann, um das Grund-NAND-Gatter zu erzeugen, abhängig von den physikalischen Abmessungen der FET und den Bedürfnissen des Entwicklers. Fig. 1C zeigt ein 3-Eingang- NAND-Gatter mit den Eingängen A, B und C.
Fig. 2A zeigt ein 2-Eingang-NOR-Gatter, das zwei p-Typ-FET umfaßt, die zwischen einer Spannung VDD und einem Ausgangs­ knoten in Reihe geschaltet sind (Zweig-FET). Das Gatter um­ faßt ferner zwei n-Typ-FET, die parallel zwischen dem Aus­ gangsgatter und der Masse geschaltet sind (direkt geschal­ tete FET). Die Eingänge A und B sind die Gattereingänge. Fig. 2B zeigt ein 3-Eingang-NOR-Gatter mit den Eingängen A, B und C.
Fig. 3 zeigt ein Schema eines Abschnitts einer Schaltung mit drei p-Typ-FET, die von einer Spannung zu einem Aus­ gangsknoten geschaltet sind. Fig. 3 zeigt ferner zwei n- Typ-FET, die zwischen Masse und den Ausgangsknoten in Reihe geschaltet sind. Fig. 3 zeigt ein 2-Eingang-NAND-Gatter mit Eingängen A und B und einem zusätzlichen p-Typ-FET mit dem Eingang C, der zwischen den Ausgangsknoten und die Spannung VDD geschaltet ist. Bestehende Verfahren bestimmen die Na­ tur der FET in dem Beispiel von Fig. 3 nicht genau, weil sie durch den zusätzlichen FET verwirrt werden.
Fig. 4 zeigt ein Blockdiagramm eines Computersystems 400 mit einem Prozessor 410, der mit einem Eingabegerät 420 und einem Anzeigegerät 430 verbunden ist. Der Prozessor 410 greift auf den Speicher 440 in dem Computersystem 400 zu, der ein VLSI-Schaltungsmodell 450 speichert. Ein CAD-Tool 470 zum Analysieren des Schaltungsmodells 450 ist ebenfalls in dem Speicher 440 gespeichert. Bei der Verwendung emp­ fängt das Eingabegerät 420 Befehle, die den Prozessor 410 anweisen, die CAD-Tool-Software 470 aufzurufen, um eine Schaltungsanalyse auf dem Modell 450 durchzuführen. Die Er­ gebnisse der Analyse können auf dem Anzeigegerät 430 ange­ zeigt werden. Während der Analyse erzeugt der Prozessor 410 eine Datenstruktur, wie z. B. eine Hash-Tabelle 460, in dem Speicher 440, um Informationen über die FET zu speichern.
Fig. 5 zeigt ein Flußdiagramm des Verfahrens zum Finden von entweder NAND- oder NOR-Gattern. Es wird ein Ausgangsknoten ausgewählt, bei dem das Verfahren durchgeführt wird. Das Verfahren kann beispielsweise in Softwaremodule implemen­ tiert werden, die in dem Speicher 440 gespeichert sind, für die Ausführung durch den Prozessor 410. Für den zu testen­ den Knoten identifiziert, 110, das Verfahren direkt ge­ schaltete FET eines ersten Typs (entweder PFET oder NFET). Diese können Mehrfach-FET mit einer Drain und einer Source sein, die direkt zwischen den Ausgangsknoten und ein Poten­ tial (entweder VDD oder GND) geschaltet sind. In dem Fall eines NAND-Gatters wären diese PFET, die zwischen den Aus­ gangsknoten und VDD geschaltet sind. In dem Fall eines NOR- Gatters wären diese NFET, die zwischen den Ausgangsknoten und GND geschaltet sind. Das Verfahren kann den Namen des FET und den Namen des Gate-Signals des FET speichern. Diese Namen können jegliche Identifizierer sein, die Informatio­ nen über den FET und sein Gate-Signal geben.
Das Verfahren identifiziert 120 alle Zweig-FET, die mit dem Ausgangsknoten verbunden sind. Dies können Mehrfach-FET sein, deren Drains und Sources zwischen den Ausgangsknoten und ein Potential (entweder VDD oder GND) in Reihe kanalge­ schaltet sind. In dem Fall eines NAND-Gatters wären diese NFET, die zwischen den Ausgangsknoten und GND geschaltet sind. In dem Fall eines NOR-Gatters wären diese PFET, die zwischen den Ausgangsknoten und VDD geschaltet sind. Jedes Gate-Signal für die FET, die Bestandteil eines speziellen Zweiges bilden, wird identifiziert. Das Verfahren ver­ gleicht 130 die Namen der Gate-Signale der Zweig-FET mit den Namen der Gate-Signale der direkt geschalteten FET, de­ ren Namen in dem Speicher 440 gespeichert sein können. Falls alle Gate-Signale der FET, die Bestandteil eines Zweiges bilden, ebenfalls Gate-Signale in den direkt ge­ schalteten FET sind, die sich auf den gleichen Ausgangskno­ ten beziehen, dann folgert das Verfahren, daß ein NAND- oder NOR-Gatter vorliegt, das ein Ausgangssignal an dem ausgewählten Ausgangsknoten aufweist und Eingangssignale als gemeinsame Gate-Signale aufweist, die sowohl in den Zweig-FET als auch den direkt geschalteten FET vorliegen. Falls es andere direkt geschaltete FET mit unterschiedli­ chen Gate-Signalen gibt, dann sind diese FET nicht Teil des Logikgatters. Die Ergebnisse der Gatteranalyse können an das Anzeigegerät 430 ausgegeben werden.
Fig. 6 zeigt ein Flußdiagramm des Verfahrens, wie es zum Identifizieren von NAND-Gattern implementiert ist. Unter Verwendung eines ausgewählten Ausgangsknotens identifiziert 210 das Verfahren direkt geschaltete PFET, die mit dem Aus­ gangsknoten verbunden sind, die potentiell in NAND-Gattern verwendet werden. Diese sind PFET, die zwischen VDD und ei­ nen Logikgatterausgang geschaltet sind. Das Verfahren iden­ tifiziert 220 außerdem Zweige, die mit dem Ausgangsknoten verbunden sind, die potentiell in NAND-Gattern verwendet werden. Diese sind Zweig-NFET, die zwischen den Ausgang und GND mit anderen NFET in Reihe geschaltet sind. Das Verfah­ ren vergleicht 230 die Gate-Signale der Zweig-NFET mit den Gate-Signalen der direkt geschalteten PFET. Falls jedes der Gate-Signale in den Zweig-NFET einem Gate-Signal auf einem direkt geschalteten PFET entspricht, dann liegt ein NAND- Gatter vor, das die gemeinsamen Gate-Signale als Eingangs­ signale aufweist. Falls zusätzliche direkt geschaltete FET mit anderen Gate-Signalen in dem Entwurf vorliegen, dann sind dieselben nicht Teil des NAND-Gatters.
Fig. 7 zeigt ein detaillierteres Flußdiagramm eines bevor­ zugten Ausführungsbeispiels des Verfahrens zum Identifizie­ ren von NAND-Gattern. Ein potentieller Logikgatter- Ausgangsknoten, der getestet wird, wird ausgewählt 202. PFET, die dem Ausgangsknoten zugeordnet sind, werden iden­ tifiziert 212. Das Verfahren bestimmt 214, ob ein speziel­ ler PFET zwischen den Ausgangsknoten und VDD kanalgeschal­ tet ist. Falls dies der Fall ist, dann werden der PFET-Name und der Name des Gate-Signals desselben in einer Daten­ struktur, wie z. B. einer Hash-Tabelle, gespeichert 216. Falls das Gate-Signal bereits gespeichert ist, dann kann der FET-Name mit dem bestehenden Signaleintrag gespeichert werden. Dieser Prozeß des Identifizierens 210 von PFET, die potentiell in NAND-Gattern verwendet werden, wird wieder­ holt, 218, bis alle PFET berücksichtigt sind.
Das Verfahren identifiziert 222 dann die NFET, die dem Aus­ gangsknoten zugeordnet sind, und bestimmt 224, ob ein Zweig mehr als einen NFET aufweist. Falls mehr als ein Zweig-NFET kanalgeschaltet ist 224, dann überlegt das Verfahren 226, ob der Zweig mit GND verbunden ist. Falls derselbe nicht mit GND verbunden ist, dann schreitet das Verfahren zu dem nächsten NFET fort. Falls der Zweig mit GND verbunden ist, dann bestimmt 228 das Verfahren, ob jedes NFET-Gate-Signal des Zweigs in der PFET-Hash-Tabelle gespeichert ist. Falls nicht jedes Signal gespeichert ist, schreitet das Verfahren fort, um den nächsten NFET zu untersuchen. Falls jedes Si­ gnal gespeichert ist, dann sortiert 232 das Verfahren die Signalnamen nach Zweig. Auf der Basis der Signalnamen er­ zeugt 234 das Verfahren Schlüsselwerte, die die Liste von Signalen sind, die in einem Zweig vorliegt. Diese Schlüs­ selwerte werden zusammen mit den FET-Bestandteilen in einer NFET-Hash-Tabelle gespeichert 236, die diese Gate-Signale aufweisen. Falls der Schlüsselwert bereits in der Hash- Tabelle gespeichert ist, dann kann die Liste von Bestand­ teil-FET zu der bestehenden Liste von FET hinzugefügt wer­ den, die dem Schlüsselwert entspricht. Dieser Prozeß des Identifizierens 220 von NFET, die potentiell in NAND- Gattern verwendet werden, setzt sich fort, bis alle NFET beachtet wurden 238.
Sobald die PFET-Namen in der PFET-Hash-Tabelle gespeichert sind, und die NFET-Schlüsselwerte in der NFET-Hash-Tabelle gespeichert sind, vergleicht 230 das Verfahren die Signale, die in beiden Tabellen vorliegen, um zu bestimmen, ob ein NAND-Gatter existiert. Unter Verwendung der NFET-Hash- Tabelle identifiziert 240 das Verfahren NFET, die jedem Schlüsselwert zugeordnet sind. Die Namen der NFET können ausgegeben werden 242. Das Verfahren identifiziert 244 dann jeden PFET mit einem Gate-Signal, das einem NFET-Gate- Signal entspricht. Diese PFET können ausgegeben werden 246. Die gemeinsamen Signale sind die Eingangssignale zu dem NAND-Gatter, der potentielle Ausgangsknoten ist der Ausgang des NAND-Gatters und die identifizierten FET werden in dem NAND-Gatter verwendet.
Fig. 8A zeigt ein Beispiel einer Signal-Hash-Tabelle 10 zum Speichern von Signalen, die speziellen Gattern zugeordnet sind. Die Signal-Hash-Tabelle 10 kann sich in dem Speicher 440 des Computersystems 400 befinden. Eine Spalte speichert die Namen von Gate-Signalen. Die andere speichert die ent­ sprechenden FET, die diese Signale empfangen. Die Signal- Hash-Tabelle 10 kann verwendet werden, um Signale und FET zu speichern, die sich auf den direkt geschalteten FET be­ ziehen, und könnte bei dem in Fig. 5 und 6 beschriebenen Beispiel des NAND-Gatters verwendet werden, um Informatio­ nen über die PFET zu speichern.
Fig. 8B zeigt ein Beispiel einer Schlüssel-Hash-Tabelle 12 zum Speichern von Beziehungen zwischen Zweig-FET und Signa­ len. Die Schlüssel-Hash-Tabelle 12 kann sich ebenfalls in dem Speicher 440 eines Computersystems 400 befinden. Eine Spalte speichert die Namen von Signalen bei einem einzelnen Zweig (Schlüsselwerte). Die andere speichert die entspre­ chenden Bestandteil-FET in dem Zweig. Bei dem in Fig. 6 und 7 beschriebenen Beispiel des NAND-Gatters könnte die Schlüssel-Hash-Tabelle 12 verwendet werden, um Informatio­ nen über die NFET zu speichern, die Zweige bilden. Obwohl Hash-Tabellen gezeigt sind, kann jeder Typ von Datenstruk­ tur verwendet werden, um die in den Fig. 8A und 8B gezeig­ ten Informationen zu speichern.
Fig. 9 zeigt ein Flußdiagramm einer weiteren Beispielanwen­ dung des Verfahrens von Fig. 5, wie es bei der Identifizie­ rung von NOR-Gattern implementiert wird. Unter Verwendung eines ausgewählten Ausgangsknotens identifiziert 310 das Verfahren direkt geschaltete NFET, die mit einem Ausgangs­ knoten verbunden sind, die potentiell in NOR-Gattern ver­ wendet werden. Diese sind NFET, die zwischen GND und einen Logikgatterausgang geschaltet sind. Das Verfahren identifi­ ziert 320 außerdem Zweige, die mit dem Ausgangsknoten ver­ bunden sind, die potentiell in NOR-Gattern verwendet wer­ den. Diese sind Zweig-PFET, die zwischen den Ausgang und VDD in Reihe mit anderen PFET geschaltet sind. Das Verfah­ ren vergleicht 330 die Gate-Signale der Zweig-PFET mit den Gate-Signalen der direkt geschalteten NFET. Falls jedes der Gate-Signale in den Zweig-PFET einem Gate-Signal auf einem direkt geschalteten NFET entspricht, dann existiert ein NOR-Gatter, das die gemeinsamen Gate-Signale als Eingangs­ signale aufweist. Falls zusätzliche direkt geschaltete FET mit unterschiedlichen Gate-Signalen in dem Entwurf vorlie­ gen, dann sind dieselben nicht Teil des NOR-Gatters.
Fig. 10 zeigt ein detaillierteres Flußdiagramm eines Aus­ führungsbeispiels des Verfahrens zum Identifizieren von NOR-Gattern. Ein zu testender potentieller Logikgatteraus­ gangsknoten wird ausgewählt 302. NFET, die dem Ausgangskno­ ten zugeordnet sind, werden identifiziert 312. Das Verfah­ ren bestimmt 314, ob ein spezieller NFET zwischen den Aus­ gangsknoten und GND kanalgeschaltet ist. Falls dies der Fall ist, dann werden der NFET-Name und der Name des Gate- Signals desselben in einer Hash-Tabelle gespeichert 316, wie die in Fig. 8A und 8B gezeigten Tabellen. Falls das Ga­ te-Signal bereits in der Hash-Tabelle gespeichert ist, dann kann der FET-Name mit dem bestehenden Signaleintrag gespei­ chert werden. Dieser Prozeß des Identifizierens 310 von NFET, die potentiell in NOR-Gattern verwendet werden, wird wiederholt, 318, bis alle NFET berücksichtigt sind.
Das Verfahren identifiziert 322 dann die PFET, die dem Aus­ gangsknoten zugeordnet sind, und bestimmt 324, ob ein Zweig mehr als einen PFET aufweist. Falls mehr als ein Zweig-PFET kanalgeschaltet ist 324, dann berücksichtigt 326 das Ver­ fahren, ob der Zweig mit VDD verbunden ist. Falls derselbe nicht mit GND verbunden ist, dann schreitet das Verfahren zu dem nächsten PFET fort. Falls der Zweig mit GND verbun­ den ist, dann bestimmt 328 das Verfahren, ob jedes PFET- Gate-Signal des Zweigs in der NFET-Hash-Tabelle gespeichert ist. Falls nicht jedes Signal gespeichert ist, schreitet das Verfahren fort, um den nächsten PFET zu untersuchen. Falls jedes Signal gespeichert ist, dann sortiert 332 das Verfahren die Signalnamen nach Zweig. Auf der Basis der Si­ gnalnamen erzeugt 334 das Verfahren Schlüsselwerte, die die Liste von Signalen sind, die in einem Zweig vorliegt. Diese Schlüsselwerte werden zusammen mit den Bestandteil-FET, die diese Gate-Signale aufweisen, in einer PFET-Hash-Tabelle gespeichert 336. Falls der Schlüsselwert bereits in der Hash-Tabelle gespeichert ist, dann kann die Liste der Be­ standteil-FET zu der bestehenden Liste von FET hinzugefügt werden, die dem Schlüsselwert entspricht. Dieser Prozeß des Identifizierens 320 von PFET, die potentiell in NOR-Gattern verwendet werden, setzt sich fort, bis alle PFET berück­ sichtigt wurden 338.
Sobald die NFET-Namen in der NFET-Hash-Tabelle und die PFET-Schlüsselwerte in der PFET-Hash-Tabelle gespeichert sind, vergleicht 330 das Verfahren die Signale, die in bei­ den Tabellen vorliegen, um zu bestimmen, ob ein NOR-Gatter vorliegt. Unter Verwendung der PFET-Hash-Tabelle identifi­ ziert 340 das Verfahren PFET, die jedem Schlüsselwert zuge­ ordnet sind. Die Namen der PFET können ausgegeben werden 342. Das Verfahren identifiziert 344 dann jeden NFET mit einem Gate-Signal, das einem PFET-Gate-Signal entspricht. Diese NFET können ausgegeben werden 346. Die gemeinsamen Signale sind die Eingangssignale zu dem NOR-Gatter, der po­ tentielle Ausgangsknoten ist der Ausgang des NOR-Gatters und die identifizierten FET werden in dem NOR-Gatter ver­ wendet.
Obwohl die vorliegende Erfindung bezüglich spezieller Aus­ führungsbeispiele derselben beschrieben wurde, sind Varia­ tionen möglich. Die vorliegende Erfindung kann in spezifi­ schen Formen enthalten sein, ohne von der Wesensart oder von Eigenschaften derselben abzuweichen. Obwohl Aspekte ei­ ner Implementierung, die mit der vorliegenden Erfindung übereinstimmt, als in einem Speicher gespeichert beschrie­ ben sind, wird ein Fachmann auf diesem Gebiet außerdem an­ erkennen, daß diese Aspekte auch auf anderen Typen von Com­ puterprogrammprodukten oder computerlesbaren Medien, wie z. B. Sekundärspeichergeräten, einschließlich Festplatten, Disketten oder CD-ROM, auf einer Trägerwelle vom Internet oder einem anderen Netzwerk oder auf andere Formen von RAM oder Nur-Lese-Speicher (ROM) gespeichert sein können oder von denselben gelesen werden können.

Claims (20)

1. Verfahren zum Identifizieren von Logikgattern in einem Schaltungsentwurf (450), das folgende Schritte umfaßt:
Identifizieren (110) von direkt geschalteten FET eines ersten Typs, die mit einem Ausgangsknoten verbunden sind und Gate-Signale aufweisen;
Identifizieren (120) von Zweig-FET eines zweiten Typs, die mit dem Ausgangsknoten verbunden sind und Gate- Signale aufweisen; und
Vergleichen (130) der Gate-Signale der direkt geschal­ teten FET mit den Gate-Signalen der Zweig-FET, um die Logikgatter zu identifizieren.
2. Verfahren gemäß Anspruch 1, das ferner das Speichern (216, 316) eines Namens eines FET und eines Namens ei­ nes Gate-Signals umfaßt, das dem FET zugeordnet ist, und bei dem der Schritt des Vergleichens (130) ferner das Querverweisen von Namen der Gate-Signale der di­ rekt geschalteten FET oder der Gate-Signale der Zweig- FET mit dem Namen des gespeicherten Gate-Signals um­ faßt.
3. Verfahren gemäß Anspruch 1 oder 2, das ferner das Speichern (216, 316) eines Namens eines direkt ge­ schalteten FET und eines Namens eines Gate-Signals des direkt geschalteten FET umfaßt, und bei dem der Schritt des Vergleichens (130) ferner das Vergleichen eines Namens eines Zweig-Gate-Signals mit dem gespei­ cherten Gate-Signal umfaßt.
4. Verfahren gemäß einem der Ansprüche 1 bis 3, bei dem der Schritt des Vergleichens das Identifizieren eines NAND-Gatters durch Identifizieren (210) der direkt ge­ schalteten FET als PFET, die mit VDD verbunden sind, und Identifizieren (220) der Zweig-FET als NFET, die von dem Ausgangsknoten zu GND in Reihe geschaltet sind, umfaßt.
5. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem der Schritt des Vergleichens das Identifizieren eines NOR-Gatters durch Identifizieren (310) der direkt ge­ schalteten FET als NFET, die mit GND verbunden sind, und Identifizieren (320) der Zweig-FET als PFET, die von dem Ausgangsknoten zu VDD in Reihe geschaltet sind, umfaßt.
6. Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem die Schritte des Identifizierens (310) von direkt ge­ schalteten FET und des Identifizierens (320) von Zweig-FET das Lesen von Informationen von einer Compu­ terdatendatei, die einen Schaltungsentwurf (450) dar­ stellt, umfassen.
7. Verfahren gemäß einem der Ansprüche 1 bis 6, bei dem die Logikgatter statische Logikgatter sind.
8. Computerlesbares Medium mit computerausführbaren An­ weisungen zum Durchführen eines Verfahrens zum Identi­ fizieren von Logikgattern in einem Schaltungsentwurf (450), wobei das Verfahren folgende Schritte umfaßt:
Identifizieren (110) von direkt geschalteten FET eines ersten Typs, die mit einem Ausgangsknoten verbunden sind und Gate-Signale aufweisen;
Identifizieren (120) von Zweig-FET eines zweiten Typs, die mit dem Ausgangsknoten verbunden sind und Gate- Signale aufweisen; und
Vergleichen (130) der Gate-Signale der direkt geschal­ teten FET mit den Gate-Signalen der Zweig-FET.
9. Medium gemäß Anspruch 8, bei dem das Verfahren ferner das Speichern (216, 316) eines Namens eines FET und eines Namens eines Gate-Signals, das dem FET zugeord­ net ist, umfaßt, und bei dem der Schritt des Verglei­ chens (130) ferner das Querverweisen von Namen der Ga­ te-Signale der direkt geschalteten FET oder der Gate- Signale der Zweig-FET zu dem Namen des gespeicherten Gate-Signals umfaßt.
10. Medium gemäß Anspruch 8 oder 9, bei dem das Verfahren ferner das Speichern (216, 316) eines Namens eines di­ rekt geschalteten FET und eines Namens eines Gate- Signals des direkt geschalteten FET umfaßt, und bei dem der Schritt des Vergleichens (130) ferner das Ver­ gleichen eines Namens eines Zweig-Gate-Signals mit dem gespeicherten Gate-Signal umfaßt.
11. Medium gemäß einem der Ansprüche 8 bis 10, bei dem der Schritt des Vergleichens (130) das Identifizieren ei­ nes NAND-Gatters durch Identifizieren (210) der direkt geschalteten FET als PFET, die mit VDD verbunden sind, und das Identifizieren (220) der Zweig-FET als NFET, die von dem Ausgangsknoten zu GND in Reihe geschaltet sind, umfaßt.
12. Medium gemäß einem der Ansprüche 8 bis 11, bei dem der Schritt des Vergleichens (130) das Identifizieren ei­ nes NOR-Gatters durch Identifizieren (310) der direkt geschalteten FET als NFET, die mit GND verbunden sind, und Identifizieren (320) der Zweig-FET als PFET, die von dem Ausgangsknoten zu VDD in Reihe geschaltet sind, umfaßt.
13. Medium gemäß einem der Ansprüche 8 bis 12, bei dem die Schritte des Identifizierens (310) von direkt geschal­ teten FET und des Identifizierens (320) von Zweig-FET das Lesen von Informationen von einer Computerdatenda­ tei, die einen Schaltungsentwurf (450) darstellt, um­ fassen.
14. Medium gemäß einem der Ansprüche 8 bis 13, bei dem das Logikgatter ein statisches Logikgatter ist.
15. Computersystem (400) zum Identifizieren von Bestand­ teil-FET eines NAND- oder eines NOR-Gatters in einem Schaltungsentwurf, das folgende Merkmale aufweist:
ein Speichermedium (440); und
einen Prozessor (410) zum Ausführen eines Softwarepro­ gramms, das auf dem Speichermedium (440) gespeichert ist, zum Identifizieren der Bestandteil-FET, wobei das Softwareprogramm einen Satz von Anweisungen umfaßt, zum:
Identifizieren (210) von direkt geschalteten FET eines ersten Typs, die mit einem Ausgangsknoten verbunden sind;
Identifizieren (220) von Zweig-FET eines zweiten Typs, die mit dem Ausgangsknoten verbunden sind; und
Vergleichen (230) von Gate-Signalen der direkt geschalteten FET mit Gate-Signalen der Zweig-FET.
16. System gemäß Anspruch 15, bei dem der Satz von Anwei­ sungen ferner Anweisungen zum Speichern (216, 316) ei­ nes Namens eines FET und eines Namens eines Gate- Signals umfaßt, das dem FET zugeordnet ist, und bei dem der Schritt des Vergleichens (130) ferner das Querverweisen von Namen der Gate-Signale der direkt geschalteten FET oder der Gate-Signale der Zweig-FET zu dem Namen des gespeicherten Gate-Signals umfaßt.
17. System gemäß Anspruch 15 oder 16, bei dem der Satz von Anweisungen ferner Anweisungen zum Speichern (216, 316) eines Namens eines direkt geschalteten FET und eines Namens eines Gate-Signals des direkt geschalte­ ten FET umfaßt, und bei dem der Schritt des Verglei­ chens (130) ferner das Vergleichen eines Namens eines Zweig-Gate-Signals mit dem gespeicherten Gate-Signal umfaßt.
18. System gemäß einem der Ansprüche 15 bis 17, bei dem der Schritt des Vergleichens (130) das Identifizieren eines NAND-Gatters durch Identifizieren (210) der di­ rekt geschalteten FET als PFET, die mit VDD verbunden sind, und durch Identifizieren (220) der Zweig-FET als NFET, die von dem Ausgangsknoten zu GND in Reihe ge­ schaltet sind, umfaßt.
19. System gemäß einem der Ansprüche 15 bis 18, bei dem der Schritt des Vergleichens (130) das Identifizieren eines NOR-Gatters durch Identifizieren (310) der di­ rekt geschalteten FET als NFET, die mit GND verbunden sind, und durch Identifizieren (320) der Zweig-FET als PFET, die von dem Ausgangsknoten zu VDD in Reihe ge­ schaltet sind, umfaßt.
20. System gemäß einem der Ansprüche 15 bis 19, bei dem die Schritte des Identifizierens (310) von direkt ge­ schalteten FET und des Identifizierens (320) von Zweig-FET das Lesen von Informationen von einer Compu­ terdatendatei, die einen Schaltungsentwurf (450) dar­ stellt, umfassen.
DE10200857A 2001-02-12 2002-01-11 Verfahren und System zum Finden von Statischen NAND- und NOR-Gattern in einer Schaltung und Identifizieren der FET, die Bestandteil jedes Gatters sind Withdrawn DE10200857A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/782,233 US6606733B2 (en) 2001-02-12 2001-02-12 Method and system for finding static NAND and NOR gates within a circuit and identifying the constituent FETs each gate

Publications (1)

Publication Number Publication Date
DE10200857A1 true DE10200857A1 (de) 2002-08-29

Family

ID=25125430

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10200857A Withdrawn DE10200857A1 (de) 2001-02-12 2002-01-11 Verfahren und System zum Finden von Statischen NAND- und NOR-Gattern in einer Schaltung und Identifizieren der FET, die Bestandteil jedes Gatters sind

Country Status (2)

Country Link
US (1) US6606733B2 (de)
DE (1) DE10200857A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6637012B2 (en) * 2001-11-26 2003-10-21 Hewlett-Packard Development Company, L.P. Method and system for identifying FETs implemented in a predefined logic equation
US6691285B1 (en) * 2002-08-27 2004-02-10 Hewlett-Packard Development Company, L.P. Exponential increments in FET size selection
KR100666931B1 (ko) * 2004-12-28 2007-01-10 주식회사 하이닉스반도체 반도체메모리소자

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6077717A (en) 1999-01-26 2000-06-20 Hewlett-Packard Company System and method for detecting NOR gates and NAND gates
US6367062B1 (en) * 1999-02-18 2002-04-02 Hewlett-Packard Company System and method for detecting an excessive number of series-connected pass FETs
US6275970B1 (en) * 1999-02-18 2001-08-14 Hewlett Packard Company Evaluation of the design quality of network nodes
US6367055B1 (en) * 1999-04-27 2002-04-02 Hewlett-Packard Company Method and apparatus for determining certain characteristics of circuit elements
US6295632B1 (en) * 1999-05-13 2001-09-25 Hewlett Packard Company System and method for detecting the output of a clock driver
US6260180B1 (en) * 1999-05-13 2001-07-10 Hewlett-Packard Company System and method for detecting FETs that are susceptible to bootstrapping
US6434723B1 (en) * 1999-05-26 2002-08-13 Hewlett-Packard Company System and method for evaluating a very large scale integrated circuit for potential design errors

Also Published As

Publication number Publication date
US6606733B2 (en) 2003-08-12
US20020112215A1 (en) 2002-08-15

Similar Documents

Publication Publication Date Title
DE69838835T2 (de) Verfahren zur Prüfung und zur Darstellung einer Hardware durch Zerlegung und Aufteilung
EP0855662A1 (de) Elektrische Analyse integrierter Schaltungen
DE69533567T2 (de) Vorrichtung und Verfahren zum Auffinden von False-Timing-Paths in digitalen Schaltkreisen
DE112008001707T5 (de) Finite-Feld-Operationen verwendender kryptographischer Zufallszahlengenerator
DE19704658A1 (de) Entwurfshilfsvorrichtung und -verfahren zum Entwerfen eines Halbleiterbauelements
DE102014118932A1 (de) Charakterisierung einer Zelle unter Verwendung einer Eingangswellenerzeugung unter Berücksichtigung verschiedener Schaltungstopologien
DE10000451A1 (de) Taktsignalanalyseeinrichtung und Taktsignalanalyseverfahren
DE4327660C2 (de) Vorrichtung zum Herstellen einer und Herstellungsverfahren für eine integrierte Halbleiterschaltungsvorrichtung und elektronische Schaltungsvorrichtung
DE102017117496A1 (de) Zell-Bewusste Fehlstellen-Charakterisierung und Wellenformanalyse mithilfe mehrerer Strobe-Punkte
DE19530669A1 (de) Verfahren zum automatischen Auswählen eines taktsteuernden Signalpfads in umprogrammierbaren Systemen zur Hardware-Emulation
EP0203535B1 (de) Verfahren zur Simulation eines Fehlers in einer logischen Schaltung und Schaltungsanordnung zur Durchführung desselben
DE60318795T2 (de) Prüfung von integrierten Schaltungen
DE102004029944B4 (de) Verfahren zur Ermittlung ESD-relevanter Schaltungsteile in einer Schaltung
EP0909421B1 (de) Verfahren und anordnung zur rechnergestützten ermittlung einer systemzusammenhangsfunktion
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
DE60109944T2 (de) Automatische prüfung von zyklischen betriebsbedingungen für soi schaltungssimulation
DE19644443C2 (de) Adressübergangs-Detektorschaltung
DE102018217016A1 (de) Ein-Chip-System und Sicherheitsschaltung mit einem derartigen Ein-Chip-System
DE112013005831T5 (de) Netzlistenabstraktion
DE19528733C1 (de) Integrierte Schaltung
DE60103154T2 (de) Automatisches gerät für testbarkeitsanalyse
DE102019220472A1 (de) Synchronvorrichtung mit Schlupfschutzschaltung
DE112018006331B4 (de) Testfallgenerierungsvorrichtung, Testfallgenerierungsverfahren und Testfallgenerierungsprogramm
DE3422287A1 (de) Pruefanordnung fuer digitalschaltungen
DE10122703A1 (de) Charakterisierung von Leseverstärkern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8130 Withdrawal