DE102019116997B4 - Abgriffzellen, verfahren zu deren entwurf und schaltkreis-designsystem - Google Patents

Abgriffzellen, verfahren zu deren entwurf und schaltkreis-designsystem Download PDF

Info

Publication number
DE102019116997B4
DE102019116997B4 DE102019116997.6A DE102019116997A DE102019116997B4 DE 102019116997 B4 DE102019116997 B4 DE 102019116997B4 DE 102019116997 A DE102019116997 A DE 102019116997A DE 102019116997 B4 DE102019116997 B4 DE 102019116997B4
Authority
DE
Germany
Prior art keywords
cells
tap
functional
row
boundary
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.)
Active
Application number
DE102019116997.6A
Other languages
English (en)
Other versions
DE102019116997A1 (de
Inventor
Po-Chia Lai
Kuo-Ji Chen
Wen-Hao Chen
Wun-Jie Lin
Yu-Ti Su
Rabiul Islam
Shu-Yi YING
Stefan Rusu
Kuan-Te Li
David Scott
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.)
Taiwan Semiconductor Manufacturing Co TSMC Ltd
Original Assignee
Taiwan Semiconductor Manufacturing Co TSMC Ltd
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 Taiwan Semiconductor Manufacturing Co TSMC Ltd filed Critical Taiwan Semiconductor Manufacturing Co TSMC Ltd
Publication of DE102019116997A1 publication Critical patent/DE102019116997A1/de
Application granted granted Critical
Publication of DE102019116997B4 publication Critical patent/DE102019116997B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/50Testing of electric apparatus, lines, cables or components for short-circuits, continuity, leakage current or incorrect line connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • 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/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/02Fault tolerance, e.g. for transient fault suppression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Power Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Architecture (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

Integrierter Schaltkreis mit:einem Substrat (302), das einen Außenumfang mit einer ersten Grenze (402) und einer zweiten Grenze (404) gegenüber der ersten Grenze (402) definiert; undeiner Mehrzahl von Schaltkreiselementen, die in oder auf dem Substrat (302) in einer Mehrzahl von Zeilen (304a, 304b, 304c) angeordnet sind, wobei die Schaltkreiselemente von Standard-Layout-Zellen definiert werden, die aus einer Zellenbibliothek (232) ausgewählt werden, wobei die Standard-Layout-Zellen Abgriffzellen (312) umfassen,wobei die Mehrzahl von Zeilen (304a, 304b, 304c) eine erste Zeile (304a) umfasst, die nur Abgriffzellen (312) umfasst,wobei die Standard-Layout-Zellen funktionelle Zellen (310) umfassen, die so konfiguriert sind, dass sie eine festgelegte Funktion auf einer logischen Gate-Ebene erfüllen, wobei mehrere der Zeilen, die zwischen der ersten (304a) und einer zweiten Zeile (304b) angeordnet sind, mehrere der funktionellen Zellen (310) und mehrere der Abgriffzellen (312) umfassen.

Description

  • Hintergrund der Erfindung
  • Integrierte Schaltkreise weisen normalerweise Tausende von Komponenten auf, die komplizierte Wechselbeziehungen haben. Diese Schaltkreise werden im Allgemeinen mit hoch automatisierten Verfahren entworfen, die als elektronische Entwurfsautomatisierung (electronic design automation; EDA) bekannt sind. EDA beginnt mit einer Funktionsspezifikation, die in einer Hardwarebeschreibungssprache (hardware description language; HDL) bereitgestellt wird, und fährt mit der Spezifikation eines Schaltkreisdesigns fort, der die Spezifikation von elementaren Schaltkreiskomponenten, die als Zellen bezeichnet werden, die physische Anordnung der Zellen und die Verdrahtung umfasst, die die Zellen miteinander verbindet. Die Zellen implementieren logische oder andere elektronische Funktionen unter Verwendung einer speziellen Integrierter-Schaltkreis-Technologie.
  • EDA kann in eine Reihe von Phasen unterteilt werden, wie etwa Synthese, Platzierung, Trassierung (Routing) usw. Jeder dieser Schritte kann das Auswählen von Zellen aus einer Zellenbibliothek umfassen. Normalerweise kann eine sehr große Anzahl von unterschiedlichen Schaltkreisdesigns, die verschiedene Zellenkombinationen verwenden, eine Funktionsspezifikation für einen Schaltkreis erfüllen. Ein Latch-up ist eine Art von Kurzschluss, der gelegentlich in integrierten Schaltkreisen auf Grund von parasitären Bipolartransistoren auftritt, die durch benachbarte Verbindungsstellen in dem integrierten Schaltkreis entstehen. EDA-Tools können Abgriffzellen in integrierten Schaltkreisdesigns umfassen, die eine Body-Vorspannung von Transistoren zum Vermeiden des Latch-up bereitstellen können.
  • Abgriffzellen, Verfahren zu deren Entwurf und Schaltkreis-Designsysteme sind beispielsweise aus den Druckschriften US 2013 / 0 026 580 A1 , US 2002 / 0 105 049 A1 bzw. US 7 474 011 B2 bekannt. Die Druckschrift US 2015 / 0 227 669 A1 betrifft Schaltkreis-Designsysteme.
  • Kurze Beschreibung der Zeichnungen
  • Aspekte der vorliegenden Erfindung lassen sich am besten anhand der nachstehenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen verstehen. Es ist zu beachten, dass entsprechend der üblichen Praxis in der Branche verschiedene Elemente nicht maßstabsgetreu gezeichnet sind. Vielmehr können der Übersichtlichkeit der Erörterung halber die Abmessungen der verschiedenen Elemente beliebig vergrößert oder verkleinert sein.
    • 1 ist ein Blockdiagramm, das ein Beispiel für ein Verarbeitungssystem gemäß einigen Ausführungsformen zeigt.
    • 2 ist ein Prozessablaufdiagramm, das Aspekte eines Beispiels für ein Integrierter-Schaltkreis-Designverfahren gemäß einigen Ausführungsformen zeigt.
    • Die 3A, 3B und 3C zeigen Aspekte eines Beispiels für einen Integrierter-Schaltkreis-Lageplan gemäß einigen Ausführungsformen.
    • 4 zeigt Aspekte eines weiteren Beispiels für einen Integrierter-Schaltkreis-Lageplan gemäß einigen Ausführungsformen.
    • 5 ist ein Prozessablaufdiagramm, das Aspekte eines Beispiels für ein Integrierter-Schaltkreis-Designverfahren gemäß einigen Ausführungsformen zeigt.
    • 6 ist eine schematische Darstellung, die ein Beispiel für ein Standard-Layout-Zellenmodell gemäß einigen Ausführungsformen zeigt.
    • 7 ist eine schematische Darstellung, die ein weiteres Beispiel für ein Standard-Layout-Zellenmodell gemäß einigen Ausführungsformen zeigt.
    • 8 zeigt ein Beispiel für ein Zellenmodellierungsverfahren gemäß einigen Ausführungsformen.
    • 9 zeigt ein weiteres Beispiel für ein Zellenmodellierungsverfahren gemäß einigen Ausführungsformen.
    • 10 zeigt Aspekte eines weiteren Beispiels für ein Abgriffzellen-Modellierungsverfahren gemäß einigen Ausführungsformen.
    • Die 11 bis 14 zeigen verschiedene Beispiele für Abgriffzellen-Konfigurationen gemäß einigen Ausführungsformen.
    • 15 ist ein Prozessablaufdiagramm, das Aspekte eines Beispiels für ein Integrierter-Schaltkreis-Designverfahren gemäß einigen Ausführungsformen zeigt.
    • 16 ist ein Prozessablaufdiagramm, das Aspekte eines weiteren Beispiels für ein Integrierter-Schaltkreis-Designverfahren gemäß einigen Ausführungsformen zeigt.
    • 17 zeigt ein Beispiel für eine zweidimensionale Benutzerschnittstellen-Darstellung gemäß einigen Ausführungsformen.
    • 18 zeigt ein Beispiel für eine dreidimensionale Benutzerschnittstellen-Darstellung gemäß einigen Ausführungsformen.
  • Detaillierte Beschreibung
  • Die nachstehende Beschreibung liefert viele verschiedene Ausführungsformen oder Beispiele zum Implementieren verschiedener Merkmale des bereitgestellten Gegenstands. Nachstehend werden spezielle Beispiele für Komponenten und Anordnungen beschrieben, um die vorliegende Erfindung zu vereinfachen. Darüber hinaus können in der vorliegenden Erfindung Bezugszahlen und/oder -buchstaben in den verschiedenen Beispielen wiederholt werden. Diese Wiederholung dient der Einfachheit und Übersichtlichkeit und schreibt an sich keine Beziehung zwischen den verschiedenen erörterten Ausführungsformen und/oder Konfigurationen vor.
  • Darüber hinaus können hier räumlich relative Begriffe, wie etwa „darunter befindlich“, „unter“, „untere(r)“/„unteres“, „darüber befindlich“, „obere(r)“/„oberes“ und dergleichen, zur einfachen Beschreibung der Beziehung eines Elements oder einer Struktur zu einem oder mehreren anderen Elementen oder Strukturen verwendet werden, die in den Figuren dargestellt sind. Die räumlich relativen Begriffe sollen zusätzlich zu der in den Figuren dargestellten Orientierung andere Orientierungen der in Gebrauch oder in Betrieb befindlichen Vorrichtung umfassen. Die Vorrichtung kann anders ausgerichtet werden (um 90 Grad gedreht oder in einer anderen Orientierung), und die räumlich relativen Deskriptoren, die hier verwendet werden, können ebenso entsprechend interpretiert werden.
  • EDA-Tools und -Verfahren (EDA: elektronische Entwurfsautomatisierung - electronic design automation) erleichtern den Entwurf (oder das Design), die Aufteilung und die Platzierung von mikroelektronischen integrierten Schaltkreisen auf einem Halbleitersubstrat. Dieser Prozess umfasst normalerweise das Umwandeln einer Verhaltensbeschreibung des Schaltkreises in eine Funktionsbeschreibung, die dann in logische Funktionen untergliedert wird und unter Verwendung einer Standard-Layout-Zellenbibliothek in Zellen gemappt wird. Nach dem Mappen wird eine Synthese durchgeführt, um den Strukturentwurf in ein physisches Layout umzuwandeln, ein Taktbaum zum Synchronisieren der Strukturelemente wird erstellt, und der Entwurf wird nach dem Layout optimiert.
  • 1 ist ein Blockdiagramm, das ein Beispiel für ein Verarbeitungssystem 100 gemäß einigen Ausführungsformen zeigt, die hier offenbart sind. Das Verarbeitungssystem 100 kann zum Implementieren eines EDA-Systems bei verschiedenen Verfahren verwendet werden, die hier erörtert werden. Das Verarbeitungssystem 100 weist eine Verarbeitungseinheit 110 auf, wie etwa einen Desktop-Computer, eine Workstation, einen Laptop, eine dedizierte Einheit, die für eine bestimmte Anwendung angepasst ist, ein Smartphone, ein Tablet oder dergleichen. Das Verarbeitungssystem 100 kann mit einem Display 114 und einer oder mehreren Eingabe-/Ausgabe-Vorrichtungen 112, wie etwa einer Maus, einer Tastatur, einem Touchscreen, einem Drucker usw., ausgerüstet sein. Die Verarbeitungseinheit 110 kann außerdem einen Hauptprozessor (CPU) 120, einen Speicher 122, ein Massenspeichergerät 124, einen Video-Adapter 126 und eine E/A-Schnittstelle 128 aufweisen, die mit einem Bus 130 verbunden sind.
  • Der Bus 130 kann eine oder mehrere Arten von Bus-Architekturen umfassen, wie etwa einen Speicherbus oder einen Speicher-Controller, einen peripheren Bus oder einen Videobus. Der CPU 120 kann jede Art von elektronischen Datenprozessoren umfassen, und der Speicher 122 kann jede Art von Systemspeicher umfassen, wie etwa einen statischen Direktzugriffsspeicher (SRAM), dynamischen Direktzugriffsspeicher (DRAM) oder einen Festspeicher (ROM).
  • Das Massenspeichergerät 124 kann jede Art von Speichervorrichtung umfassen, die so konfiguriert ist, dass sie Daten, Programme und andere Informationen speichert und die Daten, Programme und anderen Informationen über den Bus 130 zugreifbar macht. Das Massenspeichergerät 124 kann zum Beispiel eine Festplatte, eine Magnetplatteneinheit, ein optisches Plattenlaufwerk, einen Flash-Speicher und/oder dergleichen umfassen.
  • Der Begriff „maschinenlesbares Medium“, der hier verwendet wird, kann Computerspeichermedien umfassen, wie etwa den Systemspeicher und die Speichervorrichtungen, die vorstehend genannt worden sind. Computerspeichermedien können flüchtige und nichtflüchtige, Wechsel- und Nicht-Wechsel-Medien umfassen, die in einem Verfahren oder einer Technologie zum Speichern von Informationen implementiert werden, wie etwa maschinenlesbare Befehle, Datenstrukturen oder Programmmodule. Der Speicher 122 und das Massenspeichergerät 124 sind Beispiele für Computerspeichermedien (z. B. Speicher). Das Massenspeichergerät 124 kann außerdem eine Bibliothek von Standard-Layout-Zellen speichern, wie später näher dargelegt wird.
  • Computerspeichermedien können einen RAM, einen ROM, einen elektrisch löschbaren programmierbaren Festwertspeicher (EEPROM), einen Flash-Speicher oder eine andere Speichertechnologie, eine CD-ROM, eine DVD oder einen anderen optischen Speicher, Magnetkassetten, ein Magnetband, einen Plattenspeicher oder andere magnetische Speichervorrichtungen oder einen anderen Herstellungsartikel umfassen, der zum Speichern von Informationen verwendet werden kann und für das Verarbeitungssystem 100 zugreifbar ist. Alle diese Computerspeichermedien können Teil des Verarbeitungssystems 100 sein. Computerspeichermedien verwenden keine Trägerwellen oder anderen verbreiteten oder modulierten Datensignale.
  • Kommunikationsmedien können von maschinenlesbaren Befehlen, Datenstrukturen, Programmmodulen oder anderen Daten in einem modulierten Datensignal, wie etwa einer Trägerwelle oder einem anderen Transportmechanismus, verkörpert werden und umfassen alle Datenübertragungsmedien. Der Begriff „moduliertes Datensignal“ kann zum Beschreiben eines Signals verwendet werden, das eine oder mehrere Eigenschaften hat, die so festgelegt oder geändert werden, dass Informationen in dem Signal codiert werden. Beispielhaft und nicht beschränkend können Kommunikationsmedien drahtgebundene Medien, wie etwa eine drahtgebundene Netzwerkverbindung oder eine direktverdrahtete Verbindung, und drahtlose Medien umfassen, wie etwa akustische, Hochfrequenz-, Infrarot- und andere drahtlose Medien.
  • Der Video-Adapter 126 und die E/A-Schnittstelle 128 stellen Schnittstellen zum Verbinden von externen Ein- und Ausgabevorrichtungen mit der Verarbeitungseinheit 110 bereit. Wie in 1 gezeigt ist, sind Beispiele für Ein- und Ausgabevorrichtungen das Display 114, das mit dem Video-Adapter 126 und der E/A-Vorrichtung 112 (wie etwa einer Maus, einer Tastatur, einem Drucker oder dergleichen) verbunden ist, die mit der E/A-Schnittstelle 128 verbunden sind. Es können auch andere Vorrichtungen mit der Verarbeitungseinheit 110 verbunden werden, und es können weitere oder weniger Schnittstellenkarten verwendet werden. Zum Beispiel kann eine serielle Schnittstellenkarte (nicht dargestellt) zum Bereitstellen einer seriellen Schnittstelle für einen Drucker verwendet werden. Die Verarbeitungseinheit 110 kann außerdem eine Netzwerk-Schnittstelle 140 aufweisen, die eine drahtgebundene Verbindung mit einem lokalen Netzwerk (LAN) oder einem Großraumnetzwerk (WAN) 116 und/oder eine drahtlose Verbindung sein kann.
  • Ausführungsformen des Verarbeitungssystems 100 können andere Komponenten aufweisen. Zum Beispiel kann das Verarbeitungssystem 100 Stromquellen, Kabel, ein Motherboard, Wechselspeichermedien und dergleichen aufweisen. Diese weiteren Komponenten, die nicht dargestellt sind, werden als Teil des Verarbeitungssystems 100 angesehen.
  • In einigen Beispielen wird ein Software-Code von dem CPU 120 abgearbeitet, um einen Nutzer-Entwurf zu analysieren, um ein physisches Layout eines integrierten Schaltkreises zu erzeugen. Der Software-Code ist für den CPU 120 über den Bus 130 von dem Speicher 122, dem Massenspeichergerät 124 oder dergleichen oder rechnerfern über die Netzwerk-Schnittstelle 140 zugreifbar. Außerdem wird in einigen Beispielen das physische Layout des integrierten Schaltkreises (IC) auf Grund eines funktionellen IC-Entwurfs erzeugt, der bei verschiedenen Verfahren und Prozessen, die von dem Software-Code implementiert werden, über die E/A-Schnittstelle 128 empfangen werden kann und/oder in dem Speicher 122 oder 124 gespeichert werden kann.
  • Eine Standardzelle kann ein gesamtes Bauelement, wie etwa einen Transistor, eine Diode, einen Kondensator, einen Widerstand oder einen Induktor, oder eine Gruppe von mehreren Bauelementen umfassen, die so eingerichtet sind, dass sie eine bestimmte Funktion erzielen, wie etwa die eines Inverters, eines Flipflops, einer Speicherzelle oder eines Verstärkers. Durch Verwenden von Standard-Layout-Zellen lässt sich ein funktioneller Entwurf nicht nur einfacher konzipieren, sondern auch die Verifikationszeit für die Entwurfsregelprüfung (DRC) der Layout-Elemente in dem IC kann verkürzt werden, da eine Standardzelle, die über das gesamte Layout hinweg wiederholt wird, bei der DRC nur einmal geprüft werden kann, statt jede Instanziierung einzeln zu prüfen. Das System 100 ist so konfiguriert, dass es auf Grund der erhaltenen IC-Funktionsbeschreibung Standard-Layout-Zellen aus der Zellenbibliothek auswählt.
  • 2 zeigt allgemein einen beispielhaften IC-Entwurf und ein Herstellungsverfahren 200, das von dem Verarbeitungssystem 100 zum Erzeugen eines physischen Layouts von einem Verhaltens- oder funktionellen Entwurf implementiert werden kann, der von einem Nutzer geliefert wird. Ein Nutzer-Entwurf 202 spezifiziert das gewünschte Verhalten oder die gewünschte Funktion des Schaltkreises auf Grund verschiedener Signale oder Impulse, die an die Eingänge des Gesamtentwurfs angelegt werden, und er kann in einer geeigneten Programmiersprache geschrieben werden. Der Entwurf 202 kann von einem Nutzer über die E/A-Schnittstelle 128 in die Verarbeitungseinheit 110 (siehe 1) hochgeladen werden. Alternativ kann der Entwurf 202 hochgeladen werden und/oder in dem Speicher 122 oder dem Massenspeichergerät 124 gespeichert werden, oder der Entwurf 202 kann von einem entfernten Nutzer über die Netzwerk-Schnittstelle 140 hochgeladen werden.
  • An dem Entwurf wird eine Synthese 204 durchgeführt, bei der das Verhalten und/oder die Funktionen, die von dem Entwurf 202 verlangt werden, in eine funktionell äquivalente logische Gate-Ebene-Schaltkreisbeschreibung umgewandelt werden, indem der Entwurf an Standard-Layout-Zellen, wie etwa aus einer oder mehreren Zellenbibliotheken 208, angepasst wird. Die Zellenbibliothek 208 enthält eine Liste von vorentworfenen Komponenten, oder funktionellen Zellen, die jeweils eine festgelegte Funktion erfüllen können. Die Zellen werden in der Zellenbibliothek 208 als Informationen gespeichert, die Folgendes umfassen: interne Schaltkreiselemente, die verschiedenen Verbindungen mit diesen Schaltkreiselementen und eine vorentworfene physische Layout-Struktur, die die Einheitshöhe jeder Zelle zusammen mit gewünschten Betriebsspannungsleitungen, Dotierungsstoffen, Wannen usw. der Zelle umfasst. Außerdem kann die gespeicherte Zelle auch eine Form der Zelle, Positionen für Außenanschlüsse, Verzögerungseigenschaften, Energieverbrauch usw. umfassen. Die Synthese 204 führt zu einer funktionell äquivalenten logischen Gate-Ebene-Schaltkreisbeschreibung, wie etwa einer Gate-Ebene-Netzliste 206. Die Zellenbibliothek 208 kann zum Beispiel in einer oder mehreren Datenbanken gespeichert werden, die in dem Massenspeichergerät 124 enthalten sind. Auf Grund der Gate-Ebene-Netzliste 206 kann eine fotolithografische Maske 210 erzeugt werden, die zum Herstellen eines integrierten Schaltkreis 212 verwendet wird.
  • Die Zellenbibliothek 208 kann außerdem Abgriffzellen umfassen. Abgriffzellen verhindern den unerwünschten Latch-up von integrierten Schaltkreisen, der auf parasitäre Bipolartransistoren zurückzuführen sein kann, die in integrierten Schaltkreisen hergestellt sind. Durch die Abgriffzellen werden n-Wannenbereiche mit VDD-Betriebsspannungsleitungen verbunden, und p-Wannenbereiche oder p-Substrate werden mit VSS-Betriebsspannungsleitungen (normalerweise elektrischer Erde) verbunden.
  • In einigen Beispielen wird ein Entwurfs-„Lageplan“ ermittelt, der eine Mehrzahl von Zeilen umfasst, in denen die Standard-Layout-Zellen angeordnet werden. Die 3A bis 3C zeigen verschiedene Iterationen eines beispielhaften Lageplans 300. Der Lageplan 300 stellt das Layout für einen integrierten Schaltkreis bereit, der nach dem in 2 gezeigten Verfahren hergestellt werden würde. Der Lageplan 300 zeigt somit die Anordnung von funktionellen Zellen 310 und Abgriffzellen 312 in Zeilen 304 auf einem Substrat 302.
  • Bei einigen Chipentwurfsverfahren kann ein festgelegter maximaler Abgriffabstand spezifiziert werden, und Abgriffzellen werden entsprechend in dem Lageplan verteilt. Dieser maximale Abgriffabstand kann zum Beispiel unter Verwendung von Testchips mit Matrizen von Invertern bestimmt werden, die einen Worst-Case-Latch-up-Zustand erzeugen, um Zellenplatzierungen so festzulegen, dass ein Latch-up vermieden wird. In Abhängigkeit von dem tatsächlichen Funktionsentwurf für das herzustellende IC-Bauelement bestimmen diese maximalen Abgriffabstände jedoch nicht die potentielle Latch-up-Anfälligkeit über reale Zellenverteilungen für einen bestimmten Entwurf hinweg. Das kann dazu führen, dass zu viele Abgriffzellen bereitgestellt werden, was eine Platzverschwendung dort verursacht, wo eine niedrigere Abgriffdichte ausreichen würde, und kann weiterhin zu einer zeitlichen Leistungsminderung, wie etwa bei Hochleistungsprodukten, führen. Bei diesen Hochleistungs-Entwürfen kann eine höhere Abgriffdichte in Konflikt mit der optimalen Zellenplatzierung geraten, sodass kritische Verdrahtungswege verlängert werden. Außerdem können einige Bereiche mit zu wenigen Abgriffzellen versehen werden, was zu einem Latch-up führt.
  • Gemäß einigen Aspekten der vorliegenden Erfindung wird die Latch-up-Anfälligkeit für normale Platzierungs- und Trassierungs-Blöcke (P&R-Blöcke) eines Lageplans bestimmt. Außerdem werden Lösungen für kritische Latch-up-Bereiche vorgeschlagen.
  • In 3A werden in einigen Beispielen die Abgriffzellen 312 zunächst an bestimmten Positionen in den Zeilen 304 angeordnet. In dem in 3A gezeigten Beispiel werden die Abgriffzellen 312 zunächst so positioniert, dass sie vertikal in Spalten auf beiden Seiten des Lageplans 300 sowie in einer vertikalen Spalte in dem mittleren Bereich des Lageplans 300 verlaufen. Es ist zu beachten, dass der Lageplan 300 außerdem Positionen 306 aufweist, an denen es keine funktionellen Zellen 310 oder Abgriffzellen 312 gibt, die zuerst platziert werden.
  • 4 zeigt einen weiteren Anfangs-Lageplan 400 vor der Platzierung der funktionellen Zellen 310. In dem Beispiel von 4 umfassen bestimmte Zeilen 304 des Lageplans 400 nur Abgriffzellen 312. Das Substrat 302 des in 4 gezeigten Lageplans 400 definiert einen Außenumfang mit einer ersten oder oberen Grenze 402 und einer zweiten oder unteren Grenze 404 gegenüber der ersten Grenze 402. In dem in 4 gezeigten Lageplan 400 umfassen eine erste Zeile 304a direkt benachbart zu der oberen Grenze 402 und eine zweite Zeile 304b direkt benachbart zu der unteren Grenze 404 nur Abgriffzellen 312. Außerdem umfasst eine weitere Zeile 304c, die horizontal durch die Mitte des Lageplans 400 verläuft, nur Abgriffzellen 312. Durch Hinzufügen solcher dedizierter Zeilen von Abgriffzellen wird die Gefahr eines Latch-up in IC-Bauelementen stark verringert, ohne dass eine erhebliche Fläche in dem Lageplan 400 verbraucht wird. Das dargestellte Beispiel zeigt drei horizontale Zeilen von Abgriffzellen, aber bei anderen Ausführungsformen können mehr oder weniger Zeilen von Abgriffzellen vorgesehen werden. Normalerweise werden Abgriffzellen in vertikalen Spalten in dem gesamten Lageplan bereitgestellt. Die Zeilen 304, die in dem Beispiel von 4 gezeigt sind, umfassen nur Abgriffzellen, sodass der Lageplan zusätzliche Abgriffzellen im Vergleich zu herkömmlichen Abgriffzellen-Implementierungen bereitstellt. Außerdem trägt gleichmäßiges Beabstanden der Abgriffzellen-Zeilen 304 von der oberen und der unteren Grenze 402 und 404 zum weiteren Verringern der Latch-up-Gefahr bei.
  • Kommen wir nun zu 5, in der weitere Aspekte eines beispielhaften Verfahrens 220 zum Entwerfen eines integrierten Schaltkreises erläutert werden. Verschiedene Schritte des Verfahrens 220 werden zum Beispiel von dem Prozessor 120 und dem System 100 ausgeführt, die in 1 gezeigt sind. In einem Schritt 222 werden Standard-Layout-Zellenmodelle für jede der in einer Zellenbibliothek 232 gespeicherten Standard-Layout-Zellen erzeugt. Die Zellenmodelle können ebenfalls in der Zellenbibliothek 232 gespeichert werden.
  • Die 6 und 7 stellen Aspekte des Zellenmodell-Erzeugungsprozesses für funktionelle Standard-Layout-Zellen 310 bzw. Abgriffzellen 312 konzeptionell dar, wie in dem Schritt 222 von 5 angegeben ist. Wie in 6 gezeigt ist, können p-Wannen 612 und n-Wannen 610 für die funktionellen Zellen 310 unter Verwendung von verteilten Widerständen 614 bzw. 616 modelliert werden. Um Gleich- und Wechselströme der Zellen 310 zu charakterisieren, sind Stromquellen 620 zum Injizieren von Strom in jede Wanne 610 und 612 vorgesehen. Bei einigen Implementierungen wird der Strom in der Mitte der Zelle 310 injiziert. 7 zeigt ein Modell für eine Abgriffzelle 312, bei dem die p-Wanne 612 und die n-Wanne 610, die zusammenhängend sind, durch die verteilten Widerstände 614 und 616 modelliert werden. Um den Aufnahmewiderstand zu modellieren, werden Widerstände 622 und 624 in der Mitte der Zellenwiderstände 614 und 616 zwischen jeweilige Spannungsquellen VDD und VSS geschaltet. Die Modelle, die in den 6 und 7 gezeigt sind, stellen einfache und elegante Modelle zum Charakterisieren von Gleich- und Wechselströmen der Zellen 310 und 312 dar. In anderen Beispielen können weitere Komponenten, wie etwa Kondensatoren und Induktoren, in die Modelle integriert werden, um gegebenenfalls weitere Aspekte der Zellen zu charakterisieren.
  • Die 8 und 9 zeigen weitere Aspekte des Zellenmodellierungsprozesses. Die 8 und 9 zeigen jeweils einen Teil eines Lageplans 300, der funktionelle Standard-Layout-Zellen 310 und Abgriffzellen 312 sowie VDD- und VSS-Spannungsquellen aufweist. Die Standard-Layout-Zellen 310 und die Abgriffzellen 312 werden jeweils so modelliert, wie es in Verbindung mit den 6 und 7 dargelegt worden ist. In den 8 und 9 sind Modelldarstellungen 340 bzw. 341 der dargestellten Zellen unter dem Lageplan 300 gezeigt, wobei die Widerstände 616 die p-Wanne simulieren. Die Modelle der funktionellen Zellen 310 weisen die Stromquellen 620 auf, die Strom von der Mitte der Zellen 310 in die Widerstände 616 injizieren, die die p-Wanne 612 darstellen, um das Verhalten der entsprechenden funktionellen Zellen 310 zu simulieren. Die Modelle weisen weiterhin Füllzellen 311 auf, die einfach eine Freifläche in dem Lageplan ausfüllen und keinen Strom in die Wanne injizieren. Anhand der modellierten Aspekte der Standard-Layout-Zellen und anderer Faktoren, wie etwa Leckverlust und Widerstand (Abstand zwischen Abgriffzellen 312 und funktionellen Zellen 310), kann ein Spannungsabfall an den verschiedenen p-Wannen und n-Wannen des Lageplans ermittelt werden. Der Einfachheit halber sind nur p-Wannen in den Modellen dargestellt, die in den 8 und 9 gezeigt sind. In anderen Beispielen können die Modelle auch n-Wannen aufweisen.
  • 10 zeigt ein weiteres Modellierungsbeispiel, in dem Zellen mit mehreren Höhen modelliert werden. Höhere Zellen injizieren Strom in mehrere p-Wannen- und n-Wannen-Segmente. Somit injiziert eine Ein-Höhen-Zelle 310a Strom nur in eine einzige Wanne. Eine Doppel-Höhen-Zelle 310b ist symmetrisch. Zur Modellierung wird unterstellt, dass der Strom gleichmäßig in die mehreren Wannensegmente verteilt wird. Eine Drei-Höhen-Zelle 310c ist nicht symmetrisch. Somit wird jedes Wannensegment einzeln charakterisiert, wenn Zellenmodelle erzeugt werden.
  • Wenn ein Spannungsabfall an einer p-Wanne oder einer n-Wanne einen festgelegten Wert an einer gegebenen Position überschreitet, steigt die Latch-up-Gefahr an dieser Position. In einigen Beispielen ist es wahrscheinlich, dass eine lokale Wannenspannung, die größer als 0,5 V ist, einen Latch-up verursacht.
  • Kommen wir wieder zu 5 zurück, in der in einem Schritt 224 das funktionelle Schaltkreisdesign durch das System 100 empfangen wird. Anhand des Funktionsentwurfs wird in einem Schritt 226 ein erster Lageplan, wie etwa der in 3A gezeigte Lageplan 300, erzeugt. Unter Verwendung der Modelle für die funktionellen Zellen 310 und die Abgriffzellen 312 werden mögliche Latch-up-Positionen identifiziert, wie in einem Schritt 228 angegeben wird. Latch-up-Positionen können zum Beispiel auf Grund des ermittelten Spannungsabfalls identifiziert werden. In einem Schritt 230 wird auf Grund der ermittelten Latch-up-Positionen der Lageplan 300 modifiziert. Das Modifizieren des Lageplans kann zum Beispiel das Verschieben von funktionellen Zellen 310 und/oder Abgriffzellen 312, das Hinzufügen weiterer Abgriffzellen 312, das Verwenden anderer Arten von Abgriffzellen 312 usw. umfassen, um die identifizierten Latch-up-Probleme anzugehen.
  • 3B zeigt ein Beispiel, in dem der Lageplan 300 durch Hinzufügen weiterer Abgriffzellen 310a zu einigen der Freiflächen 306 modifiziert worden ist, um die ermittelten potentiellen Latch-up-Bereiche anzugehen. In 3C sind weitere kleinere Abgriffzellen 310b zu kleineren Freiflächen 306 hinzugefügt worden. Das Bestimmen der Positionen und Größen für die hinzugefügten Abgriffzellen wird später näher erörtert.
  • Die 11 bis 14 zeigen Beispiele für verschiedene Abgriffzellen 310, die bei verschiedenen Ausführungsformen verwendet werden. Bei bestimmten Ausführungsformen weist eine Standard-Abgriffzelle 310 zwei p-Wannen-Kontakte 802 und zwei n-Wannen-Kontakte 800 auf, wie in 11 gezeigt ist. Wie vorstehend dargelegt worden ist, werden die Abgriffzellen 310 zum Vermeiden eines unerwünschten Latch-up von integrierten Schaltkreisen verwendet, der auf parasitäre Bipolartransistoren zurückzuführen sein kann, die in den integrierten Schaltkreisen hergestellt sind. Die Abgriffzellen 310 stellen somit p-Wannen-Kontakte 802 zum Verbinden der p-Wanne oder des p-Substrats mit den VSS-Betriebsspannungsleitungen dar. Die n-Wannen-Kontakte 800 werden zum Verbinden der n-Wannenbereiche oder n-Substrate mit den VDD-Betriebsspannungsleitungen verwendet. Durch Bereitstellen weiterer p-Wannen- und/oder n-Wannen-Kontakte kann zwar die Größe der Zelle vergrößert werden, aber die zusätzlichen Kontakte verringern den Widerstand, sodass zusätzliche Strompfade zum Reduzieren des Latch-up ermöglicht werden.
  • Um den Kontaktwiderstand an den Lageplan-Positionen, die kritisch für einen Latch-up sind, zu verringern, können größere Abgriffzellen mit zusätzlichen Kontakten verwendet werden, wie etwa die in 12 gezeigte Abgriffzelle 310, die vier p-Wannen-Kontakte 802 und vier n-Wannen-Kontakte 800 hat. Die größere Abgriffzelle 310, die in 12 gezeigt ist, kann zum Beispiel auch in einer (2+6)-Konfiguration (zwei n-Wannen- / sechs p-Wannen-Kontakte), wie in 13 gezeigt ist, oder in einer (6+2)-Konfiguration konfiguriert werden, wie in 14 gezeigt ist, und zwar mit der gleichen Zellen-Grundfläche wie bei der in 11 gezeigten Variante. Dies ermöglicht einen niedrigeren Kontaktwiderstand mit p-Wannen- oder n-Wannen-Kontakten, wie es zum Reduzieren des Latch-up gewünscht wird. Daher könnte die (2+2)-Abgriffzelle 310 von 11 für nichtkritische Latch-up-Bereiche der Grundfläche verwendet werden, während die größeren Abgriffzellen-Anordnungen, wie etwa 4+4, 2+6, 6+2 usw., für kritische Latch-up-Bereiche verwendet werden könnten.
  • 15 zeigt weitere Aspekte eines beispielhaften IC-Entwurfsverfahrens 240. Wie in den 2 und 5 gezeigt ist, wird ein Funktionsentwurf erhalten. In einem Schritt 242 wird anhand des erhaltenen Entwurfs eine Blockplatzierungsdatei gelesen, in einem Schritt 244 werden Zellendaten für die entsprechenden funktionellen Zellen 310 aus der Zellenbibliothek abgerufen, und in einem Schritt 246 wird eine Technologiedatei gelesen. Aspekte der funktionellen Zellen 310 und der Abgriffzellen 312 werden unter Verwendung der in den 6 bis 9 gezeigten Modelle modelliert, wie etwa das Erzeugen eines Netzwerks von Stromquellen und Widerständen für die Zellen, die die verschiedenen Wannen und Abgriffkontakte modellieren, wie in einem Schritt 248 angegeben ist.
  • Dann wird der Lageplan geprüft, und in einem Schritt 250 wird auf Grund der im Schritt 248 gewonnenen Modell-Informationen der Spannungsabfall an den Wannenpositionen auf Grund der Modelle und anderer Faktoren ermittelt, wie vorstehend in Verbindung mit den 6 bis 9 dargelegt worden ist. Wenn der Spannungsabfall an einer Wannenposition einen festgelegten Wert überschreitet, z. B. 0,5 V in einigen Beispielen, wird eine potentielle Latch-up-Position identifiziert. Auf diese Weise können potentielle Latch-up-Positionen in einem Lageplan ermittelt werden. In einem Schritt 252 werden auf Grund der ermittelten Latch-up-Positionen verfügbare Positionen zum Einfügen von zusätzlichen Abgriffzellen identifiziert. Wie in den 3A bis 3C gezeigt ist, können verfügbare Positionen zum Platzieren von zusätzlichen Abgriffzellen 312 die Freiflächen 306 in dem Lageplan 300 umfassen, in denen bisher keine funktionellen Zellen 310 und Abgriffzellen 312 angeordnet gewesen sind. In einigen Beispielen werden dann die Spannungsabfall-Berechnungen des Schritts 250 wiederholt, um die Identifizierung und Reduzierung der Latch-up-Positionen fortzusetzen.
  • In einigen Beispielen können die funktionellen Zellen 310 in Reaktion auf die Ermittlung der Latch-up-Position verschoben werden, um zusätzlichen Platz zum Einfügen weiterer Abgriffzellen zu schaffen, wie in einem Schritt 254 angegeben ist. Der Latch-up-Positions-Identifikationsprozess 250 kann nach dem Schritt 254 wiederholt werden, um Latch-up-Hotspots weiter zu reduzieren. Somit stellt der in 15 gezeigte Prozess einen iterativen Prozess zum Angehen und Beseitigen von potentiellen Latch-up-Hotspots dar.
  • 16 ist ein Ablaufdiagramm, das noch weitere Aspekte des offenbarten Entwurfsverfahrens zeigt, und zwar einen Abgriffzellen-Einfügungsprozess 260. Der Prozess 260 beginnt mit einem Block 262, in dem der bestehende Lageplan zum Beispiel entsprechend dem in 15 gezeigten Prozess bewertet wird. Wenn keine Latch-up-Positionen identifiziert werden, sind keine Änderungen an dem Lageplan erforderlich, und der bestehende Lageplan wird verwendet, wie in einem Schritt 264 angegeben ist.
  • Wenn Latch-up-Positionen identifiziert werden, wird der Lageplan 300 modifiziert. In einem Schritt 266 werden eine oder mehrere Abgriffzellen 312 des bestehenden Lageplans 300 mit anderen Abgriffzellen-Konfigurationen getauscht. Zum Beispiel kann eine normale (2+2)-Abgriffzelle, wie etwa die in 11 gezeigte, durch eine größere Abgriffzelle, wie etwa die in den 12 bis 14 gezeigten Abgriffzellen, ersetzt werden. Bei einigen Implementierungen ist das dargestellte Verfahren ein iterativer Prozess zum Finden eines optimalen Gleichgewichts zwischen mehreren Faktoren, wie etwa der Latch-up-Gefahr, dem Leckverlust, der Lageplangröße usw. Zum Beispiel können zahlreiche weitere Abgriffzellen und/oder größere Abgriffzellen in dem vorstehend beschriebenen Schritt 266 hinzugefügt werden. Zwar kann dadurch die Latch-up-Gefahr erheblich verringert werden, aber die zusätzlichen und/oder größeren Abgriffzellen können zu anderen Problemen führen, wie etwa Leckverlust oder inakzeptables Vergrößern der Lageplangröße. Daher wird, wenn keine Latch-up-Bereiche identifiziert werden, nach dem Schritt 266 in einem Schritt 268 der Gesamtleckstrom für den Lageplan 300 auf Grund der Informationen zu den funktionellen Zellen 310 ermittelt, die während des Modellierungsprozesses 248 von 15 gewonnen worden sind. In einigen Beispielen werden weitere Berechnungen durchgeführt, wie etwa das Ermitteln der Layout-Gesamtgröße des Lageplans.
  • Auf Grund des Leckstroms und der Layout-Größe, die in dem Schritt 268 ermittelt worden sind, können in einem Schritt 270 Abgriffabstände so eingestellt werden, dass die Lageplanfläche besser genutzt werden kann, wie etwa durch Reduzieren des Leckstroms und der Layout-Größe. Wenn in dem Schritt 266 Latch-up-Positionen identifiziert werden, kann der Schritt 270 so ausgeführt werden, dass Abgriffabstände geändert werden, um identifizierte Latch-up-Hotspots anzugehen.
  • Wenn nach dem Schritt 270 keine Latch-up-Bereiche identifiziert werden, werden in einem Schritt 272 der Gesamtleckstrom für den Lageplan 300 und die Layout-Gesamtgröße des Lageplans erneut berechnet, um das Lageplan-Layout zu optimieren, wie vorstehend dargelegt worden ist. Wenn nach dem Schritt 270 Latch-up-Bereiche oder - Hotspots identifiziert werden, werden in einem Schritt 274 Bereiche in der Nähe der identifizierten Latch-up-Positionen analysiert, um Freiflächen 306 in der Nähe der Latch-up-Bereiche zu identifizieren. Dann können Abgriffzellen 312 in diesen Bereichen eingefügt werden, um die Latch-up-Positionen anzugehen.
  • Wenn nach dem Schritt 274 keine Latch-up-Bereiche identifiziert werden, werden in einem Schritt 276 der Gesamtleckstrom für den Lageplan 300 und die Layout-Gesamtgröße des Lageplans erneut berechnet, um das Bauelement-Layout zu optimieren. Weiterhin werden der Gesamtleckstrom und die Layout-Größe, die in den Schritten 268, 272 und 276 berechnet worden sind, miteinander verglichen, um die Lageplan-Anordnung mit der kleinsten Layout-Fläche und dem niedrigsten Leckstrom bei entsprechender Verringerung der Latch-up-Gefahr auszuwählen.
  • Wenn nach dem Schritt 274 Latch-up-Hotspots identifiziert werden, können in einem Schritt 278 funktionelle Zellen in dem Latch-up-Bereich umgeordnet werden, um Platz zum Einfügen weiterer Abgriffzellen zu schaffen. Nach dem Schritt 278 kann der Prozess 260 wiederholt werden, um das beste Lageplan-Layout zu identifizieren, das Latch-up-Probleme vermeidet.
  • Gemäß noch weiteren Aspekten der Erfindung werden Latch-up-Positionen an einer Benutzerschnittstelle angezeigt, um das Lösen von Latch-up-Problemen zu unterstützen. Die Benutzerschnittstelle kann über das Display 114 des in 1 gezeigten Systems 100 angezeigt werden. Die 17 und 18 zeigen beispielhafte Benutzerschnittstellen 820 und 821, an denen Wannenspannungen 822 für Teile der Zeilen 304 des Lageplans 300 angezeigt werden. Die Benutzerschnittstelle 820 von 17 zeigt eine zweidimensionale Darstellung, während die Benutzerschnittstelle 821 von 18 eine dreidimensionale Darstellung ermöglicht. In einem Bereich 824 übersteigt die Wannenspannung 0,5 V, was einen kritischen Latch-up-Bereich kennzeichnet. Dieser Bereich 824 kann somit mit verschiedenen beispielhaften Verfahren in Angriff genommen werden, die hier zum Eliminieren von kritischen Latch-up-Bereichen offenbart werden.
  • Verschiedene beispielhafte Ausführungsformen stellen somit Verfahren zum Ermitteln der Latch-up-Gefahr für Platzierungs- und Trassierungsblöcke bereit und bieten dem Schaltkreis-Designer eine grafische Darstellung der Latch-up-Anfälligkeit über den Entwurf hinweg an. Außerdem werden Verfahren zum Verringern der Latch-up-Gefahr in kritischen Bereichen eines Entwurfs sowie Optionen zum Minimieren des zusätzlichen Platzbedarfs für Abgriffzellen in nicht-kritischen Bereichen des Entwurfs bereitgestellt. Offenbarte Beispiele zeigen außerdem anpassungsfähige Lösungen auf, die so maßgeschneidert werden, dass sie zu der Größe der Latch-up-Gefahr passen und den zusätzlichen Platzbedarf für Abgriffzellen minimieren.
  • Offenbarte Ausführungsformen umfassen einen integrierten Schaltkreis, der ein Substrat aufweist, das ein Außenumfang mit einer ersten Grenze und einer zweiten Grenze gegenüber der ersten Grenze definiert. Mehrere Schaltkreiselemente sind in oder auf dem Substrat in einer Mehrzahl von Zeilen angeordnet. Die Schaltkreiselemente werden von Standard-Layout-Zellen definiert, die aus einer Zellenbibliothek ausgewählt werden. Die Standard-Layout-Zellen umfassen Abgriffzellen, und die Mehrzahl von Zeilen umfasst eine erste Zeile, die nur Abgriffzellen umfasst.
  • Gemäß weiteren offenbarten Ausführungsformen umfasst ein Verfahren zum Entwerfen eines integrierten Schaltkreises das Empfangen eines Integrierten-Schaltkreis-Designs. Ein Lageplan für das Integrierte-Schaltkreis-Design wird festgelegt. Der Lageplan umfasst eine Anordnung einer Mehrzahl von funktionellen Zellen, wobei jede der funktionellen Zellen so konfiguriert ist, dass sie eine vorgegebene Funktion erfüllt. Der Lageplan umfasst außerdem eine Mehrzahl von Abgriffzellen. In dem Lageplan werden potentielle Latch-up-Positionen ermittelt, und die Anordnung der funktionellen Zellen und/oder der Abgriffzellen wird auf Grund der ermittelten potentiellen Latch-up-Positionen modifiziert.
  • Gemäß noch weiteren offenbarten Ausführungsformen weist ein Integriertes-Schaltkreis-Designsystem einen Prozessor und ein maschinenlesbares Medium auf, auf die der Prozessor zugreifen kann. Das maschinenlesbare Medium speichern eine Zellenbibliothek, die eine Mehrzahl von funktionellen Zellen, die so konfiguriert sind, dass sie eine vorgegebene Funktion erfüllen, und eine Mehrzahl von Abgriffzellen definiert, sowie Befehle, die beim Abarbeiten mit dem Prozessor ein Verfahren zum Entwerfen eines integrierten Schaltkreises implementieren. Das Verfahren umfasst das Empfangen eines Integrierten-Schaltkreis-Designs und das Auswählen mehrerer der funktionellen Zellen aus der Zellenbibliothek auf Grund des funktionellen Integrierten-Schaltkreis-Designs. Die Mehrzahl von funktionellen Zellen wird in einem Lageplan angeordnet, und eine Mehrzahl von Abgriffzellen wird an festgelegten Positionen des Lageplans angeordnet. Es werden potentielle Latch-up-Positionen in dem Lageplan ermittelt.

Claims (19)

  1. Integrierter Schaltkreis mit: einem Substrat (302), das einen Außenumfang mit einer ersten Grenze (402) und einer zweiten Grenze (404) gegenüber der ersten Grenze (402) definiert; und einer Mehrzahl von Schaltkreiselementen, die in oder auf dem Substrat (302) in einer Mehrzahl von Zeilen (304a, 304b, 304c) angeordnet sind, wobei die Schaltkreiselemente von Standard-Layout-Zellen definiert werden, die aus einer Zellenbibliothek (232) ausgewählt werden, wobei die Standard-Layout-Zellen Abgriffzellen (312) umfassen, wobei die Mehrzahl von Zeilen (304a, 304b, 304c) eine erste Zeile (304a) umfasst, die nur Abgriffzellen (312) umfasst, wobei die Standard-Layout-Zellen funktionelle Zellen (310) umfassen, die so konfiguriert sind, dass sie eine festgelegte Funktion auf einer logischen Gate-Ebene erfüllen, wobei mehrere der Zeilen, die zwischen der ersten (304a) und einer zweiten Zeile (304b) angeordnet sind, mehrere der funktionellen Zellen (310) und mehrere der Abgriffzellen (312) umfassen.
  2. Integrierter Schaltkreis nach Anspruch 1, wobei die Mehrzahl von Zeilen (304a, 304b, 304c) weiterhin die zweite Zeile (304b) umfasst, wobei die erste Zeile (304a) direkt zu der ersten Grenze (402) benachbart ist und die zweite Zeile (304b) direkt zu der zweiten Grenze (404) benachbart ist, wobei die erste Zeile (304a) und die zweite Zeile (304b) nur Abgriffzellen (312) umfassen.
  3. Integrierter Schaltkreis nach Anspruch 1 oder 2, wobei das Substrat (302) rechteckig ist und weiterhin eine dritte Grenze und eine vierte Grenze aufweist, wobei die dritte und die vierte Grenze senkrecht zu der ersten (402) und der zweiten Grenze (404) und zwischen der ersten (402) und der zweiten Grenze (404) verlaufen, wobei die Standard-Layout-Zellen eine dritte Mehrzahl von Abgriffzellen (312) umfassen, die in einer Spalte angeordnet sind, die parallel zu der dritten und der vierten Grenze verläuft.
  4. Integrierter Schaltkreis nach einem der vorhergehenden Ansprüche, wobei die mehreren Abgriffzellen (312) so konfiguriert sind, dass sie einen n-Wannenbereich (610) mit einer VDD-Betriebsspannungsleitung verbinden und einen p-Wannenbereich (612) mit einer VSS-Betriebsspannungsleitung verbinden, wobei die mehreren Abgriffzellen (312) jeweils eine Mehrzahl von n-Wannen-Kontakten (800) und eine Mehrzahl von p-Wannen-Kontakten (802) aufweisen.
  5. Integrierter Schaltkreis nach Anspruch 4, wobei die mehreren Abgriffzellen (312) jeweils eine ungleiche Anzahl der n-Wannen-Kontakte (800) und der p-Wannen-Kontakte (802) aufweisen.
  6. Verfahren zum Entwerfen eines integrierten Schaltkreises mit den folgenden Schritten: Empfangen eines Integrierten-Schaltkreis-Designs; Bestimmen eines Lageplans (300) für das Integrierte-Schaltkreis-Design, wobei der Lageplan (300) eine Anordnung einer Mehrzahl von Zeilen (304a, 304b, 304c) umfasst, in denen eine Mehrzahl von funktionellen Zellen (310), die so konfiguriert sind, dass sie eine vorgegebene Funktion auf einer logischen Gate-Ebene erfüllen, und eine Mehrzahl von Abgriffzellen (312) umfasst, wobei die Mehrzahl von Zeilen (304a, 304b, 304c) eine erste Zeile (304a) umfasst, die nur Abgriffzellen (312) umfasst, wobei mehrere der Zeilen, die zwischen einer ersten (304a) und einer zweiten Zeile (304b) angeordnet sind, mehrere der funktionellen Zellen (310) und mehrere der Abgriffzellen (312) umfassen; Ermitteln von potentiellen Latch-up-Positionen in dem Lageplan (300); Modifizieren der Anordnung der funktionellen Zellen (310) und/oder der Abgriffzellen (312) auf Grund der ermittelten potentiellen Latch-up-Positionen, wobei mindestens ein Schritt des Verfahrens von einem Prozessor (120) ausgeführt wird.
  7. Verfahren nach Anspruch 6, wobei das Modifizieren der Anordnung das Verschieben von ausgewählten der Abgriffzellen (312) zu anderen Positionen in dem Lageplan (300) umfasst.
  8. Verfahren nach Anspruch 6 oder 7, wobei das Modifizieren der Anordnung das Hinzufügen von weiteren Abgriffzellen (312) zu dem Lageplan (300) umfasst.
  9. Verfahren nach einem der Ansprüche 6 bis 8, wobei das Modifizieren der Anordnung das Verschieben von ausgewählten der funktionellen Zellen (310) zu anderen Positionen in dem Lageplan (300) umfasst.
  10. Verfahren nach einem der Ansprüche 6 bis 9, das weiterhin Folgendes umfasst: Platzieren mehrerer Abgriffzellen (312) an festgelegten Positionen des Lageplans (300); und Umordnen der an den festgelegten Positionen platzierten Abgriffzellen (312) auf Grund der ermittelten potentiellen Latch-up-Positionen.
  11. Verfahren nach Anspruch 10, wobei der Lageplan (300) einen Außenumfang mit einer ersten Grenze (402) und einer zweiten Grenze (404) gegenüber der ersten Grenze (402) aufweist, der Lageplan eine Mehrzahl von Zeilen (304a, 304b, 304c) umfasst, in denen die Mehrzahl von funktionellen Zellen (310) und die Mehrzahl von Abgriffzellen (312) angeordnet sind, wobei die Mehrzahl von Zeilen (304a, 304b, 304c) eine erste Zeile (304a) direkt benachbart zu der ersten Grenze (402) und eine zweite Zeile (304b) direkt benachbart zu der zweiten Grenze (404) umfasst, und das Platzieren der Mehrzahl von Abgriffzellen (312) an den festgelegten Positionen des Lageplans (300) das Platzieren von Abgriffzellen (312) nur in der ersten Zeile (304a) und der zweiten Zeile (304b) umfasst.
  12. Verfahren nach einem der Ansprüche 7 bis 11, das weiterhin das Modellieren von Wechsel- und Gleichströmen der funktionellen Zellen umfasst.
  13. Verfahren nach Anspruch 12, wobei das Modellieren der Wechsel- und Gleichströme der funktionellen Zellen (310) das Berechnen eines Leckstroms für die funktionellen Zellen (310) umfasst.
  14. Verfahren nach einem der Ansprüche 6 bis 13, das weiterhin Folgendes umfasst: Ermitteln einer Layout-Größe des Lageplans (300); und Modifizieren der Anordnung der funktionellen Zellen (310) und/oder der Abgriffzellen (312) auf Grund der ermittelten Layout-Größe.
  15. Integriertes-Schaltkreis-Designsystem mit: einem Prozessor (120); und einem maschinenlesbaren Medium (122), auf das der Prozessor (120) zugreifen kann, wobei das maschinenlesbare Medium eine Zellenbibliothek (232) speichert, die eine Mehrzahl von funktionellen Zellen (310) definiert, die so konfiguriert sind, dass sie eine vorgegebene Funktion auf einer logischen Gate-Ebene erfüllen, und eine Mehrzahl von Abgriffzellen (312) definiert, wobei das maschinenlesbare Medium außerdem Befehle speichert, die beim Abarbeiten mit dem Prozessor ein Verfahren mit den folgenden Schritten implementieren: Empfangen eines Integrierten-Schaltkreis-Designs, Auswählen mehrerer der funktionellen Zellen (310) aus der Zellenbibliothek (232) auf Grund des funktionellen Integrierten-Schaltkreis-Designs, Anordnen einer Mehrzahl von Zeilen (304a, 304b, 304c) in einem Lageplan (300), in denen mehrere der funktionellen Zellen und mehrere der Abgriffzellen an festgelegten Positionen des Lageplans angeordnet sind, wobei die Mehrzahl von Zeilen (304a, 304b, 304c) eine erste Zeile (304a) umfasst, die nur Abgriffzellen (312) umfasst, wobei mehrere der Zeilen, die zwischen der ersten (304a) und der zweiten Zeile (304b) angeordnet sind, mehrere der funktionellen Zellen (310) und mehrere der Abgriffzellen (312) umfassen, und Ermitteln von potentiellen Latch-up-Positionen in dem Lageplan (300).
  16. System nach Anspruch 15, das weiterhin ein Display aufweist, wobei das implementierte Verfahren weiterhin das Anzeigen der potentiellen Latch-up-Positionen auf dem Display umfasst.
  17. System nach Anspruch 15 oder 16, wobei das implementierte Verfahren weiterhin das Modifizieren der Anordnung der funktionellen Zellen (310) an den festgelegten potentiellen Latch-up-Positionen umfasst.
  18. System nach einem der Ansprüche 15 bis 17, das weiterhin das Hinzufügen von weiteren Abgriffzellen (312) zu dem Lageplan (300) auf Grund der ermittelten potentiellen Latch-up-Positionen umfasst.
  19. System nach einem der Ansprüche 15 bis 18, wobei das maschinenlesbare Medium weiterhin Wechselstrom und Gleichstrom-Informationen für jede der funktionellen Zellen (310) speichert.
DE102019116997.6A 2018-07-16 2019-06-25 Abgriffzellen, verfahren zu deren entwurf und schaltkreis-designsystem Active DE102019116997B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862698645P 2018-07-16 2018-07-16
US62/698,645 2018-07-16
US16/263,841 2019-01-31
US16/263,841 US10872190B2 (en) 2018-07-16 2019-01-31 Method and system for latch-up prevention

Publications (2)

Publication Number Publication Date
DE102019116997A1 DE102019116997A1 (de) 2020-01-16
DE102019116997B4 true DE102019116997B4 (de) 2024-03-21

Family

ID=69138351

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019116997.6A Active DE102019116997B4 (de) 2018-07-16 2019-06-25 Abgriffzellen, verfahren zu deren entwurf und schaltkreis-designsystem

Country Status (5)

Country Link
US (3) US10872190B2 (de)
KR (2) KR102322064B1 (de)
CN (1) CN110797337B (de)
DE (1) DE102019116997B4 (de)
TW (2) TWI796277B (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017127276A1 (de) * 2017-08-30 2019-02-28 Taiwan Semiconductor Manufacturing Co., Ltd. Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek
US10872190B2 (en) 2018-07-16 2020-12-22 Taiwan Semiconductor Manufacturing Company, Ltd. Method and system for latch-up prevention
DE102020130144A1 (de) 2019-12-30 2021-07-01 Taiwan Semiconductor Manufacturing Co., Ltd. Headerlayoutdesign, umfassend eine rückseitenstromschiene
US11398257B2 (en) * 2019-12-30 2022-07-26 Taiwan Semiconductor Manufacturing Company, Ltd. Header layout design including backside power rail
US12027525B2 (en) * 2020-07-28 2024-07-02 Taiwan Semiconductor Manufacturing Company, Ltd. Integrated circuit device, method, and system
US11416666B1 (en) * 2021-03-04 2022-08-16 Taiwan Semiconductor Manufacturing Co., Ltd. Integrated circuit and method for forming the same
US20230092184A1 (en) * 2021-09-23 2023-03-23 Advanced Micro Devices, Inc. Standard cell design architecture for reduced voltage droop utilizing reduced contacted gate poly pitch and dual height cells
US20240038760A1 (en) * 2022-08-01 2024-02-01 Qualcomm Incorporated Integrated circuit cell with dual row, back-to-back, transistor body ties
KR102686721B1 (ko) 2023-10-06 2024-07-19 위더맥스(주) 폴리 최대 밀도 에러를 방지하기 위한 칩 레이아웃 자동 생성 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020105049A1 (en) 2001-02-07 2002-08-08 Barney Clive Alva Integrated circuit having tap cells and a method for positioning tap cells in an integrated circuit
US7474011B2 (en) 2006-09-25 2009-01-06 Integrated Device Technologies, Inc. Method for improved single event latch up resistance in an integrated circuit
US20130026580A1 (en) 2011-07-26 2013-01-31 Renesas Elelctronics Corporation Semiconductor device
US20150227669A1 (en) 2014-02-10 2015-08-13 International Business Machines Corporation Circuit-level abstraction of multigate devices using two-dimensional technology computer aided design

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6368933B1 (en) * 1999-12-15 2002-04-09 Intel Corporation Tap connections for circuits with leakage suppression capability
US6848089B2 (en) * 2002-07-31 2005-01-25 International Business Machines Corporation Method and apparatus for detecting devices that can latchup
US7115460B2 (en) * 2003-09-04 2006-10-03 Taiwan Semiconductor Manufacturing Company, Ltd. Standard cell back bias architecture
TWI262411B (en) * 2004-05-07 2006-09-21 Dorado Design Automation Inc Integrated circuit design system
WO2009110615A1 (ja) * 2008-03-07 2009-09-11 日本電気株式会社 半導体集積回路の設計装置、半導体集積回路の設計方法、並びに半導体集積回路を設計するコンピュータ・プログラム
US8482070B1 (en) * 2012-08-01 2013-07-09 Stmicroelectronics (Crolles 2) Silicon-on-insulator CMOS integrated circuit with multiple threshold voltages and a method for designing the same
JP2014149738A (ja) * 2013-02-01 2014-08-21 Fujitsu Ltd 回路解析装置、回路解析方法およびプログラム
US9723758B2 (en) * 2015-02-03 2017-08-01 Dell Products, L.P. Airflow channeling structure for densely packed storage enclosures
US9679915B2 (en) * 2015-05-15 2017-06-13 Taiwan Semiconductor Manufacturing Company, Ltd. Integrated circuit with well and substrate contacts
JP2016146504A (ja) 2016-04-06 2016-08-12 ルネサスエレクトロニクス株式会社 半導体装置および半導体チップ
US10872190B2 (en) 2018-07-16 2020-12-22 Taiwan Semiconductor Manufacturing Company, Ltd. Method and system for latch-up prevention

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020105049A1 (en) 2001-02-07 2002-08-08 Barney Clive Alva Integrated circuit having tap cells and a method for positioning tap cells in an integrated circuit
US7474011B2 (en) 2006-09-25 2009-01-06 Integrated Device Technologies, Inc. Method for improved single event latch up resistance in an integrated circuit
US20130026580A1 (en) 2011-07-26 2013-01-31 Renesas Elelctronics Corporation Semiconductor device
US20150227669A1 (en) 2014-02-10 2015-08-13 International Business Machines Corporation Circuit-level abstraction of multigate devices using two-dimensional technology computer aided design

Also Published As

Publication number Publication date
DE102019116997A1 (de) 2020-01-16
TWI796277B (zh) 2023-03-11
CN110797337A (zh) 2020-02-14
TWI782217B (zh) 2022-11-01
CN110797337B (zh) 2022-05-13
TW202308102A (zh) 2023-02-16
US20200019666A1 (en) 2020-01-16
US11615227B2 (en) 2023-03-28
KR102322064B1 (ko) 2021-11-08
KR20210135950A (ko) 2021-11-16
KR20200008511A (ko) 2020-01-28
US20230237237A1 (en) 2023-07-27
KR102459550B1 (ko) 2022-10-26
US20210117605A1 (en) 2021-04-22
TW202030856A (zh) 2020-08-16
US10872190B2 (en) 2020-12-22

Similar Documents

Publication Publication Date Title
DE102019116997B4 (de) Abgriffzellen, verfahren zu deren entwurf und schaltkreis-designsystem
DE102014112789B4 (de) Zellen-Layout und Struktur
EP0441810B1 (de) Verfahren zur plazierung von modulen auf einem träger
DE102018129324A1 (de) Integrierter Schaltkreis mit gemischten Zeilenhöhen
DE102008030205B4 (de) Speichermatrix auf mehr als einem Die
DE102013106539B4 (de) Verfahren zur Verifikation eines Layouts für Polysilizium-Zellrandstrukturen in FinFET-Standardzellen
DE60116769T2 (de) Verfahren und system zur hierarchischen metallenden-, einschliessungs- und belichtungsprüfung
DE102013106541B4 (de) System zum Entwerfen einer Halbleitervorrichtung, die hergestelle Vorrichtung und Verfahren zur Verwendung des Systems
DE102015117026B4 (de) Verfahren zur Parameterextraktion und System dafür
DE102019115908A1 (de) Standard-flip-flop-zelle
DE68921550T2 (de) Verfahren und Gerät zur Bildung eines Pattern-Layouts einer integrierten Halbleiterschaltung.
DE102014118932A1 (de) Charakterisierung einer Zelle unter Verwendung einer Eingangswellenerzeugung unter Berücksichtigung verschiedener Schaltungstopologien
DE102020130215A1 (de) Techniken zum Transponieren einer Matrix durch Verwenden eines Speicherblocks
DE102019124928A1 (de) Integriertes schaltungsdesign unter verwendung von fuzzy-maschinenlernen
WO2005022629A2 (de) Verfahren zum entwurf von integrierten schaltkreisen mit ersatz-logikgattern
DE102020115154A1 (de) Multiplexer
DE102022123898A1 (de) Speicherstruktur mit selbsteinstellender Lese- und Schreibunterstützung auf der Grundlage von kapazitiver Kopplung
DE112013005783T5 (de) Mit Stromnetzwerksynthese (PNS) zur Stromversorgungsnetz(PG)-Justierung integriertes Modellieren
DE112013005831T5 (de) Netzlistenabstraktion
DE102019127214B4 (de) Grenzzelle
DE102021129850B4 (de) Halbleiterstruktur eines zellenarrays und verfahren für deren bereitstellung
DE112013005760T5 (de) Musterbasierende Versorgungs-und-Masse(PG)-Verdrahtung und Durchkontakterzeugung
DE102017127276A1 (de) Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek
DE10164424A1 (de) Elektrische oder elektronische Schaltungsanordnung sowie zugeordnetes Verfahren
DE10303186A1 (de) Verfahren zur Simulation einer elektrischen Schaltung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division