Drive Operations. Conner CFP2105S, CFP2105 series, CFP2105E, CFP2105W


Add to my manuals
90 Pages

advertisement

Drive Operations. Conner CFP2105S, CFP2105 series, CFP2105E, CFP2105W | Manualzz

Drive Operations

3

Functions of the Drive

This chapter describes certain operational aspects of the drive, including discussions of:

• drive operational modes

• error correction

• read error recovery

• downloadable microcode

• buffer management

Drive Operational Modes

For the purpose of defining power requirements the following modes have been defined:

••

Read/Write Mode without seeking or head switching data is read from or written to the disk continuously.

••

Seek Mode (100%) occurs when the drive is issued continuous seek commands and the actuator is in motion

••

Seek Mode (40%) occurs when 1/3 stroke seeks are performed at a 40% seek duty cycle. While the actuator is not in motion the drive is reading or writing.

••

Idle Mode occurs when the drive is not reading, writing, or seeking. The motor is up to speed and the Drive Ready condition exists. The actuator is residing on the last-accessed track.

••

Standby Mode occurs when the motor is stopped and the actuator is latched in the landing zone. The drive will enter Standby mode after poweron reset if the Disable Spin jumper is installed or the DSPN bit in MODE

SELECT page 0 is set. A STOP UNIT command will also place a drive into

Standby Mode. The drive will spin up and go into Idle mode when a START

UNIT command is issued or on a timed basis by SCSI ID if the SDLY bit is set in MODE SELECT page 0. Refer to the MODE SELECT and MODE

SENSE commands in the Eleventh Generation SCSI Interface Manual for additional details.

••

Spin-Up Mode occurs while the drive's spindle motor is being spun up to speed after initial power on or after exiting Standby Mode.

Technical Reference Manual Page 21

Chapter 3 Drive Operations

Data Error Correction

The drive uses a three way interleaved 96-bit Reed-Solomon code to perform error correction. An additional 48-bit Cyclic Redundancy Code (CRC) provides additional miscorrection detection. For each 512-byte block, the on-the-fly error correction polynomial is capable of correcting:

• one error burst of up to 41 bits in length

• two error bursts each up to 17 bits in length

The miscorrection probability is less than 1 bit in 10

24

bits transfered.

Downloadable Microcode

The SCSI interface code is split into two parts which are designated as ROM or

RAM code. The ROM code contains the basic SCSI operating code and code to support commands such as INQUIRY, TEST UNIT READY, REQUEST SENSE,

START/STOP UNIT, etc., which may have to be responded to prior to the drive being in a ready state. The part of the interface code referred to as RAM code resides on an area of the disk which is reserved to the drive and is not directly accessible through the interface. This code is referred to as RAM code because it is read from the disk and is loaded into static RAM after power is applied to the disk, as soon as the drive is able to read from the disk.

The RAM code consists of a resident portion which is loaded after a Power On

Reset. Two different versions of RAM code overlays also reside on the disk. The read look ahead code overlay is the default and is loaded into RAM during the initial power-on. If a Queue Tag message is received by the drive, the drive will execute the command and while it is in Status Phase, will read the Queuing code overlay from the disk and load it into the RAM. This operation takes about 600 milliseconds, after which the drive will complete the command by sending the status. The drive will continue to operate with Queuing code residing in RAM until the next Power On Reset.

Refer to the next section for a discussion of the buffer management implications for the different RAM codes.

The RAM code may be upgraded on the disk via the factory serial port or through the interface using the WRITE BUFFER command. Refer to the

WRITE BUFFER command in the Eleventh Generation SCSI Interface Manual for a discussion of the procedure.

Page 22 Filepro CFP2105 Series

Drive Operations Chapter 3

Buffer Management and Command Execution

The drive contains a 512Kbyte segmentable buffer which is dynamically configured to adapt to the particular drive configuration or operating environment.

Read Look Ahead Code

The Read Retention RAM code executes commands sequentially as they are received from the initiator(s). Commands from multiple initiators may be queued and overlapped so that the subsequent command can be parsed while the current command is being executed.

The drive's 512K byte buffer is configured as four segments. These segments allow the drive to cache sequential data from four separate areas on the disk.

This can significantly improve performance in any environment in which multiple disk files are kept open simultaneously and operated upon in some interleaved fashion.

The Look-Ahead RAM code segments the 512 KB buffer into four 130,548 byte

(FD

H

blocks) segments. The remainder of the RAM is used by the microprocessor as a scratch pad area and for non read or write data information transfers. The buffer block size is equal to the data block size (typically 512 B) plus the 4 bytes of buffer CRC appended to each block. (refer to the Electrical

Design Feature section in Chapter 1 for a description of the buffer CRC).

Buffer operations default on Power-up to Read Look Ahead enabled and Write

Caching disabled. MODE SELECT page 8, byte 2, bit 0 (RCD), when set to one disables the read look-ahead cache function and bit 2 (WCE), when set to one enables write cache. In addition, MODE SELECT page 8, byte 3 contains two fields which control the retention priority for reads and writes. Refer to the

Eleventh Generation Disk Drive SCSI Interface Manual for additional details.

When a read command is received by the disk drive, the cache tables are searched to determine if the requested data is contained in any of the four cache segments (a cache hit). If there is no cache hit, the Least Recently Used (LRU) segment is selected and a read from disk is initiated into that segment which is now considered the Active Segment. The retention of data already transferred to the host and read look ahead in the Active Segment buffer is controlled by the state of the Read Retention Priority.

Technical Reference Manual Page 23

Chapter 3 Drive Operations

Read Retention On (Read Retention Priority = 0 or F):

The interface processor initiates a full segment read of 253 sectors (FD

H

blocks) to the background processor. There are three different situations which would be considered a cache hit on a subsequent read.

Full: All of the data requested is transferred from the buffer segment and retained.

Partial: Some but not all of the data is cached in a buffer segment. If the cached data is in the Active Segment and the remaining data is part of the full segment read, the drive will transfer the requested data from the buffer as the background process fills it. If the cached data is in the Active

Segment but the remaining data is not part of the full segment read, the drive will turn off read retention until the next Active Segment miss occurs and issues a new read (forever) to the background process. This allows the drive to adapt to long sequential reads even in read retention mode. If the data is part of an Inactive Segment, a new full segment read is initiated, making this the Active Segment.

Potential: If none of the data is in the Active Segment, but is part of the full segment read, the drive will transfer the data as it becomes available.

Read Retention Off (Read Retention Priority = 1): The interface processor initiates a "read forever" command to the background processor and the buffer segment is treated as a circular buffer which is back filled as sectors are transferred to the host. There are three different situations which would be considered a cache hit on a subsequent read.

Full: All of the requested data is cached in a buffer segment. If it is the

Active Segment, the data will be transferred to the host and refilled with next sequential data. If the data in an Inactive Segment, the data is transferred to the host and retained.

Partial: This is when some, but not all of the data is cached in a buffer segment. If the data is in the Active Segment, data is transferred to the host as the background process fills the buffer and the "read forever" is allowed to refill the buffer. If the data in an Inactive Segment, the cached data is transferred and a new read operation is initiated for the remaining data, making this the Active Segment.

Potential: None of the data is cached. The active segment is checked and if the requested data is within 63 sectors of being read, the drive will allow the

"read forever" operation to continue and the data is transferred to the host when it is available.

Page 24 Filepro CFP2105 Series

Drive Operations Chapter 3

Write Caching

Write Caching allows multiple write commands operating on sequential blocks to be written to the medium without losing a motor revolution between commands.

Write caching is enabled by setting the WCE bit in MODE SELECT page 8 to one. The WCE bit is only valid while the Read Look Ahead code is loaded. The

WCE bit is ignored when the Tagged Command Queuing code is in RAM because write coalescing will be active.

The drive will send good status and COMMAND COMPLETE message following the data out phase of a cached write command. The drive will cache writes when the following conditions are met:

Two or more write commands (Op Code 0A

H

or 2A

H

) execute consecutively without an intervening command.

The write commands address consecutive logical block ranges.

At least one logical block of data has been received in the buffer from the second write command in time to allow the medium to be written before an additional spindle revolution would be required.

Both writes are from the same initiator.

Neither write is a linked command.

If the drive encounters an error during a cached write operation, the drive will respond by:

If AWRE (MODE SELECT page 01

H

) is 0: the drive will report a CHECK

CONDITION on the next command and the response from a REQUEST SENSE will be a deferred error. (Asynchronous event notification is not supported by this drive.) Refer to the Eleventh Generation SCSI Interface Manual for additional details.

If AWRE (MODE SELECT page 01

H

) is set to 1: the drive will attempt to dynamically reassign the block of data and complete the operation. If the reassignment fails, the drive will continue to reassign the block until all the space in the grown defect list is filled (147 sectors, maximum).

Technical Reference Manual Page 25

Chapter 3 Drive Operations

Tagged Command Queuing

The drive, operating using the Tagged Command Queuing code, can queue up to

32 commands. Commands in the queue which involve seeks are re-ordered using a Scan (elevator seek methodology). Read and Write commands are coalesced (combined into a single operation to the background processor) to minimize inter processor communication overhead and reduce mechanical motion.

Seek Re-ordering

Seeks are re-ordered using the Scan or what is sometimes referred to as the elevator seek method. Seeks already in the queue are re-ordered so they can be executed sequentially on a sweep toward the inner diameter (ID) or the outer diameter (OD) of the disk. Any new seeks entering the queue ahead of the sweep is ordered for execution during the current sweep. Any new seeks entering the queue behind the current sweep are held for re-ordering during the reverse sweep. When there are no more commands in the queue ahead of the current sweep, the direction of the sweep is reversed.

Seek re-ordering is controlled by Message Code (Simple, Head of Queue or

Ordered Queue) during the Message Phase. Re-ordering of seeks issued with a

Simple Queue Tag message may also be restricted using the Queue Algorithm

Modifier bits in MODE SELECT page 0A

H

. Refer to the Eleventh Generation

SCSI Interface Manual for additional information on Messages and MODE

SELECT page 0A

H

.

Buffer Management

The 512K byte buffer is treated by the queuing code as two 240KB buffers (F0

H sectors) to maximize coalescing. Look ahead reads are performed by the drive when there are no commands in the queue awaiting execution. Look ahead reads are not performed when there are commands in the queue since another command will be waiting for execution as soon as the current command completes and because the queue affords pre-knowledge of subsequent commands instead of having to anticipate them.

Sequential read or write commands are coalesced into single commands to the background processor. On a read operation, the data associated with each queue tag is transmitted to the host as the buffer is filled by the background processor.

On write operations, the drive will connect to the initiator(s), transmit the data into the buffer and disconnect; coalescing sequential data in the buffer before initiating the write to the background processor. The drive will reconnect with each of the writes, using the queue tags, completing the command after the data has been written to the disk. This operation provides the performance of write caching without the exposure of completing the command prior to writing the data to the disk.

Page 26 Filepro CFP2105 Series

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals