Standardzelle - Standard cell

Ein Rendering einer kleinen Standardzelle mit drei Metallschichten ( Dielektrikum wurde entfernt). Die sandfarbenen Strukturen sind Metallverbindungen, wobei die vertikalen Säulen Kontakte sind, typischerweise Wolframstopfen. Die rötlichen Strukturen sind Polysiliciumgatter, und der Feststoff am Boden ist die kristalline Siliziummasse.

Beim Halbleiterdesign ist die Standardzellenmethode eine Methode zum Entwerfen anwendungsspezifischer integrierter Schaltkreise (ASICs) mit hauptsächlich digitallogischen Merkmalen. Die Standardzellenmethodik ist ein Beispiel für eine Entwurfsabstraktion, bei der ein VLSI- Layout (Low-Level Very Large Scale Integration ) in eine abstrakte Logikdarstellung (z. B. ein NAND-Gatter ) eingekapselt wird . Die zellbasierte Methodik - die allgemeine Klasse, zu der Standardzellen gehören - ermöglicht es einem Designer, sich auf den übergeordneten Aspekt (logische Funktion) des digitalen Designs zu konzentrieren, während sich ein anderer Designer auf den Implementierungsaspekt (physisch) konzentriert. Zusammen mit den Fortschritten bei der Halbleiterherstellung hat die Standardzellenmethode den Entwicklern geholfen, ASICs von vergleichsweise einfachen Einzelfunktions-ICs (mit mehreren tausend Gates) bis hin zu komplexen SoC-Geräten ( Multi-Million Gate System-on-a-Chip ) zu skalieren.

Aufbau einer Standardzelle

Eine Standardzelle ist eine Gruppe von Transistor- und Verbindungsstrukturen, die eine boolesche Logikfunktion (z. B. AND , OR , XOR , XNOR , Inverter) oder eine Speicherfunktion (Flipflop oder Latch) bereitstellen. Die einfachsten Zellen sind direkte Darstellungen der elementaren Booleschen Funktion NAND, NOR und XOR, obwohl üblicherweise Zellen mit viel größerer Komplexität verwendet werden (z. B. ein 2-Bit -Volladdierer oder ein Muxed-D-Input-Flipflop). Die Boolesche Logik der Zelle Die Funktion wird als logische Ansicht bezeichnet : Das funktionale Verhalten wird in Form einer Wahrheitstabelle oder einer Booleschen Algebra- Gleichung (für kombinatorische Logik) oder einer Zustandsübergangstabelle (für sequentielle Logik ) erfasst .

Üblicherweise wird das anfängliche Design einer Standardzelle auf Transistorebene entwickelt, in der Form eines Transistors netlist oder schematischen Ansicht. Die Netzliste ist eine Knotenbeschreibung der Transistoren, ihrer Verbindungen untereinander und ihrer Anschlüsse (Ports) zur externen Umgebung. Eine schematische Ansicht kann mit einer Reihe verschiedener Programme für Computer Aided Design (CAD) oder Electronic Design Automation (EDA) erstellt werden, die eine grafische Benutzeroberfläche (GUI) für diesen Netzlistenerstellungsprozess bereitstellen . Entwickler verwenden zusätzliche CAD-Programme wie SPICE , um das elektronische Verhalten der Netzliste zu simulieren, indem sie den Eingangsreiz (Spannungs- oder Stromwellenformen) deklarieren und dann die Zeitbereichsantwort (analog) der Schaltung berechnen. Die Simulationen überprüfen, ob die Netzliste die gewünschte Funktion implementiert, und sagen andere relevante Parameter wie den Stromverbrauch oder die Signalausbreitungsverzögerung voraus.

