BSFIFO – Binary Structure - Queueing serialize and deserialize
Block SymbolLicensing group: ADVANCED
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 |
[Back to top] [Up] [Next]
2024 © REX Controls s.r.o., www.rexygen.com