Akkumulator (mit Vorzeichen)

Kumuliert oder dekrementiert x. Dieser Knoten unterstützt Mehrkanal-Operationen und Feedback-Skalierung.

Dieser Knoten unterstützt nur boolesche Arrays und skalare Werte mit Integer- und Festkomma-Datentypen.

1378

Ein-/Ausgänge

datatype_icon

x

Daten, die zum Wert von Summe addiert oder von ihm subtrahiert werden sollen. Wenn xein boolesches Array fester Größe ist, ist das erste Array-Element das niederwertigste Bit (LSB) und das letzte Element das höchstwertige Bit (MSB).

Bei Anwendungen mit mehreren Kanälen werden die Daten verschachtelt und ein Element pro Taktperiode mit x verbunden.
datatype_icon

Sub?

Ein boolescher Wert, mit dem festgelegt wird, ob eine Subtraktion oder eine Addition ausgeführt werden soll. Verwenden Sie diese Eingabe, um den Vorgang programmgesteuert zu ändern.

TRUE Berechnet sum - x.
FALSE Berechnet sum + x.

Default value: FALSE

datatype_icon

Laden

Ein boolescher Wert, der angibt, ob eine neue Summierung von 0 begonnen wird.

TRUE Ignoriert alle vorherigen Werte von Summe und beginnt eine neue Summierung durch das Laden des Werts von x.
FALSE Fährt mit der Summierung vorangegangener Ausführungen fort.

Default value: FALSE

Neustart der Summierung von einem bestimmten Kanal

In Anwendungen mit mehreren Kanälen betrifft diese Eingabe den Kanal, dessen Daten während der Taktperiode an x eintreffen, wenn sich Laden ändert. Wenn Sie z. B. Daten von zwei Kanälen acht Taktperioden lang kumulieren, empfängt x Daten von Kanal 1 während der ersten, der fünften und der siebenten Taktperiode. Um die Summierung für Kanal 1 zu starten, legen Sie während dieser Taktperioden Laden auf "True" fest. Die Summierung von Kanal 2 bleibt unverändert.

datatype_icon

Aktivieren

Ein boolescher Wert, der angibt, ob die Operation auf den Wert von x angwendet wird. Verwenden Sie diese Eingabe nur für gültige Werte von x. Sie können z. B. den Ausgang Ausgabe gültig eines Knotens für Rechenoperationen mit hohem Datendurchsatz mit diesem Eingang verbinden, um sicherzustellen, dass der Akkumulator nur den Betrieb aufnimmt, wenn der vorgelagerte Knoten ein gültiges Ergebnis hat.

TRUE Kumuliert den aktuellen Betrag von x.
FALSE Ignoriert x und ändert nicht die Summe.

Default value: TRUE

Ignorieren der Werte von einem bestimmten Kanal

In Anwendungen mit mehreren Kanälen betrifft diese Eingabe den Kanal, dessen Daten während der Taktperiode an x eintreffen, wenn sich Aktivieren ändert. Wenn Sie z. B. Daten von zwei Kanälen acht Taktperioden lang kumulieren, empfängt x Daten von Kanal 1 während der ersten, der fünften und der siebenten Taktperiode. Um nur den zweiten Wert von Kanal 1 zu ignorieren, setzen Sie Aktivieren während der dritten Taktperiode auf FALSE und während der fünften Taktperiode wieder auf TRUE. Die Summierung von Kanal 2 bleibt unverändert.

datatype_icon

Übertrag (Eingang)

Ein boolescher Wert, mit dem festgelegt wird, ob Akkumulator ein zusätzliches niedrigstwertiges Bit (LSB) beim Berechnen der Summe berücksichtigt.

Das LSB könnte beispielsweise vom Bit-Muster des Ausgangs Übertrag (Ausgang) eines nachgelagerten Akkumulator-Knotens stammen.
TRUE

Sub? ist ebenfalls "True"—Berechnet Summe - x.

Sub? ist "False"—Berechnet Summe + x + 1(LSB).

FALSE

Sub? ist "True"—Berechnet Summe - x - 1(LSB).

Sub? ist ebenfalls "False"—Berechnet Summe + x.

datatype_icon

Summe

Ergebnis, das dieser Knoten berechnet.

Das Ergebnis hängt nicht allein vom Wert in x ab, sondern auch von den Werten aller booleschen Eingaben in den Knoten, beispielsweise Laden und Aktivieren. Im Mehrkanal-Anwendungen wird Summe für jeden Kanal separat kumuliert.

Wirkung des Überlaufs auf Summen

Wenn Überlauf TRUE ausgibt, verwirft LabVIEW signifikante Bits von Summe, bis der Wert innerhalb des Bereichs des Ausgabetyps liegt.

datatype_icon

Überlauf

Ein boolescher Wert, der anzeigt, ob der theoretische berechnete Wert den gültigen Bereich seines Datentyps überschreitet.

Dieser Ausgang ist verfügbar, wenn Sie vorzeichenbehaftete Werte mit x und y verbinden.
TrueDieser Knoten schneidet den Wert in Summe ab.
FalseDieser Knoten schneidet den Wert in Summe nicht ab.
Hinweis Bei kaskadierenden Knoten müssen Sie vorzeichenlose Versionen der Knoten in den intermediären Operationen verwenden. Legen Sie die Kodierung des Endknotens auf die gewünschte Kodierung für die gesamte kaskadierende Operation fest.

Register-Überlauf

Gibt an, ob dieser Knoten vor einem Überlauf ein internes Register einfügt.

In der Standardeinstellung ist diese Option nicht aktiviert und der Knoten gibt das Überlauf-Ergebnis eine Taktperiode vor dem Wert der Summe aus.

Um den Wert von Überlauf während derselben Taktperiode wie den Wert von Summe auszugeben, aktivieren Sie die Option.

Examples

In der folgenden Tabelle sehen Sie ein Beispiel dafür, wie dieser Knoten Summe + x in einer Anwendung berechnet, die Interleave-Daten aus zwei Kanälen kumuliert.

Taktperiode Eingang "x" Erläuterung von "x" Ausgang "Summe" Erläuterung von "Summe"
1 6 Kanal 1, Sample 1 - Akkumulator gibt während der ersten Taktperiode keine Summe aus, da eine Taktperiode für die Ausführung benötigt wird.
2 8 Kanal 2, Sample 1 6 (die Summierung von Kanal 1) Obwohl x Daten von Kanal 2 empfängt, gibt Summe die Berechnung der während der ersten Taktperiode von Kanal 1 empfangenen Daten aus. Während der ersten Periode betrug die Summe 0 und x war 6, so dass der Knoten 6 ausgibt.
3 44 Kanal 1, Sample 2 8 (die Summierung von Kanal 2) Obwohl x Daten von Kanal 1 empfängt, gibt Summe die Berechnung der während der 2. Taktperiode von Kanal 2 empfangenen Daten aus. Während der zweiten Periode betrug die Summe für den zweiten Kanal 0 und für x 6, so dass der Knoten 8 ausgibt.
4 5 Kanal 2, Sample 2 50 (die Summierung von Kanal 1) 6 (Summe von Taktperiode 2) + 44 (x von Taktperiode 3)
5 2 Kanal 1, Sample 3 13 (die Summierung von Kanal 2) 8 (Summe von Taktperiode 3) + 5 (x von Taktperiode 4)
6 3 Kanal 2, Sample 3 52 (die Summierung von Kanal 1) 50 (Summe von Taktperiode 4) + 2 (x von Taktperiode 5)
7 - Es gibt keine weiteren Daten von Kanal 1. 16 (die Summierung von Kanal 2) 13 (Summe von Taktperiode 5) + 3 (x von Taktperiode 6)

Zurücksetzen der Summierung

Setzen Sie den Eingang Laden auf TRUE, um eine neue Summierung zu beginnen. Setzen Sie dann Laden auf FALSE zurück für die Zeitdauer, während der Summe Werte kumulieren soll.

Daten aus mehreren Kanälen

Zwei Faktoren bestimmen, wie der Knoten Daten aus mehreren Kanälen verarbeitet:

  • Der Knoten benötigt immer eine Periode zum Berechnen einer Summe.
  • Dieser Knoten verwahrt für jeden Kanal separate interne Werte für Summe.

Bei einem Interleave-Datensatz aus zwei Kanälen bedeutet dieses Verhalten, dass während einer Periode, bei der x von Kanal 1 ist, der Knoten einen Summe-Wert für Kanal 2 ausgibt. Ein ausführliches Beispiel für dieses Verhalten finden Sie auf der Registerkarte Beispiele für diesen Knoten.

Leistungsbeeinträchtigung bei der Simulation

Dieser Knoten kann die Simulationslaufzeit erheblich erhöhen, wenn die Ausführung zeitgleich mit dem Herunterladen, Anhalten oder Ausführen des FPGA-VIs stattfindet.