Dieses Kapitel erläutert die Handhabung der Programm-Module
Layouteditor und
Autorouter für den Entwurf des Leiterkartenlayouts sowie der Programm-Module
CAM-Prozessor und
CAM-View zum Erstellen und Bearbeiten der Fertigungsdaten für die Leiterkartenproduktion. Hierbei wird der Leser anhand von Beispielen in einer logischen Abfolge durch die Erstellung von Bibliothekselementen sowie die Bearbeitung und das Layout von Leiterplattendesigns bis hin zu den prozeduren für das Erstellen und Bearbeiten der Fertigungsdaten für die Leiterkartenherstellung geführt. Das in diesem Kapitel auf der Basis der Designdaten aus den vorhergehenden Kapiteln erstellte Leiterkartenlayout wird in den nachfolgenden Kapiteln einer weiteren Bearbeitung unterzogen. Es wird daher empfohlen, dieses Kapitel Schritt für Schritt und ohne Auslassung irgendwelcher Abschnitte durchzuarbeiten, um einen vollstädigen Überblick über den Funktionsumfang des Layoutsystems zu gewinnen. Sobald ein spezielles Kommando angewandt bzw. dessen Benutzung erläutert wurde, ist davon auszugehen, dass der Leser dieses Kommando verstanden hat und es bei Bedarf ohne nähere Erläterungen wieder ausführen kann. Nachfolgende Instruktionen zu dem betreffenden Kommando sind dann weniger ausführlich, um das Lesen zu vereinfachen und den Lernprozess zu beschleunigen.
Inhalt
4.1 Allgemeine Hinweise
Das Leiterkartenlayoutsystem des
Bartels AutoEngineer besteht im Wesentlichen aus einem grafisch-interaktiven
Layouteditor mit integriertem Layoutsymboleditor und integrierten Funktionen zur automatischen Bauteilplatzierung und zur automatischen Generierung von Füllflächen, dem
Bartels AutoEngineer zur vollautomatischen Entflechtung, sowie dem
CAM-Prozessor und dem
CAM-View-Modul zur Erstellung und Bearbeitung der Fertigungsdaten für die Leiterkartenproduktion. Die nachfolgenden Abschnitte dieses Benutzerhandbuchs enthalten eine detaillierte Beschreibung dieser Programm-Module und deren Anwendung.
4.1.1 Komponenten und Leistungsmerkmale
Layouteditor (Grafikeditor)
Die Fließpunktarithmetik des grafischen
Layouteditors ermöglicht, Daten metrisch oder in Zollwerten frei zu definieren, dadurch jede erdenkliche Form für Lötaugen und Kupferflächen zu generieren und diese frei zu positionieren (z.B. Drehungen um einen bestimmten, auf acht Stellen hinter dem Komma vorgegebenen Winkel). Lötaugen, Bauteile und geometrische Gebilde werden also nicht nur annäherungsweise platziert, sondern sitzen exakt da, wo sie hingehören. Kreise sind auch auf dem Bildschirm echte Kreise und keine elliptischen Gebilde. Die Sichtbarkeit von Flächen lässt sich wahlweise vom Spiegelungsmodus abhängig machen, d.h. es können z.B. SMD-Anschlüsse definiert werden, die auf der Bauteilseite eine andere Form haben als auf der Lötseite.
Der Online-Check ermittelt rasterunabhängig auf acht Stellen hinter dem Komma die genauen Abstandswerte. Mit der gleichen Genauigkeit werden Abstandsverletzungen registriert und umgehend auf dem Bildschirm angezeigt. So können Fehlerquellen sofort erkannt und eliminiert werden, nachträgliche, komplizierte Korrekturen entfallen. Der Online-Check arbeitet inkremental und daher mit extrem hoher Geschwindigkeit (d.h. in Echtzeit!).
Die zwanzigstufige
-Funktion ermöglicht auch hier, Alternativen parallel durchzuspielen. Beliebige Teile der Leiterplatte können - zu Gruppen zusammengefasst - bewegt, gedreht, gespiegelt, kopiert und archiviert werden. Gleiches gilt für Leiterbahnstrukturen ohne Bauteile. Das spart, beispielsweise beim Erstellen spezieller Busstrukturen, eine Menge Zeit.
Das schnelle interaktive Platzieren von Bauteilen unter ständiger Aktualisierung der Verbindungen garantiert eine optimale Ausnutzung der Leiterplattenfläche. Während das Bauteil auf dem Bildschirm bewegt wird, aktualisieren sich die Verbindungen ohne Zeitverlust dynamisch zum nächst gelegenen Anschlusspunkt. Alle Bauteile lassen sich für die SMD-Anwendung spiegeln und um jeden beliebigen Winkel drehen. Es können beliebige Koordinaten für die Bauteilplatzierung spezifiziert werden und auch Polarkoordinaten für die Platzierung von Bauteilen auf einem Kreisbogen sind möglich. Ein komfortabler Automatismus ergibt sich aus der Möglichkeit, Defaultwerte für die Drehung (in 90-Grad-Schritten) und Spiegelung der Bauteile vorzugeben. Während des manuellen Platzierens kann eine alternative Gehäusebauform für das aktuell bearbeitete Bauteil gewählt werden.
Da das System netzorientiert und nicht pinorientiert ist, können Verbindungen nicht nur über Leiterbahnen, sondern auch über Kupferflächen hergestellt werden. Es muss also nicht extra ein Anschlusspin oder eine Durchkontaktierung angefahren werden (echte Connectivity).
Leiterbahnen und Kupferflächen können mit Fließpunktgenauigkeit in jedem beliebigen Raster erstellt werden. Das gewünschte oder interaktiv bearbeitete Potential wird sofort "gehighlighted", das heißt aufgehellt dargestellt, und ist an jedem beliebigen Punkt des gleichen Netzes anschließbar. Die Verwendung von partiellen Durchkontaktierungen (Blind und Buried Vias) ist beim Verlegen von Leiterbahnen ebenso möglich, wie die Definition von kreisbogenförmigen Leiterbahnsegmenten.
Das System bietet die Möglichkeit der Definition von Versorgungslagen. Auf diesen Versorgungslagen können Potentialflächen in beliebiger Form platziert werden. Damit lassen sich geteilte Potential- bzw. Versorgungslagen (Split Power Planes) erzeugen.
Ausgesprochen nützlich für analoge bzw. gemischt analog-digitale Designs sind die Funktionen zum automatischen Füllen von Kupferflächen. Dabei kann mit einstellbarem Isolationsabstand, definierbarer minimaler Strukturgröße, sowie der wahlweisen Elimination isolierter Potentialflächen gearbeitet werden. Wärmefallen werden nach Bedarf automatisch erzeugt, wobei auch die Anschlussbreite einstellbar ist. Elektrisch leitfähige Flächen lassen sich in linien- oder gitterschraffierte (Schirm-)Flächen mit definierbarer Schraffurbreite und vorgebbarem Schraffurabstand umwandeln.
Besonders hilfreich für HF- und Analog-Anwendungen ist die Möglichkeit, Kupferflächen stufenlos zu vergrößern bzw. zu verkleinern. Segmentlängen von Leiterbahnen und Kantenlängen von Kupferflächen können jederzeit automatisch abgefragt werden. Konstruktionselemente werden zu Dokumentationszwecken vom System bemaßt.
Durch die Einbindung der
Bartels User Language in den
Layouteditor hat der Anwender die Möglichkeit, eigene Menüfunktionen (Makros), Postprozessoren, Report-, Test- und Editierfunktionen, usw. zu implementieren, die er wahlweise explizit (über eine spezielle Menüfunktion) oder implizit (über Tastatur oder ereignisgesteuert) aktivieren kann.
Autoplacement
Das BAE-Layoutsystem ist mit mächtigen
Autoplacement-Verfahren ausgestattet. Vor der automatischen Platzierung können die zu platzierenden Bauteile nach dem Mengenprinzip selektiert werden. Die Auswahl der Bauteile erfolgt durch die Spezifikation der Bauteil- und Bibliotheksteilnamen, wobei auch Namensmuster (Wildcards) zulässig sind. Die selektive Auswahl von Bauteilen aus einem speziellen Blockschaltbild eines hierarchischen Schaltplanentwurfs ist ebenfalls möglich. Die Auswahl der Bauteilmenge bietet dem Anwender die Möglichkeit der Steuerung des Platzierungsablaufs (z.B. erst die Stecker, dann DIL-Gehäuse, dann Abblockkondensatoren, usw.).
Mit dem Matrixplacement-Verfahren kann eine selektierbare Menge von Bauteilen automatisch auf einem definierbaren Einbauplatzraster platziert werden. Dadurch reduziert sich der Aufwand für die Platzierung gleichartiger Bauteiltypen (Speicherbausteine, Abblockkondensatoren, Testpunkte, usw.) ganz erheblich. Selbstverständlich berücksichtigt die Matrix-Platzierungsfunktion auch die Defaulteinstellungen für die Drehung und Spiegelung der Bauteile.
Die integrierten Initialplacement-Funktionen ermöglichen die vollautomatische Durchführung der Bauteilplatzierung. Hierbei werden die unplatzierten Bauteile innerhalb der Platinenumrandung auf dem aktuell eingestellten Platzierungsraster platziert, wobei vorplatzierte Bauteile (Stecker, LEDs, etc.) ebenso berücksichtigt werden wie die Vorgaben aus der Netzliste. Abblockkondensatoren und SMD-Bauteile werden automatisch erkannt. Die Lötseite kann für die SMD-Platzierung wahlweise gesperrt oder freigegeben werden. Die Bauteile werden selbsttätig in 90-Grad-Schritten gedreht, wobei sich die Freiheitsgrade bei der Bauteilrotation für eine fehlersichere Bestückung wahlweise einschränken lassen. Optional kann ein Bauteilexpansionsparameter zur Generierung von Freiflächen zwischen den Bauteilen definiert werden. Die automatische Platzierung wird durch einstellbare Gewichtungsfaktoren zur Berücksichtigung von Netzlistenvorgaben und zur Bewertung der Bauteil-Segmentpassung gesteuert. Bereits während der Platzierung werden Rip-Up/Retry-Läufe eingeschoben, um die Ausnutzung der Platinenfläche zu optimieren.
Die Platzierungsoptimierung bietet Funktionen zum automatischen Bauteil- und Pin-/Gattertausch an. Der Bauteiltausch (Component Swap) führt eine iterative Vertauschung von Einbauplätzen bereits platzierter, identischer Gehäuse durch. Der Pin-/Gattertausch (Pin/Gate Swap) führt analog eine iterative Vertauschung von Gattern (auch bauteilübergreifend) bzw. Pins und Pingruppen durch. Die Zulässigkeit von Pin/Gate-Swaps wird anhand entsprechender Bibliotheksdefinitionen geprüft. Es lassen sich einzelne oder mehrere Optimierungsläufe aktivieren, wobei auch das Verfahren (nur Bauteiltausch, nur Pin-/Gattertausch, oder beide) entsprechend gewählt werden kann. Die Platzierungsoptimierung bewirkt in der Regel eine signifikante Vereinfachung der Verdrahtungsaufgabe und führt damit zu einer enormen Zeiteinsparung beim nachfolgenden Routvorgang.
Bartels Autorouter
Der
Bartels Autorouter® ist das Produkt jahrelanger intensiver Forschung und praxisorientierter Erfahrung auf dem Gebiet der automatischen Leiterkartenentflechtung. Die Liste der Leistungsmerkmale des
Bartels Autorouters ist beeindruckend. Der
Bartels Autorouter® eignet sich zur automatischen Entflechtung von Leiterkarten die auf allen heutzutage gängigen modernen Leiterkartentechnologien (Mehrlagenlayouts, Analogdesigns, SMD-/SMT-Baugruppen, BGA-Komponenten, usw.) basieren. Die anwenderorientierte Konzeption, seine Zuverlässigkeit und seine Flexibilität haben den
Bartels Autorouter® zum Industriestandard werden lassen. So wird der Router heute weltweit von großen CAD-Häusern unter den verschiedensten Namen und in unterschiedlichen Implementierungen angeboten. Im
Bartels AutoEngineer ist selbstverständlich die jeweils aktuellste Version des
Bartels Autorouter® mit allen Leistungsmerkmalen integriert. Durch den Einsatz des
Bartels Autorouter® lässt sich der Zeitaufwand für den Entwurf von Leiterkarten drastisch reduzieren. Für den kompletten Entwurf einer Europakarte einschließlich Stromlaufplan und Fertigungsunterlagen benötigt ein erfahrener BAE-Anwender üblicherweise nicht länger als einen Tag.
Der
Bartels Autorouter® besticht durch die Verknüpfung sehr hoher Entflechtungsintelligenz mit hervorragender Fertigungsqualität. Dieses Ziel wird durch einen speziellen Backtracking-/Ripup-/Reroute-Algorithmus erreicht, der die Leiterbahnen zunächst für eine vollständige Entflechtung optimal verlegt und dann das Layout noch einmal grundlegend in Richtung Fertigungsqualität optimiert. So werden bei der Entflechtung regelmäßig 100%-Ergebnisse erreicht. Der Algorithmus wird von einem Backtracking überwacht, das nicht nur eine Verschlechterung des Ergebnisses während Ripup oder Optimierung sowie ein Festfahren des Routers wirksam verhindert, sondern auch völlig neue Wegevarianten erschließt. Der selektive Ripup-/Retry-Algorithmus erlaubt es dem
Bartels Autorouter® insbesondere auch, gezielt ganze Leiterbahnbündel zu verschieben, um so Platz für noch nicht verlegte Verbindungen zu schaffen (Push'n'Shove Routing).
Der netzübergreifende Optimierer gewährleistet durch das komplette Neuverlegen der Leiterbahnen nach Kriterien der Fertigungsfreundlichkeit eine hohe Layoutqualität. Dabei wird im Allgemeinen die Anzahl der Durchkontaktierungen (Vias) erheblich reduziert. Selbstverständlich werden auch die Leiterbahnecken abgeschrägt und Treppen - soweit sinnvoll - durch 45 Grad Leiterbahnen ersetzt.
Der
Bartels Autorouter® kann bis zu 28 Lagen (16 Signallagen und 12 Versorgungslagen) simultan entflechten (Multilayer-Routing).
Die Funktionen des
Autorouters sind stark praxisorientiert. So kann z.B. gegen vorverlegte Kupferkämme gegengeroutet werden, um eine gute Stromversorgungsstruktur zu erreichen. Bei der Verwendung von Stromversorgungslagen werden selbstverständlich auch SMD-Pads richtig mit Durchkontaktierungen an diese angeschlossen. Generell wird beim Anschluss von SMD-Pads die vorgesehene Anschlussbreite nicht überschritten, um dem Aufstellen der Bauteile beim Löten vorzubeugen. Die Anschlussbreite ist pin- und nicht netzbezogen, T-Stücke werden automatisch konstruiert (Copper-Sharing).
Der Routingprozess kann am Bildschirm verfolgt werden. Die grafische Anzeige des Leiterkartenlayouts wird hierzu in Echtzeit aktualisiert, und es erfolgen statistische Anzeigen über den Routvorgang. Der Routingvorgang kann nach Bedarf abgebrochen, fortgeführt oder neu gestartet werden.
Bereits entflochtene Layouts können automatisch vom Router an veränderte Platzierungen oder Netzlisten angepasst werden (Änderungsrouten, Re-Entrant-Routing). Dabei entfernt der Router selbsttätig nunmehr falsche Leiterbahnen und ergänzt fehlende. Das modifizierte Layout kann dann nochmals optimiert werden.
Die heute in der Leiterplattentechnik eingesetzten Technologien werden vom Router voll unterstützt. Er erkennt alle frei definierbaren Strukturen (Lötaugen, Leiterbahnen, Kupferflächen) und schließt sie auf dem bestmöglichen Wege an. Auch nicht im Routingraster liegende Anschlüsse stellen durch die integrierte Offgrid-Erkennung kein Problem dar. Neben den Standard-Routingrastern mit wahlweiser Einstellung des Halbraster-Routingverfahrens (1/20 Zoll bis hin zu 1/100 bzw. 1/200 Zoll) stehen Optionen zur Vorgabe beliebiger Routingrasters für spezielle Pin-Grids und Optionen zum rasterfreien Routen zur Auswahl. Anschlüsse in geteilte Potentiallagen werden richtig erkannt und korrekt realisiert (Split Power Plane Routing). SMD-Technologien und BGAs (Ball Grid Arrays) werden durch spezielle Routing-Algorithmen zum Vorverlegen von SMD-Vias und zur Ankontaktierung von BGA-Anschlüssen unterstützt. Die Beherrschung partieller Durchkontaktierungen (Blind und Buried Vias) und Microvias (Via-in-Pad-Technologie) erhöht die Entflechtbarkeit von Multilayer-Platinen und unterstützt darüber hinaus neue Technologien der Leiterplattenfertigung wie z.B. Verfahren zur Realisierung plasmageätzter Durchkontaktierungen. Bereichsrouting ist mit Hilfe entsprechender Vorgaben für gesperrte Routingbereiche bzw. -Lagen möglich. Auch die Definition von Via-Sperrflächen ist möglich.
Im
Autorouter stehen die aus dem
Layouteditor bekannten Initialplacement-Funktionen sowie die Routinen zur Durchführung von Platzierungsoptimierungen zur Verfügung. Damit kann im
Autorouter eine vollautomatische Vorplatzierung der Bauteile sowie eine Platzierungsoptimierung durch automatischen Bauteiltausch und Pin/Gate-Swap vorgenommen werden.
Darüber hinaus bietet der
Autorouter eine Reihe spezieller Autorouting-Funktionen (Platzierungsoptimierung durch automatischen Pin/Gate-Swap im Rip-Up-Routing, rasterfreies Routen, Einzelnetz- und Bereichsrouting, Routen in gemischten Rastern, usw.) an. Die Funktion Platzieren/routen aktiviert sowohl den
(mit komplettem Initialplacement und Platzierungsoptimierung) als auch anschließend den
(mit Initialrouting, Rip-Up/Retry-Routing und Optimierer), d.h. mit dieser Funktion lässt sich quasi auf Knopfdruck die gesamte Platzierung und Entflechtung vollautomatisch durchführen. Der Single-Net-Autorouter dient der automatischen Entflechtung einzelner, selektierbarer Signalnetze bzw. Verbindungen. Damit können z.B. Stromversorgungsnetze oder kritische Leiterbahnen unter Berücksichtigung spezifischer Vorgaben für Leiterbahnbreiten, Mindestabstände, Lagenzuordnungen, usw. selektiv vorverlegt werden. Der Vollständigkeit halber unterstützt der Single-Net-Router auch eine Option zum Löschen einzelner bereits gerouteter Netze bzw. Verbindungen. Das im
Autorouter integrierte Verfahren zum Routen von Netzgruppen kann dazu verwendet werden, unterschiedliche, selektierbare Signalnetzgruppen (z.B. Busse eines speziellen Schaltungsblocks) selektiv mit spezifischen Routeroptionen (Vorzugsrichtungen, Leiterbreiten, etc.) zu verdrahten. Mit der Funktion zum Routen von Bauteilen (Component Routing) können Bauteile selektiv geroutet werden. Die Funktion zum Bereichs- oder Blockrouting dient der Entflechtung festlegbarer Bereiche bzw. selektierbarer Schaltungsblöcke auf der Leiterkarte. Damit können unterschiedliche Routingbereiche bzw. Schaltungsblöcke (I/O- oder Memorybereich, Digital- bzw. Analogbereich, etc.) mit unterschiedlichen, an die Schaltungstopologie angepassten Routeroptionen (Routingraster, Mindestabstände, Vorzugsrichtung, Vorgaben für Busrouting, etc.) entflochten werden. Während des Rip-Up-Autorouting-Prozesses bedient sich der
Autorouter integrierter Funktionen zur Platzierungsoptimierung durch selektive Bauteil- und Pin/Gate-Swaps, um dadurch die Entflechtbarkeit der getauschten Bauteile, Gatter oder Pins zu erhöhen bzw. überhaupt zu ermöglichen.
Mit der im
Autorouter integrierten
-Funktion können bis zu zwanzig Kommandos rückgängig und anschließend mit dem
-Kommando wieder ausgeführt werden. Dies gilt insbesondere auch für komplexeste Arbeitschritte wie z.B. komplette
Autorouter-Läufe. Damit gewährleistet die
-Funktion einerseits Datensicherheit und ermöglicht andererseits eine komfortable Überprüfung von Realisierungsalternativen.
Durch die Einbindung der
Bartels User Language in den
Autorouter hat der Anwender die Möglichkeit, eigene Menüfunktionen (Makros), Report- und Testfunktionen, automatische Platzierungs- und Routingprozeduren, usw. zu implementieren, die er wahlweise explizit (über eine spezielle Menüfunktion) oder implizit (über Tastatur oder ereignisgeseteuert) aktivieren kann.
Die in
BAE HighEnd integrierte Version des
Autorouters bietet darüber hinaus mächtige Zusatzfunktionen basierend auf einer patentierten Technologie neuronaler Netzwerke
(Neuronaler Autorouter). Der
Autorouter der
BAE HighEnd-Software bedient sich künstlicher Intelligenz zur automatischen Lösung spezieller Entflechtungsprobleme wie sie z.B. typischerweise beim Analogrouting oder bei der Erzeugung von Leiterbahnen mit speziellen elektrischen Eigenschaften bzw. bei der Generierung von Mikrowellenstrukturen auftreten. Hierzu arbeitet der
Autorouter mit Funktionen zur Erlernung und automatischen Anwendung von Regeln zur Lösung spezieller Entflechtungsprobleme und wird dabei zusätzlich noch unterstützt durch einen rasterlos arbeitenden, objektorientierten Routingalgorithmus mit integrierter Platzierungsoptimierung.
CAM-Prozessor
Da der Bartels AutoEngineer alle nur erdenklichen freien Geometrie-Definitionen zulässt, müssen auch die Postprozessoren diesen hohen Ansprüchen genügen. Natürlich hat der Pen- oder Fotoplotter nicht für jede Geometrie den passenden Stift oder die richtige Blende zur Verfügung. Deshalb werden die gewünschten Geometrien zunächst genau berechnet. Der intelligente Postprozessor wählt dann die bestmögliche Blende aus, um die vorgegebene Fläche exakt zu füllen. Nicht der Blendenteller definiert dabei die Lötaugen, sondern die geforderte Technologie. Die so generierten Unterlagen und Steuerdaten entsprechen genau den gewünschten Ergebnissen, sind mit den über den Bildschirm vorgegebenen Daten identisch. Damit hat der Anwender die freie Auswahl unter den Fotoplot-Dienstleistern und Leiterplatten-Herstellern, weil er alle benötigten Daten problemlos selbst erstellen kann.
Durch die Einbindung der
Bartels User Language in den
CAM-Prozessor hat der Anwender die Möglichkeit, eigene Menüfunktionen (Makros), Postprozessoren, CAM-Batchbetrieb, Report- und Testfunktionen, usw. zu implementieren, die er wahlweise explizit (über eine spezielle Menüfunktion) oder implizit (über Tastatur oder ereignisgesteuert) aktivieren kann.
CAM-View
Das Modul
CAM-View ermöglicht die visuelle Darstellung von Gerberdaten, Bohrdaten (Sieb&Meier bzw. Excellon) und Fräsdaten (Excellon) zur Kontrolle der Ausgabe und zur Überprüfung der verwendeten Werkzeuge. Darüber hinaus besteht mit
CAM-View die Möglichkeit der Nutzengenerierung, und schließlich können mit Hilfe dieses Moduls Gerberdaten aus Fremdsystemen in den
AutoEngineer übernommen werden.
Durch die Einbindung der
Bartels User Language in das
CAM-View-Modul hat der Anwender die Möglichkeit, eigene Menüfunktionen (Makros), Batchprozeduren, Report- und Testfunktionen, usw. zu implementieren, die er wahlweise explizit (über eine spezielle Menüfunktion) oder implizit (über Tastatur oder ereignisgesteuert) aktivieren kann.
4.1.2 Programmaufruf
Der Aufruf des
Bartels AutoEngineer sollte grundsätzlich aus dem Verzeichnis erfolgen, in welchem die zu bearbeitenden Projektdateien abgelegt bzw. abzulegen sind. Wechseln Sie also zunächst in Ihr Projektverzeichnis (zur Abarbeitung der in diesem Handbuch aufgeführten Beispiele ist es zweckmäßig, in das bei der Installation des
Bartels AutoEngineer angelegte BAE-Jobs-Directory zu wechseln). Der Aufruf des Layoutmoduls erfolgt aus der Shell des
Bartels AutoEngineer. Starten Sie diese von Betriebssystemebene aus mit folgendem Befehl:
> bae
Der
AutoEngineer zeigt auf dem Schirm das Bartels-Logo sowie folgendes Menü (die Funktion
ist nur unter Windows bzw. Motif verfügbar; die Menüpunkte
und
sind nur in speziellen Softwarekonfigurationen wie etwa in
BAE HighEnd oder
BAE IC Design) verfügbar):
Wählen Sie den Menüpunkt Layout mit der Maus an, und bestätigen Sie Ihre Wahl durch Drücken der linken Maustaste:
Layout | |
Nun wird der
Layouteditor des AutoEngineer geladen. Sollte der Programmaufruf fehlschlagen, dann deutet dies darauf hin, dass die Software nicht richtig installiert ist. Wir verweisen in diesem Zusammenhang auf die
Bartels AutoEngineer® Installationsanleitung.
Der Layouteditor kann auch direkt aus dem
Packager aufgerufen werden. In diesem Fall wird automatisch die Erzeugung eines Layoutelements für die zuletzt vom
Packager erzeugte Netzliste vorgeschlagen, wenn noch kein entsprechendes Layoutelement existiert.
4.1.3 Hauptmenü
Nach dem Aufruf des
Layouteditors befindet sich auf der rechten Bildschirmseite eine Menüleiste, bestehend aus dem Hauptmenü im oberen Bereich sowie dem im Hauptmenü selektierten Menü im unteren Bereich. Nach dem Laden des
Layouteditors ist das Menü
aktiviert, und der grüne Menübalken steht auf Laden.
Unter Windows und Motif kann anstelle der Standard- bzw. Seitenmenükonfiguration wahlweise auch ein Benutzerinterface mit Pulldownmenüs aktiviert werden. Hierzu ist mit Hilfe des Utilityprogramms
bsetup das Kommando
WINMENUMODE mit der Option
PULLDOWN in das Setup der BAE-Software einzuspielen (siehe hierzu auch
Kapitel 7.2). Bei der Verwendung von Pulldownmenüs ist das Hauptmenü als horizontal ausgerichtete Menüleiste am oberen Ende der Benutzerschnittstelle angeordnet.
Das Hauptmenü ist während der Dauer der Layoutbearbeitung mit dem
Layouteditor ständig verfügbar und ermöglicht die Aktivierung der folgenden Menüs:
Undo, Redo
Im Menü
finden Sie die
-Funktion, mit der die letzten zwanzig Arbeitsschritte rückgängig gemacht werden können. Mit der
-Funktion kann der
-Befehl wieder aufgehoben werden. Sie sollten diese wichtigen Funktionen unbedingt an einigen Stellen in den nachfolgenden Beispielen ausprobieren, um ein Gefühl für die Mächtigkeit dieser Kommandos zu bekommen.
Ansicht, Bilddarstellung
Im Menü
bzw.
, das Sie außer durch Selektion im Hauptmenü auch immer über die mittlere Maustaste erreichen können, können Sie Zoomfunktionen aktivieren, das Eingabe- bzw. Hintergrundraster definieren, oder die Farbtabelle einstellen. Darüberhinaus finden Sie hier nützliche Hilfsfunktionen z.B. zur Bauteilsuche oder zur Elementabfrage.
Dateiverwaltung
Über das Menü
können Elemente neu generiert, geladen, gespeichert, kopiert, ersetzt oder gelöscht werden. Außerdem können von hier aus Farbtabellen geladen oder gespeichert werden, und es sind in diesem Menü auch wichtige Datenbank-Verwaltungsfunktionen (Auflisten Dateiinhalt, Update Bibliothek) enthalten.
Bauteile
Das Menü
enthält die Funktionen
zur Definition von Platzierungs-Bauteilmengen, zur manuellen Bauteilplatzierung, zur Umbenennung von platzierten Bauteilen, zur automatischen Bauteilplatzierung (Matrixplacement, Initialplacement) sowie zur manuellen und automatischen Platzierungsoptimierung (Component Swap bzw. Pin/Gate Swap). Darüberhinaus kann in diesem Menü die Auswahl der Durchkontaktierung(en) für das Routing vorgenommen werden.
Auf Bauteilebene werden die Funktionen aus dem Menü
zur Definition bzw. Platzierung von Bauteilpins (Padstacks) verwendet. Auf Padstackebene werden die Funktionen aus dem Menü
zur Definition bzw. Platzierung von Pinanschlussflächen (Pads) verwendet.
Leiterbahnen
Im Menü
sind die Funktionen zum interaktiven Verlegen von Leiterbahnen enthalten.
Flaechen
Das Menü
enthält die Funktionen zur Definition der Platinenumrandung, zur Erzeugung von Kupfer-, Potential- und Sperrflächen sowie zur Generierung von Dokumentarlinien oder Dokumentarflächen. Zur Bearbeitung bestehender Flächen stehen Funktionen zum Bewegen, Drehen, Spiegel, Kopieren und Löschen zur Verfügung.
Darüberhinaus enthält das Menü
auch die Funktionen für die Flächenautomatik, d.h. zur Definition von Füllbereichen, zur automatischen Generierung und zum Löschen von Füll- und Schirmflächen sowie zur Erzeugung von Schraffurflächen.
Texte, Bohrungen
Das Menü
dient dazu, Texte einzugeben, zu bewegen, zu verändern, oder wieder zu löschen. Daneben sind in diesem Menü die Funktionen zum Setzen und Löschen von Bohrungen enthalten.
Gruppen
Im Menü
werden Funktionen angeboten, mit deren Hilfe Teile des gesamten Layouts in Gruppen zusammengefasst und dann gespeichert, geladen, bewegt, gedreht, gespiegelt, skaliert, kopiert, gelöscht, fixiert oder freigegeben werden können.
Parameter
Das Menü
enthält Funktionen zur Selektion der Bibliothek, zum Setzen des Nullpunktes bzw. der Elementgrenzen, zur Definition der Versorgungslagen, zur Selektion der
-Funktion, zur Einstellung der Designregeln für die Abstandshaltung, sowie zur Aktivierung der automatischen Datensicherung.
Diverse
Im Menü
kann der Programmabbruch oder der Rücksprung in die Shell des
Bartels AutoEngineer veranlasst werden. Über dieses Menü des
Layouteditors ist auch der Aufruf der Layoutmodule
Autorouter und
CAM-Prozessor möglich. Daneben werden hier weitere nützliche Funktion wie Batch Design Rule Check, Rueck-Netzliste und Flächen-Spiegelsicht angeboten. Auch der explizite Aufruf von
User Language-Programmen ist von diesem Menü aus möglich.
4.1.4 Modifizierte Benutzeroberfläche
Menübelegung und Tastaturprogrammierung
Einige der mit der BAE-Software installierten
User Language-Programme definieren implizite
User Language-Programmaufrufe über die eine weit reichend modifizierte Benutzeroberfläche mit einer Vielzahl von Zusatzfunktionen (Startups, Toolbars, Menübelegung, Tastaturprogrammierung) aktiviert wird. Das
User Language-Startupprogramm
bae_st wird automatisch beim Aufruf des
Layouteditors gestartet.
bae_st ruft seinerseits das
User Language-Programm
uifsetup auf, welches eine vordefinierte Menü- und Tastaturbelegung im
Layouteditor aktiviert. Änderungen bzw. Anpassungen der Menü- und Tastaturbelegung können zentral in der Quellcodedatei von
uifsetup vorgenommen werden. Die aktuelle Tastaturbelegung kann mit dem
User Language-Programm
hlpkeys angezeigt werden. Der Aufruf von
hlpkeys ist über die Funktion
aus dem Menü
möglich, sofern die vordefinierte Menübelegung aus
uifsetup aktiviert ist. Mit dem
User Language-Programm
uifdump kann die in der aktuellen Interpreterumgebung definierte Menü- und Tastaturbelegung in Form eines Reports angezeigt bzw. auf eine Datei ausgegeben werden. Mit dem
User Language-Programm
uifreset lässt sich die komplette Menü- und Tastaturbelegung zurücksetzen.
uifsetup,
uifdump und
uifreset sind auch über das Menü des
User Language-Programms
keyprog aufrufbar, welches zudem komfortable Funktionen zur Online-Tastaturprogrammierung sowie zur Verwaltung von Hilfstexten für
User Language-Programme zur Verfügung stellt.
Kontextmenüs im Grafikarbeitsbereich
Bei Betätigung der linken Maustaste im Grafikarbeitsbereich wird ein kontextsensitives Menü mit spezifischen Funktionen zur Bearbeitung des an der aktuellen Mausposition platzierten Objekts aktiviert, wenn nicht bereits eine andere Menüfunktion aktiv ist. Ist kein Element geladen, dann werden die Dateiverwaltungsfunktionen
bzw.
angeboten. Dieses Feature ist über einen automatisierten Aufruf des
User Language-Programms
ged_ms implementiert.
Kaskadierende Pulldownmenüs unter Windows/Motif
Die Windows- und Motifversionen des Grafikditors ermöglichen die Konfiguration kaskadierender Pulldownmenüs. Menüpunkte können ihrerseits implizit auf Untermenüs verweisen. Die Notwendigkeit des Aufrufs von Funktionen zur expliziten Anzeige von Untermenüs entfällt damit. Die Pulldownmenüs der Windows- und Motifversionen des
Layouteditors werden über das
User Language-Programm
uifsetup entsprechend mit kaskadierenden Menüs ausgestattet. Untermenüfunktionen lassen sich damit einfach lokalisieren und starten. Die über die rechte Maustaste implementierte Wiederholfunktion ist entsprechend angepasst. Die Wiederholung von in Untermenus untergebrachten Funktionen vereinfacht sich dadurch erheblich.
Dialoge für Parametereinstellungen unter Windows/Motif
In den Windows- und Motifversionen des
Layouteditors sind die folgenden Dialoge für Parametereinstellungen implementiert:
- - : Allgemeine Layouteditor-Parameter
- - : Bilddarstellungsparameter
- - - : Parameter für automatische Platzierung
- - - : Flächenfüllparameter
In den Pulldownmenükonfigurationen werden die Standardfunktionen für Parametereinstellungen über das
User Language-Programm
uifsetup durch die obigen Menüfunktionen zum Aufruf der entsprechenden Dialoge ersetzt.
Pulldownmenükonfiguration unter Windows/Motif
Bei der Verwendung von Pulldownmenüs unter Windows und Motif wird über das
User Language-Programm
uifsetup eine an Windows angepasste Menüanordnung mit zum Teil geänderten Funktionsbezeichnungen und einer Vielzahl von Zusatzfunktionen konfiguriert. Das Hauptmenü des
Layouteditors wird dabei wie folgt aufgebaut:
Das Menü
enthält die beiden Funktionen
und
. für den Zugriff auf das im Windows-Help-Format verfügbare Referenzhandbuch zum
Layouteditor.
lädt dabei direkt die Referenzhandbuchseite eines selektierbaren Menüpunkts oder Benutzeroberflächenelements.
4.1.5 Grundsätzliches zur Bedienung
Automatische Parametersicherung
Im den Programm-Modulen des BAE-Layoutsystems sind Funktionen zur automatischen Sicherung wichtiger Design- und Bearbeitungsparameter implementiert.
Im
Layouteditor werden bei Aktivierung der Funktion zur Sicherung des aktuell geladenen Elements folgende Parameter automatisch in der aktuell bearbeiteten Designdatei gespeichert:
- Zeitintervall für automatische Datensicherung
- Name der aktuell geladenen Layoutfarbtabelle
- Eingaberaster
- Hintergrundraster
- Raster- und Winkelfreigabe
- Koordinatenanzeigemodus
- Breitendarstellungswert
- Darstellungsmodus für Gruppenplatzierung
- Standardwinkel für Bauteilplatzierung
- Spiegelungsmodus für Bauteilplatzierung
- Airlineanzeigemodus für Bauteilplatzierung
- Standardtextgröße
- Standardleiterbahnbreiten
- Leiterbahnsegmentverschiebemodus
- Bibliothekszugriffspfad
- Mincon-Funktion
- Platzierungsmatrix
- Placement Matrix Enabled Flag
- Flächenautomatik Isolationsabstand
- Flächenautomatik Minimale Strukturgröße
- Flächenautomatik Leiterbahnaussparungsmodus
- Flächenautomatik Inselerkennungsmodus
- Flächenautomatik Wärmefallenerzeugung
- Flächenautomatik Wärmefallenstegbreite
- Schraffurlinienabstand
- Schraffurlinienbreite
- Schraffurmodus
Die Elementnamen der zu sichernden Parametersätze werden vom aktuell bearbeiteten Layoutelement abgeleitet. Layoutspezifische Parametersätze erhalten den Elementnamen des aktuell bearbeiteten Layouts, bauteilspezifische Parametersätze den Namen
[part] , padstackspezifische Parametersätze den Namen
[padstack] , padspezifische Parametersätze den Namen
[pad] . Beim Laden eines Elements wird automatisch der entsprechende Parametersatz mitgeladen. Dadurch wird in komfortabler Weise eine spezifische Arbeitsumgebung zur Bearbeitung der selektierten Bibliothekshierarchie bzw. des selektierten Designobjekts aktiviert.
Lagenzuordnung
Gleichermaßen wichtig bei der Erstellung bzw. Anpassung von Bibliothekselementen wie beim eigentlichen Leiterkartendesign ist die Wahl der Lagenzuordnung. Das System stellt Ihnen folgende Lagen bzw. Anzeigeelemente zur Verfügung:
- Signallagen 1 - 100
- Signallage "Oberste Lage"
- Signallage "Alle Lagen"
- Signallage "Innenlagen"
- Versorgungslagen 1 - 12
- Dokumentarlagen 1 - 100
- Umrandung
- Unroutes
- Bohrungen
- Arbeitsbereich
- Nullpunkt
- Fehler
- Highlight
- Bohrung "-", "A" - "Z"
- Fixiert
- Verankerte
Die Signallagen unterliegen dem Design Rule Check. Auf ihnen wird das eigentliche Layout (Kupfer und Sperrflächen) dargestellt. Spezialfälle stellen hierbei die Signallagen
,
und
dar.
Die Signallage
wird erst im Layout dynamisch einer bestimmten Signallage zugewiesen (die Standardeinstellung hierfür ist die Signallage 2). Diese Lage ist sehr nützlich, wenn die Lagenzahl oder Zuordnung beim Erstellen einer Bibliothek noch nicht festliegt. Die Zuweisung wird im Menü
über die Funktion
durchgeführt und mit dem Layout gespeichert. Diese Funktion definiert auch die Position des Spiegels beim Spiegeln z.B. eines Bauteils. Es wird stets gegen die so festgelegte Lage gespiegelt, alle Lagen oberhalb der Obersten Lage bleiben unberührt.
Der Menütext zur Auswahl der obersten Lage kann über das BAE-Setup geändert werden kann (z.B. in
oder
). Beachten Sie in diesem Zusammenhang die Möglichkeiten der Anpassung der Signallagenmenüs im Layout mit Hilfe des Utilityprogramms
bsetup.
Die Lage
wird als auf allen Signallagen (d.h. auf Signallage 1 bis einschließlich
) vorhanden betrachtet und dementsprechend geprüft und geplottet. Diese Lage ist z.B. für gebohrte Pins nützlich, wenn die Lagenzahl der Platine bei der Bibliothekserstellung noch nicht feststeht.
Die Lage
wird als auf allen Signal-Innenlagen (d.h. auf allen Signallagen zwischen Signallage 1 und
) vorhanden betrachtet und dementsprechend geprüft und geplottet. Diese Lage vereinfacht für das Multilayer-Layout die Definition von Pins, die in den Signal-Innenlagen andere Anschlussformen besitzen als in den Signal-Außenlagen.
Die Versorgungslagen enthalten die sogenannten "Power Planes" und werden stets negativ dargestellt bzw. geplottet. Aussparungen und Wärmefallen werden durch den
CAM-Prozessor automatisch erzeugt, die Festlegung der Signalnamen erfolgt im Menuü
über die Funktion
.
Die Dokumentarlagen dienen der Speicherung von Dokumentarinformation. Hier können Lötstopmasken, Klebemasken, Bestückungspläne, Bohrpläne, Passermarken, usw. definiert werden. Um das Erstellen von doppelseitigen SMD-Karten zu ermöglichen, ist jede Dokumentarlage in die folgenden Seiten unterteilt:
Es handelt sich hierbei prinzipiell um Unterlagen der jeweiligen Dokumentarlage. Beim Spiegeln werden stets
und
vertauscht, während beim Plotten wahlweise
zu
bzw.
hinzugefügt werden kann. Die Namen und Eigenschaften der Dokumentarlagen lassen sich individuell mit dem Programm
bsetup festlegen. Bei Änderungen mit
bsetup sollte jedoch beachtet werden, dass die Änderungen nur für neu definierte Grafikelemente wirksam werden. Dies ist notwendig, um einen Datenaustausch zwischen verschiedenen Installationen zu ermöglichen. Bitte befassen Sie sich daher vor der Erstellung von Bibliotheken genauestens mit der Lagenzuordnung und legen Sie die Ihren Anforderungen am besten entsprechende Zuordnung mit
bsetup vorher fest. Die Beschreibung des Utilityprogramms
bsetup sowie die mit der BAE-Software voreingestellten Dokumentarlagen-Definitionen finden Sie im
Kapitel 7.2 dieses Handbuchs.
Die Lage
ist eine Speziallage, die lediglich der Definition der Platinenumrandung dient. Die Lage
ist eine Darstellungsebene für die Anzeige der noch nicht gerouteten Verbindungen (Unroutes, Airlines) auf dem aktuell geladenen Layout. Die Lage
ist eine Darstellungsebene für die Anzeige der Bohrdefinitionen. Die Lagen
,
,
und
sind spezielle Ebenen zur Darstellung von Anzeigeelementen in der grafisch-interaktiven Benutzeroberfläche des BAE-Layoutsystems.
Die -Lagen dienen der Zuweisung von Farben an Bohrklassen. Die Speziallagen und dienen der Auswahl von Mustern zur Anzeige fixierter bzw. verankerter Layoutelemente.
Vorzugslage und Elementauswahl
Häufig tritt der Fall ein, dass Elemente auf verschiedenen Lagen übereinander platziert sind (z.B. übereinander liegende Bauteile bei doppelseitig bestückten SMD-Platinen). Beim Pick eines Elements wird, sofern keine eindeutige Auswahl möglich ist, das auf der im Menü
mit der Funktion
selektierten Lage befindliche Element gewählt. Auch die erste beim Verlegen neuer Leiterbahnen angewählte Lage ist die Vorzugslage.
Die unter
aus dem Menü
erreichbare Dialogbox enthält den Parameter
zur Steuerung des Verhaltens bei Elementpicks an Positionen mit mehreren platzierten Elementen. Die Voreinstellung
bewirkt wie beschrieben den Pick eines Elementes anhand der Vorzugslage. Die Option
bietet bei mehreren Elementen an der Pickposition eine Elementauswahl an. In einer Schleife werden die Elemente nacheinander hervorgehoben dargestellt und eine Kurzbeschreibung in der Eingabezeile angezeigt. Durch Betätigung der Return-Taste oder der linken Maustaste kann das aktuell angezeigte Element selektiert werden. Mit der Escape-Taste oder der rechten Maustaste wird der Selektionsvorgang abgebrochen. Die Betätigung einer beliebigen anderen Taste bewirkt ein Weiterschalten zum nächsten Element an der Pickposition.
Netzliste
Die Netzliste stellt üblicherweise die verbindliche Vorgabe für den Layoutentwurf dar. Im
Bartels AutoEngineer wird die Netzliste mit Hilfe des
Schematic Editors generiert und durch den
Packager in das Layout übertragen; daneben besteht die Möglichkeit, ASCII-Netzlisten mit Programmen wie
conconv oder
redasc einzuspielen (siehe auch
Kapitel 3 bzw.
Kapitel 7).
Ein Layout wird grundsätzlich beim Laden dynamisch aufgebaut. Neben den auf dem Layout befindlichen Elementen aus den darunterliegenden Datenbank-Hierarchiestufen (Bauteile, Padstacks, Pads) wird auch die Netzliste mitgeladen und mit den Geometriedaten auf der Leiterkarte korreliert ("Connectivity Generierung"). Dies setzt allerdings voraus, dass der Layout Elementname und der Name der Netzliste identisch sind.
Nach erfolgreicher Connectivity-Generierung ist das System in der Lage, den Layoutentwurf ständig mit den Vorgaben in der Netzliste zu korrelieren. Dies stellt sicher, dass elektrische Verbindungen grundsätzlich erkannt werden, gleichgültig, ob sie über Leiterbahnen, Kupferflächen oder Durchkontaktierungen verlaufen. Verbindungen über Kreuzungen und T-Stücke sowie Aneinanderreihungen (z.B. bei Gruppenkopien) werden ebenfalls erkannt. Diese Funktionalität bezeichnet man als Copper Sharing oder Echte Connectivity.
Die Connectivity im
Layouteditor der
BAE HighEnd-Version baut auf modifizierten Datenstrukturen für die Kupferelemente auf. Diese enthalten mehr Information über die Struktur der elektrischen Verbindungen. Dies erfordert zwar einen erhöhten Speicherbedarf im Vergleich zu
BAE Professional, bewirkt aber drastisch verringerte Rechenzeiten beim manuellen Bearbeiten großer Netze oder beim Verschieben von Bauteilen, da jeweils nur die direkt von der Änderung betroffenen Nachbargebiete in Echtzeit neu berechnet werden müssen.
Mincon-Funktion
Nicht realisierte Verbindungen werden als Luftlinien ("Airlines") dargestellt. Beim Platzieren von Bauteilen werden diese Airlines ohne Zeitverlust dynamisch zum jeweils nächst gelegenen Anschlusspunkt aktualisiert. Diese Funktion ist ein unverzichtbares Hilfsmittel, um zu einer optimalen Platzierung zu gelangen. Die Art der Luftliniendarstellung, d.h. die Methode zur Ermittlung des nächst gelegenen Anschlusspunktes wird mit der
im Menü
ausgewählt.
In
BAE HighEnd ist die
-Berechnung auf Kosten eines im Vergleich zu
BAE Professional erhöhten Speicherplatzbedarfs extrem beschleunigt.
Design Rule Check
Das System verfügt über einen Online-Design Rule Check. Dabei wird das Layout sowohl auf offene Verbindungen als auch auf Kurzschlüsse oder Abstandsverletzungen geprüft. Offene Verbindungen werden als Luftlinien angezeigt, Kurzschlüsse hell dargestellt (Highlight) und Abstandsverletzungen mit einem Rechteck eingerahmt. Die jeweiligen Farben können über die Farbpalette im Menü
eingestellt werden.
Der inkremental arbeitende Online-Check zeigt grundsätzlich nur alle nach dem Laden aufgetretenen Fehler an. Sofern auch alle vor dem Ladevorgang im Layout enthaltenen Fehler angezeigt werden sollen (z.B. vor der Generierung der Fertigungsdaten im
CAM-Prozessor), ist nach dem Laden des Layouts die Funktion
(Menü
) aufzurufen.
Die Mindestabstände für die Abstandsüberprüfungen werden mit den Abstandsfunktionen aus dem Menü
bzw. wahlweise auch netzbezogen über die Netzliste (mit dem Netzattribut
MINDIST ) festgelegt. Die Abstände im Menü
sind jedoch nicht unbedingt mit den Abständen im
Autorouter identisch, da der
Autorouter entsprechend der Routingraster-Vorgabe die Abstände selbsttätig festlegt. Netzbezogene Abstände hingegen werden auch vom Router individuell berücksichtigt.
Gruppen
Ein mächtiges Werkzeug stellen die Gruppenfunktionen im
Layouteditor dar. Mit Hilfe dieser Funktionen können Teile des aktuell geladenen Layouts oder Bauteils zu Gruppen zusammengefasst und dann gespeichert, bewegt, gedreht, gespiegelt, skaliert, kopiert, gelöscht, fixiert oder freigegeben werden.
Die Gruppenfunktionen arbeiten nach dem Mengenprinzip. Es können Elemente wahlweise zur aktuell definierten Gruppe hinzugefügt (selektiert) oder auch wieder aus der Gruppe entfernt (deselektiert) werden. Die zur aktuell definierten Gruppe selektierten Elemente werden mittels Highlight angezeigt. Mit der Funktion
können mehrere in einem festzulegenden Polygonzug befindliche Objekte eines wählbaren Typs (Bauteile, Leiterbahnen, Flächen, Texte, nur sichtbare bzw. unsichtbare Elemente oder beliebige Elemente) selektiert bzw. deselektiert werden. Die Funktion
dient der Selektion bzw. Deselektion von Einzelelementen (Bauteile, Leiterbahnen, Flächen, Texte). Hierbei besteht die Möglichkeit der repetitiven Objektauswahl, d.h. die Funktion bleibt mit den eingestellten Funktionsparametern solange aktiviert, bis kein gültiges Pickelement mehr angewählt wurde. Dadurch entfällt die sonst lästige Neuaktivierung der Auswahlfunktion bei der Selektion mehrerer Einzelelemente eines gewünschten Typs. Mit der Funktion
können alle Elemente der aktuell definierten Gruppe deselektiert werden.
Alle zur aktuell definierten Gruppe selektierten Elemente werden in die nachfolgenden Gruppenfunktionen zum Speichern
(), Bewegen
(), Kopieren
(), Löschen
() einbezogen. Die Funktionen zum Fixieren
() und Freigeben
() wirken nur auf die zur Gruppe selektierten Bauteile und Leiterbahnen (inklusive Vias) des aktuell geladenen Layouts.
Die Ausführung der Funktionen
,
,
,
und
wird durch eine Meldung über die Anzahl der geänderten Elemente quittiert. Offensichtliche Fehlselektionen lassen sich dadurch einfach erkennen.
Mit der Funktion
wird die aktuell definierte Gruppe als Dateielement abgespeichert. Hierbei ist ein Referenzpunkt zur Definition des Gruppenursprungs anzugeben. Das mit
erzeugte Datenbankelement wird auf derselben Hierarchieebene angelegt wie das aktuell geladene Element. Um ein versehentliches Überschreiben existierender Datenbankelemente zu verhindern, aktiviert
eine Bestätigungsabfrage für den Fall, dass ein Element mit dem spezifizierten Elementnamen bereits in der Zieldatei existiert. Mit
lassen sich Teile eines erprobten Layouts oder Bauteils in Form von Templates zur späteren Wiederverwendung abspeichern. Solche Templates (wie übrigens auch beliebige Layouts oder Bauteile) können dann mit der Funktion
in andere Layouts bzw. Bauteile geladen werden.
Beim Kopieren und Laden von Gruppen mit Bauteilen (auf Layoutebene) oder von Gruppen mit Padstacks (auf Bauteilebene) ist zu beachten, dass die entsprechenden Gruppenfunktionen keine automatische Bauteil- bzw. Pinbenennung durchführen. Vielmehr werden bei möglichen Namenskonflikten die neu platzierten Bauteile bzw. Pins mit
# benannt. Der Anwender muss dann im Bedarfsfall eine manuelle Umbenennung durchführen (ggf. kann dies auch automatisiert mit einem speziell hierfür implementierten User Language-Programm erfolgen).
Während des Bewegens von Gruppen mit einer der Funktionen
,
oder
kann mit der rechten Maustaste ein Untermenü mit Funktionen zur Platzierung auf Relativ- oder Absolutkoordinaten
(,
), zum Drehen bzw. Rotieren der Gruppe
(,
,
), zum Spiegeln der Gruppe (jeweils um die X-Achse mit
bzw.
) sowie zum Skalieren der Dimensionen und Platzierungskoordinaten der Gruppenelemente
(, durchgeführt nach Absetzen der bearbeiteten Gruppe) aktiviert werden. Im Untermenü der Funktion
steht nach Selektion des Verschiebestartpunktes zusätzlich die Option
zur Verfügung. Nach Selektion dieses Menüpunkts sind der Ursprung für die Quadranteinteilung sowie der gewünschte Quadrant (Rechts oben, Links oben, Links unten oder Rechts unten) zu wählen. Die dann selektierte Verschiebung wird nur für Elemente bzw. Punkte vorgenommen die sich innerhalb des selektierten Quadranten befinden. Damit ist es möglich, Teile eines Layouts unter Beibehaltung der Verbindungen zum Rest des Layouts zu verschieben. Der hierbei verwendete Algorithmus ist allerdings kein echter Routingalgorithmus und lässt sich nur bei waagerechten bzw. senkrechten Verschiebungen sinnvoll anwenden. Bei komplexeren Verschiebungen ist ein Verwerfen der Leiterbahnen und ein erneuter
Autorouter-Lauf vorzuziehen.
Die Funktion
setzt vor der eigentlichen Ladeoperation die aktuell definierte Gruppe zurück, d.h. es werden alle zum Zeitpunkt des Aufrufs der Funktion
selektierten Gruppenelemente deselektiert. Nachdem die Gruppe geladen ist, werden alle neu geladenen Gruppenelemente automatisch zur aktuellen Gruppe selektiert. D.h., die mit
geladenen Elemente (und nur diese) sind automatisch für die weitere Bearbeitung mit anderen Gruppenfunktionen selektiert.
Der Layouteditor unterstützt unterschiedliche Optionen zur Anzeige der zur Gruppe selektierten Objekte während des Platzierens der Gruppe. Hierfür stehen über die Funktion
die folgenden Anzeigemodi für die Gruppen-Bewegtdarstellung zur Auswahl:
Gruppen | |
Bewegtdarstellung | |
Mit
wird die Gruppen-Bewegtdarstellung abgeschaltet. Die Funktion
aktiviert die Anzeige der über das BAE-Setup mit dem Kommando
LAYGRPDISPLAY des Utilityprogramms
bsetup (siehe hierzu
Kapitel 7.2) definierten Dokumentarlage zur Gruppendarstellung; dabei erfolgt allerdings nur die Darstellung von Elementen der aktuell obersten Datenbank-Hierarchieebene. Die Option
aktiviert die Anzeige aller Gruppenelemente mit Ausnahme der Leiterbahnen, Durchkontaktierungen und Bohrungen.
aktiviert die Anzeige aller Gruppenelemente einschließlich der Leiterbahnen, Durchkontaktierungen und Bohrungen.
ist die Standardeinstellung.
Mit der Funktion
können zur Gruppe selektierte Bauteilmakros auf Layoutebene bzw. zur Gruppe selektierte Padstackmakros auf Bauteilebene ersetzt werden. Diese Funktion eignet sich insbesondere zum schnellen Austausch von Pintypen auf Bauteilebene.
Auf Layoutebene werden mit
nur diejenigen Gehäusebauformen für in der Netzliste enthaltene Bauteile geändert, für die das angegebene Gehäuse als Alternativbauform definiert ist. Der Austausch von Gehäusebauformen für Bauteile, die nicht in der Netzliste enthalten sind, erfolgt hingegen ohne diese Prüfung.
Fixieren/Freigeben von Elementen
Bestimmte Elemente des Layouts wie Bauteile oder Leiterbahnen lassen sich fixieren. Fixierte Elemente werden in einem nachfolgend auszuführenden automatischen Prozess (Platzierungsoptimierung, Autorouting) nicht verändert. Wir empfehlen dies z.B. dringend für Bauteile, die vom Bauteil- bzw. Pin/Gate-Swap auszunehmen sind oder für den Stromversorgungskamm vor dem Start des
Autorouters. Beim Start einer Fixierfunktion werden die zu diesem Zeitpunkt fixierten Elemente durch Highlight markiert, beim Verlassen der Funktion wird dieses spezifische Highlight wieder aufgehoben.
Beim Bearbeiten bzw. Kopieren fixierter Elemente (Bauteile, Leiterbahnen, Vias) bleibt die Fixierung erhalten bzw. wird auf die kopierten Elemente übertragen.
D.h., die Funktionen zur manuellen Bearbeitung von Leiterbahnen im
Layouteditor haben keine Einfluss auf aktuell gesetzte Fixiert-Attribute der bearbeiteten Leiterbahnelemente. Das bedeutet, dass nach einer manuellen Nachbearbeitung vorher fixierter Leiterbahnen keine Notwendigkeit einer neuerlichen Fixierung besteht, um in einem nachfolgenden
Autorouter-Lauf die Umverlegung (oder gar Herausnahme) solcher vorverlegter Leiterbahnen zu unterdrücken.
Polygone, Flächen
Grundsätzlich kann jede Fläche einschließlich der Pinformen als Polygon eingegeben werden. Hierzu werden die im Menü
vorhandenen Funktionen verwendet. Ein Polygon wird grundsätzlich einer Lage bzw. einem Flächentyp zugeordnet und darf beliebig viele Kreisbogenbestandteile enthalten. Bei der Erstellung von Kreisbögen wird zunächst die erste Bogenecke graphisch eingegeben und anschließend die Funktion
oder
im Untermenü angewählt. Danach erfolgt die Eingabe des Mittelpunktes, wobei der daraus resultierende Kreis dynamisch am Fadenkreuz angezeigt wird. Zuletzt wird dann der Endpunkt eingegeben, wobei der resultierende Kreisbogen dynamisch dargestellt wird.
Bei der Definition des Vollkreises entfällt die Eingabe des Kreisbogenendpunktes. Zunächst wählen Sie einen Eckpunkt an, selektieren anschließend
(oder
) und definieren den Mittelpunkt. Die Funktion ist dann unmittelbar nach Eingabe des Mittelpunktes anstelle der Eingabe des Endpunktes mit
zu beenden.
Der Pickalgorithmus für Polygonbahnecken und Polygonsegmente sorgt dafür, dass bei mehreren möglichen Pickelementen im Fangbereich das Polygonelement mit dem minimalen Abstand zum Pickpunkt selektiert wird. Damit ist auch in Übersichtsdarstellungen ein gezieltes Anwählen von Polygonen möglich.
Attribute zur Projekt- und Versionskontrolle
Die Attribute
$pltfname ,
$pltfsname und
$pltename werden durch den Namen der Projektdatei, den Namen der Projektdatei ohne Pfadnamen bzw. den Namen des aktuell geladenen Elementes ersetzt.
Die Attribute
$plttime (aktuelle Uhrzeit),
$pltdatede (aktuelles Datum, deutsche Notation) und
$pltdateus (aktuelles Datum, US-Notation) werden bei geladenem Layout bei der Bilddarstellung und bei der Plotausgabe jeweils durch die aktuelle Uhrzeit bzw. das aktuell Datum ersetzt.
Die Attribute
$pltstime (aktuelle Uhrzeit),
$pltsdatede (aktuelles Datum, deutsche Notation) und
$pltsdateus (aktuelles Datum, US-Notation) werden bei geladenem Layout bei der Bilddarstellung und bei der Plotausgabe jeweils durch die Uhrzeit bzw. das Datum der zuletzt für das aktuell geladene Layout durchgeführten Sicherung ersetzt. Dabei spielt es keine Rolle, auf welcher Datenbankebene (Pad, Padstack, Bauteil, Layout) der Attributtext definiert ist. Existiert ein gesetztes herkömmliches Attribut mit gleichem Namen für ein Symbol, so besitzt dieses Priorität bei der Anzeige bzw. Ausgabe.
Bemaßung
Mit dem Zeichen
# als neuem Text wird eine Meßfunktion aktiviert, die die Distanz zweier danach abgefragter Punkte ermittelt und als Text darstellt. Die dabei zu verwendende Maßeinheit kann über die Funktion
aus dem Menü
zu Inch oder Millimeter festgelegt werden.
Berücksichtigung von Einschränkungen bei der CAM-Ausgabe
Alle Flächen, d.h. auch die Padformen können wahlfrei definiert werden. Bitte beachten Sie jedoch, dass der
CAM-Prozessor bestimmte regelmäßige Formen wie Kreise und Rechtecke, sofern diese sich in den Grenzen der Symboltoleranz und Blendentabellen befinden, automatisch erkennt und wesentlich zeitsparender plotten kann. Dies beruht auf der allgemeinen Eigenschaft von Photoplottern, bestimmte Symbole blitzen zu können. Dadurch werden die Plotzeiten und Kosten erheblich reduziert. Grundsätzlich plottet der
CAM-Prozessor jedoch alle Formen im Rahmen der gewählten Genauigkeit exakt und zeigt (durch Fehlermeldung und Highlight) an, wo dies aufgrund der Vorgaben nicht möglich ist. So werden z.B. auch alle Flächen beim Füllen automatisch an die Blendengröße bzw. Stiftbreite angepasst (automatischer Versatz um eine halbe Blende nach innen).
User Language
Im Layouteditor ist der
Bartels User Language Interpreter integriert, d.h. vom
Layouteditor aus können
User Language-Programme gestartet werden. Der Anwender hat damit die Möglichkeit, eigene Zusatzfunktionen nach anwender- bzw. firmenspezifischen Bedürfnissen zu implementieren und in den
Layouteditor einzubinden. Hierzu zählen zum Beispiel Statusanzeigen und Parametereinstellungen, Report- und Testfunktionen, Prüf- und Editierfunktionen, spezielle Plotfunktionen, Utilities zur Verwaltung von Bauteilbibliotheken, automatische Platzierungs- und Routingfunktionen, firmenspezifische Batch-Prozeduren, usw. usf.
Im Layouteditor können
User Language-Programme explizit oder implizit aufgerufen werden. Der explizite Programmaufruf erfolgt über den Menüpunkt
im Menü
. Nach der Aktivierung dieses Menüpunktes ist auf die Abfrage nach dem Programmnamen der Name des aufzurufenden
User Language-Programms (z.B.
ulprog ) explizit einzugeben. Die Betätigung einer beliebigen Maustaste oder die Eingabe eines Fragezeichens
? auf die Abfrage nach dem Programmnamen bewirkt hierbei die Aktivierung eines Popupmenüs mit allen aktuell verfügbaren
User Language-Programmen.
User Language-Programme können auch implizit über die Tastatur aktiviert werden. Diese Art des Programmaufrufs ist immer dann möglich, wenn nicht gerade eine andere interaktive Eingabe über Tastatur erwartet wird. Die Spezifikation des Programmnamens erfolgt dabei implizit durch Drücken einer Taste. Zulässige Tasten sind dabei die Standardtasten
(1,
2, ...,
0,
a,
b,
c, ...; entsprechende Programmnamen sind
ged_1,
ged_2, ...,
ged_0,
ged_a,
ged_b,
ged_c, ...) bzw. die Funktionstasten
(F1,
F2, ...; entsprechende Programmnamen sind dabei
ged_f1,
ged_f2, ...).
Der Layouteditor ermöglicht den ereignisgesteuerten Aufruf von
User Language-Programmen. Dabei lösen spezielle Ereignisse bzw. Operationen implizit, d.h. automatisch den Aufruf von
User Language-Programmen mit definierten Namen aus, sofern diese verfügbar sind. Im Einzelnen sind dies die
User Language-Programme
ged_st beim Starten des
Layouteditors,
ged_load nach dem Laden eines Elements,
ged_save vor dem Speichern eines Elements,
ged_tool bei Selektion eines Toolbarelements sowie
ged_zoom bei Änderung des Zoomfaktors. Der Aufruf über die Startupsequenz der Interpreterumgebung eignet sich besonders zur automatischen Voreinstellung von modulspezifischen Parametern sowie zur Tastaturprogrammierung und Menübelegung. Der implizite Aufruf von
User Language-Programmen nach dem Laden bzw. vor dem Speichern von Elementen ermöglicht die automatische Aktivierung elementspezifischer Bearbeitungsparameter wie z.B. des zuletzt selektierten Zoombereichs oder spezieller Farbeinstellungen. Bei Interaktionen in der Werkzeugliste werden die den selektierten Toolbarelementen zugewiesenen Funktionen ausgelöst. Die Änderung des Zoomfaktors kann dazu benutzt werden, Aktualisierungen in Funktionen zur Verwaltung von Entwurfsansichten auszulösen.
Mit der
Bartels User Language werden darüber hinaus mächtige Systemfunktionen zur Tastaturprogrammierung und Menübelegung sowie zur Definition von Werkzeugleisten (Toolbars) zur Verfügung gestellt. Beachten Sie bitte, dass über die mit der BAE-Software ausgelieferten
User Language-Programme eine Vielzahl von Zusatzfunktionen implementiert und transparent in die Benutzeroberfläche des
Layouteditors eingebunden sind.
Eine ausführliche Beschreibung der
Bartels User Language finden Sie im
Bartels User Language Programmierhandbuch (Kapitel 4.2 enthält eine Auflistung aller mit der BAE-Software ausgelieferten
User Language-Programme).
Neuronales Regelsystem
Im
Bartels AutoEngineer sind eine Vielzahl mächtiger Zusatzfunktionen über das integrierte
Neuronale Regelsystem implementiert.
Kapitel 6.3.2 enthält eine Übersicht über die im Leiterkartenlayoutsystem bereitgestellten Regelsystemanwendungen.
4.2 Bibliotheksbearbeitung
Im Lieferumfang des
Bartels AutoEngineer ist eine umfangreiche Bibliothek mit Layoutsymbolen enthalten. Natürlich kann jedoch der Fall eintreten, dass Sie für Ihr aktuell zu bearbeitendes Projekt Layoutsymbole benötigen, die noch nicht in der mitgelieferten Bibliothek definiert sind. Nachfolgend wird anhand von Beispielen die Erstellung derartiger Bibliothekssymbole beschrieben. Dabei werden entsprechend der Datenbankhierarchie (siehe hierzu auch
Kapitel 1.3) ausgehend von der untersten Hierarchieebene zunächst verschiedene Pad- und Padstacksymbole und anschließend einige Gehäusesymbole (auf Bauteilebene) definiert. Alle diese Symbole werden in dem in den vorhergehenden Kapiteln bearbeiteten DDB-File
demo.ddb abgelegt. Gehen Sie hierzu zunächst in das Verzeichnis, in dem
demo.ddb abgelegt ist, und starten Sie den AutoEngineer:
> bae
Rufen Sie das Layoutmodul auf:
Layout | |
Sie befinden sich nun im
Layouteditor des
Bartels AutoEngineer und können mit der Erstellung der Bibliothekselemente beginnen. Bevor Sie jedoch (unter Verwendung der entsprechenden Datenblätter) eigene Layoutsymbole erzeugen, sollten Sie sich mit den Regeln zur Erstellung derartiger Symbole vertraut machen. Häufig existieren neben den Vorgaben aus den Datenblättern je nach zu verwendender Technologie firmen- bzw. fertigungsspezifische Konventionen, die zu beachten sind. Beispiele hierfür sind etwa Vorgaben für die Verwendung und Definition von Lötaugen, eine spezielle Kennzeichnung der Bauteil-Einbaulage bzw. des Pin 1 am Bauteil, das Raster zur Platzierung der Pins, der Bauteil-Nullpunkt für die Platzierung, der Bauteil-Pickpunkt für die automatische Bestückung, die Mindesthöhe für Texte, die Verwendung von Bohrsymbolen auf dem Bohrplan, einzuhaltende Bauteilmindestabstände (z.B. für SMDs auf der Lötseite), usw. In diesem Zusammenhang sollten Sie sich unbedingt auch mit der Lagenzuordnung (siehe
Kapitel 4.1.5) vertraut machen, um eine korrekte Datenübergabe an die Fertigung zu ermöglichen.
Abbildung 4-1 zeigt die Layoutbibliothekssymbole, die wir in diesem Abschnitt erstellen werden.
Abbildung 4-1: Layout-Bibliothekssymbole
4.2.1 Paderstellung
Auf Padebene werden durch die Definition von Kupferflächen die Lötaugenformen festgelegt. Die in dieser Ebene generierten Padsymbole werden dann in der Padstackebene über die verschiedenen Lagen zu einem Stapel (Padstack) zusammengefasst und bilden die eigentliche Bauteil-Anschlussdefinition.
Ein Pad sollte in jedem Fall zunächst lagenfrei definiert werden (dies ist die Standardeinstellung im
bsetup) und erst im Padstack einer Signal- oder Dokumentarlage zugewiesen werden. Dadurch ist sichergestellt, dass bei einer eventuell notwendigen Änderung der Lagenzuordnung bei Verwendung einer anderen Fertigungstechnologie der Aufwand für die Bibliotheksanpassung möglichst gering ist.
Erzeugen eines Padsymbols
Generieren Sie mit den folgenden Befehlen in der Datei
demo.ddb ein Padsymbol mit dem Elementnamen
via und einer Elementgröße von 1*1mm:
Datei | |
Neues Element | |
Pad | |
Dateiname ? | demo |
Elementname ? | via |
Elementbreite (mm/") ? | 1 |
Elementhoehe (mm/") ? | 1 |
Auf dem Bildschirm sehen Sie nun einen quadratischen Rahmen mit einem Kreuz in der Mitte. Der Rahmen beschreibt die Elementgrenzen des Pads, während das Kreuz die Position des Element-Nullpunktes kennzeichnet.
Definieren der Kupferfläche
Definieren Sie im Nullpunkt des Pads eine kreisförmige Kupferfläche mit einem Durchmesser von 0.9mm. Dies geschieht mit folgenden Befehlen:
Flaechen | |
Neue Kupferflaeche | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.45 |
Abs. Y Koordinate (mm/") ? | 0 |
Bogen links | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0 |
Abs. Y Koordinate (mm/") ? | 0 |
Fertig | |
Definieren der Elementgrenzen
Sie können die Elementgrenzen des Padsymbols so umdefinieren, dass die Objekte des Pads möglichst dicht umschlossen werden. Dies geschieht wie folgt:
Einstellungen | |
Obere Elementgrenze | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0 |
Abs. Y Koordinate (mm/") ? | 0 |
Untere Elementgrenze | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0 |
Abs. Y Koordinate (mm/") ? | 0 |
Sichern des erstellten Symbols
Sie haben theoretisch die Möglichkeit, am Padsymbol Dokumentation (Text, Dokumentarlinien oder Dokumentarflächen auf Dokumentarlagen) zu definieren. Da sich daraus aber eine sehr spezifische Paddefinition ergeben würde, die in recht wenigen übergeordneten Layoutsymbolen verwendet werden könnte, empfehlen wir, derartige Definitionen erst auf Padstack oder Bauteilebene vorzunehmen. Speichern Sie das Padsymbol nun mit folgenden Befehlen ab:
Datei | |
Speichern | |
Das Padsymbol ist nun definiert und unter dem Elementnamen
via in der Datei
demo.ddb abgespeichert. Wir werden dieses Padsymbol später in einen Padstack laden, der für die Leiterbahn-Durchkontaktierungen (Umsteiger) beim manuellen bzw. automatischen Routen verwendet wird.
Definition quadratischer Pads
Definieren Sie nun mit den folgenden Kommandos in der Datei
demo.ddb ein Padsymbol mit dem Elementnamen
q1.4 und einer quadratischen Kupferfläche mit der Kantenlänge 1.4mm:
Datei | |
Neues Element | |
Pad | |
Dateiname ? | demo |
Elementname ? | q1.4 |
Elementbreite (mm/") ? | 2 |
Elementhoehe (mm/") ? | 2 |
Flaechen | |
Neue Kupferflaeche | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.7 |
Abs. Y Koordinate (mm/") ? | 0.7 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | -1.4 |
Rel. Y Koordinate (mm/") ? | 0 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 0 |
Rel. Y Koordinate (mm/") ? | -1.4 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 1.4 |
Rel. Y Koordinate (mm/") ? | 0 |
Fertig | |
Datei | |
Speichern | |
Im vorhergehenden Arbeitsschritt wurde das Pad q1.4 definiert. Dieses Pad wird später in einem Padstack für bedrahtete Bauteile verwendet. Um auch ein dazugehöriges Symbol zur Generierung der Lötstopmaske zur Verfügung zu haben, ist ein entsprechendes Pad mit einer etwas größeren Kupferfläche zu erzeugen. Kopieren Sie mit den folgenden Kommandos das (noch geladene) Padsymbol
q1.4 auf
q1.4sr (quadratisch 1.4mm, solder resist), und vergrößern Sie die auf
q1.4sr definierte Kupferfläche um 0.1mm:
Datei | |
Ablegen auf Namen | |
Dateiname ? | |
Elementname ? | q1.4sr |
Laden | |
Pad | |
Dateiname ? | |
Elementname ? | q1.4sr |
Flaechen | |
Flaeche groesser | |
Positionieren auf Flächenecke/-kante | |
Expansionsdistanz (mm/") ? | 0.1 |
Datei | |
Speichern | |
Definition von Finger-Pads
Definieren Sie nun mit den folgenden Kommandos in der Datei
demo.ddb ein Padsymbol mit dem Elementnamen
so und einer fingerförmigen Kupferfläche mit einer Breite von 0.7mm und einer Länge von 1.7mm:
Datei | |
Neues Element | |
Pad | |
Dateiname ? | demo |
Elementname ? | so |
Elementbreite (mm/") ? | 1 |
Elementhoehe (mm/") ? | 2 |
Flaechen | |
Neue Kupferflaeche | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.35 |
Abs. Y Koordinate (mm/") ? | 0.5 |
Bogen links | |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | -0.35 |
Rel. Y Koordinate (mm/") ? | 0 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | -0.35 |
Rel. Y Koordinate (mm/") ? | 0 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 0 |
Rel. Y Koordinate (mm/") ? | -1 |
Bogen links | |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 0.35 |
Rel. Y Koordinate (mm/") ? | 0 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 0.35 |
Rel. Y Koordinate (mm/") ? | 0 |
Fertig | |
Datei | |
Speichern | |
Im vorhergehenden Arbeitsschritt wurde das Pad
so (SO-Gehäuse-Pad) definiert. Dieses Pad stellt die Lötaugenform für einen SMD-Anschluss dar. Generieren Sie mit den folgenden Kommandos aus dem (noch geladenen) Pad
so das Pad
sosr (für Lötstop, solder resist) mit einer um 0.05mm expandierten Kupferfläche:
Datei | |
Ablegen auf Namen | |
Dateiname ? | |
Elementname ? | sosr |
Laden | |
Pad | |
Dateiname ? | |
Elementname ? | sosr |
Flaechen | |
Flaeche groesser | |
Positionieren auf Flächenecke/-kante | |
Expansionsdistanz (mm/") ? | 0.05 |
Datei | |
Speichern | |
Überprüfung des Dateiinhaltes
Sie haben nun eine Reihe von Padsymbolen definiert und in der Datei
demo.ddb abgespeichert. Dies lässt sich wie folgt überprüfen:
Datei | |
Dateiinhalt | |
Pad | |
Dateiname ? | |
Da bei der Abfrage nach dem Dateinamen ein leerer String angegeben wurde, verwendet das System den Dateinamen des im Speicher befindlichen Elements (also
demo.ddb ). Das System sollte nun im Grafikarbeitsbereich folgende Liste mit den in der Datei
demo.ddb enthaltenen Padsymbolen ausgeben:
Typ : Pad / Datei : demo.ddb
: q1.4 : q1.4sr : so : sosr
: via - Ende -
Betätigen Sie nun die Leertaste, um wieder in die Menüoberfläche zu gelangen.
4.2.2 Padstackerstellung
Die in der Padebene erstellten Symbole werden auf Padstackebene über die verschiedenen Lagen zu einem Stapel (Padstack) zusammengefasst und bilden die eigentliche Bauteil-Anschlussdefinition. Im Padstack wird auch die Bohrinformation gespeichert, und zwar für gebohrte Pins in jedem Fall als Bohrungselement sowie wahlweise zusätzlich als Text und/oder Zeichnung auf der Bohrplan-Dokumentarlage. Für SMD-Anschlüsse entfällt beides. Auch können auf Padstackebene z.B. Sperrflächen definiert werden, um die Anschlussart des
Autorouters zu bestimmen. Für reine Bohrlöcher (Befestigungsloch, Bezugsaufnahmeloch, ...) genügt die Definition eines Bohrungselements mit einer Sperrfläche, die verhindert, dass der
Autorouter Leiterbahnen über das Bohrloch hinweg verlegt.
In den nachfolgend beschriebenen Arbeitschritten werden unter Verwendung der im vorherigen Abschnitt erzeugten Padsymbole einige Padstacks erstellt. Dabei werden Elemente auf möglicherweise über die Farbtabelle unsichtbar geschaltete Lagen abgelegt. Um eine Kontrolle über die jeweiligen Eingaben zu haben, empfiehlt es sich, die Farbtabelle für die Dauer der Padstackerstellung so umzudefinieren, dass die Bohrungen, die Bohrplan-Dokumentarlage
, sowie alle drei Seiten der Dokumentarlage Loetmaske sichtbar sind. Dies geschieht über das Menü
z.B. auf folgende Weise:
Farbpalette | |
Bohrungen | |
Positionieren auf gewünschte Farbe, weiß | |
-> Dok.-Lagen | |
Bohrplan/Beide Seiten | |
Positionieren auf gewünschte Farbe, hellblau | |
Loetmaske/Beide Seiten | |
Positionieren auf gewünschte Farbe, grau | |
Loetmaske/Seite 1 | |
Positionieren auf gewünschte Farbe, dunkelgrau | |
Loetmaske/Seite 2 | |
Positionieren auf gewünschte Farbe, hellgrau | |
Ende | |
In den Farbauswahlmenüs erfolgt die Zuweisung einer Farbe an einen speziellen Anzeigeelementtyp durch Selektion des Anzeigeelements (bzw. der Lage) über die linke Maustaste sowie die anschließende Selektion der gewünschten Farbe. In den Farbauswahlmenüs des Layoutsystems besteht darüber hinaus die Möglichkeit der schnellen Lagen-Ein/Ausblendung mit Erhalt der aktuell eingestellten Farbe. Die Aktivierung bzw. Deaktivierung der Lagenanzeige erfolgt dabei durch Anwahl des Farbbuttons der gewünschten Lage mit der rechten Maustaste. In der Menüanzeige werden die Farbbuttons der aktuell ausgeblendeten Lagen durchgestrichen dargestellt.
Die soeben definierte Farbtabelle können Sie mit den folgenden Kommandos unter dem Namen
stackedit in der Datei
ged.dat (im BAE-Programmverzeichnis) abspeichern:
Datei | |
Farben speichern | |
Elementname ? | stackedit |
Die so gespeicherte Farbtabelle kann später nach Bedarf mit der Funktion
aus dem Menü
wieder im Layoutsystem aktiviert werden.
Erzeugen eines Padstacksymbols
Generieren Sie mit den folgenden Befehlen in der Datei
demo.ddb ein Padstacksymbol mit dem Elementnamen
via und einer Elementgröße von 1*1mm:
Datei | |
Neues Element | |
Padstack | |
Dateiname ? | demo |
Elementname ? | via |
Elementbreite (mm/") ? | 1 |
Elementhoehe (mm/") ? | 1 |
Auf dem Bildschirm sehen Sie nun einen quadratischen Rahmen mit einem Kreuz in der Mitte. Der Rahmen beschreibt die Elementgrenzen des Padstacks, während das Kreuz die Position des Element-Nullpunktes kennzeichnet.
Laden des/der Pads
Mit der Funktion
aus dem Menü
können Pads auf dem aktuell bearbeiteten Padstacksymbol geladen und platziert werden. Dabei erfolgt eine Abfrage nach dem Bibliotheksteilnamen, d.h. nach dem Namen des gewünschten Padsymbols. Hierbei wird zunächst ein Popupmenü zur Auswahl der Bibliotheksdatei angeboten, wobei die Dateinamensliste aus dem im BAE-Setup definierten Pfadnamen für die Layoutbibliothek abgeleitet wird, d.h. es werden alle im Verzeichnis der im System angemeldeten Standardlayoutbibliothek enthaltenen DDB-Dateien aufgelistet. Nach Auswahl der Layoutbibliothek (hier kann mit
auch die aktuell bearbeitete DDB-Datei selektiert werden) erfolgt die Abfrage nach dem gewünschten Padsymbol (mit entsprechendem Popupmenü). Padsymbole können wahlweise auch direkt durch Eingabe des Bibliotheksdateinamens, eines Schrägstrichs
(/ ) und des Elementnamens spezifiziert werden (ein Fragezeichen anstelle des Elementnamens aktiviert hierbei wiederum ein Popupmenü mit den in der angegebenen Bibliotheksdatei enthaltenen Padsymbolen). Durch die Eingabe eines Leerstrings auf die Abfrage nach dem Padsymbol wird das zuletzt mit
selektierte Padsymbol ausgewählt (sofern zuvor bereits ein solches spezifiziert wurde).
Laden Sie mit den folgenden Kommandos das Padsymbol
via , platzieren Sie es auf dem Padstack-Nullpunkt, und definieren Sie es als auf allen Signallagen vorhanden:
Bauteile | |
Neues Bauteil | |
Bibliotheksteilname ? | via |
Eingabe Lage | |
Alle Lagen | |
Fertig | |
Definieren der Bohrung
Definieren Sie mit den folgenden Kommandos eine Bohrung mit einem Durchmesser von 0.5mm:
Texte, Bohrungen | |
Bohrung setzen | |
Bohrdurchmesser ( 0.00mm) ? | 0.5 |
Fertig | |
Die im Untermenü der Funktion
angebotene Option
ermöglicht die Zuweisung einer speziellen Bohrklasse für die Definition und Bearbeitung partieller Durchkontaktierungen (siehe hierzu auch
Kapitel 4.6.11. Über die Option
können Bohrungen wahlweise auch mit einer Spiegelungsbohrklasse versehen werden. Diese Bohrklasse wird aktiviert, wenn das Bauteil, auf dem sich die Bohrung befindet, gespiegelt wird. Damit ist die Definition spiegelbarer Bauteile mit partiellen Durchkontaktierungen möglich. Bei geladenem Padstack wird die optionale Spiegelungsbohrklasse unterhalb der Standardbohrungsklasse dargestellt. Auf Layoutebene ist immer nur die dem Spiegelungsmodus entsprechende Bohrklasse sichtbar.
Definieren eines Bohrsymbols
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bohrplan (Beide Seiten) zur Darstellung des Bohrplansymbols (es empfiehlt sich, vorher die Koordinatenanzeige auf Inch, und das Eingaberaster auf 1/80 Zoll umzustellen; die Koordinaten zur Positionierung auf die Linien-Eckpunkte können jeweils rechts oben im Info-Feld abgelesen werden):
Einstellungen | |
Koordinatenanzeige | |
inch Anzeige | |
Raster/Winkel | |
Eingaberaster | |
1/80 Zoll | |
W+R einhalten | |
Flaechen | |
Dokumentarlinie | |
Bohrplan | |
Positionieren auf [0.0125",0.0125"] | |
Positionieren auf [-0.0125",0.0125"] | |
Positionieren auf [0.0125",-0.0125"] | |
Positionieren auf [-0.0125",-0.0125"] | |
Positionieren auf [0.0125",0.0125"] | |
Fertig | |
Definieren einer Sperrfläche
Definieren Sie mit den folgenden Kommandos entsprechend der Padform eine runde Sperrfläche mit einem Durchmesser von 0.9mm auf der Dokumentarlage Bohrplan (Beide Seiten):
Flaechen | |
Neue Sperrflaeche | |
Dokumentarlage | |
Bohrplan | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.45 |
Abs. Y Koordinate (mm/") ? | 0 |
Bogen links | |
Positionieren auf Nullpunkt [0,0] | |
Fertig | |
Der Design Rule Check ist in der Lage, auf Dokumentarlagen definierte Sperrflächen gegeneinander zu prüfen. Obige Sperrflächendefinition bewirkt, dass der Design Rule Check Abstandsfehler meldet, wenn Durchkontaktierungen (beim manuellen Routen) versehentlich übereinander gesetzt werden.
Sichern des erstellten Symbols
Das Padstacksymbol
via ist nun definiert. Vergessen Sie nicht, das soeben erstellte Symbol zu sichern:
Datei | |
Speichern | |
Definieren eines Padstacksymbols für gebohrte Bauteilanschlüsse
Erzeugen Sie mit den folgenden Kommandos in der Datei
demo.ddb das Padstacksymbol
q1.4 mit einer Elementgröße von 2*2mm:
Datei | |
Neues Element | |
Padstack | |
Dateiname ? | demo |
Elementname ? | q1.4 |
Elementbreite (mm/") ? | 2 |
Elementhoehe (mm/") ? | 2 |
Laden Sie mit den folgenden Kommandos die Padsymbole
q1.4 (Alle Lagen) und
q1.4sr (Dokumentarlage Loetmaske - Beide Seiten; für Lötstopmaske):
Bauteile | |
Neues Bauteil | |
Bibliotheksteilname ? | q1.4 |
Eingabe Lage | |
Alle Lagen | |
Fertig | |
Neues Bauteil | |
Bibliotheksteilname ? | q1.4sr |
Eingabe Lage | |
Dokumentarlage | |
Loetmaske | |
Beide Seiten | |
Fertig | |
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bestueckungsplan (Seite 2) zur Kennzeichnung des Anschlusses:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.025",0.025"] | |
Positionieren auf [-0.025",0.025"] | |
Positionieren auf [-0.025",-0.025"] | |
Positionieren auf [0.025",-0.025"] | |
Positionieren auf [0.025",0.025"] | |
Fertig | |
Definieren Sie eine Bohrung mit einem Durchmesser von 0.9mm:
Texte, Bohrungen | |
Bohrung setzen | |
Bohrdurchmesser ( 0.00mm) ? | 0.9 |
Fertig | |
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bohrplan (Beide Seiten) zur Darstellung des Bohrplansymbols:
Flaechen | |
Dokumentarlinie | |
Bohrplan | |
Positionieren auf [0.0125",0.0125"] | |
Positionieren auf [-0.0125",0.0125"] | |
Positionieren auf [-0.0125",-0.0125"] | |
Positionieren auf [0.0125",-0.0125"] | |
Positionieren auf [0.0125",0.0125"] | |
Fertig | |
Stellen Sie das Eingaberaster auf 1/200 Zoll ein, und definieren Sie an den vier Eckpunkten des Padstacks jeweils eine kleine quadratische Sperrfläche auf Alle Lagen:
Raster/Winkel | |
Eingaberaster | |
1/200 Zoll | |
W+R einhalten | |
Flaechen | |
Neue Sperrflaeche | |
Alle Lagen | |
Positionieren auf [0.0250",0.0250"] | |
Positionieren auf [0.0300",0.0250"] | |
Positionieren auf [0.0300",0.0300"] | |
Positionieren auf [0.0250",0.0300"] | |
Fertig | |
Flaeche kopieren | |
Positionieren auf [0.0250",0.0250"] | |
Positionieren auf [-0.0300",0.0250"] | |
Flaeche kopieren | |
Positionieren auf [-0.0300",0.0250"] | |
Positionieren auf [-0.0300",-0.0300"] | |
Flaeche kopieren | |
Positionieren auf [-0.0300",-0.0300"] | |
Positionieren auf [0.0250",-0.0300"] | |
Mit Hilfe der in obigem Arbeitsgang definierten Sperrflächen wird die Anschlussart des
Autorouters (nur orthogonal) für den Padstack
q1.4 festgelegt.
Vergessen Sie nicht, das soeben erstellte Symbol zu speichern:
Datei | |
Speichern | |
Definieren eines Padstacksymbols für SMD-Anschlüsse
Erzeugen Sie mit den folgenden Kommandos in der Datei
demo.ddb das Padstacksymbol
so mit einer Elementgröße von 1*2mm:
Datei | |
Neues Element | |
Padstack | |
Dateiname ? | demo |
Elementname ? | so |
Elementbreite (mm/") ? | 1 |
Elementhoehe (mm/") ? | 2 |
Laden Sie mit den folgenden Kommandos die Padsymbole
so (Oberste Lage bzw. Bestueckseite) und
sosr (Dokumentarlage Loetmaske - Seite 2; für Lötstopmaske):
Bauteile | |
Neues Bauteil | |
Bibliotheksteilname ? | so |
Eingabe Lage | |
Lage n (Bests.) | |
Fertig | |
Neues Bauteil | |
Bibliotheksteilname ? | sosr |
Eingabe Lage | |
Dokumentarlage | |
Loetmaske | |
Seite 2 | |
Fertig | |
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bestueckunsplan (Seite 2) zur Kennzeichnung des Anschlusses:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.0150",0.0350"] | |
Positionieren auf [-0.0150",0.0350"] | |
Positionieren auf [-0.0150",-0.0350"] | |
Positionieren auf [0.0150",-0.0350"] | |
Positionieren auf [0.0150",0.0350"] | |
Fertig | |
Vergessen Sie nicht, das soeben erstellte Symbol zu speichern:
Datei | |
Speichern | |
Definieren eines Padstack-Bohrsymbols
Erzeugen Sie mit den folgenden Kommandos in der Datei
demo.ddb das Padstacksymbol
drill3.0 mit einer Elementgröße von 3*3mm:
Datei | |
Neues Element | |
Padstack | |
Dateiname ? | demo |
Elementname ? | drill3.0 |
Elementbreite (mm/") ? | 3 |
Elementhoehe (mm/") ? | 3 |
Definieren Sie mit den folgenden Kommandos eine Bohrung mit einem Durchmesser von 3.0mm, und ordnen Sie dieser Bohrung die Bohrungsklasse
Z zu (dieses Kennzeichen kann später im
CAM-Prozessor zur gezielten Ausgabe von nicht durchkontaktierten Bohrungen verwendet werden; siehe
Kapitel 4.7.13, Ausgabe von Bohrdaten):
Texte, Bohrungen | |
Bohrung setzen | |
Bohrdurchmesser ( 0.00mm) ? | 3.0 |
Bohrungsklasse | |
Neue Bohrungsklasse (-,A..Z) (-) ? | Z |
Fertig | |
Die Eingabe eines Bindestrichs
(- ) auf die Abfrage nach der Bohrungsklasse bewirkt die Zuordnung der Bohrung zu keiner speziellen Bohrungsklasse. Dies ist zugleich die Standardeinstellung für die Definition von Bohrungen.
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bohrplan (Beide Seiten) zur Darstellung des Bohrplansymbols:
Flaechen | |
Dokumentarlinie | |
Bohrplan | |
Positionieren auf [0.00",0.05"] | |
Positionieren auf [-0.05",0.00"] | |
Positionieren auf [0.00",-0.05"] | |
Positionieren auf [0.05",0.00"] | |
Positionieren auf [0.00",0.05] | |
Fertig | |
Definieren Sie mit folgenden Kommandos eine der Bohrung entsprechende Sperrfläche auf Alle Lagen:
Flaechen | |
Neue Sperrflaeche | |
Alle Lagen | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 1.5 |
Abs. Y Koordinate (mm/") ? | 0 |
Bogen links | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0 |
Abs. Y Koordinate (mm/") ? | 0 |
Fertig | |
Die Sperrflächendefinition ist notwendig, um zu verhindern, dass der
Autorouter Leiterbahnen über die Bohrung legt.
Vergessen Sie nicht, das soeben erstellte Symbol zu speichern:
Datei | |
Speichern | |
4.2.3 Bauteilerstellung
Auf der Bauteilebene werden die Gehäusebauformen erstellt. Die Bauteilanschlüsse werden durch das Laden und Platzieren von Padstacks definiert. Bauteile können auch Kupferflächen, Sperrflächen, Zeichnungsinformation, usw. enthalten. Der Bauteilname wird als Text durch das Attribut
$ definiert. Das
$ -Zeichen wird auf der nächst höheren Hierarchieebene, d.h. auf der Layoutebene durch den Bauteilnamen ersetzt. Auch die anderen Attribute (wie z.B.
$val ,
$llname , usw.) können durch entsprechende Textdefinitionen auf Bauteilebene im Layout visualisiert werden.
Es ist auch die Definition von Leiterbahnen und Durchkontaktierungen auf Bauteilebene möglich. Hierzu sind die im
Kapitel 4.3.4 besprochenen Funktionen zum manuellen Routen anzuwenden. In der Layout-Connectivity und im Design Rule Check werden die Verbindungen bzw. Abstände zwischen Leiterbahnen, die auf demselben Bauteil definiert sind, nicht berücksichtigt. Dadurch ist es z.B. möglich, Bauteile zur verfahrenstechnisch korrekten Repräsentation gedruckter Spulen zu erzeugen, wobei die Pinverbindungen jeweils aus zwei Teilbahnen herzustellen sind. Kurzschlüsse bzw. Abstandsfehler, die durch andere Leiterbahnen auf Layoutebene mit den Leiterbahnen der gedruckten Spule entstehen, werden weiterhin erkannt und angezeigt. Da die Leiterbahnen ein und desselben auf Layoutebene platzierten Bauteils nicht mehr gegeneinander geprüft werden, wird dringend empfohlen, schon bei der Erstellung des Bauteils einen Batch-DRC auf Bauteilebene durchzuführen. Die Parameter für die Abstandsprüfung sind dabei auf die kleinsten für die Verwendung des Bauteils vorgesehenen Mindestabstände einzustellen.
Im Folgenden werden unter Verwendung der im vorhergehenden Abschnitt definierten Padstacks drei Bauteile definiert. Das erste Bauteil ist ein Widerstandsgehäuse mit gebohrten Anschlüssen; das zweite Bauteil ist ein 14poliges SMD-Gehäuse; das dritte Layoutsymbol ist ein konstruktives Element, das ein Bohrloch repräsentiert.
Bevor Sie mit der Erstellung der Bauteile beginnen, sollten Sie das Eingaberaster auf 1/20 Zoll (Menü
) und die Koordinatenanzeige auf Inch (Menü
) einstellen.
Erzeugen eines Bauteilsymbols
Generieren Sie mit den folgenden Kommandos in der Datei
demo.ddb ein Bauteil mit dem Elementnamen
r04a25 und einer Elementgröße von 0.6*0.2 Zoll:
Datei | |
Neues Element | |
Bauteil | |
Dateiname ? | demo |
Elementname ? | r04a25 |
Elementbreite (mm/") ? | 0.6" |
Elementhoehe (mm/") ? | 0.2" |
Auf dem Bildschirm sehen Sie einen rechteckigen Rahmen mit einem Kreuz links unten. Der Rahmen beschreibt die Elementgrenzen des Bauteils, während das Kreuz die Position des Element-Nullpunktes kennzeichnet.
Definieren der Bauteilanschlüsse
Mit der Funktion
aus dem Menü
können Pins auf dem aktuell bearbeiteten Gehäusesymbol platziert werden. Dabei ist der Pinname und der Name des zu verwendenden Padstacksymbols zu spezifizieren. Beachten Sie, dass die in einer Bauteildefinition verwendeten Pinbezeichnungen eindeutig sein müssen. Bei Angabe einer bereits verwendeten Pinbezeichnung erfolgt daher eine Verifikationsabfrage, in der der Anwender den Ersatz des entsprechenden Pins ausdrücklich bestätigen muss. Bei der nachfolgenden Abfrage nach dem Bibliotheksteilnamen, d.h. nach dem Namen des gewünschten Padstacksymbols wird zunächst ein Popupmenü zur Auswahl der Bibliotheksdatei angeboten, wobei die Dateinamensliste aus dem im BAE-Setup definierten Pfadnamen für die Layoutbibliothek abgeleitet wird, d.h. es werden alle im Verzeichnis der im System angemeldeten Standardlayoutbibliothek enthaltenen DDB-Dateien aufgelistet. Nach Auswahl der Layoutbibliothek (hier kann mit
auch die aktuell bearbeitete DDB-Datei selektiert werden) erfolgt die Abfrage nach dem gewünschten Padstacksymbol (mit entsprechendem Popupmenü). Padstacksymbole können wahlweise auch direkt durch Eingabe des Bibliotheksdateinamens, eines Schrägstrichs
(/ ) und des Elementnamens spezifiziert werden (ein Fragezeichen anstelle des Elementnamens aktiviert hierbei wiederum ein Popupmenü mit den in der angegebenen Bibliotheksdatei enthaltenen Padstacksymbolen). Durch die Eingabe eines Leerstrings auf die Abfrage nach dem Padstacksymbol wird das zuletzt mit
selektierte Padstacksymbol ausgewählt (sofern zuvor bereits ein solches spezifiziert wurde).
Definieren Sie die Anschlüsse
1 und
2 des Bauteils durch Laden und Platzieren des in
Kapitel 4.2.2 erstellten Padstacksymbols
q1.4 :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | 1 |
Bibliotheksteilname ? | q1.4 |
Positionieren auf [0.1",0.1"] | |
Neues Bauteil | |
Bauteilname ? | 2 |
Bibliotheksteilname ? | |
Positionieren auf [0.5",0.1"] | |
Wird bei der Abfrage nach dem Bibliotheksteilnamen für den zu ladenden Padstack ein Leerstring eingegeben (Betätigen der Eingabetaste
), dann verwendet das System das zuvor geladene Padstacksymbol. Durch die Definition der Bauteilanschlüsse ist das Bauteil von der Logik her bereits vollständig beschrieben. Was nun noch fehlt, sind z.B. Zeichnungsinformationen, die für die CAM-Ausgabe benötigt werden.
Zeichnungsinformation für den Bestückungsplan
Definieren Sie mit den folgenden Kommandos eine Dokumentarlinie auf der Dokumentarlage Bestueckungsplan (Seite 2) zur Kennzeichnung des Bauteilumrisses:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.15",0.05"] | |
Positionieren auf [0.45",0.05"] | |
Positionieren auf [0.45",0.15"] | |
Positionieren auf [0.15",0.15"] | |
Positionieren auf [0.15",0.05"] | |
Fertig | |
Definieren Sie nun mit den folgenden Kommandos zwei Linien vom Bauteilumriss zu den Bauteilanschlüssen auf der Dokumentarlage Bestueckungsplan:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.10",0.10"] | |
Positionieren auf [0.15",0.10"] | |
Fertig | |
Flaeche kopieren | |
Positionieren auf [0.10",0.10"] | |
Positionieren auf [0.45",0.10"] | |
Platzhalter für den Bauteilnamen
Tragen Sie mit den folgenden Kommandos auf der Dokumentarlage Bestueckungsplan (Seite 2) den Text
$ ein:
Texte, Bohrungen | |
Neuer Text | |
Dokumentarlage | |
Bestueckungsplan | |
Text ? | $ |
Positionieren auf [0.15",0.05"] | |
Anstelle des
$ -Zeichens erscheint auf Layoutebene der Bauteilname. Derartige Textdefinitionen können später für die Bestückdatenausgabe verwendet werden. Bei der Bestückdatenausgabe werden anstelle eines Plots die auf der betreffenden Lage definierten Texte mit Koordinate und Drehwinkel ausgegeben. Aus diesem Grund ist dafür zu sorgen, dass der Text exakt auf die Position des Pickpunkts für den Bestückautomaten gesetzt wird. Zusätzlich darf die Position des Textes für die Bestückdatenausgabe auf Layoutebene nicht versehentlich (durch die Funktion
im Menü
) verändert werden. Dies kann durch eine entsprechende Definition der betreffenden Bestückdaten-Dokumentarlage mit Hilfe des Programms
bsetup (siehe
Kapitel 7.2) sichergestellt werden.
Definition des Nullpunkts
Setzen Sie mit den folgenden Kommandos den Nullpunkt des Bauteils auf den Pin
1 :
Einstellungen | |
Nullpunkt | |
Positionieren auf Pin "1",[0.1",0.1"] | |
Der Nullpunkt des Bauteils ist auch der Referenzpunkt für die spätere Platzierung auf dem Layout. Bei Gehäusen mit gebohrten Anschlüssen ist dies meist die Position des ersten Pins, während bei SMD-Bauteilen häufig der Schwerpunkt des Symbols als Nullpunkt zu definieren ist.
Sichern des erstellten Symbols
Das Bauteilsymbol
r04a25 ist nun vollständig definiert. Vergessen Sie nicht, dieses Symbol zu sichern:
Datei | |
Speichern | |
Erstellung eines SMD-Bauteils
Generieren Sie mit den folgenden Kommandos in der Datei
demo.ddb ein Bauteil mit dem Elementnamen
so14 und einer Elementgröße von 0.5*0.4 Zoll:
Datei | |
Neues Element | |
Bauteil | |
Dateiname ? | demo |
Elementname ? | so14 |
Elementbreite (mm/") ? | 0.5" |
Elementhoehe (mm/") ? | 0.4" |
Definieren Sie die Anschlüsse
1 bis
7 durch Laden und Platzieren des in
Kapitel 4.2.2 erstellten Padstacksymbols
so :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | 1 |
Bibliotheksteilname ? | so |
Positionieren auf [0.10",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 2 |
Bibliotheksteilname ? | |
Positionieren auf [0.15",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 3 |
Bibliotheksteilname ? | |
Positionieren auf [0.20",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 4 |
Bibliotheksteilname ? | |
Positionieren auf [0.25",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 5 |
Bibliotheksteilname ? | |
Positionieren auf [0.30",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 6 |
Bibliotheksteilname ? | |
Positionieren auf [0.35",0.10"] | |
Neues Bauteil | |
Bauteilname ? | 7 |
Bibliotheksteilname ? | |
Positionieren auf [0.40",0.10"] | |
Definieren Sie die Anschlüsse
8 bis
14 durch Laden und Platzieren des Padstacksymbols
so :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | 8 |
Bibliotheksteilname ? | so |
Positionieren auf [0.40",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 9 |
Bibliotheksteilname ? | |
Positionieren auf [0.35",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 10 |
Bibliotheksteilname ? | |
Positionieren auf [0.30",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 11 |
Bibliotheksteilname ? | |
Positionieren auf [0.25",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 12 |
Bibliotheksteilname ? | |
Positionieren auf [0.20",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 13 |
Bibliotheksteilname ? | |
Positionieren auf [0.15",0.30"] | |
Neues Bauteil | |
Bauteilname ? | 14 |
Bibliotheksteilname ? | |
Positionieren auf [0.10",0.30"] | |
Definieren Sie mit den folgenden Kommandos zwei Dokumentarlinien auf der Dokumentarlage Bestueckungsplan (Seite 2) zur Kennzeichnung des Bauteilumrisses:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.100",0.100"] | |
Positionieren auf [0.425",0.100"] | |
Positionieren auf [0.425",0.300"] | |
Positionieren auf [0.075",0.300"] | |
Positionieren auf [0.075",0.125"] | |
Positionieren auf [0.100",0.100"] | |
Fertig | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.075",0.125"] | |
Positionieren auf [0.425",0.125"] | |
Fertig | |
Die Einhaltung bestimmter Abstände zwischen SMD-Bauteilen ist häufig eine Forderung der Fertigung, durch die verhindert werden soll, dass durch die Lötwelle im Schwallbad sogenannte Lötbrücken (und damit Kurzschlüsse) generiert werden. Die Definition entsprechender "Bauteil-Sperrflächen" auf einer Dokumentarlage bewirkt, dass der Online-Check des
Layouteditors Abstandsfehler meldet, wenn sich derartige Sperrflächen überlappen, d.h. die geforderten Bauteilabstände unterschritten werden. Definieren Sie mit den folgenden Kommandos eine Sperrfläche für die Bauteil-Abstandsprüfung auf der Dokumentarlage Bestueckungsplan (Seite 2):
Flaechen | |
Neue Sperrflaeche | |
Dokumentarlage | |
Bestueckungsplan | |
Positionieren auf [0.05",0.05"] | |
Positionieren auf [0.45",0.05"] | |
Positionieren auf [0.45",0.35"] | |
Positionieren auf [0.05",0.35"] | |
Fertig | |
Setzen Sie mit dem folgenden Kommando den Bauteilnullpunkt auf den Mittelpunkt des Symbols:
Einstellungen | |
Nullpunkt | |
Positionieren auf [0.25",0.20"] | |
Tragen Sie mit den folgenden Kommandos auf der Dokumentarlage Bestueckungsplan (Seite 2) den Text
$ (positioniert auf Bauteilnullpunkt mit Texthöhe 0.05") ein:
Texte, Bohrungen | |
Neuer Text | |
Dokumentarlage | |
Bestueckungsplan | |
Text ? | $ |
Textgroesse | |
Texthoehe ( 2.54mm) ? | 0.05" |
Positionieren auf [0.0",0.0"] | |
Vergessen Sie nicht, das soeben erstellte Symbol zu speichern:
Datei | |
Speichern | |
Definition eines konstruktiven Bauteilsymbols
Generieren Sie mit den folgenden Kommandos in der Datei
demo.ddb ein Bauteil mit dem Elementnamen
hole3mm und einer Elementgröße von 4*4mm:
Datei | |
Neues Element | |
Bauteil | |
Dateiname ? | demo |
Elementname ? | hole3mm |
Elementbreite (mm/") ? | 4 |
Elementhoehe (mm/") ? | 4 |
Setzen Sie den Nullpunkt und verändern Sie die obere Elementgrenze mit den folgenden Kommandos:
Einstellungen | |
Nullpunkt | |
Positionieren auf [0.075",0.075"] | |
Obere Elementgrenze | |
Positionieren auf [0.075",0.075"] | |
Definieren Sie den Anschluss
x durch Laden und Platzieren des in
Kapitel 4.2.2 erstellten Padstacksymbols
drill3.0 :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | x |
Bibliotheksteilname ? | drill3.0 |
Positionieren auf [0,0] | |
Definieren Sie mit den folgenden Kommandos eine kreisförmige Dokumentarlinie auf der Dokumentarlage Bestueckungsplan (Seite 2) zur Kennzeichnung des Bauteilumrisses:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 1.6 |
Abs. Y Koordinate (mm/") ? | 0 |
Bogen rechts | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0 |
Abs. Y Koordinate (mm/") ? | 0 |
Fertig | |
Vergessen Sie nicht, das soeben erstellte Symbol zu sichern:
Datei | |
Speichern | |
4.3 Layouterstellung
In diesem Abschnitt wird anhand des in den vorhergehenden Kapiteln bearbeiteten Beispiels die Layouterstellung mit den Layoutmodulen des
Bartels AutoEngineer beschrieben. Dabei wird in der DDB-Datei
demo.ddb ein Layout mit den Elementnamen
board erstellt.
Wechseln Sie zunächst in das Verzeichnis, in dem die DDB-Datei
demo.ddb abgelegt ist und starten Sie den
AutoEngineer:
> bae
Wählen Sie den Menüpunkt
mit der Maus an, und bestätigen Sie Ihre Wahl durch Drücken der linken Maustaste:
Layout | |
Nun wird der
Layouteditor des
AutoEngineer geladen. Sollte der Programmaufruf fehlschlagen, dann deutet dies darauf hin, dass die Software nicht richtig installiert ist. Wir verweisen in diesem Zusammenhang auf die
Bartels AutoEngineer® Installationsanleitung.
4.3.1 Erstellen und Bearbeiten von Layouts
Erstellen eines neuen Layouts
Erzeugen Sie im DDB-File
demo.ddb mit den folgenden Kommandos ein neues Layout mit dem Elementnamen
board und einer Elementgröße von 3.2*2.9 Zoll:
Datei | |
Neues Element | |
Layout | |
Dateiname ? | demo |
Elementname ? | board |
Elementbreite (mm/") ? | 3.2" |
Elementhoehe (mm/") ? | 2.9" |
Nun sollte als heller Rahmen ein neues, allerdings noch leeres Layout auf dem Bildschirm erscheinen. Gibt das System z.B. die Fehlermeldung
Dieses Element existiert bereits! aus, dann existiert das Layout
board schon in der Datei
demo.ddb . In diesem Fall ist es nicht möglich, dieses Layout neu zu generieren, sondern es muss geladen werden (siehe unten). Auf die Abfrage nach dem Elementnamen des Layouts sollte unbedingt der Name der Netzliste angegeben werden, für die das Layout zu erstellen ist, denn nur dann ist es dem System möglich, die Layoutdaten mit den Netzlistendefinitionen zu korrelieren.
Sie haben nun bereits ein neues Layout erzeugt. Speichern Sie dieses ab, und springen Sie zurück in die BAE-Shell:
Datei | |
Speichern | |
Datei | |
Hauptmenue | |
Bearbeiten eines bestehenden Layouts
Rufen Sie nun erneut das Layoutsystem auf, und laden Sie mit folgenden Kommandos das im vorhergehenden Arbeitschritt erzeugte Layout; da das Layoutelement bereits existiert, können sowohl der Dateiname als auch der Elementname wahlweise auch über das Popupmenü durch Mausklick selektiert werden:
Datei | |
Laden | |
Layout | |
Dateiname ? | demo |
Elementname ? | board |
Nun erscheint das bereits erstellte Layout auf dem Schirm. Beim Versuch, ein Element zu laden, meldet das System
Datei nicht gefunden! , wenn die DDB-Datei nicht existiert, bzw.
Plan nicht gefunden! , wenn das gewählte Element nicht in der DDB-Datei gefunden werden konnte.
Beim Aufruf des
Layouteditors ist dem System der Dateiname des zuvor in einem anderen BAE-Programm-Modul bearbeiteten Elements bekannt. Die Spezifikation dieses systemweiten Projektnamens kann durch Selektion des Buttons
im Dateinamens-Popupmenü oder durch die Eingabe eines Leerstrings (Betätigen der Eingabetaste
) auf die Abfrage nach dem Dateinamen erfolgen.
Die Selektion des Buttons
im Elementnamens-Popupmenü oder die Eingabe eines Leerstrings (Betätigen der Eingabetaste
) auf die Abfrage nach dem Elementnamen bewirkt, dass das System automatisch den über das Setup voreingestellten Defaultnamen für das Layoutelement verwendet (siehe hierzu auch die Beschreibung des Utilityprogramms
bsetup im
Kapitel 7.2 dieses Handbuchs).
Das Layout wird beim Laden dynamisch aufgebaut. So wird zunächst das Layout selbst in den Speicher gelesen und dann (sofern bereits auf dem Layout vorhanden) die zugehörigen Bauteilelemente aus derselben Projektdatei. Diese wiederum laden die benötigten Padstacks. Die Padstacks ihrerseits laden die darauf definierten Pads. Existiert in der Projektdatei eine Netzliste, deren Name identisch mit dem Layoutelementnamen ist, dann wird auch diese geladen (Connectivity Generierung). Bei vorhandener Netzliste sind die Prüfroutinen des Systems in der Lage, das Leiterplatten-Design in jeder Phase des Entwurfs mit den Vorgaben in der Netzliste zu korrelieren. So hält das System ständig die Informationen über fehlende Bauteile, offene Verbindungen, Kurzschlüsse, usw. für den Anwender bereit.
Gibt das System beim Laden des Layouts die Meldung
Einige angeschlossene Pins fehlen! aus, dann bedeutet dies, dass noch nicht alle in der Netzliste definierten Bauteile auf dem Layout platziert sind.
Stellen Sie vor den nächsten Arbeitschritten die Koordinatenanzeige auf Inch ein:
Einstellungen | |
Koordinatenanzeige | |
inch Anzeige | |
Die Koordinaten für die Positionierung des Kursors lassen sich nun rechts oben im Info-Feld in der Maßeinheit Inch ablesen.
Platinenumrandung
Bevor Sie mit der Platzierung der Bauteile beginnen, sollten Sie die Platinenumrandung festlegen. Definieren Sie mit den folgenden Kommandos die in
Abbildung 4-2 gezeigte Platinenumrandung:
Flaechen | |
Neue Umrandung | |
Positionieren auf [0.1",0.3"] | |
Positionieren auf [0.2",0.3"] | |
Bogen links | |
Positionieren auf [0.4",0.3"] | |
Positionieren auf [0.6",0.3"] | |
Positionieren auf [2.8",0.3"] | |
Positionieren auf [2.8",2.2"] | |
Positionieren auf [2.3",2.7"] | |
Positionieren auf [0.4",2.7"] | |
Bogen links | |
Positionieren auf [0.4",2.5"] | |
Positionieren auf [0.2",2.5"] | |
Positionieren auf [0.1",2.5"] | |
Fertig | |
Die Platinenumrandung ist nicht zu verwechseln mit den Elementgrenzen. Während die Elementgrenzen die Aufgabe haben, die Größe des (Layout-)Elements definiert zu halten, stellt die Platinenumrandung sowohl die Begrenzung für die Platzierung als auch für das Verlegen von Leiterbahnen dar. Die Definition der Platinenumrandung ist für z.B. für den
Autorouter-Lauf zwingend notwendig. Darüber hinaus schlägt der
Autorouter-Aufruf auch fehl, wenn Bauteile außerhalb der Platinenumrandung platziert wurden.
Passermarken
Definieren Sie nun mit den folgenden Kommandos auf der Dokumentarlage Passermarken (wie in
Abbildung 4-2 dargestellt) zwei Passermarken:
Flaechen | |
Dokumentarlinie | |
Passermarken | |
Positionieren auf [0.1",0.1"] | |
Positionieren auf [0.1",0.2"] | |
Positionieren auf [0.2",0.1"] | |
Positionieren auf [0.2",0.2"] | |
Positionieren auf [0.1",0.1"] | |
Fertig | |
Flaeche kopieren | |
Positionieren auf [0.1",0.1"] | |
Positionieren auf [2.7",2.6"] | |
Die Passermarken sind Kontrollsymbole, die der Justierung der später ausgegebenen Plots dienen. Die Dokumentarlage für die Passermarken kann mit Hilfe des Setups festgelegt werden (siehe Programm
bsetup,
Kapitel 7.2).
Abbildung 4-2: Layout mit Platinenumrandung und Passermarken
Oberste Lage
Im Layout kann eine Signallage zur
definiert werden. Diese Lage ist sehr nützlich, wenn die Lagenzahl oder die Lagenzuordnung bei der Erstellung der Bibliothek noch nicht feststeht. Die Zuweisung wird im Menü
über die Funktion
durchgeführt und mit dem Layout gespeichert:
Einstellungen | |
Oberste Lage | |
Nach der Erzeugung eines neuen Layouts ist die Oberste Lage per Default auf die Signallage 2 eingestellt. Die Oberste Lage definiert auch die Position des Spiegels beim Spiegeln z.B. eines SMD-Bauteils. Es wird stets gegen die so festgelegte Lage gespiegelt, alle Lagen oberhalb der Obersten Lage bleiben unberührt. Im
Autorouter wird die Routinglagenzahl automatisch mit der Obersten Lage gleichgesetzt.
Grundsätzlich bestehen zwei Philosophien für die Definition der Obersten Lage. Zum einen ist es möglich, jeweils bei der Layouterstellung die Oberste Lage explizit zu definieren. Dies setzt allerdings den konsistenten Aufbau der Bibliothek voraus. D.h. in der Bibliothek müssen alle auf der Bauteilseite zu definierenden Elemente (wie z.B. SMD-Anschlüsse) auch tatsächlich der Obersten Lage zugewiesen werden, und darüber hinaus müssen die Definitionen für die Innenlagen bei zu erstellenden Multilayer-Layouts richtig durchgeführt werden. Zur Vereinfachung der Pflege und Definition von Bibliothekselementen stellt Ihnen das System die beiden Speziallagen
und
zur Verfügung. Die Signallage
dient der Definition von Objekten, die auf allen Signallagen (von Signallage 1 bis einschließlich Oberste Lage) erscheinen sollen. Die Signallage
dient der Definition von Padformen, die auf allen Signal-Innenlagen (zwischen der Signallage 1 und der Obersten Lage) erscheinen sollen. Daneben besteht die Möglichkeit, die Oberste Lage stets mit der Signallage 2 gleichzusetzen und die Lagen 3, 4, usw. als die Innenlagen zu betrachten. Dies erleichtert möglicherweise die Pflege der Layoutbibliothek, der Anwender muss allerdings bei Layouts mit mehr als 2 Signallagen vor dem
Autorouter-Start die Routinglagenzahl explizit einstellen.
Mindestabstände
Die Mindestabstände für die Abstandsüberprüfungen durch den Design Rule Check werden im Menü
mit den Abstandsfunktionen festgelegt und mit dem Layout abgespeichert:
Einstellungen | |
Mit der Funktion
wird der Mindestabstand von Leiterbahn zu Leiterbahn festgelegt. Mit der Funktion
lässt sich der Mindestabstand von Leiterbahn zu Kupfer (z.B. Lötaugen) definieren. Die Funktion
legt den Mindestabstand von Kupfer zu Kupfer (z.B. Kupferfläche zu Lötauge) fest. Bei der Erzeugung eines neuen Layouts sind alle diese Mindestabstandswerte per Default auf 0.3mm gesetzt. Die Werte für die Mindestabstände wirken im Design Rule Check und sollten daher vor dem Platzieren von Bauteilen, dem Verlegen von Leiterbahnen, usw. entsprechend den Fertigungsvorgaben definiert werden. Beachten Sie, dass eine falsche (weil z.B. zu tolerante) Einstellung der Abstandsparameter möglicherweise zu fehlerhaften Layouts und damit zu einem mit erheblichen Kosten verbundenen Nachbearbeitungsaufwand führen kann.
Netzbezogene Mindestabstände, die durch das Netzattribut
MINDIST ggf. vorgegeben wurden, werden vom Design Rule Check bei der Prüfung der Abstandshaltung zu Leiterbahnen bzw. Potentialflächen gesondert berücksichtigt.
4.3.2 Bauteile, Platzierung
Das Menü
bietet die Möglichkeit, Gehäusebauformen aus selektierbaren Layoutbibliotheken auf das Layout zu laden und diese zu platzieren. Auch können einmal platzierte Bauteile wieder gelöscht werden.
Eingaberaster
Grundsätzlich können im Bartels AutoEngineer alle Grafikeingaben in beliebigen Rastern oder auch rasterfrei erfolgen. Dennoch sollte die Bauteilplatzierung in einem definierten Raster vorgenommen werden, um sicherzustellen, dass das spätere Verlegen der Leiterbahnen in einem geeigneten Raster erfolgen kann. Um hohe Packungsdichten auf der Leiterkarte zu erreichen, sollte es z.B. im später festzulegenden Routingraster für den
Autorouter möglich sein, Leiterbahnen zwischen benachbarten Bauteilanschlüssen zu verlegen. Stellen Sie also zunächst mit folgenden Kommandos das Eingaberaster auf 1/10 Zoll ein:
Ansicht | |
Raster/Winkel | |
Eingaberaster | |
1/10 Zoll | |
W+R einhalten | |
Bibliothekszugriff
Die Funktion
aus dem Menü
ermöglicht die Selektion der Layoutbibliothek, aus der die Gehäusebauformen geladen werden sollen. Überprüfen Sie zunächst mit folgenden Kommandos, wie der Bibliothekspfad gesetzt ist:
Einstellungen | |
Bibliotheksname | |
Bibliothek ('c:/baelib/laylib.ddb') ? | |
Im Prompt zur Abfrage nach der Bibliothek zeigt das System den Namen der aktuell eingestellten Bibliothek an. Nach dem Aufruf des
Layouteditors ist dies zunächst der Name der über das Setup eingestellten Standard-Layoutbibliothek (siehe hierzu die Beschreibung des Utilityprogramms
bsetup im
Kapitel 7.2 dieses Handbuchs).
Durch die Eingabe eines leeren Strings auf die Abfrage nach der Bibliothek ändert sich der Bibliotheksname nicht. Durch die Eingabe von
- wird der Bibliotheksname zurückgesetzt, d.h. es ist dann keine Bibliothek selektiert. Die Eingabe von
! bzw.
. setzt den Bibliotheksnamen wieder auf die durch das Setup eingestellte Bibliothek. Überprüfen Sie dies mit folgenden Kommandos:
Einstellungen | |
Bibliotheksname | |
Bibliothek ('c:/baelib/laylib.ddb') ? | - |
Bibliotheksname | |
Bibliothek ('') ? | ! |
In den Windowsversionen der BAE-Software erfolgt die Abfrage des Bibliotheksnamens über einen Dateiabfragedialog.
Das Datenbankkonzept des
Bartels AutoEngineer impliziert, dass auch jede Projektdatei als Bibliothek fungieren und als solche im System angemeldet werden kann. Aktiviert der Anwender die Funktion zum Laden eines Bauteils, dann sucht das System zunächst innerhalb der aktuellen Projektdatei nach dem angeforderten Bibliotheksteil. Ist das Element nicht hierin schon enthalten, wird die Suche in der im System angemeldeten Default-Bibliothek fortgesetzt. Immer, wenn ein Bauteil aus einer Bibliothek auf das Layout geladen wird, erstellt das System automatisch eine Kopie des entsprechenden Layoutsymbols in der aktuellen Projektdatei. Das Layoutsymbol ist dann in der aktuellen Projektdatei abgespeichert, wird also bei mehrfachem Platzieren nicht mehr aus der entsprechenden Bibliothek geholt.
Abbildung 4-3 verdeutlicht das Schema des Bibliothekszugriffs innerhalb des Layoutsystems.
Abbildung 4-3: Layout-Bibliothekszugriff
Das Umschalten der Default-Bibliothek innerhalb des Systems ist im Grunde nur dann notwendig bzw. sinnvoll, wenn Bauteilsymbole aus einer nicht über den Bibliothekspfad erreichbaren Bibliothek zum ersten Mal im Layout platziert werden sollen, wie in unserem Fall z.B. aus der Bibliotheksdatei
demolib.ddb im aktuellen Verzeichnis. Stellen Sie nun den Bibliothekspfad auf
demolib.ddb ein:
Einstellungen | |
Bibliotheksname | |
Bibliothek ('c:/baelib/laylib.ddb') ? | demolib |
Durch obige Eingabe ist die DDB-Datei
demolib.ddb als aktuelle Layoutbibliothek im System angemeldet, und es können nun Layoutsymbole aus dieser Bibliothek auf das aktuell geladene Layout geladen werden.
Manuelle Bauteilplatzierung
Zur manuellen Bauteilplatzierung stehen die Funktionen
,
und
aus dem Menü
zur Verfügung. Diese Funktionen berücksichtigen die aktuell zur Platzierung selektierte Bauteilmenge. Nach dem Laden eines Layouts sind zunächst alle Bauteile selektiert. Mit den Funktionen des Untermenüs
lässt sich die Menge der Bauteile für die Platzierung beschränken. Sind bei Aufruf der Funktion
bereits alle selektierten Bauteile platziert, dann wird die Fehlermeldung
Alle selektierten Bauteile sind bereits platziert! angezeigt. Diese Meldung weist gleichzeitig darauf hin, dass noch unselektierte, unplatzierte Bauteile vorhanden sind. Im Popupfenster für die Bauteilnamensauswahl sind platzierte selektierte Bauteile als
[ name ] aufgeführt, unplatzierte selektierte Bauteile als
: name , unplatzierte unselektierte Bauteile als
< name > und platzierte unselektierte Bauteile als
( name) . Weitere Informationen zur Definition von Bauteilmengen für die Platzierung finden Sie in
Kapitel 4.4.1.
Mit der Funktion
aus dem Menü
können Bauteile auf das aktuell bearbeitete Layout geladen und platziert werden. Auf Layoutebene wird mit der Abfrage nach dem Bauteilnamen ein Popupmenü mit der Liste der Bauteilnamen aus der Netzliste aktiviert. Hierin werden bereits platzierte Bauteile in eckigen Klammern
([ ,
] ) und unplatzierte Bauteile nach einem Doppelpunkt
(: ) angezeigt. Wird der Name eines unplatzierten Netzlistenbauteils selektiert bzw. spezifiziert, dann wird dieses Bauteil mit der zugehörigen Gehäusebauform geladen und kann platziert werden. Bei Selektion bzw. Spezifikation eines bereits platzierten Bauteils wird eine Neuplatzierung nur dann durchgeführt, wenn der Anwender dies in einer entsprechenden Abfrage ausdrücklich bestätigt. Die Eingabe eines Leerstrings bzw. die Selektion des Buttons
im Popupmenü bewirkt die Selektion des nächsten noch nicht platzierten Bauteils aus der Netzliste. Dieser Automatismus wird auch mit der Funktion
angeboten und funktioniert solange, bis alle Netzlistenbauteile (aus der Bauteilmenge) platziert sind. Bei Angabe eines nicht in der Netzliste enthaltenen Bauteilnamens (d.h. bei Spezifikation eines Konstruktivbauteils durch die Eingabe eines nicht im Popupmenü angezeigten Namens) wird zusätzlich eine Abfrage nach dem gewünschten Bibliothekselement aktiviert. Hierbei wird zunächst ein Popupmenü zur Auswahl der Bibliotheksdatei angeboten, wobei die Dateinamensliste aus dem im BAE-Setup definierten Pfadnamen für die Layoutbibliothek abgeleitet wird, d.h. es werden alle im Verzeichnis der im System angemeldeten Standardlayoutbibliothek enthaltenen DDB-Dateien aufgelistet. Bei der Auswahl der Layoutbibliothek kann über den Button
bzw. durch Eingabe von
> die aktuell über die Funktion
aus dem Menü
selektierte Standardlayoutbibliothek gewählt werden. Mit
wird die aktuell bearbeitete DDB-Datei selektiert. Nach Auswahl der Layoutbibliothek erfolgt die Abfrage nach dem gewünschten Bibliothekselementnamen (mit entsprechendem Popupmenuü). Bibliothekselemente können wahlweise auch direkt durch Eingabe des Bibliotheksdateinamens, eines Schrägstrichs
(/ ) und des Elementnamens spezifiziert werden (ein Fragezeichen anstelle des Elementnamens aktiviert hierbei wiederum ein Popupmenü mit den in der angegebenen Bibliotheksdatei enthaltenen Bibliothekslementen). Durch die Eingabe eines Leerstrings auf die Abfrage nach dem Bibliothekselementnamen wird das zuletzt mit
selektierte Bibliothekselement ausgewählt (sofern zuvor bereits ein Bibliothekselement spezifiziert wurde).
Beachten Sie, dass die Popupmenüs zur Auswahl des Bauteilnamens auch in den entsprechenden Routinen der Funktionen
und
integriert sind, und dass die Popupmenüs zur Auswahl des Bibliothekselements in der Funktion
auch für die Platzierung von Pins (d.h. zur Selektion von Padstacks) auf Bauteilebene, sowie zum Laden von Pads auf Padstackebene angeboten werden.
Laden und platzieren Sie mit den folgenden Kommandos das Bauteil
IC10 :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | ic10 |
Positionieren auf [1.2",1.8"] | |
Nach Angabe des Bauteilnamens überprüft das System, ob ein Bauteil mit diesem Namen in der Netzliste existiert. Ist dies der Fall, dann wird das in der Netzliste zugewiesene Gehäuse (in obigem Beispiel
dil14 ) aus der Bibliothek geladen und kann platziert werden. Sollte das System hierbei die Meldung
Plan nicht gefunden! ausgeben, dann ist das benötigte Layoutsymbol weder in der Projektdatei noch in der eingestellten Bibliothek verfügbar. In diesem Fall sollten Sie überprüfen, ob Sie auf die richtige Layoutbibliothek zugreifen (Funktion
im Menü
).
Laden und platzieren Sie mit den folgenden Kommandos die beiden Bauteile
hole1 und
hole2 mit der in
Kapitel 4.2.3 in der Projektdatei
demo.ddb erstellten Gehäusebauform
hole3mm :
Bauteile | |
Neues Bauteil | |
Bauteilname ? | hole1 |
Bibliotheksteilname ? | hole3mm |
Positionieren auf [0.4",0.3"] | |
Neues Bauteil | |
Bauteilname ? | hole2 |
Bibliotheksteilname ? | |
Positionieren auf [0.4",2.5"] | |
Die beiden (konstruktiven) Bauteile
hole1 und
hole2 sind nicht in der Netzliste definiert, d.h. auch die dafür zu verwendende Gehäusebauform ist dem System nicht bekannt. Daher erfolgt für diese Bauteile jeweils eine Abfrage nach dem Bibliotheksteilnamen. Hierbei wird zunächst ein Popupmenü mit allen im Bibliotheksverzeichnis verfügbaren Bibliotheksdateien angezeigt. Mit dem Button
ist dabei der Zugriff auf die Layoutsymbole der aktuellen DDB-Datei, d.h. auf die Projektdatenbank möglich. Nach der Auswahl einer der angebotenen Bibliotheksdateien erfolgt die Aktivierung eines weiteren Popupmenüs mit der Liste der in der selektierten Bibliothek verfügbaren Symbole. Bei Eingabe eines Leerstrings (Betätigen der Eingabetaste
) auf die Abfrage nach dem Bibliotheksteilnamen wird das zuletzt geladene Layoutsymbol verwendet.
Laden und platzieren Sie den Steckverbinder
x1000 mit den folgenden Kommandos:
Bauteile | |
Neues Bauteil | |
Bauteilname ? | x1000 |
Drehung links | |
Positionieren auf [2.4",1.0"] | |
Das Untermenü, das während der Platzierung von Bauteilen über die rechte Maustaste aufgerufen werden kann, erlaubt die Positionierung des Bauteils auf eine Absolutkoordinate, die Drehung (auch um beliebige Winkel), oder die Spiegelung (auf die Lötseite; für SMD-Bauteile).
Platzieren Sie mit den folgenden Kommandos ein weiteres Bauteil:
Bauteile | |
Neues Bauteil | |
Bauteilname ? | |
Spiegelung ein | |
Positionieren auf [1.8",1.4"] | |
Ein Leerstring (Betätigen der Eingabetaste
) auf die Abfrage nach dem Bauteilnamen hat zur Folge, dass automatisch das nächste in der Netzliste definierte Bauteil geladen wird. In obigem Beispiel ist dies der Kondensator
c100 , der in SMD-Bauform ausgeführt ist und auf die Lötseite (gespiegelt) platziert wird.
Der Automatismus zum Laden des nächsten in der Netzliste definierten Bauteils (ohne Kenntnis des Bauteilnamens) kann auch mit der Funktion
aktiviert werden. Platzieren Sie mit Hilfe dieser Funktion das Bauteil
c101 :
Bauteile | |
Naechstes Bauteil | |
Spiegelung ein | |
Positionieren auf [1.4",1.4"] | |
Platzieren Sie mit den folgenden Kommandos das Relais
k1 , die Widerstände
r100 ,
r101 ,
r102 ,
r103 ,
r104 und
r105 , sowie den Schalter
s1000 auf dem Layout:
Bauteile | |
Naechstes Bauteil | |
Positionieren auf [0.8",0.8"] | |
Naechstes Bauteil | |
Positionieren auf [1.0",2.4"] | |
Naechstes Bauteil | |
Positionieren auf [1.6",2.4"] | |
Naechstes Bauteil | |
Drehung links | |
Positionieren auf [1.6",1.2"] | |
Naechstes Bauteil | |
Drehung links | |
Positionieren auf [1.4",1.2"] | |
Naechstes Bauteil | |
Positionieren auf [2.1",2.1"] | |
Naechstes Bauteil | |
Positionieren auf [2.1",1.8"] | |
Naechstes Bauteil | |
Drehung rechts | |
Positionieren auf [0.2",2.3"] | |
Sind nacheinander mehrere Bauteil zu laden, die gespiegelt (z.B. SMD-Bauteile) bzw. gedreht zu platzieren sind, dann empfiehlt es sich, Standardwinkel und Spiegelungsmodus für die Platzierung vorher entsprechend einzustellen. Setzen Sie mit den folgenden Kommandos den Standardwinkel für die Platzierung auf 270 Grad, und laden Sie die noch fehlenden Schalter
s1001 bis
s1009 :
Bauteile | |
Standardwinkel | |
270 Grad links | |
Naechstes Bauteil | |
Positionieren auf [0.2",2.1"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",1.9"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",1.7"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",1.5"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",1.3"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",1.1"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",0.9"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",0.7"] | |
Naechstes Bauteil | |
Positionieren auf [0.2",0.5"] | |
Platzieren Sie die nun noch fehlenden Bauteile
(v1 und
v1000 ) mit den folgenden Kommandos:
Bauteile | |
Naechstes Bauteil | |
Eingabe Winkel | |
Drehwinkel (Deg./(R)ad) ? | -45 |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.825" |
Abs. Y Koordinate (mm/") ? | 1.225" |
Naechstes Bauteil | |
Positionieren auf [1.2",1.6"] | |
Naechstes Bauteil | |
Die nach dem letzten Aufruf der Funktion
ausgegebene Meldung
Alle Bauteile sind bereits platziert! weist darauf hin, dass alle in der Netzliste definierten Bauteile auf dem Layout platziert sind.
Wenn Sie alle Arbeitsschritte korrekt ausgeführt haben, dann sollte das Layout nun entsprechend
Abbildung 4-4 aussehen.
Abbildung 4-4: Layout mit platzierten Bauteilen
Bauteile bewegen und löschen
Mit Hilfe der Funktion
können bereits platzierte Bauteile bewegt, gedreht und gespiegelt werden (die rechte Maustaste aktiviert ein entsprechendes Untermenü). Das Löschen eines platzierten Bauteils erfolgt mit der Funktion
. Testen Sie diese Funktionen auf dem aktuell geladenen Layout. Bedienen Sie sich hierbei der Funktionen
und
, um wieder in den Zustand gemäß
Abbildung 4-4 zurückzukehren.
Gehäusebauform ändern
Das während der interaktiven Bauteilplatzierung über die rechte Maustaste erreichbare Untermenü enthält die Funktion
. Diese Funktion ermöglicht die Änderung der Gehäusebauform des aktuell bearbeiteten Bauteils. Hierzu wird ein Auswahlmenü mit der Liste der über
eine SCM-Symbol-Attributwertzuweisung an das Attribut
$plname der Form
[bauform1,bauform2,...] oder über
loglib (siehe
Kapitel 7.11) definierten alternativen Gehäusebauformen angezeigt. Eine durch die Funktion
ausgegebene Fehlermeldung der Form
Es sind keine Alternativbauformen definiert! besagt, dass für das aktuell bearbeitete Bauteil keine alternativen Gehäusebauformen definiert sind; die Fehlermeldung
Einige angeschlossene Pins fehlen! wird ausgegeben, wenn die Pindefinitionen des selektierten Alternativgehäuses nicht mit den Netzlistenvorgaben für das bearbeitete Bauteil übereinstimmen. Nach Änderung von Bauformen wird beim Speichern des Layouts ein spezieller Datenbankeintrag erzeugt, der im
Schaltplaneditor ausgewertet wird und die automatische Durchführung notwendiger
-Prozesse beim Laden von Schaltplänen aktiviert (siehe hierzu
Kapitel 2.7. Im
Packager wird dieser Datenbankeintrag ebenfalls ausgewertet, um den Anwender ggf. über eine Bestätigungsabfrage auf die Notwendigkeit zur Durchführung der
vor dem nächsten
Packager-Lauf hinzuweisen (siehe hierzu
Kapitel 3.2.3).
Mincon-Funktion, Airline-Anzeige
Zur Unterstützung des Anwenders beim manuellen Platzieren werden nicht realisierte Verbindungen als Luftlinien ("Airlines", "Unroutes") dargestellt. Die
-Funktion sorgt dafür, dass diese Airlines dynamisch zum jeweils nächst gelegenen Anschlusspunkt aktualisiert werden. Achten Sie während des Bewegens von Bauteilen auf die Arbeitsweise der
-Funktion. Überprüfen Sie mit den Kommandos
Einstellungen | |
Mincon. Funktion | |
Ecken Horizontal | |
Mincon. Funktion | |
Pins Vertikal | |
Mincon. Funktion | |
Kein Mincon | |
Mincon. Funktion | |
Ecken H+V Summe | |
die verschiedenen Methoden zur Ermittlung des nächst gelegenen Anschlusspunktes, und ändern Sie über die Funktion
im Menü
dabei auch die Art der Luftliniendarstellung. Dabei wird mit der Option
die Airlineanzeige während der Bauteilbewegung deaktiviert. Mit
werden die Luftlinien zwar (statisch) angezeigt, es unterbleibt jedoch eine dynamische Neuberechnung der jeweils kürzesten Unroutes entsprechend der aktuell eingestellten
-Funktion wie sie mit der Option
aktiviert werden kann. Die dynamische Airlineanzeige ist per Default eingestellt (beachten Sie hierbei, wie die Airlines während des Bewegens von Bauteilen zum jeweils nächstgelegenen Pin bzw. Kupfereckpunkt "springen").
Über die -Optionen
und
kann eine netzspezifische Airlineanzeige aktiviert werden. Damit ist es möglich, spezielle Netze in der Airlineanzeige auszublenden
() bzw. nach Bedarf wieder einzublenden
(). Die Auswahl der ein- bzw. auszublendenden Netze erfolgt über ein Netznamenspopupmenü das wahlweise auch die Angabe von Netznamensmustern zur simultanen Selektion verschiedener Netze gestattet.
Die -Option
erzwingt die grafische Anzeige aller Airlines, während mit
sämtliche Airlines ausgeblendet werden.
Während des Platzierens von Bauteilen stehen in dem über die rechte Maustaste erreichbaren Kontextmenu die Optionen
und
zur Auswahl zwischen bauteilspezifischer und globaler Airlineanzeige zur Vefügung.
4.3.3 Text und Grafik
Auf Layoutebene können Texte (auf Dokumentar- oder Signallagen) und Grafiken (Dokumentarlinien, Dokumentarflächen, Kupferflächen, Potentialflächen, Sperrflächen, Füllbereiche) definiert werden.
Stellen Sie vor den nächsten Arbeitsschritten (sofern nicht schon geschehen) die Koordinatenanzeige auf Inch (Menü
) und das Eingaberaster auf 1/20 Zoll ein (Menü
).
Eingabe von Texten auf dem Layout
Definieren Sie mit den folgenden Kommandos den Text
DEMO auf der Dokumentarlage Bestueckungsplan (Seite 2) mit einer Textgröße von 4mm, und platzieren Sie diesen Text rechts oben im Layout:
Texte, Bohrungen | |
Neuer Text | |
Dokumentarlage | |
Bestueckungsplan | |
Text ? | DEMO |
Eingabe Winkel | |
Drehwinkel (Deg./(R)ad.) ? | -45 |
Textgroesse | |
Texthoehe ( 2.54mm) ? | 4 |
Positionieren auf [2.4",2.6"] | |
Definieren Sie mit den folgenden Kommandos auf der Bauteilseite (Oberste Lage bzw. Bestueckseite) den (Kupfer-)Text
Component Side :
Texte, Bohrungen | |
Neuer Text | |
Bestueckungslage | |
Text ? | Component Side |
Textgroesse | |
Texthoehe ( 4.00mm) ? | 2.54 |
Positionieren auf [1.00",2.55"] | |
Die Einstellung der Textgröße bleibt als Default für nachfolgende Textdefinitionen erhalten. Definieren Sie mit den folgenden Kommandos, auf der Lötseite (Signallage 1) den (Kupfer-)Text
Solder Side (gedreht und gespiegelt):
Texte, Bohrungen | |
Neuer Text | |
Lage 1 | |
Text ? | Solder Side |
Eingabe Winkel | |
Drehwinkel (Deg./(R)ad.) ? | 180 |
Spiegelung ein | |
Positionieren auf [1.80",2.55"] | |
Auf Signallagen definierte Kupfertexte werden vom Design Rule Check geprüft, d.h. es werden Abstandsfehler gemeldet, wenn sich solche Texte mit anderem Kupfer (Lötaugen, Leiterbahnen, usw.) auf der derselben Signallage überschneiden.
Bewegen von Bauteilnamen und Bauteilattributtexten
Mit der Funktion
können Bauteilnamen verschoben werden. Bewegen Sie die Namen der beiden SMD-Widerstände
r104 und
r105 jeweils über das entsprechende Bauteil:
Texte, Bohrungen | |
Namen bewegen | |
Positionieren auf "r104",[2.1",2.1"] | |
Positionieren auf [2.1",2.15"] | |
Namen bewegen | |
Positionieren auf "r105",[2.1",1.8"] | |
Positionieren auf [2.1",1.85"] | |
Mit der Funktion
aus dem Menü
bzw.
können Bauteilattributtexte selektiv platziert bzw. bewegt werden. Die mit
festgelegten Textoffsets haben Vorrang vor ggf. mit
vorgegebenen globalen Textoffsets. Die Selektion des zu verschiebenden Attributs erfolgt durch Anklicken des Attributtexts. Der Bauteilname selbst gilt ebenfalls als Attribut
($ ) und kann somit mit der Funktion
auch selektiv verschoben werden, ohne die Platzierung der übrigen Bauteilattribute zu beeinträchtigen.
Bauteiltexte gruppenselektierter Bauteile können mit der Funktion
des
User Language-Programms
gedgroup wieder auf die im Bauteilbibliothekselement definierten Defaultpositionen zurückgesetzt werden.
Bemaßung
Mit dem
# -Zeichen als neuem Text wird eine Meßfunktion aktiviert, die die Distanz zweier danach abgefragter Punkte ermittelt und als Text darstellt. Bemaßen Sie mit den folgenden Kommandos auf dem Bestückungsplan die Länge der horizontalen Platinenkante unten rechts an der Leiterkarte (die Bemaßung wird in der Maßeinheit durchgeführt, die über die Koordinatenanzeige eingestellt ist, und sollte demnach also einen Wert von 2.2" erzeugen):
Texte, Bohrungen | |
Neuer Text | |
Dokumentarlage | |
Bestueckungsplan | |
Text ? | # |
Positionieren auf linke Koordinate,[0.6",0.3"] | |
Positionieren auf rechte Koordinate,[2.8",0.3"] | |
Positionieren auf [1.50",0.15"] | |
Dokumentarlinien, Dokumentarflächen
Tragen Sie auf dem Bestückungsplan mit den folgenden Kommandos eine Dokumentarlinie sowie zwei pfeilförmige Dokumentarflächen zur Kennzeichnung der zuvor definierten Bemaßung ein:
Flaechen | |
Dokumentarlinie | |
Bestueckungsplan | |
Positionieren auf [0.6",0.15"] | |
Positionieren auf [0.8",0.15"] | |
Fertig | |
Dokumentarflaeche | |
Bestueckungsplan | |
Positionieren auf [0.6",0.15"] | |
Positionieren auf [0.65",0.2"] | |
Positionieren auf [0.65",0.1"] | |
Fertig | |
Dokumentarflaeche | |
Bestueckungsplan | |
Positionieren auf [2.8",0.15"] | |
Positionieren auf [2.75",0.2"] | |
Positionieren auf [2.75",0.1"] | |
Fertig | |
Kupferflächen
Definieren Sie mit den folgenden Kommandos eine kreisförmige Kupferfläche auf der Signallage 2:
Flaechen | |
Neue Kupferflaeche | |
Lage 2 | |
Positionieren auf [0.95",1.6"] | |
Bogen links | |
Positionieren auf [0.8",1.6"] | |
Fertig | |
Potentialflächen
Definieren Sie mit den folgenden Kommandos auf der Signallage 1 eine Potentialfläche für das Signalnetz
Vdd (d.h. eine Kupferfläche, die dem Netz
Vdd zugeordnet ist, und die der
Autorouter automatisch mit diesem Netz verbinden soll):
Flaechen | |
Potentialflaeche | |
Netzname ? | vdd |
Lage 1 | |
Positionieren auf [2.4",1.7"] | |
Positionieren auf [2.7",1.7"] | |
Positionieren auf [2.7",2.2"] | |
Positionieren auf [2.6",2.3"] | |
Positionieren auf [2.4",2.3"] | |
Fertig | |
Sperrflächen
Sperrflächen legen Bereiche auf der Leiterkarte fest, auf welchen keine Leiterbahnen, Kupferflächen, usw. erlaubt sind. Definieren Sie mit den folgenden Kommandos eine Sperrfläche auf der Signallage 1 sowie eine Sperrfläche auf der Signallage
:
Flaechen | |
Neue Sperrflaeche | |
Lage 1 | |
Positionieren auf [1.8",1.2"] | |
Positionieren auf [2.2",1.2"] | |
Positionieren auf [2.2",0.9"] | |
Positionieren auf [1.7",0.9"] | |
Fertig | |
Neue Sperrflaeche | |
Alle Lagen | |
Positionieren auf [0.6",2.6"] | |
Positionieren auf [0.6",2.1"] | |
Positionieren auf [0.9",2.1"] | |
Positionieren auf [0.9",2.6"] | |
Fertig | |
4.3.4 Leiterbahnen, Routing
Im Menü
sind die Funktionen für das interaktive Routen, d.h. für das manuelle Verlegen von Leiterbahnen auf Layout- bzw. Bauteilebene enthalten. Es können neue Leiterbahnen erzeugt, bestehende geändert oder gelöscht werden. Es können die Leiterbreiten einzelner Leiterbahnsegmente, von Bahnen oder ganzen Netzen geändert werden. Auch können kritische Netze (z.B. Stromversorgungskamm) ganz oder teilweise vorverlegt und fixiert werden, um zu verhindern, dass der
Autorouter die entsprechenden Leiterbahnen neu- oder umverlegt.
Grafik-Kontrollfunktionen, Eingaberaster, Bilddarstellung
Wird eine Funktion zum Verlegen oder Ändern einer Leiterbahn aktiviert, dann werden alle zum entsprechenden Signalnetz gehörenden Objekte durch Highlight angezeigt. Ist eine Verbindung realisiert, dann wird die entsprechende Airline gelöscht. Beim manuellen Routen erzeugte Kurzschlüsse oder Abstandsverletzungen werden vom Online-Check sofort (durch Highlight bzw. Einrahmung) angezeigt.
Sollte es Ihnen im eingestellten Eingaberaster nicht gelingen, einen Pin anzuschließen (weil dieser in einem zu feinen Raster liegt), dann müssen Sie auf ein feineres Eingaberaster schalten, oder u.U. das Eingaberaster über das Menü
freigeben.
Sehr hilfreich für das interaktive Routen sind die Funktionen
und
aus dem Menü
. Mit diesen Funktionen können Sie abwechselnd ein definiertes Fenster herauszoomen oder in die Übersichtsdarstellung schalten.
Wichtig für das interaktive Routen ist die Wahl der Vorzugslage, die beim Aufruf des
Layouteditors auf die Signallage 1 eingestellt ist. Die aktuell definierte Vorzugslage wird immer angewählt, wenn beim Pick eines Elements keine eindeutige Auswahl möglich ist, also z.B. beim Verlegen neuer Leiterbahnen von Lötaugen weg, die über alle Lagen definiert sind. Wenn Sie z.B. mit dem Verlegen neuer Leiterbahnen per Default auf der Bauteilseite beginnen wollen, dann empfiehlt es sich, die Vorzugslage über das Menü
entsprechend einzustellen.
Der Pickalgorithmus für Leiterbahnecken und Leiterbahnsegmente sorgt dafür, dass bei mehreren möglichen Pickelementen im Fangbereich das Leiterbahnelement mit dem minimalen Abstand zum Pickpunkt selektiert wird. Damit ist auch in Übersichtsdarstellungen ein gezieltes Anwählen von Leiterbahnen möglich. Außerdem ist der Fangbereich für die Leiterbahnanwahl unabhängig vom Zoomfaktor auf jeden Fall so groß wie die Leiterbreite, d.h. zur Selektion von Leiterbahnen ist es nicht notwendig, die Leiterbahnmitte exakt zu treffen (was bei breiten Leiterbahnen bzw. hohen Zoomfaktoren ggf. recht schwierig wäre).
Highlight Netz
Die Funktion
im Menü
bewirkt eine grafische Kennzeichnung aller zum selektierten Netz gehörenden Verbindungen durch eine spezielle Farbe ("Highlight"). Auf den Versorgungslagen werden die Kreise für Wärmefallen und Isolationen für das selektierte Netz ggf. ebenfalls gehighlighted dargestellt, und es ist auch möglich, isolierte Pins und Potentialflächen zum Highlight zu selektieren. Beim Verlegen neuer Leiterbahnen mit dem Startpunkt auf einer passiven Kupferfläche wird ein Highlight für die an der Kupferfläche angeschlossenen Netze ausgelöst. Ein aktiviertes Netzhighlight kann durch abermaliges Selektieren des Netzes oder eines zugehörigen Pins oder Potentialbereichs über die Funktion
wieder zurückgesetzt werden. Nach Aktivierung der Funktion
stehen neben der Standardoption
zusätz;ich die Optionen
zum Einfärben von Netzen und
zur Deaktivierung sämtlicher Netzhighlights zur Auswahl.
In
BAE HighEnd bewirkt die Funktion
ein Highlight bzw. eine Highlight-Rücknahme der selektierten Netze in allen aktuell geladenen Plänen der aktuellen Projektdatei auf Layout- und Schaltplanebene (globales Netz-Highlight, Cross-Probing).
Selektion der Durchkontaktierung
Für Durchkontaktierungen (Vias, Umsteiger beim Signallagenwechsel) wird (zumindest) ein Padstacksymbol benötigt. Die dazu nötige Viazuweisung muss vor dem Verlegen der Leiterbahnen durchgeführt werden. Definieren Sie das Padstacksymbol
estk als Via:
Bauteile | |
Definieren Via | |
Neu/Loeschen: Via Padstack Name ? | estk |
Neu/Loeschen: Via Padstack Name ? | |
Das Padstacksymbol
estk ist als Pinsymbol im bereits platzierten Bauteil
v1000 (Gehäuse
d04a25 ) verwendet und somit in der aktuellen Projektdatei direkt verfügbar. In der mit der BAE-Software ausgelieferten Layoutbibliothek sind einige Via-Definitionen enthalten, von denen üblicherweise der Padstack
via als Standard-Via verwendet werden kann. Ist kein Via definiert, dann gibt die Funktion
die Meldung
Die Standardvia Definition fehlt! aus. Es ist möglich, mehrere Vias (d.h. auch Blind und Buried Vias) zu definieren. Im Laufe der Bearbeitung lassen sich die Viazuweisungen beliebig ändern. Für alle neu zu verlegenden Leiterbahnen werden die zuletzt definierten Vias benutzt. Bereits platzierte Vias werden durch die Viazuweisung nicht geändert. Bei einem Lagenwechsel wird jeweils automatisch das Via mit der geringstmöglichen Lagenbelegung gesetzt. Die Viazuweisungen sind auch im
Autorouter wirksam, d.h. der
Autorouter legt alle Leiterbahnen unter Benutzung der zuletzt zugewiesenen Vias. Ausgenommen hiervon sind lediglich nicht vom
Autorouter zu bearbeitende, d.h. fixierte Leiterbahnen.
Standardbreiten
Einige Untermenüs der Leiterbahn-Funktionen erlauben während des Verlegens von Leiterbahnen das Umschalten zwischen schmaler und breiter Leiterbahnführung ("Necking", "Bending"). Die Standardwerte für diese Leiterbreiten können im Menü
über die Funktion
(, Default 0.3mm;
, Default 1.00mm) eingestellt werden. Beim Verlegen einer neuen Leiterbahn wird immer zunächst der für
eingetragene Wert verwendet.
Manuelles Verlegen von Leiterbahnen
Verbinden Sie mit den folgenden Kommandos die zum Netz
Vdd gehörenden Anschlüsse
A1 und
C1 des Bauteils
K1 miteinander:
Leiterbahnen | |
Neue Leiterbahn | |
Positionieren auf "K1.A1",[0.8",0.8"] | |
Positionieren auf Eckpunkt,[0.8",0.95"] | |
Positionieren auf Eckpunkt,[1.6",0.95"] | |
Positionieren auf "K1.C1",[1.6",0.8"] | |
Fertig | |
Leiterbahneckpunkte werden immer durch Betätigung der linken Maustaste gesetzt. Mit der rechten Maustaste gelangt man in ein Untermenü, in dem über die Option
der Endpunkt der Leiterbahn gesetzt wird. Dieses Untermenü, das auch während der Änderung von Leiterbahnen
(,
, ...) verfügbar ist, ermöglicht auch den Sprung auf eine andere Signallage, das Einstellen einer anderen Leiterbahnbreite, die Erzeugung kreisbogenförmiger Leiterbahnsegmente, Relativ- und Absolutsprünge, usw.
Verbinden Sie die beiden Anschlüsse
C2 und
C1 des Bauteils
K1 durch ein Leiterbahnsegment auf der Signallage 2 miteinander:
Leiterbahnen | |
Neue Leiterbahn | |
Positionieren auf "K1.C2",[1.6",0.5"] | |
Lage 2 | |
Positionieren auf "K1.C1",[1.6",0.8"] | |
Fertig | |
Legen Sie nun vom Pin
9 des Steckers
X1000 auf der Signallage 1 ein Leiterbahnsegment, das Sie über ein Via an die zuvor gelegte Leiterbahn anschließen:
Leiterbahnen | |
Neue Leiterbahn | |
Positionieren auf "X1000.9",[2.45",0.85"] | |
Positionieren auf Eckpunkt,[2.45",0.65"] | |
Positionieren auf vertikales Leiterbahnsegment,[1.6",0.65"] | |
Lage 2 | |
Fertig | |
Deselektieren Sie nun das Via
estk , selektieren Sie statt dessen das (in
Kapitel 4.2.2 in der Datei
demo.ddb erstellte) Padstacksymbol
via als Durchkontaktierung, und legen Sie auf Signallage 2 eine Leiterbahn vom Pin
K der Diode
V1000 , die Sie mit dem zuvor selektierten Via mit der horizontalen Leiterbahn zwischen den Pins
A1 und
C1 des Relais-Bauteils
K1 verbinden:
Bauteile | |
Definieren Via | |
Neu/Loeschen: Via Padstack Name ? | estk |
Bitte bestaetigen (J/N) ? | j |
Neu/Loeschen: Via Padstack Name ? | via |
Neu/Loeschen: Via Padstack Name ? | |
Vorzugslage | |
Lage 2 | |
Leiterbahnen | |
Neue Leiterbahn | |
Positionieren auf "V1000.K",[1.2",1.6"] | |
Positionieren auf Eckpunkt,[1.1",1.6"] | |
Positionieren auf horizontales Leiterbahnsegment,[1.1",0.95"] | |
Lage 1 | |
Fertig | |
Legen Sie nun zur Übung nach Belieben weitere Leiterbahnen. Experimentieren Sie dabei auch mit den Funktionen zum Bewegen, Teilen und Löschen von Segmenten, zum Einfügen, Bewegen und Löschen von Leiterbahneckpunkten, zum Ändern von Leiterbahnbreiten, zur Erzeugung kreisbogenförmiger Leiterbahnen, usw. Im über die rechte Maustaste erreichbaren Kontextmenü der Funktion
stehen die Spezialoptionen
,
und
. zur Verfügung. Bei der Voreinstellung
werden nur die Endpunkte des Leiterbahnsegments bewegt. Mit der Option
hingegen werden (soweit dies zur Beibehaltung der bisherigen Segmentabknickwinkel nötig ist) auch die angeschlossenen Segmente nachgeführt.
Bei Aktivierung von
. werden Nachbarsegmente soweit möglich entsprechend dem Schnittpunkt von neuem Segment und Nachbarsegment angepasst. Dieser Arbeitsmodus ist insbesondere für die Verschiebung von Diagonalsegmenten an Leiterbahnknickstellen nützlich. Ist eine Anpassung der benachbarten Segment nicht möglich, dann wird automatisch die Option
angewendet. Bedienen Sie sich beim Experimentieren mit den Prozeduren zur Leiterbahnbearbeitung der Funktionen
und
, um Realisierungsalternativen durchzuspielen.
Fixieren von Leiterbahnen
Dürfen (vorverlegte) Leiterbahnen vom
Autorouter nicht verändert werden, dann müssen diese fixiert werden. Fixieren Sie mit folgenden Kommandos die vorverlegten Bahnen des Signalnetzes
Vdd :
Leiterbahnen | |
Bahnen fixieren | |
Netz | |
Positionieren auf Netz "Vdd",z.B.[2.0",0.65"] | |
Nach dem Aufruf der Fixier-Funktion werden alle aktuell fixierten Leiterbahnen durch Highlight angezeigt. Beim Verlassen dieser Funktion wird dieses spezifische Highlight automatisch zurückgesetzt. Mit der Funktion
können fixierte Leiterbahnen wieder freigegeben werden.
Die Funktionen zur manuellen Bearbeitung von Leiterbahnen haben keine Einfluss auf aktuell gesetzte Fixiert-Attribute der bearbeiteten Leiterbahnelemente und Durchkontaktierungen. Das bedeutet, dass nach einer manuellen Nachbearbeitung vorher fixierter Leiterbahnen keine Notwendigkeit einer neuerlichen Fixierung besteht, um in einem nachfolgenden
Autorouter-Lauf die Umverlegung (oder gar Herausnahme) solcher vorverlegten Leiterbahnen zu unterdrücken.
4.4 Autoplacement
Das BAE-Layoutsystem ist mit mächtigen
Autoplacement-Verfahren ausgestattet. Vor der automatischen Platzierung können die zu platzierenden Bauteile nach dem Mengenprinzip selektiert werden. Mit dem Matrixplacement-Verfahren kann eine selektierbare Menge von Bauteilen automatisch auf einem definierbaren Einbauplatzraster platziert werden. Die integrierten Initialplacement-Funktionen ermöglichen die vollautomatische Durchführung der Bauteilplatzierung. Die Platzierungsoptimierung bietet Funktionen zum automatischen Bauteil- und Pin-/Gattertausch an.
Die
Autoplacement-Funktionen sind im Menü
des Layouteditors unter
,
und
untergebracht.
Sofern Sie sich nicht im
Layouteditor befinden, sollten Sie diesen zunächst aufrufen und das Layout
board aus der Datei
demo.ddb laden.
Löschen Sie nun mit den folgenden Kommandos die Widerstände
r100 und
r101 sowie (mit der Hilfe der Gruppenfunktion) die Schalter
s1000 bis
s1009 :
Bauteile | |
Loeschen Bauteil | |
Positionieren auf "r100",[1.0",2.4"] | |
Loeschen Bauteil | |
Positionieren auf "r101",[1.6",2.4"] | |
Gruppen | |
Gruppe Polygon | |
Bauteile | |
Selektieren | |
Positionieren auf [0.1",0.4"] | |
Positionieren auf [0.6",0.4"] | |
Positionieren auf [0.6",2.4"] | |
Positionieren auf [0.1",2.4"] | |
Fertig | |
Gruppe loeschen | |
In den folgenden Abschnitten werden die soeben gelöschten Bauteile mit Hilfe von
Autoplacement-Funktionen wieder auf das Layout zurückplatziert.
4.4.1 Bauteilmenge
Über
können die zu platzierenden Bauteile ausgewählt werden. Dabei ist die Selektion und Deselektion über Bibliotheksteilnamen, Bauteilnamen und Wildcards möglich.
Deselektieren Sie zunächst mit den folgenden Kommandos alle unplatzierten Bauteile:
Bauteile | |
Bauteilmenge | |
Alles | |
Deselektieren | |
Alle Bauteile deselektieren ? | j |
Abbruch | |
Werfen Sie mit den folgenden Kommandos einen Blick auf die Bauteilliste:
Bauteile | |
Bauteilmenge | |
Bauteilliste | |
Das System sollte nun die folgende Liste mit allen in der Netzliste definierten Bauteilen auf dem Bildschirm ausgeben:
Datei : demo.ddb Plan : board Bauteile : 23
: c100 chip1210 P : c101 chip1206 P : ic10 dil14 P
: k1 relais P : r100 r04a25 U : r101 r04a25 U
: r102 r04a25 P : r103 r04a25 P : r104 minimelf P
: r105 chip1206 P : s1000 s1dilo U : s1001 s1dilo U
: s1002 s1dilo U : s1003 s1dilo U : s1004 s1dilo U
: s1005 s1dilo U : s1006 s1dilo U : s1007 s1dilo U
: s1008 s1dilo U : s1009 s1dilo U : v1 to92 P
: v1000 d04a25 P : x1000 xsubd9bl P - Ende -
Die Bauteilliste enthält alle in der Netzliste definierten Bauteile mit Bauteilname, Bibliotheksteilname und dem Hinweis, ob das Bauteil bereits platziert ist
(P ), oder ob es noch unplatziert ist
(U ). Der Eintrag
S bedeutet, dass das betreffende, unplatzierte Bauteil für die Platzierung selektiert ist. Durch die Eingabe von
A und Betätigen der Eingabetaste
gelangen Sie wieder in das Menü.
Selektieren Sie mit den folgenden Kommandos alle Bauteile, deren Namen mit
r beginnen, zur Menge der zu platzierenden Bauteile:
Bauteile | |
Bauteilmenge | |
Bauteil(e) | |
Selektieren | |
Bauteilname ? | r* |
Bauteilname ? | |
Selektieren | |
Abbruch | |
Die Auswahl von Bauteilnamen für die Bauteilmenge mit den Optionen
und
der Funktion
aus dem Menü
kann auch durch Mausselektion im angebotenen Popupmenü vorgenommen werden. Wahlweise kann ein Bauteilnamensmuster per Tastatur eingegeben werden. Im Auswahlmenü sind jeweils nur die unselektierten, bzw. selektierten Bauteile aufgelistet.
Mit obigen Kommandos wurden die beiden noch nicht platzierten Widerstände
r100 und
r101 für die Platzierung selektiert. Sie können dies mit Hilfe der Funktion
überprüfen (Eintrag
S für diese beiden Bauteile).
Mit der Funktion
aus dem Untermenü
können alle noch nicht platzierten Bauteile für für die Platzierung selektiert werden. Mit der Funktion
besteht die Möglichkeit der Selektion über den Bibliotheksnamen (z.B.
so16 für alle unplatzierten Bauteile mit der Gehäusebauform SO16, oder
dil* für alle unplatzierten DIL-Gehäuse). Mit der jeweiligen Unterfunktion
können Bauteile selbstverständlich auch wieder aus der Menge der zu platzierenden Bauteile entfernt werden.
Das Untermenü
bietet darüber hinaus mit
und
auch Funktionen zur selektiven Auswahl von Bauteilen, die in einem speziellen Blockschaltbild eines hierarchischen Schaltplanentwurfs definiert sind. Hierbei erfolgt die Selektion oder Deselektion der zu platzierenden Bauteile jeweils durch die Spezifikation des Blocknamens. Dieser Blockname wird bei hierarchischen Designs über das Attribut
$blkname automatisch durch den
Packager in den betroffenen Bauteilen eingetragen.
Im
Kapitel 4.3.2 (Abschnitt Manuelle Platzierung) wurde bereits auf die Berücksichtigung der Bauteilmenge durch die Funktionen
und
hingewiesen. Stellen Sie mit den folgenden Kommandos die Koordinatenanzeige auf Inch ein, und platzieren Sie mit Hilfe der Funktion
alle in der Bauteilmenge zur Platzierung selektierten Bauteile (es sind dies die Widerstände
r100 und
r101 ):
Einstellungen | |
Koordinatenanzeige | |
inch Anzeige | |
Bauteile | |
Naechstes Bauteil | |
Positionieren auf [1.0",2.4"] | |
Bauteile | |
Naechstes Bauteil | |
Positionieren auf [1.6",2.4"] | |
Bauteile | |
Naechstes Bauteil | |
Ist die Bauteilmenge leer (weil alle zuvor selektierten Bauteile platziert wurden), dann gibt die Funktion
die Meldung
Alle selektierten Bauteile sind bereits platziert!
aus.
4.4.2 Matrixplacement
Das Matrixplacement-Verfahren ist ein Initialplacement-Algorithmus, mit dessen Hilfe sich die in der Bauteilmenge enthaltenen Bauteile auf in Matrixform definierten Einbauplätzen automatisch platzieren lassen.
Selektieren Sie mit den folgenden Kommandos alle Bauteile mit dem Bibliotheksteilnamen
s1dilo (dies sind die Schalter
s1000 bis
s1009 ) zur Bauteilmenge:
Bauteile | |
Bauteilmenge | |
Macro waehlen | |
Selektieren | |
Bibliotheksteilname ? | s1dilo |
Bibliotheksteilname ? | |
Stellen Sie den Standardwinkel für die Platzierung auf 270 Grad (ohne Spiegelung) ein (die Option hierfür ist ggf. im Bereich
des Dialogs
aus dem Menü
erreichbar):
Bauteile | |
Standardwinkel | |
270 Grad links | |
Definieren Sie nun eine Platzierungsmatrix, Platzieren Sie die in der Bauteilmenge enthaltenen Bauteile auf die Matrix, und entfernen Sie die Matrix wieder:
Bauteile | |
Matrixplacement | |
Matrix definieren | |
Positionieren auf Matrix Ursprung,[0.2",2.3"] | |
Positionieren auf Matrix Abstand,[0.3",2.1"] | |
Positionieren auf Matrix Ende,[0.2",0.5"] | |
Matrix platzieren | |
Matrix entfernen | |
Die Funktion
platziert alle in der Bauteilmenge enthaltenen Bauteile auf die definierte Platzierungsmatrix, wobei auch der aktuell eingestellte Platzierungswinkel und ggf. der Spiegelungsmodus für die Platzierung mit berücksichtigt werden.
Es sind nun alle in der Netzliste definierten Bauteile platziert. Sie können dies mit der Funktion
aus dem Untermenü
überprüfen.
4.4.3 Initialplacement
Die im
System integrierten Initialplacement-Funktionen ermöglichen die vollautomatische Durchführung der Bauteilplatzierung. Hierbei werden die unplatzierten Bauteile innerhalb der Platinenumrandung auf dem aktuell eingestellten Platzierungsraster platziert, wobei vorplatzierte Bauteile (Stecker, LEDs, etc.) ebenso berücksichtigt werden wie die Vorgaben aus der Netzliste. Abblockkondensatoren und SMD-Bauteile werden automatisch erkannt. Die Lötseite kann für die SMD-Platzierung wahlweise gesperrt oder freigegeben werden. Die Bauteile werden selbsttätig in 90-Grad-Schritten gedreht, wobei sich die Freiheitsgrade bei der Bauteilrotation für eine fehlersichere Bestückung wahlweise einschränken lassen. Optional kann ein Bauteilexpansionsparameter zur Generierung von Freiflächen zwischen den Bauteilen definiert werden. Die automatische Platzierung wird durch einstellbare Gewichtungsfaktoren zur Berücksichtigung von Netzlistenvorgaben und zur Bewertung der Bauteil-Segmentpassung gesteuert. Bereits während der Platzierung werden Rip-Up/Retry-Läufe eingeschoben, um die Ausnutzung der Platinenfläche zu optimieren.
Die Initialplacement-Funktionen sind im Untermenü
integriert, welches die folgenden Funktionen umfasst:
Bauteile | |
Autoplacement | |
Zur automatischen Bauteilplatzierung stehen die Funktionen
,
und
zur Verfügung.
Es werden jeweils die aktuell zur Bauteilmenge selektierten Bauteile platziert (siehe
Kapitel 4.4.1). Damit lassen sich selektierbare Bauteilgruppen automatisch platzieren. Bereits platzierte Bauteile, die nicht in der Bauteilmenge enthalten sind, werden von den Platzierungsroutinen wie fixierte Bauteile behandelt und als solche nicht umplatziert.
Das erste für die Platzierung gewählte Bauteil wird auf einem Startpunkt positioniert, der durch die Funktion
automatisch ermittelt wird bzw. in den Funktionen Clusterplacement und Flächenplacement vom Anwender interaktiv festzulegen ist (Prompt
Startpunkt fuer Platzierung waehlen! ). Die Auswahl des Startpunkts ist von essentieller Bedeutung für die Qualität des Platzierungsergebnisses, da sich die Platzierung von Folgebauteilen jeweils an der Platzierung des ersten Bauteils ausrichtet. Wenn das erste zu platzierende Bauteil aus Platzmangel nicht am Startpunkt platziert werden kann, dann ist auch keines der Folgebauteile platzierbar. Wird ein Startpunkt außerhalb der Platinenumrandung gewählt, dann ist kein Bauteil platzierbar. Ist keine Platinenumrandung definiert, dann kann der Startpunkt frei gewählt werden, und Bauteile werden u.U. auch außerhalb der aktuell definierten Elementgrenzen platziert.
Der Fortgang der Bearbeitung während der automatischen Platzierung wird in der Statuszeile protokolliert (Anzeige
Pass : 1/1 Bauteil : <b>/<n> ). Dieser Prozess kann per Tastendruck abgebrochen werden, was ggf. mit der Meldung
Autoplace abgebrochen! quittiert wird. Dabei ist zu beachten, dass es vor dem tatsächlichen Funktionsabbruch u.U. zu kurzen Wartezeiten kommen kann, da der aktuell aktive Ripup- und Retry-Pass in jedem Fall komplettiert werden muss.
Die erfolgreiche Beendigung der Initialplacement-Funktion wird durch die Meldung
Es wurden keine Fehler festgestellt. angezeigt, was zugleich auch bedeutet, dass alle Bauteile platziert werden konnten. Eine durch die Platzierungsfunktion ausgegebene Meldung der Form
<n> Bauteile konnten nicht platziert werden! gibt die Anzahl
<n> der Bauteile an, die mit den eingestelltem Parametern nicht auf dem zur Verfügung stehenden Platz platziert werden konnten. In diesem Fall sind ggf. andere Parameter für die Platzierung (feineres Platzierungsraster, Reduzierung der Bauteilexpansion, Freigabe Bauteildrehung bzw. SMD-Spiegelung; Parametereinstellung siehe unten) zu wählen, um (nach einem
) in einem neuerlichen Platzierungslauf eine Komplettplatzierung zu ermöglichen.
Voll-Autoplace
Die Funktion
führt ein Clusterplacement (siehe unten) mit automatisch gewähltem Startpunkt für die Platzierung sowie anschließend eine (multi-pass) Platzierungs-Optimierung (siehe unten,
Kapitel 4.4.4) mit den dafür eingestellten Parametern für Optimierungszahl und Pin/Gate-Swap-Verfahren durch. Der Startpunkt für die Platzierung ergibt sich dabei aus dem Schwerpunkt der Platinenumrandung. Liegt dieser Schwerpunkt nicht innerhalb der Platinenumrandung, dann können mit
keine Bauteile platziert werden, und es muss Clusterplacement oder Flächenplacement anstelle
verwendet werden.
Ist keine Platinenumrandung definiert, dann wird der absolute Nullpunkt des aktuell geladenen Layouts als Startpunkt gewählt. In diesem Fall sollte nach Ablauf der Platzierung auf die Übersichtsdarstellung umgeschaltet werden, da anschließend Bauteile u.U. außerhalb der aktuell definierten bzw. sichtbaren Elementgrenzen platziert sind.
Clusterplacement
Beim Clusterplacement ist zunächst der Startpunkt für die Platzierung zu wählen. Dieser Startpunkt wird zur Positionierung des ersten für die Platzierung ausgewählten Bauteils verwendet.
Die Funktion
wertet die Netzliste aus und nimmt eine Analyse und Klassifizierung der vorkommenden Netze und Bauteile vor. Danach werden Gruppen von Bauteilen zu Clustern zusammengefasst, die dann entsprechend der für die einzelnen Bauteilcluster ermittelten Platzierungsprioritäten nacheinander auf dem Layout platziert werden. Zur Clusterbildung werden jedem Bauteil mit mehreren Anschlüssen die jeweils verbundenen Bauteile mit einer geringen Anzahl von Anschlüssen (weniger als vier) zugeordnet. Bauteile die ausschließlich zu als Versorgungsnetzen klassifizierten Netzen Verbindungen haben (dies sind in aller Regel Abblockkondensatoren), werden zunächst nicht berücksichtigt und am Ende auf die mit den Versorgungsnetzen verbundenen Gruppen aufgeteilt. Dadurch ergibt sich anschließend automatisch eine sinnvolle Platzierung der Abblockkondensatoren in der Nähe der zugehörigen ICs. Die Aufteilung der Abblockkondensatoren erfolgt nach Alphabet. Da nicht zwischen Steckern und normalen Bauteilen unterschieden werden kann, ist es von Vorteil, bei der Namensgebung für die Bauteile die Stecker am Ende des Alphabets anzusiedeln (z.B. Namensmuster
x??? für Stecker und
ic??? für integrierte Schaltungen), um zu verhindern, dass Abblockkondensatoren an Stecker zugewiesen werden.
Flaechenplacement
Die Funktion
führt eine Flächenplatzierung durch. Dabei ist zunächst der
Startpunkt für die Platzierung zu wählen. Flächenplacement bedeutet, dass die Netzlistendaten nicht berücksichtigt werden, sondern dass lediglich die Bauteilabmessungen als Kriterium für die Platzierung herangezogen werden. Mit dieser Funktion lässt sich zum Beispiel leicht überprüfen, ob der auf der Leiterkarte zur Verfügung stehende Platz überhaupt ausreicht.
Bauteilpinfaktor
Der Bauteilpinfaktor steuert die Reihenfolge, in der die Bauteilgruppen platziert werden. Für die Auswahl des nächsten zu platzierenden Bauteils steht die Kombination zweier Strategien zur Verfügung. Die erste Strategie wählt einfach das Bauteil mit der größten Anzahl von Verbindungen zu den bereits platzierten Bauteilen aus, während die zweite Strategie das Bauteil auswählt, bei dem das Verhältnis der Pins mit Verbindungen zu bereits platzierten Bauteilen zur Gesamtzahl seiner Anschlüsse am höchsten ist. Über den Bauteilpinfaktor wird gesteuert welche Strategie höher zu bewerten ist. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Bauteilpinfaktor | |
Pinanzahlgewichtung [0.0,1.0] (0.90) ? |
können für den Bauteilpinfaktor Werte im Bereich von 0.0 (reine Bewertung der Verbindungsanzahl) bis zu 1.0 (reine Bewertung des Prozentsatzes verbundener Anschlüsse) angegeben werden. Der Defaultwert für den Bauteilpinfaktor beträgt 0.9. Von der Verteilung der Netze her sind hohe Bauteilpinfaktoren grundsätzlich besser als niedrige Faktoren. Allerdings führen hohe Bauteilpinfaktoren häufig dazu, dass besonders bei kleinem Platzangebot zu Beginn der Platzierung viele kleine Bauteile den vorhandenen Platz so fragmentiert belegen, dass später zu platzierende große Bauteile keinen Platz mehr finden.
Segmentpassung
Die Segmentpassung gibt an, inwieweit die Passung der Kantenlängen benachbarter Bauteile berücksichtigt wird, d.h. ob Bauteile gleicher Größe bevorzugt nebeneinander platziert werden. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Segmentpassung | |
Segmentpassung [0.0,1.0] (0.10) ? |
wird der Bewertungsfaktor für die Segmentpassung festgelegt. Es können Werte von 0.0 (keine Berücksichtigung der Segmentpassung) bis 1.0 (Segmentpassung wird vergleichbar den Netzausdehungen bewertet) angegeben werden. Der Defaultwert für die Segmentpassung beträgt 0.1. Mit hoher Segmentpassung platzierte Layouts sehen in der Regel optisch ansprechender aus und sind bei Vorhandensein vieler Busverbindungen besser routbar. Layouts mit mehr "zufällig" verteilten Verbindungen und beengten Verhältnissen sind dagegen häufig bei einer Platzierung mit geringer Segmentpassung einfacher entflechtbar.
Spiegelungsmodus
Der Spiegelungsmodus ist nur für die Platzierung von SMD-Bauteilen von Bedeutung. Bei der Voreinstellung
werden SMD-Bauteile nur ungespiegelt platziert. Mit der Einstellung
kann die automatische Platzierung wahlweise auf der Ober- bzw. Unterseite durchgeführt werden. Die Option
dient der Einschränkung der automatischen Bauteilspiegelung auf SMDs mit nicht mehr als 2 Pins und erlaubt somit die Platzierung von Abblockkondensatoren und anderen Kleinbauteilen auf der Lötseite, während SMD-Bauteile mit mehr als zwei Pins in jedem Fall auf der Bauteilseite platziert werden. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Spiegelungsmodus | |
kann die gewünschte SMD-Spiegelungsoption selektiert werden.
Rotationsmodus
Der Rotationsmodus gibt an um welche Winkel die Bauteile bei der automatischen Platzierung gedreht werden dürfen. Die Standardeinstellung für den Rotationsmodus ist
, d.h. die Bauteile dürfen in beliebigen 90 Grad-Schritten platziert werden. Mit der Option
werden die Bauteile nur ungedreht oder um 90 Grad nach links gedreht platziert. Dieser Modus kann angewendet werden um eine fehlersicherere Bestückung zu erreichen; außerdem verläuft damit die automatische Platzierung schneller, da weniger Platzierungsmöglichkeiten geprüft werden müssen. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Rotationsmodus | |
kann zwischen den beiden Rotationsoptionen gewählt werden.
Bauteilgröße, Bauteilexpansion, Abblockkondensatoren, Platzierungsraster
Die Bauteile werden im aktuell eingestellten Eingaberaster platziert. Dieses Platzierungsraster sollte also vor Durchführung des Initialplacement im Menü
über die Funktion
festgelegt werden. Der Platzbedarf (d.h. die Größe) eines Bauteils wird durch die Elementgrenzen des zugehörigen Makros bestimmt. Beim Erstellen von Bauteilbibliotheken sollte daher darauf geachtet werden, dass die Elementgrenzen nicht unnötig größer als die tatsächlichen Bauteilabmessungen sind. Um in weniger dicht gepackten Designs Platz zwischen den Bauteilen zu schaffen, kann eine Expansionsdistanz angegeben werden, um die die Bauteilumrandung vergrößert werden soll. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Bauteilexpansion | |
Expansionswert ( 0.00mm) ? |
wird der Wert für die Bauteilexpansion eingestellt. Der Defaultwert hierfür beträgt 0.0mm (d.h. keine Bauteilexpansion). Der mit der Funktion Bauteilexpansion angegebene Expansionswert wird auf jeden Bauteiltyp ohne Berücksichtigung individueller Makrogrößen gleichermaßen angewendet. Ausgenommen hiervon sind Abblockkondensatoren, die automatisch erkannt werden und mit geringstmöglichem Abstand zu den zu versorgenden Bauteilen platziert werden. Nach Möglichkeit werden die Abblockkondensatoren hierbei je nach Orientierung der zu versorgenden ICs vorzugsweise jeweils rechts bzw. oberhalb der integrierten Schaltkreise platziert.
Im Vollautoplacement wird ein Automatismus zur schrittweisen Reduktion der Bauteilexpansion aktiviert, wenn keine vollständige Platzierung mit dem eingestellten Wert möglich ist. Der Wert für die Bauteilexpansion wird nach Möglichkeit solange um jeweils 25 Prozent reduziert bis entweder eine vollständige Platzierung möglich ist, oder der Wert für die Bauteilexpansion 0.2mm unterschreitet und auf Null gesetzt wird.
Retrydurchgänge
Da bei der Platzierung jeweils nur die Verbindungen zu bereits platzierten Bauteilen berücksichtigt werden können, kann sich im Laufe der Platzierung für ein bereits platziertes Bauteil eine optimalere Position ergeben. Damit solche Positionen auch genutzt werden, werden bei der automatischen Platzierung Retrydurchgänge eingeschoben, bei denen für jedes platzierte Bauteil nach einer besseren Position gesucht wird. In dieses Verfahren werden auch vorplatzierte, unfixierte Bauteile einbezogen. Vorplatzierte Bauteile, die nicht umplatziert werden dürfen, müssen daher vorher im
Layouteditor (mit Hilfe der Gruppenfunktionen) fixiert werden. Mit der Funktion
Bauteile | |
Autoplacement | |
Einstellungen | |
Retrydurchgaenge | |
Anzahl Retrydurchgaenge [0,9] ( 2) ? |
wird die Anzahl der Retrydurchgänge festgelegt. Die Voreinstellung beträgt zwei Durchgänge, d.h. es wird ein Retrydurchgang nach der Hälfte der platzierten Bauteile und ein Retrydurchgang am Ende der Platzierung durchgeführt. Es sollten nicht zu viele Retrydurchgänge angegeben werden, da dies einerseits stark in die Rechenzeit geht und andererseits bei der Umplatzierung von Bauteilgruppen Kleinbauteile (speziell Abblockkondensatoren) nicht immer an die neue Position mitgenommen werden können, wodurch sich für einzelne Verbindungen unverhältnismäßig lange Leiterbahnlängen ergeben können.
4.4.4 Platzierungsoptimierung
Die Platzierungsoptimierung ermöglicht den Aufruf eines Platzierungsalgorithmus, der iterativ Gehäuse gleicher Bauform gegeneinander vertauscht und Pin/Gate Swaps durchführt, um dadurch die Komplexität des Routingproblems zu entschärfen, d.h. eine Längenminimierung und Entflechtung der noch nicht realisierten Verbindungen ("Airlines", "Unroutes") herbeizuführen. Dieser Algorithmus kann einfach (Einzeloptimierung) oder mehrfach (Multi-Optimierung mit einstellbarer Optimierungszahl) durchlaufen werden, wobei mit der Funktion
zwischen unterschiedlichen Swapverfahren gewählt werden kann; mit der Standardeinstellung
werden sowohl Bauteiltausch (Component Swap) als auch Pin-/Gattertausch durchgeführt, mit
wird der Pin/Gate Swap abgeschaltet, und mit
wird der Bauteiltausch abgeschaltet.
Führen Sie mit den folgenden Kommandos eine 3-fache Platzierungsoptimierung mit Bauteiltausch und Pin/Gate Swap durch:
Bauteile | |
Autoplacement | |
Einstellungen | |
Optimierungszahl | |
Anzahl Durchgaenge : 2 (1..99) ? | 3 |
OK | |
Multi-Optimierung | |
Während der Optimierung zeigt das System in der Statuszeile den aktuellen Durchlauf und die Anzahl der bearbeiteten Bauteile an. Durch einen Tastendruck lässt sich die Platzierungoptimierung jederzeit abbrechen.
Beurteilen Sie mit Hilfe der
-Funktion das Resultat der Platzierungsoptimierung und beachten Sie dabei insbesondere die jeweilige Komplexität des "Airline-Geflechts".
Von der Platzierungsoptimierung ausgenommen sind fixierte Bauteile. Dürfen also bestimmte Bauteile (Stecker, Schalter, Leuchtdioden, usw.) durch die Platzierungsoptimierung nicht umplatziert werden, dann sind diese Bauteile vor dem Aufruf
von Autoplacement-Funktionen (mit Hilfe der Gruppenfunktion) zu fixieren. Dasselbe gilt für Bauteile, für die kein Pin/Gate Swap durchgeführt werden darf (Relais, Mehrfach-Operationsverstärker, etc.). Wir weisen in diesem Zusammenhang auch mit Nachdruck darauf hin, dass ein automatischer Pin/Gate Swap nur dann durchgeführt werden darf, wenn alle in der logischen Bibliothek eingetragenen Swapdefinitionen auch wirklich zulässig sind. Ist dies nicht der Fall, oder bestehen darüber Zweifel, dann ist der automatische Pin-Gattertausch bei der Platzierungsoptimierung unbedingt mit
in der Funktion
abzuschalten. Für Stecker darf in aller Regel kein Pin/Gate Swap definiert werden. Pin/Gate Swaps für Bauteile, bei denen spezielle Attributwerte (z.B.
$val bei Widerstandsnetzwerken) gesetzt werden können, müssen als interne Swaps definiert sein, um zu verhindern, dass Gatter zwischen Bauteilen mit unterschiedlichen Werten getauscht werden. Die Definition von Pin/Gate Swaps erfolgt in der logischen Bibliothek mit Hilfe des Utilityprogramms
loglib (siehe hierzu auch die entsprechende Beschreibung im
Kapitel 7.11 dieses Handbuchs).
4.5 Autorouter
Natürlich sollten Sie bei einem realen Projekt vor dem
Autorouter-Aufruf die Versorgungslagen definieren bzw. kritische Leitungen oder den Versorgungskamm manuell vorverlegen und fixieren, ggf. die oberste Lage definieren, usw. Nach dem Autorouting sollte in jedem Fall ein Batch-Design Rule Check durchgeführt werden, bevor mit dem
CAM-Prozessor die Fertigungsdaten erzeugt werden.
Die Benutzeroberfläche des
Bartels Autorouters ähnelt der des
Layouteditors. Der
Bartels Autorouter unterstützt neben den eigentlichen Autorouting-Funktionen (Voll-Autorouter, Initial-Routing, Ripup- und Retry-Router, Fertigungsoptimierer) eine Reihe spezieller Platzierungs- und Routingfunktionen wie automatisches Initialplacement mit Platzierungsoptimierung, Einzelnetz- und Netzgruppen-Routing, Component-Routing, Bereichs- bzw. Blockrouting, Routen in gemischten Rastern, selektiver Bauteil- und Pin/Gate-Swap während des Rip-Up-Routings, usw. Die in
BAE HighEnd integrierte Version des
Autorouters bietet darüber hinaus mächtige Zusatzfunktionen basierend auf einer patentierten Technologie neuronaler Netzwerke. Der
Autorouter der
BAE HighEnd-Software bedient sich künstlicher Intelligenz zur automatischen Lösung spezieller Entflechtungsprobleme wie sie z.B. typischerweise beim Analogrouting oder bei der Erzeugung von Leiterbahnen mit speziellen elektrischen Eigenschaften bzw. bei der Generierung von Mikrowellenstrukturen auftreten. Hierzu arbeitet der
Neuronale Autorouter mit Funktionen zur Erlernung und automatischen Anwendung von Regeln zur Lösung spezieller Entflechtungsprobleme und wird dabei zusätzlich noch unterstützt durch einen rasterlos arbeitenden, objektorientierten Routingalgorithmus mit integrierter Platzierungsoptimierung.
4.5.1 Programmaufruf
Der Aufruf des
Autorouters erfolgt mit der Funktion
im Menü
des
Layouteditors. Nach der Aktivierung dieser Funktion wird das aktuell geladene Layout gespeichert, und anschließend wird der
Autorouter gestartet. War vorher im
Layouteditor ein Layout geladen, so wird dieses auch automatisch im
Autorouter geladen. Auf diesem Layout sollte (mit der Funktion
im Menü
) eine Platinenumrandung definiert worden sein, und es sollte (mit der Funktion
im Menü
des
Layouteditors) eine Viazuweisung durchgeführt worden sein.
Beim Aufruf von
Autorouter-Prozeduren können die folgenden Fehlermeldungen auftreten:
Die Platinenumrandung fehlt! |
Ursache: | keine Platinenumrandung definiert |
Abhilfe: | Layouteditor - - - ... |
Die Standardvia Definition fehlt! |
Ursache: | keine Viazuweisung definiert |
Abhilfe: | Layouteditor - - - ... |
Bauteile fehlen oder sind vom falschen Typ! |
Ursache: | noch nicht alle Netzlistenbauteile (mit der korrekten Gehäusebauform) platziert |
Abhilfe: | ggf. Layouteditor - - zur Elimination von mit falschen Gehäusebauformen platzierten Netzlistenbauteilen und anschließende interaktive bzw. automatische Platzierung der noch nicht platzierten Bauteile |
Pin ausserhalb der Umrandung (<bauteilname>) ! |
Ursache: | Netzlistenbauteil bzw. Netzlistenbauteilpin außerhalb der Platinenumrandung platziert |
Abhilfe: | Korrektur der Bauteilplatzierung |
Via ausserhalb der Umrandung! |
Ursache: | vorplatzierte, fixierte Durchkontaktierung(en) außerhalb der Platinenumrandung |
Abhilfe: | Durchkontaktierung(en) außerhalb der Platinenumrandung freigeben bzw. löschen |
Leiterbahn ausserhalb der Umrandung! |
Ursache: | vorverlegte, fixierte Leiterbahn(en) außerhalb der Platinenumrandung |
Abhilfe: | Leiterbahn(en) außerhalb der Platinenumrandung freigeben bzw. löschen |
Via Pad-Stack als Via ungeeignet! |
Ursache: | die Liste der Durchkontaktierungen enthält eine ungültige Via-Definition |
Abhilfe: | Korrektur der Via-Definition(en); es muss zumindest ein Via über alle Signallagen definiert sein, und jedes Via muss eine Bohrung sowie Paddefinitionen für zumindest zwei adjazente Signallagen enthalten |
Pad doppelt definiert! |
Ursache: | Layout enthält; mehrdeutige Bibliotheksdefinition(en); z.B. Pad(s) mit mehr als einer Kupferfläche oder Padstack(s) mit mehr als einem Pad auf derselben Lage |
Abhilfe: | Pad- bzw. Padstack-Bibliotheksdefinition(en) korrigieren |
Pad-Stack doppelt definiert! |
Ursache: | Layout enthält; mehrdeutige Bibliotheksdefinition(en); z.B. Bauteil(e) mit mehr als einem Padstack bzw. Pin an derselben Position |
Abhilfe: | Bauteil-Bibliotheksdefinitionen korrigieren |
Andere
Autorouter-Fehlermeldungen werden ausgegeben, wenn das Layout Kurzschlüsse (verursacht durch vorverlegte, fixierte Leiterbahnen) enthält.
4.5.2 Hauptmenü
In der Benutzeroberfläche des
Autorouters werden neben bereits aus dem
Layouteditor bekannten Menüs (wie
,
bzw.
,
,
) Funktionen zur automatischen Platzierung, zur Vorgabe von Options- und Strategieparametern, zur Durchführung der automatischen Entflechtung, sowie zur Aktivierung spezieller Routingfunktionen angeboten. Nach dem Aufruf des
Autorouters befindet sich auf der rechten Bildschirmseite eine Menüleiste, bestehend aus dem Hauptmenü im oberen Bereich sowie dem im Hauptmenü selektierten Menü im unteren Bereich. Nach dem Laden des
Autorouters ist das Menü
aktiviert, und der grüne Menübalken steht auf der Funktion
.
Unter Windows und Motif kann anstelle der Standard- bzw. Seitenmenükonfiguration wahlweise auch ein Benutzerinterface mit Pulldownmenüs aktiviert werden. Hierzu ist mit Hilfe des Utilityprogramms
bsetup das Kommando
WINMENUMODE mit der Option
PULLDOWN in das Setup der BAE-Software einzuspielen (siehe hierzu auch
Kapitel 7.2). Bei der Verwendung von Pulldownmenüs ist das Hauptmenü als horizontal ausgerichtete Menüleiste am oberen Ende der Benutzerschnittstelle angeordnet.
Das Hauptmenü ist während der Dauer der Layoutbearbeitung mit dem
Autorouters ständig verfügbar und ermöglicht die Aktivierung der folgenden Menüs:
Im Menü
finden Sie die
-Funktion, mit der die letzten zwanzig Arbeitsschritte rückgängig gemacht werden können. Mit der
-Funktion kann der
-Befehl wieder aufgehoben werden. Diese Funktionen lassen sich insbesondere auch auf komplexe Operationen wie z.B. komplette
Autorouter-Läufe anwenden.
Im Menü
bzw.
, das Sie außer durch Selektion im Hauptmenü auch immer über die mittlere Maustaste erreichen können, können Sie Zoomfunktionen aktivieren, das Eingabe- bzw. Hintergrundraster definieren, oder die Farbtabelle einstellen.
Das Menü
des
Autorouters entspricht dem Menü
des
Layouteditors (siehe
Kapitel 4.4.3 und
Kapitel 4.4.4). Damit stehen im
Autorouter die aus dem
Layouteditor bekannten Initialplacement-Funktionen sowie die Routinen zur Durchführung von Platzierungsoptimierungen zur Verfügung, d.h. im
Autorouter kann (vor dem Start eines Autorouting-Prozesses) eine vollautomatische Vorplatzierung der Bauteile sowie eine Platzierungsoptimierung durch automatischen Bauteiltausch und Pin/Gate-Swap vorgenommen werden.
Das Menü
enthält die Funktionen zur Aktivierung der
Autorouter-Prozeduren
,
und
sowie die Funktionen
und
, mit deren Hilfe ein festgelegter Ablauf unterschiedlicher Routerdurchläufe (Router-Passes) gestartet werden kann.
Das Menü
enthält die Funktionen zur Durchführung spezieller Routingoperationen wie z.B. Einzelnetzrouting, Routen von Netzgruppen, Component-Routing, Bereichsrouting, usw.
Das Menü
dient dazu, die Optionsvorgaben für die nachfolgenden Routerläufe festzulegen. D.h. hier werden die grundlegenden Design- und Technologievorgaben (Lagenanzahl und Lagenzuordnung, Routingraster mit optionaler Benutzung des Halbrasters, Standard-Leiterbreite, Standard-Mindestabstand, maximal zulässige Viaanzahl, Via-Raster, Leiterbahnknicke on-grid oder off-grid, Pinanschlussverfahren) definiert. Werden grundlegende Optionsparameter (Lagenanzahl, Routingraster, Freigabe/Sperren des Halbrasters, Standard-Leiterbreite, Standard-Mindestabstand oder Pinanschlussverfahren) geändert, dann wird beim nachfolgenden Aufruf einer
Autorouter-Prozedur
(, Initialrouting, SMD-Fanout-Routing, Rip-Up-Routing, Optimierer,
) automatisch ein Router-Neustart mit Verwurf des aktuellen Routingergebnisses durchgeführt.
Das Menü
enthält wichtige Kontrollfunktionen zur Steuerung des Routerablaufs (Anzahl der Optimiererläufe, aktivieren/deaktivieren der netzübergreifenden Patternerkennung, Festlegung der Hartnäckigkeit des Rip-Up-Routers, SMD-Fanout-Router aktivieren/deaktivieren, automatisches Zwischenspeichern an- oder abschalten).
Über das Menü
können die Strategieparameter und heuristischen Kostenfaktoren für die nachfolgenden Router- bzw. Optimiererläufe festgelegt werden (Art der Vorzugsrichtungs-Optimierung, Viakosten, Pinkanal-Kosten, Vorzugsrichtungskosten, Richtungsänderungskosten, Packungskosten, Kostenbasis für die statistische Leiterbahn-Verteilung, Bus-Abknickkosten, Rip-Up-Abstandskosten, Kreuzungskosten, Diagonalrouting-Kosten, Offgrid-Routing-Kosten).
Das Menü
enthält Funktionen zur Definition des Zugriffspfades auf die Layoutbibliothek, zur Auswahl der
-Funktion, zum Setzen des Koordinatenanzeigemodus, sowie zur Aktivierung der automatischen Datensicherung.
Im Menü
kann der Programmabbruch, der Rücksprung in die Shell des
Bartels AutoEngineer oder der Rücksprung in den
Layouteditor veranlasst werden. Dieses Menü enthält weiterhin wichtige Dateiverwaltungsfunktionen zum Laden von Elementen und zum Auflisten von Dateiinhalten. Auch der explizite Aufruf von
User Language-Programmen ist von diesem Menü aus möglich.
4.5.3 Modifizierte Benutzeroberfläche des Autorouters
Einige der mit der BAE-Software installierten
User Language-Programme definieren implizite
User Language-Programmaufrufe über die eine weit reichend modifizierte Benutzeroberfläche mit einer Vielzahl von Zusatzfunktionen (Startups, Toolbars, Menübelegung, Tastaturprogrammierung) aktiviert wird. Das
User Language-Startupprogramm
bae_st wird automatisch beim Aufruf des
Autorouters gestartet.
bae_st ruft seinerseits das
User Language-Programm
uifsetup auf, welches eine vordefinierte Menü- und Tastaturbelegung im
Autorouter aktiviert. Änderungen bzw. Anpassungen der Menü- und Tastaturbelegung können zentral in der Quellcodedatei von
uifsetup vorgenommen werden. Die aktuelle Tastaturbelegung kann mit dem
User Language-Programm
hlpkeys angezeigt werden. Der Aufruf von
hlpkeys ist über die Funktion
aus dem Menü
möglich, sofern die vordefinierte Menübelegung aus
uifsetup aktiviert ist. Mit dem
User Language-Programm
uifdump kann die in der aktuellen Interpreterumgebung definierte Menü- und Tastaturbelegung in Form eines Reports angezeigt bzw. auf eine Datei ausgegeben werden. Mit dem
User Language-Programm
uifreset lässt sich die komplette Menü- und Tastaturbelegung zurücksetzen.
uifsetup,
uifdump und
uifreset sind auch über das Menü des
User Language-Programms
keyprog aufrufbar, welches zudem komfortable Funktionen zur Online-Tastaturprogrammierung sowie zur Verwaltung von Hilfstexten für
User Language-Programme zur Verfügung stellt.
Die Windows- und Motifversionen des
Autorouters ermöglichen die Konfiguration kaskadierender Pulldownmenüs. Menüpunkte können ihrerseits implizit auf Untermenüs verweisen. Die Notwendigkeit des Aufrufs von Funktionen zur expliziten Anzeige von Untermenüs entfällt damit. Die Pulldownmenüs der Windows- und Motifversionen des
Autorouters werden über das
User Language-Programm
uifsetup entsprechend mit kaskadierenden Menüs ausgestattet. Untermenüfunktionen lassen sich damit einfach lokalisieren und starten. Die über die rechte Maustaste implementierte Wiederholfunktion ist entsprechend angepasst. Die Wiederholung von in Untermenus untergebrachten Funktionen vereinfacht sich dadurch erheblich.
In den Windows- und Motifversionen des
Autorouters sind die folgenden Dialoge für Parametereinstellungen implementiert:
- - : Allgemeine Autorouter-Parameter
- - : Bilddarstellungsparameter
- - : Parameter für automatische Platzierung
- - : Autorouter-Optionen
- - : Autorouter-Steuerparameter
- - : Autorouter-Strategieparameter
- - : Autorouter-Batcheinstellungen
In den Pulldownmenükonfigurationen werden die Standardfunktionen für Parametereinstellungen über das
User Language-Programm
uifsetup durch die obigen Menüfunktionen zum Aufruf der entsprechenden Dialoge ersetzt.
Bei der Verwendung von Pulldownmenüs unter Windows und Motif wird über das
User Language-Programm
uifsetup eine an Windows angepasste Menüanordnung mit zum Teil geänderten Funktionsbezeichnungen und einer Vielzahl von Zusatzfunktionen konfiguriert. Das Hauptmenü des
Autorouters wird dabei wie folgt aufgebaut:
4.5.4 Grundsätzliches zur Bedienung
Automatische Parametersicherung
Im
Autorouter sind Funktionen zur automatischen Sicherung wichtiger Design- und Bearbeitungsparameter implementiert. Die folgende Parameter werden automatisch beim Sichern des aktuell geladenen Layouts in der aktuell bearbeiteten Designdatei gespeichert:
- Zeitintervall für automatische Datensicherung
- Name der aktuell geladenen Layoutfarbtabelle
- Eingaberaster
- Hintergrundraster
- Raster- und Winkelfreigabe
- Koordinatenanzeigemodus
- Breitendarstellungswert
- Airlineanzeigemodus für Bauteilplatzierung
- Bibliothekszugriffspfad
- Mincon-Funktion
Die Elementnamen der zu sichernden Parametersätze werden vom aktuell bearbeiteten Layout abgeleitet, d.h. diese layoutspezifischen Parametersätze erhalten den Elementnamen des aktuell bearbeiteten Layouts. Beim Laden eines Layouts wird automatisch der entsprechende Parametersatz mitgeladen. Dadurch wird in komfortabler Weise eine spezifische Arbeitsumgebung zur Bearbeitung des selektierten Layouts aktiviert.
Grafikausgabe und Statusanzeigen
Nach dem Start des
Autorouters wird der Fortgang des Routingprozesses sowohl grafisch als auch in einem Fenster mit statistischen Angaben angezeigt. Es ist moeglich, waehrend des Routingvorganges die Grafik- bzw. Bildschirmausgabe und die Aktualisierung der Statistik über den Routingprozess zu deaktivieren. Die Deaktivierung erfolgt durch Betätigung der Taste
b. Bei deaktivierter Grafikausgabe wird die Meldung
Router arbeitet. Aktivieren Bildschirmanzeige mit 'b'... angezeigt. Durch nochmaliges Betätigen der Taste 'b' wird die Grafikausgabe wieder aktiviert. Durch die Deaktivierung der Grafikausgabe lässt sich insbesondere in den Windowsversionen eine Beschleunigung des Routvorgangs um bis zu etwa 10 Prozent erreichen. Nach Beendigung des Routingprozesses erfolgt in jedem Fall ein Bildneuaufbau.
Während der Entflechtung zeigt der
Autorouter in der Mitteilungszeile die Anzahl der vom Router bereits realisierten Verbindungen (in Relation zur Gesamtanzahl der Verbindungen) sowie die aktuelle Viaanzahl an. Gleichzeitig wird ein Statusfenster zur Anzeige von Informationen zum internen Ablauf der aktuell aktiven Routingprozedur angezeigt. Die vorletzte Zeile dieses Statusfensters enthält eine Kennung für den aktiven Routerpass
(E - Einlesenen Bahnen,
S - SMD-Viavorverlegen,
I - Initialroutingpass,
R - Rip-Up-Pass,
P - Optimierer Patternsuchpass,
O - Optimiererpass). Auf die Routerpass-Kennung folgt die Anzeige der Anzahl
n der aktuell bearbeiteten Elemente in Relation zur Gesamtanzahl
m der zu bearbeitenden Elemente in der Form
n/m . Die Routerpass-Statuszeile wird abgeschlossen durch die Anzeige des
c aktuellen Routerpasses in Relation zur Gesamtanzahl
p der durchzuführenden Routerpasses in der Form
c/p . Die angezeigten Werte sind kein zuverlässiges Maß für eventuell zu erwartende Gesamtroutzeiten, da die Bearbeitungszeit zur Realisierung einer Verbindung bzw. eines Netzes stark von der Komplexität der jeweiligen Bahnkonstellation abhängt.
Vom Menü
aus können Zoomfunktionen
(,
und
) zur Auswahl des anzuzeigenden Arbeitsbereiches aufgerufen werden. Üblicherweise wird man hierbei mit
die Übersichtsdarstellung wählen, die auch per Default eingestellt ist. Die Funktionen zum Ändern des Zoomfaktors
(,
) und Funktion
können nur dann ausgeführt werden, wenn die Layoutdaten bereits geladen sind.
Mit der Funktion
aus dem Menü
kann die aktuelle Farbzuordnung definiert werden. Mit
lässt sich eine spezielle Farbtabelle laden. Beim Aufruf des
Autorouters wird automatisch die Farbtabelle mit dem Namen
standard (aus der Datei
ged.dat im BAE-Programmverzeichnis) geladen. Es empfiehlt sich in jedem Fall, die Farbpalette so einzustellen, dass alle Routinglagen angezeigt werden. Beim Routen mit partiellen Durchkontaktierungen kann es sinnvoll sein, die Farbeinstellung so zu definieren, dass die verwendeten Via-Typen unterschieden werden können.
Die Funktion
(Default-Einstellung 1.5mm) aus dem Menü
ermöglicht unter Berücksichtigung des Zoomfaktors die Darstellung der Leiterbahnen in ihrer wahren Breite. Alle Leiterbahnen, deren Breite über dem eingestellten Wert liegen, werden in ihrer wahren Breite relativ zum Zoomfaktor, alle schmäleren als Center-Linie dargestellt.
Die Funktion
aus dem Menü
ermöglicht die Darstellung von Verbindungen zu Potentialflächen durch ein Markierungskreuz (Default) oder eine Schwerpunktlinie. Bei der Markierungskreuz-Anzeige werden die Unroutes in Netzen mit Kupferflächen durch einen Punkt (Markierungskreuz) auf den entsprechenden Pins gekennzeichnet. Die andere Variante bewirkt die Freigabe von Vektor-Unroutes zum Schwerpunkt der Kupferfläche; d.h. die Unroutes in Netzen mit Kupferflächen, (jedoch ohne Versorgungslagen) werden mit zwei Punkten zum nächstgelegenen Schwerpunkt einer potentialmäßig geeigneten Kupferfläche (Schwerpunktlinie) dargestellt.
User Language
Im
Autorouter ist der
Bartels User Language Interpreter integriert, d.h. vom
Autorouter aus können
User Language-Programme gestartet werden. Der Anwender hat damit die Möglichkeit, eigene Zusatzfunktionen nach anwender- bzw. firmenspezifischen Bedürfnissen zu implementieren und in den
Autorouter einzubinden. Hierzu zählen zum Beispiel Statusanzeigen und Parametereinstellungen, Report- und Testfunktionen, Prüf- und Editierfunktionen, spezielle Plotfunktionen, automatische Platzierungs- und Routingfunktionen, Batch-Prozeduren, usw. usf.
Im
Autorouter können
User Language-Programme explizit oder implizit aufgerufen werden. Der explizite Programmaufruf erfolgt über den Menüpunkt
im Menü
. Nach der Aktivierung dieses Menüpunktes ist auf die Abfrage nach dem Programmnamen der Name des aufzurufenden
User Language-Programms (z.B.
ulprog ) explizit einzugeben. Die Betätigung einer beliebigen Maustaste oder die Eingabe eines Fragezeichens
? auf die Abfrage nach dem Programmnamen bewirkt hierbei die Aktivierung eines Popupmenüs mit allen aktuell verfügbaren
User Language-Programmen.
User Language-Programme können auch implizit über die Tastatur aktiviert werden. Diese Art des Programmaufrufs ist immer dann möglich, wenn nicht gerade eine andere interaktive Eingabe über Tastatur erwartet wird. Die Spezifikation des Programmnamens erfolgt dabei implizit durch Drücken einer Taste. Zulässige Tasten sind dabei die Standardtasten
(1,
2, ...,
0,
a,
b,
c, ...; entsprechende Programmnamen sind
ar_1,
ar_2, ...,
ar_0,
ar_a,
ar_b,
ar_c, ...) bzw. die Funktionstasten
(F1,
F2, ...; entsprechende Programmnamen sind dabei
ar_f1,
ar_f2, ...).
Der
Autorouter ermöglicht den ereignisgesteuerten Aufruf von
User Language-Programmen. Dabei lösen spezielle Ereignisse bzw. Operationen implizit, d.h. automatisch den Aufruf von
User Language-Programmen mit definierten Namen aus, sofern diese verfügbar sind. Im Einzelnen sind dies die
User Language-Programme
ar_st beim Starten des
Autorouters,
ar_load nach dem Laden eines Elements,
ar_save vor dem Speichern eines Elements,
ar_tool bei Selektion eines Toolbarelements sowie
ar_zoom bei Änderung des Zoomfaktors. Der Aufruf über die Startupsequenz der Interpreterumgebung eignet sich besonders zur automatischen Voreinstellung von modulspezifischen Parametern sowie zur Tastaturprogrammierung und Menübelegung. Der implizite Aufruf von
User Language-Programmen nach dem Laden bzw. vor dem Speichern von Elementen ermöglicht die automatische Aktivierung elementspezifischer Bearbeitungsparameter wie z.B. des zuletzt selektierten Zoombereichs oder spezieller Farbeinstellungen. Bei Interaktionen in der Werkzeugliste werden die den selektierten Toolbarelementen zugewiesenen Funktionen ausgelöst. Die Änderung des Zoomfaktors kann dazu benutzt werden, Aktualisierungen in Funktionen zur Verwaltung von Entwurfsansichten auszulösen.
Mit der
Bartels User Language werden darüber hinaus mächtige Systemfunktionen zur Tastaturprogrammierung und Menübelegung sowie zur Definition von Werkzeugleisten (Toolbars) zur Verfügung gestellt. Beachten Sie bitte, dass über die mit der BAE-Software ausgelieferten
User Language-Programme eine Vielzahl von Zusatzfunktionen implementiert und transparent in die Benutzeroberfläche des
Autorouters eingebunden sind.
Eine ausführliche Beschreibung der
Bartels User Language finden Sie im
Bartels User Language Programmierhandbuch (Kapitel 4.2 enthält eine Auflistung aller mit der BAE-Software ausgelieferten
User Language-Programme).
Neuronales Regelsystem
Im
Bartels AutoEngineer sind eine Reihe mächtiger Zusatzfunktionen mit Auswirkungen auf die Arbeitsweise des
Autorouters über das integrierte
Neuronale Regelsystem implementiert.
Kapitel 6.3.2 enthält eine Übersicht über die im Leiterkartenlayoutsystem bereitgestellten Regelsystemanwendungen.
4.5.5 Optionen
Bevor Sie den
Autorouter-Lauf starten, sollten Sie über das Menü bzw. den Dialog
die Parameter einstellen, mit denen der Router die Leiterkarte entflechten soll. Mit Hilfe dieser Parameter werden prinzipiell die Designregeln für die automatische Leiterkartenentflechtung festgelegt. Aus diesem Grunde ist - sofern nicht anders vermerkt - die Änderung der nachfolgend beschriebenen Options-Parameter jeweils nur vor einem Router-Neustart möglich. Die über
eingestellten Parameter werden bei einer Sicherung der Layoutdaten durch den
Autorouter in der Projektdatei mit abgespeichert und müssen daher bei späteren
Autorouter-Läufen nicht nochmals eingestellt werden, sofern das Routing mit den zuvor definierten Parametern durchgeführt werden soll.
Routingraster, Standard-Leiterbreite, Standard-Mindestabstand
Sofern der Gridless-Router des
Autorouters nicht aktiviert ist (siehe unten), arbeitet der
Autorouter rasterorientiert. Der Anwender kann vor dem Start des Autoroutings das Routingraster festlegen. Dies geschieht mit der Funktion
im Menü
. Die möglichen Eingaben sind in
Tabelle 4-1 aufgelistet.
Tabelle 4-1: Autorouter-Auflösungen
Auflösung | Via-Versatz | Standard Leiterbreite | Standard Mindestabstand |
[mm] | [mil] | [mm] | [mil] |
1/20 Inch std. | - | 0.37 | 14.6 | 0.29 | 11.4 |
1/40 Inch std. | x | 0.32 | 12.6 | 0.29 | 11.4 |
1/50 Inch std. | - | 0.25 | 9.9 | 0.23 | 9.1 |
1/60 Inch std. | x | 0.21 | 8.3 | 0.19 | 7.5 |
1/80 Inch std. | x | 0.16 | 6.3 | 0.13 | 5.1 |
1/100 Inch std. | - | 0.13 | 5.1 | 0.10 | 3.9 |
1/40 Inch no ofs. | - | 0.32 | 2.6 | 0.29 | 1.4 |
1/60 Inch no ofs. | - | 0.21 | 8.3 | 0.19 | 7.5 |
1/80 Inch no ofs. | - | 0.16 | 6.3 | 0.13 | 5.1 |
1/100 Inch w. ofs. | x | 0.13 | 5.1 | 0.10 | 3.9 |
Beim ersten
Autorouter-Aufruf ist die Auflösung per Default auf
eingestellt. Jede Neueinstellung wird mit dem Layout abgespeichert und setzt automatisch auch die Standard-Leiterbahnbreite und den Standard-Mindestabstand auf Defaultwerte (siehe
Tabelle 4-1). Diese beiden Parameter lassen sich nach der Festlegung der Auflösung noch verändern (Funktionen
und
). Zu beachten ist hierbei jedoch, dass die Summe dieser beiden Werte den Wert für die Auflösung nicht überschreiten darf. Soll z.B. ein SMD-Layout mit einer Auflösung von 1/40 Zoll entflochten werden, dann empfiehlt es sich, nach der Definition der Auflösung die Werte für die Standard-Leiterbahnbreite und den Standard-Mindestabstand auf z.B. jeweils 0.2mm einzustellen, damit der
Autorouter zur Realisierung normaler Leiterbahnen die Pinkanäle zwischen benachbarten Anschlüssen von SO-Gehäusen nutzen kann.
Die Auflösung 1/60 Zoll erlaubt das Verlegen von zwei Leiterbahnen zwischen benachbarten Anschlüssen von DIL-Gehäusen. Um eine saubere Ausmittelung der Leiterbahnen in den entsprechenden Pinkanälen zu erreichen, wird in diesem speziellen Fall intern die gesamte Routingmatrix um 1/120 Zoll verschoben.
Neben den in
Tabelle 4-1 aufgeführten Standard-Routingrastern besteht zusätzlich die Möglichkeit, ein beliebiges Routingraster (z.B. metrisch oder für spezielle Pin-Grids) zu wählen. Dies geschieht mit der Option
im Routingraster-Auswahlmenü der Funktion
des Menüs
. In diesem Fall werden die Standard-Leiterbahnbreite und der Standard-Mindestabstand auf den halben Wert des gewählten Routingrasters eingestellt (also z.B. auf 0.55mm, wenn ein Raster von 1.1mm gewählt wurde).
Der
Bartels AutoEngineer verfügt über eine Offgrid-Erkennung. Dadurch kann der
Autorouter auch Pins anschließen, die nicht im aktuell eingestellten Routingraster liegen (z.B. Stecker mit metrischem Pin-Grid). Grundsätzlich sollte der Anwender jedoch bereits bei der Bauteilplatzierung dafür sorgen, dass - soweit möglich - die Bauteilanschlüsse im Routingraster liegen. Andernfalls kann sich der Rechenzeitbedarf aufgrund der zeitintensiven Offgrid-Erkennung signifikant erhöhen, oder aber bestimmte Anschlüsse können im vorgegebenen Routingraster überhaupt nicht realisiert werden.
Bei der Wahl der Auflösung sollte man darauf achten, dass man kein unnötig feines Routingraster einstellt, da der Speicherplatzbedarf für die Routingmatrix quadratisch mit der Verkleinerung des Rasters anwächst. So wird für eine Routingmatrix im 1/80 Zoll Raster viermal so viel Speicher benötigt wie im 1/40 Zoll Raster. Bei einer Verkleinerung des Routingrasters ist darüber hinaus zu bedenken, dass auch der Rechenzeitbedarf für die Entflechtung dramatisch anwächst, da die Anzahl der vom
Autorouter zu bewertenden möglichen Wegevarianten in einem noch viel stärkeren Maß als der Speicherplatzbedarf zunimmt.
Bei fast allen Auflösungen kann angegeben werden, ob mit oder ohne Via-Versatz geroutet werden kann. Durch das Versetzen der Vias kann die Anzahl der durch Durchkontaktierungen gesperrten Kanäle drastisch verringert und damit das Routingergebnis entsprechend verbessert werden (siehe
Abbildung 4-5). Die Standardwerte sind für Vias kleiner 1mm berechnet. Sofern größere Vias verwendet werden, sollte der Via-Versatz abgeschaltet werden, da sich sonst das Routingergebnis dramatisch verschlechtern könnte.
Abbildung 4-5: Routen mit und ohne Via-Versatz
Die Standard-Leiterbreite gibt an, mit welcher Leiterbahnbreite der
Autorouter die Verbindungen verlegen soll. Ausnahmen hiervon bilden die Signalnetze, für die spezielle Netzattribute definiert sind. Ist für ein Signal das Netzattribut
routwidth mit einer entsprechenden Angabe für die Leiterbahnbreite definiert, dann wird das gesamte Netz in dieser Breite geroutet. Ist für ein Signal das Netzattribut
powwidth definiert, dann werden die in der Bauteilbibliothek vordefinierten Anschlüsse zur Stromversorgung mit der entsprechenden Leiterbahnbreite angeroutet. Der Standard-Mindestabstand gibt an, welche Abstände beim Verlegen der Leiterbahnen von signalfremdem Kupfer mindestens einzuhalten sind. Ausnahmen hiervon bilden die Signalnetze, für die über das Netzattribut
mindist ein spezieller Mindestabstand zu anderen Potentialen vorgegeben ist. Signale, für die Netzattribute definiert sind, werden vom
Autorouter automatisch mit höherer Priorität bearbeitet. Darüber hinaus kann über das Netzattribut
priority für jedes Signalnetz explizit eine Routingpriorität vorgegeben werden. Weitere Ausführungen zur Definition von netzspezifischen Attributen zur Routersteuerung finden Sie in der Beschreibung des Utilityprogramms
loglib (siehe
Kapitel 7.11 dieses Handbuchs).
Routinglagenzahl und Lagenzuordnung
Über die Funktionen
und
kann die Anzahl der Signallagen sowie der Typ der Lagen definiert werden. Dabei kann für jede Lage wahlweise eine Vorzugsrichtung (horizontal, vertikal, oder keine) angegeben werden. Es besteht auch die Möglichkeit, Sperrlagen zu definieren, auf welchen der
Autorouter keine Leiterbahnen verlegen darf. Die Lagenzahl ist per Default entsprechend der im
Layouteditor vorgenommenen Definition der Obersten Lage (Bestueckseite), die Vorzugsrichtungen sind abwechselnd auf horizontal und vertikal (beginnend bei Signallage 1) eingestellt.
Für die Routinglagenzahl können Werte von 2 bis 12 angegeben werden, d.h. der
Bartels AutoEngineer ist in der Lage, bis zu 12 Signallagen simultan zu routen. Die Zählweise der Lagen beginnt mit der Signallage 1 (Lötseite). Der
Autorouter benutzt alle nicht als Sperrlagen definierte Routinglagen für das Verlegen von Leiterbahnen. Die Entflechtung von Single-Layer-Platinen ist damit z.B. mit einer Routinglagenzahl von 2 und der gleichzeitigen Definition der Lage 1 (Lötseite) zur Sperrlage mit Hilfe der Lagenzuordnung möglich.
Alle für die Enflechtung relevanten Objekte auf Sperrlagen werden vom
Autorouter entsprechend berücksichtigt. Diesen Umstand und die Möglichkeit der Definition von Sperrlagen kann man sich z.B. zunutze machen, um Via-Sperrflächen zu vorzugeben. Hierzu sind z.B. bei einem Zwei-Lagen-Layout zunächst im
Layouteditor entsprechende Sperrflächen auf der Signallage 3 zu definieren; anschließend kann der
Autorouter aufgerufen werden, die Routinglagenzahl ist auf 3 einzustellen und die Routinglage 3 als Sperrlage zu definieren. Danach kann das Routing gestartet werden, wobei der
Autorouter die Signallagen 1 und 2 für die Entflechtung benutzt und zugleich die auf der Signallage 3 definierten Sperrflächen als Bereiche erkennt, in welchen er keine (über alle Signallagen definierten) Durchkontaktierungen setzen darf.
Die Definition der Lagenzuordnung (bei vorgegebener Routinglagenzahl) ist auch zwischen unterschiedlichen Routerläufen (d.h. ohne Router-Neustart) möglich. Dabei ist allerdings zu beachten, dass bei der Definition von Sperrlagen die darauf bereits gerouteten Leiterbahnen in nachfolgenden Routerläufen nur dann umverlegt bzw. wieder entfernt werden, wenn sich dadurch keine Verschlechterung des Routergebnisses ergibt, d.h. wenn dadurch die Anzahl der bereits gerouteten Verbindungen nicht abnimmt.
Wenn z.B. bei einer Multilayer-Platine mit SMD-Bestückung die Anforderung besteht, die Außenlagen zunächst nur zur Ankontaktierung der SMD-Anschlüsse in die Innenlagen zu verwenden, dann könnte man (über
und
) zunächst einen Router-Pass zum Vorverlegen von SMD-Vias starten. Anschließend werden die Außenlagen zu Sperrlagen definiert und es wird z.B. ein komplettes Initialrouting - ggf. auch mit anderen Vorzugsrichtungen, als beim Vorverlegen von SMD-Anschlüssen - durchgeführt. Ergebnis wäre ein Layout, dessen Außenlagen nur die SMD-Anschlüsse in die Innenlagen enthalten, während die eigentliche Entflechtung in den Innenlagen vorgenommen wurde.
Der
Bartels AutoEngineer kann außer den normalen Signallagen noch bis zu 12 Versorgungslagen in den Routingprozess mit einbeziehen. Auf diesen Versorgungslagen können zusätzlich Potentialflächen definiert sein (Split Power Planes). Bei der Verwendung von Versorgungslagen erzeugt der
Autorouter über Durchkontaktierungen automatisch die korrekten Anschlüsse der SMD-Pins in die Versorgungslagen bzw. zu den darin definierten Potentialen (Power Layer Routing bzw. Split Power Plane Routing). Damit können vom
Bartels AutoEngineer Multilayer-Platinen mit bis zu 24 Lagen entflochten werden.
Maximal zulässige Viaanzahl
Mit der Funktion
kann die maximal zulässige Anzahl Vias pro Verbindung festgelegt werden. Die Default-Einstellung ist 20. Wird der Wert 0 definiert, dann versucht der Autorouter, das Layout ohne Verwendung von Vias zu routen. Dieser Optionsparameter kann auch zwischen unterschiedlichen Routerläufen (d.h. ohne Router-Neustart) geändert werden. Dabei ist allerdings zu beachten, dass bei einer Reduzierung der maximal zulässigen Viaanzahl nur dann Vias eliminiert werden, wenn sich dadurch keine Verschlechterung des Routergebnisses ergibt, d.h. wenn dadurch die Anzahl der bereits gerouteten Verbindungen nicht abnimmt.
Via-Raster
Mit
lässt sich das Raster für die Platzierung der Durchkontaktierungen auf 1/10 oder 1/20 Zoll einstellen. Per Default ist hier kein Raster vorgegeben
(). Dieser Optionsparameter kann auch zwischen unterschiedlichen Routerläufen (d.h. ohne Router-Neustart) geändert werden. Dabei ist allerdings zu beachten, dass bei einer Einschränkung des Via-Rasters nur dann Vias umplatziert bzw. eliminiert werden, wenn sich dadurch keine Verschlechterung des Routergebnisses ergibt, d.h. wenn dadurch die Anzahl der bereits gerouteten Verbindungen nicht abnimmt.
Halbraster
Das Menü
enthält die Funktion
mit den Auswahlpunkten
und
. Mit Hilfe dieser Option kann gewählt werden, ob das über
eingestellte Routingraster im Verhältnis 1:1 eingehalten werden soll
(, Default), oder ob der Router zusätzlich wahlweise auf einem um den halben Rasterabstand verschobenen Grid routen darf
(). Erlaubt man dem Router die Entflechtung auf dem Halbraster, dann kann er also z.B. bei einer Standard-Auflösung von 1/40 Zoll - sofern nötig - zusätzlich das Routingraster 1/80 Zoll benutzen, wobei allerdings die aktuell für das Standardraster definierten Werte für die Standard-Leiterbahnbreite und den Standard-Mindestabstand unverändert Gültigkeit besitzen.
Gridless Routing im Neuronalen Autorouter
Im
Autorouter ist ein regelgesteuerter, rasterfrei arbeitender Router (Gridless Router) integriert. Normalerweise ist der Gridless Router deaktiviert. Dies entspricht der Einstellung
in der Funktion
des Menüs
. Zur Aktivierung des Gridless Routers ist über die Funktion
einfach die Option
zu selektieren. Der Gridless Router arbeitet selektiv, d.h. rasterfreies Routen wird nur lokal an solchen Stellen durchgeführt, wo dies eine Verbesserung hinsichtlich der Entflechtbarkeit bzw. der Fertigungsfreundlichkeit bewirkt. Beim rasterfreien Routen ergeben sich sehr viel mehr Möglichkeiten der Belegung von nicht im Raster liegenden Pinkanälen, wodurch die Entflechtbarkeit komplexer Layouts entscheidend erhöht werden kann. Offgrid-platzierte Pins, d.h. Pins, die nicht im Raster liegen, werden durch den Gridless Router in der Regel auf direkterem Wege angeschlossen. Hierbei kann der Router auch über längere Strecken hinweg vom Raster abweichen, wodurch zum einen die Blockierung benachbarter Pins bzw. Pinkanäle vermieden werden kann, und zum anderen das Layout insgesamt besser für die Fertigung optimiert wird.
Im Modus
kann der Router zudem zwischen rasterfrei platzierten Pins unter Berücksichtigung (d.h., in diesem Fall besser gesagt Ausnutzung) der aktuell eingestellten Mindestabstände hindurchrouten. Damit lassen sich speziell bei dichtbepackten SMD-Platinen erheblich bessere Routingergebnisse erzielen.
Im Gridlessmodus
werden lediglich die Anschlussegmente an rasterfrei platzierten Pins solange wie möglich gerade gehalten bevor ins Routingraster abgeknickt wird. Beim normalen Routen von Leiterbahnen werden in diesem Modus keine Gridlessabfragen durchgeführt, d.h. es kann z.B. nicht allen Fällen wo dies möglich wäre zwischen rasterfrei platzierten Pins hindurchgeroutet werden.
Warnung
Beachten Sie, dass aufgrund der Verwendung zusätzlicher interner Datenstrukturen (Priority Tree) für das rasterfreie Routen ein gesteigerter Bedarf an Hauptspeicher und Rechenleistung entsteht.
Bahnen Ongrid/Offgrid
Die Funktion
ermöglicht die Festlegung, ob Leiterbahnknicke nur auf dem Routingraster liegen dürfen, oder auch Offgrid
(, Default-Einstellung) abgeknickt werden darf. Befinden sich auf der Leiterkarte sehr viele rechteckige bzw. quadratische Lötaugen, dann empfiehlt es sich u.U., auf
einzustellen, damit die Mindestabstände zwischen geknickten Leiterbahnsegmenten und Lötaugenecken nicht unterschritten werden (siehe hierzu
Abbildung 4-6).
Abbildung 4-6: Routen Bahnen Ongrid/Offgrid
Pin-Anschlussart
Die Funktion
erlaubt die Definition der Pin-Anschlussart. Hierbei kann wahlweise festgelegt werden, ob die Anschlüsse an rechteckige bzw. annähernd rechteckige Pins über die Pinecken ausgeführt werden dürfen
(; Default-Einstellung), oder ob diese Anschlussart unterdrückt werden soll
(). Wird das Anrouten an die Pinecken gesperrt, dann ergibt sich i.d.R. ein schöneres (weil gleichmäßigeres) Leiterbild; allerdings kann diese Pin-Anschlussart das Erreichen der 100%-Entflechtung erschweren. Weiterhin ist bei gesperrten Pinecken zu beachten, dass das Anrouten an Pins mit etwa Leiterbreite (oder kleiner) fehlschlagen kann (zu achten ist insbesondere auf breite Leiterbahnen; Workaround evtl.: Vorverlegen und Fixieren). Auch können sich beim Busrouting mit gesperrten Pinecken u.U. unerwünschte Nebeneffekte einstellen.
4.5.6 Steuerung
Über das Menü
können verschiedene Router-Steuerungsparameter eingestellt werden.
Optimierungszahl
Mit der Funktion
kann die Anzahl der Optimierungsdurchläufe für die
-Funktion festgelegt werden (Wertebereich 0..99, Default 2). Die Optimierungszahl gibt an, wie viele Optimierungen nach dem Erreichen einer 100-prozentigen Entflechtung durch den
durchzuführen sind.
Router-Cleanup, Optimierer-Cleanup
Cleanup-Läufe (Anzeige
Pattern Suche ) sind netzübergreifende Via-Optimierungen, die eine gewisse Rechenzeit benötigen, jedoch zu einer drastischen Reduzierung der Viaanzahl führen. Über die Funktionen
bzw.
können diese Cleanup-Läufe im Rip-Up-Router bzw. im Optimierer ein- (Default) oder abgeschaltet werden. Durch die während der Cleanup-Läufe aktive netzübergreifende Mustererkennung kann der
Autorouter erkennen, welche Leiterbahnverläufe die Realisierung noch nicht verlegter Verbindungen bzw. das Umverlegen bereits gerouteter Bahnen blockieren. Bei komplexen Aufgabenstellungen und insbesondere für das Rip-Up-Routing ist daher von einem Abschalten der Cleanup-Läufe dringend abzuraten. Wenn die Patternsuche deaktiviert ist, dann erfolgt einfach eine sequentielle Abarbeitung der Verbindungen. Dies kann durchaus ausreichend sein für abschließende Optimiererläufe, wobei allerdings zu bedenken ist, dass für die Verschiebung oder Begradigung ganzer Leiterbahnbündel dann ggf. mehrere Durchläufe des Fertigungsoptimierers notwendig sind.
Rip-Up Baumzahl, Rip-Up Tiefe, Rip-Up Retries
Mit den Funktionen
(maximale Anzahl der gleichzeitig herausnehmbaren Verbindungen pro Rip-Up-Suchlauf, der Defaultwert hierfür ist 2, der Wertebereich für mögliche Vorgaben erstreckt sich von 1 bis 9),
(maximale Rip-Up-Baumtiefe, Defaultwert 50, Wertebereich 1 bis 999) und
(maximale Anzahl Wiederholungen des Rip-Up-Suchlaufs für eine spezielle Leiterbahn; Defaultwert 2, Wertebereich 0 bis 99) kann die Hartnäckigkeit und Intensität des Rip-Up-Routers beeinflusst werden. Es empfiehlt sich z.B. die Steuerparameter für den Rip-Up-Router auf Maximalwerte zu setzen, wenn nur noch sehr wenige Leiterbahnen zu verlegen sind. Dadurch spart man sich u.U. zeitaufwändige Zwischenläufe des Optimierers während des Rip-Up-Routings, oder aber man erkennt sehr schnell, ob die noch fehlenden Verbindungen mit den aktuellen Vorgaben und Routeroptionen überhaupt realisierbar sind. Der Rip-Up-Router erkennt sehr schnell, wenn z.B. ein Pinanschluss durch Sperrflächen oder vorverlegte und fixierte Leiterbahnen blockiert ist. In diesem Fall wird der Rip-Up-Router nicht endlos lange versuchen, die entsprechende Verbindung zu realisieren; vielmehr wird das Rip-Up-Routing dann abgebrochen, und es erfolgt die Aktivierung der nachgeschalteten Fertigungsoptimierung.
Wenn nach einem Rip-Up-Lauf mehr als 99.5% der Verbindungen gefunden sind, werden die Rip-Up-Parameter automatisch auf Rip-Up Baumzahl 6, Rip-Up Level 200 und Rip-Up Retries 10 gesetzt, sofern nicht bereits höhere Werte eingestellt sind. Damit lassen sich ggf. die langwierigen Optimierer-CLeanupläufe zwischen Rip-Up-Prozessen vermeiden, wenn nur noch wenige Verbindungen offen sind.
SMD Via-Vorlegen
Der
Bartels AutoEngineer verfügt über ein spezielles Routingverfahren zur Vorverdrahtung von SMD-Anschlüssen (SMD-Fanout-Routing). Dieser Initiallauf kann mit Hilfe der Funktion
im Menü
abgeschaltet (Default;
) oder aktiviert werden
(). Ist die Option zur Durchführung der SMD-Via-Vorverdrahtung aktiviert, dann werden - soweit möglich bzw. sinnvoll - in einem dem eigentlichen Initialrouter-Lauf vorgeschalteten speziellen SMD-Via-Routerlauf alle zu verdrahtenden SMD-Pins mit Leiterbahnanschlüssen zu Durchkontaktierungen versehen, wobei sich die Routing-Richtung sinnvollerweise nach Form und Lage der anzuschließenden SMD-Pads ausrichtet. Hierbei bleiben die über die Lagenzuordnung vorgegebenen lagenspezifischen Vorzugsrichtungen unberücksichtigt, um die Blockierung von PLCC/SMD-Pinkanälen bzw. PLCC/SMD-Anschlüssen, die entgegen der Vorzugsrichtung angeordnet sind, zu vermeiden. Durch diese Art der Vorverdrahtung soll beim SMD-Routing mit mehr als zwei Signallagen möglichst frühzeitig eine einigermaßen sinnvolle Vorgabe für die weitgehende Vermeidung der extensiven Nutzung der SMD-Außenlagen erreicht werden. SMD-Pins, die bereits über fixierte Leiterbahnen verbunden sind, werden von diesem Verfahren ausgenommen. Spätestens bei der Optimierung werden eventuell überflüssige SMD-Via-Routes wieder eliminiert. Bei der Verwendung des Verfahrens zur Vorverdrahtung von SMD-Anschlüssen ist allerdings zu beachten, dass u.U. überflüssige Durchkontaktierungen erzeugt werden, und sich der
Autorouter dadurch relativ frühzeitig die Möglichkeit einer einfacheren Verdrahtung verbaut. Dies kann in speziellen Fällen sowohl zu einer Verschlechterung des Routingergebnisses als auch zu einem dramatischen Anstieg der Rechenzeit führen, da es ggf. für den Router sehr mühselig wird, die frühzeitig blockierten Bereiche durch Rip-Up-Patternsuche wieder zu bereinigen.
Platzierungsoptimierung im Rip-Up-Router
Der Rip-Up/Retry-Router des
Autorouters bedient sich integrierter Funktionen zur Platzierungsoptimierung durch selektive Bauteil- und Pin/Gate-Swaps. Dieses Verfahren kann über die Funktion
im Menü
wahlweise aktiviert (Option
) bzw. deaktiviert (Option
; Default) werden. Ist die Platzierungoptimierung aktiviert, dann führt der Rip-Up-Router nach Bedarf Pin/Gate-Swaps durch, um die Entflechtbarkeit der getauschten Bauteile, Gatter oder Pins zu erhöhen bzw. überhaupt zu ermöglichen und dadurch schneller zu einem komplett gerouteten Layout zu gelangen. Die Auswahl der Swaps erfolgt selektiv, d.h. es werden nur solche Swaps ausgeführt, die auch tatsächlich eine Vereinfachung des Entflechtungsproblems bewirken. Die Platzierungsoptimierung unterliegt natürlich dem Backtrackingverfahren des Routers, d.h. Swaps, die eine Verschlechterung des aktuellen Routingergebnisses bewirken, werden automatisch zurückgenommen. Selbstverständlich wird die Zulässigkeit der Swaps anhand der jeweiligen Bauteildefinitionen aus der Logischen Bibliothek überprüft. Von der Platzierungsoptimierung ausgenommen bleiben fixierte Bauteile sowie Pins, die bereits über fixierte Leiterbahnen angeschlossen sind.
Wurden vom
Autorouter Pin/Gate-Swaps durchgeführt, dann wird beim Speichern des Layouts ein spezieller Datenbankeintrag erzeugt, der im
Schaltplaneditor ausgewertet wird und die automatische Durchführung notwendiger
-Prozesse beim Laden von Schaltplänen aktiviert (siehe hierzu
Kapitel 2.7. Im
Packager wird dieser Datenbankeintrag ebenfalls ausgewertet, um den Anwender ggf. über eine Bestätigungsabfrage auf die Notwendigkeit zur Durchführung der
vor dem nächsten
Packager-Lauf hinzuweisen (siehe hierzu
Kapitel 3.2.3).
Zwischenspeichern
Die Funktion
ermöglicht das automatische Zwischenspeichern von Teil-Routingergebnissen (Default) oder die Abschaltung dieser Funktion.
4.5.7 Strategie
Über das Menü
können verschiedene Router-Strategieparameter eingestellt werden. Die hierbei änderbaren Kostenfaktoren sollten nur in Ausnahmefällen modifiziert und erst recht nicht auf Extremwerte gesetzt werden, da die Default-Einstellungen Erfahrungswerte sind, die für den Großteil der Routingprobleme die bestmögliche Routerstrategie darstellen.
Bei einer Änderung der Strategieparameter ist insbesondere zu bedenken, dass sich diese Parameter in den meisten Fällen in hohem Maß wechselseitig beeinflussen. So hat z.B. die Elimination von Vias (z.B. durch hohe Via-Kosten) in aller Regel zur Folge, dass in höherem Maße gegen die Vorzugsrichtungen verstoßen werden muss. Dadurch wird die Einstellung eines hohen Kostenfaktors für die Einhaltung der Vorzugsrichtung möglicherweise völlig kompensiert wenn nicht gar bedeutungslos.
Des Weiteren ist zu beachten, dass mit den Strategieparametern lediglich untergeordnete Optionen für die Entflechtung vorgegeben werden können. Viel wichtiger als z.B. die Einhaltung von Vorzugsrichtungen ist für den
Autorouter die komplette Lösung des gestellten Verdrahtungsproblems. Der
Autorouter versucht in jedem Fall die Leiterkarte zu 100% zu entflechten, wobei bestimmte Strategieparameter ggf. zunächst völlig unberücksichtigt bleiben müssen.
Tabelle 4-2: Autorouter-Strategieparameter
Strategieparameter | Wertebereich | Default | Wirkung im Router | Wirkung im Optimierer |
V-Richtung optim. | Normal Vorzugsrichtung Diagonal | Normal | - | x |
Via-Kosten | 2..20 | 10 | x | x |
Pinkanal-Kosten | 0..10 | 3 | x | - |
V-Richtung-Kosten | 0..5 | 1 | x | x |
R-Aend.-Kosten | 0..5 | 2 | - | x |
Pack-Kosten | 0..5 | 1 | x | - |
Stat. Verteilung | 0..50 | 10 | x | - |
Bus-Abknickkosten | 0..5 | 2 | x | - |
Abstand-1-Kosten | 0..10 | 5 | x | - |
Abstand-2-Kosten | 0..10 | 2 | x | - |
Kreuzungskosten | 2..100 | 20 | x | x |
Diagonal-Kosten | 0..10 | 5 | - | x |
Off-Grid-Kosten | 0..5 | 2 | x | x |
Vorzugsraster | 0..7 | 0 | x | x |
Anti-Vorzugsraster-Kosten | 0..10 | 1 | x | x |
Anti-Netzbereich-Kosten (BAE HighEnd) | 0..5 | 1 | x | x |
Vorzugsrichtungs-Optimierung
Über die Funktion
kann der Optimierer angewiesen werden, ohne Vorzugsrichtung
(, Default), mit Vorzugsrichtung
(, für Schwallbadlötung ohne Lötstoplack) oder vorzugsweise diagonal
(, 45-Grad) zu optimieren.
Viakosten
Mit
wird der Router angewiesen, mit möglichst wenigen Vias (hoher Wert, möglicherweise kompliziertere Leiterbahnführung) oder unter Verwendung einer größeren Anzahl von Vias (niedriger Wert, u.U. einfachere Leiterbahnführung) zu entflechten.
Pinkanal-Kosten
Mit der Einstellung der
kann eine Vermeidung der Benutzung oder Belegung von Pinkanälen (hoher Wert) oder eine häufige Belegung der Pinkanäle (niedriger Wert) veranlasst werden. Pinkanäle sind die Bereiche zwischen benachbarten Bauteilanschlüssen.
Vorzugsrichtungskosten
Über
können die Kosten für das Routen gegen die Vorzugsrichtung eingestellt werden. Ein hoher Wert bedeutet dabei die kontinuierliche Einhaltung der Vorzugsrichtung, während ein niedriger Wert die häufige Verletzung der Vorzugsrichtung zulässt. Die Vorzugsrichtung kann für jede Routinglage mit der Funktion
(Menü
) für jede Routinglage entweder auf horizontal oder auf vertikal gesetzt werden. Dieser Kostenfaktor wird beim Routen immer berücksichtigt. Beim Optimieren hingegen werden die Vorzugsrichtungskosten nur dann berücksichtigt, wenn der Optimierer mit der Funktion
(siehe oben) angewiesen wurde, die eingestellten Vorzugsrichtungen einzuhalten.
Richtungsänderungskosten
Mit
werden dem Optimierer die Richtungsänderungskosten vorgegeben. Ein hoher Wert führt zu einer lokalen Vermeidung von Richtungsänderungen, ein niedriger Wert erlaubt eine höhere Anzahl von Leiterbahnknicken.
Packungskosten
Über
werden die Packungskosten für das Routing vorgegeben. Ein hoher Wert führt zu einer starken Bündelung der Leiterbahnen, ein niedriger Wert erlaubt eine weitere Verteilung der Leiterbahnen (möglicherweise jedoch auf Kosten einer 100%-Auflösung).
Kostenbasis für die Statistische Verteilung
Mit
wird die Kostenbasis für die statistische Verteilung der Leiterbahnen vorgegeben. Je höher der Wert, umso höher der Einfluss auf das Routing, d.h. umso gleichmäßiger die globale Verteilung der Leiterbahnen über die Leiterkarte.
Bus-Abknickkosten
Die
regeln das bei Busverbindungen notwendige Abknicken direkt nach einem durchlaufenen Pinkanal. Ein hoher Wert bewirkt eine hohe Priorität des Abknickens.
Rip-Up-Abstandskosten
Die
regeln während des Rip-Up-Routings die Vermeidung der Benutzung von Wegen gelöschter Leiterbahnen im Nahbereich. Eine hohe Zahl steht für eine weitgehende Vermeidung.
Die
regeln während des Rip-Up-Routings die Vermeidung der Benutzung von Wegen gelöschter Leiterbahnen im Fernbereich. Eine hohe Zahl steht für eine weitgehende Vermeidung.
Kreuzungskosten
Die durch
einstellbaren Leiterbahn-Übergangskosten steuern die Patternerkennung während der netzübergreifenden Optimierung und haben damit Einfluss auf die Erkennung unnötiger Vias. Ein hoher Wert erlaubt mehr komplexe und viahaltige Leiterbahnkonstruktionen. Ein niedriger Wert führt zur vermehrten Analyse und zeitaufwändigeren netzübergreifenden Optimierung.
Diagonalrouting-Kosten
Die
erlauben (hoher Wert) bzw. verbieten (niedriger Wert) dem Optimierer die vorzugsweise diagonale (45-Grad) Leiterbahnführung. Dieser Kostenfaktor wird nur dann berücksichtigt, wenn der Optimierer mit der Funktion
angewiesen wurde, in Diagonal-Richtung zu optimieren.
Offgrid-Routing-Kosten
Mit
wird für den Fall, dass im Halbraster (siehe oben) geroutet wird, die Priorität der Vermeidung (hoher Wert) oder Benutzung (niedriger Wert) des Halbrasters während dem Routen und Optimieren bestimmt.
Vorzugsraster, Anti-Vorzugsraster-Kosten
Zur besseren Leiterbahnverteilung auf Leiterkarten kann ein
im Bereich von 0 bis 7 angegeben werden. Mit der Voreinstellung 0 ist kein Vorzugsraster selektiert. Mit höheren Vorzugsrasterwerten wird bevorzugt jeder 2. (bzw. 4., 8., 16., 32., 64. oder 128.) Rasterpunkt geroutet. Mit den
wird vorgegeben, wie stark ein Routen außerhalb des Vorzugsrasters bestraft werden soll. Vorzugsrastereinstellungen sind nur für Layouts sinnvoll, auf denen entsprechend viel Freiraum vorhanden ist. Die Kostenfaktoren sollten schon beim ersten Start des Autorouters entsprechend eingestellt werden. Ein nachträgliches Optimieren erfordert mehrere Optimiererläufe und kann daher sehr zeitaufwändig werden. Es sei auch darauf hingewiesen, dass eine entsprechend hohe Einstellung der Kostenfaktoren ein Routen von Umwegen begünstigen kann.
Anti-Netzbereich-Kosten (BAE HighEnd)
Der Strategieparameter
wird nur in
BAE HighEnd unterstützt. Damit wird vorgegeben, wie stark ein Routen außerhalb vorgegebener netzspezifischer Routingbereiche bestraft werden soll. Ein hoher Wert weist den Router an, netzspezifische Routingbereiche nach Möglichkeit nicht zu verlassen, ein niedriger Wert gestattet ein häufigeres Verlassen vorgegener netzspezifischer Routingbereiche. Für diesen Strategieparameter können Werte von 0 bis 5 angegeben werden, die Standardeinstellung ist 1.
4.5.8 Autorouterprozeduren
Der
Autorouter unterstützt verschiedene Autorouting-Algorithmen bzw.
Autorouter-Prozeduren wie
, Initialrouting, SMD-Fanout-Routing, Rip-Up/Retry-Routing, Optimierer, Änderungsrouten, usw. Die entsprechenden Funktionen zur Aktivierung dieser Routingprozesse finden sich in den Menüs
(,
,
,
und
),
() und
(,
). Wird im
Neuronalen Autorouter eine dieser Prozeduren aktiviert, nachdem über das Menü
grundlegende Routerparameter (Lagenanzahl, Routingraster, Freigabe/Sperren des Halbrasters, Standard-Leiterbreite, Standard-Mindestabstand oder Pinanschluss-Verfahren) geändert wurden, dann wird automatisch das aktuelle (unfixierte) Routingergebnis verworfen und die selektierte
Autorouter-Prozedur wird mit den geänderten Optionen neu aufgesetzt.
Beachten Sie, dass die Autourouting-Prozesse in
BAE HighEnd aufgrund der Verwendung effizienterer, interner Datenstrukturen (HighSpeed Kernel) um etwa 30 Prozent schneller ablaufen als in
BAE Professional.
Nach dem Start einer
Autorouter-Prozedur kann der Routvorgang am Bildschirm verfolgt und jederzeit durch Betätigung einer beliebigen Taste angehalten bzw. abgebrochen werden. Der Abbruch des Routvorgangs bewirkt automatisch auch eine Sicherung des aktuell besten Routergebnisses.
Initialrouter Einzeldurchgang
Diese Prozedur führt einen einzelnen Durchgang des Initialrouters mit einer vorgegebenen Kanalbreite und einer maximal zulässigen Anzahl von Durchkontaktierungen pro Verbindung durch. Die Routingkanalbreite ist dabei in Rasterpunkten zu spezifizieren und gibt die einseitige maximal zulässige Abweichung von der Vorzugsrichtung an; der Wert 0 für die Kanalbreite entspricht hierbei einer vollständigen Freigabe. Die tatsächliche maximal zulässige Viazahl wird bestimmt durch das Minimum aus dem über den entsprechenden Optionsparameter mit der Funktion
eingestellten Wert und dem für den Initialrouting-Lauf angegebenen Wert.
Initialrouter Komplettdurchgang
Diese Prozedur aktiviert automatisch alle Standarddurchgänge des Initialrouters, um alle ohne Rip-Up vom Router realisierbaren offenen Verbindungen zu verlegen. Es werden hierbei nacheinander automatisch vier Initialrouting-Läufe aktiviert, wobei sukzessive die Kanalbreite und die maximal zulässige Viaanzahl erhöht werden. Der vierte und letzte Initialrouting-Durchlauf wird mit einer Kanalbreite von 0 (keine Einschränkung hinsichtlich der Abweichung von der Vorzugsrichtung) und der über den entsprechenden Optionsparameter eingestellten maximal zulässigen Anzahl an Vias pro Verbindung (siehe oben) durchgeführt.
Rip-Up/Retry-Router
Diese Prozedur aktiviert den Rip-Up/Retry-Router, um noch verbleibende offene Verbindungen zu verlegen. Verbindungen, bei denen kein Rip-Up notwendig ist, werden nach kurzem Test ohne dieses realisiert. Existieren nach einem Rip-Up-Durchlauf noch offene Verbindungen, die ohne Verletzung der Designregeln realisierbar wären, dann wird nach einem zweimaligen Optimiererlauf erneut der Rip-Up-Router gestartet.
Optimierer
Die Funktion
startet einen einzelnen Durchlauf des Fertigungsoptimierers. Der
eliminiert unnötige Vias eliminiert, glättet Leiterbahnen und verlegt letztere wenn möglich auch optimaler. Gleichzeitig versucht der
, die noch fehlenden Verbindungen zu verlegen. Dies geschieht mit einer Kanalbreite von 0 (keine Einschränkung hinsichtlich der Abweichung von der Vorzugsrichtung) und der mit der Funktion
im Menü
eingestellten maximal zulässigen Anzahl von Vias pro Verbindung.
SMD Via-Vorlegen
Die Funktion
dient der Vorplatzierung von Vias für alle angeschlossenen SMD-Pins ("SMD Fanout Routing"). Dabei bestimmt die Kanalbreite die maximal zulässige Abweichung von der Vorzugsrichtung. Diese Prozedur wird vom
(siehe unten) automatisch als erster Routing-Pass aktiviert, wenn der entsprechende Parameter zur Routersteuerung mit der Funktion
im Menü
(siehe
Kapitel 4.5.6) vorher gesetzt wurde.
Voll-Autorouter
Die Funktion
führt einen vollautomatischen Router-Durchlauf mit allen Router-Passes (SMD-Vias Vorverlegen, kompletter Initialrouting-Lauf, Rip-Up-Lauf, Optimierung) durch. Dies ist die Standardprozedur für die vollständige Entflechtung einer Platine. Die Anzahl der Optimierungsläufe ist als Steuerparameter mit der Funktion
im Menü
einstellbar. Der Initiallauf zur Vorverdrahtung von SMD-Anschlüssen wird nur dann durchgeführt, wenn der entsprechende Parameter zur Routersteuerung mit der Funktion
im Menü
(siehe
Kapitel 4.5.6) vorher gesetzt wurde.
Programm-Setup und Programm-Start
Mit der Funktion
kann ein zuvor mit der Funktion
festgelegter Router-Lauf mit bis zu 10 Router-Passes gestartet werden. Dabei können folgende Routingprozeduren aktiviert werden:
Kommando |
Routingprozedur |
E | |
V | |
I | |
C | |
R | |
O | |
S | |
- | keine Funktion (Router-Pass aus Batch entfernen) |
Bei
sind die Routingkanalbreite und die maximal zulässige Viaanzahl pro Verbindung anzugeben.
erfordert die Spezifikation der Routingkanalbreite.
verlangt die Angabe über die Anzahl der durchzuführenden
-Läufe wobei bis zu 999 Durchgänge aktiviert werden können.
Einzelnetzrouting
Der im
Autorouter integrierte Single-Net-Autorouter dient der automatischen Entflechtung einzelner, selektierbarer Signalnetze bzw. Verbindungen. Damit können z.B. Stromversorgungsnetze oder kritische Leiterbahnen unter Berücksichtigung spezifischer Vorgaben für Leiterbreiten, Mindestabstände, Lagenzuordnungen, usw. selektiv vorverlegt werden.
Der Single-Net-Router wird mit der Funktion
im Menü
des
Autorouters aktiviert. Die Auswahl des zu verdrahtenden Signalnetzes erfolgt durch Selektion eines entsprechenden Pins oder einer (vorverlegten) Leiterbahn des gewünschten Netzes.
Component-Routing
Mit der Funktion
aus dem Menü
können mausselektierte Bauteile verdrahtet werden. Es werden dabei alle am jeweils selektierten Bauteil angeschlossenen Netze geroutet.
Vollautomatische Platzierung und Entflechtung
Mit der Funktion
aus dem Menü
werden die nacheinander die Prozeduren
und
aktiviert. Damit ist eine vollautomatische Platzierung und Entflechtung des Layouts möglich.
Selektive Airlineanzeige und Netzgruppen-Routing
Bei der Auswahl der
-Funktion stehen wie im
Layouteditor Funktionen zum Ein- und Ausblenden von Netzen für die Airlineanzeige zur Verfügung. Ausgeblendete Netze werden vom
Autorouter nicht geroutet. Diese Einstellungen können zwischen einzelnen Routerläufen geändert werden. So ist es z.B. möglich, mit
zunächst selektiv einzelne Netze einzulesen und dann die Netzsichtbarkeit anderer Netze zu ändern, um diese neu hinzuzurouten.
Bereichs- und Blockrouting im Autorouter der BAE HighEnd Version
In
BAE HighEnd ist im
Autorouter die Vorgabe von Routingbereichen für Netztypen möglich. Die Routingbereiche sind im
Layouteditor als Dokumentarflächen auf Signallagen zu definieren. Zusätzlich sind an diese Dokumentarflächen (mit dem
User Language-Programm
gedrule) Regeln zuzuweisen, aus deren Prädikat
net_type der Netztyp hervorgeht. Beispielregeln hierfür finden sich in der Datei
nettype.rul , die bei der Installation im
User Language-Verzeichnis
(baeulc ) abgelegt wird. Pro Layout können maximal 8 Netztypen für Routingbereiche verwendet werden. In den netztypspezifischen Routingbereichen darf der
Autorouter dann nur Netze routen, an die über das Netzattribut
$nettype ein dem Routingbereich entsprechender Netztyp zugewiesen ist. Verbindungen ohne Netztypzuweisung oder mit anderen Netztypzuweisungen sind in den Routingbereichen lediglich zum Ankontaktieren von Pins zulässig. Die Netze eines Netztyps werden bevorzugt in dem hierfür definierten Routingbereich geroutet. Zur Steuerung des Verhaltens außerhalb dieser Bereiche kann über das Menü
der Kostenfaktor
modifiziert werden.
4.5.9 Durchführung des Autoroutings
Aufruf des Autorouters
Sofern Sie sich nicht im
Layouteditor befinden, sollten Sie diesen zunächst aufrufen und das Layout
board aus der Datei
demo.ddb laden. Der Aufruf des
Autorouters erfolgt vom
Layouteditor aus über das Menü
:
Datei | |
Autorouter | |
Optionsvorgaben
Es soll nun für das Beispiellayout ein Routing auf 3 Signallagen mit speziellen Router-Passes durchgeführt werden. Stellen Sie zunächst mit den folgenden Kommandos die Routinglagenzahl auf 3 ein:
Optionen | |
Routinglagenzahl | |
3 Signallagen | |
Stellen Sie mit den folgenden Kommandos die Auflösung auf 1/40 Zoll ohne Via-Versatz, sowie die Standard-Leiterbahnbreite und den Standard-Mindestabstand auf 0.3mm ein:
Optionen | |
Aufloesung | |
1/40 Zoll o.Vs. | |
Standard Leiterbreite | |
Neue Standard-Leiterbreite ( 0.32mm) ? | 0.3 |
Standard Mindestabstand | |
Neuer Standard-Mindestabstand ( 0.29mm) ? | 0.3 |
Bilddarstellung, Layoutanzeige
Stellen Sie nun über das Menü
die Breitendarstellung auf den Wert 0.1mm ein, und rufen Sie die Funktion
auf:
Ansicht | |
Breitendarstellung | |
Bahnen Breitendarstellung ab ( 1.50mm) ? | 0.1 |
Zoom Uebersicht | |
Router-Batch-Lauf
Definieren Sie nun mit der Funktion
einen Router-Batch-Lauf bestehend aus
mit Routingkanalbreite 4, Initialrouting Komplettdurchgang sowie einem Optimierer-Lauf:
Autorouter | |
Programm-Setup | |
1: --- | |
Neuer Pass (E/V/I/S/C/R/O/-) ? | s |
Kanalbreite ? | 4 |
2: --- | |
Neuer Pass (E/V/I/S/C/R/O/-) ? | c |
3: --- | |
Neuer Pass (E/V/I/S/C/R/O/-) ? | o |
Aktuelle Anzahl Optimierungen ? | 1 |
Keine Aenderung | |
Die Eingabe eines Bindestrichs auf die Abfrage nach dem neuen Pass bewirkt das Löschen des selektierten Eintrags aus dem
. Die Reihenfolge, in der die Router-Passes mit der Funktion
definiert werden, gibt gleichzeitig die Abarbeitungsreihenfolge an, in der diese Router-Passes anschließend durch die Funktion
ausgeführt werden. Starten Sie nun mit dem folgenden Kommando die zuvor mit
definierten Router-Passes:
Autorouter | |
Programm-Start | |
Das Router-Batchprogramm kann wahlweise auch ohne Umweg über die Beendigung von
und die Aktivierung
einfach durch Betätigung des
-Buttons im Dialog der Funktion
gestartet werden.
Der erste Router-Pass führt eine Vorverdrahtung der SMD-Anschlüsse durch. Danach wird ein kompletter Initialrouting-Lauf durchgeführt. Nach dem Initialrouting ist das Layout bereits zu 100% entflochten. Abschließend erfolgt noch ein Optimiererlauf. Nach jedem einzelnen Router-Pass wird automatisch das aktuelle Routingergebnis gesichert. Nach Beendigung des letzten Routerlaufes sollte folgende Meldung in der Mitteilungszeile stehen:
Max. 53 von 53 Routes (Pins: 76, Vias: 5)
Der
Autorouter hat das Layout also nun fertig entflochten und dabei 5 Durchkontaktierungen gesetzt.
Optimierung
Führen Sie nun mit den folgenden Kommandos einen zusätzlichen Optimiererlauf (ohne Patternerkennung, jedoch mit hoher Priorität zur Einhaltung der Vorzugsrichtung) durch:
Steuerung | |
Optimierer Cleanup | |
Optim. Cleanup Aus | |
Strategie | |
V-Richtung optim. | |
Vorzugsrichtung | |
V-Richtung-Kosten | |
Anti-Vz.-Richtungs-Kosten : 1 (0..5) ? | 4 |
Autorouter | |
Optimierer | |
Nach Beendigung des obigen Optimiererlaufes sind die Leiterbahnen soweit möglich entsprechend der eingestellten Vorzugsrichtungen verlegt. Der Preis hierfür ist eine Erhöhung der Viaanzahl auf 13.
Verlassen des Autorouters
Der
Autorouter kann mit einer der Funktionen
,
oder
aus dem Menü
verlassen werden.
Die Funktion
bewirkt einen Rücksprung auf die Betriebssystemebene. Die Funktion
bewirkt einen Rücksprung in die Shell des
Bartels AutoEngineer (mit automatischer Sicherung des bearbeiteten Layouts). Mit der Funktion
gelangen Sie (nach automatischer Sicherung des bearbeiteten Layouts) zurück in den
Layouteditor, wo automatisch das gerade bearbeitete Layout geladen wird.
Springen Sie also nun wieder zurück in den
Layouteditor:
Datei | |
Layouteditor | |
Änderungsrouting
Die Verwendung von drei Signallagen erscheint für unser einfaches Beispiellayout etwas verschwenderisch. Wir wollen daher jetzt in einem erneuten Router-Lauf die Routinglagenzahl auf 2 reduzieren. Die vom vorhergehenden Routerlauf erzeugten Daten sollen dabei mit Hilfe der Funktion
soweit möglich übernommen werden.
Wechseln Sie also wieder in den
Autorouter:
Datei | |
Autorouter | |
Setzen Sie nun die Routinglagenzahl auf zwei und aktivieren Sie die Funktion
:
Optionen | |
Routinglagenzahl | |
2 Signallagen | |
Autorouter | |
Einlesen Bahnen | |
Die Funktion
übernimmt die Routingdaten aus dem vorhergehenden Routerlauf. Da jedoch zwischenzeitlich die Routinglagenzahl auf 2 verringert wurde, können die zuvor auf der Signallage 3 gerouteten Verbindungen nicht wieder geladen werden. Die Anzeige in der Mitteilungszeile meldet daher nach der Ausführung der Funktion
9 offene Verbindungen (44 von 53 Routes) und eine Viaanzahl von 8 (anstatt 13).
Stellen Sie nun die Vorzugsrichtung für den Optimierer wieder auf
und starten Sie den
, um die noch fehlenden Verbindungen einzulegen:
Strategie | |
V-Richtung optim. | |
Normal | |
Autorouter | |
Voll-Autorouter | |
Nach dem
-Lauf ist das Layout - nun mit einer Viaanzahl von 6 und auf zwei anstatt 3 Signallagen - wieder zu 100% geroutet. Damit ist das Autorouting beendet, und Sie können mit den folgenden Kommandos wieder zum
Layouteditor zurückspringen.
Datei | |
Layouteditor | |
Das Beispeillayout sollte jetzt entsprechend
Abbildung 4-7 aussehen.
Abbildung 4-7: Automatisch entflochtenes Layout
4.6 Spezielle Layoutfunktionen
Eine Reihe wichtiger Funktionen, die sich zum großen Teil aus der Flexibilität und Konsistenz der Datenstrukturen bzw. des Datenbanksystems ergeben, wurde bisher noch nicht besprochen. Anhand einiger spezieller Funktionen soll in diesem Abschnitt die außerordentliche Vielseitigkeit des
Bartels AutoEngineer und die enorme Mächtigkeit seiner Funktionen aufgezeigt werden.
4.6.1 Batch-Design Rule Check, Report
Mit der Funktion
im Menü
wird ein kompletter Design Rule Check durchgeführt. Wir empfehlen dringendst, diese Funktion vor der Generierung der Fertigungsdaten aufzurufen, um zu prüfen, ob alle Design-Regeln eingehalten wurden, keine Kurzschlüsse auf der Leiterkarte vorhanden sind, und alle Netze geroutet sind. Führen Sie mit den folgenden Kommandos einen Batch Design Rule Check für das im Speicher befindliche Layout
board aus der Datei
demo.ddb durch:
Diverse | |
Batch DRC | |
Bitte bestaetigen (J/N) ? | j |
Die Funktion
aktiviert nach Durchführung der Designprüfung implizit die Funktion
aus dem Menü
, um das Ergebnis der Prüfung bzw. den Designstatus anzuzeigen. Mit den folgenden Kommandos lässt sich die Funktion
auch explizit aufrufen:
Diverse | |
Report | |
Das System sollte nun folgende Bildschirmausgabe erzeugen
(Null-Fehleranzeigen werden ggf. unterdrückt):
Datei : demo.ddb
Typ : Layout / Element : board
Anzahl Netze ...................: 22
Anzahl offene Verbindungen .....: 0
Anzahl Kurzschluesse ...........: 0
Anzahl Kupferabstandsfehler ....: 0
Anzahl Dokumentarabstandsfehler : 0
Anzahl Versorgungsfehler .......: 0
Anzahl fehlender Bauteile ......: 0
Anzahl Bauteiltypfehler ........: 0
Anzahl fehlender Netzlistenpins : 0
Anzahl Hoehenfehler ............: 0
Benutzte Versorgungslagen ......: -
Benutzte Signallagen ...........: 1-2
Der Eintrag
Anzahl Netze gibt die Anzahl der in der Netzliste des aktuell geladenen Layouts definierten Netze an. Der Eintrag
Anzahl offene Verbindungen gibt die Anzahl der auf dem aktuell geladenen Layout noch nicht gerouteten (Zweipunkt-)Verbindungen an. Der Eintrag
Anzahl Kurzschluesse gibt die Anzahl der vom Design Rule Check auf dem aktuell geladenen Layout erkannten Kurzschluesse an. Der Eintrag
Anzahl Kupferabstandsfehler gibt die Anzahl der vom Design Rule Check auf dem aktuell geladenen Element (online) erkannten Mindestabstandsverletzungen auf Kupferlagen an. Der Eintrag
Anzahl Dokumentarabstandsfehler gibt die Anzahl der vom Design Rule Check auf dem aktuell geladenen Element (online) erkannten Mindestabstandsverletzungen auf Dokumentarlagen an. Der Eintrag
Anzahl Versorgungsfehler gibt die Anzahl der sich wechselseitig überschneidenden Potentialflächen auf geteilten Potentiallagen (Split Power Planes) an. Der Eintrag
Anzahl fehlender Bauteile zeigt die Anzahl der auf dem aktuell Layout noch nicht platzierten Netzlisten-Bauteile an. Der Eintrag
Anzahl Bauteiltypfehler zeigt die Anzahl der Netzlistenbauteile an, die mit einer falschen Gehäusebauform auf dem aktuellen geladenen Layout platziert sind. Der Eintrag
Anzahl fehlender Netzlistenpins gibt die Anzahl nicht platzierter bzw. fehlender Netzlistenpins an. Der Umstand, dass bei fehlenden Netzlistenpins die Anzahl der offenen Verbindung u.U. nicht korrekt angezeigt werden kann, wird ggf. durch einen entsprechenden Hinweis bei der Anzahl der offenen Verbindungen angezeigt.
Anzahl Hoehenfehler zeigt die Anzahl der Verstösse gegen eventuell über das Regelsystem definierte (Bauteil-)Höhenrestriktionen an.
Die Einträge
Benutzte Versorgungslagen und
Benutzte Signallagen dienen der Anzeige der benutzten Versorgungs- und Signallagen. Die Lagen von Lage 1 bis zur obersten Lage gelten immer als benutzt. Mit diesen Einträgen ist insbesondere zu erkennen, ob auf nicht mit einem globalen Netz versehenen Versorgungslagen dennoch für die Connectivity relevante Split-Powerplaneflächen vorhanden sind.
DRC-Fehleranzeigemodus und DRC-Fehlerlokalisierung
Die über die Funktion
aus dem Menü
aktivierbare Dialogbox enthält den Parameter
zur Auswahl der Bilddarstellungsfarben &fuuml;r DRC Abstands- und Höhenfehler. Bei Einstellung von
erfolgt die Anzeige des Fehlerrechteckes in der über
eingestellten Fehlerfarbe (standardmässig weiß). Bei
erfolgt die Darstellung des Rechteckes in der gehighlighteten Lagenfarbe des den Fehler verursachenden Elementes. Dabei werden Fehler auf Lagen, die in der
ausgeblendet sind, auch nicht dargestellt.
Das Menü
enthält die Funktion
zur Auflistung der auf dem aktuell geladenen Plan vorhandenen DRC Abstands- und Höhenfehler. Die DRC-Fehlerliste erscheint in einem Popup-Fenster und enthält jeweils Typ, betroffene Lage und Koordinaten des Fehlers. Durch Selektion eines Eintrags der Fehlerliste mit der linken Maustaste kann ein
auf die Fehlerposition durchgeführt werden. Über die Tasten
+ und
- ist ein Hin- und Herspringen zwischen den einzelnen Fehlerpositionen möglich.
Die in
BAE HighEnd integrierte Datenstruktur für die Connectivity im
Layouteditor erlaubt eine selektive Kurzschlussanzeige, d.h. bei Kurzschlüssen zwischen zwei Netzen werden nur die tatsächlich den Kurzschluss verursachenden Elemente durch Highlight angezeigt, während in
BAE Professional der gesamte vom Kurzschluss betroffene Verbindungsbaum gehighlightet wird.
Durch Betätigung der Leertaste gelangen Sie wieder in die Menüoberfläche.
4.6.2 Farbauswahl, Farbtabellen, Vorzugslage
Die Funktion
aus dem Menü
aktiviert ein Popupmenü zur Definition der aktuellen Farbeinstellungen. Durch die Aktivierung dieses Popupmenüs erfolgt gleichzeitig eine Visualisierung der aktuell definierten Farbzuordnungen. Im Popupmenü zur Farbauswahl erfolgt die Zuweisung einer Farbe an einen speziellen Anzeigeelementtyp durch Selektion des Anzeigeelements (bzw. der Lage) über die linke Maustaste sowie die anschließende Selektion der gewünschten Farbe. In den Farbauswahlmenüs des Layoutsystems besteht zusätzlich die Möglichkeit der schnellen Lagen-Ein/Ausblendung mit Erhalt der aktuell eingestellten Farbe. Die Aktivierung bzw. Deaktivierung der Lagenanzeige erfolgt dabei durch Anwahl des Farbbuttons der gewünschten Lage mit der rechten Maustaste. In der Menüanzeige werden die Farbbuttons der aktuell ausgeblendeten Lagen durchgestrichen dargestellt.
Bei Überlappungen verschiedener Elemente werden grundsätzlich die resultierenden Mischfarben dargestellt. Die mit Highlight gewählte Farbe wird ebenfalls mit der Farbe des zu markierenden Elements gemischt und ergibt dann die neue hellere Elementfarbe.
Die aktuell definierte Farbeinstellung kann über das Menü
mit der Funktion
als Farbtabelle unter einem beliebigen Elementnamen (in der Datei
ged.dat im BAE-Programmverzeichnis) abgespeichert werden. Beim Aufruf des Layoutsystems wird automatisch die Farbtabelle mit dem Namen
standard geladen. Jede andere in
ged.dat gespeicherte Farbtabelle lässt sich mit der Funktion
vom Menü
je nach Bedarf wieder laden.
Empfehlenswert ist die Definition spezieller Farbtabellen für immer wiederkehrende Arbeitsschritte. So ließe sich z.B. für die Bibliothekserstellung eine Farbtabelle
stackdef (mit Sichtbarkeit der Bohrungen, Bohrplaninformation, usw.) definieren, oder zum schnellen Auffinden noch nicht realisierter Verbindungen eine Farbtabelle
unroutes (in der nur die Airlines sichtbar sind). Sie sollten bei der Definition und jeweiligen Verwendung der Farbtabellen auch darauf achten, dass natürlich der Bildaufbau (insbesondere bei großen Layouts) umso länger dauert, je mehr grafische Objekte durch das System dargestellt werden müssen. Daher sollten Sie die für bestimmte Bearbeitungsphasen zu benutzenden Farbtabellen so definieren, dass möglichst nur die für die Bearbeitung notwendige Information sichtbar ist.
Die bereits wiederholt beschriebene Funktion zur Definition der Vorzugslage im Menü
bewirkt das automatische Laden einer speziell benannten Farbtabelle.
Tabelle 4-3 zeigt die
Zuordnung der Farbtabellen-Namen zu den Vorzugslagen sowie die in speziellen Lagenauswahlmenüs wahlweise zulässigen Kurzbezeichnungen zur Spezifikation der Lage über Tastatur
(<n> ist jeweils zu ersetzen durch die Lagennummer).
Tabelle 4-3: Vorzugslagen-Farbtabellen und Lagen-Kurzbezeichnungen
Lage | Vorzugslagen- Farbtabellenname | Lagen- Kurzbezeichnung |
Signallage <n> | layer_<n> | <n> |
Signallage Alle Lagen | layer_all | a |
Signallage Innenlagen | layer_def | m |
Signallage Oberste Lage | layer_def | |
Versorgungslage <n> | | p<n> |
Dokumentarlage <n> Seite 1 | layer_d<n>_1 | d<n>s1 |
Dokumentarlage <n> Seite 2 | layer_d<n>_2 | d<n>s2 |
Dokumentarlage <n> Beide Seiten | layer_d<n>_a | d<n>sa |
Umrandung | | b |
Unroutes | | u |
Bei Selektion einer Vorzugslage (z.B. Signallage 2) wird (sofern definiert) die Farbtabelle mit dem zugeordneten Farbtabellen-Namen (z.B.
layer_s2 ) automatisch geladen. Dies kann z.B. beim interaktiven Routen sehr hilfreich sein.
4.6.3 Netzlistenänderungen im Layout
Im Layouteditor des
Bartels AutoEngineer besteht die Möglichkeit, Pin- und Gattertausch durchzuführen, um dadurch eine Vereinfachung des Entflechtungsproblems zu erzielen. Auch können Bauteilnamen geändert werden, um z.B. eine bessere Lesbarkeit des Bestückungsplans zu erreichen. Schließlich besteht im Layout noch die Möglichkeit, alternative Gehäusebauformen zuzuweisen. Alle diese Modifikationen stellen Netzlistenänderungen dar, die selbstverständlich anschließend per
(siehe auch
Kapitel 3.3) in den Stromlauf zurückgemeldet werden müssen.
Im Folgenden sollen einige Pin/Gate Swaps durchgeführt und einige Bauteilnamen geändert werden. Löschen Sie hierzu zunächst (mit Hilfe der Gruppenfunktion) alle Leiterbahnen aus dem Layout (stellen Sie zuvor noch die Koordinatenanzeige auf Inch):
Einstellungen | |
Koordinatenanzeige | |
inch Anzeige | |
Gruppen | |
Gruppe Polygon | |
Leiterbahnen | |
Selektieren | |
Positionieren auf [0.1",0.1"] | |
Positionieren auf [2.8",0.1"] | |
Positionieren auf [2.8",2.7"] | |
Positionieren auf [0.1",2.7"] | |
Fertig | |
Gruppe loeschen | |
Führen Sie nun jeweils einen Tausch der Pins
1 und
2 für die Schalter-Bauteile
s1000 ,
s1001 ,
s1002 und
s1003 durch:
Bauteile | |
Pin/Gate Swap | |
Positionieren auf "s1000.1",[0.2",2.3"] | |
Positionieren auf "s1000.2",[0.5",2.3"] | |
Pin/Gate Swap | |
Positionieren auf "s1001.1",[0.2",2.1"] | |
Positionieren auf "s1001.2",[0.5",2.1"] | |
Pin/Gate Swap | |
Positionieren auf "s1002.1",[0.2",1.9"] | |
Positionieren auf "s1002.2",[0.5",1.9"] | |
Pin/Gate Swap | |
Positionieren auf "s1003.1",[0.2",1.7"] | |
Positionieren auf "s1003.2",[0.5",1.7"] | |
Zur Hilfestellung markiert die Funktion
die möglichen bzw. zulässigen Tauschpositionen. Nach Aktivierung der Funktion werden alle Pins, für die in der logischen Bibliothek Swap-Optionen definiert sind, durch eine Kreislinie von 0.6mm Durchmesser in der
-Farbe gekennzeichnet. Nach Selektion des ersten Tauschpins wird dieser mit einem gefüllten Quadrat markiert, die für diesen Pin möglichen Tauschpins werden mit einer Kreislinie gekennzeichnet. Der Typ des Tausches wird innerhalb des Kreises durch einen Kennbuchstaben signalisiert.
P steht für einen Pintausch,
G für einen Gattertausch und
A (Array) für einen Gattergruppentausch.
Durch Ausblenden der
-Farbe lässt sich die Anzeige der Tauschpositionen unterdrücken.
Jeder Pin- und Gattertausch erfolgt kontrolliert mit Hilfe der in der logischen Bibliothek eingetragenen Vertauschbarkeits-Definitionen (siehe auch
Kapitel 7.11,
loglib und
Kapitel 3.2,
Packager). Ist kein Swap erlaubt, dann gibt die Funktion
die Meldung
Swap zwischen diesen Pins nicht moeglich!
aus.
Tauschen Sie nun die Gatter (1,2,3) und (5,6,4) sowie anschließend die Pins
12 und
13 des Bauteils
IC10 :
Bauteile | |
Pin/Gate Swap | |
Positionieren auf "ic10.(1,2,3)",[1.4",1.8"] | |
Positionieren auf "ic10.(5,6,4)",[1.5",1.8"] | |
Pin/Gate Swap | |
Positionieren auf "ic10.12",[1.4",2.1"] | |
Positionieren auf "ic10.13",[1.3",2.1"] | |
Führen Sie einen bauteilübergreifenden Swap für die Widerstände
R101 und
R103 durch (dies ist nur möglich, da für diese beiden Bauteile dieselben Attributwerte eingetragen sind):
Bauteile | |
Pin/Gate Swap | |
Positionieren auf "r101",[1.6",2.4"] | |
Positionieren auf "r103",[1.4",1.2"] | |
Als nächstes sollen mit Hilfe der Funktion
einige Bauteilnamen geändert werden. Ändern Sie den Namen des Steckers
X1000 in
X1 sowie den Namen der Diode
V1000 in
V2 :
Bauteile | |
Name in Netzliste | |
Positionieren auf "x1000",[2.4",1.5"] | |
Bauteilname (X1000) ? | X1 |
Name in Netzliste | |
Positionieren auf "v1000",[1.2",1.2"] | |
Bauteilname (V1000) ? | V2 |
Wenn Sie versuchen, einen Namen zu vergeben, der bereits für ein anderes Bauteil verwendet wurde, dann gibt die Funktion
die folgende Meldung aus:
Der Bauteilname existiert bereits!
Ändern Sie nun mit Hilfe der Funktion
den Namen des Bauteils
IC10 in
IC1 :
Bauteile | |
Name aendern | |
Positionieren auf "ic10",[1.2",1.8"] | |
Bauteilname (IC10) ? | IC1 |
Die Airlines zum jetzt mit
IC1 benannten Bauteil sind nun verschwunden. D.h., die Funktion
führt nicht nur eine Änderung des Bauteilnamens, sondern gleichzeitig auch einen Bauteiltausch (bei Beibehaltung der Gehäusebauform) durch. In obigem Beispiel wurde das Bauteil
IC10 gegen das (nicht in der Netzliste befindliche) Bauteil
IC1 ausgetauscht. Machen Sie diesen Bauteiltausch mit der Funktion
wieder rückgängig, und ändern Sie den Bauteilnamen mit der Funktion
(anschließend werden die Airlines zum Bauteil
IC1 angezeigt):
Bauteile | |
Name aendern | |
Positionieren auf "ic1",[1.2",1.8"] | |
Bauteilname (IC1) ? | ic10 |
Name in Netzliste | |
Positionieren auf "ic10",[1.2",1.8"] | |
Bauteilname (IC10) ? | ic1 |
Verwenden Sie die Funktion
mit aller Vorsicht. Bei fehlerhafter Mehrfachanwendung der Funktion kann es auf bereits gerouteten Layouts ungewollt zu Kurzschlüssen kommen, und die getauschten Bauteile sind nur mehr relativ schwer zu finden.
Die in den vorigen Arbeitschritten durchgeführten Netzlistenänderungen müssen mit
in den Stromlauf, d.h. in die logische Netzliste zurückgemeldet werden. Speichern Sie hierzu zunächst das Layout, und springen Sie in das Hauptmenü:
Datei | |
Speichern | |
Datei | |
Hauptmenue | |
Sie befinden sich nun in der BAE-Shell. Wechseln Sie nun mit den folgenden Kommandos in den
Schaltplaneditor, und starten Sie einen
-Lauf für das Layout
board aus der Projektdatei
demo.ddb :
Schaltplan | |
Diverse | |
Backannotation | |
Design Dateiname ? | demo |
Layout Elementname ? | board |
Das System sollte nun folgende Meldungen auf dem Bildschirm ausgeben:
==============================
BARTELS BACKANNOTATION UTILITY
==============================
Design Dateiname ........: 'demo'
Layout Elementname ......: 'board'
Es wurden keine Fehler festgestellt.
Die Meldung
Es wurden keine Fehler festgestellt. gibt an, dass der
-Lauf erfolgreich durchgeführt wurde. Sie gelangen nun durch Betätigung einer beliebigen Taste wieder in das Hauptmenü des
Schematic Editors. Laden Sie nun das Stromlaufblatt
sheet1 der Projektdatei
demo.ddb :
Datei | |
Laden | |
Plan | |
Dateiname ? | demo |
Elementname ? | sheet1 |
Überprüfen Sie den aktuell geladenen Stromlauf auf die durch
eingetragenen Änderungen. Achten Sie insbesondere auf die geänderten Bauteilnamen
(IC1 anstelle
IC10 ,
V2 anstelle
V1000 , ...) und Pinbelegungen (z.B. an den zu
IC1 gehörigen Gattern oder an den Schaltern
S1000 bis
S1003 ).
4.6.4 Änderungen im Stromlauf, Redesign
Selbstverständlich besteht die Möglichkeit, ausgehend vom Stromlaufplan die Änderung eines bereits fertiggestellten Designs durchzuführen, ohne ein komplett neues Layout erstellen zu müssen. Hierzu sollen einige Manipulationen in dem im vorigen Arbeitsschritt geladenen Stromlauf vorgenommen werden.
Ändern Sie für den Widerstand
R104 den Werteintrag des Attributs
$plname von
minimelf in
chip1206 :
Symbole | |
Wert zuweisen | |
Positionieren auf "r104",[210,130] | |
$plname | |
Attribut Wert ? | chip1206 |
Abbruch | |
Mit obigem Attributwerteintrag wurde die Gehäusezuweisung für das Bauteil
R104 geändert. Nehmen Sie in gleicher Weise eine Änderung der Gehäusezuweisung für alle vier Gatter des Bauteils
IC1 durch die jeweilige Eintragung des Wertes
so14 für das Attribut
$plname vor (Default-Gehäusezuweisung war
dil14 ):
Symbole | |
Wert zuweisen | |
Positionieren auf "ic1.5",[60,110] | |
$plname | |
Attribut Wert ? | so14 |
Wert zuweisen | |
Positionieren auf "ic1.1",[100,110] | |
$plname | |
Attribut Wert ? | so14 |
Wert zuweisen | |
Positionieren auf "ic1.8",[140,110] | |
$plname | |
Attribut Wert ? | so14 |
Wert zuweisen | |
Positionieren auf "ic1.13",[180,110] | |
$plname | |
Attribut Wert ? | so14 |
Speichern Sie nun das aktuell geladene Element, und laden Sie
sheet2 des Stromlaufs:
Datei | |
Speichern | |
Laden | |
Plan | |
Dateiname ? | |
Elementname ? | sheet2 |
Auf dem aktuell geladenen Schaltplanplan sind einige Router-Steuerparameter (Netzattribute) eingetragen, die modifiziert werden sollen. Ändern Sie die
ROUTWIDTH für das Signal
NET von 0.5mm in 0.3mm, die
ROUTWIDTH für
Vss von 0.6mm in 0.45mm, sowie die
MINDIST für
Vdd von 0.4mm auf 0.3mm:
Symbole | |
Wert zuweisen | |
Positionieren auf "NET"/Routwidth-Symbol | |
$val | |
Attribut Wert ? | 0.3 |
Wert zuweisen | |
Positionieren auf "Vss"/Routwidth-Symbol | |
$val | |
Attribut Wert ? | 0.45 |
Wert zuweisen | |
Positionieren auf "Vdd"/Mindist-Symbol | |
$val | |
Attribut Wert ? | 0.3 |
Springen Sie nun zurück in das Hauptmenü; das aktuell geladene Element wird dabei automatisch gesichert:
Datei | |
Hauptmenue | |
Sie befinden sich nun in der BAE-Shell, von wo aus Sie den
Packager aufrufen können, um die im Stromlauf der Projektdatei
demo.ddb durchgeführten Änderungen in das Layout
(board ) zu übertragen (als Bibliothek kann die Projektdatei selbst benutzt werden, da diese alle für den
Packager-Lauf notwendigen Einträge enthält):
Packager | |
Design Dateiname ? | demo |
Design Bibliotheksname ? | demo |
Layout Elementname ? | board |
Nach erfolgreichem
Packager-Lauf (Meldung
Es wurden keine Fehler festgestellt. ) gelangen Sie durch Betätigung einer beliebigen Taste wieder in das Hauptmenü, von wo aus Sie den
Layouteditor aufrufen können:
Layout | |
Laden Sie nun das soeben annotierte Layout:
Datei | |
Laden | |
Layout | |
Dateiname ? | demo |
Elementname ? | board |
Der
Layouteditor führt zunächst eine Connectivity Generierung durch. Da die Gehäusebauformen für die beiden Bauteile
IC1 und
R104 geändert wurden, sind keine Airlines mehr zu diesen beiden Bauteilen eingetragen. Um die seit der letzten Netzlistenmodifikation geänderten Gehäusebauformen aus dem Layout zu löschen, sind folgende Kommandos auszuführen:
Bauteile | |
Update Loeschen | |
Bitte bestaetigen (J/N) ? | j |
Die Funktion
entfernt die beiden Bauteile
R104 und
IC1 aus dem Layout und gibt in der Statuszeile die Meldung
Es wurden 2 Bauteile geloescht!
aus. Sie können nun die beiden soeben gelöschten Bauteile mit deren neu zugewiesenen Gehäusebauformen wieder auf dem Layout platzieren:
Bauteile | |
Neues Bauteil | |
Bauteilname ? | ic1 |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 1.6" |
Abs. X Koordinate (mm/") ? | 2.0" |
Naechstes Bauteil | |
Spiegelung ein | |
Drehung rechts | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.35" |
Abs. Y Koordinate (mm/") ? | 2.0" |
Nun sind wieder alle Bauteile auf dem Layout platziert. Sie können dies mit der Funktion
überprüfen; das System sollte hierbei die Meldung
Alle Bauteile sind bereits platziert! ausgeben.
4.6.5 Definieren und Editieren von Versorgungslagen
Das Layoutsystem des
Bartels AutoEngineer erlaubt die Definition von Versorgungslagen, d.h. sogenannter Power Planes. Definieren Sie mit den folgenden Kommandos eine Versorgungslage für das Signalnetz
Vss :
Einstellungen | |
Versorgungslagen | |
1: --- | |
Netzname ? | vss |
Ende | |
Die obige Versorgungslagen-Definition bewirkt, dass Airlines zu den gebohrten Bauteilanschlüssen des Netzes
Vss entfernt werden. Die Anschlüsse an die Versorgungsinnenlage sind über die gebohrten Pins bereits realisiert. Die Airlines zu den SMD-Anschlüssen des Signalnetzes
Vss sind hingegen noch vorhanden, d.h. der
Autorouter wird diese Anschlüsse automatisch (wenn nötig über Vias) an die Versorgungslage anschließen.
Die Versorgungslagen können im Layoutsystem des
Bartels AutoEngineer visualisiert werden. Überprüfen Sie dies, indem Sie die Farbe für die Versorgungslage 1 auf dunkelblau setzen:
Farbpalette | |
Power 1 | |
Positionieren auf gewünschte Farbe, dunkelblau | |
Ende | |
Bei der Darstellung der gebohrten Bauteilanschlüsse erfolgt eine Unterscheidung dahingehend, ob ein Anschluss in die Versorgungslage vorliegt oder nicht. Anschlüsse in die Versorgungslage werden als unausgefüllte Kreise angezeigt, während die zu isolierenden d.h. die nicht zu kontaktierenden Bohrungen als gefüllte Kreise dargestellt werden.
Die Funktion
aus dem Menü
ermöglicht über eine entsprechende Lagenauswahl die Definition von Potentialflächen bzw. Isolationsbereichen (Netzname
- ) auf Versorgungslagen. Damit können geteilte Potentiallagen (Split Power Planes) definiert werden. Die Darstellung von auf Versorgungslagen definierten Potentialflächen erfolgt durch die Anzeige ihrer Outline, welche als Isolationslinie zum Rest der Versorgungslage zu betrachten ist und vom
CAM-Prozessor entsprechend geplottet wird (siehe hierzu auch
Kapitel 4.7.6 dieses Handbuchs). Bei der Definition von Potentialflächen auf Versorgungslagen besteht die Einschränkung, dass sich keine zwei Potentialflächen wechselseitig überlagern dürfen, da sonst die Definition der Versorgungslagenbereiche nicht mehr eindeutig ist; in solchen Fällen werden vom Design Rule Check entsprechende Versorgungslagenfehler gemeldet, die auch als eigener Eintrag im
(Menü
) angezeigt werden. Zulässig ist hingegen die Platzierung von Potentialflächen, die sich komplett innerhalb anderer Potentialflächen befinden; der Anschluss erfolgt in einem solchen Fall jeweils an die "innerste" Potentialfläche.
Die Funktion
aus dem Menü
ermöglicht über eine entsprechende Lagenauswahl die Platzierung von Texten auf Versorgungslagen. Damit kann Dokumentation in Form von Textinformation auf Versorgungslagen aufgebracht werden. Bei der Platzierung von Texten auf Versorgungslagen führt der Design Rule Check eine Abstandskontrolle zu den Speziallagen
und
durch und erzeugt ggf. entsprechende Abstandsfehlermeldungen. Texte auf Versorgungslagen sind auf der fertig hergestellten Leiterkarte selbstverständlich nur dann sichtbar, wenn die entsprechende Versorgungslage als Außenlage konfiguriert ist. In der Regel jedoch werden Versorgungslagen als Innenlagen definiert, wobei die darauf definierten Texte lediglich als Kontrollinformation (z.B. für den Layoutbearbeiter oder für die Plot- bzw. Filmarchivierung) dienen können.
4.6.6 Via-Sperrflächen für den Autorouter
Oft besteht die Notwendigkeit, dem
Autorouter Flächen vorzugeben, in welchen er keine Durchkontaktierungen setzen, aber dennoch Leiterbahnen führen darf (z.B. unter speziellen Bauteilen). Diese Sperrflächen definiert man am einfachsten auf einer Router-Signallage, die für das eigentliche Layout nicht benötigt wird. Da Vias grundsätzlich über alle Lagen definiert sind (Bohrungen!), erkennt der
Autorouter den definierten Bereich als Via-Sperrfläche für alle Lagen an. Voraussetzung ist allerdings, dass die Signallage, auf der sich die Sperrfläche befindet, im
Autorouter als Sperrlage definiert wird, damit der Router die auf dieser Lage befindlichen Elemente bei der Bearbeitung berücksichtigt.
Definieren Sie auf der Signallage 3 eine Sperrfläche unter den Schaltern
s1000 bis
s1009 :
Flaechen | |
Neue Sperrflaeche | |
Lage 3 | |
Positionieren auf [0.25",0.4"] | |
Positionieren auf [0.45",0.4"] | |
Positionieren auf [0.45",2.4"] | |
Positionieren auf [0.25",2.4"] | |
Fertig | |
Rufen Sie nun den
Autorouter auf:
Datei | |
Autorouter | |
Definieren Sie die Lagenzuordnung so, dass die Signallage 3 vom Router als Sperrlage betrachtet wird, und starten Sie den Vollautorouter (Router-Auflösung, Standard-Leiterbreiten und Standard-Mindestabstände wurden im ersten
Autorouter-Lauf bereits definiert):
Optionen | |
Lagenzuordnung | |
Zu modifizierende Lage ? | 3 |
Neuer Typ der Lage (S/H/V/A/-) ? | s |
Zu modifizierende Lage ? | |
Autorouter | |
Voll-Autorouter | |
Der
sollte das Layout zu 100% entflechten und dabei keine Vias im Bereich der definierten Via-Sperrfläche setzen. Auch die Anschlüsse in die vorher definierte Versorgungslage für das Signalnetz
Vss (siehe oben) werden automatisch erzeugt (für SMD-Anschlüsse ggf. durch ein entsprechendes Leiterbahnstück mit Durchkontaktierung).
Springen Sie nach erfolgreichem Autorouter-Lauf wieder in den
Layouteditor zurück:
Datei | |
Layouteditor | |
4.6.7 Flächen-Spiegelsicht
Flächen können im
Layouteditor mit einem Attribut versehen werden, welches angibt, ob die Fläche gespiegelt oder ungespiegelt sichtbar ist. Damit ist es z.B. möglich, an ein und demselben SMD-Pad zwei verschiedene Anschlussflächen zu definieren, von denen die eine gespiegelt (also auf der Lötseite), die andere ungespiegelt (also auf der Bauteilseite) sichtbar ist. Damit lassen sich z.B. komfortabel für Bauteil- und Lötseite unterschiedliche Lötverfahren unterstützen.
Laden Sie das im Padstack
s1206 für die Gehäusebauform
chip1206 verwendete Padsymbol
p1206 aus der Datei
demo.ddb :
Datei | |
Laden | |
Pad | |
Dateiname ? | demo |
Elementname ? | p1206 |
Am geladenen Pad ist eine fingerförmige Anschlussform definiert. Legen Sie mit den folgenden Kommandos fest, dass diese Lötaugenform nur ungespiegelt (also auf der Bauteilseite) sichtbar sein soll:
Flaechen | |
Spiegelsicht | |
Positionieren auf Flächenkante | |
Nicht gespiegelt sichtbar | |
Die Lötaugenform für die Bauteilseite ist nun definiert. Erzeugen Sie mit den folgenden Kommandos nun eine rechteckige Kupferfläche, und legen Sie fest, dass diese nur gespiegelt (also auf der Lötseite) sichtbar sein soll:
Flaechen | |
Neue Kupferflaeche | |
Sprung absolut | |
Abs. X Koordinate (mm/") ? | 0.6 |
Abs. Y Koordinate (mm/") ? | 0.9 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | -1.2 |
Rel. Y Koordinate (mm/") ? | 0 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 0 |
Rel. Y Koordinate (mm/") ? | -1.8 |
Sprung relativ | |
Rel. X Koordinate (mm/") ? | 1.2 |
Rel. Y Koordinate (mm/") ? | 0 |
Fertig | |
Flaechen | |
Spiegelsicht | |
Positionieren auf Flächenecke/-kante | |
Gespiegelt sicht. | |
Speichern Sie nun das geänderte Padsymbol ab, und laden Sie wieder das Layout:
Datei | |
Speichern | |
Laden | |
Layout | |
Dateiname ? | |
Elementname ? | board |
Das System führt eine Connectivity Generierung durch, da ein Element aus der Bibliothek der Projektdatei geändert wurde. Vergleichen Sie anschließend die auf Löt- und Bauteilseite unterschiedlichen Lötaugenformen an den Gehäusebauformen
chip1206 (Bauteile
R104 und
C101 , gespiegelt; Bauteil
R105 ungespiegelt).
Die Funktion zur Festlegung einer Spiegelsicht steht grundsätzlich immer bei der Definition von Kupfer-, Sperr-, oder Dokumentarflächen an spiegelbaren Bibliothekselementen zur Verfügung. Durch geeignete Sperrflächendefinitionen auf entsprechenden Dokumentarlagen kann damit z.B. auch die Abstandshaltung von Bauteilen geprüft werden, und zwar auf unterschiedliche Weise je nachdem ob die Bauteile gespiegelt oder ungespiegelt platziert sind.
Unterstützung von Reflow-Reflow-SMD-Lötverfahren
Zur Unterstützung von SMD-Lötverfahren in Reflow-Reflow-Technik steht in der Dialogbox
des Menüs
der Parameter
zur Verfügung. Bei aktivierter
(Voreinstellung) verhält sich das System wie oben beschrieben. Bei Deaktivierung der
, sind unabhängig von der Bauteilspiegelung alle als
, deklarierten Flächen immer sichtbar und alle als
, deklarierten Flächen nie sichtbar. Mit Hilfe dieser Parametereinstellung kann eine für das konventionelle SMD-Löten erstellte Bibliothek auch für die Reflow-Reflow-Technik werden.
4.6.8 Flächenautomatik
Das BAE-Layoutsystem ist ausgestattet mit Funktionen zum automatischen Füllen von Kupferflächen. Dabei kann mit einstellbarem Isolationsabstand, definierbarer minimaler Strukturgröße, sowie der wahlweisen Elimination isolierter Potentialflächen gearbeitet werden. Wärmefallen werden nach Bedarf automatisch erzeugt, wobei auch die Anschlussbreite einstellbar ist. Elektrisch leitfähige Flächen lassen sich in linien- oder gitterschraffierte Flächen mit definierbarer Schraffurbreite und vorgebbarem Schraffurabstand umwandeln.
Die Funktionen zur Füllflächengenerierung befinden sich im Untermenü
des Menüs
im
Layouteditor.
Parametereinstellungen für die Flächenautomatik
Abhägig von der aktuellen BAE-Menükonfiguration können die Parameter für die Flächenautomatik entweder über entsprechende Menüfunktionen im Untermenü
oder über den Dialog
aus selbigem Untermenü spezifiziert werden.
Über den Parameter
kann der gewünschte Isolationsabstand für die Füflächengenerierung festgelegt werden. Der Defaultwert hierfür beträgt 0.3mm. Abweichend vom eingestellten (Standard-)Isolationsabstand werden mit dem Netzattribut
MINDIST definierte netzspezifische Mindestabständsvorgaben (siehe hierzu auch
Kapitel 7.11 ggf. gesondert berücksichtigt.
Über den Parameter
kann eine minimale Strukturgröße für die Füllflächengenerierung festgelegt werden. Der Defaultwert hierfür beträgt 0.15mm. Es empfiehlt sich ein Wert in der Größenordnung der kleinsten in der Gerber-Blendentabelle definierte Blende damit später im
CAM-Prozessor ein Gerber-Plot ohne Überzeichnungsfehler erzeugt werden kann.
Mit
kann spezifiziert werden, ob die abzuisolierenden Leiterbahnen oktagonal (Default-Einstellung) oder rund ausgespart werden sollen.
Über
kann angegeben werden, ob beim Füllen von Potentialflächen isolierte Teilflächen (sogenannte Inseln) automatisch gelöscht
(; Standardeinstellung) oder mitgeneriert
() werden sollen.
Die Option
erzeugt Inselflächen und selektiert die generierten Inselflächen darüberhinaus automatisch zur aktuellen Gruppe.
Über den Parameter
lässt sich angeben, ob die zur Potentialfläche gehörenden Bauteilanschlüsse und Vias in Form von Wärmefallen oder als Direktanschlüsse ausgeführt werden sollen. Wärmefallen werden mit einer definierbaren Leiterbreite. Die Leiterbreite der Wärmefallenstege (Default 0.3mm) kann frei gewählt werden, und es besteht die Möglichkeit der Spezifikation eines spezifischen Mindestabstands zur Isolation der Wärmefallen (Default 0mm, d.h. Isolation entsprechend der aktuell eingestellten Parameter bzw. Attribute für die Abstandshaltung).
Auch können über entsprechende Optionen wahlweise nur Pins oder nur Vias über Wärmefallen angeschlossen werden. Die entsprechenden Auswahlmöglichkeiten lauten
,
,
sowie
.
In
BAE HighEnd ist die Angabe der maximal zulässigen Anzahl von Stegen pro Wärmefalle möglich. Hierbei kann ein Wert von 1 bis 4 angegeben werden. Die Standardsequenz zur Steggenerierung ist links, rechts, unten, oben.
Definition von Flächenfüllbereichen
Die Funktionen zur automatischen Füllflächengenerierung werden auf speziell definierte Arbeitsbereiche für die Flächenautomatik, sogenannte Flächenfüllbereiche angewendet. Definieren Sie mit den folgenden Kommandos auf der Signallage 1 einen rechteckigen Flächenfüllbereich für das Signalnetz
net :
Flaechen | |
Neuer Fuellbereich | |
Netzname ? | net |
Lage 1 | |
Positionieren auf [0.6",0.4"] | |
Positionieren auf [1.7",0.4"] | |
Positionieren auf [1.7",1.7"] | |
Positionieren auf [0.6",1.7"] | |
Fertig | |
Der Füllbereich wird keinem Potential zugeordnet, wenn auf die Abfrage nach dem Netznamen ein Bindestrich
(- ) eingegeben wird.
Normale Kupferflächen, die an ein Netz angeschlossen sind, werden für das Flächenfüllenwie Potentialflächen dieses Netzes behandelt und werden somit beim Füllen mit dem entsprechendem Netz nicht ausgespart. Dies erleichtert z.B. insbesondere die Handhabung von Teardrops, die als normale Kupferflächen ausgeführt sind.
Füllflächengenerierung
Die Funktionen zur automatischen Füllflächengenerierung stehen im Untermenü
des Menüs
zur Verfügung.
bewirkt das automatische Füllen aller definierten Füllbereiche.
bewirkt das automatische Löschen der Flächen aus allen definierten Füllbereichen. Bei
bzw.
ist der zu bearbeitende Füllbereich entsprechend zu selektieren.
Füllen Sie nun den definierten Füllbereich mit Hilfe der Flächenautomatik auf; stellen Sie den Isolationsabstand dabei auf 0.35mm und die minimale Strukturgröße auf 0.15mm ein, und geben Sie über
an, dass abisolierte Teilflächen mitgeneriert werden:
Flaechenautomatik | |
Isolationsabstand | |
Kupfer Isolationsabstand ( 0.30mm) ? | 0.35 |
Min. Fuellgroesse | |
Min. Strukturgroesse ( 0.10mm) ? | 0.15 |
Insel Erkennung | |
Inseln bilden | |
Auffuellen einzeln | |
Positionieren auf Füllbereich | |
Das System erzeugt innerhalb des selektierten Füllbereichs für das Netz
net Potentialflächen, die von fremdem Potential abgeschirmt werden. Dieser Arbeitsvorgang ist sehr rechenintensiv und kann einige Zeit in Anspruch nehmen. Nach Beendigung des Füllvorgangs empfiehlt es sich, einen Bildneuaufbau zu veranlassen, um das Resultat visuell zu überprüfen. Sind Sie mit dem Ergebnis nicht zufrieden (weil die generierten Strukturen z.B. zu fein oder zu grob sind), dann können sie den Füllvorgang rückgängig machen, neue Flächenfüllparameter einstellen und den Flächenfüll-Algorithmus erneut aufrufen.
Setzen Sie mit den folgenden Kommandos den zuvor durchgeführten Arbeitsschritt zurück, und rufen Sie den Füllalgorithmus anschließend mit automatischer Insel-Elimination auf:
Flaechen | |
Flaechenautomatik | |
Entfernen alle | |
Insel Erkennung | |
Inseln loeschen | |
Auffuellen alle | |
Die minimale Strukturgröße, d.h. die kleinste Flächenausdehnung, mit der gefüllt werden darf, ist von essentieller Bedeutung für die spätere CAM-Ausgabe. Um zu verhindern, dass spitzwinklige Flächenstrukturen entstehen, führt der Füllalgorithmus automatisch eine Abrundung der konvexen Ecken der zu generierenden Flächen entsprechend des gewählten Wertes für die minimale Strukturgröße durch. Für die minimale Strukturgröße sollte demnach z.B. ein Wert etwa im Bereich der Größe der kleinsten in der Gerbertabelle definierten Blende spezifiziert werden. Dadurch ist gewährleistet, dass später im
CAM-Prozessor ein Gerber-Plot ohne Überzeichnungsfehler erzeugt werden kann.
Komplexitätsbetrachtungen zur Flächenautomatik
Bei der Anwendung der Flächenautomatik kann es je nach Komplexität und Größe der zu füllenden Fläche sowie der abzuisolierenden Strukturen zu längeren Rechenzeiten und größeren Datenmengen kommen. Der Rechenzeitbedarf für die zur Abisolierung notwendige Abstandsberechnung ist bei rechteckigen bzw. orthogonal angeordneten Strukturen sehr viel geringer als z.B. bei kreisbogenförmigen Strukturen, da bei letzteren sehr viel komplexere Geometrieberechnungen anzustellen und damit rechenzeitintensivere Fließpunktoperationen auszuführen sind. Darüber hinaus wirkt sich die Komplexität der abzuisolierenden Strukturen und insbesondere deren Lage zueinander entscheidend auf die durch den Füllalgorithmus erzeugten Datenmengen und die Komplexität der generierten Flächen aus.
Abbildung 4-8 verdeutlicht diesen Sachverhalt.
Abbildung 4-8: Flächenautomatik; Komplexitätsbetrachtung
Um die Komplexität und Anzahl der erzeugten Füllflächen zu reduzieren, kann über die Parametereinstellung
wahlweise eine der Optionen
,
oder
anstelle der Defaultoption
aktiviert werden. Damit werden Leiterbahnknicke und/oder Vollkreise für die Aussparung beim Flächenfüllen durch das umschreibende Achteck ersetzt. Durch diese Art der Aussparung lassen sich auch die Gerberdatenmengen reduzieren, wenn für die Gerberausgabe keine Gerber-Kreisbefehle verwendet werden können.
Um zu lange Wartezeiten bei einer versehentlichen Aktivierung der Flächenautomatik zu vermeiden, besteht die Möglichkeit, diese Funktion während der Generierung von Füllflächen vorzeitig per Tastendruck und Bestätigung abzubrechen. Hierbei ist jedoch zu beachten, dass ein Funktionsabbruch in der abschließenden Phase der Connectivity-Generierung nicht mehr möglich ist. Weiterhin ist zu beachten, dass die bis zum Funktionsabbruch generierten Füllflächen ggf. mit der
-Funktion explizit zu entfernen sind.
Durch die Erzeugung von Füllflächen kann die Anzahl der Kupferflächen und insbesondere die der Polygonpunkte erheblich zunehmen. Dies hat zur Folge, dass der Rechenzeitbedarf für die
-Funktion zur Berechnung der Unroutes (siehe hierzu auch
Kapitel 4.3.2 dieses Handbuchs) enorm zunimmt, wenn die
-Funktion auf eine Ecke-zu-Ecke-Berechnung eingestellt ist. In Extremfällen ist daher die Einstellung der
-Funktion auf eine Pin-zu-Pin-Berechnung empfehlenswert. Der
-Funktionstyp kann über
selektiert werden.
Generierung von Schraffurflächen
Das Untermenü
enthält Funktionen zur automatischen Umwandlung elektrisch leitfähiger Flächen in schraffierte Flächen (Hatching).
Die Schraffur wird durch Leiterbahnzüge generiert. Hierfü können die Leiterbreite und der Abstand zwischen den Leiterbahnen mit
(Default 0.3mm) und
(Default 1.27mm) eingestellt werden.
Mit
kann zwischen unterschiedlichen Schraffurverfahren zur Generierung einer (diagonalen)
oder zur Erzeugung einer
gewählt werden.
Die Schraffurflächengenerierung wird durch den Aufruf der Funktion
und die Selektion der umzuwandelnden Kupferfläche aktiviert.
Wandeln Sie mit den folgenden Kommandos die auf der Signallage 2 des Layouts platzierte, kreisförmige passive Kupferfläche in eine linienschraffierte Fläche mit einem Schraffurabstand von 1mm um (stellen Sie zuvor die Koordinatenanzeige auf Inch ein):
Einstellungen | |
Koordinatenanzeige | |
inch Anzeige | |
Flaechen | |
Flaechenautomatik | |
Schraffurabstand | |
Schraffurabstand ( 1.27mm) ? | 1 |
Flaeche Schraffur | |
Positionieren auf passive Kupferfläche/Lage 2, [0.8",1.8"] | |
Setzen Sie nun die Schraffurbreite auf 0.2mm und den Schraffurmodus auf Gitterschraffur, und wandeln Sie die auf der Signallage 1 des Layouts platzierte Potentialfläche für das Signalnetz
vdd in eine gitterschraffierte Fläche um:
Flaechen | |
Flaechenautomatik | |
Schraffurbreite | |
Schraffurbreite ( 0.30mm) ? | 0.2 |
Schraffurmodus | |
Gitterschraffur | |
Flaeche Schraffur | |
Positionieren auf Potentialfläche "vdd"/Lage 1, [2.5",2.0"] | |
Die Funktion
wandelt das zu bearbeitende Polygon in einen Spezialtyp um. Die Schraffur und die Umrandung der Schraffurfläche werden durch Leiterbahnzüge erzeugt. Diese Leiterbahnen haben die über die Schraffurbreite spezifizierte Leiterbahnbreite und werden der Schraffurfläche fest zugeordnet damit eine Bearbeitung des kompletten Schraffurobjekts mit Standardflächenfunktionen wie
oder
möglich ist.
Wenn Sie alle Schritte bis hierhin richtig ausgeführt haben, dann sollte das Layout jetzt entsprechend
Abbildung 4-9 aussehen.
Abbildung 4-9: Layout mit Füllflächen
Vergessen Sie nicht, das aktuelle Layout zu sichern:
Datei | |
Speichern | |
4.6.9 Bibliotheks-Update
Eines der mächtigsten Werkzeuge des
Bartels AutoEngineer ist die Funktion
, mit der in kürzester Zeit eine Aktualisierung der jobspezifischen Bibliothek (in der Regel ist hier eine Angleichung an eine "Master-Bibliothek" verlangt) durchgeführt werden kann.
Kopieren Sie das aktuell geladene Layout in die Datei
democopy.ddb (mit Default-Elementnamen), und laden Sie das kopierte Layout:
Datei | |
Ablegen auf Name | |
Dateiname ? | democopy |
Elementname ? | |
Laden | |
Layout | |
Dateiname ? | democopy |
Elementname ? | |
Auf dem Bildschirm sehen Sie nun das kopierte Layout, das allerdings nur die direkt auf dem Layout definierten Objekte enthält. Was fehlt, sind die Bibliothekssymbole (Bauteile, Padstacks, Pads) aus den unteren Hierarchieebenen. Diese wurden durch die Funktion
nicht mitkopiert, um zu verhindern, dass evtl. in der Zieldatei
democopy.ddb bereits vorhandene Elemente überschrieben werden. In der Statuszeile gibt das System die Meldung
Einige angeschlossene Pins fehlen!
bzw.
Einzelne Teile fehlen im Bild (sind nicht ladbar)!
aus. Um nun die jobspezifische Bibliothek der DDB-Datei
democopy auf die in
demo.ddb enthaltene Bibliothek anzugleichen, müssen Sie die folgenden Kommandos ausführen:
Datei | |
Update Bibliothek | |
Layout | |
Dateiname ? | |
Elementname ? | |
Name der Quelldatei ? | demo |
Das System sollte nach wenigen Augenblicken die Meldung
Bibliothekselemente ersetzt!
ausgeben. Diese Meldung besagt, dass alle auf dem aktuell geladenen Layout referenzierten Bibliothekselemente aus der Quelldatei kopiert wurden. Um den durchgeführten Bibliotheks-Update zu visualisieren, ist das Layout nun erneut zu laden:
Datei | |
Laden | |
Layout | |
Dateiname ? | |
Elementname ? | |
Auf dieselbe Weise kann die jobspezifische Bibliothek des aktuell geladenen Layouts z.B. mit den Einträgen einer anderen Bibliothek korreliert werden. Führen Sie einen Bibliotheks-Update für das im Speicher befindliche Layout mit der Quelldatei
demolib.ddb durch, und achten Sie beim erneuten Laden des Layouts insbesondere auf die bedrahteten Widerstände, deren Gehäusebauform
r04a25 in
demolib.ddb anders definiert ist:
Datei | |
Update Bibliothek | |
Layout | |
Dateiname ? | |
Elementname ? | |
Name der Quelldatei ? | demolib |
Laden | |
Layout | |
Dateiname ? | |
Elementname ? | |
Die Funktion
erlaubt das gezielte Ersetzen spezieller Bibliothekselemente durch entsprechende Elemente aus einer Quelldatei. Mit den folgenden Kommandos können das Bauteilsymbol
r04a25 und die Paddefinition
p1206 in der (aktuellen) Datei
democopy.ddb wieder ersetzt werden durch die in der Datei
demo.ddb definierten Symbole:
Datei | |
Element ersetzen | |
Bauteil | |
Dateiname ? | |
Elementname ? | r04a25 |
Name der Quelldatei ? | demo |
Bitte bestaetigen (J/N) ? | j |
Element ersetzen | |
Pad | |
Dateiname ? | |
Elementname ? | p1206 |
Name der Quelldatei ? | demo |
Bitte bestaetigen (J/N) ? | j |
Laden | |
Layout | |
Dateiname ? | |
Elementname ? | |
4.6.10 Rücknetzliste
Ausgesprochen nützlich für HF-Anwendungen ist die Funktion
, mit der aus der Information über das auf der Leiterkarte befindliche Kupfer (und nur aus diesem) automatisch eine Netzliste erzeugt werden kann.
Die Arbeitsweise dieser Funktion soll anhand des aktuell geladenen Layouts (Datei
democopy.ddb , Default-Elementname) demonstriert werden. Löschen Sie hierzu zunächst die Leiterbahn, die die Pins
NO1 und
4 der Bauteile
K1 und
X1 verbindet sowie die Definition der Versorgungslage
vss :
Leiterbahnen | |
Bahn loeschen | |
Positionieren auf Bahn,z.B.[2.35",0.9"] | |
Einstellungen | |
Versorgungslagen | |
1: vss | |
Netzname ? | - |
Ende | |
Beachten Sie, dass nun Airlines anstelle der gelöschten Leiterbahn und der Versorgungslage angezeigt werden. Verbinden Sie nun mit einer neuen Leiterbahn die beiden Pins
2 und
1 der Bauteile
R100 und
R101 miteinander:
Leiterbahnen | |
Neue Leiterbahn | |
Positionieren auf "R100.2",[1.4",2.4"] | |
Positionieren auf "R101.1",[1.6",2.4"] | |
Fertig | |
Das System meldet jetzt einen Kurzschluss. Speichern Sie das Layout ab, erzeugen Sie mit Hilfe der Funktion
eine Netzliste, die Sie unter demselben Element- und Dateinamen wie das Layout ablegen, und laden Sie anschließend das Layout wieder:
Datei | |
Speichern | |
Diverse | |
Rueck-Netzliste | |
Dateiname ? | |
Elementname ? | |
Datei | |
Laden | |
Layout | |
Dateiname ? | |
Elementname ? | |
Das System führt nun eine Connectivity Generierung für das Layout mit der durch
erzeugten Netzliste durch. Es erscheinen anschließend keine Airlines mehr für die zuvor gelöschte Leiterbahn und für das Signalnetz
vss . Das Layout enthält auch keine offenen Verbindungen oder Kurzschlüsse mehr (überprüfen Sie dies mit
und
im Menü
). Wird die vor dem Aufruf von
neu gelegte Leiterbahn entfernt, dann erscheint an ihrer Stelle eine Airline.
Eine weitere nützliche Anwendung der Funktion
CAM-View (siehe hierzu
Kapitel 4.8 dieses Handbuchs) auf Signallagen des Layouts eingelesen wurden.
4.6.11 Blind und Buried Vias
Blind und Buried Vias sind Sacklöcher bzw. partielle Durchkontaktierungen, die als Umsteiger beim Routen von Mehrlagen-Layouts verwendet werden können. Durch den Einsatz von Blind und Buried Vias lässt sich unter Umständen der Entflechtungsgrad auf Multilayer-Platinen (mit 4 oder mehr Signallagen) entscheidend erhöhen.
Der
Layouteditor des
Bartels AutoEngineer erlaubt die Definition partieller Durchkontaktierungen. Hierzu sind auf Padstackebene die entsprechenden Pads zu laden und auf die gewünschten Lagen zu platzieren (siehe auch
Kapitel 4.2.2, Padstackerstellung). Zusätzlich ist eine Bohrung zu definieren, der eine spezifische Bohrungsklasse zugeordnet werden sollte, um bei der CAM-Ausgabe die selektive Ausgabe der an partiellen Durchkontaktierungen definierten Bohrungen zu ermöglichen (siehe auch
Kapitel 4.7.13, Ausgabe von Bohrdaten). Die Konventionen für die Spezifikation der Bohrungsklasse sind frei wählbar. Empfehlenswert ist z.B. die Vergabe der Bohrungsklasse
A für Lage 1/2,
B für Lage 2/3,
C für Lage 3/4, usw. Wir bitten zu beachten, dass bei der Erstellung und Verwendung partieller Durchkontaktierungen die layout-spezifische Definition der Obersten Lage (siehe auch
Kapitel 4.3.1) von besonderer Bedeutung ist.
Sind z.B. die Padstacks
via (Alle Lagen),
via_12 (Umsteiger von Lage 1 nach 2),
via_23 (Umsteiger von Lage 2 nach 3) und
via_34 (Umsteiger von Lage 3 nach 4) definiert, dann können alle diese Padstacks in die Liste der Durchkontaktierungen selektiert werden und stehen somit für die Entflechtung z.B. eines 4-Lagen-Boards zur Verfügung (siehe hierzu auch
Kapitel 4.3.4, Selektion der Durchkontaktierung).
Beim manuellen Routen im
Layouteditor wird bei jedem Lagenwechsel automatisch das Via mit der geringstmöglichen Lagenbelegung gesetzt. Auch der
Autorouter arbeitet nach diesem Prinzip. Um allerdings zu verhindern, dass sich während des
Autorouter-Laufes Mehrdeutigkeiten beim Backtracking ergeben, dürfen - im Gegensatz zum
Layouteditor - keine zwei Vias in der Via-Liste definiert sein, die sich wechselweise in ihrer Lagenzuordnung in mehr als einer Lage überschneiden. Es ist also z.B. nicht erlaubt, ein Via über die Lagen 1/2/3 und zugleich ein Via über die Lagen 2/3/4 in der Liste der Durchkontaktierungen zu halten; der
Autorouter bricht in diesem Fall mit der Meldung
Via Pad-Stack als Via ungeeignet! ab. Zulässig hingegen ist z.B. die gleichzeitige Verwendung eines Via über die Lagen 1/2/3, eines Via über die Lagen 1/2 und eines Via über die Lagen 2/3.
Im
CAM-Prozessor ist bei der Erzeugung der Bohrdaten für die in den partiellen Durchkontaktierungen definierten Bohrungen jeweils die entsprechende Bohrungsklasse zu spezifizieren.
Dringend zu beachten ist, dass bei der Verwendung von Blind und Buried Vias der Aufwand und damit die Kosten für die Fertigung und den Test der Leiterplatte erheblich höher liegen, als bei konventionellen Multilayer-Platinen. Andererseits können die Vorteile spezieller neuartiger Fertigungstechnologien wie etwa des Verfahrens zur Herstellung plasmageätzter Vias nur durch die Verwendung partieller Durchkontaktierungen genutzt werden.
4.6.12 Verlassen des Layoutsystems
Bevor Sie den
Layouteditor verlassen, sollten Sie nicht vergessen, das gerade bearbeitete Dateielement zu sichern:
Datei | |
Speichern | |
Rücksprung ins Hauptmenü
Von jedem Modul des Layoutsystems (außer
Autorouter) ist mit den folgenden Kommandos der Rücksprung in das BAE-Hauptmenü möglich:
Datei | |
Hauptmenue | |
Sie befinden sich anschließend in der Shell des BAE. Diese lässt sich wie folgt beenden:
Programmende | |
Programmende
Der Bartels AutoEngineer kann von jedem Modul des Layoutsystems mit
Datei | |
Programmende | |
direkt beendet werden. Sollte der
Layouteditor hierbei mit einer Bitte um Bestätigung reagieren, dann wurde das aktuell geladene Element noch nicht gesichert. In diesem Fall sollten Sie die Funktion
abbrechen, das aktuell im Speicher befindliche Element sichern und anschließend erst das Programmende herbeiführen:
Datei | |
Programmende | |
Bitte bestaetigen (J/N) ? | n |
Datei | |
Speichern | |
Datei | |
Programmende | |
4.7 CAM-Prozessor
4.7.1 Programmaufruf
Bei realen Projekten sollten Sie vor dem Aufruf des
CAM Processors zur Erzeugung von Fertigungsdaten zuerst immer mit der Funktion
aus dem Menü
des
Layouteditors eine komplette Entwurfsregelprüfung durchführen und das Ergebnis dieses Design Rule Checks mit
auf etwaige Probleme hin überprüfen. Keinesfalls sollten Sie Fertigungsdaten aus Designs mit Abstandsverletzungen, Kurzschlüssen oder offenen Verbindungen für die Fertigung freigeben, da damit (fast ausnahmlos) unbrauchbare Leiterkarten produzieret werden würden.
Der Aufruf des
Bartels AutoEngineer sollte grundsätzlich aus dem Verzeichnis erfolgen, in welchem die zu bearbeitenden Projektdateien abgelegt bzw. abzulegen sind. Wechseln Sie also zunächst in Ihr Projektverzeichnis. Zur Abarbeitung der in diesem Handbuch aufgeführten Beispiele ist es zweckmäßig, in das bei der Installation des
Bartels AutoEngineer angelegte BAE-Jobs-Directory (d.h. in das Verzeichnis, in dem die Datei
demo.ddb abgelegt ist) zu wechseln. Der Aufruf des Layoutmoduls erfolgt aus der Shell des
Bartels AutoEngineer. Starten Sie diese von Betriebssystemebene aus mit folgendem Befehl:
> bae
Wählen Sie den Menüpunkt
mit der Maus an, und bestätigen Sie Ihre Wahl durch Drücken der linken Maustaste:
Layout | |
Nun wird der
Layouteditor des
AutoEngineer geladen. Sollte der Programmaufruf fehlschlagen, dann deutet dies darauf hin, dass die Software nicht richtig installiert ist. Wir verweisen in diesem Zusammenhang auf die
Bartels AutoEngineer® Installationsanleitung.
Der
CAM-Prozessor wird mit der Funktion
im Menü
des
Layouteditors aktiviert:
Datei | |
CAM-Prozessor | |
War im
Layouteditor ein Layout geladen, so wird dieses auch automatisch vom
CAM-Prozessor geladen. Im
CAM-Prozessor selbst kann man mit der Funktion
im Menü
ein Layout, ein Bauteil, einen Padstack oder ein Pad zur CAM-Ausgabeverarbeitung laden. Laden Sie mit den folgenden Kommandos das Layout
board aus der Projektdatei
demo.ddb in den Arbeitsspeicher:
Datei | |
Laden | |
Layout | |
Dateiname ? | demo |
Elementname ? | board |
Tritt beim Laden eines Elements die Meldung
Zeichen Font kann nicht geladen werden!
auf, so bedeutet dies, dass der dem Layoutelement zugeordnete Zeichensatz nicht aus der Fontdatendatei
ged.fnt im Programmverzeichnis geladen werden konnte.
4.7.2 Hauptmenü
In der Benutzeroberfläche des
CAM-Prozessors werden neben bereits aus dem
Layouteditor bekannten Menüs (wie
bzw.
,
) Funktionen zur Generierung von Bestückdaten, Bohrdaten, Gerber-Fotoplots und Kontrollplots (HP-GL, PCL, Postscript) angeboten. Nach dem Aufruf des
CAM-Prozessors befindet sich auf der rechten Bildschirmseite eine Menüleiste, bestehend aus dem Hauptmenü im oberen Bereich sowie dem im Hauptmenü selektierten Menü im unteren Bereich. Nach dem Laden des
CAM-Prozessor ist das Menü
aktiviert, und der grüne Menübalken steht auf
.
Unter Windows und Motif kann anstelle der Standard- bzw. Seitenmenükonfiguration wahlweise auch ein Benutzerinterface mit Pulldownmenüs aktiviert werden. Hierzu ist mit Hilfe des Utilityprogramms
bsetup das Kommando
WINMENUMODE mit der Option
PULLDOWN in das Setup der BAE-Software einzuspielen (siehe hierzu auch
Kapitel 7.2). Bei der Verwendung von Pulldownmenüs ist das Hauptmenü als horizontal ausgerichtete Menüleiste am oberen Ende der Benutzerschnittstelle angeordnet.
Das Hauptmenü ist während der Dauer der Layoutbearbeitung mit dem
CAM-Prozessor ständig verfügbar und ermöglicht die Aktivierung der folgenden Menüs:
Ansicht, Bilddarstellung
Im Menü
bzw.
, das Sie außer durch Selektion im Hauptmenü auch immer über die mittlere Maustaste erreichen können, können Sie Zoomfunktionen aktivieren, das Eingaberaster definieren oder die Farbtabelle einstellen.
Kontrollplot
Das Menü
enthält die Funktionen zur Generierung von HP-GL-Penplots sowie zur Erzeugung von Postscript- und HP-Laser-Ausgaben.
Gerber Fotoplot
Das Menü
enthält die Funktionen zur Generierung von Gerber-Photoplot-Ausgaben. Auch können von hier aus die Gerber-Blendentabellen definiert bzw. verwaltet werden.
Bohr+Bestueckdaten
Das Menü
enthält die Funktionen zur Ausgabe von Bohrdaten im Format Sieb&Meier sowie zu Ausgabe von Bestückdaten in generischem Format.
Plotparameter
Das Menü
enthält Funktionen zum Setzen allgemeiner Plotparameter (Symboltoleranz, Nullpunkt, Drehung, Spiegelung) und zur Definition der Parameter für die Ausgabe von Versorgungslagen. Darüber hinaus kann über dieses Menü auch die Ausgabe spezieller Lagen (Alle Lagen, Umrandung, Passermarken) gesteuert werden.
Diverse
Im Menü
kann der Programmabbruch, der Rücksprung in die Shell des
Bartels AutoEngineer oder der Rücksprung in den
Layouteditor veranlasst werden. Dieses Menü enthält weiterhin wichtige Dateiverwaltungsfunktionen zum Laden von Elementen und zum Auflisten von Dateiinhalten. Darüber hinaus werden über das Menü
Funktionen zum Definieren des Hintergrundrasters, zum Setzen des Koordinatenanzeigemodus sowie zum Rücksetzen der Fehleranzeige angeboten. Auch der explizite Aufruf von
User Language-Programmen ist von diesem Menü aus möglich.
4.7.3 Modifizierte Benutzeroberfläche
Menübelegung und Tastaturprogrammierung
Einige der mit der BAE-Software installierten
User Language-Programme definieren implizite
User Language-Programmaufrufe über die eine weit reichend modifizierte Benutzeroberfläche mit einer Vielzahl von Zusatzfunktionen (Startups, Toolbars, Menübelegung, Tastaturprogrammierung) aktiviert wird. Das
User Language-Startupprogramm
bae_st wird automatisch beim Aufruf des
CAM-Prozessors gestartet.
bae_st ruft seinerseits das
User Language-Programm
uifsetup auf, welches eine vordefinierte Menü- und Tastaturbelegung im
CAM-Prozessor aktiviert. Änderungen bzw. Anpassungen der Menü- und Tastaturbelegung können zentral in der Quellcodedatei von
uifsetup vorgenommen werden. Die aktuelle Tastaturbelegung kann mit dem
User Language-Programm
hlpkeys angezeigt werden. Der Aufruf von
hlpkeys ist über die Funktion
aus dem Menü
möglich, sofern die vordefinierte Menübelegung aus
uifsetup aktiviert ist. Mit dem
User Language-Programm
uifdump kann die in der aktuellen Interpreterumgebung definierte Menü- und Tastaturbelegung in Form eines Reports angezeigt bzw. auf eine Datei ausgegeben werden. Mit dem
User Language-Programm
uifreset lässt sich die komplette Menü- und Tastaturbelegung zurücksetzen.
uifsetup,
uifdump und
uifreset sind auch über das Menü des
User Language-Programms
keyprog aufrufbar, welches zudem komfortable Funktionen zur Online-Tastaturprogrammierung sowie zur Verwaltung von Hilfstexten für
User Language-Programme zur Verfügung stellt.
Kaskadierende Pulldownmenüs unter Windows/Motif
Die Windows- und Motifversionen des
CAM-Prozessors ermöglichen die Konfiguration kaskadierender Pulldownmenüs. Menüpunkte können ihrerseits implizit auf Untermenüs verweisen. Die Notwendigkeit des Aufrufs von Funktionen zur expliziten Anzeige von Untermenüs entfällt damit. Die Pulldownmenüs der Windows- und Motifversionen des
CAM-Prozessors werden über das
User Language-Programm
uifsetup entsprechend mit kaskadierenden Menüs ausgestattet. Untermenüfunktionen lassen sich damit einfach lokalisieren und starten. Die über die rechte Maustaste implementierte Wiederholfunktion ist entsprechend angepasst. Die Wiederholung von in Untermenus untergebrachten Funktionen vereinfacht sich dadurch erheblich.
Dialoge für Parametereinstellungen unter Windows/Motif
In den Windows- und Motifversionen des
CAM-Prozessors sind die folgenden Dialoge für Parametereinstellungen implementiert:
- - : Allgemeine CAM-/Plotparameter
- - : Bilddarstellungsparameter
- - : Kontrollplotparameter
- - : Gerberplotparameter
- - : Bohrdatenausgabeparameter
In den Pulldownmenükonfigurationen werden die Standardfunktionen für Parametereinstellungen über das
User Language-Programm
uifsetup durch die obigen Menüfunktionen zum Aufruf der entsprechenden Dialoge ersetzt.
Pulldownmenükonfiguration unter Windows/Motif
Bei der Verwendung von Pulldownmenüs unter Windows und Motif wird über das
User Language-Programm
uifsetup eine an Windows angepasste Menüanordnung mit zum Teil geänderten Funktionsbezeichnungen und einer Vielzahl von Zusatzfunktionen konfiguriert. Das Hauptmenü des
CAM-Prozessors wird dabei wie folgt aufgebaut:
4.7.4 Grundsätzliches zur Bedienung
Automatische Parametersicherung
Im
CAM-Prozessor ist eine Funktion zur automatischen Sicherung wichtiger Bearbeitungs- und Plotparameter implementiert. Beim Wechsel in ein anderes BAE-Modul (Hauptmenü oder
Layouteditor) werden automatisch die folgenden Parameter in der aktuell bearbeiteten Designdatei gespeichert (d.h. die Parametersicherung kann durch Beenden des
AutoEngineer mit der Funktion
wahlweise auch unterdrückt werden):
- Name der aktuell geladenen Layoutfarbtabelle
- Eingaberaster
- Hintergrundraster
- Koordinatenanzeigemodus
- Breitendarstellungswert
- Ausgabemodus Platinenumrandung
- Ausgabemodus Alle Signallagen
- Ausgabemodus Passermarken-Lage
- Plot/CAM Genauigkeit/Symboltoleranz
- Plot/CAM Nullpunktkoordinaten
- Plot/CAM Rotationsmodus
- Plot/CAM Spiegelungsmodus
- Versorgungslagen Wärmefallenmindestabstand
- Versorgungslagen Isolationsmindestabstand
- Versorgungslagen Wärmefallentoleranz
- Versorgungslagen Isolationstoleranz
- Versorgungslagen Umrandungsbreite
- Versorgungslagen Isolationsbreite
- Kontrollplot Ausgabedateiname/Ausgabeeinheit
- Kontrollplot Massstab/Skalierungsfaktor
- HP-GL-Plot Stiftbreite/Standardlinienbreite
- HP-GL-Plot Geschwindigkeit
- HP-GL-Plot Füllmodus
- Gerber-Fotoplot Ausgabedateiname/Ausgabeeinheit
- Gerber-Fotoplot Blendentabellenname
- Gerber-Fotoplot Format/Plottereinheiten
- Gerber-Fotoplot Standardlinienbreite
- Gerber-Fotoplot Füllverfahren
- Gerber-Fotoplot Kreisbogenausgabemodus
- Bohrdaten Ausgabedateiname/Ausgabeeinheit
- Bohrwerkzeugtabelle Ausgabedateiname/Ausgabeeinheit
- Bohrdaten Werkzeugtoleranz
- Bestückdaten Ausgabedateiname/Ausgabeeinheit
Die Elementnamen der zu sichernden Parametersätze werden vom aktuell bearbeiteten Layoutelement abgeleitet. Layoutspezifische Parametersätze erhalten den Elementnamen des aktuell bearbeiteten Layouts, bauteilspezifische Parametersätze den Namen
[part] , padstackspezifische Parametersätze den Namen
[padstack] , padspezifische Parametersätze den Namen
[pad] . Beim Laden eines Elements wird automatisch der entsprechende Parametersatz mitgeladen. Dadurch wird in komfortabler Weise eine spezifische Arbeitsumgebung zur Bearbeitung der selektierten Bibliothekshierarchie bzw. des selektierten Designobjekts aktiviert.
Ausgabekanal
Bei allen CAM-Ausgabearten kann ein Ausgabekanal (d.h. ein Ausgabegerät bzw. eine Ausgabedatei) angegeben werden, in den die erzeugten CAM-Daten geleitet werden. Dieser Kanal kann entweder direkt ein Ausgabegerät über einen Schnittstellennamen (z.B. COM2 in MS-DOS) oder den Namen einer Datei, in die die Ausgaben gelenkt werden, angeben. Dabei ist zu beachten, dass die Schnittstelle initialisiert ist bzw. Schreibberechtigung und genügend Platten-/Diskettenkapazität zur Aufnahme der Ausgabedaten bereitsteht. Sind diese Grundvoraussetzungen nicht erfüllt, so bricht die Ausgabe mit der Meldung
Schreiben ASCII-Datei fehlgeschlagen! ab.
Wird kein Ausgabekanal explizit vorgegeben, dann bittet das Programm nach Aktivierung des entsprechenden Ausgabemenüpunktes um die Angabe eines Namens für die Ausgabedatei bzw. den Ausgabekanal. In den Funktionen
,
,
und
im Menü
, in den Funktionen
,
und
im Menü
, sowie in den Funktionen
,
,
,
und
im Menü
sind Popupmenüs zur schnellen Selektion des Ausgabekanals bzw. der Ausgabedatei integriert. Aus Gründen der Datensicherheit werden hierbei Dateien mit den Endungen
.ass ,
.con ,
.ddb ,
.def ,
.exe ,
.fre ,
.ulc und
.usf ausgeblendet. Wahlweise besteht selbstverständlich auch die Möglichkeit, die Namen neu zu erstellender CAM-Dateien direkt über Tastatur einzugeben.
User Language
Im
CAM-Prozessor ist der
Bartels User Language Interpreter integriert, d.h. vom
CAM-Prozessor aus können
User Language-Programme gestartet werden. Der Anwender hat damit die Möglichkeit, eigene Zusatzfunktionen nach anwender- bzw. firmenspezifischen Bedürfnissen zu implementieren und in den
CAM-Prozessor einzubinden. Hierzu zählen zum Beispiel Statusanzeigen und Parametereinstellungen, Report- und Testfunktionen, spezielle Postprozessoren und Plotfunktionen, firmenspezifische Batch-Prozeduren, usw. usf.
Im
CAM-Prozessor können
User Language-Programme explizit oder implizit aufgerufen werden. Der explizite Programmaufruf erfolgt über den Menüpunkt
im Menü
. Nach der Aktivierung dieses Menüpunktes ist auf die Abfrage nach dem Programmnamen der Name des aufzurufenden
User Language-Programms (z.B.
ulprog ) explizit einzugeben. Die Betätigung einer beliebigen Maustaste oder die Eingabe eines Fragezeichens
? auf die Abfrage nach dem Programmnamen bewirkt hierbei die Aktivierung eines Popupmenüs mit allen aktuell verfügbaren
User Language-Programmen.
User Language-Programme können auch implizit über die Tastatur aktiviert werden. Diese Art des Programmaufrufs ist immer dann möglich, wenn nicht gerade eine andere interaktive Eingabe über Tastatur erwartet wird. Die Spezifikation des Programmnamens erfolgt dabei implizit durch Drücken einer Taste. Zulässige Tasten sind dabei die Standardtasten
(1,
2, ...,
0,
a,
b,
c, ...; entsprechende Programmnamen sind
cam_1,
cam_2, ...,
cam_0,
cam_a,
cam_b,
cam_c, ...) bzw. die Funktionstasten
(F1,
F2, ...; entsprechende Programmnamen sind dabei
cam_f1,
cam_f2, ...).
Der
CAM-Prozessor ermöglicht den ereignisgesteuerten Aufruf von
User Language-Programmen. Dabei lösen spezielle Ereignisse bzw. Operationen implizit, d.h. automatisch den Aufruf von
User Language-Programmen mit definierten Namen aus, sofern diese verfügbar sind. Im Einzelnen sind dies die
User Language-Programme
cam_st beim Starten des
CAM-Prozessors,
cam_load nach dem Laden eines Elements,
cam_save vor dem Speichern eines Elements,
cam_tool bei Selektion eines Toolbarelements sowie
cam_zoom bei Änderung des Zoomfaktors. Der Aufruf über die Startupsequenz der Interpreterumgebung eignet sich besonders zur automatischen Voreinstellung von modulspezifischen Parametern sowie zur Tastaturprogrammierung und Menübelegung. Der implizite Aufruf von
User Language-Programmen nach dem Laden bzw. vor dem Speichern von Elementen ermöglicht die automatische Aktivierung elementspezifischer Bearbeitungsparameter wie z.B. des zuletzt selektierten Zoombereichs oder spezieller Farbeinstellungen. Bei Interaktionen in der Werkzeugliste werden die den selektierten Toolbarelementen zugewiesenen Funktionen ausgelöst. Die Änderung des Zoomfaktors kann dazu benutzt werden, Aktualisierungen in Funktionen zur Verwaltung von Entwurfsansichten auszulösen.
Mit der
Bartels User Language werden darüber hinaus mächtige Systemfunktionen zur Tastaturprogrammierung und Menübelegung sowie zur Definition von Werkzeugleisten (Toolbars) zur Verfügung gestellt. Beachten Sie bitte, dass über die mit der BAE-Software ausgelieferten
User Language-Programme eine Vielzahl von Zusatzfunktionen implementiert und transparent in die Benutzeroberfläche des
CAM-Prozessors eingebunden sind.
Eine ausführliche Beschreibung der
Bartels User Language finden Sie im
Bartels User Language Programmierhandbuch (Kapitel 4.2 enthält eine Auflistung aller mit der BAE-Software ausgelieferten
User Language-Programme).
Neuronales Regelsystem
Im
Bartels AutoEngineer sind eine Vielzahl mächtiger Zusatzfunktionen über das integrierte
Neuronale Regelsystem implementiert.
Kapitel 6.3.2 enthält eine Übersicht über die im Layoutsystem bereitgestellten Regelsystemanwendungen. Eine Reihe dieser Applikationen ermöglichen spezielle Fertigungsdatenausgaben bzw. eine erweiterte Kontrolle über die Fertigungsdatengenerierung.
4.7.5 Plotparameter
Vor dem Plotten sollte man sich über die Art und gewünschte Genauigkeit der Ausgabe im Klaren sein. Der
CAM-Prozessor bietet eine Vielzahl von Parametern zur Steuerung der Plotausgabe.
Bei der Angabe von Parametern wird hinter dem Eingabeprompt jeweils in Klammern der aktuelle Wert angezeigt. Fehleingaben werden mit der Meldung
Ungueltiger numerischer Wert! zurückgewiesen, und es wird der angezeigte vorherige Parameterwert beibehalten.
Im Menü Plotparameter des
CAM-Prozessors sind die für alle Ausgabearten gemeinsamen Plotparameter einstellbar.
Plotparameter Speichern/Laden
Die in
Kapitel 4.7.4 beschriebene automatische Parametersicherung in der aktuell bearbeiteten DDB-Datei wird beim Modulwechsel grundsätzlich immer durchgeführt. Darüberhinaus stehen im Dateimenu des
CAM-Prozessors die Funktionen
und
zur Verfügung. Mit
können die CAM-Parameter wahlweise in einer anderen DDB-Datei gespeichert werden. Mit
können CAM-Parametereinstellungen aus einer selektierbaren DDB-Datei geladen und für das aktuell geladene Layoutelement aktiviert werden.
Plot/CAM Nullpunkt
Für die Ausgabe von Koordinaten muss ein Bezugspunkt definiert sein, der den Nullpunkt des Plotkoordinatensystems darstellt. Dieses Koordinatensystem besitzt nach rechts und oben hin steigende Werte. Der Nullpunkt wird beim Laden eines Elements in die linke untere Ecke der Elementabgrenzung gelegt. Mit
kann der Bezugspunkt an eine beliebige Position gebracht werden. Dabei ist zu beachten, dass nicht alle Ausgabegeräte negative Koordinaten verarbeiten können. Bei der Defaultposition des Nullpunkts sind positive Koordinaten sichergestellt.
Im Plotparameterdialog der Windows- und Motifversionen des
CAM-Prozessors besteht über einen entsprechenden Button zusätzlich die Möglichkeit, den Plotnullpunkt auf die Defaultposition zurückzusetzen.
Plot/CAM Drehung
Mit
kann die Ausgabe um
gegen den Uhrzeigersinn gedreht erfolgen. Mit
wird wie auf dem Bildschirm dargestellt geplottet.
Zur Kennzeichnung des selektierten CAM-Rotationsmodus wird bei aktivierter Spiegelung bzw. Rotation am Marker für den CAM-Nullpunkt ein Beispieltext und ein Pfeil entsprechend des gewählten Spiegelungs- und Rotationsmodus angezeigt.
Plot/CAM Spiegelung
Um Texte z.B. auf Unterseiten von Platinen leserichtig zu plotten, bestehen verschiedene Möglichkeiten der Spiegelung. Diese sind in der Funktion
zusammengefasst:
Plotparameter | |
Plot/CAM spiegeln | |
erzeugt eine Ausgabe wie am Bildschirm dargestellt.
spiegelt alle Koordinaten an der durch den Nullpunkt verlaufenden X-Achse.
spiegelt den Plot um die X-Achse, der Text bleibt jedoch leserichtig.
spiegelt nur die Texte um ihre X-Achse. Mit
wird um die X-Achse und der Text zusätzlich um seine Y-Achse gespiegelt.
plottet wie am Bildschirm dargestellt, die Texte werden um ihre Y-Achse gespiegelt.
Abbildung 4-10 zeigt an einem Beispiel die Wirkungsweise der verschiedenen Spiegelfunktionen.
Abbildung 4-10: CAM-Spiegelungsarten
Bei allen Spiegelungen ist wieder auf die Lage des Nullpunkts zu achten. Bei
muss er zum Beispiel in der linken oberen Elementbegrenzung liegen, um ausschließlich positive Koordinaten zu erzeugen. Befand sich der Plotnullpunkt an der Defaultposition, so springt er bei Wahl eines der Spiegelmenüpunkte automatisch in eine Position, die positive Koordinaten sicherstellt.
Zur Kennzeichnung des selektierten CAM-Spiegelungsmodus wird bei aktivierter Spiegelung bzw. Rotation am Marker für den CAM-Nullpunkt ein Beispieltext und ein Pfeil entsprechend des gewählten Spiegelungs- und Rotationsmodus angezeigt.
Alle Lagen Modus
Die Funktion
gibt an, wie die Objekte zu behandeln sind, die auf den Signallagen
und
bzw. auf beiden Seiten der Dokumentarlagen definiert sind. Bei Dokumentarlagen bezieht sich der
auf Seite 1 und Seite 2 und entspricht der Auswahl
in den Dokumentarlagen-Menüs. Bei Signallagen bezieht sich der
auf die Signallagenauswahl
bzw.
. Mit der Option
gibt man an, dass Objekte auf diesen Lagen nur bei Wahl der entsprechenden Plotlage
(,
oder
bei Dokumentarlagen) ausgegeben werden. Mit
werden diese Objekte zusammen mit der jeweils selektierten Signal- oder Dokumentarlage geplottet. D.h. mit
werden beim Plotten der Signallage 1 auch die Objekte der Signallage
mit ausgegeben, beim Plotten der
der Dokumentarlage
werden die Objekte der Dokumentarlage
-
mit ausgegeben, usw. Die Defaulteinstellung für den
ist
.
In der
BAE HighEnd-Version werden für den
zusätzlich die Optionen
,
und
angeboten. Diese Modi steuern die Ausgabe von Innenlagenpads für Pins und Vias. Mit
werden beim Plotten von Innenlagen nur die Pin- und Viaflächen, die auf der zu plottenden Innenlage Verbindung zu anderen Elementen haben, ausgegeben. Mit
werden beim Plotten von Innenlagen alle Pinflächen und nur die Viaflächen, die auf der zu plottenden Innenlage Verbindung zu anderen Elementen haben, ausgegeben. Mit
werden beim Plotten von Innenlagen alle Viaflächen und nur die Pinflächen, die auf der zu plottenden Innenlage Verbindung zu anderen Elementen haben, ausgegeben. Als Innenlagen werden dabei alle Signallagen mit Ausnahme der Signallage 1 und der über den Parameter
spezifizierten Lage betrachtet.
Symboltoleranz
gibt den maximalen Fehler vor, der beim Ausfüllen von Flächen mit den gegebenen Stiften bzw. Blenden gemacht werden darf. Dieser Fehler wird immer nur zum inneren Bereich der Fläche hin gemacht, d.h. es wird nicht über die vorgegeben Fläche hinaus gezeichnet (da ja sonst Kurzschlüsse erzeugt werden könnten). Der Defaultwert beträgt 0.15mm.
Ist eine gegebene Struktur auch mit der kleinsten zur Verfügung stehenden Blende bzw. dem Stift nicht zu realisieren, so verwendet der
CAM-Prozessor die kleinste Blende, bzw. den zur Verfügung stehenden Stift und zeigt nach dem Plot Überzeichnungsfehler an. Ggf. falsch gezeichnete Strukturen werden durch Highlight gekennzeichnet. Mit
im Menü
lässt sich diese Fehleranzeige wieder zurücksetzen.
Umrandung und Passermarken
Mit den Funktionen
und
kann angegeben werden, ob die Umrandung bzw. die Passermarken zusammen mit allen anderen Plotlagen auszugeben sind (Optionen
bzw.
) oder die Objekte auf der Umrandungs- bzw. Passermarkenlage nur bei Selektion der entsprechenden Plotlage ausgegeben werden (Optionen
bzw.
). Die Defaulteinstellungen sind
und
. Die Passermarkenlage ist die mit dem
bsetup-Kommando
LAYPLTMARKLAY definierte Dokumentarlage für Film Passermarken (siehe hierzu auch
Kapitel 7.1).
4.7.6 Versorgungslagen
Versorgungslagen werden vom
CAM-Prozessor automatisch erzeugt. Dazu wird ein Negativbild der Versorgungslage generiert. Die auf den Versorgungslagen definierten Texte werden mit der aktuell eingestellten Standardlinien- bzw. Standardstiftbreite ausgegeben.
Während der Bearbeitung von Versorgungslagen sind dem
Layouteditor die nachfolgend im
CAM-Prozessor eingestellten Versorgungslagen-Plotparameter selbstverständlich noch nicht bekannt. Aus diesem Grund kann der Design Rule Check des
Layouteditors auch keine umfassende Prüfung der später tatsächlich geplotteten Versorgungslagen durchführen. Wir empfehlen daher mit Nachdruck, die Versorgungslagen-Plots vor einer Weitergabe zum Filmhersteller oder zur Leiterkartenfertigung (z.B. mit
CAM-View) einer eingehenden visuellen Kontrolle zu unterziehen; insbesondere sollte überprüft werden, ob z.B. durch zu groß gewählte Isolationsbreitenparameter ungewollt Inseln in Power Planes erzeugt wurden.
Versorgungslagen-Umrandung
Damit das Kupfer nicht bis zum Platinenrand reicht, wird entlang des Randes eine Isolationslinie gezogen, deren Breite sich mit dem Plotparameter
einstellen lässt. Der Defaultwert hierfür beträgt 2.1mm. Enthält die Umrandung Kreisbögen, dann muss für die Plotausgabe ein Werkzeug (Gerber-Blende, Stift- bzw. Standardbreite) zur Verfügung stehen, mit dem die Umrandung in der angegebenen Breite gezogen werden kann.
Geteilte Potentiallagen und Potentialflächenisolation
Sofern Potentialflächen auf der zu plottenden Versorgungslage definiert sind, werden diese automatisch durch die Ausgabe der entsprechenden Flächenumrandung als Isolationslinie generiert. Die Bearbeitung aktiver Potentialflächen mit Netzzuweisung führt dabei zur Generierung sogenannter geteilter Potentiallagen, während über passive Potentialflächen ohne Netzzuweisung echte Isolationsflächen in der Versorgungslage erzeugt werden. Die Breite der Potentialflächenisolation kann mit der Funktion
definiert werden. Der hierfür voreingestellte Defaultwert beträgt 0.3mm.
Fremdnetzisolation
Um die nicht zum Netz der Versorgungslage bzw. Potentialfläche gehörenden Pins abzuisolieren, werden um die Bohrungen dieser Pins ausgefüllte Kreise gezeichnet. Die Durchmesser dieser Kreise werden durch die Bohrdurchmesser und die Parameter
(Mindestabstand Isolation zu Bohrung) und
(Toleranz Abstand Isolation zu Bohrung) bestimmt. Der Durchmesser eines solchen Isolationskreises beträgt minimal
Bohrdurchmesser + 2 × (V-IS-Min.Abstand)
und maximal
Bohrdurchmesser + 2 × (V-IS-Min.Abstand) + 2 × (V-IS-Toleranz)
Abbildung 4-11 verdeutlicht die Wirkungsweise der Parametereinstellungen für den Mindestabstand und die Toleranz der Versorgungslagen-Isolation.
Abbildung 4-11: CAM-Versorgungslagenisolation
Wärmefallen
Um die zum Netz der Versorgungslage bzw. Potentialfläche gehörenden Pins werden automatisch Wärmefallen gezeichnet. Diese bestehen aus vier Achtelkreislinien, die um die Bohrung herum angeordnet sind, um zu verhindern, dass beim Löten zu viel Wärme abfließen kann. Die Durchmesser dieser Kreise werden analog zu den Isolationskreisen durch die Parameter
(Mindestabstand Wärmefalle zu Bohrung) und
(Toleranz Abstand Wärmefalle zu Bohrung) bestimmt. Die Defaultwerte betragen für die Mindestabstände 0.4mm und für die Toleranzen 0.5mm.
Beim Fotoplot wird vor dem Zeichnen der Wärmefalle noch geprüft, ob eine Blende vom Typ thermisch definiert ist, deren Durchmesser im berechneten Toleranzbereich liegt. Ist eine entsprechende Blende vorhanden, so wird die Wärmefalle mit dieser geblitzt. Ansonsten werden die Wärmefallen mit der kleinsten runden Blende mit Modus all oder line gezogen.
Nehmen Sie mit den folgenden Kommandos eine Parametereinstellung für Versorgungslagen auf einen Mindestisolationsabstand von 0.35mm mit einer Toleranz von 0.4mm, d.h. maximal 0.75mm Isolationsabstand vor; die Wärmefallen sollen in einem Abstand von mindestens 0.35mm mit einer Toleranz von 0.45mm gezogen werden, d.h. in einem Abstand von maximal 0.8mm; die Versorgungslagenumrandung soll mit 0.3mm, die Potentialflächen-Isolation mit 0.25mm gezogen werden:
Plotparameter | |
V-Lagen-Umrandung | |
Breite der Vers.lagenumrandung ( 2.10mm) ? | 0.3 |
V-Lagen-Isolation | |
Breite der Vers.lagenisolation ( 0.30mm) ? | 0.25 |
V-IS-Min.Abstand | |
Min. Isolation-zu-Bohrung Abstand ( 0.40mm) ? | 0.35 |
V-IS-Toleranz | |
Isolation-zu-Bohrung Toleranz ( 0.50mm) ? | 0.4 |
V-WF-Min.Abstand | |
Min. W.falle-zu-Bohrung Abstand ( 0.40mm) ? | 0.35 |
V-WF-Toleranz | |
Waermefalle-zu-Bohrung Toleranz ( 0.50mm) ? | 0.45 |
4.7.7 HP-GL-Ausgabe
Die Erzeugung von HP-GL-Plots geschieht mit der Funktion
im Menü
.
Die Ausgabe erfolgt dabei mit einem Stift, dessen Breite über die Funktion
angeben werden kann. Von der Breite dieses Stiftes hängt es ab, bis zu welcher minimalen Größe Strukturen ohne Überzeichnungsfehler ausgegeben werden können. Die Defaultstiftbreite beträgt 0.3mm. Es können Werte im Bereich von 0.01 bis 10.0mm angegeben werden.
Die Plotgeschwindigkeit kann mit
beeinflusst werden. Dabei kann man die Geschwindigkeit in cm/s oder S für maximale Geschwindigkeit angeben. Die Defaulteinstellung ist
S . Als maximaler Zahlenwert für die Geschwindigkeit wird 99 akzeptiert.
Die Koordinaten werden in Plotter Units ausgegeben. Ein Millimeter entspricht 40.2 Plotter Units. Einige "HP-GL-kompatible" Plotter legen 40 Plotter Units pro Millimeter für die Ausgabe zugrunde. Der dabei auftretende Fehler kann durch Wahl eines entsprechenden Faktors mit Hilfe der Funktion
kompensiert werden. Der Defaultwert für den Maßstab beträgt 1.0. Es können Werte von 0.1 bis 100.0 angegeben werden.
Für schnelle Kontrollplots kann man im Menü
mit
das Ausfüllen von Flächen unterbinden. Es wird dann bei Flächen nur die Umrandungslinie geplottet. Mit
kann der Defaultzustand wieder hergestellt werden.
Die HP-GL-Plotausgabe wird mit der Funktion
gestartet. Der Benutzer kann dabei zunächst eine Lage aus dem üblichen Lagenauswahlmenü wählen und wird dann um die Angabe einer Stiftnummer (1..99) gebeten.
Erstellen Sie mit den folgenden Kommandos einen HP-GL-Plot (Datei
demo_bs2.plt ) der Seite 2 der Dokumentarlage Bestueckungsplan mit nicht ausgefüllten Flächen in halber Größe mit Stift 1, einer Stiftbreite von 0.2mm und einer Plotgeschwindigkeit von 10 cm/s:
Kontrollplot | |
Stiftbreiten | |
Stift-/Standardbreite ( 0.30mm) ? | 0.2 |
Geschwindigkeit | |
Plotter Geschwindigkeit (cm/s,S) ? | 10 |
Fuellmodus HP-GL | |
Fuellen aus | |
Massstab | |
Plot Vergroesserungsfaktor ( 1.00) ? | 0.5 |
Plot HP-GL Ausgabe | |
Dokumentarlage | |
Bestueckungsplan | |
Seite 2 | |
Plotter Stiftnummer (1..99) ? | 1 |
Plotdatei Name ? | demo_bs2.plt |
Beachten Sie die Option
im Lagenauswahlmenü der Funktion
. Damit können die Plotdaten mehrerer, selektierbarer Lagen simultan auf eine einzige Datei ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Plotlagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Die Lagenselektion mit der linken Maustaste erlaubt hierbei zusätzlich die Spezifikation lagenspezifischer Stiftnummern (per Default wird für jede Lage der Stift 1 verwendet). Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren; dabei werden die Stiftnummern für die HP-GL-Ausgabe automatisch auf die Modulo-8-Werte der entsprechenden Lagenfarben gesetzt.
Das erfolgreiche Schreiben des HP-GL-Plots wird durch die Meldung
HP-GL Plot beendet (<n> Fehler).
quittiert. Dabei gibt
<n> die Anzahl der beim Plot gemachten Überzeichnungsfehler an. Die zu groß gezeichneten Flächen werden in Highlight-Farbe dargestellt.
Am Ende der HPGL-Ausgabedateien wird ein PG -Kommando zum Auswurf der Seite abgesetzt, um zu vermeiden, dass aufeinanderfolgende Blattausgaben übereinander geplottet werden. Ist die Ausgabe mehrerer Lagen auf ein Blatt gewünscht, so ist bei der Lagenauswahl die Option
zu verwenden.
4.7.8 HP-Laser-Ausgabe
Die Ausgabe von HP-Laser-Plots im Format PCL (Printer Command Language) kann mit der Funktion
vom Menü
aus gestartet werden. Der Plot wird dabei automatisch auf A4 skaliert, d.h. weder die Einstellung des Maßstabs, noch die Angabe einer Stift- bzw. Standardbreite haben hier Wirkung. Um die Dokumentarlage Bestueckungsplan (Seite 1, Lötseite) des aktuell geladenen Layouts auf
lpt1 (d.h. hier z.B. Direktangabe der DOS-Schnittstelle zu Laserdrucker) auszugeben, sind folgende Kommandos auszuführen:
Kontrollplot | |
HP Laser Ausgabe | |
Dokumentarlage | |
Bestueckungsplan | |
Seite 1 | |
Plotdatei Name ? | lpt1 |
Beachten Sie die Option
im Lagenauswahlmenü der Funktion
. Damit können die Plotdaten mehrerer, selektierbarer Lagen simultan auf eine einzige Datei ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Plotlagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren.
Das erfolgreiche Schreiben des PCL-Plots wird durch die Meldung
HP Laser Ausgabe beendet (Skalierung 1:...).
mit der Angabe des zur Skalierung auf Blattgröße verwendeten Skalierungsfaktors
quittiert.
Die Daten müssen im Binärmodus an den Ausgabekanal übertragen werden. Erfolgt die Ausgabe zunächst auf eine externe Datei (z.B.
demo_bs1.pcl ), dann ist auf DOS-Ebene bei der anschließenden Übertragung dieser Datei an den Laserdrucker mit Hilfe des COPY-Befehls die Option
/b anzuwenden:
> copy demo_bs1.pcl lpt1 /b
4.7.9 Postscript-Ausgabe
Die Postscript-Ausgabe wird mit der Funktion
im Menü
gestartet. Um die Signallage 1 des aktuell geladenen Layouts mit einem Vergrößerungsfaktor von 0.75 und unter Verwendung einer Standardlinienbreite von 0.25 mm auf die Datei
demo_l1.ps auszugeben, sind folgende Kommandos auszuführen:
Kontrollplot | |
Stift-/Standardbreite | |
Plotter Stiftbreite ( 0.20mm) ? | 0.25 |
Massstab | |
Plot Vergroesserungsfaktor (0.50) ? | 0.75 |
Postscript Ausgabe | |
Lage 1 | |
Plotdatei Name ? | demo_l1.ps |
Beachten Sie die Option
im Lagenauswahlmenü der Funktion
. Damit können die Postscriptdaten mehrerer, selektierbarer Lagen simultan auf eine einzige Datei ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Plotlagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren.
Das erfolgreiche Schreiben der Postscript-Datei wird durch die Meldung
Postscript Ausgabe beendet. quittiert.
4.7.10 Generische Ausgabe unter Windows
In den Windows-Versionen der BAE-PC-Software ist eine generische Plot- bzw. Druckerausgabe implementiert. Damit werden durch den
CAM-Prozessor der BAE-Windows-Software prinzipiell alle unter der aktuell definierten Windows-Betriebssystemkonfiguration verfügbaren Print- bzw. Plotfunktionen unterstützt.
Zur Aktivierung des Windows Print-/Plot-Menü sind die folgenden Kommandos auszuführen:
Kontrollplot | |
Generic Ausgabe | |
Beachten Sie die Option
im Lagenauswahlmenü der Funktion
. Damit können die Plotdaten mehrerer, selektierbarer Lagen simultan auf eine einzige Datei ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Plotlagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Die Lagenselektion mit der linken Maustaste erlaubt hierbei über die Zuweisung von Stiftnummern zur Angabe von Indizes in die aktuell definierte Farbtabelle zusätzlich die Spezifikation lagenspezifischer Farben für eine farbige Plotausgabe. Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren; dabei werden die Farben für die Plotausgabe automatisch auf die Modulo-8-Werte der lagenspezifischen Farbtabellenindizes gesetzt.
Die im Windows-Druckerdialog vorgenommenen Einstellungen für die Anzahl der Kopien, die Sortierung sowie den Seitenausgabebereich werden bei der generischen Ausgabe berücksichtigt.
Bei Anwahl der Option
im Druckerdialog der generischen Ausgabe unter Windows werden alle Seiten ausgegeben. Somit ist es möglich z.B. alle Layouts eines Projektes auf einmal auszudrucken. Um z.B. Layouts gemischt gedreht und nicht gedreht ausgeben zu können, werden jeweils die für das zu plottende Element eingestellten Druckparameter berücksichtigt. Diese können sich von den Parametern des aktuell geladenen Elements unterscheiden.
Bei Anwahl der Option
im Druckerdialog der generischen Ausgabe unter Windows kann ein Bereich für die Plotausgabe selektiert werden.
Bei der generischen Ausgabe wird eine automatische Anpassung der Skalierung auf das für die Druckausgabe definierte Blattformat unter Beibehaltung des Seitenverhältnisses vorgenommen, wenn die Größe des zu plottenden Elements die über die Druckereinstellung definierte Blattgröße überschreitet.
Die Funktion
zeigt nach Beendigung der Ausgabe in der Mitteilungszeile den zur Skalierung auf Blattgröße verwendeten Skalierungsfaktor an.
4.7.11 Bitmap-Plotausgabe auf die Windows-Zwischenablage
In der Windowsversion ermöglicht die Funktion
aus dem Menü
die Ausgabe von Zeichnungsdaten in eine Bitmap, die in die Zwischenablage zum weiteren Verarbeiten durch
() in andere bitmapfähige Windowsanwendungen übertragen wird. Per Default wird das gesamte aktuell geladene Element ausgegeben. Mit
lässt sich die Ausgabe auf ein mausselektierbares Rechteck beschränken. Die Dialogbox zur Plotparametereinstellung erlaubt auch eine Größenvorgabe für die Bitmap, sowie die Auswahl des Rotations- und Spiegelungsmodus für die Ausgabe.
Bei Auswahl einer einzelnen Ausgabelage erfolgt die Ausgabe schwarz auf weißem Grund. Bei Wahl von
erfolgt die Ausgabe der selektierten Lagen entsprechend den Einstellungen der Farbpalette in Mischfarben auf schwarzem Hintergrund.
4.7.12 Gerber-Photplot
Für das Erstellen von Gerber-Plots benötigt der
CAM-Prozessor eine Tabelle mit den zur Verfügung stehenden Blenden. Zur Erstellung und Verwaltung solcher Blendentabellen bietet das Menü
einige Grundfunktionen an. Die Blendentabellen werden dabei global in der Datei
cam.dat gehalten. Erstellt man eigene Blendentabellen, so sollte man darauf achten, dass man bei System-Updates diese Datei nicht überspielt (siehe hierzu auch die
Bartels AutoEngineer® Installationsanleitung).
Gerber Konstruktionstechniken
Es empfiehlt sich, möglichst effiziente Gerber-Blendentabellen zu definieren, um die Datenmengen bei der Plotdatenausgabe zu minimieren. Der Grund hierfür liegt darin, dass unnötig große Gerberdateien mehr Speicherplatz benötigen und damit längere Kopier- und Modem-Übertragungszeiten beanspruchen. Sofern die Plots auf einem Vektorplotter erzeugt werden, ergeben sich bei größeren Plotdateien auch längere Plotzeiten und damit höhere Produktionskosten. Die Fotoplotter unterstützen zwei verschiedene Zeichenmodi für die Ausgabe liniengezogener und geblitzter Strukturen. Eine geblitzte Struktur wird auf dem Plotfilm durch eine einzige Blitzbelichtung mit der entsprechend selektierten Blende erzeugt. Flächen, für die in der Blendentabelle eine passende Blitzbelichtungs-Blende existiert, lassen sich demnach durch ein Flash-Kommando mit einem einzigen Koordinatenpaar realisieren. Flächen ohne passende Blende werden soweit möglich mit Hilfe effizienter Zeichnungstechniken (siehe unten) realisiert. Sofern es sich hierbei um einfach nachzubildende Strukturen handelt, lässt sich die Anzahl der Ausgabekoordinaten in Grenzen halten. Für unregelmäßig geformte bzw. platzierte Strukturen sowie für Flächen ohne passende Blenden hingegen kommen Gerber-Füllverfahren zur Anwendung, die u.U. erhebliche Datenmengen produzieren. Mit einer geeigneten Definition der Padformen und der Verwendung passender Blendentabellen können demnach der Speicherplatzbedarf für generierte Gerberdateien, der Zeitaufwand für Kopiervorgänge, die Kosten für Modemübertragungen, usw. entscheidend minimiert werden.
Orthogonal platzierte quadratische bzw. rechteckige Pads mit passender quadratischer bzw. rechteckiger Blende werden geblitzt. Orthogonal platzierte rechteckige Pads, für die eine quadratischen Blende mit einer Kantenlänge entsprechend der kürzeren Padseite existiert, werden durch einen Linienzug realisiert. Orthogonal platzierte rechteckige (und quadratische) Pads, für die eine quadratische Blende mit einer Kantenlänge größer als die Hälfte der kürzeren Padseite existiert, werden durch zwei Linienzüge mit der entsprechenden Blende realisiert. Nicht im rechten Winkel platzierte rechteckige Pads werden über Füllverfahren realisiert. Kreisförmige Pads mit einer passenden runden Flash-Blende werden geblitzt. Kreisförmige Pads ohne passende Blende werden durch kreisförmige Linienzüge mit der nächstkleineren runden Blende realisiert. Fingerförmige Pads (Rechtecke mit Halbkreisen an den Enden) werden wie Leiterbahnsegmente behandelt, d.h. sie werden ggf. mit einer entsprechenden runden Blende als einfache Linie abgefahren. Pads, die den vorgenannten Spezifikationen nicht genügen, werden über Füllverfahren realisiert. Leiterbahnzüge mit einer Breite entsprechend einer verfügbaren runden Line-Blende werden durch Linienzüge realisiert. Leiterbahnzüge, für deren Breite keine Blende zur Verfügung steht, werden durch sich überlappende Linienzüge mit der nächstkleineren Line-Blende realisiert. Unregelmäßig geformte bzw. platzierte Flächen werden grundsätzlich über Füllverfahren realisiert.
Gerber Blendentabelle
Die Funktionen
,
und
führen die entsprechenden Grundfunktionen mit den Blendentabellen durch.
zeigt die Namen aller ladbaren Blendentabellen an.
Tritt beim Laden die Meldung
Gerber Blendentabelle Ueberlauf! auf, so bedeutet dies, dass in der geladenen Blendentabelle mehr als die vom System verwaltbaren 900 Einträge enthalten sind. Da man solche Blendentabellen nicht innerhalb des
Bartels AutoEngineer erzeugen kann, deutet diese Meldung auf eine korrupte
cam.dat -Datei hin.
Bei Starten des
CAM-Prozessors wird automatisch die Blendentabelle mit dem Namen
standard geladen. Die darin definierten Blenden sind in
Tabelle 4-4 aufgelistet.
Tabelle 4-4: Gerber Blendentabelle "standard"
D-Code | Blendentyp | Blendengröße | Zeichenmodus |
[mil] | [mm] |
D10 | rund | 7.87 | 0.200 | ALL |
D11 | rund | 8.27 | 0.210 | ALL |
D12 | rund | 9.84 | 0.250 | ALL |
D13 | rund | 11.81 | 0.300 | ALL |
D14 | rund | 15.75 | 0.400 | ALL |
D15 | rund | 19.69 | 0.500 | ALL |
D16 | rund | 23.62 | 0.600 | ALL |
D17 | rund | 27.56 | 0.700 | ALL |
D18 | rund | 31.50 | 0.800 | ALL |
D19 | rund | 35.43 | 0.900 | ALL |
D20 | rund | 39.37 | 1.000 | ALL |
D21 | rund | 43.31 | 1.100 | ALL |
D22 | rund | 47.24 | 1.200 | ALL |
D23 | rund | 51.18 | 1.300 | ALL |
D24 | rund | 59.06 | 1.500 | ALL |
D25 | rund | 62.99 | 1.600 | ALL |
D26 | rund | 66.93 | 1.700 | ALL |
D27 | rund | 78.74 | 2.000 | ALL |
D28 | rund | 90.55 | 2.300 | ALL |
D29 | rund | 98.43 | 2.500 | ALL |
D30 | rund | 102.36 | 2.600 | ALL |
D31 | rund | 110.24 | 2.800 | ALL |
D32 | rund | 118.11 | 3.000 | ALL |
D33 | rund | 129.92 | 3.300 | ALL |
D34 | rund | 137.80 | 3.500 | ALL |
D35 | rund | 149.61 | 3.800 | ALL |
D36 | rund | 157.48 | 4.000 | ALL |
D37 | rund | 169.29 | 4.300 | ALL |
D38 | quadratisch | 15.75 | 0.400 | ALL |
D39 | quadratisch | 19.69 | 0.500 | ALL |
D40 | quadratisch | 23.62 | 0.600 | ALL |
D41 | quadratisch | 29.53 | 0.750 | ALL |
D42 | quadratisch | 31.50 | 0.800 | ALL |
D43 | quadratisch | 39.37 | 1.000 | ALL |
D44 | quadratisch | 43.31 | 1.100 | ALL |
D45 | quadratisch | 47.24 | 1.200 | ALL |
D46 | quadratisch | 51.18 | 1.300 | ALL |
D47 | quadratisch | 59.06 | 1.500 | ALL |
D48 | quadratisch | 62.99 | 1.600 | ALL |
D49 | quadratisch | 78.74 | 2.000 | ALL |
D50 | quadratisch | 86.61 | 2.200 | ALL |
D51 | quadratisch | 118.11 | 3.000 | ALL |
D52 | quadratisch | 129.92 | 3.300 | ALL |
D53 | thermisch | 70.87 | 1.800 | ALL |
D54 | thermisch | 86.61 | 2.200 | ALL |
D55 | thermisch | 98.43 | 2.500 | ALL |
Das Editieren von Blendentabellen erfolgt mit der Funktion
. Nach Aktivieren dieser Funktion erscheint am Bildschirm eine Übersicht über die ersten Einträge der Blendentabelle. Man kann nun durch Eingabe von
+ bzw.
- jeweils eine Übersichtsseite vor- bzw. zurückblättern. Durch Betätigen der Eingabetaste
gelangt man zurück zur Menüverwaltung. Durch Eingabe eines Index kann man den entsprechenden Eintrag der Blendentabelle ändern. Für die Parameter gilt bei Betätigen der Eingabetaste
jeweils der alte Wert. Zunächst wird die Form mit Hilfe eines Kürzels angegeben.
r steht für rund,
q für quadratisch,
a für rechteckig ("Area"),
t für thermisch und
s für spezial, wobei die Spezialeinträge vom System nicht verwendet werden. Danach gibt man den Durchmesser bzw. die Kantenlänge(n) der Blende an. Darauf folgt die Eingabe des Modus.
f (Flash) bedeutet, dass mit diesem D-Code nur geblitzt werden kann.
l (Line) steht für die alleinige Verwendung als Line-Blende und
a (All) für die Verwendbarkeit als Line- und Flash-Blende. Zuletzt wird noch der D-Code der Blende angegeben. Es ist darauf zu achten, dass keine D-Codes mehrfach eingetragen werden, da das System dabei je nach Bedarf die eine oder andere Definition verwendet. Gibt man auf die Abfrage nach der Form
- an, so wird der entsprechende Eintrag in der Blendentabelle freigegeben.
Beachten Sie, dass quadratische und rechteckige Blenden nur zum Blitzen orthogonal platzierter Strukturen verwendet werden können. Vor der Verwendung rechteckiger Blenden ist außerdem unbedingt zu klären, ob der Leiterkartenhersteller diesen Blendentyp verarbeiten kann.
Tragen Sie unter dem D-Code 10 mit den folgenden Kommandos eine runde Line-Blende mit 0.3mm Durchmesser in den ersten Blendentabellenplatz ein:
Gerber Fotoplot | |
Blenden aendern | |
Gerber Blende Index (1..900,+,-) ? | 1 |
Blende (r)und/(q)uad/(t)herm./(s)pezial/(a)rea/(-) ? | r |
Blende Durchmesser/Kantenlaenge (0.127mm) ? | 0.3 |
Zeichenmodus (a)ll/(f)lash/(l)ine ? | l |
Gerber D-Code Nummer (10-999) ? | 10 |
Durch Betätigen der Eingabetaste
gelangen Sie wieder in die Menüoberfläche. Mit
kann man eine ASCII-Ausgabe der geladenen Blendentabelle erzeugen. Mit
kann die aktuell definierte Blendentabelle unter einem frei wählbaren Namen (in der Datei
cam.dat ) gespeichert werden.
Gerber Format, Optimierte Gerberausgabe
Für die Ausgabe kann mit
und
das Format mit ganzzahligen 1/1000 Inch Koordinaten, d.h. 3 Nachkommastellen, oder mit
und
Ausgabe in 1/10000 Inch, d.h. 4 Nachkommastellen, gewählt werden. Defaulteinstellung ist
. Zusätzlich stehen die Optionen
und
zur Auswahl. Bei der optimierten Gerberausgabe werden gleichbleibende Koordinatenkomponenten und die Wiederholung des Kommandos D01 ("Licht aus") bei längeren Linienzügen unterdrückt. Dadurch ergibt sich eine signifikante Reduzierung der Plotdatenmengen. Vor der Anwendung der optimierten Gerberausgabe ist jedoch unbedingt zu klären, ob der Leitenplattenhersteller diese Optimierungen unterstützt.
Standard-Linienbreite
Die Linienbreite für Texte und Grafiklinien wird mit
eingestellt. Der Defaultwert beträgt 0.3mm. Diese Linienbreite muss innerhalb der gegebenen Toleranz mit einer runden Line-Blende realisierbar sein. Ansonsten gibt das System die Fehlermeldung
Standard Linienbreite nicht realisierbar! aus.
Gerber Füllmodus
Über
kann das Verfahren spezifiziert werden, nach dem die Flächenstrukturen gezeichnet werden sollen. Hierbei stehen das Multiblenden-Füllverfahren (Defaulteinstellung
; zum Flächeninneren hin immer größere Blenden) und das Linien-Füllverfahren
(; Füllen mit der kleinsten zur Verfügung stehenden Line-Blende) zur Auswahl.
Als weitere Option wird
angeboten. In diesem Modus werden die nicht blitzbaren Strukturen nicht durch Verfahren mit Blenden aufgefüllt, sondern direkt als Außenkontur der Füllfläche abgespeichert, und erst später durch den Photoplotter generiert. Dies führt zu erheblich reduzierten Datenmengen bei der Ausgabe von nicht blitzbaren Flächen. Ein weiterer unschätzbarer Vorteil dieses Verfahrens besteht darin, dass Überzeichnungsfehler praktisch ausgeschlossen werden können. Allerdings ist vor Verwendung des G36/G37-Füllmodus unbedingt mit dem Leiterplattenhersteller zu klären, ob der eingesetzte Photoplotter dieses Verfahren unterstützt.
Gerber Kreisbogenmodus
Mit der Funktion
kann wahlweise die Verwendung von Gerber-I/J-Kreisbefehlen (Option
) anstelle der Interpolation (Defaultoption
) aktiviert werden. Sofern der Fotoplotter Gerber-Kreisbefehle interpretieren kann, sollten diese auch verwendet werden, da sich dadurch eine erhebliche Datenreduktion in der Gerberausgabe erzielen lässt.
Extended Gerber
Über die Funktion
kann wahlweise eine Fotoplotausgabe im Format RS-274-X (Extended Gerber with Embedded Apertures) erfolgen. Es stehen die Optionen
,
und
zur Auswahl.
entspricht der Standardausgabe. Im Gegensatz dazu wird bei Extended Gerber in der Gerberdatei noch zusätzlich die verwendete Blendentabelle und das Gerberformat mit abgespeichert (d.h. in die Plotdatei eingebettet). Dabei kann zwischen fester und dynamisch (d.h. automatisch) generierter Blendentabelle gewählt werden. Die dynamisch generierte Blendentabelle bezieht sich auf das gesamte Layout, d.h. nicht nur die aktuell geplottete Lage. Der Vorteil der Extended Gerber Ausgabe besteht darin, dass die Blendentabelleninformation jeweils automatisch mit der Plotdatei an den Filmhersteller übermittelt werden kann. Bei Verwendung der dynamisch generierten Blendentabelle erübrigt sich darüber hinaus auch noch die sonst notwendige Definition bzw. Aktivierung einer Blendentabelle vor der Gerberplotausgabe.
Warnung
Vor einem produktiven Einsatz des Extended Gerber-Formats ist unbedingt zu klären, ob der Leiterkartenhersteller diese Option unterstützt, d.h. ob der zur Filmerstellung verwendete Gerberplotter das Format Extended Gerber verarbeiten kann. Bei Anwendung des Multiblendenfüllverfahrens wird von der Verwendung automatisch generierter Blendentabellen ohnehin abgeraten, da sich die dynamisch generierten Blendentabellen nur in Ausnahmefällen für dieses Füllverfahren eignen.
Gerber Photoplot-Ausgabe
Mit
wird die Ausgabe von Gerberdaten gestartet. Dabei wird noch ein Auswahlmenü für die zu plottende Lage durchlaufen. Beachten Sie hierbei die Option
im Lagenauswahlmenü. Damit können die Photoplotdaten mehrerer, selektierbarer Lagen simultan ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Plotlagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren.
Geben Sie für die Signallage 2 des aktuell geladenen Layouts die Gerberdaten im Format 2.4 mit einer Standardlinienbreite von 0.254mm unter Verwendung der aktuell definierten Blendentabelle und im Linien-Füllmodus auf die Datei
demo_l2.ger aus:
Gerber Fotoplot | |
Std. Linienbreite | |
Gerber Standard Linienbreite ( 0.30mm) ? | 0.254 |
Gerber Format | |
Gerber 2.4 Format | |
Gerber Fuellmodus | |
Linienfuellen | |
Plot Gerber | |
Lage 2 | |
Plotdatei Name ? | demo_l2.ger |
Dem Schreiben der Ausgabedatei folgt die Ausgabe eines Reports. Der Report enthält folgende Daten über die Ausgabe:
Anzahl blitzbelichteter Strukturen .....: <f>
Anzahl rechteck-gezeichneter Flaechen ..: <r>
Anzahl kreis-gezeichneter Flaechen .....: <c>
Anzahl Multiblenden Flaechen ...........: <m>
Anzahl liniengefuellter Flaechen .......: <l>
Anzahl gezeichneter Waermefallen .......: <w>
Anzahl Ueberzeichnungs-Fehler ..........: <e>
<f> gibt dabei die Anzahl der Strukturen an, die direkt durch Blitzen mit einer Blende erzeugt wurden.
<r> ist die Zahl der rechteckigen Flächen, die mit quadratischer Line-Blende gefüllt wurden,
<c> die der Kreise, die durch eine kleinere im Kreis gezogene runde Line-Blende erzeugt wurden.
<m> steht für die Anzahl der Strukturen, die im Multiblenden-Füllmodus gezeichnet wurden.
<l> steht für die Anzahl der Strukturen, die mit der kleinsten verfügbaren runden Line-Blende gefüllt wurden.
<w> ist die Zahl der Wärmefallen, die mit der kleinsten verfügbaren runden Line-Blende gezeichnet wurden.
<e> gibt die Anzahl der Strukturen an, die mit der kleinsten verfügbaren runden Line-Blende nicht innerhalb der gegebenen Toleranz erzeugt werden konnten.
In keinem Fall sollten Sie eine Fotoplot-Ausgabe, bei der Überzeichnungsfehler auftraten, in die Fertigung bzw. zum Filmhersteller geben. In der Regel führt die Weiterverarbeitung derartiger Plots zur Erzeugung von fehlerhaften Leiterkarten!
Mit Hilfe des
CAM-View-Moduls (siehe
Kapitel 4.8) können die erzeugten Gerberdaten visuell auf deren Richtigkeit überprüft werden.
4.7.13 Bohrdaten
Das Menü
enthält Funktionen zur Generierung von Bohrdaten in den Formaten Excellon II bzw. Sieb&Meier. Mit Hilfe des
CAM-View-Moduls (siehe
Kapitel 4.8) lassen sich die erzeugten Bohrdaten anschließend visualisieren, sortieren oder zur Nutzengenerierung weiterverarbeiten.
Excellon
Mit der Funktion
können Bohrdaten im Format Excellon II erzeugt werden. Hierbei werden sowohl die Bohrdaten selbst als auch die Werkzeug- bzw. Bohrertabelle in einer einzigen Datei ausgegeben.
Der Name der Excellon-Ausgabedatei kann mit
voreingestellt werden. Mit dem Parameter
kann die Toleranz angegeben werden, mit der bei der Auswahl von Bohrwerkzeugen vorgegangen werden soll. Der Defaultwert für die Bohrertoleranz beträgt 0.10mm.
In der Funktion
erfolgt vor der eigentlichen Bohrdatenausgabe die Abfrage nach der Bohrungsklasse, über die die selektive Ausgabe durchkontaktierter, nicht durchkontaktierter, oder zu partiellen Durchkontaktierungen gehörender Bohrungen möglich ist. Durch die Eingabe eines Bindestrichs
- auf die Abfrage nach der Bohrklasse werden diejenigen Bohrungen für die Ausgabe selektiert, die keiner speziellen Bohrklasse zugeordnet sind. Die erfolgreiche Ausgabe der Bohrdaten wird mit der Meldung
Bohrdaten geschrieben. quittiert.
Sieb & Meier
Mit den Funktionen
und
können Bohrdaten und Werkzeugtabellen im Format Sieb&Meier erzeugt werden.
Die Namen der Ausgabedateien für die Sieb&Meier-Bohrdatenausgabe können mit
bzw.
voreingestellt werden. Mit dem Parameter
kann die Toleranz angegeben werden, mit der bei der Auswahl von Bohrern vorgegangen werden soll. Der Defaultwert für die Bohrertoleranz beträgt 0.10mm.
Die erzeugte Werkzeugtabelle enthält eine Auflistung aller verwendeten Bohrer mit ihren zugeordneten Bohrernummern. Diese Tabelle kann bis zu 99 Einträge enthalten. Sollten mehr verschiedene Bohrer notwendig sein, bricht die Bohrdatenausgabe mit Meldung
Es sind zu viele Bohrdurchmesser definiert! ab.
Im Sieb&Meier-Format werden für jede Bohrung die Bohrkoordinaten in der Einheit 1/100mm in einer eigenen Zeile ausgegeben. Bei der ersten Verwendung eines neuen Bohrdurchmessers wird dessen Bohrernummer am Ende der Zeile angeführt.
Mit
wird die Ausgabe der Bohrdaten gestartet,
bewirkt die Ausgabe der Werkzeugtabellendatei. Vor dem Erstellen des Bohrbands erfolgt die Abfrage nach der Bohrungsklasse, über die die selektive Ausgabe durchkontaktierter, nicht durchkontaktierter, oder zu partiellen Durchkontaktierungen gehörender Bohrungen möglich ist.
Erstellen Sie mit den folgenden Kommandos die Bohrdaten für die auf dem Beispiellayout verwendete Bohrungsklasse
Z mit einer Bohrertoleranz von 0.05mm (Bohrdatendatei
demo.drl , Werkzeugtabellendatei
demo.tol ):
Bohr+Bestueckdaten | |
Werkzeugtoleranz | |
Bohrer Toleranzbereich ( 0.1mm) ? | 0.05 |
Bohrband erstellen | |
Neue Bohrungsklasse (-,A..Z) (-) ? | Z |
Bohrdatendatei Name ? | demo.drl |
Werkzeugtabelle erst. | |
Werkzeugtabellendatei Name ? | demo.tol |
Durch die Eingabe eines Bindestrichs
(- ) auf die Abfrage nach der Bohrklasse werden diejenigen Bohrungen für die Ausgabe selektiert, die keiner speziellen Bohrklasse zugeordnet sind. Die erfolgreiche Ausgabe der Bohrdaten wird mit der Meldung
Bohrdaten geschrieben. quittiert. Die Werkzeugtabelle
demo.tol sollte nach Ausführung obiger Kommandos folgenden Inhalt haben:
/* Bohrer(Nummer) Bohrdurchmesser(mm) */
1 0.50
2 0.80
3 0.90
4 1.00
5 1.30
6 3.00
Die Bohrdatendatei
demo.drl sollte wie folgt aussehen:
%
X1016Y762T6
X1016Y6350
M30
4.7.14 Bestückdaten
Die Bestückdaten werden mit Hilfe der auf einer Lage vorhandenen Texte generiert. Die Ausgabe besteht aus einer Liste der auf der für die Ausgabe selektierten Lage definierten Texte mit Koordinaten und Drehwinkel.
Um geeignete Ausgabedaten zu erhalten, ist es zweckmässig, eine eigene Dokumentarlage für die Bestückdaten zu verwenden. Auf dieser trägt man in den Bauteildefinitionen ein
$ -Zeichen für den Namen des Bauteils im Greifpunkt für den Bestückungsautomaten ein. Der Greifpunkt liegt im Ursprung des Koordinatenkreuzes, das beim Platzieren des Textes angezeigt wird.
Die Ausgabe der Bestückdaten erfolgt im Menü
mit der Funktion
. Nach Aufruf dieser Funktion erscheint ein Untermenü, in dem die Ausgabelage gewählt werden kann. Beachten Sie die Option
. Damit können die Bestückdaten mehrerer, selektierbarer Lagen simultan ausgegeben werden. Die Option
aktiviert ein Popupmenü, in dem die auszugebenden Bestücklagen mit der linken oder rechten Maustaste selektiert bzw. deselektiert werden können. Der
-Button im Lagenauswahlmenü dient dazu, alle sichtbaren Lagen für die Ausgabe zu selektieren. Nach der Selektion der Ausgabelage(n) erfolgt die Abfrage nach dem Bestückdatenkanal.
Geben Sie mit den folgenden Kommandos die Bestückdaten für die Lage 1 des Beispiellayouts in die Datei
demo.bd1 aus:
Bohr+Bestueckdaten | |
Bestueck. Ausgabe | |
Dokumentarlage | |
Bestueckungsplan | |
Seite 1 | |
Bestueckungsdatendatei Name ? | demo.bd1 |
Die erfolgreiche Ausgabe der Bestückdaten wird mit der Meldung
Bestueckungsdaten geschrieben.
angezeigt. Die Ausgabedatei sollte folgenden Inhalt haben:
/* Name X(mm) Y(mm) Winkel(Grad) */
C100 4635 3651 0
C101 3619 3651 0
R104 984 5016 270
4.8 CAM-View
Der Programmteil
CAM-View erfüllt drei Aufgabenstellungen. Dies ist zum ersten die visuelle Darstellung von Photoplotdaten im Gerberformat ("Gerber-Viewer"), von Bohrdaten im Sieb&Meier- bzw. Excellon-Format sowie von Fräsdaten im Excellon-Format. Des Weiteren können mehrere Gerber-, Bohr- und Fräsdatensätze mit verschiedenen Offsets bzw. Spiegelungsmodi eingelesen, selektiv verschoben und die gesamten so erhaltenen Daten in eine einzige Gerber-, Bohr- oder Fräsdatei geschrieben werden. Mit dieser Funktion können Nutzen, d.h. die Unterbringung mehrerer Layouts auf einem Film bzw. in einem Datensatz, generiert werden. Das dritte Aufgabengebiet von
CAM-View ist das Erzeugen von Layouts aus den Gerberdaten von Fremdsystemen. Dabei werden aus den Gerberdaten Kupfer- und Dokumentarflächen generiert, die mit dem
Bartels AutoEngineer weiterverarbeitet werden können.
4.8.1 Programmaufruf
Der Aufruf des
Bartels AutoEngineer sollte grundsätzlich aus dem Verzeichnis erfolgen, in welchem die zu bearbeitenden Projektdateien abgelegt bzw. abzulegen sind. Wechseln Sie also zunächst in Ihr Projektverzeichnis. Zur Abarbeitung der in diesem Handbuch aufgeführten Beispiele ist es zweckmäßig, in das bei der Installation des
Bartels AutoEngineer angelegte BAE-Jobs-Directory (d.h. in das Verzeichnis, in dem die Datei
demo.ddb abgelegt ist) zu wechseln. Der Aufruf des
CAM-View-Moduls erfolgt aus der Shell des
Bartels AutoEngineer. Starten Sie diese von Betriebssystemebene aus mit folgendem Befehl:
> bae
Wählen Sie den Menüpunkt
mit der Maus an, und bestätigen Sie Ihre Wahl durch Drücken der linken Maustaste:
CAM-View | |
Nun wird das
CAM-View-Modul des AutoEngineer geladen. Sollte der Programmaufruf fehlschlagen, dann deutet dies darauf hin, dass die Software nicht richtig installiert ist. Wir verweisen in diesem Zusammenhang auf die
Bartels AutoEngineer® Installationsanleitung.
4.8.2 Hauptmenü
In der Benutzeroberfläche des
CAM-View-Moduls werden neben bereits aus dem
Layouteditor bekannten Menüs (wie
bzw.
,
) Funktionen zum Laden und Schreiben von Gerber- und Bohrdaten angeboten. Nach dem Aufruf von
CAM-View befindet sich auf der rechten Bildschirmseite eine Menüleiste, bestehend aus dem Hauptmenü im oberen Bereich sowie dem im Hauptmenü selektierten Menü im unteren Bereich. Nach dem Laden von
CAM-View ist das Menü
aktiviert, und der grüne Menübalken steht auf
.
Unter Windows und Motif kann anstelle der Standard- bzw. Seitenmenükonfiguration wahlweise auch ein Benutzerinterface mit Pulldownmenüs aktiviert werden. Hierzu ist mit Hilfe des Utilityprogramms
bsetup das Kommando
WINMENUMODE mit der Option
PULLDOWN in das Setup der BAE-Software einzuspielen (siehe hierzu auch
Kapitel 7.2). Bei der Verwendung von Pulldownmenüs ist das Hauptmenü als horizontal ausgerichtete Menüleiste am oberen Ende der Benutzerschnittstelle angeordnet.
Das Hauptmenü ist während der Dauer der Arbeit mit dem
CAM-View ständig verfügbar und ermöglicht die Aktivierung der folgenden Menüs:
Ansicht, Bilddarstellung
Im Menü
, das Sie außer durch Selektion im Hauptmenü auch immer über die mittlere Maustaste erreichen können, können Sie Zoomfunktionen aktivieren, das Eingabe- und Hintergrundraster definieren oder die Farbtabelle, die Farbzuordnung, den Zeichenmodus und den Koordinatenanzeigemodus einstellen.
Dateiverwaltung
Das Menü
enthält Funktionen zum Laden, Bewegen und Schreiben von Gerber-, Bohr- und Fräsdatensätzen, zum Erzeugen von Layouts aus geladenen Gerberdaten, sowie zum Löschen der aktuell im Speicher befindlichen CAM-Daten.
Parameter
Das Menü
enthält Funktionen zum Setzen des Koordinatenversatzes und des Spiegelungsmodus für nachfolgende Einlesevorgänge, zur Festlegung des Via-D-Codes für die Erzeugung von Layouts aus Gerberdaten, zur Definition der Gerber-Blendentabelle, sowie zur Einstellung der Format- und Modusparameter für das Einlesen bzw. Schreiben von Gerberdaten.
Diverse
Im Menü
kann der Programmabbruch oder der Rücksprung in die Shell des
Bartels AutoEngineer veranlasst werden. Darüber hinaus enthält dieses Menü Funktionen zum Sortieren von Bohrungen, zur Anzeige einer Statistik über die in den aktuell geladenen Gerberdaten verwendeten Gerberblenden, sowie zur Anzeige von DDB-Dateiinhalten.
4.8.3 Modifizierte Benutzeroberfläche
Menübelegung und Tastaturprogrammierung
Einige der mit der BAE-Software installierten
User Language-Programme definieren implizite
User Language-Programmaufrufe über die eine weit reichend modifizierte Benutzeroberfläche mit einer Vielzahl von Zusatzfunktionen (Startups, Toolbars, Menübelegung, Tastaturprogrammierung) aktiviert wird. Das User Language-Startupprogramm
bae_st wird automatisch beim Aufruf des
CAM-View-Moduls gestartet.
bae_st ruft seinerseits das
User Language-Programm
uifsetup auf, welches eine vordefinierte Menü- und Tastaturbelegung im
CAM-View-Modul aktiviert. Änderungen bzw. Anpassungen der Menü- und Tastaturbelegung können zentral in der Quellcodedatei von
uifsetup vorgenommen werden. Die aktuelle Tastaturbelegung kann mit dem
User Language-Programm
hlpkeys angezeigt werden. Der Aufruf von
hlpkeys ist über die Funktion
aus dem Menü
möglich, sofern die vordefinierte Menübelegung aus
uifsetup aktiviert ist. Mit dem
User Language-Programm
uifdump kann die in der aktuellen Interpreterumgebung definierte Menü- und Tastaturbelegung in Form eines Reports angezeigt bzw. auf eine Datei ausgegeben werden. Mit dem
User Language-Programm
uifreset lässt sich die komplette Menü- und Tastaturbelegung zurücksetzen.
uifsetup,
uifdump und
uifreset sind auch über das Menü des
User Language-Programms
keyprog aufrufbar, welches zudem komfortable Funktionen zur Online-Tastaturprogrammierung sowie zur Verwaltung von Hilfstexten für
User Language-Programme zur Verfügung stellt.
Kaskadierende Pulldownmenüs unter Windows/Motif
Die Windows- und Motifversionen des
CAM-View-Moduls ermöglichen die Konfiguration kaskadierender Pulldownmenüs. Menüpunkte können ihrerseits implizit auf Untermenüs verweisen. Die Notwendigkeit des Aufrufs von Funktionen zur expliziten Anzeige von Untermenüs entfällt damit. Die Pulldownmenüs der Windows- und Motifversionen des
CAM-View-Moduls werden über das
User Language-Programm
uifsetup entsprechend mit kaskadierenden Menüs ausgestattet. Untermenüfunktionen lassen sich damit einfach lokalisieren und starten. Die über die rechte Maustaste implementierte Wiederholfunktion ist entsprechend angepasst. Die Wiederholung von in Untermenus untergebrachten Funktionen vereinfacht sich dadurch erheblich.
Dialoge für Parametereinstellungen unter Windows/Motif
In den Windows- und Motifversionen des
CAM-View-Moduls sind die folgenden Dialoge für Parametereinstellungen implementiert:
- - : Allgemeine CAM-View-Parameter
- - : Bilddarstellungsparameter
In den Pulldownmenükonfigurationen werden die Standardfunktionen für Parametereinstellungen über das
User Language-Programm
uifsetup durch die obigen Menüfunktionen zum Aufruf der entsprechenden Dialoge ersetzt.
Pulldownmenükonfiguration unter Windows/Motif
Bei der Verwendung von Pulldownmenüs unter Windows und Motif wird über das
User Language-Programm
uifsetup eine an Windows angepasste Menüanordnung mit zum Teil geänderten Funktionsbezeichnungen und einer Vielzahl von Zusatzfunktionen konfiguriert. Das Hauptmenü des
CAM-View-Moduls wird dabei wie folgt aufgebaut:
4.8.4 Grundsätzliches zur Bedienung
User Language
Im CAM-View-Modul ist der
Bartels User Language Interpreter integriert, d.h. von
CAM-View aus können
User Language-Programme gestartet werden. Der Anwender hat damit die Möglichkeit, eigene Zusatzfunktionen nach anwender- bzw. firmenspezifischen Bedürfnissen zu implementieren und in das
CAM-View-Modul einzubinden. Hierzu zählen zum Beispiel Statusanzeigen und Parametereinstellungen, Report- und Testfunktionen, firmenspezifische Batch-Prozeduren, usw. usf.
Im CAM-View-Modul können
User Language-Programme explizit oder implizit aufgerufen werden. Der explizite Programmaufruf erfolgt über den Menüpunkt
im Menü
. Nach der Aktivierung dieses Menüpunktes ist auf die Abfrage nach dem Programmnamen der Name des aufzurufenden
User Language-Programms (z.B.
ulprog ) explizit einzugeben. Die Betätigung einer beliebigen Maustaste oder die Eingabe eines Fragezeichens
? auf die Abfrage nach dem Programmnamen bewirkt hierbei die Aktivierung eines Popupmenüs mit allen aktuell verfügbaren
User Language-Programmen.
User Language-Programme können auch implizit über die Tastatur aktiviert werden. Diese Art des Programmaufrufs ist immer dann möglich, wenn nicht gerade eine andere interaktive Eingabe über Tastatur erwartet wird. Die Spezifikation des Programmnamens erfolgt dabei implizit durch Drücken einer Taste. Zulässige Tasten sind dabei die Standardtasten
(1,
2, ...,
0,
a,
b,
c, ...; entsprechende Programmnamen sind
cv_1,
cv_2, ...,
cv_0,
cv_a,
cv_b,
cv_c, ...) bzw. die Funktionstasten
(F1,
F2, ...; entsprechende Programmnamen sind dabei
cv_f1,
cv_f2, ...).
CAM-View ermöglicht darüber hinaus den ereignisgesteuerten Aufruf von
User Language-Programmen. Dabei lösen spezielle Ereignisse bzw. Operationen implizit, d.h. automatisch den Aufruf von
User Language-Programmen mit definierten Namen aus, sofern diese verfügbar sind. Im Einzelnen sind dies die
User Language-Programme
cv_st beim Starten des
CAM-View-Moduls,
cv_tool bei Selektion eines Toolbarelements sowie
cv_zoom bei Änderung des Zoomfaktors. Der Aufruf über die Startupsequenz der Interpreterumgebung eignet sich besonders zur automatischen Voreinstellung von modulspezifischen Parametern sowie zur Tastaturprogrammierung und Menübelegung. Bei Interaktionen in der Werkzeugliste werden die den selektierten Toolbarelementen zugewiesenen Funktionen ausgelöst. Die Änderung des Zoomfaktors kann dazu benutzt werden, Aktualisierungen in Funktionen zur Verwaltung von Entwurfsansichten auszulösen.
Mit der
Bartels User Language werden darüber hinaus mächtige Systemfunktionen zur Tastaturprogrammierung und Menübelegung sowie zur Definition von Werkzeugleisten (Toolbars) zur Verfügung gestellt. Beachten Sie bitte, dass über die mit der BAE-Software ausgelieferten
User Language-Programme eine Vielzahl von Zusatzfunktionen implementiert und transparent in die Benutzeroberfläche des
CAM-View-Moduls eingebunden sind.
Eine ausführliche Beschreibung der
Bartels User Language finden Sie im
Bartels User Language Programmierhandbuch (Kapitel 4.2 enthält eine Auflistung aller mit der BAE-Software ausgelieferten
User Language-Programme).
4.8.5 Bearbeiten von Gerberdaten
Allgemeine Parameter
Zur Festlegung von globalen Parametern für das Einlesen bzw. Schreiben von Datensätzen gibt es im Menü
die Funktionen
,
,
,
,
,
,
und
.
Der Einleseoffset wird beim Einlesen von CAM-Daten zu den gelesenen Koordinaten hinzuaddiert. Durch Angabe von verschiedenen Einleseoffsets kann man z.B. das gleiche Layout an verschiedene Positionen laden und dann als ganzes wieder abspeichern (Nutzengenerierung). Die Bohrdaten und Gerberdaten verschiedener Lagen können gleichzeitig im Speicher gehalten werden. Dadurch muss der Einleseoffset für jedes Nutzenelement nur einmal angegeben werden. Vor der Generierung von Nutzen können mit
im Menü
eventuell im Speicher vorhandene Datensätze gelöscht werden.
Mit
gibt man an, ob
(Voreinstellung; 1/1000 Inch),
(1/10000 Inch) oder ein
bei der Erzeugung der Gerberdaten verwendet wurde. Bei der Wahl von
ist die Länge einer Plottereinheit anzugeben. Damit lassen sich beliebige Gerberformate verarbeiten.
Mit
kann die Verarbeitung von Kreissegmenten gesteuert werden. Bei
(Defaulteinstellung) werden Kreisbögen ohne weitere Verarbeitung direkt eingelesen. Dies ist für die Ausgabedaten unseres
CAM-Prozessors und die meisten gängigen Fremdsysteme sinnvoll. Einige Fremdsysteme können maximal Viertelkreisbögen ausgeben und bilden dabei den Betrag des Mittelpunktsvektors. Für solche Fälle muss die Einstellung
gewählt werden.
Die Funktion
im Menü
ermöglicht die wahlweise Spiegelung der nachfolgend einzulesenden Datensätze. Mögliche Spiegelungsarten sind
(Voreinstellung),
,
und
. Beim Einlesen erfolgt die Spiegelung immer vor der Verschiebung um den Einleseoffset.
Die Funktion
aus dem Menü
dient der wahlweisen Berücksichtigung der Unterdrückung führender bzw. endender Nullen beim Einlesen von Gerberkoordinaten. Voreingestellt ist der Bearbeitungsmodus
zur Beibehaltung endender Nullen und Unterdrückung führender Nullen. Der Modus
zur Beibehaltung führender und Unterdrückung endender Nullen ist nur für die beiden Standardgerberformate 2.3 und 2.4 wirksam, d.h. bei Angabe anderer Konvertierungsfaktoren wird immer im Modus
gearbeitet.
Über die Funktion
kann wahlweise eine Fotoplotausgabe im Format RS-274-X (Extended Gerber with Embedded Apertures) erfolgen. Beim Einlesen von Gerberdaten wird das Format RS-274-X automatisch erkannt.
Mit der Funktion
kann wahlweise eine optimierte Gerberausgabe erzeugt werden. Dabei werden gleichbleibende Koordinatenkomponenten und die Wiederholung des Kommandos D01 ("Licht aus") bei längeren Linienzügen unterdrückt, wodurch sich eine signifikante Reduzierung der Plotdatenmengen ergibt. Beim Einlesen werden optimierte Gerberdaten automatisch erkannt.
Über die Funktion
kann angegeben werden, ob die aus Fremdsystemen einzulesenden Gerber- bzw. Excellonkoordinaten als Absolutkoordinaten (Defaultoption
) oder als relative bzw. inkrementale Koordinaten (Option
) zu interpretieren sind.
Blendentabellen
Für die Bilddarstellung wird die beim Plot verwendete Blendentabelle benötigt. Diese kann im
CAM-Prozessor erstellt und abgespeichert werden.
CAM-View lädt beim Start die Blendentabelle mit dem Namen
standard . Andere Blendentabellen können mit
im Menü
geladen werden. Das Laden von Blendentabellen kann auch erfolgen, nachdem Gerberdaten eingelesen wurden; in diesem Fall ändert sich die Bilddarstellung entsprechend den neuen Blendentabellenvorgaben. Einzelne Einträge der aktuell verwendeten Blendentabelle können mit der Funktion
im Menü
jederzeit geändert werden. Eine so geänderte Blendentabelle kann mit
im Menü
abgespeichert werden.
Tragen Sie unter D-Code 10 mit den folgenden Kommandos eine runde Line-Blende mit 0.3mm Durchmesser in den ersten Blendentabellenplatz ein:
Einstellungen | |
Blenden aendern | |
Gerber Blende Index (1..900,+,-) ? | 1 |
Blende (r)und/(q)uad./(t)herm./(s)pezial/(a)rea/(-) ? | r |
Blende Durchmesser/Kantenlaenge (0.127mm) ? | 0.3 |
Zeichenmodus (a)ll/(f)lash/(l)ine ? | l |
Gerber D-Code Nummer (10-999) ? | 10 |
Gerber Blende Index (1..900,+,-) ? | |
Einlesen von Gerberdaten
Das Einlesen der Daten erfolgt mit
im Menü
. Vor der Abfrage für den Dateinamen wird noch die Angabe einer Lage für liniengezogene Strukturen und anschließend die Angabe einer Lage für geblitzte Strukturen verlangt. Dies wird für das Einlesen von in Fremdsystemen erzeugten Gerberdateien benötigt, damit aus den verschiedenen Lagen zugeordneten Daten bzw. Strukturen später ein Layout erzeugt werden kann. Die Lageninformation wird auch bei der Generierung von Nutzen benötigt um die Daten der einzelnen Lagen in getrennte Datenfiles schreiben zu können.
Man kann die Lagenzuordnung auch dazu verwenden, um verschiedene Gerberdateien (desselben Layouts) miteinander zu vergleichen. Lädt man die erste Gerberdatei auf
und die zweite Gerberdatei auf
, so erscheinen durch die Mischfarbendarstellung (bei Farbzuordnung nach Lagen) die beiden Versionen gemeinsamen Strukturen in der aus den Farben für Lage 1 und 2 resultierenden Mischfarbe.
Stellen Sie mit den folgenden Kommandos Gerber 2.4 Format ein, und laden Sie die in
Kapitel 4.7.11 erzeugte Gerberdatei
demo_l2.ger in den Arbeitsspeicher (liniengezogene Strukturen auf Lage 2, geblitzte Strukturen auf Lage 2):
Einstellungen | |
Gerber Format | |
Gerber 2.4 Format | |
Datei | |
Gerberdaten laden | |
Lage 2 | |
Lage 2 | |
Gerber Datei Name ? | demo_l2.ger |
Wiederholen Sie obigen Ladevorgang mit einem Einlese-Offset von 3.2 Zoll in X-Richtung:
Einstellungen | |
Einleseoffset | |
X-Offset (0.000 mm) ? | 3.2" |
Y-Offset (0.000 mm) ? | 0 |
Datei | |
Gerberdaten laden | |
Lage 2 | |
Lage 2 | |
Gerber Datei Name ? | demo_l2.ger |
Ansicht, Bilddarstellung
Zur Bilddarstellung stehen im Menü
die schon vom
Layouteditor her bekannten Zoomfunktionen zur Auswahl des Bildausschnittes und des Hintergrundrasters zur Verfügung.
Für die Gerberdatendarstellung kann zwischen den beiden Modi
und
gewählt werden. Bei Randdarstellung wird zusätzlich zur Flächendarstellung um jedes Element eine Randlinie gezogen. Dies ist z.B. für die Betrachtung liniengefüllter Flächen nützlich.
Es stehen zwei Methoden zur Farbauswahl zur Verfügung. Bei der ersten wird die Farbe eines Elements durch den D-Code und den Zeichenmodus bestimmt. Bei der zweiten Methode werden die Elemente in der Farbe der Lage, auf die sie geladen wurden, dargestellt. Zwischen diesen beiden Methoden kann im Menüpunkt
mit
(Defaulteinstellung) und
ausgewählt werden.
Abhängig von der Farbzuordnung erscheint bei Aufruf des Menüpunktes
entweder die Aufforderung nach Eingabe eines D-Codes und eines Zeichenmodus oder ein Lagenauswahlmenü. Die verschiedenen Zeichenmodi sind
f (Flash) für geblitzte Strukturen,
l (Line) für liniengezogene Strukturen und
b (Border) für die Umrandung von Zeichenflächen. Die Defaulteinstellung der Farben für die D-Codes ist hellgrau für geblitzte Strukturen, mittelgrau für liniengezogene Strukturen und rot für die Umrandungslinien.
Stellen Sie mit den folgenden Kommandos die Farbe für die Elemente, die mit D-Code 10 (Line) generiert wurden, auf gelb ein:
Ansicht | |
Farbenzuordnung | |
D-Code Zuordnung | |
Farbpalette | |
Gerber D-Code Nummer (10-999) ? | 10 |
Modus (f)lash/(l)ine/(b)order ? | l |
Positionieren auf gewünschte Farbe,gelb | |
Wird die Farbe schwarz gewählt, so werden die entsprechenden Elemente nicht gezeichnet.
Report
Mit der Funktion
im Menü
kann eine Statistik über die verwendeten Blenden abgerufen werden. Angezeigt wird eine Liste der verwendeten D-Codes mit der jeweiligen Angabe, wie viele Strukturen in welchem Modus generiert wurden.
Rufen Sie die Funktion
auf:
Diverse | |
Report | |
Das System sollte nun im Grafikarbeitsbereich folgende Liste ausgeben:
D10 0.30 mm rund :
Linien : 58
D11 0.25 mm rund :
Linien : 454
D16 1.52 mm rund :
Geblitzt: 64
D18 2.54 mm rund :
Geblitzt: 16
Linien : 4
D29 1.40 mm quad :
Geblitzt: 20 ...
Vom Report ausgegebene Strukturen mit der Modus-Angabe
Linien mit Länge null sind Positionen, die zwar angefahren werden, aber bei denen keine Belichtung erfolgt.
Bewegen von Gerberdaten
Mit der Funktion
aus dem Menü
können zuvor eingelesene Gerberdatensätze nachträglich verschoben werden. Der gewünschte Datensatz wird in einem Popupmenü ausgewählt. Die Datensätze werden darin in der Einlesereihenfolge dargestellt. In jeweils einer Zeile pro Datensatz werden die Lagen, der Offset gegenüber den Ursprungsdaten, der Spiegelungsmodus und der Dateiname der Eingabedaten angezeigt. Nach Wahl des Datensatzes kann durch Selektion von Anfangs- und Endpunkt der Verschiebung ein Verschiebungsvektor angegeben werden. Das Eingaberaster bei der Verschiebung ist gleich dem Hintergrundraster der Bilddarstellung. Während der Verschiebung kann über die rechte Maustaste ein Menü zur Eingabe von absoluten und relativen Sprüngen aktiviert werden.
Schreiben von Gerberdaten
Die im Speicher befindlichen Gerberdaten einer Lage können mit
unter Angabe eines Dateinamens abgespeichert werden.
Geben Sie mit folgenden Kommandos die aktuell auf Signallage 2 geladenen Gerberdaten im Gerber 2.3 Format auf die Datei
demo_l2.g25 aus:
Einstellungen | |
Gerber Format | |
Gerber 2.3 Format | |
Datei | |
Gerberdaten Ausg. | |
Lage 2 | |
Gerber Datei Name ? | demo_l2.g25 |
Nun können die im Speicher befindlichen Daten mit
wieder entladen werden, um neue Daten zu lesen:
Datei | |
Loeschen Speicher | |
4.8.6 Bearbeiten von Bohr- und Fräsdaten
Einlesen von Bohr- bzw. Fräsdaten
Das Einlesen von Bohr- bzw. Fräsdaten erfolgt mit der Funktion
aus dem Menü
. Vor dem Laden von Bohrdaten im Format Sieb&Meier muss auf jeden Fall erst eine Werkzeugtabelle geladen werden. Dies geschieht mit der Funktion
aus dem Menü
. Werden mehrere Datensätze hintereinander geladen, so ist zu beachten, dass die Werkzeugtabellen übereinstimmen, da sonst beim Schreiben keine brauchbaren Ausgabedaten erzeugt werden können. Weiterhin ist zu beachten, dass die Funktion
alle zuvor geladenen Bohr- bzw. Fräsdaten aus dem Hauptspeicher löscht.
Beim Einlesen und Abspeichern von Bohrdaten kann zwischen den Formaten Sieb&Meier und Excellon gewählt werden. Die Koordinateneinheiten sowie die Behandlung führender und endender Nullen werden aus der Eingabedatei abgeleitet. Sind in der Eingabedatei keine Formatbefehle vorhanden, so werden die Einstellungen der Gerbereingabe übernommen. Bei Spezifikation von Inch-Einheiten in Excellon-Eingabedatensätzen werden die Koordinatenangaben automatisch entsprechend der aktuellen Gerber-Formatspezifikation (Gerber Format 2.3, Gerber Format 2.4, etc.) interpretiert.
Beim Einlesen von Daten im Excellon-Format werden Fräsdaten automatisch als solche erkannt und verarbeitet. Beim Schreiben von Bohrdaten im Excellon-Format muss angegeben werden, ob Fräs- oder Bohrdatenausgabe erwünscht ist (es könnten innerhalb einer Bohrklasse sowohl Fräs- als auch Bohrdaten vorhanden sein).
Die Bohr- und Fräsdatensätze werden mit Angabe der Bohrklasse geladen und gespeichert. Dadurch ist es möglich, verschiedene Bohr- bzw. Fräsdatensätze mit unterschiedlichen Bohrklassen zu laden und wieder nach Bohrklassen getrennt zu speichern. Bohrungen bzw. Fräsereinstechpunkte, die nicht der Bohrklasse
- angehören, werden bei der Bilddarstellung mit dem entsprechenden Buchstaben für die Bohrklasse
(A ,
B , ...,
Z ) angezeigt.
Beim Laden von Bohrdaten in das
CAM-View-Modul wird automatisch der Farbtabelleneintrag für Bohrungen aktiviert. Ist keine Farbe für Bohrungen definiert, so wird automatisch ein weisser Farbtabelleneintrag gesetzt. Damit wird sichergestellt, dass neu geladene Bohrdatensätze in jedem Fall visualisiert werden, und der Erfolg des Ladevorgangs somit unmittelbar kontrolliert werden kann.
Laden Sie mit den folgenden Kommandos die in
Kapitel 4.7.12 im Format Sieb&Meier erzeugte Bohrdatendatei
demo.drl mit zugehöriger Werkzeugtabelle
demo.tol unter der Bohrklasse
- in den Arbeitsspeicher:
Datei | |
Werkzeugtab. laden | |
Werkzeugtabelle Datei Name ? | demo.tol |
Bohrdaten laden | |
Bohrdaten Datei Name ? | demo.drl |
Neue Bohrklasse (-,A..Z) (-) ? | - |
Sieb & Meier | |
Ansicht, Bilddarstellung
Zur Bilddarstellung stehen im Menü
die schon vom
Layouteditor her bekannten Zoomfunktionen zur Auswahl des Bildausschnittes und des Hintergrundrasters zur Verfügung.
Die Anzeige der aktuell geladenen Bohr- bzw. Fräsdaten erfolgt über die Selektion einer Farbe mit dem Eintrag
aus dem Menü
bei Einstellung der Farbzuordnung auf
. Selektieren Sie mit den folgenden Kommandos die Farbe weiß für die Darstellung der Bohr- und Fräsdaten:
Ansicht | |
Farbenzuordnung | |
Lagenzuordnung | |
Farbpalette | |
Bohrungen | |
Positionieren auf gewünschte Farbe,weiß | |
Ende | |
Bewegen von Bohr- bzw. Fräsdaten
Mit der Funktion
aus dem Menü
können zuvor eingelesene Bohr- bzw. Fräsdatensätze nachträglich verschoben werden. Der gewünschte Datensatz wird in einem Popupmenü ausgewählt. Die Datensätze werden darin in der Einlesereihenfolge dargestellt. In jeweils einer Zeile pro Datensatz werden die Lagen, der Offset gegenüber den Ursprungsdaten, der Spiegelungsmodus und der Dateiname der Eingabedaten angezeigt. Nach Wahl des Datensatzes kann durch Selektion von Anfangs- und Endpunkt der Verschiebung ein Verschiebungsvektor angegeben werden. Das Eingaberaster bei der Verschiebung ist gleich dem Hintergrundraster der Bilddarstellung. Während der Verschiebung kann über die rechte Maustaste ein Menü zur Eingabe von absoluten und relativen Sprüngen aktiviert werden.
Schreiben von Bohr- bzw. Fräsdaten
Die im Speicher befindlichen Bohr- bzw. Fräsdaten können mit
im Menü
in eine Datei geschrieben werden.
Geben Sie die aktuell geladenen Bohrdaten mit den folgenden Kommandos im Excellon-Format auf die Datei
demo.exc aus:
Datei | |
Bohrdaten Ausgabe | |
Bohrdaten Datei Name ? | demo.exc |
Neue Bohrklasse (-,A..Z) (-) ? | - |
Excellon | |
Bohrdaten | |
Sortieren von Bohrdaten
Im Menü
steht unter dem Menüpunkt
ein einfacher Algorithmus zur Sortierung der im Speicher befindlichen Bohrungen zur Verfügung. Dabei wird innerhalb jedes einzelnen der aktuell geladenen Bohrdatensätze gesondert sortiert. Wird die Sortierung über mehrere Bohrdatensätze gewünscht, so sind diese zunächst einzulesen und dann als ein Datensatz abzuspeichern. Nach
und Einlesen des neuen Datensatzes können die Bohrungen in ihrer Gesamtheit sortiert werden. Weiterhin ist anzumerken, dass der Rechenzeitaufwand quadratisch mit der Anzahl der Bohrungen pro Bohrwerkzeug wächst, was bei sehr großen Layouts (Anzahl Bohrungen >1000) zu erheblichen Rechenzeiten führen kann.
Sortieren Sie nun die im Speicher befindlichen Bohrdaten und schreiben Sie sie in die Datei
demosort.drl :
Diverse | |
Bohrungen sortieren | |
Datei | |
Bohrdaten Ausgabe | |
Bohrdaten Datei Name ? | demosort.drl |
4.8.7 Erzeugen von Layouts aus Gerberdaten
Laden von Gerberdaten
Zum Erzeugen von Layouts müssen zunächst die Gerberdaten der einzelnen Lagen eingelesen werden. Dabei gibt man zweckmäßigerweise für die liniengezogenen Strukturen die entsprechende Signallage an. Die geblitzten Strukturen stellen meist Pads dar und sollten daher als Platzierungshilfe z.B. auf die Dokumentarlage für den Bestückungsplan gelegt werden. Eine noch bessere Platzierungshilfe stellen natürlich im Gerberformat erstellte Bestückungspläne dar, die ebenfalls auf die entsprechende Dokumentarlage geladen werden können.
Layout erzeugen
Sind alle Gerberdaten in den Speicher geladen, so kann mit
die Ausgabe des Layouts gestartet werden. Vor der Angabe des Datei- und Elementnamens, in dem das Layout abzulegen ist, muss der Benutzer noch einen D-Code für Vias spezifizieren. Mit diesem D-Code geblitzte Strukturen werden bei der Ausgabe in Vias umgesetzt. Da Vias auf allen Lagen vorhanden sind, werden diese nur für das erste eingelesene Datenfile generiert. Mit dem Via-D-Code geblitzte Strukturen aus den nachfolgend eingelesenen Datenfiles werden bei der Ausgabe ignoriert.
Für das Via wird in der Layoutdatei automatisch ein entsprechender Padstack mit einem Pad der Blendengröße auf allen Lagen und einer Bohrung mit halber Blendengröße generiert.
Weitere Bearbeitung des Layouts
Bei der Bearbeitung des erzeugten Layouts ist es wichtig, die nachfolgend aufgeführte Bearbeitungsreihenfolge unbedingt einzuhalten, um brauchbare Daten zu erhalten.
Das erzeugte Layout wird zunächst in den
Layouteditor geladen. Danach platziert man mit
(Menü
) nacheinander die Bauteile auf dem Layout. Nach Platzierung aller Bauteile ist das Layout abzuspeichern. Dann wird mit der Funktion
(Menü
) eine Netzliste mit dem gleichen Namen wie der Layoutplan erzeugt.
generiert aus dem auf der Leiterkarte befindlichen Kupfer eine Netzliste, die direkt in der angegebenen DDB-Datei (nicht jedoch im Arbeitsspeicher) abgelegt wird. Danach sollte das Layout gleich wieder neu geladen werden. Auf keinen Fall dürfen Aktionen durchgeführt werden, die zu einem Abspeichern des aktuell geladenen Layouts führen können, da dadurch wieder eine leere Netzliste in die Datei geschrieben wird. Unmittelbar nach dem Laden des Layouts führt das System automatische eine Connectivity-Generierung durch, und anschließend kann das Layout weiter bearbeitet werden.
Leiterkartenentwurf / CAD © 1985-2024 Oliver Bartels F+E • Aktualisiert: 05. March 2007, 17:39 [UTC]
|