Locate Mode Device Driver Interface Structure for Micro Channel Based Personal Computers
Original Publication Date: 1994-Sep-01
Included in the Prior Art Database: 2005-Mar-27
Cook, SE: AUTHOR [+6]
Described is an architectural implementation for Personal Computers (PCs) equipped with a Micro Channel* (MC) to provide a structure that enables already written device drivers to interface transparently to Small Computer System Interface (SCSI)-2 subsystems. The implementation is designed to have minimal impact on lower level device drivers.
Locate Mode Device Driver Interface Structure for Micro
an architectural implementation for Personal
Computers (PCs) equipped with a Micro Channel* (MC) to provide a
structure that enables already written device drivers to interface
transparently to Small Computer System Interface (SCSI)-2 subsystems.
The implementation is designed to have minimal impact on lower level
National Standards Institute (ANSI) SCSI-2
specification allows for multiple commands to be active to a device,
concurrently. The ANSI SCSI-1 specification allows only one command
to be active to a device at any given time. In order to support the
SCSI-2 specification, the Subsystem Control Block (SCB) move-mode
architecture is used to allow multiple commands to be active on the
adapter to any given device.
device drivers are written to the SCB locate mode
specification, the concept described herein provides a structure to
enable the transition of the device drivers into a SCSI-2 environment
in the form of a locate mode device driver interface structure to the
SCB move-mode architecture.
SCSI-1 adapters use the subsystem control block
locate mode architecture where an attention register byte specifies
the type of command in the first nibble and the type of device to
send the command in the second nibble. The second nibble is a
Logical Device Number (LDN) and is used to specify either the
adapter, or a device, on the SCSI bus. The SCSI-1 structure locate
mode uses an interrupt indication to communicate to the adapter.
When the attention register is written, the adapter is interrupted.
Fig. 1 shows the format for the attention register. A 1Xh attention
code specifies an immediate command. In this case, the command is a
four byte command and has been previously stored in four Input/Output
(I/O) byte ports on the adapter, called command interface registers
0, 1, 2 and 3 (CIR0, CIR1, CIR2 and CIR3). In cases of 3Xh, 4Xh and
0FXh attention codes, the command is a SCB and the CIRs contain a
32-bit address of the SCB.
At the end of
a command in the locate mode, an Interrupt Status
Register (ISR) is written by the adapter which will interrupt the
host system. Fig. 2 shows the format for the ISR. Once the
interrupt has been accepted by the host, the host sends a OEXh byte
which disables the interrupt and informs the adapter that the next
interrupt can be sent. The ISR describes whether the command was
completed with success, or whether the command was completed with a
failure. In the case of a OCXh code failure, a Termination Status
Block (TSB) signal is returned for SCB commands at the address
specified in the SCB command. The command status byte within the TSB
contains the information returned in the ISR. Fig. 3 shows the
format for the TSB and Fig. 4 shows the format for the SCB structure.
The SCB enable opt...