KR20110049164A - 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체 - Google Patents

라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체 Download PDF

Info

Publication number
KR20110049164A
KR20110049164A KR1020090106041A KR20090106041A KR20110049164A KR 20110049164 A KR20110049164 A KR 20110049164A KR 1020090106041 A KR1020090106041 A KR 1020090106041A KR 20090106041 A KR20090106041 A KR 20090106041A KR 20110049164 A KR20110049164 A KR 20110049164A
Authority
KR
South Korea
Prior art keywords
sector
write
defect
ecc
write defect
Prior art date
Application number
KR1020090106041A
Other languages
English (en)
Other versions
KR101573233B1 (ko
Inventor
김경진
유재혁
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090106041A priority Critical patent/KR101573233B1/ko
Priority to US12/938,547 priority patent/US8516341B2/en
Priority to JP2010247780A priority patent/JP5598984B2/ja
Publication of KR20110049164A publication Critical patent/KR20110049164A/ko
Application granted granted Critical
Publication of KR101573233B1 publication Critical patent/KR101573233B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1879Direct read-after-write methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1232Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc sector, i.e. the minimal addressable physical data unit
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/1836Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using a Reed Solomon [RS] code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Abstract

라이트 결함이 발생되는 경우에 복구할 섹터 개수를 적응적으로 설정하여 라이트 결함을 복구하는 방법 및 장치에 관하여 개시한다. 라이트 결함 복구 방법은 라이트 결함이 발생된 트랙으로부터 정보를 읽어내는 단계, 상기 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수를 섹터별로 산출하는 단계, 상기 섹터별 ECC 정정 심볼의 개수와 임계 조건을 비교하여 라이트 결함 복구 섹터의 개수를 결정하는 단계 및, 상기 결정된 라이트 결함 복구 섹터의 개수에 상응하는 섹터 위치부터 다시 쓰기를 실행하는 단계를 포함한다.

Description

라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체{Method for recovering write fault and data storage apparatus and storage media applying the same}
본 발명은 데이터 저장 장치에서의 라이트 결함을 복구하는 방법 및 장치에 관한 것으로서, 특히 라이트 결함이 발생되는 경우에 복구할 섹터 개수를 적응적으로 설정하여 라이트 결함을 복구하는 방법 및 장치에 관한 것이다.
데이터 저장 장치는 기록매체에 데이터를 기록하거나 또는 기록매체에 기록된 데이터를 재생함으로써 컴퓨터 시스템 운영에 기여하게 된다. 이와 같은 데이터 저장 장치는 내부 또는 외부 요인에 의하여 기록매체에 데이터를 라이트하는 과정에서 결함이 발생될 가능성을 내포하고 있다. 이에 따라서, 데이터 저장 장치에서의 라이트 결함을 효과적으로 검출하여 복구하는 기술에 대한 연구가 필요하게 되었다.
본 발명의 목적은 데이터 저장 장치에서의 라이트 결함이 발생되는 경우에 복구할 섹터 개수를 적응적으로 설정하여 라이트 결함을 복구하는 방법을 제공하는데 있다.
본 발명의 다른 목적은 라이트 결함이 발생되는 경우에 복구할 섹터 개수를 적응적으로 설정하여 라이트 결함을 복구하는 데이터 저장 장치를 제공하는데 있다.
본 발명의 또 다른 목적은 데이터 저장 장치에서의 라이트 결함이 발생되는 경우에 복구할 섹터 개수를 적응적으로 설정하여 라이트 결함을 복구하는 방법을 수행하는 프로그램 코드가 기록된 저장매체를 제공하는데 있다.
본 발명의 기술적 사상의 일면에 따른 라이트 결함 복구 방법은 라이트 결함이 발생된 트랙으로부터 정보를 읽어내는 단계, 상기 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수를 섹터별로 산출하는 단계, 상기 섹터별 ECC 정정 심볼의 개수와 임계 조건을 비교하여 라이트 결함 복구 섹터의 개수를 결정하는 단계 및, 상기 결정된 라이트 결함 복구 섹터의 개수에 상응하는 섹터 위치부터 다시 쓰기를 실행하는 단계를 포함한다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 복구 섹터의 개수를 결정하는 단계는 상기 섹터별 ECC 정정 심볼의 개수가 최초로 제1임 계값을 초과하는 섹터를 라이트 결함 복구 시작 섹터로 판정하여 라이트 결함 복구 섹터의 개수를 결정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 정보를 읽어내는 단계는 라이트 결함이 발생되는 경우에 라이트 명령의 실행을 정지시키고, 상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역에 기록된 정보를 읽어내는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 라이트 동작을 실행시키는 과정에서 기록매체의 서보 정보 영역에서 읽어낸 신호에서 결함이 검출되는 경우에 라이트 결함이 발생되는 것으로 판정하는 단계를 더 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함이 발생되는 것으로 판정하는 단계는 라이트 동작을 실행하면서 기록매체의 서보 정보 영역에서 읽어낸 버스트 신호들을 조합하여 생성시킨 위치에러신호의 크기가 초기 설정된 범위를 벗어나는 경우에 라이트 결함이 발생된 것으로 판정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되는 경우에, 라이트 결함이 발생된 섹터 영역에서의 디펙 섹터를 검출하여 디펙 보상 처리를 실행하는 단계를 더 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 디펙 보상 처리를 실행하는 단계는 라이트 결함이 반복적으로 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역으로부터 정보를 읽어내는 단계, 상기 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수를 섹터별로 산출하는 단계, 상기 섹터별 ECC 정정 심볼의 개수가 제2임계값을 초과하는 섹터를 디펙 섹터로 결정하는 단계 및, 상기 디펙 섹터로 결정된 섹터를 스페어 섹터로 재할당 처리하는 단계를 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 디펙 보상 처리를 실행한 후에 상기 섹터별 ECC 정정 심볼의 개수에 근거하여 결정되는 라이트 결함 복구 섹터의 개수에 상응하는 섹터 위치부터 다시 쓰기를 실행하는 단계를 더 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 복구 섹터의 개수를 결정하는 단계는 상기 섹터별 ECC 정정 심볼의 개수가 임계 조건을 초과하는 섹터가 검출되지 않는 경우에는, 상기 라이트 결함이 발생된 트랙의 섹터 위치를 기준으로 초기 설정된 개수의 이전 섹터를 라이트 결함 복구 시작 섹터로 결정하는 것이 바람직하다.
본 발명의 기술적 사상의 다른 면에 따른 데이터 저장 장치는 정보를 저장하는 기록매체, 상기 기록매체를 액세스하여 정보를 라이트 또는 리드하는 미디어 인터페이스 및, 라이트 결함이 발생되는 경우에 라이트 명령의 실행을 정지시키고, 상기 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수에 근거하여 라이트 결함 복구 시작 섹터를 결정하고, 상기 결정된 라이트 결함 복구 시작 섹터부터 다시 쓰기를 실행하도록 상기 미디어 인터페이스를 제어하는 프로세서를 포함 한다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 프로세서는 라이트 명령을 실행하는 과정에서 라이트 결함이 발생되는 것을 검출하는 라이트 결함 검출부, 상기 라이트 결함이 검출되면 라이트 명령의 실행을 정지시킨 후에 상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 상기 기록매체의 트랙의 섹터 영역으로부터 정보를 읽어내고, 라이트 결함 복구 영역 결정부에서 결정된 라이트 결함 복구 시작 섹터 위치로부터 다시 쓰기를 실행시키도록 상기 미디어 인터페이스를 제어하는 라이트 결함 복구 제어부 및, 상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 상기 기록매체의 트랙의 섹터 영역으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수에 근거하여 상기 라이트 결함 복구 시작 섹터를 결정하는 라이트 결함 복구 영역 결정부를 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 검출부는 라이트 명령을 실행하면서 기록매체의 서보 정보 영역에서 읽어낸 신호에서 결함이 검출되는 경우에 라이트 결함이 발생되는 것으로 판정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 검출부는 라이트 동작을 실행하면서 상기 기록매체의 서보 정보 영역에서 읽어낸 버스트 신호들에 의하여 생성된 위치 에러신호의 크기가 초기 설정된 범위를 벗어나는 경우에 라이트 결함이 발생된 것으로 판정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 복구 영역 결정부는 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수가 제1임계값을 초과하는 최초의 섹터를 검출하여 라이트 결함 복구 시작 섹터로 결정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 라이트 결함 복구 영역 결정부는 상기 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼 중에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여 섹터별 ECC 정정 심볼 개수 정보를 생성시키는 ECC 처리부, 상기 ECC 처리부에서 생성되는 섹터별 ECC 심볼 개수 정보를 저장하는 버퍼, 상기 버퍼에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제1임계값을 비교하여, 최초로 제1임계값을 초과하는 섹터를 검출하는 제1판정부 및, 상기 제1판정부에서 검출된 섹터를 라이트 결함 복구 시작 섹터로 결정하는 라이트 결함 복구 시작 섹터 결정부를 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 프로세서는 상기 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되는 경우에, 반복하여 라이트 결함이 발생된 섹터 영역에서 디펙 섹터를 검출하는 디펙 섹터 검출부 및, 상기 디펙 섹터 검출부에서 검출된 디펙 섹터를 스페어 섹터로 재할당 처리하는 디펙 처리 제어부를 더 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 디펙 섹터 검출부 는 상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 기록매체의 트랙의 섹터 영역으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼 중에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여 섹터별 ECC 정정 심볼 개수 정보를 생성시키는 ECC 처리부, 상기 ECC 처리부에서 생성되는 섹터별 ECC 심볼 개수 정보를 저장하는 버퍼, 상기 버퍼에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제2임계값을 비교하여, 제2임계값을 초과하는 섹터를 검출하는 제2판정부 및, 상기 제2판정부에서 검출된 섹터를 디펙 섹터로 결정하는 디펙 섹터 결정부를 포함할 수 있다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 프로세서는 상기 섹터별 ECC 정정 심볼의 개수가 임계 조건을 초과하는 섹터가 검출되지 않는 경우에는 상기 라이트 결함이 발생된 트랙의 섹터 위치를 기준으로 초기 설정된 개수의 이전 섹터를 라이트 결함 복구 시작 섹터로 결정하는 것이 바람직하다.
본 발명의 기술적 사상에 의한 일실시 예에 따르면, 상기 프로세서는 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되는 경우에, 라이트 결함이 발생된 섹터 영역에서의 디펙 섹터를 검출하여 스페어 섹터로 재할당 처리한 후에 다시 쓰기를 실행하도록 상기 미디어 인터페이스를 제어하는 것이 바람직하다.
본 발명의 기술적 사상의 또 다른 면에 따른 저장매체는 상기 라이트 결함 복구 방법을 컴퓨터에서 실행시키기 위한 프로그램 코드들이 기록되어 있다.
본 발명에 의하면 라이트 결함이 발생되는 경우에 에러를 유발할 수 있는 잠 재력이 있는 섹터를 판단하여 다시 쓰기를 실행함으로써, 데이터 저장 장치의 신뢰성을 향상시킬 수 있는 효과가 발생된다. 즉, 라트라이(retry) 발생 가능성을 낮출 수 있으므로 데이터 저장 장치의 성능이 향상되는 효과가 발생된다.
본 발명의 기술적 사상에 의한 실시 예들에 대하여 첨부 도면을 참조하여 상세히 설명한다. 그러나, 본 발명의 기술적 사상에 의한 실시 예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시 예들로 인해 한정되어지는 것으로 해석되어져서는 안 된다. 본 발명의 기술적 사상에 의한 실시 예들은 본 발명이 속하는 기술분야에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되어지는 것이다. 첨부 도면들에서, 동일한 부호는 시종 동일한 요소를 의미한다.
이하 첨부된 도면을 참조하여 본 발명의 기술적 사상에 의한 바람직한 실시 예에 대하여 상세히 설명하기로 한다.
도 1에 도시된 바와 같이, 본 발명의 기술적 사상에 의한 일실시 예에 따른 데이터 저장 장치는 프로세서(110), ROM(120), RAM(130), 미디어 인터페이스(MEDIA I/F; 140), 미디어(MEDIA; 150), 호스트 인터페이스(HOST I/F; 160), 호스트 기기(HOST; 170), 외부 인터페이스(External I/F; 180) 및 버스(BUS; 190)를 구비한다.
프로세서(110)는 명령어를 해석하고, 해석된 결과에 따라 데이터 저장 장치의 구성 수단들을 제어하는 역할을 한다. 프로세서(110)는 코드 오브젝트 관리 유 닛을 포함하고 있으며, 코드 오브젝트 관리 유닛을 이용하여 미디어(150)에 저장되어 있는 코드 오브젝트를 RAM(130)에 로딩시킨다. 프로세서(110)는 데이터 저장 장치를 초기화시키는 과정에서 도 13 ~ 도 16의 흐름도에 따른 라이트 결함 복구 방법을 실행시키기 위한 코드 오브젝트들을 RAM(130)에 로딩시킨다.
그러면, 프로세서(110)는 RAM(130)에 로딩된 코드 오브젝트들을 이용하여 도 13 ~ 도 16의 흐름도에 따라 라이트 결함을 복구할 섹터 개수를 결정하고, 결정된 라이트 결함 복구 섹터의 개수에 상응하는 섹터 위치부터 다시 쓰기를 수행하는 태스크(task)를 실행하며, 라이트 결함 복구 처리를 하는데 필요한 정보들을 미디어(150) 또는 ROM(120)에 저장한다. 라이트 결함 복구 처리를 하는데 필요한 정보의 예로는 라이트 결함 복구 시작 섹터를 판정하는데 이용되는 제1임계값, 디펙 섹터를 판정하는데 이용되는 제2임계값, 재할당 섹터 리스트들이 포함될 수 있다.
프로세서(110)에 의하여 라이트 결함 복구 처리를 실행하는 방법에 대해서는 아래의 도 13 ~ 도 16에 대한 설명에서 상세하게 다루어질 것이다.
ROM(Read Only Memory; 120)에는 데이터 저장 장치를 동작시키는데 필요한 프로그램 코드 및 데이터들이 저장되어 있다.
RAM(Random Access Memory; 130)에는 프로세서(110)의 제어에 따라 ROM(120) 또는 미디어(150)에 저장된 프로그램 코드 및 데이터들이 로딩된다.
미디어(150)는 데이터 저장 장치의 주 저장매체로서 디스크를 포함할 수 있다. 데이터 저장 장치는 디스크 드라이브를 포함할 수 있으며, 디스크 드라이브에서의 디스크가 포함된 헤드 디스크 어셈블리(100)의 세부 구성을 도 3에 도시하였 다.
도 3을 참조하면, 헤드 디스크 어셈블리(100)는 스핀들 모터(14)에 의하여 회전되는 적어도 하나의 자기 디스크(12)를 포함하고 있다. 디스크 드라이브는 디스크(12) 표면에 인접되게 위치한 변환기(16)를 또한 포함하고 있다.
변환기(16)는 각각의 디스크(12)의 자계를 감지하고 자화시킴으로써 회전하는 디스크(12)에서 정보를 읽거나 기록할 수 있다. 전형적으로 변환기(16)는 각 디스크(12) 표면에 결합되어 있다. 비록 단일의 변환기(16)로 도시되어 설명되어 있지만, 이는 디스크(12)를 자화시키기 위한 기록용 변환기와 디스크(12)의 자계를 감지하기 위한 분리된 읽기용 변환기로 이루어져 있다고 이해되어야 한다. 읽기용 변환기는 자기 저항(MR : Magneto-Resistive) 소자로부터 구성되어 진다. 변환기(16)는 통상적으로 자기 헤드(Head) 또는 헤드라 칭해지기도 한다.
변환기(16)는 슬라이더(20)에 통합되어 질 수 있다. 슬라이더(20)는 변환기(16)와 디스크(12) 표면사이에 공기 베어링(air bearing)을 생성시키는 구조로 되어 있다. 슬라이더(20)는 헤드 짐벌 어셈블리(22)에 결합되어 있다. 헤드 짐벌 어셈블리(22)는 보이스 코일(26)을 갖는 엑츄에이터 암(24)에 부착되어 있다. 보이스 코일(26)은 보이스 코일 모터(VCM : Voice Coil Motor 30)를 특정하도록 마그네틱 어셈블리(28)에 인접되게 위치하고 있다. 보이스 코일(26)에 공급되는 전류는 베어링 어셈블리(32)에 대하여 엑츄에이터 암(24)을 회전시키는 토오크를 발생시킨다. 엑츄에이터 암(24)의 회전은 디스크(12) 표면을 가로질러 변환기(16)를 이동시키게 된다.
정보는 전형적으로 디스크(12)의 환상 트랙 내에 저장된다. 각 트랙(34)은 일반적으로 복수의 섹터들을 포함하고 있다. 일 트랙에 대한 섹터 구성을 도 9에 도시하였다.
도 9에 도시된 바와 같이, 하나의 섹터 구간(T)에는 서보 정보 영역(901)과 데이터 영역(902)으로 구성되고, 데이터 영역에는 복수개의 데이터 블록(D)들이 포함될 수 있다. 물론, 한 섹터의 데이터 필드(902)를 단일의 데이터 블록(D)으로 구성할 수도 있다. 그리고, 서보 정보 영역(901)에는 세부적으로 도 10과 같은 신호들이 기록되어 있다
도 10에 도시된 바와 같이, 서보 정보 영역(901)에는 프리앰블(Preamble; 101), 서보 동기 표시 신호(102), 그레이 코드(Gray Code; 103) 및 버스트 신호(Burst; 104)들이 기록된다.
프리앰블(101)은 서보 정보 독출 시에 클럭 동기를 제공하고, 또한 서보 섹터 앞의 갭(gap)을 두어 일정한 타이밍 마진을 제공한다. 그리고, 자동이득제어(AGC) 회로의 이득을 결정하는데 이용된다.
서보 동기 표시 신호(102)는 서보 어드레스 마크(Servo Address Mark; SAM) 및 서보 인덱스 마크(Servo Index Mark; SIM)로 구성된다. 서보 어드레스 마크는 섹터의 시작을 나타내는 신호이고, 서보 인덱스 마크는 트랙에서의 첫 번째 섹터의 시작을 나타내는 신호이다.
그레이 코드(103)는 트랙 정보를 제공하고, 버스트 신호(104)는 변환기(16)가 트랙(34)의 중앙을 추종하도록 제어하는데 이용되는 신호이며, 일예로서 A,B,C,D 4개의 패턴으로 구성된다. 즉, 4개의 버스트 패턴들을 조합하여 트랙 추종 제어 시에 사용되는 위치에러신호를 생성시킨다.
디스크(12)의 기록 가능한 영역에는 논리 블록 어드레스가 할당된다. 디스크 드라이브에서 논리 블록 어드레스는 실린더/헤드/섹터 정보로 변환되어 디스크(12)의 기록 영역이 지정된다. 디스크(12)는 사용자가 접근할 수 없는 메인터넌스 실린더(maintenance cylinder) 영역과 사용자가 접근할 수 있는 사용자 데이터 영역으로 구분된다. 메인터넌스 실린더 영역을 시스템 영역이라 칭하기도 한다. 메인터넌스 실린더 영역에는 재할당 섹터 리스트들이 저장된다. 그리고, 디스크(12)에는 사용자 환경에서 디펙 섹터가 발생되는 경우에 이를 대체할 스페어 섹터(spare sector)들이 지정되어 있다. 일예로서, 각 트랙(34)별 또는 존별로 일정 개수의 스페어 섹터를 지정할 수 있다.
변환기(16)는 다른 트랙에 있는 정보를 읽거나 기록하기 위하여 디스크(12) 표면을 가로질러 이동된다. 디스크(12)에는 디스크 드라이브로 다양한 기능을 구현시키기 위한 복수개의 코드 오브젝트들이 저장될 수 있다. 일예로서, MP3 플레이어 기능을 수행하기 위한 코드 오브젝트, 네비게이션 기능을 수행하기 위한 코드 오브젝트, 다양한 비디오 게임을 수행하기 위한 코드 오브젝트 등이 디스크(12)에 저장될 수 있다.
다시 도 1을 참조하면, 미디어 인터페이스(140)는 프로세서(110)가 미디어(150)를 액세스하여 정보를 라이트 또는 리드할 수 있도록 처리하는 구성 수단이다. 디스크 드라이브로 구현되는 데이터 저장 장치에서의 미디어 인터페이스(140) 는 세부적으로 헤드 디스크 어셈블리(100)를 제어하는 서보 회로 및 데이터 리드/라이트를 위한 신호 처리를 수행하는 리드/라이트 채널 회로를 포함한다.
호스트 인터페이스(160)는 퍼스널 컴퓨터 등과 같은 호스트 기기(170)와의 데이터 송/수신 처리를 실행하는 수단으로서, 예를 들어 SATA(Serial Advanced Technology Attachment) 인터페이스, PATA(Parallel Advanced Technology Attachment) 인터페이스, USB(Universal Serial Bus) 인터페이스 등과 같은 다양한 규격의 인터페이스를 이용할 수 있다.
그리고, 외부 인터페이스(180)는 데이터 저장 장치에 설치된 입/출력 단자를 통하여 외부 장치와의 데이터 송/수신 처리를 실행하는 수단으로서, 예를 들어 AGP(Accelerated Graphics port) 인터페이스, USB 인터페이스, IEEE1394 인터페이스, PCMCIA(Personal Computer Memory Card International Association) 인터페이스, LAN 인터페이스, 블루투스(Bluetooth) 인터페이스, HDMI(High Definition Multimedia Interface), PCI(Programmable Communication Interface), ISA(Industry Standard Architecture) 인터페이스, PCI-E(Peripheral Component Interconnect-Express) 인터페이스, 익스프레스 카드(Express Card) 인터페이스, SATA 인터페이스, PATA 인터페이스, 시리얼(serial) 인터페이스 등과 같은 다양한 규격의 인터페이스를 이용할 수 있다.
버스(190)는 데이터 저장 장치의 구성 수단들 간의 정보를 전달하는 역할을 한다.
다음으로, 데이터 저장 장치의 일예인 하드 디스크 드라이브의 소프트웨어 운영 체계에 대하여 도 2를 참조하여 설명하기로 한다.
도 2에 도시된 바와 같이, 하드 디스크 드라이브(HDD)의 미디어(150)에는 복수의 코드 오브젝트(Code Object 1 ~ N)들이 저장되어 있다.
ROM(120)에는 부트 이미지(Boot Image) 및 압축된 RTOS 이미지(packed RTOS Image)가 저장되어 있다.
하드디스크 드라이브(HDD) 미디어(150)인 디스크에는 복수의 코드 오브젝트(CODE OBJECT 1~N)들이 저장되어 있다. 디스크에 저장된 코드 오브젝트들은 디스크 드라이브의 동작에 필요한 코드 오브젝트들뿐만 아니라, 디스크 드라이브로 확장할 수 있는 다양한 기능에 관련된 코드 오브젝트들도 포함될 수 있다. 특히, 본 발명의 기술적 사상인 라이트 결함 복구 방법의 다양한 실시 예들을 도시한 도 13 ~ 도 16의 흐름도를 실행시키기 위한 코드 오브젝트들도 디스크에 저장된다. 물론, 도 13 ~ 도 16의 흐름도를 실행시키기 위한 코드 오브젝트들을 HDD 미디어(150)인 디스크 대신에 ROM(120)에 저장할 수도 있다. 그리고, MP3 플레이어 기능, 네비게이션 기능, 비디오 게임 기능 등의 다양한 기능을 수행하는 코드 오브젝트들도 디스크에 저장될 수 있다.
RAM(130)에는 부팅 과정에서 ROM(120)으로부터 부트 이미지(Boot Image)를 읽어내어 압축 해제된 RTOS 이미지(Unpacked RTOS Image)가 로딩된다. 그리고, HDD 미디어(150)에 저장되어 있는 호스트 인터페이스 및 외부 인터페이스 수행에 필요한 코드 오브젝트들이 RAM(130)에 로딩된다. 물론, RAM(130)에는 데이터를 저장하기 위한 영역(DATA AREA)도 할당되어 있다.
채널(CHANNEL) 회로(200)에는 데이터 리드/라이트를 위한 신호 처리를 수행하는데 필요한 회로들이 내장되어 있으며, 서보(SERVO) 회로(210)에는 데이터 리드/라이트를 수행하기 위하여 헤드 디스크 어셈블리(100)를 제어하는데 필요한 회로들이 내장되어 있다.
RTOS(Real Time Operating System; 110A)는 실시간 운영 체계 프로그램으로서, 디스크를 이용한 다중 프로그램 운영 체계이다. 태스크(task)에 따라서 우선순위가 높은 전위(foreground)에서는 실시간 다중 처리를 하며, 우선순위가 낮은 후위(background)에서는 일괄 처리를 한다. 그리고, 디스크로부터의 코드 오브젝트의 로딩과 디스크로의 코드 오브젝트의 언로딩을 수행한다.
RTOS(Real Time Operating System; 110A)는 코드 오브젝트 관리 유닛(Code Object Management Unit; COMU, 110-1), 코드 오브젝트 로더(Code Object Loader; COL, 110-2), 메모리 핸들러(Memory Handler; MH, 110-3), 채널 제어 모듈(Channel Control Module; CCM, 110-4) 및 서보 제어 모듈(Servo Control Module; SCM, 110-5)들을 관리하여 요청된 명령에 따른 태스크를 실행한다. RTOS(110A)는 또한 어플리케이션(Application) 프로그램(220)들을 관리한다.
세부적으로, RTOS(110A)는 디스크 드라이브의 부팅 과정에서 디스크 드라이브 제어에 필요한 코드 오브젝트들을 RAM(130)에 로딩시킨다. 따라서, 부팅 과정을 실행하고 나면 RAM(130)에 로딩된 코드 오브젝트들을 이용하여 디스크 드라이브를 동작시킬 수 있게 된다.
COMU(110-1)은 코드 오브젝트들이 기록되어 있는 위치 정보를 저장하고, 가 상 주소를 실제 주소로 변환시키며, 버스를 중재하는 처리를 수행한다. 또한, 실행되고 있는 태스크들의 우선순위에 대한 정보도 저장되어 있다. 그리고, 코드 오브젝트에 대한 태스크 수행에 필요한 태스크 제어 블록(Task Control Block; TCB) 정보 및 스택 정보도 관리한다.
COL(110-2)는 COMU(110-1)을 이용하여 HDD 미디어(150)에 저장되어 있는 코드 오브젝트들을 RAM(130)에 로딩시키거나, RAM(130)에 저장되어 있는 코드 오브젝트들을 HDD 미디어(150)로 언로딩시키는 처리를 수행한다. 이에 따라서, COL(110-2)는 HDD 미디어(150)에 저장되어 있는 도 13 ~ 도 16의 흐름도에 따른 라이트 결함 복구 방법을 실행시키기 위한 코드 오브젝트들을 RAM(130)에 로딩시킬 수 있다.
RTOS(110A)는 RAM(130)에 로딩된 코드 오브젝트들을 이용하여 아래에서 설명되어질 도 13 ~ 도 16의 흐름도에 따른 라이트 결함 복구 방법을 실행시킬 수 있게 된다.
MH(110-3)는 ROM(120) 및 RAM(130)에 데이터를 라이트하거나 리드하는 처리를 수행한다.
CCM(110-4)은 데이터 리드/라이트를 위한 신호 처리를 수행하는데 필요한 채널 제어를 수행하고, SCM(110-5)는 데이터 리드/라이트를 수행하기 위하여 헤드 디스크 어셈블리를 포함하는 서보 제어를 수행한다.
다음으로, 도 1에 도시된 본 발명의 기술적 사상에 의한 일실시 예에 따른 데이터 저장 장치의 일예인 디스크 드라이브의 전기적인 구성을 도 4에 도시하였다.
도 4에 도시된 바와 같이, 본 발명의 기술적 사상에 의한 일실시 예에 따른 디스크 드라이브는 프리 앰프(410, PRE-AMP), 리드/라이트 채널(420, R/W CHANNEL), 컨트롤러(430), 보이스 코일 모터 구동부(440, VCM 구동부), 스핀들 모터 구동부(450, SPM 구동부), ROM(120), RAM(130) 및, 호스트 인터페이스(160)를 구비한다.
컨트롤러(430)는 디지털 신호 프로세서(DSP: Digital Signal Processor), 마이크로프로세서, 마이크로컨트롤러, 프로세서 등이 될 수 있다. 컨트롤러(430)는 호스트 인터페이스 회로(160)를 통하여 호스트 기기로부터 수신되는 커맨드(command)에 따라서 디스크(12)로부터 정보를 읽거나 또는 디스크(12)에 정보를 기록하기 위하여 리드/라이트 채널(420)을 제어한다.
컨트롤러(430)는 보이스 코일 모터(30, VCM)를 구동시키기 위한 구동 전류를 공급하는 VCM(Voice Coil Motor) 구동부(440)에 결합되어 있다. 컨트롤러(430)는 자기 헤드(16)의 움직임을 제어하기 위하여 VCM 구동부(440)로 제어신호를 공급한다.
컨트롤러(430)는 스핀들 모터(14, SPM)를 구동시키기 위한 구동 전류를 공급하는 SPM(Spindle Motor) 구동부(450)에 또한 결합되어 있다. 컨트롤러(430)는 전원이 공급되면, 스핀들 모터(14)를 목표 속도로 회전시키기 위하여 SPM 구동부(450)에 제어신호를 공급한다.
그리고, 컨트롤러(430)는 ROM(120) 및 RAM(130)과 각각 결합되어 있다. ROM(120)에는 디스크 드라이브를 제어하는 펌웨어 및 제어 데이터들이 저장되어 있 다. 도 13 ~ 도 16에 도시된 본 발명의 기술적 사상에 따른 라이트 결함 복구 방법을 실행시키기 위한 프로그램 코드 및 정보들을 저장된다. 물론, 도 13 ~ 도 16에 도시된 본 발명의 기술적 사상에 따른 라이트 결함 복구 방법을 실행시키기 위한 프로그램 코드 및 정보들을 ROM(120) 대신에 디스크(12)의 메인터넌스 실린더 영역에 저장할 수도 있다.
우선, 일반적인 디스크 드라이브의 동작을 설명하면 다음과 같다.
데이터 읽기(Read) 모드에서, 디스크 드라이브는 디스크(12)로부터 자기 헤드(16)에 의하여 감지된 전기적인 신호를 프리 앰프(410)에서 증폭시킨다. 그리고 나서, 리드/라이트 채널(420)에서 신호의 크기에 따라 이득을 자동으로 가변시키는 자동 이득 제어 회로(도면에 미도시)에 의하여 프리 앰프(420)로부터 출력되는 신호를 증폭시키고, 이를 디지털 신호로 변환시킨 후에, 복호 처리하여 데이터를 검출한다. 검출된 데이터는 컨트롤러(430)에서 일예로서 에러 정정 코드인 리드 솔로몬 코드를 이용한 에러 정정 처리를 실행한 후에, 스트림 데이터로 변환하여 호스트 인터페이스 회로(160)를 통하여 호스트 기기로 전송한다. 컨트롤러(430)는 ECC 스캔 모드를 실행하여 디스크(12)에서 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수 정보를 섹터별로 생성시킬 수 있다.
다음으로 쓰기(Write) 모드에서, 디스크 드라이브는 호스트 인터페이스 회로(160)를 통하여 호스트 기기로부터 데이터를 입력받아, 컨트롤러(430)에서 리드 솔로몬 코드에 의한 에러 정정용 심볼을 부가하고, 리드/라이트 채널 회로(420)에 의하여 기록 채널에 적합하도록 부호화 처리한 후에 프리 앰프(410)에 의하여 증폭된 기록 전류로 자기 헤드(16)를 통하여 디스크(12)에 기록시킨다.
다음으로, 본 발명의 기술적 사상에 의한 라이트 결함 복구 방법을 디스크 드라이브에서 실행시키는 실시 예에 대하여 구체적으로 설명하기로 한다.
컨트롤러(430)는 ROM(120) 또는 디스크(12)에 저장된 라이트 결함 복구 방법을 실행시키기 위한 프로그램 코드 및 정보들을 RAM(130)에 로딩시키고, RAM(130)에 로딩된 프로그램 코드 및 정보들을 이용하여 도 13 ~ 도 16에 도시된 본 발명의 기술적 사상에 따른 라이트 결함 복구 방법을 실행시키도록 구성 수단들을 제어한다.
본 발명의 기술적 사상에 따른 라이트 결함 복구 처리 장치의 회로 블록 구성의 예를 도 5 및 도 6에 도시하였다. 도 5 및 도 6에 도시된 라이트 결함 복구 처리 장치는 도 1의 데이터 저장 장치의 프로세서(110) 또는 도 4의 컨트롤러(430)에 포함되도록 설계할 수 있으며, 경우에 따라서는 별도의 회로 구성으로 설계할 수도 있다.
본 발명의 일실시 예에서는 도 5 및 도 6의 라이트 결함 복구 처리 장치를 프로세서(110) 또는 컨트롤러(430)에 포함되도록 설계하였다.
우선, 도 5에 도시된 본 발명의 기술적 사상의 일 실시 예인 라이트 결함 복구 처리 장치에 대하여 설명하기로 한다.
도 5에 도시된 바와 같이, 라이트 결함 복구 처리 장치는 라이트 결함 검출부(510), 라이트 결함 복구 영역 결정부(520) 및 라이트 결함 복구 제어부(530)를 구비한다.
라이트 결함 검출부(510)는 라이트 동작을 실행하는 동안에 디스크(12)의 서보 정보 영역(901)에서 읽어낸 신호를 이용하여 라이트 결함이 발생되는지를 판정한다. 즉, 서보 정보 영역(901)에서 읽어낸 프리앰블(Preamble; 101), 서보 동기 표시 신호(102), 그레이 코드(Gray Code; 103) 및 버스트 신호(Burst; 104)들 중의 어느 하나의 신호에서 결함이 발생되는 경우에 라이트 결함이 발생되는 것으로 판정하고, 라이트 결함이 발생되는 것을 알리는 라이트 결함 검출 신호를 생성시킨다. 일 예로서, 라이트 결함 검출부(510)는 라이트 동작을 실행하는 동안에 버스트 신호(Burst; 104)를 이용하여 생성시킨 위치에러신호의 레벨이 기준값 미만인 경우에 라이트 결함이 발생되는 것으로 판정한다. 위치에러신호의 레벨이 기준값 미만인 경우에는 트랙 추종 제어를 정상적으로 실행할 수 없게 된다.
도 11(a)에 라이트 모드를 실행하는 과정에서 라이트 결함이 발생되는 경우의 섹터 위치별 위치에러신호를 도시하였으며, 도 11(b)에 라이트 모드를 실행하는 과정에서 라이트 결함이 발생되지 않은 경우의 섹터 위치별 위치에러신호를 도시하였다. 도 11(a) 및 (b)에서 가로축은 섹터 번호를 나타내고, 세로축은 위치에러신호의 크기를 나타낸다.
도 11(a)를 참조하면, 섹터 번호 139 ~ 159 근처에서의 위치에러신호의 크기가 다른 섹터 영역에 비하여 비정상적으로 감소됨을 알 수 있다. 이에 따라서, 섹터 번호 139 ~ 159 근처에서 라이트 결함이 검출된다.
라이트 결함 복구 제어부(530)는 라이트 결함 검출 신호가 수신되는 경우에 라이트 명령의 실행을 정지시키고, 라이트 명령의 실행이 정지된 라이트 결함이 발생되는 섹터 정보를 프로세서(110)의 내부 레지스터(도면에 미도시)에 저장한다. 그리고, 라이트 결함 복구 제어부(530)는 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역으로부터 정보를 읽어내기 위한 제어신호를 생성시킨다. 이에 따라서, 라이트 결함 복구 제어부(530)에서 생성된 제어신호에 따라서 미디어 인터페이스(140)는 기록매체를 액세스하여 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역에 포함된 데이터 영역으로부터 정보를 읽어낸다.
라이트 결함 복구 영역 결정부(520)는 ECC 스캔 모드를 이용하여 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역에 포함된 데이터 영역으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수를 섹터별로 산출하고, 산출된 섹터별 ECC 정정 심볼의 개수에 근거하여 라이트 결함 복구 시작 섹터를 결정한다. 라이트 결함 복구 영역 결정부(520)의 세부적인 구성을 도 7에 도시하였다.
도 7에 도시된 바와 같이, 라이트 결함 복구 영역 결정부(520)는 ECC 처리부(710), 버퍼(720), 제1판정부(730) 및 라이트 결함 복구 시작 섹터 결정부(740)를 구비한다.
ECC 처리부(710)는 ECC 스캔 동작에 의하여 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역에 포함된 데이터 영역으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여, 섹터별 ECC 정정 심볼의 개수 정보를 연산하여 산출한다. ECC 처리부(110-1)는 일예로서, 리드 솔로몬(Reed Solomon; RS) 복호기를 이용하여 ECC 심볼들 중에서 오류가 발생된 ECC 심볼을 검출하고, 오류가 발생된 ECC 심볼을 정정하는 ECC 정정 심볼을 생성시킬 수 있다. 이에 따라서, 섹터별로 발생된 ECC 정정 심볼의 개수를 카운트하면 섹터별 ECC 정정 심볼의 개수 정보를 산출할 수 있다. 라이트 결함이 발생되는 경우에 이와 같이 산출된 섹터별 ECC 정정 심볼 개수의 분포의 일예를 도 12에 도시하였다.
그리고, ECC 처리부(710)에서 산출된 섹터별 ECC 정정 심볼의 개수 정보를 버퍼(720)에 저장한다. 이에 따라서, 버퍼(720)에는 섹터 정보와 함께 해당 섹터에 대한 ECC 정정 심볼의 개수 정보가 저장된다.
제1판정부(730)는 버퍼(720)에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제1임계값을 비교하여, 최초로 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하는 섹터를 검출한다. 여기에서, 제1임계값은 하나의 섹터에서 에러 정정 처리를 정상적으로 수행할 수 있는 최대 ECC 심볼의 개수와 같거나 작게 설정한다. 일예로서, 하나의 섹터에서 정상적으로 에러 정정 처리할 수 있는 최대 ECC 심볼의 개수의 70%로 제1임계값을 설정할 수 있으며, 이와 같이 제1임계값을 설정하면 잠재적으로 문제가 있는 섹터부터 다시 쓰기를 실행할 수 있게 된다.
라이트 결함 복구 시작 섹터 결정부(740)는 제1판정부(730)에서 검출된 최초로 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하는 섹터를 라이트 결함 복구 시작 섹터로 결정하고, 결정된 라이트 결함 복구 시작 섹터 정보(S1)를 출력 한다.
만일, 버퍼(720)에서 읽어낸 모든 섹터들에 대한 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하지 않는다고 제1판정부(730)에서 판정되면, 라이트 결함 복구 시작 섹터 결정부(740)는 라이트 결함이 발생되어 라이트 동작이 정지된 섹터 위치를 기준으로 초기 설정된 개수 이전 섹터를 라이트 결함 복구 시작 섹터로 결정한다.
이와 같은 동작에 의하여 라이트 결함이 발생되는 경우에 라이트 결함 복구 시작 섹터 위치를 결정할 수 있게 된다. 라이트 결함 복구 시작 섹터 위치에 따라서 다시 쓰기로 복구해야 하는 섹터 수가 결정된다.
다시 도 5를 참조하면, 라이트 결함 복구 제어부(530)는 도 7에서 설명한 바와 같은 라이트 결함 복구 영역 결정부(520)에서 출력되는 라이트 결함 복구 시작 섹터 정보(S1)를 입력하여, 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 실행시키기 위한 제어신호를 발생시킨다. 즉, 라이트 결함이 발생되어 일시 정지되었던 라이트 명령에 의한 라이트 동작을 라이트 결함 복구 시작 섹터 위치부터 다시 실행시키도록 제어한다. 이에 따라서, 라이트 결함 복구 제어부(530)에서 생성된 제어신호에 따라서 미디어 인터페이스(140)는 기록매체를 액세스하여 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 동작을 실행한다.
다음으로, 도 6에 도시된 본 발명의 기술적 사상의 다른 실시 예인 라이트 결함 복구 처리 장치에 대하여 설명하기로 한다.
도 6에 도시된 바와 같이, 라이트 결함 복구 처리 장치는 라이트 결함 검출 부(510), 라이트 결함 복구 영역 결정부(520), 라이트 결함 복구 제어부(530), 디펙 섹터 검출부(540) 및 디펙 처리 제어부(550)를 구비한다. 여기에서, 라이트 결함 복구 영역 결정부(520) 및 디펙 섹터 검출부(540)를 포함하는 블록(1000)의 세부적인 구성을 도 8에 도시하였다.
도 6에 도시된 라이트 결함 검출부(510) 및 라이트 결함 복구 제어부(530)는 도 5에서 이미 설명하였으므로 중복 설명을 생략하기로 한다.
블록(1000)에 대하여 도 8을 참조하여 설명하기로 한다.
도 6에 도시된 바와 같이, 라이트 결함 복구 영역 결정부(520) 및 디펙 섹터 검출부(540)를 포함하는 블록(1000)은 ECC 처리부(710), 버퍼(720), 제1판정부(730), 라이트 결함 복구 시작 섹터 결정부(740), 제2판정부(750) 및 디펙 섹터 결정부(760)를 구비한다. 여기에서, ECC 처리부(710) 및 버퍼(720)는 라이트 결함 복구 영역 결정부(520) 및 디펙 섹터 검출부(540)에서 공통적으로 이용된다. 참고적으로, 도 6에 도시된 디펙 섹터 검출부(540)는 ECC 처리부(710), 버퍼(720), 제2판정부(750) 및 디펙 섹터 결정부(760)를 포함하는 블록을 의미한다.
ECC 처리부(710)는 도 6에서 설명한 바와 같이 ECC 스캔 동작에 의하여 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역에서의 섹터별 ECC 정정 심볼의 개수 정보를 연산하여 산출한다. 그리고, ECC 처리부(710)에서 산출된 섹터별 ECC 정정 심볼의 개수 정보를 버퍼(720)에 저장한다. 이에 따라서, 버퍼(720)에는 섹터 정보와 함께 해당 섹터에 대한 ECC 정정 심볼의 개수 정보가 저장된다.
제1판정부(730)는 버퍼(720)에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제1임계값을 비교하여, 최초로 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하는 섹터를 검출한다.
라이트 결함 복구 시작 섹터 결정부(740)는 제1판정부(730)에서 검출된 최초로 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하는 섹터를 라이트 결함 복구 시작 섹터로 결정하고, 결정된 라이트 결함 복구 시작 섹터 정보(S1)를 출력한다.
만일, 버퍼(720)에서 읽어낸 모든 섹터들에 대한 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하지 않는다고 제1판정부(730)에서 판정되면, 라이트 결함 복구 시작 섹터 결정부(740)는 라이트 결함이 발생되어 라이트 동작이 정지된 섹터 위치를 기준으로 초기 설정된 개수 이전 섹터를 라이트 결함 복구 시작 섹터로 결정한다.
만일, 동일한 라이트 명령을 실행하면서 2회 이상 라이트 결함이 발생되는 경우 즉, 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되는 경우에는 제2판정부(750)를 동작시킨다.
제2판정부(750)는 버퍼(720)에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제2임계값을 비교하여, 제2임계값을 초과하는 섹터를 검출한다. 여기에서, 제2임계값은 제1임계값과 같은 값으로 설정할 수도 있으며, 또한 제2임계값을 제1임계값과 다르게 설정할 수도 있다.
디펙 섹터 결정부(760)는 제2판정부(750)에서 검출된 섹터별 ECC 정정 심볼 의 개수 정보가 제2임계값을 초과하는 섹터를 디펙 섹터로 결정하고, 결정된 디펙 섹터 정보(S2)를 출력한다.
다시 도 6을 참조하면, 라이트 결함 복구 제어부(530)는 도 8에서 설명한 바와 같이, 하나의 라이트 명령을 실행하면서 최초로 라이트 결함이 발생되는 경우에는 라이트 결함 복구 영역 결정부(520)에서 출력되는 라이트 결함 복구 시작 섹터 정보(S1)를 입력하여, 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 실행시키기 위한 제어신호(1)를 발생시킨다. 이에 따라서, 라이트 결함 복구 제어부(530)에서 생성된 제어신호에 따라서 미디어 인터페이스(140)는 기록매체를 액세스하여 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 동작을 실행한다. 즉, 라이트 결함이 발생되어 일시 정지되었던 라이트 명령에 의한 라이트 동작을 라이트 결함 복구 시작 섹터 위치부터 다시 실행시킨다.
그러나, 하나의 라이트 명령을 실행하면서 중복되는 라이트 결함이 발생되는 경우에는 디펙 섹터 검출부(540)에서 출력되는 디펙 섹터 정보(S2)를 입력하여 디펙 처리를 실행시키기 위한 제어신호(2)를 발생시킨다. 제어신호(2)에 따라서 디펙으로 결정된 섹터를 스페어 섹터로 재할당 처리한다. 이와 같은 디펙 처리를 마치고 나서, 라이트 결함 복구 제어부(530)는 라이트 결함 복구 영역 결정부(520)에서 출력되는 라이트 결함 복구 시작 섹터 정보(S1)를 입력하여, 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 실행시키도록 미디어 인터페이스(140)를 제어한다.
그러면, 도 1의 데이터 저장 장치의 프로세서(110) 또는 도 4의 디스크 드라이브의 컨트롤러(430)의 제어에 의하여 실행되는 본 발명의 기술적 사상에 의한 라 이트 결함 복구 방법에 대하여 도 13 ~ 도 16의 흐름도를 참조하여 설명하기로 한다.
우선, 도 13에 도시된 본 발명의 기술적 사상에 의한 라이트 결함 복구 방법의 일실시 예에 대하여 설명하기로 한다.
프로세서(110) 또는 컨트롤러(430)는 호스트 기기(170)로부터 라이트 명령이 수신되는지를 판단한다(S1301).
라이트 명령이 수신되는 경우에는 라이트 명령에 의하여 지정된 기록매체의 트랙의 섹터 영역에 수신되는 데이터를 라이트하는 동작을 실행한다(S1302).
라이트 동작을 실행하면서 라이트 결함이 발생되는지를 판단한다(S1303). 데이터 저장 장치가 디스크 드라이브인 경우에는 디스크(12)의 서보 정보 영역(901)에서 읽어낸 신호를 이용하여 라이트 결함이 발생되는지를 판단한다. 즉, 서보 정보 영역(901)에서 읽어낸 프리앰블(Preamble; 101), 서보 동기 표시 신호(102), 그레이 코드(Gray Code; 103) 및 버스트 신호(Burst; 104)들 중의 어느 하나의 신호에서 결함이 발생되는 경우에 라이트 결함이 발생되는 것으로 판단한다. 구체적으로, 버스트 신호(Burst; 104)를 이용하여 생성시킨 위치에러신호의 레벨이 기준값 미만인 경우에 라이트 결함이 발생되는 것으로 판정할 수 있다.
단계1303(S1303)의 판단 결과 라이트 결함이 발생된 경우에는 실행 중인 라이트 모드를 정지시킨다(S1304).
다음으로, ECC 스캔 모드를 이용하여 라이트 결함 복구 시작 섹터를 결정한다(S1305). 즉, ECC 스캔 동작에 의하여 라이트 결함이 발생된 라이트 명령에 의하 여 지정된 트랙의 섹터 영역에서 산출된 섹터별 ECC 정정 심볼 개수와 임계 조건을 비교하여 라이트 결함 복구 시작 섹터를 결정한다. 라이트 결함 복구 시작 섹터를 결정하는 방법의 일예를 도 14에 도시하였다.
도 14를 참조하여 라이트 결함 복구 시작 섹터를 결정하는 방법에 대하여 구체적으로 설명하기로 한다.
우선, 라이트 결함이 발생된 트랙으로부터 데이터를 리드한다(S1401). 구체적으로, 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역으로부터 데이터를 리드한다.
다음으로, ECC 스캔 동작에 의하여 섹터별 ECC 정정 심볼 개수를 산출하여 저장한다(S1402). 즉, ECC 스캔 동작에 의하여 읽어낸 데이터에 포함된 에러 정정 코드(ECC) 심볼들 중에서 ECC 디코딩 처리하는 과정에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여, 섹터별 ECC 정정 심볼의 개수 정보를 산출하여 저장한다. 일예로서, 리드 솔로몬(Reed Solomon; RS) 복호기를 이용하여 ECC 심볼들 중에서 오류가 발생된 ECC 심볼을 검출하고, 오류가 발생된 ECC 심볼을 정정하는 ECC 정정 심볼을 생성시킬 수 있다. 그리고, 섹터별로 발생된 ECC 정정 심볼의 개수를 합산하면 섹터별 ECC 정정 심볼의 개수 정보를 산출할 수 있다.
다음으로, 단계1402(S1402)에서 산출된 섹터별 ECC 정정 심볼의 개수에 근거하여 라이트 결함 복구 시작 섹터를 결정한다(S1403). 일 예로서, 단계1402(S1402)에서 산출된 섹터별 ECC 정정 심볼의 개수 정보와 제1임계값을 순차적으로 비교하여, 최초로 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하는 섹터를 라 이트 결함 복구 시작 섹터로 결정할 수 있다. 만일, 단계1402(S1402)에서 산출된 모든 섹터들에 대한 섹터별 ECC 정정 심볼의 개수 정보가 제1임계값을 초과하지 않는 경우에는 라이트 결함이 발생되어 라이트 동작이 정지된 섹터 위치를 기준으로 초기 설정된 개수 이전 섹터를 라이트 결함 복구 시작 섹터로 결정할 수 있다.
이와 같은 동작에 의하여 라이트 결함 복구 시작 섹터를 결정할 수 있게 된다.
다시 도 13을 참조하면, 단계1305에서 결정된 라이트 결함 복구 시작 섹터 위치부터 다시 쓰기를 실행한다(S1306). 즉, 라이트 결함이 발생되어 일시 정지되었던 라이트 명령에 의한 라이트 동작을 라이트 결함 복구 시작 섹터 위치부터 다시 실행시킨다.
다음으로, 도 15에 도시된 본 발명의 기술적 사상에 의한 라이트 결함 복구 방법의 다른 실시 예에 대하여 설명하기로 한다.
도 15에 도시된 단계1301(S1301) ~ 단계1306(S1306)은 도 13에 도시된 단계1301(S1301) ~ 단계1306(S1306)과 동일하므로 중복된 설명은 피하기로 하다.
라이트 결함 발생에 따른 단계1306(S1306)에서 다시 쓰기를 실행하는 과정에서 중복된 라이트 결함이 발생되는지를 판단한다(S1307). 즉, 동일한 라이트 명령을 실행하면서 2회 이상 라이트 결함이 발생되는지를 판단한다. 라이트 결함의 판단은 단계1303(S1303)과 같은 방식으로 수행할 수 있다.
단계1307(S1307)의 판단 결과 2회 이상의 중복된 라이트 결함이 발생된 경우에 다시 쓰기 모드를 정지시킨다(S1308).
다음으로, ECC 스캔 모드를 이용하여 디펙 섹터 검출 및 보상 처리를 실행한다(S1309). 디펙 섹터 검출 및 보상 처리 방법의 일예를 도 16에 도시하였다.
도 16을 참조하여 디펙 섹터 검출 및 보상 처리 방법에 대하여 구체적으로 설명하기로 한다.
우선, 라이트 결함이 발생된 트랙으로부터 데이터를 리드한다(S1601). 구체적으로, 라이트 결함이 발생된 라이트 명령에 의하여 지정된 트랙의 섹터 영역으로부터 데이터를 리드한다.
다음으로, ECC 스캔 동작에 의하여 섹터별 ECC 정정 심볼 개수를 산출하여 저장한다(S1602). 즉, ECC 스캔 동작에 의하여 읽어낸 데이터에 포함된 에러 정정 코드(ECC) 심볼들 중에서 ECC 디코딩 처리하는 과정에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여, 섹터별 ECC 정정 심볼의 개수 정보를 산출하여 저장한다. 일예로서, 리드 솔로몬(Reed Solomon; RS) 복호기를 이용하여 ECC 심볼들 중에서 오류가 발생된 ECC 심볼을 검출하고, 오류가 발생된 ECC 심볼을 정정하는 ECC 정정 심볼을 생성시킬 수 있다. 그리고, 섹터별로 발생된 ECC 정정 심볼의 개수를 합산하면 섹터별 ECC 정정 심볼의 개수 정보를 산출할 수 있다.
다음으로, 단계1602(S1602)에서 산출된 섹터별 ECC 정정 심볼의 개수에 근거하여 디펙 섹터를 검출한다(S1603). 일예로서, 단계1602(S1602)에서 산출된 섹터별 ECC 정정 심볼의 개수 정보와 제2임계값을 비교하여, 섹터별 ECC 정정 심볼의 개수 정보가 제2임계값을 초과하는 섹터 검출하여 디펙 섹터로 결정할 수 있다.
다음으로, 단계1603(S1603)에서 검출된 디펙 섹터를 스페어 섹터로 재할당 처리한다(S1604). 이에 따라서, 데이터 리드 또는 라이트 모드에서 디펙 섹터는 액세스되지 않게 된다.
이와 같은 동작에 의하여 라이트 결함 발생 영역에서의 디펙 섹터 검출 및 처리를 실행할 수 있게 된다.
다시 도 15를 참조하면, 단계1305에서 결정된 라이트 결함 복구 시작 섹터 위치부터 2차 다시 쓰기를 실행한다(S1310). 즉, 중복적인 라이트 결함이 발생되어 일시 정지되었던 라이트 명령에 의한 라이트 동작을 라이트 결함 복구 시작 섹터 위치부터 다시 실행시킨다.
위와 같은 동작에 의하여 라이트 결함 발생시에 섹터 단위로 에러가 발생될 섹터를 정확히 판단할 수 있으므로 잠재적인 문제가 있는 섹터에서 다시 쓰기를 실행할 수 있게 된다.
본 발명은 방법, 장치, 시스템 등으로서 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필연적으로 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되어 질 수 있다.
첨부된 도면에 도시되어 설명된 특정의 실시 예들은 단지 본 발명의 예로서 이해되어 지고, 본 발명의 범위를 한정하는 것이 아니며, 본 발명이 속하는 기술분야에서 본 발명에 기술된 기술적 사상의 범위에서도 다양한 다른 변경이 발생될 수 있으므로, 본 발명은 보여지거나 기술된 특정의 구성 및 배열로 제한되지 않는 것은 자명하다.
도 1은 본 발명의 기술적 사상에 의한 일실시 예에 따른 데이터 저장 장치의 구성도이다.
도 2는 도 1에 도시된 데이터 저장 장치의 소프트웨어 운영 체계도이다.
도 3은 본 발명의 기술적 사상에 의한 다른 실시 예에 따른 디스크 드라이브의 헤드 디스크 어셈블리의 평면도이다.
도 4는 도 3은 본 발명의 기술적 사상에 의한 다른 실시 예에 따른 디스크 드라이브의 전기적인 구성도이다.
도 5는 본 발명의 기술적 사상에 의한 일실시 예에 따른 라이트 결함 복구 처리 장치의 구성도이다.
도 6은 본 발명의 기술적 사상에 의한 다른 일실시 예에 따른 라이트 결함 복구 처리 장치의 구성도이다.
도 7은 도 5 및 도 6에 도시된 라이트 결함 복구 영역 결정부(520)의 세부 구성도이다.
도 8은 도 6에 도시된 블록(1000)의 세부 구성도이다.
도 9는 본 발명에 적용되는 기록매체인 디스크의 일 트랙에 대한 섹터 구조를 보여주는 도면이다.
도 10은 도 9에 도시된 서보 정보 영역(901)의 구조를 보여주는 도면이다.
도 11(a)는 라이트 결함이 발생되는 경우의 섹터 위치별 위치에러신호를 도시한 것이고, 도 11(b)는 라이트 결함이 발생되지 않는 정상적인 경우의 섹터 위치 별 위치에러신호를 도시한 것이다.
도 12는 도 11(a)와 같은 라이트 결함이 발생되는 경우에, ECC 스캔 동작에 의하여 산출된 섹터별 ECC 정정 심볼 개수의 분포도이다.
도 13은 본 발명의 기술적 사상에 의한 일실시 예에 따른 라이트 결함 복구 방법의 흐름도이다.
도 14는 본 발명의 기술적 사상에 의한 일실시 예에 따른 라이트 결함 복구 시작 섹터를 결정하는 방법의 흐름도이다.
도 15는 본 발명의 기술적 사상에 의한 다른 실시 예에 따른 라이트 결함 복구 방법의 흐름도이다.
도 16은 기술적 사상에 의한 일실시 예에 따른 디펙 섹터 검출 및 보상 처리 방법의 흐름도이다.

Claims (10)

  1. 라이트 결함이 발생된 트랙으로부터 정보를 읽어내는 단계;
    상기 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수를 섹터별로 산출하는 단계;
    상기 섹터별 ECC 정정 심볼의 개수와 임계 조건을 비교하여 라이트 결함 복구 섹터의 개수를 결정하는 단계; 및
    상기 결정된 라이트 결함 복구 섹터의 개수에 상응하는 섹터 위치부터 다시 쓰기를 실행하는 단계를 포함함을 특징으로 하는 라이트 결함 복구 방법.
  2. 제1항에 있어서, 상기 라이트 결함 복구 섹터의 개수를 결정하는 단계는 상기 섹터별 ECC 정정 심볼의 개수가 최초로 제1임계값을 초과하는 섹터를 라이트 결함 복구 시작 섹터로 판정하여 라이트 결함 복구 섹터의 개수를 결정함을 특징으로 하는 라이트 결함 복구 방법.
  3. 제1항에 있어서, 라이트 동작을 실행시키는 과정에서 기록매체의 서보 정보 영역에서 읽어낸 신호에서 결함이 검출되는 경우에 라이트 결함이 발생되는 것으로 판정하는 단계를 더 포함함을 특징으로 하는 라이트 결함 복구 방법.
  4. 제1항에 있어서, 상기 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되 는 경우에, 라이트 결함이 발생된 섹터 영역에서의 디펙 섹터를 검출하여 디펙 보상 처리를 실행하는 단계를 더 포함함을 특징으로 하는 특징으로 하는 라이트 결함 복구 방법.
  5. 정보를 저장하는 기록매체;
    상기 기록매체를 액세스하여 정보를 라이트 또는 리드하는 미디어 인터페이스; 및
    라이트 결함이 발생되는 경우에 라이트 명령의 실행을 정지시키고, 상기 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수에 근거하여 라이트 결함 복구 시작 섹터를 결정하고, 상기 결정된 라이트 결함 복구 시작 섹터부터 다시 쓰기를 실행하도록 상기 미디어 인터페이스를 제어하는 프로세서를 포함함을 특징으로 하는 데이터 저장 장치.
  6. 제5항에 있어서, 상기 프로세서는
    라이트 명령을 실행하는 과정에서 라이트 결함이 발생되는 것을 검출하는 라이트 결함 검출부;
    상기 라이트 결함이 검출되면 라이트 명령의 실행을 정지시킨 후에 상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 상기 기록매체의 트랙의 섹터 영역으로부터 정보를 읽어내고, 라이트 결함 복구 영역 결정부에서 결정된 라이트 결 함 복구 시작 섹터 위치로부터 다시 쓰기를 실행시키도록 상기 미디어 인터페이스를 제어하는 라이트 결함 복구 제어부; 및
    상기 라이트 결함이 발생된 라이트 명령에 의하여 지정된 상기 기록매체의 트랙의 섹터 영역으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수에 근거하여 상기 라이트 결함 복구 시작 섹터를 결정하는 라이트 결함 복구 영역 결정부를 포함함을 특징으로 하는 데이터 저장 장치.
  7. 제6항에 있어서, 상기 라이트 결함 복구 영역 결정부는 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼들 중에서 오류가 발생되어 정정된 ECC 정정 심볼의 개수가 제1임계값을 초과하는 최초의 섹터를 검출하여 라이트 결함 복구 시작 섹터로 결정함을 특징으로 하는 데이터 저장 장치.
  8. 제6항에 있어서, 상기 라이트 결함 복구 영역 결정부는
    상기 라이트 결함이 발생된 트랙으로부터 읽어낸 정보에 포함된 에러 정정 코드(ECC) 심볼 중에서 오류가 발생되어 정정된 ECC 정정 심볼을 검출하여 섹터별 ECC 정정 심볼 개수 정보를 생성시키는 ECC 처리부;
    상기 ECC 처리부에서 생성되는 섹터별 ECC 심볼 개수 정보를 저장하는 버퍼;
    상기 버퍼에서 읽어낸 섹터별 ECC 정정 심볼의 개수 정보와 제1임계값을 비교하여, 최초로 제1임계값을 초과하는 섹터를 검출하는 제1판정부; 및
    상기 제1판정부에서 검출된 섹터를 라이트 결함 복구 시작 섹터로 결정하는 라이트 결함 복구 시작 섹터 결정부를 포함함을 특징으로 하는 데이터 저장 장치.
  9. 제6항에 있어서, 상기 프로세서는 상기 라이트 결함이 동일한 섹터 영역에서 반복하여 발생되는 경우에, 반복하여 라이트 결함이 발생된 섹터 영역에서 디펙 섹터를 검출하는 디펙 섹터 검출부; 및
    상기 디펙 섹터 검출부에서 검출된 디펙 섹터를 스페어 섹터로 재할당 처리하는 디펙 처리 제어부를 더 포함함을 특징으로 하는 데이터 저장 장치.
  10. 제1항 내지 제4항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램 코드를 기록한 컴퓨터로 읽을 수 있는 저장매체.
KR1020090106041A 2009-11-04 2009-11-04 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체 KR101573233B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020090106041A KR101573233B1 (ko) 2009-11-04 2009-11-04 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체
US12/938,547 US8516341B2 (en) 2009-11-04 2010-11-03 Method, apparatus, and storage medium for processing write defect in data storage apparatus
JP2010247780A JP5598984B2 (ja) 2009-11-04 2010-11-04 ライト欠陥復旧方法、データ保存装置及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090106041A KR101573233B1 (ko) 2009-11-04 2009-11-04 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체

Publications (2)

Publication Number Publication Date
KR20110049164A true KR20110049164A (ko) 2011-05-12
KR101573233B1 KR101573233B1 (ko) 2015-12-02

Family

ID=43926689

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090106041A KR101573233B1 (ko) 2009-11-04 2009-11-04 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체

Country Status (3)

Country Link
US (1) US8516341B2 (ko)
JP (1) JP5598984B2 (ko)
KR (1) KR101573233B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862952B1 (en) * 2012-03-16 2014-10-14 Western Digital Technologies, Inc. Prioritized memory scanning for data storage systems
US8976478B1 (en) 2012-10-10 2015-03-10 Seagate Technology Llc Band rewrites based on error scan counts
JP2022029558A (ja) * 2020-08-05 2022-02-18 株式会社東芝 磁気ディスク装置及びエラー訂正方法
JP2023140396A (ja) 2022-03-23 2023-10-05 株式会社東芝 磁気ディスク装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09259549A (ja) * 1996-03-25 1997-10-03 Toshiba Corp 読取エラー発生前交替処理システム
JPH10275429A (ja) * 1997-03-28 1998-10-13 Toshiba Corp ディスク装置及び同装置におけるライトリトライ制御方法
US6512644B1 (en) * 2000-05-23 2003-01-28 Quantum Corporation Method and apparatus for read-after-write verification with error tolerance
US6898036B2 (en) * 2001-12-31 2005-05-24 Storage Technology Corporation System and method for recovery from writing errors during data storage
JP3942483B2 (ja) * 2002-05-15 2007-07-11 富士通株式会社 隣接トラックデータの保証処理方法及びデイスク装置
JP2004047023A (ja) 2002-07-15 2004-02-12 Matsushita Electric Ind Co Ltd 磁気ディスク装置およびそのデータ書込み制御方法
JP2006269006A (ja) * 2005-03-25 2006-10-05 Fujitsu Ltd 記憶装置、制御方法及びプログラム
JP2008010113A (ja) 2006-06-30 2008-01-17 Fujitsu Ltd 磁気ディスク制御装置、磁気ディスク装置および読取り障害修復方法
JP4745171B2 (ja) 2006-08-29 2011-08-10 東芝ストレージデバイス株式会社 制御装置および記憶装置
US8276043B2 (en) * 2008-03-01 2012-09-25 Kabushiki Kaisha Toshiba Memory system

Also Published As

Publication number Publication date
US8516341B2 (en) 2013-08-20
US20110107186A1 (en) 2011-05-05
JP2011100536A (ja) 2011-05-19
KR101573233B1 (ko) 2015-12-02
JP5598984B2 (ja) 2014-10-01

Similar Documents

Publication Publication Date Title
US8032698B2 (en) Hybrid hard disk drive control method and recording medium and apparatus suitable therefore
US8711500B1 (en) Disk drive to enable defect margining
US8730602B2 (en) Method and apparatus for detecting touch-down and contact between a head and a storage medium using a sensor, and a disk drive and storage medium using the method
US7839588B1 (en) Method of alternating track write for defect identification
US10431256B2 (en) Method of performing read/write process on recording medium, parameter adjustment method, storage device, computer system, and storage medium employing the methods
US20110235208A1 (en) Method of detecting the touch-down of a head, method of adjusting a head flying height using the method of detecting the touch-down of the head, and disk drive using the method of detecting the touch-down of the head
KR20120121735A (ko) 리드 또는 라이트 동작 제어 방법, 그 방법을 이용하는 저장 장치 및 컴퓨터 시스템
US20180174615A1 (en) Storage device and a method for defect scanning of the same
JP2011253578A (ja) 磁気ディスク装置及びデータブロックの書き換え方法
KR101573233B1 (ko) 라이트 결함 복구 방법과 이를 적용한 데이터 저장 장치 및 저장매체
US8786974B2 (en) Method and apparatus for controlling a motor
KR100604901B1 (ko) 데이터 저장 시스템에서의 재할당 섹터 회복 방법 및 이를이용한 디스크 드라이브
US8116183B2 (en) Method and apparatus for processing defect in data storage medium
US8279547B2 (en) Method of setting zone layout of recording medium, and apparatus using method
US20110194205A1 (en) Method and apparatus for managing defects of recording medium
US20120081811A1 (en) Disk drive and method of writing to disk using disk drive
US20110141612A1 (en) Method of unloading transducer in data storage device and disk drive and storage medium using the method
US20110158072A1 (en) Method of detecting approximate touch-down, method of adjusting head flying height using the detected approximate touch-down, and disk drive
KR20130042374A (ko) 라이트 리트라이 동작 제어 방법 및 이를 적용한 저장 장치
KR101771184B1 (ko) 기록매체에 기록된 정보 보호 방법과 이를 적용한 디스크 드라이브 및 기록매체
KR20130007271A (ko) 라이트 동작 제어 방법 및 그 방법을 이용하는 저장 장치
KR20130007182A (ko) 하드 디스크 드라이브의 동작 방법들과 상기 방법들을 수행할 수 있는 장치들
KR20130007272A (ko) 헤드 위치 제어 방법 및 이를 적용한 디스크 드라이브

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190918

Year of fee payment: 5