Seagate ST33000651SS Constellation ES.2 SAS Product Manual - Page 21

Caching write data, Prefetch operation

Page 21 highlights

5.5.1 Caching write data Write caching is a write operation by the drive that makes use of a drive buffer storage area where the data to be written to the medium is stored while the drive performs the Write command. If read caching is enabled (RCD=0), then data written to the medium is retained in the cache to be made available for future read cache hits. The same buffer space and segmentation is used as set up for read functions. The buffer segmentation scheme is set up or changed independently, having nothing to do with the state of RCD. When a write command is issued, if RCD=0, the cache is first checked to see if any logical blocks that are to be written are already stored in the cache from a previous read or write command. If there are, the respective cache segments are cleared. The new data is cached for subsequent Read commands. If the number of write data logical blocks exceed the size of the segment being written into, when the end of the segment is reached, the data is written into the beginning of the same cache segment, overwriting the data that was written there at the beginning of the operation; however, the drive does not overwrite data that has not yet been written to the medium. If write caching is enabled (WCE=1), then the drive may return Good status on a write command after the data has been transferred into the cache, but before the data has been written to the medium. If an error occurs while writing the data to the medium, and Good status has already been returned, a deferred error will be generated. The Synchronize Cache command may be used to force the drive to write all cached write data to the medium. Upon completion of a Synchronize Cache command, all data received from previous write commands will have been written to the medium. Table 8 shows the mode default settings for the drive. 5.5.2 Prefetch operation If the Prefetch feature is enabled, data in contiguous logical blocks on the disk immediately beyond that which was requested by a Read command are retrieved and stored in the buffer for immediate transfer from the buffer to the host on subsequent Read commands that request those logical blocks (this is true even if cache operation is disabled). Though the prefetch operation uses the buffer as a cache, finding the requested data in the buffer is a prefetch hit, not a cache operation hit. To enable Prefetch, use Mode Select page 08h, byte 12, bit 5 (Disable Read Ahead - DRA bit). DRA bit = 0 enables prefetch. The drive does not use the Max Prefetch field (bytes 8 and 9) or the Prefetch Ceiling field (bytes 10 and 11). When prefetch (read look-ahead) is enabled (enabled by DRA = 0), the drive enables prefetch of contiguous blocks from the disk when it senses that a prefetch hit will likely occur. The drive disables prefetch when it decides that a prefetch hit is not likely to occur. Constellation ES.2 SAS Product Manual, Rev. C 13

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76

Constellation ES.2 SAS Product Manual, Rev. C
13
5.5.1
Caching write data
Write caching is a write operation by the drive that makes use of a drive buffer storage area where the data to
be written to the medium is stored while the drive performs the Write command.
If read caching is enabled (RCD=0), then data written to the medium is retained in the cache to be made
available for future read cache hits. The same buffer space and segmentation is used as set up for read
functions. The buffer segmentation scheme is set up or changed independently, having nothing to do with the
state of RCD. When a write command is issued, if RCD=0, the cache is first checked to see if any logical
blocks that are to be written are already stored in the cache from a previous read or write command. If there
are, the respective cache segments are cleared. The new data is cached for subsequent Read commands.
If the number of write data logical blocks exceed the size of the segment being written into, when the end of the
segment is reached, the data is written into the beginning of the same cache segment, overwriting the data that
was written there at the beginning of the operation; however, the drive does not overwrite data that has not yet
been written to the medium.
If write caching is enabled (WCE=1), then the drive may return Good status on a write command after the data
has been transferred into the cache, but before the data has been written to the medium. If an error occurs
while writing the data to the medium, and Good status has already been returned, a deferred error will be
generated.
The Synchronize Cache command may be used to force the drive to write all cached write data to the medium.
Upon completion of a Synchronize Cache command, all data received from previous write commands will have
been written to the medium. Table 8 shows the mode default settings for the drive.
5.5.2
Prefetch operation
If the Prefetch feature is enabled, data in contiguous logical blocks on the disk immediately beyond that which
was requested by a Read command are retrieved and stored in the buffer for immediate transfer from the
buffer to the host on subsequent Read commands that request those logical blocks (this is true even if cache
operation is disabled). Though the prefetch operation uses the buffer as a cache, finding the requested data in
the buffer is a prefetch hit, not a cache operation hit.
To enable Prefetch, use Mode Select page 08h, byte 12, bit 5 (Disable Read Ahead - DRA bit). DRA bit = 0
enables prefetch.
The drive does not use the Max Prefetch field (bytes 8 and 9) or the Prefetch Ceiling field (bytes 10 and 11).
When prefetch (read look-ahead) is enabled (enabled by DRA = 0), the drive enables prefetch of contiguous
blocks from the disk when it senses that a prefetch hit will likely occur. The drive disables prefetch when it
decides that a prefetch hit is not likely to occur.