![]() |
FIFO Buffer |
Kahn Process Networks are examples for the asynchronous communication.
The data transfer between two processes takes place via a channel
which is realised by a FIFO buffer (first-in-first-out buffer).
A channel is unidirectional and interlinks just two processes. Hence each FIFO buffer
has just one input port and one output port.
When sending data via a channel to another process the data is stored in the buffer until
the target process is able to receive the data. No synchronisation between the sending process and
the receiving process is required.
Kahn defines the FIFO buffers as buffers with an infinite size.
In real process networks the buffers are implemented with a finite size because no
implementation of an unlimited buffer exist.
For this reason the buffers in the training module are defined by a finit size also.
Within this training module the channels between processes are represented by buffer
symbols like shown in Figure 5. The current content of the buffer is shown in the buffer
symbol. With the aid of these buffer symbols the process
of sending and recieving data can be made visible. For more details about the visualisation within this
training module
see chapter Visualisation.
Figure 5
The next subsection gives more details about the specification of processes. You will see how to add or remove a FIFO buffer within this training module.
Back | Next |