DE202021106865U1 - A system for developing a physical intelligent VLSI chip - Google Patents

A system for developing a physical intelligent VLSI chip Download PDF

Info

Publication number
DE202021106865U1
DE202021106865U1 DE202021106865.5U DE202021106865U DE202021106865U1 DE 202021106865 U1 DE202021106865 U1 DE 202021106865U1 DE 202021106865 U DE202021106865 U DE 202021106865U DE 202021106865 U1 DE202021106865 U1 DE 202021106865U1
Authority
DE
Germany
Prior art keywords
chip
design
manipulation processing
data
manipulation
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
DE202021106865.5U
Other languages
German (de)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE202021106865.5U priority Critical patent/DE202021106865U1/en
Publication of DE202021106865U1 publication Critical patent/DE202021106865U1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/394Routing

Abstract

Ein System zur Entwicklung eines physikalisch intelligenten VLSI-Chips, wobei das System folgendes umfasst:
eine grafische Benutzeroberfläche, die zum Auswählen und Spezifizieren von Entwurfsmanipulationsverarbeitungsparametern für eine bestimmte Chipentwurfsdatendatei konfiguriert ist, um einen Computerauftrag zu erstellen, der Manipulationsverarbeitungsanweisungen enthält;
einen Serverpool-Lastausgleicher zum Verteilen von Chipmanipulationsverarbeitungsaufträgen auf eine Gruppe von Servern, auf denen die Manipulationsverarbeitung weiter ausgeführt wird, wobei der Auftrag auf einem Server nach Empfang des Manipulationsverarbeitungsauftrags auf einem der Server des Serverpools ausgeführt wird; und
eine Entwurfsmanipulations-Verarbeitungseinheit zum Ausführen von Entwurfsmanipulationen, um einen Satz von Funktionen an den Chipentwurfsdaten auszuführen, wobei die Chipentwurfsdaten ausgewählt werden aus Verkleinerungen, Erweiterungen oder der Ableitung neuer Datenebenen, dem Hinzufügen von Verarbeitungshilfsmerkmalen für Bauelementverbesserungen, dem Hinzufügen von nichtfunktionalen Formen für einen erhöhten Prozessspielraum in der Fertigungslinie.

Figure DE202021106865U1_0000
A system for developing a physically intelligent VLSI chip, the system comprising:
a graphical user interface configured to select and specify design manipulation processing parameters for a particular chip design data file to create a computer job containing manipulation processing instructions;
a server pool load balancer for distributing chip manipulation processing jobs to a group of servers on which the manipulation processing is further executed, the job being executed on one server after receipt of the manipulation processing job on one of the servers of the server pool; and
a design manipulation processing unit for performing design manipulations to perform a set of functions on the chip design data, wherein the chip design data is selected from shrinking, expanding or deriving new data planes, adding processing help features for device improvements, adding non-functional shapes for increased process latitude in the production line.
Figure DE202021106865U1_0000

Description

BEREICH DER ERFINDUNGFIELD OF THE INVENTION

Die vorliegende Offenlegung bezieht sich auf ein System zur Entwicklung eines physikalisch intelligenten VLSI-Chips. Im Einzelnen erleichtert das System den Entwurf eines physischen intelligenten Very Large Scale Integration (VSLI)-Chips und die Entwicklung einer Plattform zur Implementierung eines Master-Images mit hoher Dichte, das Logik enthält.The present disclosure relates to a system for developing a physically intelligent VLSI chip. More specifically, the system facilitates the design of a physical intelligent Very Large Scale Integration (VSLI) chip and development of a platform to implement a high-density master image containing logic.

HINTERGRUND DER ERFINDUNGBACKGROUND OF THE INVENTION

Die zunehmende Komplexität des Logikdesigns, wie es auf VLSI-Chips implementiert ist, hat zu Schwierigkeiten geführt, da große Teile der Schaltkreise, die in einem einzigen VLSI-Array enthalten sind, nicht direkt abgetastet oder getestet werden können. Bei sehr großen Arrays kann eine beträchtliche Anzahl von logischen oder funktionalen Schritten zwischen Eingangs- und Ausgangsoperanden auftreten, so dass es schwierig ist, festzustellen, wo oder wie ein Fehler im Ausgangsoperanden aufgetreten ist. Die Möglichkeit, die Funktionsweise einer logischen Schaltung in einem VLSI-Array zu testen oder anderweitig zu bestimmen, ist vor allem während des Design-Checkout-Prozesses wichtig, da so die interne Logik zur Überprüfung des Logikdesigns abgetastet und „schwache“ Bereiche im Array-Design oder Layout identifiziert werden können, die während der Lebensdauer des Chips besonders anfällig für Fehlerentwicklung sind. Spannungsschwankungen, Timing-Schwankungen und andere Faktoren können dazu führen, dass solche „schwachen“ Stellen eine geringe Toleranz oder Marge aufweisen. Daher ist es beim VLSI-Logikdesign von entscheidender Bedeutung, ein internes System zu schaffen, das vorgewählte, relevante Datenpunkte innerhalb der Logikstruktur testen oder abtasten kann. Da einige Fehler intermittierend sind und nur unter bestimmten Bedingungen auftreten, ist die Diagnose dieser Fehler in großen Systemen besonders schwierig. Die Erfassung fehlerhafter Eingabedaten an verschiedenen Stellen innerhalb einer logischen Schaltung sowie der Eingabeoperanden in die logische Struktur kann bei der Diagnose von intermittierenden Fehlern helfen. Da die Anzahl der Eingangs- und Ausgangsverbindungen oder -stifte auf VLSI-Logik-Chip-Arrays begrenzt ist und diese größtenteils für betriebliche Zwecke verwendet werden, können Fehlerfunktions-Logiktests nur einen winzigen Prozentsatz der auf dem Chip verfügbaren Eingangs- und Ausgangsstifte nutzen.The increasing complexity of logic design as implemented on VLSI chips has created difficulties in that large portions of the circuitry contained within a single VLSI array cannot be directly sampled or tested. For very large arrays, there can be a significant number of logical or functional steps between input and output operands, making it difficult to determine where or how an error occurred in the output operand. The ability to test or otherwise determine the operation of a logic circuit in a VLSI array is particularly important during the design checkout process, as it allows the internal logic to be sampled to verify the logic design and identify "weak" areas in the array Design or layout can be identified that are particularly prone to error development during the lifetime of the chip. Voltage fluctuations, timing variances, and other factors can cause such "weak" spots to have a small tolerance or margin. Therefore, it is critical in VLSI logic design to create an internal system that can test or sample preselected, relevant data points within the logic structure. Because some faults are intermittent and only occur under certain conditions, diagnosing these faults is particularly difficult in large systems. Capturing erroneous input data at various points within a logic circuit, as well as the input operands into the logic structure, can help diagnose intermittent errors. Since the number of input and output connections or pins on VLSI logic chip arrays is limited and most of them are used for operational purposes, failure function logic tests can only utilize a tiny percentage of the input and output pins available on the chip.

Der pegelsensitive Scan-Entwurf ist jedoch eine Technik zur Analyse des VLSI-Logikentwurfs und von Fehlerfunktionen, bei der eine große Anzahl von Registern mit dem Logiksystem auf einem VLSI-Chip kombiniert wird, so dass der Inhalt aller Register bei Bedarf kontinuierlich seriell an einen Ausgangspin des Chips geliefert werden kann. Um eine große Menge serieller Daten auszugeben, muss dieses System eine große Anzahl von Operandenregistern im VLSI-Chip aneinanderreihen. Alle diese Daten werden gleichzeitig erfasst, so dass es schwierig ist, alle spezifischen Operanden und Fremddaten zu bewerten, die bei diesem Ansatz erfasst werden. Bei dieser Technik werden auch nicht die richtigen Eingangsoperanden erfasst, um sie mit Operanden in verschiedenen Verarbeitungsphasen zu korrelieren. In Anbetracht der vorangegangenen Diskussion wird deutlich, dass ein System zur Entwicklung eines physischen intelligenten VLSI-Chips benötigt wird.However, level-sensitive scan design is a technique for analyzing VLSI logic design and error functions, in which a large number of registers are combined with the logic system on a VLSI chip, so that the contents of all registers are continuously serialized to an output pin when needed of the chip can be delivered. In order to output a large amount of serial data, this system needs to line up a large number of operand registers in the VLSI chip. All of this data is collected simultaneously, making it difficult to assess all of the specific operands and extraneous data collected in this approach. This technique also fails to capture the correct input operands to correlate with operands at different processing stages. In view of the previous discussion, it becomes clear that a system for developing a physical intelligent VLSI chip is needed.

ZUSAMMENFASSUNG DER ERFINDUNGSUMMARY OF THE INVENTION

Die vorliegende Offenlegung zielt darauf ab, ein System für die Entwicklung eines physischen intelligenten VLSI-Chips bereitzustellen, indem dieselben Entwurfsmanipulationsprozesse sowohl für den Chipentwurf als auch für Chipentwürfe der gleichen Generation verwendet werden, was einen konsistenten, genauen und wiederholbaren Prozess und eine verbesserte Qualität der Wafertestergebnisse ermöglicht, da die Daten im intelligenten Chip mit den Daten im Chip übereinstimmen.The present disclosure aims to provide a system for the development of a physical intelligent VLSI chip by using the same design manipulation processes for both the chip design and chip designs of the same generation, resulting in a consistent, accurate and repeatable process and an improved quality of the Wafer test results enabled because the data in the smart chip matches the data in the chip.

In einer Ausführungsform wird ein System zur Entwicklung eines physikalisch intelligenten VLSI-Chips offenbart. Das System umfasst eine grafische Benutzeroberfläche, die für die Auswahl und Spezifikation von Entwurfsmanipulationsverarbeitungsparametern für eine bestimmte Chipentwurfsdatendatei konfiguriert ist, um einen Computerauftrag zu erstellen, der Manipulationsverarbeitungsanweisungen enthält. Das System umfasst ferner einen Serverpool-Lastausgleicher zum Verteilen von Chipmanipulationsverarbeitungsaufträgen auf eine Gruppe von Servern, auf denen die Manipulationsverarbeitung weiter ausgeführt wird, wobei der Auftrag auf einem Server nach Empfang des Manipulationsverarbeitungsauftrags an einen der Server des Serverpools ausgeführt wird. Das System umfasst ferner eine Entwurfsmanipulationsverarbeitungseinheit zum Ausführen von Entwurfsmanipulationen, um einen Satz von Funktionen an den Chipentwurfsdaten auszuführen, wobei die Chipentwurfsdaten aus Verkleinerungen, Erweiterungen oder der Ableitung neuer Datenebenen, dem Hinzufügen von Verarbeitungshilfsmerkmalen für Geräteverbesserungen und dem Hinzufügen nichtfunktionaler Formen für einen größeren Spielraum bei den Fertigungslinienprozessen ausgewählt werden.In one embodiment, a system for developing a physically intelligent VLSI chip is disclosed. The system includes a graphical user interface configured for selecting and specifying design manipulation processing parameters for a particular chip design data file to create a computer job containing manipulation processing instructions. The system further comprises a server pool load balancer for distributing chip manipulation processing jobs to a group of servers on which the manipulation processing is further executed, the job being executed on one server after receipt of the manipulation processing job to one of the servers of the server pool. The system further includes a design manipulation processing unit for performing design manipulations to perform a set of functions on the chip design data, wherein the chip design data consists of shrinking, expanding, or deriving new data planes, adding processing help features for device improvements, and adding non-functional shapes for greater latitude the production line processes can be selected.

In einer anderen Ausführungsform speichert die grafische Benutzeroberfläche die von einem Benutzer eingegebenen Manipulationsverarbeitungsparameter entweder in einer Datenbank oder in einer Datei, wobei die Manipulationsverarbeitungsparameter aus Technologien, Schichten innerhalb der Technologie, Ableitungen und einem Satz von Optionen, die von einer Fertigungslinie unterstützt werden, ausgewählt werden.In another embodiment, the graphical user interface stores the manipulation processing parameters entered by a user either in a database or in a file, where the manipulation processing parameters are selected from technologies, layers within the technology, derivatives, and a set of options supported by an AssemblyLine.

In einer anderen Ausführungsform kann die grafische Benutzerschnittstelle in Form einer auf einem Server laufenden Webanwendung implementiert werden, wobei die grafische Benutzerschnittstelle nach Abschluss der Eingabe der Manipulationsverarbeitungsparameter gleichzeitig sowohl den Chipdesign-Manipulationsprozess als auch den Schnittfugenerstellungsprozess einleitet.In another embodiment, the graphical user interface may be implemented in the form of a web application running on a server, where upon completion of entering the manipulation processing parameters, the graphical user interface initiates both the chip design manipulation process and the kerf creation process simultaneously.

In einer anderen Ausführungsform werden die Chipentwurfsdaten über ein Datenverschiebungsprogramm auf den Server kopiert, auf dem die Chipmanipulationsverarbeitung ausgeführt wird, wobei das Datenverschiebungsprogramm ein FTP ist, wenn sich die Daten auf dem lokalen Direktzugriffsgerät eines anderen Rechners befinden, oder der AIX-Kopierbefehl, wenn sich die Daten in einem Andrew-Dateisystem befinden.In another embodiment, the chip design data is copied to the server on which the chip manipulation processing is being performed via a data movement program, where the data movement program is an FTP if the data is on another machine's local direct access device, or the AIX copy command if it is the data resides in an Andrew file system.

In einer anderen Ausführungsform werden die über die grafische Benutzeroberfläche eingegebenen Verarbeitungsparameter alternativ aus einer Datenbank oder Datei abgerufen.In another embodiment, the processing parameters entered via the graphical user interface are alternatively retrieved from a database or file.

In einer anderen Ausführungsform werden die geänderten Entwurfsdaten nach erfolgreichem Abschluss des Chipmanipulationsauftrags zusammen mit einem Chipentwurfsbild in einem Chipentwurfsdatenspeicher archiviert.In another embodiment, after the chip manipulation job has been successfully completed, the changed design data is archived in a chip design data store together with a chip design image.

In einer anderen Ausführungsform umfasst das System einen Kerberzeugungsprozess, der mehrere Schritte umfasst, die gleichzeitig mit dem Chipentwurfsmanipulationsprozess unter Verwendung der grafischen Benutzeroberfläche eingeleitet werden, wobei ein Auftrag, der die Kerberzeugungs-Verarbeitungsanweisungen enthält, an ein Kerf-Serverpool-Lastausgleichsdienstprogramm gesendet wird.In another embodiment, the system includes a notch generation process that includes multiple steps that are initiated concurrently with the chip design manipulation process using the graphical user interface, with a job containing the notch generation processing instructions being sent to a kerf server pool load balancing utility.

In einer anderen Ausführungsform umfasst das System eine übergeordnete Steuereinheit, die mit einer Vielzahl identischer Multiport-Prozessoren kommuniziert, wobei einer der Prozessoren jeder Zelle zugeordnet ist, um die Leitungsführung zwischen den jeweiligen Zellen zu bestimmen, und jeder Prozessor gleichzeitig mit seinen vier benachbarten Prozessoren kommuniziert, um die Kanalführung von einem Punkt zum nächsten in der Anordnung von Zellen zu bestimmen.In another embodiment, the system comprises a superordinate control unit which communicates with a plurality of identical multiport processors, one of the processors being assigned to each cell to determine the routing between the respective cells, and each processor communicating simultaneously with its four neighboring processors to determine channel routing from one point to the next in the array of cells.

In einer anderen Ausführungsform wird eine vollständige logische Schaltung des Chipentwurfs logisch in mehrere Teile unterteilt, die von Computerprogrammen und einer Gruppe von Computern verwaltet werden können, wobei die Teile so ausgewählt werden, dass die Verbindungen zwischen ihnen minimiert werden und die Bereiche der Teile so geformt sind, dass sie zusammenpassen, ohne dass dazwischen Leerraum bleibt.In another embodiment, a complete logical circuit of the chip design is logically divided into several parts manageable by computer programs and a group of computers, where the parts are chosen so that the connections between them are minimized and the areas of the parts are so shaped are that they fit together without leaving any space in between.

In einer anderen Ausführungsform umfasst die Trennwand ein in sich geschlossenes Stück Logik, so dass alle Verbindungen mit benachbarten Trennwänden, die in der Trennwand enthalten sind, miteinander verbunden sind, wobei eine der Trennwände Drähte enthält, aus denen Drähte hervorgehen, die enden, und Drähte, die die Trennwand kreuzen, wobei die Verbindungen zwischen den Trennwänden durch Feldverbinder von Übertragungsbüchern hergestellt werden, die die erforderlichen Kontakte bereitstellen.In another embodiment, the divider comprises a self-contained piece of logic such that all connections to adjacent dividers contained within the divider are interconnected, with one of the dividers containing wires emanating wires terminating and wires crossing the partition, the connections between the partitions being made by field connectors of transfer books providing the necessary contacts.

Ein Ziel der vorliegenden Offenbarung ist die Entwicklung eines Systems, das so konfiguriert ist, dass es dieselben Entwurfsmanipulationsprozesse sowohl für den Chipentwurf als auch für Chipentwürfe der gleichzeitigen Generation verwendet, was einen konsistenten, genauen und wiederholbaren Prozess und eine verbesserte Qualität der Wafertestergebnisse ermöglicht.An objective of the present disclosure is to develop a system that is configured to use the same design manipulation processes for both chip design and concurrent generation chip designs, allowing for a consistent, accurate, and repeatable process and improved quality of wafer test results.

Ein weiteres Ziel der vorliegenden Offenbarung ist die Entwicklung einer Entwurfstechnologie für einen Chip mit Großintegration (VSLI), um ein Master-Image mit hoher Dichte zu implementieren, das Logik (AND, OR, NOR, X-OR, X-NOR, NOT) und E-ROM, RAMs, EPROM, EEPROM enthält.Another object of the present disclosure is to develop a large scale integration chip (VSLI) design technology to implement a high-density master image that includes logic (AND, OR, NOR, X-OR, X-NOR, NOT) and E-ROM, RAMs, EPROM, EEPROM.

Ein weiteres Ziel der vorliegenden Offenbarung ist es, eine hierarchische Top-Down-Mapping-Design-Plattform und eine auf dem Chip enthaltene Schaltung bereitzustellen, die logisch in eine Matrix unterteilt ist, die von intelligenten Designsystemen und einzigartigen Programmen verwaltet werden kann.Another object of the present disclosure is to provide a top-down hierarchical mapping design platform and on-chip circuitry that is logically partitioned into a matrix that can be managed by intelligent design systems and unique programs.

Ein weiterer Gegenstand der vorliegenden Offenbarung ist die parallele Gestaltung einer anderen Matrix und die Erstellung eines Grundrisses, der den verschiedenen Partitionen eine Form gibt, die so beschaffen ist, dass sie zusammenpassen, ohne dass ein Zwischenraum zwischen den einzelnen Matrixpartitionen verbleibt.Another object of the present disclosure is to design another matrix in parallel and create a floor plan that gives the various partitions a shape designed to fit together without leaving a gap between each matrix partition.

Ein weiteres Ziel der vorliegenden Offenbarung ist es, einen Chip brauchen keinen zusätzlichen Platz für die globale Verdrahtung und die Partitionen sind unmittelbar aneinander befestigt und die Master-Bild beschrieben ist sehr flexibel in Bezug auf Logik, Mikrochip.Another objective of the present disclosure is to do not need additional space for the global wiring and the partitions are directly attached to each other and the master image described is very flexible in terms of logic, microchip a chip.

Ein weiteres Ziel der vorliegenden Offenbarung ist die Verwendung der gleichen Entwurfsmanipulationsprozesse sowohl für den Chipentwurf als auch für Chipentwürfe der gleichzeitigen Generation, was einen konsistenten, genauen und wiederholbaren Prozess und eine verbesserte Qualität der Wafertestergebnisse ermöglicht, da die Daten im intelligenten Chip mit den Daten im Chip übereinstimmen.Another object of the present disclosure is to use the same design mani pulation processes for both chip design and concurrent generation chip designs, enabling a consistent, accurate and repeatable process and improved quality of wafer test results as the data in the smart chip matches the data on the chip.

Ein weiteres Ziel der vorliegenden Offenbarung ist der Entwurf von VLSI-Schaltungen (Very Large Scale Integrated), insbesondere die Zusammenschaltung und die Leitungsführung zwischen den auf einem Chip gebildeten Schaltungen und die Festlegung der Leitungsführung in einer aus Zellen bestehenden VLSI-Schaltung.Another object of the present disclosure is the design of Very Large Scale Integrated (VLSI) circuits, particularly the interconnection and routing between the circuits formed on a chip and the definition of the routing in a VLSI circuit composed of cells.

Ein weiteres Ziel der vorliegenden Erfindung ist es, eine schnelle und kostengünstige Überwachungssteuerung zu liefern, die mit identischen Multiport-Prozessoren kommuniziert, wobei ein Prozessor jeder Zelle gewidmet ist, um die Leitungsführung zwischen den jeweiligen Zellen zu bestimmen, und jeder Prozessor kommuniziert gleichzeitig mit seinen vier benachbarten Nachbarprozessoren, um die Kanalführung von einem Punkt zum nächsten in der Anordnung der Zellen zu bestimmen.Another object of the present invention is to provide a fast and inexpensive supervisory controller that communicates with identical multiport processors, where one processor is dedicated to each cell to determine the routing between the respective cells, and each processor communicates simultaneously with its four adjacent neighbor processors to determine channel routing from one point to the next in the array of cells.

Zur weiteren Verdeutlichung der Vorteile und Merkmale der vorliegenden Offenbarung wird eine genauere Beschreibung der Erfindung durch Bezugnahme auf bestimmte Ausführungsformen gegeben, die in den beigefügten Figuren dargestellt sind. Es wird davon ausgegangen, dass diese Figuren nur typische Ausführungsformen der Erfindung darstellen und daher nicht als Einschränkung des Umfangs der Erfindung zu betrachten sind. Die Erfindung wird mit zusätzlicher Spezifität und Detail mit den beigefügten Figuren beschrieben und erläutert werden.In order to further clarify the advantages and features of the present disclosure, a more detailed description of the invention is provided by reference to specific embodiments that are illustrated in the accompanying figures. It is understood that these figures represent only typical embodiments of the invention and therefore should not be considered as limiting the scope of the invention. The invention will be described and illustrated with additional specificity and detail with the accompanying figures.

Figurenlistecharacter list

Diese und andere Merkmale, Aspekte und Vorteile der vorliegenden Offenbarung werden besser verstanden, wenn die folgende detaillierte Beschreibung unter Bezugnahme auf die beigefügten Figuren gelesen wird, in denen gleiche Zeichen gleiche Teile in den Figuren darstellen, wobei:

  • 1 zeigt ein Blockdiagramm eines Systems zur Entwicklung eines physikalisch intelligenten VLSI-Chips gemäß einer Ausführungsform der vorliegenden Offenbarung.
These and other features, aspects, and advantages of the present disclosure will be better understood when the following detailed description is read with reference to the accompanying figures, in which like characters represent like parts throughout the figures, wherein:
  • 1 FIG. 12 shows a block diagram of a system for developing a physically intelligent VLSI chip according to an embodiment of the present disclosure.

Der Fachmann wird verstehen, dass die Elemente in den Figuren der Einfachheit halber dargestellt sind und nicht unbedingt maßstabsgetreu gezeichnet wurden. Die Flussdiagramme veranschaulichen beispielsweise das Verfahren anhand der wichtigsten Schritte, um das Verständnis der Aspekte der vorliegenden Offenbarung zu verbessern. Darüber hinaus kann es sein, dass eine oder mehrere Komponenten der Vorrichtung in den Figuren durch herkömmliche Symbole dargestellt sind, und dass die Figuren nur die spezifischen Details zeigen, die für das Verständnis der Ausführungsformen der vorliegenden Offenbarung relevant sind, um die Figuren nicht mit Details zu überfrachten, die für Fachleute, die mit der vorliegenden Beschreibung vertraut sind, leicht erkennbar sind.Those skilled in the art will understand that the elements in the figures are presented for simplicity and are not necessarily drawn to scale. For example, the flow charts illustrate the method of key steps to enhance understanding of aspects of the present disclosure. In addition, one or more components of the device may be represented in the figures by conventional symbols, and the figures only show the specific details relevant to understanding the embodiments of the present disclosure, not to encircle the figures with details to overload, which are easily recognizable to those skilled in the art familiar with the present description.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Um das Verständnis der Erfindung zu fördern, wird nun auf die in den Figuren dargestellte Ausführungsform Bezug genommen und diese mit bestimmten Worten beschrieben. Es versteht sich jedoch von selbst, dass damit keine Einschränkung des Umfangs der Erfindung beabsichtigt ist, wobei solche Änderungen und weitere Modifikationen des dargestellten Systems und solche weiteren Anwendungen der darin dargestellten Grundsätze der Erfindung in Betracht gezogen werden, wie sie einem Fachmann auf dem Gebiet der Erfindung normalerweise einfallen würden.For the purposes of promoting an understanding of the invention, reference will now be made to the embodiment illustrated in the figures and specific language will be used to describe the same. It should be understood, however, that no limitation on the scope of the invention is intended, and such alterations and further modifications to the illustrated system and such further applications of the principles of the invention set forth therein are contemplated as would occur to those skilled in the art invention would normally come to mind.

