Appendix 4 fifo data output flow chart, Overview of the fifo buffer, Example of fifo buffer operation – Yokogawa Touch Screen GP20 User Manual
Page 108
App-6
IM 04L51B01-17EN
Appendix 4 FIFO Data Output Flow Chart
Overview of the FIFO Buffer
The GX/GP internal memory is equipped with a dedicated FIFO (First-In-First-Out) buffer for
outputting measured data. Measured data is written to the buffer at every scan interval. The
PC can continuously retrieve the most recent measured data from the FIFO buffer.
The size of the internal memory allocated for the FIFO buffer varies depending on the
model. The number of data entries that the FIFO buffer can store varies depending on the
number of channels and scan interval. The number of data entries that the FIFO buffer can
store and the data length can be determined with the following formula.
Data entries = 2000000 ч {16 + (12 Ч [number of channels])} (fractions truncated)
Data length = [data entries] × [scan interval]
Example
If there are 10 I/O channels, 10 math channels, and 10 communication
channels, and the scan interval is 100 ms, the number data entries will be
5319, and the data length will be 531.9 seconds or 8.865 minutes.
Example of FIFO Buffer Operation
The following example shows the case when the scan interval is 1 second and the FIFO
internal memory size is for 8 scan intervals.
Most recent write position
(serial number starting from 1)
Block 1
Block 2
Block 3
Block 4
Block 5
Block 6
Block 7
Block 8
Writing of Measured Data in the FIFO Buffer
Writing to the FIFO buffer takes place every scan interval. If measured data is written to
block 8, the most recent value will be written to block 1 in the next scan interval, overwriting
the old value. This is called FIFO wraparound.
On the other hand, the most recent write position is managed using serial numbers starting
with 1. The serial number does not return to 1 even when a FIFO wraparound occurs.
Reading Measured Data
The FFifoCur,0 command is used to read measured data. The read start position and read
end position are specified using serial numbers. You can use the FFifoCur,1 command to
read the serial numbers for the positions that data can be read from.