Hallo zusammen,
ich habe in meinem Design mehrere ICs, u.a. einen FPGA und einen CPLD.
Jetzt möchte ich die Versorgungsleitungen dazu routen.
Ich nehme als Beispiel mal den FPGA heraus: Laut Design-Guide soll er
mit 470nF + 4,7uF + 100uF abgeblockt werden. Die 470nF und 4,7uF ziehe
ich in getrennten Leitungen zu jedem Versorgungspin-Paar (Vcc + GND).
Wie ist es aber mit den 100uF? Muss ich die auch getrennt routen? Oder
kann ich die Leitungen hinter den 4,7uF auf meine Vcc- und Groundplane
legen, die sich alle ICs teilen? Und die 100uF irgendwo dazu
anschließen?
Ich hoffe, meine Frage ist deutlich geworden.
Grüße
Steffen
Insgesamt kann man sich merken das je näher man zu den Bausteinen kommt
die Kondensatoren immer kleiner werden.
Mit den 100µF hätte ich die Versorgungsspannung abgeblockt, und von dort
aus
würde ich getrennt! die Vesorgungsanschlusspaare mit den Vorgeschlagenen
4.7µF+470nF abblocken.
Wobei es doch schon hilfreich wäre wenn du diesen besagten DesignGuide
hier einfach verlinkst. ;)
Steffen Hausinger schrieb:> Ich nehme als Beispiel mal den FPGA heraus: Laut Design-Guide soll er> mit 470nF + 4,7uF + 100uF abgeblockt werden.
470nF? Was ist das für ein FPGA?
Nur ein einziger 470nF-Kondensator?
Ich hätte hier ein paar 0402-Kondensatoren mit etwa 47nF erwartet...
Übrigens: Jedes Versorgungsanschlusspärchen (Vcc+GND) hat so einen
Kondensator verdient.
http://www.lothar-miller.de/s9y/categories/14-Entkopplung> Und die 100uF irgendwo dazu anschließen?
Ja, das reicht aus, wenn der irgendwo in der Nähe sitzt...
Nachtaktiver schrieb:> Wobei es doch schon hilfreich wäre wenn du diesen besagten DesignGuide> hier einfach verlinkst. ;)
Es handelt sich um den Design Guide eines Spartan 6 (UG393). Ich kann
ihn derzeit leider nicht hochladen, er lässt sich aber unter "UG393" als
Suchwort sehr leicht finden. Die von mir genannten Kapazitäten werden ab
Seite 13 behandelt.
Dort ist weiter hinten im Text auch zu lesen, dass man die 100 µF mit
anderen Kondensatoren zusammenfassen kann. Ich habe mich deshalb
gefragt, ob das auch für alle anderen Kondensatoren auf der Platine
gilt.
Lothar Miller schrieb:> Nur ein einziger 470nF-Kondensator?> Ich hätte hier ein paar 0402-Kondensatoren mit etwa 47nF erwartet
Es sind 470 nF, mit der Baugröße liegst Du aber trotzdem richtig. Wobei
es hier wohl eher auf Letztere ankommt und dort einfach ein möglichst
hoher Wert empfohlen wird.
Steffen Hausinger schrieb:>> Nur ein einziger 470nF-Kondensator?> Es sind 470 nF, mit der Baugröße liegst Du aber trotzdem richtig.
Wichtig war diese Aussage:
>> Jedes Versorgungsanschlusspärchen (Vcc+GND) hat so einen>> Kondensator verdient.
Klar - nur meine Frage ist, bis zu welchem Kondensator das gilt. Der
kleine 470nF ist für die hohen Frequenzen - muss also getrennt geroutet
werden. Der mittlere Kondensator ist für die mittleren Frequenzen -
okay, den route ich besser auch getrennt. Aber der große Kondensator für
die tiefen Frequenzen - muss ich von dort auch getrennt zu den beiden
vorher genannten routen?
"Nachtaktiver" empfiehlt das ja und ich würde es normalerweise auch so
machen. Aber wenn es dann an die Umsetzung geht, fehlt der Platz und man
kommt mit einem Mal ins Nachdenken, wie wichtig das nun wirklich ist...
Wichtig ist nicht nur wann du die zusammenschließt, sondern auch wie
lang die Bahn dazu ist. Die hat ja auch eine Induktivität. Pauschal kann
man das nicht für jeden Fall angeben. Ich würde den großen Kondensator
an die gemeinsame Masse anschließen und die kleinen wie oben beschrieben
einzaln verdrahten.
Aber wenn du sicher gehen willst, poste dein Layout und wir können
drüber schauen.
Gruß
Steffen Hausinger schrieb:> Dort ist weiter hinten im Text auch zu lesen, dass man die 100 µF mit> anderen Kondensatoren zusammenfassen kann. Ich habe mich deshalb> gefragt, ob das auch für alle anderen Kondensatoren auf der Platine> gilt.
Das ist nur für "die grossen Cs" gültig. Die 47nF sollten nahe der Vxx
Pins plaziert werden und können nicht zusammengefasst werden.
Wie Lothar schon sagte, jeder Powerpin braucht so ein C.
Die 3-100µF Cs können zu einen "zusammengefasst" werden. Allerdings
musst du drauf achten, das dann auch ESL/ ESR 3 mal kleiner sein muss !
Diese Cs sind recht teuer - als Tandal fast unbezahlbar.
Welches Package hat dein Spartaner ? BGA ?
Du verwendest einen Multilayer, wieviele Lagen wird er haben ?
Es kann durchaus nützlich sein, die GND + Vxx Lagen sehr dicht
übereinander zu legen (kleiner als 100µm), das ergibt einen prima
Kondensator mit excellenten Werten (sehr niedrige Induktivität/
Impedanz).
Gruss Uwe
... schrieb:> Wichtig ist nicht nur wann du die zusammenschließt, sondern auch wie> lang die Bahn dazu ist. Die hat ja auch eine Induktivität.
Das sollte keine "Bahn" sein, sondern direkt an die Planes angeschlossen
werden. Dann hat man auch eine geringere Zuleitungsinduktivität.
... schrieb:> Wichtig ist nicht nur wann du die zusammenschließt, sondern auch wie> lang die Bahn dazu ist.
Wie hoch ist die Induktivität üblicherweise? Gibt es eine Faustregel? In
einem anderen Thread hat mir jemand namens "ttl" etwas von 1 nH pro 2 mm
geschrieben. Und ein Via liegt demnach ebenfalls bei ungefähr 1 nH.
... schrieb:> Aber wenn du sicher gehen willst, poste dein Layout und wir können> drüber schauen.
Danke, das werde ich heute Abend gerne machen!
Uwe N. schrieb:> Welches Package hat dein Spartaner ? BGA ?> Du verwendest einen Multilayer, wieviele Lagen wird er haben ?
Es ist ein FG(G) 484 Package (1 mm pitch) und die Platine hat vier
Lagen. Den Aufbau erkläre ich am Leichtesten mit dem Bild, das ich dann
heute Abend nachreiche.
Ok, im Anhang also mein bisheriger Entwurf. Die ersten beiden Bilder
geben einen Überblick über den Aufbau. Das dritte Bild zeigt
beispielhaft den Aufbau einer einzelnen Bank.
Es bedeuten:
Blau = Bottom-Layer
türkis = Zwischenlayer unten
pink = Zwischenlayer oben.
Den Top-Layer habe ich weggelassen, da von dort lediglich die Vias zum
Bottom-Layer führen.
Ich meinen Entwurf wie folgt aufgebaut:
- Alle Versorgunspins gehen über Vias direkt auf die Unterseite der
Platine.
- Die Versorgungspins einer Bank sowie von Vcc_aux und Vcc_int habe ich
in Gruppen zusammengefasst.
- Jede Gruppe wird von mehreren 470 nF Kondensatoren gestützt (Anzahl:
siehe Design Guide UG393), die ich innerhalb des Footprints platziert
habe.
- Um eine geringe Induktivität zu erreichen, habe ich direkt auf dem
Bottom-Layer um jeden dieser 470 nF Kondensator eine Insel von Vcc und
GND erstellt.
- Diese Inseln werden vom 4,7 µF Kondensator gespeist. GND wird dabei
ebenfalls auf dem Bottom-Layer geführt, Vcc kommt über die Vcc-Plane.
- Der 4,7 µF Kondensator sitzt natürlich ausserhalb des Footprints und
ist noch nicht eingezeichnet.
Was haltet ihr davon? Was ist gut, was schlecht? Hat jemand von Euch
eigentlich ein funktionsfähiges Beispiel-Layout?
Grüße
Steffen
Die Flächen würde ich nicht zusätzlich mit Schlitzen versehen, ist zwar
gut gemeint, bringt aber wenig (im Zweifelsfall unerwarteten Ärger in
der EMV - Schlitze können zur Antenne werden).
Nutze nach Möglichkeit NICHT die Aussenlagen als Spannungsversorgung, du
hast ja immerhin 2 Innenlagen dafür (ja, ich weiß, der Spartaner hat
mind. 2 Versorgungsspannungen).
Achja, deine Signalvias sitzen zu dicht aufeinander (z.B. rechts unten)
Gruss Uwe
Uwe N. schrieb:> Nutze nach Möglichkeit NICHT die Aussenlagen als Spannungsversorgung, du> hast ja immerhin 2 Innenlagen dafür
Beziehst Du Dich damit auch auf den Bottom-Layer im Footprint? Im Moment
gehe ich ja über einen Via auf die "Insel" im Bottom-Layer. Und dort
sitzt dann direkt der 470 nF Kondensator. Soll ich das anders lösen?
Aber wie? Wenn ich mit dem Via statt auf den Bottom-Layer auf eine
Innenlage gehe, dann komme ich von dieser Innenlage innerhalb des
Footprints nicht mehr raus, ohne meine Signale zu behindern. Also müsste
ich ausserhalb des Footprints raus und könnte dort dann auch erst den
470 nF Kondensator platzieren. Oder meinst Du etwas anderes?
Uwe N. schrieb:> Achja, deine Signalvias sitzen zu dicht aufeinander (z.B. rechts unten)
Mein Leiterplattenhersteller kann auf den Aussenlayern einen kleineren
Restring als innen. Da ich auf dem Screenshot in Eagle aber die
Innenlayer eingeblendet habe, zeigt er mir den größeren Restring an und
es sieht zu eng aus. Für den kleineren Restring passt aber alles. Danke
für den Hinweis.
Wenn ich die Schlitze entferne, denkst Du, mein Layout passt dann so für
die Versorgung?
Versorgungslayer sollten immer Innenlagen sein, Signale aussen (bei 4
Lagen). Das vereinfacht das Signalrouting und die Powerlagen werden
flächiger, weil sie sich nicht um Bauelemente herumschlängeln müssen und
dabei Platz für die Signale rauben.
Wie sieht deine Lagenaufteilung aus ?
Empfehlung:
Top: Signale
i2 : GND
i3 : Vxx
LS : Signale
(i2/ i3 kann getauscht werden)
Steffen Hausinger schrieb:> Mein Leiterplattenhersteller kann auf den Aussenlayern einen kleineren> Restring als innen.
Gut, aber du hast viel Platz - warum die Toleranzen jetzt schon
ausreizen ?
Uwe N. schrieb:> Gut, aber du hast viel Platz - warum die Toleranzen jetzt schon> ausreizen ?
Du siehst die Oberseite ja nicht ;-) Mein Layout ist so gut wie fertig.
Zu Beginn habe ich die Versorgung der ICs lokal geroutet, dann die
Signale und jetzt plane ich die komplette Versorgung zu erstellen.
Uwe N. schrieb:> Empfehlung:> Top: Signale> i2 : GND> i3 : Vxx> LS : Signale
Ja, das passt! Wie handhabe ich eigentlich den Bereich der
Spannungsversorgung? Dort komme ich leicht mit zwei Lagen aus. Soll ich
dort die Signal-Lagen ebenfalls zu GND- bzw. Vcc-Lagen machen? Oder
lasse ich sie einfach frei? Oder soll ich dort vielleicht die Innenlagen
freilassen und auf den Aussenlagen routen?
Die Trennung zwischen Signalen und Power sollte konsequent sein. D.h. in
den Powerlagen (dazu zählt auch GND) haben Signale garnichts verloren -
das erzeugt nur Schlitze. Schau das die Stromversorgung so gross wie
möglich wird - das geht meist nur in den Innenlagen richtig gut.
Auch wenn viele es als Platzverschwendung ansehen - aus Sicht der
Signalintegrität ist es besser, je eine oder mehrere ganze Lagen
exklusiv nur für Power zu reservieren.
Wenn du einen Multilayer hast, ist es i.d.R. nicht gut, die Aussenlagen
komplett zu fluten, Ausnahme: z.B. Spannungsregler haben gerne eine
Cu-Fläche zum kühlen (sowas in den Innenlagen bringt nicht allzuviel).
Frage nebenbei: Hast/ brauchst du Impedanzen ? Ein 4-Lagen Board ist
meist recht ungünstig dafür ;-)
Uwe N. schrieb:> Auch wenn viele es als Platzverschwendung ansehen - aus Sicht der> Signalintegrität ist es besser, je eine oder mehrere ganze Lagen> exklusiv nur für Power zu reservieren.
Das habe ich bereits so vorgesehen, aber an manchen Stellen kann ich es
einfach nicht durchhalten. Ein paar Mal muss ich leider über eine
Innenlage kreuzen. Ich habe mir dafür die VCC-Lage als Opfer ausgesucht.
Uwe N. schrieb:> Frage nebenbei: Hast/ brauchst du Impedanzen ? Ein 4-Lagen Board ist> meist recht ungünstig dafür ;-)
Nein, keine Impedanzen. Ich habe auch recht langsame Signale im Bereich
von ungefähr 12 MHz. Die einzig kritische Leitung ist die CCLK zwischen
Konfigurationsflash und FPGA. Die ist aber wiederum so kurz (rund 15 mm)
und auch noch terminiert. Abgesehen davon ist die Konfigurationszeit für
mich unkritisch und CCLK kann meinetwegen dementsprechend langsam sein.
Eine Frage habe ich aber trotzdem noch. Ist mein Konzept mit den
"Inseln" so okay? Oder soll ich auch die Versorgung des FPGA über die
Innenlagen machen? Dann halt mit den Nachteilen, dass ich einen weiteren
Via benötige und die kleinen 470 nF nicht ins Footprint setzen kann.
> Das habe ich bereits so vorgesehen, aber an manchen Stellen kann ich es> einfach nicht durchhalten. Ein paar Mal muss ich leider über eine> Innenlage kreuzen. Ich habe mir dafür die VCC-Lage als Opfer ausgesucht.
Ich denke auch, das dies der beste Kompromiss ist.
> Ich habe auch recht langsame Signale im Bereich von ungefähr 12 MHz.
Ärger kann man auch bei 5MHz bekommen. Ein kritisches Auge sollte man
(gerade bei FPGAs) auf Trise/ Tfall werfen. Die machen den Braten fett.
Sind die Leitungen kurz (in bezug auf die Wellenlänge) sollte es passen.
> Eine Frage habe ich aber trotzdem noch. Ist mein Konzept mit den> "Inseln" so okay?
Das wird bei mehreren Spannungsebenen kaum anders gehen (ausser mehr
Lagen ;-)). Ob du nur Innenlagen nutzt oder auch die Aussenlagen hängt
davon ab, ob du alle Vxx in eine Lage bekommst. Ich persönlich bevorzuge
die Innenlagen dafür.
Mehr Vias sind an dieser Stelle kein Problem - umso mehr, desto
nieder-ohmiger/-induktiver ist deine Anbindung der Cs an die Plane.
(Pluggen ist die wohl beste Variante, ein Block-C an die Planes
anzuschliessen - das löst auch einige Platzprobleme. Ja ja, ich weiß -
Pluggen ist scheiße teuer ;-) )
Uwe N. schrieb:> Ob du nur Innenlagen nutzt oder auch die Aussenlagen hängt> davon ab, ob du alle Vxx in eine Lage bekommst. Ich persönlich bevorzuge> die Innenlagen dafür.
Ich bin mir nicht sicher, ob wir hier aneinander vorbeireden. Deshalb
habe ich eine Skizze gezeichnet.
Variante A ist von den Pins über Vias auf die Innenlagen und von dort
wieder über Vias auf die Aussenlagen. Der 470 nF Kondensator sitzt dann
ausserhalb des Footprints.
Variante B ist die mit den "Inseln". Von den Pins auf die Aussenlage und
dort direkt auf den Kondensator. Die Vcc-Lage habe ich nicht einzeichnen
können, weil sie dreidimensional "tiefer" in der Zeichenebene sitzt.
Welche Variante meinst Du?
Steffen Hausinger schrieb:> Ich bin mir nicht sicher, ob wir hier aneinander vorbeireden.
Ich hatte es fast befürchtet ;-)
Du machst es dir vielleicht zu kompliziert.
Es reicht, wenn die Cs halbwegs in der Nähe der Powerpins plaziert sind.
Eben so nahe, wie du dir nicht den Weg für Signale gänzlich verbaust.
So ein Kondensator hat ja einen gewissen "Wirkradius" inerhalb diesem er
akzeptabel wirken kann. Die Vias sollten dann möglichst nahe am Pad sein
(nicht zu nahe -> Löten !), und nicht unbedingt 100µm im Drill - so
gross wie möglich.
Das funktioniert eben am besten mit Innenlagen.
Aber vielleicht ist dies hilfreich:
http://www.elektronikpraxis.vogel.de/fileserver/vogelonline/files/53618d/index.html#/0/
Versuch nicht stocksteif alle "Empfehlungen" in den Datenblättern
umzusetzen. Das geht häufig nicht und wenn du dir mal so ein Eval-Board
von Xilinx anschaust wirst du entsetzt festellen, das die das selber
auch nicht machen ! Neben mir liegt ein S3E Starterkit, das Layout ist
... naja.
Uwe N. schrieb:> Du machst es dir vielleicht zu kompliziert.
Mir fehlt einfach die Erfahrung, deshalb auch danke für den Link!
Uwe N. schrieb:> Es reicht, wenn die Cs halbwegs in der Nähe der Powerpins plaziert sind.
Du plädierst also für Variante A, weil sie einfacher ist. Variante B
habe ich bereits umgesetzt und, wenn ich Dich da richtig verstehe, ist
sie zwar komplizierter, aber auch vorteilhafter(?).
Wenn dem so ist, dann belasse ich es natürlich bei meiner jetzigen
Umsetzung.