Durch die Verwendung modularer Instrumente ist es möglich, alle erforderlichen Tests mit einem einzigen PC-System durchzuführen, wodurch die Testkosten gesenkt und der erforderliche Platz im Labor reduziert wird. Dabei nutzt man Digitizer, um analoge Signale zu messen, außerdem Signalgeneratoren, um analoge Signale bereitzustellen, und Digital I/O-Karten, um digitale Signale zu erzeugen oder zu messen.
Mikrocontroller im Kühlschrank als Beispiel
Als Beispiel dienen hier Mikrocontroller, die in einem aktuellen Kühlschrank verwendet werden. Diese Embedded Controller müssen die Signale des Bedienfelds verarbeiten, den Kühlkompressor regeln und weitere Komponenten wie Eiswürfelmaschine, Abtauheizung und Lüfter steuern. Einige Designs können sogar WLAN-Schnittstellen enthalten. Ein typisches Steuerungssystem eines Kühlschranks ist in Bild 2 dargestellt.
Mikrocontroller finden sich heutzutage in fast allen technischen Geräten, von Kinderspielzeug bis hin zu Passagierflugzeugen. Die meisten davon führen spezialisierte Operationen innerhalb eines komplexeren Systems aus und verwenden dafür eine Kombination aus analogen und digitalen Signalen. Diese Embedded Controller müssen mit anderen Systemkomponenten über komplexe serielle Schnittstellen und Protokolle kommunizieren, die zwar ein übliches Format haben, aber schwierig zu überprüfen sind.
Modulare Testinstrumente
Das Verifizieren, die Fehlersuche und das Debuggen dieser Mikrocontroller erfordert fast immer mehrere Messinstrumente, um analoge Signale und digitale Dateninhalte zu kontrollieren. Embedded Mikrocontroller können auch Analog-Digital-Wandler (ADC) enthalten für deren Test zusätzlich analoge Signalquellen benötigt werden.
Das zu testende System nutzt parallele und serielle Datenverbindungen, analoge Sensoren, Motorsteuerungen und Gleichstromversorgungen.
Messung von Embedded-Systemen
Die Signale des Embedded Controllers haben eine moderate Signalbandbreite. Daher wurde für die Messungen die M2p-Serie von Spectrum Instrumentation gewählt. Diese umfasst 39 verschiedene Messkarten, die frei kombinierbar und untereinander synchronisierbar sind. Folgende drei Karten wurden ausgesucht: Als Digitizer dient das Modell M2p.5968-x4 mit einer Auflösung von 16 Bit, einer Geschwindigkeit von 125 MSample/s und acht Kanälen, als arbiträrer Signalgenerator das Modell M2p.6568-x4, ebenfalls mit 16 Bit, 125 MSample/s und acht Kanälen auf einer Karte. Die Digital I/O-Karte M2p.7515-x4 wird zur Erzeugung oder Aufzeichnung von digitalen Signalen benutzt und verfügt über 32 parallele digitale Kanäle. Diese drei Messkarten (Bild 1) haben jeweils nur eine Länge von 168 mm und sollen fast jeden PC in ein ideales Mix-Mode-Messinstrument verwandeln.
Modulare Instrumente wie Arbiträr-Generatoren, Digitizer und digitale I/O-Karten finden Verwendung beim Testen von Embedded Mikrocontroller. Die PC-Messkarten können die vielen nötigen Signale erzeugen und erfassen, und sie führen so unterschiedliche Aufgaben wie Datenaufzeichnung, Logikzustandsanalyse und Signalsimulation durch. Verschiedene, miteinander synchronisierte PCIe-Karten bilden dabei ein kostengünstiges vielkanaliges Testsystem für die Entwicklung und Fehlersuche bei Mikrocontrollern. Sie enthalten auch diverse Funktionen, mit denen automatisierte Testverfahren beschleunigt werden können.
Die drei modularen Instrumente können durch ein Star-Hub-Modul miteinander verbunden werden, um eine phasenstabile Synchronisation zu erreichen. Das Daten-Streaming beträgt bei diesen drei PCI-Express-x4-Karten bis zu 700 MByte pro Sekunde. Sie werden von der SBench-6-Messsoftware des Herstellers gesteuert und auch von einer Vielzahl an Softwarepaketen und Programmiersprachen von Drittanbietern unterstützt.
Erfassung und Anzeige digitaler Signale
Embedded Systeme verwenden sowohl einzelne digitale Steuerleitungen als auch Busse, die parallele Digitalsignale enthalten. In diesem Beispielsystem sind die Verbindungen zu der LCD-Anzeige und dem Speicher als parallele Busse ausgeführt. Bild 3 zeigt die Aufnahme eines 8-Bit-Busses.
Diese Erfassung wurde mit der Digital-I/O-Karte M2p.7515-x4 durchgeführt, die über 32 Bit als Digitaleingang oder Digitalausgang verfügt und mit einer maximalen Rate von 125 Mb/s taktet. Der digitale Schwellenwert ist mit digitalen Eingängen von 3,3 V und 5,0 V TTL-kompatibel. Bei jedem Eingang lässt sich die Eingangsimpedanz zwischen 110 Ω und 50 kΩ wählen, und es steht ein On-Board-Speicher mit insgesamt 1 GByte zur Verfügung. Sind mehr als 32 parallele Digitalkanäle nötig, können bis zu 16 Karten synchronisiert werden, wodurch ein Testsystem mit 512 Kanälen möglich ist. Gesteuert und programmiert werden die Karten mit der SBench 6 Software. Die Anzeige mehrerer digitaler Signale erfolgt in SBench 6 entweder einzeln in einer Linienansicht, als Leiter-Diagramm oder wie in Bild 6 in einer Busansicht.
Das linke Display in Bild 4 zeigt die gezoomte Busansicht, um den Buswert im Zeitverlauf zu sehen.
Buswerte können wie in Bild 4 zu sehen in Hex- oder in Oktal-, Binär- oder als vorzeichenbehaftete sowie vorzeichenlose Dezimalwerte angezeigt werden.
Digitale Signale, die von den seriellen Datenbussen stammen, können erfasst und dann sowohl im analogen als auch digitalen Format angezeigt werden, wie in Bild 5 zu sehen.
Digitale und analoge Erfassung
Eine digitale Erfassung zeichnet den logischen Zustand im Zeitverlauf auf. Der logische Zustand wird durch einen Komparator bestimmt, der feststellt, ob die Eingangswellenform über (digital 1) oder unter (digital 0) einer logischen Spannungsschwelle liegt. Die Übergänge sind präzise und dauern nur eine Abtasttaktperiode. Das Beispiel im unteren rechten Display von Bild 5 zeigt vertikale Übergänge und keinerlei Rauschen. Im Vergleich dazu sind beim analogen Signal im oberen rechten Raster alle aufgezeichneten Störungen wie Rauschen, Überschwingen und Übergangszeiten zu sehen.
Digitale Aufzeichnungen sollten nur verwendet werden, um den logischen Dateninhalt und den Takt entweder als einzelne Zeile oder als Busanzeige zu bestimmen. Analoge Aufzeichnungen ermöglichen Messungen von momentanen Amplitudenwerten sowie Zeitmessungen. Um Signaleigenschaften wie Übergangszeit, Überschwingen, Unterschwingen und Rauschpegel zu bestimmen, wird ebenfalls die analoge Erfassung benötigt.
Testen der Reaktion einer seriellen Datenschnittstelle
Die Controller-Einheit in diesem Beispiel besteht aus drei Baugruppen, die über serielle Datenschnittstellen Informationen austauschen. Die Empfänger in diesen Schnittstellen werden mit den Signalen, die ein Arbiträr-Generator (AWG) generiert, getestet. Der AWG, der analoge Wellenformen erzeugt, kann die erforderlichen Datenmuster liefern, aber auch die Übergangszeiten, Amplituden und das Timing des Signals variieren sowie Beeinträchtigungen (z. B. Rauschen) hinzufügen.
Sequenzbetrieb des AWG
Der in diesem Beispiel verwendete AWG verfügt über einen voll ausgestatteten Sequenzmodus, der es ermöglicht, zwischen verschiedenen Wellenformen nahezu in Echtzeit umzuschalten. Dadurch entfällt auch die Zeit zum Laden neuer Wellenformen. Der Wellenformspeicher des AWG ist segmentiert, und jede für einen Test benötigte Wellenform kann in einem eigenen Segment gespeichert werden. Basierend auf der Reihenfolge, die in einem separaten Sequenzspeicher hinterlegt ist, spielt der AWG die Wellenformen ab. Der Inhalt des Sequenzspeichers kann aktualisiert oder geändert werden, ohne den Ausgangszustand des AWG zu beeinflussen. Dieser Sequenzbetrieb ermöglicht adaptive Änderungen in der Testsequenz basierend auf den Testergebnissen. Die ausgegebene Wellenform kann also, basierend auf den gemessenen Ergebnissen, während des Tests modifiziert werden. Diese Möglichkeit verringert die Testzeit und verbessert die Messgenauigkeit.
Beispiel für die Änderung des Dateninhalts
Ein Beispiel für die Änderung des Dateninhalts eines seriellen Datenstroms ist in Bild 6 dargestellt.
Jeder der seriellen Datenströme hat einen anderen Dateninhalt. Sie werden im Wellenformspeicher des AWG abgelegt und in der von einem separaten Sequenzspeicher festgelegten Reihenfolge ausgegeben. Es ist möglich, den Inhalt des Sequenzspeichers zu ändern, ohne die laufende Ausgabe anzuhalten. So kann der AWG beispielsweise verwendet werden, um das Bedienfeld zu ersetzen und die Schaltoperationen der Frontplatte zu simulieren. Ein Test wäre die Simulation einer Temperaturänderung, die normalerweise manuell über das Bedienfeld eingestellt wird, und die anschließende Kontrolle, ob der Kompressor reagiert. (bs)