ACC-72EX User Manual
DPRAM Data Processing
64
Input/Output Data Image
Hilscher products support two methods for accessing the Input/Output Data Image:
DPM (Dual-Ported Memory) Mode
DMA (Direct Memory Access) Mode
However, the modules used in ACC-72EX only support the DPM mode, and only Hilscher PCI cards
support DMA mode.
In DPM Mode, handshaking between the UMAC (host) program and netX is required for any data
transfer.
Process Data Handshake Modes
The netX firmware allows controlling the transfer of data independently for inputs and outputs. Therefore,
the process data handshake is carried out individually for input and output image. The handshake cells are
located in the handshake channel.
Mode
Controlled by
Consistency
Supported by
Buffered
Host (Application/Driver)
Yes
Master & Slave Firmware
Buffered, Host Controlled Mode
The Buffered data transfer mode can be used for both master- and slave- type devices. In “buffered”
mode, the protocol stack handles the exchange of data between internal buffers and the process data
images in the dual-port memory with the application via a handshake mechanism. Once copied from/into
the input/output area, the host application gives control over the dual-port memory to the protocol stack.
Control is given back to the host application when the protocol stack has finished copying, and so on.
Note
The network cycle and the task cycle of the host application are not
synchronized, but are consistent.
If the host application is faster than the network cycle, it might be
possible that data in the output buffers is overwritten without ever
being sent to the network. As for the other direction, the host
application may read the same input values over several read cycles.
If the host application is slower than the network cycle, the protocol
stack overwrites the input buffer with new data received from the
network, which were never received by the host application. The
output data on the network will be the same over several network
cycles.
For each valid bus cycle, the protocol stack updates the process data in the internal input buffer. When the
application toggles the appropriate input handshake bit, the protocol stack copies the data from the
internal IN buffer into the input data image of the dual-port memory. Now the application can copy data
from the dual-port memory and then give control back to the protocol stack by toggling the appropriate
input handshake bit. When the application/driver toggles the output handshake bit, the protocol stack
copies the data from the output data image of the dual-port memory into the internal buffer. From there,
the data is transferred to the network. The protocol stack toggles the appropriate handshake bits back,
indicating to the application that the transfer is finished and a new data exchange cycle may start. This
mode guarantees data consistency over both the input and output areas.