KR100672031B1 - Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브 - Google Patents

Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브 Download PDF

Info

Publication number
KR100672031B1
KR100672031B1 KR1020050121501A KR20050121501A KR100672031B1 KR 100672031 B1 KR100672031 B1 KR 100672031B1 KR 1020050121501 A KR1020050121501 A KR 1020050121501A KR 20050121501 A KR20050121501 A KR 20050121501A KR 100672031 B1 KR100672031 B1 KR 100672031B1
Authority
KR
South Korea
Prior art keywords
host
parameter
disk drive
command
hard disk
Prior art date
Application number
KR1020050121501A
Other languages
English (en)
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 KR1020050121501A priority Critical patent/KR100672031B1/ko
Application granted granted Critical
Publication of KR100672031B1 publication Critical patent/KR100672031B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/12Control of operating function, e.g. switching from recording to reproducing by sensing distinguishing features of or on records, e.g. diameter end mark
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/04Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/06Control of operating function, e.g. switching from recording to reproducing by counting or timing of machine operations

Abstract

BIST를 이용한 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는 하드 디스크 드라이브가 개시된다. 본 발명에 따른 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법은, (a) 호스트로부터 프로토콜 시작 명령을 수신하는 단계; (b) 상기 프로토콜 시작 명령에 상응하는 응답 신호를 전송하고 테스트 준비 상태로 천이하는 단계; 및 (c) 상기 테스트 준비 상태로 천이 후, 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행하고, 상기 BIST 테스트 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 구비한다. 본 발명에 의하면, 호스트와 하드 디스크 드라이브의 인터페이스 성능에 영향을 미치는 파라미터 값을 BIST 테스트를 통하여 조정함으로써, 데이터 에러를 줄일 수 있다.

Description

