2 disconnect example – Seagate Ultra 320 User Manual

Page 155

Advertising
background image

Parallel SCSI Interface Product Manual, Rev. A

141

7.4.2

Disconnect example

In the single command example, the length of time necessary to obtain the data may require a time consuming
physical seek. In order to improve system throughput, the drive may disconnect from the initiator, freeing the
SCSI bus to allow other requests to be sent to other SCSI devices. To do this, the initiator must be reselectable
and capable of restoring the pointers upon reconnection. The drive must be capable of arbitrating for the SCSI
bus and reselecting the initiator. See Figure 20.

After the drive has received the READ command (and has determined that there will be a delay), it disconnects
by sending a DISCONNECT message and releasing BSY (goes to Bus Free state).

When the data is ready to be transferred, the drive reconnects to the initiator, the initiator restores the pointers
to their most recently saved values (which in this case are the initial values), and the drive continues (as in the
single command example) to finish the operation. The initiator recognizes that the operation is complete when
a Command Complete message is received.

If the drive elects to disconnect after transferring part of the data (e.g., while crossing a cylinder boundary), it
sends a Save Data Pointer message and a DISCONNECT message to the initiator and then disconnects.
When reconnection is completed, the initiator restores the current data pointer to the value it was immediately
before the Save Data Pointer message.

Figure 20. Disconnect example

Start

Bus Free

Arbitrate

Select with

Attention

Message Out

(identify)

Command

(ex. read)

End

Bus Free

Arbitrate

Reselect

Message In

(identify)

Data In

Message In

(disconnect)

Message In

(disconnect)

Bus Free

Arbitrate

Reselect

Message In

(identify)

Message In

(save ptrs.)

Status

Message In

(command

complete)

Bus Free

Data In

Advertising