Da die logischen und Netzlistenansichten nur für die abstrakte (algebraische) Simulation und nicht für die Geräteherstellung nützlich sind, muss auch die physikalische Darstellung der Standardzelle entworfen werden. Dies wird auch als Layoutansicht bezeichnet und ist die niedrigste Ebene der Entwurfsabstraktion in der gängigen Entwurfspraxis. Aus Sicht der Fertigung ist das VLSI-Layout der Standardzelle die wichtigste Ansicht, da es einem tatsächlichen "Fertigungsplan" der Standardzelle am nächsten kommt. Das Layout ist in Basisschichten organisiert , die den verschiedenen Strukturen der Transistorvorrichtungen entsprechen, und Verdrahtungsschichten und über Schichten miteinander verbunden , die die Anschlüsse der Transistorformationen miteinander verbinden. Die Verbindungsverdrahtungsschichten sind normalerweise numeriert und haben spezifische über Schichten repräsentieren spezifische Verbindungen zwischen jeder aufeinanderfolgenden Schicht. Nicht-Fertigungsschichten können auch in einem Layout für Zwecke der Entwurfsautomatisierung vorhanden sein , aber viele Schichten, die explizit für CADR-Programme ( Place and Route ) verwendet werden, sind häufig in einer separaten, aber ähnlichen abstrakten Ansicht enthalten. Die abstrakte Ansicht enthält häufig viel weniger Informationen als das Layout und ist möglicherweise als LEF-Datei ( Layout Extraction Format ) oder eine gleichwertige Datei erkennbar .

Nach dem Erstellen eines Layouts werden häufig zusätzliche CAD-Tools verwendet, um eine Reihe allgemeiner Validierungen durchzuführen. Eine Design Rule Check (DRC) wird durchgeführt, um zu überprüfen, ob das Design den Anforderungen der Gießerei und anderer Layouts entspricht. Eine parasitäre Extraktion (PEX) wird dann durchgeführt, um eine PEX-Netzliste mit parasitären Eigenschaften aus dem Layout zu erzeugen. Die Knotenverbindungen dieser Netzliste werden dann mit denen der schematischen Netzliste mit einem LVS-Verfahren ( Layout Vs Schematic ) verglichen, um zu überprüfen, ob die Konnektivitätsmodelle äquivalent sind.

Die PEX-Netzliste kann dann erneut simuliert werden (da sie parasitäre Eigenschaften enthält), um genauere Timing-, Leistungs- und Rauschmodelle zu erzielen. Diese Modelle werden häufig in einem Synopsys Liberty-Format charakterisiert (enthalten) , es können jedoch auch andere Verilog- Formate verwendet werden.

Schließlich können leistungsstarke Tools für Ort und Route (PNR) verwendet werden, um alles zusammenzuführen und VLSI-Layouts ( Very Large Scale Integration ) aus übergeordneten Entwurfsnetzlisten und Grundrissen automatisiert zu synthetisieren (zu generieren) .

Darüber hinaus können eine Reihe anderer CAD-Tools verwendet werden, um andere Aspekte der Zellenansichten und -modelle zu validieren. Andere Dateien können erstellt werden, um verschiedene Tools zu unterstützen, die die Standardzellen aus einer Vielzahl anderer Gründe verwenden. Alle diese Dateien, die erstellt wurden, um die Verwendung aller Standardzellenvarianten zu unterstützen, werden zusammen als Standardzellenbibliothek bezeichnet.

Für eine typische Boolesche Funktion gibt es viele verschiedene funktional äquivalente Transistornetzlisten. Ebenso gibt es für eine typische Netzliste viele verschiedene Layouts, die den Leistungsparametern der Netzliste entsprechen. Die Herausforderung des Konstrukteurs besteht darin, die Herstellungskosten für das Layout der Standardzelle zu minimieren (im Allgemeinen durch Minimierung der Chipfläche der Schaltung) und gleichzeitig die Geschwindigkeits- und Leistungsanforderungen der Zelle zu erfüllen. Folglich ist das Layout integrierter Schaltkreise trotz der vorhandenen Entwurfswerkzeuge, die diesen Prozess unterstützen, eine sehr arbeitsintensive Aufgabe.

Bibliothek

Eine Standardzellenbibliothek ist eine Sammlung von elektronischen Logikfunktionen auf niedriger Ebene wie AND, OR, INVERT, Flip-Flops, Latches und Puffer. Diese Zellen werden als vollständig benutzerdefinierte Zellen mit fester Höhe und variabler Breite realisiert. Der Hauptaspekt bei diesen Bibliotheken ist, dass sie eine feste Höhe haben, wodurch sie in Reihen angeordnet werden können, was den Prozess des automatisierten digitalen Layouts vereinfacht. Die Zellen sind in der Regel optimierte, vollständig benutzerdefinierte Layouts, die Verzögerungen und Flächen minimieren.

Eine typische Standardzellenbibliothek enthält zwei Hauptkomponenten:

  1. Bibliotheksdatenbank - Besteht aus einer Reihe von Ansichten, darunter häufig Layout-, Schaltplan-, Symbol-, abstrakte und andere logische oder Simulationsansichten. Daraus können verschiedene Informationen in einer Reihe von Formaten erfasst werden, einschließlich des Cadence LEF-Formats und des Synopsys Milkyway-Formats, die reduzierte Informationen über die Zellenlayouts enthalten, die für automatisierte "Place and Route" -Tools ausreichen.
  2. Timing Abstract - Im Allgemeinen im Liberty-Format , um funktionale Definitionen, Timing-, Leistungs- und Rauschinformationen für jede Zelle bereitzustellen.

Eine Standardzellenbibliothek kann auch die folgenden zusätzlichen Komponenten enthalten:

Ein Beispiel ist ein einfaches XOR- Logikgatter, das aus ODER-, INVERT- und UND-Gattern gebildet werden kann.

Anwendung der Standardzelle

Genau genommen reicht eine NAND- oder NOR-Funktion mit zwei Eingängen aus, um einen beliebigen Booleschen Funktionssatz zu bilden. Im modernen ASIC-Design wird die Standardzellenmethode jedoch mit einer beträchtlichen Bibliothek (oder Bibliotheken) von Zellen praktiziert. Die Bibliothek enthält normalerweise mehrere Implementierungen derselben Logikfunktion, die sich in Bereich und Geschwindigkeit unterscheiden. Diese Vielfalt erhöht die Effizienz von SPR-Werkzeugen (Automated Synthesis, Place and Route). Indirekt gibt es dem Designer auch mehr Freiheit, Kompromisse bei der Implementierung einzugehen (Fläche vs. Geschwindigkeit vs. Stromverbrauch). Eine vollständige Gruppe von Standardzellenbeschreibungen wird üblicherweise als Technologiebibliothek bezeichnet .

Im Handel erhältliche EDA-Tools ( Electronic Design Automation ) verwenden die Technologiebibliotheken, um die Synthese, Platzierung und Weiterleitung eines digitalen ASIC zu automatisieren. Die Technologiebibliothek wird vom Gießereibetreiber entwickelt und vertrieben . Die Bibliothek (zusammen mit einem Design-Netzlistenformat) ist die Grundlage für den Austausch von Designinformationen zwischen verschiedenen Phasen des SPR-Prozesses.

Synthese

Unter Verwendung der zelllogischen Ansicht der Technologiebibliothek führt das Logiksynthese- Tool den Prozess der mathematischen Umwandlung der RTL-Beschreibung ( Register-Transfer Level ) des ASIC in eine technologieabhängige Netzliste durch. Dieser Prozess ist analog zu einem Software-Compiler, der eine C-Programmliste auf hoher Ebene in eine prozessorabhängige Assembler-Liste konvertiert.

Die Netzliste ist die Standardzellendarstellung des ASIC-Entwurfs auf der Ebene der logischen Ansicht. Es besteht aus Instanzen der Standardzellenbibliotheks-Gates und der Port-Konnektivität zwischen Gates. Durch geeignete Synthesetechniken wird die mathematische Äquivalenz zwischen der synthetisierten Netzliste und der ursprünglichen RTL-Beschreibung sichergestellt. Die Netzliste enthält keine nicht zugeordneten RTL-Anweisungen und -Deklarationen.

Das High-Level-Synthesetool führt den Prozess der Umwandlung der Beschreibung der C-Level-Modelle (SystemC, ANSI C / C ++) in eine technologieabhängige Netzliste durch.

Platzierung

Das Platzierungstool startet die physische Implementierung des ASIC. Mit einem vom ASIC-Designer bereitgestellten 2D-Grundriss weist das Placer-Tool jedem Gate in der Netzliste Positionen zu. Die resultierende platzierte Gates- Netzliste enthält den physischen Standort jeder Standardzelle der Netzliste, enthält jedoch eine abstrakte Beschreibung, wie die Terminals der Gates miteinander verbunden sind.

