A SCSI command descriptor block (CDB) is a sequence of 6, 10, 12 or 16 bytes sent by a host to a SCSI target with the bus in command phase. The CDB tells the drive what action should be performed. The final byte is known as the Control byte.
|
| 7 | 6 | 5 |
| 4 | 3 |
| 2 | 1 | 0 |
|
|
|
|
|
|
|
|
|
|
|
|
| 0 |
| Group Code |
|
|
|
|
| Operation Code |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
|
|
|
| Reserved (0) |
|
|
|
| |
|
|
|
|
|
|
|
|
| |||
| 2 | (MSB) |
|
|
|
|
| ||||
|
|
|
|
|
|
|
|
|
|
|
|
| n− 1 |
|
|
|
|
|
|
|
|
| (LSB) |
|
|
|
|
|
|
|
|
|
|
|
|
| n | Vendor Unique (0) |
| Reserved (0) |
|
| NACA(0) | Flag (0) | Link (0) | ||
|
|
|
|
|
|
|
|
|
|
|
|
There are a number of fields in a CDB which are common to all commands. These are shown in the following table.
Group Code and The operation code uniquely identifies the command. The top three bits of the Operation Code operation code are known as the group code and these define the length of the
command descriptor block:
| Group 0 | |
| Group 1 | |
| Group 2 | |
| Group 3 | |
| Group 4 | |
| Group 5 | |
| Group 6 | not supported |
| Group 7 | not supported |
|
| |
Reserved | A reserved field should always be set to zero. The drive checks reserved fields, and if | |
| one is | |
|
| |
A | ||
Parameter | byte of this field is the most significant. | |
|
| |
Control | The control field is mainly concerned with the use of linked commands. These are not | |
| supported by the LTO SCSI Command Set, so a CHECK CONDITION will be generated | |
| if this field is set to anything other than zero. | |
|
| |
This field is ignored by the firmware |
NACA | 0 | The Normal ACA flag is 0, indicating that it is not supported. |
|
|
|
Flag | 0 |
|
|
|
|
Link | 0 | Linked commands are not supported. |
Command descriptor block 35