Der Fachmann wird verstehen, dass die vorstehende allgemeine Beschreibung und die folgende detaillierte Beschreibung beispielhaft und erläuternd für die Erfindung sind und diese nicht einschränken sollen.Those skilled in the art will understand that the foregoing general description and the following detailed description are exemplary and explanatory of the invention and are not intended to be limiting.

Wenn in dieser Beschreibung von „einem Aspekt“, „einem anderen Aspekt“ oder ähnlichem die Rede ist, bedeutet dies, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, die im Zusammenhang mit der Ausführungsform beschrieben wird, in mindestens einer Ausführungsform der vorliegenden Offenbarung enthalten ist. Daher können sich die Ausdrücke „in einer Ausführungsform“, „in einer anderen Ausführungsform“ und ähnliche Ausdrücke in dieser Beschreibung alle auf dieselbe Ausführungsform beziehen, müssen es aber nicht.When this specification refers to "an aspect," "another aspect," or the like, it means that a particular feature, structure, or characteristic described in connection with the embodiment is present in at least one embodiment included in the present disclosure. Therefore, the phrases "in one embodiment," "in another embodiment," and similar phrases throughout this specification may or may not all refer to the same embodiment.

Die Ausdrücke „umfasst“, „enthaltend“ oder andere Variationen davon sollen eine nicht ausschließliche Einbeziehung abdecken, so dass ein Verfahren oder eine Methode, die eine Liste von Schritten umfasst, nicht nur diese Schritte umfasst, sondern auch andere Schritte enthalten kann, die nicht ausdrücklich aufgeführt sind oder zu einem solchen Verfahren oder einer solchen Methode gehören. Ebenso schließen eine oder mehrere Vorrichtungen oder Teilsysteme oder Elemente oder Strukturen oder Komponenten, die mit „umfasst...a“ eingeleitet werden, nicht ohne weitere Einschränkungen die Existenz anderer Vorrichtungen oder anderer Teilsysteme oder anderer Elemente oder anderer Strukturen oder anderer Komponenten oder zusätzlicher Vorrichtungen oder zusätzlicher Teilsysteme oder zusätzlicher Elemente oder zusätzlicher Strukturen oder zusätzlicher Komponenten aus.The terms "comprises,""including," or other variations thereof are intended to cover non-exclusive inclusion such that a method or method that includes a list of steps includes not only those steps, but may also include other steps that are not expressly stated or pertaining to any such process or method. Likewise, any device or subsystem or element or structure or component preceded by "comprises...a" does not, without further limitation, exclude the existence of other devices or other subsystem or other element or other structure or other component or additional device or additional subsystems or additional elements or additional structures or additional components.

Sofern nicht anders definiert, haben alle hierin verwendeten technischen und wissenschaftlichen Begriffe die gleiche Bedeutung, wie sie von einem Fachmann auf dem Gebiet, zu dem diese Erfindung gehört, allgemein verstanden wird. Das System, die Methoden und die Beispiele, die hier angegeben werden, dienen nur der Veranschaulichung und sind nicht als Einschränkung gedacht.Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one skilled in the art to which this invention pertains. The system, methods, and examples provided herein are for purposes of illustration only and are not intended to be limiting.

Ausführungsformen der vorliegenden Offenbarung werden im Folgenden unter Bezugnahme auf die beigefügten Figuren im Detail beschrieben.Embodiments of the present disclosure are described in detail below with reference to the attached figures.

In 1 ist ein Blockdiagramm eines Systems zur Entwicklung eines physikalisch intelligenten VLSI-Chips gemäß einer Ausführungsform der vorliegenden Offenbarung dargestellt. Das System 100 umfasst eine grafische Benutzeroberfläche 102, die zum Auswählen und Spezifizieren von Entwurfsmanipulationsverarbeitungsparametern für eine bestimmte Chipentwurfsdatendatei konfiguriert ist, um einen Computerauftrag zu erstellen, der Manipulationsverarbeitungsanweisungen enthält.In 1 Illustrated is a block diagram of a system for designing a physically intelligent VLSI chip according to an embodiment of the present disclosure. The system 100 includes a graphical user interface 102 configured to select and specify design manipulation processing parameters for a particular chip design data file to create a computer job containing manipulation processing instructions.

In einer Ausführungsform wird ein Serverpool-Lastausgleicher 104 zur Verteilung von Chipmanipulationsverarbeitungsaufträgen auf eine Gruppe von Servern eingesetzt, auf denen die Manipulationsverarbeitung weiter ausgeführt wird, wobei der Auftrag auf einem Server nach Empfang des Manipulationsverarbeitungsauftrags auf einem der Server des Serverpools ausgeführt wird.In one embodiment, a server pool load balancer 104 is used to distribute chip manipulation processing jobs to a group of servers on which the manipulation processing continues to execute, with the job being executed on one server after receipt of the manipulation processing job on one of the servers in the server pool.

In einer Ausführungsform wird eine Entwurfsmanipulations-Verarbeitungseinheit 106 zur Ausführung von Entwurfsmanipulationen eingesetzt, um eine Reihe von Funktionen an den Chipentwurfsdaten auszuführen, wobei die Chipentwurfsdaten aus Verkleinerungen, Vergrößerungen oder der Ableitung neuer Datenebenen, der Hinzufügung von Verarbeitungshilfsmerkmalen für Bauelementeverbesserungen und der Hinzufügung nichtfunktionaler Formen für einen größeren Verarbeitungsspielraum in der Fertigungslinie ausgewählt werden.In one embodiment, a design manipulation processing unit 106 is employed to perform design manipulations to perform a variety of functions on the chip design data, wherein the chip design data consists of shrinking, enlarging, or deriving new data planes, adding processing support features for device improvements, and adding non-functional shapes for a greater processing latitude can be selected in the production line.

In einer anderen Ausführungsform speichert die grafische Benutzeroberfläche 102 die von einem Benutzer eingegebenen Manipulationsverarbeitungsparameter entweder in einer Datenbank 108 oder in einer Datei, wobei die Manipulationsverarbeitungsparameter aus Technologien, Schichten innerhalb der Technologie, Ableitungen und einem Satz von Optionen, die von einer Fertigungslinie unterstützt werden, ausgewählt werden.In another embodiment, the graphical user interface 102 stores the manipulation processing parameters entered by a user either in a database 108 or in a file, where the manipulation processing parameters are selected from technologies, layers within the technology, derivatives and a set of options supported by an AssemblyLine. to be chosen.

In einer anderen Ausführungsform kann die grafische Benutzeroberfläche 102 in Form einer Webanwendung implementiert werden, die auf einem Server läuft, wobei die grafische Benutzeroberfläche 102 gleichzeitig sowohl den Chipdesign-Manipulationsprozess als auch den Kerberstellungsprozess nach Abschluss der Eingabe der Manipulationsverarbeitungsparameter initiiert.In another embodiment, the graphical user interface 102 may be implemented in the form of a web application running on a server, where the graphical user interface 102 simultaneously initiates both the chip design manipulation process and the notch creation process upon completion of entering the manipulation processing parameters.

In einer anderen Ausführungsform werden die Chipentwurfsdaten über ein Datenverschiebungsprogramm auf den Server kopiert, auf dem die Chipmanipulationsverarbeitung ausgeführt wird, wobei das Datenverschiebungsprogramm ein FTP ist, wenn sich die Daten auf dem lokalen Direktzugriffsgerät eines anderen Rechners befinden, oder der AIX-Kopierbefehl, wenn sich die Daten in einem Andrew-Dateisystem befinden.In another embodiment, the chip design data is copied to the server on which the chip manipulation processing is being performed via a data movement program, where the data movement program is an FTP if the data is on another machine's local direct access device, or the AIX copy command if it is the data resides in an Andrew file system.

In einer anderen Ausführungsform werden die über die grafische Benutzeroberfläche 102 eingegebenen Verarbeitungsparameter alternativ aus einer Datenbank 108 oder einer Datei abgerufen.In another embodiment, the processing parameters entered via the graphical user interface 102 are alternatively retrieved from a database 108 or a file.

In einer anderen Ausführungsform werden die geänderten Entwurfsdaten nach erfolgreichem Abschluss des Chipmanipulationsauftrags zusammen mit einem Chipentwurfsbild in einem Chipentwurfsdatenspeicher archiviert.In another embodiment, after the chip manipulation job has been successfully completed, the changed design data is archived in a chip design data store together with a chip design image.

In einer anderen Ausführungsform umfasst das System 100 einen Kerberstellungsprozess, der mehrere Schritte umfasst, die gleichzeitig mit dem Chipdesign-Manipulationsprozess unter Verwendung der grafischen Benutzeroberfläche 102 eingeleitet werden, wobei ein Auftrag, der die Verarbeitungsanweisungen für die Kerberstellung enthält, an ein Kerf-Server-Pool-Lastausgleichsdienstprogramm gesendet wird.In another embodiment, the system 100 includes a kerf creation process that includes multiple steps that are initiated concurrently with the chip design manipulation process using the graphical user interface 102, wherein a job containing the processing instructions for the kerf creation is sent to a kerf server Pool load balancing utility is sent.

In einer anderen Ausführungsform umfasst das System 100 einen Überwachungscontroller 110, der mit einer Vielzahl identischer Multiport-Prozessoren kommuniziert, wobei einer der Prozessoren jeder Zelle zugeordnet ist, um die Leitungsführung zwischen den jeweiligen Zellen zu bestimmen, und jeder Prozessor gleichzeitig mit seinen vier benachbarten Prozessoren kommuniziert, um die Kanalführung von einem Punkt zum nächsten in der Anordnung von Zellen zu bestimmen.In another embodiment, the system 100 includes a supervisory controller 110 that communicates with a plurality of identical multiported processors, one of the processors being dedicated to each cell to determine routing between the respective cells, and each processor communicating simultaneously with its four neighboring processors communicates to determine channel routing from one point to the next in the array of cells.

In einer anderen Ausführungsform wird eine vollständige logische Schaltung des Chipentwurfs logisch in mehrere Teile unterteilt, die von Computerprogrammen und einer Gruppe von Computern verwaltet werden können, wobei die Teile so ausgewählt werden, dass die Verbindungen zwischen ihnen minimiert werden und die Bereiche der Teile so geformt sind, dass sie zusammenpassen, ohne dass dazwischen Leerraum bleibt.In another embodiment, a complete logical circuit of the chip design is logically divided into several parts manageable by computer programs and a group of computers, where the parts are chosen so that the connections between them are minimized and the areas of the parts are so shaped are that they fit together without leaving any space in between.

In einer anderen Ausführungsform umfasst die Trennwand ein in sich geschlossenes Stück Logik, so dass alle Verbindungen mit benachbarten Trennwänden, die in der Trennwand enthalten sind, miteinander verbunden sind, wobei eine der Trennwände Drähte enthält, aus denen Drähte hervorgehen, die enden, und Drähte, die die Trennwand kreuzen, wobei die Verbindungen zwischen den Trennwänden durch Feldverbinder von Übertragungsbüchern hergestellt werden, die die erforderlichen Kontakte bereitstellen.In another embodiment, the divider comprises a self-contained piece of logic such that all connections to adjacent dividers contained within the divider are interconnected, with one of the dividers containing wires emanating wires terminating and wires crossing the partition, the connections between the partitions being made by field connectors of transfer books providing the necessary contacts.

Das erfindungsgemäße System 100 bietet in vorteilhafter Weise eine hierarchische physikalische Entwurfsmethodik in einer Top-Down-Methode. Die gesamte logische Schaltung wird logisch in Teile partitioniert, die von Computerprogrammen und Computern verwaltet werden können. Diese Partitionen werden so ausgewählt, dass die Verbindungen zwischen ihnen möglichst gering sind. Die Bereiche der Partitionen sind so geformt, dass sie zusammenpassen, ohne Leerräume dazwischen zu lassen. Bei der Grundrissplanung wird also kein spezieller Bereich für die globale Verkabelung zugewiesen. Die Partition ist ein in sich geschlossenes Stück Logik, d. h. alle Verbindungen, die zur Verbindung benachbarter Partitionen erforderlich sind, sind in der Partition enthalten. Das bedeutet, dass eine Partition Drähte enthalten kann, die entstehen, Drähte, die enden und Drähte, die die Partition kreuzen. Alle diese Drähte und Verbindungen werden auf die gleiche Weise behandelt. Zu diesem Zweck werden die Verbindungen zwischen den Trennwänden durch Feldverbinder aus Transferbüchern hergestellt, die die erforderlichen Kontakte bereitstellen. Diese Übergabebücher arbeiten dann mit den zugehörigen Übergabebüchern der benachbarten Trennwände zusammen. Mit anderen Worten: Es werden formale Übertragungskreise ohne logische Funktion eingeführt.The system 100 of the present invention advantageously provides a hierarchical physical design methodology in a top-down approach. The entire logic circuit is logically partitioned into parts that can be managed by computer programs and computers. These partitions are chosen so that the connections between them are as small as possible. The areas of the partitions are shaped to fit together without leaving empty spaces in between. When planning the floor plan, no special area is allocated for global cabling. The partition is a self-contained piece of logic; H. all connections required to connect adjacent partitions are contained within the partition. This means that a partition can contain wires that originate, wires that end, and wires that cross the partition. All of these wires and connections are treated the same way. To this end, the connections between the partitions are made by field connectors made of transfer books, which provide the necessary contacts. These transfer books then work together with the associated transfer books of the adjacent partitions. In other words: formal transmission circuits without a logical function are introduced.

Ihre Pins definieren die Eingangs-/Ausgangspositionen an der Trennwandgrenze. Diese Übertragungsschaltungen arbeiten dann mit den zugehörigen Übertragungsschaltungen der benachbarten Partitionen zusammen. Die Übertragungsschaltungen fungieren als Verbinder, der die globalen Drähte zwischen benachbarten Partitionen miteinander verbindet. Bei der Verdrahtung der Trennwände werden alle Drähte gleichzeitig auf die gleiche Weise behandelt. Gemäß einer vorteilhaften Weiterbildung des erfindungsgemäßen Systems erfolgt das interne Layout der einzelnen Partition unabhängig vom Layout und Design der anderen Partitionen, nachdem die Pin-Bestimmung für jede Partition durchgeführt wurde. Dies bedeutet auch, dass in vorteilhafter Weise gemäß der vorliegenden Erfindung jede Partition, gewissermaßen als Sub-Chip, unabhängig von den anderen Partitionen und in Teilen parallel zu diesen gestaltet werden kann. Dies hat zur Folge, dass Bestückungs- und Verdrahtungsprogramme nur mit Datenmengen umgehen müssen, die mit denen heutiger Single-LSI-Chips bzw. Single-Macros vergleichbar sind. Dies geschieht unabhängig von der Größe und Komplexität des gesamten VLSI-Chips. Beim detaillierten Entwurf jeder Partition werden alle Chip- bzw. Partitionsmerkmale innerhalb ihrer Grenzen berücksichtigt, z.B. PowerGrid und Blockierungen. Nachdem alle Partitionen entworfen worden sind, werden sie zusammengesetzt, indem sie einfach an ihren Grenzen aneinandergestoßen werden. Nur am äußeren Rand des zusammengesetzten Chips, d. h. an den kompilierten Partitionen, verbinden dann äußere Stifte den Chip mit seinem Substratträger.Their pins define the entry/exit positions at the partition boundary. These transmission circuits then work together with the associated transmission circuits of the adjacent partitions. The transmission circuits act as a connector that connects the global wires between adjacent partitions. When wiring the partitions, all the wires are treated in the same way at the same time. According to an advantageous development of the system according to the invention, the internal layout of the individual partitions takes place independently of the layout and design of the other partitions, after the pin determination has been carried out for each partition. This also means that, advantageously, according to the present invention, each partition can be designed, as it were, as a sub-chip, independently of the other partitions and in parts parallel to them. As a result, assembly and wiring programs only have to deal with amounts of data that are comparable to those of today's single LSI chips or single macros. This happens regardless of the size and complexity of the overall VLSI chip. The detailed design of each partition takes into account all chip or partition characteristics within its boundaries, e.g. PowerGrid and deadlocks. After all partitions have been designed, they are assembled simply by butting them together at their boundaries. Only at the outer edge of the composite chip, i. H. on the compiled partitions, then outer pins connect the chip to its substrate carrier.

Halbleiterwafer, die zur Herstellung von Chips verwendet werden, haben in der Regel eine Schnittfuge, d. h. einen Zwischenraum zwischen den Chips. Diese Lücke muss groß genug sein, um die Trennung der Chips durch Ausreißen oder Brechen ohne Beschädigung der Chips zu ermöglichen. Eine Kerbe kann auch als Ritzlinie, Sägekerbe oder Straße bezeichnet werden. Neben dem Platz für die Trennsäge kann dieser Bereich auch eine Vielzahl von Ausrichtungs- und Messstellen enthalten. Diese Stellen können von Belichtungswerkzeugen für die Ausrichtung von einem Prozessschritt zu einem oder mehreren vorherigen Schritten verwendet werden, und sie können vom Sägewerkzeug verwendet werden, um das Sägeblatt an der Schnittfuge auszurichten. Die Messstellen werden optisch genutzt, um die von einem Prozessschritt zum vorhergehenden Schritt oder zu den vorhergehenden Schritten erzielte Überlagerung zu messen.Semiconductor wafers used to make chips typically have a kerf, i. H. a gap between the chips. This gap must be large enough to allow the chips to be separated by tearing or breaking without damaging the chips. A kerf may also be referred to as a scribe line, saw kerf, or street. In addition to space for the cut-off saw, this area can also contain a variety of alignment and measurement points. These locations can be used by exposure tools to align from a process step to one or more previous steps, and they can be used by the saw tool to align the saw blade to the kerf. The measuring points are used optically to measure the overlay achieved from a process step to the previous step or steps.

Die Ausrichtungs- und Messstellen können auch von Charakterisierungsingenieuren genutzt werden, um die kritischen Abmessungen, die Funktion und die Leistung von Bauelementen zu überwachen, die den Bauelementen des aktiven Chips ähnlich sind. Viele dieser Ausrichtungs- und Messstellen erfordern in der Regel keine enge Korrelation mit dem aktiven Chip, aber die von den Charakterisierungsingenieuren für die parametrische Bewertung verwendeten Bauelemente können eine genaue Korrelation mit dem aktiven Chip erfordern. Diese exakte Korrelation ist sehr schwierig zu realisieren. Das Design des aktiven Chips kann viele Manipulationen durchlaufen, bei denen prozessverbessernde Designänderungen vorgenommen werden. Entworfene Linien können vergrößert oder verkleinert werden, Designanker oder Serifen können hinzugefügt werden, neue Schichten können abgeleitet werden, nicht funktionale Formen können hinzugefügt werden, Teile der entworfenen Formen können entfernt werden, usw.The alignment and measurement sites can also be used by characterization engineers to monitor the critical dimensions, function, and performance of devices that are similar to the active chip devices. Many of these alignment and measurement locations do not typically require close correlation with the active chip, but the devices used by characterization engineers for parametric evaluation may require close correlation with the active chip. This exact correlation is very difficult to realize. Active chip design can go through many manipulations where process improving design changes are made. Designed lines can be enlarged or reduced, design anchors or serifs can be added, new layers can be derived, non-functional shapes can be added, parts of designed shapes can be removed, etc.

Jede Zelle im Array besteht aus horizontalen und vertikalen Kanälen und einer aktiven Schaltungskomponente an jedem Schnittpunkt der Kanäle. Jeder Kanal hat eine bestimmte Anzahl von Leiterbahnen, auf denen die Signaldrähte zwischen den jeweiligen Schaltungskomponenten zu den jeweiligen LSTs geführt werden müssen. Jede Zelle hat 4 Grenzen mit der benachbarten Zelle, und die resultierende begrenzte Gitterregion wird als Zelle bezeichnet. Eine SPE repräsentiert eine solche Zelle, wie sie im allgemeinen Schema dargestellt ist. Der wichtigste Schritt bei der Verdrahtung eines solchen Chips ist die globale Kanalzuweisung für jedes zu verdrahtende Netz. Ein Netz ist definiert als diejenigen Anschlusspunkte, die durch Drahtverbindungen elektrisch gemeinsam gemacht werden sollen. Bei der globalen Verdrahtung werden alle Netze durch die verfügbaren Kanäle geleitet, unabhängig davon, welcher spezifischen Spur ein bestimmter Draht zugewiesen werden soll. Die Hauptbeschränkung des globalen Zuweisungsprozesses ist die Kanalkapazität, d.h. die verfügbare Anzahl von Spuren an jeder Zellengrenze. Ziel ist es, alle Netze zu routen, ohne die Kanalkapazität zu verletzen, und die Gesamtleitungslänge zu minimieren. Weitere Ziele sind die Maximierung der verbleibenden Kanalkapazität, d. h. eine möglichst gleichmäßige Auslastung der Spuren, um die nachfolgenden Prozesse der exakten Spurenzuweisung zu erleichtern. Die globale Verdrahtung wird mit Hilfe eines nichtlinearen Kosten-Labyrinths durchgeführt, das später beschrieben wird. Das globale Routingverfahren findet eine kostenoptimale Route vom Quelldraht zu den Senkenpunkten innerhalb einer Umweggrenze (d) plus der kürzesten erreichbaren Distanz.Each cell in the array consists of horizontal and vertical channels and an active circuit component at each intersection of the Channels. Each channel has a certain number of traces on which the signal wires must be routed between the respective circuit components to the respective LSTs. Each cell has 4 boundaries with the neighboring cell, and the resulting bounded lattice region is called a cell. An SPE represents such a cell as shown in the general scheme. The most important step in wiring such a chip is the global channel assignment for each net to be wired. A net is defined as those connection points intended to be made electrically common by wire connections. With global wiring, all nets are routed through the available channels, regardless of which specific lane a given wire is assigned to. The main limitation of the global allocation process is the channel capacity, ie the number of lanes available at each cell boundary. The aim is to route all nets without violating the channel capacity and minimizing the total line length. Further goals are to maximize the remaining channel capacity, ie to use the tracks as evenly as possible in order to facilitate the subsequent processes of exact track allocation. The global wiring is performed using a non-linear cost maze, which will be described later. The global routing method finds a cost-optimal route from the source wire to the sink points within a detour limit (d) plus the shortest achievable distance.

Rasche Fortschritte in der Herstellungstechnologie haben es möglich gemacht, Zehntausende von elektronischen Schaltungen auf Chips unterzubringen, die nicht mehr als einen Viertelzoll pro Seite messen. Es gibt Anzeichen dafür, dass der Grad der Integration zumindest in naher Zukunft weiter steigen wird. Es bleibt jedoch eine Lücke zwischen dieser hochentwickelten Technologie und den Werkzeugen, die zur Verfügung stehen, um diese Technologie zu nutzen. Physikalischer Entwurf bezieht sich auf die Technik, mit der der Entwurf eines digitalen Systems, das durch miteinander verbundene Logikgatter dargestellt wird, in Muster für einen Satz von Masken umgewandelt wird, die für die Herstellung eines Chips oder eines Satzes von Chips für das System verwendet werden. Werkzeuge für den physikalischen Entwurf werden im Allgemeinen in Form von Softwarepaketen bereitgestellt, die die verschiedenen Schritte der Umwandlung unterstützen.Rapid advances in manufacturing technology have made it possible to fit tens of thousands of electronic circuits on chips measuring no more than a quarter inch per side. There are indications that the level of integration will continue to increase, at least in the near future. However, there remains a gap between this sophisticated technology and the tools available to take advantage of this technology. Physical design refers to the technique by which a digital system's design, represented by interconnected logic gates, is converted into patterns for a set of masks used to fabricate a chip or set of chips for the system . Physical design tools are generally provided in the form of software packages that support the various steps of the conversion.

Die drei gemeinsamen, aber keineswegs unverbundenen Schritte sind Partitionierung, Platzierung und Verdrahtung. Unter Partitionierung versteht man den Prozess, bei dem Teile eines großen Entwurfs verschiedenen Chips zugewiesen werden, wenn ein einzelner Chip nicht den gesamten Entwurf enthalten kann. Bei der Platzierung werden die Komponenten eines Chips, in der Regel Gates, auf dem Chip platziert. Oft sind die Positionen, an denen diese Komponenten platziert werden können, eine Reihe von genau definierten Schlitzen, die durch Bereiche voneinander getrennt sind, durch die Drähte oder Metallsegmente verlaufen können, um die Komponenten miteinander zu verbinden.The three common but by no means unrelated steps are partitioning, placement, and wiring. Partitioning is the process of assigning portions of a large design to different chips when a single chip cannot contain the entire design. Placement is the process of placing a chip's components, typically gates, on the chip. Often the locations where these components can be placed are a series of well-defined slots separated by areas through which wires or metal segments can pass to connect the components together.

Man betrachte eine Reihe von Computern, die in einer 2-dimensionalen Matrix der Größe n×n angeordnet sind. Jeder Computer besteht aus einem Prozessor, einer Speichereinheit, einem Anschluss zu jedem seiner benachbarten Computer (vier, außer an den Grenzen) und einer Verbindung zu einem zusätzlichen Computer, der als Controller 110 bezeichnet wird. Über X- und Y-Auswahlleitungen kann der Controller 110 auf jeden gewünschten Knoten oder eine Teilmenge von Knoten in der Anordnung zugreifen. Für die Verdrahtungsfunktion kann beispielsweise ein 8×8-Array von Computern verwendet werden, von denen jeder aus einem handelsüblichen 8-Bit-Mikroprozessor, 2 Kilobyte Speicher und einer Hilfsschaltung besteht, die die Kommunikation zwischen den Nachbarn und dem Controller 110 ermöglicht. Der Controller 110 ist ebenfalls ein 8-Bit-Mikroprozessor mit 48 Kilobyte Speicher, Floppy- und Festplatteneinheiten, Drucker, Terminal und einer Verbindung zum Host-Computersystem der Einrichtung. Im Folgenden werden die einzelnen Schritte der Verdrahtung beschrieben. Ein 8×8-Array kann auch programmiert werden, um einen Chip mit mehr als 64 Komponenten zu verdrahten.Consider a series of computers arranged in a 2-dimensional matrix of size n×n. Each computer consists of a processor, a memory unit, a connection to each of its neighboring computers (four, except at the borders) and a connection to an additional computer, called the controller 110. Through X and Y select lines, the controller 110 can access any desired node or subset of nodes in the array. For example, an 8×8 array of computers, each consisting of an off-the-shelf 8-bit microprocessor, 2 kilobytes of memory, and support circuitry that enables communication between the neighbors and the controller 110, can be used for the wiring function. The controller 110 is also an 8-bit microprocessor with 48 kilobytes of memory, floppy and hard disk units, printer, terminal and a connection to the facility's host computer system. The individual wiring steps are described below. An 8×8 array can also be programmed to wire up a chip with more than 64 components.

Globale Verdrahtung ist die Bezeichnung für die Phase der Verdrahtung, in der die Drähte den Kanälen im Chip zugewiesen werden, ohne dass die Spuren innerhalb des Kanals speziell zugewiesen werden. Bevor mit der globalen Verdrahtung begonnen wird, berechnet jeder Knoten die Gesamtzahl der in jeder der vier Richtungen verfügbaren Spuren. Außerdem erhält er eine Liste der Netze, die einen Anschluss in diesem Knoten haben. (Ein Netz ist eine Gruppe von zwei oder mehr Klemmen, die miteinander verbunden werden müssen.)

  1. (a) Für jedes zu verdrahtende Netz, unabhängig davon, ob es einen Endknoten in diesem Knoten hat oder nicht, berechnet ein Knoten die Wahrscheinlichkeit, dass er in jeder Richtung Mitglied einer Verbindung in diesem Netz ist, und fügt der Stauschätzung in dieser Richtung die entsprechenden Kosten hinzu. Die Stauschätzung ist eine abnehmende Funktion der Entfernung des Knotens von einem Endknoten des Netzes.
  2. (b) Nachdem Schritt (a) für alle Netze abgeschlossen ist, werden die unten beschriebenen Schritte (c) bis (g) für das erste Netz durchgeführt und dann Netz für Netz wiederholt.
  3. (c) Für ein bestimmtes Netz subtrahiert ein Knoten seinen eigenen Beitrag zur Stauschätzung für dieses Netz von der gesamten verbleibenden Stauschätzung. Er tut dies für jeden der vier Anschlüsse der Reihe nach.
  4. (d) Auf der Grundlage der Anzahl der ungenutzten Gleise und der aktualisierten Stauschätzung an jedem Hafen berechnet der Knoten die Hafenkosten für jeden der vier Häfen. Die Kosten sind ein Hinweis auf die Strafe für die Belegung eines Gleises in dieser Richtung. So ist die Strafe für die Durchfahrt durch einen Hafen mit nur einem verbleibenden Gleis höher als für einen Hafen mit vielen verbleibenden Gleisen. Diese Strafe allein kann nicht als Hafenkosten dienen, da sie einen Hafen mit wenigen verbleibenden Gleisen auch dann benachteiligt, wenn es nicht viele verbleibende Netze gibt, die um die Nutzung dieses Hafens konkurrieren. Der Bedarf an unverkabelten Netzen wird in der Stauschätzung am Hafen dargestellt. Daher eignet sich eine Funktion der verbleibenden Kapazität zusammen mit der Schätzung der verbleibenden Überlastung besser als Hafenkostenfunktion.
  5. (e) Nun folgt die Phase der Vorwärtsausbreitung. Einer der Endknoten des Netzes wird als Quelle und alle anderen als Senken bezeichnet. Die Quelle sendet in jeder der vier Richtungen die Portkosten für den Port in dieser Richtung an ihren Nachbarn in dieser Richtung. Gleichzeitig senden alle anderen Knoten einen willkürlich großen Wert an ihre Nachbarn.
Global wiring is the term for the phase of wiring in which the wires are assigned to the channels in the chip without specifically assigning the traces within the channel. Before beginning global wiring, each node calculates the total number of lanes available in each of the four directions. It also receives a list of the networks that have a connection in this node. (A net is a group of two or more terminals that must be connected together.)
  1. (a) For each net to be wired, whether or not it has a terminal node in that node, a node calculates the probability in each direction that it is a member of a link in that net, and adds to the congestion estimate in that direction the corresponding costs. The congestion estimate is a decreasing function of the node's distance from an end node of the network.
  2. (b) After step (a) is completed for all nets, steps (c) through (g) described below are performed for the first net and then repeated net by net.
  3. (c) For a given network, a node subtracts its own contribution to the congestion estimate for that network from the total remaining congestion estimate. It does this for each of the four ports in turn.
  4. (d) Based on the number of idle tracks and the updated congestion estimate at each port, the node calculates the port cost for each of the four ports. The cost is an indication of the penalty for occupying a track in that direction. For example, the penalty for transiting a port with only one remaining track is higher than for a port with many remaining tracks. This penalty alone cannot serve as a port cost as it penalizes a port with few remaining tracks even if there are not many remaining networks competing for use of that port. The need for wireless networks is reflected in the congestion estimate at the port. Therefore, a remaining capacity function together with the remaining congestion estimate is more appropriate as a port cost function.
  5. (e) Now comes the forward propagation phase. One of the end nodes of the network is called the source and all others are called sinks. In each of the four directions, the source sends the port cost for the port in that direction to its neighbor in that direction. At the same time, all other nodes send an arbitrarily large value to their neighbors.

Bei jedem folgenden Zeitschritt nimmt jeder Knoten die an seinen Anschlüssen eingehenden Werte auf und bestimmt das Minimum dieser Werte. Es wird ein Zeiger auf die Richtung gesetzt, aus der dieses Minimum stammt. Für jeden seiner Ports addiert der Knoten die in (d) berechneten Portkosten zu dem Minimalwert und sendet den geänderten Wert an den Nachbarn in dieser Richtung. Sobald der Knoten einen sinnvollen Wert gesendet hat, d. h. einen Wert, der nicht der oben beschriebene willkürlich große Wert ist, sendet er diesen willkürlich großen Wert in den folgenden Zeitschritten weiter.

  • (f) Wenn eine Senke einen aussagekräftigen Wert erhält, stoppt sie den Vorwärtsausbreitungsprozess, indem sie den Controller 110 informiert. Da es möglich ist, dass mehr als eine Senke zur gleichen Zeit erreicht wird, bestimmt die Aufsichtsbehörde entweder durch Abfrage der Zellen oder durch ein anderes Verfahren die Senke, die den geringsten Wert aufweist. Nun beginnt die Rückverfolgung. Die Senke fordert den Nachbarn in der Richtung seines gespeicherten Zeigers auf. In jedem folgenden Zeitschritt fordert ein Knoten, der gerade von seinem Nachbarn aufgefordert wurde, einen anderen in der Richtung auf, die er während der Vorwärtsausbreitungsphase gespeichert hat. Dieser Prozess wird fortgesetzt, bis die Quelle erreicht ist. Jeder aufgeforderte Knoten verringert die Kanalkapazität in den entsprechenden Anschlüssen und registriert die Ein- und Austrittspunkte in diesem Netz.
  • (g) Alle Knoten, die Eintritts-/Austrittspunkte für das aktuelle Netz aufgezeichnet haben, werden zu Quellen für die nächste Vorwärtsausbreitung. Alle noch zu verbindenden Netzendpunkte fungieren als Senken. Der Prozess für ein Netz endet, wenn keine Senken für ein Netz übrigbleiben. Die Erfindung bezieht sich auf eine Globalverdrahtung, bei der Verbindungsleitungen von Anfang an in den Entwurf der verschiedenen Einzelmatrizen einbezogen und dort wie Schaltungen in diesem Bereich behandelt werden.
At each subsequent time step, each node takes the values coming in at its connections and determines the minimum of these values. A pointer is set to the direction from which this minimum originated. For each of its ports, the node adds the port cost calculated in (d) to the minimum value and sends the changed value to the neighbor in that direction. As soon as the node has sent a meaningful value, ie a value that is not the arbitrarily large value described above, it retransmits this arbitrarily large value in the following time steps.
  • (f) When a sink gets a meaningful value, it stops the forward propagation process by informing the controller 110. Because it is possible that more than one dip may be reached at the same time, the regulator determines the dip that has the lowest value, either by polling the cells or by some other method. Now the tracing begins. The sink prompts the neighbor in the direction of its stored pointer. At each subsequent time step, a node that has just been prompted by its neighbor prompts another in the direction it memorized during the forward propagation phase. This process continues until the source is reached. Each requested node reduces the channel capacity in the corresponding ports and registers the entry and exit points in this network.
  • (g) All nodes that have recorded entry/exit points for the current network become sources for the next forward propagation. All network end points that are still to be connected act as sinks. The process for a net ends when no sinks remain for a net. The invention relates to global wiring in which connecting lines are included in the design of the various individual matrices from the start and are treated there like circuits in this area.

Das System 100 ist in erster Linie auf die Verbesserung der Testbarkeit von integrierten Schaltungen im großen Maßstab ausgerichtet. Alle Komponenten des Systems arbeiten zusammen, um eine verbesserte Leistung, erhöhte Flexibilität und zusätzliche Funktionen zu bieten. Dazu gehören ein Ringoszillator, der an der Peripherie des VLSI-Chips verteilt ist, um die Leistungsmerkmale zu messen, ein Einheits-E/A-Zellendesign, das mit jedem Signalpin verbunden ist und sich an der Peripherie befindet, aus dem die seriell verbundenen Eingangsregister (IR) und Ausgangsregister (OR) (in dieser Reihenfolge) aufgebaut sind; zusätzliche Register-Flipflops (von denen einige „Dummy“- oder „Filler“-Flipflops sind, um die Länge eines Registers zu erhöhen, und von denen einige Steuerregister-Flipflops sind) sind in einem seriellen Pfad vorgesehen, das Eingangsregister und das Ausgangsregister sind seriell verbunden und bilden eine Boundary-Scan-Teststruktur, und der Takt, der an das IR und das OR geliefert wird, ist vom Takt des Steuerregisters entkoppelt.The system 100 is primarily aimed at improving the testability of large scale integrated circuits. All components of the system work together to provide improved performance, increased flexibility and additional features. These include a ring oscillator distributed at the periphery of the VLSI chip to measure performance characteristics, a unit I/O cell design connected to each signal pin and located at the periphery from which the serially connected input registers (IR) and output register (OR) (in that order); additional register flip-flops (some of which are "dummy" or "filler" flip-flops to increase the length of a register and some of which are control register flip-flops) are provided in a serial path that is input register and output register connected in series forming a boundary scan test structure and the clock supplied to the IR and OR is decoupled from the control register clock.

Test Strobe (TST) und Test Clock Enable (TCE) Eingänge zum Chip sind auch in verriegelter und früher Form für eine erweiterte Funktionalität vorgesehen. Die Messung des Taktversatzes kann innerhalb des vom Benutzer anpassbaren zentralen Logikbereichs (auch Kernlogikbereich genannt) unter Verwendung eines Taktüberwachungspins vorgenommen werden. Ein optimiertes Schema zur Erzeugung von Operanden für das Eingangsregister wird beschrieben. Ein neues Schema zur Erzeugung von Prüfsummen für das Ausgangsregister wird erläutert. Die Verwendung eines Steuerregisters zur Steuerung von On-Chip-Test- und Wartungsfunktionen wird ebenfalls beschrieben.Test Strobe (TST) and Test Clock Enable (TCE) inputs to the chip are also provided in latched and early form for extended functionality. The clock skew measurement can be made within the user-configurable central logic area (also called the core logic area) using a clock monitor pin. An optimized scheme for generating operands for the input register is described. A new scheme for generating checksums for the output register is explained. The use of a control register to control on-chip test and maintenance functions is also described.

Diese Anwendung beschreibt eine periphere Zellstruktur für VLSI-Chips, die die Verwendung von Standardzellen erfordert, die sowohl Eingangs- als auch Ausgangsmöglichkeiten haben und mit fast allen signalführenden Pins verbunden sind. Die Funktion der Zellen kann durch Steuersignale, die von einem Steuerregister stammen können, geändert werden (auf Eingang oder Ausgang und darauf, woher die Dateneingangssignale stammen). Das Takteingangssignal wird in zwei unabhängige Signale aufgeteilt, um die Eingangs- oder Ausgangsregister selektiv zu deaktivieren, so dass das Steuerregister geändert werden kann, ohne den Inhalt der beiden anderen Register zu beeinflussen. Ein Frühsignal dient auch zur Vorbereitung von Modusänderungen.This application describes a peripheral cell structure for VLSI chips using the requires standard cells that have both input and output capabilities and are connected to almost all signal-carrying pins. The function of the cells can be changed (to input or output and where the data input signals come from) by control signals which can come from a control register. The clock input signal is split into two independent signals to selectively disable the input or output registers, allowing the control register to be changed without affecting the contents of the other two registers. An early signal is also used to prepare for mode changes.

Die Gesamtlänge der Verdrahtung ist zu minimieren und jede Häufung zu vermeiden. Es wird eine gleichmäßige Verteilung der Verdrahtungspunkte und eine ausgewogene Mitten- und Randdichte angestrebt. Darüber hinaus muss Platz für Busstrukturen sowie für Durchführungen, d.h. kreuzende Leitungen, vorgesehen werden. Auch die kritische Netzfähigkeit muss beachtet werden.The overall length of the wiring must be minimized and any accumulation avoided. An even distribution of the wiring points and a balanced center and edge density are aimed for. In addition, space must be provided for bus structures and for bushings, i.e. crossing lines. The critical network capability must also be taken into account.

In einer Ausführungsform werden die zusammengeführten Formdaten einer umfassenden Endkontrolle unterzogen. Damit ist der physikalische Entwurfsprozess abgeschlossen. Bei dieser Prüfung werden die Partitionsdaten mit den Gesamtbilddaten abgeglichen. Darüber hinaus werden insbesondere die Verbindungsdaten für Signale, die Partitionsgrenzen überschreiten, auf Vollständigkeit und die Partitionsgrenzen auf Überlappungskonflikte geprüft.In one embodiment, the merged shape data is subjected to a comprehensive final inspection. This completes the physical design process. During this check, the partition data is compared with the overall image data. In addition, the connection data for signals that cross partition boundaries are checked for completeness and the partition boundaries for overlapping conflicts.

Das System 100 gemäß der vorliegenden Erfindung ist sehr flexibel in Bezug auf Logik, RAM, ROM und andere Makros. Es beschreibt ein Master-Image. Makros jeder Größe können an jeder beliebigen Stelle des Chips platziert werden. Das System 100 wurde mit einer Technologie realisiert, die für das Master-Image eine 1,0 µm CMOS N-Well-Struktur mit drei Metallschichten verwendet. Zwei Schichten werden für die Verdrahtung verwendet und die dritte Schicht enthält eine Stromverteilung und eine 1/0-Umverteilung für die Pad-Anordnung im zentralen Bereich.The system 100 according to the present invention is very flexible in terms of logic, RAM, ROM and other macros. It describes a master image. Macros of any size can be placed anywhere on the chip. The System 100 was realized with a technology that uses a 1.0 µm CMOS N-well structure with three metal layers for the master image. Two layers are used for wiring and the third layer contains power distribution and 1/0 redistribution for the pad layout in the central area.

Das Masterbild ist ein Array von Zellpositionen ohne Gates oder Transistoren. Das virtuelle Zellgitter ist in ein feineres Gitter unterteilt, das die vertikalen und horizontalen Verdrahtungskanäle markiert. Die Zellengröße könnte beispielsweise 13,8 µm×89 µm betragen. Diese Basiszelle enthält höchstens drei Transistorpaare und bietet 25 Verdrahtungskanäle auf der ersten Ebene und drei Kanäle auf dem Metall der zweiten Ebene.Zwei Kanäle auf der 1.Ebene können durch Stromleitungen blockiert sein.The master image is an array of cell positions with no gates or transistors. The virtual cell grid is divided into a finer grid that marks the vertical and horizontal wiring channels. For example, the cell size could be 13.8 µm×89 µm. This basic cell contains at most three pairs of transistors and provides 25 wiring channels on the first level and three channels on the second level metal. Two channels on the 1st level may be blocked by power lines.

Um alle durch eine beliebige Verdrahtungs- und Durchgangskombination auferlegten Grundregelbeschränkungen zu erfüllen, müssen die Schaltungslayouts mit dem Verdrahtungsgitter harmonieren. Dies wird dadurch erreicht, dass die Elemente der Teilschaltungen auf demselben Gitter platziert werden und die Teile mit Standarddrähten aus Polysilizium, 1. und 2. ein Logikschaltkreis blockiert 3-5 Kanäle auf dem Metall der 1. Ebene durch seine internen Verbindungen. Während der Personalisierung werden die logischen Schaltungen, die durch Bücher dargestellt werden, und die größeren Makros, die kundenspezifisch gestaltet werden können, vom automatischen Designsystem platziert und verdrahtet. Ein einzelner Schaltkreis, der durch ein Buch dargestellt wird, kann die Fläche einer oder mehrerer Zellen einnehmen. Makros wie RAMs sind kundenspezifisch entworfene Teile mit einem optimierten Layout.In order to meet all of the fundamental rule constraints imposed by any wiring and via combination, the circuit layouts must be in harmony with the wiring grid. This is achieved by placing the elements of the sub-circuits on the same grid and connecting the parts with standard polysilicon wires, 1st and 2nd a logic circuit blocks 3-5 channels on the 1st level metal through its internal connections. During personalization, the logic circuits, represented by books, and the larger macros, which can be customized, are placed and wired by the automatic design system. A single circuit represented by a book may occupy the area of one or more cells. Macros, like RAMs, are custom designed parts with an optimized layout.

Das erfindungsgemäße Masterbild eignet sich für die durch die Bestückungsstrategie erzielte Schaltungsdepopulation. Während der Platzierungsverfahren werden die Chipbereiche identifiziert, die eine Überlastung der globalen Verbindungen aufweisen. Sie werden entvölkert, indem die Schaltungen an die Ränder dieser Bereiche verschoben werden. Die leeren Zellen in der Mitte ergeben die benötigten Routing-Kanäle. Auf diese Weise wird eine gleichmäßige und damit optimale Nutzung der Leitungskanäle erreicht. Das bedeutet auch, dass absichtlich ca. 30% mehr Zellen angeboten werden, als tatsächlich genutzt werden können, um die Entvölkerung zu ermöglichen.The master image according to the invention is suitable for the circuit depopulation achieved by the placement strategy. During the placement procedures, the chip areas that exhibit global interconnect congestion are identified. They are depopulated by moving circuits to the edges of these areas. The empty cells in the middle give the required routing channels. In this way, a uniform and therefore optimal use of the cable ducts is achieved. This also means that about 30% more cells are intentionally offered than can actually be used to enable depopulation.

Die Stromschienen sind auf speziellen, etwas breiteren Kanälen verteilt, die ein niedriginduktives Gitter auf dem Metall der 1. und 2. sie sind häufig mit den Metallschienen der 3. Ebene verbunden. Der Versorgungsstrom fließt hauptsächlich durch diese breiten und daher niederohmigen und niederinduktiven Verteilungsnetze auf dem Metall der dritten Ebene und nicht durch das erste und zweite Metall. Die Stromschienen auf dem ersten und zweiten Metall können überall ausgeschnitten werden, um Makros beliebiger Größe einzubetten. Die Makros verfügen über eine eigene lokale Stromverteilung, die direkt mit dem Metall der dritten Ebene verbunden ist.The power rails are distributed on special, slightly wider channels that have a low inductance grid on the 1st and 2nd level metal. They are often connected to the 3rd level metal rails. The supply current flows mainly through these wide and therefore low-resistance and low-inductance distribution networks on the third-level metal and not through the first and second metals. The power rails on the first and second metal can be cut out anywhere to embed macros of any size. The macros have their own local power distribution that is connected directly to the third level metal.

Das erfindungsgemäße System 100 für das physikalische Design der Master-Images für VLSI-Chips kombiniert die Vorteile von Gate-Arrays und Full Custom Designs. Dieses System 100 ist sehr flexibel für die Integration von Logikbüchern, RAM, ROS und anderen Makros. Verschiedene Bereiche des Chips können parallel entworfen werden, wodurch sich die erforderliche Rechenzeit und der Speicherbedarf des Computers verringern. Da die Verdrahtungsverbindungen zwischen den verschiedenen Bereichen oder Partitionen des Chips im Design der einzelnen Partitionen enthalten sind, benötigt der resultierende Chip keinen zusätzlichen Platz für die globale Verdrahtung. So entsteht ein Chip mit nahtlos angeschlossenen und separat entworfenen Bereichen. Design-Änderungen in den einzelnen Partitionen können einfach und ohne Auswirkungen auf den Rest des Designs durchgeführt werden.The system 100 according to the invention for the physical design of the master images for VLSI chips combines the advantages of gate arrays and full custom designs. This system 100 is very flexible for integrating logic books, RAM, ROS and other macros. Different areas of the chip can be designed in parallel, reducing the amount of computation time and memory required by the computer. Since the wiring connections between the different Since areas or partitions of the chip are included in the design of each partition, the resulting chip does not require additional space for global wiring. This creates a chip with seamlessly connected and separately designed areas. Design changes in each partition can be made easily and without affecting the rest of the design.

Das entwickelte System 100 erleichtert den Entwurf eines physikalischen, intelligenten VLSI-Chips und die Entwicklung des Entwurfs eines groß angelegten Integrationschips (VSLI), um ein Master-Image mit hoher Dichte zu implementieren, das Logik (AND, OR, NOR, X-OR, X-NOR, NOT) und E-ROM, RAMs, EPROM, EEPROM enthält. Bei der Erfindung handelt es sich auch um eine hierarchische Top-Down-Mapping-Entwurfsmethodik, und die auf dem Chip zu enthaltende Schaltung ist logisch in eine Matrix unterteilt, die von den intelligenten Entwurfssystemen und einzigartigen Programmen verwaltet werden kann. Das System 100 wird verwendet, um eine andere Matrix parallel zu entwerfen, und es wird ein Grundriss erstellt, der den verschiedenen Partitionen eine Form gibt, die so beschaffen ist, dass sie zusammenpassen, ohne dass ein Zwischenraum zwischen den verschiedenen einzelnen Matrixpartitionen bleibt. Mit dem System 100 wird ein Chip entwickelt, der keinen zusätzlichen Platz für die globale Verdrahtung benötigt, und die Partitionen sind unmittelbar miteinander verbunden, und das beschriebene Masterbild ist in Bezug auf Logik und Mikrochip sehr flexibel. Das System 100 verwendet dieselben Entwurfsmanipulationsprozesse sowohl für den Chipentwurf als auch für die gleichzeitige Erzeugung von Chipentwürfen und bietet einen konsistenten, genauen und wiederholbaren Prozess sowie eine verbesserte Qualität der Wafertestergebnisse, da die Daten im intelligenten System mit den Daten im Chip übereinstimmen. Das System 100 entwickelt einen physikalischen Entwurf von VLSI-Schaltungen (Very Large Scale Integrated), insbesondere die Verbindung und die Leitungsführung zwischen den auf einem Chip gebildeten Schaltungen und die Festlegung der Leitungsführung in einer VLSI-Schaltung, die aus Zellen besteht, wobei die Zellen aus elektronischen Bauelementen zusammengesetzt sind, die als logische Gatter funktionieren, und Gruppen von Zellen miteinander verbunden werden können, um als Flip-Flops, Schieberegister und dergleichen zu funktionieren. Das System 100 umfasst einen Überwachungscontroller 110, der mit n, wobei n eine ganze Zahl ist, identischen Multiport-Prozessoren kommuniziert, wobei ein Prozessor jeder Zelle gewidmet ist, um die Leitungsführungen zwischen den jeweiligen Zellen zu bestimmen, und jeder Prozessor kommuniziert gleichzeitig mit seinen vier angrenzenden Nachbarprozessoren, um die Kanalführungen von einem Punkt zum nächsten in der Anordnung von Zellen zu bestimmen.The developed system 100 facilitates the design of a physical intelligent VLSI chip and the development of the design of a large scale integration chip (VSLI) to implement a high-density master image that includes logic (AND, OR, NOR, X-OR , X-NOR, NOT) and E-ROM, RAMs, EPROM, EEPROM. The invention is also a top-down hierarchical mapping design methodology and the circuitry to be included on the chip is logically divided into a matrix that can be managed by the intelligent design systems and unique programs. The system 100 is used to design another matrix in parallel and a floor plan is created giving the various partitions a shape designed to fit together without leaving a gap between the various individual matrix partitions. The system 100 develops a chip that does not require additional space for global wiring and the partitions are directly connected and the master image described is very flexible in terms of logic and microchip. The system 100 uses the same design manipulation processes for both chip design and concurrent chip design generation, and provides a consistent, accurate, and repeatable process and improved quality of wafer test results because the data in the intelligent system is consistent with the data on the chip. The system 100 develops a physical layout of Very Large Scale Integrated (VLSI) circuits, particularly the connection and routing between the circuits formed on a chip and the definition of the routing in a VLSI circuit composed of cells, the cells are composed of electronic components that function as logic gates and groups of cells can be connected together to function as flip-flops, shift registers and the like. The system 100 includes a supervisory controller 110 communicating with n, where n is an integer, identical multiport processors, one processor dedicated to each cell to determine the routings between the respective cells, and each processor communicating simultaneously with its four adjacent neighbor processors to determine channel routings from one point to the next in the array of cells.

Die in dieser Spezifikation beschriebenen Überwachungssteuerungen sind als Geräte bezeichnet worden. Das Überwachungssteuergerät kann in programmierbaren Hardware-Geräten wie Prozessoren, digitalen Signalprozessoren, Zentraleinheiten, feldprogrammierbaren Gate-Arrays, programmierbaren Array-Logikbausteinen, programmierbaren Logikbausteinen, Cloud-Verarbeitungssystemen oder Ähnlichem implementiert sein. Die Geräte können auch in Software für die Ausführung durch verschiedene Arten von Prozessoren implementiert werden. Ein identifiziertes Gerät kann ausführbaren Code enthalten und beispielsweise einen oder mehrere physische oder logische Blöcke von Computeranweisungen umfassen, die beispielsweise als Objekt, Prozedur, Funktion oder anderes Konstrukt organisiert sein können. Die ausführbare Datei eines identifizierten Geräts muss jedoch nicht physisch an einem Ort liegen, sondern kann aus verschiedenen, an unterschiedlichen Orten gespeicherten Anweisungen bestehen, die, wenn sie logisch zusammengefügt werden, das Gerät bilden und den angegebenen Zweck des Geräts erfüllen.The supervisory controls described in this specification have been referred to as devices. The supervisory controller may be implemented in programmable hardware devices such as processors, digital signal processors, central processing units, field programmable gate arrays, array programmable logic devices, programmable logic devices, cloud processing systems, or the like. The devices can also be implemented in software for execution by various types of processors. An identified device may contain executable code and may include, for example, one or more physical or logical blocks of computer instructions, which may be organized as an object, procedure, function, or other construct, for example. However, the executable file of an identified device does not have to reside physically in one location, but may consist of various instructions stored in different locations which, when logically assembled, form the device and fulfill the stated purpose of the device.

Der ausführbare Code eines Geräts oder Moduls kann ein einzelner Befehl oder viele Befehle sein und kann sogar über mehrere verschiedene Codesegmente, verschiedene Anwendungen und mehrere Speichergeräte verteilt sein. In ähnlicher Weise können Betriebsdaten innerhalb des Geräts identifiziert und dargestellt werden, und sie können in jeder geeigneten Form vorliegen und in jeder geeigneten Art von Datenstruktur organisiert sein. Die Betriebsdaten können als ein einziger Datensatz gesammelt werden oder über verschiedene Orte, einschließlich verschiedener Speichergeräte, verteilt sein und können zumindest teilweise als elektronische Signale in einem System oder Netzwerk vorliegen.The executable code of a device or module can be a single instruction or many instructions, and can even be spread across several different code segments, different applications, and multiple storage devices. Similarly, operational data may be identified and represented within the device and may be in any suitable form and organized in any suitable type of data structure. The operational data may be collected as a single set of data or distributed across various locations, including various storage devices, and may exist, at least in part, as electronic signals in a system or network.

In Übereinstimmung mit den beispielhaften Ausführungsformen kann die offengelegte grafische Benutzeroberfläche auf viele beispielhafte Arten ausgeführt werden, z. B. als eine Anwendung, die sich im Speicher eines Geräts befindet, oder als eine gehostete Anwendung, die auf einem Server ausgeführt wird und mit der Geräteanwendung oder dem Browser über eine Reihe von Standardprotokollen kommuniziert, wie z. B. TCP/IP, HTTP, XML, SOAP, REST, JSON und andere ausreichende Protokolle. Die offengelegten Computerprogramme können in beispielhaften Programmiersprachen geschrieben werden, die vom Speicher auf dem Gerät oder von einem gehosteten Server ausgeführt werden, wie BASIC, COBOL, C, C++, Java, Pascal oder Skriptsprachen wie JavaScript, Python, Ruby, PHP, Perl oder andere ausreichende Programmiersprachen.Consistent with the example embodiments, the disclosed graphical user interface may be implemented in many example ways, e.g. as an application that resides in a device's memory, or as a hosted application that runs on a server and communicates with the device application or browser using a variety of standard protocols, such as B. TCP/IP, HTTP, XML, SOAP, REST, JSON and other sufficient protocols. The disclosed computer programs may be written in example programming languages executed from memory on the device or from a hosted server, such as BASIC, COBOL, C, C++, Java, Pascal, or scripting languages such as JavaScript, Python, Ruby, PHP, Perl, or others sufficient programming languages.

Einige der offengelegten Ausführungsformen umfassen oder beinhalten die Datenübertragung über ein Netzwerk, z. B. die Übermittlung verschiedener Eingaben oder Dateien über das Netzwerk. Das Netzwerk kann beispielsweise das Internet, Wide Area Networks (WANs), Local Area Networks (LANs), analoge oder digitale drahtgebundene und drahtlose Telefonnetzwerke (z. B. PSTN, Integrated Services Digital Network (ISDN), ein zellulares Netzwerk und Digital Subscriber Line (xDSL)), Radio, Fernsehen, Kabel, Satellit und/oder andere Übertragungs- oder Tunnelmechanismen zur Datenübertragung umfassen. Das Netz kann mehrere Netze oder Teilnetze umfassen, von denen jedes z. B. einen drahtgebundenen oder drahtlosen Datenpfad enthalten kann. Das Netz kann ein leitungsvermitteltes Sprachnetz, ein paketvermitteltes Datennetz oder ein beliebiges anderes Netz für die Übertragung elektronischer Kommunikation umfassen. Das Netzwerk kann beispielsweise Netzwerke umfassen, die auf dem Internet-Protokoll (IP) oder dem asynchronen Übertragungsmodus (ATM) basieren, und es kann Sprache unterstützen, indem es z. B. VoIP, Voice-over-ATM oder andere vergleichbare Protokolle für die Sprachdatenkommunikation verwendet. In einer Implementierung umfasst das Netzwerk ein zellulares Telefonnetz, das so konfiguriert ist, dass es den Austausch von Text- oder SMS-Nachrichten ermöglicht.Some of the disclosed embodiments include or involve data transmission over a network, e.g. B. the transmission of various inputs or files over the network. The network can be, for example, the Internet, wide area networks (WANs), local area networks (LANs), analog or digital wired and wireless telephone networks (e.g. PSTN, Integrated Services Digital Network (ISDN), a cellular network and digital subscriber line (xDSL)), radio, television, cable, satellite and/or other transmission or tunneling mechanisms for data transmission. The network may comprise several networks or sub-networks, each of which e.g. B. may include a wired or wireless data path. The network may comprise a circuit switched voice network, a packet switched data network or any other network for the transmission of electronic communications. The network may for example comprise Internet Protocol (IP) or Asynchronous Transfer Mode (ATM) based networks and may support voice e.g. B. VoIP, Voice-over-ATM or other comparable protocols for voice data communication. In one implementation, the network includes a cellular telephone network configured to allow the exchange of text or SMS messages.

Beispiele für ein Netzwerk sind unter anderem ein Personal Area Network (PAN), ein Storage Area Network (SAN), ein Home Area Network (HAN), ein Campus Area Network (CAN), ein Local Area Network (LAN), ein Wide Area Network (WAN), ein Metropolitan Area Network (MAN), ein Virtual Private Network (VPN), ein Enterprise Private Network (EPN), das Internet, ein Global Area Network (GAN) und so weiter.Examples of a network include a personal area network (PAN), a storage area network (SAN), a home area network (HAN), a campus area network (CAN), a local area network (LAN), a wide area Network (WAN), a Metropolitan Area Network (MAN), a Virtual Private Network (VPN), an Enterprise Private Network (EPN), the Internet, a Global Area Network (GAN), and so on.

Die Figuren und die vorangehende Beschreibung geben Beispiele für Ausführungsformen. Der Fachmann wird verstehen, dass eines oder mehrere der beschriebenen Elemente durchaus zu einem einzigen Funktionselement kombiniert werden können. Alternativ dazu können bestimmte Elemente in mehrere Funktionselemente aufgeteilt werden. Elemente aus einer Ausführungsform können einer anderen Ausführungsform hinzugefügt werden. So kann beispielsweise die Reihenfolge der hier beschriebenen Prozesse geändert werden und ist nicht auf die hier beschriebene Weise beschränkt. Darüber hinaus müssen die Aktionen eines Flussdiagramms nicht in der gezeigten Reihenfolge ausgeführt werden; auch müssen nicht unbedingt alle Aktionen durchgeführt werden. Auch können die Handlungen, die nicht von anderen Handlungen abhängig sind, parallel zu den anderen Handlungen ausgeführt werden. Der Umfang der Ausführungsformen ist durch diese spezifischen Beispiele keineswegs begrenzt. Zahlreiche Variationen sind möglich, unabhängig davon, ob sie in der Beschreibung explizit aufgeführt sind oder nicht, wie z. B. Unterschiede in der Struktur, den Abmessungen und der Verwendung von Materialien. Der Umfang der Ausführungsformen ist mindestens so groß wie in den folgenden Ansprüchen angegeben.The figures and the preceding description give examples of embodiments. Those skilled in the art will understand that one or more of the elements described may well be combined into a single functional element. Alternatively, certain elements can be broken down into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, the order of the processes described herein may be changed and is not limited to the manner described herein. Additionally, the actions of a flowchart need not be performed in the order shown; Also, not all actions have to be carried out. Also, the actions that are not dependent on other actions can be performed in parallel with the other actions. The scope of the embodiments is in no way limited by these specific examples. Numerous variations are possible, regardless of whether they are explicitly mentioned in the description or not, e.g. B. Differences in structure, dimensions and use of materials. The scope of the embodiments is at least as broad as indicated in the following claims.

Vorteile, andere Vorzüge und Problemlösungen wurden oben im Hinblick auf bestimmte Ausführungsformen beschrieben. Die Vorteile, Vorzüge, Problemlösungen und Komponenten, die dazu führen können, dass ein Vorteil, ein Nutzen oder eine Lösung auftritt oder ausgeprägter wird, sind jedoch nicht als kritisches, erforderliches oder wesentliches Merkmal oder Komponente eines oder aller Ansprüche zu verstehen.Advantages, other benefits, and solutions to problems have been described above with respect to particular embodiments. However, the benefits, advantages, problem solutions, and components that can cause an advantage, benefit, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature or component of any or all claims.

BezugszeichenlisteReference List

100100
Ein System zur Entwicklung eines physischen intelligenten VLSI-Chips.A system for developing a physical intelligent VLSI chip.
102102
Grafische BenutzeroberflächeGraphical user interface
104104
Server-Pool-LastausgleicherServer pool load balancer
106106
Entwurf einer ManipulationsverarbeitungseinheitDesign of a manipulation processing unit
108108
DatenbankDatabase
110110
Überwachungssteuerungmonitoring control

Claims (10)

Ein System zur Entwicklung eines physikalisch intelligenten VLSI-Chips, wobei das System folgendes umfasst: eine grafische Benutzeroberfläche, die zum Auswählen und Spezifizieren von Entwurfsmanipulationsverarbeitungsparametern für eine bestimmte Chipentwurfsdatendatei konfiguriert ist, um einen Computerauftrag zu erstellen, der Manipulationsverarbeitungsanweisungen enthält; einen Serverpool-Lastausgleicher zum Verteilen von Chipmanipulationsverarbeitungsaufträgen auf eine Gruppe von Servern, auf denen die Manipulationsverarbeitung weiter ausgeführt wird, wobei der Auftrag auf einem Server nach Empfang des Manipulationsverarbeitungsauftrags auf einem der Server des Serverpools ausgeführt wird; und eine Entwurfsmanipulations-Verarbeitungseinheit zum Ausführen von Entwurfsmanipulationen, um einen Satz von Funktionen an den Chipentwurfsdaten auszuführen, wobei die Chipentwurfsdaten ausgewählt werden aus Verkleinerungen, Erweiterungen oder der Ableitung neuer Datenebenen, dem Hinzufügen von Verarbeitungshilfsmerkmalen für Bauelementverbesserungen, dem Hinzufügen von nichtfunktionalen Formen für einen erhöhten Prozessspielraum in der Fertigungslinie.A system for developing a physically intelligent VLSI chip, the system comprising: a graphical user interface configured to select and specify design manipulation processing parameters for a particular chip design data file to create a computer job containing manipulation processing instructions; a server pool load balancer for distributing chip manipulation processing jobs to a group of servers on which the manipulation processing is further executed, the job being executed on one server after receipt of the manipulation processing job on one of the servers of the server pool; and a design manipulation processing unit for performing design manipulations to perform a set of functions on the chip design data, the chip design data being selected from shrinking, expanding or deriving new data planes, adding processing help features for device improvements, adding non-functional shapes for increased process latitude in the production line. System nach Anspruch 1, wobei die grafische Benutzeroberfläche die von einem Benutzer eingegebenen Manipulationsverarbeitungsparameter entweder in einer Datenbank oder in einer Datei speichert, wobei die Manipulationsverarbeitungsparameter aus Technologien, Schichten innerhalb der Technologie, Ableitungen und einem Satz von Optionen, die von einer Fertigungslinie unterstützt werden, ausgewählt werden.system after claim 1 , wherein the graphical user interface stores the manipulation processing parameters entered by a user either in a database or in a file, where the manipulation processing parameters are selected from technologies, layers within the technology, derivations and a set of options supported by an AssemblyLine. System nach Anspruch 1, wobei die grafische Benutzeroberfläche in Form einer Webanwendung implementiert sein kann, die auf einem Server läuft, wobei die grafische Benutzeroberfläche nach Abschluss der Eingabe von Manipulationsverarbeitungsparametern gleichzeitig sowohl den Chipdesign-Manipulationsprozess als auch den Kerberzeugungsprozess initiiert.system after claim 1 wherein the graphical user interface can be implemented in the form of a web application running on a server, wherein the graphical user interface initiates both the chip design manipulation process and the notch generation process at the same time upon completion of entering manipulation processing parameters. System nach Anspruch 1, wobei die Chipentwurfsdaten über ein Datenverschiebungsdienstprogramm auf den Server kopiert werden, auf dem die Chipmanipulationsverarbeitung ausgeführt wird, wobei das Datenverschiebungsdienstprogramm ein FTP ist, wenn sich die Daten auf dem lokalen Direktzugriffsgerät einer anderen Maschine befinden, oder der AIX-Kopierbefehl, wenn sich die Daten in einem Andrew-Dateisystem befinden.system after claim 1 , wherein the chip design data is copied to the server on which the chip manipulation processing is performed via a data movement utility, the data movement utility being an FTP if the data is on another machine's local random access device, or the AIX copy command if the data is reside in an Andrew file system. System nach Anspruch 1, wobei die über die grafische Benutzeroberfläche eingegebenen Verarbeitungsparameter alternativ aus einer Datenbank oder Datei abgerufen werden.system after claim 1 , whereby the processing parameters entered via the graphical user interface are alternatively retrieved from a database or file. System nach Anspruch 1, wobei die modifizierten Entwurfsdaten nach erfolgreichem Abschluss des Chipmanipulationsverarbeitungsauftrags zusammen mit einem Chipentwurfsbild in einem Chipentwurfsdatenspeicher archiviert werden.system after claim 1 wherein the modified design data is archived in a chip design data store together with a chip design image upon successful completion of the chip manipulation processing job. System nach Anspruch 1, wobei das System einen Kerberzeugungsprozess umfasst, der mehrere Schritte umfasst, die gleichzeitig mit dem Chipentwurfsmanipulationsprozess unter Verwendung der grafischen Benutzeroberfläche eingeleitet werden, wobei ein Auftrag, der die Kerberzeugungs-Verarbeitungsanweisungen enthält, an ein Kerf-Serverpool-Lastausgleichsdienstprogramm gesendet wird.system after claim 1 wherein the system comprises a notch generation process comprising multiple steps initiated concurrently with the chip design manipulation process using the graphical user interface, wherein a job containing the notch generation processing instructions is sent to a kerf server pool load balancing utility. System nach Anspruch 1, wobei das System eine Überwachungssteuerung umfasst, die mit mehreren identischen Multiport-Prozessoren kommuniziert, wobei einer der Prozessoren jeder Zelle zugeordnet ist, um eine Leitungsführung zwischen den jeweiligen Zellen zu bestimmen, und jeder Prozessor gleichzeitig mit seinen vier benachbarten Nachbarprozessoren kommuniziert, um die Kanalführung von einem Punkt zum nächsten in der Anordnung von Zellen zu bestimmen.system after claim 1 wherein the system comprises a supervisory controller communicating with a plurality of identical multiport processors, one of the processors being associated with each cell to determine routing between the respective cells, and each processor communicating simultaneously with its four adjacent neighbor processors to determine the routing from one point to the next in the array of cells. System nach Anspruch 1, wobei eine vollständige logische Schaltung des Chipentwurfs logisch in mehrere Teile partitioniert ist, die von Computerprogrammen und einer Gruppe von Computern verwaltet werden können, wobei die Partitionen so ausgewählt sind, dass die Verbindungen zwischen ihnen minimiert sind und Bereiche der Partitionen so geformt sind, dass sie zusammenpassen, ohne Leerraum dazwischen zu lassen.system after claim 1 , where a complete logical circuit of the chip design is logically partitioned into several parts manageable by computer programs and a group of computers, the partitions being chosen in such a way that the connections between them are minimized and areas of the partitions being shaped in such a way that they fit together without leaving any space in between. System nach Anspruch 9, wobei die Partition ein in sich geschlossenes Stück Logik umfasst, so dass alle Verbindungen mit benachbarten Partitionen, die in der Partition enthalten sind, miteinander verbunden sind, wobei eine der Partitionen Drähte enthält, aus denen Drähte hervorgehen, die enden, und Drähte, die die Partition kreuzen, wobei die Verbindungen zwischen den Partitionen durch Feldverbinder von Transferbüchern hergestellt werden, die die erforderlichen Kontakte bereitstellen.system after claim 9 , where the partition comprises a self-contained piece of logic such that all connections to adjacent partitions contained within the partition are tied together, with one of the partitions containing wires from which emerge wires that end and wires that crossing the partition, with the connections between the partitions being made by field connectors of transfer books that provide the necessary contacts.
DE202021106865.5U 2021-12-16 2021-12-16 A system for developing a physical intelligent VLSI chip Active DE202021106865U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202021106865.5U DE202021106865U1 (en) 2021-12-16 2021-12-16 A system for developing a physical intelligent VLSI chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202021106865.5U DE202021106865U1 (en) 2021-12-16 2021-12-16 A system for developing a physical intelligent VLSI chip

Publications (1)

Publication Number Publication Date
DE202021106865U1 true DE202021106865U1 (en) 2022-02-15

Family

ID=80474083

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202021106865.5U Active DE202021106865U1 (en) 2021-12-16 2021-12-16 A system for developing a physical intelligent VLSI chip

Country Status (1)

Country Link
DE (1) DE202021106865U1 (en)

Similar Documents

Publication Publication Date Title
DE102012200822B4 (en) Method of analyzing cells of a cell library
DE102006037162B4 (en) Method and apparatus and their use for testing the layout of an electronic circuit
DE60116769T2 (en) METHOD AND SYSTEM FOR HIERARCHIC METAL END, INCLUSION AND EXPOSURE TESTING
DE69533998T2 (en) Design of semiconductor integrated circuits
DE602004000228T2 (en) A semiconductor integrated circuit having a signal regenerator for test signals and associated automatic design apparatus, methods and programs
DE102015200694A1 (en) METHOD, COMPUTER SYSTEM AND COMPUTER-READABLE STORAGE MEDIUM FOR PRODUCING A LAYOUT OF AN INTEGRATED CIRCUIT
DE202016008706U1 (en) Masks for making an integrated circuit and integrated circuit
DE102019116952B4 (en) INTEGRATED CIRCUIT STRUCTURE, LAYOUT DIAGRAMS METHOD AND SYSTEM
DE102018108985B4 (en) Vertical storage devices and methods of making vertical storage devices
DE102013106539A1 (en) A method of verifying a layout for polysilicon cell edge structures in standard FinFET cells
DE102019113506A1 (en) Integrated circuit comprising a multi-height cell and integrated circuit manufacturing method
DE102019123621B4 (en) ROUTING RESOURCES IMPROVING METHOD AND SYSTEM FOR GENERATION OF LAYOUT DIAGRAMS
DE2418906B2 (en) Method for connecting the circuits produced in a semiconductor wafer
DE10103312A1 (en) Layout design process
DE2442850A1 (en) PROCESS FOR THE AUTOMATIC DESIGN OF INTEGRATED CIRCUITS
DE4327652C2 (en) Semiconductor integrated circuit device and method for designing a semiconductor integrated circuit device
DE10138142B4 (en) Method for analyzing an integrated electrical circuit
DE4124877C2 (en) Method for arranging and wiring standard cells of a semiconductor integrated circuit device
DE202021106865U1 (en) A system for developing a physical intelligent VLSI chip
DE4344231C2 (en) Integrated circuit device with bit slice cells
DE112004001651B4 (en) Automatic layout conversion system and method
DE10317924A1 (en) Layout design method and system for providing bypass capacity and compliant density in an integrated circuit
DE10063099A1 (en) Method for checking exposure patterns formed over a photomask
EP1543452A2 (en) Method for determining the positioning of contact surfaces on the active upper face of a semiconductor chip
DE112013005760T5 (en) Pattern-based supply-and-ground (PG) wiring and through-contact generation

Legal Events

Date Code Title Description
R207 Utility model specification
R082 Change of representative

Representative=s name: LIPPERT STACHOW PATENTANWAELTE RECHTSANWAELTE , DE