ECK-DATEN

Der Beitrag geht auf die effektive Verwendung der Betriebsmodi bei den Arbitrary-Waveform-Generatoren der Baureihen M4i.66xx von Spectrum ein und konzentriert sich dabei auf den Sequenzmodus, der die Möglichkeit bietet, die Auswahl der ausgegebenen Signalformen nahezu in Echtzeit zu kontrollieren.

Arbitrary-Waveform-Generatoren (AWGs) arbeiten wie ein Digitizer im Umkehrbetrieb. Sie speichern eine Signalform in numerischer Form im Speicher, anschließend leitet ein Controller die digitalen Daten an einen Digital-Analog-Wandler (DAC) weiter, der sie in eine analoge Spannung wandelt. Dies ist in Bild 1 dargestellt.

Betriebsmodi des Signalformspeichers

Der Speicher in den AWGs der Baureihe M4i.66xx von Spectrum wird in zwei unterschiedlichen Modi verwendet. Der erste ist der Standard-Modus, bei dem die Signale vollständig im Speicher abgelegt werden. Dadurch wird die Dauer des Ausgabesignals auf die Länge des Speichers begrenzt. Zu beachten ist, dass der Signalformspeicher bei dieser Produktreihe mit 2 GSamples arbeitet und bei der höchsten Taktfrequenz (1,25 GS/s) eine Signalformdauer von bis zu 1,6 Sekunden bietet, wobei kein Teil der Signalform wiederholt wird.

ARBs

Bild 1: Konzeptionelles Blockschaltbild eines AWG mit Anzeige des Datenpfads vom Speicher bis zur Ausgabe. Spectrum

Beim zweiten verwendeten Modus handelt es sich um den First-In-First-Out-Modus (FIFO-Modus), bei dem Signalformdaten über eine serielle Schnittstelle vom Typ PCIe x8 mit Übertragungsraten von bis zu 2,8 GB/s vom Hostcomputer gestreamt werden. Der interne Signalformspeicher wird als Zwischenspeicher für das Streaming genutzt. Dieser Modus ermöglicht die Verlängerung der Ausgabe, beschränkt nur durch den im Hostcomputer zur Verfügung stehenden Speicher. PC-Systeme mit Massenspeichern im RAID-Verbund, beispielsweise Streaming-Systemen von Spectrum, können sogar dazu genutzt werden, Signale über Zeiträume von mehreren Stunden zu erzeugen.

Betriebsmodi der AWGs

Die Betriebsmodi bestimmen, wann welcher Teil einer Signalform ausgegeben wird. Der Betriebsmodus arbeitet in Kombination mit dem Trigger, der intern oder extern erzeugt werden kann. Die verschiedenen Betriebsmodi sind nachstehend aufgeführt:

  • Single – Die Daten im Speicher werden nach dem ersten Triggerereignis einmal wiedergegeben, nachfolgende Trigger werden ignoriert.
  • Single restart – Dieselben Daten des Speichers werden nach jedem Triggerereignis einmal wiedergegeben.
  • Repetitive (kontinuierlich) – Daten des Speichers werden kontinuierlich und mit einer programmierten Häufigkeit wiedergegeben, bis ein Stoppbefehl ausgegeben wird.
  • Gated (Torsignal-gesteuert) – Ermöglicht die Ausgabe der Signale mit Steuerung durch den Status eines externen Torsignals.
  • Multiple – Der Speicher wird in Segmente identischer Länge unterteilt. Für jedes Triggerereignis wird ein Segment ausgegeben.
  • Sequence – Der Speicher wird in Segmente unterteilt. Signalformen unterschiedlicher Längen werden in die Segmente geladen. Eine Sequenzdatei bestimmt die Reihenfolge der Ausgabe, die Anzahl der Schleifen und das auszugebende Segment.
AWGs

Bild 2: Teilen des Signalformspeichers und Verknüpfen des Sequenzspeichers. Spectrum

