• Keine Ergebnisse gefunden

Points 2 and 3 are repeated until the total number of blocks specified in the current Segment Descriptor Block

Im Dokument == TDC 3600 SERIES (Seite 90-94)

has been transferred (this will sometimes mean that the last ReadIWrite command will request less blocks than indicated by the Copy Threshold).

S) Points 1.2, 3 and 4 are repeated for each Segment De-scriptor in the Segment DeDe-scriptor List.

NUTt::

In future

fmnware

releases the mc

3620/40/60

Drive may not

check the block length for every Segment Descriptor as long as

the direct access ID and LUN are the same as for previous

Segments.

TANDBERG DATA 9-10 Software Interface

9.3.1.3. Block Sizes

The block size used on the Drive tape is always 512 bytes. This.

is as defined by the tape standards (24. 120 and QIC-150). However, with some restrictions the Drive is able to copy data to/from direct access devices with block sizes different from 512.

The following block sizes are supported:

• 256 bytes

• 512 bytes

• 1024 bytes

• 2048 bytes

• 4096 bytes

The IDC 3620/40/60 Drive uses a "double method" to deter-mine the actual block size of the direct access device. Before processing a new Segment Descriptor. the Drive first issues a Read Capacity (25H) command. If the direct access device sup-ports this command it will respond by sending 8 bytes of param-eter data back to the Drive. The last 4 bytes hold the block size in bytes. This block size is used for all data transfers for the cur-rent segment. If however the direct access device does not sup-port the Read Capacity command it will tenninate this command with a Check Condition status. The Drive will then use the sec-ond method to determine the block size.

First any pending sense infonnation are cleared by issuing a Re-quest Sense command. 4 bytes of sense data are reRe-quested. Then a Read command with the Transfer Length set to 1 (read 1 block) is sent to the direct access device (the logical address used is 0). The Drive will transfer one data block and then count the number of bytes transferred.

Regardless of the method used. the Drive will check if the block size found is legal (256. 512, 1024. 2048 or 4096 bytes).

The IDC 3620/40/60 Drive does not support Inexact Segments.

This means that for every Segment Descriptor the total amount of data transferred must be an integral number of blocks on both the direct access device and the Drive. the Drive handles inexact segment errors in two different ways depending on what side the error occurred (see also Section 9.3.1.4. Error Handling). When an inexact segment error has been detected the entire Copy operation is aborted.

TANDBERG DATA

Description

Bad Command Block

9-11 Software Interface

9.3.1.4. Error Handling

Two classes of error conditions may occur during a Copy opera-tion; Management Errors and Data Transfer (or Target) Errors.

Management Errors

These errors are detected by the management part of the Drive.

The management pan are responsible for checking the Copy command and parameter blocks. It is the management part that interprets and splits the Segment Descriptors into multiple ReadIWrite commands. When a Management Error has been detected, the Drive reacts in the following way:

1) Tenninates the Copy command with Check Condition Status.

2) Sets the V ADD bit. Sets the Sense Key in the Extended Sense Block to the code that describes the error condition.

3) Sets the Segment Number in the Extended Sense byte 01 to the number of the segment where the error occurred.

4) Updates the Information Bytes with the difference be-tween the requested and the actually processed blocks/-bytes for the current segment.

Sense Error Ext.

Key Class Error

05 20 02

Illegal Parameter List Length 05 20 03

No Disconnect Allowed 05 20

OE

Illegal Copy Function 05 20 23

Bad Header 05 20 24

Header Too Short 05 20 25

Logical Address Too Large 05 20 26

Bad IDorLUN 05 20 27

Partial Descriptor Received 05 20 28

Parity Error in Parameter/Data 04 00 2B .

Target Selection Timeout 04 00 2C

Table to be continued on the next page:

TANDBERG DATA 9-12 Software Interface

Description Sense Error Ext.

Key Class Error

Target Phase Sequence Error 04 00 2D

Target Ulegal Block Size 05 00 2E

Inexact Segment: Odd Number 05 20 47

Inexact Segment: Tape Residual 05 20 48

Inexact Segment Errors can be detected for both direct access block counts and tape block counts.

When the current block size is 256 and the number of blocks re-quested for copy is odd, the Drive will flag an Inexact Segment Error by immediately tenninating the Copy operation. This can take place both during BACKUP and RESTORE. No data is transferred for the erroneous segment. Check Condition Status is sent to the original Initiator. The Sense Key will read Illegal Re-quest (05H).

When theblock size is larger than 512, an Inexact Segment Er-ror will be flagged if the residual number of blocks on the tape is to small to fill a complete direct access block. This can only happen during RESTORE if the data transfer part of the Drive encounters an unexpected Filemark, End of Recorded Area (BLANK CHECK) or a Bad Block. All data up to the last resid-ual block(s) will be transferred to/from the direct access device.

The last incomplete block is not transferred. Check Condition Status is sent to the original Initiator. The Sense Key will read Illegal Request. The tape position will be immediately after the last transferred tape block. This means that there will be one or more (max. 7) tape blocks left on the tape. It is up. to the Initiator to recover these blocks. The real cause of error can then be dis-covered.

NOTE:

It is up to the original Initiator to generate tapes (to end a tape Write operation or write Filemarks) so that an Inexact Segment Error like this does not occur. Nonnally this is no problem as long as the direct access device used during RESTORE has the same block size as the one used during BACKUP for a 'particular tape.

TANDBERG DATA 9·13 Software Interface

Data Transfer Errors

Im Dokument == TDC 3600 SERIES (Seite 90-94)