EP0335529A2

Method and apparatus for encoding and mapping magnetic disk sector addresses.

Abstract

Addresses corresponding to magnetic disk sectors are encoded using an error correction code (ECC), such that addresses which are in a neighborhood, that is, addresses which are mathematically or numerically close, are mapped to addresses which differ in at least D-1 bits where the ECC is a distance D code. An original n-bit sector address is separated into two segments. One segment is a "k"-bit neighborhood address segment containing the k lower order address bits identifying the location of the selected sector within a neighborhood. The second segment is an "n-k" bit higher order address segment identifying the neighborhood containing the selected sector. The k-bit neighborhood address segment is then encoded with an (n,k) distance D linear code to form an n-bit preliminary code word containing n-k redundancy (ECC) bits appended, as the most significant bits, to the k neighborhood address bits. The (n-k)-bit higher order address segment is encoded by representing the segment in Gray code. The (n-k)-bit Gray coded segment is added modulo 2 to the n-k redundancy (ECC) bits of the preliminary code word. The resulting n-bit address code word is recorded on the disk as the sector address. When a particular sector is to be accessed, the address is first encoded in the manner set forth above, and the read/write head is moved to the logical neighborhood containing the sector. The encoded address is then compared to the addresses written in the various sectors in the neighborhood. When a match within (D-2)/2 bits is found, the sector is identified as the correct sector.

EP0335529A2, drawing sheet 1
Sheet 1 of 2

Term

Term ended

Projected expiry passed 16 March 2009, 17.5 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

35 claims: 16 independent, 19 dependent

  1. 1
    A method for locating data sectors on a magnetic disk during sector seeking operations comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" bits into two segments, a "k"-bit lower order bit segment and an (n-k)-bit higher order bit segment;2. using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. representing said (n-k)-bit segment in Gray code;4. adding said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;B. recording said address code words in the sectors during the formatting of the disk;C. reading said address code word from the sector rotating under the head;D. encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word;E. comparing said sector address code word read from a disk sector with said specified address code word;F. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  2. 2
    The method of Claim 1 wherein said encoding step further includes encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  3. 3
    The method of Claim 1 wherein said comparison step further includes exclusive OR'ing said address code words and said specified address code words.
  4. 4
    A method for locating data sectors on a magnetic disk during sector seeking operations comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment;2. using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-­symbol code word containing n-k redundancy symbols and the k address symbols;3. representing said (n-k) high order symbol segment in binary Gray code;4. exclusive OR'ing said Gray coded segment to the n-­k high order symbols of said n-symbol code word to produce an n-symbol address code word;B. recording said address code words in the sectors during the formatting of the disk;C. reading said address code word from the sector rotating under the head;D. encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word;E. comparing said sector address code word read from a disk sector with said specified address code word;F. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  5. 5
    The method of Claim 4 wherein said encoding step further includes encoding said n-symbol address code word using a (p,n) distance "E" linear code over Galois Field GF(2 m ) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  6. 6
    An apparatus for locating data sectors on a magnetic disk during sector seeking operations comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" bits into two segments, a "k" low order bit segment and an (n-k) high order bit segment;2. means for using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. means for representing said (n-k)-bit segment in Gray code;4. means for adding said Gray coded segment to the n-­k higher order bits of said n-bit code word to produce an n-­bit address code word;B. means for recording said address code words in the sectors during the formatting of the disk;C. means for encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word;D. means for comparing said address code word read from a disk sector with said specified address code word;E. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, means for identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  7. 7
    The apparatus of Claim 6 wherein said encoding means further comprises means for encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  8. 8
    The apparatus of Claim 6 wherein said comparison means further includes means for step further includes exclusive OR'ing said address code words and said specified address code words.
  9. 9
    An apparatus for locating data sectors on a magnetic disk during sector seeking operations comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. means for using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols, 3. means for representing said (n-k)-symbol segment in binary Gray code, 4. means for exclusive OR'ing said Gray coded segment to the n-k higher order symbols of said n-symbol code word to produce an n-symbol address code word;B. means for recording said address code words in the sectors during the formatting of the disk;C. means for reading said address code word from the sector rotating under the head;D. means for encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word;E. means for comparing said sector address code word read from a disk sector with said specified address code word;F. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  10. 10
    The apparatus of Claim 9 wherein said encoding means further comprises means for encoding said n-symbol address code word using a (p,n) distance "E" linear code over Galois Field GF(2 m ) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  11. 11
    The apparatus of Claim 9 wherein said comparison means step further includes means for exclusive OR'ing said address code words and said specified address code words.
  12. 12
    A method for encoding magnetic disk data sector addresses comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" bits into two segments, a "k"-bit lower order bit segment and an (n-k)-bit higher order bit segment;2. using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. representing said (n-k)-bit segment in Gray code;4. adding said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;and B. recording said address code words in the sectors during the formatting of the disk.
  13. 13
    The method of Claim 12 wherein said encoding step further includes encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  14. 14
    An apparatus for encoding magnetic disk data sector addresses comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" bits into two segments, a "k" low order bit segment and an (n-k) high order bit segment;2. means for using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. means for representing said (n-k)-bit segment in Gray code;4. means for adding said Gray coded segment to the n-­k higher order bits of said n-bit code word to produce an n-­bit address code word;and B. means for recording said address code words in the sectors during the formatting of the disk.
  15. 15
    The apparatus of Claim 14 wherein said encoding means further comprises means for encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  16. 16
    An apparatus for locating a sector on a magnetic disk comprising:A. means for reading an address code word from the sector rotating under the head;B. means for encoding the specified address of the sector to be located to produce an address code word comprising: 1. means for separating the specified address containing "n" bits into two segments, a "k" low order bit segment and an (n-k) high order bit segment;2. means for using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. means for representing said (n-k)-bit segment in Gray code;4. means for adding said Gray coded segment to the n-­k higher order bits of said n-bit code word to produce an n-­bit address code word;C. means for comparing said specified address code word with the sector address code word read from a disk sector;and D. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  17. 17
    The apparatus of Claim 16 wherein said comparison means further includes means for exclusive OR'ing said sector address code words and said specified address code words.
  18. 18
    The apparatus of Claim 16 wherein said encoding means further comprises means for encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  19. 19
    A method of locating magnetic disk data sectors comprising the steps of:A. reading the address code word recorded in the sector rotating under the head;B. encoding the specified address of the sector to be located by: 1. separating the specified address containing "n" bits into two segments, a "k"-bit lower order bit segment and an (n-k)-bit higher order bit segment;2. using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits;3. representing said (n-k)-bit segment in Gray code;4. adding said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;C. comparing said specified address code word with the address code word read from a disk sector;and D. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  20. 20
    The method of Claim 19 wherein said encoding step further comprises encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word.
  21. 21
    The apparatus of Claim 19 wherein said comparison step further includes exclusive OR'ing said address code words and said specified address code words.
  22. 22
    An apparatus for encoding magnetic disk sector addresses comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment;2. means for using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols;3. means for representing said (n-k)-bit segment in binary Gray code;4. means for exlcusive OR'ing said Gray coded segment to the n-k higher order bits of said n-symbol code word to produce and n-symbol address code word;and B. means for recording said address code words in the sectors during the formatting of the disk;
  23. 24
    An apparatus for locating sectors on a magnetic disk comprising:A. means for reading said address code word from the sector rotating under the head, B. encoding means for encoding the specified address of the sector to be located, said encoding means including: 1. means for separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. means for using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols, 3. means for representing said (n-k)-symbol segment in binary Gray code, 4. means for exclusive OR'ing said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;C. comparison means for comparing said sector address code word read from a disk sector with said specified code word;and D. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, means for identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  24. 27
    A method for locating data sectors on a magnetic disk during sector seeking operations comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols in the k address symbols, 3. representing said (n-k)-symbol segment in binary Gray code, 4. exclusive OR'ing said Gray coded segment to the n-k higher order symbols of said n-symbol code word to produce an n-symbol address code word;5. encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2 m ) to produce redundancy symbols and appending said redundancy symbols to said address code word to form another address code word;B. recording said address code words in the sectors during the formatting of the disk;C. reading said address code word from the sector rotating under the head;D. encoding the specified address of the sector to be located in the same manner of step A to produce a specified code word;E. comparing said sector address code word read from a disk sector with said specified address code word;and F. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater than said predetermined number, not identifying the sector as the correct sector;
  25. 28
    A method for encoding magnetic disk sector addresses comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols, 3. representing said (n-k)-symbol segment in binary Gray code;4. exclusive OR'ing said Gray coded segment to the n-k higher order bits of said n-symbol code word to produce an n-symbol address code word;and B. recording said address code words in the sectors during the formatting of the disk.
  26. 30
    A method for locating sectors on a magnetic disk comprising the steps of:A. reading an address code word from the sector rotating under the head;B. encoding the specified address of the sector to be located by: 1. separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols, 3. representing said (n-k)-symbol segment in binary Gray code;4. exclusive OR'ing said Gray coded segment to the n-k higher order symbols of said n-symbol code word to produce an n-bit address code word;C. comparing said sector address code word read from a disk sector with said specified address code word;and D. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  27. 33
    A method for locating data sectors on a magnetic disk during sector seeking operations comprising the steps of:A. encoding the addresses of the sectors to produce address code words by: 1. separating the sector address containing "n" bits into two segments, a "k"-bit lower order bit segment and an (n-k)-bit higher order bit segment;2. using a distance "D" linear (n,k) code over Galois Field GF(2) to encode said k-bit segment into an n-­bit code word containing n-k redundancy symbols and the k address bits;3. representing said (n-k) bit segment in Gray code;4. adding said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;5. encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word;B. recording said address code words in the sectors during the formatting of the disk;C. reading said address code word from the sector rotating under the head;D. encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word;E. comparing said sector address code word read from a disk sector with said specified address code word;F. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater than said predetermined number, not identifying the sector as the correct sector.
  28. 34
    An apparatus for locating data sectors on a magnetic disk during sector seeking operations comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" multi-bit symbols into two segments, a "k" lower order symbol segment and an (n-k) higher order symbol segment, 2. means for using a distance "D" linear (n,k) code over Galois Field GF(2 m ) to encode said k-symbol segment into an n-symbol code word containing n-k redundancy symbols and the k address symbols, 3. means for representing said (n-k)-symbol segment in binary Gray code, 4. means for exclusive OR'ing said Gray coded segment to the n-k higher order symbols of said n-symbol code word to produce an n-symbol address code word;5. means for encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2 m ) to produce redundancy symbols and appending said redundancy symbols to said address code word to form another address code word;B. means for recording said address code words in the sectors during the formatting of the disk;C. means for reading said address code word from the sector rotating under the head;D. means for encoding the specified address of the sector to be located using said encoding means;E. comparing means for comparing said sector address code word read from a disk sector with said specified address code word;F. (1) if the comparison results in a number of symbols which differ between said address code word and said specified address code word that is less than a predetermined number, identifying the sector as the correct sector;or (2) if the comparison results in a number of symbols which differ that is greater that said predetermined number, not identifying the sector as the correct sector.
  29. 35
    An apparatus for locating data sectors on a magnetic disk during sector seeking operations comprising:A. means for encoding the addresses of the sectors to produce address code words comprising: 1. means for separating the sector address containing "n" bits into two segments, a "k" lower order symbol segment and an (n-k) higher order segment, 2. means for using a distance "D" linear (n,k) code over Galois Field GF( m ) to encode said k-bit segment into an n-bit code word containing n-k redundancy symbols and the k address bits, 3. means for representing said (n-k)-bit segment in Gray code, 4. means for adding said Gray coded segment to the n-k higher order bits of said n-bit code word to produce an n-bit address code word;5. means for encoding said n-bit address code word using a (p,n) distance "E" linear code over Galois Field GF(2) to produce redundancy symbols and appending said redundancy symbols to said address code word;B. means for recording said address code words in the sectors during the formatting of the disk;C. means for encoding the specified address of the sector to be located in the same manner of step A to produce a specified address code word D. means for comparing said address code word read froma disk sector with said specified address code word;E. (1) if the comparison results in a number of bits which differ between said address code word and said specified address code word that is less than a predetermined number, means for identifying the sector as the correct sector;or (2) if the comparison results in a number of bits which differ that is greater that said predetermined number, not identifying the sector as the correct sector.
Independent claims29