Typischerweise haben die Standardzellen eine konstante Größe in mindestens einer Dimension, so dass sie in Reihen auf der integrierten Schaltung angeordnet werden können . Der Chip besteht aus einer großen Anzahl von Reihen (wobei Strom und Masse neben jeder Reihe verlaufen), wobei jede Reihe mit den verschiedenen Zellen gefüllt ist, aus denen das eigentliche Design besteht. Platzierer befolgen bestimmte Regeln: Jedem Tor wird ein eindeutiger (exklusiver) Ort auf der Würfelkarte zugewiesen. Ein bestimmtes Tor wird einmal platziert und darf die Position eines anderen Tors nicht einnehmen oder überlappen.

Routing

Unter Verwendung der Netzliste für platzierte Tore und der Layoutansicht der Bibliothek fügt der Router sowohl Signalverbindungsleitungen als auch Stromversorgungsleitungen hinzu. Die vollständig geroutete physische Netzliste enthält die Liste der Gates aus der Synthese, die Platzierung jedes Gates aus der Platzierung und die gezeichneten Verbindungen aus dem Routing.

DRC / LVS

Simulierte lithografische und andere Herstellungsfehler, die in einer kleinen Standardzelle sichtbar sind.

Design Rule Check (DRC) und Layout Versus Schematic (LVS) sind Überprüfungsprozesse. Die zuverlässige Herstellung von Bauelementen bei modernen Tiefen-Submikrometern ( 0,13 um und darunter) erfordert die strikte Einhaltung der Regeln für Transistorabstand, Metallschichtdicke und Leistungsdichte. DRC vergleicht die physische Netzliste ausführlich mit einer Reihe von "Gießerei-Entwurfsregeln" (vom Gießereibetreiber) und kennzeichnet dann alle beobachteten Verstöße.

Der LVS-Prozess bestätigt, dass das Layout dieselbe Struktur wie das zugehörige Schema hat. Dies ist normalerweise der letzte Schritt im Layoutprozess. Das LVS-Tool verwendet als Eingabe ein schematisches Diagramm und die extrahierte Ansicht aus einem Layout. Es generiert dann eine Netzliste aus jeder und vergleicht sie. Knoten, Ports und Gerätegrößen werden verglichen. Wenn sie identisch sind, wird LVS bestanden und der Designer kann fortfahren. LVS neigt dazu, Transistorfinger als die gleichen wie einen extra breiten Transistor zu betrachten. Somit werden 4 Transistoren (jeweils 1 & mgr; m breit) parallel, ein 4-Finger-1 & mgr; m-Transistor oder ein 4 & mgr; m-Transistor vom LVS-Werkzeug gleich angesehen. Die Funktionalität von .lib-Dateien wird SPICE-Modellen entnommen und als Attribut zur .lib-Datei hinzugefügt.

Andere zellbasierte Methoden

"Standardzelle" fällt in eine allgemeinere Klasse von Entwurfsautomatisierungsabläufen, die als zellbasiertes Design bezeichnet wird. Strukturierte ASICs , FPGAs und CPLDs sind Variationen des zellbasierten Designs. Vom Standpunkt des Designers aus haben alle dasselbe Eingabe-Frontend: eine RTL-Beschreibung des Designs. Die drei Techniken unterscheiden sich jedoch erheblich in den Details des SPR-Flusses (Synthese, Ort und Route) und der physischen Implementierung.

Komplexitätsmaß

Für digitale Standardzellendesigns, beispielsweise in CMOS , sind Gate-Äquivalente (GE) eine übliche technologieunabhängige Metrik für die Komplexitätsmessung .

Siehe auch

Verweise

Externe Links

  • VLSI-Technologie - Diese Website enthält Supportmaterial für ein Buch, das Graham Petley schreibt: Die Kunst des Standarddesigns von Zellbibliotheken
  • Oklahoma State University - Diese Website enthält Supportmaterial für eine vollständige System-on-Chip-Standardzellbibliothek, die gemeinfreie und Mentor Graphics / Synopsys / Cadence Design System-Tools verwendet

Die Standardzellenbereiche in einem CBIC bestehen aus Reihen von Standardzellen, wie eine Wand aus Ziegeln