S-link drivers for Windows NT

Nata Kruszynska

NIKHEF, November 1997


Hardware:

Simple S-link PCI devices are based on the AMCC S9533 PCI interface and their purpose is to provide a uni-directional dedicated connection, sending big chunks of data from the source device on one PC to a destination device on another PC. The S-link specification defines four additional return lines. Data can be sent via these lines by writing to OMB1 of the AMCC controller and can be received by reading IMB4 byte 3 on another sice of the S-link connection. The formats and line assignment differ between source and destination. Both devices are using only AMCC registers mapped into single memory region.

Current implementation:

There are two drivers - source slink and destination slink. Each can cover more than one "minor" device and can control more than one S-link device. The transfer of data is uni-directional. This means that the source driver supports writing data and returns error on an attempt to read data, whereas the destination driver can read, but can not write. The drivers are kept as simple as possible. Both establish an AMCC driver for a device for which the AMCC chip is memory-mapped in a single memory region. The part of the required functionality not implemented in drivers is left to a supporting library and to the user's programs on both sides of the S-link connection. In the future, a higher level driver could be provided, when experience with the current implementation makes this desirable.

General features: