DE10355141A1 - System und Verfahren zum Schätzen eines Leistungsverbrauchs für zumindest einen Abschnitt einer integrierten Schaltung - Google Patents

System und Verfahren zum Schätzen eines Leistungsverbrauchs für zumindest einen Abschnitt einer integrierten Schaltung Download PDF

Info

Publication number
DE10355141A1
DE10355141A1 DE10355141A DE10355141A DE10355141A1 DE 10355141 A1 DE10355141 A1 DE 10355141A1 DE 10355141 A DE10355141 A DE 10355141A DE 10355141 A DE10355141 A DE 10355141A DE 10355141 A1 DE10355141 A1 DE 10355141A1
Authority
DE
Germany
Prior art keywords
power consumption
sub
block
assigned
component
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
DE10355141A
Other languages
English (en)
Inventor
Radjassamy Plano Rajakrishnan
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 Development Co LP
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 Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10355141A1 publication Critical patent/DE10355141A1/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

Abstract

Ein System und ein Verfahren zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts einer integrierten Schaltung (IC). Die IC ist in eine hierarchische Teilblockebenenstruktur segmentiert, derart, daß innerhalb jedes Teilblocks und zwischen Teilblöcken der gleichen Ebene Leistungsverbrauchskomponenten identifiziert werden, so daß der Leistungsverbrauch für jeden Teilblock basierend auf einer Anwendung probabilistischer Aktivitätsprofile, die den Leistungsverbrauchskomponenten zugeordnet sind, geschätzt werden kann.

Description

  • In den letzten Jahrzehnten wurde ein Großteil des logischen Entwurfs bei integrierten Schaltungen (ICs) graphisch unter Verwendung von Diagrammen und Schemata durchgeführt und durch ein „Versuchsschaltungsaufbauen" bzw. Breadboarding des Entwurfs verifiziert. Die zunehmende Größe, Funktionalität und Leistung von ICs, Vermarktungszeitdruck und Kostenbeschränkungen jedoch haben den herkömmlichen Logikentwurf herausgefordert. Um ICs, die erhöhte Eingangs-/Ausgangsdichten und komplexe Gehäuse mit hoher Anschlußstiftzahl aufweisen, in einer eingeschränkten Zeitperiode zu schaffen, verwendet der IC-Logikentwurf computergestützte Entwurfs- (CAD-) Softwaretools, die auch computergestützte Konstruktions- (CAE-) Softwaretools genannt werden, um die Entwicklung des konzeptionellen und physischen Entwurfs der IC sowie die Verifizierung der IC zu unterstützen.
  • Hochentwickelte CAD-Softwaretools enthalten Komponentenbibliotheken und Komponentenmodelle, die detailliert die logischen und elektrischen Operationen des Digitalsystementwurfs der IC beschreiben. Unter Verwendung dieser Modelle kann der IC-Entwurf so verifiziert werden, daß verschiedene Typen von Logik- und Zeitgebungsfehler während der Vor-Silizium-Simulationsphase einer Entwicklung gefunden werden können. Entwurfsregel-Prüfer-Module z. B. können einige der häufigeren Fehler bei einem Entwurf erfassen, wie z. B. kurzgeschlossene Ausgänge oder floatende bzw. schwebende Eingänge, wobei das Modul mit der Zugabe von Eingangslast- und Ausgangstreiber-Charakteristika für jeden Anschlußstift einige der komplizierteren Fehler, wie z. B. eine überschrittene Fanout-Fähigkeit, erfassen kann. Zeitgebungsverifizierungsmodule liefern ein Tool, das es Ent werfern ermöglicht, den Verzögerungswert eines ungünstigsten Falls für jeden Eingang-zu-Ausgang-Pfad zu bestimmen, sowie Aufbau- und Haltezeit für getaktete Vorrichtungen, so daß die Verzögerungspfade eines ungünstigsten Falls in der gesamten Schaltung bestimmt werden können. Mit diesen Informationen kann ein erfahrener Entwerfer bestimmen, ob die Zeitgebungsspielräume akzeptabel sind. Zusätzlich ermöglichen es die Komponentenbibliotheken und Komponentenmodelle, die mit den CAD-Softwaretools vorgesehen sind, daß Leistungssimulatorsoftwaremodulen die durch die IC verbrauchte Leistung schätzen können. Üblicherweise sind diese Module in der Lage, einen mittleren oder Spitzenleistungsverbrauch für den Entwurf mit oder ohne eine Verwendung eines vorbestimmten heuristischen Faktors, wie z. B. des „Umschaltfaktors", zu berechnen.
  • Trotz dieser Vorteile bleiben dennoch einige Einschränkungen und Nachteile bezüglich der IC-Entwurfssoftwaretools des Stands der Technik bestehen. Da eine Leistungsverbrauchsschätzung ein wesentlicher Faktor bei dem IC-Entwurf ist, kann der existierende Umschaltfaktoransatz zum Schätzen des Leistungsverbrauchs der IC zu irreführenden Ergebnissen führen, wenn die heuristischen Faktoren, die in der Schätzung verwendet werden, ungenau sind. Abhängig von dem Typ des Leistungsschätztools, ob es nun auf analytischer oder simulationsmäßiger Basis ist, variieren der Grad an Genauigkeit und die inhärenten Einschränkungen darin. Eine der wesentlichen Einschränkungen kann die Unfähigkeit sein, die durch einen Abschnitt des IC-Entwurfs verbrauchte Leistung zu bestimmen, wodurch ein potentieller „Hot Spot", der sich in dem Entwurf befindet, vollständig übersehen wird.
  • Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren, ein System oder ein computerlesbares Medium zu schaffen, mit deren Hilfe ein Entwurf von integrierten Schaltungen flexibler gemacht werden kann.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 oder 25, ein System gemäß Anspruch 10 oder ein computerlesbares Medium gemäß Anspruch 17 gelöst.
  • Ein System und ein Verfahren zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts eines Entwurfs einer integrierten Schaltung (IC) sind offenbart. Bei einem Ausführungsbeispiel ist die IC in eine hierarchische Teilblockebenenstruktur segmentiert, derart, daß innerhalb jedes Teilblocks und zwischen Teilblöcken der gleichen Ebene Leistungsverbrauchskomponenten identifiziert werden. Ein Leistungsverbrauch für jeden Teilblock wird basierend auf der Anwendung probabilistischer Aktivitätsprofile, die den Leistungsverbrauchskomponenten zugeordnet sind, geschätzt.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert, wobei in den Zeichnungen gleichen oder ähnlichen Elementen in den mehreren Ansichten derselben identische Bezugszeichen zugeordnet sind und die verschiedenen dargestellten Elemente nicht notwendigerweise maßstabsgetreu sind. Es zeigen:
  • 1 eine hierarchische schematische Struktur hinsichtlich eines Digitalentwurfs einer integrierten Schaltung (IC), der ein System zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts der IC verwendet;
  • 2 ein Funktionsblockdiagramm, das ein Ausführungsbeispiel eines Systems zum Schätzen des Leistungsverbrauchs eines Abschnitts der IC darstellt;
  • 3 ein Flußdiagramm, das ein Ausführungsbeispiel eines Verfahrens zum Schätzen eines Leistungsver brauchs zumindest eines Abschnitts der IC darstellt;
  • 4 ein schematisches Diagramm eines exemplarischen Teilblocks, für den das System zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts der IC verwendet wird;
  • 5A ein schematisches Diagramm eines Ausführungsbeispiels eines Anschlußflächentreiber-/Empfänger-Modells, das in dem Teilblock aus 4 enthalten ist;
  • 5B ein schematisches Diagramm eines Ausführungsbeispiels eines Taktschaltungsmodells, das in dem Teilblock aus 4 enthalten ist;
  • 5C ein schematisches Diagramm eines Ausführungsbeispiels eines Flip-Flop-Modells, das in dem Teilblock aus 4 enthalten ist;
  • 5D ein schematisches Diagramm eines Ausführungsbeispiels eines Gatter-Modells, das in dem Teilblock aus 4 enthalten ist;
  • 5E ein schematisches Diagramm eines Ausführungsbeispiels eines Latch-Array-Modells, das in dem Teilblock aus 4 enthalten ist; und
  • 5F ein schematisches Diagramm eines Ausführungsbeispiels eines Repeater-Modells, das in dem Teilblock aus 4 enthalten ist.
  • Bezug nehmend auf 1 ist ein Ausführungsbeispiel einer hierarchischen schematischen Struktur 100 eines Digitalentwurfs einer integrierten Schaltung (IC) dargestellt, die durch ein System zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts der IC gemäß den Lehren hierin verwendet wird. Die hierarchische schematische Struktur 100 kann unter Verwendung eines schematischen Editors in einer hochfähigen Umgebung einer Hardwarebeschreibungssprache (HDL) entworfen sein, wie z. B. in einer Umgebung einer Höchstgeschwindigkeit-Integrierte-Schaltung- (VHSIC-) Hardwarebeschreibungssprache (VHDL), einer Verilog-Beschreibungssprachenumgebung oder einer Umgebung einer fortgeschrittenen Boolsche-Gleichung-Sprache (ABEL). Die HDL-Sprachumgebung liefert eine Plattform von Entwurf, Simulation und Synthese, bei der der Entwurf der obersten Ebene hierarchisch zerlegt werden kann und jede Bestandteilskomponente innerhalb des Entwurfs mit sowohl einer gut definierten Schnittstelle zum Verbinden derselben mit anderen Komponenten als auch einer genauen Verhaltensspezifizierung versehen sein kann, die eine Simulation ermöglicht.
  • Eine Struktur 102 der obersten Ebene umfaßt vier Teilblöcke 104, 106, 108 und 110, die die Systemebenenbeschreibung der IC definieren. Jeder Teilblock 104, 106, 108 und 110 kann Teilsystemebenenbeschreibungen, Komponentenebenenbeschreibungen oder Kombinations-Teilsystem-Komponentenebenen-Beschreibungen der IC darstellen. Obwohl die Struktur 102 der obersten Ebene als vier Teilblöcke enthaltend dargestellt ist, sollte ersichtlich sein, daß die Struktur der obersten Ebene und die Teilstrukturen der Struktur der obersten Ebene jede Anzahl von Teilblöcken aufweisen können. Wie dies dargestellt ist, weist der Teilblock 108, eine Zwischen-Teilblockebene, vier Teilblöcke 112, 114, 116 und 118 auf. Der Teilblock 116 wiederum kann in eine weitere Zwischen-Teilblockebene zerlegt werden, die Teilblöcke 120, 122, 124 und 126 umfaßt. Zusätzlich kann der Teilblock 118, ein Zwischen-Teilblock, in Teilblöcke 128 und 130 zerlegt werden. Die hierarchische Zerlegung der Struktur 102 der obersten Ebene kann fortfahren, bis ein Teilblock in eine minimale Teilblockebene unterteilt ist, die „Grundelement" bzw. Primitiv genannt wird. Wie z. B. durch die Serie von Pfeilen dargestellt ist, wurde der Teilblock 110 in eine minimale Teilblockebene zerlegt, die einen Teilblock 132 umfaßt. Ähnlich zu den Teilblöcken 104110 können die Teilblöcke 112132 jeweils Teilsystemebenenbeschreibungen, Komponentenebenenbeschreibungen oder Kombinations-Teilsystem-Komponentenebenen-Beschreibungen der IC umfassen. Zusätzlich kann der Teilblock 132, eine minimale Teilblockebene, eine Grundelementzellbeschreibung umfassen, die die Schaltung z. B. hinsichtlich Verhältnissen zwischen Gattern, Quellen und Vorrichtungen darstellt. Wie im folgenden detaillierter beschrieben ist, kann das System zum Schätzen des Leistungsverbrauchs zumindest eines Abschnitts der IC den Leistungsverbrauch eines bestimmten Teilblocks der IC bei einer hierarchischen Ebene oder den Leistungsverbrauch der gesamten IC bestimmen. Das System kann z. B. verwendet werden, um den Leistungsverbrauch der Struktur 102 der obersten Ebene, der Zwischen-Teilblockebenenstruktur 108 oder minimalen Teilblockebenenstruktur 132 zu schätzen.
  • 2 stellt ein Ausführungsbeispiel eines Systems 200 zum Schätzen des Leistungsverbrauchs eines Abschnitts der IC dar. Das System 200 kann mit jedem Typ von IC verwendet werden, einschließlich anwendungsspezifischer ICs (ASICs) und freiprogrammierbarer Gate-Arrays (FPGAs), sowie mit jedem Typ von Herstellungsprozeß, wie z. B. Komplementär-Metalloxid-Halbleiter- (CMOS-) Herstellungsprozessen. Ferner kann das System 200 verwendet werden, um den Leistungsverbrauch bei jeder hierarchischen Ebene des IC-Entwurfs zu schätzen. Das System 200 kann z. B. bei der minimalen Teilblockebene 132 aus 1, der obersten Ebene 102 aus 1 oder jeder anderen Ebene dazwischen verwendet werden. Verschiedene Entwurfssimulationsdateien 202 werden als eine Eingabe bezüglich eines Leistungsschätztools 204 bereitgestellt, das eine Leistungsschätzausgabe 206 erzeugt. Die Entwurfssimulationsdateien 202 werden während der frühen Stufen eines computergestützten Logikentwurfsprozesses durch einen schematischen Editor erzeugt, um die logische und elektrische Operation der IC-Vorrichtung auf unterschiedlichen hierarchischen Ebenen zu beschreiben, um eine feinkörnige Leistungsverbrauchsmodellierung zu bieten. Schematische Editoren erzeugen verschiedene Daten- und Dateitypen, wie z. B. Modelldateien 208, Prozeßparameterdaten 210 und Netzlistendateien 212, um sowohl den Eintrag als auch die Wiedergewinnung von Informationen zu vereinfachen, die in einer hierarchischen schematischen Struktur gespeichert sind, wie z. B. der hierarchischen Struktur, die in 1 dargelegt ist. Insbesondere stellen die Modelldateien 208 die Verbindbarkeit und weitere Merkmale von Grundelement und Bibliothekskomponenten des IC-Entwurfs dar. Die Prozeßparameterdaten 210 können prozeßbezogene Informationen aufweisen, die zum Simulieren unterschiedlicher Vorrichtungen benötigt werden, die in dem Entwurf verwendet werden. Lediglich beispielhaft umfassen derartige Informationen für P-Kanal- und N-Kanal-MOSFET-Bauelemente Kanallängen- und -Breitenparameter, Gateoxiddicke, Kapazitäten usw. Die Netzlistendateien 212 spezifizieren die Verbindungen zwischen Netzen, d. h. Sätze von Anschlußstiften, die alle mit dem gleichen elektrischen Knoten oder Signal verbunden sind, die durch das Schema benötigt werden. Bei einem Ausführungsbeispiel weisen die Netzlistendateien 212 ebenenspezifische Informationen auf, die Verbindungsdaten für die oberste Ebene, Zwischen-Teilblockebenen, minimale Teilblockebenen und Vorrichtungsebenen der IC umfassen. Üblicherweise können die durch die Netzlistendateien 212 beschriebenen Verbindungen als eine alphabetisch sortierte Liste von Signalnamen ausgedrückt werden, bei denen für jeden Signalnamen der Referenzbezeichner und die Anschlußstiftzahl eines Vorrichtungsanschlußstifts und die Verbindungssignalposition bereitgestellt werden. Bibliotheksdateien 214 liefern die Komponentenherstellungsdokumentation für die Komponententypreferenzbezeichnungen und umfassen z. B. Informationen bezüglich Standardzellen und Gatearrays. Es sollte ersichtlich sein, daß die Entwurfssimulationsdateien andere Dateien umfassen können, die benötigt werden, um die logische und elektrische Operation eines bestimmten IC-Entwurfs zu beschreiben.
  • Das Leistungsschätztool 204 umfaßt eine Leistungsschätzmaschine 216, einen Modifiziertnetzlistengenerator 217 und einen Reduktionsfaktorgenerator 218. Die Leistungsschätzmaschine 216 verwendet die hierarchische schematische IC-Struktur, die durch die Entwurfssimulationsdateien 202 bereitgestellt wird, um die Leistungsverbrauchskomponenten in jeder Teilblockstruktur des IC-Entwurfs und zwischen Teilblöcken der gleichen Ebene zu bestimmen, derart, daß das Leistungsverbrauchstool 204 verwendet werden kann, um den Leistungsverbrauch auf der Schaltungsebene der gesamten IC oder eines Abschnitts derselben zu schätzen. Bei einem Ausführungsbeispiel kann die Leistungsschätzmaschine 216 ein Softwaresimulationstool aufweisen, das in der Technik bekannt ist, wie z. B. ein simuliertes Programm mit Integriertschaltungshervorhebung (SPICE), das verschiedene mathematische Modelle verwendet, um den Leistungsverbrauch zu schätzen. Der Reduktionsfaktorgenerator 218 bestimmt einen Reduktionsfaktor für jede Leistungsverbrauchskomponente jeder Teilblockebene von Interesse. Wie im folgenden detaillierter erklärt ist, legt Reduktionsfaktor ein zusammengesetztes, probabilistisches Aktivitätsprofil, das jeder Leistungsverbrauchskomponente zugeordnet ist, vor, das auf ihren Struktur-, Funktions-, Entwurfs- und Prozeßbeschränkungen basiert. Unter Verwendung der Reduktionsfaktoren für jeden Teilblock, jede Teilblockebene oder jeden Abschnitt der IC von Interesse liefert der Modifiziertnetzlistengenerator 217 eine modifizierte Netzliste, die eine reduzierte Anzahl von Komponenten (z. B. FETs, Flip-Flops und dergleichen) verwendet, um den Abschnitt der IC von Interesse zu modellieren, wie im folgenden in 4 detaillierter erläutert ist. Nachfolgend schätzt die Leistungsschätzmaschine 216 den Leistungsverbrauch basierend auf den modifizierten Netzlisten auf der geeigneten Schaltungsebene, was im wesentlichen eine Funktion eines Leistungsfaktors ist, der durch die Reduktionsfaktoren moduliert wird. Die Leistungsverbrauchsschätzung kann verwendet werden, um z. B. eine Signalverlaufsausgabe 220 oder eine Durchschnittsstrom-/Leistungsverbrauchsausgabe 222 zu erzeugen. Das Leistungsschätztool 204 und das System, die hierin beschrieben sind, können in jeder existierenden Simulationsumgebung beinhaltet sein, um Vor-Silizium-Entwurfsphasen-Leistungsschätzungen zu liefern. Diese Flexibilität ermöglicht es einem IC-Entwerfer, die Aktivität von Signalen bei unterschiedlichen Blöcken oder Ebenen der IC zu berücksichtigen, um Hot Spots innerhalb des IC-Entwurfs, die große Mengen von Leistung verbrauchen, zu diagnostizieren und isolieren.
  • Zum Beispiel Bezug nehmend auf die 1 und 2 erfaßt der Modifiziertnetzlistengenerator 217, um den Leistungsverbrauch der Zwischen-Teilblockebene 108 zu schätzen, die Entwurfssimulationsdateien 202, die die Bestandteilskomponenten der Blöcke 112118 beschreiben, die die Zwischen-Teilblockebene 108 bilden. Der Modifiziertnetzlistengenerator 217 erzeugt Modelle, wie z. B. die im folgenden in 4 beschriebenen Modelle, der Leistungsverbrauchskomponenten der Blöcke 112118, die den Leistungsverbrauch bei jedem Block und zwischen den Blöcken 112118 beschreiben. Die Leistungsschätzmaschine schätzt den Leistungsverbrauch jeder Komponente mit einem Reduktionsfaktor, der durch den Reduktionsfaktorgenerator 218 erzeugt wird. Die Leistungsschätzwerte der Leistungsverbrauchskomponenten der Blöcke 112118 werden dann zusammengestellt, um eine Schätzung des Leistungsverbrauchs der Zwischen-Teilblockebene 108 zu liefern.
  • 3 stellt ein Ausführungsbeispiel eines Verfahrens zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts der IC dar. Bei einem Block 300 wird der IC-Entwurf in eine hierarchische Teilblockebenenstruktur segmentiert, die jede Anzahl von Ebenen aufweisen kann, die jede Anzahl von Teilblockstrukturen aufweisen. Bezug nehmend auf 1 z. B. kann der IC-Entwurf 100 in eine Blockstruktur segmentiert sein, die die Blöcke 104, 106, 108 und 110 umfaßt. Bei einem Block 302 werden Leistungsverbrauchskomponenten innerhalb jedes Teilblocks einer bestimmten Teilblockebenenstruktur und zwischen den Teilblöcken der gleichen Ebene bestimmt und charakterisiert. Bei einem Block 304 werden Entwurfssimulationsdateien bezüglich jedes Teilblocks der bestimmten Teilblockebenenstruktur erfaßt. Der Modifiziertnetzlistengenerator 217 aus 2 z. B. erfaßt die Entwurfssimulationsdateien 202, die die Komponenten und Komponentenverbindungen des Teilblocks von Interesse beschreiben, um die Leistungsverbrauchskomponenten des Teilblocks von Interesse zu modellieren.
  • Bei einem Block 306 wird ein Reduktionsfaktor für jede Leistungsverbrauchskomponente der bestimmten Teilblockebene bestimmt. Wie im folgenden detaillierter besprochen wird, kann der Reduktionsfaktor ein zusammengesetztes, probabilistisches Aktivitätsprofil darstellen, das der Leistungsverbrauchskomponente zugeordnet ist. Bei einem Block 308 wird der Leistungsverbrauch für jede Leistungsverbrauchskomponente als eine Funktion eines Rohleistungsfaktors und des Reduktionsfaktors geschätzt. Es sollte deshalb ersichtlich sein, daß das hierin beschriebene Ausführungsbeispiel ein modulares, simulationsbasiertes Verfahren zum Schätzen eines Leistungsverbrauchs vorsieht, das eine Leistung für einen bestimmten Teilblock oder Teilblöcke von Interesse durch ein Analysieren relevanter Teilblockleistungsverbrauchskomponenten schätzt. Entsprechend ist der hierin beschriebene modulare feinkörnige Ansatz in der Lage, eine genaue und skalierbare Schätzung eines Leistungsverbrauchs zu liefern.
  • 4 stellt einen exemplarischen Teilblock 400 eines IC-Entwurfs dar, für den das System zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts der IC verwendet werden kann, um die Leistung zu schätzen. Lediglich beispielhaft ist Bezug nehmend auf den IC-Entwurf 100 aus 1 ein Teilblock 400 eine zusammengesetzte Darstellung des Schaltungsentwurfsabschnitts bei einer hierarchischen Ebene, wie z. B. von Teilblöcken 104, 106, 108 und 110 oder Teilblöcken 112, 114, 116 und 118 einer Zwischenebene oder Teilblöcken 128 und 130 einer weiteren Zwischenebene und dergleichen. Folglich umfaßt der Teilblock 400 verschiedene leistungsverbrauchende Komponenten desselben, die durch eine Leistungsquelle 402 mit Leistung versorgt werden. Der Modifiziertnetzlistengenerator 217 aus 2 verwendet die verschiedenen Entwurfssimulationsdateien 202, um ein Modell des Abschnitts der IC von Interesse zu erzeugen. Es sollte zu erkennen sein, daß der bestimmte Teilblock von Interesse alle oder einen Abschnitt der im folgenden beschriebenen Modelle aufweisen kann. Ein Anschlußflächenmodul 404 stellt die leistungsverbrauchenden Anschlußflächenkomponenten des Teilblocks oder Abschnitts der IC von Interesse dar, die eine externe Verbindbarkeit liefern. Insbesondere kann das Anschlußflächenmodul 404 sowohl Treiber- als auch Empfängeranschlußflächen darstellen, die eine Eingabe- und Ausgabefunktion durchführen. Als ein zusammengesetztes Modell ist das Anschlußflächenmodul 404 durch eine Masse geerdet und schnittstellenmäßig mit einem Leiterbahnmodul 408 verbunden, das darstellend für alle Leiterbahn-/Verbindungselemente des Teilblocks 400 ist. Eine parasitäre Kapazität, die den Anschlußflächen zugeordnet ist, ist als ein Kondensator 406 modelliert. Lediglich beispielhaft kann das Leistungsschätztool 204 aus 2 als ein Teil eines Schätzens des Leistungsverbrauchs von Block 114 aus 1 die Entwurfssimulationsdateien 202 erfassen, die die Komponenten und Komponentenverbindungen von Block 114 beschreiben. Leistungsverbrauchende Komponenten, wie z. B. die Anschlußflächen, werden dann modelliert und der Leistungsverbrauch für die Anschlußflächen wird bestimmt. Die Leistungsschätzung der Anschlußflächen kann mit anderen Leistungsverbrauchskomponentenschätzungen beim Schätzen der Leistung des Blocks 114 zusammengestellt werden.
  • Ein Taktschaltungsmodul 410 stellt den Leistungsverbrauch der Schaltungen eines Taktbaums dar, die erfaßt werden, um eine Serie von Hoch- und Niedrigpulsen bei einer festen Frequenz zu erzeugen, um ein freilaufendes Taktsignal zu erzeugen. Ähnlich wie bei dem Anschlußflächenmodul 404 ist das Taktschaltungsmodul 410 über eine Kapazität 412 geerdet und schnittstellenmäßig mit dem Leiterbahnmodul 408 verbunden. Ein Flip-Flop-Modul 414 stellt den Leistungsverbrauch der Flip-Flop-Folge-Vorrichtungen dar, die ihre Eingangssignale abtasten und ihre Ausgangssignale zu Zeiten verändern, die durch das freilaufende Taktsignal bestimmt sind. Eine Kapazität 416 ist mit dem Flip-Flop-Modul 414 verbunden, das schnittstellenmäßig mit dem Leiterbahnmodul 408 verbunden ist.
  • Ein Gatter-Modul 418, das über eine Kapazität 420 geerdet ist, stellt den Kombinationsschaltungsaufbau des Teilblocks 400 dar. Ein Latch-Array-Modul 422 ist über eine Kapazität 424 geerdet und stellt den Leistungsverbrauch der Latch-Folge-Vorrichtungen des Teilblocks 400 dar. Ein Repeater-Modul 426, das über eine Kapazität 428 geerdet ist, stellt den Leistungsverbrauch der sich wiederholenden Vorrichtungen (z. B. Puffer) innerhalb der Teilblockebene 400 dar. Wie bei den anderen Modulen sind das Gatter-Modul 418, das Latch-Array-Modul 422 und das Repeater-Modul 426 schnittstellenmäßig mit dem Leiterbahnmodul 408 verbunden. Außerdem stellt das Leiterbahnmodul 408, wie bereits herausgestellt wurde, den Leistungsverbrauch von Verbindungen der Teilblockebenenstruktur 400 dar und ist über eine Kapazität 430 geerdet. Es sollte zu erkennen sein, daß, obwohl bestimmte Teilblockmodule insbesondere zu Zwecken einer Erläuterung bestimmter, hierin vorgelegter Konzepte dargestellt sind, andere Teilblockmodularbeschreibungen der Teilblockebene ebenso verwendet werden können und für Fachleute auf diesem Gebiet nach einem Lesen dieser Offenbarung ersichtlich sind.
  • Nachdem die IC in die Teilblockebene oder -ebenen von Interesse zerlegt wurde, wie zuvor in 1 dargestellt wurde, und die leistungsverbrauchenden Komponenten in der Teilblockebene von Interesse und zwischen Teilblöcken innerhalb der Ebene von Interesse identifiziert wurden, wie zuvor in 4 dargestellt wurde, kann das Leistungs schätztool 204 aus 2 den Leistungsverbrauch durch ein Prüfen der bestimmten leistungsverbrauchenden Komponenten und ein Durchführen einer Schätzung eines Leistungsverbrauchs schätzen. Der Leistungsverbrauch kann mittels einer oder mehrerer Gleichungen geschätzt werden, die einen Rohleistungsfaktor und einen Reduktionsfaktor für jede Leistungsverbrauchskomponente umfassen, die darstellend für ein probabilistisches Aktivitätsprofil ist, das der Leistungsverbrauchskomponente zugeordnet ist. Wie zuvor angedeutet wurde, kann das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweisen, der die Form eines Korrekturkoeffizienten annehmen kann, der auf entweder den Strukturbeschränkungen der Leistungsverbrauchskomponente, Funktionsbeschränkungen, Entwurfsbeschränkungen, Prozeßbeschränkungen oder einer Kombination derselben basiert. Entsprechend verwendet der Reduktionsfaktorgenerator 218 eine oder mehrere Einschränkungen der Leistungsverbrauchskomponente, um bei einem Aktivitätsfaktorprofil für die Komponente anzukommen, das die probabilistische Realität der Weise darstellt, auf die ihr Schaltungsaufbau entworfen ist, um unter normalen Bedingungen zu arbeiten. Der Reduktionsfaktor wird dann in Verbindung mit den Netzlistendateien, die der zusammengesetzten Leistungsverbrauchskomponente zugeordnet sind, angewendet, um eine modifizierte Netzliste unter Verwendung des Modifiziertnetzlistengenerators 217 herzuleiten. Wie unten dargelegt wird, ist die Leistungsschätzmaschine 216 betreibbar, um einen Leistungsverbrauch der Bestandteilskomponenten durch ein Verwenden von Stromflußschätzgleichungen zu schätzen, die auf den modifizierten Netzlisten der Komponentenmodelle basieren.
  • 5A stellt ein Ausführungsbeispiel einer leistungsverbrauchenden Komponente, eines Anschlußflächenmodells 500, dar, die darstellend für die Anschlußflächenkomponente 404 ist, die innerhalb des Teilblocks von 4 enthalten ist. Ein Leistungseingang 502, ein Dateneingang 504, ein Takteingang 506 und ein Übernahmesignaleingang 508 liefern einen Eingang in das Anschlußflächenmodell 500, das mit einer Verbindungsleiterbahnkapazität 510 gekoppelt ist. Um den Leistungsverbrauch der Anschlußflächen durch das Anschlußflächenmodell 500 zu schätzen, werden die Entwurfssimulationsdateien für jeden Typ von Anschlußfläche, sowohl einschließlich Treiber- als auch Empfängeranschlußflächen, erfaßt. Wenn die Daten durch die Entwurfssimulationsdateien bereitgestellt werden, kann eine Leistung für die Anschlußflächen geschätzt werden. Bei einem Ausführungsbeispiel können die folgenden Gleichungen durch die Leistungsschätzmaschine 216 des Tools 204 aus 2 verwendet werden, um den Leistungsverbrauch der Anschlußflächen zu schätzen:
    Figure 00140001
    wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IEST den Schätzwert eines Stroms darstellt;
    V eine Spannung darstellt;
    Ii den Strom für den Anschlußflächentyp i darstellt;
    N die maximale Anzahl von Anschlußflächentypen darstellt;
    Di eine Treiberanschlußfläche des Typs i darstellt;
    Ri eine Empfängeranschlußfläche des Typs i darstellt; und
    F den Reduktionsfaktor für die Anschlußflächen darstellt.
  • Die Gleichungen stellen eine Schätzung des Leistungsverbrauchs der Anschlußflächen dar, durch Multiplizieren der Spannung mit dem Strom, d. h. eine Rohleistungskomponente, für jeden Typ von Anschlußfläche mit der Anzahl von An schlußflächen dieses bestimmten Typs und einem Reduktionsfaktor, der die Rohleistungskomponente korrigiert. Der Reduktionsfaktor basiert auf einem Aktivitätsfaktor für die Anschlußflächen, der die Empfangs- und Treibersignalbeziehungen der Anschlußflächen darstellt. Bei einem Ausführungsbeispiel kann der Reduktionsfaktor 0,5 sein, da zu jedem gegebenen Moment die Hälfte der Anschlußflächen ein Signal empfängt und die Hälfte der Anschlußflächen ein Signal treibt.
  • 5B stellt ein Ausführungsbeispiel eines Taktschaltungsmodells 520 dar, das darstellend für das Taktmodul 410 des Teilblocks aus 4 ist. Ein Leistungssignal 522 und ein freilaufendes Taktsignal 524 liefern eine Eingabe an das Taktschaltungsmodell 520, das ein Taktsignal 526 und ein Übernahmesignal 528 ausgibt, die zur Datensignalzeitgebung verwendet werden. Eine Kapazität, die diesen beiden Signalausgängen zugeordnet ist, wird durch Kondensatoren 530 und 532 modelliert. Um den Leistungsverbrauch für das Taktschaltungsmodell 520 zu schätzen, werden die Entwurfssimulationsdateien für den Taktschaltungsbaum erfaßt. Ähnlich wie bei dem im folgenden erläuterten Anschlußflächenmodell kann eine Leistung mit den durch die Entwurfssimulationsdateien bereitgestellten Daten für das Taktmodell 520 geschätzt werden. Bei einem Ausführungsbeispiel können die folgenden Gleichungen durch das Leistungsschätztool 204 beim Schätzen des Leistungsverbrauchs des Taktmodells 520 verwendet werden:
    Figure 00150001
    wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IEST den Schätzwert eines Stroms darstellt;
    V eine Spannung darstellt;
    Bi die Anzahl von Takten eines Takttyps i in dem Taktbaum des Teilblocks darstellt;
    N die maximale Anzahl von Typen von Takten darstellt;
    Ii den Strom eines Takttyps i darstellt; und
    F den Reduktionsfaktor für den Takt darstellt.
  • Der Reduktionsfaktor basiert auf den ebenenspezifischen Aktivitätsprofilen des Taktes, die Taktcharakteristika, wie z. B. eine Taktperiode/Taktfrequenz, einen Takt-Tick und einen Arbeitszyklus, berücksichtigen.
  • 5C stellt ein Ausführungsbeispiel eines Flip-Flop-Modells 540 zum Modellieren des Flip-Flop-Moduls 414 dar, das in dem Teilblock aus 4 enthalten ist. Ein Leistungssignal 542, ein Datensignal 544 und ein Taktsignal 546 liefern Eingaben in das Flip-Flop-Modell, das mit einer Verbindungsleiterbahnkapazität 548 gekoppelt ist. Wieder werden die Entwurfssimulationsdateien für die Flip-Flops erfaßt, um den Leistungsverbrauch für die folgenden Flip-Flops zu schätzen. Bei einem Ausführungsbeispiel können die folgenden Gleichungen beim Schätzen des Leistungsverbrauchs des Flip-Flop-Modells 540 verwendet werden:
    Figure 00160001
    wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IEST den Schätzwert eines Stroms darstellt;
    V eine Spannung darstellt;
    Pi die Anzahl von Flip-Flops eines Typs i in dem Teilblock darstellt;
    N die maximale Anzahl von Typen von Flip-Flops darstellt;
    Ii den Strom des Flip-Flop-Typs i darstellt; und
    F den Reduktionsfaktor für die Flip-Flops darstellt.
  • Bei der gegenwärtigen Gleichung stellt Rohleistungskomponente (IiPi) den Leistungsverbrauch eines ungünstigsten Falls für eine bestimmte Spannung (V) dar. Der Reduktionsfaktor beinhaltet entwurfsbasierte Aktivitätsprofile der Flip-Flops und kann einen Koeffizienten zwischen 0 und 1 darstellen, der die Leistung eines ungünstigsten Falls korrigiert, indem er z. B. die Taktumschaltrate und Flip-Flop-Umschaltraten berücksichtigt.
  • 5D stellt ein Ausführungsbeispiel eines Gatter-Modells 560 zum Modellieren des Gatter-Moduls 418 dar, das in dem Teilblock aus 4 enthalten ist. Ein Leistungssignal 562 und ein Datensignal 564 liefern Eingänge in das Gatter-Modell 560, das mit einer Verbindungsleiterbahnkapazität 566 gekoppelt ist. Wie zuvor erläutert wurde, kann der Leistungsverbrauch für das Gatter-Modell 560 durch ein Erfassen der Entwurfssimulationsdateien der Gatter der bestimmten Teilblockebene oder Ebenen von Interesse geschätzt werden. Bei einem Ausführungsbeispiel können die folgenden Gleichungen beim Schätzen des Leistungsverbrauchs des Gatter-Modells 560 verwendet werden:
    Figure 00170001
    wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IES T den Schätzwert eines Stroms darstellt;
    V eine Spannung darstellt;
    iy der Gatter-Strom für einen Gatter-Typ y ist;
    cy der Zählwert oder die Anzahl von Typ-y-Gattern auf einer Ebene x ist;
    F = AXAy, wobei F der Reduktionsfaktor ist und AX der Aktivitätsfaktor für ein bestimmtes Gatter bei einer Ebene x ist und Ay der Aktivitätsfaktor für das bestimmte Gatter des Typs y ist;
    M die maximale Anzahl von Gatterpegeln darstellt; und
    N die maximale Anzahl von Gatter-Typen darstellt.
  • Bei einem Ausführungsbeispiel können die Aktivitätsfaktoren für das bestimmte Gatter-Modell durch ein Verwenden der Linearkombination oben vorgelegter Gleichungen durch ein Arbeiten unter der Annahme berechnet werden, daß nicht alle Gatter gleichzeitig ihren Zustand verändern oder umschalten. Durch ein Prüfen der Logikkette des Gatter-Modells und der Komplexität der darin enthaltenen Kombinationslogik kann ein probabilistisches Profil einer Gatter-Umschaltung berechnet und bei den Leistungsverbrauchsberechnungen verwendet werden.
  • 5E stellt ein Ausführungsbeispiel eines Latch-Array-Modells 570 dar, das darstellend für das Latch-Array-Modul 422 ist, das in dem Teilblock aus 4 enthalten ist. Ein Leistungssignal 572, ein Datensignal 574 und ein Taktsignal 576 liefern Eingaben an das Latch-Array-Modell 570, das mit einer Verbindungsleiterbahnkapazität 578 gekoppelt ist. Durch ein Erfassen der Entwurfssimulationsdateien, die für das bestimmte Latch-Array-Modell 570 relevant sind, können bei einem Ausführungsbeispiel die folgenden Gleichungen beim Schätzen des Leistungsverbrauchs des Latch-Array-Modells 570 verwendet werden: PEST = IESTV IEST = WDiF wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IEST den Schätzwert eines Stroms darstellt;
    V die Spannung darstellt;
    W die Breite des Latch-Arrays ist;
    D die Tiefe des Latch-Arrays ist;
    i der Strom für ein einzelnes Latch ist; und
    F = der dem Latch-Array zugeordnete Reduktionsfaktor ist.
  • Für diese Gleichung kann der Reduktionsfaktor basierend auf einem probabilistischen Aktivitätsprofil sein, das Aktivitätsfaktoren aufweist, die die bestimmten Komponentenbeschränkungen charakterisieren, wie z. B. die bestimmten Eingänge und Aktivitäten des Latch-Arrays.
  • 5F stellt ein Ausführungsbeispiel eines Repeater-Modells 590 zum Modellieren des Repeater-Moduls 426 des Teilblocks aus 4 dar. Ein Leistungssignal 592 und ein Datensignal 594 liefern einen Eingang in das Repeater-Modell 590. Zusätzlich kann ein Zeitgebungssignal 590 (das auch ein Taktsignal oder ein Übernahmesignal sein kann) an das Repeater-Modell 590 geliefert werden, das mit einem Verbindungsleiterbahnkondensator 596 gekoppelt ist. Basierend auf den Entwurfssimulationsdateien können bei einem Ausführungsbeispiel die folgenden Gleichungen beim Schätzen des Leistungsverbrauchs des Repeater-Modells 590 verwendet werden:
    Figure 00190001
    wobei PEST den Schätzwert eines Leistungsverbrauchs darstellt;
    IEST den Schätzwert eines Stroms darstellt;
    V eine Spannung darstellt;
    Ri die Anzahl vorhandener Repeater des Typs i darstellt;
    N die maximale Anzahl vorhandener Typen von Repeatern darstellt;
    Ii den Strom von Repeatern des Typs i darstellt; und
    F den Reduktionsfaktor für die Repeater darstellt.
  • Bei diesem Beispiel ist der Rohleistungsfaktor (das V in der PEST-Gleichung multipliziert mit dem RiIi in der IEST-Gleichung) darstellend für den maximalen Leistungsverbrauch oder den Leistungsverbrauch eines ungünstigsten Falls für eine bestimmte Spannung, die durch den Reduktionsfaktor eingestellt wird. Wieder kann der Reduktionsfaktor basierend auf einem probabilistischen Aktivitätsprofil sein, das Aktivitätsfaktoren aufweist, die das logische Verhalten des bestimmten Repeater-Modells 590 von Interesse berücksichtigen. Auf ein Schätzen des Leistungsverbrauchs jeder Komponente eines bestimmten Teilblocks hin kann der Leistungsverbrauch des gesamten Teilblocks durch ein Zusammenstellen der Leistungsverbrauchsschätzungen seiner leistungsverbrauchenden Bestandteilskomponenten geschätzt werden. Analog dazu kann der Leistungsverbrauch einer bestimmten Teilblockebene höherer Ordnung oder eines größeren Abschnitts der IC durch eine geeignete Zusammenstellung des Leistungsverbrauchs ihrer/seiner Bestandteilsteilblockebenen und Leistungsverbrauchskomponenten geschätzt werden. Die Leistungsschätzung kann als ein Signalverlaufsausgangssignal 220 aus 2 oder ein Durchschnittsstrom-/Leistungsschätzungs-Ausgangssignal 222 aus 2 bereitgestellt werden. Entsprechend sollte zu erkennen sein, daß die Systeme und Verfahren, die hierin beschrieben sind, in der Lage sind, ein umfassendes und skalierbares Tool zum Schätzen des Leistungsverbrauchs einer gesamten IC oder eines Abschnitts derselben bereitzustellen.