BIST를 이용한 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는 하드 디스크 드라이브{Method for changing interface parameter between Hard Disk Drive and Host using BIST and Hard Disk Drive therefor}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 하드 디스크 드라이브(HDD)와 호스트의 구성을 개략적으로 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 파라미터 조정 방법을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 HDD에 미리 저장된 파라미터 셋의 예를 나타내는 표이다.
도 4는 본 발명의 일 실시예에 따른 파라미터 조정 방법에 따른 호스트의 상태 천이도이다.
도 5는 본 발명의 일 실시예에 따른 파라미터 조정 방법에 따른 HDD의 상태 천이도이다.
본 발명은 하드 디스크 드라이브와 호스트에 관한 것으로, 특히, 하드 디스크 드라이브와 호스트 간의 인터페이스 에러를 줄이기 위하여 BIST(Built in self test)를 이용하여 인터페이스 파라미터를 조정하는 방법, 이를 수행하는 장치 및 컴퓨터 프로그램을 기록한 기록매체에 관한 것이다.
하드디스크 드라이브(Hard Disk Drive)는 전자장치와 기계장치로 이루어져 디지털 전자 펄스를 보다 영구적인 자기장으로 바꾸어서 데이터를 기록 및 재생해 주는 방식의 기억장치로서, 대량의 데이터를 고속으로 억세스(Access)할 수 있기 때문에 컴퓨터 시스템의 보조 기억 장치 등으로써 현재 널리 사용되고 있다.
종래에는 주로 Parallel ATA 방식의 HDD(이하, PATA HDD)가 많이 사용되었으나, 현재는 주로 Serial ATA HDD(이하, SATA HDD라 함)가 많이 사용되는 추세이다. 또한 HDD와 호스트와의 통신 속도가 점점 올라가다 보니, 다양한 인터페이스 문제로 기인한 CRC(Cyclic Redundancy Check) 에러가 많이 발생한다.
하드 디스크 드라이브는 제품 출하하기 전에 생산 공정단계 혹은 테스트 단계에서 여러 번의 테스트를 거쳐, 하드 디스크 드라이브의 동작에 영향을 미치는 각종 파라미터들을 최적화한다. 그러나, 여러 번의 테스트를 통하여 파라미터 값을 최적화한다 하더라도, 각 하드 디스크 드라이브 혹은 호스트의 메인 보드가 가진 전기적 특성들이 조금씩 다르기 때문에, 하드 디스크 드라이브 혹은 호스트의 파라미터가 적절하지 못할 수 있으면, 이로 인해 CRC 에러가 발생할 우려가 있다.
따라서, CRC 에러가 발생하는 경우, 하드 디스크 드라이브나 메인 보드 자체에 문제가 있다기보다는, 파라미터가 부적절하게 설정된 경우가 많다. 이 경우에는, 파라미터 값의 조정을 통해 CRC 에러를 줄이거나 제거할 수 있다.
따라서, 본 발명의 목적은 하드 디스크 드라이브와 호스트 간 인터페이스 성능에 영향을 미치는 파라미터를 조정함으로써, 데이터 에러를 줄이는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법 및 이를 수행하는 프로그램을 기록한 기록매체를 제공하는 것이다.
본 발명의 다른 목적은 상기 파라미터 조정 방법을 수행하는 하드 디스크 드라이브를 제공하는 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 일 측면에 따른 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법은, (a) 호스트로부터 프로토콜 시작 명령을 수신하는 단계; (b) 상기 프로토콜 시작 명령에 상응하는 응답 신호를 전송하고 테스트 준비 상태로 천이하는 단계; 및 (c) 상기 테스트 준비 상태로 천이 후, 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행하고, 상기 BIST 테스트 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 구비한다.
바람직하기로는, 상기 (c) 단계는, (c1) 상기 호스트로부터의 파라미터 변경 명령에 응답하여 상기 적어도 하나의 인터페이스 파라미터를 변경하는 단계; (c2) 상기 호스트로부터의 BIST 활성 명령에 응답하여, 상기 BIST 테스트를 수행하여 CRC 에러를 카운팅하여 에러 데이터를 저장하는 단계; (c3) 상기 에러 데이터를 상기 호스트로 전송하는 단계; 및 (c4) 상기 적어도 하나의 인터페이스 파라미터를 상기 에러 데이터에 기초하여 결정된 파라미터 값으로 설정하는 단계를 구비한다.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 다른 일 측면에 따른 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법은, (a) 소정의 프로토콜 시작 조건을 만족하는지 체크하는 단계; (b) 상기 (a) 단계의 체크 결과에 기초하여, 하드 디스크 드라이브로 프로토콜 시작 명령을 전송하는 단계; (c) 상기 하드 디스크 드라이브로부터 프로토콜 시작 명령에 대한 응답 신호를 수신하는 단계; 및 (d) 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행한 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 구비한다.
바람직하기로는, 상기 (d) 단계는, (d1) 파라미터 변경 명령을 상기 하드 디스크 드라이브로 전송하는 단계; (d2) 상기 파라미터 변경 명령에 상응하는 응답 신호를 상기 하드 디스크 드라이브로부터 수신하는 단계; (d3) 상기 하드 디스크 드라이브로 BIST 활성 명령을 전송하는 단계; (d4) 상기 BIST 테스트로부터 얻은 CRC 에러수를 상기 하드 디스크 드라이브로부터 수신하는 단계; 및 (d5) 상기 CRC 에러수에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 결정하는 단계를 구비한다.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 일 측면에 따른 하드 디스크 드라이브는 적어도 하나의 인터페이스 파라미터를 저장하는 레지스터와 콘 트롤러를 구비한다. 상기 콘트롤러는, (a) 호스트로부터 프로토콜 시작 명령을 수신하는 단계; (b) 상기 프로토콜 시작 명령에 상응하는 응답 신호를 전송하고 테스트 준비 상태로 천이하는 단계; 및 (c) 상기 테스트 준비 상태로 천이 후, 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행하고, 상기 BIST 테스트 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 수행한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 하드 디스크 드라이브(HDD, 100)와 호스트(200)의 구성을 개략적으로 나타내는 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 하드디스크 드라이브(100)는, VCM구동부(10), 리드/라이트(R/W) 채널(20), 리드 프리앰프 & 라이트 드라이버(30), 자기 헤드(40), 콘트롤러(50), 디스크(70) 및 호스트 인터페이스(80)를 구비한다.
VCM구동부(10)는 보이스코일모터(미도시, VCM)의 구동 및 자기 헤드(40)의 움직임을 제어하기 위하여 보이스코일(80)에 구동 전류를 공급한다.
호스트(200)로부터 수신되는 데이터는 호스트 인터페이스(80), 리드/라이트(R/W) 채널(20) 및 리드 프리앰프 & 라이트 드라이버(30)를 통하여 디스크(70)에 기록되고, 디스크(70)에 기록된 데이터는 리드 프리앰프 & 라이트 드라이버(30) 및 리드/라이트(R/W) 채널(20)을 통해 호스트 인터페이스(80)로 전송된다. 호스트 인터페이스(80)는 퍼스널 컴퓨터와 같은 호스트(200)에 인터페이스하기 위한 제어 회로를 포함하고 있다. 컴퓨터 외에도 하드 디스크 드라이브가 장착될 수 있는 전자 기기는 호스트(100)가 될 수 있다.
리드/라이트(R/W) 채널(20)은, 자기 헤드(40)로부터 읽혀져 리드 프리앰프 & 라이트 드라이버(30)에서 증폭된 아날로그 신호를 호스트(200)가 판독할 수 있는 디지털 신호로 변조시켜 호스트 인터페이스(80)로 출력하고, 호스트(200)로부터 사용자 데이터를 호스트 인터페이스(80)를 통하여 수신하여 디스크(70)에 기록할 수 있도록 기록 전류로 변환시켜 리드 프리앰프 & 라이트 드라이버(20)로 출력시키도록 신호처리를 실행한다.
콘트롤러(50)는 디지털 신호 프로세서(DSP : Digital Signal Processor), 마이크로프로세서, 마이크로 콘트롤러 등이 될 수 있으며, 소프트웨어(software) 또는 펌 웨어(firmware)로 구현될 수도 있다. 콘트롤러(50)는 디스크(70)로부터 데이터를 리드하거나 또는 디스크(70)에 데이터를 기록하기 위하여 리드/라이트(R/W) 채널(20)로 제어신호를 공급한다.
콘트롤러(50)는 또한 호스트(200)로부터 명령을 수신하고, 수신된 명령에 상응하는 동작을 수행한다. 콘트롤러(50) 내부에는 HDD의 상태 및 각종 파라미터를 저장하는 레지스터(register, 51)가 구비되며, 또한 읽기 전용 메모리(ROM, Read Only Memory) 또는 플레쉬 메모리와 같은 비휘발성 메모리 및 랜덤 억세스 메모리(RAM, Random Access Memory) 등이 콘트롤러(50)에 결합되어 있다.
레지스터(51)는 하드 디스크 드라이브(100)와 호스트(200) 간의 인터페이스 성능에 영향을 미치는 각종 인터페이스 파라미터들을 저장한다. 이러한 파라미터의 예로는, 차동 크기(Differential Amplitude), 프리-앰퍼시스(Pre-emphasis), squelch detector threshold, 임피던스(Impedance), 차단 주파수(cutoff frequency), 밴드폭(bandwidth), FIR(Finite Inverse Response) 필터 계수 등이 있다. 이들 파라미터들은 SATA 규격에 정의되어 있거나, 당업자에게 널리 알려진 파라미터들이므로, 이들에 대한 상세한 설명은 생략한다.
콘트롤러(50)는 호스트(200)로부터 후술되는 파라미터 변경 명령을 수신하면, 이에 응답하여 레지스터(51)에 저장된 적어도 하나의 파라미터를 변경한다.
본 발명의 HDD 및 호스트는 BIST(Built in self test) 명령을 지원한다. 또한, 본 발명에 따른 인터페이스 파라미터 조정 방법을 수행하기 위하여, HDD 및 호스트는 추가적으로 정의된 명령들을 지원하는 것이 바람직하다. 추가적으로 정의된 명령들은 프로토콜 시작 명령(start protocol command), 파라미터 변경 명령(change parameter command) 및 에러 데이터 독출 명령(read error data command) 등이다.
이들 명령들은 필요에 따라 호스트가 HDD로 보내며, HDD는 수신되는 명령에 응답하여 미리 정해진 동작을 수행한다. 이들 명령들에 대한 상세한 설명은 후술된 다.
도 2는 본 발명의 일 실시예에 따른 파라미터 조정 방법을 나타내는 흐름도이다.
도 2를 참조하면, 먼저, 호스트는 프로토콜 시작 조건이 만족되는지 여부를 체크한다(S210). 물론, 이 단계(S210) 이전에, 프로토콜 시작 조건이 먼저 설정되어야 한다. 프로토콜 시작 조건이란, 파라미터를 조정하기 위한 조건이다. 파라미터 조절하기 위한 조건은 짧은 시간 안에 CRC 에러가 다발적으로 발생하거나(예를 들어, 5초 안에 5개 이상의 CRC 에러 발생), 긴 시간 동안 CRC 에러가 일정 수 이상 발생(예를 들어, 7일 동안 30개 이상의 CRC 에러 발생)하는 경우가 될 수 있다. 이러한 파라미터 조정 조건을 미리 설정해 두고, 설정된 조건이 만족되는지를 체크하여(S210), 조건이 만족되면 호스트는 파라미터를 조정하기 위하여, 프로토콜 시작명령을 HDD로 보낸다(S215). 프로토콜 시작 명령은 본 발명에 따른 파라미터 조정 방법을 시작하기 위하여, 호스트가 HDD로 보내는 명령이다. 본 발명에 따른 파라미터 조정 방법을 지원하면, HDD는 승인 신호(ok 신호)를 호스트로 보내고, 그렇지 않으면 HDD는 명령 폐기(aborted command) 신호를 호스트로 보낸다. 그러면, 파라미터 조정 방법은 수행되지 않는다.
본 실시예에 따른 HDD는 본 발명에 따른 파라미터 조정 방법을 지원한다. 따라서, 프로토콜 시작 명령에 응답하여 ok 신호를 호스트로 보낸다(S310).
호스트는 HDD로부터 ok 신호를 수신하면 파라미터 변경 명령을 HDD로 보낸다(S220). 파라미터 변경 명령은 하나 이상의 인터페이스 파라미터를 변경하기 위하 여 호스트가 HDD로 보내는 명령이다. 파라미터 변경 명령에 응답하여, HDD는 파라미터를 변경한다(S315). 파라미터 변경을 위하여, HDD는 미리 설정된 파라미터 셋(set)을 하나 이상 가지고 있는 것이 바람직하다.
도 3은 본 발명의 일 실시예에 따른 HDD에 미리 저장된 파라미터 셋의 예를 나타내는 표이다.
도 3을 참조하면, 본 발명의 바람직한 일 예에서, HDD는 제1 내지 제3 파라미터 셋을 가진다. 각 파라미터 셋(SET1, SET2, SET3)은 차동 크기, 프리-앰퍼시스 및 임피던스에 대한 미리 설정된 값들을 가진다. 도 3에 도시된 바와 같이 미리 설정된 파라미터 셋들(SET1, SET2, SET3)이 있는 경우, HDD는 파라미터 변경 명령에 응답하여, 미리 설정된 파라미터 셋들(SET1, SET2, SET3) 중의 어느 하나를 선택하여 그 값으로 해당 파라미터들을 변경한다.
본 실시예에서는, 호스트로부터의 파라미터 변경 명령에 응답하여, HDD는 미리 정해진 파라미터들(차동 크기, 프리-앰퍼시스 및 임피던스)을 미리 정해진 순서대로 순차적으로, 예를 들어, 제1, 제2 및 제3 파라미터 셋 값들(SET1, SET2, SET3)로 변경하는 것으로 가정한다. 여기서, 제1, 제2 및 제3 파라미터 셋 값들(SET1, SET2, SET3)은 (A1, B1, C1), (A2, B2, C2), (A3, B3, C3)이다.
그러나, 다른 실시예에서는, 호스트가 파라미터 변경 명령을 HDD로 전송할 때, 변경하고자 하는 파라미터를 포함할 수도 있다.
다시 도 2를 참조하면, 파라미터 변경이 이루어진 후, HDD는 미리 정해진 파라미터 변경 완료 신호(ok)를 호스트로 전송하는 것이 바람직하다(S320).
HDD로부터 파라미터 변경 완료 신호(ok)를 수신하면, 호스트는 BIST 활성 명령(BIST activate FIS)을 HDD로 보낸다(S225). HDD는 BIST 활성 명령에 응답하여 BIST 테스트를 수행한다(S325). BIST 테스트는 SATA 규격에 따른 테스트로서, 호스트와 HDD간의 물리적 레이어(physical layer)의 루프백(loopback) 테스트를 말한다. BIST 테스트는 BIST 활성 명령(BIST activate FIS)에 의하여 시작된다.
HDD는 BIST 테스트를 수행하고, CRC 에러 수를 카운팅하여 저장한다(S325).
호스트는 BIST 활성 명령(BIST activate FIS)을 전송한 시점으로부터 소정 시간(예컨대 5초) 후에 리셋(COMRESET) 명령을 HDD로 전송한다(S230). COMRESET 명령은 SATA 규격에 따른 FIS 중의 하나로서, HDD는 COMRESET 명령에 응답하여 BIST 테스트 모드를 벗어나 소정의 리셋 절차를 수행한다.
호스트는 에러 데이터 독출 명령(read error data command)를 HDD로 전송한다(S235). HDD는 이에 응답하여, 저장된 CRC 에러 수를 호스트로 전송한다(S330). 이 단계들(S235, S330)은 호스트가 HDD로부터 BIST 테스트 결과, 즉 BIST 테스트를 통해 얻은 CRC 에러수를 독출하는 과정이다.
모든 파라미터 셋에 대하여 BIST 테스트 결과를 얻기 위하여, S220 단계에서부터 S330 단계가 파라미터 셋 수만큼 반복되는 것이 바람직하다. 즉, 미리 설정된 파라미터 셋들의 수만큼 파라미터 변경(S220, S315, S320), BIST 테스트(S225, S325, S230) 및 에러 데이터 독출(S235, S330) 절차가 순차적으로 이루어지는 것이 바람직하다. 그러나, 파라미터 조정 방법이 도 2에 도시된 순서대로 이루어져야 하는 것은 아니며, 다양한 변형이 있을 수 있다.
예를 들어, 에러 데이터 독출 단계들(S235, S330)은 하나의 파라미터 셋에 대한 BIST 테스트가 완료될 때마다 이루어질 수도 있고, 모든 BIST 테스트가 완료된 후, 즉 모든 파라미터 셋에 대한 BIST 테스트가 완료된 후 이루어질 수도 있다.
또한, 호스트가 HDD로 파라미터 변경 명령(S220)을 보내기 전에 BIST 활성 명령을 전송하여, 현재 설정되어 있는 파라미터 값에 대한 BIST 테스트 결과를 얻을 수도 있다.
또한, 본 실시예에서는, 파라미터 변경 명령, BIST 활성 명령 등을 호스트가 HDD로 적절한 시점에 전송하고, HDD는 이들 명령에 응답하여 정해진 동작을 수행한다. 그러나, 프로토콜 시작 명령에 응답하여, HDD가 자동적으로 파라미터 셋을 순차적으로 변경하면서, BIST 테스를 수행하고, 그 결과를 HDD로 전송할 수도 있다.
상술한 과정들을 통하여, BIST 테스트 결과가 호스트로 전송되면, 호스트는 HDD로부터 독출한 BIST 테스트 결과를 기초로 판단하여, 가장 적절한 파라미터 셋을 결정한다(S240). 이 때, 호스트는 CRC 에러수가 가장 적은 파라미터 셋으로 결정하는 것이 바람직하다(S240). 결정된 파라미터 셋이 최종 파라미터 셋이 아니면, 결정된 파라미터 셋으로 변경하기 위하여 호스트는 다시 한번 파라미터 변경 명령을 HDD로 전송한다(S245). 그러면, HDD는 파라미터 변경 명령에 응답하여 호스트에 의해 결정된 파라미터 셋으로 파라미터 값을 변경한다(S335). HDD는 파라미터 변경후, 파라미터 변경 완료 신호(ok)를 호스트로 전송한다(S340).
그러면, 호스트는 파라미터 조정 프로토콜을 종료하기 위하여 프로토콜 종료 명령을 HDD로 전송한다(S250). 프로토콜 종료 명령은 별도의 명령이 아니라 프로토 콜 시작 명령과 동일한 명령이 사용될 수 있다. HDD는 프로토콜 종료 명령에 응답하여, ok 신호를 호스트로 보낸다(S345).
도 4는 본 발명의 일 실시예에 따른 파라미터 조정 방법에 따른 호스트의 상태 천이도이다. 도 4를 참조하면, 호스트는 통상 노말 동작 상태(S41)에 있다. 이 상태(S41)에서, CRC 에러 수가 소정의 조건을 만족하면, 본 발명의 파라미터 조정 프로토콜을 시작하기 위하여, 호스트는 HDD로 프로토콜 시작 명령을 전송하고, 응답 대기 상태(S42)로 천이한다(410). 응답 대기 상태(S42)에서, HDD로부터 ok 신호를 수신하면, 테스트 준비 상태(S43)로 천이하고(430), HDD로부터 명령 폐기 신호를 수신하면 노말 동작 상태(S41)로 돌아간다(420).
테스트 준비 상태(S43)에서 HDD로 BIST 활성 명령(BIST activate FIS)을 전송하면, BIST 테스트 상태(S44)로 천이한다(450). BIST 테스트 상태(S44)로 천이한 후 소정 시간(예컨대 5초) 후에 리셋(COMRESET) 명령을 HDD로 전송하고, 테스트 준비 상태(S43)로 복귀한다(460).
테스트 준비 상태(S43)에서 파라미터 변경 명령 혹은 에러 데이터 독출 명령(read error data command)을 HDD로 전송하면, 응답 대기 상태(S45)로 천이한다(470). 응답 대기 상태(S45)에서, HDD로부터 ok 신호를 수신하면, 다시 테스트 준비 상태(S43)로 복귀한다(480). 테스트 준비 상태(S43)에서 다시 BIST 활성 명령을 전송하거나, 파라미터 변경 명령 혹은 에러 데이터 독출 명령을 전송할 수 있다.
테스트 준비 상태(S43)에서 프로토콜 종료 명령을 HDD로 전송한 후에는, 노말 동작 상태로 복귀한다(440). 이 때는, HDD로부터 ok 신호를 수신하든 명령 폐기 신호를 수신하든 상관없이 노말 동작 상태로 복귀한다(440).
도 5는 본 발명의 일 실시예에 따른 파라미터 조정 방법에 따른 상태 천이도이다.
도 5를 참조하면, HDD는 통상 노말 동작 상태(S51)에 있다. 이 상태(S51)에서, 호스트로부터 프로토콜 시작 명령을 수신하고 이에 응답하여 ok 신호를 전송하면, 테스트 준비 상태(S52)로 천이한다(520). 만약, HDD가 본 발명에 따른 파라미터 조정 프로토콜을 지원하지 못한다면, 명령 폐기 신호를 호스트로 전송하고, 노말 동작 상태에 머무른다(510).
테스트 준비 상태(S52)에서, 호스트로부터 BIST 활성 명령(BIST activate FIS)을 수신하면, BIST 테스트 상태(S53)로 천이한다(540). BIST 테스트 상태(S53)에서는 BIST 테스트를 수행하여 CRC 에러수를 카운팅하여 기록한다. 호스트로부터 리셋(COMRESET) 명령을 수신하면, 테스트 준비 상태(S52)로 복귀한다(550).
테스트 준비 상태(S52)에서 파라미터 변경 명령을 수신하면(560), 이에 응답하여 파라미터를 변경하고(S54) ok 신호를 호스트로 전송한 후 테스트 준비 상태(S52)로 복귀한다(570). 테스트 준비 상태(S52)에서 에러 데이터 독출 명령(read error data command)을 수신하면(580), 이에 응답하여 기록된 에러 데이터를 전송하고(S55), ok 신호를 호스트로 전송한 후 테스트 준비 상태(S52)로 복귀한다(590).
테스트 준비 상태(S52)에서, 호스트로부터 프로토콜 종료 명령을 수신하면, 노말 동작 상태로 복귀한다(530). 이 때, HDD는 ok 신호를 호스트로 전송하는 것이 바람직하다.
상술한 실시예에서는, 하드 디스크 드라이브의 파라미터를 조정하는 방법을 기준으로 설명되었다. 그러나, 본 발명에 따른 인터페이스 파라미터 조정 방법은 호스트의 파라미터를 조정하는데도 동일하게 적용될 수 있다.
호스트의 파라미터를 조정하기 위해서는, 호스트가 BIST 테스트를 수행하는 것이 바람직하다. 즉, 호스트의 파라미터를 변경하고, 변경된 파라미터에 대하여 BIST 테스트를 수행하여 테스트 결과를 얻는다. 그리고, 테스트 결과에 기초하여 적어도 하나의 파라미터를 조정하는 것이다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능함을 이해할 수 있을 것이다. 따라서 본 발명의 진정한 보호범위는 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.
상술한 바와 같이, 본 발명에 의하면, 호스트와 하드 디스크 드라이브의 인터페이스 성능에 영향을 미치는 파라미터 값을 BIST 테스트를 통하여 조정함으로써, 데이터 에러를 줄이고, 호스트와 하드 디스크 드라이브의 인터페이스 성능을 향상시킬 수 있다.

Claims (12)

  1. 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법에 있어서,
    (a) 호스트로부터 프로토콜 시작 명령을 수신하는 단계;
    (b) 상기 프로토콜 시작 명령에 상응하는 응답 신호를 전송하고 테스트 준비 상태로 천이하는 단계; 및
    (c) 상기 테스트 준비 상태로 천이 후, 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행하고, 상기 BIST 테스트 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 구비하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  2. 제 1 항에 있어서, 상기 (c) 단계는
    (c1) 상기 호스트로부터의 파라미터 변경 명령에 응답하여 상기 적어도 하나의 인터페이스 파라미터를 변경하는 단계;
    (c2) 상기 호스트로부터의 BIST 활성 명령에 응답하여, 상기 BIST 테스트를 수행하여 CRC 에러를 카운팅하여 에러 데이터를 저장하는 단계;
    (c3) 상기 에러 데이터를 상기 호스트로 전송하는 단계; 및
    (c4) 상기 적어도 하나의 인터페이스 파라미터를 상기 에러 데이터에 기초하여 결정된 파라미터 값으로 설정하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  3. 제 2 항에 있어서, 상기 (c1) 단계는
    (c11) 상기 파라미터 변경 명령에 응답하여, 미리 설정된 복수의 파라미터 셋들 중 소정의 파라미터 셋을 선택하는 단계; 및
    (c12) 상기 파라미터 변경 명령에 대한 응답 신호를 호스트로 전송하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  4. 제 2 항에 있어서, 상기 (c3) 단계는
    (c31) 상기 호스트로부터 에러 데이터 독출 명령를 수신하는 단계; 및
    (c32) 상기 에러 데이터 독출 명령에 응답하여 상기 에러 데이터를 전송하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  5. 제 2 항에 있어서, 상기 방법은
    (d) 상기 호스트로부터 프로토콜 종료 명령을 수신하는 단계; 및
    (e) 상기 프로토콜 종료 명령에 상응하는 응답 신호를 상기 호스트로 전송하고 노말 동작 상태로 천이하는 단계를 더 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  6. 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법에 있어서,
    (a) 소정의 프로토콜 시작 조건을 만족하는지 체크하는 단계;
    (b) 상기 (a) 단계의 체크 결과에 기초하여, 하드 디스크 드라이브로 프로토콜 시작 명령을 전송하는 단계;
    (c) 상기 하드 디스크 드라이브로부터 프로토콜 시작 명령에 대한 응답 신호를 수신하는 단계; 및
    (d) 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행한 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 구비하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  7. 제 6 항에 있어서, 상기 (d) 단계는
    (d1) 파라미터 변경 명령을 상기 하드 디스크 드라이브로 전송하는 단계;
    (d2) 상기 파라미터 변경 명령에 상응하는 응답 신호를 상기 하드 디스크 드라이브로부터 수신하는 단계;
    (d3) 상기 하드 디스크 드라이브로 BIST 활성 명령을 전송하는 단계;
    (d4) 상기 BIST 테스트로부터 얻은 CRC 에러수를 상기 하드 디스크 드라이브로부터 수신하는 단계; 및
    (d5) 상기 CRC 에러수에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 결정하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 인터페이스 파라미터 조정 방법.
  8. 제 6 항에 있어서, 상기 (d) 단계는
    (d1) 적어도 하나의 인터페이스 파라미터를 변경하는 단계;
    (d2) BIST 테스트를 수행하여 CRC 에러 수를 얻는 단계; 및
    (d3) 상기 CRC 에러수에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 결정하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법.
  9. 제 6 항에 있어서, 상기 (a) 단계는
    소정 기간 동안 CRC 에러수와 소정의 기준값을 비교하는 단계; 및
    상기 소정 기간 동안 CRC 에러수가 소정의 기준값을 초과하면, 상기 프로토콜 시작 조건을 만족하는 것으로 판단하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브와 호스트 간 파라미터 조정 방법.
  10. 제 1 항 내지 제 9 항 중의 어느 한 항에 따른 하드디스크 드라이브의 동작 방법을 수행하는 컴퓨터 프로그램을 기록한 기록매체.
  11. 하드 디스크 드라이브에 있어서,
    적어도 하나의 인터페이스 파라미터를 저장하는 레지스터; 및
    콘트롤러를 구비하며,
    상기 콘트롤러는
    (a) 호스트로부터 프로토콜 시작 명령을 수신하는 단계;
    (b) 상기 프로토콜 시작 명령에 상응하는 응답 신호를 전송하고 테스트 준비 상태로 천이하는 단계; 및
    (c) 상기 테스트 준비 상태로 천이 후, 적어도 하나의 인터페이스 파라미터를 변경하여 BIST 테스트를 수행하고, 상기 BIST 테스트 결과에 기초하여 상기 적어도 하나의 인터페이스 파라미터를 조정하는 단계를 수행하는 것을 특징으로 하는 하드 디스크 드라이브.
  12. 제 11 항에 있어서, 상기 (c) 단계는
    (c1) 상기 호스트로부터의 파라미터 변경 명령에 응답하여 상기 적어도 하나의 인터페이스 파라미터를 변경하는 단계;
    (c2) 상기 호스트로부터의 BIST 활성 명령에 응답하여, 상기 BIST 테스트를 수행하여 CRC 에러를 카운팅하여 에러 데이터를 저장하는 단계;
    (c3) 상기 에러 데이터를 상기 호스트로 전송하는 단계; 및
    (c4) 상기 적어도 하나의 인터페이스 파라미터를 상기 에러 데이터에 기초하여 결정된 파라미터 값으로 설정하는 단계를 구비하는 것을 특징으로 하는 하드 디스크 드라이브.
KR1020050121501A 2005-12-12 2005-12-12 Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브 KR100672031B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050121501A KR100672031B1 (ko) 2005-12-12 2005-12-12 Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050121501A KR100672031B1 (ko) 2005-12-12 2005-12-12 Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브

Publications (1)

Publication Number Publication Date
KR100672031B1 true KR100672031B1 (ko) 2007-01-19

Family

ID=38014354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050121501A KR100672031B1 (ko) 2005-12-12 2005-12-12 Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브

Country Status (1)

Country Link
KR (1) KR100672031B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8964876B2 (en) 2010-02-19 2015-02-24 Seagate Technology International Error compensation transceiver system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206162A (ja) 2002-12-20 2004-07-22 Sharp Corp 通信装置および画像形成装置
KR20050001803A (ko) * 2003-06-26 2005-01-07 삼성전자주식회사 하드디스크 드라이브의 최적화 방법, 이에 적합한 장치 및기록 매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206162A (ja) 2002-12-20 2004-07-22 Sharp Corp 通信装置および画像形成装置
KR20050001803A (ko) * 2003-06-26 2005-01-07 삼성전자주식회사 하드디스크 드라이브의 최적화 방법, 이에 적합한 장치 및기록 매체

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8964876B2 (en) 2010-02-19 2015-02-24 Seagate Technology International Error compensation transceiver system

