-
Die
vorliegende Erfindung bezieht sich allgemein auf Graphikanzeigen
in einer graphischen Benutzerschnittstelle, und spezieller bezieht
sie sich auf Systeme und Verfahren zum Verknüpfen einer Graphikanzeige und
einer n-dimensionalen
Datenstruktur in einer graphischen Benutzerschnittstelle.
-
Derzeit
wird eine Vielzahl von Systemen und/oder Prozessen zum Prüfen von
Herstellungsdefekten bei gedruckten Schaltungsplatinen verwendet. Üblicherweise
umfassen gedruckte Schaltungsplatinen eine oder mehrere elektrische
Komponenten (z.B. Computerchips, Kondensatoren usw.), die an einer
integrierten Schaltung (IC – integrated
circuit) angelötet
sind. Viele Jahre lang umfaßte
der De-facto-Prozeß für eine Produktion
von Anordnungen aus gedruckten Schaltungsplatinen eine manuelle
visuelle Prüfung
(MVI – manual
visual inspection) nach einem Löten,
gefolgt von einem elektrischen Test, beispielsweise einem Testen
innerhalb der Schaltung (ICT – in-circuit
testing), am Ende des Montageprozesses bzw. des Prozesses des Zusammenbauens, um
etwaige Defekte, die während
des Herstellens auftraten, zu isolieren. In der Regel wurde ein
abschließender
Funktionstest durchgeführt,
um zu verifizieren, daß die
gedruckte Schaltungsplatine ordnungsgemäß arbeitete, bevor sie in ein
Endprodukt integriert wurde.
-
Als
der Bedarf an komplexeren gedruckten Schaltungsplatinen, die mehr
Komponenten aufweisen, stieg, wurden automatisierte Prüfsysteme
populär.
Solche Prüfsysteme
weisen in der Regel ein Modelliersystem, ein Abbildungssystem und
ein Steuersystem für
gedruckte Schaltungsplatinen auf. In der Regel wird das Modelliersystem
verwendet, um ein Computermodell einer gedruckten Schaltungsplatine,
die in einer Massenproduktion hergestellt werden soll, zu erstellen.
Das Abbildungssystem weist eine Hardware und/oder Software zum Aufnehmen
eines Bildes der hergestellten gedruckten Schaltungsplatine auf.
Derzeit verwenden Bildsysteme eine Vielzahl von Abbildungstechniken
(z.B. Röntgenbild,
optisches Bild, Ultraschallbild, thermisches Bild usw.). Das Steuersystem
empfängt
in der Regel eine Datei, die ein Computermodell der bestimmten gedruckten Schaltungsplatine
enthält,
von dem Modelliersystem. Auf der Basis des Computermodells kann
das Steuersystem ein Prüfprogramm
erstellen, das durch das Abbildungssystem implementiert werden soll.
Das Prüfprogramm
kann verwendet werden, um eine hergestellte gedruckte Schaltungsplatine
abzubilden, die auf dem durch das Modelliersystem erstellten Computermodell
basiert. Nachdem das Abbildungssystem die Bilder der hergestellten
gedruckten Schaltungsplatine erstellt, können die Bilder mit dem Computermodell
verglichen werden, um eine Prüfung
auf eine Vielzahl von Herstellungsdefekten hin durchzuführen (z.B.
offene Lötverbindungen,
Kurzschlüsse,
fehlende Komponenten, fehlausgerichtete Komponenten, unzureichende
Lötverbindungen, überschüssige Lötverbindungen,
umgekehrte Kondensatoren (Sperrkapazitäten), Lötkugeln, Lötleerräume usw.).
-
In
derzeitigen PCB-Prüfsystemen
(PCB = printed circuit board = gedruckte Schaltungsplatine) implementierte
Steuersysteme verwenden in der Regel eine graphische Benutzerschnittstelle,
um ein Erstellen des Prüfprogramms,
das durch das Abbildungssystem implementiert werden soll, zu unterstützen, und
um eine schnittstellenmäßige Verbindung
mit dem PCB-Modelliersystem herzustellen. Die graphische Benutzerschnittstelle
umfaßt
in der Regel einen Abschnitt zum Bereitstellen einer Graphikanzeige,
die ein oder mehrere Bildobjekte aufweist, die beispielsweise das
Modell der gedruckten Schaltungsplatine aufweisen können. Die
graphische Benutzerschnittstelle und ein Computerprogramm, das dem
die graphische Benutzerschnittstelle unterstützenden Steuersystem zugeordnet
ist, können
ferner konfiguriert sein, um einen Benutzer zu befähigen, verschiedene
Bildobjekte in der Graphikanzeige auszuwählen. Beispielsweise können bei
der Graphikanzeige eines Modells einer gedruckten Schaltungsplatine
das eine oder die mehreren Bildobjekte eine bestimmte Komponente
auf der PCB, einen Anschlußstift
an einer bestimmten Komponente usw. aufweisen.
-
Aus
mehreren Gründen
kann es vorteilhaft sein, Informationen, die den ausgewählten Bildobjekten
in der Graphikanzeige zugeordnet sind, innerhalb der graphischen
Benutzerschnittstelle auf eine handhabbare und benutzerfreundliche
Weise zu organisieren. Existierende Systeme stellen jedoch kein
Mittel bereit, dies zu tun. Somit besteht in der Branche ein Bedarf
an Systemen und Verfahren zum Verknüpfen einer Graphikanzeige und
einer n-dimensionalen Datenstruktur in einer graphischen Benutzerschnittstelle.
-
Die
US 6,144,962 A befaßt sich
mit einer Sichtbarmachung von hierarchischen Datenstrukturen innerhalb
von Datennetzen und insbesondere innerhalb des World Wide Web. Hierbei
werden die hierarchischen Strukturen zwischen übergeordneten Objekten (Eltern)
und untergeordneten Objekten (Kindern) graphisch dargestellt, indem
entsprechende Symbole für
die Datenstrukturen auf dem Bildschirm wiedergegeben werden. Mit
der Überprüfung gedruckter
Schaltungsplatinen befaßt
sich diese Schrift nicht.
-
Aus
der
EP 0 050 292 A1 ist
ein Prüfverfahren
zum Prüfen
von gedruckten Schaltungsplatinen bekannt, bei dem mittels einer
Datenverarbeitungsanlage eine Schaltungsplatine automatisch überprüft wird,
die an eine Teststation angeschlossen ist. Die Teststation wird
von der Datenverarbeitungsanlage angesteuert, um ein bestimmtes
Prüfprogramm
abzuarbeiten, bei dem der Reihenfolge nach bestimmte Testsignale
der Schaltungsplatine zugeführt
werden. Eine Bildschirmanzeige zeigt für jedes Testsignal zellenweise
die Prüferergebnisse in
Form einer Tabelle. Hier geht es jedoch weder um die Abarbeitung
eines Computermodells einer zu überprüfenden gedruckten
Schaltungsplatine noch um eine graphische Anzeige des Computermodells
noch um eine Zuordnung von Datenstrukturen zu einer graphischen
Anzeige des Computermodells der gedruckten Schaltungsanordnung,
sondern lediglich um das zeilenweise Abarbeiten von Testbefehlen,
die tabellenartig zusammen mit ihren Ergebnissen wiedergegeben werden.
-
Aus
der
US 5,911,533 A ist
ein System zum logischen Simulieren einer mit einer zentralen Verarbeitungseinheit
versehenen Schaltung bekannt. Die simulierte Schaltung dient zum Überprüfen von
bei der Entwicklung der zentralen Verarbeitungseinheit eingesetzten
Emulationsschaltungen unter Verwendung eines Modells für die Emulationsschaltung. Falls
bei der Abarbeitung eines Programms unter Verwendung der logischen
Simulation ein Fehler entdeckt wird, werden die entsprechenden Simulationsschritte
aus dem Prüfprogramm
fortgelassen. Dieses System hat also nichts mit einem Verfahren
zum Überprüfen von
gedruckten Schaltungsplatinen nach Herstellungsdefekten zu tun.
Bei dem System kommt auch kein Computermodell einer gedruckten Schaltungsplatine
zum Einsatz. Hier werden auch keine n-dimensionalen Datenstrukturen
einem graphischen Computermodell einer gedruckten Schaltungsplatine zugeordnet.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein Verfahren, ein System
und ein Computerprogramm zum Steuern der Prüfung einer gedruckten Schaltungsplatine
in Bezug auf Herstellungsdefekte zu schaffen, mit denen eine erleichterte
Prüfung der
gedruckten Schaltungsplatine auf Herstellungsdefekte ermöglicht wird.
Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1, ein System gemäß Anspruch
10 und ein Computerprogramm gemäß Anspruch
19 gelöst.
-
Die
vorliegende Erfindung schafft Systeme und Verfahren zum Verknüpfen einer
Graphikanzeige und einer n-dimensionalen Datenstruktur in einer graphischen
Benutzerschnittstelle.
-
Ein
Ausführungsbeispiel
der vorliegenden Erfindung ist ein Verfahren zum Verknüpfen einer Graphikanzeige
und einer n-dimensionalen
Datenstruktur in einer graphischen Benutzer schnittstelle, wobei
die graphische Benutzerschnittstelle einen ersten Abschnitt zum
Bereitstellen einer Graphikanzeige, die ein oder mehrere Bildobjekte
aufweist, und einen zweiten Abschnitt zum Bereitstellen einer n-dimensionalen
Datenstruktur, die der Graphikanzeige zugeordnet ist, aufweist;
Empfangen einer Benutzerauswahl eines der Bildobjekte in dem ersten
Abschnitt der graphischen Benutzerschnittstelle; und Besetzen der
n-dimensionalen Datenstruktur auf der Basis der Auswahl des Bildobjekts.
-
Ein
weiteres Ausführungsbeispiel
der vorliegenden Erfindung ist ein in einem computerlesbaren Medium
verkörpertes
Computerprogramm zum Verknüpfen
einer Graphikanzeige und einer n-dimensionalen Datenstruktur in
einer durch eine Computeranwendung unterstützten graphischen Benutzerschnittstelle.
Kurz beschrieben weist ein solches Computerprogramm eine Logik auf,
die konfiguriert ist, um: eine graphische Benutzerschnittstelle
bereitzustellen, wobei die graphische Benutzerschnittstelle einen ersten
Abschnitt zum Bereitstellen einer Graphikanzeige, die ein oder mehrere
Bildobjekte aufweist, und einen zweiten Abschnitt zum Bereitstellen
einer n-dimensionalen Datenstruktur, die der Graphikanzeige zugeordnet
ist, aufweist; eine Benutzerauswahl eines der Bildobjekte in dem
ersten Abschnitt der graphischen Benutzerschnittstelle zu empfangen;
und die n-dimensionale Datenstruktur auf der Basis der Auswahl des
Bildobjekts zu besetzen.
-
Ein
weiteres Ausführungsbeispiel
der vorliegenden Erfindung ist ein System zum Verknüpfen einer
Graphikanzeige und einer n-dimensionalen Datenstruktur in einer
durch eine Computeranwendung unterstützten graphischen Benutzerschnittstelle. Kurz
beschrieben weist ein solches System eine Logik, eine Verarbeitungsvorrichtung,
die konfiguriert ist, um die Logik zu implementieren, und eine Anzeigevorrichtung,
die konfiguriert ist, um die graphische Benutzerschnittstelle zu
unterstützen,
auf. Die Logik ist konfiguriert, um: eine graphische Benutzerschnittstelle
bereitzu stellen, wobei die graphische Benutzerschnittstelle einen
ersten Abschnitt zum Bereitstellen einer Graphikanzeige, die ein
oder mehrere Bildobjekte aufweist, und einen zweiten Abschnitt zum
Bereitstellen einer n-dimensionalen Datenstruktur, die der Graphikanzeige
zugeordnet ist, aufweist; eine Benutzerauswahl eines der Bildobjekte
in dem ersten Abschnitt der graphischen Benutzerschnittstelle zu
empfangen; und die n-dimensionale Datenstruktur auf der Basis der
Auswahl des Bildobjekts zu besetzen.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert,
wobei die Komponenten in den Zeichnungen nicht unbedingt maßstabsgetreu
sind und das Hauptaugenmerk statt dessen auf einer deutlichen Veranschaulichung
der Prinzipien der vorliegenden Erfindung liegt. Ferner bezeichnen
in den Zeichnungen gleiche Bezugszeichen entsprechende Teile in
allen Ansichten. Es zeigen:
-
1 ein
Blockdiagramm eines Ausführungsbeispiels
eines Systems, in dem ein Graphikanzeige/Datenstruktur-Verknüpfungssystem
der vorliegenden Erfindung implementiert sein kann;
-
2 eine
Bildschirmaufnahme eines Ausführungsbeispiels
einer durch das Graphikanzeige/Datenstruktur-Verknüpfungssystem
der 1 erstellten graphischen Benutzerschnittstelle;
-
3 ein
Flußdiagramm,
das die Architektur, den Betrieb und/oder die Funktionalität des Graphikanzeige/Datenstruktur-Verknüpfungssystems der 1 und 2 veranschaulicht;
-
4 die
Bildschirmaufnahme der 2, bei der die Datenstruktur
als Antwort auf die Auswahl eines Bildobjekts in dem Graphikanzeigeabschnitt besetzt
worden ist;
-
5 die
Bildschirmaufnahme der 2, bei der die Datenstruktur
als Antwort auf die Auswahl eines weiteren Bildobjekts in dem Graphikanzeigeabschnitt
besetzt worden ist;
-
6 ein
Blockdiagramm eines weiteren Ausführungsbeispiels eines Systems,
bei dem das Graphikanzeige/Datenstruktur-Verknüpfungssystem der vorliegenden
Erfindung implementiert sein kann;
-
7 ein
Blockdiagramm, das eine gedruckte Schaltungsplatine, die durch das
System der 6 geprüft werden kann, veranschaulicht;
-
8 ein
Blockdiagramm, das eine gedruckte Schaltungsplatine, die durch das
System der 6 geprüft werden kann und welche einen
Herstellungsdefekt aufweist, veranschaulicht; und
-
9 eine
Bildschirmaufnahme eines weiteren Ausführungsbeispiels einer durch
das Graphikanzeige/Datenstruktur-Verknüpfungssystem der 1 und 3 erstellten
graphischen Benutzerschnittstelle, die in dem Röntgenstrahlen-Prüfsteuersystem
der 8 implementiert sein kann.
-
1 ist
ein Blockdiagramm eines Systems 100, bei dem ein Ausführungsbeispiel
eines Graphikanzeige/Datenstruktur-Verknüpfungssystems 110 der
vorliegenden Erfindung implementiert sein kann. Allgemein unterstützt das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 eine
für eine
Interaktion mit einem Benutzer konfigurierte graphische Benutzerschnittstelle.
Wie in 2 veranschaulicht ist, stellt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 eine
graphische Benutzerschnittstelle bereit, die einen ersten Abschnitt 202 zum
Bereitstellen einer Graphikanzeige eines oder mehrerer Bildobjekte 208,
das bzw. die bei spielsweise ein Modell einer gedruckten Schaltungsplatine
aufweisen kann bzw. können,
aufweist. Beispielsweise kann bzw. können das eine oder die mehreren
Bildobjekte 208 in der Graphikanzeige eines Modells einer
gedruckten Schaltungsplatine eine bestimmte Komponente auf der gedruckten
Schaltungsplatine, einen Anschlußstift auf einer bestimmten
Komponente, eine Lötverbindung
usw. aufweisen. Das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 stellt ferner
einen zweiten Abschnitt 204 zum Bereitstellen einer der
Graphikanzeige zugeordneten Datenstruktur bereit. Fachleute werden
erkennen, daß die
Datenstruktur eine beliebige Anzahl von Abmessungen aufweisen kann
und daher allgemein als n-dimensionale Datenstruktur bezeichnet
wird. Wie in 2 veranschaulicht ist, kann
die Datenstruktur Datenfelder für
eine oder mehrere Variablen aufweisen. Bei einem Ausführungsbeispiel
weist die Datenstruktur somit eine Datentabelle auf, die eine oder
mehrere Reihen von Datenfeldern für eine oder mehrere Variablen
aufweist. Bei alternativen Ausführungsbeispielen kann
die Datenstruktur eine Liste, ein Array, eine Aufzeichnung, eine
Datei oder ein beliebiges anderes Schema zum Organisieren verwandter
Informationsposten, die sich auf die Bildobjekte in der Graphikanzeige
beziehen, aufweisen. Die graphische Benutzerschnittstelle kann ferner
einen Cursor 206 aufweisen, mittels dessen ein Benutzer
mit dem Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 in Wechselwirkung
treten kann, indem er beispielsweise den Cursor 206 bewegt
und die Bildobjekte 208 in der Graphikanzeige 202 auswählt.
-
Die
graphische Benutzerschnittstelle kann zusätzliche Abschnitte zum Bereitstellen
einer Anzahl weiterer Anwendungsdienste aufweisen. Wie in 2 veranschaulicht
ist, kann die graphische Benutzerschnittstelle ferner eine Toolleiste
aufweisen, die eine Anzahl von Abkürzungen (Shortcuts) zum Implementieren üblicher
Befehle sowie Pull-down-Menüs zum Implementieren
von Funktionen, die unter Kategorien wie beispielsweise „Datei", „Bearbeiten", „Ansicht", „Einfügen", „Format", „Tools" usw. angeordnet
sind, enthält.
-
Wie
unten ausführlicher
beschrieben wird, liefert das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 eine
Verknüpfung
zwischen den Bildobjekten 208 in der Graphikanzeige und
der n-dimensionalen Datenstruktur. Allgemein befähigt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 einen
Benutzer, Bildobjekte 208 in der Graphikanzeige auszuwählen. Auf
der Basis der Auswahl von Bildobjekten 208 in der Graphikanzeige
besetzt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 die
n-dimensionale Datenstruktur automatisch mit entsprechenden Daten,
die dem ausgewählten
Bildobjekt 208 zugeordnet sind.
-
Das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 kann
in Software, Firmware, Hardware oder einer Kombination aus denselben
implementiert sein. Bei dem in 1 veranschaulichten Ausführungsbeispiel
ist das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 in
Software implementiert, als ein ausführbares Programm, das durch eine
Verarbeitungsvorrichtung 102 ausgeführt wird. In bezug auf eine
Hardware-Architektur weist das System 100 eine Verarbeitungsvorrichtung 102,
einen Speicher 104, eine oder mehrere Netzschnittstellenvorrichtungen 112 und
eine oder mehrere Eingabe- und/oder Ausgabevorrichtungen (I-/O-Vorrichtungen) 114,
die über
eine lokale Schnittstelle 120 miteinander verbunden sind,
auf, wie in 1 gezeigt ist. Das System 100 kann
ferner zusätzliche Komponenten
aufweisen, die nicht in 2 veranschaulicht sind.
-
Unter
erneuter Bezugnahme auf 1 werden nun die verschiedenen
Komponenten des Systems 100 beschrieben. Die lokale Schnittstelle 120 kann
beispielsweise ein oder mehrere Busse oder andere verdrahtete oder
drahtlose Verbindungen sein, ist jedoch nicht hierauf beschränkt. Die
lokale Schnittstelle 120 kann zusätzliche Elemente aufweisen,
die der Einfachheit halber weggelassen sind, beispielsweise Steuerungen,
Puffer (Caches), Treiber, Repeater und Empfangsgeräte, um Kommunikationen
zu ermöglichen.
Ferner kann die lokale Schnittstelle 120 Adreß-, Steuer-
und/oder Datenverbindungen umfassen, um unter den zuvor erwähnten Komponenten
entsprechende/geeignete Kommunikationen zu ermöglichen.
-
Die
Verarbeitungsvorrichtung 102 ist eine Hardware-Vorrichtung zum Ausführen einer
Software, insbesondere der in dem Speicher 104 gespeicherten.
Die Verarbeitungsvorrichtung 102 kann ein beliebiger kundenspezifischer
oder im Handel erhältlicher
Prozessor, eine Zentralverarbeitungseinheit (CPU – central
processing unit), ein Hilfsprozessor unter mehreren dem System 100 zugeordneten
Prozessoren, ein halbleiterbasierter Mikroprozessor (in Form eines
Mikrochips oder Chipsatzes), ein Makroprozessor oder allgemein eine
beliebige Vorrichtung zum Ausführen
von Software-Anweisungen
sein.
-
Wie
in 1 veranschaulicht ist, kann der Speicher 104 ein
Betriebssystem 106, eine oder mehrere Anwendungen 108 und
ein Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 aufweisen.
Die Architektur, der Betrieb und/oder die Funktionalität des Graphikanzeige/Datenstruktur-Verknüpfungssystems 110 wird
nachfolgend ausführlich
beschrieben. Der Speicher 104 kann ein beliebiges oder
eine Kombination flüchtiger
Speicherelemente (z.B. Direktzugriffsspeicher (RAM, beispielsweise DRAM,
SRAM, SDRAM usw.)) und nichtflüchtiger Speicherelemente
(z.B. ROM, Festplattenlaufwerk, Band, CDROM usw.) umfassen. Der
Speicher 104 kann elektronische, magnetische, optische
und/oder andere Arten von Speichermedien beinhalten. Überdies
kann der Speicher 104 eine verteilte Architektur aufweisen,
bei der verschiedene Komponenten entfernt voneinander angeordnet
sind, aber für
die Verarbeitungsvorrichtung 102 zugänglich sind.
-
Die
Software in dem Speicher 104 kann eines oder mehrere separate
Programme umfassen, von denen jedes ausführbare Anweisungen zum Implementieren
logischer Funktionen aufweist. Bei dem Beispiel der 1 umfaßt die Software
im Speicher 104 das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 gemäß der vorliegenden
Erfindung. Der Speicher 104 kann ferner ein geeignetes
Betriebssystem 106 aufweisen, das die Ausführung anderer
Computerprogramme steuert, beispielsweise einer oder mehrerer Anwendungen 108 und
des Graphikanzeige/Datenstruktur-Verknüpfungssystems 110,
und liefert eine Terminplanung, eine Eingabe-/Ausgabesteuerung, eine Datei- und Datenverwaltung,
eine Speicherverwaltung, eine Kommunikationssteuerung und verwandte
Dienste.
-
Das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 kann
ein Quellenprogramm, ausführbares
Programm (Objektcode), Skript oder eine beliebige andere Entität sein,
die einen Satz von durchzuführenden
Anweisungen aufweist. Wenn es als ein Quellenprogramm implementiert
ist, muß das Programm über einen
Compiler, Assembler, Interpretierer oder dergleichen übersetzt
werden, der in dem Speicher 104 enthalten sein kann, aber
nicht muß, um
in Verbindung mit dem Betriebssystem 106 ordnungsgemäß zu arbeiten.
Ferner kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 als (a)
eine objektorientierte Programmiersprache, die Klassen von Daten
und Verfahren aufweist, oder (b) eine Verfahrens-Programmiersprache geschrieben sein,
die Routinen, Unterroutinen und/oder Funktionen aufweist, beispielsweise,
aber nicht ausschließlich,
C, C++, Pascal, Basic, Fortran, Cobol, Perl, Java und Ada.
-
Netzschnittstellenvorrichtung(en) 112 kann bzw.
können
eine beliebige Vorrichtung sein, die konfiguriert ist, um eine Kommunikation
zwischen dem System 100 und einem Kommunikationsnetz, beispielsweise
einem öffentlichen
oder privaten paketvermittelten oder anderen Datennetz, einschließlich des
Internet, einem leitungsvermittelten Netz, beispiels weise dem öffentlichen
Telefonwählnetz,
einem drahtlosen Netz, einem optischen Netz oder einer beliebigen
anderen gewünschten
Kommunikationsinfrastruktur zu ermöglichen.
-
Die
Eingabe-/Ausgabevorrichtungen 114 können eine jegliche Vorrichtung
umfassen, die konfiguriert ist, um mit der lokalen Schnittstelle 120 zu kommunizieren.
Fachleute werden erkennen, daß die
Eingabe-/Ausgabevorrichtungen 114 je nach der Konfiguration
des Systems 100 eine beliebige der folgenden, oder andere,
Vorrichtungen umfassen können:
eine Tastatur, eine Maus, Anzeigevorrichtung, beispielsweise einen
Computermonitor, einen seriellen Anschluß, einen parallelen Anschluß, einen
Drucker, Lautsprecher, ein Mikrophon usw.
-
Wie
in 1 veranschaulicht ist, kann das System 100 eine
Cursormanipulationsvorrichtung 116 und eine Anzeigevorrichtung 118 umfassen.
Wie oben angegeben wurde, kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 konfiguriert
sein, um einen Benutzer zu befähigen,
Bildobjekte 208 in einem Graphikanzeigeabschnitt einer
graphischen Benutzerschnittstelle über die Anzeigevorrichtung 118 und
die Cursormanipulationsvorrichtung 116 auszuwählen. Somit
werden Fachleute erkennen, daß die
Anzeigevorrichtung 118 beliebige der folgenden (oder anderen)
Arten von Vorrichtungen aufweisen kann, die konfiguriert sind, um
die graphische Benutzerschnittstelle zu unterstützen: einen Computermonitor,
eine Flüssigkristallanzeige
(LCD – liquid
crystal display), eine plasmabasierte Anzeige, eine LED-basierte
Anzeige, einen Sensorbildschirm, beispielsweise diejenigen, die
bei tragbaren Rechenvorrichtungen (z.B. einem persönlichen
digitalen Assistenten (PDA)) implementiert sind, und eine beliebige
andere bekannte oder zukünftige
Anzeigevorrichtung unabhängig
von der zugrundeliegenden Anzeigetechnologie. Ferner kann die Cursormanipulationsvorrichtung 116 eine
beliebige Eingabevorrichtung umfassen, die konfiguriert ist, um
mit einer Anwendung 108, dem Betriebssystem 106 und/oder dem
Graphikanzeige/Datenstruktur- Verknüpfungssystem 110 zu
kooperieren und einen auf der Anzeigevorrichtung 118 angezeigten
Cursor zu manipulieren. Beispielsweise kann die Cursormanipulationsvorrichtung 116 eine
Maus, eine Rollkugel, einen Satz von Navigationstasten (z.B. Pfeiltasten)
und einen Joystick umfassen, um nur einige wenige zu nennen.
-
Während des
Betriebs des Systems 100 ist die Verarbeitungsvorrichtung 102 konfiguriert,
um eine in dem Speicher 104 gespeicherte Logik auszuführen, um
Daten an den und von dem Speicher 104 zu kommunizieren
und um allgemein Operationen des Systems 100 gemäß der Software
zu steuern. Das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 und
das Betriebssystem 106 werden gänzlich oder teilweise, in der
Regel jedoch letzteres, durch die Verarbeitungsvorrichtung 102 gelesen, vielleicht
in der Verarbeitungsvorrichtung 102 gepuffert, und anschließend ausgeführt.
-
Bei
Ausführungsbeispielen,
bei denen das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 in
Software implementiert ist, wie in 1 gezeigt
ist, kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 auf
einem beliebigen computerlesbaren Medium zur Verwendung durch ein
oder in Verbindung mit einem beliebigen computerbezogenen System
oder Verfahren gespeichert sein. Im Zusammenhang dieses Dokuments
kann ein computerlesbares Medium eine elektronische, magnetische,
optische oder andere physische Vorrichtung oder Einrichtung sein,
die ein Computerprogramm zur Verwendung durch ein oder in Verbindung mit
einem computerbezogenen System oder Verfahren enthalten oder speichern
kann. Das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 kann in
einem beliebigen computerlesbaren Medium zur Verwendung durch ein
bzw. eine oder in Verbindung mit einem bzw. einer Anweisungsausführungssystem,
-apparatur oder -vorrichtung verkörpert sein, beispielsweise
ein bzw. einem computerbasierten System, einen Prozessor enthaltenden
System oder anderen System, das die Anweisungen von dem bzw. der
Anweisungsausführungssystem, -apparatur
oder -vorrichtung abrufen und die Anweisungen ausführen kann.
-
Im
Kontext dieses Dokuments kann ein „computerlesbares Medium" eine beliebige Einrichtung
sein, die das Programm zur Verwendung durch das bzw. die oder in
Verbindung mit dem bzw. der Anweisungsausführungssystem, -apparatur oder
-vorrichtung speichern, kommunizieren, weiterverbreiten oder transportieren
kann. Das computerlesbare Medium kann beispielsweise ein(e) elektronische(s), magnetische(s),
optische(s), elektromagnetische(s), Infrarot- oder Halbleitersystem,
-apparatur oder -vorrichtung oder ein Ausbreitungsmedium sein, ist
jedoch nicht auf dieselben beschränkt. Spezifischere Beispiele
(eine nicht erschöpfende
Liste) des computerlesbaren Mediums würde folgende enthalten: eine elektrische
Verbindung (elektronisch), die einen oder mehrere Drähte aufweist,
eine tragbare Computerdiskette (magnetisch), einen Direktzugriffsspeicher (RAM)
(elektronisch), einen Nur-Lese-Speicher (ROM) (elektronisch), einen
löschbaren
programmierbaren Nur-Lese-Speicher (EPROM, EEPROM oder Flash-Speicher)
(elektronisch), einen Lichtwellenleiter (optisch) und einen tragbaren
Compact-Disk-Nur-Lese-Speicher
(CDROM)(optisch). Man beachte, daß das computerlesbare Medium
sogar Papier oder ein anderes geeignetes Medium sein könnte, auf
das das Programm gedruckt ist, da das Programm elektronisch aufgenommen,
beispielsweise über
ein optisches Scannen des Papiers oder des anderen Mediums, daraufhin
zusammengestellt, interpretiert oder auf andere geeignete Weise
verarbeitet werden kann, falls nötig,
und dann in einem Computerspeicher gespeichert werden kann.
-
Bei
alternativen Ausführungsbeispielen,
bei denen das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 in
Hardware implementiert ist, kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 mit
einer beliebigen oder einer Kombination der folgenden, oder anderen,
Technologien implementiert sein: (einer) diskreten Logik schaltung(en), die
Logikgatter zum Implementieren logischer Funktionen auf Datensignale
hin aufweist bzw. aufweisen, einer anwendungsspezifischen integrierten
Schaltung (ASIC –application
specific integrated circuit), die geeignete Kombinationslogikgatter
aufweist, (einem) programmierbaren Gatearray(s) (PGA – programmable
gate array(s)), (einem) feldprogrammierbaren Gatearray (FPGA – field
programmable gate array) usw.
-
3 ist
ein Flußdiagramm,
das die Architektur, Funktionalität und/oder den Betrieb eines
Ausführungsbeispiels
eines Graphikanzeige/Datenstruktur-Verknüpfungssystems 110 veranschaulicht.
Das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 beginnt
bei Block 300. Das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 kann
durch einen Benutzer über
eine I-/O-Vorrichtung 114 initiiert werden. Bei bestimmten
Ausführungsbeispielen kann
das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 als
eine Funktion implementiert sein, die durch das Betriebssystem 106 und
eine Anwendung 108 aufgerufen werden kann. Bei alternativen
Ausführungsbeispielen
kann die Funktionalität des
Graphikanzeige/Datenstruktur-Verknüpfungssystems 110 nahtlos
in einer Anwendung 108 implementiert sein. Bei solchen
Ausführungsbeispielen kann
das Graphikanzeige/Datenstruktur-Verknüpfungssystem die Computeranwendung
bei Block 302 starten.
-
Ungeachtet
der Art und Weise, auf die es initiiert wird, stellt das Graphikanzeige/Datenstruktur-Verknüpfungssystem
110 bei Block 304 eine graphische Benutzerschnittstelle
bereit, die einen ersten Abschnitt zum Bereitstellen einer Graphikanzeige und
einen zweiten Abschnitt zum Bereitstellen einer n-dimensionalen
Datenstruktur, die der Graphikanzeige zugeordnet ist, aufweist.
Wie oben angegeben wurde, weist die Graphikanzeige ein oder mehrere Bildobjekte 208 auf,
die durch einen Benutzer ausgewählt
werden können.
Allgemein kann ein Bildobjekt jeder beliebige Posten in dem Graphikanzeigeabschnitt
der graphischen Benutzerschnitt stelle sein, der einzeln oder auf
andere Weise durch einen Benutzer ausgewählt und manipuliert wird. Bildobjekte können Text,
Formen, Aufnahmen usw. aufweisen. Beispielsweise kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 ein
Modell einer gedruckten Schaltungsplatine anzeigen, wobei das eine
oder die mehreren Bildobjekte in diesem Fall eine bestimmte Komponente
auf der gedruckten Schaltungsplatine, einen Anschlußstift auf
einer bestimmten Komponente, eine Lötverbindung usw. aufweisen
können. Überdies
kann die Datenstruktur eine beliebige Anzahl von Abmessungen aufweisen.
-
Wie
oben angegeben wurde, kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 nahtlos
in einer Computeranwendung implementiert sein. Bei derartigen Ausführungsbeispielen
bestimmt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 bei
einem Entscheidungsblock 306 dementsprechend, ob die Computeranwendung
beendet ist. Falls die Computeranwendung beendet ist, endet das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 bei
Block 308. Falls die Computeranwendung nicht beendet ist
(oder bei alternativen Ausführungsbeispielen,
bei denen das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 nicht
in der Computeranwendung implementiert ist), bestimmt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 bei
einem Entscheidungsblock 310, ob ein Bildobjekt durch einen
Benutzer ausgewählt
wurde. Falls ein Bildobjekt durch einen Benutzer ausgewählt wurde,
besetzt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 bei
einem Block 312 automatisch die n-dimensionale Datenstruktur mit
Daten, die dem ausgewählten
Bildobjekt entsprechen. Falls kein Bildobjekt ausgewählt ist,
können
die Entscheidungsblöcke 306 und/oder 310 wiederholt werden.
Unter Bezugnahme auf die Bildschirmaufnahmen der 4 und 5 einer
repräsentativen graphischen
Benutzerschnittstelle wird nun ein bestimmtes Ausführungsbeispiel
eines Graphikanzeige/Datenstruktur-Verknüpfungssystems 110 beschrieben. 4 veranschaulicht
die Bildschirmaufnahme der 2 während eines
Betriebs des Graphikanzeige/Datenstruktur-Verknüpfungssystems 110.
Wie oben angegeben wurde, befähigt
das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 einen
Benutzer, über
den Cursor 206 eines oder mehrere der Bildobjekte 208 in
der Graphikanzeige 202 auszuwählen. Nachdem ein Bildobjekt 208 ausgewählt wurde,
kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 das
ausgewählte Bildobjekt
visuell unterscheiden, um anzugeben, daß es ausgewählt wurde. Beispielsweise kann
das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 bei
dem in 4 veranschaulichten Ausführungsbeispiel das ausgewählte Bildobjekt 208 hervorheben oder
dessen Farbe ändern.
-
Ferner
kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 die
Datenstruktur automatisch mit Daten besetzen, die dem ausgewählten Bildobjekt 206 entsprechen.
Wie in 4 veranschaulicht ist, kann das ausgewählte Bildobjekt 206 beispielsweise
drei Arten von Daten aufweisen, die demselben zugeordnet sind, wobei
jede Art einer Variablen 1, einer Variablen 2 und einer Variablen
3 entspricht. Das ausgewählte
Bildobjekt 206 kann die folgenden Daten aufweisen, die
jeder der Variablen zugeordnet sind: Variable 1 = A1; Variable 2
= 8; und Variable 3 = 0,079. Auf diese Weise kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110, wenn
das Bildobjekt ausgewählt
ist, die entsprechende Datenstruktur automatisch mit den entsprechenden
Werten besetzen.
-
5 veranschaulicht
die Bildschirmaufnahme der 4, bei der
die Datenstruktur als Antwort auf die Auswahl eines anderen Bildobjekts 208 besetzt
wurde. Wie in 5 veranschaulicht ist, weist das
ausgewählte
zweite Bildobjekt 206 die folgenden, jeder der Variablen
zugeordneten Daten auf: Variable 1 = A3; Variable 2 = 3; und Variable
3 = 3,140. Fachleute werden erkennen, daß die den Bildobjekten 208 zugeordneten
Daten, die verwendet werden, um die Datenstruktur zu besetzen, beliebige
Daten umfassen können.
Beispielsweise kann das Bildobjekt 208 mit einer spezifischen Position
(z.B. einer x-Position und einer y-Position in einem Gitter) in
der Graphikanzeige und/oder einer entsprechenden Position in einem
externen System identifiziert sein. Das Bildobjekt 208 kann
ferner anderen Bildobjekten 208 zugeordnet sein. Manche
der Daten, die verwendet werden, um die Datenstruktur zu besetzen,
können die
Zuordnung zwischen Bildobjekten 208 identifizieren. Ferner
kann das Bildobjekt verschiedene Attribute aufweisen. Wenn also
ein Bildobjekt ausgewählt ist,
können
beliebige der dem Bildobjekt zugeordneten Daten oder andere Daten
verwendet werden, um die entsprechende Datenstruktur zu besetzen.
-
Das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 kann
in einer Vielzahl anderer Systeme und/oder einer Vielzahl von Computeranwendungen
implementiert sein. 6 ist ein Blockdiagramm eines
Systems 600 zum Prüfen
von Herstellungsdefekten bei gedruckten Schaltungsplatinen, in dem
das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 implementiert
sein kann. Das System 600 weist ein Modelliersystem 602 für gedruckte Schaltungsplatinen,
ein Röntgenstrahlen-Prüfsteuersystem 604,
ein Röntgenstrahlen-Abbildungssystem 606 und
eine gedruckte Schaltungsplatine 610 auf. Allgemein ist
das PCB-Modelliersystem 602 ein System zum Erstellen eines
Computermodells einer gedruckten Schaltungsplatine. Das PCB-Modelliersystem 602 kann
ein beliebiges bekanntes oder später entwickeltes
System eines rechnergestützten
Entwurfs (CAD-System, CAD = computer-aided design) sein, das in der Lage
ist, einen beliebigen Typ einer gedruckten Schaltungsplatine zu
modellieren.
-
7 und 8 veranschaulichen
Querschnittsdiagramme einer gedruckten Schaltungsplatine 610,
die unter Verwendung des PCB-Modelliersystems 602 modelliert
und unter Verwendung des Systems 600 geprüft werden
kann. Wie in 7 veranschaulicht ist, kann
die gedruckte Schaltungsplatine 610 eine Komponente 700 aufweisen,
die einen oder mehrere Anschlußstifte 704 aufweist.
Die Komponente 700 kann einen beliebigen Typ einer elektrischen
Komponente umfassen, für die
es wünschenswert
ist, sie an ein PCB-Substrat 702 anzulöten. Das PCB-Substrat 702 umfaßt eine
zugrundeliegende integrierte Schaltung (IC), die eine Mehrzahl von
Abschlußpunkten 706 aufweist,
die während
des Herstellungsprozesses an die Anschlußstifte 704 angelötet werden
können.
-
Wie
in 8 veranschaulicht ist, kann die Komponente 700 während des
Herstellungsprozesses über
ein Lötmaterial 800 mit
den Abschlußpunkten 706 auf
dem PCB-Substrat 702 elektrisch verbunden werden. 8 veranschaulicht
eine gedruckte Schaltungsplatine 610 nach dem Lötvorgang.
Beispielsweise können
sich während
des Herstellungsprozesses eine Vielzahl von Defekten ergeben. Beispielsweise,
in 8, kann der äußerste linke
Anschlußstift 704 einen
Lötdefekt
aufweisen (durch Bezugszeichen 802 dargestellt). Fachleute
werden erkennen, daß während des
Herstellungsprozesses jegliche der folgenden oder andere Defekte
auftreten können:
offene Lötverbindungen,
Kurzschlüsse,
fehlende Komponenten, fehlausgerichtete Komponenten, unzureichende
Lötverbindungen, überschüssige Lötverbindungen,
umgekehrte Kondensatoren (Sperrkapazitäten), Lötkugeln, Lötleerräume usw.
-
Das
Röntgenstrahlen-Abbildungssystem 606 weist
eine Abbildungshardware und/oder -software zum Aufnehmen eines Röntgenstrahlenbilds
einer hergestellten gedruckten Schaltungsplatine auf. Fachleute
werden erkennen, daß das
System 600 beliebige einer Vielzahl anderer Arten von Abbildungstechniken
verwenden kann (z.B. optisches Bild, Ultraschallbild, thermisches
Bild usw.). Das Röntgenstrahlen-Prüfsteuersystem 604 ist
schnittstellenmäßig mit
dem PCB-Modelliersystem 602 und dem
Röntgenstrahlen-Abbildungssystem 606 verbunden.
Beispielsweise kann das Röntgenstrahlen-Prüfsteuersystem 604 eine
Datei, die ein Computermodell einer bestimmten gedruckten Schaltungsplatine
enthält,
von dem PCB-Modelliersystem 602 empfangen. Auf der Basis
des Computermodells kann das Röntgenstrahlen-Prüfsteuersystem 604 ein Prüfprogramm
erstellen, das durch das Röntgenstrahlen-Abbildungssystem 606 implementiert
werden soll. Das Prüfprogramm
kann verwendet werden, um eine hergestellte gedruckte Schaltungsplatine
abzubilden, die auf dem durch das PCB-Modelliersystem 602 erstellten
Computermodell basiert. Nach einem Erstellen von Bildern der hergestellten
gedruckten Schaltungsplatine können
die Bilder mit dem Computermodell verglichen werden, um eine Prüfung in
bezug auf eine Vielzahl von Herstellungsdefekten durchzuführen (z.B.
offene Lötverbindungen, Kurzschlüsse, fehlende
Komponenten, fehlausgerichtete Komponenten, unzureichende Lötverbindungen, überschüssige Lötverbindungen,
umgekehrte Kondensatoren (Sperrkapazitäten), Lötkugeln, Lötleerräume usw.).
-
Wie
in 6 veranschaulicht ist, kann das Röntgenstrahlen-Prüfsteuersystem 604 das
Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 implementieren,
um den Prüfprozeß zu verbessern
und eine Erstellung des dem Röntgenstrahlen-Abbildungssystem 606 gelieferten
Prüfprogramms
zu ermöglichen.
Wie oben allgemein beschrieben wurde, unterstützt das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 eine
für eine
Wechselwirkung mit einem Benutzer konfigurierte graphische Benutzerschnittstelle,
bei der eine Graphikanzeige mit einer n-dimensionalen Datenstruktur
verknüpft
sein kann. Bei dem in 6 veranschaulichten Ausführungsbeispiel
kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 konfiguriert
sein, um ein Modell einer gedruckten Schaltungsplatine in dem Graphikanzeigeabschnitt
anzuzeigen. Beispielsweise können
das eine oder die mehreren Bildobjekte in der Graphikanzeige eines
Modells einer gedruckten Schaltungsplatine eine bestimmte Komponente
auf der gedruckten Schaltungsplatine, einen Anschlußstift auf
einer bestimmten Komponente, eine Lötverbindung usw. aufweisen.
Um das Prüfprogramm
zu erstellen, das verwendet wird, um eine hergestellte gedruckte
Schaltungsplatine abzubilden, die auf dem angezeigten Computermodell
basiert, befähigt
das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 einen
Benutzer, eines oder mehrere der Bildobjekte der gedruckten Schaltungsplatine
auszuwählen.
Auf der Basis der Auswahl eines bestimmten Bildobjektes (z.B. eines
der Anschlußstifte)
kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 die
n-dimensionale Datenstruktur automatisch mit Daten besetzen, die
dem ausgewählten
Bildobjekt entsprechen.
-
9 ist
eine Bildschirmaufnahme 900 eines weiteren Ausführungsbeispiels
einer durch das Graphikanzeige/Datenstruktur-Verknüpfungssystem 110 erstellten
graphischen Benutzerschnittstelle, die in dem Röntgenstrahlen-Prüfsteuersystem 604 implementiert
sein kann. Die graphische Benutzerschnittstelle kann einen Abschnitt 902 zum
Anzeigen des Modells der gedruckten Schaltungsplatine aufweisen.
Wie in 9 veranschaulicht ist, kann das Modell der gedruckten
Schaltungsplatine Bildobjekte 904 aufweisen (z.B. eine
bestimmte Komponente auf der gedruckten Schaltungsplatine, einen
Anschlußstift
auf einer bestimmten Komponente, eine Lötverbindung usw.). Die Bildobjekte 904,
die ausgewählt wurden,
werden durch ein Bezugszeichen 906 dargestellt. Wie oben
beschrieben wurde, kann die graphische Benutzerschnittstelle eine
oder mehrere Datenstrukturen 908 aufweisen. Dort, wo mehrere
Datenstrukturen 908 enthalten sind, kann das Graphikanzeige/Datenstruktur-Verknüpfungssystem
ausgewählte
Bildobjekte 906 visuell unterscheiden, indem es sie bezüglich der
entsprechenden Datenstruktur 908, die es besetzt, farbcodiert.
-
Bei
dem in 9 veranschaulichten Ausführungsbeispiel weisen die Datenstrukturen 908 Datentabellen
auf, die verschiedenen Ausrichtungsgruppen entsprechen, die dem
Röntgenstrahlen-Abbildungssystem 606 zugeordnet
sind. Überdies
kann jede Datenstruktur 908 die folgenden Variablen umfassen:
eine „Vorrichtung"-Variable; eine „Kontaktflächen"-Variable; eine „X-Position"-Variable; eine „Y-Position"-Variable; und eine „Oberfläche"-Variable. Die Datenstrukturen 908 und
die Bildobjekte 904 können
wie oben beschrieben verknüpft
sein.
-
Es
sollte betont werden, daß die
oben beschriebenen Ausführungsbeispiele
des Graphikanzeige/Datenstruktur-Verknüpfungssystems 110,
insbesondere jegliche „beschriebenen" Ausführungsbeispiele,
lediglich mögliche
Implementierungsbeispiele sind, die lediglich zum Zwecke eines deutlichen
Verständnisses
der Prinzipien der Erfindung dargelegt sind. Es können viele
Variationen und Modifikationen an dem bzw. den oben beschriebenen Ausführungsbeispiel(en)
der Erfindung durchgeführt werden,
ohne wesentlich von der Wesensart und den Prinzipien der Erfindung
abzuweichen. Alle derartigen Modifizierungen und Variationen sollen
hierin in dem Schutzbereich dieser Offenbarung enthalten und durch
die folgenden Patentansprüche
geschützt sein.