BSFIFO – Binary Structure - Queueing serialize and deserialize

Block SymbolLicensing group: ADVANCED
Qt SVG Document Exported by REXYGEN Studio uBuff uMatIn uMatOut PUSH POP R1 yBuff yMatIn yMatOut iused ifree iE BSFIFO

Function Description
This block sequentially adds or removes data to/from the buffer (passed to the uBuff input). The elementary unit in a buffer is a column. All matrices (ie matrices or vectors fed to the inputs uBuff, uMatIn, uMatOut) must have the same column size in bytes. Data is organized as either a queue (if REV=off) or a stack (if REV=on). The behavior of the block depends on the inputs in this way:

  • If PUSH=on, the content of the uMatIn matrix (all defined columns) is inserted into the buffer.
  • If POP=on, the number of columns determined by the col parameter is removed from the buffer and this data is inserted into the uMatOut matrix (it must be of sufficient size).
  • If R1=on, the data is reloaded (mainly the number of valid columns) into the block buffer. Own data is transmitted by reference and is therefore shared. This signal has priority and blocks PUSH, POP signals.

Error states (e.g. mismatched matrix dimensions, insufficient space in some matrices, lack of data in the buffer) are indicated on the iE output and by a message in the SystemLog.

This block does not propagate the signal quality. More information can be found in the 1.4 section.

Input

uBuff

Input reference to a binary structure

Reference

uMatIn

Input reference to a matrix or vector

Reference

uMatOut

Input reference to a matrix or vector

Reference

PUSH

Enable push data

Bool

POP

Enable pop data

Bool

R1

Block reset

Bool

Parameter

OW

Overwrite oldest items in buffer

Bool

REV

Pop last pushed item first

Bool

col

Number of output (pop) columns  1

Long (I32)

Output

yBuff

Output reference to a binary structure

Reference

yMatIn

Output reference to a matrix or vector

Reference

yMatOut

Output reference to a matrix or vector

Reference

iused

Used bytes in buffer

Long (I32)

ifree

Free bytes in buffer

Long (I32)

iE

Error code

Error

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