3 write cache – Maxtor D540X-4K User Manual

Page 58

Advertising
background image

Basic Principles of Operation

5-10

Maxtor D540X-4K 20.4/40.0/60.0/80.0 GB AT

Since typically 50 percent or more of all disk requests are sequential, there is a high
probability that subsequent data requested will be in the cache. This cached data can
be retrieved in microseconds rather than milliseconds. As a result, DisCache can
provide substantial time savings during at least half of all disk requests. In these
instances, DisCache could save most of the disk transaction time by eliminating the
seek and rotational latency delays that dominate the typical disk transaction. For
example, in a 1K data transfer, these delays make up to 90 percent of the elapsed time.

DisCache works by continuing to fill its cache memory with adjacent data after
transferring data requested by the host. Unlike a noncaching controller, Maxtor’s disk
controller continues a read operation after the requested data has been transferred to
the host system. This read operation terminates after a programmed amount of
subsequent data has been read into the cache segment.

The cache memory consists of a 369 K (approximately) DRAM buffer allocated to
hold the data, which can be directly accessed by the host by means of the READ and
WRITE commands. The memory functions as a group of segments with rollover
points at the end of cache memory. The unit of data stored is the logical block (that
is, a multiple of the 512 byte sector). Therefore, all accesses to the cache memory must
be in multiples of the sector size. All non-read/write commands force emptying of the
cache:



9TKVG %CEJG

When a write command is executed with write caching enabled, the drive stores the
data to be written in a DRAM cache buffer, and immediately sends a GOOD
STATUS message to the host before the data is actually written to the disk. The host
is then free to move on to other tasks, such as preparing data for the next data transfer,
without having to wait for the drive to seek to the appropriate track, or rotate to the
specified sector.

While the host is preparing data for the next transfer, the drive immediately writes the
cached data to the disk, usually completing the operation in less than 20 ms after
issuing GOOD STATUS. With WriteCache, a single-block random write, for
example, requires only about 3 ms of host time. Without WriteCache, the same
operation would occupy the host for about 20 ms.

WriteCache allows data to be transferred in a continuous flow to the drive, rather than
as individual blocks of data separated by disk access delays. This is achieved by taking
advantage of the ability to write blocks of data sequentially on a disk that is formatted
with a 1:1 interleave. This means that as the last byte of data is transferred out of the
write cache and the head passes over the next sector of the disk, the first byte of the
of the next block of data is ready to be transferred, thus there is no interruption or
delay in the data transfer process.

The WriteCache algorithm fills the cache buffer with new data from the host while
simultaneously transferring data to the disk that the host previously stored in the cache.

Advertising