Erweiterte Funktionen von Hochgeschwindigkeits-Digital-I/O-Geräten: Onboard-Speicher

Überblick

Dieses Dokument ist Teil der Whitepaper-Serie: Erweiterte Funktionen in Hochgeschwindigkeits-Digital-I/O-Geräten.

In diesem Tutorium werden die Vorteile eines großen Onboard-Speichers bei Hochgeschwindigkeits-Digital-I/O-Geräten beschrieben. Der Speicher ist insbesondere für die Signalverlaufserzeugung und Skripterstellung von Bedeutung.

Inhaltsverzeichnis

  1. Einführung
  2. Erzeugung von Signalverläufen
  3. Datenbreite
  4. Speicherzuweisung
  5. Daten-Streaming
  6. Ermittlung der Skriptgröße
  7. Fazit

Einführung

NI-Digitalsignalanalysatoren/-generatoren benötigen für die Erfassung und Erzeugung von Daten mehrere Megabyte Onboard-Speicher. Der Onboard-Speicher ermöglicht weitaus höhere Datenraten als mit Daten-Streaming vom Systemspeicher über den PCI-Bus erreichbar wäre. In der Regel verfügen die Geräte über separate Speicherbereiche für die Erfassung und Erzeugung. So besitzt ein 64-MS-Gerät beispielsweise zwei Speicherblöcke für 64 MS: einen für die Erfassung und einen für die Erzeugung.
Werden die Hardwarevergleichsfunktionen eingesetzt, werden die Fehlerdaten  getrennt von den erfassten bzw. erzeugten Daten gespeichert, so dass Fehlerdaten keinen Erfassungs- oder Erzeugungsspeicherplatz einnehmen.

Nach oben

Erzeugung von Signalverläufen

Signalverläufe und Skripte werden gemeinsam im Gerätespeicher abgelegt. Sie werden in zusammenhängenden Blöcken gespeichert, die in der Reihenfolge, in der sie geschrieben werden, im Speicher erscheinen. Um Speicherplatz für neue Signale freizugeben, können einzelne Signalverläufe vom Gerät gelöscht werden.

Nach oben

Datenbreite

Dieser Eigenschaftsknoten legt die Sample-Größe des Geräts sowie die Anzahl der nutzbaren Kanäle fest. Die Breite der erfassten Daten kann eingestellt werden, während die Breite der erzeugten Daten nicht veränderlich ist.


Abb. 1: Datenbreite und Anzahl der nutzbaren Kanäle

In NI LabVIEW kann der Eigenschaftsknoten für die Datenbreite eingesetzt werden, um Eigenschaften auf das Gerät zu schreiben oder vom Gerät zu lesen.


Abb. 2: Eigenschaftsknoten für die Datenbreite

Nach oben

Speicherzuweisung

Erfassungsspeicher: Die Größe des physikalischen Speichers und die Datenbreite legen fest, wie viele Abtastwerte gespeichert werden können. Die Anzahl der Abtastwerte kann erhöht werden, indem die Datenbreite verkleinert wird.
Erzeugungsspeicher: Ähnlich wie bei der Erfassung bestimmen auch hier die Größe des physikalischen Speichers und die Datenbreite die Anzahl speicherbarer Abtastwerte. Die Datenbreite wird jedoch vom Gerät und dem jeweiligen Übertragungsmodus vorgegeben. Bei der Erzeugung wird zudem ein Teil des Speichers für die Skriptanweisungen reserviert.


Gerät

Speichergröße (Mbit/Kanal)

1 Mbit/Kanal

8 Mbit/Kanal

64 Mbit/Kanal

6541/6542

1

8

64

6544/6545

1

8

64

6551/6552

1

8

64

6561/6562 SDR

2

16

128

6561/6562 DDR

4

32

256

Abb. 3: Speichergrößen
Nach oben

Daten-Streaming

Der große Speicherplatz, der auf den Hochgeschwindigkeits-Digital-I/O-Geräten von NI verfügbar ist, ermöglicht Daten-Streaming vom und zum PC-Speicher. Der Onboard-Speicher fungiert dabei als Puffer, in dem Daten während der Erzeugung bzw. Erfassung zwischengespeichert werden. Die nachfolgenden Beispiele beschreiben, wie Daten mit den Hochgeschwindigkeits-Digital-I/O-Geräten während der Erfassung und Erzeugung per Streaming übertragen werden.

» Daten-Streaming mit Hochgeschwindigkeits-Digital-I/O-Geräten: Erfassung
» Daten-Streaming mit Hochgeschwindigkeits-Digital-I/O-Geräten: Erzeugung

Nach oben

Ermittlung der Skriptgröße

Die Größe einer einzigen Anweisung, die für NI-Hochgeschwindigkeits-Digital-I/O-Geräte kompiliert wurde, beträgt 16 Byte. Die Anzahl der Abtastwerte, die von einer Anweisung genutzt werden, hängt von der Datenbreite ab.

  • Datenbreite 1 (6541/6542, 655x): 4 Abtastwerte
  • Datenbreite 2 (656x SDR): 8 Abtastwerte
  • Datenbreite 4 (6544, 6545, 656x DDR): 16 Abtastwerte

Die belegte Speichermenge kann folgendermaßen bestimmt werden:

Alle Skripte verfügen über einen Overhead von zwei Anweisungen.

  • Erzeugungs-Statement
    • Keine Marker
  • 1 Anweisung
    • N Marker
  • N+1 Anweisungen
    • Subsets
    • 1 Anweisung
  • Warten-Statement
    • 1 Anweisung
  • Trigger-zurücksetzen-Statement
    • 0 Anweisungen
  • Schleifen wiederholen
    • n Schleifen wiederhole
      • 2 Anweisungen
    •  Wiederholen bis zum Trigger
      • 3 Anweisungen
    • Für immer wiederholen
      • Bis zu 47 Anweisungen
        • 2 Anweisungen
      • Größer als 47
        • Muss ein Vielfaches von 128 B sein
        • Zusätzlicher Speicherplatz, wenn vorhanden, wird mit Null-Befehlen belegt
      • 2 Anweisungen
  • If-else-Statements
    • Else-Statement muss ein Vielfaches von 128 B sein
      • Zusätzlicher Speicherplatz, wenn vorhanden, wird mit Null-Befehlen belegt
    • 2 Anweisungen
Nach oben

Fazit

Der Onboard-Speicher der Hochgeschwindigkeits-Digital-I/O-Geräte wird zur Zwischenablage von Daten verwendet. Es können nicht nur Digitalvektoren abgelegt werden, sie können zudem mithilfe von Skripten miteinander verknüpft und wiederholt werden. Für Funktionen wie den Hardwarevergleich können "erwartete Daten" im Onboard-Speicher abgelegt und anschließend mit den erfassten Daten verglichen werden. Des Weiteren ermöglicht der Onboard-Speicher der Geräte Daten-Streaming vom und zum PC-Speicher.  

 

Nach oben