C141-E039-01EN
1 - 21
1.4.2
Tagged Queuing
Through the tagged queuing function, the IDD can receive multiple commands from the same
INIT or from different INITs until the command queue is full. The number of commands that
it is possible to receive by the IDD is 128 maximum, without relation to the INIT. When the
IDD receives a new command, if the command queue is full, it responds to the new command
with the QUEUE FULL status.
The IDD manages the command queue, but it is possible for the INIT to add or clear
commands from the queue. When adding a command to the queue, it is possible for the INIT
to specify the order in which commands should be executed or the command that should be
executed next to the IDD.
If the disconnect right is not recognized in the IDENTIFY message of a tagged command, the
IDD responds with a BUSY status.
Through the QUEUE TAG message, the INIT can attach a unique tag (ID) to each command.
The INIT can set that command’s pointer correctly by the tag sent when the IDD reconnects.
One INIT can issue multiple commands to the IDD only when the respective commands have
unique tags.
If an ORDERED QUEUE TAG message is used, the IDD executes the other commands not
included in the ORDERED QUEUE TAG message in the order in which they are received.
All commands received with a SIMPLE QUEUE TAG message before commands are received
with an ORDERED QUEUE TAG message are executed before those commands received
with the ORDERED QUEUE TAG message. All commands with SIMPLE QUEUE TAG
messages received after commands received with the ORDERED QUEUE TAG message are
executed after the commands received with the ORDERED QUEUE TAG message.
Commands received with a HEAD OF QUEUE TAG message are registered at the top of the
execution wait queue and are executed after execution of the current command is completed
by the IDD. Processing of the command currently being executed is not interrupted. When
commands with the HEAD OF QUEUE message are received continuously, the IDD first
executes the command which was received last.
During execution of a tagged command by the IDD, or during queuing, except when the IDD
is in the sense hold state, the same INIT must issue untagged commands.
The IDD handles a series of linked commands as if it were processing a single command and
processes the series of commands by the tag received with the top command. A command
with a HEAD OF QUEUE TAG received before processing of a series of linked commands is
completed is executed by the IDD after all the linked commands in the series have been
executed.
The RESERVE and RELEASE commands should be issued together with an ORDERED
QUEUE TAG. If the HEAD OF QUEUE TAG message is used with these commands,
previously issued commands and reserved states may become redundant.
The TEST UNIT READY and INQUIRY commands do not influence the state of the IDD, so
they can be issued together with a HEAD OF QUEUE TAG message.