Browse Prior Art Database

HIGH EFFICIENCY GRAY CODES FOR DISK DRIVES

IP.com Disclosure Number: IPCOM000013095D
Original Publication Date: 2000-Feb-01
Included in the Prior Art Database: 2003-Jun-12
Document File: 2 page(s) / 30K

Publishing Venue

IBM

Abstract

Described is a method for efficiently encoding the track ID of a disk drive. It requires one flux transition per bit of the track ID, plus one or two flux transitions for parity. It provides the required ability to read the track ID while off-track with at most one error. In this discussion, a bit is referred to as a logical unit of user data. It is encoded in some fashion into flux transitions or their absence, which are the potential changes in state of the magnetization of the disk. If the magnetization changes state, the flux transition is denoted as a 1, and if not, the absence of a flux transition is denoted as a 0. The presence of a flux transition can also be denoted asa+or-, depending on how the magnetization changes. In a disk drive, a track ID is encoded as a gray code because it has the special property that only one bit is different between two consecutive code words. For example, the usual binary code encodes the sequence 0,1,2,3 as 00, 01, 10, 11. Thus both bits change between the code word for 1 and 2. However, a gray code encodement of this sequence is 00, 01, 11, 10, so that only one bit changes from one code word to the next. This is true even when the code wraps (i.e., when written 0,1,2,3,0,1,2....) Because of this property it permits robust decoding of the track ID even when the read head is off track. For example, if the head is between tracks 1 and 2, then it sees part of both code words at the same time. If a binary code is used, it sees part of the 01 encodement for track 0 and part of the 10 encodement for track 1; thus is detects both a 1 and a 0 for both bits, leading to an unpredictable result. If the gray code is used (code words are 01 and 11), the first bit is still unpredictable, but the second bit is detected as a 1. Then no matter how the first bit is decoded, the result will either be 01 (for track 1) or 11 (for track 2), either of which is reasonable.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 2

HIGH EFFICIENCY GRAY CODES FOR DISK DRIVES

   Described is a method for efficiently encoding the track ID of a disk drive.
It requires one flux transition per bit of the track ID, plus one or two flux
transitions for parity. It provides the required ability to read the track ID
while off-track with at most one error.

In this discussion, a bit is referred to as a logical unit of user data. It is
encoded in some fashion into flux transitions or their absence, which are the
potential changes in state of the magnetization of the disk. If the magnetization
changes state, the flux transition is denoted as a 1, and if not, the absence of
a flux transition is denoted as a 0. The presence of a flux transition can also
be denoted asa+or-, depending on how the magnetization changes.

In a disk drive, a track ID is encoded as a gray code because it has the special
property that only one bit is different between two consecutive code words. For
example, the usual binary code encodes the sequence 0,1,2,3 as 00, 01, 10, 11.
Thus both bits change between the code word for 1 and 2. However, a gray code
encodement of this sequence is 00, 01, 11, 10, so that only one bit changes from
one code word to the next. This is true even when the code wraps (i.e., when
written 0,1,2,3,0,1,2....)

Because of this property it permits robust decoding of the track ID even when the
read head is off track. For example, if the head is between tracks 1 and 2, then
it sees part of both code words at the same time. If a binary code is used, it
sees part of the 01 encodement for track 0 and part of the 10 encodement for
track 1; thus is detects both a 1 and a 0 for both bits, leading to an
unpredictable result. If the gray code is used (code words are 01 and 11), the
first bit is still unpredictable, but the second bit is detected as a 1. Then no
matter how the first bit is decoded, the result will either be 01 (for track 1)
or 11 (for track 2), either of which is reasonable.

It is important how a 0 bit or 1 bit is encoded on the disk in terms of the flux
transitions. Two popular schemes are dibit/no-dibit and Pennington gray code,
both of which require two flux transitions per bit. (The dibit/no-dibit method
encodes a 1 bit as a 11 flux transition pair, and a 0 bit as a 00 pair. The
Pennington method encodesa1asa10anda0asa 01.)

...