Similar Documents

Publication Publication Date Title
JP5551739B2 (ja) 効率的なパラメーター修正のためのシステム及び方法
JP5297536B2 (ja) 蓄積装置テストに関するldpcコードのエラー訂正能力調節
US7971111B1 (en) Automated scan testing of DDR SDRAM
EP2590169A1 (en) Hardware-based methods and apparatus for inter-track interference mitigation in magnetic recording systems
US9741391B1 (en) On the fly formatting
JP2010026651A (ja) シリアルインターフェース回路の自動調整方法及びシリアルインターフェース回路を備えた電子装置
US7558012B2 (en) Read/write channel embedded on-chip optimization
US6717757B1 (en) Variable write fault protection window
KR100672031B1 (ko) Bist를 이용한 하드 디스크 드라이브와 호스트 간인터페이스 파라미터 조정 방법 및 상기 방법을 수행하는하드 디스크 드라이브
US20130262788A1 (en) Systems and Methods for External Priority Controlled Data Transfer
US9190104B2 (en) Systems and methods for data retry using averaging process
JP2010092561A (ja) 記憶装置のデータリード方法及び記憶装置
EP1457986A1 (en) Introducing a noise signal into a read-back signal when data is written to a removable data storage medium
US9093083B1 (en) Adaptive read channel system for different noise types
US20130258516A1 (en) Error recovery procedure (erp) using estimated best setting in first run
JP2013186938A (ja) 前置等化器雑音抑圧を含むデータ処理のためのシステム及び方法
US11652583B2 (en) Electronic communication device, magnetic disk device and serial communication method
US7667909B2 (en) Slew-rate control device, storage device, and slew-rate control method
JP2007317263A (ja) シリアル・データ転送方法、そのシステム及びデータ記憶装置
US8023222B2 (en) Information storage device and computer product
US20130263147A1 (en) Systems and Methods for Speculative Read Based Data Processing Priority
JP2011181169A (ja) デコーダと該デコーダを含む装置
WO2017115464A1 (ja) 音楽サーバおよび音楽データの処理方法
JPH09212311A (ja) ディスクアレイ装置
KR20130135045A (ko) Eet 피드백을 포함한 데이터 프로세싱 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091214

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee