Model 6517B Electrometer Reference Manual
Appendix D: IEEE-488 bus overview
6517B-901-01 Rev. C / August 2015
D-5
Handshake lines
The bus handshake lines operate in an interlocked sequence. This method ensures reliable data
transmission regardless of the transfer rate. Generally, data transfer occurs at a rate determined by
the slowest active device on the bus.
One of the three handshake lines is controlled by the source (the talker sending information), while
the remaining two lines are controlled by accepting devices (the listener or listeners receiving the
information). The three handshake lines are:
DAV
(data valid): The source controls the state of the
DAV
line, which indicates whether data bus
information is valid for any listening lines.
NRFD
(not ready for data): The acceptor controls the state of
NRFD
. It is used to signal to the
transmitting device to pause the byte transfer sequence until the accepting device is ready.
NDAC
(not data accepted):
NDAC
is also controlled by the accepting device. The state of
NDAC
tells the
source whether or not the device has accepted the data byte.
The complete handshake sequence for one data byte is shown in the below figure. Once data is
placed on the data lines, the source checks to see that
NRFD
is high, indicating that all active devices
are ready. At the same time,
NDAC
should be low from the previous byte transfer. If these conditions
are not met, the source must wait until
NDAC
and
NRFD
have the correct status. If the source is a
controller,
NRFD
and
NDAC
must be stable for at least 100nsec after
ATN
is set true. Because of the
possibility of a bus interruption, many controllers have time-out routines that display messages if case
the transfer sequence stops for any reason.
Once all
NDAC
and
NRFD
are properly set, the source sets
DAV
low, signaling to accepting devices
that the byte on the data lines is now valid.
NRFD
then goes low, and
NDAC
goes high once all devices
have accepted the data. Each device releases
NDAC
at its own rate, but
NDAC
is not released to go
high until all devices have accepted the data byte.
The sequence just described is used to transfer both data, talk and listen addresses, as well as
multiline commands. The state of the
ATN
line determines whether the data bus contains data,
addresses, or commands (as described in the following paragraph).
Figure 143: IEEE-488 handshake