Seagate ST9900805SS Savvio 10K.4 FC Product Manual - Page 17

Cache operation

Page 17 highlights

4.5 Cache operation Note. Refer to the Fibre Channel Interface Manual for more detail concerning the cache bits. Of the 16MBs physical buffer space in the drive, approximately 13,000KB can be used as a cache. The buffer is divided into logical segments from which data is read and to which data is written. The drive keeps track of the logical block addresses of the data stored in each segment of the buffer. If the cache is enabled (see RCD bit in the FC Interface Manual ), data requested by the host with a read command is retrieved from the buffer, if possible, before any disk access is initiated. If cache operation is not enabled, the buffer is still used, but only as circular buffer segments during disk medium read operations (disregarding Prefetch operation for the moment). That is, the drive does not check in the buffer segments for the requested read data, but goes directly to the medium to retrieve it. The retrieved data merely passes through some buffer segment on the way to the host. All data transfers to the host are in accordance with buffer-full ratio rules. See the explanation provided with the information about Mode Page 02h (disconnect/reconnect control) in the Fibre Channel Interface Manual. The following is a simplified description of the prefetch/cache operation: Case A-read command is received and all of the requested logical blocks are already in the cache: 1. Drive transfers the requested logical blocks to the initiator. Case B-A Read command requests data, and at least one requested logical block is not in any segment of the cache: 1. The drive fetches the requested logical blocks from the disk and transfers them into a segment, and then from there to the host in accordance with the Mode Select Disconnect/Reconnect parameters, page 02h. 2. If the prefetch feature is enabled, refer to section 4.5.2 for operation from this point. Each cache segment is actually a self-contained circular buffer whose length is an integer number of logical blocks. The drive dynamically creates and removes segments based on the workload. The wrap-around capability of the individual segments greatly enhances the cache's overall performance. Note. The size of each segment is not reported by Mode Sense command page 08h, bytes 14 and 15. The value 0XFFFF is always reported regardless of the actual size of the segment. Sending a size specification using the Mode Select command (bytes 14 and 15) does not set up a new segment size. If the STRICT bit in Mode page 00h (byte 2, bit 1) is set to one, the drive responds as it does for any attempt to change an unchangeable parameter. Savvio 10K.4 FC Product Manual, Rev. A 11

  • 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
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84

Savvio 10K.4 FC Product Manual, Rev. A
11
4.5
Cache operation
Note.
Refer to the
Fibre Channel Interface Manual
for more detail concerning the cache bits.
Of the 16MBs physical buffer space in the drive, approximately 13,000KB can be used as a cache. The buffer
is divided into logical segments from which data is read and to which data is written.
The drive keeps track of the logical block addresses of the data stored in each segment of the buffer. If the
cache is enabled (see RCD bit in the
FC Interface Manual
), data requested by the host with a read command
is retrieved from the buffer, if possible, before any disk access is initiated. If cache operation is not enabled, the
buffer is still used, but only as circular buffer segments during disk medium read operations (disregarding
Prefetch operation for the moment). That is, the drive does not check in the buffer segments for the requested
read data, but goes directly to the medium to retrieve it. The retrieved data merely passes through some buffer
segment on the way to the host. All data transfers to the host are in accordance with buffer-full ratio rules. See
the explanation provided with the information about Mode Page 02h (disconnect/reconnect control) in the
Fibre
Channel Interface Manual
.
The following is a simplified description of the prefetch/cache operation:
Case A
—read command is received and all of the requested logical blocks are already in the cache:
1.
Drive transfers the requested logical blocks to the initiator.
Case B
—A Read command requests data, and at least one requested logical block is not in any segment of
the cache:
1.
The drive fetches the requested logical blocks from the disk and transfers them into a segment, and then
from there to the host in accordance with the Mode Select Disconnect/Reconnect parameters, page 02h.
2.
If the prefetch feature is enabled, refer to section 4.5.2 for operation from this point.
Each cache segment is actually a self-contained circular buffer whose length is an integer number of logical
blocks. The drive dynamically creates and removes segments based on the workload. The wrap-around capa-
bility of the individual segments greatly enhances the cache’s overall performance.
Note.
The size of each segment is not reported by Mode Sense command page 08h, bytes 14 and 15. The value 0XFFFF
is always reported regardless of the actual size of the segment. Sending a size specification using the Mode
Select command (bytes 14 and 15) does not set up a new segment size. If the STRICT bit in Mode page 00h (byte
2, bit 1) is set to one, the drive responds as it does for any attempt to change an unchangeable parameter.