Die CAD-Bibliothek beinhaltet eine Vielzahl von Informationen, das ist für effiziente und fehlerfreie Abläufe der Produktionskette auch erforderlich. Daher muss die eigentliche Frage lauten: „Welche Informationen MUSS die CAD-Bibliothek enthalten?“ Der Pragmatiker mag sagen: die Bauteil-Informationen eben. Doch welche Informationen werden für welche Aufgabenstellung benötigt? Die Problematik beginnt schon mit den Begriffen, denn diese sind in der Elektronikbranche mit all ihrem Anspruch an Präzision leider für gewöhnlich nicht genormt. So gibt es viele Begriffe, die sich mit Bauteilen und den zugehörigen Informationen beschäftigen, die je nach Anwendung oder eingesetztem Softwarepaket unterschiedlich bezeichnet werden, obwohl sie das Gleiche meinen. Nehmen wir nur den Begriff „Bauteil“: Einerseits wird „Bauteil“ als Bibliothekselement verstanden, andererseits als platziertes Element, sei es in einem Schaltplan oder einem PCB-Design. Selbst der Begriff „Logik-Symbol“ meint nicht zwangsläufig das Schaltplan-Symbol, sondern kann auch als Bezeichnung für ein Gatter-Symbol verwendet werden. Wenn wir schon damit leben müssen, dass es wohl nie zu einer einheitlichen Terminologie kommen wird, so wollen wir uns darauf konzentrieren, zu vermitteln, welche Struktur Bibliotheken heute üblicherweise haben und wie sie organisiert werden können.
Design-Ansatz von EDA-Systemen
Die meisten EDA-Systeme arbeiten vom Schaltplan ausgehend, also mit der so genannten Bottom-Up-Strategie. Das bedeutet, dass in der Bibliothek in jedem Fall die Schaltplansymbole gebraucht werden. Für gewöhnlich wird zumindest für eine erste Kostenkalkulation bereits eine Materialliste erzeugt, die gegebenenfalls bereits zur Bauteilbeschaffung dient. Daher wird nicht nur die graphische Information des Schaltplansymbols benötigt, sondern zusätzlich weitere bauteilbeschreibende Informationen. Für das PCB-Design wird der Footprint benötigt, der zum Einen aus graphischer Information, zum Anderen aber ebenfalls aus zusätzlichen, bauteilbeschreibenden Informationen bestehen kann.
Welche Informationen vorhanden sein müssen
Als Mindest-Information sollten Angaben enthalten sein, um welches Bauteil es sich handelt, von welchem Hersteller es stammt, die exakte Herstellerbezeichnung, die Bauform, den Wert, die maximal zulässige Spannung, den Temperaturbereich, die Toleranz und ob es gegebenenfalls Ersatztypen anderer Hersteller gibt. Außerdem wird heutzutage für viele Designs zunächst eine Simulation durchgeführt, daher werden noch die Simulationsmodelle benötigt. Auf der PCB-Design-Seite machen immer komplexere Mechanik, die Integration umfangreicher Schaltungskonzepte oder mehrerer Module auf kleinstem Raum einen Austausch mit M-CAD-Programmen für kritische Mechanikmodellation unumgänglich, hierfür werden zusätzlich zum klassischen Footprint 3-D-Modelle benötigt, die ebenfalls in der Bibliothek hinterlegt sein müssen. Außerdem gibt es Teile, die im PCB-Design Raum benötigen, aber im Schaltplan nicht zwangläufig aufgeführt sein müssen, da sie für die Logik und/oder elektrische Funktion irrelevant sind. Dazu gehören beispielsweise Sockel, Kühlkörper, Auswerfer und Unterlegscheiben. Im Schaltplan zwar nicht benötigt, müssen sie dennoch in der Stückliste auftauchen. Schlussendlich müssen noch die zugehörigen Teile verwaltet werden, die weder im Schaltplan noch im PCB-Design grafisch auftauchen, wie z. B. Schrauben, auch sie werden in der Stückliste benötigt und müssen daher in der Bibliothek verwaltet werden. Prinzipiell unterscheiden wir graphische Informationen und, profan ausgedrückt, „textliche“ Informationen sowie elektrische Informationen. Im Falle des Schaltplan-Symbols und des Footprints ist die Einordnung noch klar, es sind graphische Informationen, ebenso die 3-D-Darstellung des Bauteils. Ebenso eindeutig ist das Simulationsmodell einzuordnen, es ist eine elektrische Information. Nicht mehr ganz so eindeutig ist die Einordnung anderer Bauteilinformationen, die Herstellerbezeichnung zum Beispiel ist eine „textliche“ Information, der Bauteilwert hingegen ist sowohl eine „textliche“ als auch eine elektrische Information.
Art und Verwaltung der Informationen
Alle diese Informationen werden in der Bibliothek unter dem Begriff „Bauteil“ oder „Part“ zusammengeführt. Dies wird heutzutage üblicherweise in einer Art Datenbankstruktur organisiert. Das Bauteil selbst ist in der Bibliothek wie ein Datenbankeintrag abgelegt, die graphischen, textlichen und elektrischen Informationen werden diesem Eintrag zugeordnet. Wie bei Datenbanken üblich, muss es eine einzigartige Bezeichnung geben, über die der Eintrag in der Datenbank indiziert werden kann. In unserem Beispiel ist dies der „Part Name“, der innerhalb dieser Bibliothek nur einmal vorkommen kann. Das kann zum Beispiel die Artikelnummer des Warenwirtschaftssystem sein. Viele Systeme bieten heutzutage außerdem eine direkte Anbindung an das Warenwirtschaftssystem an, im Beispiel von Pulsonix ist beispielsweise mit einem Zusatzmodul eine Anbindung an jede ODBC-fähige Datenbank möglich. Alle relevanten Bauteilinformationen werden direkt aus der Datenbank des Warenwirtschaftssystems als Attribut mit den entsprechenden Attribut-Werten übernommen. Der Vorteil liegt darin, dass alle Bauteileigenschaften nur an einer Stelle gepflegt werden müssen, bei vom Warenwirtschaftssystem unabhängigen Bibliotheken werden die Informationen gezwungenermaßen zweimal geführt, einmal im Warenwirtschaftssystem und einmal in der Bibliothek. In unabhängigen Bibliotheken ohne Anbindung an ein Warenwirtschaftssystem ist für eine übersichtliche Suche nach dem richtigen Bauteil jedoch anstelle der Artikelnummer meist eher die präzise Herstellerbezeichnung mitsamt den Suffixes, die die Bauform beschreiben, geeignet. Werden in diesem Fall dem betreffenden Part auch nur die Footprints für diese Bauform zugeordnet (z. B. Reflow-Footprint und Wellenlöt-Footprint), ist für den Leiterplatten-Designer die Wahl des falschen Footprints ausgeschlossen, wenn das Lötverfahren festgelegt ist. Dem Part wird außer dem Footprint auch noch das Schaltplan-Symbol zugeordnet. Dies können gegebenenfalls auch mehrere Symbole sein, entweder ein DIN-Symbol und ein US-Symbol oder aber mehrere Gatter-Symbole. Moderne Systeme erlauben sogar unterschiedliche Repräsentationen des Symbols, so kann beispielsweise für einen Logikbaustein einerseits die Repräsentation durch ein Gesamtsymbol gewählt werden, anderseits auch die Repräsentation z. B. durch vier Gatter-Symbole plus ein Stromversorgungsgatter. Im Schaltplan kann der Designer dann entscheiden, welche Darstellung in seinem Fall besser geeignet ist.
Schaltplan-Symbole
Ein Schaltplan-Symbol enthält graphische Elemente, wie die Kontur, Unterteilungen, Funktionssymbole und ähnliche. Eins der wichtigsten Elemente des Schaltplan-Symbols sind die Pin-Informationen, die neben der graphischen Darstellung im Schaltplan eine elektrische Funktion, die Repräsentation des elektrischen Anschlusses, haben, damit Leitungen im Schaltplan daran angeschlossen werden können und eine elektrische Verbindungsliste entstehen kann. Ein Pin muss immer eine eindeutige Pin-Nummer oder Pin-Bezeichnung haben, die in einem Symbol nur ein Mal vergeben sein darf. Zusätzlich kann meist noch ein zusätzlicher Pin-Name, auch Logic Name (z. B. CLK) vergeben werden und gegebenenfalls eine Funktion zugeordnet sein, z. B. INPUT oder TRISTATE. Auf diese Pinfunktion greifen gegebenenfalls Regelsätze des Electrical Rule Checks bei der Schaltplaneingabe zurück, um fehlerhafte Anschlüsse zu vermeiden. Die Funktion wird bei manchen Systemen bereits im Symbol vergeben, bei anderen über den Datenbankeintrag des Parts zugeordnet. Eine wichtige Information im Schaltplan-Symbol ist der Platzhalter für die spätere Bauteilkennung (= Bauteilereferenz, Referenzbezeichner, z. B. R12), er muss zwingend vorhanden sein, zusätzliche Platzhalter für Attribute, wie Bauteilwert, Bauform u.s.w. können hinzugefügt werden. Das Raster, in dem später die Schaltpläne gezeichnet werden, sollte auch bei der Erzeugung der Schaltplan-Symbole zu Grunde liegen, damit keine unnötigen Ecken beim Anschließen der Verbindungen entstehen. Der Nullpunkt für das Schaltplan-Symbol sollte auf den „Pin 1“ gesetzt werden, dadurch ist es möglich, die Symbole optimal im Raster zu platzieren.
Footprints
Besonders sorgfältig muss bei der Erstellung korrekter Footprints gearbeitet werden, denn im Gegensatz zum Schaltplan-Symbol haben die Informationen im Footprint weitreichende Auswirkungen auf die nachfolgenden Prozesse wie Leiterplattenfertigung und Baugruppenproduktion. Zwar werden im Internet Footprints zum Download angeboten, doch leider sind die zur Verfügung gestellten Informationen meist von „unzureichend“ bis „unbrauchbar“ zu bewerten Auch ein Footprint besteht aus graphischen und elektrischen Informationen. Das wichtigste Merkmal eines Footprints ist sicherlich das Pad, jedes Pad eines Footprints verfügt ebenfalls über eine eindeutige Pad-Nummer beziehungsweise einen eindeutigen Pad-Namen, der innerhalb des Footprints nur einmal vergeben sein kann. Ein Pad beinhaltet die graphische Information „Form und Größe“ sowie die elektrische Information „Anschluss“. Unterschieden wird zwischen SMD-Pads und THT-Pads, letztere beinhalten noch die Bohrinformation, die eine mechanische Information beinhaltet (Bohrung = Loch mit dem Durchmesser x.x). Die elektrische Information einer Bohrung kann „kontaktiert“ (plated, d. h. Anschluss auf verschiedenen elektrischen Lagen beziehungsweise Leitungsführung über verschiedene Lagen des Designs möglich) oder „nicht-kontaktiert“ (non-plated, d. h. keine Leitungsführung über verschiedene Lagen des Designs hinweg möglich) sein. Mit dem Anschlussbild allein ist ein Footprint jedoch noch lange nicht ausreichend definiert. Zusätzlich werden die Informationen für die Lötstoplackfreihaltung und die Öffnung in der Lotpastenschablone benötigt. In der Praxis ist es üblich, die Öffnung in der Lotpastenschablone im Padstack 1:1 zum SMD-Pad zu definieren, für gewöhnlich wird die Padgröße entsprechend der einzusetzenden Schablone vom Baugruppenproduzenten angepasst. Dem gegenüber sollte die Freihaltung in der Lötstopmaske explizit im Padstack definiert werden, die parametrisierte Ausgabe bei der Erzeugung der Gerberdaten beinhaltet Risiken und Fehlerquellen. Der Bestückungsdruck sollte im Footprint immer mit angelegt werden, auch wenn der Trend, speziell bei sehr eng bestückten Baugruppen, dahin geht, Leiterplatten ohne Bestückungsdruck (Bauteil-Druck auf der Leiterplatte, auch Silkscreen genannt) zu fertigen. So ist es möglich, ohne zusätzlichen Aufwand den Footprint auch in einem Design einzusetzen, für das ein Bestückungsdruck gefordert wird. Idealerweise wird der Bestückungsdruck auf mehreren Layern angelegt, ein Layer beinhaltet nur die Bauteilkennung (Referenzbezeichner, z. B. R12), ein weiterer Layer nur die Polarisierungskennzeichnung und ein weiterer die Bauteilumrandung oder das Bauteilsymbol. Auf diese Art und Weise können durch Kombination der Layer entweder alle Informationen oder eben nur die Minimalinformation, wie die Polarisierung, für den Aufdruck ausgegeben werden. Unabhängig vom Bestückungsdruck muss in jedem Fall die Information für den Bestückungsplan (Servicedatensatz für den Baugruppenproduzenten, der die Art, Lage und Polarisierung der Bauteile ausweist) im Footprint angelegt werden. Ohne Bestückungsplan hat der Baugruppenproduzent keine Möglichkeit, die Bestückung zu prüfen oder beispielsweise eine Handbestückung vorzunehmen. Auch hier bietet sich die Anlage der Informationen auf mehreren Layern an. Auf einem Layer wird die Bauteilumrandung oder das Bauteilsymbol inklusive Polarisierung oder Pin1-Markierung angelegt, auf einem weiteren die Bauteilbezeichnung oder der Bauteilwert und auf einem dritten Layer die Bauteilkennung (Referenzbezeichner). Auf diese Weise kann durch Kombination der Layer der Bestückungsplan entsprechend den Vorgaben des Baugruppenproduzenten ausgegeben werden. Außer dem Bestückungsplan braucht die Baugruppenproduktion die Ausgabe der Koordinaten für den Bestückungsautomaten, die über die Anlage eines Referenzpunktes im Footprint (des so genannten Bauteilmittelpunkts) ermöglicht wird. In vielen Systemen ist dieser Referenzpunkt identisch mit dem Footprint-Nullpunkt oder auch Footprint-Origin. Daher darf der Footprint-Nullpunkt nur auf den Pin 1 des Footprints gesetzt werden (um eine Platzierung im Routing-Raster zu erleichtern), wenn für die Koordinatenausgabe ein gesonderter Referenzpunkt angesprochen werden kann. Ist dies nicht der Fall, muss der Footprint-Nullpunkt auf den Bauteilschwerpunkt, in der Regel der Bauteil-Mittelpunkt, gesetzt werden, um eine korrekte Koordinatenausgabe zu ermöglichen. Und zu guter Letzt müssen noch die Bauteilhöhe sowie der mechanische Platzbedarf für das Bauteil im Footprint definiert werden, um eine Überprüfung der mechanischen Bedingungen durch den Design-Rule-Check zu ermöglichen. Zu beachten ist dabei, dass der mechanische Platzbedarf nicht identisch ist mit der physikalischen Größe des Bauteils, in der Regel ist er größer und beinhaltet mindestens die Größentoleranz des Bauteils sowie Minimalvorgaben für Platzierungsabstände
Datenbankeintrag „Part“
Die Zusammenführung von Schaltplan-Symbol und Footprint ergibt das „Part“, also das eigentliche Bauteil in der Bibliothek. Abhängig vom EDA-System werden Simulations- und 3-D-Modelle sowie weitere Attribute ebenfalls hier hinzugefügt. Pin- und Pad-Mapping erlauben es, allgemeingültige Symbole oder Footprints zu erstellen, deren eigentliche Pin- oder Pad-Namen erst im Part zugewiesen werden. Erlaubt das EDA-System diese Art der Zuweisung, muss beispielsweise für einen SOT23-Baustein nur ein Footprint erzeugt werden, die Pad-Namen „E“, „B“, „C“ oder „1“, „2“, „3“ werden erst im Part den entsprechenden Schaltplan-Symbol-Pins und Footprint-Pads zugewiesen
Für jedes Projekt eine eigene Bibliothek?
Speziell Dienstleister werden sich immer wieder die Frage stellen: Sollen wir für jeden Kunden/jedes Projekt eine eigene Bibliothek erstellen oder arbeiten wir ausschließlich mit einer Standard-Bibliothek? Prinzipiell ist eine geprüfte Bibliothek die sicherste Arbeitsmethode. Der Nachteil ist, dass eine solche Bibliothek schnell sehr umfangreich und damit unübersichtlich wird, Zugriffszeiten können sich stark verlangsamen. Hier schafft eine Aufteilung Abhilfe, denn moderne Systeme können mehrere gleichzeitig geöffnete Bibliotheken verwalten. Ein Aufteilungsbeispiel wäre, Bibliotheken nach Hersteller getrennt anzulegen. Auch eine funktionsgebundene Aufteilung der Bibliothek ist denkbar, beispielsweise eine Bibliothek für Widerstände, eine für Kondensatoren, vielleicht noch getrennt nach gepolten und ungepolten Kondensatoren, möglicherweise ist sogar eine weitere Unterteilung in SMD- und THT-Bauteile sinnvoll. Letztendlich sind es die firmenspezifischen Anforderungen, die die Art der Bibliotheksorganisation bestimmen, diese Anforderungen muss der Designer in Absprache mit den beteiligten Stellen festlegen und danach die Aufteilung definieren. Für den Dienstleister bleibt jedoch immer noch das Problem, dass er Daten aus anderen Organisationen und Systemen übernehmen muss, die aller Wahrscheinlichkeit nach nicht die gleiche Struktur und schon gar nicht die gleiche Bezeichnung haben. Wenn in diesem Fall beispielsweise die Bauteilbezeichnungen und Schaltplan-Symbole aus dem Schaltplan exportiert werden, braucht nur noch der korrekte Footprint dem Bibliotheksteil hinzugefügt werden. Da liegt es nahe, für jedes Projekt der Einfachheit halber eine eigene Bibliothek anzulegen. Die nicht unerheblichen Risiken für eine solche Vorgehensweise liegen jedoch auf der Hand. Eines davon ist die falsche Zuordnung von Footprints, weil die Bauteilbezeichnung unvollständig war. Eine automatische Ansteuerung der Baugruppenproduktion mit geprüften und konstant gleichbleibenden Informationen ist so ebenfalls nicht möglich, es sei denn, fehlende Attribute werden jedes Mal nachtragen. Hier muss die Softwarelösung Mappings (Zuordnungsdateien) anbieten, um bereits beim Import der Daten eine Zuordnung der im Datensatz vorhandenen Bauteile zu den geprüften Bauteilen der eigenen Bibliothek(en) zu schaffen, denn auch für den Dienstleister ist die geprüfte Bibliotheksorganisation immer anzuraten.
Fazit
Wenn wir uns vor Augen führen, dass die Bibliothek die Grundlage des Designs ist, wird schnell klar, dass ein Fehler in der Bibliothek definitiv zu einem Problem, wenn nicht zum Ausschuss und damit zu erhöhten Kosten in der weiteren Prozesskette führt. Daher sollten Sie die CAD-Bibliothek als das Herz Ihres Designs betrachten und sie dementsprechend mit Herzblut aufbauen und pflegen.