SPLIT_LWORD_INTO_QUARTERS
🎧 Podcast
Einleitung
Der Funktionsblock SPLIT_LWORD_INTO_QUARTERS dient zur Extraktion der 32 Quarter Bytes (je 8 Bit) aus einem LWORD (64 Bit). Dies ermöglicht die gezielte Verarbeitung einzelner Byte-Segmente innerhalb eines langen Wortes.
Schnittstellenstruktur
Ereignis-Eingänge
REQ: Startet die Verarbeitung des EingangswertesIN.
Ereignis-Ausgänge
CNF: Bestätigt die erfolgreiche Verarbeitung und liefert alle 32 Quarter Bytes.
Daten-Eingänge
IN(LWORD): Das 64-Bit-Eingangswort, das in Quarter Bytes aufgeteilt werden soll.
Daten-Ausgänge
32 Ausgänge vom Typ BYTE:
QUARTER_BYTE_00bisQUARTER_BYTE_31: Die extrahierten 8-Bit-Segmente des Eingangswortes.
Adapter
Keine Adapter vorhanden.
Funktionsweise
Der Funktionsblock nutzt Bitoperationen (AND und Rechts-Shift) in Kombination mit Konstanten (quarterconst::LWORD_QUARTER_xx und quarterconst::SHIFT_QUARTER_xx), um jedes der 32 Quarter Bytes aus dem Eingangs-LWORD zu isolieren. Jedes Quarter Byte wird anschließend in einen separaten BYTE-Ausgang geschrieben.
Technische Besonderheiten
Verwendet spezielle Bitmasken und Verschiebungskonstanten für präzise Extraktion
Arbeitet mit dem größten IEC-Datentyp LWORD (64 Bit)
Liefert alle 32 Quarter Bytes parallel in einem Durchlauf
Zustandsübersicht
Idle: Wartet auf REQ-Ereignis
Processing: Extrahiert alle Quarter Bytes
Output: Trigger CNF-Ereignis mit allen Ausgangswerten
Anwendungsszenarien
Verarbeitung von langen Datenwörtern in Kommunikationsprotokollen
Extraktion einzelner Parameter aus gepackten Datenstrukturen
Bitweise Analyse von Sensor- oder Steuerdaten
⚖️ Vergleich mit ähnlichen Bausteinen
Im Gegensatz zu einfachen BYTE-Extraktionsblöcken kann dieser FB alle 32 Segmente gleichzeitig verarbeiten
Effizienter als mehrere hintereinandergeschaltete Extraktionsblöcke
Spezialisiert auf die Verarbeitung von LWORD-Datentypen
Fazit
Der SPLIT_LWORD_INTO_QUARTERS-Funktionsblock bietet eine hochoptimierte Lösung für die Aufteilung von 64-Bit-Wörtern in ihre einzelnen Byte-Komponenten. Durch die parallele Verarbeitung aller Segmente eignet er sich besonders für Anwendungen, die eine effiziente Verarbeitung großer Datenwörter erfordern.