PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vorteile von nicht-quadratischen Dice?


Spasstiger
2009-02-09, 02:41:39
Bekanntermaßen ist der Verschnitt auf einem Wafer am Geringsten, wenn die Dice quadratisch sind. Das kann man z.B. mit folgendem Tool nachprüfen:
http://mrhackerott.org/semiconductor-informatics/informatics/toolz/DPWCalculator/Input.html

Anschaulich betrachtet ist es auch klar, dass quadratische Dice zum geringsten Verschnitt führen:
Hätte ein Die im Extremfall nicht-quadratische Abmessungen von 300*1 mm, dann würde auf einen 300-mm-Wafer kein einziges Die vollständig draufpassen. Je kompakter beide Seiten bei gleicher Diefläche, desto geringer ist der Verschnitt. Optimal ist also die quadratische Form.

Dennoch sind viele Dice nicht-quadratisch. Speicherchips gehören oft dazu, der Thoroughbred von AMD ebenfalls und ganz aktuell sieht man beim Atom von Intel eine stark nicht-quadratische Form (Bild) (http://www.heise.de/bilder/108854/0/0).

Unter Verwendung des oben verlinkten Tools (Methode: "Die Centered Calculation") komme ich beim Atom N270 (Diefläche: 25 mm²) mit geschätzten Abmessungen von 8 mm x 3,125 mm auf 2477 Dice pro Wafer (ohne Berücksichtigung von Defekten).
Wäre der Atom N270 quadratisch und hätte die Abmessungen 5 mm x 5 mm, käme man auf 2493 Dice pro Wafer, immerhin 16 Dice bzw. rund 1% mehr.
Und da die in der Massenproduktion sicherlich messerscharf kalkuliert wird, muss es wohl einen vernünftigen Grund dafür geben, warum man auf diese 1% verzichtet.
Würde eine quadratische Form evtl. mehr Fläche in Anspruch nehmen, weil man die Baugruppen nicht so geschickt platzieren kann? Oder gibt es andere Gründe?

(+44)
2009-02-09, 02:52:56
Ich kann mit keiner Antwort dienen, finde die Frage aber ausserordentlich interessant.

Einer unserer CPU-Gurus weiß das garantiert.

=Floi=
2009-02-09, 03:23:42
Der Intel Atom hat 7,8mm x 3,1mm. Das ergibt 24,18 mm². Ich denke bei 2500 stück pro wafer ist es schlicht egal. Die dinger sind so klein, dass eh schon viel weniger verschnitt als normal anfällt.

Coda
2009-02-09, 03:39:07
Es ist eben nicht immer möglich das Layout so zu gestallten dass es ein quadratisches Die gibt.

Man muss z.B. zwischen bestimmten Baugruppen die Wege möglichst kurz halten, oder man hat an einer Stelle schon sehr viel Verdrahtung.

Bei CPUs wird auch der Cache oft an der Seite der Prozessoren "angeheftet". Dieser kann dann auch nur in eine Richtung wachsen. Das sieht man z.B. bei den 65- und 45nm-Core-2:

http://www.pc-erfahrung.de/fileadmin/Daten/Bilder/Prozessoren/intel_core_2_duo_die.jpg

http://www.xbitlabs.com/images/cpu/intel-wolfdale/wolfdale-die.jpg

Daredevil
2009-02-09, 04:45:54
Mist hier stand

Gast
2009-02-09, 12:04:23
man kann das layout eben nicht beliebig anpassen und gerade bei kleinen Dice ist es schlichtweg egal, wie du hier ja schön vorgerechnet hast, diese 1% sind ja vernachlässigbar.

RavenTS
2009-02-09, 23:25:12
...

Bei CPUs wird auch der Cache oft an der Seite der Prozessoren "angeheftet". Dieser kann dann auch nur in eine Richtung wachsen. Das sieht man z.B. bei den 65- und 45nm-Core-2:

http://www.pc-erfahrung.de/fileadmin/Daten/Bilder/Prozessoren/intel_core_2_duo_die.jpg

http://www.xbitlabs.com/images/cpu/intel-wolfdale/wolfdale-die.jpg

Das trifft doch aber nur auf gemeinsam genutzten Cache zu, also beispielsweise den L3 beim Phenom oder L2 beim Core2.?!
Der Cache, den jeder Kern exclusiv für sicht hat, könnte doch auch theoretisch um den kompletten Rechenkern herum liegen oder.?!

BlackBirdSR
2009-02-10, 00:02:29
Das trifft doch aber nur auf gemeinsam genutzten Cache zu, also beispielsweise den L3 beim Phenom oder L2 beim Core2.?!
Der Cache, den jeder Kern exclusiv für sicht hat, könnte doch auch theoretisch um den kompletten Rechenkern herum liegen oder.?!

Was eine Laufzeit und Verdrahtungskatastrophe wäre.
Generell gilt es die Signallaufzeiten so gering wie möglich zu halten und gleichzeitig sollte man natürlich all zu viele 90° Winkel vermeiden. Die Leiterbahn wird es einem danken. Und zu aller letzt: Was nicht per Hand drei mal um den Kern gewickelt wird, das lässt sich auch per Routing-Tool mit Standard-Cells weitgehend automatisch anlegen. Das spart Geld, Zeit und Fehler ein.

Also theoretisch geht das sicherlich. Aber zu welchen Nachteilen? ;)

RavenTS
2009-02-10, 01:27:45
Was eine Laufzeit und Verdrahtungskatastrophe wäre.
Generell gilt es die Signallaufzeiten so gering wie möglich zu halten und gleichzeitig sollte man natürlich all zu viele 90° Winkel vermeiden. Die Leiterbahn wird es einem danken. Und zu aller letzt: Was nicht per Hand drei mal um den Kern gewickelt wird, das lässt sich auch per Routing-Tool mit Standard-Cells weitgehend automatisch anlegen. Das spart Geld, Zeit und Fehler ein.

Also theoretisch geht das sicherlich. Aber zu welchen Nachteilen? ;)

Hm verstehe ich jetzt nicht, wenn der jeweilige Cache direkt neben dem Core wäre und nicht im "Cache-Bereich" irgendwo an der Seite, müssten die Signallaufzeiten doch eben eher kürzer sein.?!

BlackBirdSR
2009-02-10, 07:25:50
Hm verstehe ich jetzt nicht, wenn der jeweilige Cache direkt neben dem Core wäre und nicht im "Cache-Bereich" irgendwo an der Seite, müssten die Signallaufzeiten doch eben eher kürzer sein.?!

Aber du verteilst den Cache dann ja quasi und somit ist Signallaufzeit zwischen den Cache-Zellen größer. Zudem kommst du dann vor das Problem, dass du deine Redundanz vielleicht nicht einfach am Ende anbauen kannst, sondern auch noch strategisch platzieren musst. Vom Routing-Aufwand durch geometrische Strukturen haben wir ja schon gerdet.

Das ganze ist sicher möglich, falls es unbedingt sein muss. Allerdings scheint es in keiner Relation zum Aufwand zu stehen. Nicht bei Atom, nicht bei K10 oder Core2

RavenTS
2009-02-10, 10:21:40
Aber du verteilst den Cache dann ja quasi und somit ist Signallaufzeit zwischen den Cache-Zellen größer. Zudem kommst du dann vor das Problem, dass du deine Redundanz vielleicht nicht einfach am Ende anbauen kannst, sondern auch noch strategisch platzieren musst. Vom Routing-Aufwand durch geometrische Strukturen haben wir ja schon gerdet.

Das ganze ist sicher möglich, falls es unbedingt sein muss. Allerdings scheint es in keiner Relation zum Aufwand zu stehen. Nicht bei Atom, nicht bei K10 oder Core2

Axo, ja is logisch, aber warum Signallaufzeiten zwischen den Cachezellen, ich hatte doch von exclusivem Cache gesprochen.?! Bei Shared is das ja klar...

BlackBirdSR
2009-02-10, 10:47:32
Axo, ja is logisch, aber warum Signallaufzeiten zwischen den Cachezellen, ich hatte doch von exclusivem Cache gesprochen.?! Bei Shared is das ja klar...

Wenn du den Cache um den ganzen Kern verteilst, dann muss der ganze Datenstrom ja trotzdem über ein einzelnes Interface zum Kern/L1. Damit die Sache in x ns über die Bühne laufen kann, muss das Routing entsprechend angepasst werden. Also entweder sehr hohe Toleranzen was den Signalpegel betrifft, oder sehr viel Aufwand was das Routing betrifft.

Cache ist relativ billig und solange das so bleibt, lohnt es sich mehr davon auf die CPU zu klatschen. Wenn man jetzt hier und da herumoptimiert, um 5% mehr Die-Fläche zu erhalten, damit den Cache aber um 33% verteuert.... das macht einfach nicht genug Sinn.

Atom z.B. hätte nicht viel davon gehabt. Es sind sowieso schon sehr viele Dies auf einem Wafer und es gibt auch so etwas wie Sweet-Spots in der Fertigungsgröße. Man muss sich fragen, ob zusätzlicher Aufwand beim Cache den geringen Gewinn wert ist. Zumal ja ein Problem immer vorhanden ist: Defektdichte - Bei einem großflächigen Cache-Bereich ist die Chance größer, dass dieser einen Treffer abbekommt. Redundanz springt ein und alles gut (falls man bei Atom überhaupt so viel Aufwand getrieben hat, bei Core2/Nehalem und K10 wohl schon). Ist der Cache eng an allen 4 Seiten des kleinen Kerns verteilt, dann sinkt die Wahrscheinlichkeit, dass ein Treffer den Cache beschädigt, dafür steigt die Wahrscheinlichkeit, dass es den nächsten Kern killt. Der Rest ist dann Statistik (immerhin gibt es ja direkt unter/über dem Kern jeweils einen weiteren, der nicht von Cache umgeben ist.

DerRob
2009-02-13, 14:36:27
Atom z.B. hätte nicht viel davon gehabt. Es sind sowieso schon sehr viele Dies auf einem Wafer und es gibt auch so etwas wie Sweet-Spots in der Fertigungsgröße. Man muss sich fragen, ob zusätzlicher Aufwand beim Cache den geringen Gewinn wert ist. Zumal ja ein Problem immer vorhanden ist: Defektdichte - Bei einem großflächigen Cache-Bereich ist die Chance größer, dass dieser einen Treffer abbekommt. Redundanz springt ein und alles gut (falls man bei Atom überhaupt so viel Aufwand getrieben hat, bei Core2/Nehalem und K10 wohl schon). Ist der Cache eng an allen 4 Seiten des kleinen Kerns verteilt, dann sinkt die Wahrscheinlichkeit, dass ein Treffer den Cache beschädigt, dafür steigt die Wahrscheinlichkeit, dass es den nächsten Kern killt. Der Rest ist dann Statistik (immerhin gibt es ja direkt unter/über dem Kern jeweils einen weiteren, der nicht von Cache umgeben ist.
ist das nicht egal? nur weil der cache anders verteilt ist, sinkt doch nicht gleich sein anteil an der gesamtfläche. und wenn der prozentuale anteil des caches identisch bleibt, müsste doch auch die wahrscheinlichkeit eines fehlers in dem bereich des caches ebenfalls gleich bleiben... :confused:

BlackBirdSR
2009-02-13, 16:47:18
Ich war der Meinung, dass die Kerne dann im Mittel weiter auseinander liegen.
Allerdings bin ich auf dem Gebiet dieser Wahrscheinlichkeitsrechnung ganz schlecht.

Ob es einen Unterschied macht, wo die 20 Defekte dann liegen, kann ich tatsächlich nicht sagen.

Coda
2009-02-13, 16:53:13
Das trifft doch aber nur auf gemeinsam genutzten Cache zu, also beispielsweise den L3 beim Phenom oder L2 beim Core2.?!
Der Cache, den jeder Kern exclusiv für sicht hat, könnte doch auch theoretisch um den kompletten Rechenkern herum liegen oder.?!
Der exklusive Cache ist sowieso in den Kernen.

Das Problem ist wie gesagt das Layout. Man ändert nicht mal so eben die Grundstruktur der Logikeinheiten.

Spasstiger
2009-02-13, 17:53:00
Ob es einen Unterschied macht, wo die 20 Defekte dann liegen, kann ich tatsächlich nicht sagen.
Defekte auf einem Wafer werden als Poisson-verteilt angenommen. Das bedeutet, dass Defekte mit größerer Wahrscheinlichkeit lokal gehäuft auftreten als dass sie gleichmäßig auf der gesamten Fläche verteilt sind.
Da man aber nicht weiß, wo ein Defekt tatsächlich auftritt, kann man auch nicht defektrudundanten Flächen so anordnen, dass sie tatsächlich mehr Defekte abbekommen.
Die Wahrscheinlichkeit für einen Defekt ist auf jedem Flächenelement gleich groß.

/EDIT: Aufgrund der Poisson-Verteilung kann man natürlich festlegen, dass fehlerredundante Gebiete auch möglichst zusammengefasst werden sollten. Denn wenn ein Fehler in einem solchen Bereich auftritt, ist die Wahrscheinlichkeit groß, dass dort auch weitere Fehler auftreten, in der mittleren Nachbarschaft allerdings nicht. Wenn redundante und nicht-redundante Flächen dagegen wild gemischt sind, ist die Wahrscheinlichkeit bei einem Fehler in einem redundanten Bereich groß, dass auch Fehler in nicht-redundanten Bereichen auftreten. Wie groß zusammenhängende, redundante Flächen mindestens sein sollten, hängt von der mittleren Fehlerdichte ab.
Das erklärt natürlich neben dem Laufzeit- und Verdrahtungsargument ebenso, warum die großen Caches in CPUs immer als große, annähernd quadratische Fläche gestaltet sind und nicht stückchenweise über den gesamten Die verteilt werden.

Beim Atom scheint also das nicht-quadratische Layout das einzig sinnvolle Layout zu sein.

Coda
2009-02-13, 19:22:35
Atom ist ja auch so klein, dass der Unterschied der Waferkapazität wahrscheinlich extrem gering wäre.

Je größer die Chips desto mehr gibt man sich Mühe diese möglichst quadratisch zu bekommen (G80, GT200, Itaniums).

Spasstiger
2009-02-13, 19:35:58
Atom ist ja auch so klein, dass der Unterschied der Waferkapazität wahrscheinlich extrem gering wäre.
Ja, habs ja oben vorgerechnet, macht ungefähr 1% aus. Aus Laiensicht nicht viel, aber in der Massenfertigung wird immer knallhart kalkuliert. Beim Atom scheint der Unterschied trotzdem zu gering zu sein, um eventuelle Nachteile durch ein andersartiges Layout auszugleichen.

Je größer die Chips desto mehr gibt man sich Mühe diese möglichst quadratisch zu bekommen (GT200, Itaniums).
Definitiv. Aber ich habe mit dem oben verlinkten Rechner etwas Interessantes festgestellt:
576 mm² Diefläche, 300-mm-Wafer, voreingestellte Spacing-Parameter:
24 mm * 24 mm: bestenfalls 89 Dice (DIE CENTERED CALCULATION)
18 mm * 32 mm: bestenfalls 92 Dice (TOP BIASED CALCULATION)
12 mm * 48 mm: bestenfalls 87 Dice (DIE CENTERED CALCULATION)

Also scheint eine quadratische Fläche nicht zwangsweise besser zu sein.

tetra
2009-02-13, 20:03:13
Ich sag nur Extremwertprobleme. Quadrate sind zwar gut - das sie mathematisch am vorteilhaftesten sind, bliebe zu beweisen.

Gast
2009-02-14, 21:24:47
Hallo,

man kann nicht alle Baugruppen so anordnen das ein kostengünstiges Quadrat herauskommt. Wer sich schon einmal mit Zeit kritischen Schaltungen auseinandergesetzt hat, der weis das die Signallaufzeit die bestimmende Größe ist. Einfaches Beispiel Leiterplatten in die Digitaltechnik. Man wundert sich warum manche Leiterbahnen irre Wege gehen. Schlicht und ergreifend wegen der Signallaufzeit. Die Leiterbahnlänge wird damit unter anderem mit angepaßt. Nichts anders passiert bei der Chipherstellung. Rechnet doch mal die Taktfrequenzen runter auf die Signallaufzeit. Das macht Welten aus, wenn da etwas nicht stimmt. Und es spielen natürlich noch Spannungsabfälle über die Leiterbahnlänge eine Rolle. Bei Betriebsspannungen von knapp einem Volt, bald darunter, und Stromspitzen von ca. 100A, sollte man sich schon einen Kopf darübermachen alles wichtige dicht aneinander zusetzen.
Irgendwo habe ich mal gelesen das der Impulsstrom durch den Takt weit über 100A geht.

Gast
2009-02-14, 22:10:12
Ich habe bei den Kommentaren immer auf die Lösung gewartet. Meines Wissens
wurde aber ein wichtiges Kriterium vergessen, welches insbesondere für so kleine
Prozessoren wie den Atom zutrifft:

Platz für Anschlussleitungen.

Manchmal braucht man eben "viel Rand"... Dass das mit Verschnitt einhergeht ist dann u.U. nicht zu vermeiden.

Ansonsten haben natürlich auch diejenigen Recht, die sagen, dass man ein Chiplayout nicht beliebig plastisch umformen kann. Wenn ich einen Chip mit 256 KB und mit 2 MB Cache auf den Markt bringen will, werde ich keine separaten Recheneinheiten layouten.

BlueI
2009-02-14, 22:39:11
Die Pins/Lötpunkte liegen doch heutzutage alle unter dem Chip, ergo ist dafür nur die Fläche entscheidend und die bleibt ja gleich.

=Floi=
2009-02-14, 23:06:53
bei einem verhältnis von 2:1 ist man ja wieder annähernd an quadratischen cores.

Coda
2009-02-19, 12:02:29
Denkfehler. Die Chips sind nur halb so groß und wären quadratisch mit gleicher Fläche wieder effizienter in der Flächenausnutzung.