Claims (25)

  1. Verfahren zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts einer integrierten Schaltung (IC) (102), mit folgenden Schritten: Segmentieren (300) eines Entwurfs der IC (102) in eine hierarchische Teilblockebenenstruktur (100); Bestimmen (302) von Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) innerhalb jedes Teilblocks einer bestimmten Teilblockebenenstruktur; Erfassen (304) von Entwurfssimulationsdateien bezüglich jedes Teilblocks der bestimmten Teilblockebenenstruktur; Bestimmen (306) eines Reduktionsfaktors für jede Leistungsverbrauchskomponente der bestimmten Teilblockebene, wobei der Reduktionsfaktor darstellend für ein probabilistisches Aktivitätsprofil ist, das der Leistungsverbrauchskomponente zugeordnet ist; und für jede Leistungsverbrauchskomponente, Schätzen (308) ihres Leistungsverbrauchs basierend auf einer modifizierten Netzliste, die für jede Leistungsverbrauchskomponente unter Verwendung ihres Reduktionsfaktors hergeleitet wird.
  2. Verfahren gemäß Anspruch 1, bei dem die Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) aus der Gruppe ausgewählt werden, die aus Anschlußflächen (404), Taktgebern (410), Flip-Flops (414), Gattern (418), Latch-Arrays (422), Repeatern (426) und Signalleiterbahnen (408) besteht.
  3. Verfahren gemäß Anspruch 1 oder 2, bei dem die Entwurfssimulationsdateien aus der Gruppe ausgewählt wer den, die aus Prozeßdateien, Bibliotheksdateien und Netzlistendateien besteht.
  4. Verfahren gemäß einem der Ansprüche 1 bis 3, bei dem die Operation des Bestimmens (302) der Leistungsverbrauchskomponenten ein Bestimmen von Leistungsverbrauchskomponenten innerhalb jedes Teilblocks einer bestimmten Teilblockebenenstruktur und zwischen den Teilblöcken der gleichen Ebene aufweist.
  5. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Strukturbeschränkungen basiert, die den Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) zugeordnet sind.
  6. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Funktionsbeschränkungen basiert, die den Leistungsverbrauchskomponenten zugeordnet sind.
  7. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Entwurfsbeschränkungen basiert, die den Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) zugeordnet sind.
  8. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Prozeßbeschränkungen basiert, die den Leistungsverbrauchskomponenten zugeordnet sind.
  9. Verfahren gemäß einem der Ansprüche 1 bis 8, das ferner ein Zusammenstellen des Leistungsverbrauchsschätzwerts für jeden Teilblock, um einen Leistungs verbrauchsschätzwert für die IC zu berechnen, aufweist.
  10. System zum Schätzen des Leistungsverbrauchs zumindest eines Abschnitts einer integrierten Schaltung (IC) (102), mit folgenden Merkmalen: einer Einrichtung zum Segmentieren (303) eines Entwurfs der IC (102) in eine hierarchische Teilblockebenenstruktur (100); und einer Einrichtung zum Schätzen eines Leistungsverbrauchs (204) für jeden Teilblock (104, 106, 108, 100) basierend auf einer Anwendung probabilistischer Aktivitätsprofile, die Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) der Teilblöcke (104, 106, 108, 110) zugeordnet sind.
  11. System gemäß Anspruch 10, das ferner eine Einrichtung zum Erfassen von Entwurfssimulationsdateien (217) bezüglich jedes Teilblocks (104, 106, 108, 110) und seiner Leistungsverbrauchsbestandteilskomponenten (404, 408, 410, 414, 418, 422, 426) aufweist.
  12. System gemäß Anspruch 10 oder 11, bei dem die Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) aus der Gruppe ausgewählt werden, die aus Anschlußflächen (404), Taktgebern (410), Flip-Flops (414), Gattern (418), Latch-Arrays (422), Repeatern (426) und Signalleiterbahnen (408) besteht.
  13. System gemäß einem der Ansprüche 10 bis 12, bei dem jedes der probabilistischen Aktivitätsprofile zumindest einen Aktivitätsfaktor aufweist, der auf Strukturbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente (404, 408, 410, 414, 418, 422, 426) zugeordnet sind.
  14. System gemäß einem der Ansprüche 10 bis 12, bei dem jedes der probabilistischen Aktivitätsprofile zumindest einen Aktivitätsfaktor aufweist, der auf Funktionsbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  15. System gemäß einem der Ansprüche 10 bis 12, bei dem jedes der probabilistischen Aktivitätsprofile zumindest einen Aktivitätsfaktor aufweist, der auf Entwurfsbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  16. System gemäß einem der Ansprüche 10 bis 12, bei dem jedes der probabilistischen Aktivitätsprofile zumindest einen Aktivitätsfaktor aufweist, der auf Prozeßbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  17. Computerlesbares Medium, das mit einer Computerplattform betreibbar ist, um einen Leistungsverbrauch zumindest eines Abschnitts einer integrierten Schaltung (IC) (102) zu schätzen, wobei auf dem Medium Folgendes gespeichert ist: Befehle zum Segmentieren eines Entwurfs der IC (102) in eine hierarchische Teilblockebenenstruktur (100); Befehle zum Bestimmen von Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) innerhalb jedes Teilblocks (112, 114, 116, 118) einer bestimmten Teilblockebenenstruktur (108); Befehle zum Erfassen von Entwurfssimulationsdateien (202) relativ zu jedem Teilblock (112, 114, 116, 118) der bestimmten Teilblockebenenstruktur (108); Befehle zum Bestimmen eines Reduktionsfaktors für jede Leistungsverbrauchskomponente (404, 408, 410, 414, 418, 422, 426) der bestimmten Teilblockebene (108), wobei der Reduktionsfaktor darstellend für ein probabilistisches Aktivitätsprofil ist, das der Leistungsverbrauchskomponente zugeordnet ist; und Befehle zum Schätzen eines Leistungsverbrauchs jeder Bestandteilskomponente (404, 408, 410, 414, 418, 422, 426) basierend auf einer modifizierten Netzliste, die für jede Bestandteilskomponente unter Verwendung ihres Reduktionsfaktors hergeleitet wird.
  18. Computerlesbares Medium gemäß Anspruch 17, bei dem die Leistungsverbrauchskomponenten aus der Gruppe ausgewählt werden, die aus Anschlußflächen (404), Taktgebern (410), Flip-Flops (414), Gattern (418), Latch-Arrays (422), Repeatern (426) und Signalleiterbahnen (408) besteht.
  19. Computerlesbares Medium gemäß Anspruch 17 oder 18, bei dem die Befehle zum Erfassen von Entwurfssimulationsdateien (202) einem Simulator (204) zugeordnet sind, der mit der Computerplattform betreibbar ist.
  20. Computerlesbares Medium gemäß einem der Ansprüche 17 bis 19, bei dem die Befehle zum Bestimmen von Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) Befehle zum Bestimmen von Leistungsverbrauchskomponenten innerhalb jedes Teilblocks (112, 114, 116, 118) einer bestimmten Teilblockebenenstruktur (108) und zwischen den Teilblöcken der gleichen Ebene (108) aufweisen.
  21. Computerlesbares Medium gemäß einem der Ansprüche 17 bis 20, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Strukturbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente (404, 408, 410, 414, 418, 422, 426) zugeordnet sind.
  22. Computerlesbares Medium gemäß einem der Ansprüche 17 bis 20, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Funktionsbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  23. Computerlesbares Medium gemäß einem der Ansprüche 17 bis 20, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Entwurfsbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  24. Computerlesbares Medium gemäß einem der Ansprüche 17 bis 20, bei dem das probabilistische Aktivitätsprofil zumindest einen Aktivitätsfaktor aufweist, der auf Prozeßbeschränkungen basiert, die einer bestimmten Leistungsverbrauchskomponente zugeordnet sind.
  25. Verfahren zum Schätzen eines Leistungsverbrauchs zumindest eines Abschnitts einer integrierten Schaltung (IC) (102), mit folgenden Schritten: Segmentieren (300) der IC (102) in eine hierarchische Teilblockebenenstruktur (100), derart, daß innerhalb jedes Teilblocks (112, 114, 116, 118) und zwischen Teilblöcken der gleichen Ebene (108) Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) identifiziert werden; und Schätzen (308) der für jeden Teilblock (112, 114, 116, 118) verbrauchten Leistung basierend auf einer Anwendung probabilistischer Aktivitätsprofile, die den Leistungsverbrauchskomponenten (404, 408, 410, 414, 418, 422, 426) zugeordnet sind.
