Claims
- 1. A method of validating an error correction code engine of a disc drive comprising steps of:
(a) choosing a physical sector to use for running a validation test for validating the error correction code engine; (b) determining if the physical sector is good; and (c) performing the validation test using the physical sector if the physical sector is good.
- 2. The method of claim 1 wherein the error correction code engine includes an error correction function and wherein the determining step (b) comprises steps of:
(b)(i) commanding the disc drive to disable the error correction function; (b)(ii) disabling the error correction function; (b)(iii) issuing a write long command to write a first data sector to the physical sector; (b)(iv) writing the first data sector to the physical sector in response to the write long command; (b)(v) issuing a read long command to read a second data sector corresponding to the first data sector from the physical sector; (b)(vi) reading the second data sector from the physical sector in response to the read long command; and (b)(vii) comparing the first data sector to the second data sector to determine if the first data sector equals the second data sector.
- 3. The method of claim 2 wherein the indicating step (b)(i) comprises issuing a read long command to read a third data sector from the physical sector.
- 4. The method of claim 2 wherein the error correction code engine includes an error detecting function and wherein the reading step (b)(vi) comprises steps of:
(b)(vi)(1) reading the second data sector from the physical sector; (b)(vi)(2) detecting any errors in the second data sector; (b)(vi)(3) repeating steps (b)(vi)(1) and (b)(vi)(2) until either no errors are detected or a predetermined number of repetitions is performed to preclude reporting a valid sector as invalid.
- 5. A method of validating an error correction code engine in a disc drive, the error correction code engine having a plurality of error correction code functions, the method comprising steps of:
(a) receiving a first command from a host connected to the disc drive; (b) determining whether to disable one or more of the plurality of error correction code functions in response to receipt of the command; (c) disabling the one or more error correction code functions if the command indicates to disable the one or more error correction code functions; and (d) executing the command so that the host can validate the error correction code engine.
- 6. The method of claim 5 wherein the first command is a read long command having a physical sector, and wherein one of the plurality of error correction code functions is a detecting function able to detect errors in a data sector, and wherein the executing step (d) comprises steps of:
(d)(i) reading a data sector from the physical sector; (d)(ii) detecting any errors in the data sector; (d)(iii) repeating steps (d)(i) and (d)(ii) until either no errors are detected or a predetermined number of repetitions is performed to preclude reporting a valid sector as invalid.
- 7. The method of claim 5 wherein the first command is a write long command having a physical sector and a data block, and wherein one of the plurality of error correction code functions is an error correction code calculating function able to calculate an error correction code for the data block, and wherein another one of the plurality of the error correction code functions is an appending function able to append the error correction code onto the data block to create a data sector, and wherein the executing step (d) comprises steps of:
(d)(i) calculating an error correction code for the data block; (d)(ii) appending the error correction code onto the data block to create a data sector; (d)(iii) writing the data sector onto a disc of the disc drive at the physical sector.
- 8. The method of claim 6 wherein one of the plurality of error correction code functions is an error correction code calculating function operable to calculate an error correction code for a data block, and wherein another one of the plurality of the error correction code functions is an appending function to append the error correction code onto the data block to create a data sector, the method further comprising steps of:
(e) receiving a second command from the host, wherein the second command is a write long command including the physical sector and a data block; (f) disabling the error correction code calculating function in response to the write long command; (g) disabling the appending function in response to the write long command; (h) writing the data block onto a disc of the disc drive at the physical sector.
- 9. A disc drive comprising:
a disc having a plurality of physical sectors; and an error correction code(ECC) engine operable to detect a bad physical sector, the ECC engine having an ECC calculating module, an appending module, and a write decision module, wherein the write decision module determines whether to disable a calculating function and an appending function by bypassing the ECC calculating module and the appending module.
- 10. The disc drive of claim 9 wherein the ECC engine function further comprises:
a detecting module, a correcting module, and a read decision module, wherein the read decision module determines whether to disable a correcting function by bypassing the correcting module.
- 11. An error correction code engine validation system for a data storage device comprising:
a host computer attached to the data storage device having a read/write channel including an error correction code engine, wherein the error correction code engine includes an error correction code correction function and an error correction code detection function; a validation means in the disc drive for validating the error correction code engine, wherein the validation means utilizes read, read long, and write long commands to identify a valid sector to be used for validation and then disables error correction code correction function.
RELATED APPLICATIONS
[0001] This application claims priority of U.S. provisional application Ser. No. 60/202,884, filed May 10, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60202884 |
May 2000 |
US |