DE2017667A1 - Verfahren zum Aufbau einer elektn sehen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen - Google Patents

Verfahren zum Aufbau einer elektn sehen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen

Info

Publication number
DE2017667A1
DE2017667A1 DE19702017667 DE2017667A DE2017667A1 DE 2017667 A1 DE2017667 A1 DE 2017667A1 DE 19702017667 DE19702017667 DE 19702017667 DE 2017667 A DE2017667 A DE 2017667A DE 2017667 A1 DE2017667 A1 DE 2017667A1
Authority
DE
Germany
Prior art keywords
groups
elements
connections
exchange
division
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
DE19702017667
Other languages
English (en)
Inventor
Brian Wilson North Plain field; Lm Shen Gillette; N J Kernighan (V.St A.)
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.)
AT&T Corp
Original Assignee
Western Electric Co Inc
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 Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE2017667A1 publication Critical patent/DE2017667A1/de
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/0005Apparatus or processes for manufacturing printed circuits for designing circuits by computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K1/00Printed circuits
    • H05K1/02Details
    • H05K1/14Structural association of two or more printed circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Architecture (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

Verfahren zum Aufbau einer elektrischen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen
Die Erfindung betrifft ein Verfahren zum Aufbau einer elek- , trischen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen, die zu wenigstens zwei voneinander getrennten, vorzugsweise auf getrennten Schaltungsträgern angeordneten Gruppen zusammengefaßt sind.
Die Entwicklung moderner komplizierter elektronischer Anlagen wird durch die Tatsache erschwert, daß zusätzlich zu Problemen hinsichtlich der Bauteile und Schaltungsauslegung auf Grund der Betriebsbedingungen Probleme bezüglich der physikalischen Anordnung der Bauteile in Betracht gezogen werden müssen. Die Schaltungselemente müssen auf Unterlagen angeordnet werden, beispielsweise auf einem Chassis, Druckschaltungskarten oder Halbleiterplättchen. PÜr jede dieser Anordnungen gilt eine feste Zahl von Bauelementen, die aufgenommen werden kann, und eine feste Zahl von Anschlüssen, über die sie mit den anderen Anordnungen verbunden werden kann. Weiterhin treten in der Praxis häufig zusätzliche Einschränkungen auf, die beachtet werden müssen. Beispielsweise kann es auf Grund elektrischer oder mechanischer Überlegungen erforderlich
009886/1359
ORiQiNAl. INSPECTED
daß eine bestimmte Gruppe von Bauteilen sich auf der gleichen Anordnung befindet, oder, daß gewisse Bauteile nicht auf der gleichen Anordnung sein dürfen·
ORIGINAL INSPECTED
- : '■■'■. : - · a·- ■■■;■·'■ ■ ■/';. ■:, ■■■'■ .■:'.'
PUr ein großes System und insbesondere ein großes System, das in Massenfertigung hergestellt werden soll, ist es wichtig, daß dieses Problem bezüglich der Bauteilanordnung nicht nur gelöst, sondern möglichst zweckmäßig gelöst wird. Da es sowohl einfacher als auch billiger ist, Bauteile auf der gleichen Anordnung als Bauteile auf verschiedenen Anordnungen miteinander zu verbinden, sollte die optimale Lösung; die zwischen den Anordnungen erforderlichen Verbindungen möglichst klein aachen.
Eine weitere Bedingung für die Lösung des Problems besteht darin, daß nicht nur eine zweckmäßige Lösung gefunden werden muß, sondern daß der Lösungeweg selbst zweckmäßig ist, also guten Wirkungsjrad besitzt. Ia Hinblick auf die zunehmende Kompliziertheit von elektronischen Systemen muß also das Verfahren zur Lösung des Problems so geschaffen sein, daß es sich einfach und schnell ausführen läßt. Dies bedingt, daß das Verfahren nicht zu sehr abhängig sein darf von der Anzahl von Bauteilen und der Anzahl der verfügbaren Trägeranordnungen·
Da es in dieser Hinsicht offenbar keinen veröffentlichten Stand der Technik gibt, ist anzunehmen, daß die Fachleute bisher willkürlich persönliche Verfahren bei dem Versuch benutzt haben, zu einer Lösung für die Hlnimalisierung von Verbindungskosten zu kommen.
Die Erfindung hat sich die Aufgabe gestellt, ein solches Verfahren zu schaffest. Sie geht dazu aus von einem Ver-
009Ö86/1359
fahren der eingange genannten Art und ist gekennzeichnet durch die Yerfahrensschrittes
* vorläufigeβ Aufteilen aller Bauelemente in wenigstens zwei beliebige Anfangegruppen!
2. Zählen und Speichern der Zahl von Verbindungen zwischen den beiden Anfangegruppen|.
3. Austauschen von je einen Bauelement der beiden Anfangsgruppen, Zählen der lahl von Verbindungen zwischen den Gruppen nach jeden Austausch und Berechnung der Differenz «wischen der Zahl von Verbindungen bei den Anfangegruppen und der Zahl von Verbindungen nach jedem Austausch!
4. Austauschen desjenigen Bauelementpaares, für welches die größte positive Mfferene errechnet worden ist, und anschließendes Aueschließen dieses Bauelementpaares vom weiteren Verfahren}
5· Wiederholen der Terfahrensschritte, bis alle Bauelementpaare voB Verfahren ausgeschlossen sind|
6» Beibehaltung des Austausches nur derjenigen Bauelementpeare, dii die größte Verringerung der Zahl von Verbindungen «wischen den Gruppen ergeben.
Das erfindungegeaäße Verfahren ist besonders brauchbar bei der Anordnung von Schaltungebauteilen auf Trägern, beispielsweise Chase is, !krücke chaltungskar ten oder Halb le it er plättchen.
In den Zeichnungen zeigen:
Pig 1 A und 1 B die Verbesserung bei der Anordnung einer einfachen Schaltungf die sich mit Hilfe des erfindungsgemäßen Verfahrens erzielen läßtJ
009886/1359
Fig. 2 A,.2 B und 2 C eine grafische Darstellung eines besonderen Verfahrensschrittes bei dem erfindungsgemäßen Verfahren}
Fig. 3 eine grafische Darstellung einer Weiterführung des erfindungsgemäßen Verfahrens.
Die Erfindung geht von der Verwendung einer Kostenmatrix zur Berechnung der Gesamtkosten für die Verbindungen zwischen den Gruppen einer Aufteilung für jede willkürliche Aufteilung von Bauteilen aus, wobei jede Gruppe eine Trägeranordnung daretellt. Die Kostenmatrix definiert die Kosten für die Verbindung eines bestimmten Bauteils mit jedem der anderen Bauteile. Es wird dann versucht, die Gesamtverbindungskosten durch eine Serie von Austauschvorgängen bestimmter Untergruppen innerhalb jeder Gruppe zu verringern. Wenn keine weiteren Verbesserungen mehr möglich sind, wird die sich ergebende Aufteilung gespeichert, und der Vorgang kann mit einer anderen Anfangsaufteilung wiederholt werden. Jede sich ergebende Aufteilung ist optimal oder nahe dem Optimum, und jede spezielle Aufteilung läßt sich benutzen, um die Bauteile den Trägeranordnungen zuzuordnen.
Die Erfindung läßt sich am besten bei der Betrachtung eines Modells für das Problem der Schaltungsauslegung verstehen.
Die Schaltungsbauteile können als Scheitelpunkte oder Ecken einer grafischen Darstellung angesehen werden, und die Verbindungen zwischen den Bauteilen könnte man "Kanten" nennen.
009806/1359
Jeder Kante kann ein Vert zugeordnet sein, der den Kosten für die Verbindung der beiden Scheitelpunkte an den Enden der Kante entspricht. Das Problem besteht dann darin, die Scheitelpunkte der grafischen Darstellung so In Gruppen aufzuteilen, daß die Verbindungekosten ein Minimum werden. Dabei sind die Verbindungskosten definiert als die Summe der Vierte an denjenigen Kanten, die Scheitelpunkte in verschiedenen Gruppen der Aufteilung verbinden.
Das einfachste Aufteilungeproblem, das jedoch alle wesentlichen Merkmale des allgemeinen Problems enthält, besteht darin, eine Aufteilung'mit minimalen Kosten für eine grafische Darstellung zu finden, die 2n Scheitelpunkte in zwei Gruppen mit je η-Scheitelpunkten aufweist· Dies soll eine «Zweiweg-Aufteilung11 (two-way partition) genannt werden, und die Lösung ergibt die Grundlage für die Lfeung des allgemeineren Problems«
S stelle ein System von ta Punkten mit einer zugeordneten Kostenmatrix dj* dar, wobei i ■ 1, 2, ..,, 2n und j « 1» 2» 2n ist. Jede Eintragung in der Matrix gibt die Verbindung*·· kosten der beiden entsprechenden Elemente wieor· Beispielsweise stellt die Eintragung dflb die Kosten für die Verbindung des Bauteils a mit dem Bauteil b dar. Die Matrix ist symmetrisch, da die Kosten für die Verbindung des Bauteils a mit dem Bauteil b gleich den Kosten für die Verbindung des Bauteils b mit dem Bauteil a sind, d· h.f die Verblndungskosten sind ungeriohtet. Wenn in einem bestimmten Anwendungsfall diese Kosten verschieden sind, sollten die entsprechen-
008866/13150
den Eintragungen in der Kostenmatrix gleich dem Mittelwert der beiden Kosten gesetzt werden, so daß die Kostenmatrix zwangsläufig symmetrisch wird. S muß in zwei Gruppen A und 6 aufgeteilt werden, die je η Punkte enthalten, und zwar derart, daß die Verbindungskasten
I dab
at A
beB
ein Minimum werden.
Bei gegebenem S und dj^ existiert eine Zweiweg-Aufteilung minimaler Kosten, die mit A*, B* bezeichnet werden kann. Es seien A und B irgendeine willkürliche Aufteilung« Dann gibt es Untergruppen X CTA und Y dB, wobei
derart, daß ein Austausch von X und Y zu A* und B* führt. D, h.,
A» « A - X + Y (3)
B* » B - Y + X
Es zeigt sich jetzt, daß das Problem darin besteht, X und Y ohne Betrachtung aller Wahlmöglichkeiten zu identifizieren.
Zur Durchführung dieser Identifizierung ist eine Anzahl von
rderlich. Äußere ; 009886/1359
Definitionen erforderlich. Äußere Kosten Ea sind für jedes
Or _ \ -
aeA definiert durch
day
yeR
und innere Kosten I durch
xeA
Die Gleichung (4) definiert die Gesamtkosten für die Verbindung jedes aeA mit jedem Element von B, während Gleichung (5) die Gesamtkosten für die Verbindung jedes aeA mit jedem anderen Element von A definiert. Die inneren Kosten werden bei einer Weiterbildung des ifcrfindungsgemäßen Verfahrens in Betracht gezogen. A^ und I^ sind auf ähnliche Weise für jedes beB definiert. " .
Dann wird D2, nämlich die Differenz zwischen den äußeren und inneren Kosten des Elementes z, für jedes Element in S definiert. j.
Wenn schließlich jedes aeA und jedes beB ausgetauscht sind, ergibt sich die Verringerung der Verbindungskosten, die mit Gewinn g bezeichnet wird, wie folgt:
- 2dab . (7)f
0 0 9 8 8 6/ 1 0 S 9 GPllÖINAL INSPECTED
Dies läßt sich zeigen, indem man T für die gesamten äußeren Kosttn. auf Grund aller Scheitelpunkte mit Ausnahme von a und b setzt. Dann wird:
alte Kosten « T + Ea + E^ - dfib (8)
a + E^ - dfib
Man beachte, daß sowohl E& als auch B^ den Ausdruck enthält, und eines davon muß von dem vierten Ausdruck in Gleichung (8) abgezogen werden, um das richtige Ergebnis zu erhalten. Wenn a und b ausgetauscht werden, werden ihre inneren Kosten äußereKosten und umgekehrt. Nach des Austausch gilt also für die Kosten:
neue Kosten ■ T + Ifl + I^ + dab (9)
Der Gewinn ergibt sich zu Gewinn = alte Kosten - neue Kosten
= Da + D0 - 2dab (10)
Die Identifizierung der Untergruppen X und T geht dann weiter, indem zunächst die Kostenmatrix zur Berechnung des Differenzwertes D für jedes Element in S geeäB Gleichung (6) benutzt wird. Wie die Gleichungen (4) und (5) zeigen, lassen eich die zur Berechnung von D erforderlichen Süßer«« und inneren Kosten für jedes Element durch Summierung der entsprechenden Eintragungen in der Zeile oder Spalte der Kostenmatrix d für dieses Element erhalten· Ms- können ent« weder die Zeilen oder die Spelten benutzt werden, da d eine symmetrische Matrix ist.
El werden dann dl· D-¥«rt· mr Auswahl desjenigen Paares von Elementen, Ton denen sich «ines In der Gruppe A und •Ines in der Gruppe B befindet, abgetastet, dessen Austausch den größten Gewinn 9PgIDt9 d. h. die grOBte Verringerung der Verbindungskosten. %ar Irlaiehtarung dieser Auswahl werden die D-Werte jeder Gruppe «ntspraehtnd Gleichung (11) in fallender Reihenfolge geordnet.
in)
Der Gewinn, der sich durch «laan Austausch d«r Xlemente S1 und ^ergibt, wird «nter TenmiduMg der Gleichung (7) berechnet. Danach wird der Gevinmtert fllr UiM Henente ' a1 und b2 berechnet, alt des vorhergehenden Gewinn Tergllohen und dann wird der grOlere Wert «usgewertet. Dieser Vorgang wird wiederholt, bis «In Paar Dft , Di, gefunden ist, dessen Summe kleiner oder gleich de« höchsten Torher gefundenen Gewinn ist· An dlesasi Punkt brauchen Paar« D. D. «it k>i und 1 > i nicht beachtet xu werden. Dies gilt, weil der dritte Alisdruck ta Gleichung (7) nur zu einer Verringerung der SuasM D- +Dw führen kann, und da die D-Werte sortiert worden sind» kann kein weiteres Paar (i^, b|) mit k >. i und 1 > 3 vorhanden sein, das «ine größere Summa von D-Yerten hat.
Wenn das richtig· Hementpaar, beispielsweise (a!^, bjj) mit dem Gewinn g^ indentifiriert worden ist, wird ajj als Mitglied der Gruppe B und bjj als Mitglied der Gruppe A behandelt.
Die D-Werte für die neuen Gruppen A - ajj und B - b|
009886/1359
> K-:"" ORIGINAL INSPECTED
werden berechnet durch
Di " Dx + 2dxa« * 2dxb«
Λ Λ AC/ -Λ. U j
ϋν - Dy + 2V; - 2dya,
Die Richtigkeit dieser Ausdrücke läßt sich leicht durch Betrachtung von D' bestätigen. Die Verbindung (x, ai) wird
Jv. I
ind Dx als interne Verbindung gezählt und muß in DV eine äußere Verbindung sein, so daß d,. zweimal addiert werden muß, damit dem Rechnung getragen ist. Entsprechend muß d , , zweimal subtrahiert werden, um es von einer äußeren in eine innere Verbindung umzuwandeln. Eine analoge Überlegung gilt für die Berechnung van B*.
Jetzt wird ein neues Elementpaar (al 9 bl) aus den Gruppen, A - al, B - bi gewählt, derart, daß
maximal ist, und zwar auf die gleiche Weise, wie das Paar ai, bi gewählt worden ist. Es ist wichtig zu beachten, daß ai und bi bei der Wahl von a£ und b£ nicht beachtet worden sind. Der Gewinn g2 ist daher der zusätzliche Gewinn, der sich ergibt, wenn ai und b' ebenso wie ai und bi. ausgetauscht werden.
Der Vorgang geht weiter durch Identifizieren von (a4, b.
ls bJL) "11A der entsprechenden Efaximalgewinne g-*i ·*·» S Jedes identifizierte Paar (a% b9) wird für weitere Wahlvorgänge aus der Betrachtung herausgenommenj, so daß die
009886/1359
Größe der betrachteten Gruppen jedesmal dann um Λ abnimmt, wenn ein Paar gewählt ist. Dann ergibt sich
I E1 = O (14)
1=1
gar dies im vollständigen Austausch der Gruppen A und B entspricht. Die Gleichung (14) zeigt,, daß einige der g^-vierte negativ sein werden, wenn nicht alle Null sind.
Der letzte Sehritt bei der Identifizierung der auszutauschenden Gruppen X = (a£.,. ai, ..., a,') und Y = CbJj, b^, *...., W) besteht in einer Betrachtung der berechneten Gewinne g.. Da jedr Wert g. einen zusätzlichen Gewinn durch Austausch eines bestimmten Paares darstellt, werden die Gruppen X und Y identifiziert durch eine Wahl von k, derart, daß
maximal ist. Wenn G größer als Null ist, führt eine Austausch der Untergruppen X und Y offensichtlich zu einer Verringerung der Verbindungskosten.
Das Ergebnis beim Austausch der Gruppen X und Y ist eine neue Aufteilung. Diese neue Aufteilung kann jetzt als Anfangsaufteilung behandelt und der Vorgang wiederholt werden. Wenn die schrittweise Durchführung des Verfahrens
009886/1359
zu einem Wert von G führt, der kleiner als öä&& gleich ι,ίϊΤΙ ist, so ist eine örtlich optimale Aufteilung erzielt*' ■' ■ "Örtlich optimal" bedeutet hier optimal sowohl mit Beäug" auf die Anfangsaufteilung als auch den beschriebenen Vor-* gang.
Versuche haben gezeigt, daß die örtlich optimale Aufteilung häufig die global optimale Aufteilung ist, d. h. diejenige Aufteilung der Elemente, welche tatsächlich die niedrigsten Verbindungskosten aufweist. Dies ist auch auf Grund der Natur des Verfahrens zu erwarten. Da die maximale Teilsumme der Folge von Gewinnen g., i = 1, ..., n, benutzt wird, hört": der Vorgang nicht sofort auf, wenn ein negativer 'wort von gi angetroffen wird. Dies bedeutet, daß der Vorgang Untergruppen identifizieren kann, für die der Austausch einiger Elemente die Kosten erhöhen würde, während der Austausch der gesamten Untergruppen eines positiven Gewinn ergibt. Die Zulassung einer solchen zeitweiligen Kostenerhöhung ist ein wirksames Mittel, um zu verhindern, daß man sich bei einem örtlichen Minimum festfährt. Die Leistung des Verfahrens beruht zu einem großen Teil auf diesem Merkmal.
Ein einfaches Beispiel für das örtlich optimale Verfahren dürfte das Verständnis der Erfindung erleichtern. Fig. 1 A zeigt das Schaltbild einer bekannten Schaltungsanordnung, nämlich eines RC-gekoppelten Transistorverstärkers mit acht Bauteilen 1 - 8. Es sei angenommen, daß diese acht Bauteile 1-8 auf zwei Schaltungsplatten angeordnet werden müssen, von denen jede vier Bauteile aufnehmen kann. Es
009-886/13 59"
sei weiter angenommen, daß die Kosten für die Verbindung von zwei beliebigen Komponenten 1 betragen. Die Kostenmatrix d wird dann die in der folgenden Tabelle. 1 gezeigte Form haben.
1 2 Tabelle 3 4 1 5 6 7 8
O 1 0 O O O o 0
1 1 O 1 1 1 O O O
2 O 1 0 1 1 1 O O
3 O 1 1 O 1 0 1 1
4 O' 1 1 1 O 1 1 1
5 0 O 1 0 1 O O 0
6 0 0 O 1 1 O O 1
7 0 O O 1 1 O 1 0
θ
Ein naheliegender Veg zur Auslegung der Schaltung besteht darin, sie entsprechend der gestrichelten Linie in Flg. 1 A auf zuteilen und die Bauteile 1-4 auf eine Platte und die Bauteile 5-8 auf der anderen Platte anzuordnen. Dies soll als Anfangsaufteilung angesehen werden, d, h. die Gruppe A enthält die Bauteile 1 - 4 und die Gruppe B die Bauteile 5 - 8.
Der erste Schrilit dos Verfahrens beinhaltet die Berechnung und Sortierung der 1-Verte für die Gruppen A und B unter Verwendung der Gleichung (6). Dies führt zu den in der
009886/1359
folgenden Tabelle 2 gezeigten Werten.
Tabelle 2
Gruppe A D4 = +1, D3 = O, D1 = -1, D2 = -2
Gruppe B D5 = O, D6 = O1 D7 = -1, D8 « -Ϊ
Die Werte in der Tabelle 2 werden dann abgetastet, um dasjenige Paar von Elementen auszuwählen, deren Austausch den höchsten Gewinn ergibt. Unter Verwendung der Gleichung (7) ergibt sich, daß der Gewinn durch Austausch der Elemente 4 und 5-1 ist. Betrachtet man als nächstes die Elemente 4 und 6, so ergibt sich ein Gewinn von + 1. Das Abtasten wird an diesem Punkt unterbrochen, da die Summe des nächsten Paares von D-Werten, nämlich D^ + D„, kleiner als der höchste vorher gefundene Gewinn ißt.
Es werden demgemäß die Elemente 4 und 6 herausgenommen und die D-Werte für die restlichen Elemente unter Verwendung der Gleichungen (12) neu berechnet und sortiert mit dem nachfolgend in der Tabelle 3 gezeigten Ergebnis.
Tabelle 3
Gruppe A D3 = O, D2 β O9 D1 * -1
Gruppe B
D5 = 0, D
7 - -3» D8 = -3
009886/1359
Die D-Werte der Tabelle 3 werden erneut mit dem Ergebnis abgetastet, das der höchste aufgefundene Gewinn -1 ist, der sich durch einen Austausch der Elemente 1 und 5 ergibt.
Die Elemente 1 und 5 "werden dann herausgenommen, und die D-Werte werden erneut berechnet und sortiert mit dem in der Tabelle 4 gezeigten Ergebnis.
Tabelle 4
Gruppe A " D2 = 0, D3 = -2
Gruppe B D7 = -1, D8 = -1
Der höchste Gewinn, der durch Abtasten dieser D-Werte aufgefunden wird, ist -1 beim Austausch der Elemente 2 und Diese werden herausgenommen, und der durch Austausch der restlichen beiden Elemente 3 und 8 gefundene Gewinn ergibt sich dann zu +1.
Die Folge der erzielten Gewinne lautet dann
■ 1f -1» -1» .1f so daß die Folge von Teilsummen
1, 0, -1, 0 ist.
Der Maximal zu erzielende Gewinn + 1 ist also durch einen Austausch des ersten gewählten Paares mit den Elementen
009886/1359
4 und 6 zu erhalten. ε=*? - ■ ;
An diesem Punkt würden entsprechend dem Verfahren die Elemente 4 und 6 ausgetauscht werden und dann würde wieder mit einer Berechnung der D-Werte begonnen. Diese zweite Annäherung, die auf die gleiche Weise wie die oben im einzelnen beschriebene erste Annäherung verläuft, führt zu der Gewinnfolge
-1,-1, -1, 3
und der entsprechenden Teilsummenfolge
-1, -2, -3, O.
Dies zeigt, daß kein weiterer Austausch zu einem positiven Gewinn führt, und folglich hört das Verfahren mit der Aufteilung
Gruppe A = 1, 2, 3, 6 Gruppe B = 4, 5, 7, 8 auf.
Dann ergibt sich, daß die Schaltung nach Fig. 1 A entsprechend Fig. 1 B aufgeteilt werden sollte, wobei eine Verbindung weniger als bei der ursprünglichen Aufteilung hergestellt v/erden muß. Das Beispiel zeigt einen weiteren wichtigen Vorteil der Erfindung gegenüber der Schaltungsauslegung von Hand. Das Verfahren wird nicht durch Aufteilungen beeinfluß, die auf Grund der Art und V/eise, in der das Schaltbild gezeichnet ist, optimal erscheinen.
Bei dem erläutertai einfachen Beispiel würde jede Anfangsaufteilung zur gleichen optimalen Aufteilung geführt haben. Im allgemeinen ergeben aber unterschiedliche Anfangsaufteilungen verschiedene, örtlich optimale Aufteilungen.
009886/1359
Wenn eine bestirnte Gruppe von Elementen eine eindeutig optimale Aufteilung aufweist, so ergibt sich auf Grund der meisten Anfangsaufteilungen diese optimale Aufteilung« Im allgemeinen besitzt eine Gruppe von Elementen mehrere optimale oder nahezu optimale Aufteilungen, und wenn diese mit Hilfe des beschriebenen Verfahrens festgestellt worden sind, kann eine bestimmte von Ihnen gewählt werden, und zwar möglicherweise auf Grund von Unterscheidungsnerkmalen, die sich nicht ohne weiteres mathematisch ausdrücken lassen. ■ ■';'_: ·" r:. _-:■■;- <".;'_ , ' , *
Das Verfahren garantiert nicht» dad dl« optimale Aufteilung, die global optimal genahnt wird, aufgefunden wird. In einigen Fällen ist es daher wünschenswert, die Örtlich optimale Aufteilung zu verbessern* Dies IiBt sich leicht auf mehreren Wegen erreichen, von denen zwei im einzelnen beschrieben werden, sollen· '. :
Das grundsätzliche Verfahren einer solchen Verbesserung besteht darin, die Örtlich optimale Aufteilung zu stören, so daß eine ahrittwelse Anwendung des Verfahrens auf die gestörte Lösung zu einer weiteren Kostenverringerung führt«
Die Verbesserungsverfehren beruhen auf der Tatsache, daß, wenn die örtlich optimale Aufteilung nicht gleichzeitig auch global optimal ist, Untergruppen XdA und Y(HB vorhanden sind mit
IXt -m -ki.2 (16)
009886/13 59 ORiQiNALiNSPECTED
2Q176B7
derart t daß ein Austausch von X unidl Y zu A* und, B* bei positivem Gewinn G führt.
Versuchsergebnisse haben gezeigt,., daß; in denjenigen Fällen, in denen die örtlich optimale Lösung, nicht, gleichzeitig auch global optimal ist,
S (17)
Dies beinhaltet, daß,, wenn IXl und IYl klein im Vergleich zu S waren, sie durch das Verfahren identifiziert worden wären« Nur größere Untergruppen werden nicht immer identifiziert.
Das erste Verfahren zur Identifizierung von X und Y besteht darin, daß örtlich optimale Verfahren getrennt für Jede der Gruppen A und B durchzuführen, wobei jede von ihnen in zwei Untergruppen aufgeteilt wird, beispielsweise
A-* (A1, A2) (18)
3 -» (B1, B2)
und die örtlich optimalen Aufteilungen aufgefunden werden. Dann werden die vier Untergruppen zu zwei Gruppen nach einem der in den Gleichungen (19) und (20) gezeigten Wege rekombiniert.
A0 = A1Ub1 (19)
B0 = A1UB2
A0 = A1UB2 (20)
• , Bo = AzUb1
009886/1359
If ach 'der Rekomb illation iid.rd das Yerfahren erneut durchgefaiart. Versuche haben gezeigt, daß dies im allgemeinen -wirksam ist, wenn die Rekombination entweder entsprechend Gleichung {19} oder Gleichung (20) durchgeführt.-, wird-.
Das zweite Verfahren zur Verbesserung der örtlich optimalen Aufteilung beinhaltet eine direktere Identifizierung der Untergruppen x£Z A und Y(ZlB, die ausgetauscht werden müssen, um A und B in die Optimalwerte A* und B* umzuwandeln. Dieses Verfahren ist am zweckmäßigsten für größere Probleme, bei denen die Untergruppen X und Y groß, aber nicht so groß wie n/2 sind.
Bei Durchführung des örtlich optimalen Verfahrens wird ein Element der in Gleichung (21) gezeigten Folge von Teilsummen für jeden Zyklus gebildet.
i = y gj = gi
Wenn.dieser Wert irgendwann einmal positiv ist, dafin wird bei"dem Verfahren ein Maximalwert gewählt und das Verfahren fortgesetzt. Wenn kein Gj.-Wert positiv ist, dann hört der Vorgang auf* Dies ist in den Fig. 2 A und 2 B gezeigt. Wenn das Ergebnis des Verfahrens Fig. 2 A entspricht, dann identifiziert der Punkt i = k die auszutauschenden Untergruppen. Bei dem Beispiel nach Fig. 2 B würde ver Vorgang ohne Durchführung eines Austausches aufhören. Es ist intuitiv klar, daß, wenn eine Folge von G^Werten ein ört-
009886/1359
liches Maximum aufweist, das kleiner oder gleich Null entsprechend Fig. 2 B ist, die Untergruppen (ajj ..., a£) und (bjj, ..., tojp wenigstens vermutliche Anwärter für einen Austausch sind.
Bei diesem zweiten Verfahren wird die Liste von Gitterten zur Aufwendung eines Spitzenwertes abgetastet, die beiden entsprechenden Untergruppen werden ausgetauscht und dann wird das örtlich optimale Verfahren wiederholt. Es ist zwar richtig, daß der Austausch dieser beiden Untergruppen die Verbindungskosten zeitweilig erhöht, aber es hat sich gezeigt, daß der Austausch häufig die Aufteilung so weit stört, daß beim nächsten Durchlauf des örtlich optimalen Verfahrens eine Verringerung stattfinden kann. Wenn das Verfahren zu einer Rückkehr auf den gleichen Punkt führt, wird keine weitere Verbesserung vorgenommen.
Wenn entsprechend Fig. 2 C die Kurve für die G^Werte unimodal ist, so ist es wahrscheinlich, daß die augenblickliche Aufteilung global optimal ist, und es wird kein weiterer Austausch durchgeführt.
Das grundsätzliche, örtlich optimale Verfahren, kann leicht auf allgemeinere Aufteilungen ausgedehnt werden. Wenn die Elemente nicht auf gerade Zahlen beschränkt sein soll, kann es beispielsweise erwünscht sein, ein System S mit u Elementen in zwei Gruppen so aufzuteilen, daß wenigstens n0 Elemente und höchstens H1 Elemente in beiden Gruppen vorhanden sind. Das Verfahren läßt sich dann dmroh Hinzufügung von
009886/1359
Blindelementen anwenden. Dabei handelt es sich um Elemente, die keinerlei Verbindungen besitzen. Sie führen also bei Jedem Auftreten zu Null-Eintragungen in der Kostenmatrix. Der Umfang von S wird durch Hinzufügung von 2η,,-u Blindelementen auf Zn1 Elemente erhöht. Dann wird das örtlich optimale Verfahren durchgeführt. Bei der sich ergebenden Aufteilung werden die Blindeleeente so den beiden Gruppen von S zugeordnet» daß sich ein Minimum für die äußeren Kosten ergibt. Dann schließt man dieBlindelemente aus, wobei eine Aufteilung in zwei Gruppen verbleibt, die den gegebenen Größenbeschränkungen genügen.
Das grundsätzliche, örtlich optimale Verfahren, läßt sich auch zur Aufteilung von grafischen Darstellungen verwenden, die Scheitelpunkte unterschiedlicher Größe besitzen. Dies tritt in der Praxis auf, wenn ein bestimmtes Bauteil mehr als den normalen Platz auf der Trägeranordnung einnimmt. Dem kann leicht dadurch Rechnung getragen werden, daß jeder Knoten der Größe v>1 in ein Bündel von ν Knoten der Größe 1 umgewandelt wird, die durch Kanten willkürlich hoher Kosten miteinander verbunden sind.
Schließlich kann das Grundverfahren zur Durchführung einer Zweiweg-Aufteilung bei einer Gruppe von 2n Elementen auf das allgemeinere Verfahren zur Durchführung von k-Weg-Aufteilungen für ein System von kh Objekten ausgedehnt werden. Das Wesen dieser Ausdehnung des örtlich optimalen Verfahrens besteht darin, von einer Aufteilung in k Gruppen der Größe η auszugehen und das örtlich optimale Verfahren wiederholt auf Paare von Gruppen anzuwenden, derart, daß
00 9886/13 59
die Aufteilung so gut als möglich paarweise optimal ist. Selbstverständlich, ist ein paarweise optimaler Zustand nur eine notwendige Bedingung für einen global optimalen Zustand, aber er hat sich in den meisten Fällen als brauchbare Näherung erwiesen. Es können Fälle auftreten, für die ein komplizierter Austausch von drei oder mehr Elementen aus drei oder mehr Gruppen erforderlich ist, um eine paarweise optimale Lösung auf eine global optimale Lösung zurückzuführen. Zum heutigen Zeitpunkt ist jedoch kein brauchbares Verfahren zur Identifizierung; solcher Elemente bekannt«, Es gibt drei Grundverfahren zur Auffindung guter Vielweg-Anfangsaufteilungen von kn Elementen in. k (Gruppen der Größe n. Das einfachste Verfahren besteht darin, die Elemente willkürlich in k Gruppen aufzuteilen und das örtlich optimale Verfahren wiederholt auf Paare dieser Gruppen anzuwenden.
Das zweite Verfahren besteht darin, eine r-Weg-Aufteilung zu bilden, dann eine s-Weg-Aufteilung für jede der sich ergebenden Untergruppen, usw., bis zu t-Weg, wobei
k = r.s ... t. (22)
Das Örtlich optimale Verfahren v/ird auf jedes Paar von Gruppen angewendet, die für jede Stufe der UntertoLung vorhanden sind. Wenn beispielsweise k eine Potenz von zwei ist, werden die Elemente hälftig aufgespalten vma aas Verfahren wird durchgeführt. Dann v/ird jede Hälfte v.riederuiE aufgespalten und das Verfahren auf die vier sich
ergebenden Gruppen angewendet. Dieser Vorgang dauert an, bis die gewünschte Gruppengröße erreicht ist.
Ein drittes Verfahren besteht darin, die Gruppe von kn Elementen in eine Gruppe von η und eine Gruppe von (k - 1)n Elementen aufzuteilen und das örtlich optimale Verfahren anzuwenden. Danach werden η Elemente der verbleibenden (k - 1)n Elemente identifiziert. Dieser Vorgang dauert an, bis k Gruppen gebildet sind. Dann wendet man das örtlich optimale Verfahren auf Paare von Gruppen zur Verbesserung der Aufteilung an.
Als ein Verfahren zur Aufteilung in Gruppen unterschiedlicher Größe ist die Einführung von Blindelementen erwähnt worden. Dies läßt sich auch als ein Verfahren ansehen, bei dem ein "Spiel" in eine Lösung eingeführt wird, um zu versuchen, niedrigere Gesamtverbindungskosten durch Zulassen einer "Expansion" zu erhalten. Bei dem bis hierher erläuterten Problem war es erforderlich, eine Aufteilung mit einer Einschränkung sowohl hinsichtlich der Größe der ■■· Gruppen als auch der Zahl von Gruppen zu finden, da bei kn gegebenenen Elementen die beste Aufteilung in genau k Gruppen mit je η Elementen gesucht worden ist. Die Einschränkung hinsiclfLich der Anzahl von Gruppen kann dadurch gelockert werden, daß man die Hinzufügung von Blindelementen unter Vergrößerung des Problems zuläßt und versucht, die beste Lösung mit irgendeiner Zahl von Gruppen
■ ■ ·
größer oder gleich k zu finden, die je höchstens η Elemente enthäten. Diejenige Expansion, die zu einer Aufteilung mit
009886/13 59
den niedrigsten Verbindungskosten führt, sei "Optimalexpansion" genannt. Im allgemeinen wird die Optimalexpansion mehr Gruppen erfordern, aber niedrigere Verbindungskosten aufweisen. Dies entspricht bei dem Problem der Schaltungsauslegung einer Verringerung der Zahl von Verbindungen zwischen den Trägeranordnungen durch Erhöhung der Anzahl der benutzten Trägeranordnungen.
Fig. 3 zeigt ein Beispiel, bei dem die Einführung eines Spiels eine Verringerung der Gesamtverbindungskosten _ ermöglicht. Den vertikalen Kanten sind Kosten 1 und den horizontalen Kanten Kosten 2 zugeordnet. Jede Aufteilung in zwei Gruppen mit je drei Elementen weist Gesamtverbindungskosten von wenigstens drei auf, aber die naheliegende Aufteilung in drei Untergruppen entsprechend den gestrichelten Linien weist Kosten von nur zwei auf. Jede nichttriviale Aufteilung in vier oder mehr Gruppen besitzt Kosten größer als 2, so daß die Aufteilung in drei Gruppen die optimale Expansion darstellt.
w Zur Auffindung der Lösung für minimale Kosten und der entsprechenden Optimalexpansion wird das örtlich optimale Verfahren wie folgt angewendet: Es sei angenommen, daß bei dem Problem kn Elemente in k Gruppen mit je η Punkten aufgeteilt werden sollen. Beginnt man ohne Spiel (kn Punkte), so findet man die örtlich optimale Zuordnung an Hand des oben beschriebenen Grundyerfahrens. Dann werden η Blindelemente, die zur Bildung einer zusätzlichen Gruppe ausreichen, hinzu-
009886/1359
gefügt, so daß ein (k + 1) n-Problem entsteht, auf das das Verfahren angewendet wird· Wenn sich eine Gruppe· ergibt, die nur Blindelemente enthält, dann ist die optimale Lösung diejenige Aufteilung, bei der diese Gruppe von Blindelementen entfernt ist»
Es sei noch erwähnt, daß zwar das Örtlich optimale Verfahren ursprünglich auf Grund des Problems entwickelt worden ist, . Schaltungsbauteile Trägeranordnungen so zuzuordnen, daß die Verbindungskoeten ein Minimum werden, daß aber das Verfahren nicht auf diese Anwendung beschränkt ist· Es ist brauchbar zur Aufteilung beliebiger, miteinander verbundener Elemente in Gruppen, derart, daB die Verbindungen zwischen den Gruppen ein Minimum· werden·

Claims (1)

  1. 4.
    P a t e ntai a τ» r ü e h. e
    1. Verfahren zum Aufbau einer elektrischen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen» die zu wenigstens zwei voneinander/ getrennten» vorzugsweise auf getrennten, Schaltungs trägern angeordneten Gruppen zusammengefaßt sind,, gekennzeichnet durch, die folgenden Verfahren«schritte?
    1. vorläufiges Aufteilen aller Bauelemente (Mg;· 1As 1 his 8) in wenigst/ens zwei beliebige Anfangsgruppen (1 bis 4| 5 bis 8)|
    2· Zählen und Speichern der Zahl (3) von Verbindungen zwischen den beiden Anfangsgruppen j
    3· Austausehen von je einem Bauelement der beiden Anfangsgruppen, Zählen der Zahl (2) von Verbindungen zwischen den Gruppen (Fig· 1B| 1, 2, 3» 6| 4» 5, 7, 8) nach jedem Austausch und Berechnung der Differenz zwischen der Zahl von Verbindungen bei den Anfangss gruppen und der Zahl von Verbindungen nach jedem Austausch}
    4-· Austauschen desjenigen Baueleaientpaares, für welches die größte positive, Bifferenz errechnet worden ist, und anschließendes laisscliließea dies-es Baueleasat= paares vom weiteren
    ', ri * 8 e / 1 3 5 9
    5» Wiederholen der Yerfanrensschritte 2) TdIs 4), "bis alle Bauelementpaare vom Verfahren ausgeschlossen sind| '
    6. Beibehaltung des Austausches nur derjenigen Bauelementpaare, die die größte Verringerung der Zahl von Verbindungen zwischen den Gruppen ergeben.
    2, Verfahren nach Anspruch 1, dadurch gekennzeichnet^ daß der Verfahrens schritt 4) das Speichern desjenigen Wertes beinhaltet, der für die Verringerung der Zahl von Verbindungen zwischen den Gruppen für das Paar von zwitweilig ausgetauschten Elementen bestimmt worden ist, und
    009886/1359
    daß der Verfahrensschritt () die Berechnung der maximalen Teilsumme beinhaltet, die sich aus den sequentiell während des Verfahrensschrittes 4) gespeicherten Werten bilden läßt und dann nur der Austausch derjenigen Eleiaentpaare beibehalten wird, der zur Erzielung der berechneten maximalen Teilsumme erforderlich ist.
    3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Verfahrensschritt 1) dadurch abgeändert wird, daß alle Elemente willkürlich in m Anfangsgruppen mit ρ Elementen aufgeteilt werden, und
    7) die Verfahrensschritte 2) bis 6) für alle möglichen Paare der m Anfangsgruppen wenigstens einmal wiederholt werden und anschließend so lange fortgefahren wird, bis keine weitere Verbesserung mehr bei der Verringerung der Verbindungen erzielt werden kann.
    4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß vor dem Verfahrensschritt 1) eine Vielzahl von Blindelementen zu der Vielzahl von miteinander in Beziehung stehenden Elementen hinzugefügt wird, wobei die Blindelemente keinerleiVerbindungen aufweisen, und daß das Verfahren beendet wird, wenn der Verfahrensschritt 7) zur Erzeugung einer Gruppe führt, die nur Blindelemente enthält.
    5. Verfahren nach Anspruch 3» bei dem jede Gruppe der endgültigen Aufteilung dahingehend beschränkt ist, daß sie wenigstens η und höchstens n^ Elemente enthält, wobei mn ^* k ^ mn,, ist,
    dadurch gekennzeichnet, daß vor der Durchführung des
    009886/1359
    Verfahrensschrittes 1) ran^ - k Blindelemente hinzugefügt werden, von denen keine Verbindungen ausgehen, daß ρ Elemente gleich ηγ gemacht werden und daß die Blindelemente von den Gruppen ausgeschlossen werden, die sich beim Verfahrensschritt 7) ergeben.
    6) Verfahren nach Anspruch 3, gekennzeichnet durch die weiteren Verfahrensschritte:
    8) Aufteilen der bein Verfahrensschritt 7) erzeugten m Gruppen in t Gruppen;
    9) Auswahl von zwei Anfangsgruppen aus den t Gruppen; "
    10) Wiederholen der. Verfahrensschritte 2) bis 6) für alle möglichen Paare der t Gruppen;
    11) Rekombinieren der t Gruppen zu m Gruppen;
    12) Wiederholen der Verfahrensschritte 2) bis 7) für die m Gruppen.
    uu 3 886 η 7'"- 3
    Leerse 11e
DE19702017667 1969-04-15 1970-04-14 Verfahren zum Aufbau einer elektn sehen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen Pending DE2017667A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US81620869A 1969-04-15 1969-04-15

Publications (1)

Publication Number Publication Date
DE2017667A1 true DE2017667A1 (de) 1971-02-04

Family

ID=25219970

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19702017667 Pending DE2017667A1 (de) 1969-04-15 1970-04-14 Verfahren zum Aufbau einer elektn sehen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen

Country Status (7)

Country Link
US (1) US3617714A (de)
BE (1) BE748586A (de)
CA (1) CA920274A (de)
DE (1) DE2017667A1 (de)
FR (1) FR2043338A5 (de)
GB (1) GB1307261A (de)
NL (1) NL7005411A (de)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2445368A1 (de) * 1974-09-23 1976-04-01 Siemens Ag Verfahren zur herstellung fuer maskenvorlagen fuer integrierte halbleiterschaltungen
US4495559A (en) * 1981-11-02 1985-01-22 International Business Machines Corporation Optimization of an organization of many discrete elements
US4593363A (en) * 1983-08-12 1986-06-03 International Business Machines Corporation Simultaneous placement and wiring for VLSI chips
US4577276A (en) * 1983-09-12 1986-03-18 At&T Bell Laboratories Placement of components on circuit substrates
JPH0679319B2 (ja) * 1985-04-10 1994-10-05 株式会社日立製作所 配置更新方法
JPH0666393B2 (ja) * 1986-05-23 1994-08-24 日本電気株式会社 レイアウト設計における配置改良方法
US4908772A (en) * 1987-03-30 1990-03-13 Bell Telephone Laboratories Integrated circuits with component placement by rectilinear partitioning
US4815003A (en) * 1987-06-19 1989-03-21 General Electric Company Structured design method for high density standard cell and macrocell layout of VLSI chips
US5140526A (en) * 1989-01-06 1992-08-18 Minc Incorporated Partitioning of Boolean logic equations into physical logic devices
US5187784A (en) * 1989-01-13 1993-02-16 Vlsi Technology, Inc. Integrated circuit placement method using netlist and predetermined ordering constraints to produce a human readable integrated circuit schematic diagram
US5251147A (en) * 1989-06-20 1993-10-05 Digital Equipment Corporation Minimizing the interconnection cost of electronically linked objects
US5448493A (en) * 1989-12-20 1995-09-05 Xilinx, Inc. Structure and method for manually controlling automatic configuration in an integrated circuit logic block array
WO1992009042A1 (en) * 1990-11-15 1992-05-29 Xilinx, Inc. Logic placement using positionally asymmetrical partitioning algorithm
US5224056A (en) * 1991-10-30 1993-06-29 Xilinx, Inc. Logic placement using positionally asymmetrical partitioning algorithm
US5303161A (en) * 1990-12-10 1994-04-12 Hughes Aircraft Company Technology independent integrated circuit mask artwork generator
JP3033203B2 (ja) * 1991-01-25 2000-04-17 株式会社日立製作所 配線経路探索装置及び配線経路探索方法
US5341308A (en) * 1991-05-17 1994-08-23 Altera Corporation Methods for allocating circuit elements between circuit groups
US5299139A (en) * 1991-06-21 1994-03-29 Cadence Design Systems, Inc. Short locator method
US5521836A (en) * 1991-06-28 1996-05-28 Vlsi Technology, Inc. Method for determining instance placements in circuit layouts
US5513124A (en) * 1991-10-30 1996-04-30 Xilinx, Inc. Logic placement using positionally asymmetrical partitioning method
EP0643855A1 (de) * 1992-06-04 1995-03-22 Xilinx, Inc. Zeitliche steuerung für die implantierung einer gebrauchsschaltung auf einer programmierbaren integrierten schaltungsanordnung
US5629859A (en) * 1992-10-21 1997-05-13 Texas Instruments Incorporated Method for timing-directed circuit optimizations
US5648913A (en) * 1993-03-29 1997-07-15 Xilinx, Inc. Frequency driven layout system and method for field programmable gate arrays
JPH06332983A (ja) * 1993-05-20 1994-12-02 Mitsubishi Electric Corp 部品配置最適化方法
JP2601177B2 (ja) * 1993-06-08 1997-04-16 日本電気株式会社 同期論理回路における最適クロック周期の決定方法
SG68564A1 (en) * 1994-01-25 1999-11-16 Advantage Logic Inc Apparatus and method for partitioning resources for interconnections
US5818726A (en) * 1994-04-18 1998-10-06 Cadence Design Systems, Inc. System and method for determining acceptable logic cell locations and generating a legal location structure
US5914887A (en) * 1994-04-19 1999-06-22 Lsi Logic Corporation Congestion based cost factor computing apparatus for integrated circuit physical design automation system
US5535134A (en) * 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
US5675500A (en) * 1994-10-18 1997-10-07 International Business Machines Corporation Multi-chip device partitioning process
US5546517A (en) * 1994-12-07 1996-08-13 Mitsubishi Electric Information Technology Center America, Inc. Apparatus for determining the structure of a hypermedia document using graph partitioning
JP3373089B2 (ja) * 1995-08-28 2003-02-04 富士通株式会社 集積回路の初期配置決定装置
US5699265A (en) * 1995-09-08 1997-12-16 Lsi Logic Corporation Physical design automation system and process for designing integrated circuit chips using multiway partitioning with constraints
US5784287A (en) * 1995-09-29 1998-07-21 Lsi Logic Corporation Physical design automation system and process for designing integrated circuit chips using generalized assignment
US5787009A (en) * 1996-02-20 1998-07-28 Altera Corporation Methods for allocating circuit design portions among physical circuit portions
US5926632A (en) * 1996-04-11 1999-07-20 Matsushita Electric Industrial Co., Ltd. Circuit partitioning method, circuit partitioning apparatus, and computer-readable recording medium having thereon circuit partitioning program
US6067409A (en) * 1996-06-28 2000-05-23 Lsi Logic Corporation Advanced modular cell placement system
US5870311A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with fast procedure for finding a levelizing cut point
US5914888A (en) * 1996-06-28 1999-06-22 Lsi Logic Corporation Advanced modular cell placement system with coarse overflow remover
US5870312A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with dispersion-driven levelizing system
US6030110A (en) * 1996-06-28 2000-02-29 Lsi Logic Corporation Advanced modular cell placement system with median control and increase in resolution
US5808899A (en) * 1996-06-28 1998-09-15 Lsi Logic Corporation Advanced modular cell placement system with cell placement crystallization
US5872718A (en) * 1996-06-28 1999-02-16 Lsi Logic Corporation Advanced modular cell placement system
US5835381A (en) * 1996-06-28 1998-11-10 Lsi Logic Corporation Advanced modular cell placement system with minimizing maximal cut driven affinity system
US5812740A (en) * 1996-06-28 1998-09-22 Lsi Logic Corporation Advanced modular cell placement system with neighborhood system driven optimization
US5867398A (en) * 1996-06-28 1999-02-02 Lsi Logic Corporation Advanced modular cell placement system with density driven capacity penalty system
US5831863A (en) * 1996-06-28 1998-11-03 Lsi Logic Corporation Advanced modular cell placement system with wire length driven affinity system
US5963455A (en) * 1996-06-28 1999-10-05 Lsi Logic Corporation Advanced modular cell placement system with functional sieve optimization technique
US5844811A (en) * 1996-06-28 1998-12-01 Lsi Logic Corporation Advanced modular cell placement system with universal affinity driven discrete placement optimization
US6026223A (en) * 1996-06-28 2000-02-15 Scepanovic; Ranko Advanced modular cell placement system with overlap remover with minimal noise
US6085032A (en) * 1996-06-28 2000-07-04 Lsi Logic Corporation Advanced modular cell placement system with sinusoidal optimization
US5892688A (en) * 1996-06-28 1999-04-06 Lsi Logic Corporation Advanced modular cell placement system with iterative one dimensional preplacement optimization
US5847965A (en) * 1996-08-02 1998-12-08 Avant| Corporation Method for automatic iterative area placement of module cells in an integrated circuit layout
US6301694B1 (en) * 1996-09-25 2001-10-09 Altera Corporation Hierarchical circuit partitioning using sliding windows
US6321369B1 (en) * 1996-10-28 2001-11-20 Altera Corporation Interface for compiling project variations in electronic design environments
US5828961A (en) * 1997-04-21 1998-10-27 Northern Telecom Limited System and method for partitioning a cellular environment
US6080204A (en) * 1997-10-27 2000-06-27 Altera Corporation Method and apparatus for contemporaneously compiling an electronic circuit design by contemporaneously bipartitioning the electronic circuit design using parallel processing
US6367058B1 (en) 1998-03-26 2002-04-02 Altera Corporation Partitioning using hardware
US7024419B1 (en) * 1999-09-13 2006-04-04 International Business Machines Corp. Network visualization tool utilizing iterative rearrangement of nodes on a grid lattice using gradient method
US6519743B1 (en) * 2000-08-24 2003-02-11 Cadence Design Systems, Inc. Method and system for timing and area driven binary and/or matching
US6836753B1 (en) 2001-06-13 2004-12-28 Cadence Design Systems, Inc. Cone slack allocator for computing time budgets
US7376921B2 (en) * 2006-02-17 2008-05-20 Athena Design Systems, Inc. Methods for tiling integrated circuit designs
US10162892B2 (en) * 2011-02-28 2018-12-25 International Business Machines Corporation Identifying information assets within an enterprise using a semantic graph created using feedback re-enforced search and navigation
US20150067695A1 (en) * 2012-03-28 2015-03-05 Hitachi, Ltd. Information processing system and graph processing method
US10521809B2 (en) 2015-03-04 2019-12-31 Walmart Apollo, Llc System and method for grouping time series data for forecasting purposes

Also Published As

Publication number Publication date
CA920274A (en) 1973-01-30
US3617714A (en) 1971-11-02
GB1307261A (en) 1973-02-14
FR2043338A5 (de) 1971-02-12
BE748586A (fr) 1970-09-16
NL7005411A (de) 1970-10-19

Similar Documents

Publication Publication Date Title
DE2017667A1 (de) Verfahren zum Aufbau einer elektn sehen Schaltung mit einer Vielzahl von miteinander zu verbindenden Bauelementen
EP0010195A1 (de) Vorrichtung zur Adressumwandlung in einer Datenverarbeitungsanlage
DE2625973A1 (de) Verfahren und anordnung zur redundanzvermindernden transformation von bildern
DE1041535B (de) Magnetische Speicherkernmatrix mit einer Vielzahl von magnetischen Speicherkernen
DE2913327C2 (de) Matrix-Multiplizierer
DE2556273A1 (de) Gruppenweise zu einer logischen schaltung zusammengefasste logische schaltkreise
DE1914560C3 (de) Schaltungsanordnung zur Verschiebung eines Datenwortes innerhalb eines Rechenelementen-Feldes
DE1474040B2 (de) Einrichtung zur Bildung von Speicheradressen
EP0090298A1 (de) In MOS-Technik integrierter schneller Multiplizierer
DE2062164A1 (de) Verfahren zur Erzeugung eines mehr stufigen Index für gespeicherte Daten einheiten
DE2235802A1 (de) Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise
DE1250489B (de) I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher
DE1006632B (de) Multiplikationsvorrichtung fuer Dualzahlen in Seriendarstellung
EP0912952A1 (de) Datenbanksystem und verfahren zum verwalten eines n-dimensionalen datenbestands
EP1344125A2 (de) Verfahren zum bedarfsorientierten erzeugen einzelner zufallszahlen einer folge von zufallszahlen eines 1/f-rauschens
DE1487637B2 (de) Verfahren und anordnung zur wegesuche in mit schalt matrizen aufgebauten koppelfeldern
DE2259726A1 (de) Verfahren zur optimierung einer halbleiterschaltung
DE19914407A1 (de) Verfahren zur Ableitung von Identifikationsnummern
DE102020121614B4 (de) Elektrische Verbindungsanordnung zum Anschließen von frei konfigurierbaren elektrischen Komponenten in einem Fahrzeug
DE2855947A1 (de) Pla-addierschaltung
DE1474041C3 (de) Anordnung zum Sortieren von in zufälliger Reihenfolge aufgenommener Informationsbit Gruppen
DE562747C (de) Verfahren zum Ausgleich des UEbersprechens zwischen den Staemmen benachbarter Vierer in viererverseilten Kabeln ohne Phantomausnutzung
DE10139099C2 (de) Carry-Ripple Addierer
DE1562137C3 (de) Anordnung zum zyklischen Belegen von verschiedenartigen Verbindungseinrichtungen in Vermittlungs-, insbesondere in Fernsprechvermittlungsanlagen
DE3012687C2 (de) Modulblock für Stromrichteranlagen