DE10355141A 2003-03-20 2003-11-26 System und Verfahren zum Schätzen eines Leistungsverbrauchs für zumindest einen Abschnitt einer integrierten Schaltung Withdrawn DE10355141A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US393192 2003-03-20
US10/393,192 US20040186703A1 (en) 2003-03-20 2003-03-20 System and method for estimating power consumption for at least a portion of an integrated circuit

Publications (1)

Publication Number Publication Date
DE10355141A1 true DE10355141A1 (de) 2004-10-21

Family

ID=32988084

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10355141A Withdrawn DE10355141A1 (de) 2003-03-20 2003-11-26 System und Verfahren zum Schätzen eines Leistungsverbrauchs für zumindest einen Abschnitt einer integrierten Schaltung

Country Status (2)

Country Link
US (1) US20040186703A1 (de)
DE (1) DE10355141A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050159907A1 (en) * 2004-01-16 2005-07-21 International Business Machines Corporation Method and apparatus for VLSI clock gated power estimation using LCB counts
US7260808B1 (en) * 2004-12-11 2007-08-21 National Semiconductor Corporation Method and metric for low power standard cell logic synthesis
US20070044046A1 (en) * 2005-08-22 2007-02-22 Faour Fouad A Method for providing a current sink model for an asic
JP2008299464A (ja) * 2007-05-30 2008-12-11 Nec Electronics Corp 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置
US20110264418A1 (en) * 2010-04-21 2011-10-27 Sentilla Corporation, Inc. Determining electrical consumption in a facility
CN102147822A (zh) * 2010-12-23 2011-08-10 上海高性能集成电路设计中心 一种基于功耗库的大规模数字集成电路功耗动态评估装置
US9443045B2 (en) * 2011-02-07 2016-09-13 Apple Inc. Power estimation in an integrated circuit design flow

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5682320A (en) * 1994-06-03 1997-10-28 Synopsys, Inc. Method for electronic memory management during estimation of average power consumption of an electronic circuit
US5838947A (en) * 1996-04-02 1998-11-17 Synopsys, Inc. Modeling, characterization and simulation of integrated circuit power behavior
US6151568A (en) * 1996-09-13 2000-11-21 Sente, Inc. Power estimation software system
US6212665B1 (en) * 1998-03-27 2001-04-03 Synopsys, Inc. Efficient power analysis method for logic cells with many output switchings
JP3171167B2 (ja) * 1998-05-29 2001-05-28 日本電気株式会社 消費電力計算装置及び方法
DE60036625D1 (de) * 2000-11-07 2007-11-15 St Microelectronics Srl Verfahren und System zur Schätzung des Leistungsverbrauchs von digitalen Schaltungen und zugehöriges Rechnerprogrammprodukt
US7134100B2 (en) * 2002-07-29 2006-11-07 Nec Usa, Inc. Method and apparatus for efficient register-transfer level (RTL) power estimation

