DE2259726A1 - METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT - Google Patents

METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT

Info

Publication number
DE2259726A1
DE2259726A1 DE2259726A DE2259726A DE2259726A1 DE 2259726 A1 DE2259726 A1 DE 2259726A1 DE 2259726 A DE2259726 A DE 2259726A DE 2259726 A DE2259726 A DE 2259726A DE 2259726 A1 DE2259726 A1 DE 2259726A1
Authority
DE
Germany
Prior art keywords
circuit
circuits
field effect
calculated
effect transistor
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.)
Pending
Application number
DE2259726A
Other languages
German (de)
Inventor
Thomas P Linville
Erwin Schischa
Gerhard R Thompson
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2259726A1 publication Critical patent/DE2259726A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Description

^ 31 ψ ^ 31 ψ

Anmelderin: International Business MachinesApplicant: International Business Machines

ι, Armonk» M.Y. 10504ι, Armonk »M. Y. 10504

Amtliches Aktenzeichenα Neuanmeldung Aktenzeichen der Anmelderin; YO 971 025Official file number α New registration File number of the applicant; YO 971 025

Verfahren zur. Optimierung einer Halbleiterschaltung Procedure for. O ptimie tion of a semiconductor circuit

Die Erfindung betrifft ein Verfahren zur Optimierung einer Halbleiterschaltung, die mehrere Einzelschaltkreise, vorzugsweise als Feldeffekttransistor-Strukturen, enthält und funktionell in Form eines Schaltungsblockgraphen sowie durch die Angabe elektrischer und physikalischer Spezifikationswerte vorgegeben ist, bei dem eine Auswahlmöglichkeit eines konkreten Schaltkreises unter mehreren verfügbaren Schaltkreisen besteht. The invention relates to a method for optimizing a semiconductor circuit, the several individual circuits, preferably as field effect transistor structures, contains and functionally in the form of a circuit block graph as well as by the specification electrical and physical specification values is given, in which there is a possibility of selecting a specific circuit from several available circuits.

In der gegenwärtigen Schaltungstechnik werden in sehr starkem Umfang hochintegrierte sogenannte LSI {large scale integration)-Halbleiterschaltungen eingesetzt» Solche LSI-Sehaltungen sind meist auf einem Halbieiterjplättchen realisiert und bestehen aus sehr vielen Einze!schaltungen, die ihrerseits zur Bildung einer komplexen logischen Verknüpfungsschaltung miteinander verbunden sind* Ein besonders für die LSI-Technik wichtiges Bauelement ist der Feldeffekttransistor (FET).In current circuit technology, highly integrated so-called LSI ( large scale integration) semiconductor circuits are used to a very large extent are * A particularly important component for LSI technology is the field effect transistor (FET).

Es sind bereits zahlreiche automatische Verfahren zur Unterstützung des Schaltungsentwurfs insbesondere bei Halbleitersehaltungen vorgeschlagen worden, vgl» z.B. Patentanmeldung £ 21 52 886»There are already numerous automatic methods of assistance of the circuit design, especially in the case of semiconductor circuits has been proposed, see »e.g. patent application £ 21 52 886»

309828/0702309828/0702

Diese Verfahren sind allgemein zur Unterstützung des Schaltung»*-* technikers bei der Anordnung der Einzelschaltkreise auf dem Halblei terplättchen und deren möglichst optimalen Verbindung bestimmt und geeignet. Die bisher vorgeschlagenen und bekanntgewordenen automatischen Schaltungsentwurfsverfahren legten jedoch stets einen Grundschaltkreis fester physikalischer Flächengröße zugrunde, d.h. alle Feldeffekttransistoren auf de» Halbleiterplättchen waren von gleicher Größe, vgl. z.B. US-Patentschrift 3 475 621. Derartige Schaltkreise mit gleich großen einzelnen Feldeffekttransistorstrukturen wurden in der Vergangenheit vom Schaltungstechniker zugrundegelegt, da es unmöglich erschien, eine sehr komplexe Schaltung mit Hunderten und Tausenden von Einzelschaltkreisen unter Einhaltung der Zeit- und Leistungsbedingungen für die Gesamtschaltung auch noch mit jeweils verschiedener Einzelgröße zu berücksichtigen.These procedures are generally used to support the circuit »* - * technician in the arrangement of the individual circuits on the semi-conductor terplättchen and their optimal connection as possible determined and suitable. The ones proposed and known so far However, automatic circuit design processes were always based on a basic circuit with a fixed physical area size, i.e. all field effect transistors were on the semiconductor wafers of the same size, see e.g. US Pat. No. 3,475,621. Such circuits with individual field effect transistor structures of the same size have been used by circuit engineers in the past based on the fact that it seemed impossible to adhere to a very complex circuit with hundreds and thousands of individual circuits the time and power conditions for the entire circuit also to be considered with each different individual size.

Die Aufgabe der Erfindung besteht in einer Verbesserung der genannten Schaltungsentwurfverfahren mit dem Ziel, Schaltkreise derselben Funktion mit unterschiedlichem Flächenaufwand unter Berücksichtigung der übrigen elektrischen Schaltungsspezifikationen berücksichtigen zu können. Insgesamt soll mit dem Verfahren der Entwurf von Halbleiterschaltungen mit höherer Packungsdichte, kleinerer Verlustleistung und schnellerer Schaltgeschwindigkeit erzielbar sein.The object of the invention is to improve the above Circuit design method with the aim of making circuits of the same To be able to take into account function with different area expenditure, taking into account the other electrical circuit specifications. Overall, the procedure is intended to be the basis for the draft can be achieved by semiconductor circuits with higher packing density, lower power loss and faster switching speed be.

Ausgehend von einem Verfahren zur Optimierung einer Halbleiterschaltung, die mehrere Einzelschaltkreise, vorzugsweise als FLT-Struktüren, enthält und funktionell in Form eines Schaltungsblockgraphen sowie durch die Angabe elektrischer und physikalischer Spezifikationswerte vorgegeben ist, bei dem eine Auswahlmöglichkeit eines konkreten Schaltkreises unter mehreren verfügbaren Schaltkreisen besteht, 1st die Erfindung dadurch.gekennzeichnet, daß zur Festlegung der Einzelschaltkreise, vorzugsweise der Feldeffekttransistorstrukturen derselben elektrischen Funktion, deren, jeweiliger Flächenaufwand als veränderlich angenommen und aus mehreren flächenverschiedenen Schaltkreisen derselben Funktion derjenige für den Schaltungseinsatz festgelegt wird, der bei minimalemBased on a method for optimizing a semiconductor circuit, the several individual circuits, preferably as FLT structures, contains and functionally in the form of a circuit block graph as well as by specifying electrical and physical Specification values is given, in which a choice of a specific circuit from several available There are circuits, the invention is characterized in that for the definition of the individual circuits, preferably the field effect transistor structures the same electrical function whose, respective area expenditure assumed to be changeable and from several Circuits with different areas of the same function, the one for the switch insert is determined that with minimum

"»»<»* 309828/0702"» »<» * 309828/0702

Flächehaufwand die gleichzeitig an die Gesamtschaltung gestellten weiteren elektrischen und physikalischen Bedingungen erfüllt.The space required at the same time for the overall circuit other electrical and physical conditions are met.

Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet und in der nachfolgenden ,Beschreibung enthalten.Further advantageous embodiments of the invention are characterized in the subclaims and in the following description contain.

Nachfolgend sind ein Ausführungsbeispiel und ein Anwendungsbeispiel des erfindungsgemäßen Verfahrens anhand von Zeichnungen näher beschrieben. Es zeigen: -Below are an embodiment and an example of use of the method according to the invention described in more detail with reference to drawings. Show it: -

Fign, IA und IB Blockdiagrainme zur Veranschaulichung des erfindungsgemäßen Verfahrens;Fign, IA and IB block diagrams to illustrate the invention Procedure;

Fign. 2A bis 2C in gegenüber den Fign. IA und IB detailliertererFigs. 2A to 2C in relation to FIGS. IA and IB in more detail

Weise das logische Schrittfolgediagramm des erfindungsgeinäßen Verfahrens;Way, the logical step sequence diagram of the method according to the invention;

Fig. 3 einen als Anwendungsbeispiel gewählten Schaltungsblockgraphen; 3 shows a circuit block graph chosen as an application example;

Fig. 4 eine typische Aufstellung von verfügbaren Schaltungen mit ihren jeweiligen im Rahmen des erfindungsgemäßen Verfahrens benutzten Spezifikationswerten und 4 shows a typical list of available circuits with their respective specification values used in the context of the method according to the invention and

Fig. 5 eine tabellarische Aufstellung des vom AnwenderFig. 5 is a tabular listing of the user

vorgegebenen Schaltungsblockgraphen.given circuit block graphs.

Mit der vorliegenden Erfindung wird ein automatisches Verfahren zur Auswahl der für einen vorgegebenen Schaltungsblockgraphen hinsichtlich des Flachenaufwandes optimalen Schaltkreise angegeben. Das Verfahren geht aus von einer jeweiligen Anwenderspezifikation, in der ein logischer Schaltungsblockgraph, die maximale Schaltungsgröße, zu beachtende Zeitbedingungen, die Integrationsstrukturen sowie die Beschränkungen hinsichtlich der Zellgrößen angegebenThe present invention provides an automated method of selecting the circuit block graphs for a given circuit block graph specified with regard to the area required optimal circuits. The procedure is based on a respective user specification, in which a logical circuit block graph, the maximum circuit size, time conditions to be observed, the integration structures as well as the restrictions on cell sizes

971 O25 309 8 28/070 2971 O25 309 8 28/070 2

225972$$ 225,972

sind. Ferner sina in der Anwenderspezifikation eine Aufstellung der verfügbaren Schaltungen, ihrer jeweiligen Größen sowie ihrer Charakteristika hinsichtlich der Erfüllung spezieller logischer Funktionen angegeben.are. There is also a list in the user specification the available circuits, their respective sizes and their characteristics with regard to the fulfillment of special logic Functions specified.

Im Rahmen des Verfahrensablaufes werden mehrere denselben Schaltungsblockgraphen erfüllende Anordnungen erstellt. Für jede Schaltung wird anschließend die Last ermittelt. Unter Zuhilfenahme der derart ermittelten Lastwerte wird der hinsichtlich seiner Größe optimale Schaltkreis ausgewählt, der die ermittelte Belastung zuläßt. Anschließend wird dieser Schaltkreis einem Test unterworfen, um zu bestimmen, ob die derart ausgewählten Schaltkreise die Zeit- und Leistungsbedingungen in der vom Anwender spezifizierten Weise erfüllen.As part of the process sequence, several of the same circuit block graphs are created fulfilling orders created. The load is then determined for each circuit. With the aid of the load values determined in this way are used to select the circuit that is optimal in terms of its size and which carries the determined load allows. This circuit is then subjected to a test to determine whether the circuits so selected meet the time and performance requirements in the manner specified by the user.

Der Verfahrensablauf geht bezüglich jedes Schaltkreises iterativ vor sich und wird so oft wiederholt, bis keine weitere Verringerung der Schaltungsgröße in Anbetracht der festgelegten Anwenderspezifikationen mehr möglich ist. Mit Abschluß des Verfahrens wird eine Aufstellung von Schaltkreisen erhalten, mittels welcher die Anwenderspezifikationen und der logische Schaltungsblockgraph erfüllbar sind. Alle die Schaltkreise, deren Spezifikationen anhand der verfügbaren Liste mit den Flächengrößen nicht erfüllt werden können, werden dem Anwender für etwaige weitere Modifikationen mitgeteilt.The process sequence proceeds iteratively with respect to each circuit and is repeated until there is no further reduction the circuit size is more possible in view of the established user specifications. With the conclusion of the procedure a circuit listing is obtained by means of which the user specifications and the logical circuit block graph are achievable. All the circuits whose specifications are not met based on the available list of area sizes will be communicated to the user for any further modifications.

Das erfindungsgemäße Verfahren ermöglicht demnach die optimale Auswahl von FET-Schaltkreisgrößen in Anbetracht eines vom Anwender spezifizierten Schaltungsblockgraphen. Darüberhinaus bietet das Verfahren eine zuverlässige Realisierungsmöglichkeit von Schaltungsblockgraphen unter Berücksichtigung in der Praxis tatsächlich vorkommender ingenieursmäßiger Zwänge. Das Verfahren kann als Hilfe oder Prüfmethode bei solchen Schaltungen benutzt werden, die entweder von einem Schaltungstechniker oder im Rahmen eines automatischen Schaltungsherstellungsverfahrens entworfen werden. Darüberhinaus kann aus dem Verfahren auch hinsichtlichThe method according to the invention accordingly enables the optimal selection of FET circuit sizes in consideration of one of the user specified circuit block graphs. In addition, the method offers a reliable possibility of realizing Circuit block graphs taking into account engineering constraints that actually occur in practice. The procedure can be used as an aid or test method on such circuits, either by a circuit technician or in the frame an automatic circuit manufacturing process. In addition, from the procedure also with regard to

YO 971 025 309828/0702YO 971 025 309828/0702

der Leistungsoptimierung zur Herstellung von sehr hoch integrierten Halbleiterschaltungen Nutzen gezogen werden. Dies kann dadurch erreicht werden, daß zunächst absichtlich ein Schaltungsblockgraph zugrundegelegt wird, der bei gleicher Gate-Größe der Feldeffekttransistoren die Spezifikationen eigentlich überschreiten würde, unter Anwendung des automatischen Leistungsoptimierungsverfahrens können die derart spezifizierten Schaltungen jedoch dann durch solche Feldeffekttransistoren ersetzt werden, die zwar hinsichtlich ihrer Fläche kleiner sind, aber dennoch in der Gesamtschaltung die Leistungs- und Belastungserfordernisse voll erfüllen.the performance optimization for the production of very highly integrated Semiconductor circuits can be used. This can be accomplished by initially deliberately creating a circuit block graph is taken as a basis, which actually exceeds the specifications with the same gate size of the field effect transistors using the automatic performance optimization procedure However, the circuits specified in this way can then be replaced by field effect transistors which, although with regard to their area are smaller, but still fully meet the performance and load requirements in the overall circuit.

Das hier beschriebene Verfahren kann mit Hilfe bekannter Rechenanlagen ausgeführt werden, die über ausreichend Speicherraum und Eingabe/Ausgabernöglichkeiten verfügen. Ein Beispiel für eine derartige Anlage ist das IBM System 1130 mit einem Speicher für 32 000 Worte sowie Platten, Band, Drucker und Kartenleser als Eingabe/Äusgabegeräten. Beim Einsatz einer derartigen Rechenanlage sind selbstverständlich die jeweiligen systembezogenen Bedienungsvorschriften sowie die entsprechenden Programmiersprachen zu beachten.The method described here can be carried out with the help of known computing systems that have sufficient memory space and input / output capabilities. An example of such a The system is the IBM System 1130 with a memory for 32,000 words as well as disks, tapes, printers and card readers Input / output devices. When using such a computer system are of course the respective system-related operating instructions and the corresponding programming languages to be observed.

In den Fign. IA und IB ist ein Schrittfolgediagramm für das Leistungsoptimierungsverfahren angegeben. Im ersten Verfahrensschritt werden die Anwenderspezifikationen eingelesen. Diese Daten bestehen aus einem logischen Schaltungsblockgraphen in der Form einer Liste von logischen Funktionen mit jeweils identifizierten Eingangs/ Ausgangsschaltungen sowie Verzögerungs- und Positionsangaben. Es ist festzustellen, daß verschiedene Aufzeichnungstechniken zur Spezifizierung des Schaltungsblockgraphen verwendet werden können. Beispielsweise kann das in Fig. 5 dargestellte Format benutzt werden, bei dem jede Zeile auf eine für eine Datenverarbeitung geeignete Karte übertragen wird. Die notwendige Information besteht aus einer die jeweilige Feldeffekttransistorschaltung int Blockgraphen identifizierenden Zahl, einer Zahl zur Identifizierung des Ausgangsnetzwerkes der Schaltung, der Identifizierung aller an die Schaltung^ angeschlossenen weiteren Schalt-In FIGS. IA and IB is a step sequence diagram for the performance optimization process specified. In the first process step, the user specifications are read in. These data exist from a logical circuit block graph in the form of a list of logical functions with each identified input / Output circuits as well as delay and position information. It note that various recording techniques are used to specify the circuit block graph can. For example, the format shown in Fig. 5 can be used with each line on one line for data processing appropriate card is transferred. The necessary information consists of the respective field effect transistor circuit int block graph identifying number, a number to identify the output network of the circuit, the identification all other switching devices connected to the circuit

Yü 9n °25 3098 28/070 2 Yü 9n ° 25 3098 28/070 2

kreise, einer die Anzahl der Eingänge bezeichnenden Zahl, der Angabe der maximalen Zeitverzögerung, einer Bezeichnung der logischen Funktion des Schaltkreises sowie der Position der jeweiligen Schaltung im Rahmen der Gesamtschaltung. Zusätzlich gibt der Anwender zur Durchführung des Verfahrens Größenbeschränkungen hinsichtlich der einzelnen Halbleiterschaltung in Abhängigkeit von der jeweiligen Integrationstechnologie für die Gesamtschaltung an. Darüberhinaus wird vom Anwender eine Liste von verfügbaren logischen Schaltungen mit Angaben über die jeweiligen Größen, die Zahl der Eingänge sowie deren elektrischen Charakteristika vorgegeben .circles, a number designating the number of inputs, the specification of the maximum time delay, a designation of the logical Function of the circuit as well as the position of the respective circuit in the context of the overall circuit. Additionally there the user to carry out the method size restrictions with regard to the individual semiconductor circuit depending on the respective integration technology for the overall circuit. In addition, the user is provided with a list of available logic circuits with information about the respective quantities that The number of inputs and their electrical characteristics are specified.

Der nächste Schritt im Verfahrensablauf besteht in einer Arrangierung all der Eingangsinformationen vom Anwender derart, daß ein einfacher Zugriff dazu möglich ist. Beispielsweise stellen die in Fig. 4 aufgeführten Zusammenstellungen sequentielle Angaben dar, die für einen schnellen Zugriff während der Verfahrensdurchführung auf einen Plattenspeicher oder dgl. festgehalten sind. Im Rahmen des automatischen Verfahrens werden, wie bereits zu Eingang erwähnt, für jeden Schaltkreis des Schaltungsblockgraphen Berechnungen durchgeführt. Die Schaltkreise werden durch die Bezeichnungen Ci mit i = 1, 2, ... η identifiziert. Ein Schaltkreisindex i wird während des ganzen Verfahrensablaufs benutzt, um die zu einem jeweiligen Schaltkreis in dem Graphen gehörende Information zu lokalisieren. Zu Beginn ist der Index i = 1. Für jeden Schaltkreis Ci v/erden dann die Metall- und Diffusionsverbindungslängen der Ausgangsleitungen berechnet.The next step in the process is an arrangement all of the input information from the user in such a way that it can be easily accessed. For example, the The compilations shown in FIG. 4 represent sequential information which is retained for quick access to a disk storage device or the like while the method is being carried out are. In the context of the automatic procedure, as already mentioned at the beginning, for each circuit of the circuit block graph Calculations carried out. The circuits are identified by the designations Ci with i = 1, 2, ... η. A Circuit index i is used throughout the process to identify each circuit in the graph localize related information. At the beginning, the index i = 1. For each circuit Ci v / then the metal and diffusion joint lengths are grounded of the output lines calculated.

Nachdem für die Ausgangsleitungen jedes Schaltkreises Ci die erforderliche Metallisierung errechnet worden ist, wird der Index i auf 1 zurückgesetzt, so daß die Auswahlfunktion des Verfahrens nacheinander jeden Schaltkreis mit dem Index i = 1, 2, ... η erfassen kann. Beginnend mit den Feldeffekttransistorschaltkreis 1 werden dafür die gesamte Ausgangsbelastung sowie die mit dieser Belastung zusammengehörende Verzögerung Di berechnet. Nachdem einmal für den betreffenden Feldeffekt-After the output lines of each circuit Ci the required metallization has been calculated, the index i is reset to 1, so that the selection function of the Process one after the other each circuit with the index i = 1, 2, ... η can detect. Starting with the field effect transistor circuit 1, the total initial load as well as the delay associated with this load are used Tue calculated. After once for the relevant field effect

Y0 im °25 Y0 in ° 25

109828/0702109828/0702

-,■··. "" 7 " ■ 22S972S-, ■ ··. "" 7 "■ 22S972S

transistorschaltkreis die Belastung und Verzögerung ermittelt sind, wird ein Test durchgeführt, ob die errechneten Belasttingsund yerzögerungswerte für diesen Schaltkreis von dem in dear jeweiligen Anwenderliste CPS spezifizierten Feldef fekittransistorschältkreis erfüllt sind. Die CFS-Liste besteht aus einer Aufstellung von Adressen- die auf die zugehörige ÄFS-Liste hinweisen, in der die verfügbaren Feldeffekttransistorschältkreise für die verschiedenen benötigten logischen Funktionen mit ihren zugehörigen elektrischen und physikalischen Eigenschaften enthalten sind. Wenn die errechneten Belastungs- und Verzögerungswerte mit den Angaben eines derart spezifizierten Schaltkreises übereinstimmen f wird das Verfahren fortgefütart, indem der Indexzähler für i einen Schritt weitergeschaltet wird und die oben genannten Schritte solange wiederholt werden, bis alle Schaltkreise optimiert sind. Wenn auf der anderen Seite der gerade in der CFS-Liste spezifizierte Schaltkreis die errechneten Bedingungen nicht erfüllt,- schließt sich ein Unterverfahren zur weiteren Optimierung der Schaltkreisgröße für die berechnete Belastung an. Wenn als Ergebnis dieses weiteren Optimierungsverfahrens sich die Schaltkreisfläche vergrößert, wird die vergleichende Prüfung zwischen dem CFS-Schaltkreis und der errechneten Belastung und Verzögerung wiederholt. Wird dagegen die Schaltkreisfläche nicht vergrößert, wird im.Rahmen des Verfahrens die Behandlung des nächsten Schaltkreises aufgenommen. Für jeden Schaltkreis Ci wird der zur Optimierung angesetzte weitere Verfahrensdurchlauf solange wiederholt, bis keine Zunahme der Schaltkreisfläche mehr festgestellt wurde.transistor circuit, the load and delay are determined, a test is carried out to determine whether the calculated load and delay values for this circuit are met by the field effect transistor circuit specified in the respective user list CPS. The CFS list consists of a list of addresses that refer to the associated ÄFS list, which contains the available field effect transistor circuits for the various required logical functions with their associated electrical and physical properties. If the calculated load and delay values agree with the data of a circuit specified in this way f the method is continued by the index counter for i is incremented and the above steps are repeated until all circuits are optimized. On the other hand, if the circuit just specified in the CFS list does not meet the calculated conditions, - a sub-process follows to further optimize the circuit size for the calculated load. If the circuit area increases as a result of this further optimization process, the comparative test between the CFS circuit and the calculated load and delay is repeated. If, on the other hand, the circuit area is not increased, the treatment of the next circuit is started in the framework of the procedure. For each circuit Ci, the further process run set up for optimization is repeated until no further increase in the circuit area has been ascertained.

Nachdem alle Schaltkreise Ci derart behandelt worden sind, schließt sich ein Test an, in dem untersucht wird, ob der für die gesamte Schaltung festgesetzte Verlustleistungswert überschritten worden ist. Wenn die gesamten Leistungserfordernisse der so aufgestellten Schaltkreisliste CFS den zulässigen Höchstwert für die Verlustleistung der Gesamtschaltung überschreiten, wird die aktuelle Schaltkreisliste an den Anwender ausgegeben, der seinerseits Modifikationen im Schaltungsblockgraphen vor-After all circuits Ci have been treated in this way, This is followed by a test in which it is examined whether the power loss value specified for the entire circuit has been exceeded has been. If the total performance requirements of the circuit list CFS thus compiled is the maximum permissible value for the power loss of the overall circuit, the current circuit list is output to the user, who in turn proposes modifications in the circuit block graph.

10971025 ■ 309828/0702 10971025 ■ 309828/0702

nehmen und den gesamten Verfahrensablauf dann wiederholen kann. Wird dagegen die maximale Verlustleistung im Rahmen der Gesamtschal tung nicht überschritten, wird noch festgestellt, ob beim letzten Verfahrensdurchgang eine Modifizierung der CFS-Liste vorgenommen worden ist. Ist das nicht der Fall, ist das Verfahren beendet und die CFS-Liste mit den konkreten Schaltkreisen wird an den Anwender ausgegeben. Das Verfahren ist iterativ gestaltet, d.h., es wird jeweils ein weiterer Verfahrensdurchgang durchgeführt, bis keine weiteren Änderungen im Rahmen des Optimierungsverfahrens erzielt werden. Der Anwender kann die ausgegebene CFS-Liste dazu benutzen, eine entsprechende Halbleiterschaltung mit den konkretisierten Schaltkreisen zu entwerfen; er kann aber auch von sich aus weitere Modifikationen für erforderlich erachten und auf dieser Grundlage das Verfahren erneut durchführen lassen.and then repeat the entire process. If, on the other hand, the maximum power loss in the context of the overall circuit is not exceeded, it is still determined whether the a modification of the CFS list in the last procedural round has been made. If this is not the case, the process is ended and the CFS list with the specific circuits is opened issued to the user. The process is designed iteratively, i.e. a further process run is carried out in each case, until no further changes are made as part of the optimization process. The user can read out the CFS list use it to design a corresponding semiconductor circuit with the specified circuits; but he can also On their own initiative, consider further modifications to be necessary and have the procedure carried out again on this basis.

In den Fig. 2A, 2B und 2C ist in detaillierterer Form das Schrittfolgediagramm bezüglich der Verfahrensschritte 10, 20, 30 und dargestellt. Während des Verfahrensschrittes 10 werden die Längen der Metall- und Diffusionsverbindungen für die Ausgangsleitungen der jeweiligen Schaltkreise errechnet. Dazu werden zunächst die vom Anwender mitgeteilten Positionsangaben der jeweiligen Schaltkreise in der Gesamtschaltung herangezogen. Das Schaltungspositlonsfeld enthält XY-Koordinatenangaben für den einzelnen FET-Schaltkreis in der Gesamtschaltung. Obwohl in diesem Ausführungsbeispiel ein 2-Koordinatensystem verwendet wird, können auch andere Positionsangabeformate eingesetzt werden. Für jeden Schaltkreis Ci wird im Rahmen seiner verfahrensmäßigen Behandlung im Verfahrensschritt 10 der vertikale und horizontale Abstand zu den an seine Ausgangsleitungen angeschlossenen weiteren Schaltkreisen errechnet. Vertikale Abstände repräsentieren dabei Metallisierungsverbindungen (VM) und entsprechend horizontale Abstände Diffusionsverbindungen (HD). Die Errechnung der Abstandsangaben wird durch einfache Substraktion der X- und Y-Koordinatenpunkte durchgeführt. Wenn der Halbleiterschaltungsträger bereits vorverdrahtet ist, d.h. das Leiterzugsmuster bereits festliegt, oder die Abstände vom Anwender bereits angege-Referring now to Figures 2A, 2B and 2C, in greater detail is the step sequence diagram with respect to method steps 10, 20, 30 and shown. During process step 10, the lengths of the metal and diffusion connections for the output lines calculated for the respective circuits. For this purpose, the position information provided by the user for the respective circuits is first used used in the overall circuit. The circuit position field contains XY coordinate information for the individual FET circuit in the overall circuit. Although a 2-coordinate system is used in this exemplary embodiment, other position specification formats can be used. For each circuit Ci, as part of its procedural treatment in method step 10, the vertical and horizontal distance to the other connected to its output lines Circuits calculated. Vertical distances represent metallization connections (VM) and corresponding horizontal ones Distances of diffusion joints (HD). The calculation the distance information is obtained by simply subtracting the X and Y coordinate points carried out. When the semiconductor circuit carrier is already pre-wired, i.e. the circuit pattern is already established, or the distances have already been specified by the user.

YO971025 309828/0702 YO971025 309828/0702

ben sind, kann dieser Verfahrensschritt entfallen. Wenn für alle Schaltkreise Ci die VM- und HD-Angaben zur Verfügung stehen, wird das Verfahren fortgesetzt, indem zunächst der Index i = 1 gesetzt und im anschließenden Verfahrensschritt 20 die Schaltkreisbelastungeh und Verzögerungen Di errechnet werden.are ben, this process step can be omitted. If the VM and HD specifications are available for all circuits Ci, the method is continued by first setting the index i = 1 and then setting the circuit load in the subsequent method step 20 and delays Di are calculated.

Für die Durchführung des Verfahrensschrittes 20 ist es zunächst notwendig, für den gerade behandelten Schaltkreis Ci die Adresse im AFS-FeId, nämlich der Aufstellung der verfügbaren Schaltkreise, zu bestimmen. Unter Bezugnahme auf die in der AFS-Liste angegebenen Charakteristika der einzelnen verfügbaren Schaltkreise werden von dort die Belastungsparameter für den jeweiligen Schaltkreis Ci in Abhängigkeit von der Anzahl Eingänge (NFAN) dieses Schaltkreises übernommen. Damit wird die Schaltkreisbelastung ZC entsprechend der folgenden Beziehung berechnet:To carry out method step 20, it is first necessary to enter the address for the circuit Ci just discussed in the AFS field, namely the list of available circuits, to determine. Referring to those in the AFS list specified characteristics of the individual available circuits from there the load parameters for the respective circuit Ci depending on the number of inputs (NFAN) adopted this circuit. With this, the circuit load ZC is calculated according to the following relationship:

ZC = ZCl + ZC2 X (NFAN) (1)ZC = ZCl + ZC2 X (NFAN) (1)

Nach der Berechnung der Schaltkreisbelastung ZC wird der Wert für die durch die Verbindungen dargestellte Last ZI errechnet, wobei in die Rechnung die Metall- und Diffusionsverbindungslängen VM und HD des jeweiligen Schaltkreises Ci eingehen. Diese Berechnung erfolgt nach der Beziehung:After calculating the circuit load ZC, the value for the load ZI represented by the connections is calculated, where the metal and diffusion connection lengths VM and HD of the respective circuit Ci are included in the calculation. These Calculation is based on the relationship:

ZI = VM χ (KM) +HDx (KD) (2)ZI = VM χ (KM) + HDx (KD) (2)

Dabei stellen KM und KD die Metallisierungs- und Diffusionskonstanten dar, die ihrerseits eine Funktion der für die gesamte Halbleiterschaltung verwendeten Technologie darstellen. Diese Konstanten werden vom Anwender in das Verfahren als Eingangsdaten eingebracht.KM and KD represent the metallization and diffusion constants which in turn represent a function of the technology used for the entire semiconductor circuit. These Constants are introduced into the process as input data by the user.

Nach der Berechnung der Verbindungsbelastung ZI wird schließlich die Belastung ZD aufgrund der angeschlossenen Schaltkreise ermittelt. Dazu wird zunächst die Anzahl der an den gerade be- ■ handelten Feldeffekttransistorschaltkreis Ci angeschlossenenAfter calculating the connection load ZI, the load ZD due to the connected circuits finally becomes determined. For this purpose, the number of the field effect transistor circuit Ci that has just been treated is first connected

YO971025 309828/0702 YO971025 309828/0702

- IO -- OK -

