KR100211789B1 - Disk drive for portable computer with adaptive demand-driven power management - Google Patents

Disk drive for portable computer with adaptive demand-driven power management Download PDF

Info

Publication number
KR100211789B1
KR100211789B1 KR1019960026633A KR19960026633A KR100211789B1 KR 100211789 B1 KR100211789 B1 KR 100211789B1 KR 1019960026633 A KR1019960026633 A KR 1019960026633A KR 19960026633 A KR19960026633 A KR 19960026633A KR 100211789 B1 KR100211789 B1 KR 100211789B1
Authority
KR
South Korea
Prior art keywords
access
power saving
disk drive
frequency
mode
Prior art date
Application number
KR1019960026633A
Other languages
Korean (ko)
Other versions
KR980011219A (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 포만 제프리 엘
Publication of KR980011219A publication Critical patent/KR980011219A/en
Application granted granted Critical
Publication of KR100211789B1 publication Critical patent/KR100211789B1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B33/00Constructional parts, details or accessories not provided for in the other groups of this subclass
    • G11B33/12Disposition of constructional parts in the apparatus, e.g. of power supply, of modules
    • G11B33/121Disposition of constructional parts in the apparatus, e.g. of power supply, of modules the apparatus comprising a single recording/reproducing device
    • G11B33/122Arrangements for providing electrical connections, e.g. connectors, cables, switches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/48Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
    • G11B5/54Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
    • G11B5/55Track change, selection or acquisition by displacement of the head
    • G11B5/5521Track change, selection or acquisition by displacement of the head across disk tracks
    • G11B5/5526Control therefor; circuits, track configurations or relative disposition of servo-information transducers and servo-information tracks for control thereof

Abstract

배터리로 전력이 공급되는 휴대용(portable) 컴퓨터에 사용되는 데이터 기록용 디스크 드라이브는 몇 가지 절전 모드들의 동작을 갖고 있다. 절전 모드들은 이전 데이터 판독 혹은 기록 명령 이후에 계산된 시간이 경과된 다음 진입된다. 절전 모드로 진입하는 시간은 컴퓨터 사용자의 실시간 작업부하에 근거를 두고 계산되며, 그리하여 디스크 드라이브의 동작 동안 계속하여 변경된다. 디스크 드라이브는 디스크 드라이브 액세스들의 주파수를 계산함으로써 사용자의 현재 작업부하를 검출하고, 이러한 작업부하의 이력에 근거를 두고 디스크 드라이브는 다수 절전 모드들 중 어느 것이 적절한 것인가와 언제 절전 모드로 진입할 것인지를 결정한다.Data recording disk drives used in battery powered portable computers have several power saving modes of operation. The power saving modes are entered after a time elapsed since the previous data read or write command. The time to enter power saving mode is calculated based on the real-time workload of the computer user, and thus changes continuously during the operation of the disk drive. The disk drive detects the user's current workload by calculating the frequency of the disk drive accesses, and based on the history of the workload, the disk drive determines which of the multiple power saving modes is appropriate and when to enter the power saving mode. Decide

각 디스크 드라이브의 판독 혹은 기록 액세스가 검출되고 현재 액세스 주파수를 계산하는데 사용된다. 상기 현재 액세스 주파수는 이전에 계산되고 그리고 계속적으로 갱신되는 임계 주파수에 비교된다. 상기 임계 주파수는 균일 혹은 산발적인 액세스 패턴을 나타내고, 조정 가능한 이득 계수들을 포함하는 공식으로부터 계산된다.A read or write access to each disk drive is detected and used to calculate the current access frequency. The current access frequency is compared to a threshold frequency previously calculated and continuously updated. The threshold frequency represents a uniform or sporadic access pattern and is calculated from a formula that includes adjustable gain coefficients.

현재 액세스 주파수가 상기 임계 주파수보다 작을 때 적절한 절전 모드들로 진입된다. 중간 절전 모드들은 검출된 액세스 패턴에 근거를 두고서 생략될 수 있다. 디스크 드라이브는 또한 작업부하가 변경되는 상황에 동적으로 적응할 수 있고, 그로 인해 성능을 저하시키지 않고서도 더 많은 에너지를 저장하게 된다. 이는 시스템의 실제 성능을 좌우하는 이득 계수들을 조정함으로써 달성되는데, 이로 인해 상기 임계 주파수가 변경된다. 디스크 드라이브는 또한 사용자의 액세스에 대해 할 수 없이 기다려야 할 필요 없이 절전 모드를 종료할 때를 결정한다. 절전 모드는 또한 서로 다른 디스크 드라이브 제품들에 대해 커스터마이즈 될 수 있다. 이 경우, 절전 모드들은 고정 시간 혹은 절전 모드들의 개수를 설정하기 위한 표준안을 따라야 할 필요가 없다. ON/OFF와 성능과 에너지 목표 등과 같은 새로운 사용자-선택 파라미터들은 고정 모드-진입 시간을 대신하여 사용될 수 있다. 이들 파라미터들은 이득 계수들을 조정함으로써 임계 주파수를 조절하게 된다. 이것은 언제 절전 모드에 진입할 것인지를 결정하는데 사용되는 공식을 변경한다.Appropriate power saving modes are entered when the current access frequency is less than the threshold frequency. Intermediate power saving modes can be omitted based on the detected access pattern. Disk drives can also dynamically adapt to changing workloads, thereby storing more energy without compromising performance. This is accomplished by adjusting the gain factors which govern the actual performance of the system, which changes the threshold frequency. The disk drive also determines when to exit sleep mode without having to wait indefinitely for the user's access. Power saving modes can also be customized for different disk drive products. In this case, the power saving modes do not have to follow a standard for setting a fixed time or the number of power saving modes. New user-selected parameters such as ON / OFF and performance and energy targets can be used in place of fixed mode-entry time. These parameters adjust the threshold frequency by adjusting the gain factors. This changes the formula used to determine when to enter the power saving mode.

Description

적응형 요구-기반의 전력 관리를 하는 휴대용 컴퓨터를 위한 디스크 드리이브Disk Drives for Portable Computers with Adaptive Demand-Based Power Management

제1도는 전원부 및 디스크 드라이브에서 에너지를 소비하는 각종 요소들을 나타낸 디스크 드라이브와 컴퓨터 시스템을 도시한 블록도.1 is a block diagram showing a disk drive and a computer system showing various elements that consume energy in the power supply and the disk drive.

제2도는 기설정된 타임 윈도우 내에서 하나 이상의 전력-소모 디스크 드라이브 구성요소에 대해 액세스들을 카운트하는 과정을 도시한 흐름도.2 is a flow chart illustrating the process of counting accesses for one or more power-consuming disk drive components within a predetermined time window.

제3도는 액세스 밀도들(access densities)이 쌓여지는 링 버퍼와 결합된 마이크로프로세서를 예시한 블록도.3 is a block diagram illustrating a microprocessor coupled with a ring buffer in which access densities are accumulated.

제4도는 디스크 드라이브가 절전 모드에 진입할 때 액세스 주파수를 계산하는 과정 및 액세스 주파수를 결정하기 위해 임계 주파수와 비교하는 과정을 도시한 흐름도.4 is a flowchart illustrating the process of calculating an access frequency when the disk drive enters a power saving mode and comparing it with a threshold frequency to determine the access frequency.

제5도는 링 버퍼 내에 저장된 이전 액세스 주파수를 사용하여 임계 주파수를 계산하는 과정을 도시한 흐름도.5 is a flowchart illustrating a process of calculating a threshold frequency using a previous access frequency stored in a ring buffer.

제6도는 링 버퍼 내에 저장된 이전 액세스 주파수를 사용하여 임계 주파수를 계산하는 과정을 도시한 흐름도.6 is a flowchart illustrating a process of calculating a threshold frequency using a previous access frequency stored in a ring buffer.

제7도는 절전 모드로의 진입 및 종료에 대해 시간 수순으로 도시한 그래프.7 is a graph showing the time sequence for entering and exiting a power saving mode.

제8도는 제3도에다 절전 모드로의 진입과 종료사이에서 타임 윈도우들을 카운트하기 위한 카운터가 추가되어 예시된 블록도.8 is a block diagram illustrated in FIG. 3 with the addition of a counter for counting time windows between entering and exiting a power saving mode.

제9도는 트립 레벨을 초과할 때 이득 계수들의 조정을 설명하기 위해 누적 에너지/응답 패널티를 시간의 함수로 나타낸 그래프.9 is a graph showing cumulative energy / response penalty as a function of time to illustrate the adjustment of gain coefficients when the trip level is exceeded.

제10도는 절전 모드가 종료될 때 에너지/응답 패널티 및 기회 상실 페널티를 계산하는 과정을 나타낸 흐름도.10 is a flow chart illustrating the process of calculating energy / response penalties and lost opportunity penalties when power saving mode ends.

제11도는 트립 레벨을 초과할 때 이득 계수들의 조정과 누적 기회 상실 패널티를 계산하는 과정을 나타낸 흐름도이다.11 is a flowchart illustrating a process of adjusting gain coefficients and calculating a cumulative lost opportunity penalty when the trip level is exceeded.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 스핀들 드라이버 2 : VCM 드라이버1: Spindle Driver 2: VCM Driver

3 : 프리앰프/기록 드라이버 4 : 데이터 기록 채널3: preamplifier / record driver 4: data recording channel

5 : 스핀들 제어 전자회로부 6 : 서보 제어 전자회로부5: Spindle Control Electronic Circuit Part 6: Servo Control Electronic Circuit Part

7 : 디스크 컨트롤러 전자회로부 9 : 마이크로프로세서7 disk controller electronic circuit 9 microprocessor

10 : 버퍼 메모리 11 : 인터페이스 모듈10: buffer memory 11: interface module

12 : 전력 제어 모듈 13 : 컴퓨터 인테페이스 컨트롤러12: power control module 13: computer interface controller

19 : 제어 전자회로부 20 : 전원19: control electronic circuit 20: power supply

30 : 로터리 보이스 코일 모터 31 : 액튜에이터30: rotary voice coil motor 31: actuator

32 : 스핀들 모터 33 : 데이터 헤드32: spindle motor 33: data head

40 : 디스핀들 드라이버 41 : 컴퓨터40: spindle driver 41: computer

70, 71 : 버스70, 71: Bus

본 발명은 일반적으로 랩탑(laptop) 컴퓨터나 노트북(notebook) 컴퓨터와 같이 배터리로 전력을 공급하는 휴대용(portable) 컴퓨터에 사용되는 디스크 드라이버들에 관한 것으로, 보다 상세하게는 에너지 소비를 최소화하기 위한 기술을 포함하는 디스크 드라이버들에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates generally to disk drivers used in portable computers that are battery powered, such as laptop computers or notebook computers, and more particularly to techniques for minimizing energy consumption. It relates to disk drivers comprising a.

휴대용 컴퓨터들은 배터리 전력을 다 써버리기 전까지 겨우 몇 시간정도만 작동할 있을 뿐으로, 주된 전력 소비 요소는 하드디스크이다. 휴대용 컴퓨터에 사용되는 하드 디스크 드라이브에 대한 중요한 전원 관리 기술로 몇 가지의 전력-감소(reduced-power)작동 모드나 절전(power-save) 작동 모드가 있는데, 이들은 디스크 드라이브의 판독 혹은 기록 동작 이후 기설정된 고정 시간 주기으 시간이 경과된 후 상기 각 모드로 들어간다. 예컨대, 사용자가 하드 디스크에 데이터를 마지막으로 기록한 후 고정 시간 주기가 끝나는 시점에서, 판독/기록 헤드는 파킹 위치로 이동하고 디스크 드라이브의 스핀들 모터는 정지한다. 그 후 사용자가 다시 디스크 드라이브를 액세스할 때, 스핀들 모터가 회전하고 헤드들은 데이터를 판독하거나 기록하기 위해 적절한 데이터 트랙으로 디스크를 가로질러 이동한다. 이와 같은 절전 모드의 가장 큰 단점은 상기 모드를 종료함에 있어 시간이 걸린다는 것으로, 이 시간 동안 사용자는 어쩔 수 없이 기다릴 수밖에 없다. 이러한 점은 컴퓨터의 성능에 상당한 영향을 미친다. 일반적으로 고정 시간 주기의 길이는 컴퓨터 사용자가 소프트웨어를 이용하여 설정한다.Portable computers can only run for a few hours before they run out of battery power, and the main power consumption factor is the hard disk. Important power management techniques for hard disk drives used in portable computers include several reduced-power or power-save modes of operation, which are used after a disk drive read or write operation. Each of the modes is entered after a time has elapsed for a set fixed time period. For example, at the end of a fixed time period after the user last writes data to the hard disk, the read / write head moves to the parking position and the spindle motor of the disk drive stops. Then when the user accesses the disk drive again, the spindle motor rotates and the heads move across the disk with the appropriate data tracks to read or write data. The biggest disadvantage of such a power saving mode is that it takes time to exit the mode, during which time the user is forced to wait. This has a significant impact on computer performance. In general, the length of a fixed time period is set by the computer user using software.

이러한 종래의 절전 기술은 사용자가 고정 시간 주기로서 양호한 값을 선택하기 위해 필요한 데이터를 갖고 있지 않다는 문제점이 있었다. 즉, 사용자는 단지 액세스 형태에 대한 제한된 지식만을 갖고 있으며, 디스크 드라이브의 에너지와 성능 파라미터들에 대한 정보는 갖고 있지 않다. 사용자는 시스템 내의 하드웨어와 소프프웨어에 의해 디스크 드라이브의 내부 액세스 형태의 정보로부터 격리되어 있다. 절전 모드로 진입하기 위한 고정 시간은 사용자의 작업 부하(the user workload)에 대해 공인된 것이 없기 때문에 에너지와 성능 사이에서 적절하게 타협한다는 것은 쉬운 일이 아니다. 사용자는 작업 부하를 예상하고서 고정 시간을 변경해야 하며, 만일 고정 시간을 너무 짧게 혹은 너무 길게 선택하면 성능과 에너지 소비에 대해 기대한 바의 반대 영향을 줄 수 있다.This conventional power saving technique has a problem that the user does not have the data necessary to select a good value as a fixed time period. In other words, the user has only limited knowledge of the type of access and no information about the energy and performance parameters of the disk drive. The user is isolated from the information in the form of internal access of the disk drive by the hardware and software in the system. It is not easy to compromise properly between energy and performance because the fixed time to enter sleep mode is not authorized for the user workload. The user must change the settling time in anticipation of the workload, and choosing the settling time too short or too long can have the opposite impact on performance and energy consumption.

액세스 형태가 돌발적인 활동 상태 이후에 긴 주기의 비활동 상태가 이어지는 형태일 때, 짧은 모드의 진입(entry) 시간은 에너지를 절약한다. 그러나, 비활동 상태 주기가 상기 모드의 진입 시간에 근접한 값일 때는 과도 에너지(excess energy)가 사용된다. 또한 짧은 주기의 비활동 상태 후에 상기 모드로 들어가기 때문에 성능에 영향을 줄 수 있으며, 일반적으로 모드 회복 시간으로 인하여 더욱 빈번한 액세스 지연을 초래한다.When the access type is in the form of a long period of inactivity following an abruptly active state, entry time in a short mode saves energy. However, excess energy is used when the period of inactivity is close to the entry time of the mode. In addition, entering the mode after a short period of inactivity can affect performance, and in general, mode recovery time results in more frequent access delays.

더 긴 비활동 상태의 주기가 더 짧은 비활동 상태의 주기보다 덜 일반적이라면, 긴 모드의 진입 시간은 상대적으로 컴퓨터 성능에 대한 영향을 감소시키고 과도한 에너지를 사용하는 경향을 줄어준다.If longer periods of inactivity are less common than shorter periods of inactivity, long mode entry times relatively reduce the impact on computer performance and the tendency to use excessive energy.

특정 사용자 작업 부하 동안, 고정 시간에 대한 최적 시간이 일정하지 않을 가능성이 많다. 더욱이, 작업 부하는 사용자가 깨닫지 못한 상태에서 변화될 수 있는데 이는 사용자가 실행하는 응용 소프트웨어의 작용에 기인하기 때문이다.During certain user workloads, it is likely that the optimal time for fixed time will not be constant. Moreover, the workload can change without the user's knowledge, due to the action of the application software that the user runs.

사실 사용자는 고정 모드 진입 시간 사이에서가 아니라 에너지 소비와 컴퓨터 성능 사이에서 선택하고 싶어한다. 사용자는 에너지와 혹은 성능 목표를 달성하는데 있어서 단지 추측으로만 고정 모드 진입 시간을 선택한다. 디스크 드라이브 사용자로부터 에너지와 성능 목표를 입력받는 것은 분명히 바람직한 일이다. 이러한 목표들을 갖고서, 디스크 드라이브는 이 목표들을 만족시키기 위한 적절한 방법이라면 어떠한 것이라도 취할 수 있다. 또한 이 점은 디스크 드라이브로 하여금 더 많은 절전 모드들을 사용할 수 있도록 한다. 이는 사용자가 각 모드 진입에 대한 고정 시간을 더 시앙 선택하지 않는다면 사용자는 드라이브 내에서 동작하는 특정한 절전 모드들을 알 필요가 없기 때문이다.In fact, users want to choose between energy consumption and computer performance, not between fixed mode entry times. The user selects fixed mode entry times only by guesses in achieving energy and / or performance goals. It is certainly desirable to receive energy and performance targets from disk drive users. With these goals, the disk drive can take any that is a suitable way to meet these goals. This also allows the disk drive to use more power saving modes. This is because the user does not need to know the specific power saving modes operating in the drive unless the user chooses a further fixed time for each mode entry.

이상에서 살펴본 바와 같이 디스크 드라이브에 있어서 작업 부하의 변화를 감지할 수 있고 작업 부하의 변화에 능동적으로 적응할 수 있으며, 언제 절전 모드에 진입하고 종료할 것인지를 결정하기 위해 고정 시간 대신 에너지 및 성능 목표를 사용하여 전력 관리를 달성하기 위한 방법과 시스템이 요구된다.As discussed above, disk drives can detect changes in workload, actively adapt to changes in workload, and use energy and performance targets instead of fixed time to determine when to enter and exit sleep mode. What is needed is a method and system for achieving power management.

따라서, 본 발명의 목적은 디스크 드라이브의 이전의 액세스 이력(past access history)으로부터 이후의 사용자의 요구를 예측하여 절전 모드의 진입 및 종료 시간을 결정하는 전력 관리를 수행하는 디스크 드라이브를 제공함에 있다.It is therefore an object of the present invention to provide a disk drive that performs power management to determine the entry and exit times of a power saving mode by predicting a subsequent user's request from a past access history of the disk drive.

이러한 디스크 드라이브는 사용자가 절전 모드의 진입 및 종료에 관련되어 어느 정도의 성능 및 에너지 소비 비용이 드는지를 알고 있지 않으므로 현재의 사용자-선택의 미리 결정되었거나 모드-진입 시간 혹은 고정 모드-진입 시간면에서 장점을 갖는다. 디스크 드라이브는 절전 모드에 관련된 에너지 브레이크-이븐 시간(energy break-even time) 및 복귀 시간(recovery time)에 대한 정보를 갖고 있다. 에너지 브레이크-이븐 시간은 절절 모드로부터 복귀하는 동안 소비되는 여분 에너지(extra energy)가 절전 모드에 있는 동안 감소되는 에너지 소비와 균형잡히도록 디스크 드라이브를 특정의 절전 모드에 유지시키기 위해 필요한 시간이다. 복귀 시간은 디스크 드라이브가 절전 모드로부터 활성 상태(active state)로 되돌아가는데 걸리는 시간이다. 디스크 드라이브는 액세스 형태의 궤적 즉, 데이터를 판독/기록하거나 또는 액튜에이터를 움직이는 각종 요구들의 이력을 유지한다. 이로 인해, 디스크 드라이브는 현재 사용자의 작업부하를 검출하고, 다수의 절전 모드 중 어느 것이 적절한 것인지와 언제 절전 모드에 들어갈 것인지를 결정한다.These disk drives do not know how much performance and energy consumption costs are associated with entering and exiting sleep mode, so that in terms of current user-selected predetermined or mode-entry time or fixed mode-entry time, Has an advantage. The disk drive has information on energy break-even time and recovery time related to the power saving mode. The energy break-even time is the time required to keep the disk drive in a specific power saving mode so that the extra energy consumed while returning from the power saving mode is balanced with the reduced energy consumption while in the power saving mode. The recovery time is the time it takes for the disk drive to return from the sleep mode to the active state. The disk drive maintains a history of the trajectories of the type of access, i.e., the various requests for reading / writing data or moving the actuator. As a result, the disk drive detects the current user's workload and determines which of the multiple power saving modes is appropriate and when to enter the power saving mode.

바람직한 실시예에 있어서, 각 디스크 드라이브의 액세스가 검출되면, 이는 현재 액세스 주파수(access frequency)를 계산하는 데 사용된다. 현재 액세스 주파수는 이전에 계산된 것과 비교되고, 계속하여 임계 주파수(threshold frequency)를 갱신하게 된다. 임계 주파수는 균일 형태(uniform) 또는 산발적인(sporadic) 액세스 형태를 나타내고, 조정 가능한 이득 계수(gain factors)를 포함하는 공식으로부터 계산된다. 디스크 드라이브가 동작하는 동안 적절한 절전 모드는 현재 액세스 주파수가 임계 주파수보다 작을 때 진입한다. 검출된 액세스 형태에 기반을 둔 중간의 절전 모드는 생략될 수 있다. 또한 디스크 드라이브는 작업부하가 변화되는 상황에 능동적으로 적용할 수 있고, 그로 인해 성능을 저하시킴 없이 많은 에너지를 절약하게 된다. 이는 시스템의 실제 성능에 관련된 이득 계수들을 조정함으로써 달성된다. 또한 디스크 드라이브는 사용자의 액세스를 기다려야 할 필요없이 절전 모드를 종료하는 시점을 결정한다.In the preferred embodiment, if an access of each disk drive is detected, it is used to calculate the current access frequency. The current access frequency is compared with the one previously calculated and continues to update the threshold frequency. The critical frequency represents a uniform or sporadic access form and is calculated from a formula that includes adjustable gain factors. While the disk drive is operating, a suitable power saving mode is entered when the current access frequency is less than the threshold frequency. The intermediate power saving mode based on the detected access type can be omitted. Disk drives can also be actively applied to changing workloads, which saves a lot of energy without compromising performance. This is accomplished by adjusting the gain factors related to the actual performance of the system. The disk drive also determines when to exit sleep mode without having to wait for user access.

본 발명에서는 사용자가 상황 변화의 궤적을 기억하지 않아도 될 많은 절전 모드들이 개시된다. 또한 절전 모드들은 고정 시간 혹은 절전 모드들의 개수를 설정하기 위한 어떤 표준안을 따라야 할 필요가 없이 서로 다른 디스크 드라이브에 대해서 적절하게 적용될 수 있다. ON/OFF와 성능과 에너지 목표 등과 같은 새로운 사용자-선택 파라미터들은 고정 모드-진입 시간을 대신하여 사용될 수 있다. 이들 파라미터들은 이득 계수들을 조정함으로써 임계 주파수를 조절하게 된다. 이것은 언제 절전 모드에 진입할 것인지를 결정하는데 사용되는 공식을 변경한다.In the present invention, many power saving modes are disclosed in which the user does not have to remember the trajectory of the situation change. Power saving modes can also be applied appropriately for different disk drives without having to follow any standard for setting fixed time or number of power saving modes. New user-selected parameters such as ON / OFF and performance and energy targets can be used in place of fixed mode-entry time. These parameters adjust the threshold frequency by adjusting the gain factors. This changes the formula used to determine when to enter the power saving mode.

이하 본 발명이 지닌 특성과 장점을 첨부된 여러 도면을 참조하여 보다 상세히 설명한다.Hereinafter, the characteristics and advantages of the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명의 디스크 드라이브를 위한 전력 관리(power management)에서 사용되는 각종 구성 요소들을 나타낸 블록도이다. 일반적으로, 상기 디스크 드라이브(40)는 컴퓨터(41)와 같은 랩탑 컴퓨터의 하우징 내에 포함되어 있는 하드 디스크 드라이브이다. 디스크 드라이브(40)는 통상의 디스크(34)와 같은 하나 혹은 그 이상의 디스크들을 포함하고 있으며, 디스크들은 스핀들 모터(32)에 부착되어 회전된다. 데이터 헤드(33)는 일반적으로 로터리 보이스 코일 모터(a ratary Voice Coil Motor; 이하 VCM 이라 칭함)(30)에 의해 동작되는 액튜에이터(31)에 연결된다. 스핀들 모터(32)는 스핀들 드라이버(1)와 스핀들 제어 전자회로부(5)에 의해 구동된다. 서보 제어 전자회로부(6)는 헤드(33)를 디스크(33)의 각 데이터 트랙들 위에 위치시키는데 사용되고, VCM(30)에 전류를 공급하는 VCM 드라이버(2)에 연결된다. 또한 제1도에는 액튜에이터(31)를 위한 크래쉬 스톱(crash stop)(37)과 로드/언로드 램프(a Load/Unload(이하 L/UL라 칭함) ramp)(38)가 도시되어 있다. 만일 디스크 드라이브(40)가 스핀들 모터가 회전하지 않을 때 헤드(33)가 디스크(34)내에 잔류하는 CSS 타입(the Contact Start/Stop type)이라면, 액튜에이터는 VCM(30)으로 공급된 전류에 의해 크래쉬 스톱(37)쪽으로구동되고, 그 후 헤드(33)는 디스크의 내경부(Inside Diameter; ID)에 근접한 데이터가 없는 랜딩 영역(a nondata landing zone)상에서 정지하게 된다. 디스크 드라이브(40)가 L/UL 타입이면, 스핀들 모터의 일시 정지시에 액튜에이터(31)가 구동되어 헤드(33)를 지지하는 서스펜션은 램프(38)위에 걸쳐지고 디스크에 접촉되어 있는 헤드(33)를 언로드시킨다. CSS 디스크 드라이브에서의 ID 랜딩 영역과 L/UL 디스크 드라이브에서의 램프는 종종 헤드 파킹 장소(head-parking lications)로 불려진다.1 is a block diagram illustrating various components used in power management for a disk drive of the present invention. Generally, the disk drive 40 is a hard disk drive contained within a housing of a laptop computer such as the computer 41. The disc drive 40 includes one or more discs, such as a conventional disc 34, which are attached to the spindle motor 32 and rotated. The data head 33 is connected to an actuator 31 which is generally operated by a ratary voice coil motor (hereinafter referred to as VCM) 30. Spindle motor 32 is driven by spindle driver 1 and spindle control electronics 5. The servo control electronics 6 is used to position the head 33 over the respective data tracks of the disc 33 and is connected to the VCM driver 2 which supplies current to the VCM 30. Also shown in FIG. 1 is a crash stop 37 and a Load / Unload ramp 38 for the actuator 31. If the disk drive 40 is of the Contact Start / Stop type in which the head 33 remains in the disk 34 when the spindle motor is not rotating, the actuator is driven by the current supplied to the VCM 30. Driven towards the crash stop 37, the head 33 then stops on a nondata landing zone close to the inner diameter (ID) of the disc. If the disk drive 40 is of the L / UL type, the actuator 31 is driven when the spindle motor is paused to support the head 33 so that the suspension over the lamp 38 and in contact with the disk 33 Unload). ID landing areas on CSS disk drives and ramps on L / UL disk drives are often referred to as head-parking lications.