Also Published As

Publication number Publication date
US20040186703A1 (en) 2004-09-23

Similar Documents

Publication Publication Date Title
DE60103608T2 (de) Verfahren und Vorrichtung zur Analyse der Wellenform eines Quellenstroms in einer integrierten Halbleiterschaltung
DE60128014T2 (de) Intelligenter Prüfadapter
DE69835106T2 (de) Eingebetteter logischer Analysator
DE10045568B4 (de) Ereignisgestütztes Halbleiterprüfsystem
EP0855662B1 (de) Elektrische Analyse integrierter Schaltungen
DE10392497T5 (de) Herstellungsverfahren und Herstellungsvorrichtung zum Vermeiden eines Prototypen-Aufschubs bei der ASIC/SOC-Herstellung
DE19937232B4 (de) Entwicklungs- und Bewertungssystem für integrierte Halbleiterschaltungen
DE10031536A1 (de) Ereignisgestütztes Halbleiterprüfsystem
US8266559B2 (en) Nonlinear driver model for multi-driver systems
DE19824796A1 (de) Verfahren und Vorrichtung zur Leistungsoptimierung der Registerübertragungsebene, insbesondere mit einer Störimpuls-Analyse und -Reduktion
DE112015002183T5 (de) Computerimplementiertes System und Verfahren zum Übersetzen von Verifizierungs-Befehlen eines elektronischen Designs
DE10296464T5 (de) Verfahren und Gerät zur Validierung des Entwurfes einer komplexen integrierten Schaltungen
DE10355141A1 (de) System und Verfahren zum Schätzen eines Leistungsverbrauchs für zumindest einen Abschnitt einer integrierten Schaltung
DE112019004358T5 (de) Verfahren zur takt-gate-analyse von entwürfen für elektronische systeme und zugehörige systeme, verfahren und vorrichtungen
DE102017117496A1 (de) Zell-Bewusste Fehlstellen-Charakterisierung und Wellenformanalyse mithilfe mehrerer Strobe-Punkte
DE60318795T2 (de) Prüfung von integrierten Schaltungen
DE10125331A1 (de) Vorrichtung und Verfahren zum Erzeugen eines Satzes von Testsequenzen unter Verwendung eines systematischen Füllens
DE102015102034A1 (de) Verfahren zum Analysieren von Ergebnissen in einem Entwurfsautomatisierungsablauf für elektronische Systeme, Computersystem und Computerprogrammprodukt
DE102016118749A1 (de) Signalwiederherstellung in Schaltwerk-Schaltung
DE60109944T2 (de) Automatische prüfung von zyklischen betriebsbedingungen für soi schaltungssimulation
EP1296152A1 (de) Elektronischer Baustein und Verfahren zu dessen Qualifizierungsmessung
DE112013005831T5 (de) Netzlistenabstraktion
Lin et al. A power modeling and characterization method for the CMOS standard cell library
DE60026178T2 (de) Modellierung und prüfung einer integrierten schaltung
DE10394299T5 (de) Design eines integrierten Schaltkreises zur Optimierung der Herstellbarkeit

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal