KR980011219A - Disk drives for portable computers with adaptive demand-based power management - Google Patents

Disk drives for portable computers with adaptive demand-based power management Download PDF

Info

Publication number
KR980011219A
KR980011219A KR1019960026633A KR19960026633A KR980011219A KR 980011219 A KR980011219 A KR 980011219A KR 1019960026633 A KR1019960026633 A KR 1019960026633A KR 19960026633 A KR19960026633 A KR 19960026633A KR 980011219 A KR980011219 A KR 980011219A
Authority
KR
South Korea
Prior art keywords
access
frequency
power
disk drive
mode
Prior art date
Application number
KR1019960026633A
Other languages
Korean (ko)
Other versions
KR100211789B1 (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 modes of power saving operation. The power save modes are entered after the time calculated after the previous data read or write command has elapsed. The time to enter sleep mode is calculated based on the real-time workload of the computer user, and thus continues to change during operation of the disk drive. The disk drive detects the user's current workload by calculating the frequency of disk drive accesses and based on the history of this workload, the disk drive determines which of the plurality of power save modes is appropriate and when to enter the power save mode .

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

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

Description

적응형 요구-기반의 전력 관리를 하는 휴대용 컴퓨터를 위한 디스크 드라이브Disk drives for portable computers with adaptive demand-based power management

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

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

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

제4도는 디스크 드라이브가 절전 모드에 진입할 ?? 액세스 주파수를 계산하는 과정 및 액세스 주파수를 결정하기 위해 임계 주파수와 비교하는 과정을 도시한 흐름도.Figure 4 shows the disk drive entering sleep mode. A process for calculating an access frequency and a process for comparing the frequency with a threshold frequency to determine an access frequency.

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

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

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

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

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

제10도는 절전 모드가 종료될 때 에너지/응답 페널티 및 기회 상실 페널티를 계산하는 과정을 나타낸 흐름도.10 is a flow diagram illustrating a process for calculating an energy / response penalty and an opportunity loss penalty at the end of a power save mode;

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

* 도면의 주요부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

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

3:프리엠프/기록 드라이버 4:데이터 기록 채널3: pre-amp / write driver 4: data write channel

5:스핀들 제어 전자회로부 6:서보 제어 전자회로부5: Spindle control electronic circuit part 6: Servo control electronic circuit part

7:디스크 컨트롤러 전자회로부 9:마이크로프로세서7: disk controller electronic circuit part 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 part 20: power source

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

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

40:디스크 드라이브 41:컴퓨터40: disk drive 41: computer

70, 71:버스70, 71: bus

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

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

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

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

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

특정 사용자 작업 부하동안 고정 시간에 대한 최적 시간이 일정하지 않을 가눙성이 많다. 더욱이 작업 부하는 사용자가 깨닫지 못한 상태에서 변화될 수 있는데 이는 사용자가 실행하는 응용 소프트웨어의 작용에 기인하기 때문이다.The optimal time for a fixed time during a particular user workload may not be constant. Moreover, the workload can be changed without the user realizing it, because it is caused by the application software running by the user.

사실 사용자는 고정 모드 진입 시간 사이에서가 아니라 에너지 소비와 컴퓨터 성능 사이에서 선택하고 싶어한다. 사용자는 에너지나 혹은 성능 목표를 달성 하는데 있어서 단지 추측으로만 고정 모드 진입 시간을 선택한다. 디스크 드라이브가 사용자로부터 에너지와 성능 목표를 입력받는 것은 분명히 바람직한 일이다. 이러한 목표들을 갖고서 디스크 드라이브는 이 목표들을 만족시키기 위한 적절한 방법이라면 어떠한 것이라도 취할 수 있다. 또한 이 점은 디스크 드라이브로 하여금 더 많은 절전 모드들을 사용할 수 있도록 한다. 이는 사용자가 각모드 진입에 대한 고정 시간을 더 이상 선택하지 않는다면 사용자는 드라이브내에서 동작하는 특정한 절전 모드들을 알 필요가 없기 때문이다.In fact, users want to choose between energy consumption and computer performance, not between fixed mode entry times. The user chooses a fixed mode entry time only to speculate in achieving energy or performance goals. Obviously, the disk drive should receive energy and performance goals from the user. With these goals, the disk drive can take any 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 fixed time for each mode entry.

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

따라서 본 발며의 목적은 디스크 드라이브의 이전의 엑세스 이력(past access history)으로부터 이후의 사용자의 요구를 예측하여 절전 모드의 진입 및 종료 시간을 결정하는 전력 관리를 수행하는 디스크 드라이브를 제공함에 있다. 이러한 디스크 드라이브는 사용자가 절전 모드의 진입 및 종료에 관련되어 어느 정도의 성능 및 에너지 소비 비용이 드는지를 알고 있지 않으므로 현재의 사용자-선택의 미리 결정되었거나 모드-진입 시간 혹은 고정 모드-진입 시간면에서 장점을 갖는다. 디스크 드라이브는 절전 모드에 관련된 에너지 브레이크-이븐 시간(energy break-even time) 및 복귀 시간(recovery time)에 대한 정보를 갖고 있다. 에너지 브레이크-이븐 시간은 절전 모드로부터 복귀하는 동안 소비되는 여분 에너지(extra energy)가 절전 모드에 있는 동안 감소되는 에너지 소비와 균형잡히도록 디스크 드라이브를 특정의 절전 모드에 유지시키기 위해 필요한 시간이다. 복귀 시간은 디스크 드라이브가 절전 모드로부터 활성 상태(active state)로 되돌아 가는데 걸리는 시간이다. 디스크 드라이브는 액세스 형태의 궤적 즉, 데이터를 판독/기록하거나 또는 액튜에이터를 움직이는 각종 요구들의 이력을 유지한다. 이로 인해 디스크 드라이브는 현재 사용자의 작업부하를 검출하고, 다수의 절전 모드중 어느 것이 적절한 것인지와 언제 절전 모드에 들어갈 것인지를 결정한다.Accordingly, an object of the present invention is to provide a disk drive that performs power management for predicting subsequent user requests from a past access history of a disk drive to determine the entry and exit time of the power save mode. Such a disk drive does not know how much performance and energy consumption costs the user is involved in entering and exiting the power save mode, so that the current user-selected pre-determined or mode-entry time or fixed mode- . The disk drive has information about the energy break-even time and recovery time associated with the power save mode. Energy Brakes - The time it takes to keep a disk drive in a certain power-saving mode so that extra energy consumed while returning from power-saving mode is balanced with reduced energy consumption while in power-save mode. The return time is the time it takes the disk drive to return from the sleep mode to the active state. The disk drive keeps track of the trajectory of the access type, i.e., the history of various requests to read / write data or to move the actuator. This causes the disk drive to detect the current user's workload and determine which of the plurality of power saving modes is appropriate and when to enter the power save mode.

바람직한 실시예에 있어서, 각 디스크 드라이브의 액세스가 검출되면, 이는 현재 액세스 주파수(access frequency)를 계산하는 데 사용된다. 현재 액세스 주파수는 이전에 계산된 것과 비교되고, 계속하여 임계 주파수(threshold frequency)를 갱신하게 된다. 임계 주파수는 균일 형태(uniform) 또는 산발적인(sporadi c) 액세스 형태를 나타내고, 조정 가능한 이득 게수(gain factors)를 포함하는 공식으로부터 계산된다. 디스크 드라이브가 동작하는 동안 적절한 절전 모드는 현재 액세스 주파수가 임계 주파수보다 작을 때 진입한다. 검출된 액세스 형태에 기반을 둔 중간의 절전 모드는 생략될 수 있다. 또한 디스크 드라이브는 작업부하가 변화되는 상황에 능동적으로 적응할 수 있고, 그로 인해 성능을 저하시킴 없이 많은 에너지를 절약하게 된다. 이는 시스템의 실제 성능에 관련된 이득 계수들을 조정함으로써 달성된다. 또한 디스크 드라이브는 사용자의 액세스를 기다려야 할 필요없이 절전 모드를 종료하는 시점을 결정한다.In a preferred embodiment, when access to each disk drive is detected, it is used to calculate the current access frequency. The current access frequency is compared to that previously calculated and continues to update the threshold frequency. The threshold frequency represents a uniform or sporadic access form and is calculated from a formula that includes adjustable gain factors. An appropriate power saving mode while the disk drive is running enters 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 actively adapt to changing workload conditions, thereby saving a lot of energy without compromising performance. This is achieved by adjusting the gain factors associated with 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, a number of power saving modes in which a user does not need to memorize a trajectory of a situation change are disclosed. The power saving modes can also be suitably applied to different disk drives without having to follow certain standards for setting the number of fixed time or power saving modes. New user-selected parameters such as ON / OFF and performance and energy goals can be used in place of the fixed mode-entry time. These parameters adjust the critical frequency by adjusting the gain factors. This changes the formula used to determine when to enter sleep mode.

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

제1도는 본 발명의 디스크 드라이브를 위한 전력 관리(power management)에서 사용되는 각종 구성 요소들을 나타낸 블록도이다. 일반적으로 상기 디스크 드라이브(40)는 컴퓨터(41)와 같은 랩탑 컴퓨터의 하우징내에 포함되어 있는 하드디스크 드라이브이다. 디스크 드라이브(40)는 통상의 디스크(34)와 같은 하나 혹은 그 이상의 디스크들을 포함하고 있으며, 디스크들은 스핀들 모터(32)에 부착되어 회전된다. 데이터 헤드(33)는 일반적으로 로터리 보이스 코일 모터(a rotary 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 locations)로 불려진다.FIG. 1 is a block diagram illustrating various components used in power management for a disk drive of the present invention. In general, the disk drive 40 is a hard disk drive contained within a housing of a laptop computer, such as the computer 41. The disk drive 40 includes one or more disks, such as a conventional disk 34, and the disks 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 rotary voice coil motor (VCM) 30. The spindle motor 32 is driven by the spindle driver 1 and the spindle control electronics 5. The servo control electronics section 6 is used to locate the head 33 on each data track of the disk 33 and is connected to the VCM driver 2 which supplies current to the VCM 30. [ 1 also shows a crash stop 37 for the actuator 31 and a load / unload ramp (L / UL) 38. The load / If the disk drive 40 is of the CSS type (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 The head 33 is driven to the crash stop 37 and then the head 33 stops on a landing zone where there is no data close to the inside diameter (ID) of the disk. When the disk drive 40 is of the L / UL type, the actuator 31 is driven to suspend the head 33 when the spindle motor is temporarily stopped, and the suspension 33 ). The ID landing area in the CSS disk drive and the ramp in the L / UL disk drive are often referred to as head-parking locations.

데이터 헤드(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 a magnetoresistive (MR) Quot; read head "). The data head 33 is connected to the preamplifier / write driver 3 and the data write channel 4 and to the disk controller electronic circuit 7. The data recording channel 4 can be any form such as a peak detector or a partial-response maximum likelihood (PRML), and includes functions such as data detection, encoding and decoding. The disk controller 7 connected to the microprocessor 9 deals with the process of reading and writing data and controls the communication with the computer 41 and manages the buffer memory 10 and controls the servo control electronics 6, And issues a command to the control electronic circuit section 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. The microprocessor memory 8 is used to store code and data for the microprocessor 9. [ The buffer memory is used to store data transferred from the computer 41 to the disk drive 40 and is generally a cache memory. The interface module 11 controls the transmission of information from the computer interface controller 13 onto the interface. The integrated drive electronics (IDE) interface and the small computer system interface (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 the power management of the disk drive 40 and receives power from the power source 20 through the bus 71. [ In Figure 1, the power connections of all the components are not shown, and each of these elements receives power directly through the bus 71 or through other components. The power control module 12 may be physically contained as a logic circuit in the controller 7 or stored in the memory 8 in the form of microcode executed by the microprocessor 9. [ The power line from the power source 20 to each energy consuming element may be directly controlled by the output of the module 12 or the microprocessor 9 or may be controlled by turning the elements on, turn-on commands and commands to change the power state of each element.

제1도에 디스크 드라이브(40)의 각종 요소들간의 연결을 개략적으로 나타내고 있지만, 상기 기능들은 요소들을 다르게 배열하여서도 얻어질 수 있다. 예를 들어 마이크로프로세서 메모리(8)는 마이크로프로세서(9)내에 포함될 수도 있고 혹은 버퍼 메모리(10)와 결합될 수도 있다. 더욱이 디스크 드라이브내에 하나 이상의 마이크로프로세서를 갖는 것이 일반적인 바, 이들 다수의 마이크로 프로세서중 하나는 주로 인터페이스와 드라이브 관리 기능을 위해 사용되고 다른 하나는 서보 기능을 위해 사용된다. 이러한 경우에 서보 제어 전자회로부(6)는 별도의 분리된 서보 마이크로프로세서를 포함 할 수도 있다.Although the connection between various elements of the disk drive 40 is schematically shown in FIG. 1, the functions can also be obtained by arranging the elements differently. For example, the microprocessor memory 8 may be included in the microprocessor 9 or may be coupled to the buffer memory 10. Furthermore, it is common to have more than one microprocessor in a disk drive, one of which is used primarily for interface and drive management functions and the other for servo functions. In this case, the servo control electronic circuit section 6 may include a 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 input device, a peripheral device 18, a power source 20 and a control electronics 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 the portable device may be any other type of power source, such as an ac power supply, but is typically a rechargeable battery. The power supply 20 supplies power to the various elements in the computer 41 through the bus 70 and supplies power to the disk drive 40 through the other bus 71. The power source 20 also communicates with the control electronics 19. For example, a battery used in a portable computer includes an internal control electronic circuit for monitoring a battery condition, such as a discharge state.

대개 디스크 드라이브(40)는 계속하여 일정한 비율로 에너지를 소비하지는 않는다. 즉 VCM(30)으로 보내는 간헐적인 전류 펄스에 의해 헤드(33)를 단일데이터 트랙위에 유지시키는 것과 같이 트랙 추적(track following)을 할 때보다는 VCM(30)에 전류를 흐르게 하여 헤드(33)를 디스크(34)의 데이터 트랙들을 가로질러 이동하게 하는 것과 같은 탐색(seeking)을 할 때 더 많은 에너지가 소비된다. 또한 기록 동작 중에는 TFI헤드의 코일에 기록 전류가 흐름으로 인해 에너지가 추가로 소비된다. 이와 같은 디스크 드라이브 액세스들에 의해 활성(active) 전력 모드는 다음 두 가지 경우로 대별된다. 즉 탐색/판독/기록(seek/read/write) 전력 모드와 아이들(idle) 전력 모드이다. 탐색/판독/기록 전력 모드는 사용자 작업 부하라는 가정(assumption)에 근거하기 때문에 일반적으로 추정이다. 아이들 전력 모드는 데이터가 기록/판독되지 않아, 탐색이 일어나지 않을 ??의 정상적인 트랙 추적 동작이다. 활성 상태(active state)라는 용어는 탐색/독출/기록이거나 아이들 전력 모드 중 어느 하나에 있을때의 디스크 드라이브 상태를 나타내는데 사용된다.Usually, the disk drive 40 does not consume energy at a constant rate. The current is supplied to the VCM 30 rather than the track following such that the head 33 is kept on a single data track by an intermittent current pulse sent to the VCM 30, More energy is consumed when seeking such as moving across the data tracks of the disk 34. [ Further, during the write operation, additional energy is consumed due to the flow of write current to the coil of the TFI head. The active power mode by such disk drive accesses is divided into the following two cases. A seek / read / write power mode and an idle power mode. The seek / read / write power mode is generally estimated because it is based on assumptions of user workload. The idle power mode is a normal track-tracking operation in which no data is written / read and no seek will occur. The term active state is used to indicate the state of the disk drive when in either the 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 general power saving modes are referred to as " idle 2 "and" standby ". In the idle 2 mode, the actuator 31 is parked (i.e., moved to the crash stop 30 or unloaded onto the RAM 37), and the servo control electronics 6, the preamplifier 3, The containing write / read electronics is turned off. Thus, the idle 2 mode substantially reduces or eliminates the power supplied to the VCM driver 2, the servo control electronics section 6, the preamplifier 3, and the channel 4. In addition, in the idle 2 power save mode, since the servo operation and the write / read operation are not active, it is also possible to reduce the power supplied to the disk controller 7 and the microprocessor 9.

반면 스탠바이 모등에서 액튜애이터(31)는 파킹위치로 이동되고 스핀들 모터(32)는 턴-오프된다. 스탠바이 절전 모드는 아이들2 모드가 갖는 모든 절전 효과를 가지면서도 그에 더하여 스핀들 제어 전자회로부(5)와 스핀들 드라이버(1)로 공급되는 전력을 감소시킨다. 몇몇 실시예에 있어서 아이들2 모드와 스탠바이 모드 중 어느 하나에서 혹은 양쪽 모드에서 버퍼(10)가 턴-오프될 수도 있다. 또한 부가적인 절전 모드들도 가능하다. 예를 들어 슬립 모드(sleep mode)는 스탠바이 모드의 절전 특징을 포함하고 있고, 또한 인터페이스 컨트롤러(11)의 일부분과 컴퓨터 인터페이스 컨트롤러(13)으로부터의 슬립 회복 명령에 응답하는데 필요한 것에만 전력이 공급되도록 하고 거의 모든 나머지 전자회로부는 턴-오프 되도록 한다.On the other hand, 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 of the power saving effect of the idle 2 mode while reducing the power supplied to the spindle control electronic circuit portion 5 and the spindle driver 1. [ In some embodiments, the buffer 10 may be turned off in either or both of the idle 2 mode and the standby mode. Additional power saving modes are also possible. For example, the sleep mode includes power saving features in the standby mode, and also allows power to be supplied only to parts of the interface controller 11 and to those needed to respond to the sleep recovery command from the computer interface controller 13 And nearly all of the remaining electronic circuitry is turned off.

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

[테이블 1][Table 1]

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

TBE=PRec(TRec/PIdle)T BE = P Rec (T Rec / P Idle )

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

[테이블 2][Table 2]

본 발명에서는 어떤 전력 모드가 가장 적절한 것인지와 언제 그 모드에 진입할 것인가를 결정하기 위해 실제 사용자 작업 부하(actual user workload)가 사용된다. 따라서 절전 모드로 진입은 사용자-선택의 고정 시간에 의해 미리 결정 되기 보다는 사용자의 작업 부하의 요구에 따르는 것이 바람직하다.In the present invention, the actual user workload is used to determine which power mode is most appropriate and when to enter that mode. It is therefore desirable that the entry into the power save mode is in accordance with the demands of the user's workload rather than being predetermined by the fixed time of the 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 disk drives and what type of operation each element has. In the power save mode, access is defined as a task requiring a return from the power save mode. Assuming, for example, that the power save mode is idle 2, the disk 34 is rotating and the servo control electronics 6 and the VCM driver 2 are turned off, and the buffer 10 containing the disk cache In the active state, the disk drive access to move the actuator 31 to read / write data is counted as one access. The cache hit is not an access to this power save mode but it is not a definite other interface command such as status queries from the computer 41 because it does not require reading or writing to the disk 34. [ When designing simple, it is not necessary to consider the effect of cache hits when counting accesses. In this case, the read or write command received through the interface is counted as one access even if the data remains entirely in the cache. This assumption may reduce energy savings, but it can be cost effective because it reduces the complexity of designing power management technologies.

특정한 절전 모드, 예를 들어 스탠바이(디스크(34)의 회전 속도를 줄이는 것)에 진입하는 결정을 내릴 때는 최근의 액세스 패턴을 고려해야만 한다. 액세스 패턴은 상기 액세스를 구동하고 있는 소프트웨어 처리 과정에 대한 정보를 포함하고 있다. 액세스 패턴들은 주파수, 즉 디스크 드라이브 액세스가 발생하는 비율에 의해 특징지어질 수 있고, 주파수의 분포는 액세스 이력(the access history)으로부터 결정될 수 있다. 관찰된 액세스 주파수가 최근의 액세스 이력의 주파수 분포에 속하지 않는 때를 판단하는 것은 가능하다. 이러한 판단은 낮은 액세스 주파수가 최근의 액세스 패턴의 일부가 아닐 확률을 추정함으로써 통계적으로 이루어지고, 따라서 액세스 패턴 및 이것에 관련된 소프트웨어의 처리 과정이 중지된다는 것을 표시한다 이러한 판단을 하는 데에는 많은 결정 계수들이 관계한다. 본 발명에서는 이러한 계수들도 또한 적응력 전력 관리(adaptive power management)를 제공하도록 디스크 드라이브의 성능에 기반을 두고 동적으로 조정된다.When making a decision to enter a particular power saving mode, for example standby (reducing the rotational speed of the disk 34), the recent access pattern must be considered. The access pattern contains information about the software process that is driving the access. Access patterns can be characterized by frequency, i.e. the rate at which disk drive access occurs, and the distribution of frequency 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 low access frequency is not part of the recent access pattern, thus indicating that the processing of the access pattern and the software associated therewith is discontinued. It is related. 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 the periodic accesses from the access frequency and to enter and exit the power saving mode by predicting the start and end of the periodic accesses. As an example of periodic access, there is a case of automatic storage in which a document storage interval is specified in a word processing program. That is, the software user can use the automatic storage function of the word processing software to automatically record the file to the disc every 5 minutes. If you can exit sleep mode immediately before entering periodic access, you will improve performance because you do not know the response delay. Entering the power saving mode immediately after the termination of the periodic access can shorten the delay time and enter the power saving mode, so that the energy saving is increased.

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

균일 액세스인 경우에는 관찰된 액세스 주파수가 평균치에서 몇 배의 표준 편차를 뺀 값 이하가 되었다면,액세스 패턴은 종료된 것으로 간주되다. 이는 관찰된 액세스 주파수가 관찰된 액세스 패턴에 속하는확률을 선택하는 것과 동일하다. 이와 달리 최소의 관찰된 액세스 주파수의 몇 분의 일을 사용하여 액세스 패턴의 종료를 추정하는 것도 가능하다. 기본 원리는 액세스 패턴을 특징짓는 데 있어 최근의 액세스 주파수를 사용하여 이것으로부터 임계 주파수를 결정하는 것이다. 이에 따라 액세스 주파수가 이 임계 주파수를 초과할 때, 액세스 패턴이 중지할 가능성은 매우 높은 것으로 가정된다.In the case of uniform access, if the observed access frequency is less than or equal to a value obtained by subtracting several times the standard deviation from the average, the access pattern is regarded as completed. 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 termination of the access pattern using a fraction of the minimum observed access frequency. The basic principle is to use the latest access frequency to characterize the access pattern and determine the critical frequency from it. Thus, when the access frequency exceeds this critical frequency, the likelihood that the access pattern will stop is assumed to be 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 may be selected for each power saving mode. The number of accesses occurring within a time window is called the access density.

제2도는 액세스 밀도를 측정하는 과정을 상세히 나타낸 흐름도이다. 먼저 윈도우 타임이 종료되었는지를 결정하기 위해 단계403에서 타이머가 검사된다. 만일 윈도우가 아직 종료되지 않았다면 단계401에서 액세스가 발생되었는지를 확인하고, 발생되었으면 단계402에서 밀도 카운터(density counter)를 증가시킨다. 제2도는 모든 타임 윈도우가 다수의 가장 짧은 윈도우일 때의 작용(behavior)을 나타낸다. 이러한 경우에 있어서 단계402에서 모든 절전 모드에 대한 밀도들이 증가된다. 밀도 카운터의 초기화(reset)는 표시되지 않았지만 다음 윈도우에 대한 액세스가 시작되기에 앞서 현재 윈도우에 대한 밀도 값이 링 버퍼와 같은 다른 저장장치로 옮겨진 후 초기화된다. 소정 배수의 최소의 타임 윈도우에서 타임 윈도우들을 갖는 절전 모드에 있어서 밀도 카운트는 더 긴 윈도우의 끝부분에서만 초기화된다. 제2도는 폴링 루프 설계(polling loop design)의 작용을 예시하고 있다. 동등한 인터럽트-기반(interrupt-based)의 설계가 제2도로부터 쉽게 도출될 수 있을 것이다.FIG. 2 is a flow chart detailing the process of measuring the access density. The timer is first checked at step 403 to determine if the window time has expired. If the window has not yet been terminated, it is checked in step 401 whether an access has occurred, and if so, the density counter is increased in step 402. FIG. 2 shows the behavior when all the time windows are a plurality of the shortest windows. In this case, the densities for all power saving modes are increased at step 402. The reset of the density counter is not indicated, but the density value for the current window is initialized after being transferred to another storage device, such as a ring buffer, before access to the next window begins. The density count is initialized only at the end of the longer window in the power saving mode with time windows in the minimum time window of a predetermined multiple. FIG. 2 illustrates the operation of a polling loop design. An equivalent interrupt-based design may be easily derived from the second road.

제2도에 보여진 처리과정을 제1도의 전력 모듈(12)의 기능중 일부이며, 하드웨어상에서 및 또는 소프트웨어 상으로 구현될 수 있다. 제3도는 제2도의 과정을 구현하기 위해 적합한 하드웨어 구성을 나타낸다. 타이머(201)와 카운터(202) 및 링 버퍼(203)는 컨트롤러(7)의 일부로서 도시되어 있다. 링 버퍼(203)는 마이크로프로세서(9)에 의해 어드레싱된다. 제4∼6도의 과정도 마찬가지지만, 제2도에 도시된 과정의 각 단계들을 수행하기 위한 한 세트의 프로그램 명령어는 마이크로프로세서(9)에 의해 어드레싱되는 메모리(8)내에 마이크로코드로 저장되어 있다. 액세스 신호(220)는 디스크 컨트롤러(7)내의 밀도 카운터(202)로 입력된다. 예를 들면 신호(202)는 인터페이스(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 functions of the power module 12 of FIG. 1, and may be implemented on hardware and / or on software. FIG. 3 shows a suitable hardware configuration for implementing the process of FIG. 2. Timer 201 and counter 202 and ring buffer 203 are shown as part of controller 7. The ring buffer 203 is addressed by the microprocessor 9. The same is true for steps 4 to 6, but a set of program instructions for carrying out 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 counter 202 in the disk controller 7. The signal 202 may be sent to the controller 7 at the same time when it responds to a read request from the interface 11 and the interface controller 13 or when the control 7 transfers the read command to the channel 4. [ Lt; / RTI > 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. Timer 201 continues to operate to output 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 store the write pointer value . The signal 221 then initializes the counter 202. The density value is read out from the ring buffer 203 by the microprocessor 9. The microprocessor 9 transmits clear 223 and read 225 signals to read the buffer 203 and receives output signals 224 that represent the density value. The microprocessor 9 uses the density values to issue commands to change their power state in each component of the disk drive while executing the microcode stored in the memory 8. [ Here, changing the power state means entering or exiting an appropriate power saving mode.

일반적으로 절전 모드에 대한 타임 윈도우는 양호한 응답을 얻을 수 있도록 하기 위해 디스크 드라브가 상기 절전 모드에 적절히 대응할 수 있는 액세스 주파수의 범위가 가능하도록 선택된다. 여기서 관심있는 주파수들은 그 주기가 절전 모드의 대기 시간(latency) 및 에너지 브레이크-이븐 시간과 비슷한 값을 가지는 경우이다 .이에 따라 에너지 브레이크-이븐 시간에 가까운 값을 갖는 타임 윈도우가 적절하게 되며, 타임 윈도우 값은 디스크 드라이브의 작용을 검사함으로써 혹은 시뮬레이션(simulation)을 통해서 더 최적화될 수 있다. 성능 목표와 같은 다른 계수들도 타임 윈도우를 선택할 때에 고려되어야 한다. 상기 테이블1의 디스크 드라이브의 일 예에서 타임 윈도우는 아이들2에 대해선 400ms, 그리고 스탠바이에 대해선 1.6s를 선택하는 것이 양호하다.In general, the time window for the power saving mode is selected to enable a range of access frequencies that the disk drive can appropriately respond to the power saving mode in order to obtain a good response. Here, the frequencies of interest are those in which the period has a value similar to the latency and the energy break-even time of the power saving mode. Accordingly, a time window having a value close to the energy break-even time becomes appropriate, The window value can be further optimized by examining the operation of the disk drive or by simulation. Other coefficients, such as performance goals, should also be considered when selecting the time window. In the example of the disk drive of Table 1, 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 that occur in a particular time window. The density value is then converted to a frequency value by a scale, a scaling method. The dynamic range in frequency is expanded by implementing it so that the density at "0" is not equal to the frequency at "0 ". When the density is "0 ", the frequency is calculated from the number of consecutive" 0 "densities. One of these conversion equations is as follows.

주파수=밀도*스케일 ; 밀도 〉 0 (2)Frequency = density * scale; Density> 0 (2)

주파수=스케일/("0" 밀도개수+1) ; 밀도 〈= 0 (3)Frequency = scale / ("0" density number +1); Density <= 0 (3)

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

아래의 테이블3은 상기의 공식(2)와 (3) 및 400ms의 타임 윈도우 즉 아이들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 the 400 ms time window, i.e., idle 2 mode. The first line represents the start time for each time window, the second line represents an example of the access density value for each window, and the third line represents the access frequency derived from the access density in the second line. For example, accesses 19 occur in a time window between 0.4 s and 0.8 s, and the scaling factor has a value of 256, which corresponds to frequency 4864. Also, since there is no access in the time window between 1.2s and 2.0s, two "0" density values are obtained. These three density values are converted to a single frequency by the formula 256/3 = 85.

[테이블 3][Table 3]

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

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

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

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

단계308에서 현재 모두거 이전모드라면, 단계302로 되돌아가 다음 타임 윈도우에 대해 밀도가 측정된다. 이 시점에서 활성화된 절전 모드들중 어느 것을 검사하는 시간인지를 결정해야 한다. 단계308에서 현재 모드가 이전모드가 아니라면, 단계309에서 절전효과가 감소되는 순서대로 다음의 낮은 모드(mode-1)를 선택한다. 이후 단계304를 다시 수행한다. 단계304의 검사에서 이전모드 = 1인 상태는 단계302를 종료한 상태와 같기 때문에 항상 "참(true)"이라는 점에 주의한다. 단계304에서 검사가 "참"이라면, 새로운 밀도 값이 모드에 대해 사용가능해지고, 단계305로 넘어간다. 단계305에서는 단계302에서 측정된 액세스 밀도가 변환 공식 (2)와 (3)을 사용하여 주판수 freq로 변환된다. 단계306에서 단계305에서 계산된 액세스 주파수 freq는 현재 모드를 위한 임계 주파수, tf[모드]와 비교된다. 여기서 액세스 주파수가 임계 주파수보다 크다면, 단계307로 넘어간다. 단계307에서는 현재 모드를 위한 임게 주파수 tf[모드]가 얻어진다. 임계 주파수는 상태에 따라 변할 수도 있고 변하지 않을 수도 있다. 임계 주파수를 조정하는 상세 사항은 추후 제5도를 참조하여 후술한다. 그 다음 단계308에서는 위에서 설명된 바와 같이 다음의 모드에 대해 계속하여 프로세스를 진행한다.If in step 308 it is the current all-pass mode, then return to step 302 and the density is measured for the next time window. At this point, it is necessary to determine which of the active power saving modes is to be checked. If the current mode is not the previous mode in step 308, the next lower mode (mode-1) is selected in the order in which the power saving effect is reduced in step 309. Then, step 304 is performed again. Note that in the check of step 304, the state of the previous mode = 1 is always "true" because it is the same as the state of step 302 is terminated. If the check in step 304 is "TRUE ", then 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 abacus freq using conversion equations (2) and (3). In step 306, the access frequency freq calculated in step 305 is compared with a threshold frequency, tf [mode], for the current mode. If the access frequency is larger than the threshold frequency, the procedure goes to step 307. In step 307, a finite frequency tf [mode] for the current mode is obtained. The threshold frequency may or may not vary depending on the condition. The details of adjusting the critical frequency will be described later with reference to FIG. 5. Then, at 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 critical frequency in step 306, the process proceeds to step 310, and the current power saving mode is input to the mode. This means that the microprocessor 9 sends a signal to the appropriate element of the disk drive to reduce power. If the current mode is the Max mode in step 311, there is no power saving mode to be performed, so the process proceeds to step 313, and the flow of this flowchart is stopped. However, if there is still a power save mode to be checked, the process goes to step 312 to update the previous mode to [mode + 1]. This is to reflect that all power saving modes that are less than or equal to the input mode are no longer considered. Thereafter, the process returns to step 302 to perform the subsequent step.

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

제5도는 절전 모드에 대한 임계 주파수를 계산하고 조정하는 바람직한 실시예의 상세사항을 나타내고 있는 흐름도이다. 가장 최근의 액세스 주파수는 마이크로프로세서(9)에 의해 어드레싱된 링 버퍼(미도시)에 저장된다. 상기 버퍼는 각 절전 모드마다 서로 다를 수 있다. 링 버퍼는 주파수 측정값이 쌓여지는 한 세트의 레지스터들, 또는 메모리 위치들이다. 링 버퍼는 한 세트에 대해 여러개의 레지스터들 혹은 메모리 위치들에 대응하는 여러 개의 주파수를 보유하고 있다. 몇 개의 주파수가 로드가 되는 경우, 추가적인 주파수 값을 더하는 것(adding)은 가장 오래된(oldest) 값을 잃어버리게 하며, 이는 최근의 액세스 이력에 대해 슬라이딩 범위(sliding view)를 주는 효과를 제공한다.5 is a flow chart showing the details of a preferred embodiment for calculating and adjusting the critical frequency for the power save mode. The most recent access frequency is stored in a ring buffer (not shown) addressed by the microprocessor 9. The buffers may be different for each power saving mode. A ring buffer is a set of registers, or memory locations, in which frequency measurements are accumulated. The ring buffer holds several frequencies corresponding to several registers or memory locations for a set. When several frequencies are loaded, the addition of additional frequency values causes the oldest value to be lost, which provides the effect of giving a sliding view over 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 whether there are sufficient values in the ring buffer to calculate the threshold frequency for the current power save mode. The minimum number of frequency values is typically two. The higher the number, the higher the statistical accuracy, but the values must be chosen before calculating the critical frequency. If the number of values in the ring buffer is not sufficient, go to step 503. In step 503, it is checked whether the current frequency freq is larger than the scale / 2. Here, the scale is defined in the above-mentioned formulas (2) and (3). If the result of the check is true, the process proceeds to step 504 where the current frequency value is input to the ring buffer. If 'false', the number of consecutive time windows with a density of "0" 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 to the ring buffer, so the number of values in the ring buffer does not change. Step 510 is entered 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으로 넘어가게 되는데 이후는 상술한 바대로 프로세스가 진행된다.If it is determined at step 501 that 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 increases the speed of 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', then the disk drive access frequency is greater than the active threshold, so no further computation of the critical frequency is required. Thereafter, the process proceeds to step 505, and if [mode] is cleared, the process proceeds to step 503, and then the process proceeds as described above.

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

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

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

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

평균값 주파수=(최대 주파수+최소 주파수)/2 (4)Average frequency = (maximum frequency + minimum frequency) / 2 (4)

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

표준 편차=(최대 주파수-최소 주파수)/4 (5)Standard deviation = (maximum frequency - minimum frequency) / 4 (5)

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

산발적인 액세스 패턴에서는, 최소 주파수의 몇 분의 1만으로도 충분하다. 아래에 보인 공식(6)∼(8)이 단계507에서 사용되는 계산식이다.In sporadic access patterns, only a fraction of the minimum frequency is sufficient. Formulas (6) to (8) shown below are the formulas used in step 507.

t1[모드]=(최대 주파수+최소 주파수)/2-g1[모드]*(최대 주파수*최소 주파수) (6)t1 [mode] = (maximum frequency + minimum frequency) / 2-g1 [mode] * (maximum frequency * minimum frequency)

t2[모드]=최소주파수/g2[모드] (7)t2 [mode] = minimum frequency / g2 [mode] (7)

tf[모드]=max(t1, t2) (8)tf [mode] = max (t1, t2) (8)

상기 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 critical 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. These gain factors have different values depending on each mode. For the disk drives of Table 1, the values of g1 = 1 and g2 = 4 are suitable for both idle 2 and standby modes. As can be seen from formulas (6) to (8), increasing the value of the gain factor has the effect of reducing the critical frequency, and decreasing the value of the gain factor has the effect of increasing the critical frequency. Therefore, the entering action of the power save mode is appropriately harmonized by selecting and adjusting these gain factors. These gain factors can be selected and adjusted by the user through appropriate system or application software.

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

링 버퍼는 제3도에 보여진 바와 같이 주파수 대신에 밀도를 사용하여 구성할 수 있다. 이 경우에 있어서 밀도는 임계 주파수 계산법을 사용하여 주파수로 변환된다. 제6도에 밀도 버퍼를 사용하여 임계 주파수를 계산하는 프로세스가 도시된다. 이 흐름도는 약간의 예외가 있긴 하지만 제5도의 흐름도와 매우 밀접하게 대응된다. 이 흐름도는 약간의 예외가 있긴 하지만 제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 Figure 3. In this case, the density is converted to frequency using the threshold frequency calculation method. 6 shows a process for calculating a threshold frequency using a density buffer. This flow chart corresponds very closely to the flow chart of FIG. 5, with some exceptions. This flow chart corresponds very closely to the flow chart of FIG. 5, with some exceptions. That is, step 601 corresponds to step 501. And step 603 of converting density density to frequency freq using equations (2) and (3) has been added. Steps 604, 605 and 606 correspond to steps 502, 505 and 506, respectively. Step 607 has been added to convert each density value in the ring buffer to a frequency value using the following formulas (2) and (3). Note that this conversion step results in a smaller number of frequency values than the number of density values in the ring buffer because the continuous "0" density is converted to a single frequency value. Steps 608 and 609 correspond to steps 507 and 508, respectively. Finally, step 602 inputs the current density value to the ring buffer for the selected power saving mode.

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

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

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

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

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

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

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

[테이블 4][Table 4]

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

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

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

g1=(12+pf/4)/16 (9)g1 = (12 + pf / 4) / 16 (9)

g2=(24+pf/2)/16 (10)g2 = (24 + pf / 2) / 16 (10)

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

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

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

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

페널티들은 임계 주파수의 공식에서 파라미터들을 조정하기 위해 사용되는 것으므로 편리한대로 어떤 단위로도 계산될 수 있다. 타임 단위로 페널티를 계산하는 것은 계산이 간단하다는 이점이 있다. 반면 주파수 단위로 페널티를 계산하는 것은 요구-구동 계산으로부터 사용가능한 몇 개의 입력 값을 갖는다는 이점이 있다.The penalties are used to adjust the parameters in the formula of the critical frequency, so they can be calculated in any unit as convenient. Calculating the penalty in units of time has the advantage of simple calculation. 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)마크는 절전 모드에 대한 타임 윈도우를 나타낸다. 그래프에는 세 가지 전력 레벨 즉 탐색/판독/기록 전력 P0과 아이들 전력 P1 및 모드 전력 p2가 사용된다. 구별을 쉽게하기 위해 디스크 드라이브의 모든 액세스는 전력 레벨 P0에서 짧은 간격으로 표시한다. 타임 T0은 액세스가 일어나는 타임 윈도우의 시작부분이다. 조금 시간이 흐른 T1시간에서 절절 모드에 진입하여, 시간 T2일 때까지 지속한다. 그후 다음 디스크 액세스가 일어나게 되면 드라이브는 활성 상태로 복귀한다. 시간 T4에서 시작되는 타임 윈도우에서 그 다음의 디스크 액세스가 발생된다.7 is a graph showing the time sequence for entering and exiting the power saving mode. Where the horizontal axis represents time and the vertical axis represents power. Each short tick mark on the horizontal axis represents the time window for the power save mode. The graph uses three power levels: seek / read / write power P0 and idle power P1 and mode power p2. For ease of identification, all accesses to the disk drive are indicated at short intervals at power level P0. Time T0 is the beginning of the time window in which access occurs. At a time T1, which is a little time, the mode enters the intermittent mode and continues until time T2. Then, when the next disk access occurs, the drive returns to the active state. The next disk access is generated in the time window starting at time T4.

성능 페널티에 있어서 절전 모드의 지속 기간(durations)은 매우 중요하다. 위에서 도시되고 설명된 제3도의 하드웨어 구성에서 카운터(204)를 추가하여 이를 제8도에 도시한다. 카운터(204)는 액세스(220)로서 도시된 모드 진입(226)과 모드 종료사이의 타임 윈도우(221)의 개수를 카운트한다. 출력(227)은 타임 윈도우 단위에서 모드의 지속 기간을 나타낸다. 이 값은 타임 단위에 대해 바로 사용되거나, 공식(2) 및 (3)을 통해 주파수 단위로 변환될 수도 있다.The durations of power saving modes in performance penalties are very important. This is illustrated in FIG. 8 by adding a counter 204 in the hardware configuration of FIG. 3 shown and described above. The counter 204 counts the number of time windows 221 between the mode entry 226 and the mode exit shown as access 220. [ Output 227 represents the duration of the mode in time window units. This value can be used directly for a time unit, or it can be converted to a frequency unit through formulas (2) and (3).

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

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

(T2-T1)〈TBE)가 "참"이면, eq=16-16*((T2-T1)/TBE)이고, "거짓"이면 eq=0이다. (11)Is (T2-T1) <T BE ) that is "true", eq = 16-16 * (( T2-T1) is / T BE), and the "false" = 0 eq. (11)

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

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

tf=scale/(T1-T0+1) (12)tf = scale / (T1-T0 + 1) (12)

(T2-T0)=T2-T1+scale/tf (13)(T2-T0) = T2-T1 + scale / tf (13)

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

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

((T2-T0)〈trl)가 "참"이면, rp=16-16*((T2-T0)/trl)이고, "거짓"이면 rp=0이다. (14)Rp = 16-16 * ((T2-T0) / trl) if (T2-T0) <trl) is true and rp = 0 if it is false. (14)

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

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

mt1=max(TBE, trl) (15)mt1 = max (T BE , trl) (15)

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

한편 에너지 및 응답 페널티는 주파수 단위로서 계산될 수 있다. 이 경우에 있어서 공식(2) 및 (3)에 따라 주파수가 타임 값 TBE및 trl로부터 계산된다. 여기에서 에너지 브레이크-이븐 주파수 fbe와 응답 제한 주파수 frl가 구해진다. 모드의 지속 기간은 공식(2) 및 (3)을 사용하여 주파수 값으로 변환된다. 페널티 공식은 다음과 같다.While 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 the formulas (2) and (3). Here, the energy break-even frequency fbe and the response limiting frequency frl are obtained. The duration of the mode is converted to a frequency value using equations (2) and (3). The penalty formula is as follows.

(fmd〉feb)가 "참"이면, ep=16-16*feb/fmd이고, "거짓"이면 ep=0이다. (16)ep = 16-16 * feb / fmd if (fmd> feb) is "true" and ep = 0 if it is "false". (16)

그리고,And,

(1/fm-1/tf〉1/fr1)가 "참"이면, rp=16-16*fr1*tf*fmd/(febRf = 16-16 * fr1 * tf * fmd / (feb (1 / fm-1 / tf &gt; 1 / fr1)

fmd)이고, "거짓"이면 rp=0이다. (17)fmd), and if it is "false", rp = 0. (17)

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

mf1=max(fbe, fr1) (18)mf1 = max (fbe, fr1) (18)

에너지 및 응답 페널티는 모드가 활성 상태도 복귀하기 위해 종료될 때 계산된다. 더 깊숙한 모드로 진입한다고 가정하면, 복귀 페널티는 선택된 모드와 연관되어 있기 때문에 페널티는 일어나지 않는다.The energy and response penalty is calculated when the mode is terminated to return to the active state. Assuming a deeper mode of entry, the penalty does not occur since 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 will look at another type of penalty, the opportunity loss penalty mop. Using energy-saving mode in this penalty is ideal compared to the action in which no energy or response penalty occurs at all. An opportunity loss penalty occurs when the power save mode is not used (Type 1), or when the threshold frequency entering mode is too low (Type 2). On occasion, the two types are considered only when it is possible to use an interval without incurring energy or response penalties. In FIG. 7, the time interval M3 of T4 to T4 is an example of a type 1 opportunity, while the time interval of T5 in time intervals MOP2 and T4 in T0 is an example of a type 2 opportunity. Like the energy / response penalty, the opportunity loss penalty can be calculated as the 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 units of time. For the power save mode, the loss penalty occurs when the time interval is lost. For Type 1 opportunities, the relevant time is T3, which is a previous time window with an access density greater than "0", and T4, which is the next disk access time when not entering sleep mode within the time interval. The value of (T4-T3) represents the length of the time interval and is calculated from the access frequency using the following formula:

T4-T3 =scale/freq-1 (19)T4-T3 = scale / freq-1 (19)

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

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

mop1=(T4-T3)/mt1 (20)mop1 = (T4 - T3) / mt1 (20)

정수 계산으로 구현되었을 때 기회(T4-T3)가 페널티가 되면, 상기 공식에 의해 "0"의 페널티가 된다. 페널티의 크기는 에너지 브레이크-이븐 시간과 응답 제한범위가 얼마만큽 큰가하는 것보다는 기회가 얼마만큼 큰가하는 것에 따라 정해진다. 그러므로 기회가 더 클수록 더 큰 값의 페널티가 잎어나고 기회가 더 작을수록 더 작은 값의 페널티가 일어난다.When implemented as an integer calculation, if the opportunity (T4-T3) becomes a penalty, it becomes a penalty of "0" by the above formula. The size of the penalty is determined by how big the opportunity is, rather than how big the energy break-in time and response limit are. So the bigger the chance, the bigger the penalty and the smaller the chance, the smaller the penalty.

전1에 진입한 타입2기회에 있어서 (T1-T0)값은 다음 공식을 이용하여 임계 주파수로부터 계산된다.The value of (T1-T0) for the Type 2 opportunity entering the former 1 is calculated from the critical frequency using the following formula.

T1-T0=scale/tf-1 (21)T1-T0 = scale / tf-1 (21)

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

mop2=(T1-T0)/mt1 (22)mop2 = (T1-T0) / mt1 (22)

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

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

mop1=mt1/freq (23)mop1 = mt1 / freq (23)

타입2기회에 있어서 공식은 다음과 같다.The formula for Type 2 opportunities is:

mop2=mt1/freq (24)mop2 = mt1 / freq (24)

주파수 단위를 사용하여 페널티들을 계산할 때의 이점은 현재 주파수 freq 및 임계 주파수 tf는 쉽게 얻을 수 있다는 점이다. 그러나 타임 단위는 하드웨어 구현시에 카운터로서 쉽게 구현할 수 있으므로 더 선호되며, 또한 에너지 및 응답 페널티와 일관성을 유지하기 위해 타임 단위를 사용한다.An advantage of calculating 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 time units are used to maintain consistency with energy and response penalties.

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

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

페널티들의 시간 이력은 임계 주파수의 계산식(6) 및 (7)에서 이득 계수 g1 및 g2등과 같은 파라미터들을 조정하기 위해 사용된다. 바람직한 구현예에 있어서 각각의 페널티들이 발생됨에 동시에, 이들은 해당하는 누적 페널티값 즉 누적 에너지/응답 페널티들 cerp 및 누적 기회 상실 페널티들 cmop에 그 값이 더해진다. 이들 값들 중 하나가 기설정된 트립 레벨(trip level)에 도달하면, 임계 주파수 계산식의 선정된 파라미터들도 따라서 바뀌게 되며, 누적 값은 감소된다. 페널티가 일어나지 않고 절전 모드에 진입하게 되면, 대응되는 누적 페널티값은 상당한 양으로 감소된다. 이것은 시간경과에 따라 페널티가 감소되는 효과를 가지며, 그로 인해 이전의 페널티들은 신규의 페널티들에 비해 비교적 작은 영향을 미친다. 이러한 프로세스가 제9도에 그래프에 도시되었다. 수평축은 모드 간격(mode interval)이고, 각 티크(tick)는 모드 진입 혹은 기회에 해당한다. 수직축은 누적 페널티의 크기 cerp를 나타낸다. 처음 간격 0에서 페널티가 일어나면서부터 계속하여 누적값은 증가하게 된다. 간격1에서 페널티는 일어나지 않았으므로 누적 페널티값은 감소한다. 계속하여 새로운 페널티에 대해 누적 페널티값이 증가되며, 페널티가 없을 때는 일정한 고정률로 누적 페널티값이 감소된다. 간격7에서 누적 페널티가 합쳐진 새로운 페널티 크기는 그래프에 보여진 바와 같이 페널티 트립 레벨을 초과하기에는 충분한 값이다. 이 시점에서 공식(6)과 (7)에서의 이득 계수는 변화되고, 누적 페널티값은 0으로 감소된다. 누적 페널티는 파라미터를 조정하는 작용이 변화되었다고 가정될 때에 크리어된다. 즉 이때가 새로운 측정이 요구되는 순간이다. 이러한 결과가 페널티가 거의 없는 간격8 이후의 시간 간격에서 볼 수 있고, 페널티들은 선행의 타임 간격에서 보다 더 적게 된다.The time histories of the penalties are used to adjust parameters such as gain factors g1 and g2 and the like in the calculation equations (6) and (7) of the critical frequency. At the same time as each penalty is generated in the preferred embodiment, they are added to the corresponding cumulative penalty value, cumulative energy / response penalties cerp and Cumulative Opportunity Loss penalties cmop. When one of these values reaches a predetermined trip level, the selected parameters of the threshold frequency calculation are changed accordingly, and the accumulated value is reduced. If the penalty does not occur and enters the power saving mode, the corresponding cumulative penalty value is reduced to a significant amount. This has the effect of decreasing the penalty over time, so that the previous penalties have a relatively small impact relative to the new penalties. This process is illustrated in the graph in FIG. The horizontal axis is the mode interval, and each tick corresponds to mode entry or opportunity. The vertical axis represents the magnitude of the cumulative penalty cerp. The cumulative value increases continuously after the penalty has occurred at the first interval 0. Since the penalty did not occur at interval 1, the cumulative penalty value decreases. Subsequently, the cumulative penalty value for the new penalty increases, and the cumulative penalty value decreases at a fixed rate when there is no penalty. The new penalty size with cumulative penalty at interval 7 is sufficient to exceed the penalty trip level as shown in the graph. At this point, the gain factors in equations (6) and (7) are changed and the cumulative penalty value is reduced to zero. The cumulative penalty is cleared when it is assumed that the action of adjusting the parameter has changed. This is the moment when a new measurement is required. These results are visible in time intervals after interval 8 with few penalties, and penalties are less than in the preceding time interval.

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

cerp=cerp+max(ep, rp) (25)cerp = cerp + max (ep, rp) (25)

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

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

cerp=cerp-cerd (26)cerp = cerp-cerd (26)

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

기회 상실 누적 페널티 cmop는 에너지/응답 누적 페널티와 유사하게 계산된다. 타입1 및 타입2페널티들은 개별적인 누적 페널티들로 취급하거나, 간편화를 위해 이들에 대해 동일한 값의 누적 페널티를 적용하는 것은 가능하다. 기회 상실 페널티가 일어날 때 mop1 혹은 mop2의 적절한 값이 누적 페널티cmop에 더해진다.The opportunity loss cumulative penalty cmop is calculated similar to the energy / response cumulative penalty. It is possible to treat Type 1 and Type 2 penalties as individual cumulative penalties, or apply a cumulative penalty of the same value 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 the preferred embodiment, the appropriate gain factors g1 and g2 are reduced when the cumulative penalty exceeds the trip level mopt. A good value for mopt is 16. As described in detail above, there are practical limit values for the gain factors, which are used to limit the lower limit range for the gain. If there is no penalty, the cumulative penalty cmop decreases by a predetermined amount cmod from the end of each mode to the lower limit value of 0. 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에서는 모드 지속 시간(durati on)이 얻어진다. 단계353에서는 에너지 페널티 ep와 응답 페널티 rp는 위에서 설명된 것과 같이 계산된다. 단계354에서는 두 개의 페널티에 대해 페널티가 있는지를 검사한다. 만일 페널티가 없다면, 단계356으로 넘어간다. 그리고 만일 페널티가 존재하면, 단계355로 넘어간다. 단계355에서는 페널티는 누적 페널티 cerp에 더해진다. 단계358에서는 누적 페널티는 페널티 트립 레벨 erpt와 비교되어 검사된다. 만일 트립 레벨을 넘어서지 못했다면, 단계367로 넘어가서 제4도의 단계300으로 그 제어를 되돌린다.The energy / response penalty erp and the type 2 opportunity loss penalty mop2 are calculated when the mode ends. A detailed process for this is shown in FIG. Step 350 enters step 313 of FIG. 4 when entering the deepest mode. Step 352 is entered from step 401 of FIG. 2 when an access occurs and the drive is currently in power save mode. When entering from step 350, it waits for access at step 351. In step 352, the durati on is obtained. In step 353, the energy penalty ep and the response penalty rp are calculated as described above. In step 354, a check is made to see if there is a penalty for the two penalties. If there is no penalty, go to step 356. And if a penalty is present, go to step 355. At step 355 the penalty is added to the cumulative penalty cerp. At step 358, the cumulative penalty is checked against the penalty trip level erpt. If the trip level has not been exceeded, go to step 367 to return the control to step 300 of FIG.

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

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

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

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

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

한편 주기적 액세스의 경우에서는 성능에 영향을 주지 않고 에너지 절약을 개선하는 것 또한 가능하다. 주기적 액세스는 꽤 일반화되어 있다. 예컨대 대부분의 워드프로세싱 프로그램들은 사용자가 지정하는 일정한 시간 간격, 예를 들어 매 십분이 경과하는 시점에 현재 작업중인 문서를 디스크 드라이브상에 저장하는 "자동저장(autosave)" 기능을 포함하고 있다. 만일 이와 같은 형태의 액세스 패턴이 감지될 수 있다면, 절전 모드로 보다 신속히 진입할수 있고 예견된 액세스 이전에 모드를 종료할 수 있다. 이렇게 하는 것은 절전 모드 복귀 시간을 사용자로부터 숨겨버리고, 실제에 있어 모드에 더 일찍 진입함으로써 더 많은 에너지를 절약하는 효과가 있다. 상기 액세스 주파수 방법은 그 자체로 주기적 액세스들을 자연적으로 감지하는 것을 가능하게 된다. 이 경우에 있어서 최저 주파수(Very Low Frequency; vlf) 액세스에 대한 작용이 관심사이다. 상기 vlf액티버티(activity)는 액세스 밀도로부터 측정될 수 있지만 목표 주파수 범위를 염두에 두어야 한다. 이는 모드 복귀 시간들보다는 긴 시간 범위이다. 자동저장 액티버티를 검출하기 위해 타이밍 윈도우는 몇 초 이상의 크기를 갖는 것이 적절하다. 이력 버퍼는 예를 들어 이전의 3vlf 발생과 같은 vlf액티버티를 유지한다. 만일 소정의 패턴이 이력 버퍼에서 검출되면, 주기적 모드를 시작하게 된다. 한가지 가장 간단한 패턴은 이전의 3vlf 발생 값이 서로 소정의 허용오차 범위 즉 예로 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 the energy saving without affecting the performance. Periodic access is fairly common. For example, most word processing programs include an "autosave" function that saves the current working document on a disk drive at a user-specified time interval, e.g., every ten minutes. If this type of access pattern can be detected, it may enter the power saving mode more quickly and terminate the mode prior to the predicted 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 itself makes it possible to naturally sense periodic accesses. In this case, the effect on the Very Low Frequency (vlf) access is of concern. The vlf activity can be measured from the access density, but the target frequency range must be kept in mind. This is a longer time range than the mode return times. It is appropriate for the timing window to have a size of more than a few seconds to detect the autosave activity. The history buffer maintains the same vlf activity as the previous 3vlf occurrence, for example. If a predetermined pattern is detected in the history buffer, the cyclic mode is started. One simplest pattern is that the previous 3vlf occurrences are within a certain tolerance range, say 5%. Once the periodic pattern is started, the gain factors are reduced to enter the power saving mode sooner. It is assumed here that there is no performance penalty at all. These are restored when the periodic mode ends after the previous values are stored. The disk drive returns to the active state when the measured vlf is within a predetermined tolerance of the expected vlf. The tolerance is based on statistical confidence in the vlf value and also includes a power save mode return time to ensure that the disk drive is ready when vlf access occurs. If the pattern is not repeated, the cyclic mode is terminated. A simple detection mechanism for terminating the periodic mode is when access occurs within a predetermined tolerance of the expected vlf, i.e., either late or early.

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

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

Claims (34)

데이터 트랙들이 있는 기록 디스크, 다수의 전기적으로 전력이 공급되는 구성요소들, 상기 디스크상에 데이터를 판독 및 기록하기 위해 상기 구성 요소들을 액세스하는 데이터 컨트롤러, 상기 디스크를 회전시켜주는 스핀들 모터를 포함하는 디스크 드라이브 구성요소들, 상기 디스크를 회전시켜주는 스핀들 모터를 포함하는 디스크 드라이브 구성요소들, 상기 디스크에 데이터롤 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드, 상기 디스크상에 서로 다른 트랙들로 상기 헤드를 이동시켜주는 상기 헤드에 연결된 액튜에이터를 갖는 데이터 기록 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서 상기 방법은, 하나 혹은 그 이상의 상기 구성요소들로의 액세스들의 주파수를 결정하는 단계와; 미리 결정된 주파수들로부터 액세스 임계 주파수를 선택하는 단계; 및 상기 결정된 액세스 주파수가 상기 액세스 임게 주파수보다 작을 때 하나 혹은 그 이상의 상기 구성요소로의 전력을 감소시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.A disk having 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 including a disk drive component, a spindle motor for rotating the disk, a head for reading data from or writing data to the disk, A method of managing power usage in a data recording disk drive having an actuator coupled to the head for moving the head, the method comprising: determining a frequency of accesses to one or more of the components; Selecting an access critical frequency from predetermined frequencies; And decreasing power to one or more of the components when the determined access frequency is less than the access threshold frequency. 제1항에 있어서 상기 컨트롤러로부터의 액세스에 응답하여 이전에 전력-감소된 구성요소의 전력을 복구하는 단계를 더 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.The method of claim 1, further comprising recovering power of a previously power-reduced component in response to an access from the controller. 제1항에 있어서 상기 디스크 드라이브는 또한 상기 디스크의 트랙상에 상기 헤드를 유지하기 위해 상기 액튜에이터에 결합된 서보 제어 전자회로부를 가지며, 액세스들의 주파수를 결정하는 상기 단계는 상기 헤드가 상기 디스크상에 데이터를 판독 혹은 기록하도록 하는 액세스들의 주파수를 결정하는 단계를 포함하며, 전력을 감소시키는 상기 단계는 상기 액튜에이터를 파킹 위치로 이동시켜 상기 서보 제어 전자회로부로의 전력을 감소시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.The disk drive of claim 1, wherein the disk drive further comprises a servo control electronics coupled to the actuator for holding the head on a track of the disk, wherein determining the frequency of accesses comprises: Wherein said step of reducing power comprises moving said actuator to a parked position to reduce power to said servo control electronics, characterized in that said step of reducing power comprises the step of moving said actuator to a parked position to reduce power to said servo control electronics A method for managing power usage in a disk drive. 제1항에 있어서 액세스들의 주파수를 결정하는 상기 단계는 상기 액튜에이터로 하여금 상기 디스크를 가로질러 탐색하도록 하는 액세스들의 주파수를 결정하는 단계를 포함하고, 전력을 감소시키는 상기 단계는 상기 액튜에이터를 파킹 위치롤 이동시키고 상기 스핀들 모터를 정지시키는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.The method of claim 1, wherein determining the frequency of accesses comprises determining the frequency of accesses that cause the actuator to search across the disk, wherein the step of decreasing power comprises moving the actuator to a parked position roll And stopping the spindle motor. &Lt; Desc / Clms Page number 21 &gt; 제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 critical frequency from predetermined access frequencies first determines whether a standard deviation of an access frequency pattern is less than a predetermined number of days of an average value of the pattern, And multiplying the power by the coefficient. &Lt; Desc / Clms Page number 21 &gt; 제1항에 있어서 미리 결정된 액세스 주파수들로부터 액세스 임계 주파수를 선택하는 상기 단계는 먼저 액세스 주파수의 패턴이 표준 편차가 상기 패턴의 기설정된 평균값의 몇 분의 일보다 큰가를 판단하고, 크다면 상기 패턴에서 최소 액세스 주파수에 이득 계수를 곱하는 단계를 포함하는 것을 특징으로 하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, wherein the step of selecting an access critical frequency from predetermined access frequencies comprises: first determining whether a pattern of the access frequency is greater than a predetermined number of days of a predetermined average value of the pattern; And multiplying the minimum access frequency by a gain factor. 제1항에 있어서 액세스 임계 주파수를 선택하는 상기 단계는 미리 결정된 액세스 주파수들의 세트(set)에서 최대 및 최소 액세스 주파수들로부터 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로하는 디스크 드라이브에서 전력 사용을 관리하는 방법.2. The method of claim 1, wherein said selecting an access critical frequency comprises calculating an access threshold frequency from a maximum and minimum access frequencies in a predetermined set of access frequencies. . 제8항에 있어서 액세스 임계 주파수를 선택하는 상기 단계는 상기 최대 및 최소 액세스 주파수에 기설정된 이득 계수를 곱하는 단계를 포함하는 것을 특징으로하는 디스크 드라이브에서 전력 사용을 관리하는 방법.9. The method of claim 8, wherein selecting an access critical 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 if the accesses are periodic patterns and recovering power of a power-reduced component prior to a next periodic access. 데이터 트랙들이 있는 기록 디스크, 상기 디스크를 횐전시키기 위한 스핀들 모터, 상기 디스크에 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드, 데이터를 판독 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러, 상기 헤드를 서로 다른 트랙들로 이동시키고 데이터가 없는 파킹 위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터, 데이터의 판독/기록 동안 데이터 트랙상에 상기 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부를 갖는 적어도 두 가지 절전 모드들에서 작동 가능한 데이터 기록 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서, 상기 방법은, 판독 혹은 기록 액세스들의 주파수를 졀정하는 단계와; 미리 결정된 액세스 주파수들의 값을 저장하는 단계와; 미리 결정된 액세스 주파수들의 상기 저장값으로부터 제1액세스 임계 주파수를 계산하는 단계와; 상기 판독 혹은 기록 액세스 주파수가 상기 제1임계 주파수보다 작을 때 상기 액튜에이터를 파킹 위치로 이동시키고, 상기 서보 제어 전자회로부로의 전력을 감소시켜 상기 디스크 드라이브를 제1절전 모드의 동작으로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.A data controller for accessing the head for reading and writing data, a head controller for reading data from and writing data to the disk, An actuator coupled to the head for moving the head to a different track and moving it to a data-less parking position, a servo control electronics portion coupled to the actuator for holding the head on the data track during read / A method of managing power usage in a data recording disk drive operable in two power save modes, 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 values of predetermined access frequencies; Moving the actuator to a parked position when the read or write access frequency is less than the first threshold frequency and decreasing power to the servo control electronics to cause the disk drive to enter an operation in a first power save mode Wherein the at least one power saving mode comprises at least two power saving modes. 제12항에 있어서 미리 결정된 액세스 주파수들의 상기 저장값으로부터 제2액세스 임계 주파수를 계산하고, 상기 판독 혹은 기록 액세스들의 주파수가 상기 제2임계 주파수보다 작을 때 상기 스핀들 모터로의 전력을 감소시켜 상기 디스크 드라이브를 제2절전 모드의 동작으로 진입하게 하는 단계를 더 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.13. The method of claim 12, further comprising: calculating a second access threshold frequency from the stored value of predetermined access frequencies and decreasing power to the spindle motor when the frequency of the read or write accesses is less than the second threshold frequency, Further comprising the step of causing the drive to enter an operation in a second power save mode. &Lt; Desc / Clms Page number 21 &gt; 제13항에 있어서 스핀들 모터로의 전력을 감소시키는 상기 단계는 상기 액튜에이터를 상기 파킹 위치로 이동시킴과 동시에 필수적으로 상기 스핀들 모터로의 전력을 감소시켜 디스크 드라이브를 제1모드로 먼저 진입하지 않고 제2절전 모드로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.14. The method of claim 13, wherein the step of reducing power to the spindle motor includes moving the actuator to the parking position and essentially reducing power to the spindle motor, 2 power-saving mode of the at least two power-saving modes. 제12항에 있어서 제1액세스 임계 주파수를 계산하는 상기 단계는 미리 결정된 액세스 주파수들의 세트에서 상기 최대 및 최소 액세스 주파수들로부터 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.13. The method of claim 12, wherein the step of calculating a first access threshold frequency comprises calculating an access threshold frequency from the maximum and minimum access frequencies in a predetermined set of access frequencies. A method of managing power usage in a disk drive operable in a computer system. 제15항에 있어서 제1액세스 임계 주파수를 계산하는 상기 단계는 상기 최대 및 최소 액세스 주파수에 이득 계수를 곱하는 단계를 포함하는 것을 특징으로하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.16. The method of claim 15 wherein calculating the first access critical frequency comprises multiplying the maximum and minimum access frequencies by a gain factor. How to manage. 제16항에 있어서 상기 이득 계수를 조정하는 단계를 더 포함하는 것을 특징으로하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.17. The method of claim 16, further comprising adjusting the gain factor. &Lt; Desc / Clms Page number 19 &gt; 18. A method of managing power usage in a disk drive operable in at least two power save modes. 제17항에 있어서 상기 이득 계수를 조정하는 상기 단계는 상기 이득 계수를 디스크 드라이브 최대 절전 효과를 나타내는 제1한도값과 디스크 드라이브의 최대 성능을 나타내는 제2한도값을 갖는 소정의 범위내에서 선택 가능한 값들을 갖는 성능 계수로서 변경하는 단계를 포함하는 것을 특징으로 하는 적어도 두 가지 절전 모드들에서 작동 가능한 디스크 드라이브에서 전력 사용을 관리하는 방법.18. The method of claim 17, wherein the step of adjusting the gain factor comprises selecting the gain factor within a predetermined range having a first limit value indicating a maximum power saving effect of the disk drive and a second limit value indicating a maximum performance of the disk drive Values as a performance factor having at least one of the values &lt; RTI ID = 0.0 &gt; of: &lt; / RTI &gt; 데이터 트랙들이 있는 기록 디스크, 디스크를 회전시키기 위한 스핀들 모터, 상기 디스크로 데이터를 기록한거나 상기 디스크로 데이터를 판독하기 위한 헤드, 데이터를 판도 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러, 상기 헤드를 서로 다른 트랙들로 이동시켜 테이터가 없는 파킹위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터, 데이터의 판독/기록 동안 데이터 트랙상에 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부를 가지며, 절전 모드로의 진입 및 종료 동작이 가능한 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서 상기 방법은, 이전에 판독 혹은 기록 액세스들을 저장하는 단계와; 상기 저장된 이전 액세스들로부터 가장 최근의 액세스 후에 이전에 저장된 액세스들에 따라 변경되는 절전 모드로의 진입 시간을 계산하는 단계와; 디스크 드라이브에 최대 절전효과를 나타내는 제1한도값과 디스크 드라이브의 최대 성능을 나타내는 제2한도값들의 범위내의 소정값을 갖는 성능 계수를 선택하는 단계와; 모드 진입 시간 계산을 변경하기 위해 상기 선택된 성능 계수를 사용하여 상기 디스크 드라이브의 모드 진입 작용이 상기 선택된 성능 계수로서 조정되는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.A spindle motor for rotating the disk, a head for reading data from or writing data to the disk, a data controller for accessing the head for plotting and recording data, An actuator coupled to the head for moving to different tracks and to move to a dataless parking position, a servo control electronics connected to the actuator for maintaining the head on the data track during read / write of data, A method of managing power usage in a data recording disk drive capable of entry and exit operations to a storage medium, the method comprising: storing previously read or write accesses; Calculating an entry time to a power save mode that changes according to previously stored accesses after the most recent access from the stored previous ones; Selecting a performance factor having a first limit value indicating a maximum power saving effect in a disk drive and a predetermined value in a range of second limit values indicating a maximum performance of the disk drive; Wherein the mode entry action of the disk drive is adjusted as the selected performance factor using the selected performance factor to change the mode entry time calculation. . 제19항에 있어서 저장하는 상기 단계는 이전에 결정된 액세스 주파수들의 값들을 저장하는 단계를 포함하고, 절전 모드로의 진입 시간을 계산하는 상기 단계는 이전에 결정된 액세스 주파수들의 값들로부터 액세스 임계 주파수를 계산하여 상기 판독 혹은 기록 액세스 주파수가 상기 임계 주파수보다 작을 때 상기 절전 모드로 진입하게 하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.21. The method of claim 19, wherein storing comprises storing values of previously determined access frequencies, wherein calculating the entry time into a power save mode comprises calculating an access threshold frequency from values of previously determined access frequencies And causing the power saving mode to enter 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 method of claim 21, wherein the step of using selected performance factors to modify the mode entry time calculation comprises adjusting the gain factors by multiplying the selected performance factors by the gain factors. How to Manage Power Usage in Disk Drives. 제19항에 있어서 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 서보 제어 전자회로부로의 전력은 감소되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, wherein upon entering the power save mode, the actuator is moved to the parking position and power to the servo control electronics is reduced. 제19항에 있어서 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 스핀들 모터는 정지되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.The method according to claim 19, wherein, when the power saving mode is entered, the actuator is moved to the parking position and the spindle motor is stopped. 제19항에 있어서 상기 디스크 드라이브는 상기 제1절전 모드보다 작은 전력 소비를 갖는 제2절전 모드로 진입 및 종료할 수 있으며, 상기 저장된 이전의 액세스들로부터 상기 이전에 저장된 액세스에 따라 가변될 수 있고 상기 제1절전 모드로 진입하는 상기 제1절전 모드 진입 시간과 다른 제2절전 모드로의 진입 시간을 계산하는 단계와; 제2모드 진입 시간 계산을 변경하기 위해 선택된 상기 성능 계수를 사용하여 상기 디스크 드라이브의 상기 제2모드 진입 작용이 상기 선택된 성능 계수로서 조정되는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.20. The method of claim 19, wherein the disk drive is capable of entering and exiting a second power save mode having less power consumption than the first power save mode, and may be varied from the stored previous accesses according to the previously stored access Calculating an entry time into a second power saving mode different from the first power saving mode entry time entering the first power saving mode; Further comprising the step of adjusting the second mode entry action of the disk drive as the selected performance factor using the performance factor selected to change the second mode entry time calculation How to manage power usage. 제25항에 있어서 상기 디스크 드라이브가 상기 제1절전 모드로 먼저 진입하지 않고서 상기 제2절전 모드로 진입하게 하는 단게를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.26. The method of claim 25, further comprising: causing the disk drive to enter the second power save mode without first entering the first power save mode. 제19항에 있어서 상기 저장된 판독 혹은 기록 액세스들이 주기적 패턴을 나타내는 지를 판단하여 다음 주기적 액세스에 앞서 상기 절전 모드를 종료하는 단계를 더 포함하는 것을 특징으로 하는 데이터기록용 디스크 드라이브에서 전력 사용 관리하는 방법.The method as claimed in claim 19, further comprising determining whether the stored read or write accesses represent a periodic pattern and ending the power save mode prior to the next periodic access. . 데이터 트렉들이 있는 기록 디스크, 상기 디스크를 회전시키기 위한 스핀들 모터, 상기 디스크에 데이터를 기록하거나 상기 디스크로부터 데이터를 판독하기 위한 헤드, 상기 데이터를 판독 및 기록하기 위해 상기 헤드를 액세스하는 데이터 컨트롤러, 상기 헤드를 서로 다른 트랙들로 이동시키고 데이터가 없는 파킹 위치로 이동시키기 위해 상기 헤드에 연결된 액튜에이터, 데이터의판독/기록 동안 데이터 트랙상에 상기 헤드를 유지시키기 위해 상기 액튜에이터에 연결된 서보 제어 전자회로부룰 포함하며, 절전 모드로의 진입 및 종료 동작이 가능한 데이터 기록 디스크 드라이브에서 전력 사용을 관리하는 방법에 있어서 상기 방법은, 판독 혹은 기록 액세스들의 주파수를 결정하는 단계와; 이전의 결정된 액세스 주파수들의 값을 저장하는 단계와; 상기 이전의 결정된 액세스 주파수들의 저장된 값으로부터 액세스 임계 주파수를 계산하는 단계와; 상기 판독 혹은 기록 액세스 주파수가 상기 임계 주파수보다 작을 때 상기 절전 모드의 동작으로 진입하는 단계와; 상기 절전 모드 진입 및 종료 시간들을 검출하는 단계와; 만일 검출된 절전 모드 진입 및 종료 시간으로부터의 절전 모드 지속 기간이 대개 절전 모드를 종료하기 위해 필요한 디스크 드라이브 에너지와 똑같은 디스크 드라이브 에너지 절약을 위해 필요한 절전 모드 지속 기간인 기설정된 에너지의 브레이크-이븐 시간보다 적다면 에너지 페널티를 게산하는 단계와; 상기 계산된 에너지 페널티들을 누적하는 단계와; 상기 누적 에너지 페널티들이 기설정된 트립 레벨을 초과할때 액세스 임계 주파수를 변경하여 상기 디스크 드라이브의 상기 절전 모드로의 진입 동작이 에너지 페널티들의 이력으로부터 동적으로 조정되는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.A data controller for accessing said head for reading and writing said data; and a data controller for accessing said head for reading and writing said data, An actuator coupled to the head to move the head to different tracks and to move to a data-free parking position, a servo control electronics portion connected to the actuator to maintain the head on the data track during data read / write A method of managing power usage in a data recording disk drive capable of entering and exiting a power save mode, the method comprising: determining a frequency of read or write accesses; Storing a value of the previously determined access frequencies; Calculating an access threshold frequency from a stored value of the previously determined access frequencies; Entering the operation of the power saving mode when the read or write access frequency is less than the threshold frequency; Detecting the power saving mode entry and end times; If the power save mode duration from the detected power saver mode entry and end times is greater than the break-even time of the predetermined energy, which is the power saver mode duration required to save disk drive energy, which is usually the same as the disk drive energy required to exit the power saver mode Calculating an energy penalty if less; Accumulating the calculated energy penalties; And changing the access threshold frequency when the cumulative energy penalties exceed a predefined trip level to dynamically adjust the entry operation of the disk drive into the power save mode from the history of energy penalties. How to Manage Power Usage in Disk Drives. 제28항에 있어서 상기 판독 및 기록 액세스들의 시간들을 검출하는 단계와; 만일 절전 모드 진입없이 연속적으로 검출된 액세스 시간들 사이의 시간 간격이 상기 에너지 브레이크-이븐 시간보다 크다면, 기회 상실 페널티를 계산하는 단계와; 상기 계산된 기회 상실 페널티들을 누적하는 단계와; 상기 누적 기회 상실 페널티들이 기설정된 트립 레벨을 초과할 때 상기 액세스 임계 주파수를 변경하여 상기 디스크 드라이브의 상기 절전 모드로의 진입 동작이 기회 상실 페널티들의 이력으로부터 동적으로 조정되는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, further comprising: detecting times of the read and write accesses; If the time interval between consecutively detected access times without power saving mode entry is greater than the energy break-even time, calculating an opportunity loss penalty; Accumulating the calculated opportunity loss penalties; And changing the access threshold frequency when the accumulated opportunity loss penalties exceed a predetermined trip level to dynamically adjust the entry operation of the disk drive into the power save mode from the history of opportunity loss penalties Wherein the data recording disk drive is a disk drive. 제28항에 있어서 액세스 임계 주파수를 계산하는 상기 단계는 저장된 액세스 주파수들의 세트에서 최대 및 최소 액세스 주파수들로부터 이득 계수를 사용하여 상기 액세스 임계 주파수를 계산하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, wherein calculating the access critical frequency comprises calculating the access critical frequency using a gain factor from the maximum and minimum access frequencies in the set of stored access frequencies. How to manage power usage on disk drives. 제28항에 있어서 액세스 임계 주파수를 계산하는 상기 단계는 이득 계수를 조정하는 단계를 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.30. The method of claim 28, wherein calculating the access critical frequency comprises adjusting a gain factor. 제28항에 있어서 상기 절전 모드의 진입시에 상기 액튜에이터는 상기 파킹 위치로 이동되고 상기 서보 제어 전자회로부로의 전력은 감소되는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, wherein upon activation of the power save 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 the actuator is moved to the parked position and the spindle motor is stopped when the power saving mode is entered. 제28항에 있어서 상기 액세스들이 주기적 패턴인지를 판단하여, 그에 따라 다음 주기적 액세스에 앞서 상기 절전 모드를 종료하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록용 디스크 드라이브에서 전력 사용을 관리하는 방법.29. The method of claim 28, further comprising determining whether the accesses are periodic patterns and terminating the power save mode prior to the next periodic access accordingly. ※ 참고사항:최초출원 내용에 의하여 공개하는 것임.※ Note: It is disclosed by the contents of the first application.
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
JP53295695 1995-09-22
JP08/532,956 1995-09-22

Publications (2)

Publication Number Publication Date
KR980011219A true KR980011219A (en) 1998-04-30
KR100211789B1 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11623101B2 (en) 2019-11-26 2023-04-11 Samsung Electronics Co., Ltd. Implant system including wake-up device and operating method of implant system including wake-up device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11623101B2 (en) 2019-11-26 2023-04-11 Samsung Electronics Co., Ltd. Implant system including wake-up device and operating method of implant system including wake-up device

Also Published As

Publication number Publication date
KR100211789B1 (en) 1999-08-02

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
US8078901B1 (en) Method for increasing a processor operating frequency when other subsystem demands are low
US5691948A (en) Memory apparatus
KR101518440B1 (en) Dynamic performance control of processing nodes
JP2557202B2 (en) Power consumption management method and apparatus
JP3819166B2 (en) Energy consumption reduction method
US5774292A (en) Disk drive power management system and method
US6608729B1 (en) Intelligent power management of disc drives
US8176347B1 (en) Microprocessor that performs adaptive power throttling
JP3626243B2 (en) Power saving method for computer having disk
US6161187A (en) Skipping clock interrupts during system inactivity to reduce power consumption
EP1130590B1 (en) High reliability storage drive and data write method
US7487297B2 (en) Dynamically adjusting a pre-fetch distance to enable just-in-time prefetching within a processing system
CN102084318B (en) Power manager and method for managing power
JP3368475B2 (en) Information processing apparatus, power saving control method and recording medium storing power saving control program
US20090198907A1 (en) Dynamic Adjustment of Prefetch Stream Priority
US20040015731A1 (en) Intelligent data management fo hard disk drive
CN101118768A (en) Magnetic disk drive apparatus and method of controlling the same
US20050060533A1 (en) Method, device, software and apparatus for adjusting a system parameter value, such as a page closing time
JPH01305418A (en) Mounting of record medium optimized
US8046595B2 (en) Method of controlling operating clock frequency of hard disk drive, recording medium, and hard disk drive
US8982499B1 (en) Timing of power state change in a disk drive based on disk access history
KR100211789B1 (en) Disk drive for portable computer with adaptive demand-driven power management
JP2022511629A (en) Speculative termination of power-down mode of dynamic random access memory rank

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