Read (group 0, op. code 08) – Quantum Audio Travan 40 Tape Drive STT3401A User Manual
Page 75
ATAPI Interface
Chapter 5
Seagate Travan 40 Product Manual
Page 67
READ (Group 0, Op. Code 08)
The READ command transfers the specified amount of data from the tape drive to
the Initiator. The command terminates when one of the following conditions occurs:
•
The Transfer length specified in the CDB has been satisfied.
•
A Filemark or Setmark has been read.
•
Logical Early Warning or physical End-of-Media has been reached.
•
An unrecoverable read error has occurred (i.e., a command was issued to Read
data that could not be recovered by ECC or rereading).
•
An Illegal Length indication occurred (unless the SILI bit is set and the Illegal
Length is an under length condition).
•
End of Recorded Data is encountered.
When the command terminates for a reason other than the first, the residue can be
obtained with a REQUEST SENSE command.
CDB for READ Command
Data Bits
Byte
7
6
5
4
3
2
1
0
Hex
0
0
0
0
0
1
0
0
0
08
1
0
0
0
0
0
0
SILI
FBM
0X
2
3
4
MSB
Transfer Length
LSB
XX
XX
XX
5
0
0
0
0
0
0
0
0
00
SILI: Suppress Illegal Length Indicator (SILI) applies only to the variable block length
mode, which is not supported by ATAPI-interface tape drives. The combination of the
SILI bit and the FBM bit both set to 1 causes Illegal Request (Sense Key 5h).
NOTE: If ILI condition exists for a Fixed Block Transfer, the Illegal Length block will
not be transferred.
FBM: Fixed Block Mode (FBM) is associated with the Transfer Length field. When
set to 1, the transfer length is given in blocks as specified in the MODE SELECT
data.
NOTE: If the block length on tape is different than the block length specified in
MODE SELECT data, an Illegal Length error is declared.
Transfer Length: If FBM is set to 1, this field specifies the number of blocks to be
transferred to the Initiator.
When Reading, the STT3401A keeps track of “soft” read errors (corrected blocks)
and data overruns. These error counters are available by means of the REQUEST
SENSE command.
Data Error Counter: This counter is incremented each time a block must be
corrected using ECC. It is cleared when any command is issued that terminates the