BSFIFO – Binární Struktura - serializace a deserializace do cyklického bufferu

Symbol blokuPotřebná licence: ADVANCED
Qt SVG Document Exported by REXYGEN Studio uBuff uMatIn uMatOut PUSH POP R1 yBuff yMatIn yMatOut iused ifree iE BSFIFO

Popis funkce
Tento blok postupně přidává a vybírá data do velkého bufferu (přivedeného na vstup uBuff). Základní jednotka v bufferu je sloupec. Všechny matice (tj. matice nebo vektory přivedené na vstupy uBuff, uMatIn, uMatOut) musí mít stejnou velikost sloupce v bajtech. Data jsou organizována buď jako fronta (pokud REV=off) nebo jako zásobník (pokud REV=on). Chování bloku závisí na vstupech tímto způsobem:

  • Pokud je PUSH=on, vkládá se do bufferu obsah matice uMatIn (všechny definované sloupce).
  • Pokud je POP=on, vyjímá se z bufferu počet sloupců určených parametrem col a tato data se vloží do matice uMatOut (musí mít dostatečnou velikost).
  • Pokud je R1=on, data se znovu načtou (hlavně počet platných sloupců) do bufferu bloku. Vlastní data se předávají odkazem a jsou proto sdílená. Tento signál je prioritní a blokuje signály PUSH, POP.

Chybové stavy (např. neodpovídající si rozměry matic, nedostatečné místo v některé matici, nedostatek dat v bufferu) jsou indikovány na výstupu iE a zprávou v SystemLog.

Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

uBuff

Vstupní reference na binární strukturu

Reference

uMatIn

Vstupní reference na matici nebo vektor

Reference

uMatOut

Vstupní reference na matici nebo vektor

Reference

PUSH

Povolení vkládání do bufferu

Bool

POP

Povolení vyčítání z bufferu

Bool

R1

Reset bloku

Bool

Parametr

OW

Režim přepisu nejstarších položek

Bool

REV

Vyčítání posledních vložených položek nejdříve

Bool

col

Počet vyčítaných sloupců  1

Long (I32)

Výstup

yBuff

Výstupní reference na binární strukturu

Reference

yMatIn

Výstupní reference na matici nebo vektor

Reference

yMatOut

Výstupní reference na matici nebo vektor

Reference

iused

Počet použitých bajtů v bufferu

Long (I32)

ifree

Počet volných bajtů ve bufferu

Long (I32)

iE

Kód chyby

Error

2024 © REX Controls s.r.o., www.rexygen.com