TARGET ROLE ROUTINES
6-6
6
the user command table. The service of this command is provided by you.
This service is provided by a custom SCSI sequence -- TARGET sequence,
which is described in the next section.
IMPLEMENTATION NOTE: The TARGET LUN is deciphered from the
identify message sent immediately after the selection phase. If the LUN
identified during this phase is not enabled by you, the firmware rejects the
message (by sending the MESSAGE REJECT message) and then
disconnect from the bus. If an identify message is rejected, it is a signal
that some other LUN on this MVME147 TARGET address must be
enabled, otherwise the SCSI firmware would not have responded to the
selection in the first place. If a selection interrupt is ignored because the
TARGET role was not enabled in the firmware, the firmware ignores the
interrupt after the SEL signal is removed from the bus. In any case, if this
happens, the SCSI bus is tied up unless the initiator times out and gives up
by removing its signals from the bus.
Servicing the TARGET Requests
After a particular LUN is enabled for TARGET role, a selection interrupt
begins the interrupt-driven service for TARGET role and the TARGET role
stays enabled until the system is reinitialized. (The selection interrupt enable
through the WD33C93 is turned on and only reinitialization turns the
interrupt enable off. Disabling the selection interrupt is accomplished by
clearing the select enable register in the WD33C93 and/or turning the PCC
SCSI interrupt enable off through the module control register.) Issuing a board
reset also disables TARGET role on the MVME147.
If TARGET role is enabled, a selection of the MVME147 causes the firmware to
respond to the selection by asserting the BSY signal. The following sequence
is typical of SCSI rules.
If the ATN line is asserted with SEL, the firmware takes the SCSI bus to the
message-out phase and reads the message. The firmware then takes the SCSI
bus to the command phase, reads the command (6, 10, or 12 bytes), and stores
the command count and the command in the command table. If the received
message is "identify" and if the identified LUN has been enabled, the firmware
continues and save the messages and command in command table area. No
command interpretation is done in the firmware; this job is left for the user
application. If disconnect is allowed then next phase directed by the firmware
is the message-in phase: the DISCONNECT message is sent. Then a bus
disconnect is performed by releasing the BSY signal. The first TARGET role