KR100712536B1 - Method for optimal write reodering of a hard disk drive and Apparatus thereof - Google Patents
Method for optimal write reodering of a hard disk drive and Apparatus thereof Download PDFInfo
- Publication number
- KR100712536B1 KR100712536B1 KR1020050089695A KR20050089695A KR100712536B1 KR 100712536 B1 KR100712536 B1 KR 100712536B1 KR 1020050089695 A KR1020050089695 A KR 1020050089695A KR 20050089695 A KR20050089695 A KR 20050089695A KR 100712536 B1 KR100712536 B1 KR 100712536B1
- Authority
- KR
- South Korea
- Prior art keywords
- time
- seek
- settling
- prediction value
- write
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/012—Recording on, or reproducing or erasing from, magnetic disks
Abstract
하드디스크 드라이브의 최적화된 기록 순서 재배열 방법 및 그 장치가 개시된다.Disclosed are an optimized recording order rearrangement method of a hard disk drive and an apparatus thereof.
본 발명은 소정의 시크시간 예측값과 소정의 안착 시간 예측값으로 라이트 동작을 수행하면서 시크시간, 안착시간 및 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 측정하는 단계, 상기 측정된 시크시간으로 상기 시크시간 예측값을 업데이트 하는 단계, 상기 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크면, 상기 측정된 안착 시간으로 상기 안착시간 예측값을 업데이트 하는 단계 및 상기 업데이트된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열하는 단계를 포함한다.The present invention provides a method of performing a write operation using a predetermined seek time prediction value and a predetermined settling time predicted value, and measuring seek time, settling time, and total write time from starting to seek until the actual write operation is started. Updating the seek time predicted value with a seek time, updating the settling time predicted value with the measured settling time, if the measured total write time is greater than one rotation time of the disc, and the updated seek time predicted value and settling Rearranging the recording order of the data to be recorded according to the time prediction value.
본 발명에 의하면, 외란과 같은 외부환경 변화에 따라 변하는 시크 시간을 적절히 예측하고, 시크 시간의 변화 이외에도 안착시간(settling time)의 변화를 적절히 예측하여 리드 채널의 최적화 및 기록 순서의 최적화를 달성함으로써, 잦은 라이트 리트라이 또는 공회전을 방지하고, 이에 따른 드라이브의 기록 성능을 향상시킬 수 있다.According to the present invention, it is possible to properly predict the seek time which changes according to the change of external environment such as disturbance, and to predict the change of the settling time in addition to the change of the seek time to achieve the optimization of the lead channel and the optimization of the recording order. This prevents frequent write retries or idling, thus improving the drive's write performance.
Description
도 1은 본 발명이 적용되는 하드 디스크 드라이브의 구성을 보여준다.1 shows a configuration of a hard disk drive to which the present invention is applied.
도 2는 호스트 컴퓨터에 동작 가능하게 연결된 도 1의 하드 디스크 드라이브의 블럭도이다.2 is a block diagram of the hard disk drive of FIG. 1 operably connected to a host computer.
도 3은 시크 시간, 안착 시간, 안착 완료시점부터 헤드가 디스크에 기록을 시작하기 까지의 시간의 개념을 예시한 그래프이다.3 is a graph illustrating the concept of seek time, settling time, and time from completion of settling until the head starts writing to the disc.
도 4는 본 발명에 따른 최적화된 기록 순서 재배열 장치의 블럭도이다.4 is a block diagram of an optimized recording order rearrangement apparatus according to the present invention.
도 5는 본 발명에 따른 최적화된 기록 순서 재배열 방법의 순서도이다.5 is a flowchart of an optimized recording order rearrangement method according to the present invention.
본 발명은 하드디스크 드라이브에 관한것으로, 특히, 하드디스크 드라이브의 최적화된 기록 순서 재배열 방법 및 그 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a hard disk drive, and more particularly, to a method and apparatus for optimizing recording order of a hard disk drive.
일반적으로 하드디스크 드라이브의 성능을 최대로 올리기 위하여 리드/라이트(read/write) 캐쉬(cache)를 사용하는데, 라이트 캐쉬의 구성은 호스트로부터 수신받은 데이터를 버퍼에 저장해 놓고 나중에 버퍼에 저장된 데이터를 디스크에 기 록하는 알고리즘이다. 버퍼에 저장해 놓은 데이터를 디스크에 기록할 때에는, 성능을 최대화 하기 위하여 기록 순서 재배열(reordering) 알고리즘을 사용한다.In general, read / write cache is used to maximize hard disk drive performance. The write cache is configured to store data received from the host in a buffer and later store the data in the buffer. Algorithm to be recorded in When the data stored in the buffer is written to disk, a recording reordering algorithm is used to maximize performance.
일반적으로 기록 순서 재배열 알고리즘은 버퍼에 저장된 데이터 중에서 해당 데이터의 기록에 필요한 시크시간(seek time)과 해당 데이터의 원주상에서의 위치를 기준으로 최단 시간내에 기록이 가능한 데이터부터 자기 기록을 수행하는 리드 채널 최적화 방법을 사용한다.In general, the recording order rearrangement algorithm performs magnetic recording from data stored in the buffer based on the seek time required for recording the data and the position on the circumference of the data. Use channel optimization.
그런데, 위와 같은 리드 채널 최적화 방법을 사용하여 기록 순서 재배열 알고리즘을 수행하면, 실제의 시크 시간이 예측된 시크 시간과 일치하지 않는 경우에는, 최단 시간내에 기록이 가능한 데이터를 최우선으로 기록할 수가 없게 된다. 이 때문에, 하드 디스크 드라이브의 기록 성능이 최대로 발휘될 수 없다.However, if the recording sequence rearrangement algorithm is performed using the read channel optimization method as described above, if the actual seek time does not match the predicted seek time, the data that can be recorded within the shortest time cannot be recorded first. do. For this reason, the recording performance of a hard disk drive cannot be exhibited to the maximum.
종래의 기록 순서 재배열 방법은 이러한 단점을 보완하기 위하여 시크 시간 예측값을 AAM 모드, 온도, 외부 전압 등을 고려하여 보상하는 것이나, 드라이브가 고용화되면서 드라이브의 동작 환경(마운트 조건, 외부 진동 등)에 따라 시크 시간 특성이 변하여 시크 시간을 적절히 보상할 수 없다.Conventional recording order rearrangement compensates for these drawbacks by taking into account the AAM mode, temperature, and external voltage in order to compensate for these shortcomings. As a result, the seek time characteristic changes, and the seek time cannot be properly compensated.
따라서, 종래의 기록 순서 재배열 방법은 외란과 같은 외부환경 변화에 따라 변하는 시크 시간을 적절히 예측하지 못하고, 시크 시간의 변화 이외에도 안착시간(settling time)의 변화를 적절히 예측하지 못하여 잦은 라이트 리트라이 또는 공회전을 방지하지 못하고, 이에 따른 드라이브의 기록 성능이 저하되는 문제점이 있다.Therefore, the conventional recording order rearrangement method does not properly predict the seek time that is changed by the change of the external environment such as disturbance, and does not properly predict the change of the settling time in addition to the change of the seek time, thereby causing frequent write retry or There is a problem in that idling is not prevented, and thus recording performance of the drive is deteriorated.
본 발명이 이루고자 하는 기술적 과제는 외란과 같은 외부환경 변화에 따라 변하는 시크 시간을 적절히 예측하고, 시크 시간의 변화 이외에도 안착 시간(settling time)의 변화를 적절히 예측하여 리드 채널의 최적화 및 기록 순서의 최적화를 달성하는 하드디스크 드라이브의 리드 채널 최적화 방법을 제공하는 데 있다.The technical problem to be achieved by the present invention is to properly predict the seek time that changes according to the external environment change such as disturbance, and to predict the change of the settling time in addition to the change of seek time to optimize the lead channel and the recording order. To provide a lead channel optimization method of the hard disk drive to achieve the.
본 발명이 이루고자 하는 다른 기술적 과제는 상기의 하드디스크 드라이브의 리드 채널 최적화 방법이 적용된 장치를 제공하는 데 있다.Another object of the present invention is to provide an apparatus to which the read channel optimization method of the hard disk drive is applied.
상기의 기술적 과제를 달성하기 위하여, 본 발명은 소정의 시크시간 예측값과 소정의 안착 시간 예측값으로 라이트 동작을 수행하면서 시크시간, 안착시간 및 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 측정하는 단계, 상기 측정된 시크시간으로 상기 시크시간 예측값을 업데이트 하는 단계, 상기 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크면, 상기 측정된 안착 시간으로 상기 안착시간 예측값을 업데이트 하는 단계 및 상기 업데이트된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열하는 단계를 포함한다.In order to achieve the above technical problem, the present invention starts the seek time, the settling time and the seek until the actual write operation is started while performing the write operation with the predetermined seek time prediction value and the predetermined settling time prediction value. Measuring a time, updating the seek time predicted value with the measured seek time, and if the measured total write time is greater than one rotation time of the disc, updating the settling time predicted value with the measured settling time. And rearranging the recording order of data to be recorded according to the updated seek time prediction value and the settling time prediction value.
상기의 다른 기술적 과제를 해결하기 위하여, 본 발명은 소정의 시크시간 예측값과 소정의 안착 시간 예측값을 저장하는 메모리, 상기 소정의 시크시간 예측값과 소정의 안착 시간 예측값으로 라이트 동작을 수행하면서 시크시간, 안착시간, 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 측정하 는 시간 측정부, 상기 측정된 시크시간을 상기 메모리에 시크시간 예측값으로 저장하도록 제어하고, 상기 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크면, 상기 측정된 안착시간을 상기 메모리에 안착시간 예측값으로 저장하도록 제어하는 갱신 판단부, 상기 갱신 판단부의 제어에 따라 상기 측정된 시크시간을 상기 메모리에 시크시간 예측값으로 저장하고, 상기 측정된 안착시간을 상기 메모리에 안착시간 예측값으로 저장하는 기록부 및 상기 메모리에 저장된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열하는 리드 라이트 채널을 포함한다.In order to solve the above other technical problem, the present invention provides a memory for storing a predetermined seek time predicted value and a predetermined settling time predicted value, a seek time while performing a write operation with the predetermined seek time predicted value and a predetermined settling time predicted value, A settling time, a time measuring unit for measuring the total write time from the start of the seek until the actual write operation is started, and controlling the stored seek time to be stored as the seek time predicted value in the memory; If the time is greater than one rotation time of the disk, the update determination unit for controlling to store the measured seating time in the memory as a seating time prediction value, the seek time prediction value in the memory to the measured seek time under the control of the update determination unit And the measured settling time as a predicted settling time in the memory. And a read write channel for rearranging the recording order of data to be recorded according to the seek time predicted value and the settling time predicted value stored in the memory.
이하 도면을 참조하여 본 발명의 구성을 설명하기로 한다.Hereinafter, the configuration of the present invention will be described with reference to the drawings.
도 1은 본 발명이 적용되는 하드 디스크 드라이브(100)의 구성을 보여준다.1 shows a configuration of a
드라이브(100)는 스핀들 모터(110)에 의하여 회전되는 적어도 하나의 자기 디스크(120)를 포함하고 있다. 드라이브(100)는 디스크(120) 표면에 인접되게 위치한 헤드(130)를 또한 포함하고 있다.The
헤드(130)는 각각의 디스크(120)의 자계를 감지하고 자화시킴으로써 회전하는 디스크(120)에서 정보를 읽거나 기록할 수 있다. 전형적으로 헤드(130)는 각 디스크(120)의 표면에 결합되어 있다. 비록 단일의 헤드(130)로 도시되어 설명되어 있지만, 이는 디스크(120)를 자화시키기 위한 기록용 헤드와 디스크(120)의 자계를 감지하기 위한 분리된 읽기용 헤드로 이루어져 있다고 이해되어야 한다. 읽기용 헤드는 자기 저항(MR : Magneto-Resistive) 소자로부터 구성되어 진다.The
헤드(130)는 슬라이더(131)에 통합되어 질 수 있다. 슬라이더(131)는 헤드 (130)와 디스크(120) 표면 사이에 공기 베어링(air bearing)을 생성시키는 구조로 되어 있다. 슬라이더(131)는 헤드 짐벌 어셈블리(132)에 결합되어 있다. 헤드 짐벌 어셈블리(132)는 보이스 코일(141)을 갖는 엑츄에이터 암(140)에 부착되어 있다. 보이스 코일(141)은 보이스 코일 모터(VCM: Voice Coil Motor, 142)를 특정하는 마그네틱 어셈블리(150)에 인접되게 위치하고 있다. 보이스 코일(141)에 공급되는 전류는 베어링 어셈블리(160)에 대하여 엑츄에이터 암(140)을 회전시키는 토오크를 발생시킨다. 엑츄에이터 암(140)의 회전은 디스크(120) 표면을 가로질러 헤드(130)를 이동시킬 것이다.The
정보는 전형적으로 디스크(120)의 환상 트랙 내에 저장된다. 각 트랙(170)은 일반적으로 복수의 섹터를 포함하고 있다. 각 섹터는 데이터 필드(data field)와 식별 필드(identification field)를 포함하고 있다. 식별 필드는 섹터 및 트랙(실린더)을 식별하는 그레이 코드(Gray code)로 구성되어 있다. 헤드(130)는 다른 트랙에 있는 정보를 읽거나 기록하기 위하여 디스크(120) 표면을 가로질러 이동된다.The information is typically stored in an annular track of the
도 2는 호스트 컴퓨터(240)에 동작 가능하게 연결된 도 1의 하드 디스크 드라이브(100)의 블럭도이다.2 is a block diagram of the
HDA를 제어하기 위해 사용된 회로는 스핀들 제어 회로(242) 및 리드/라이트 채널(246)을 포함하는데, 이들은 모두 시스템 프로세서(250)의 제어를 받는다. 또한, 인터페이스 회로(252)는 리드/라이트 채널(246)이 동작하는 동안, 가변 타이밍 시퀀스를 형성하는데 사용되는 하드웨어로 구성된 시퀀서(미도시)를 포함한다.The circuits used to control the HDA include
스핀들 제어 회로(242)는 스핀들 모터의 회전 속도를 제어한다.
서보 제어 회로(244, 본 발명에서는 "서보 제어부")는 헤드(220)를 통해서 판독된 서보 정보에 반응하여 액추에이터 코일(213)에 전류를 인가함으로써 디스크 표면위에 있는 헤드(220)의 위치를 제어한다. The servo control circuit 244 ("servo controller" in the present invention) controls the position of the
리드/라이트 채널(246)은 인터페이스 회로(252)로부터 채널에 제공된 사용자 데이터에 반응하여 데이터를 부호화하고 순서대로 나열한 후, 디스크 상의 특정 트랙을 자화하기 위해 기록 전류를 발생시킴으로써 헤드(220)가 디스크에 데이터를 기록하게 한다. 리드 동작시에, 리드/라이트 채널(246)은 헤드(220)가 디스크 상의 특정 트랙을 지날 때, 헤드(220)에 의해 발생된 판독 신호로부터 데이터를 복호화함으로써 저장된 데이터를 검색한다. The read / write
드라이브의 다양한 동작은 메모리(MEM, 254)에 저장된 프로그래밍에 따라, 시스템 프로세서(250)에 의해 제어된다. 바람직하게는, 메모리(MEM, 254)는 다이나믹 랜덤 엑세스 메모리(DRAM)와 같은 휘발성 메모리 장치 및 플래쉬 메모리와 같은 비휘발성 메모리 장치 모두를 포함한다.Various operations of the drive are controlled by the
도 3은 시크 시간, 안착 시간, 안착 완료시점부터 헤드가 디스크에 기록을 시작하기 까지의 시간의 개념을 예시한 그래프이다.3 is a graph illustrating the concept of seek time, settling time, and time from completion of settling until the head starts writing to the disc.
그래프의 세로축은 헤드의 이동속도를 나타내고, 가로축은 경과 시간을 나타내는 것으로 단위는 밀리세컨드(ms)이다.The vertical axis of the graph represents the moving speed of the head, and the horizontal axis represents the elapsed time. The unit is milliseconds (ms).
첫번째 구간(310)은 시크 시간(seek time)을 나타내는 것으로, 데이터가 기록될 위치에 상응하는 트랙을 기준으로 목표 트랙을 시크하는데 걸리는 시간을 이론적으로 예측한 시간이다. 헤드의 이동속도는 목표 트랙을 향해 차츰 증가해 가다 가, 목표트랙이 가까워지면 이동속도가 감소하게 된다.The
두번째 구간(320)은 안착 시간(settling time)을 나타내는 것으로, 외란 등의 외부적 요인이나, 헤드의 오버슈트와 같은 내부적 요인에 의해 헤드가 목표 트랙의 정중앙에 곧바로 위치하지 못하고, 서서히 목표 트랙의 정중앙을 찾아가는데 걸리는 시간이다. 헤드의 지나친 오버슈트나 언더슈트, 외부 등의 외부적 요인의 증가는 이러한 안착 시간을 변화시킬 수 있다.The
세번째 구간(330)은 안착 완료시점부터 헤드가 디스크에 기록을 시작하기 까지의 시간이다. 헤드가 목표 트랙을 정확히 추종하기 시작하면, 목표 섹터를 탐색하게 된다. 목표 섹터를 탐색하는데 걸리는 시간은 디스크의 회전 속도에 따라 달라지게 된다. The
실제로 데이터를 기록하기 위해서는 시크, 안착, 목표 섹터 탐색 등의 과정을 모두 거쳐야 하므로, 시크를 시작해서 실제로 라이트를 수행하기 위해서는 위에서 설명한 구간(310, 320, 330)을 모두 합해야 전체 라이트 시간을 구할 수 있다. 물론, 실제의 경우에 있어서는 목표 섹터 탐색을 완료했다고 하더라도, 외란 등의 외부 요인이나 리드/라이트 채널 동작 등으로 딜레이가 발생하여 전체 라이트 시간이 다소 증가될 수 있다.In order to actually record data, it is necessary to go through all processes such as seek, settling, and target sector search. Therefore, in order to start the seek and actually perform the write, the above-described
본 발명에서는 데이터가 기록될 위치에 따라 다른 시크 시간과 외란 등에 민감하게 반응하는 안착 시간을 매 동작마다 업데이트하여 리드 채널을 최적화함으로써, 최단 시간내에 기록이 가능한 데이터를 최우선으로 기록할 수 있게 한다.In the present invention, the lead channel is optimized by updating the settling time, which is sensitive to different seek times and disturbances, for each operation depending on the position at which data is to be recorded, so that the data that can be recorded in the shortest time can be recorded first.
도 4는 본 발명에 따른 최적화된 기록 순서 재배열 장치의 블럭도이다.4 is a block diagram of an optimized recording order rearrangement apparatus according to the present invention.
도 4의 블럭도는 도 2의 시스템 프로세서(250)를 중심으로, 메모리(254), 서보 제어부(244), 리드/라이트 채널(246)을 구체화한 것이다.4 is a block diagram of a
도 4에서, 메모리(400, 405)는 비휘발성과 휘발성으로 나누어지며, 비휘발성 메모리(400)는 업데이트된 시크 시간과 안착 시간을 저장하는데 사용되고, 휘발성 메모리(405)는 비휘발성 메모리(400)에 저장된 시크 시간과 안착 시간을 일시적으로 저장하면서 갱신 판단부(410)에서 수행되는 각종의 연산과정에 필요한 데이터를 제공한다. 또한, 휘발성 메모리(405)는 드라이브의 파워 온 시에 비휘발성 메모리(400)에 저장된 시크 시간 초기값과 안착 시간 초기값을 불러오는 역할을 한다. In FIG. 4, the
위에서 언급된 시크 시간 초기값과 안착 시간 초기값은 드라이브의 번인(burn-in) 공정 단계에서 미리 측정된 소정의 시크시간 예측값과 소정의 안착 시간 예측값이다.The initial seek time and settling time initial values mentioned above are predetermined seek time prediction values and predetermined settling time prediction values measured in advance in the burn-in process step of the drive.
위에서 언급한 비휘발성 메모리(400)는 목표 트랙에 대응하는 시크 시간 예측값 및 안착 시간 예측값을 저장한 테이블을 포함할 수 있다.The
휘발성 메모리(405)는 DRAM 등이 사용될 수 있고, 비휘발성 메모리(400)는 플래쉬 메모리와 같이 읽고 쓰기가 가능하면서도 데이터를 영구적으로 저장가능한 소자가 사용될 수 있다.As the
갱신 판단부(410)는 시간 측정부(455)에서 측정된 시크시간을 비휘발성 메모리(400)에 시크시간 예측값으로 저장하도록 기록부(470)를 제어한다. 또한, 갱신 판단부(410)는 시간 측정부(455)에서 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크면, 시간 측정부(455)에서 측정된 안착시간을 비휘발성 메모리(400)에 안착시간 예측값으로 저장하도록 기록부(470)를 제어한다. The
시간 측정부(455)는 초기 파라미터 값인 소정의 시크시간 예측값과 소정의 안착 시간 예측값으로 라이트 동작을 수행하면서 시크시간, 안착시간, 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 서보 제어부(460)를 통해 측정한다. The
시간 측정부(455)는 그 기능에 따라 시크 시간 측정부(430), 안착 시간 측정부(440), 기록 시간 측정부(450)으로 나누어 질 수 있다. 여기서, 기록 시간 측정부(450)는 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 측정하거나, 측정된 시크시간과 측정된 안착 시간을 더한 값에 안착 완료시점부터 헤드가 디스크에 기록을 시작하기 까지의 시간을 더한 값으로 전체 라이트 시간을 연산하는 것으로 할 수 있다.The
기록부(470)는 갱신 판단부(410)의 제어에 따라, 시간 측정부(455)에서 측정된 시크시간을 비휘발성 메모리(400)에 시크시간 예측값으로 저장하고, 시간 측정부(455)에서 측정된 안착시간을 비휘발성 메모리(400)에 안착시간 예측값으로 저장한다.The
리드 라이트 채널(420)은 비휘발성 메모리(400)에 저장된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열한다. 또한, 리드 라이트 채널(420)은 비휘발성 메모리(400)에서 휘발성 메모리(405)로 로딩된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열할 수 있다. The
이때의 기록 순서의 재배열 방법은 버퍼(미도시)에 저장된 데이터의 논리적인 기록 위치, 데이터 크기 등을 포함하는 기록정보와 위에서 업데이트된 시크시간 예측값 및 안착시간 예측값을 이용하여 디스크상의 다수의 기록 위치를 갖는 데이터들을 기록하기 위한 순서를 재배열한다. At this time, the recording order rearrangement method uses a plurality of recordings on the disk by using recording information including a logical recording position of the data stored in the buffer (not shown), data size, etc., and the seek time prediction value and the settling time prediction value updated above. Rearrange the order for recording the data with positions.
보다 상세히 설명하면, 버퍼에 저장된 데이터의 논리적인 기록위치들을 기반으로 물리적인 기록 위치를 계산한다. 여기서, 논리적인 기록 위치란 호스트 측에서 인식할 수 있는 위치 정보로서, 일반적으로 LBA를 말하며, 물리적인 기록 위치란 디스크 측에서 인식할 수 있는 위치 정보로서, 일반적으로 물리적 CHS 방식의 주소를 말한다. 이어서, 계산된 물리적인 기록 위치들에 대한 섹터 도달시간을 계산한다. 이어서, 위에서 업데이트된 시크 시간 예측값과 안착시간 예측값을 더한값에 섹터 도달시간을 합산하여 전체 라이트 시간을 구한다. 이어서, 최소의 라이트 시간이 소요되는 위치에 대한 위치 정보를 갖는 데이터를 첫번째로 기록할 데이터로 결정한다. 이후, 다른 논리적인 기록 위치들을 이용하여 상기 과정을 반복한다.In more detail, the physical recording position is calculated based on the logical recording positions of the data stored in the buffer. Here, the logical recording position is position information that can be recognized by the host side, and generally refers to LBA, and the physical recording position is position information that can be recognized by the disk side, and generally refers to an address of a physical CHS scheme. The sector arrival time for the calculated physical write positions is then calculated. Subsequently, the total write time is obtained by adding the sector arrival time to the sum of the seek time prediction value and the settling time prediction value updated above. Then, the data having the positional information on the position where the minimum write time is taken is determined as the data to be recorded first. Then, the above process is repeated using other logical recording positions.
리드 라이트 채널(420)은 도 2의 인터페이스(252)와 연결되어 호스트로부터 수신되는 데이터를 버퍼에 저장하고, 버퍼에 저장된 데이터의 기록 순서를 위와 같이 최적화된 순서로 재배열하여 도 2의 헤드(220)에 전달함으로써, 최적의 기록 성능을 얻게 한다.The
도 5는 본 발명에 따른 최적화된 기록 순서 재배열 방법의 순서도이다.5 is a flowchart of an optimized recording order rearrangement method according to the present invention.
먼저, 드라이브를 파워 온(power-on) 하면, 번인(burn-in) 공정 단계에서 미리 측정된 소정의 시크시간 예측값과 소정의 안착 시간 예측값을 초기값으로 로딩 한다(500 과정). 이때, 리드 채널의 파라미터를 소정의 시크시간 예측값과 소정의 안착 시간 예측값으로 설정한다.First, when the drive is powered on, the predetermined seek time predicted value and the predetermined settling time predicted value measured in the burn-in process step are loaded as initial values (step 500). At this time, the parameters of the read channel are set to a predetermined seek time predicted value and a predetermined settling time predicted value.
디스크 라이트 명력이 입력되면, 설정된 리드 채널 파라미터로 라이트 동작을 수행하면서 시크 시간을 측정한다(510 과정, 520 과정). 이때, 시크 시간은 헤드의 이동속도가 목표 트랙 방향으로 증가하다가 다시 감소하여 0으로 되는 시점으로 할 수 있다.When the disc write reputation is input, the seek time is measured while performing the write operation using the set read channel parameter (
측정된 시크시간으로 상기 시크시간 예측값을 업데이트 한다(525 과정). 시크시간 예측값의 업데이트는 목표 트랙에 대응하는 시크 시간 예측값을 저장한 테이블에서 이전에 저장된 시크 시간 예측값을 삭제하고, 현재 측정된 시크시간을 위 테이블에 시크 시간 예측값으로 저장하는 것을 의미한다. 따라서, 다음번의 라이트 동작은 동일한 목표 트랙에 대해서는 업데이트된 시크 시간 예측값을 이용한다. 또한, 시크 시간 예측값의 업데이트를 안착 시간을 측정한 후에 수행할 수도 있다.The seek time prediction value is updated with the measured seek time (step 525). The update of the seek time prediction value means that the previously stored seek time prediction value is deleted from the table storing the seek time prediction value corresponding to the target track, and the currently measured seek time is stored as the seek time prediction value in the above table. Therefore, the next write operation uses the updated seek time prediction value for the same target track. In addition, updating of the seek time prediction value may be performed after measuring the settling time.
시크 시간의 업데이트가 완료되면, 안착시간, 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 라이트 시간을 측정한다(530 과정, 540 과정). When updating of the seek time is completed, the settling time and the total write time from the seek start until the actual write operation is started are measured (
전체 라이트 시간을 측정하는 과정은 시크를 시작해서 실제 라이트 동작이 개시될 때까지의 전체 시간을 측정하거나, 측정된 시크시간과 측정된 안착 시간을 더한 값에 안착 완료시점부터 헤드가 디스크에 기록을 시작하기 까지의 시간을 더한 값으로 전체 라이트 시간을 연산함으로써 수행될 수 있다.The process of measuring the total write time measures the total time from the start of the seek until the start of the actual write operation, or the head writes to the disc from the time of completion of the set-up plus the measured seek time and the measured settling time. This can be done by calculating the total write time with the time to start up.
측정된 전체 라이트 시간이 디스크의 1회전 시간보다 큰지 판단한다(550 과정). 만약, 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 큰 경우, 현재의 시크 시간 예측값과 안착 시간 예측값을 이용하면, 라이트 리트라이나 공회전이 발생할 확률이 높게 된다. 따라서, 이와 같은 경우, 위에서 설명한 기록 순서 재배열 알고리즘의 효율을 높이기 위해서는 시크 시간 예측값과 안착 시간 예측값의 업데이트가 필요하다. It is determined whether the measured total write time is greater than one rotation time of the disc (step 550). If the measured total write time is greater than one rotation time of the disc, using the current seek time prediction value and the settling time prediction value, there is a high probability that a write retread or idle occurs. Therefore, in such a case, it is necessary to update the seek time prediction value and the settling time prediction value in order to increase the efficiency of the recording order rearrangement algorithm described above.
이때, 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크면, 상기 측정된 안착 시간으로 상기 안착 시간 예측값을 업데이트 한다(555 과정). 안착시간 예측값의 업데이트는 목표 트랙에 대응하는 안착 시간 예측값을 저장한 테이블에서 이전에 저장된 안착 시간 예측값을 삭제하고, 현재 측정된 안착시간을 위 테이블에 안착 시간 예측값으로 저장하는 것을 의미한다. At this time, if the measured total write time is greater than one rotation time of the disk, the settling time prediction value is updated with the measured settling time (step 555). The update of the settling time prediction value means that the previously stored settling time prediction value is deleted from the table storing the settling time prediction value corresponding to the target track, and the currently measured settling time is stored as the settling time prediction value in the table.
반면에, 측정된 전체 라이트 시간이 디스크의 1회전 시간보다 크지 않으면, 안착 시간 예측값의 업데이트는 불필요하므로 560 과정으로 진행한다.On the other hand, if the measured total write time is not greater than one rotation time of the disk, the update of the settling time prediction value is unnecessary and the process proceeds to step 560.
물론, 실제의 경우에 있어서는 목표 섹터 탐색을 완료했다고 하더라도, 외란 등의 외부 요인이나 리드/라이트 채널 동작 등으로 딜레이가 발생하여 전체 라이트 시간이 다소 증가될 수 있다. 따라서, 측정된 전체 라이트 시간에 소정의 딜레이를 더한 시간이 디스크의 1회전 시간보다 큰 경우에, 상기 측정된 안착 시간으로 상기 안착 시간 예측값을 업데이트 하도록 할 수 있다.Of course, even in the actual case, even if the target sector search is completed, delay may occur due to external factors such as disturbance or read / write channel operation, so that the total write time may be slightly increased. Accordingly, when the time obtained by adding a predetermined delay to the measured total write time is greater than one rotation time of the disc, the settling time prediction value may be updated by the measured settling time.
위에서 업데이트된 시크 시간 및 안착 시간을 다음 번의 라이트 명령 입력시에 적용한다(560 과정). 이 과정은 다음번에 동일한 목표 트랙에 대해 기록 명령이 입력되면, 비휘발성 메모리(400)에 저장된 동일한 목표 트랙에 대한 시크 시간 예측값 및 안착 시간 예측값을 이용하여 기록 순서 재배열 알고리즘을 수행함으로써, 최적의 기록 성능을 얻는 과정이다. 이 과정은 위에서 업데이트된 시크시간 예측값 및 안착시간 예측값에 따라 기록될 데이터들의 기록 순서를 재배열하는 과정이다.The seek time and settling time updated above are applied at the next write command input (step 560). This process is performed by performing the recording sequence rearrangement algorithm by using the seek time prediction value and the settling time prediction value for the same target track stored in the
바람직하게는, 본 발명의 하드디스크 드라이브의 리드 채널 최적화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 컴퓨터로 읽을 수 있는 기록매체에 기록할 수 있다.Preferably, a program for executing the read channel optimization method of the hard disk drive of the present invention on a computer can be recorded on a computer-readable recording medium.
본 발명은 소프트웨어를 통해 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다. The invention can be implemented via software. When implemented in software, the constituent means of the present invention are code segments that perform the necessary work. The program or code segments may be stored on a processor readable medium or transmitted by a computer data signal coupled with a carrier on a transmission medium or network.
본 발명은 도면에 도시된 일 실시예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary and will be understood by those of ordinary skill in the art that various modifications and variations can be made therefrom. However, such modifications should be considered to be within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
상술한 바와 같이, 본 발명에 의하면, 외란과 같은 외부환경 변화에 따라 변하는 시크 시간을 적절히 예측하고, 시크 시간의 변화 이외에도 안착시간(settling time)의 변화를 적절히 예측하여 리드 채널의 최적화 및 기록 순서의 최적화를 달성함으로써, 잦은 라이트 리트라이 또는 공회전을 방지하고, 이에 따른 드라이브의 기록 성능을 향상시킬 수 있는 효과가 있다.As described above, according to the present invention, the lead channel is optimized and recorded in accordance with the change in external environment such as disturbance, and the change in the settling time is predicted appropriately in addition to the change in seek time. By achieving the optimization of, it is possible to prevent frequent write retries or idling, thereby improving the write performance of the drive.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050089695A KR100712536B1 (en) | 2005-09-27 | 2005-09-27 | Method for optimal write reodering of a hard disk drive and Apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050089695A KR100712536B1 (en) | 2005-09-27 | 2005-09-27 | Method for optimal write reodering of a hard disk drive and Apparatus thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070035165A KR20070035165A (en) | 2007-03-30 |
KR100712536B1 true KR100712536B1 (en) | 2007-05-02 |
Family
ID=41636186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050089695A KR100712536B1 (en) | 2005-09-27 | 2005-09-27 | Method for optimal write reodering of a hard disk drive and Apparatus thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100712536B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050086167A (en) * | 2004-02-25 | 2005-08-30 | 삼성전자주식회사 | Method for recording data on the hard disk drive, recording apparatus therefor, and recording media therefor |
-
2005
- 2005-09-27 KR KR1020050089695A patent/KR100712536B1/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050086167A (en) * | 2004-02-25 | 2005-08-30 | 삼성전자주식회사 | Method for recording data on the hard disk drive, recording apparatus therefor, and recording media therefor |
Also Published As
Publication number | Publication date |
---|---|
KR20070035165A (en) | 2007-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101474344B1 (en) | Method for controlling cache flush and data storage system using the same | |
JP3648496B2 (en) | Disk storage device and recording current control method for the same | |
KR100468767B1 (en) | Method for preventing adjacent track erase in HDD and apparatus thereof | |
KR100475121B1 (en) | Method for controlling a settling servo of disc drive, method for estimation a coefficient of accelation of VCM actuator and apparatuses therefor | |
US20230280935A1 (en) | Seek scheduling in a split actuator drive | |
KR100532411B1 (en) | Method and apparatus for controlling a data storage system according to temperature | |
US20180174615A1 (en) | Storage device and a method for defect scanning of the same | |
US20040268033A1 (en) | Refreshing data in a data storage device | |
JP2012138154A (en) | Magnetic disk device and disk access method in the same device | |
US11036436B2 (en) | Seek scheduling in a split actuator drive | |
KR20080069872A (en) | Hard disk drive for controlling flying height of head and the method using the hard disk drive | |
JPH08293174A (en) | Allowable off-track volume setting method, its device and disk device | |
KR100712536B1 (en) | Method for optimal write reodering of a hard disk drive and Apparatus thereof | |
US7649705B2 (en) | Data read retry with read timing adjustment for eccentrity of disc in data storage device | |
US7466505B2 (en) | Dummy write method for improving performance of data storage system and apparatus therefor | |
US7212368B2 (en) | Head switching method and system using track number matching | |
JP2014110062A (en) | Disk storage unit and servo-control method | |
US11875829B2 (en) | Magnetic disk device and reordering method | |
JP7252448B2 (en) | Tape unit, controller and read control program | |
US11869547B2 (en) | Magnetic disk device, RW parameter adjustment method of the magnetic disk device and RW parameter adjustment device | |
JP2001154809A (en) | Disk device | |
KR100640647B1 (en) | Method for track following according to the characteristics which locations of disk and types of heads have and apparatus thereof | |
KR100640607B1 (en) | Method for controlling restoration from alarm state to normal state and disk drive using the same | |
JP2000048312A (en) | Write/read control method and controller in magnetic disk device | |
JP2023109460A (en) | Side erasing measurement method and refresh processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20100413 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |