BGAs mit Eagle (Design Rules & Platinenherstellung)

blog_bga_board

Multilayer mit BGA (Screenshot Online PCB Visualizer® von Eurocircuits)

Immer seltener kommt man bei Platinenlayouts um BGA-Bausteine herum. In diesem kleinen Artikel möchte ich ein paare Tips über die Besonderheiten für Eagle und die zugehörige Herstellung der Platinen durch die Standardhersteller geben. Beginnt man die ersten BGA- bzw. Fine-Pitch Layouts mit Eagle zu zeichnen, kann es schnell dazu kommen, das man voller Stolz über die versendete Bestellung schnell durch eine E-Mail vom Platinenhersteller einen Schritt im Projektverlauf zurückgeholt wird. Der Hersteller meldet: Die Platine kann so leider nicht bzw. nur gegen einen erheblichen Aufpreis produziert werden.

Normalerweise startet jetzt ein Ping-Pong Spiel zwischen Hersteller und Entwickler.  Als Entwickler versteht man die jedoch nicht, denn man hat eigentlich sehr gut auf Leitbahnbreiten, Isolationsabstände und Bohrungen geachtet.

Was genau passt denn nicht? Bzw. wie muss man arbeiten das es passt?

Wir haben einen sehr guten Kontakt zu Cadsoft (Eagle) und Eurocircuits (vielen Dank nochmal an Richard und Uwe!) und hatten so die Chance nach und nach herauszufinden, was genau das Problem dabei eigentlich ist.

Ich hoffe, dass mit diesem Artikel der eine oder andere Punkt erklärt und so vermieden werden kann.

Ausgangslage

Nach dem man den Schaltplan für das Layout freigeben hatten, schaut man typischerweise bei den Platinenproduzenten nach, was für Strukturen hergestellt werden können. Zum Beispiel:

einstellungen

  • 150 µm Strukturbreite und 0,3mm der kleinste Bohrung
  • oder für etwas mehr Geld aber auch bezahlbar 125 µm und 0,2 Bohrung
blog_bga

BGA (Screenshot Online PCB Visualizer® von Eurocircuits)

Damit lässt sich eigentlich viel realisieren.  Bei einem BGA Baustein mit einem Pitch (Abstand von Ball zu Ball) von 0,8 mm muss muss man bei einer Bahnbreite von 125 µm diesen Wert mal 3 nehmen (Isolation + Leiterbahn + Isolation) 375 µm. Ein Ball hat meist einen Durchmesser von ca. 300 – 400 µm. D.h. man kriegt eine Leitung zwischen zwei Balls durch.

Wenn man eine Bohrung mit einem Durchmesser von 0,2mm nimmt sieht es im Eagle auch so aus, als ob man die 0,125 um die Durchkontaktierung ebenfalls einhält. Wenn man jetzt die Leitungen entsprechend auf die Werte einstellt und schaut, dass man schön in der Mitte von allem bleibt sieht es so aus, als ob es perfekt passen müsste….

routing

Layer / Abstände (Screenshot von Eagle)

Eigentlich hat man als Entwickler ja sehr diszipliniert die Leitungen so gut wie möglich zwischen all den Balls und Durchkontaktierungen verlegt. Wirft man jetzt den Design-Rule-Check an, wird man dann etwas besserem belehrt, denn die Fehlerliste explodiert beinahe. Motiviert beginnt man am Anfang noch die Liste nach und nach abzuarbeiten, doch schnell merkt man, dass kriegt man alles gar nicht richtig weg. Schaut man aber selber die Stellen an, und misst diese kurz nach sieht man, dass es es eigentlich ganz gut passen würde. Ok ab und hat man vielleicht nicht ganz den gewünschten Abstand aber solange das noch weit unter 10% von den Grenzwerten entfernt sind denkt man sich, das wird schon gehen.

drccheck

Design Rule Checks (Screenshot von Eagle)

Wo ist das Problem genau?

Nicht produzierbar

Es sind einfach zu viele Abstände unter dem Mindestmaß von z.B. 0,125mm. Und hier unterscheiden sich die Platinenhersteller. Es gibt die, bei denen man sagen: OK mach auf mein Risiko weiter, oder den anderen der sagt, nein du musst die teurere Klasse verwenden.

Dort werden dann diese Fehler ignoriert.

Jetzt ist die Frage, wie kriegt man das Layout ohne diese Fehlermeldungen hin bzw. wie vermeidet man den Wechsel in einere teuere Technologieklasse?

Die Abstandsfehler

Es sind einfach noch viele Abstände auf dem Board, die kleiner als der minimale Abstand sein dürfen.

Jeder Platinenhersteller bietet Design-Rules an, wobei die man die auch mit dem Wissen von der Homepage gut selber einstellen kann.

  • Leiterbahnbreiten 0,125 mm und Isolationen ebenfalls
  • Minimale Bohrung 0,2 mm
rules

Typisches Ergebnis bei diesen Abstandsverletzungen die aber gar nicht sein müssen wenn man im richtigen Raster arbeitet! (Screenshot Online PCB Visualizer® von Eurocircuits)

Abhängig vom eingestellten Raster kann man jetzt schnell immer ein paar 0,0xx  – 0,xx mm daneben liegen. Daher kommt Tip Nummer 1.

TIP 1: Beim Layouten das Raster passend zum BGA einstellen

Die Abstandsverletzungen kann man ganz einfach in den Griff bekommen, wenn man beim Layouten das Raster passend zum BGA einstellt. Also am Besten ist es den BGA (mm-gerastert) in ein mm-Raster zu platzieren. Das kann man mit Strg + MOVE: Raster einstellen und dann auf den BGA geklickt. Dann springt er ins aktuelle Raster. Dann braucht man ein Raster mit dem man einfach zwischen den BGA-Anschlüssen durchkommt.

TIP 2: Ein günstiger Wert entspricht dem halben/ viertel/achtel Abstand

Ein günstiger Wert entspricht dem halben/ viertel/achtel Abstand zwischen den Lötflächen. Wenn man die Verbindungen auf einem alten Layout etwas verschiebt, kann man so meist alle Abstandsfehler beseitigen.

Ein paar Abstandsverletzungen bleiben z.T. übrig, die aber keine Probleme für die Fertigung sind. Weil es eben nur minimale Unterschreitungen sind.

Die Durchkontaktierungen

Die Vias (Durchkontakierungen) passen auch, wenn man die Bohrdurchmesser auf 0.2mm setzt und den Gesamtdurchmesser auf 0.4mm setzt.

TIP 3: Bohrung auf 0.2mm setzt und den Gesamtdurchmesser auf 0.4mm bzw. 0.45 auf Innenlagen (und nicht auto wie voreingestellt)

Wichtig ist dieser Gesamtdurchmesser! Pro Via kann man das angeben. Standardmäßig hatten wir hier immer auto eingestellt.

Bildschirmfoto vom 2013-06-08 13:20:50

Diameter ist auf auto. Das ist nicht gut. (Screenshot von Eagle)

Bildschirmfoto vom 2013-06-08 13:21:33

Stellt man 0,4 bzw. 0,45 als Diameter und 0,2 als Bohrung ein passt alles. (Screenshot von Eagle)

Online Prüfung

Die Screenshots sind mit dem Online Tool PCB Visualizer der Firma Eurocircuits gemacht worden. Dort kann man eine Eagle oder Gerberdatei heraufladen und dann direkt online im Browser sehen was passt oder nicht.

Per Browser kann man sich durch die Platine wie in einem Layoutprogramm klicken und entsprechend alles prüfen.

Das Tool findet man, im Login Bereich bei Eurocircuits. Dieses kann man auch ohne etwas kaufen zu wollen verwenden. Gerne nehme ich das auch für die Kontrolle von Gerberdaten her.

Ohne Fehler sieht das dann wie folgt aus:

blog_ohne_fehler

Keine Fehler (Screenshot Online PCB Visualizer® von Eurocircuits)

Produktion

Jetzt sollte eine Produktion schon wesentlich besser funktionieren. Viel anders ist das Layout jetzt nicht aber eben produzierbar.

Danke an Uwe Dörr von Eurocircuits und Richard Hammerl von Cadsoft!

Advertisements
Dieser Beitrag wurde unter Journal veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Ein Gedanke zu “BGAs mit Eagle (Design Rules & Platinenherstellung)

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

w

Verbinde mit %s