Die Multiple- und Sequence-Modi bewirken eine Segmentierung des Speichers, wobei jedes Segment eine Signalform oder einen Teil einer Signalform enthält. Jeder Trigger bewirkt dann eine Erhöhung der Segmentnummer und gibt die ausgewählte Signalform aus. Der Sequenzmodus ermöglicht es zusätzlich, die Segmentinhalte mit einer vom Benutzer wählbaren Häufigkeit in einer Schleife zu wiederholen und das nächste auszugebende Segment auszuwählen.

Sequenzmodus

Der gesamte Ablauf der Sequenz ist in Bild 2 dargestellt. Der Sequenzmodus bewirkt, wie zuvor erwähnt, eine Segmentierung der AWG-Signalform in mehrere Datensegmente. Jede der in die einzelnen Segmente geladenen Signalformen kann eine unterschiedliche Größe aufweisen. Die Datensegmente werden unter Nutzung eines zusätzlichen Sequenzspeichers in einer vom Benutzer festgelegten Reihenfolge verbunden (Bild 2 unten). Der Sequenzspeicher verknüpft den Speicherschritt mit einem bestimmten Segment, gibt die Anzahl der Schleifen je Segment vor und definiert das nächste Segment. Das Umschalten zwischen den Segmenten erfolgt dabei lückenlos und ohne Totzeit.

Im gezeigten Beispiel wurden vier Schritte innerhalb des Sequenzspeichers definiert. Drei davon (Schritt 1, Schritt 3 und Schritt 4) bewirken eine Endlosschleife, das heißt eine kontinuierliche Wiederholung. Die Ausgabe der Karte enthält Datensegment Nr. 2 mit 10 Wiederholungen, Datensegment Nr. 3 mit 100 Wiederholungen und Datensegment Nr. 7 mit einer einmaliger Wiederholung. An diesem Punkt kehrt der AWG in einer Schleife zu Schritt 1 zurück und beginnt den Zyklus von vorn.

Im Sequenzmodus kann durch einen einfachen Softwarebefehl zwischen den wiedergegebenen Segmenten gewechselt werden. Außerdem können einzelne Segmente während der laufenden Wiedergabe anderer Segmente mit neuen Daten gefüllt werden. Dadurch ist eine Programmierung der Signalformausgabe nahezu in Echtzeit möglich.

Dank der strengen Trennung von Signalform- und Sequenzspeicher kann der Sequenzspeicher während der Laufzeit gewechselt werden. Bei erneuter Betrachtung des Beispiels sieht man, dass die Sequenz einen nicht genutzten Schritt (Schritt 2) enthält. Im gezeigten Beispiel wurden vor dem Starten des AWG drei Schritte definiert. Diese werden zunächst nicht geändert. Schritt 2 wird so eingerichtet, dass er sich selbst wiederholt. Das bedeutet, er verweist auf sich selbst als nächsten Schritt, jedoch wird er aufgrund der definierten Sequenzabfolge normalerweise nicht verwendet. Aufgrund der Art des Sequenzspeichers (Read-before-Write) ist das Schreiben in ein beliebiges Schrittregister im Sequenzspeicher während der Laufzeit möglich, ohne den Speicher zu beschädigen. Beispielsweise kann durch Adressieren eines bestimmten Schritts und Ändern seines nächsten Parameters durch die Software zwischen zwei Sequenzen gewechselt werden.

Wenn man im oben stehenden Beispiel annimmt, dass der nächsten Parameter von Schritt 4 von Next=1 in Next=2 geändert wird, wird die unendlich ausgeführte Sequenz aus drei Schritten (die seit dem Starten des AWGs wiederholt wird) verlassen, sobald bei der Wiedergabe die letzte Abtastung des zu Schritt 4 (der in diesem Fall Segment 7 ist) gehörigen Musters abgeschlossen wurde. Die Sequenz springt dann zu Schritt 2 und fährt nahtlos mit der Wiedergabe der ersten Abtastung des zugehörigen Segments 3 fort. Da Schritt 2 auf sich selbst verweist, erzeugt er das Datensegment 3 in einer Endlosschleife, bis es zu einem Abbruch durch den Benutzer kommt.

Jeder der drei Schrittparameter „Next“, „Segment“ und „Loop“ jedes Schritts im Sequenzspeicher kann während der Laufzeit geändert werden, ohne den Sequenzspeicher zu beschädigen. Allerdings wird ein Schritt direkt nach Erreichen komplett ausgeführt und die dann aktuellen Einstellungen, beispielsweise zur Ausgabe des zugehörigen Musters und die Wiederholung entsprechend der programmierten Häufigkeit, werden abgeschlossen.

Vorteile des Sequenzmodus

Der Sequenzmodus der AWGs der Baureihe M4i.66xx von Spectrum bietet enorme Vorteile. Der erste besteht darin, dass der interne Speicher effektiver genutzt wird. Sich wiederholende Signalformelemente können einmal gespeichert und nach Bedarf wiederholt werden, sodass weniger Speicherplatz erforderlich ist.

Bei der Anordnung der auszugebenden Signalformen besteht eine große Flexibilität. Alle Signalformen, die für ein Testverfahren erforderlich sind, können vorab geladen und anschließend nach Bedarf ausgewählt werden. Dadurch erhöht sich die Testgeschwindigkeit erheblich.

Darüber hinaus lassen sich Signalformsegmente nahezu in Echtzeit kontrollieren, sodass auf Testanforderungen flexibel reagiert werden kann. Gemessene Testergebnisse können Änderungen der Sequenzreihenfolge bewirken, ohne dass der Test unterbrochen wird. Dies ist der größte Vorteil, da Tests nach Bedarf angepasst werden können, wobei sich die Testbedingungen auf Grundlage der gemessenen Leistung ändern lassen. Zu beachten ist das folgende verallgemeinerte Szenario:

  • Lade alle Testsignalformen,
  • schließe das zu testende Gerät (DUT) an AWG und Digitizer an,
  • gebe Testsignalform 1 aus,
  • zeichne sie auf und analysiere den Effekt von Testsignalform 1 auf das zu testende Gerät mit dem Digitizer,
  • wähle, ausgehend vom Testergebnis, den nächsten Test,
  • gebe die Testsignalform 2 wieder,
  • zeichne sie auf und analysiere den Effekt von Testsignalform 2 auf das zu testende Gerät mit dem Digitizer,
  • wähle, ausgehend vom Testergebnis, den nächsten Test,
  • fahre fort, bis der Test abgeschlossen ist.

Bei dieser Möglichkeit, alle Testsignalformen zu speichern und nach Bedarf durch Bearbeiten des Sequenzspeichers während eines laufenden Prozesses aufzurufen, handelt es sich um eine einzigartige Funktion. In Kombination mit der Funktion des AWG, Wellen nahezu beliebiger Formen zu erzeugen, ergibt sich ein idealer Testgenerator.

AWGs

Bild 3: Beispiel eines Manchester-codierten seriellen Datenstroms, der vom AWG erzeugt werden soll. Spectrum

Beispiel für die Verwendung des Sequenzmodus

Betrachtet wird das Testen des Receivers für einen Manchester-codierten seriellen Datenstrom (Bild 3). Die Manchester-Codierung wird in vielen gängigen seriellen Datenverbindungen einschließlich RFID, PSI 5 und Ethernet verwendet. Die Manchester-Codierung setzt immer einen Übergang in der Mitte jeder Bitperiode. Je nach den zu übertragenden Informationen kann auch ein Übergang am Beginn der Periode enthalten sein. Die Richtung des Übergangs in der Mitte des Bits zeigt die Daten an. Übergänge an den Grenzen einer Periode enthalten keine Informationen. Sie sind nur deshalb vorhanden, damit das Signal in den richtigen Status versetzt werden kann, sodass ein Übergang in der Mitte eines Bits möglich ist. Die garantierten Übergänge ermöglichen die Selbsttaktung des Signals. Diese Mischsignalform besteht aus drei Signalformkomponenten (Bild 4):

  • Signalformsegment „1“ – ein Übergang von hohem Pegel auf niedrigen Pegel,
  • Signalformsegment „0“ – ein Übergang von niedrigem Pegel auf hohen Pegel,
  • Signalformsegment Grundlinie – 0 Volt Gleichspannung.
AWGs

Bild 4: Drei Datensegmente werden zum Erzeugen des Manchester-Codes verwendet. Spectrum

Durch Definition von drei Signalformsegmenten mithilfe dieser Komponenten können beliebige Datenmuster synthetisiert werden. Das bedeutet, dass die Inhalte des Pakets durch Neuanordnung der Reihenfolge dieser drei Segmente geändert werden können.

Im folgenden Beispiel wird für die Segmente eine Länge von 512 Abtastungen bei einer Taktfrequenz von 50 MS/s festgelegt, sodass die Dauer jeder Komponente (TBit in Bild 3) 10,24 µs beträgt. Pakete werden durch ein Grundliniensignal getrennt, das mehr als zwei Bit-Taktperioden lang ist.

Der AWG M4i.6631-x8 von Spectrum wurde durch ein Matlab-Scripts gesteuert, das vier verschiedene Datenmuster zu Testzwecken erzeugte. Spectrum bietet Treiber für die Betriebssysteme Windows und Linux. Die Treiber unterstützen die meisten gängigen Programmiersprachen und Systemintegrationssoftware von Drittanbietern wie Labview, Matlab oder Labwindows/CVI. Alle Treiber werden mit einer umfangreichen Dokumentation und funktionierenden Beispielen ausgeliefert.

Der Matlab-Code zur Steuerung der Inhalte des Sequenzspeichers befindet sich in der Application Note, die über die infodirekt-Nr. auf all-electronics.de abgerufen werden kann. Die Signalform ist aus vierzehn Schritten aufgebaut und verwendet nur die oben beschriebenen drei Komponenten. Das Matlab-Script enthält vier solche Tabellen, von denen jede eine andere Kombination von Segmenten lädt. Wird der AWG unter diesem Matlab-Script betrieben, erzeugt er vier unterschiedliche Datenmuster. Die Ergebnisse der Datenausgabe sind in Bild 5 dargestellt.

AWGs

Bild 5: Aufzeichnung verschiedener Segmente der seriellen Datenpakete mit einem Digitizer vom Typ M4i.4450-x8. Spectrum

Ein Digitizer vom Typ M4i.4450-x8 von Spectrum wurde zur Aufzeichnung von vier Segmenten serieller Datenpakete im Multiple-Recording-Mode (Mehrkanal-Aufzeichnungsmodus) verwendet. Die obere Anzeige entspricht dem besprochenen Datenmuster. Die anderen drei sind abweichende Muster, die aufzeigen, wie der AWG zwischen den Dateninhalten durch einfaches Ändern der Inhalte des Sequenzspeichers wechseln kann.

Zusammenfassung

Über die Betriebsmodi des AWG werden die Signalformen ausgewählt und ihr Timing festgelegt. Der Sequenzmodus ist der vielseitigste Modus, er ermöglicht die Segmentierung des Speichers und die Auswahl des auszugebenden Signalformsegments, die Festlegung der Anzahl der Wiederholungen des Segments und die Bestimmung des nächsten Segments. Die Programmierung der Segmente wird über den Sequenzspeicher gesteuert, der während des AWG-Betriebs gewechselt werden kann. Das bedeutet, dass die auszugebenden Signalformen nahezu in Echtzeit geändert werden können und somit eine adaptive Programmierung von Tests möglich ist.