Browse Prior Art Database

4-Byte ECC Emulation Method for at Interface DASD

IP.com Disclosure Number: IPCOM000109225D
Original Publication Date: 1992-Aug-01
Included in the Prior Art Database: 2005-Mar-23
Document File: 2 page(s) / 93K

Publishing Venue

IBM

Related People

Murakami, M: AUTHOR [+3]

Abstract

This article discloses a technique for supporting 4-byte ECC mode commands using a hard disk controller (HDC) which does not specifically support this ECC length. This new technique provides significant advantages to the user over previous techniques.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

4-Byte ECC Emulation Method for at Interface DASD

       This article discloses a technique for supporting 4-byte
ECC mode commands using a hard disk controller (HDC) which does not
specifically support this ECC length.  This new technique provides
significant advantages to the user over previous techniques.

      The use of 4-byte ECC is a requirement of the ATA (AT
Attachment) working draft-proposed American National Standard for
hard disk drives (HDDs) connected to personal computers.  However, in
order to enhance data integrity, many manufacturers now use more than
4 bytes of ECC and have to emulate the 4-byte mode for compatibility
with the standard.  Many modern hard disk controllers will not
support 4-byte modes and hence the requirement to emulate via
software or other means.

      The common technique for this emulation is described below for
an HDC which supports N bytes of ECC, where N is greater than 4.
READ LONG
     1-R1.  The drive reads data from disk with N bytes of ECC
information.
     1-R2.  The drive transfers data and 4 bytes of ECC to the host.
The drive then saves the remaining N-4 bytes in an internal memory
area, henceforth referred to as SAVEDECC.
WRITE LONG
     1-W1.  The host transfers data and 4 bytes of ECC information to
the drive.
     1-W2.  The drive writes the data and the 4 bytes of ECC from the
host.  The ECC field is then padded with the values stored in the
SAVEDECC memory area to fill the normal ECC field length.

      The above method of emulation has one significant problem.  It
assumes that the value stored in the SAVEDECC memory area from the
last read long command will match the data transmitted in the write
long command.  If this does not occur it can give rise to unexpected
ECC corrections or uncorrectable rea...