Schaltungen ermittelt. Die Anzahl der angeschlossenen Schaltkreise wird aus dem Belastungsfeld (NL-FeId in Fig. 5) übernommen, in welchem Feld die Leistungs- und Schaltkreisnummern am Ausgang des jeweiligen Schaltkreises angegeben sind. Wenn man die Schaltkreisnummern hat, wird aus dem CFS-FeId die Adresse jedes angeschlossenen Schaltkreises in der AFS-Liste festgestellt. Diese AFS-Adresse weist auf den Platz im AFS-FeId hin, an dem die Belastungsparameter für die angeschlossenen Schaltkreise gefunden werden kann. Mit Hilfe der Lastparameter LE - das sind die einzelnen Eingangslastwerte, wenn man in den Eingang des Feldeffekttransistorschaltkreises hineinschaut - werden die Belastungswerte ZD aufgrund der angeschlossenen Schaltkreise durch Addition der LE-Werte für jeden Schaltkreis errechnet.Circuits determined. The number of connected circuits is taken from the exposure field (NL field in Fig. 5), in which field the service and circuit numbers at the output of the respective circuit are specified. If you have the circuit numbers, the CFS field becomes the address of each connected Circuit in the AFS list. This AFS address indicates the place in the AFS field where the load parameters for the connected circuits can be found. With the help of the load parameters LE - these are the individual ones Input load values when going into the input of the field effect transistor circuit look inside - the load values ZD are based on the connected circuits by adding the LE values calculated for each circuit.

Nachdem alle Belastungsgrößen errechnet sind, wird die gesamte Ausgangslast gemäß der folgenden Beziehung berechnet;After all the load magnitudes are calculated, the total output load is calculated according to the following relationship;

ZT = ZC + ZI + ZD (3)ZT = ZC + ZI + ZD (3)

Im nächsten Verfahrensschritt wird aus der AFS-Liste der verfügbaren Schaltkreise die Schaltkreisgleichung für den gerade behandelten Schaltkreis Ci ermittelt. Diese Schaltkreisgleichung benutzt, jedenfalls in der hier angewendeten Form in der Gleichung für die Schaltkreisverzögerung D, die Variable m sowie die Konstante K gemäß folgender Beziehung:In the next step, the AFS list of available circuits becomes the circuit equation for the one just discussed Circuit Ci determined. This circuit equation is used, at least in the form used here in the equation for the circuit delay D, the variable m as well as the Constant K according to the following relationship:

D = m χ ZT + K (4)D = m χ ZT + K (4)

Durch Berücksichtigung der speziellen m und K Werte für den jeweiligen Schaltkreis Ci, wird dessen Verzögerungswert Di errechnet. Im nächsten Verfahrensschritt wird die spezifizierte 'Schaltkreisverzogerung SPDI aus dem vom Anwender gelieferten SPD-Feld ermittelt. Daran an schließt sich eine Vergleichsoperation, ob der spezifizierte Verzögerungswert SPDI größer oder gleich dem berechneten Verzögerungswert Di ist. Ist der Wert SPDI größer oder gleich Di, erfüllt der Feldeffekttransistor-By taking into account the special m and K values for the respective circuit Ci, its delay value Di calculated. In the next process step, the specified 'circuit delay SPDI is derived from that supplied by the user SPD field determined. This is followed by a comparison operation to determine whether the specified delay value SPDI is greater or greater is equal to the calculated delay value Di. If the SPDI value is greater than or equal to Di, the field effect transistor

YO 971 025YO 971 025

309828/0702309828/0702

schaltkreis die gestellten Bedingungen und die Suche nach einer optimaleren Schaltkreisgröße "wird für diesen Schaltkreis Ci beendet. Ergibt der Vergleich andererseits,, daß. die spezifizierte Verzögerung. SPD kleiner ist als die berechnete Verzögerung Di, wird ein Unterverfahren angeschlossen, indem in der AFS-Liste nachgeschaut wird, ob ein schnellerer Schaltkreis verfügbar. Ist ein schnellerer Schaltkreis verfügbar, erfolgt eine Prüfung dieses Schaltkreises unter Zuhilfenahme der Angaben in der AFS-Liste und der Schaltkreisfläche als Funktion der Anzahl von Eingängen. Wenn der ausgewählte schnellere Schaltkreis die vom Anwender vorgegebenen Beschränkungen hinsichtlich der Schaltkreisfläche überschreitet, wird im Rahmen des Verfahrens der nächste Schaltkreis Ci untersucht. Wenn dieser Schaltkreis jedoch die Beschränkungen hinsichtlich der Schaltkreisfläche nicht überschreitet, schließt sich daran die zur weiteren Optimierung vorgesehene Verfahrens-Schrittfolge 40 an.circuit the conditions set and the search for a more optimal circuit size "is ended for this circuit Ci. On the other hand, if the comparison shows, that. the specified Delay. SPD is less than the calculated delay Di, a sub-method is added by adding in the AFS list a check is made to see if a faster circuit is available. If a faster circuit is available, this is checked Circuit using the information in the AFS list and the circuit area as a function of the number of inputs. If the selected faster circuit is the user specified Exceeds any circuit area restrictions, the next circuit will be used under the procedure Ci examined. However, if this circuit has the limitations in terms of circuit area, closes the sequence of steps provided for further optimization is based on this 40 at.

In diesem Fall wird zunächst festgestellt, ob alle Schaltkreise Ci behandelt wurden. Wenn das der Fall ist, sind die Verzögerungswerte Di für alle Schaltkreise bekannt und das Verfahren geht weiter, indem die Zeitunterschiede A für die einzelnen. Schaltkreise Ci berechnet werden. Sind dagegen noch nicht alle Di-Werte berechnet, wird das zunächst für alle Schaltkreise Ci nachgeholt. Wenn alle Verzögerungswerte Di vorliegen, werden aus dem INNET-FeId zusammen mit dem NL-FeId alle Eingänge für den betreffenden Schaltkreis Ci ermittelt. Nachdem auf diese Weise alle Eingangsschaltkreise bestimmt sind, wird die jeweilige Zeitdifferenz A zwischen dem berechneten Verzögerungswert Di und der spezifizierten Verzögerung SPDI für alle an den jeweiligen Schaltkreis Ci angeschlossenen Eingangsschaltungen bestimmt. Der Wert der Zeitdifferenz wird durch Subtraktion der spezifizierten Verzögerung SPDI von dem errechneten Verzögerungswert Di ermittelt. Anschließend wird der kritische Eingangsschaltkreis identifiziert, der die maximale Zeitdifferenz aufweist. Die Ermittlung des kritischen EingangsSchaltkreises ist in solchen Fällen.erforderlich, in denen die Auslegung eines einzelnen Schaltkreises Ci unmittelbar Einfluß auf andere an denIn this case, it is first determined whether all circuits Ci have been treated. If so, the delay values Di for all circuits are known and the process goes further by adding the time differences A for each. Circuits Ci can be calculated. If, on the other hand, not all Di values have yet been calculated, this is first done for all circuits Ci made up. When all delay values Di are available, the INNET field together with the NL field are all inputs for determined the circuit Ci concerned. After all input circuits have been determined in this way, the respective Time difference A between the calculated delay value Di and the specified delay SPDI for all at the respective Input circuits connected to circuit Ci are determined. The value of the time difference is obtained by subtracting the specified delay SPDI is determined from the calculated delay value Di. Then it becomes the critical input circuit identified that has the maximum time difference. The identification of the critical input circuit is in such Cases where the interpretation of an individual Circuit Ci directly affects others at the

YO 9 71 025YO 9 71 025

309828/0702309828/0702

Schaltkreis Ci angeschlossene Schaltkreise hat. Indem man den am meisten anfälligen Schaltkreis identifiziert, kann angenommen werden, daß, wenn dessen Verzögerungsbedingungen erfüllt sind, auch die damit verbunden übrigen Schaltkreise die Verzögerungsbedingungen erfüllen, wenn die Belastung von Ci modifiziert wird. Nach der Ermittlung des kritischen Schaltkreises wird die Gesamtverzögerung DT durch Aufsummierung der Einzelverzögerungen Di sowie der kritischen Verzögerung Dcrit berechnet. Nachdem die Gesamtverzögerung DT feststeht, wird im Verfahrensablauf eine hypothetische Flächenvergrößerung all der an den kritischen Schaltkreis angeschlossenen Schaltungen simuliert. D.h., es werden nur solche Schaltungen flächenvergrößert, die überhaupt noch vergrößert werden können und die momentan noch nicht die Anwenderspezifikationen erfüllen. Dann wird der sich neu ergebende Gesamtverzögerungswert DT* durch Aufsummierung der neuen Einzelverzögerungen Di' sowie der kritischen Verzögerung Dcrit1 berechnet. Daran an schließt sich ein Vergleich von DT1 mit dem früher ermittelten Wert DT zur Feststellung, ob die hypothetische Flächenvergrößerung zu einer Reduzierung der Gesamtverzögerung der Schaltkreise Ci und Crit geführt hat. Ist die Gesamtverzögerung reduziert worden, wird in der CFS-Liste der in Frage kommenden Schaltkreise ersetzt, um die Flächenvergrößerung der Schaltkreise Ci zum Ausdruck zu bringen. Kann jedoch eine Flächenreduzierung nicht festgestellt werden, geht das Verfahren weiter mit dem Verfahrensschritt 50.Circuit Ci has connected circuits. By identifying the most vulnerable circuit, it can be assumed that if its delay conditions are met, the remaining circuits connected to it will also meet the delay conditions if the loading of Ci is modified. After the critical circuit has been determined, the total delay DT is calculated by adding up the individual delays Di and the critical delay Dcrit. After the total delay DT has been determined, a hypothetical increase in area of all the circuits connected to the critical circuit is simulated in the process sequence. In other words, only those circuits are enlarged which can be enlarged at all and which currently do not yet meet the user specifications. Then the newly resulting total delay value DT * is calculated by adding up the new individual delays Di 'and the critical delay Dcrit 1 . This is followed by a comparison of DT 1 with the earlier determined value DT to determine whether the hypothetical increase in area has led to a reduction in the overall delay of the circuits Ci and Crit. If the total delay has been reduced, the circuits in question are replaced in the CFS list in order to express the increase in area of the circuits Ci. However, if a reduction in area cannot be determined, the method continues with method step 50.

Unter Bezugnahme auf Fig. 3 wird im folgenden die Anwendung der vorbeschriebenen Verfahrens auf einen konkreten Schaltungsblockgraphen dargestellt. Der in Fig. 3 gezeigte Schaltungsgraph besteht aus den Eingangsanschlüssen 105, 100 und 102, den Feldeffekttransistorschaltungen (Blöcken ) 1-8 sowie den Ausgangsanschlüssen 103 und 104. Die einzelnen Schaltungsblöcke sind mittels Leitungen I1 bis 15' untereinander verbunden. Mit dem erfindungsgemäßen Verfahren sollen solche Feldeffekttransistorschaltkreise ausgewählt werden, die bestimmte Verzögerungsbedingungen erfüllen, um eine insgesamt arbeitsfähige elektrischeWith reference to FIG. 3, the application of the method described above to a specific circuit block graph is illustrated below. The circuit diagram shown in FIG. 3 consists of the input connections 105, 100 and 102, the field effect transistor circuits (blocks) 1-8 and the output connections 103 and 104. The individual circuit blocks are connected to one another by means of lines I 1 to 15 '. With the method according to the invention, such field effect transistor circuits are to be selected which meet certain delay conditions in order to achieve an overall functional electrical

YO 971 025YO 971 025

309828/0702309828/0702

Schaltung zu bilden und mit einer minimalen Verlustleistung sowie mit möglichst kleiner Halbleiterfläche für die Gesamtschaltung auskommen. Zur Erläuterung des Verfahrens ist bewußt ein relativ einfaches Beispiel gewählt, wobei jedoch klar ist, daß die Vorteile des Verfahrens sich insbesondere bei sehr komplexen Schaltungsgraphen auswirken.To form circuit and with a minimum power loss and with the smallest possible semiconductor area for the entire circuit get along. A relatively simple example is deliberately chosen to explain the procedure, although it is clear that that the advantages of the method are particularly evident in the case of very complex circuit graphs.

Das genannte Verfahren zur Erstellung einer in der obengenannten Hinsicht optimalen Gesamtschaltung geht wieder nach dem in den Fign. IA, IB sowie 2A-2C dargestellten Schrittfolgeablauf vor sich. Zunächst werden die den Schaltungsblockgraphen kennzeichnenden sowie die vom Anwender mitgeteilten Spezifikationen als Daten in einen Speicher eingelesen. In Fig. 5 ist dargestellt, in welcher Form die vom Anwender vorgegebenen Daten vorliegen können, die den Schaltungsblockgraphen nach Fig. 3 vollständig kennzeichnen. Daneben sind natürlich auch andere Datenzusammenstellungen möglich. In der in Fig. 5 gegebenen Aufstellung sind die Daten in Zeilen und Spalten angeordnet. Es ist z.B. möglich, all die Daten in einer Zeile auf eine einzige Lochkarte zu übertragen. Zusätzlich zu der Aufstellung nach Fig. 5 wird vom Anwender oder Schaltungsentwerfer eine Aufstellung der verfügbaren Schaltkreise mit den zugehörigen elektrischen und physikalischen Charakteristika für jeden Schaltkreis gegeben, mit deren Hilfe alle möglichen logischen Funktionen realisierbar sind. Die verfügbaren Schaltkreise hängen von der besonderen beim Schaltungsentwurf benutzten Technologie ab. Als Beispiel für eine derartige Aufstellung ist die in Fig. 4 dargestellte Liste angegeben. Diese Liste wird als AFS-Liste bezeichnet und enthält Angaben . über die verfügbaren Schaltkreise, ihre Funktion, sowie ihre jeweils flächenmäßige Größe. Jeder der fünf angegebenen Schaltkreise repräsentiert eine Feldeffekttransistorschaltung, die einen Teil einer großintegrierten Halbleiterschaltung darstellen kann. Jede der in der AFS-Liste enthaltenen Spalten bezieht sich auf eine elektrische oder physikalische Schaltungscharakteristik des besonderen Feldeffekttransistorschaltkreises. Die Werte m und K stellen die Steigung sowie die Nullpunktverschie-The above-mentioned method for creating an overall circuit that is optimal in the above-mentioned respect is based on that in FIG Figs. IA, IB and 2A-2C shown step sequence themselves. First, the specifications that characterize the circuit block graph and those communicated by the user are listed as Read data into a memory. FIG. 5 shows the form in which the data specified by the user are present which fully characterize the circuit block graph of FIG. In addition, there are of course other data compilations possible. In the chart given in FIG. 5, the data are arranged in rows and columns. It is e.g. possible to transfer all the data in one line to a single punch card. In addition to the list according to FIG. 5, the user or circuit designer, a list of available circuits with associated electrical and physical circuits Characteristics for each circuit are given, with their help all possible logical functions can be implemented. The circuits available depend on the particular one in the circuit design used technology. The list shown in FIG. 4 is given as an example of such a list. This list is known as the AFS list and contains information. about the available circuits, their function and their each areal size. Any of the five specified circuits represents a field effect transistor circuit which is part of a large-scale semiconductor integrated circuit can. Each of the columns in the AFS list relates to an electrical or physical circuit characteristic of the special field effect transistor circuit. The values m and K represent the slope and the zero point offset

YO 971 025 ORIGINAL INSPECTEDYO 971 025 ORIGINAL INSPECTED

309828/0702309828/0702

bung (Konstante) der durch eine gerade angenäherte Kurve ein Verzögerungs-/Last Diagramm für jeden Feldeffekttransistorschaltkreis mit bestimmter Gate Größe dar. In der LE-Spalte sind die einzelnen Eingangsbelastungen angegeben, die ein Feldeffekttransistorschaltkreis darstellt, wenn man seinen Eingang betrachtet. Die Werte ZCl und ZC2 sind mit dem jeweiligen Schaltkreis zusammenhängende Belastungswerte, wobei ZCl eine Konstante ist und ZC2 in Zusammenhang mit der Anzahl der Eingänge des Schaltkreises (siehe NFAN-FeId in Flg. 5) steht. In einer weiteren Spalte sind die von den einzelnen Feldeffekttransistorschaltkreisen erzeugten Verlustleistungswerte aufgeführt. Weiterhin sind die Flächenparameter angegeben, die in Verbindung mit dem NFAN-FeId die von dem jeweiligen Schaltkreis benötigte Halbleiterfläche bestimmen. Schließlich ist für jeden Schaltkreis die maximale Schaltkreisfläche in der Tabelle aufgeführt.exercise (constant) of the curve approximated by a straight line Delay / load diagram for each field effect transistor circuit with a certain gate size. In the LE column are the specified individual input loads that a field effect transistor circuit when looking at its entrance. The values ZCl and ZC2 are related to the respective circuit Load values, where ZCl is a constant and ZC2 is related to the number of inputs in the circuit (see NFAN field in Flg. 5). In a further column are those of the individual field effect transistor circuits generated power loss values are listed. Furthermore, the area parameters are given that are used in connection with the NFAN field the semiconductor area required by the respective circuit determine. Finally, the maximum circuit area for each circuit is shown in the table.

Nachdem alle Daten in die AFS-Liste aufgenommen sind, ordnet das Verfahren die Anwenderspezifikationen zu einer Aufstellung gemäß Fig. 5. Das NL-FeId gibt die Nummern der an einen jeweiligen Schaltkreis angeschlossenen weiteren Schaltkreise an. In dem INNET-FeId sind entsprechend die Nummern der an den Eingang des jeweiligen Schaltkreises angeschlossenen Schaltkreise bzw. Leitungen angegeben. Das NFAN-FeId enthält entsprechend die Anzahl der an den Eingang angeschlossenen Schaltkreise. Das SPD-Feld gibt die maximal zulässige Verzögerung für den Schaltkreis an. Im CFS-FeId werden zu Anfang die zugehörigen Adressen in der AFS-Liste aufgeführt, in der die Schaltkreise benannt sind, die nach den vom Anwender mitgeteilten Spezifikationen den Schaltungsblockgraphen erfüllen. Im Schaltungspositionsfeld sind schließlich die Koordinaten der einzelnen Schaltkreise innerhalb der gesamten Halbleiterschaltung angegeben.After all the data has been added to the AFS list, the Process the user specifications for a list according to FIG. 5. The NL field gives the numbers of the respective Circuit connected to other circuits. In the INNET field, the numbers at the input circuits or lines connected to the respective circuit. The NFAN field accordingly contains the Number of circuits connected to the input. The SPD field gives the maximum allowable delay for the circuit at. The associated addresses are initially in the CFS field listed in the AFS list, in which the circuits are named according to the specifications communicated by the user satisfy the circuit block graph. In the shift position field Finally, the coordinates of the individual circuits within the entire semiconductor circuit are indicated.

In dem in Fig. 3 dargestellten Schaltungsblockgraph sind die einzelnen Schaltkreise bzw. Blöcke durch Schaltkreisnummern 1-8 bezeichnet. Im Verfahren wird ein Index i benutzt, mit dem demgegenüber unterschiedliche Schaltungen zusammengestellt undIn the circuit block graph shown in FIG. 3, the individual circuits or blocks are indicated by circuit numbers 1-8 designated. In the method, an index i is used, with which, in contrast, different circuits are put together and

YO 971 02 5YO 971 02 5

309828/0702 ORIGINAL INSPECTED309828/0702 ORIGINAL INSPECTED

die erforderlichen Informationen für den jeweiligen Schaltkreis mit dem Index i erhalten werden können. Bevor jeder Schaltkreis sequentiell untersucht wird, werden die Werte VM und HD für die erforderlichen vertikalen Metallisierungs·· und horizontalen Diffusions verbindungen im Rahmen der zu erstellenden Gesamtschaltung berechnet. Von den den im Schaltungspositionsfeld verfügbaren xy-Koordinaten können diese HD- und VM-Werte durch einfache Subtraktion der jeweiligen Koordinatenpositionen errechnet werden. Die sich ergebenden Werte sind in der folgenden Tabelle zusammengestellt. the necessary information for the respective circuit can be obtained with the index i. Before any circuit is examined sequentially, the values VM and HD are required for the vertical metallization ·· and horizontal diffusion connections within the framework of the overall circuit to be created calculated. These HD and VM values can be obtained from the xy coordinates available in the shift position field by simple subtraction the respective coordinate positions can be calculated. The resulting values are compiled in the following table.

IJD YüIJD Yü

1 20 151 20 15

2 20 102 20 10

5 20 -O5 20 -O

6 20 06 20 0

7 0 07 0 0

8 0 08 0 0

Nach der Berechnung der Metallisierungs- und Diffusionslängen beginnt das Verfahren, in dem für den Index i = 1 der Schaltkreis mit der Nummer 1 zur Behandlung aufgerufen wird. Für den Schaltkreis wird die gesamte Ausgangsbelastung sowie die zugehörige Verzögerung berechnet. Zunächst wird aus dem CFS-FeId die Adresse Al des verfügbaren Feldeffekttransistorschaltkreises ermittelt, der die gewünschte Funktion erfüllen sollte. Aus der AFS-Liste werden zur Adresse Al die Belastungsparameter ZCl und ZC2 ermittelt, die in diesem Fall 0,75 bzw. 0,7 betragen. Aus dem NFAN-FeId ergibt sich für den Schaltkreis 1, daß er nur einen Eingang aufweist, woraus unter Anwendung der früher genannten Gleichung (1) folgt: .After calculating the metallization and diffusion lengths the procedure begins in which the circuit with the number 1 is called for treatment for the index i = 1. For the circuit the total output load and the associated delay are calculated. First of all, the CFS field becomes the address Al of the available field effect transistor circuit determined which should perform the desired function. From the AFS list the load parameters ZCl and ZC2 are determined for address Al, which in this case are 0.75 and 0.7, respectively. From the NFAN field it results for the circuit 1 that it has only one input, from which by applying the equation mentioned earlier (1) follows:.

■ SC = 0,75 + 0,07 Xl= 0,82.
YO 971 025
■ SC = 0.75 + 0.07 Xl = 0.82.
YO 971 025

309828/0702309828/0702

Als nächstes wird der Wert ZI für die Belastung durch d#e erforderlichen Verbindungen berechnet. Dies geschieht entsprechend der früheren Gleichung (2). Mit den Werten KM *= 0,03 und KD β 0*1 ergibt sich damitNext, the value ZI for the load from the required connections is calculated. This is done according to the earlier equation (2). With the values KM * = 0.03 and KD β 0 * 1 results

ZJ * 15 χ Q,03 + 20 χ 0,1 = 2,45ZJ * 15 χ Q, 03 + 20 χ 0.1 = 2.45

Daran anschließend wird die Belastung durch die an den gerade zu berechnenden Schaltkreis angeschlossenen weiteren Schaltkreise ermittelt. Dazu werden zunächst aus dem NL-rFeld (Fig. 5) die Adressen der angeschlossenen Schaltkreise in der AFS-kiste aufgesucht. Es ergibt sich, daß vom Schaltkreis 1 d&e Schaltkreise 3, 4, 5 und 6 getrieben werden. Aus der zugehörigen Zeile im CFS-FeId ergibt sich, daß all diese Schaltkreise vom gleichein Typ sind und unter der Adresse Al in der AFS-Liste gefunden werden können. Der Wert für die Eingangslast ergibt sich dort aus der LE-Spalte zur Adresse Al mit 0,5. Damit beträgt der Wert ZD für die von den angeschlossenen Schaltkreisen dargestellte Last ZD =This is followed by the burden of the straight further circuits connected to the circuit to be calculated are determined. For this purpose, first of all, the Addressed the connected circuits in the AFS box. As a result, from the circuit 1, d & e circuits 3, 4, 5 and 6 are driven. From the corresponding line in the CFS field it turns out that all these circuits are of the same type and are found at address A1 in the AFS list can. The value for the input load results from the LE column for address Al with 0.5. The value ZD for the load ZD = represented by the connected circuits

Aus den so ermittelten Belastungswerten ZG, ZI: und ZD wird anschließend die gesamte Belastung entsprechend der früher angegebenen Gleichung (3) ermittelt, die sich im Falle des Schaltkreises 1 mit ZT = 5,27 ergibt. Anschließend wird die Approximation der Last/Geschwindigkeitskurve für den Schaltkreis durchgeführt, wobei auf die zur Adresse Al zugehörigen Werte m und K Bezug genommen wird. Für den Schaltkreis 1 beträgt m ■«= 30 und K = 5. unter Benutzung eier Gleichung (4) ergibt sich für den SchaltkreisThe resulting load values ZG, ZI: and ZD then become the total load is determined according to equation (3) given earlier, which applies to the case of the circuit 1 with ZT = 5.27 results. Then the approximation of the Load / speed curve performed for the circuit, with reference to the values m and K associated with address A1. For circuit 1, m = 30 and K = 5. Below Using an equation (4) results for the circuit

D= 30 χ 5,27 +■ 5 = 16 3,1D = 30 χ 5.27 + ■ 5 = 16 3.1

Aus dem SPD-Feld in Fig. 5 ergibt sich für die spezifizierte Verzögerung» die nicht überschritten werden sollte, der Wert 125. Da die anschließende Vergleichsoperation bezüglich des spezifizierten Verzögerungswertes 125 und des errechneten Wertes 163,1 zeigt, daß die errechnete Verzögerung größer ist, als der in der Spezifikation angegebene Wert, wird das, Verfahren: .fojrtge~From the SPD field in FIG. 5, the specified Delay »which should not be exceeded, the value 125. Since the subsequent comparison operation with respect to the specified delay value 125 and the calculated value 163.1 shows that the calculated delay is greater than that value given in the specification, the, procedure: .fojrtge ~

YO 971 025YO 971 025

309 8 28/070 2309 8 28/070 2

führt, indem in der AFS-Idste nach eiiiem schnelleren Schaltkreis gesucht wird. Dies wird erreicht durch Fortschaltung zur nächsten Adresse A2. Es ist zu beachten,- daß die Schaltkreise in der AFS-Liste so angeordnet sind, daß die Schaltkreise Al und A2 dieselbe Funktion ausüben, wobei der Schaltkreis A2 jedoch schneller als der Schaltkreis Al ist. In gleicher Weise erfüllt auch der Schaltkreis A5 dieselbe logische Funktion wie der Schaltkreis A4, weist jedoch ebenfalls unterschiedliche Charakteristika auf. Da dieser· Verfahrensschritt ergibt, daß ein schnellerer Schaltkreis unter der Adresse A2 verfügbar ist, wird eine Berechnung durchgeführt zur Bestimmung der Schaltkreisgröße als Funktion des zugehörigen NFAN-Wertes (Anzahl der Eingänge), der in diesem Fall 1 ist. Mit diesem NFAN-Wert 1 wird der Flächenparameter 4 multipliziert und festgestellt, daß die Fläche des unter A2 aufgeführten Schaltkreises die maximale Schaltkreisfläche 40 nicht überschreitet. Daran an schließt sich nun die Einleitung eines ünterverfahrens zur Optimierung des Schaltkreises hinsichtlich der Zeiterfordernisse, unter Beachtung einer möglichst kleinen Schaltkreisfläche sowie einer möglichst kleinen Schaltkreisverlustleistung. Für den Fall des Schaltkreises 1, dessen einziger Eingang mit einem Eingangsanschluß verbunden ist, ist die kritische Schaltkreisverzögerung Dcrit = 0 und damit DT = 163,1. Es wird nun ein hypothetischer übergang von Cl nach A2 gemacht und dafür DTl = 113,4 gefunden. Da dieser neue DT-Wert DTl kleiner ist als DT, wird im CFS-FeId anstelle von Al nunmehr A2 für den Schaltkreis 1 eingesetzt. Der neue Verzögerungswert für den Schaltkreis ist damit Di = 113,4 -Q = 113,4.leads by looking for a faster circuit in the AFS Idste is searched. This is achieved by switching to the next address A2. It should be noted that - the circuits in the AFS list are arranged so that the circuits A1 and A2 perform the same function, but the circuit A2 faster than the circuit is Al. The circuit also fulfills in the same way A5 has the same logical function as circuit A4, but also has different characteristics. Since this If the process step shows that a faster circuit is available at address A2, a calculation is carried out to determine the circuit size as a function of the associated NFAN value (number of inputs), which in this case is 1. With This NFAN value 1 is multiplied by the area parameter 4 and found that the area of the circuit listed under A2 the maximum circuit area does not exceed 40. This is followed by the initiation of a sub-procedure to optimize the circuit with regard to the time requirements, taking into account the smallest possible circuit area and the smallest possible circuit power loss. For the case of circuit 1, the only input of which with a Input port is the critical circuit delay Dcrit = 0 and thus DT = 163.1. It will now be a Hypothetical transition from Cl to A2 made and DTl = 113.4 found. Since this new DT value DTl is smaller than DT, In the CFS field, instead of A1, A2 is now used for the circuit 1 used. The new delay value for the circuit is thus Di = 113.4 -Q = 113.4.

Der nächste Verfahrensschritt besteht wieder in einem Test, ob der neue Schaltkreis unter der Adresse A2 gegenüber der spezifizierten Verzögerung von 125 kleiner oder gleich ist. Da in diesem Fall die spezifizierte Verzögerung 125 betrug, ist diese Bedingung erfüllt, und das Verfahren zur Ermittlung des Schaltkreises 1 ist abgeschlossen. Der Index i wird um 1 fortgeschaltet und somit der Schaltkreis 2 in gleicher Welse festgelegt. Es ist festzustellen, daß das .UnterverfahrenThe next procedural step is again a test, whether the new circuit at address A2 is less than or equal to the specified delay of 125. Since the specified delay was 125 in this case, this condition and the method of determination are met of circuit 1 is complete. The index i is incremented by 1 and thus the circuit 2 in the same way Catfish set. It should be noted that the sub-procedure

°25 '309828/0702° 25 '309828/0702

zur weiteren Optimierung solange wiederholt wird, bis jede der folgenden Bedingungen erfüllt ist: (1) ein verfügbarer Schaltkreis erfüllt die vom Anwender vorgeschriebenen Geschwindigkeitserfordernisse; (2) die maximale Schaltkreisfläche wird überschritten; (3) üT" 2 DT' (4) es sind keine weiteren Schaltkreise desselben Typs in der AFS-Liste verfügbar. Wenn ira Laufe des Verfahrens keine der obengenannten Bedingungen zu erfüllen ist, wird an den Anwender ein Hinweis ausgegeben, so daß er die physikalischen oder elektrischen Schaltkreiseigenschaften modifizieren und den Verfahrensablauf noch einmal wiederholen kann.it is repeated for further optimization until each of the following conditions is met: (1) an available circuit meets the speed requirements prescribed by the user; (2) the maximum circuit area is exceeded; (3) üT "2 DT '( 4 ) There are no further circuits of the same type available in the AFS list. If none of the above conditions are to be met during the course of the procedure, a message is issued to the user so that he can use the modify physical or electrical circuit properties and repeat the process again.

Der beschriebene Verfahrensablauf wird in der für den Schaltkreis 1 gezeigten Weise für alle Schaltkreise des Schaltungsblockgraphen durchgeführt. Zur Erläuterung der Berechnung des kritischen Zweiges soll nun angenommen werden, daß das Verfahren bis zur Berechnung des Schaltkreises 5 fortgeschritten ist, d.h. der Index i ist gleich 5. Zu dem Zeitpunkt, an dem das Verfahren den Beginn des Optimierungs-Unterverfahrens erreicht, wird geprüft, ob alle Schaltkreise behandelt worden sind. Ist das der Fall, sind auch alle Verzögerungswerte für jeden Schaltkreis berechnet. Wäre dies jedoch der erste Durchgang für den ersten Schaltkreis, würde eine Berechnung aller übrigen Verzögerungswerte noch auszuführen sein. Da in diesem Fall der gerade berücksichtigte Schaltkreis der Schaltkreis 5 ist, sind auch die Verzögerungen für jeden der Schaltkreise bereits bekannt. Um den kritischen Schaltungszweig zu bestimmen, ist es zunächst nötig, die Verzögerung des Schaltkreises 2 zu berechnen. In gleicher Weise wie für den SchaltkreisThe process sequence described is used in the manner shown for circuit 1 for all circuits of the circuit block graph carried out. To explain the calculation of the critical branch, it should now be assumed that the method continues up to the calculation of the circuit 5 has progressed, i.e. the index i is equal to 5. At the point in time at which the method commences the If the optimization sub-procedure is reached, it is checked whether all Circuits have been covered. If this is the case, all delay values are also calculated for each circuit. Would this however, the first pass for the first circuit, a calculation of all remaining delay values would still have to be performed. Since in this case the circuit under consideration is circuit 5, so are the delays for each of them Circuits already known. In order to determine the critical circuit branch, it is first necessary to determine the delay of the circuit 2 to calculate. In the same way as for the circuit

1 wird die Verzögerung für den Schaltkreis 2 mit 123,6 ermittelt. Daran kann sich die Errechnung des kritischen Schaltungszweiges anschließen. Die Zeitdifferenz für den mit dem Schaltkreis 1 zusammenhängenden Pfad beträgt -11,6, nämlich 113,4 (berechnet) zu 125 (Spezifikation). Der Differenzwert bezüglich des Schaltkreises1, the delay for circuit 2 is found to be 123.6. This can be used to calculate the critical circuit branch connect. The time difference for the circuit 1 related Path is -11.6, namely 113.4 (calculated) to 125 (specification). The differential value with respect to the circuit

2 ist gleich -1,4. Bei der Bestimmung des kritischen Eingangsschaltkreises über den maximalen Zeitdifferenzwert Δ ergibt sich, daß der SchciLtkreis 2 als kritischer Schaltkreis anzusehen 1st, da seine Zeitdifferenz -1,4 größer ist als die des Schaltkreises2 is equal to -1.4. When determining the critical input circuit using the maximum time difference value Δ, it follows that the circuit 2 is to be regarded as a critical circuit, since its time difference -1.4 is greater than that of the circuit

YO 971 02 5YO 971 02 5

'3 0 fJ f! 2 8/0702 '3 0 fJ f! 2 8/0702

1 mit -11,6. Nachdem" so der kritische Schaltkreis 2 -bestiiiiint· ist>' wird die gesamte Verzögerung ciurch Addition der Verzögerung DS'. mit der kritischen Verzögerung D2 berechnet, was in diesem Fall· mit "; DB - 170/8 und -der kritischen Verzögeriang D2 - 12;3>6 eine Gesamt^ verzögerung BT = 294,4 ergibt. Nach der Berechnung der-gesamten ■ -; Verzögerung DT wird ein hypothetischer Ersatz der Schaltkreise *> 5 und 6 durch die nächstbesseren verfügbaren Schaltkreise /die :; * nicht die Änwönderspezifikationen überschreiten, vorgenommen^ — In diesem Fall; können beide Schaltkreise 5 und 6 vergrößert' werden, d.h. durch den unter der Adresse 2 in der AFS-Liste - ''-angegebenen Schaltkreis ersetzt v/erden. Es ist in diesem Falle bekannt, daß eine solche hypothetische InkremeHtierung-äürcnge-' ^ führt werden kann, da die berechnete Verzögerung düirch den - ; · Schaltkreis 6 gleich 168,7 und-damit größer als; die spezifizierte-Verzögerung von 125 ist. ·" : ■: —·- .-'_■·. : .; .; 1 with -11.6. After "so the critical circuit 2 -bestiiiiint · is>'the total delay ci is calculated by adding the delay DS' with the critical delay D2, which in this case · with"; DB - 170/8 and -the critical delay D2 - 12 ; 3> 6 results in a total ^ delay BT = 294.4. After calculating the-total ■ - ; Delay DT becomes a hypothetical replacement of circuits *> 5 and 6 with the next better available circuit / those :; * do not exceed the change specifications, made ^ - In this case; Both circuits 5 and 6 can be enlarged, ie replaced by the circuit specified under address 2 in the AFS list - '' - specified. In this case it is known that such a hypothetical incrementation can be carried out, since the calculated delay is due to the - ; · Circuit 6 equals 168.7 and-therefore greater than ; is the specified delay of 125. · ": ■: - · -.-'_ ■ ·.:. ; . ;

Daran anschließend wird die neue Gesamtverzögerung DT' = Di1 + Dcrit1 = 127,2 +137,6 = 264,8, Da DT mit 294,4 größer-war-als ;■ DT1 mit 264,8,'.wird, wie aus dem Schrittfolgediagramm in-Fig» 2G-'zu ersehen ±st.-/'a±& CFS-Liste modifiziert, so daß sie nun für detf Schaltkreis 5 die -flächenvergrößerte Schaltung un-ter der-Adresse' A2 enthält> In Schrittfoigediagramm wird dann eine ^VerzMeigung r zum Block 50 vargenommen, in dem festgestellt wird/ daß die Schaltkreisfläche; der ausgewählten Schaltung vergrößert;w4iirde: - '-= (siehe Fig;*i IB) . Für diesen Bejahungsfall geht das■ Verfahreh? äanö wieder beim Verfahrensschritt 30 weiter mit einem Vergleich· der für den Sehaltkreis 5 berechneten und dafür -spezifizierten ^er- ^ zögerung. In diesem Fall ist die Spezifikation νοΐϊ-125-'nicht ·■'· eingehalten. über den Wein-Pfad wird im nächsten Schritt-gefragt» ob ein schnellerer Schaltkreis verfügbar ist. Da'kein schnellerer; Schaltkreis vorhanden ist, wird das OptimierungsverfährenOabge'r'. "r schlossen und die Verzweigung zum Prozeßschritt' 50 eingeschlagen:i (Fig. 2B>, Da während des letzten Durchgangs die Schaltkreiisflär :J ehe nicht vergrößert worden war, schließt sieh gleich dife an, ob alle Schaltkreise Ci bestimmt sind* Da im Rahmen·.des Verfahrens bisher lediglich fünf der Sehaltkreise festgelegtSubsequently, the new total delay DT '= Di 1 + Dcrit 1 = 127.2 +137.6 = 264.8, since DT with 294.4 is greater-than; ■ DT 1 with 264.8,' As can be seen from the step-by-step diagram in FIG. 2G- '+ st .- /' a + & CFS list modified so that it now contains the enlarged circuit for circuit 5 at the address'A2> a ^ r VerzMeigung is then vargenommen to block 50. in Schrittfoigediagramm, in which it is determined / that the circuit surface; the selected circuit enlarged ; w4 would : - '- = (see Fig ; * i IB). For this affirmative case, the ■ procedural? Then again in method step 30 with a comparison of the delay calculated and specified for the control circuit 5. In this case the specification νοΐϊ-125-'not · ■ '· is observed. In the next step, the wine path is used to ask »whether a faster circuit is available. No faster there; Circuit is present, the optimization procedure isOabge'r '. " r closed and branched out to process step '50 : i (Fig. 2B>, Since during the last pass the circuit was not enlarged: J before was not enlarged, see dife immediately to see whether all circuits Ci are determined * Da in the frame ·. Of the procedure so far only five of the Sehaltkreise have been defined

309828/0702309828/0702

sind, wird der Index i um 1 weitergeschaltet und die Verzweigung zum Verfahrensschritt 20 eingeschlagen. In gleicher Weise wie oben für die Schaltkreise 1 und 5 beschrieben, werden alle Schaltkreise 1 bis 8 des in Fig. 3 als Anwendungsbeispiel dargestellten Schaltungsblockgraphen festgelegt.are, the index i is incremented by 1 and the branch to method step 20 is taken. In the same way as described above for circuits 1 and 5, all circuits 1 to 8 of the circuit block graph shown in FIG. 3 as an application example.

Es soll schließlich festgestellt werden, daß abweichend von dem als Anwendungsbeispiel beschriebenen Schaltungsblockgraphen mit Leitungsverbindungen der einzelnen Schaltkreise auch sogenannte DOT-Verbindungen mit dem Verfahren behandelt werden können. Bei solchen DOT-Verbindungen wird durch eine Leitungsverknüpfung bereits eine logische Funktion dargestellt. Solche DOT-Verbindungen werden behandelt, wie wenn der gerade behandelte Schaltkreis mehr Eingangsschaltungen aufwiese. Weiterhin ist in dem dargestellten Anwendungsbeispiel die Möglichkeit nicht berücksichtigt, daß ein Schaltkreis mehrere Augänge ausweisen kann. Dieser Schaltungstyp kann mit dem vorgeschlagenen Verfahren behandelt werden, in dem jeder Ausgang separat dem Verfahren unterworfen wird. Weiterhin ist festzustellen, daß die AFS-Liste je nach Anwendungsfall weit mehr Parameter aufweisen kann, um so eine genauere Schaltkreisbelastung und -verzögerung festzulegen. Darüberhinaus kann das Verfahren auch dazu Anwendung finden, optimale Feldeffekttransistor-Gate-Größen zu berechnen, indem die Schaltkreisgrößen inkrementiert und die übrigen in der AFS-Liste angegebenen Parameter daraus berechnet werden. Während das beschriebene Ausführungsbeispiel der Erfindung hinsichtlich einer minimalen Schaltkreisfläche optimale Schaltkreise auszuwählen gestattete, können die erfindungsgemäßen Maßnahmen auch dazu benutzt werden, eine Schaltungsoptimierung auf der Grundlage anderer Parameter zu erreichen.Finally, it should be noted that, deviating from the circuit block graph described as an application example Line connections of the individual circuits also so-called DOT connections can be treated with the method. at such DOT connections are already established by a line link represented a logical function. Such DOT connections are treated as if the circuit just dealt with was more Input circuits. Furthermore, in the application example shown, the possibility is not taken into account that a Circuit can have multiple outputs. This type of circuit can be treated with the proposed method in which each outcome is subjected to the procedure separately. It should also be noted that the AFS list, depending on the application, is wide can have more parameters so as to provide more accurate circuit loading and delay. In addition, the procedure can also be used to calculate optimal field effect transistor gate sizes by incrementing the circuit sizes and the other parameters specified in the AFS list are calculated from this. While the described embodiment of Invention optimal in terms of a minimal circuit area Allowed to select circuits, the measures according to the invention can also be used to optimize the circuit on the basis of other parameters to achieve.

YO 971 025YO 971 025

309828/0702309828/0702

Claims (6)

PATENTAMS F ROCHEPATENTAMS F ROCHE 1. Verfahren zur Optimierung einer Halbleiterschaltung, die mehrere Einzelschaltkreise, vorzugsweise als Feldeffekttransistorstrukturen, enthält und funktionell in Form eines Schaltungsblockgraphen sowie durch die Angabe elektrischer und physikalischer Spezifikationswerte vorgegeben ist, bei dem eine Auswahlmöglichkeit eines konkreten Schaltkreises unter mehreren verfügbaren Schaltkreisen besteht, dadurch ' gekennzeichnet, daß zur Festlegung der Einzelschaltkreise, vorzugsweise der Feldeffekttransistorstrukturen, derselben elektrischen Funktion deren jeweiliger Flächenaufwand als veränderlich angenommen und aus mehreren flächenverschiedenen Schaltkreisen derselben Funktion derjenige für den Schaltungseinsatz festgelegt wird, der bei minimalem Flächenaufwand die gleichzeitig an die Gesamtschaltung gestellten weiteren elektrischen und physikalischen Bedingungen erfüllt.1. Method for optimizing a semiconductor circuit that contains several individual circuits, preferably as field effect transistor structures, and functionally in the form of one Circuit block graphs as well as by specifying electrical and physical specification values is given, in which a choice of a specific circuit consists of several available circuits, characterized in that for the definition of the individual circuits, preferably the field effect transistor structures, the same electrical function, their respective area expenditure assumed to be changeable and one of several circuits with different areas of the same function is specified for the circuit insert, which is also connected to the overall circuit with a minimal amount of space required other electrical and physical conditions. 2. Verfahren nach Anspruch 1, gekennzeichnet durch die folgenden Verfahrensschritte:2. The method according to claim 1, characterized by the following process steps: - Übernahme der den zu realisierenden Schaltungsblockgraphen bestimmenden Angaben sowie der Anwenderspezifikationen mit den elektrischen Randbedingungen in einen Speicher;- Adoption of the circuit block graphs to be implemented determining information as well as the user specifications with the electrical boundary conditions in a memory; - aufeinanderfolgendes Abrufen der Speieherangaben für jeden Einzelschaltkreis;- successive retrieval of the storage information for each individual circuit; - Errechnen der jeweiligen Schaltkreisbelastung und der sich damit ergebenden elektrischen Eigenschaften, z.B. der Schaltkreisverzögerung;- Calculation of the respective circuit load and the resulting electrical properties, e.g. the circuit delay; - Vergleichen der errechneten und der vorher spezifizierten elektrischen Daten;- Comparing the calculated and the previously specified electrical data; - für jeden die Spezifikationen erfüllenden Schaltkreis u.U. iterativ prüfen, ob eine weitere, insbesondere die benötigte Halbleiterfläche betreffende Optimierungsmöglichkeit aufgrund der verfügbaren weiteren Schaltkreise derselben Funktion vorliegt;- For each circuit that meets the specifications, iteratively check whether another circuit, in particular the Possibility to optimize the required semiconductor area the same function exists due to the additional circuitry available; - bei möglicher Optimierung und gleichzeitiger Spesifika-- with possible optimization and simultaneous specifics YO 971 025YO 971 025 309828/0702309828/0702 tionserfüllung den bereits ermittelten Schaltkreis jeweils durch den hinsichtlich des Optimierungsziels günstigeren ersetzen;tion fulfillment of the circuit already determined by the one with regard to the optimization target replace cheaper; - Wiederholung dieser Schrittfolge zur Festlegung aller erforderlichen Einzelschaltkreise und Ausgabe der so bestimmten Schaltkreiszusammenstellung.- Repeat this sequence of steps to determine all required individual circuits and output the so specific circuit configuration. 3. Verfahren mindestens nach Anspruch 1, dadurch gekennzeichnet, daß für jeden neu festgelegten Schaltkreis die Gesamtverlustleistung der Schaltung berechnet und mit der Anwenderspezifikation auf Zulässigkeit geprüft wird.3. The method at least according to claim 1, characterized in that the total power loss for each newly established circuit the circuit is calculated and checked against the user specification for admissibility. 4. Verfahren mindestens nach Anspruch 2, dadurch gekennzeichnet, daß für jeden untersuchten Schaltkreis die Gesamtbelastung aus der unmittelbaren Schaltkreisbelastung, der Belastung durch die Verbindungsleitungen und durch die jeweils angeschlossenen Schaltkreise berechnet wird.4. The method at least according to claim 2, characterized in that the total load for each examined circuit from the immediate circuit load, the load from the connecting lines and from the respective connected circuits is calculated. 5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß es auf einzelne Feldeffekttransistorstrukturen in logischen Verknüpfungsschaltungen angewendet wird, daß für jede Feldeffekttransistorstrukur in Abhängigkeit von ihrer Leistungs-/Gate-Fläche-Beziehung der erforderliche Flächenaufwand berechnet wird, daß für jede untersuchte Feldeffekttransistorstruktur die zugehörige Schaltgeschwindigkeit berechnet, mit der vorgegebenen Spezifikation verglichen und bei Nichterfüllung die nächstbessere Feldeffekttransistorstruktur an deren Stelle gesetzt wird und daß diese Schrittfolge für jede flächenveränderte Struktur vorgenommen wird, bis die Geschwindigkeitsspezifikation eingehalten ist.5. The method according to any one of the preceding claims, characterized in that it is based on individual field effect transistor structures applied in logic gating circuits is that for each field effect transistor structure depending on its power / gate area relationship the required Area expenditure is calculated that for each examined Field effect transistor structure calculates the associated switching speed with the given specification compared and, if not fulfilled, the next better field effect transistor structure is put in its place and that this sequence of steps is carried out for each face-changing structure until the speed specification is observed. 6. Verfahren mindestens nach Anspruch 5, dadurch gekennzeichnet, daß die Auswahl des nächstbesseren, insbesondere nächstschnelleren Schaltkreises derselben elektrischen Funktion die folgenden Schritte umfaßt;6. The method at least according to claim 5, characterized in that the selection of the next better, in particular the next fastest Circuit of the same electrical function comprises the following steps; YO 971 025YO 971 025 309828/0702309828/0702 - 23 - 2259728- 23 - 2259728 Bestimmen aller Eingangszweige des. gerade behandelten Schaltkreises; Determining all input branches of the circuit just discussed; Auswählen des kritischen Eingangszweiges bzw. des kritischen an den Eingang geschalteten Schaltkreises; hypothetisches übergehen zu den jeweils nächstbesseren Schaltkreisen hinsichtlich aller zusammenhängenden Schaltkreise und Neuberechnen der kritischen Größe, z.B. des GesamtgeschwindigkeitsVerhaltens; .Selecting the critical input branch or the critical circuit connected to the input; hypothetical transition to the next better one Circuits with regard to all connected circuits and recalculating the critical quantity, e.g., the overall speed behavior; . Ersatz der bisher festgelegten Schaltkreiszusammenstellung für den Fall, daß die Inkrementierung nach dem vorhergehenden Schritt noch die Einhaltung der Spezifikationen, z.B. der Schaltzeit, ergeben hat.Replacement of the previously established circuit configuration in the event that the incrementing after the previous Step has shown compliance with the specifications, e.g. the switching time. 309828/0702309828/0702 LeerseiteBlank page
DE2259726A 1971-12-30 1972-12-06 METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT Pending DE2259726A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US21414371A 1971-12-30 1971-12-30

Publications (1)

Publication Number Publication Date
DE2259726A1 true DE2259726A1 (en) 1973-07-12

Family

ID=22797942

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2259726A Pending DE2259726A1 (en) 1971-12-30 1972-12-06 METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT

Country Status (4)

Country Link
JP (1) JPS4879984A (en)
DE (1) DE2259726A1 (en)
GB (1) GB1352988A (en)
IT (1) IT972512B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0204178A2 (en) * 1985-06-06 1986-12-10 International Business Machines Corporation Method of optimizing signal timing delays and power consumption in LSI circuits

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6116558A (en) * 1984-07-03 1986-01-24 Sharp Corp Arranging method of pad for lsi
JPS63250152A (en) * 1987-04-07 1988-10-18 Nec Corp Layout of semiconductor integrated circuit
KR960001277B1 (en) * 1989-10-23 1996-01-25 브이엘에스아이 테크놀로지 인코퍼레이티드 Method of realizing digital signal processors using a programmed
JP2888708B2 (en) * 1992-10-23 1999-05-10 ローム株式会社 How to design logic circuits

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0204178A2 (en) * 1985-06-06 1986-12-10 International Business Machines Corporation Method of optimizing signal timing delays and power consumption in LSI circuits
EP0204178A3 (en) * 1985-06-06 1990-03-21 International Business Machines Corporation Method of optimizing signal timing delays and power consumption in lsi circuits

Also Published As

Publication number Publication date
GB1352988A (en) 1974-05-15
IT972512B (en) 1974-05-31
JPS4879984A (en) 1973-10-26

Similar Documents

Publication Publication Date Title
EP0268285B1 (en) Method and circuit arrangement for the initial loading of a secondary computer
DE3132225C2 (en) Device for addressing stored result values in the case of a fast Hadamard transformation
DE2017667A1 (en) A method for building an electronic circuit with a plurality of components to be connected to one another
DE2055784A1 (en) Data processing system
DE2625973A1 (en) PROCEDURE AND ARRANGEMENT FOR REDUNDANCY REDUCING TRANSFORMATION OF IMAGES
EP0046499A1 (en) Shift register for checking and testing purposes
DE2142634A1 (en) ASSOCIATIVE MEMORY
DE3535436C2 (en)
DE4403917A1 (en) Device to calculate an occupation count
DE2854782A1 (en) DATA PROCESSING SYSTEM
DE4128568A1 (en) MULTILAYER WIRING METHOD FOR MODIFYING THE CHIP FOR A HIGHLY INTEGRATED SEMICONDUCTOR CIRCUIT (LSI)
DE2638208C2 (en)
DE2136270A1 (en) Method and comparator for comparing two binary numbers
DE2259726A1 (en) METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT
DE2617485A1 (en) PROCEDURE AND CIRCUIT ARRANGEMENT FOR PROCESSING MICRO-COMMAND SEQUENCES IN DATA PROCESSING SYSTEMS
DE1180171B (en) Number calculator
DE2235802A1 (en) PROCEDURE AND EQUIPMENT FOR TESTING NONLINEAR CIRCUITS
DE3535215C2 (en)
DE3422287C2 (en)
DE2062164A1 (en) Method for generating a multi-level index for stored data units
DE10206658A1 (en) Method for checking an integrated electrical circuit
DE3609925C2 (en)
DE2419522A1 (en) PROCEDURE AND ARRANGEMENT FOR DIVISION OF ONE OR MORE UNUSED AREAS OF A MEMORY CONNECTED TO A COMPUTER
DE10149021B4 (en) Data processing system for designing a layout of an integrated electronic circuit of a plurality of electronic components
DE69909118T2 (en) DEVICE AND METHOD FOR SECURING AN INTEGRATED CIRCUIT

Legal Events

Date Code Title Description
OHJ Non-payment of the annual fee