-
1. Gebiet
der Erfindung
-
Die
vorliegende Erfindung betrifft das Design integrierter Schaltkreise
und genauer das Designen integrierter Schaltkreise, um die Herstellbarkeit
zu optimieren.
-
2. Stand der
Technik
-
Das
Design eines integrierten Schaltkreis-(integrated circuit, IC)-Chips
wird aus verschiedenen auch als Elemente geistigen Eigentums (intellectual
property, IP) bezeichneten Elementen verschiedener Größe und Komplexität zusammengesetzt.
Die kleinsten Elemente werden üblicherweise als
Standardzellen bezeichnet. Größere Baugruppen von
Elementen können
untereinander verbunden werden, um vollständige Funktionen, üblicherweise als
Blocks bezeichnet, zu erzeugen. Mehrere Blöcke werden untereinander verbunden,
um einen IC-Chip zu erzeugen, der hergestellt wird.
-
Für das Design
von IC-Chips ist es bei einem gegebenen Herstellprozess notwendig,
eine Baugruppe solcher Zellen oder Blöcke in Übereinstimmung mit dem bestimmten
Herstellprozess zu erzeugen, während
eine Auswahl an Funktionalitäts-
und Leistungsfähigkeits-Wahlmöglichkeiten
bereitgestellt wird, die es den Designern ermöglichen, einen gegebenen IC-Chip
zu designen und zu optimieren. Die für einen bestimmten Herstellprozess
geschaffene Zusammenstellung solcher Zellen und Blöcke, zusammen
mit einer genauen Beschreibung ihrer Merkmale, wird allgemein als
eine Bibliothek bezeichnet. Die für eine bestimmte Herstelltechnologie
geschaffene Auswahl der Designelemente/Komponenten in einer Bibliothek
ermöglicht
es einem Designsystem, effizient und optimiert IC-Chips zu erzeugen.
Die Bibliotheksdesignelemente (Zellen und Blöcke) sind in bestimmten Datenwiedergaben
organisiert, die verschiedene Merkmale in Bezug auf ihre Verwendung im
Chipdesign enthalten. Eine bestimmte, solche Merkmale enthaltende
Datenwiedergabe eines Bibliotheksdesignelements wird als eine Ansicht
(view) bezeichnet.
-
Bei
einem herkömmlichen
Designablauf zum Erzeugen und Charakterisieren der Eigenschaften
einer Bibliothek werden Testchips designed und in einer Herstelleinrichtung
verarbeitet, um Informationen bereitzustellen, die das Designen
und Erstellen der Bibliothek ermöglichen.
Die Testchips enthalten eine Abfolge representativer Vorrichtungen
und Verbindungsgeometrien, die analysiert werden, um Vorrichtungsmodelle
zu erzeugen, die zur Verwendung durch Simulatoren auf der elektrischen
Ebene (electrical-level simulators), wie beispielsweise SPICE, geeignet
sind, die bei der Charakterisierung der Bibliotheksdesignelemente
verwendet werden, um Leistungsfähigkeits-Ansichten
der entsprechenden Bibliotheksdesignelemente zu erzeugen. Die Testchips werden
auch analysiert, um die bei dem Design der Bibliotheksdesignelemente
verwendeten Designregeln zu erzeugen. Das Layout der Bibliotheksdesignelemente
wird in Bibliotheksansichten (library views) beschrieben, die beispielsweise
eine Anschlussflächen-(footprint)-Information
des Bibliotheksdesignelements enthalten. Die Testchips werden auch
analysiert, um ein Design-Kit zu erzeugen, das eine Benutzerschnittstelle
für das
Design von ICs bereitstellt und das die SPICE-Modelle, die Designregeln und entsprechende
Werkzeuge für
eine automatische Überprüfung der Übereinstimmung
mit diesen Regeln enthält.
-
Die
in herkömmlichen
Designsystemen verwendeten Testchips enthalten jedoch keine umfangreichen
Strukturen, die für
eine Beurteilung oder Vorhersage der Herstellbarkeit der für die Konstruktion der
Bibliothek und der Produkt-ICs verwendeten passiven oder aktiven
Komponenten entwickelt sind. Daraus folgt, dass die durch die existierenden
Designsysteme erzeugten Bibliotheksdesignelemente nicht ausreichend
in Bezug auf eine Vorhersage ihrer Herstellbarkeit ausgewertet wurden.
-
Jedes
unter Verwendung des Design-Kits hergestellte Zellendesign wird
unter Verwendung eines computerlesbaren Formats, wie beispielsweise GDSII,
wiedergegeben. Eine Anzahl von verschiedenen Wiedergaben jedes Zellendesigns
existiert in einer Bibliothek und jede Wiedergabe ist als eine Zellenansicht
bekannt (cell view). Einige Zellenansichten werden von anderen abgeleitet.
Beispielsweise wird die Timingansicht jeder Zelle aus den SPICE-Modellen
und der GDSII-Ansicht durch einen als Bibliothekstiming-Charakterisierung
(library timing characterization) bezeichneten Prozess erzeugt.
LEF ist ein Beispiel einer Bibliotheksansicht, welche die durch
einen Router benötigten
Merkmale beschreibt und die Informationen über die Anschlussfläche und
die Ports enthält.
-
Eine
typische Bibliothek enthält
etwa 500 Zellen. Innerhalb der Zusammenstellung der Bibliothekszellen
gibt es jedoch mehrfache Layout-Wiedergaben für eine gegebene logische Funktion.
Diese „Varianten" bieten unterschiedliche
Leistungsfähigkeitsmerkmale,
die für
eine bestimmte Anwendung ausgewählt
und optimiert werden können.
Beispielsweise sind üblicherweise
in diesen in der Bibliothek enthaltenen Varian ten-Versionen Optionen
für hohe Leistungsfähigkeit,
hohe Leistungsaufnahme mit niedriger Dichte oder niedrige Leistungsfähigkeit, niedrige
Leistungsaufnahme mit hoher Dichte verfügbar. Da jedoch keine Bibliotheksansicht
Herstellungsmerkmale enthält,
bieten die durch den existierenden Stand der Technik erzeugten Varianten
keine Wahlmöglichkeiten
in Bezug auf bestimmte Faktoren bezüglich der Herstellbarkeit.
Ebenso sind existierende kommerzielle, die üblichen Bibliotheksansichten
verwendende Softwareanwendungen nicht fähig, Herstellbarkeitsmerkmale
für ein
beliebiges Designelement in der Bibliothek zu extrahieren oder zu
verwenden.
-
Bei
einer Syntheseprozedur wird eine funktionale (High-Level-) Hardware-Beschreibung
der Funktionalität
des IC auf grundlegende binäre
Operatoren und logische Abfolgen (logische Dekomposition) abgebildet,
um eine als freie Logik (uncommited logic) bezeichnete Wiedergabe
zu erzeugen. Unter Verwendung von physikalischen Bibliothekszellen oder
Blöcken
wird die freie Logik in ein spezifisches Logik-Konnektivitäts-Diagramm abgebildet, das
oftmals als eine Netzliste auf Gate-Ebene (gate-level netlist) bezeichnet
wird. Ein Blockraum- und Route-Schritt erzeugt ein aus den ausgewählten Standardzellen
bestehendes Layout der Block-Ebene
und der Verbindungen in den Routing-Ebenen, um alle diese Elemente
zu verbinden. Das Layout wird in verschiedenen Formaten, beispielsweise
GDSII, wiedergegeben. Ein abschließender Überprüfungsschritt stellt sicher,
dass alle Design-Randbedingungen
erfüllt
sind. Bei anderen bekannten aktuellen Praktiken werden zwei oder
mehr der Schritte zwischen der funktionalen Hardware-Beschreibung
und dem Layout auf der Block-Ebene gleichzeitig durch eine Softwareanwendung
ausgeführt.
Designabläufe
mit diesem Ansatztyp werden oft als „physikalische Synthese"-Abläufe („physical
synthesis" flows)
bezeichnet.
-
Bei
diesen Designabläufen
wird die Auswahl der Bibliotheksdesignelemente durch bestimmte Designrandbedingungen
festgelegt, die auf die Optimierung der Metrik, wie beispielsweise
Geschwindigkeit und Leistungsfähigkeit,
und Überlegungen
bezüglich der
Fläche
begrenzt sind. Es wird keine echte Herstellbarkeitsmetrik beschrieben;
einige Flächenbasierte
Herstellbarkeitsmodelle werden jedoch indirekt verwendet, um die
Chip-Kosten abzuschätzen.
-
ZUSAMMENFASSUNG
-
Bibliotheksdesignelemente
werden in Bezug auf die Herstellbarkeit analysiert, um beim Designen eines
IC-Chips verwendet zu werden, der unter Verwendung eines bestimmten
Herstellprozesses herzustellen ist. Die Bibliotheksdesignelemente
werden aus einer Bibliothek erhalten. Herstellbarkeitsmerkmale der
Bibliotheksdesignelemente werden für den bestimmten Herstellprozess
bestimmt, wobei Herstellbarkeitsmerkmale Ausbeute-bezogene Merkmale
einschließen.
Nachfolgend werden Bibliotheksansichten mit Herstellbarkeitsmerkmalen
für die
Bibliotheksdesignelemente erzeugt, die durch ein elektronisches
Designautomations-(electronic design automation, EDA)-Werkzeug verwendet
werden.
-
BESCHREIBUNG
DER FIGUREN
-
Die
vorliegende Erfindung kann am besten unter Bezugnahme auf die folgende
in Verbindung mit den begleitenden Zeichnungen angegebene Beschreibung
verstanden werden, wobei in den Figuren gleiche Teile mit gleichen
Bezugszeichen bezeichnet sein können:
-
1 ist
ein beispielhafter Designablauf;
-
2 ist
ein beispielhafter Prozess, um Herstellbarkeitsmerkmale für Bibliotheksdesignelemente zu
bestimmen;
-
3 zeigt
eine beispielhafte Lernkurve;
-
4 zeigt
einen beispielhaften Prozess, um Bibliotheksansichten von Bibliotheksdesignelementen
mit Herstellbarkeitsmerkmalen zu erzeugen;
-
5 zeigt
einen beispielhaften Prozess, um verschiedene Designelemente zu
erzeugen;
-
6 zeigt
einen beispielhaften Desginablauf; und
-
7 zeigt
einen anderen beispielhaften Designablauf.
-
GENAUE BESCHREIBUNG
-
Die
folgende Beschreibung stellt zahlreiche bestimmte Konfigurationen,
Parameter und Ähnliches
heraus, es sollte jedoch bemerkt werden, dass eine solche Beschreibung
nicht als eine Begrenzung des Umfangs der vorliegenden Erfindung
gedacht ist, sondern vielmehr als eine Beschreibung beispielhafter
Ausführungsformen
angegeben wird.
-
Wie
zuvor beschrieben, wird eine Bibliothek von Designelementen üblicherweise
verwendet, um IC-Chips zu designen. Die Bibliothek enthält alle
benötigten
Ansichten der Bibliotheksdesignelemente, einschließlich Leistungsfähigkeits-bezogener
Merkmale der Bibliotheksdesignelemente. Herkömmliche Bibliotheken bieten
jedoch keine Bibliotheksansichten mit Herstellbarkeitsmerkmalen,
welche Ausbeute-bezogene Merkmale enthalten, die beispielsweise die
Anzahl von guten Chips pro Wafer (good dies per wafer, GDW) vorhersagen
können.
Es sollte klar sein, dass die Herstellbarkeit auch verschiedene
IC-Merkmale enthält,
wie beispielsweise Defekte, Druckbarkeit, Zuverlässigkeit und Ähnliches.
Die Herstellbarkeit bestimmt schließlich die Rentabilität eines
Designs.
-
Bei
einer beispielhaften Ausführungsform werden
Bibliotheksdesignelemente analysiert, um Herstellbarkeitsmerkmale
der Bibliotheksdesignelemente zu bestimmen. Bibliotheksansichten
werden nachfolgend für
die Bibliothekselemente erzeugt, um Herstellbarkeitsmerkmale zusätzlich zu
Leistungsfähigkeits-Merkmalen
zu enthalten. Diese Bibliotheksansichten mit Herstellbarkeitsmerkmalen
können
in einem Designablauf verwendet werden, um ICs mit einer gesteigerten
Herstellbarkeit bei einem gegebenen Prozess zu designen.
-
Unter
Bezugnahme auf die Figur ist ein beispielhafter Designablauf 100 gezeigt.
Bei 102 werden Bibliotheksdesignelemente erhalten. Bei 104 werden
Ausbeute-bezogene Merkmale enthaltende Herstellbarkeitsmerkmale
für die
Bibliotheksdesignelemente bestimmt. Bei 112 werden Varianten
der Bibliotheksdesignelemente erzeugt, wobei die Varianten gegenüber den
Bibliotheksdesignelementen unterschiedliche Herstellbarkeitsmerkmale
aufweisen. Bei 106 werden Bibliotheksansichten, die in
einem computerlesbaren Format sind, der Herstellbarkeitsmerkmale
der Bibliotheksdesignelemente und Varianten erzeugt. Bei 108 wird
eine Herstellbarkeitsabschätzung
des Layouts erzeugt. Bei 110 werden optimale Designelemente
für ein
IC-Desgin ausgewählt.
-
I. Erzeugen von Ansichten
mit Herstellbarkeitsmerkmalen
-
Bei
einer beispielhaften Ausführungsform werden
Testchips für
eine bestimmte Herstelleinrichtung und/oder für einen bestimmten Herstellprozess designed,
wobei die existierenden Designregeln und die gegebenen Ziel-Herstellbarkeitsmodelle
berücksichtigt
werden. Die Testchips enthalten eine Wiedergabe der innerhalb des
existierenden Bibliotheksdesignelements enthaltenen Layoutmerkmale.
Die aus den Testchips extrahierten Daten schließen zufällige Ausbeute- und systematische
Ausbeute-Faktoren von existierenden Herstellprozessen ein. Für eine genauere
Beschreibung von Testchips, die verwendet werden können, um
zufällige
und systematische Ausbeuten zu bestimmen, siehe das US-Patent Nr. 6,449,749
mit dem Titel SYSTEM AND METHOD FOR PRODUCT YIELD PREDICTION, veröffentlicht am
10. September 2002, das hierin durch Bezugnahme in seiner Gesamtheit
aufgenommen wird.
-
Unter
Bezugnahme auf die 2 wird ein beispielhafter Prozess 200 gezeigt,
um die Herstellbarkeitsmerkmale für Bibliotheksdesignelemente
zu bestimmen. Bei 202 werden Maskensätze für Testchips erzeugt. Bei 204 werden
die Maskensätze
in einem Herstellprozess verwendet, der zum Herstellen des ICs verwendet
wird. Bei 206 werden Testchips unter Verwendung der Maskensätze in dem
Herstellprozess hergestellt. Bei 208 werden die hergestellten Testchips
unter Verwendung eines analytischen Werkzeugs analysiert, um die
Herstellbarkeitsmerkmale des Herstellprozesses und die Herstellbarkeitsmerkmale
der Bibliotheksdesignelemente zu bestimmen.
-
Die
aus den Testchips bestimmten Herstellbarkeitsmerkmale werden dann
verwendet, um verschiedene Simulator-Softwarewerkzeuge, wie beispielsweise
YRS, Optissimo und Ähnliche,
zu kalibrieren. Die Ergebnisse der Simulationen der Herstellbarkeit
der Bibliotheksdesignelemente schließt eine Anzahl von Herstellbarkeitsmerkmalen,
einschließlich
der Grenzaus beute (limited yield, LY) des Layouts, Herstellungsrisikofaktoren
(manufacturing risk factors, MRF), eine quantitative Beschreibung
des Prozessfensters und die Beziehung zwischen LY und MRF ein. Die
Ergebnisse der Herstellsimulation werden in Bibliotheksansichten
zusammengefasst, die durch ein elektronisches Designautomations-(EDA)-Werkzeug
verwendet werden können.
-
Bei
einer beispielhaften Ausführungsform werden
basierend auf historischen Produktionsmerkmalen eines gegebenen
Herstellprozesses, den aktuellen Herstellbarkeitsmerkmalen und/oder
einer Erfahrung mit Lernraten die Herstellbarkeitsmerkmale des Herstellprozesses
für verschiedene
zukünftige Punkte
des Prozessablaufes abgeschätzt.
Die Herstellbarkeit eines gegebenen Designelements wird dann für verschiedene
Zeitfenster, die verschiedenen Prozessablaufprognosen entsprechen,
simuliert und wird auch in den Bibliotheksansichten für die entsprechenden
Zeitfenster und das gegebene Bibliotheksdesignelement wiedergegeben.
-
Beispielweise
zeigt die 3 eine beispielhafte Lernkurve 302.
Wie in der 3 gezeigt, steigt das Volumen
der in einem Herstellprozess hergestellten ICs über eine Zeitspanne an. Demzufolge wird
bei einem niedrigeren Volumen an einem Punkt 304 auf der
Lernkurve 302, der einer früheren Zeitspanne als ein Punkt 306 entspricht,
eine niedrigere Ausbeute erreicht.
-
In
einer beispielhaften Ausführungsform
wird für
einen gegebenen Herstellprozess und ein gegebenes Designverfahren
ein Modell definiert, das unter Verwendung von statistischen Designdaten
basierend auf repräsentativen
alten Chipdesigns und/oder Speicherblock-/Logik-Konfigurationen
und entsprechenden Herstelldaten die Beziehung zwischen der Herstellbar keit
des zum untereinander Verbinden der Bibliotheksdesignelemente verwendeten
Routings und die Art und Logik-Konnektivität der Bibliotheksdesignelemente
beschreibt. Diese Beziehung ist in einem Modell enthalten, das auch
in den Bibliotheksansichten enthalten ist.
-
Die
Bibliotheksansichten sind in einer computerlesbaren Matrix enthalten,
die diese verschiedenen Herstellbarkeitsmerkmale für eine gegebene Sammlung
von Bibliotheksdesignelementen für
verschiedene Zeitfenster tabelliert und verschiedene Verbindungsherstellbarkeitsmodelle
enthält.
-
Unter
Bezugnahme auf die 4 ist ein beispielhafter Prozess 400 gezeigt,
um Bibliotheksansichten von Bibliotheksdesignelementen mit Herstellbarkeitsmerkmalen
zu erzeugen. Bei 402 wird ein Herstellprozess charakterisiert,
der zu verwenden ist, um ein IC-Design herzustellen. Beispielsweise
werden bei 404 Testchips unter Verwendung des Herstellprozesses
hergestellt. Bei 406, 408 und 410 wird der
Herstellprozess unter Verwendung der Testchips charakterisiert,
um jeweils Designregeln, Design-Kits und SPICE-Modelle zu erzeugen.
Bei 412 erzeugen Bibliotheksautomaten eine Bibliothek von
Designelementen für
den Herstellprozess unter Verwendung der bei 414 charakterisierten
Designregeln, Design-Kits und SPICE-Modelle.
-
Bei 416 werden
basierend auf den Designregeln, Design-Kits und SPICE-Modellen Standardbibliotheksansichten
der Zellen erzeugt. Beispielsweise beschreibt eine Timing-Ansicht
die Leistungsfähigkeits-Merkmale
der Zelle in der Bibliothek als eine Funktion der Zellenlast und
der Eingangsspannungssteilheit (input voltage slope), die durch
Durchführen einer
Anzahl von SPICE-Simulationen gebildet wird. Eine abstrakte Layoutansicht
beschreibt die durch einen Router benötigten Merkmale und schließt Informationen über die
Anschlussfläche
und die Port-Anordnung ein. Eine funktionelle Ansicht beschreibt
die mit der Zelle verknüpften
binären
logischen Funktionen. Andere Ansichten werden verwendet, um Leistungsaufnahme-,
Signalintegritäts-
usw. -Merkmale einer Zelle zu beschreiben. Ansichten sind im Allgemeinen
spezifisch für
ein Werkzeug eines EDA-Automaten – d.h. ein Designwerkzeug liest
eine Zellenansicht ein, um die Eigenschaften des Bibliothekselements
zu bestimmen, die für
die durch das Werkzeug durchgeführte
Operation relevant sind. Die Zellenlayoutansicht wird auch in einem
computerlesbaren Format, wie beispielsweise GDSII, beschrieben.
-
Bei 418 werden
Testchips verwendet, um einen Bereich von Herstellbarkeitsparametern
festzulegen, von denen viele in verschiedenen Formen Ausbeute-bezogener
Daten ausgedrückt
sind. Beispielsweise werden bei 420 eine zufällige und
eine systematische Ausbeute basierend auf den von den Testchips
erhaltenen Daten bestimmt. Zusätzlich werden
andere Herstellbarkeitsmerkmale, wie beispielsweise eine Druckbarkeits-Metrik, Prozesstoleranzen
und Zuverlässigkeitsmerkmale
auch durch die Analyse der Testchipdaten extrahiert. Bei 422 wird
ein Simulatorsoftwarewerkzeug, wie beispielsweise der Ausbeute-Ramp-Simulator
(Yield Ramp Simulator, YRS), Optissimo und Ähnliches unter Verwendung von
Ausbeute-bezogenen und anderen Herstellbarkeitsdaten kalibriert.
-
Bei 424 werden
bekannte Ausbeute-Ramp-Daten von verschiedenen Layoutmerkmalen durch
den YRS verwendet, um die Zeitabhängigkeit solcher Merkmale als
eine Funktion eines gegebenen Herstellbarkeitsvolumens zu kalibrieren.
-
Bei 426 wird
ein Herstellbarkeitssimulator verwendet, um jedes Designelement
in der Bibliothek zu analysieren, um seine Herstellbarkeitsmerkmale zu
beschreiben. Das Ergebnis der Simulationen schließt eine
Grenzausbeute des Layouts (LY) und Herstellbarkeitsrisikofaktoren
(manufacturability risk factors, MRF) ein, um ein Prozessfenster
für das
Layout auf eine relative quantitative Weise, sowohl LY als auch
MRF gegenüber
der Zeit, und ein Verhältnis (beispielsweise
ein Gewichtungsfaktor) zwischen LY und MRFs zu beschreiben. Bei 428 werden
Bibliotheksansichten der Bibliotheksdesignelemente mit Herstellbarkeitsmerkmalen
erzeugt.
-
II. Erzeugen von Varianten
-
Bei
einer beispielhaften Ausführungsform können Varianten
der Bibliotheksdesignelemente erzeugt werden, die eine Verbesserung
der Herstellbarkeit der Bibliotheksdesignelemente ermöglichen, üblicherweise
minimal zu Lasten der anderen Designparameter, wie beispielsweise
Fläche,
Leistungsfähigkeit
oder Leistungsaufnahme. Diese Varianten sind funktionell zu den
ursprünglichen
Bibliotheksdesignelementen äquivalent,
bieten jedoch bestimmte Designalternativen, welche die Herstellbarkeitseigenschaften
der Bibliotheksdesignelemente durch effektive Kompromisse, beispielsweise
Flächen- und/oder
Leistungsfähigkeits-Faktoren,
verbessern kann.
-
Unter
Bezugnahme auf die 5 ist ein beispielhafter Prozess 500 gezeigt,
um Designelement-Varianten (Varianten) zu erzeugen. Bei 406, 408 und 410 werden
Designregeln, Design-Kits und SPICE-Modelle für einen Herstellprozess erzeugt. Bei 502 wird
eine Bibliothek mit Bibliotheksansichten von Zellen in einem computerlesbaren
Format, wie beispielsweise GSDII, erzeugt. Eine typische Bibliothek
kann etwa 100 grundlegende logische Funktionen enthalten, wobei
für jede
dieser grundlegenden Funktionen eine Anzahl von Aussteuerfähigkeits-Varianten
vorhanden ist, wobei die Zahl für
die ge samte Zelle auf etwa 500 steigt. Bei 504 wird ein
Layout geändert,
um das Herstellbarkeitsmerkmal des Layouts zu ändern. Bei 506 werden
die Herstellbarkeitsmerkmale der Designelemente durch Auswerten
von Herstellbarkeitssimulationen charakterisiert, die unter bestimmten
zuvor beschriebenen Bedingungen zulässige Designrandbedingungen,
beispielsweise Leistungsaufnahme, Fläche, für eine gesteigerte Herstellbarkeit
eintauschen. Bei 508 werden Bibliotheksansichten der Varianten
erzeugt. Bei 510 werden die Varianten charakterisiert,
um die durch die Designwerkzeuge und Abläufe benötigten Bibliotheksansichten
zu erzeugen. Bei 512 werden Herstellbarkeitsmerkmale der
Varianten unter Verwendung von Herstellbarkeitssimulationen erzeugt.
Bei 514 werden Bibliotheksansichten der Varianten mit Herstellbarkeitsmerkmalen
erzeugt. Bei 516 werden die Varianten gespeichert. Für eine genauere
Beschreibung des Erzeugens von Varianten siehe die US Provisional-Anmeldung
Nr. 60/437,922 mit dem Titel YIELD IMPROVEMENT, eingereicht am 2.
Januar 2003, die hierin durch Bezugnahme in ihrer Gesamtheit aufgenommen
wird.
-
III. Erzeugen einer Herstellbarkeitsabschätzung eines
Designs
-
Unter
Bezugnahme auf die 6 ist ein beispielhafter Designablauf 600 gezeigt.
Bei 602 wird eine Bibliothek mit Designelementen erhalten.
Bei 604 wird eine funktionale (High-Level-) Spezifikation der
gewünschten
Funktionalität
des Schaltkreises erhalten. Die Spezifikation schließt Design-Randbedingungen/-Regeln,
wie beispielsweise Leistungsfähigkeit,
Leistungsaufnahme und Fläche
ein. Bei 606 wird eine Beschreibung des Designs basierend
auf der Spezifikation der gewünschten
Funktionalität
und der Bibliothek der Designelemente erzeugt. Bei einer beispielhaften
Ausführungsform
ist die Beschreibung eine Netzliste mit einem Format, das eine Liste
der Standardzellen und anderer bildender Blöcke dar stellt und die Konnektivität zwischen
all den Elementen definiert. Zusätzlich
werden bei 614 Bibliotheksansichten der Blöcke, wie
beispielsweise Analog, Speicher, I/O etc. erzeugt. Bei 608 wird
ein Layout auf einer Block-Ebene erzeugt, das ausgewählte Bibliotheksdesignelemente
und Verbindungen auf den Routing-Ebenen enthält, und dann werden all diese Bibliotheksdesignelemente
verbunden. Bei 610 werden die Blocks platziert und verbunden,
um ein Chiplayout unter teilweiser Verwendung der Bibliotheksansichten
der Blöcke
zu erzeugen. Bei 612 wird das Chiplayout überprüft, um zu
bestätigen,
dass alle Designrandbedingungen erfüllt sind und die Designregeln
nicht verletzt werden.
-
Bei 616 wird
eine Beschreibung des Designs importiert. Die Beschreibung kann
eine Netzliste sein, die ein Block- oder ein Chip-Design auf einer Struktur-Ebene
beschreibt, mit anderen Worten durch spezifizieren in Form einer
Liste von untereinander verbundenen grundlegenden Komponenten, einer
Register-Transfer-Ebene-Beschreibung einer gewünschten Block- oder Chip-Funktionalität oder eines
Layouts eines existierenden Blocks oder Chips. Bei 618 wird
die Herstellbarkeit des Designs basierend auf den Bibliotheksansichten
der Bibliotheksdesignelemente unter Verwendung eines Herstellbarkeitsanalysators
analysiert. Bei 622 wird eine Herstellbarkeitsabschätzung für das Design
erzeugt. Die Herstellbarkeitsabschätzung kann eine Funktion eines
Herstellzeitrahmens sein und auf gewünschte Designblöcke heruntergebrochen
sein. Bei 620 werden Herstellbarkeitsansichten für die Designblocks aus 614 erzeugt,
falls solche Ansichten nicht bereits erzeugt wurden. Die Herstellbarkeitsabschätzung bei 622 gibt
einem Benutzer die Möglichkeit,
die Herstellbarkeitsmerkmale eines gegebenen IC- oder IP-Blocks
zu verstehen. Zusätzlich
kann die Herstellbarkeitsabschätzung
in einer beispielhaften Aus führungsform
verwendet werden, um die Zeitabhängigkeit
der Herstellbarkeit eines Designs vorherzusagen.
-
Genauer
können
für ein
beliebiges Designelement die Merkmale einer virtuellen Lernkurve
(beispielsweise die Abhängigkeit
der Ausbeute von dem Herstellvolumen, hergeleitet aus bereits bekannten Daten)
in ein Simulatorwerkzeug, wie beispielsweise YRS, eingespeist werden.
Unter Bezugnahme auf die 3 können bei einem gegebenen Level
der Prozessreife des Benutzers in Bezug auf die Lernkurve, die durch
ein YRS-Werkzeug
formatierten historischen Daten verwendet werden, um die Ausbeute über die
Zeit für
die spezifischen Layoutmerkmale eines IC-Designs vorherzusagen.
Solche Informationen können
ein zusätzliches
Kriterium für
die Auswahl von Varianten darstellen, das eine genauere Kosten-/Rentabilitäts-Vorhersage
des Designs über den
Produktzyklus ermöglicht.
Zusätzlich
erlaubt ein solches Designsystem durch die Identifikation der Designelemente
mit der geringsten Ausbeute (lowest yielding design element) eine
Vorhersage und Optimierung der Ausbeute des gesamten IC-Designs über die
Zeit bei einem gegebenen Level der Prozessreife. Mit der Reife des
Herstellprozesses ändern
sich auch die Merkmale in Bezug auf die Herstellbarkeit der Bibliothekszellen
und dementsprechend kann das optimale Mapping eines Blocks eines
Chips in Bezug auf die Bibliothekszellen dynamisch justiert werden.
-
IV. Auswahl der optimalen
Designelemente
-
Unter
Bezugnahme auf die 7 ist ein beispielhafter Designablauf 700 zur
Auswahl optimaler Designelemente gezeigt. Bei 702 wird
ein Design basierend auf Herstellbarkeitsabschätzungen und Varianten der Designelemente
aus 516 optimiert. Das Design kann durch Verändern der
Auswahlfunktion eines Synthesewerkzeugs, um Zellen oder Blöcke basierend auf
den Herstellbarkeitsmerkmalen und anderen Designrandbedingungen
auszuwählen,
optimiert werden. Alternativ kann eine existierende Netzliste eines
Designs zerlegt werden, um Varianten zu substituieren, während die
geforderte Funktionalität erhalten
wird und andere Designrandbedingungen beachtet werden.
-
Bei 704 wird
das verbesserte Design analysiert, um zu bestimmen, ob das verbesserte
Design mit den Designrandbedingungen übereinstimmt. Falls eine Randbedingung
verletzt ist, wird ein Design schrittweise erstellt, um die Randbedingungen zu
erfüllen,
oder es wird durch eine alternative, nächstniedrigere Ausbeute-Variante
mit derselben Funktionalität
ersetzt. Wie in der 7 gezeigt, wird der Prozess
wiederholt, bis die Randbedingungen erfüllt sind. Wenn die Randbedingungen
erfüllt
sind, wird eine Beschreibung des verbesserten Designs, wie beispielsweise
eine verbesserte Netzliste, erzeugt.
-
Obwohl
beispielhafte Ausführungsformen beschrieben
wurden, können
verschiedene Modifikationen ohne Verlassen der Idee und/oder des
Umfangs der vorliegenden Erfindung vorgenommen werden. Daher sollte
die vorliegende Erfindung nicht als auf die bestimmten in den Zeichnungen
und oben beschriebenen Ausführungsformen
begrenzt angesehen werden.
-
Zusammenfassung
-
Bibliotheksdesignelemente
(102) werden auf ihre Herstellbarkeit analysiert, wobei
die Bibliotheksdesignelemente (102) beim Designen eines
unter Verwenden eines bestimmten Herstellprozesses herzustellenden
IC-Chips zu verwenden sind. Die Bibliotheksdesignelemente werden
von einer Bibliothek erhalten. Die Herstellbarkeitsmerkmale (104)
der Bibliotheksdesignelemente werden für den bestimmten Herstellprozess
bestimmt, wobei die Herstellbarkeitsmerkmale Ausbeute-bezogene Merkmale
enthalten. Darauffolgend werden Bibliotheksansichten (106)
mit Herstellbarkeitsmerkmalen für
die Bibliotheksdesignelemente erzeugt, die durch ein elektronisches
Designautomations-(EDA)-Werkzeug verwendet werden.