데이터 헤드(33)는 디스크(34) 상에 사용자 데이터를 판독/기록하며, 일반적으로 박막 유도성(a Thin Film Inductive; 이하 TFI로 칭함) 판독/기록 헤드이거나 자기저항성(Magneto-Resistive; 이하 MR이라 칭함) 판독 헤드를 갖고 있는 TFI 기록 헤드이다. 데이터 헤드(33)는 프리앰프/기록 드라이버(3)와 데이터 기록 채널(4) 그리고 디스크 컨트롤러 전자회로부(7)에 연결된다. 데이터 기록 채널(4)은 피크 검출기나 부분 응답 최대 유사(Partial-Response Maximum Likelihood; PRML)와 같은 어떠한 형태라도 가능하며, 데이터 검출과, 인코딩 및 디코딩과 같은 기능을 포함하고 있다. 마이크로프로세서(9)와 연결된 디스크 컨트롤러(7)는 데이터를 판독하고 기록하는 프로세스를 다루고, 컴퓨터(41)와의 통신을 조정하고, 버퍼 메모리(10)를 관리하며, 서보 제어 전자회로부(6)와 스핀들 제어 전자회로부(5)에 명령을 내린다.The data head 33 reads / writes user data on the disk 34 and is generally a thin film inductive (TFI) read / write head or magneto-resistive (MR) TFI recording head having a read head. The data head 33 is connected to the preamplifier / write driver 3, the data write channel 4 and the disk controller electronic circuitry 7. The data recording channel 4 can be in any form, such as a peak detector or Partial-Response Maximum Likelihood (PRML), and includes functions such as data detection, encoding and decoding. The disk controller 7, connected to the microprocessor 9, handles the process of reading and writing data, coordinates communication with the computer 41, manages the buffer memory 10, and controls the servo control electronics 6. Commands the spindle control electronics circuitry 5.

디스크 드라이브(40)는 또한 마이크로프로세서(9)와, 관련 메모리(8)와, 버퍼 메모리(10)와, 인터페이스 모듈(11) 및 전력 제어 모듈(12)을 포함한다. 마이크로프로세서 메모리(8)는 마이크로프로세서(9)를 위한 코드와 데이터를 저장하는데 사용된다. 버퍼 메모리는 컴퓨터(41)로부터 디스크 드라이브(40)로 전송된 데이타를 저장하는데 사용되며 일반적으로 캐시 메모리이다. 인터페이스 모듈(11)은 컴퓨터 인터페이스 컨트롤러(13)로부터 상기 인터페이스 상으로의 정보 전송을 제어한다. 통합 드라이브 전자회로부(Integrated Drive Electronics; IDE) 인터페이스와 소형 컴퓨터 시스템 인터페이스(Small Computer System Interface; SCSI)는 가장 일반적인 형태의 인터페이스들이다.The disk drive 40 also includes a microprocessor 9, an associated memory 8, a buffer memory 10, an interface module 11 and a power control module 12. Microprocessor memory 8 is used to store code and data for microprocessor 9. The buffer memory is used to store data transferred from the computer 41 to the disk drive 40 and is generally cache memory. The interface module 11 controls the transfer of information on the interface from the computer interface controller 13. Integrated Drive Electronics (IDE) interfaces and Small Computer System Interfaces (SCSI) are the most common types of interfaces.

제1도에 도시된 디스크 드라이브(40)의 모든 요소들은 동작 전력을 필요로 한다. 전력 제어 모듈(12)은 디스크 드라이브(40)의 전력 관리를 제어하는데, 전원(20)으로부터 버스(71)를 통하여 전력을 공급받는다. 제1도에는 모든 구성 요소들이 전력 연결이 도시되어 있지 않는데, 이들 각 요소들은 버스(71)를 통하지 않고 직접 전력을 받거나 혹은 다른 구성 요소를 통해 받는다. 전력 제어 모듈(12)은 컨트롤러(7)내에 논리 회로로써 물리적으로 포함되거나 마이크로프로세서(9)가 실행하는 마이크로코드 형태로 메모리(8)내에 저장될 수 있다. 전원(20)으로부터 각 에너지 소비 요소들로의 전력 라인은 모듈(12)이나 마이크로프로세서(9)의 출력에 의해 직접적으로 제어되거나, 혹은 요소들을 턴-오프(turn-off), 턴-온(turn-on)하는 명령 및 각 요소들의 전력 상태를 변경시키는 명령들을 보낼 수 있다.All elements of the disk drive 40 shown in FIG. 1 require operating power. The power control module 12 controls power management of the disk drive 40, which receives power from the power source 20 via the bus 71. All components are not shown in FIG. 1 with power connections, each of which is powered directly or through other components rather than via bus 71. The power control module 12 may be physically included as a logic circuit in the controller 7 or stored in the memory 8 in microcode form executed by the microprocessor 9. The power line from the power source 20 to each energy consuming element is directly controlled by the output of the module 12 or the microprocessor 9 or the elements are turned off or turned on. commands to turn on and to change the power state of each element.

제1도에 디스크 드라이브(40)의 각종 요소들간의 연결을 개략적으로 나타내고 있지만, 상기 기능들은 요소들을 다르게 배열하여서도 얻어질 수 있다. 예를 들어, 마이크로프로세서 메모리(8)는 마이크로프로세서(9)내에 포함될 수도 있고 혹은 버퍼 메모리(10)와 결합될 수도 있다. 더욱이, 디스크 드라이브 내에 하나 이상의 마이크로프로세서를 갖는 것이 일반적인 바, 이들 다수의 마이크로프로세서 중 하나는 주로 인터페이스와 드라이브 관리 기능을 위해 사용되고 다른 하나는 서보 기능을 위해 사용된다. 이러한 경우에 서보 제어 전자회로부(6)는 별도의 분리된 서보 마이크로프로세서를 포함할 수도 있다.Although the connection between the various elements of the disk drive 40 is schematically shown in FIG. 1, the above functions can be obtained by arranging the elements differently. For example, microprocessor memory 8 may be included within microprocessor 9 or may be combined with buffer memory 10. Moreover, it is common to have one or more microprocessors in a disk drive, one of which is primarily used for interface and drive management functions and the other for servo functions. In this case the servo control electronics 6 may comprise a separate separate servo microprocessor.

컴퓨터(41)는 인터페이스 컨트롤러(13)와, 프로세서(14)와, 메모리(15)와, 디스플레이(16)와, 키보드(17) 혹은 다른 장치와, 주변장치(18)와, 전원(20) 및 제어 전자회로부(19)를 포함한다. 인터페이스 컨트롤러(13)는 디스크 드라이브(40)와의 통신을 제어한다. 전원(20)은 컴퓨터(41)와 디스크 드라이브(40)를 위한 전원이다. 휴대용 장치에 사용되는 전원은 교류 전력 공급장치와 같은 다른 형태의 전원일 수도 있지만 일반적으로 재충전이 가능한 배터리이다. 전원(20)은 컴퓨터(41) 내 여러 요소들로 버스(70)를 통해 전력을 공급하고, 디스크 드라이브(40)로는 다른 버스(71)를 통하여 전력을 공급한다. 또한 전원(20)은 제어 전자회로부(19)와 통신한다. 예를 들어, 휴대용 컴퓨터에 사용되는 배터리는 방전 상태와 같은 배터리 상태를 모니터 하는 내부 제어 전자회로부를 포함한다.The computer 41 includes an interface controller 13, a processor 14, a memory 15, a display 16, a keyboard 17 or other device, a peripheral device 18, and a power source 20. And a control electronics unit 19. The interface controller 13 controls communication with the disk drive 40. The power source 20 is a power source for the computer 41 and the disk drive 40. The power source used in a portable device may be another type of power source such as an AC power supply, but is generally a rechargeable battery. The power source 20 supplies power through the bus 70 to various elements in the computer 41 and the disk drive 40 supplies power through the other bus 71. The power supply 20 also communicates with the control electronics 19. For example, batteries used in portable computers include internal control electronics that monitor battery status, such as discharge status.

대개 디스크 드라이브(40)는 계속하여 일정한 비율로 에너지를 소비하지는 않는다. 즉, VCM(30)으로 보내는 간헐적인 전류 펄스에 의해 헤드(33)를 단일 데이터 트랙 위에 유지시키는 것과 같이 트랙 추적(track following)을 할 때보다는 VCM(30)에 전류를 흐르게 하여 헤드(33)를 디스크(34)의 데이터 트랙들을 가로질러 이동하게 하는 것과 같은 탐색(seeking)을 할 때 더 많은 에너지가 소비된다. 또한 기록 동작 중에는 TFI 헤드의 코일에 기록 전류가 흐름으로 인해 에너지가 추가로 소비된다. 이와 같은 디스크 드라이브 액세스들에 의해 활성(active) 전력모드는 다음 두 가지 경우로 대별된다. 즉, 탐색/판독/기록(seek/read/write) 전력 모드와 아이들(idle) 전력 모드이다. 탐색/판독/기록 전력 모드는 사용자 작업 부하라는 가정(assumption)에 근거하기 때문에 일반적으로 추정이다. 아이들 전력 모드는 데이터가 기록/판독되지 않아, 탐색이 일어나지 않을 때의 정상적인 트랙 추적 동작이다. 활성 상태(active state)라는 용어는 탐색/독출/기록이거나 아이들 전력 모드 중 어느 하나에 있을 때의 디스크 드라이브 상태를 나타내는데 사용된다.Usually disk drive 40 does not continue to consume energy at a constant rate. In other words, an intermittent current pulse to the VCM 30 causes the current to flow through the VCM 30 rather than when track following, such as keeping the head 33 on a single data track. More energy is consumed when seeking, such as causing it to move across the data tracks of the disc 34. In addition, during the write operation, additional energy is consumed due to the flow of the write current through the coil of the TFI head. With such disk drive accesses, the active power mode is roughly divided into two cases: That is, seek / read / write power mode and idle power mode. The seek / read / write power mode is generally estimated because it is based on the assumption of user workload. Idle power mode is a normal track tracking operation when no data is recorded / read, so no search occurs. The term active state is used to indicate the disk drive state when in either seek / read / write or idle power modes.

일반적인 두 가지의 절전 모드는 아이들2(idle2)와 스탠바이(standby)로 지칭된다. 아이들2 모드에서, 액튜에이터(31)는 파킹되고(즉, 크래쉬 스톱(30)쪽으로 이동하거나 램프(37)위로 언로드되고), 서보 제어 전자회로부(6)와 프리앰프(3)와 채널(4)을 포함하는 기록/판독 전자회로부는 턴-오프된다. 따라서 아이들 2 모드는 실질적으로 VCM 드라이버(2)와, 서보 제어 전자회로부(6)와, 프리앰프(3) 및 채널(4)로 공급되는 전력을 감소시키거나 필요 없게 한다. 또한 아이들2 절전 모드에서, 서보 작업과 기록/판독 작업이 활성 상태가 아니므로 디스크 컨트롤러(7)와 마이크로프로세서(9)로 공급되는 전력을 줄이느 것도 가능하다.Two common power saving modes are referred to as idle2 and standby. In idle 2 mode, the actuator 31 is parked (i.e. moved towards the crash stop 30 or unloaded onto the ramp 37), the servo control electronics 6 and the preamplifier 3 and the channel 4 The write / read electronic circuit portion including the is turned off. The idle 2 mode thus substantially reduces or eliminates the power supplied to the VCM driver 2, the servo control electronics 6, the preamplifier 3 and the channel 4. In idle 2 power saving mode, it is also possible to reduce the power supplied to the disk controller 7 and the microprocessor 9 since the servo operation and the write / read operation are not active.

반면 스탠바이 모드에서, 액튜에이터(31)는 파킹위치로 이동되고 스핀들 모터(32)는 턴-오프된다. 스탠바이 절전 모드는 아이들2 모드가 갖는 모든 절전 효과를 가지면서도 그에 더하여 스핀들 제어 전자회로부(5)와 스핀들 드라이버(1)로 공급되는 전력을 감소시킨다. 몇몇 실시예에 있어서, 아이들2 모드와 스탠바이 모드 중 어느 하나에서 혹은 양쪽 모두에서 버퍼(10)가 턴-오프될 수도 있다. 또한 부가적인 절전 모드들로 가능하다. 예를 들어, 슬립 모드(sleep mode)는 스탠바이 모드의 절전 특징을 포함하고 있고, 또한 인터페이스 컨트롤러(11)의 일부분과 컴퓨터 인터페이스 컨트롤러(13)으로부터의 슬립 회복 명령에 응답하는데 필요한 것에만 전력이 공급되도록 하고 거의 모든 나머지 전자회로부는 턴-오프 되도록 한다.In the standby mode, the actuator 31 is moved to the parking position and the spindle motor 32 is turned off. The standby power saving mode has all the power saving effects of the idle 2 mode, but also reduces the power supplied to the spindle control electronics 5 and the spindle driver 1. In some embodiments, buffer 10 may be turned off in either or both of idle2 mode and standby mode. Additional power saving modes are also possible. For example, the sleep mode includes the power saving feature of the standby mode, and also supplies power only to those parts necessary for responding to the sleep recovery command from the part of the interface controller 11 and the computer interface controller 13. And almost all remaining electronics are turned off.

테이블 1은 상기 두 가지 활성 모드와 두 가지 절전 모드에 있어서, 일반적인 2.5인치 디스크 드라이브에 대한 전력값을 보여주고 있다. 이 테이블로부터 절전 모드, 즉 아이들2와 스탠바이 모드가 에너지 소비를 상당히 줄여준다는 것은 분명한 사실이다.Table 1 shows power values for a typical 2.5-inch disk drive in the two active and two power saving modes. It is clear from this table that the power saving mode, i.e., idle 2 and standby mode, significantly reduces energy consumption.

또한 테이블 1은 두 가지의 절전 모드에 대해 회복 시간(T)을 도시하고 있는데, 이것은 디스크 드라이브를 절전 모드에서 활성 상태로 되돌아가는데 걸리는 시간이다. 평균 회복 전력(P)도 또한 도시되고 있는데, 에너지 브레이크-이븐(break-even) 시간(T)은 이 정보로부터 계산될 수 있다. 이것은 특정 절전 모드로부터 회복하는 동안 소비된 여분 에너지가 이 모드 내에 있는 동안 감소된 에너지 소비량과 균형이 되도록 특정한 절전 모드에 머무르도록 하기 위해 드라이브가 필요로 하는 시간이다. 정상적인 활성 모드가 아이들이고 회복 시간(T)은 단지 절전 모드에서만 적용된다고 가정하면, T는 다음의 식으로 추정될 수 있다.Table 1 also shows the recovery time (T) for the two sleep modes, which is the time it takes for the disk drive to return from sleep mode to the active state. The average recovery power P is also shown, where the energy break-even time T can be calculated from this information. This is the time the drive needs to stay in a particular power saving mode so that the extra energy consumed while recovering from that power saving mode is in balance with the reduced energy consumption while in this mode. Assuming that the normal active mode is idle and the recovery time T is only applied in the power saving mode, T can be estimated by the following equation.

테이블 2는 테이블 1의 예에 대해 에너지 브레이크-이븐 시간(TBE)을 도시하고 있다.Table 2 shows the energy break-even times T BE for the example of Table 1.

본 발명에서는 어떤 전력 모드가 가장 적절한 것인지와 언제 그 모드에 진입할 것인지를 결정하기 위해 실제 사용자 작업 부하(actual user workload)가 사용된다. 따라서 절전 모드로 진입은 사용자-선택의 고정 시간에 의해 미리 결정되기 보다는 사용자의 작업 부하의 요구에 따르는 것이 바람직하다.In the present invention, an actual user workload is used to determine which power mode is most appropriate and when to enter that mode. Thus, entering the power saving mode is preferably in accordance with the needs of the user's workload, rather than being predetermined by a fixed time of user-selection.

한편, 에너지 소비를 최적화하기 위해서 디스크 드라이브로의 액세스 타입과 각요소가 어떤 동작 형태를 보이는 가를 아는 것은 매우 중요하다. 절전 모드에 있어서, 액세서는 절전 모드로부터 복귀를 요구하는 작업으로서 정의된다. 예를 들어, 절전 모드가 아이들2라고 가정하면, 디스크(34)는 회전하고 있고 서보 제어 전자회로부(6)와 VCM 드라이버(2)는 턴-오프 되어 있고, 디스크 캐시를 포함하는 버퍼(10)는 활성 상태인 경우, 데이터를 판독/기록하기 위해 액튜에이터(31)를 이동시키고자 하는 디스크 드라이브 액세스는 하나의 액세스로서 카운트된다. 캐시 히트(cache hit)는 이러한 절전 모드에 대한 액세스는 아니지만, 디스크(34)에 판독이나 기록을 요구하지 않기 때문에 컴퓨터(41)로부터의 상태 조회(status queries)와 같은 확실한 다른 인터페이스 명령이 아니다. 단순하게 설계할 때는 액세스를 카운트할 때 캐시 히트가 주는 효과는 고려할 필요가 없다. 이러한 경우에 있어서 데이터가 캐시에 전부 잔류하고 있다 해도 인터페이스를 통해 받은 판독 혹은 기록 명령은 하나의 액세스로써 카운트된다. 이러한 가정은 에너지 절약을 줄어들게 할지도 모르지만, 전력 관리 기술을 설계하는데 있어 복잡성을 줄여주므로 오히려 비용면에서 효과적일 수 있다.On the other hand, in order to optimize energy consumption, it is very important to know the type of access to the disk drive and what type of operation each element exhibits. In the power save mode, an accessor is defined as an operation that requires a return from the power save mode. For example, assuming that the power saving mode is idle 2, the disk 34 is rotating, the servo control electronics 6 and the VCM driver 2 are turned off, and the buffer 10 includes the disk cache. If is active, the disk drive access to move actuator 31 to read / write data is counted as one access. Cache hits are not access to this power saving mode, but are not certain other interface commands such as status queries from computer 41 because they do not require read or write to disk 34. In a simple design, the effect of cache hits on counting accesses does not need to be considered. In this case, the read or write command received through the interface is counted as one access, even though all the data remains in the cache. These assumptions may reduce energy savings, but they can be cost effective because they reduce the complexity of designing power management technologies.

특정한 절전 모드, 예를 들어 스탠바이(디스크(34)의 회전 속도를 줄이는 것)에 진입하는 결정을 내릴 때는 최근의 액세스 패턴을 고려해야만 한다. 액세스 패턴은 상기 액세스를 구동하고 있는 소프트웨어 처리 과정에 대한 정보를 포함하고 있다. 액세스 패턴들은 주파수, 즉 디스크 드라이브 액세스가 발생하는 비율에 의해 특징지어질 수 있고, 주파수의 분포는 액세스 이력(the access history)으로부터 결정될 수 있다. 관찰된 액세스 주파수가 최근의 액세스 이력의 주파수 분포에 속하지 않는 때를 판단하는 것은 가능하다. 이러한 판단은 낮에 액세스 주파수가 최근의 액세스 패턴의 일부가 아닐 확률을 추정함으로써 통계적으로 이루어지고, 따라서 액세스 패턴 및 이것에 관련된 소프트웨어의 처리 과정이 중지된다는 것을 표시한다. 이러한 판단을 하는 데에는 많은 결정 계수들이 관계한다. 본 발명에서는, 이러한 계수들도 또한 적응형 전력 관리(adaptive power management)@를 제공하도록 디스크 드라이브의 성능에 기반을 두고 동적으로 조정된다.The recent access pattern must be taken into account when making a decision to enter a specific power saving mode, for example standby (reducing the rotational speed of disk 34). The access pattern contains information about the software process that is driving the access. Access patterns can be characterized by frequency, ie the rate at which disk drive access occurs, and the distribution of frequencies can be determined from the access history. It is possible to determine when the observed access frequency does not belong to the frequency distribution of the recent access history. This determination is made statistically by estimating the probability that the access frequency is not part of a recent access pattern during the day, thus indicating that the processing of the access pattern and the software associated with it is stopped. Many decision coefficients are involved in making this judgment. In the present invention, these coefficients are also dynamically adjusted based on the performance of the disk drive to provide adaptive power management.

또한, 액세스 주파수로부터 주기적 액세스(periodic accesses)를 검출하는 것과 주기적 액세스의 시작과 끝을 예측하여 절전 모드로 진입하고 종료하는 것이 가능하다. 주기적 액세스의 일 예로서, 워드 프로세싱 프로그램에 있어서 문서 저장 간격 시간이 지정된 자동저장의 경우가 있다. 즉, 소프트웨어 사용자는 워드 프로세싱 소프트웨어의 자동 저장 기능을 이용하여 매5분 간격으로 파일을 디스크로 자동적으로 기록되도록 할 수 있다. 만일 주기적 액세스로 들어가기 바로 직전에 절전 모드를 빠져 나올 수 있다면, 사용자는 응답 지연을 알지 못하기 때문에 성능을 향상시키게 될 것이다. 주기적 액세스가 종료된 직후에 절전 모드에 진입하는 것은 지연 시간을 더욱 짧게 하여 절전 모드로 진입할 수 있기 때문에 에너지 절약이 증대된다.It is also possible to detect periodic accesses from the access frequency and to enter and exit the power saving mode by predicting the start and end of the periodic access. An example of periodic access is the case of autosave in which a document storage interval time is specified in a word processing program. That is, the software user can use the automatic processing of the word processing software to automatically write the file to disk every five minutes. If you can exit sleep mode just before entering periodic access, you will improve performance because you don't know the response delay. Entering the power saving mode immediately after the end of the periodic access can save energy because the delay time can be entered into the power saving mode.

바람직한 실시예에 있어서, 디스크 액세스 패턴은 두 가지 카테고리, 즉 균일 액세스와 산발적인 액세스 둘 중 하나에 속하는 것으로 가정된다. 예를 들어, 액세스 주파수의 평균치 및 표준 편차는 계산될 수 있는데, 표준 편차가 평균치의 몇 분의 얼마라면 액세스 주파수는 잘 정의된 것으로 간주될 수 있다. 그렇지 않다면, 액세스 패턴은 산발적, 즉 평균치와 표쥰 편차에 의해 잘 정의되지 못한 것으로 간주된다.In the preferred embodiment, the disk access pattern is assumed to belong to one of two categories: uniform access and sporadic access. For example, the mean and standard deviation of the access frequency can be calculated, where the access frequency can be considered well defined if the standard deviation is a few minutes of the mean. Otherwise, the access pattern is considered sporadic, i.e. poorly defined by the mean and standard deviation.

균일 액세스인 경우에는, 관찰된 액세스 주파수가 평균치에서 몇 배의 표준 편차를 뺀 값 이하가 되었다면, 액세스 패턴은 종료된 것으로 간주된다. 이는 관찰된 액세스 주파수가 관찰된 액세스 패턴에 속하는 확률을 선택하는 것과 동일하다. 이와 달리, 최소의 관찰된 액세스 주파수의 몇 분의 일을 사용하여 액세스 패턴의 종료를 추정하는 것도 가능하다. 기본 원리는 액세스 패턴을 특징짓는데 있어 최근의 액세스 주파수를 사용하여 이것으로부터 임계 주파수를 결정하는 것이다. 이에 따라 액세스 주파수가 이 임계 주파수를 초과할 때, 액세스 패턴이 중지할 가능성은 매우 높은 것으로 가정된다.In the case of uniform access, the access pattern is considered to be terminated if the observed access frequency is less than or equal to the mean minus several times the standard deviation. This is equivalent to selecting the probability that the observed access frequency belongs to the observed access pattern. Alternatively, it is also possible to estimate the end of an access pattern using a few minutes of the minimum observed access frequency. The basic principle is to use a recent access frequency to characterize an access pattern to determine a threshold frequency from it. Thus, when the access frequency exceeds this threshold frequency, it is assumed that the probability of the access pattern stopping is very high.

액세스 주파수는 타임 윈도우(a time window)를 선택하고, 윈도우 내에서 일어나는 액세스의 횟수를 카운트하고, 이 횟수를 주파수로 변환함으로써 측정된다. 각 절전 모드에 대해 서로 다른 타임 원도우가 선택될 수 있다. 하나의 타임 윈도우 내에서 일어나는 액세스의 횟수를 액세스 밀도(the access density)라고 부른다.The access frequency is measured by selecting a time window, counting the number of accesses occurring within the window, and converting this number to frequency. Different time windows can be selected for each power saving mode. The number of accesses occurring within one time window is called the access density.

제2도는 액세스 밀도를 측정하는 과정을 상세히 나타낸 흐름도이다. 먼저 윈도우 타임이 종료되었는지를 결정하기 위해 단계 403에서 타이머가 검사된다. 만일 윈도우가 아직 종료되지 않았다면 단계 401에서 액세스가 발생되었는지를 확인하고, 발생되었으면 단계 402에서 밀도 카운터(density counter)를 증가시킨다.2 is a flowchart showing the process of measuring the access density in detail. The timer is first checked in step 403 to determine if the window time has expired. If the window has not yet exited, then check in step 401 if an access has occurred, and if so, in step 402, increase the density counter.

제2도는 모든 타임 윈도우가 다수의 가장 짧은 원도우 일 때의 작용(behavior)을 나타낸다. 이러한 경우에 있어서, 단계 402에서 모든 절전 모드에 대한 밀도들이 증가된다. 밀도 카운터의 초기화(reset)는 표시되지 않았지만, 다음 윈도우에 대한 액세스가 시작되기에 앞서 현재 원도우에 대한 밀도 값이 링 버퍼와 같은 다른 저장장치로 옮겨진 후 초기화된다. 소정 배수의 최소의 타임 윈도우에서 타임 윈도우들을 갖는 절전 모드에 있어서, 밀도 카운트는 더 긴 윈도우의 끝부분에서만 초기화된다. 제2도는 폴링 루프 설계(polling loop design)의 작용을 예시하고 있다. 동등한 인터럽터-기반(interrupt-based)의 설계가 제2도로부터 쉽게 도출될 수 있을 것이다.2 shows the behavior when all the time windows are a plurality of shortest windows. In this case, the densities for all power saving modes are increased in step 402. The reset of the density counter is not shown, but before the access to the next window begins, the density value for the current window is transferred to another storage device, such as a ring buffer, and then initialized. In a power saving mode with time windows in the minimum time window of a certain multiple, the density count is initialized only at the end of the longer window. 2 illustrates the operation of a polling loop design. The equivalent interrupter-based design may be easily derived from FIG.

제2도에 보여진 처리과정은 제1도의 전력 모듈(12)의 기능 중 일부이며, 하드웨어상에서 및/또는 소프트웨어 상으로 구현될 수 있다. 제3도는 제2도의 과정을 구현하기 위해 적합한 하드웨어 구성을 나타낸다. 타이머(201)와, 카운터(202) 및 링 버퍼(203)는 컨트롤러(7)의 일부로서 도시되어 있다. 링 버퍼(203)는 마이크로프로세서(9)에 의해 어드레싱된다. 제46도의 과정도 마찬가지지만, 제2도에 도시된 과정의 각 단계들을 수행하기 위한 한 세트의 프로그램 명령어는 마이크로프로세서(9)에 의해 어드레싱 되는 메모리(8)내에 마이크로코드로 저장되어 있다. 액세스 신호(220)는 디스크 컨트롤러(7)내의 밀도 카운트(202)로 입력된다. 예를 들면, 신호(220)는 인터페이스(11) 및 인터페이스 컨트롤러(13)로부터의 판독 요구에 응할 때나, 또는 컨트롤러(7)가 채널(4)로 판독 명령을 전송할 때와 동시에 컨트롤러(7)에 의해 발생된다. 액세스 신호(220)는 디스크 드라이브가 액세스 될 때마다 카운터(202)로 보내지고, 카운터(202)는 액세스들(220)을 카운트하게 된다. 타이머(201)는 계속하여 작동되어 각 타임 윈도우의 끝에서 신호(221)를 출력한다. 카운터에서 밀도 값은 신호(222)로서 출력되고, 링 버퍼와 같은 밀도 저장 버퍼(203)에 넘겨진다. 타이머(201)로부터의 윈도우-종료(end-of-window)신호(221)는 링 버퍼(203)로 하여금 다음 메모리 위치(next memory location)에다가 밀도 값(222)을 기록하고 버퍼의 기록 포인터 값을 증가시킨다. 그 후, 신호(221)는 카운터(202)를 초기화한다. 밀도 값은 마이크로프로세서(9)에 의해 링 버퍼(203)로부터 판독된다. 마이크로프로세서(9)는 버퍼(203)를 판독하기 위해 클리어(clear, 223) 및 판독(225) 신호들을 송신하고, 밀도 값을 표시하는 출력 신호(224)들을 수신한다. 마이크로프로세서(9)는 메모리(8)에 저장되어 있는 마이크로코드를 실행하는 동안 디스크 드라이브의 각 구성요소에 있어 이들의 전력 상태를 변경시키는 명령을 발하기 위해 밀도 값을 사용한다. 여기서 전력 상태를 변경시킨다는 것은 적절한 절전 모드로 진입하거나 종료하는 것을 의미한다.The process shown in FIG. 2 is part of the functionality of power module 12 in FIG. 1 and may be implemented in hardware and / or in software. 3 shows a suitable hardware configuration for implementing the process of FIG. The timer 201, the counter 202 and the ring buffer 203 are shown as part of the controller 7. The ring buffer 203 is addressed by the microprocessor 9. 4th The same is true of the process of FIG. 6, but a set of program instructions for performing each of the steps of the process shown in FIG. 2 are stored in microcode in the memory 8 addressed by the microprocessor 9. The access signal 220 is input to the density count 202 in the disk controller 7. For example, signal 220 may be sent to controller 7 at the same time as responding to a read request from interface 11 and interface controller 13 or when controller 7 sends a read command to channel 4. Is caused by. The access signal 220 is sent to the counter 202 every time the disk drive is accessed, and the counter 202 counts the accesses 220. The timer 201 continues to operate to output a signal 221 at the end of each time window. The density value at the counter is output as signal 222 and passed to a density storage buffer 203, such as a ring buffer. The end-of-window signal 221 from the timer 201 causes the ring buffer 203 to write the density value 222 to the next memory location and to write the buffer's write pointer value. To increase. The signal 221 then initializes the counter 202. The density value is read from the ring buffer 203 by the microprocessor 9. Microprocessor 9 transmits clear 223 and read 225 signals to read buffer 203 and receives output signals 224 indicating the density value. The microprocessor 9 uses the density value to issue instructions to change the power state of each component of the disk drive while executing the microcode stored in the memory 8. Changing the power state here means entering or exiting the appropriate power saving mode.

일반적으로, 절전 모드에 대한 타임 윈도우는 양호한 응답을 얻을 수 있도록 하기 위해 디스크 드라이브가 상기 절전 모드에 적절히 대응할 수 있는 액세스 주파수의 범위가 가능하도록 선택된다. 여기서 관심 있는 주파수들은 그 주기가 절전 모드의 대기 시간(latency) 및 에너지 브레이크-이븐 시간과 비슷한 값을 가지는 경우이다. 이에 따라 에너지 브레이크-이븐 시간에 가까운 값을 갖는 타임 윈도우가 적절하게 되며, 타임 윈도우 값은 디스크 드라이브의 작용을 검사함으로써 혹은 시뮬레이션(simulation)을 통해서 더 최적화 될 수 있다. 성능 목표와 같은 다른 계수들도 타임 윈도우를 선택할 때에 고려되어야 한다. 상기 테이블 1의 디스크 드라이브의 일 예에서, 타임 윈도우는 아이들2에 대해선 400 ms, 그리고 스탠바이에 대해선 1.6s를 선택하는 것이 양호하다.In general, the time window for the power saving mode is selected to allow a range of access frequencies that the disk drive can appropriately respond to the power saving mode in order to obtain a good response. The frequencies of interest here are cases where the period has values similar to the latency and energy break-even times of the power saving mode. This allows for a time window with a value close to the energy break-even time, which can be further optimized by examining the behavior of the disk drive or through simulation. Other factors, such as performance goals, should also be taken into account when selecting the time window. In one example of the disk drive of Table 1 above, it is preferable to select a time window of 400 ms for idle 2 and 1.6 s for standby.

상기 설명에서 구해진 액세스 밀도 값은 특정의 타임 윈도우에서 발생되는 액세스들의 횟수이다. 그 후, 밀도 값은 비례 축소(scaling) 방법인 스케일에 의해 주파수 값으로 변환된다. 주파수에 있어서의 동적 범위는 0인 밀도가 0인 주파수와 동일하지 않도록 구현함으로써 확장된다. 밀도가 0일 때, 주파수는 연속된 0 밀도의 개수로부터 계산된다. 이러한 변환 공식 중 하나는 다음과 같다.The access density value obtained in the above description is the number of accesses occurring in a particular time window. The density value is then converted to a frequency value by a scale, which is a scaling method. The dynamic range in frequency is extended by implementing such that a density of zero is not equal to a frequency of zero. When the density is zero, the frequency is calculated from the number of consecutive zero densities. One such conversion formula is:

여기서 0 밀도 개수(Number_zero_density)는 밀도가 0인 연속된 타임 윈도우들의 개수를 의미한다. 스케일(scale)은 밀도를 주파수로 변환하기 위한 배율 계수(scale factor)를 의미한다. 상기의 공식 (2)와 (3)으로부터 액세스 주파수가 1/타임-윈도우보다 적은 값을 가질 때 양호한 근사값의 액세스 주파수를 얻을 수 있다. 처리를 쉽게 하기 위해, 배율 계수에 의해 정의된 정수값을 갖는 주파수 단위를 사용하는 것이 보통이다. 즉, 1의 값을 갖는 밀도는 스케일의 주파수에 대응한다. 배율 계수는 계산의 간편성을 위해 선택되며, 주파수의 바람직한 동적 범위를 제공한다. 통상, 스케일로서 256의 값을 사용하는데, 이렇게 하는 것은 16 비트의 처리에 적합하고, 또한 밀도가 0의 값이 아닐 때 스케일링(scaling)을 간단하게 하여 비트-시프트(bit-shift)동작 횟수를 줄여주기 때문이다.Here, the number of zero density (Number_zero_density) means the number of consecutive time windows having a density of zero. Scale refers to a scale factor for converting density into frequency. From the above formulas (2) and (3), a good approximation of the access frequency can be obtained when the access frequency has a value less than 1 / time-window. To facilitate processing, it is common to use frequency units with integer values defined by magnification factors. In other words, the density with a value of 1 corresponds to the frequency of the scale. Magnification factors are chosen for simplicity of calculation and provide a desirable dynamic range of frequencies. Typically, a value of 256 is used as the scale, which is suitable for 16-bit processing, and also makes scaling simple when the density is not zero, thereby reducing the number of bit-shift operations. Because it reduces.

아래의 테이블 3은 상기의 공식(2)와 (3) 및 400 s의 타임 윈도우 즉 아이들2 모드를 사용한 밀도-주파수 변환의 일 예이다. 첫 번째 줄은 각 타임 윈도우에 대한 시작 시간을 나타내고, 두 번째 줄은 각 윈도우에 대한 액세스 밀도 값의 예를 나타내고, 세 번째 줄은 두 번째 줄에 있는 액세스 밀도로부터 도출되는 액세스 주파수를 나타낸다. 예를 들어, 19번의 액세스들은 0.4s와 0.8s 사이의 타임 윈도우에서 발생되며, 배율 계수는 256의 값을 가지므로 주파수 4864에 대응된다. 또한, 1.2s와 2.0s 사이의 타임 윈도우에서는 아무런 액세스도 없으므로, 두 개의 0 밀도 값이 얻어진다. 이들 세 개의 밀도 값들은 256/3 = 85의 공식에 의해 단일 주파수로 변환된다.Table 3 below is an example of the density-frequency conversion using the above formulas (2) and (3) and a time window of 400 s, that is, the idle 2 mode. The first line shows the start time for each time window, the second line shows an example of the access density value for each window, and the third line shows the access frequency derived from the access density in the second line. For example, 19 accesses occur in a time window between 0.4 s and 0.8 s, and the magnification factor has a value of 256, corresponding to frequency 4864. Also, since there is no access in the time window between 1.2s and 2.0s, two zero density values are obtained. These three density values are converted to a single frequency by the formula 256/3 = 85.

디스크 드라이브의 액세스 주기 동안 조금이라도 지연을 줄이고자 한다면 에너지 관리에 대한 계산을 최소화하는 것이 바람직하다. 이러한 밀도로의 접근 방법은 디스크 드라이브에서 액세스가 발생될 때 많은 계산을 필요로 하지 않는다는 이점이 있다. 디스크 드라이브가 너무 자주 액세스될 때는 이러한 밀도 측정이나 밀도-주파수 변환은 생략되는 것이 오히려 바람직하다. 이렇게 함으로써 응답 시간은 빨라지고, 이러한 경우의 구간에 대한 액세스 밀도는 대량 액세스 경우에 적용되는 고정 값으로 설정될 수 있다. 이러한 경우의 구간에 대한 액세스 밀도 또는 주파수 값은 디스크 드라이브의 동작이 좀 한가해지면 갱신된다. 예를 들어, 256의 밀도는 256의 배율 계수를 가진 65,536의 주파수 값에 대응되므로 바쁜 구간이라 할 수 있다.If you want to reduce the delay even a little during the disk drive's access cycle, it is advisable to minimize energy management calculations. This approach to density has the advantage that it does not require much computation when access occurs in the disk drive. It is rather desirable to omit this density measurement or density-frequency conversion when the disk drive is accessed too frequently. By doing so, the response time is faster, and the access density for the interval in this case can be set to a fixed value applied in the case of a large access case. In this case, the access density or frequency value for the interval is updated when the disk drive becomes idle. For example, a density of 256 corresponds to a frequency value of 65,536 having a magnification factor of 256 and thus may be a busy period.

상기에 설명된 밀도-주파수 변환에서 얻어진 액세스 주파수의 값은 상기 밀도로부터는 액세스들의 정확한 타이밍이 구해지지 않기 때문에 추정값이다. 그러나, 만일 윈도우 타임이 적절히 선택된다면, 추정 값은 관심 있는 주파수 범위 안에서는 충분할 만큼의 정확성을 가지고 있다. 액세스 주파수를 측정하거나 추정하는 것은 상기의 방법 대신 퓨리에 변환(Fourier transform) 기술 등과 같은 다른 기술로도 가능하다.The value of the access frequency obtained in the density-frequency conversion described above is an estimate because the exact timing of the accesses is not obtained from the density. However, if the window time is properly selected, the estimate is accurate enough in the frequency range of interest. Measuring or estimating the access frequency is also possible with other techniques such as Fourier transform technique instead of the above method.

마이크로프로세서(9)는 현재의 액세스 주파수가 액세스 이력에서 결정되는 임계 주파수보다 적게 될 때, 절전 모드로 진입할 것을 결정한다. 제4도는 절전 모드로 진입하는 것을 상세히 나타낸 흐름도이다. 이 흐름도에서는, 각종 절전 모드들은 절전의 효과가 증가되는 순서대로 맥스모드(maxmode)에 1값부터 차례대로 그 값을 부여하는 것으로 가정한다. 용어 tf[모드]는 특정 절전 모드의 임계 주파수를 나타낸다. 용어 lf[모드]는 특정 모드에 대한 저위-주파수 (low-frequency) 플래그를 나타낸다. 이 플래그는 임계 주파수의 계산을 제어하는데에 도움을 준다. 단계 301에서, 모든 절전 모드들이 검사되었다는 의미를 내포하여 이전모드(lastmode)는 1로 설정된다. 그리고 모든 모드에 대해, 임계 주파수는 클리어 되고(tf[모드]=0), 저위-주파수 플래그도 클리어 된다(If[모드]=0).The microprocessor 9 determines to enter the power saving mode when the current access frequency becomes less than the threshold frequency determined in the access history. 4 is a flowchart showing details of entering a power saving mode. In this flowchart, it is assumed that various power saving modes are assigned to the maxmode in order from the value of 1 in order of increasing the effect of power saving. The term tf [mode] refers to the threshold frequency of a particular power saving mode. The term lf [mode] refers to a low-frequency flag for a particular mode. This flag helps to control the calculation of the threshold frequency. In step 301, the last mode is set to 1, implying that all power saving modes have been checked. And for all modes, the threshold frequency is cleared (tf [mode] = 0) and the low-frequency flag is also cleared (If [mode] = 0).

그 후 단계 302에서는, 프로세스는 최소 윈도우 타임이 경과할 때까지 대기하게 된다. 이 처리 과정은 이미 제2도에 도시되고 설명되었다. 다시 제4도로 되돌아와서, 하나 이상의 윈도우 타임 즉, 각 절전 모드에 고유의 타임 윈도우가 사용될 때, 더 긴 윈도우 타임은 최소 윈도우 타임의 정수 배라고 가정한다. 윈도우 타임이 한 번 경과되고, 액세스 밀도가 측정되었다면, 단계 303을 수행한다. 단계 303에서는, 검사될 절전 모드를 에너지 절약이 최대인 맥스모드로 설정한다. 단계 304에서는, 프로세스는 현재 시간이 검사될 모드에 대한 윈도우 타임인지를 검사하게 된다. 만일 아니라면 단계 308을 수행한다.In step 302, the process then waits for the minimum window time to elapse. This process has already been shown and described in FIG. Returning to FIG. 4 again, when one or more window times, i.e., a unique time window is used for each power saving mode, assume that the longer window time is an integer multiple of the minimum window time. If window time has elapsed once and the access density has been measured, step 303 is performed. In step 303, the power saving mode to be checked is set to the max mode in which energy saving is maximum. In step 304, the process checks whether the current time is window time for the mode to be checked. If no, perform step 308.

단계 308에서는, 현재 모드가 이전모드라면, 단계 302로 되돌아가 다음 타임 윈도우에 대해 밀도가 측정된다. 이 시점에서, 활성화된 절전 모드들 중 어느 것을 검사하는 시간인지를 결정해야 한다. 단계 308에서 현재 모드가 이전모드가 아니라면, 단계 309에서 절전효과가 감소되는 순서대로 다음의 낮은 모드(mode-l)를 선택한다. 이 후, 단계 304를 다시 수행한다. 단계 304의 검사에서 이전모드 = 1인 상태는 단계 302를 종료한 상태와 같기 때문에 항상 참(true)이 라는 점에 주의한다. 단계 304에서 검사가 참이라면, 새로운 밀도 값이 모드에 대해 사용가능해지고, 단계 305로 넘어간다. 단계 305에서는, 단계 302에서 측정된 액세스 밀도가 변환 공식(2)와 (3)을 사용하여 주파수 freq로 변환된다. 단계 306에서는, 단계 305에서 계산된 액세스 주파수 freq는 현재 모드를 위한 임계 주파수, tf[모드]와 비교된다. 여기서 액세스 주파수가 임계 주파수보다 크다면, 단계 307로 넘어간다. 단계 307에서는, 현재 모드를 위한 임계 주파수 tf[모드]가 얻어진다. 임계 주파수는 상태에 따라 변할 수도 있고 변하지 않을 수도 있다. 임계 주파수를 조정하는 상세 사항은 추후 제5도를 참조하여 후술한다. 그 다음 단계 308에서는, 위에서 설명된 바와 같이 다음의 모드에 대해 계속하여 프로세스를 진행한다.In step 308, if the current mode is the previous mode, the flow returns to step 302 where the density is measured for the next time window. At this point, you must determine which of the active power saving modes is time to check. If the current mode is not the previous mode in step 308, the next lower mode (mode-l) is selected in order of decreasing power saving effect in step 309. Thereafter, step 304 is performed again. Note that the state of previous mode = 1 in the check of step 304 is always true since it is the same as the state of ending step 302. If the check is true in step 304, a new density value is made available for the mode, and step 305 is reached. In step 305, the access density measured in step 302 is converted to the frequency freq using the conversion formulas (2) and (3). In step 306, the access frequency freq calculated in step 305 is compared with the threshold frequency, tf [mode], for the current mode. If the access frequency is greater than the threshold frequency, step 307 is reached. In step 307, the threshold frequency tf [mode] for the current mode is obtained. The threshold frequency may or may not change depending on the condition. Details of adjusting the threshold frequency will be described later with reference to FIG. Then in step 308, the process continues for the next mode as described above.

한편, 단계 306에서 액세스 주파수가 임계 주파수보다 적거나 같을 경우에는, 단계 310으로 넘어가고, 현재 절전 모드가 모드로 입력된다. 이는 마이크로프로세서(9)가 전력을 줄이려고 하는 디스크 드라이브의 적절한 요소로 신호를 보낸다는 것을 의미한다. 이 후, 단계 311에서 현재 모드가 맥스모드라면 더 이상 수행할 절전 모드가 없으므로 단계 313으로 넘어가게 되어 본 흐름도의 진행은 중단된다. 하지만 만일 검사해야 할 절전 모드가 아직 있다면, 단계 312로 넘어가 이전 모드를 [모드 + 1]로 갱신한다. 이는 입력된 모드보다 작거나 같은 모든 절전 모드는 더 이상 고려되지 않는다는 것을 반영하기 위한 것이다. 이 후 단계 302로 되돌아가 계속되는 다음 단계를 수행하게 된다.On the other hand, if the access frequency is less than or equal to the threshold frequency in step 306, the flow advances to step 310, and the current power saving mode is entered into the mode. This means that the microprocessor 9 sends a signal to the appropriate element of the disk drive that is trying to reduce power. Thereafter, if the current mode is the max mode in step 311, since there is no power saving mode to perform any more, the process proceeds to step 313 and the process of this flowchart is stopped. However, if there is still a power saving mode to be checked, go to step 312 to update the previous mode to [mode + 1]. This is to reflect that all power saving modes less than or equal to the entered mode are no longer considered. Thereafter, the process returns to step 302 to continue the next step.

단계 304에서 절전 모드를 검사하는 순서는 될 수 있는 한 많은 에너지를 절약하기 위해 우선 가장 많은 에너지를 절약하는 모드부터 시작하여, 그 다음으로 많은 에너지를 절약하는 모드의 순서로 차례대로 진행한다. 이렇게 함으로써, 단계 310에서 디스크 드라이브에 가장 유리한 절전 모드를 입력할 수 있게 된다. 예를 들면, 본 발명을 적용함으로써, 아이들 모드에 있는 디스크 드라이브는 아이들2모드로 먼저 진입하지 않고 스탠바이 모드로 진입할 수 있다. 만일 최대 모드 이외의 특정 절전 모드가 입력된다면, 디스크 드라이브는 더 나은 모드로 진입하기에 적합할 때까지 혹은 그 특정 모드를 종료할 때까지 그 특정모드에서 동작하게 된다.In step 304, the order of checking the power saving modes starts in order from the most energy saving mode first, and then from the energy saving mode in order to save as much energy as possible. By doing so, it is possible to enter the most advantageous power saving mode for the disk drive in step 310. For example, by applying the present invention, a disk drive in idle mode can enter standby mode without first entering idle 2 mode. If a specific power saving mode other than the maximum mode is entered, the disk drive will operate in that specific mode until it is suitable for entering a better mode or until it exits that particular mode.

제5도는 절전 모드에 대한 임계 주파수를 계산하고 조정하는 바람직한 실시예의 상세사항을 나타내고 있는 흐름도이다. 가장 최근의 액세스 주파수는 마이크로프로세서(9)에 의해 어드레싱 된 링 버퍼(미도시)에 저장된다. 상기 버퍼는 각 절전 모드마다 서로 다를 수 있다. 링 버퍼는 각 주파수 측정값이 쌓여지는 한 세트의 레지스터들, 또는 메모리 위치들이다. 링 버퍼는 한 세트에 대해 여러 개의 레지스터들 혹은 메모리 위치들에 대응하는 여러 개의 주파수를 보유하고 있다. 몇 개의 주파수가 로드가 되는 경우, 추가적인 주파수 값을 더하는 것(adding)은 가장 오래된(oldest) 값을 잃어버리게 하며, 이는 최근의 액세스 이력에 대해 슬라이딩 범위(sliding view)를 주는 효과를 제공한다.5 is a flowchart showing the details of the preferred embodiment of calculating and adjusting the threshold frequency for the power saving mode. The most recent access frequency is stored in a ring buffer (not shown) addressed by the microprocessor 9. The buffer may be different for each power saving mode. The ring buffer is a set of registers or memory locations where each frequency measurement is stacked. The ring buffer holds several frequencies corresponding to multiple registers or memory locations for a set. When several frequencies are loaded, adding an additional frequency value causes the oldest value to be lost, which provides the sliding view of the recent access history.

단계 501에서는, 현 절전 모드에 대한 임계 주파수를 계산하기 위해 링 버퍼에 충분한 값들이 있는 지를 판단하는 검사가 진행된다. 주파수 값들의 최소 개수는 통상적으로 2이다. 개수가 많을 수록 통계적으로 정확성이 높아지지만, 반면 그 값들은 임계 주파수를 계산하기 이전에 선택되어야만 한다. 링 버퍼에 있는 값들의 개수가 충분치 않다면, 단계 503으로 넘어간다. 단계 503에서는, 현재 주파수 freq가 스케일/2 보다 큰지를 검사한다. 여기서 스케일은 전술된 공식(2)와 (3)에 규정되어 있다. 만일 이 검사 결과가 '참'이라면, 단계 504로 넘어가서 현재 주파수 값이 링 버퍼로 입력된다. 만일 '거짓'이라면, 0 밀도를 갖는 연속된 타임 윈도우의 수가 계속 증가하고 있으므로 링 버퍼에 있는 이전 주파수 값이 변경되어야 한다. 이는 단계 509에서 수행된다. 주의할 것은 이는 링 버퍼에 대한 입력 작업이 아니므로, 링 버퍼 내에 있는 값들의 개수는 변하지 않는다는 것이다. 단계 510은 단계 504 및 509로부터 진입되며 단계 501로 프로세스를 되돌려 준다.In step 501, a check is made to determine if there are enough values in the ring buffer to calculate the threshold frequency for the current power saving mode. The minimum number of frequency values is typically two. The larger the number, the higher the statistical accuracy, while the values must be selected before calculating the threshold frequency. If the number of values in the ring buffer is not sufficient, step 503 is reached. In step 503, it is checked whether the current frequency freq is greater than scale / 2. The scale here is defined in formulas (2) and (3) above. If the result of this check is 'true', control proceeds to step 504 where the current frequency value is entered into the ring buffer. If it is 'false', the number of consecutive time windows with zero density continues to increase, so the previous frequency value in the ring buffer must be changed. This is done in step 509. Note that this is not an input operation to the ring buffer, so the number of values in the ring buffer does not change. Step 510 enters from steps 504 and 509 and returns the process to step 501.

단계 501에서, 링 버퍼에 있는 값들의 개수가 충분하다고 하면, 단계 502로 넘어간다. 단계 502에서, 현재 액세스 주파수 freq는 활성 주파수 임계값 freq_act에 비교된다. 이 값은 프로세스의 진행 속도를 증가시키며 안정 임계(safety threshold)를 제공한다. 스케일/2는 freq_act에 대해 첫 번째로 선택할 수 있는 값이다. 단계 502에서의 검사가 '참'이면, 디스크 드라이브 액세스 주파수는 활성 임계보다 크고, 그래서 임계 주파수에 대한 더 이상의 계산은 필요치 않다. 이 후 단계 505로 넘어가, If[모드]를 클리어 한 후, 단계 503으로 넘어가게 되는데 이후는 상술한 바대로 프로세스가 진행된다.In step 501, if the number of values in the ring buffer is sufficient, step 502 is reached. In step 502, the current access frequency freq is compared to the active frequency threshold freq_act. This value speeds up the process and provides a safety threshold. Scale / 2 is the first selectable value for freq_act. If the check at step 502 is true, the disk drive access frequency is greater than the active threshold, so no further calculation of the threshold frequency is necessary. Thereafter, the process proceeds to step 505, after clearing If [mode], the process proceeds to step 503, after which the process proceeds as described above.

한편, 단계 502에서의 검사가 '거짓'이라면, 액세스 주파수는 활성 임계보다 작음으로 프로세스가 더 진행될 필요가 있다. 단계 506에서, 저위-주파수 플래그 If[모드]가 검사된다. 만일 플래그가 세트되었으면, 단계 503으로 다시 넘어가고 현재의 저위-주파수 임계값은 그대로 유지된다. 저위-주파수 플래그가 세트되었을 때 액세스 패턴의 종료가 검사된다고 가정을 해보자. 그 결과, 현재 주파수는 이 패턴의 일부가 아닌 것으로 가정되고 임계 주파수를 변경시키기 위해 사용될 수 없다. 그러나 저위-주파수 플래그가 상기 활성 임계 freq_act 가 증가함에 따라 크리어 되었기 때문에 이 주파수는 여전히 링 버퍼 안에 놓여져 있다. 이러한 경우에 있어서, 액세스 패턴이 중지되었다는 가정은 틀린 것이다. 그래서, 검사 동안 생기는 주파수들은 이제 액세스 패턴의 일부로 간주된다.On the other hand, if the check in step 502 is 'false', then the process needs to proceed further as the access frequency is less than the active threshold. In step 506, the low-frequency flag If [mode] is checked. If the flag has been set, go back to step 503 and the current low-frequency threshold is maintained. Suppose the end of an access pattern is checked when the low-frequency flag is set. As a result, the current frequency is assumed to be not part of this pattern and cannot be used to change the threshold frequency. However, this frequency is still placed in the ring buffer because the low-frequency flag has cleared as the activity threshold freq_act increases. In this case, the assumption that the access pattern has been suspended is wrong. Thus, the frequencies occurring during the test are now considered part of the access pattern.

한편, 만일 단계 506에서 저위-주파수 플래그가 크리어 되었다면, 새로운 주파수를 계산해야 하므로 단계 507로 넘어간다. 이 계산은 단계 507에서 수행되며, 그 후 단계 508에서 저위-주파수 모드 플래그가 세트되면서 다시 단계 503으로 넘겨진다.On the other hand, if the low-frequency flag is cleared at step 506, then a new frequency needs to be calculated, and the flow goes to step 507. This calculation is performed in step 507, and then passed back to step 503 with the low-frequency mode flag set in step 508.

제5도에 보여진 프로세스는 각 절전 모드에 대한 임계 주파수를 계산하기 위해 가장 최근의 액세스 이력을 사용한다. 상기 계산은 액세스 주파수가 활성 임계보다 작을 때만 수행된다. 이는 디스크 드라이브가 비활성일 때만 액세스 주파수의 계산을 수행하므로 성능에 영향을 적게 미친다는 장점이 있다.The process shown in FIG. 5 uses the most recent access history to calculate the threshold frequency for each power saving mode. The calculation is performed only when the access frequency is less than the active threshold. This has the advantage that performance is less affected because the access frequency is calculated only when the disk drive is inactive.

단계 507에서는, 임계 주파수는 이전 절전 모드에 대해 관련된 링 버퍼에 있는 액세스 패턴에 근거를 두고서 계산된다. 즉, 링 버퍼에서의 값들에 대한 평균 값과 표준 편차가 계산된다. 이들 계산에는 복소수 계산이 포함된다. 대신, 균일 액세스 패턴에 있어서 평균값 주파수 meanf는 다음 식에 의해 링 버퍼에서의 최대 및 최소 주파수, maxf 및 minf로부터 계산된다.In step 507, the threshold frequency is calculated based on the access pattern in the ring buffer associated with the previous power save mode. That is, the mean and standard deviation for the values in the ring buffer are calculated. These calculations include complex number calculations. Instead, the average frequency meanf for the uniform access pattern is calculated from the maximum and minimum frequencies, maxf and minf in the ring buffer by the following equation.

이는 그 분포가 잘 특정지어졌다고 가정되었으므로 균일 액세스 패턴에 대해 양호한 추정값을 준다. 표준 편차 sdevf는 주파수의 범위로부터 다음과 같이 계산된다.This assumes that the distribution is well specified and gives a good estimate for the uniform access pattern. The standard deviation sdevf is calculated from the range of frequencies as

그러나, 평균값 및 표준 편차를 정확하게 계산해야 할 필요가 없기 때문에, 이들은 간이화된 공식(4) 및 (5)를 사용하여 계산되는 것이 보다 더 바람직하다.However, since it is not necessary to accurately calculate the mean value and standard deviation, they are more preferably calculated using simplified formulas (4) and (5).

산발적인 액세스 패턴에서는, 최소 주파수의 몇 분의 1만으로도 충분하다.In sporadic access patterns, only a few fractions of the minimum frequency is sufficient.

아래에 보인 공식(6)(8)이 단계 507에서 사용되는 계산식이다.Formula (6) shown below (8) This is a formula used in step 507.

상기 t1[모드]는 균일 액세스 패턴에 대응한 값이고, 반면 상기 t2[모드]는 산발적 액세스 패턴에 대응한 값이다. 이들 두 값 중 더 큰 것을 모드에 대한 임계 주파수로서 사용한다.The t1 [mode] is a value corresponding to the uniform access pattern, while the t2 [mode] is a value corresponding to the sporadic access pattern. The larger of these two values is used as the threshold frequency for the mode.

이득 계수로는 g1[모드] 및 g2[모드]의 두 가지가 있으며, 이는 제각각 균일 액세스 패턴 및 산발적인 액세스 패턴에 대한 것이다. 이들 이득 계수들은 각 모드에 따라 서로 다른 값을 가진다. 테이블 1의 디스크 드라이브에 있어서, g1=1와 g2=4의 값은 아이들2 및 스탠바이 모드 둘 모두에 적합하다. 공식(6)(8)로 부터 알 수 있는 바와 같이, 이득 계수의 값을 증가시키는 것은 임계 주파수를 감소하는 효과가 있고, 이득 계수의 값을 감소시키는 것은 임계 주파수를 증가시키는 효과가 있다. 그러므로, 절전 모드의 진입 작용은 이들 이득 계수들을 선택하고 조정하는 것으로 적합하게 조화를 이루게 된다. 이들 이득 계수들은 적절한 시스템 혹은 응용 소프트웨어를 통해 사용자가 선택하고 조정할 수 있다.There are two gain factors, g1 [mode] and g2 [mode], which are for uniform access patterns and sporadic access patterns, respectively. These gain coefficients have different values for each mode. For the disk drive of Table 1, the values of g1 = 1 and g2 = 4 are suitable for both idle 2 and standby modes. Formula (6) As can be seen from (8), increasing the value of the gain coefficient has the effect of decreasing the threshold frequency, and decreasing the value of the gain coefficient has the effect of increasing the threshold frequency. Therefore, the entry action of the power saving mode is suitably harmonized with selecting and adjusting these gain factors. These gain factors can be selected and adjusted by the user through the appropriate system or application software.

각 절전 모드에 대해 별도의 링 버퍼가 사용되므로, 버퍼의 크기는 독립적으로 선택되어야 한다. 버퍼의 크기를 증가시키면 기록되어야 할 액세스 이력에 필요한 시간이 증가되고, 반면에 크기를 감소시키면 상기 시간은 감소된다. 버퍼 크기를 선택할 때는 최근의 사건에 대한 향상된 응답을 실현하고, 또한 필요한 메모리 양을 줄이기 위해서는 이력의 길이 또한 충분히 고려되어야 한다. 테이블 1의 디스크 드라이브에 있어서, 두 가지 절전 모드에 대해서 버퍼 크기는 적절하게 16으로 선택되었다. 액세스 이력을 유지하는 보다 정교한 방법은 가능한 일이다. 예를 들면, 링 버퍼에서 주파수들은 버퍼에 타임의 길이에 관련된 가중 계수(weighting factors)를 갖고 있다. 액세스 주파수의 막대 그래프는 재정규화(renormalizning)와 같이 이전 데이터를 삭제하기 위한 메커니즘으로 링 버퍼를 대신하여 사용될 수 있다. 그러나, 링 버퍼는 설계의 간편성이라는 장점을 갖고 있다.Since a separate ring buffer is used for each power saving mode, the size of the buffer must be selected independently. Increasing the size of the buffer increases the time required for the access history to be written, while decreasing the size decreases the time. When choosing a buffer size, the length of the history must also be taken into consideration in order to realize an improved response to recent events and to reduce the amount of memory required. For the disk drive in Table 1, the buffer size was properly chosen to be 16 for the two power saving modes. More sophisticated ways of maintaining access histories are possible. For example, frequencies in a ring buffer have weighting factors related to the length of time in the buffer. A histogram of access frequencies can be used in place of the ring buffer as a mechanism for deleting old data, such as renormalization. However, ring buffers have the advantage of simplicity of design.

링 버퍼는 제3도에 보여진 바와 같이, 주파수 대신에 밀도를 사용하여 구성할 수 있다. 이 경우에 있어서, 밀도는 임계 주파수 계산법을 사용하여 주파수로 변환된다. 제6도에 밀도 버퍼를 사용하여 임계 주파수를 계산하는 프로세스가 도시된다. 이 흐름도는 약간의 예외가 있긴 하지만 제5도의 흐름도와 매우 밀접하게 대응된다. 즉 단계 601은 단계 501에 대응된다. 그리고, 공식(2)와 (3)을 사용하여 밀도 density를 주파수 freq로 변환하는 단계 603이 추가되었다. 단계 604, 605 및 606은 제각각 단계 502, 505 및 506에 대응한다. 다음, 공식(2)와 (3)을 사용하여 링 버퍼에서의 각 밀도 값을 주파수 값으로 변환하는 단계 607이 추가되었다. 이러한 변환 단계는 연속되는 0 밀도가 단일 주파수 값으로 변환되기 때문에 링 버퍼에서 밀도 값의 개수보다 주파수 값의 개수가 적게 되는 결과를 초래한다는 것에 주의한다. 단계 608 및 609는 각각 단계 507 및 508에 대응된다. 마지막으로, 단계 602는 선택된 절전 모드에 대해 현재 밀도 값을 링 버퍼로 입력한다.The ring buffer can be constructed using density instead of frequency, as shown in FIG. In this case, the density is converted to frequency using a critical frequency calculation. The process of calculating the threshold frequency using the density buffer in FIG. 6 is shown. This flowchart corresponds very closely to the flowchart in FIG. 5 with some exceptions. That is, step 601 corresponds to step 501. Then, step 603 is added to convert the density density to the frequency freq using formulas (2) and (3). Steps 604, 605, and 606 correspond to steps 502, 505, and 506, respectively. Next, step 607 was added to convert each density value in the ring buffer to a frequency value using formulas (2) and (3). Note that this conversion step results in fewer frequency values in the ring buffer than the number of density values since successive zero densities are converted to single frequency values. Steps 608 and 609 correspond to steps 507 and 508, respectively. Finally, step 602 enters the current density value into the ring buffer for the selected power saving mode.

상기에 설명된 링 버퍼에 대한 두 가지 구성은 모두 임계 주파수를 계산하는데 적합하다. 주파수 버퍼는 낮은 주파수들이 있을 경우 시간이 경과함에 따라 이력 길이가 증가되는 장점이 있다. 반면, 밀도 버퍼는 고정된 이력 길이를 갖는 장점이 있다. 또한 밀도 버퍼는 활성 주파수 임계에 도달할 때까지 밀도-주파수 변환이 지연되기 때문에 활성 디스크 액세스(activity disk access)의 간격 사이에 있는 동안 계산상의 오버헤드를 줄여준다.Both configurations for the ring buffer described above are suitable for calculating the threshold frequency. The frequency buffer has the advantage that the hysteresis length increases with time when there are low frequencies. Density buffers, on the other hand, have the advantage of having a fixed hysteresis length. The density buffer also reduces computational overhead during the interval between activity disk accesses because the density-frequency conversion is delayed until the active frequency threshold is reached.

상기에 설명된 바와 같이, 디스크 드라이브가 절전 모드에 한 번 진입하게 되면, 또 다른 절전 모드로 진입을 하거나 또는 디스크 드라이브가 활성 상태로 복귀되는 둘 중의 하나로 종료된다. 전자는 추정 액세스 주파수가 계속하여 줄어들어 다른 모드의 임계 주파수에 도달하는 경우 일어난다. 후자는 디스크 드라이브 액세스가 일어나거나 활성 상태의 드라이브-초기화(drive-initiated entering)를 초래하는 주기적 액세스 패턴이 검출될 경우 일어난다. 디스크 드라이브가 활성 상태로 복귀할 때, 새로운 액세스 패턴이 측정된다고 가정되므로 링 버퍼들은 크리어 하는 것이 바람직하다. 이는 링 버퍼에 있는 이전 패턴(old pattern)의 영향력을 더 줄여준다. 다른 구성에 있어서, 이전 패턴으로부터 데이터에 대한 가중 계수를 변경하는 것이 가능하다면, 링 버퍼 데이터를 계속 유지하는 것이 바람직할 수도 있다.As described above, once a disk drive enters a power saving mode, it enters another power saving mode or terminates in either of which the disk drive returns to an active state. The former occurs when the estimated access frequency continues to decrease to reach a threshold frequency in another mode. The latter occurs when a disk drive access occurs or a periodic access pattern is detected that results in an active drive-initiated entering. When the disk drive returns to the active state, it is desirable to clear the ring buffers because it is assumed that a new access pattern is measured. This further reduces the influence of the old pattern in the ring buffer. In another configuration, it may be desirable to keep ring buffer data if it is possible to change the weighting coefficient for the data from the previous pattern.

또 다른 계수들이 이득 계수를 조정하기 위해 사용될 수 있는데 이는 결국 임계 주파수의 결정에 영향을 미치게 된다. 예를 들면, 헤드가 즉각적으로 데이터를 판독/기록할 수 없는 디스크의 속도가 줄어든 스탠바이 상태에서 절전 모드에 진입하고자 하는 것은 현재 캐쉬 히트율(current cache hit rate)에 의해 가중될 수 있다. 높은 캐쉬 히트율은 예를 들어 이득 계수를 줄임으로써 임계 주파수가 높은 값을 갖도록 조정하기 위해 사용된다. 비록 임계 주파수에 도달한 후 액세스가 짧은 기간 동안 일어난다고 하더라도, 이러한 액세스는 캐쉬를 히트하게 된다. 이 결과, 여분 에너지를 사용할 가능성은 여전히 줄어든다. 비슷하게, 낮은 캐쉬 히트율은 디스크로부터 판독 또는 기록을 요구하는 연속한 액세스의 확률이 높아지기 때문에 이에 맞추어 임계 주파수가 더 낮게 된다. 이러한 경우에서, 제1도의 버퍼(10)와 같은 캐쉬에 필요한 전력을 제어하기 위한 추가의 절전 모드는 바람직한 일이다. 이렇게 함으로써, 캐쉬 버퍼는 스탠바이 모드에서도 활성 상태를 유지하게 된다. 이 모드에 대한 이득 계수들은 물론 캐쉬 히트율에 의해 영향을 받는다. 캐쉬 히트율이 높은 경우에 있어서, 성능을 위해서는 캐쉬 히트를 더 많이 허용하면서 임계 주파수를 감소시키는 것이 바람직할 것이다. 판독 및 기록 작업을 별개로 취급하거나, 액세스가 발생하는 지역성을 사용하여 캐쉬 액세스들을 특징짓는 것 또한 가능한 일이다. 이들 모두는 이득 계수와 결국은 임계 주파수를 조정하기 위해서 사용된다.Still other coefficients can be used to adjust the gain factor, which in turn affects the determination of the threshold frequency. For example, attempting to enter a power saving mode in a standby state where the speed of the disk where the head cannot immediately read / write data is reduced can be aggravated by the current cache hit rate. High cache hit rates are used to adjust the threshold frequency to a higher value, for example by reducing the gain factor. Although the access occurs for a short period of time after reaching the threshold frequency, this access hits the cache. As a result, the possibility of using extra energy is still reduced. Similarly, a lower cache hit rate would result in a higher probability of successive accesses requiring reads or writes from the disk, thus lowering the threshold frequency accordingly. In such a case, an additional power saving mode for controlling the power required for the cache, such as buffer 10 in FIG. 1, is desirable. By doing so, the cache buffer remains active even in standby mode. The gain coefficients for this mode are of course affected by the cache hit rate. In cases where the cache hit rate is high, it would be desirable for performance to decrease the threshold frequency while allowing more cache hits. It is also possible to treat read and write operations separately or to characterize cache accesses using the locality in which access occurs. All of these are used to adjust the gain factor and eventually the threshold frequency.

이상에서 살펴본 바와 같이, 상기 설명된 설계에서 조정 가능한 파라미터들이 여러 개 있는데, 이들은 이득 계수 g1 및 g2와, 타임 윈도우 크기와, 링 버퍼 크기와, 밀도-주파수 변환 스케일 계수 scale 및 활성 임계 주파수를 포함한다. 그러나, 바람직한 실시예에 있어서, 절전 모드의 진입 작용을 조절하기 위해 가장 적절한 파라미터는 공식 (6) 및 (7)에서의 이득 계수이다. 상기 조정 가능한 파라미터들은 디스크 드라이브의 제조시에 고정값을 갖지만, 이들은 특정 작업을 통해 사용자가 조정가능하거나, 성능 패널티(performance penalties)를 감수하면서 동적인 전력 관리를 함으로써 조정가능하다.As discussed above, there are several adjustable parameters in the above-described design, which include gain coefficients g1 and g2, time window size, ring buffer size, density-frequency conversion scale factor scale, and active threshold frequency. do. However, in the preferred embodiment, the most suitable parameter for adjusting the entry action of the power saving mode is the gain factor in formulas (6) and (7). The adjustable parameters have fixed values at the time of manufacture of the disk drive, but they can be adjusted by the user through specific tasks or by dynamic power management while taking performance penalties.

상기 설명한 바와 같이, 제1도의 인터페이스 컨트롤러(13)를 통해서 컴퓨터(41)는 직접 이득 계수들을 설정하는 명령을 발할 수 있다. 그러나 에너지 관리를 위한 내부 상세 프로세스에 컴퓨터(41)가 직접적으로 관여하지 않는 편이 오히려 유리한 점이 있다. 그래서 별개의 성능 계수 pf를 사용한다. 이는 컴퓨터(41)로부터 명령을 받아 조정되며 디스크 드라이브에 적용된 특정 에너지 관리 설계로 인한 영향은 받지 않는다.As described above, the computer 41 may issue a command to set the gain coefficients directly through the interface controller 13 of FIG. However, it is rather advantageous that the computer 41 is not directly involved in the internal detailed process for energy management. So we use a separate coefficient of performance pf. It is controlled by commands from the computer 41 and is not affected by the specific energy management design applied to the disk drive.

일반적으로 디스크 드라이브에서 절전 모드를 가진 에너지 관리는 액세스 성능과 에너지 절약 간에 적절한 타협(tradeoff)이 요구된다. 이는 상기 설명된 절전 모드의 복귀 대기시간(recovery latencies)의 직접적인 영향에 기인한다. 그래서 에너지와 성능간의 타협의 중요성을 표현하는 단일 가중 성능 계수가 매우 요구된다. 한 쪽 극단의 단일 가중 성능 계수는 성능을 고려하지 않은 채 에너지 절약을 최대로 하게 만들고, 다른 쪽 극단에서의 계수는 에너지 절약을 고려하지 않은 채 성능을 최대로 한다. 이 방법은 에너지 관리 명령에 의해 절전 모드에 진입하는 고정 시간을 조정하는 종래의 디스크 드라이브 전력 관리 기술과는 완전히 다른 것이다. 이들 명령들은 성능 혹은 에너지 절약에 직접적으로 관계하지 않으며, 더욱이 고정 시간 설정값이 같은 다른 드라이브들일지라도 서로 다른 에너지 절약 및 성능 효과가 생기게 한다. 그러나, 에너지 대 성능 계수(energy vs. performance factor)의 스케일은 모든 드라이브들이 서로 비슷하게 동작되도록 고정값을 갖게 한다.In general, energy management in sleep mode on disk drives requires a good tradeoff between access performance and energy savings. This is due to the direct effect of the recovery latencies of the power save mode described above. Thus, a single weighted coefficient of performance is required which expresses the importance of compromise between energy and performance. A single weighted coefficient of performance at one extreme maximizes energy savings without considering performance, while a coefficient at the other extreme maximizes performance without considering energy savings. This method is completely different from the conventional disk drive power management technique, which adjusts the fixed time to enter the power saving mode by the energy management command. These commands are not directly related to performance or energy savings, and furthermore, different drives with the same fixed time setpoint will produce different energy savings and performance effects. However, the scale of energy vs. performance factor has a fixed value so that all drives operate similarly.

바람직한 실시예에서, 성능 계수 명령이 아래 테이블 4와 같이 규정된다.In a preferred embodiment, the coefficient of performance command is defined as in Table 4 below.

여기서, 0 값은 최대 에너지 절약에 해당되고, 255 값은 최대 성능 즉 에너지 관리가 필요하지 않다는 것을 나타낸다. 또한, 이 사용자-선택 성능 계수 명령은 SCSI 혹은 IDE와 같은 일반적인 디스크 드라이브 인터페이스에서 사용 가능한 표준의 고정 시간 명령을 사용하여 에뮬레이션(emulation)될 수도 있다. IDE의 경우에서, 스텐바이 모드 시간 값 value은 절전 모드가 없는 0에서 부터 255까지의 범위를 갖는데 실제로는 타임=5s*value 이므로 5초에서 약 20분 사이의 범위를 갖게 된다. 이 경우 명령을 성능 계수로 변환함에 있어서, 0은 최대 성능을 나타내므로 테이블 4로부터의 선형 스케일은 0254 대신 1255 값의 범위를 갖게 된다.Here, a value of 0 corresponds to maximum energy saving, and a value of 255 indicates that maximum performance, that is, energy management is not required. This user-selected performance factor command may also be emulated using standard fixed time commands available in common disk drive interfaces such as SCSI or IDE. In the case of the IDE, the standby mode time value value ranges from 0 to 255 with no power saving mode, and actually ranges from 5 seconds to about 20 minutes because time = 5s * value. In this case, in converting the command to a coefficient of performance, 0 represents the maximum performance, so the linear scale from Table 4 is 0. 1 instead of 254 It will have a range of 255 values.

바람직한 실시예에 있어서, 성능 계수 명령으로부터의 입력은 이득 계수 g1 및 g2를 조정함으로써 에너지 관리 시스템의 작용으로 바꿔지게 된다. 이 결과 이득 계수의 값은 에너지 및 성능의 극단을 표현하는 두 개의 한도값(limits) 사이의 범위 안에서 변화한다. 예를 들면, 공식(6)의 균일 액세스의 경우에 있어서, g1은 표준 편차 sdev를 추정할 때의 승수(multiplier)에 대응된다. 이는 g1에 대해 실용적인 범위로 0.5g15 가 제시된다. 유사하게, g2는 최소 주파수 minf의 몇 분의 일이기 때문에, 마찬가지로 실용적인 범위로서 1g210 이 제시된다. 통계적으로, g1의 하한값은 임계 주파수가 실제로 분포의 일부분인 정규적으로 분포된 데이터에 대해 약 20% 확률에 상당한다. 하한값이 너무 작으면 부적절하게도 절전 모드에 진입하는 확률이 높아져, 결과적으로 에너지 사용이 증대된다. g1의 상한값은 충분한 것보다는 조금 큰 약 10-6확률에 상당한다. 비록 통계적으로 잘 규정되지 않았다고 하더라도, g2에 대해서도 상기 한도값의 변화와 유사한 양상을 보인다. 한도값의 선택을 보다 효과적으로 하려면, 성능 및 에너지 작용에 대한 경험적인 데이터를 고려하는 것이 바람직하다. 더욱이, 실제상 많은 설정치들이 서로 확실하게 구분되는 값들을 갖기 때문에 테이블 4와 같은 정밀한 해상도를 얻지 않아도 된다.In a preferred embodiment, the input from the coefficient of performance command is changed to the operation of the energy management system by adjusting the gain factors g1 and g2. The resulting value of the gain factor varies within a range between two limits that represent the extremes of energy and performance. For example, in the case of uniform access of formula (6), g1 corresponds to a multiplier in estimating the standard deviation sdev. This is a practical range for g1 g1 5 is presented. Similarly, g2 is only a few minutes of the minimum frequency minf, so as a practical range 1 g2 10 is presented. Statistically, the lower limit of g1 corresponds to about 20% probability for normally distributed data where the threshold frequency is actually part of the distribution. If the lower limit is too small, there is an inadequate chance of entering a power saving mode, resulting in increased energy use. The upper limit of g1 corresponds to a probability of about 10 −6 which is slightly larger than sufficient. Although not statistically well defined, g2 exhibits a similar pattern to the above change of the limit value. To make the selection of the limit value more effective, it is desirable to consider empirical data on performance and energy action. Moreover, in practice many of the setpoints have values that are clearly distinct from one another, so that the precise resolution shown in Table 4 is not required.

아래의 공식 (9) 및 (10)은 테이블 1의 전력 값을 가진 디스크 드라이브에 있어서, 테이블 4의 명령에 대한 성능 계수 pf의 변환식을 보여준다.Equations (9) and (10) below show a conversion formula of the coefficient of performance pf for the commands of Table 4 for the disk drive having the power values of Table 1.

여기에 사용된 극한치는 개략적으로 0.75g14.75 및 1.5g29.5 이다. 공식(9) 및 (10)은 구현상의 편이를 위해 정수값을 갖도록 설계된다. 공식(6) 및 (7)을 계산하기 위한 마지막 단계로서 스케일 계수를 16으로 하여 실행하는 것이 바람직하다.The limit used here is approximately 0.75 g1 4.75 and 1.5 g2 9.5. Formulas (9) and (10) are designed to have integer values for ease of implementation. As a final step for calculating the formulas (6) and (7), it is preferable to carry out with a scale factor of 16.

타임 윈도우 크기와 같은 다른 파라미터는 성능 계수를 사용하여서도 조정될 수 있다. 일반적으로, 값이 클수록 전력 소비 비용에서 향상된 성능을 준다. 더욱이, 가능한 절전 모드들이 서브세트(subset)도 선택된다. 예를 들면, 다른 것에서 보다 성능면에 영향을 미치는 절전 모드들이 몇 가지가 있는데 성능이 중요하다고 생각되는 경우에는 이들을 사용하지 않는 것이 바람직하다. 상술된 성능 계수 pf는 디스크 드라이브 설계자에게 성능 목표를 달성하기 위해 조정해야 할 파라미터를 결정하게 하는 이점이 있다. 이 때 최종 사용자나 시스템 조립자는 특정 구현의 상세사항은 알 필요가 없다.Other parameters, such as the time window size, can also be adjusted using the performance factor. In general, larger values give improved performance in power consumption costs. Moreover, a subset of possible power saving modes is also selected. For example, if there are several power saving modes that affect performance more than others, and you think performance is important, you should not use them. The above mentioned coefficient of performance pf has the advantage of allowing the disk drive designer to determine the parameters that need to be adjusted to achieve the performance goal. The end user or system assembler does not need to know the details of a particular implementation.

일반적으로 절전 모드들로의 진입은 디스크 드라이브 액세스에 근거를 둔다. 만족할 만한 전력 관리의 작용은 공식(6) 및 (7)을 사용하여 얻어질 수 있는데, 이 때 파라미터들은 새로운 값들이 선택될 때까지는 고정값을 가진다. 이득 계수들과 같은 한 세트의 파라미터들을 선택하는 것은 실제의 액세스 패턴에 따라 그 선택의 적합성이 판단된다. 만일 액세스 패턴에서 절전 모드 진입의 작용에 영향을 주는 변경이 있다면 반드시 새로운 파라미터들이 선택되어야 한다. 그러나 상기 파라미터들은 액세스 패턴의 변경에 따라 동적으로 조정된다. 이는 성능 목표에 어떻게 접근하는지를 판단하여, 이득 계수들을 적절하게 동적으로 조정하는 적응형 시스템을 사용함으로써 달성된다.In general, entering power saving modes is based on disk drive access. Satisfactory power management behavior can be obtained using equations (6) and (7), where the parameters have a fixed value until new values are selected. Selecting a set of parameters, such as gain coefficients, determines the suitability of the selection according to the actual access pattern. If there is a change in the access pattern affecting the behavior of the power saving mode entry, then new parameters must be selected. However, the parameters are dynamically adjusted as the access pattern changes. This is accomplished by using an adaptive system that determines how to approach performance targets and dynamically adjusts the gain factors accordingly.

동적인 적응성을 달성하기 위해서는 요구되는 작용과 비교하여 실제의 작용을 판단하는 능력이 필요하다. 성능 목표로부터의 편향 크기 및 방향이 측정될 때 최선의 성능이 얻어진다. 이들 측정은 패널티(penalty)로서 다루어지고, 그 후 이득 계수들을 조정하기 위해 사용된다. 전력 관리를 위해, 두 가지 페널티 즉 에너지/응답 페널티(Energy/Response Penalties; 이하 ERP로 칭함) 및 기회 상실 페널티(Missed Opportunity Penalties; 이하 MOP로 칭함)를 규정해 놓는 것이 편리하다. 전자는 디스크 드라이브가 과잉 에너지를 사용하거나 성능에 영향을 미칠 때 발생되며, 임계 주파수 tf가 너무 높게 선택되었다는 것을 내포하고 있다. 후자는 디스크 드라이브가 적절하다고 판단될 때 절전 모드에 진입할 시점에 발생되며, 임계 주파수 tf가 너무 낮게 선택되었다는 것을 내포하고 있다. 페널티의 두 가지 형태가 임계 주파수를 결정하는데 있어 서로 반대의 효과를 가지고 있으므로, 이들은 시스템 작용에 있어서 균형을 잡기 위해 사용된다.Achieving dynamic adaptability requires the ability to judge the actual action compared to the action required. The best performance is obtained when the magnitude and direction of deflection from the performance target is measured. These measurements are treated as penalties and then used to adjust the gain factors. For power management, it is convenient to define two penalties: Energy / Response Penalties (hereinafter referred to as ERP) and Missed Opportunity Penalties (hereinafter referred to as MOP). The former occurs when the disk drive uses excess energy or affects performance, implying that the threshold frequency tf is chosen too high. The latter occurs when the disk drive enters power saving mode when deemed appropriate, implying that the threshold frequency tf is selected too low. Since the two forms of penalty have opposite effects on determining the critical frequency, they are used to balance system behavior.

페널티들은 임계 주파수의 공식에서 파라미터들을 조정하기 위해 사용되는 것이므로 편리한대로 어떤 단위로도 계산될 수 있다. 타임 단위로 페널티를 계산하는 것은 계산이 간단하다는 이점이 있다. 반면 주파수 단위로 페널티를 계산하는 것은 요구-구동 계산으로부터 사용가능한 몇 개의 입력 값을 갖는다는 이점이 있다.Penalties are used to adjust the parameters in the formula of the threshold frequency, so they can be calculated in any unit at your convenience. Calculating the penalty on a time basis has the advantage of being simple to calculate. On the other hand, calculating the penalty in frequency units has the advantage of having several input values available from the demand-driven calculation.

제7도는 절전 모드 진입 및 종료에 대한 시간 순서를 나타내는 그래프이다. 여기서 수평축은 시간을 나타내고, 수직축은 전력을 나타낸다. 수평축상에 있는 각각의 짧은 티크(tick) 마크는 절전 모드에 대한 타임 윈도우를 나타낸다. 그래프에는 세 가지 전력 레벨 즉 탐색/판독/기록 전력 PO과, 아이들 전력 P1 및 모드 전력 P2가 사용된다. 구별을 쉽게 하기 위해, 디스크 드라이브의 모든 액세스는 전력 레벨 PO에서 짧은 간격으로 표시한다. 타임 TO은 액세스가 일어나는 타임 윈도우의 시작부분이다. 조금 시간이 흐른 T1 시간에서 절전 모드에 진입하여, 시간 T2 일 때까지 지속한다. 그 후, 다음 디스크 액세스가 일어나게 되면 드라이브는 활성 상태로 복귀한다. 시간 T4에서 시작되는 타임 윈도우에서 그 다음의 디스크 액세스가 발생된다.7 is a graph showing a time sequence for entering and exiting a power saving mode. Where the horizontal axis represents time and the vertical axis represents power. Each short tick mark on the horizontal axis represents a time window for power saving mode. Three power levels are used in the graph: search / read / write power PO, idle power P1 and mode power P2. To make the distinction easier, all accesses to disk drives are marked at short intervals in the power level PO. The time TO is the beginning of the time window in which access occurs. The device enters the power saving mode at the time T1 slightly passed and continues until the time T2. The drive then returns to the active state when the next disk access occurs. The next disk access occurs in the time window starting at time T4.

성능 패널티에 있어서, 절전 모드의 지속 기간(duratios)은 매우 중요하다.In performance penalty, the duration of the power saving mode is very important.

위에서 도시되고 설명된 제3도의 하드웨어 구성에서 카운터(204)를 추가하여 이를 제8도에 도시한다. 카운터(204)는 액세스(220)로서 도시된 모든 진입(226)과 모드 종료 사이의 타임 윈도우(221)의 개수를 카운트한다. 출력(227)은 타임 윈도우 단위에서 모드의 지속 기간을 나타낸다. 이 값은 타임 단위에 대해 바로 사용되거나, 공식(2) 및 (3)을 통해 주파수 단위로 변환될 수도 있다.A counter 204 is added in the hardware configuration of FIG. 3 shown and described above to illustrate it in FIG. Counter 204 counts the number of time windows 221 between all entry 226 and mode exits shown as access 220. Output 227 represents the duration of the mode in time window units. This value may be used directly for time units or may be converted to frequency units via formulas (2) and (3).

에너지/응답 페널티 erp에 있어서, 에너지에 대한 영향과 응답 시간에 대한 영향 모두가 평가된다. 에너지 페널티 ep는 얼마만큼의 여분의 에너지가 사용되었는가와 언제 부적절하게 절전 모드에 진입하였는가를 판단하는 척도이다. 응답 시간 페널티 rp는 절전 모드에 부적절하게 진입했을 때 실제의 데이터 처리량(throughput)에 얼마만큼의 영향을 미치는지를 판단하는 척도이다. 제7도의 예에서, 두 개의 모드 진입이 도시되었는데, 하나는 T1에서 T2까지이고, 다른 하나는 T5에서 T6까지이다. 에너지/응답 페널티는 T1에서 진입된 모드에 대해서가 아니라 T5에서 진입된 모드에서 발생된다. 이것은 제7도에서 ERP 레벨로 표시되어 있다.In the energy / response penalty erp, both the impact on energy and the response time are evaluated. The energy penalty, ep, is a measure of how much extra energy was used and when inadequately entering sleep mode. The response time penalty rp is a measure of how much impact the actual data throughput will have on entering the power saving mode improperly. In the example of FIG. 7, two mode entry is shown, one from T1 to T2 and the other from T5 to T6. The energy / response penalty is not generated for the mode entered at T1 but at the mode entered at T5. This is indicated by the ERP level in FIG.

에너지 페널티에 있어서, 모드의 지속 기간 동안 절약되는 에너지가 복귀 에너지에 의해 rs형 잡히도록 하는 절전 모드에 대한 에너지 브레이크-이븐 시간 TBE이 있다. 참고로 제7도의 첫 번째의 모드 진입을 참조해 보면, T0은 액세스 밀도0 인 이전 타임 윈도우를 나타내고, T1은 모드에 진입하는 시간을 나타내고, T2는 모드가 종료하는 시간을 나타낸다. (T2-T1)의 값은 구현된 하드웨어의 카운터(9)에서 카운트되는 모드 지속 기간이다. 만일(T2-T1)TBE이면, 에너지 페널티 ep 가 일어난다. 에너지 페널티 ep는 (T2-T1)와 TBE의 함수로 계산된다. 즉, 바람직한 실시예로,In the energy penalty, there is an energy break-even time T BE for the power saving mode that causes the energy saved for the duration of the mode to be rs shaped by the return energy. For reference, referring to the first mode entry of FIG. 7, T0 is the access density. Represents a previous time window of 0, T1 represents the time to enter the mode, and T2 represents the time to exit the mode. The value of (T2-T1) is the mode duration counted in the counter 9 of the implemented hardware. (T2-T1) If T BE , an energy penalty ep occurs. The energy penalty ep is calculated as a function of (T2-T1) and T BE . That is, in a preferred embodiment,

((T2-T1)TBE)가 참이면, ep=16-16*((T2-T1)/TBE)이고,((T2-T1) If T BE ) is true, then ep = 16-16 * ((T2-T1) / T BE ),

공식(II)에서 에너지 페널티 ep는 16의 값으로부터 선형적으로 범위를 가지도록 계산된다. 이 때 응답 시간이 제한 한도를 넘었을 때의 0의 값에 대해 절전 모드의 지속 기간은 본질상 0이 된다. 왜냐하면, 모드 진입에 뒤이어 액세스가 즉각적으로 일어나기 때문이다. 페널티들에 서로 다른 가중치를 제공하는 또 다른 에너지 페널티 공식도 가능하다. 그러나 공식(II)은 아주 간단하고, 에너지 영향을 양호한 추정값을 준다. 실제로 공식(II)에서 파라미터들의 값은 정확할 필요가 없고, 계산식은 정수 계산으로 실행된다. 정수 계산에는 충분한 해상도를 제공하는 16가지의 페널티 레벨이 있다.In formula (II), the energy penalty ep is calculated to range linearly from the value of 16. At this time, the duration of the power saving mode is essentially zero for the value of zero when the response time exceeds the limit. This is because access occurs immediately after entering the mode. Another energy penalty formula is possible which gives different weights to the penalties. However, formula (II) is quite simple and gives a good estimate of the energy impact. In practice, the values of the parameters in formula (II) do not have to be exact, and the calculation is performed as an integer calculation. Integer calculation has 16 penalty levels that provide sufficient resolution.

절전 모드의 응답 시간 영향(response time impact)은 복귀시 초래되는 추가의 대기시간에 근거를 두고 계산된다. 이는 디스크 드라이브의 성능 척도인 처리량에 미치는 영향에 대한 추정값이다. 이 결과로, 처리량 영향의 상한 한계 tub는 이득 계수로부터 도출될 수 있다. 절전 모드로부터의 처리량 영향은 rl/(T2-T0)로서 측정된다. 그 결과 응답 제한 시간 trl은 상한 한계 tub에 따라, 정해진다. 특 trl=rl/tub 이다. 만일(T2-T0)trl 인 경우는 언제라도 응답 페널티가 일어난다. (T2-T0)의 값은 임계 주파수와 모드 지속 기간(T2-T1)으로부터 계산된다.The response time impact of the power saving mode is calculated based on the additional latency incurred upon return. This is an estimate of the impact on throughput, a measure of disk drive performance. As a result, the upper limit tub of throughput effect can be derived from the gain factor. The throughput impact from the power save mode is measured as rl / (T2-T0). As a result, the response timeout trl is determined according to the upper limit tub. Trl = rl / tub. (T2-T0) In the case of trl, there is a response penalty at any time. The value of (T2-T0) is calculated from the threshold frequency and the mode duration T2-T1.

응답 패널티 rp는 (T2-T0)와 tr1의 함수로 계산된다.The response penalty rp is calculated as a function of (T2-T0) and tr1.

바람직한 실시예로,In a preferred embodiment,

((T2-T0)Tr1)가 참이면, rp=16-16*((T2-T0)/tr1)이고,((T2-T0) If Tr1) is true, rp = 16-16 * ((T2-T0) / tr1),

공식(14)에서, 응답 시간 페널티 rp는 16의 값으로부터 선형적으로 범위를 가지도록 계산된다. 이 때 응답 제한 시간이 한도를 넘었을 때의 0의 값에 대해 절전 모드의 지속 기간은 본질상 0이 된다. 페널티들에 서로 다른 가중치를 제공하는 또 다른 에너지 페널티 공식도 가능하다. 그러나 공식(14)은 아주 간단하고, 에너지 영향에 대해 양호한 추정값을 준다. 실제로 공식(14)에서 파라미터들의 값은 정확할 필요가 없고, 계산식은 정수 계산으로 수행된다. 정수 계산에는 충분한 해상도를 제공하는 16가지의 페널티 레벨이 있다.In equation (14), the response time penalty rp is calculated to range linearly from a value of sixteen. At this time, the duration of the power saving mode is essentially zero for the value of zero when the response timeout exceeds the limit. Another energy penalty formula is possible which gives different weights to the penalties. However, equation (14) is quite simple and gives a good estimate of the energy impact. In practice, the values of the parameters in formula (14) need not be exact, and the formula is performed with integer calculation. Integer calculation has 16 penalty levels that provide sufficient resolution.

에너지 페널티 ep 및 응답 시간 페널티 rp는 에너지/응답 페널티 erp를 생성하기 위해 결합된다. 바람직한 실시예로, 두 개의 페널티 중 더 큰 것만 에너지/응답 페널티 erp로서 사용된다. 이렇게 하는 것이 더 큰 타임 범위를 가지는 페널티만 계산되므로, 계산식이 간단하게 된다.The energy penalty ep and the response time penalty rp are combined to produce an energy / response penalty erp. In a preferred embodiment, only the larger of the two penalties is used as the energy / response penalty erp. This simplifies the calculation because only penalties with a larger time range are calculated.

그러나, 예를 들어 가중 평균을 사용함으로써 에너지 및 응답 페널티 둘 모두를 사용하여 에너지/응답 페널티를 계산하는 것이 바람직하다.However, it is desirable to calculate the energy / response penalty using both energy and response penalties, for example by using a weighted average.

한편, 에너지 및 응답 페널티는 주파수 단위로서 계산될 수 있다. 이 경우에 있어서, 공식(2) 및 (3)에 따라 주파수가 타임 값 TBE및 trl로부터 계산된다. 여기에서 에너지 브레이크-이븐 주파수 fbe와 응답 제한 주파수 frl가 구해진다. 모드의 지속 기간은 공식(2) 및 (3)을 사용하여 주파수 값으로 변환된다. 페널티 공식은 다음과 같다.On the other hand, the energy and response penalties can be calculated as frequency units. In this case, the frequency is calculated from the time values T BE and trl according to formulas (2) and (3). Here, the energy break-even frequency fbe and the response limit frequency frl are obtained. The duration of the mode is converted into a frequency value using formulas (2) and (3). The penalty formula is:

(fmdfeb)가 참이면, ep=16-16*feb/fme이고,(fmd feb) is true, then ep = 16-16 * feb / fme,

그리고,And,

(1/fm-1/tf1/fr1)가 참이면,(1 / fm-1 / tf If 1 / fr1) is true,

rp=16-16*fr1*tf*fmd/(feb/fmd)이고,rp = 16-16 * fr1 * tf * fmd / (feb / fmd),

바람직한 실시예로, 다시 두 개의 페널티 중 더 큰 것만 사용된다면, 더 낮은 주파수 제한을 가진 페널티만 계산된다.In a preferred embodiment, if only the larger of the two penalties is used again, only the penalty with the lower frequency limit is calculated.

에너지 및 응답 페널티는 모드가 활성 상태로 복귀하기 위해 종료될 때 계산된다. 더 깊숙한 모드로 진입한다고 가정하면, 복귀 페널티는 선택된 모드와 연관되어 있기 때문에 페널티는 일어나지 않는다.Energy and response penalties are calculated when the mode ends to return to the active state. Assuming entry into a deeper mode, no penalty occurs because the return penalty is associated with the selected mode.

한편, 페널티의 또 다른 형태인 기회 상실 페널티 mop에 대해 살펴본다. 이 페널티에서 절전 모드를 사용하는 것은 에너지 혹은 응답 페널티가 전혀 발생되지 않는 이상적인 작용과 비교해 보자. 절전 모드가 사용되지 않을 때나(타입 1), 또는 모드에 진입하는 임계 주파수가 너무 낮을 때(타입2) 기회 상실 페널티가 발생된다. 기회에 있어, 상기 두 가지 타입은 에너지 혹은 응답 페널티를 초래함이 없이 시간 간격(interval)을 사용하는 것이 가능할 경우에만 고려된다. 제7도에서, T3에서 T4의 시간 간격 MOP1은 타입 1기회의 일 예이고, 반면 T0에서 T1의 시간 간격 MOP2 및 T4에서 T5의 시간 간격은 타입 2 기회의 일 예이다. 에너지/응답 페널티와 마찬가지로, 기회 상실 페널티는 주파수나 타임 중 가장 편리하다고 생각되는 단위로 계산하면 된다.On the other hand, we look at another form of penalty, the lost opportunity penalty mop. Compare power saving mode with this penalty compared to the ideal behavior where no energy or response penalty is incurred. An opportunity loss penalty occurs when the power saving mode is not used (type 1), or when the threshold frequency entering the mode is too low (type 2). In opportunity, the two types are only considered if it is possible to use a time interval without incurring an energy or response penalty. In FIG. 7, the time interval MOP1 from T3 to T4 is an example of a type 1 opportunity, while the time interval MOP2 from T0 to T1 and the time interval from T5 to T4 are examples of type 2 opportunities. Like the energy / response penalty, the opportunity loss penalty can be calculated in terms of frequency or time that you think is most convenient.

먼저, 타임 단위로 기회 상실 페널티를 계산한다. 절전 모드에 대해서, 상실 페널티는 시간 간격이 상실되었을 때 일어난다. 타입 1 기회에 있어서, 보조 시간(relevant time)으로는 0보다 더 큰 액세스 밀도를 갖는 이전 타임 윈도우인 T3과 시간 간격 내에서 아직 절전 모드에 진입하지 않았을 때 다음 디스크 액세스 시간인 T4가 있다. (T4-T3) 값은 시간 간격의 길이를 나타내고, 다음 공식을 이용하여 액세스 주파수로부터 계산된다.First, the opportunity loss penalty is calculated in time units. For the power save mode, a loss penalty occurs when the time interval is lost. For Type 1 opportunities, the relevant time is T3, the previous time window with an access density greater than zero, and T4, the next disk access time when it has not yet entered sleep mode within the time interval. The (T4-T3) value represents the length of the time interval and is calculated from the access frequency using the following formula.

여기서, 주파수 freq 는 측정된 액세스 주파수이다. 물론 에너지 브레이크-이븐 시간과 응답 제한 범위보다 더 큰 시간 간격만을 고려해야 한다.Where frequency freq is the measured access frequency. Of course, only time breaks greater than the energy break-even time and the response limits should be considered.

타입 1 기회 상실 페널티의 공식은 다음과 같다.The formula for a Type 1 lost opportunity penalty is:

정수 계산으로 구현되었을 때 기회(T4-T3)가 페널티가 되면, 상기 공식에 의해 0의 페널티가 된다. 페널티의 크기는 에너지 브레이크-이븐 시간과 응답제한범위가 얼마만큼 큰가하는 것보다는 기회가 얼마만큼 큰가하는 것에 따라 정해진다. 그러므로, 기회가 더 클수록 더 큰 값의 패널티가 일어나고, 기회가 더 작을수록 더 작은 값의 페널티가 일어난다.If the opportunity (T4-T3) is penalized when implemented with integer calculation, a penalty of zero is given by the above formula. The magnitude of the penalty is determined by how big the opportunity is, rather than how big the energy break-even time and response limits are. Therefore, the greater the chance, the greater the penalty, and the smaller the chance, the smaller the penalty.

전1에 진입한 타입 2 기회에 있어서, (T1-T0) 값은 다음 공식을 이용하여 임계 주파수로부터 계산된다.For type 2 opportunities entering all 1s, the (T1-T0) value is calculated from the threshold frequency using the following formula.

타입 2 페널티는 에너지 혹은 응답 페널티가 없는 절전 모드가 가능할 때와, 임계 주파수가 모드에 진입하기 이전에 소진되어 버리는 부적절한 에너지 양이 주어졌을 때만 사용된다. 이는 다음 공식(22)에 의해 구해진다.Type 2 penalties are only used when a power save mode with no energy or response penalty is possible, and given an inappropriate amount of energy that is exhausted before the threshold frequency enters the mode. This is obtained by the following formula (22).

타입 1의 경우와 같이, 기회가 에너지 혹은 응답 페널티를 초래하면, 페널티는 일어나지 않는다. 타입 1의 경우에 있어서, 이것은 절대적인 제한치이다. 타입 2의 경우에 있어서, 에너지 페널티 혹은 응답 페널티는 타입 2 기회 및 모드 지속 기간 모두에 의존하기 때문에 이것은 근사값이 된다. 그러나, 공식(22)는 구현하기가 매울 쉽다는 이점을 갖고 있다.As in the case of Type 1, if the opportunity results in an energy or response penalty, no penalty occurs. In the case of Type 1, this is an absolute limit. In the case of type 2, this is an approximation since the energy penalty or response penalty depends on both type 2 opportunity and mode duration. However, formula 22 has the advantage that it is very easy to implement.

또한 기회 상실 페널티는 주파수 단위로도 계산된다. 타입 1 기회에 있어서, 측정 주파수 freq가 주파수 페널티 하한값 mfl 보다 작을 때 페널티가 발생된다. 이 경우에 있어서, 다음 공식은 매우 양호한 페널티 공식이다.The opportunity loss penalty is also calculated in frequency units. For type 1 opportunities, a penalty occurs when the measured frequency freq is less than the frequency penalty lower limit mfl. In this case, the following formula is a very good penalty formula.

타입 2 기외에 있어서, 공식은 다음과 같다.For Type 2, the formula is:

주파수 단위를 사용하여 페널티들을 계산할 때의 이점은 현재 주파수 freq 및 임계 주파수 tf 는 쉽게 얻을 수 있다는 점이다. 그러나, 타임 단위는 하드웨어 구현시에 카운터로서 쉽게 구현할 수 있으므로 더 선호되며, 또한 에너지 및 응답 페널티와의 일관성을 유지하기 위해 타임 단위를 사용한다.The advantage of calculating the penalties using frequency units is that the current frequency freq and the threshold frequency tf can be easily obtained. However, time units are preferred because they can be easily implemented as counters in hardware implementations, and also use time units to maintain consistency with energy and response penalties.

물론, 다른 페널티 공식 또한 가능하다. 상기의 설명에서 에너지 혹은 응답 페널티가 일어났다면 기회 상시 페널티는 일어나지 않는다고 가정되었다. 어떤 경우에 있어서는, 이런 경우 기회 상실 페널티가 일어나는 것이 오히려 바람직하다. 그 후, 페널티는 에너지 혹은 응답 페널티의 크기에 따른 추가의 가중 계수를 갖는다.Of course, other penalty formulas are possible. In the above description it is assumed that no opportunity penalty is incurred if an energy or response penalty is incurred. In some cases, it is rather desirable for this opportunity penalty to occur. The penalty then has an additional weighting factor depending on the magnitude of the energy or response penalty.

다중의 절전 모드에 있을 때, 페널티 값들은 각각의 모드에 대해 결정되는 것이 바람직하다. 왜냐하면 모드들은 각자 서로 다른 타임 윈도우를 가지며, 이들 윈도우는 액세스 주파수 스펙트럼의 서로 다른 부분에 해당되기 때문이다. 하나의 모드에 대해서, 다른 모드들로의 진입은 페널티를 결정하는 데에서 사용된다. 예컨대, 페널티들은 모든 시간 간격에서 모든 모드들에 대해 검사되거나 또는 가장 최적인 모드에 대해서만 검사된다. 더욱이, 각 절전 모드에 대해서 다중의 페널티를 유지하는 것이 편리하다. 예를 들면, 공식 (6)(8)은 균등 및 산발적인 액세스 패턴의 경우를 나타낸다. 페널티들의 세트는 이들 두 가지 경우에 대해 독립적인 동적인 적응성을 갖고서 유지된다. 이는 소정의 시간 간격 동안 어느 형태의 패턴이 활성화되었는가를 인지하고, 해당 패턴에 대한 페널티를 계산함으로써 구현된다.When in multiple power saving modes, penalty values are preferably determined for each mode. This is because the modes have different time windows, which correspond to different parts of the access frequency spectrum. For one mode, entering other modes is used to determine the penalty. For example, penalties are checked for all modes at all time intervals or only for the most optimal mode. Moreover, it is convenient to maintain multiple penalties for each power saving mode. For example, formula (6) (8) shows the case of an even and sporadic access pattern. The set of penalties is maintained with independent dynamic adaptability to these two cases. This is implemented by knowing which type of pattern has been activated during a given time interval and calculating the penalty for that pattern.

패널티들의 시간 이력은 임계 주파수의 계산식 (6) 및 (7)에서 이득 계수 g1 및 g2 등과 같은 파라미터들을 조정하기 위해 사용된다. 바람직한 구현예에 있어서, 각각의 패널티들이 발생됨에 동시에, 이들은 해당되는 누적 패널티값 즉 누적 에너지/응답 페널티들 cerp 및 누적 기회 상실 페널티들 cmop 에 그 값이 더해진다. 이들 값들 중 하나가 기설정된 트립 레벨(trip level)에 도달하면, 임계 주파수 계산식의 선정된 파라미터들도 따라서 바뀌게 되며, 누적 값은 감소된다.The time history of the penalties is used to adjust parameters such as gain coefficients g1 and g2, etc. in the calculations (6) and (7) of the threshold frequency. In a preferred embodiment, as each penalty is generated, they are added to the corresponding cumulative penalty value, cumulative energy / response penalties cerp and cumulative lost opportunity penalties cmop. When one of these values reaches a predetermined trip level, the selected parameters of the threshold frequency equation are changed accordingly, and the cumulative value is reduced.

페널티가 일어나지 않고 절전 모드에 진입하게 되면, 대응되는 누적 페널티값은 상당한 양으로 감소된다. 이것은 시간 경과에 따라 페널티가 감소되는 효과를 가지며, 그로 인해 이전의 패널티들은 신규의 패널티들에 비해 비교적 작은 영향을 미친다. 이러한 프로세스가 제9도에 그래프에 도시되었다. 수평축은 모드 간격(mode interval)이고, 각 티크(tick)는 모드 진입 혹은 기회에 해당한다. 수직축은 누적 패널티의 크기 cerp를 나타낸다. 처음 간격 0에서 페널티가 일어나면서 부터, 계속하여 누적값은 증가하게 된다. 간격 1에서 페널티는 일어나지 않았으므로 누적 페널티값은 감소한다. 계속하여 새로운 페널티에 대해 누적 페널티값이 증가되며, 페널티가 없을 때는 일정한 고정율로 누적 페널티값이 감소된다. 간격 7에서 누적 페널티가 합쳐진 새로운 페널티 크기는 그래프에 보여진 바와 같이 페널티 트립 레벨을 초과하기에는 충분한 값이다. 이 시점에서 공식 (6)과 (7)에서의 이득 계수는 변화하고, 누적 패널티값은 0으로 감소된다. 누적 페널티는 파라미터를 조정하는 작용이 변화되었다고 가정될 때에 크리어 된다. 즉 이 때가 새로운 측정이 요구되는 순간이다. 이러한 결과가 페널티가 거의 없는 간격 8 이후의 시간 간격에서 볼 수 있고, 페널티들은 선행의 타입 간격에서 보다 더 적게 된다.If a penalty is entered without entering a power saving mode, the corresponding cumulative penalty value is reduced by a significant amount. This has the effect of reducing the penalty over time, whereby previous penalties have a relatively small effect compared to new penalties. This process is shown in the graph in FIG. The horizontal axis is the mode interval, and each tick corresponds to a mode entry or opportunity. The vertical axis represents the magnitude cerp of the cumulative penalty. From the first penalty interval 0, the cumulative value continues to increase. Since no penalty occurred in interval 1, the cumulative penalty value decreases. The cumulative penalty value is continuously increased for new penalties, and if there is no penalty, the cumulative penalty value is decreased at a fixed rate. The new penalty size, combined with the cumulative penalty at interval 7, is sufficient to exceed the penalty trip level as shown in the graph. At this point, the gain coefficients in formulas (6) and (7) change, and the cumulative penalty value decreases to zero. The cumulative penalty is cleared when the action of adjusting the parameters is assumed to have changed. This is the moment when new measurements are required. This result can be seen at time intervals after interval 8 with few penalties, with penalties less than at the preceding type intervals.

바람직한 구현 예에 있어서, ep와 rp 중에서 큰 값으로 선택된 에너지/응답 페널티는 이러한 페널티가 발생할 때 누적 페널티 cerp에 더해진다.In a preferred embodiment, the energy / response penalty selected as the larger of ep and rp is added to the cumulative penalty cerp when this penalty occurs.

그 후, 누적 페널티는 기설정된 트립 레벨 crpt에 비교되고, 임계 주파수 계산에서의 이득 계수 g1 및 g2는 변경된다. 바람직한 구현 예에 있어서, 페널티들은 균일 및 산발적인 액세스들에 대해 개별적으로 각각 탐지되고, 적절한 이득 계후 g1 및 g2는 증가된다. erpt에 대해 양호한 값은 16이다. 위에서 설명한 바와 같이, 이득 계수들에는 실제적인 제한 값이 존재하며, 이들은 이득에 있어서 상한 범위를 제한하는데 사용된다.The cumulative penalty is then compared to the preset trip level crpt, and the gain coefficients g1 and g2 in the threshold frequency calculation are changed. In a preferred embodiment, the penalties are detected separately for uniform and sporadic accesses, respectively, and the appropriate gain regime g1 and g2 are increased. A good value for erpt is 16. As described above, there are practical limiting values in the gain coefficients, which are used to limit the upper range in gain.

만일 페널티가 없다고 한다면, 누적 페널티 cerp는 각 모드의 종료시점에서 0의 하한값까지 기설정된 양 cerd 만큼 감소한다.If there is no penalty, the cumulative penalty cerp decreases by a predetermined amount cerd at the end of each mode to the lower limit of zero.

여기서 cerd는 누적 페널티에 대한 감쇠율(decay rate)로서 동작한다. 통상적으로, cerd의 값으로 2가 적절하다. 더 큰 값은 더 빠른 속도로 패널티를 일으키고, 반면 더 작은 값은 더 늦은 속도로 패널티를 일으킨다.Where cerd acts as the decay rate for the cumulative penalty. Typically, 2 is appropriate for the value of cerd. Larger values cause penalties at a faster rate, while smaller values cause penalties at a slower rate.

기회 상실 누적 페널티 cmop는 에너지/응답 누적 페널티와 유사하게 계산된다. 타입 1 및 타입 2 페널티들은 개별적인 누적 페널티들로 취급하거나, 간편화를 위해 이들에 대해 동일한 값의 누적 페널티를 적용하는 것은 가능하다. 기회 상실 페널티가 일어날 때, mop1 혹은 mop2의 적절한 값이 누적 페널티 cmop에 더해진다.Loss of opportunity cumulative penalty cmop is calculated similar to the energy / response cumulative penalty. It is possible to treat Type 1 and Type 2 penalties as separate cumulative penalties, or apply the same cumulative penalty to them for simplicity. When an opportunity loss penalty occurs, the appropriate value of mop1 or mop2 is added to the cumulative penalty cmop.

바람직한 실시예에 있어서, 누적 패널티가 트립 레벨 mopt를 넘어설 때 적절한 이득 계수 g1 및 g2 는 감소된다. mopt에 있어서의 양호한 값은 16이다. 위에서 상세히 설명한 바와 같이, 이득 계수들에는 실제적인 제한값이 존재하며, 이들은 이득에 있어서 하한 범위를 제한하는데 사용된다. 만일 페널티가 없다고 한다면, 누적 페널티 cmop는 각 모드의 종료시점에서 0의 하한값까지 기설정된 양 cmod 만큼 감소한다. 위의 실시예와 같이, cmod의 값으로는 2가 적절하다.In a preferred embodiment, the appropriate gain factors g1 and g2 are reduced when the cumulative penalty exceeds the trip level mopt. The good value in mopt is 16. As detailed above, there are practical limits to the gain coefficients, which are used to limit the lower range in gain. If there is no penalty, the cumulative penalty cmop decreases by the preset amount cmod to the lower limit of zero at the end of each mode. As in the above embodiment, 2 is appropriate for the value of cmod.

에너지/응답 페널티 erp와 타입 2 기회 상실 페널티 mop2는 모드가 종료될 때 계산된다. 제10도에 이를 위한 상세한 과정을 도시하였다. 단계 350은 가장 깊은 모드에 진입했을 때, 제4도의 단계 313 으로부터 진입된다. 단계 352는 액세스가 일어나 드라이브가 현재 절전 모드에 있을 때, 제2도의 단계 401로부터 진입된다. 단계 350으로부터 진입했을 때 단계 351에서 액세스를 기다린다. 단계 352에서는, 모드 지속 시간(duration)이 얻어진다. 단계 353에서는, 에너지 페널티 ep와 응답 페널티 rp는 위에서 설명한 것과 같이 계산된다. 단계 354에서는, 두 개의 페널티에 대해 페널티가 있는지를 검사한다. 만일 페널티가 없다면, 단계 356으로 넘어간다. 그리고 만일 페널티가 존재하면, 단계 355로 넘어간다. 단계 355에서는, 페널티는 누적 페널티 cerp에 더해진다. 단계 358에서는, 누적 페널티는 페널티 트립 레벨 erpt와 비교되어 검사된다. 만일 트립 레벨을 넘어서지 못했다면, 단계 367로 넘어가서 제4도의 단계 300으로 그 제어를 되돌린다.The energy / response penalty erp and the type 2 missed penalty mop2 are calculated when the mode ends. Figure 10 shows a detailed process for this. Step 350 enters from step 313 of FIG. 4 when entering the deepest mode. Step 352 enters from step 401 of FIG. 2 when access occurs and the drive is currently in power save mode. Wait for access in step 351 when entering from step 350. In step 352, a mode duration is obtained. In step 353, the energy penalty ep and the response penalty rp are calculated as described above. In step 354, it is checked whether there are penalties for the two penalties. If no penalty, go to step 356. And if there is a penalty, go to step 355. In step 355, the penalty is added to the cumulative penalty cerp. In step 358, the cumulative penalty is checked against the penalty trip level erpt. If no trip level has been exceeded, control proceeds to step 367 and the control returns to step 300 in FIG.

만일 트립 레벨을 넘어섰다면, 단계 359에서 이득 계수는 적절한 값으로 변경된다. 단계 360에서는, 누적 페널티가 0으로 세트되고, 단계 367로 넘어간다. 단계 356에서는, 페널티가 없으므로 누적 페널티값은 감소하게 된다. 단계 357에서는, 공식(24)을 사용하여 타입 2 기회 상실 페널티가 계산된다. 단계 361에서는, 페널티가 일어났는지를 검사한다. 만일 페널티가 일어나지 않았다면, 단계 362에서 누적 페널티값은 감소되고, 단계 367로 넘어간다. 만일 페널티가 일어났었다면, 단계 363은 발생된 페널티를 누적 페널티에 더한다. 단계 364에서는, 누적 페널티가 트립 레벨을 넘어섰는지를 검사한다. 만일 그렇지 않다면, 단계 367로 넘어간다. 만일 누적 페널티가 트립 레벨을 넘어섰다면, 단계 365에서 이득이 적절한 값으로 변경되고, 단계 366에서는, 누적 페널티는 0으로 세트되고, 단계 367로 넘어간다.If the trip level is exceeded, in step 359 the gain factor is changed to an appropriate value. In step 360, the cumulative penalty is set to zero and step 367 is reached. In step 356, there is no penalty, so the cumulative penalty value is reduced. In step 357, a type 2 opportunity loss penalty is calculated using formula (24). In step 361, it is checked whether a penalty has occurred. If no penalty has occurred, at step 362 the cumulative penalty value is reduced and step 367 is reached. If a penalty has been incurred, step 363 adds the penalty incurred to the cumulative penalty. In step 364, it is checked whether the cumulative penalty has exceeded the trip level. If not, go to Step 367. If the cumulative penalty exceeds the trip level, the gain is changed to an appropriate value at step 365, and at step 366, the cumulative penalty is set to zero and step 367 is reached.

타입 1 기회 상실 페널티 mopl은 액세스 주파수가 주파수 페널티 제한값보다 작을 때 계산된다. 제4도를 참조하면, 상기 값에 대한 비교 및 계산이 단계 307의 일부로서 일어난다. 이 과정을 제11도에 보다 상세히 도시한다. 단계 325는 제4도의 단계 307로부터 진입된다. 단계 326에서는, 공식 (23)으로서 페널티 값 mopl이 계산된다. 단계 327에서는, 페널티가 있는지를 검사한다. 만일 페널티가 없다면, 단계 328에서 단계 307로 되돌려진다. 만일 페널티가 발생되었으면, 단계 329는 여기에다 누적 페널티 cmop를 더하게 된다. 단계 330에서, 누적 페널티는 기회 상실 트립 레벨 mopt과 비교된다. 만일 트립 레벨을 넘어서지 않았다면, 단계 328로 넘어간다. 그리고 만일 트립 레벨을 넘어섰다면, 단계 311로 넘어가서 이득 계수는 적절한 값으로 변경된다. 단계 332d서 누적 페널티는 크리어 되고, 단계 328로 넘어간다.Type 1 missed penalty mopl is calculated when the access frequency is less than the frequency penalty limit. Referring to FIG. 4, comparison and calculation of the values take place as part of step 307. This process is illustrated in more detail in FIG. Step 325 is entered from step 307 of FIG. In step 326, the penalty value mopl is calculated as formula (23). In step 327, a check is made for penalties. If no penalty is found, step 328 returns to step 307. If a penalty has been incurred, step 329 adds to the cumulative penalty cmop. In step 330, the cumulative penalty is compared to the lost opportunity trip level mopt. If no trip level has been exceeded, step 328 is reached. And if the trip level is exceeded, the process proceeds to step 311 where the gain factor is changed to an appropriate value. At step 332d, the cumulative penalty is cleared, and step 328 is reached.

또한 기회 상실 페널티를 확실히 사용하지 않고서 이득 계수들을 조정하는 것도 가능하다. 이러한 경우에 있어서, 에너지/응답 페널티들의 발생 주파수가 기회 상실 페널티 대신 사용된다. 이는 소정 개수이 에너지/응답 페널티들이 발생될 때 최적의 작용이 일어난다고 가정한 경우에 적용된다. 발생 빈도율이 너무 적다는 것은 시스템이 에너지를 충분히 절약하지 않았다는 것을 나타낸다. 그래서 발생 빈도율이 어느 레벨 이하로 떨어진다면 기회 상실 페널티가 발생된 것처럼, 이득 계수들이 변경될 수 있다.It is also possible to adjust the gain factors without reliably using the lost opportunity penalty. In this case, the frequency of occurrence of the energy / response penalties is used instead of the lost opportunity penalty. This applies when a certain number assumes that optimal action occurs when energy / response penalties are incurred. Too low an occurrence rate indicates that the system did not save enough energy. Thus, if the incidence rate drops below a certain level, the gain coefficients can be changed, just as a loss of opportunity penalty is incurred.

페널티 정보를 임계 주파수 계산에로 피드백 하는 또 다른 방법을 설계하는 것도 가능하다. 그러나 상기 구현 예는 설계하기가 매우 간단하다는 이점이 있고, 실제 시스템의 작용에 대해서 즉각적인 응답을 제공한다. 다른 방법들은 히스토그램에 의한 것과 같이 페널티 통계치를 유지하는 단계와, 그로 인해 재정규화(renormalizing)와 같은 페널티들에 시간-가중(time-weighting)을 제공하는 단계를 포함한다. 더욱이, 페널티 트립 레벨과, 페널티 감쇠율과, 공식(14)에서 사용된 것과 가은 페널티 크기 변환 계수들 및 이득 요소에서의 한도값과 같은 다른 파라미터들을 조정하는 것은 바람직한 일이다. 이들은 컴퓨터(41)로부터의 명령을 통하거나, 혹은 누적 페널티 트립 레벨이 초과될 때 동적으로 조정될 수 있다. 상기 각종의 계수들이 성능/에너지 목표 명령(performance/energy target command)에 기반을 두고 조정되도록 하는 것 또한 바람직한 일이다.It is also possible to design another way of feeding back penalty information into the threshold frequency calculation. However, this embodiment has the advantage of being very simple to design and provides an immediate response to the behavior of the actual system. Other methods include maintaining penalty statistics, such as by histogram, and thereby providing time-weighting to penalties such as renormalizing. Moreover, it is desirable to adjust the penalty trip level, the penalty attenuation rate, and other parameters such as the penalty magnitude transform coefficients and limit values in the gain component as used in formula (14). These may be adjusted dynamically via commands from the computer 41 or when the cumulative penalty trip level is exceeded. It is also desirable to allow the various coefficients to be adjusted based on a performance / energy target command.

디스크 드라이브에 있어서, 지정 에너지/성능 목표에 얼마만큼 잘 맞추고 있는가에 대한 정보를 컴퓨터에 알려주는 것은 바람직한 일이다. 예를 들어, 이러한 정보는 상태 명령(status command)안에서 전달될 수 있다. 이 정보에 의해 컴퓨터는 에너지/성능 목표를 경우에 따라 변경할 수 있고, 지정 목표가 아직 달성되지 않았다는 것을 사용자에게 알려준다.For disk drives, it is desirable to inform the computer how well it is meeting its specified energy / performance goals. For example, this information can be conveyed in a status command. This information allows the computer to change the energy / performance targets on a case-by-case basis and inform the user that the specified target has not yet been achieved.

한편, 주기적 액세스의 경우에서는 성능에 영향을 주지 않고 에너지 절약을 개선하는 것 또한 가능하다. 주기적 액세스는 꽤 일반화되어 있다. 예컨대, 대부분의 워드프로세싱 프로그램들은 사용자가 지정하는 일정한 시간 간격, 예를 들어 매 십분이 경과하는 시점에 현재 작업중인 문서를 디스크 드라이브상에 저장하는 자동 저장(autosave) 기능을 포함하고 있다. 만일 이와 같은 형태의 액세스 패턴이 감지될 수 있다면, 절전 모드로 보다 신속히 진입할 수 있고 예견된 액세스 이전에 모드를 종료할 수 있다. 이렇게 하는 것은 절전 모드 복귀 시간을 사용자로부터 숨겨버리고, 실제에 있어 모드에 더 일찍 진입함으로써 더 많은 에너지를 절약하는 효과가 있다. 상기 액세스 주파수 방법은 그 자체로 주기적 액세스들을 자연적으로 감지하는 것을 가능하게 된다. 이 경우에 있어서, 최저 주파수(Very Low Frequency; vlf) 액세스에 대한 작용이 관심사이다. 상기 vlf 액티버티(activity)는 액세스 밀도로부터 측정될 수 있지만, 목표 주파수 범위를 염두에 두어야 한다. 이는 모드 복귀 시간들보다는 긴 시간 범위이다. 자동저장 액티버티를 검출하기 위해, 타이밍 윈도우는 몇 초 이상의 크기를 갖는 것이 적절하다. 이력 버퍼는 예를 들어 이전의 3 vlf 발생과 같은 vlf 액티버티를 유지한다. 만일 소정의 패턴이 이력 버퍼에서 검출되면, 주기적 모드를 시작하게 된다. 한 가지 가장 간단한 패턴은 이전의 3 vlf 발생 값이 서로 소정의 허용오차 범위 즉 예로 5% 안에 있는 것이다. 주기적 패턴이 한 번 시작하게 되면, 이득 계수들은 절전 모드에 더 빨리 진입하기 위해 감소된다. 여기서는 성능 페널티는 전혀 없다는 것으로 가정되었다. 이들은 이전 값들이 저장된 후 주기적 모드가 종료될 때 복구된다. 디스크 드라이브는 측정된 vlf 가 예상된 vlf 의 소정 허용오차 내에 있을 때 활성 상태(active state)로 되돌아간다. 상기 허용오차는 vlf 값에 있어서 통계적 확신에 근거를 두고 있으며, vlf 액세스가 발생될 때 디스크 드라이브가 준비상태(ready)인 것을 보증하는 절전 모드 복귀 타임도 포함한다. 상기 패턴이 반복되지 않으면 주기적 모드는 종료된다. 주기적 모드를 종료하기 위한 간단한 검출 메터니즘은 액세스가 예측된 vlf의 소정 허용오차 내에서 발생하는 때, 즉 늦거나 이르거나 둘 중 하나이다.On the other hand, in the case of periodic access, it is also possible to improve energy savings without affecting performance. Periodic access is quite common. For example, most word processing programs include an autosave feature that saves the currently working document on a disk drive at a user-specified time interval, such as every ten minutes. If this type of access pattern can be detected, it can enter the power saving mode more quickly and exit the mode before the foreseen access. This hides the power save mode return time from the user and actually saves more energy by entering the mode earlier. The access frequency method by itself makes it possible to naturally detect periodic accesses. In this case, the action on Very Low Frequency (vlf) access is a concern. The vlf activity can be measured from the access density, but keep in mind the target frequency range. This is a longer time range than mode return times. In order to detect autosave activity, the timing window is suitably sized to a few seconds or more. The history buffer keeps the same vlf activity as, for example, the previous 3 vlf occurrences. If a predetermined pattern is detected in the history buffer, the periodic mode is started. One simplest pattern is that the previous 3 vlf occurrence values are within a certain tolerance of one another, eg 5%. Once the periodic pattern starts, the gain factors are reduced to enter the power saving mode faster. It is assumed here that there is no performance penalty. They are restored when the periodic mode ends after the previous values have been stored. The disk drive returns to the active state when the measured vlf is within a certain tolerance of the expected vlf. The tolerance is based on statistical confidence in the vlf value and also includes a sleep mode return time that guarantees that the disk drive is ready when vlf access occurs. If the pattern is not repeated, the periodic mode ends. A simple detection mechanism for exiting the periodic mode is when access occurs within a certain tolerance of the predicted vlf, ie late or early or either.

이득 계수들 및 다른 조정 가능한 파라미터들은 디스크 드라이브의 전원이 꺼졌을 때 보존되도록 비활성 저장장치에 저장된다. 이는 플래쉬 램(FLASH RAM)과 같은 반도체 저장장치를 사용하거나, 디스크 상에 상기 값들을 기록함으로써 달성할 수 있다. 후자의 경우는 절전 모드로의 진입이전에 완료되어야 한다.Gain coefficients and other adjustable parameters are stored in inactive storage so that they are preserved when the disk drive is powered off. This can be accomplished by using a semiconductor storage such as FLASH RAM or by writing the values on disk. The latter case must be completed before entering the power saving mode.

본 발명이 상기의 바람직한 실시예를 참조로 하여 구체적으로 도시되고 상술되었지만 본 발명이 속하는 기술분야에 있어서 통상의 지식을 가진 사람이라면, 본 발명의 정신 및 범위를 벗어나지 않으면서 본 발명에 대해 다양한 변형과 개선을 가할 수 있다. 따라서 상기의 바람직한 실시예는 본 발명의 일례로서 제공된 것이지 본 발명을 제한하기 위한 것이 아님은 명백하다.Although the present invention has been shown and described above in detail with reference to the above preferred embodiments, it will be apparent to those skilled in the art that various modifications may be made to the invention without departing from the spirit and scope of the invention. And improvement can be made. It is therefore evident that the above preferred embodiments are provided as examples of the invention and are not intended to limit the invention.

Claims (34)

데이터 트랙들이 있는 기록 디스크와, 다수의 전기적으로 전력이 공급되는 구성요소들과, 상기 디스크상에 데이터를 판독 및 기록하기 위해 상기 구성 요소들을 액세스하는 데이터 컨트롤러와, 상기 디스크를 회전시켜주는 스핀들 모터를 포함하는 디스크 드라이브 구성요소들과, 상기 디스크에 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드와, 상기 디스크상에 서로 다른 트랙들로 상기 헤드를 이동시켜주는 상기 헤드에 연결된 액튜에이터를 갖는 데이터 기록 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서, 상기 방법은, 하나 혹은 그 이상의 상기 구성요소로의 액세스들의 주파수를 결정하는 단계와; 미리 결정된 주파수들로부터 액세스 임계 주파수를 선택하는 단계; 및 상기 결정된 액세스 주파수가 상기 액세스 임계 주파수보다 작을 때 하나 혹은 그 이상의 상기 구성요소로의 전력을 감소시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.A recording disk with data tracks, a plurality of electrically powered components, a data controller for accessing the components for reading and writing data on the disk, and a spindle motor for rotating the disk. Disk drive components comprising: a head for writing data to or reading data from the disk; and an actuator coupled to the head for moving the head to different tracks on the disk. CLAIMS 1. A method of managing power usage in a data recording disk drive, comprising: determining a frequency of accesses to one or more of the components; Selecting an access threshold frequency from predetermined frequencies; And reducing power to one or more of the components when the determined access frequency is less than the access threshold frequency. 제1항에 있어서, 상기 컨트롤러로부터의 액세스에 응답하여 이전에 전력-감소된 구성요소의 전력을 복구하는 단계를 더 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, further comprising restoring power of a previously power-reduced component in response to access from the controller. 제1항에 있어서, 상기 디스크 드라이브는 또한 상기 디스크의 트랙상에 상기 헤드를 유지하기 이해 상기 액튜에이터에 결합된 서보 제어 전자회로부를 가지며, 액세스들의 주파수를 결정하는 상기 단계는 상기 헤드가 상기 디스크상에 데이터를 판독 혹은 기록하도록 하는 액세스들의 주파수를 결정하는 단계를 포함하며, 전력을 감소시키는 상기 단계는 상기 액튜에이터를 파킹 위치로 이동시켜 상기 서보 제어 전자회로부로의 전력을 감소시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The disk drive of claim 1, wherein the disk drive also has servo control electronics coupled to the actuator to hold the head on a track of the disk, wherein the step of determining the frequency of accesses comprises the head on the disk. Determining the frequency of the accesses to read or write data to, wherein reducing the power comprises moving the actuator to a parking position to reduce power to the servo control electronics. How to manage power usage on a disk drive. 제1항에 있어서, 액세스들의 주파수를 결정하는 상기 단계는 상기 액튜에이터로 하여금 상기 디스크를 가로질러 탐색하도록 하는 액세스들의 주파수를 결정하는 단계를 포함하고, 전력을 감소시키는 상기 단계는 상기 액튜에이터를 파킹 위치로 이동시켜 상기 스핀들 모터를 정지시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, wherein determining the frequency of accesses comprises determining a frequency of accesses that cause the actuator to search across the disk, and wherein reducing the power is at a parking position for the actuator. Stopping the spindle motor by moving to. 제1항에 있어서, 액세스들의 주파수를 결정하는 상기 단계는 타임 윈도우에서 발생되는 액세스들의 밀도로부터 상기 액세스 주파수를 추정하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, wherein determining the frequency of accesses comprises estimating the access frequency from a density of accesses occurring in a time window. 제1항에 있어서, 미리 결정된 액세스 주파수들로부터 액세스 임계 주파수를 선택하는 상기 단계는 먼저 액세스 주파수 패턴의 표준 편차가 상기 패턴의 평균값이 기설정된 몇 분의 일 보다 작은가를 판단하고, 적다면 상기 평균값에 이득 계수를 곱하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.The method of claim 1, wherein the step of selecting an access threshold frequency from predetermined access frequencies first determines whether a standard deviation of an access frequency pattern is less than a predetermined number of minutes, and if less, the average value of the pattern. And multiplying the gain factor by. 제1항에 있어서, 미리 결정된 액세스 주파수들로부터 액세스 임계 주파수를 선택하는 상기 단계는 먼저 액세스 주파수의 패턴의 표준 편차가 상기 패턴의 기설정된 평균값의 몇 분의 일 보다 큰가를 판단하고, 크다면 상기 패턴에서 최소 액세스 주파수에 이득 계수를 곱하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.The method of claim 1, wherein the step of selecting an access threshold frequency from predetermined access frequencies first determines whether a standard deviation of the pattern of the access frequency is greater than a fraction of a predetermined mean value of the pattern, and if the Multiplying the minimum access frequency by a gain factor in the pattern. 제1항에 있어서, 액세스 임계 주파수를 선택하는 상기 단계는 미리 결정된 액세스 주파수들의 세트(SET)에서 최대 및 최소 액세스 주파수들로부터 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The power source of claim 1, wherein the step of selecting an access threshold frequency comprises calculating an access threshold frequency from maximum and minimum access frequencies in a predetermined set of access frequencies (SET). How to manage your use. 제8항에 있어서, 액세스 임계 주파수를 선택하는 상기 단계는 상기 최대 및 최소 액세스 주파수에 기설정된 이득 계수를 곱하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.10. The method of claim 8, wherein selecting an access threshold frequency comprises multiplying the maximum and minimum access frequencies by a predetermined gain factor. 제9항에 있어서, 상기 이득 계수를 조정하는 단계를 더 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.10. The method of claim 9, further comprising adjusting the gain factor. 제1항에 있어서, 상기 액세스들이 주기적 패턴인지를 판단하여 다음 주기적 액세스에 앞서 전력-감소된 구성요소의 전력을 복구하는 단계를 더 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, further comprising determining whether the accesses are a periodic pattern to recover power of the power-reduced component prior to a next periodic access. 데이터 트랙들이 있는 기록 디스크와, 상기 디스크를 회전시키기 위한 스핀들 모터와, 상기 디스크에 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드와, 데이터를 판독 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러와, 상기 헤드를 서로 다른 트랙들로 이동시키고 데이터가 없는 파킹 위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터와, 데이터의 판독/기록 동안 데이터 트랙상에 상기 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부를 갖는 적어도 두 가지 절전 모드들에서 작동 가능한 데이터 기록 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서, 상기 방법은, 판독 혹은 기록 액세스들의 주파수를 결정하는 단계와; 미리 결정된 액세스 주파수들의 값을 저장하는 단계와; 미리 결정된 액세스 주파수들의 상기 저장값으로부터 제1액세스 임계 주파수를 계산하는 단계와; 상기 판독 혹은 기록 액세스 주파수가 상기 제1 임계 주파수보다 작을 때, 상기 액튜에이터를 파킹 위치로 이동시키고, 상기 서보 제어 전자회로부의 전력을 감소시켜 상기 디스크 드라이브를 제1절전 모드의 동작으로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.A recording disk with data tracks, a spindle motor for rotating the disk, a head for writing data to or reading data from the disk, and a data controller for accessing the head for reading and writing data. An actuator connected to the head to move the head to different tracks and to a dataless parking position, and a servo control connected to the actuator to hold the head on a data track during read / write of data. CLAIMS 1. A method of managing power usage in a data recording disk drive operable in at least two power saving modes with electronic circuitry, the method comprising: determining a frequency of read or write accesses; Storing a value of predetermined access frequencies; Calculating a first access threshold frequency from the stored value of predetermined access frequencies; When the read or write access frequency is less than the first threshold frequency, moving the actuator to a parking position and reducing the power of the servo control electronics to cause the disk drive to enter into a first sleep mode operation; And managing power usage in the disk drive operable in at least two power saving modes. 제12항에 있어서, 미리 결정된 액세스 주파수들의 상기 저장값으로부터 제2액세스 임계 주파수를 계산하고, 상기 판독 혹은 기록 액세스 주파수가 상기 제2 임계 주파수보다 작을 때, 상기 스핀들 모터로의 전력을 감소시켜 상기 디스크 드라이브를 제2절전 모드의 동작으로 진입하게 하는 단계를 더 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.13. The method of claim 12, wherein a second access threshold frequency is calculated from the stored value of predetermined access frequencies, and when the read or write access frequency is less than the second threshold frequency, the power to the spindle motor is reduced so that the And causing the disk drive to enter into a second sleep mode of operation, wherein the disk drive operable in at least two power saving modes. 제13항에 있어서, 스핀들 모터로의 전력을 감소시키는 상기 단계는 상기 액튜에이터를 상기 파킹 위치로 이동시킴과 동시에 필수적으로 상기 스핀들 모터로의 전력을 감소시켜 디스크 드라이브를 제1모드로 먼저 진입하지 않고 제2절전 모드로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.14. The method of claim 13, wherein the step of reducing power to the spindle motor moves the actuator to the parking position while at the same time essentially reducing power to the spindle motor without first entering the disk drive into the first mode. And entering a second power saving mode. 2. A method for managing power usage in a disk drive operable in at least two power saving modes. 제12항에 있어서, 제1액세스 임계 주파수를 계산하는 상기 단계는 미리 결정된 액세스 주파수들의 세트에서 상기 최대 및 최소 액세스 주파수들로부터 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.13. The method of claim 12, wherein calculating the first access threshold frequency comprises calculating an access threshold frequency from the maximum and minimum access frequencies at a predetermined set of access frequencies. A method of managing power usage on a disk drive capable of operating in modes. 제15항에 있어서, 제1액세스 임계 주파수를 계산하는 상기 단계는 상기 최대 및 최소 액세스 주파수에 이득 계수를 곱하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.16. The method of claim 15, wherein calculating the first access threshold frequency comprises multiplying the maximum and minimum access frequencies by a gain factor. How to manage it. 제16항에 있어서, 상기 이득 계수를 조정하는 단계를 더 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.17. The method of claim 16, further comprising adjusting the gain factor. 제17항에 있어서, 상기 이득 계수를 조정하는 상기 단계는 상기 이득 계수를 디스크 드라이브 최대 절전효과를 나타내는 제1한도값과 디스크 드라이브의 최대 성능을 나타내는 제2한도값을 갖는 소정의 범위 내에서 선택가능한 값들을 갖는 성능 계수로서 변경하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.18. The method of claim 17, wherein adjusting the gain factor selects the gain factor within a predetermined range having a first limit value representing a disk drive hibernation effect and a second limit value representing a maximum performance of the disk drive. Changing as a coefficient of performance with possible values. A method of managing power usage in a disk drive operable in at least two power saving modes. 데이터 트랙들이 있는 기록 디스크와, 디스크를 회전시키기 위한 스핀들 모터와, 상기 디스크로 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드와, 데이터를 판독 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러와, 상기 헤드를 서로 다른 트랙들로 이동시켜 데이터가 없는 파킹 위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터와, 데이터의 판독/기록 동안 데이터 트랙상에 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부를 가지며, 절전 모드로의 진입 및 종료 동작이 가능한 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서, 상기 방법은, 이전에 판독 혹은 기록 액세스들을 저장하는 단계와; 상기 저장된 이전 액세스들로부터 가장 최근의 액세스 후에 이전에 저장된 액세스들에 따라 변경되는 절전 모드로의 진입 시간을 계산하는 단계와; 디스크 드라이브에 최대 절전효과를 나타내는 제1한도값과 디스크 드라이브의 최대 성능을 나타내는 제2한도값들의 범위 내의 소정값을 갖는 성능 계수를 선택하는 단계와; 모드 진입 시간 계산을 변경하기 위해 상기 선택된 성능 계수를 사용하여 상기 디스크 드라이브의 모드 진입 작용이 상기 선택된 성능 계수로서 조정되는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.A recording disk with data tracks, a spindle motor for rotating the disk, a head for writing data to or reading data from the disk, a data controller for accessing the head for reading and writing data; An actuator connected to the head to move the head to different tracks and to a data-free parking position, and a servo control electronics connected to the actuator to hold the head on the data track during reading / writing of data. CLAIMS What is claimed is: 1. A method for managing power usage in a data recording disk drive having an entry and exit operation in a power saving mode, the method comprising: storing previously read or write accesses; Calculating an entry time into a power saving mode that is changed according to previously stored accesses after the most recent access from the stored previous accesses; Selecting a performance factor having a predetermined value within a range of a first limit value representing a maximum power saving effect on the disk drive and a second limit value representing the maximum performance of the disk drive; Adjusting the mode entry action of the disk drive as the selected performance factor using the selected performance factor to change a mode entry time calculation. . 제19항에 있어서, 저장하는 상기 단계는 이전에 결정된 액세스 주파수들의 값들을 저장하는 단계를 포함하고, 절전 모드로의 진입 시간을 계산하는 상기 단계는 이전에 결정된 액세스 주파수들의 값들로부터 액세스 임계 주파수를 계산하여 상기 판독 혹은 기록 액세스 주파수가 상기 임계 주파수보다 작을 때 상기 절전 모드로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, wherein storing comprises storing values of previously determined access frequencies, and wherein calculating the entry time to power save mode comprises access threshold frequencies from values of previously determined access frequencies. Calculating and entering the power saving mode when the read or write access frequency is less than the threshold frequency. 제20항에 있어서, 상기 액세스 주파수를 계산하는 상기 단계는 이득 계수를 사용하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.21. The method of claim 20, wherein calculating the access frequency comprises using a gain factor. 제21항에 있어서, 상기 모드 진입 시간 계산을 변경하기 위해 선택된 성능 계수를 사용하는 상기 단계는 상기 이득 계수에 상기 선택된 성능 계수를 곱함으로써 상기 이득 계수를 조정하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.22. The data of claim 21 wherein the step of using the selected performance factor to modify the mode entry time calculation comprises adjusting the gain factor by multiplying the gain factor by the selected performance factor. How to manage power usage on a recording disk drive. 제19항에 있어서, 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 서보 제어 전자회로부로의 전력은 감소되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, wherein upon entering the power saving mode the actuator is moved to the parking position and power to the servo control electronics is reduced. 제19항에 있어서, 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 스핀들 모터는 정지되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, wherein upon entering the power saving mode the actuator is moved to the parking position and the spindle motor is stopped. 제19항에 있어서, 상기 디스크 드라이브는 상기 제1절전 모드보다 작은 전력 소비를 갖는 제2절전 모드로 진입 및 종료할 수 있으며, 상기 저장된 이전의 액세스들로부터 상기 이전에 저장된 액세스에 따라 가변될 수 있고 상기 제1절전 모드로 진입하는 상기 제1절전 모드 진입 시간과 다른 제2절전모드로의 진입 시간을 계산하는 단계와; 제2모드 진입 시간 계산을 변경하기 위해 선택된 상기 성능 계수를 사용하여 상기 디스크 드라이브의 상기 제2모드 진입 작용이 상기 선택된 성능 계수로서 조정되는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The disk drive of claim 19, wherein the disk drive may enter and exit a second power saving mode with less power consumption than the first power saving mode, and may vary according to the previously stored accesses from the stored previous accesses. Calculating an entry time into a second power saving mode that is different from the first power saving mode entering time entering the first power saving mode; In which the second mode entry action of the disc drive is adjusted as the selected performance factor using the selected performance factor to change a second mode entry time calculation. How to manage your power usage. 제25항에 있어서, 상기 디스크 드라이브가 상기 제1절전 모드로 먼저 진입하지 않고서 상기 제2절전 모드로 진입하게 하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.26. The method of claim 25, further comprising causing the disk drive to enter the second sleep mode without first entering the first sleep mode. . 제19항에 있어서, 상기 저장된 판독 혹은 기록 액세스들이 주기적 패턴을 나타내는지를 판단하여 다음 주기적 액세스에 앞서 상기 절전 모드를 종료하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, further comprising determining whether the stored read or write accesses exhibit a periodic pattern to terminate the power saving mode prior to the next periodic access. How to. 데이터 트랙들이 있는 기록 디스크와, 상기 디스크를 회전시키기 위한 스핀들 모터와, 상기 디스크에 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드와, 데이터를 판독 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러와, 상기 헤드를 서로 다른 트랙들로 이동시켜 데이터가 없는 파킹 위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터와, 데이터의 판독/기록 동안 데이터 트랙상에 상기 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부를 포함하며, 절전 모드로의 진입 및 종료 동작이 가능한 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서, 상기 방법은, 판독 혹은 기록 액세스들의 주파수를 결정하는 단계와; 이전의 결정된 액세스 주파수들의 값을 저장하는 단계와; 상기 이전의 결정된 액세스 주파수들이 저장된 값으로부터 액세스 임계 주파수를 계산하는 단계와; 상기 판독 혹은 기록 액세스 주파수가 상기 임계 주파수보다 작을 때 상기 절전 모드의 동작으로 진입하는 단계와; 상기 절전 모드 진입 및 종료 시간들을 검출하는 단계와; 만일 검출된 절전 모드 진입 및 종료 시간으로부터의 절전 모드 지속 기간이 대개 절전 모드를 종료하기 위해 필요한 디스크 드라이브 에너지와 똑같은 디스크 드라이브 에너지 절약을 위해 필요한 절전 모드 지속 기간인 기설정된 에너지의 브레이크-이븐 시간보다 적다면 에너지 페널티를 계산하는 단계와; 상기 계산된 에너지 페널티들을 누적하는 단계와; 상기 누적 에너지 페널티들이 기설정된 트립 레벨을 초과할 때 액세스 임계 주파수를 변경하여 상기 디스크 드라이브의 상기 절전 모드로의 진입 동작이 에너지 페널티들의 이력으로부터 동적으로 조정되는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.A recording disk with data tracks, a spindle motor for rotating the disk, a head for writing data to or reading data from the disk, and a data controller for accessing the head for reading and writing data. An actuator connected to the head to move the head to different tracks and to a dataless parking position, and a servo control connected to the actuator to hold the head on a data track during reading / writing of data. CLAIMS 1. A method for managing power usage in a data recording disk drive comprising an electronic circuit portion and capable of entering and exiting a power saving mode, the method comprising: determining a frequency of read or write accesses; Storing the value of the previously determined access frequencies; Calculating an access threshold frequency from the value at which the previously determined access frequencies are stored; Entering the power saving mode when the read or write access frequency is less than the threshold frequency; Detecting the power saving mode entry and exit times; If the sleep-time duration from the detected sleep-entry and end-times is usually greater than the break-even time of the preset energy, which is the sleep-time duration required to save disk drive energy, the same as the disk drive energy required to exit sleep mode. Calculating an energy penalty if less; Accumulating the calculated energy penalties; Changing the access threshold frequency when the cumulative energy penalties exceed a preset trip level such that the entry of the disk drive to the power saving mode is dynamically adjusted from a history of energy penalties. To manage power usage on disk drives for Windows. 제28항에 있어서, 상기 판독 및 기록 액세스들의 시간들을 검출하는 단계와; 만일 절전 모드 진입없이 연속적으로 검출된 액세스 시간들 사이의 시간 간격이 상기 에너지 브레이크-이븐 시간보다 크다면, 기회 상실 페널티를 계산하는 단계와; 상기 계산된 기회 상실 페널티들을 누적하는 단계와, 상기 누적 기회 상실 페널티들이 기설정된 트립 레벨을 초과할 때 상기 액세스 임계 주파수를 변경하여 상기 디스크 드라이브의 상기 절전 모드로의 진입 동작이 기회 상실 페널티들의 이력으로부터 동적으로 조정되는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, further comprising: detecting times of said read and write accesses; If the time interval between successively detected access times without entering power saving mode is greater than the energy break-even time, calculating an opportunity loss penalty; Accumulating the calculated lost opportunity penalties, and changing the access threshold frequency when the cumulative lost opportunity penalties exceed a predetermined trip level so that the entry of the disk drive into the power saving mode is a history of lost opportunity penalties. The method further comprises dynamically adjusting from the method of managing power usage in a disk drive for data recording. 제28항에 있어서, 액세스 임계 주파수를 계산하는 상기 단계는 저장된 액세스 주파수들의 세트에서 최대 및 최소 액세스 주파수들로부터 이득 계수를 사용하여 상기 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The data record of claim 28, wherein calculating the access threshold frequency comprises calculating the access threshold frequency using gain coefficients from the maximum and minimum access frequencies in a set of stored access frequencies. To manage power usage on disk drives for Windows. 제28항에 있어서, 액세스 임계 주파수를 계산하는 상기 단계는 이득 계수를 조정하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, wherein calculating the access threshold frequency comprises adjusting a gain factor. 제28항에 있어서, 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 상기 서보 제어 전자회로부로의 전력은 감소되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, wherein upon entering the power saving mode the actuator is moved to the parking position and power to the servo control electronics is reduced. 제28항에 있어서, 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 상기 스핀들 모터는 정지되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, wherein upon entering the power saving mode the actuator is moved to the parking position and the spindle motor is stopped. 제28항에 있어서, 상기 액세스들이 주기적 패턴인지를 판단하여, 그에 따라 다음 주기적 액세스에 앞서 상기 절전 모드를 종료하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, further comprising determining whether the accesses are a periodic pattern and thereby exiting the power saving mode prior to the next periodic access. .
KR1019960026633A 1995-06-30 1996-07-01 Disk drive for portable computer with adaptive demand-driven power management KR100211789B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP08/497,099 1995-06-30
JP49709995 1995-06-30
JP08/532,956 1995-09-22
JP53295695 1995-09-22

Publications (2)

Publication Number Publication Date
KR980011219A KR980011219A (en) 1998-04-30
KR100211789B1 true KR100211789B1 (en) 1999-08-02

Family

ID=66242681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960026633A KR100211789B1 (en) 1995-06-30 1996-07-01 Disk drive for portable computer with adaptive demand-driven power management

Country Status (1)

Country Link
KR (1) KR100211789B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210064909A (en) 2019-11-26 2021-06-03 삼성전자주식회사 Implant system including wake-up device and operating method thereof

Also Published As

Publication number Publication date
KR980011219A (en) 1998-04-30

Similar Documents

Publication Publication Date Title
US5682273A (en) Disk drive for portable computer with adaptive demand-driven power management
US5954820A (en) Portable computer with adaptive demand-driven power management
JP3819166B2 (en) Energy consumption reduction method
US6608729B1 (en) Intelligent power management of disc drives
JP2557202B2 (en) Power consumption management method and apparatus
JP3386951B2 (en) Disk drive power management system and method
US6892313B1 (en) Method for predictive power management for operating a disk drive in a mobile device to optimize power usage
US8078901B1 (en) Method for increasing a processor operating frequency when other subsystem demands are low
US5481733A (en) Method for managing the power distributed to a disk drive in a laptop computer
EP1130590B1 (en) High reliability storage drive and data write method
US7340616B2 (en) Power management of storage units in a storage array
US5691948A (en) Memory apparatus
US7543108B2 (en) Storage system and storage control method achieving both power saving and good performance
US20040015731A1 (en) Intelligent data management fo hard disk drive
US6735540B2 (en) Sigma-delta ramp loading calibration
JP2001331243A (en) Information processor, power saving control method and recording medium having power saving control program stored thereon
WO2005055226A1 (en) Power saving method and system
US8797675B2 (en) Adaptive seek latency
KR100211789B1 (en) Disk drive for portable computer with adaptive demand-driven power management
CN1128422C (en) Disk drive for portable computer with adaptive demand-driven power management
JPH04316115A (en) Data processor
JPH06267175A (en) Storage device and method for controlling the same
Gurumurthi et al. Dynamic speed control for server class disks

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: 20090504

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee