JP5894044B2 - Method and portable computer for storing data in a hybrid disk drive - Google Patents

Method and portable computer for storing data in a hybrid disk drive Download PDF

Info

Publication number
JP5894044B2
JP5894044B2 JP2012202410A JP2012202410A JP5894044B2 JP 5894044 B2 JP5894044 B2 JP 5894044B2 JP 2012202410 A JP2012202410 A JP 2012202410A JP 2012202410 A JP2012202410 A JP 2012202410A JP 5894044 B2 JP5894044 B2 JP 5894044B2
Authority
JP
Japan
Prior art keywords
state
memory
mode
cache
power
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2012202410A
Other languages
Japanese (ja)
Other versions
JP2014056543A (en
Inventor
康宏 宮口
康宏 宮口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Singapore Pte Ltd
Original Assignee
Lenovo Singapore Pte Ltd
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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Priority to JP2012202410A priority Critical patent/JP5894044B2/en
Publication of JP2014056543A publication Critical patent/JP2014056543A/en
Application granted granted Critical
Publication of JP5894044B2 publication Critical patent/JP5894044B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリの利用範囲を拡大する技術に関し、さらには、ハイブリッド・ディスク・ドライブを利用してコンピュータのパワー・ステートを制御する技術に関する。   The present invention relates to a technique for expanding the use range of a nonvolatile semiconductor memory that functions as a cache of a hybrid disk drive, and more particularly to a technique for controlling the power state of a computer using a hybrid disk drive.

携帯式コンピュータでは、バッテリィによる動作時間を確保することが特に重要である。そのために携帯式コンピュータは、ACPIに規定するさまざまなスリーピング・ステートに遷移する。ACPIでは、パワー・オン状態(S0ステート)とパワー・オフ状態(S5ステート)に加えて、S1ステートからS4ステートまでのスリーピング・ステートを定義しており数字が大きいほど待機電力は小さくなるが他方で復帰時間は長くなる。バッテリィによる動作時間に影響を与える待機電力の低減と、使いたいときにただちに使えるというユーザビリティに影響を与える復帰時間の短縮はトレードオフの関係にある。   In portable computers, it is particularly important to ensure battery operating time. Therefore, the portable computer transitions to various sleeping states defined in ACPI. In ACPI, in addition to the power-on state (S0 state) and the power-off state (S5 state), a sleeping state from the S1 state to the S4 state is defined. The recovery time becomes longer. There is a trade-off between reducing standby power, which affects battery operation time, and reducing recovery time, which affects usability for immediate use when you want to use it.

スリーピング・ステートの中で最も消費電力の少ないS4ステート(ハイバネーション状態ともいう。)では、パワー・オン中のメイン・メモリの記憶状態(以下、退避データという。)をハードディスク・ドライブ(HDD)やソリッド・ステート・ドライブ(SSD)などのディスク・ドライブに格納してからほとんどのデバイスの電力を停止し、復帰時はディスク・ドライブから退避データを復帰することでパワー・オフ状態から起動するよりも復帰時間を短縮することができる。   In the S4 state (also referred to as the hibernation state), which consumes the least amount of power in the sleeping state, the main memory storage state (hereinafter referred to as saved data) during power-on is referred to as a hard disk drive (HDD) or solid state. -Most devices are powered off after being stored in a state drive (SSD) or other disk drive, and when recovering, the saved data is restored from the disk drive rather than starting from the power-off state. Time can be shortened.

米国インテル社(インテルは登録商標)は、インテル・ラピッド・ストレージ・テクノロジー(IRST)というRAID管理用ツールの一部としてインテル・スマート・レスポンス・テクノロジー(ISRT)という技術を提供する。ISRTは、Mini SATAというインターフェースに接続されたSSDをHDDのキャッシュとして利用して、高速な読み取りを実現する技術である。   Intel Corporation (Intel is a registered trademark) provides a technology called Intel Smart Response Technology (ISRT) as part of a RAID management tool called Intel Rapid Storage Technology (IRST). ISRT is a technology that realizes high-speed reading by using an SSD connected to an interface called Mini SATA as an HDD cache.

ISRTでは、OSはHDDだけに格納され、SSDはデータ領域とキャッシュ領域がパーティションで区切られている。ホストがライト・コマンドを発行したときは、ライトスルー・キャッシングのようにデータをSSDとHDDの両方に書き込む。あるいはライトバック・キャッシングのようにデータを先にSSDにだけ書き込みアイドル時にHDDに書き込む。ホストが発行したリード・コマンドに対して、SSDにデータがあるときはSSDから読み取り、SSDにデータがないときはHDDから読み取って返送する。   In ISRT, the OS is stored only in the HDD, and in the SSD, the data area and the cache area are partitioned by partitions. When the host issues a write command, data is written to both the SSD and the HDD as in write-through caching. Or, like write-back caching, data is first written only to the SSD and written to the HDD during idle. In response to a read command issued by the host, when there is data in the SSD, it is read from the SSD, and when there is no data in the SSD, it is read from the HDD and returned.

特許文献1は、ハード・ドライブとは別に用意したNVRAMにデータをハイバネートするファースト・ハイバネートについて開示する。OSが現在のシステム状態をDRAMのハイバネート領域に書き込むと、エンベデッド・プロセッサ(EP)がCPUのコアをシャットダウンする。その後EPは、ハイバネート領域をNVRAMにコピーして、ウェイクさせるのに必要な回路にだけ電力を供給する。レジュームするときは、EPがNVRANからDRAMにコンテキストを復帰し、さらにDRAMのコンテキストに対してOSが復帰処理をする。   Patent Document 1 discloses a first hibernate that hibernates data in an NVRAM prepared separately from a hard drive. When the OS writes the current system state in the hibernate area of the DRAM, the embedded processor (EP) shuts down the CPU core. The EP then supplies power only to the circuitry necessary to copy the hibernate area to NVRAM and wake it up. When resuming, the EP returns the context from NVRAN to the DRAM, and the OS performs a return process for the DRAM context.

特許文献2は、ハイブリッドHDDに搭載された不揮発性半導体メモリを有効に活用する技術を開示する。不揮発性半導体メモリは、ハイブリッドHDD用データ領域とリード・データ領域とライト・データ領域に区分されている。ホスト・システムがライト・コマンドを発行したときはデータをディスク媒体に書き込むとともに、ライト・コマンドがPINN登録されていればハイブリッドHDD用データ領域に書き込み、PINN登録されていなければライト・データ領域に書き込む。ホスト・システムがPINN登録されたリード・コマンドを発行したときには、ハイブリッドHDD用データ領域から読み取り、PINN登録されていないリード・コマンドを発行したときはリード・データ領域またはディスク媒体から読み取る。   Patent Document 2 discloses a technique for effectively using a nonvolatile semiconductor memory mounted on a hybrid HDD. The nonvolatile semiconductor memory is divided into a hybrid HDD data area, a read data area, and a write data area. When the host system issues a write command, data is written to the disk medium, and if the write command is registered PINN, it is written to the hybrid HDD data area, and if it is not registered, it is written to the write data area. . When the host system issues a read command registered with PINN, it reads from the hybrid HDD data area, and when it issues a read command not registered with PINN, it reads from the read data area or the disk medium.

特許文献3は、ハイブリッドHDDが搭載する不揮発性半導体メモリをキャッシュに利用する領域と、論理アドレスを割り当てて実データを記憶するSSDとして利用する領域に区分する技術を開示する。特許文献4は、磁気ディスク装置に磁気ディスクに加えて搭載するフラッシュ・メモリを磁気ディスクのデータ記憶エリアの一部として利用する技術を開示する。この技術では頻繁にアクセスするファイルをフラッシュ・メモリに格納することで、磁気ディスクの回転待ち時間やシーク時間をなくして高速なアクセスを可能にする。   Japanese Patent Application Laid-Open No. 2004-228561 discloses a technique of dividing a nonvolatile semiconductor memory mounted on a hybrid HDD into an area that uses a cache and an area that uses a logical address and stores an actual data as an SSD. Patent Document 4 discloses a technique of using a flash memory mounted on a magnetic disk device in addition to a magnetic disk as a part of a data storage area of the magnetic disk. In this technology, frequently accessed files are stored in a flash memory, so that high-speed access is possible without the waiting time and seek time of the magnetic disk.

米国特許7971081号公報U.S. Pat. No. 7,971,081 特開2009−187604号公報JP 2009-187604 A 特開2011−90460号公報JP 2011-90460 A 特開平6−314177号公報JP-A-6-314177

S4ステートに遷移する際に退避データを一般的なHDDに記憶する場合は、磁気ディスクへのアクセスが発生するためSSDに比べて書き込みおよび読み取りに多くの時間を費やす。ISRTのようにHDDのキャッシュとしてSSDを設ければ、HDDへの高速アクセスを実現できるが、退避データの一時的な記憶のためだけに専用のSSDを用意することになりコストやスペースの点で得策ではない。   When saving data is stored in a general HDD at the time of transition to the S4 state, access to the magnetic disk occurs, so that more time is spent for writing and reading than SSD. If an SSD is provided as an HDD cache as in ISRT, high-speed access to the HDD can be realized. However, a dedicated SSD is prepared only for temporary storage of saved data, so that cost and space are reduced. It's not a good idea.

また、SSDとHDDは独自に電力を制御しているので、両者に対する電力源の容量はそれぞれの最大電力の合計を基準にして設計する必要がある。この点で、ハイブリッドHDDが搭載する不揮発性半導体メモリをSSDの代わりに使用できれば、ハイブリッドHDDが磁気ディスクへのアクセスと不揮発性半導体メモリへのアクセスを制御することで、SSDとHDDの組み合わせよりも電力源の容量を大幅に低減できる。   In addition, since the SSD and the HDD independently control the power, the capacity of the power source for both needs to be designed based on the sum of the maximum power of each. In this regard, if the non-volatile semiconductor memory mounted on the hybrid HDD can be used instead of the SSD, the hybrid HDD controls access to the magnetic disk and access to the non-volatile semiconductor memory. The capacity of the power source can be greatly reduced.

しかし、ハイブリッドHDDが搭載する不揮発性半導体メモリの本来的な役割は、磁気ディスクのキャッシュとして機能することにあるため、ホスト装置が完全に読み書きを制御できるメモリとしては利用することができない。たとえば特許文献2のハイブリッドHDDに対しては、PINN登録したデータを不揮発性半導体メモリのハイブリッドHDD用データ領域に読み書きすることはできる。   However, the primary role of the nonvolatile semiconductor memory mounted on the hybrid HDD is to function as a magnetic disk cache, and therefore it cannot be used as a memory in which the host device can completely control reading and writing. For example, for the hybrid HDD disclosed in Patent Document 2, PINN registered data can be read from and written to the hybrid HDD data area of the nonvolatile semiconductor memory.

しかし、ハイブリッドHDD用データ領域は磁気ディスクのキャッシュ領域として利用しているため、書き込み時には磁気ディスクにもデータを書き込む必要があり書き込み時間が遅くなる。またS4ステートに遷移する際にハイブリッドHDDが記憶する退避データは、復帰したあとには利用価値のない一時的なデータである。したがって、ハイブリッドHDD用データ領域を退避データの一時的な記憶場所として利用したのでは不揮発性半導体メモリ全体において本来のキャッシュとして利用できる容量が低下し利用率の点で好ましくない。   However, since the data area for the hybrid HDD is used as a cache area of the magnetic disk, it is necessary to write data to the magnetic disk at the time of writing, which slows down the writing time. Further, the saved data stored in the hybrid HDD when transitioning to the S4 state is temporary data having no utility value after the return. Therefore, if the hybrid HDD data area is used as a temporary storage location for saved data, the capacity that can be used as the original cache in the entire nonvolatile semiconductor memory is reduced, which is not preferable in terms of utilization.

特許文献3のハイブリッドHDDでは、不揮発性半導体メモリの一部をSSDとして利用し、特許文献4のHDDでは、不揮発性半導体メモリの全体を磁気ディスクの一部として利用しているため、ともに利用率の問題が残る。このようにこれまでのハイブリッドHDDでは、不揮発性半導体メモリの利用形態がキャッシュまたはメモリのいずれか一方であるため、特にスリーピング・ステートに移行する際に発生する退避データの一時的な記憶領域に利用することは不経済であった。   In the hybrid HDD of Patent Document 3, a part of the nonvolatile semiconductor memory is used as an SSD, and in the HDD of Patent Document 4, the entire nonvolatile semiconductor memory is used as a part of the magnetic disk. The problem remains. As described above, in the conventional hybrid HDD, since the use form of the nonvolatile semiconductor memory is either the cache or the memory, it is used especially for a temporary storage area of saved data generated when shifting to the sleeping state. It was uneconomical to do.

そこで本発明の目的は、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリを有効に活用しながらデータを記憶する方法を提供することにある。さらに本発明の目的は、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリに対して、キャッシュの容量に影響を与えないで一時的なデータを読み書きする方法を提供することにある。   SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a method for storing data while effectively using a nonvolatile semiconductor memory that functions as a cache of a hybrid disk drive. It is a further object of the present invention to provide a method for reading / writing temporary data from / to a nonvolatile semiconductor memory functioning as a cache of a hybrid disk drive without affecting the capacity of the cache.

さらに本発明の目的は、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリに、消費電力の低減を図りながらデータを記憶する方法を提供することにある。さらに本発明の目的は、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリを利用してコンピュータのパワー・ステートを制御する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するハイブリッド・ディスク・ドライブ、携帯式コンピュータ、およびコンピュータ・プログラムを提供することにある。   A further object of the present invention is to provide a method for storing data in a nonvolatile semiconductor memory functioning as a cache of a hybrid disk drive while reducing power consumption. It is a further object of the present invention to provide a method for controlling the power state of a computer using a non-volatile semiconductor memory that functions as a cache of a hybrid disk drive. It is a further object of the present invention to provide a hybrid disk drive, portable computer, and computer program that implements such a method.

本発明の第1の態様は、不揮発性半導体メモリと磁気ディスクを備えるハイブリッド・ハードディスク・ドライブにホスト装置がデータを記憶する方法を提供する。ホスト装置は、ハイブリッド・ハードディスク・ドライブをキャッシュ・モードまたはメモリ・モードに設定する。キャッシュ・モードに設定されているハイブリッド・ハードディスク・ドライブは、ホスト装置から受け取ったデータを不揮発性半導体メモリおよび前記磁気ディスクに書き込む。メモリ・モードに設定されているハイブリッド・ハードディスク・ドライブは、ホスト装置が送ったデータを磁気ディスクにアクセスしないで不揮発性半導体メモリのキャッシュ・モードで利用する領域に書き込む。   A first aspect of the present invention provides a method for a host device to store data in a hybrid hard disk drive comprising a nonvolatile semiconductor memory and a magnetic disk. The host device sets the hybrid hard disk drive to the cache mode or the memory mode. The hybrid hard disk drive set to the cache mode writes data received from the host device to the nonvolatile semiconductor memory and the magnetic disk. The hybrid hard disk drive set to the memory mode writes the data sent from the host device to an area used in the cache mode of the nonvolatile semiconductor memory without accessing the magnetic disk.

その結果、ホスト装置は動作モードの設定により不揮発性半導体メモリをキャッシュまたはメモリとして利用してその利用率を向上させることができる。キャッシュ・モードとメモリ・モードでは不揮発性半導体メモリの共通の記憶領域を利用するため、メモリ・モードで利用するためにキャッシュの一部をメモリに割り当てたり、追加的にメモリを用意したりする必要がなくなる。また、メモリ・モードで利用する際には、磁気ディスクにアクセスしないため消費電力の低減を図ることができる。メモリ・モードに設定されている間にホスト装置から読み取りコマンドを受け取ったときには、磁気ディスクにアクセスしないで不揮発性半導体メモリが記憶するデータを出力することができる。   As a result, the host device can use the non-volatile semiconductor memory as a cache or a memory according to the setting of the operation mode and improve the utilization rate. Cache mode and memory mode use a common storage area of non-volatile semiconductor memory, so it is necessary to allocate a part of the cache to memory or to prepare additional memory for use in memory mode Disappears. Further, when using in the memory mode, power consumption can be reduced because the magnetic disk is not accessed. When a read command is received from the host device while the memory mode is set, data stored in the nonvolatile semiconductor memory can be output without accessing the magnetic disk.

キャッシュ・モードに設定されている間にホスト装置から読み取りコマンドを受け取ったときには、磁気ディスクまたは不揮発性半導体メモリが記憶するデータを出力することができる。不揮発性半導体メモリは、キャッシュ・モードに設定されたときに読み取りデータを記憶するリード・キャッシュ領域と書き込みデータを記憶するライト・キャッシュ領域を備える場合には、メモリ・モードに設定する際に、不揮発性半導体メモリにホスト装置から受け取ったデータを書き込むメモリ領域をライト・キャッシュ領域に定義することができる。   When a read command is received from the host device while the cache mode is set, data stored in the magnetic disk or the nonvolatile semiconductor memory can be output. When the nonvolatile semiconductor memory includes a read cache area for storing read data and a write cache area for storing write data when the cache mode is set, the nonvolatile semiconductor memory is not configured when the memory mode is set. A memory area in which data received from the host device is written in the volatile semiconductor memory can be defined as a write cache area.

この場合メモリ・モードでデータを書き込むことによるリード・キャッシュ領域のデータが消失することを防ぐことができる。メモリ領域はリード・キャッシュ領域の全体または一部を含むようにしてもよい。リード・キャッシュ領域の一部をメモリ領域にする場合は、メモリ・キャッシュ領域にそれまで記憶していたデータの位置を再配置してメモリ領域のためのスペースを確保することが望ましい。不揮発性半導体メモリがフラッシュ・メモリの場合は、メモリ・モードの間に不揮発性半導体メモリに書き込まれたデータをキャッシュ・モードに設定する際に消去しておけば、キャッシュ・モードに切り換わった直後からキャッシュとしての利用領域を確保することができる。   In this case, it is possible to prevent data in the read cache area from being lost by writing data in the memory mode. The memory area may include all or part of the read cache area. When a part of the read cache area is used as a memory area, it is desirable to secure the space for the memory area by rearranging the positions of the data stored in the memory cache area. If the nonvolatile semiconductor memory is a flash memory, the data written to the nonvolatile semiconductor memory during the memory mode can be erased when setting to the cache mode, immediately after switching to the cache mode. Therefore, it is possible to secure a use area as a cache.

本発明の第2の態様は、ハイブリッド・ハードディスク・ドライブを利用してコンピュータがパワー・ステートを制御する方法を提供する。ハイブリッド・ハードディスク・ドライブは、不揮発性半導体メモリと磁気ディスクを備えキャッシュ・モードまたはメモリ・モードに設定することができる。ハイブリッド・ハードディスク・ドライブはキャッシュ・モードに設定されている間にコンピュータが作成したデータを磁気ディスクと不揮発性半導体メモリに書き込む。   The second aspect of the present invention provides a method for a computer to control the power state using a hybrid hard disk drive. The hybrid hard disk drive includes a nonvolatile semiconductor memory and a magnetic disk, and can be set to a cache mode or a memory mode. The hybrid hard disk drive writes data created by the computer to the magnetic disk and the nonvolatile semiconductor memory while being set to the cache mode.

ハイブリッド・ハードディスク・ドライブはメモリ・モードに設定されている間に生成されたスリープ・イベントに応答してコンピュータのメイン・メモリが記憶する退避データを磁気ディスクにアクセスしないで不揮発性半導体メモリのキャッシュ・モードで使用する領域に記憶してからスリーピング・ステートに移行することができる。磁気ディスクへのアクセスがないことにより消費電力の低減と書き込み時間の短縮を図ることができる。   The hybrid hard disk drive does not access the saved data stored in the main memory of the computer in response to the sleep event generated while the memory mode is set, and does not access the magnetic disk to store the cache data in the nonvolatile semiconductor memory. It is possible to shift to the sleeping state after storing in the area used in the mode. Since there is no access to the magnetic disk, it is possible to reduce power consumption and write time.

ハイブリッド・ハードディスク・ドライブは、メモリ・モードに設定されている間に生成された復帰イベントに応答して退避データを磁気ディスクにアクセスしないで不揮発性半導体メモリからメイン・メモリに転送してパワー・オン状態に移行することができる。スリーピング・ステートに移行する際には、スリープ・イベントに応答してメイン・メモリにシステム・コンテキストを退避して、メイン・メモリの記憶保持に必要な電源以外の電源を停止した第1のスリーピング・ステートに移行し、第1のスリーピング・ステートに続いて所定の時間後に、メイン・メモリが記憶する退避データを不揮発性半導体メモリに退避して第1のスリーピング・ステートより消費電力が小さい第2のスリーピング・ステートに移行することができる。   In response to a recovery event generated while the hybrid hard disk drive is set to the memory mode, the saved data is transferred from the nonvolatile semiconductor memory to the main memory without accessing the magnetic disk and powered on. The state can be changed. When the sleep state is entered, the system context is saved in the main memory in response to the sleep event, and the first sleeping power supply other than the power supply necessary for holding the main memory is stopped. After a predetermined time following the first sleeping state, the saved data stored in the main memory is saved in the nonvolatile semiconductor memory, and the second power consumption is lower than that in the first sleeping state. It is possible to enter the sleeping state.

このときオペレーティング・システムが第1のスリーピング・ステートへ移行させ、BIOSが第2のスリーピング・ステートへ移行させることができる。第1のスリーピング・ステートに遷移している間にユーザが使用を再開するために復帰操作をする場合は短時間で復帰することができ、所定時間が経過しても復帰操作をしない場合は比較的長時間使用の予定がない場合が多いため、より待機電力の小さい第2のスリーピング・ステートに遷移させて利便性と消費電力の低減の調和を図ることができる。パワー・オン状態に移行する際には、BIOSが第2のスリーピング・ステートから第1のスリーピング・ステートへ移行させ、オペレーティング・システムが第1のスリーピング・ステートからパワー・オン状態へ移行させることができる。パワー・オン状態に移行する際には、メモリ・モードから前記キャッシュ・モードに切り換えることができる。   At this time, the operating system can shift to the first sleeping state, and the BIOS can shift to the second sleeping state. When the user performs a return operation to resume use while transitioning to the first sleeping state, the user can return in a short time, and when the user does not perform the return operation after a predetermined time, compare Since there are many cases where there is no plan to use for a long time, it is possible to achieve a balance between convenience and reduction of power consumption by transitioning to the second sleeping state with lower standby power. When transitioning to the power on state, the BIOS may transition from the second sleeping state to the first sleeping state, and the operating system may transition from the first sleeping state to the power on state. it can. When shifting to the power-on state, the memory mode can be switched to the cache mode.

本発明により、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリを有効に活用しながらデータを記憶する方法を提供することができた。さらに本発明により、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリに対して、キャッシュの容量に影響を与えないで一時的なデータを読み書きする方法を提供することができた。   According to the present invention, it is possible to provide a method for storing data while effectively using a nonvolatile semiconductor memory functioning as a cache of a hybrid disk drive. Furthermore, according to the present invention, it has been possible to provide a method for reading / writing temporary data from / to a nonvolatile semiconductor memory functioning as a cache of a hybrid disk drive without affecting the capacity of the cache.

さらに本発明により、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリに、消費電力の低減を図りながらデータを記憶する方法を提供することができた。さらに本発明により、ハイブリッド・ディスク・ドライブのキャッシュとして機能する不揮発性半導体メモリを利用してコンピュータのパワー・ステートを制御する方法を提供することができた。さらに本発明により、そのような方法を実現するハイブリッド・ディスク・ドライブ、携帯式コンピュータ、およびコンピュータ・プログラムを提供することができた。   Furthermore, according to the present invention, it has been possible to provide a method for storing data in a nonvolatile semiconductor memory functioning as a cache of a hybrid disk drive while reducing power consumption. Furthermore, according to the present invention, a method for controlling the power state of a computer using a nonvolatile semiconductor memory that functions as a cache of a hybrid disk drive can be provided. Furthermore, according to the present invention, it is possible to provide a hybrid disk drive, a portable computer, and a computer program that realize such a method.

ノートPC10のハードウェアの構成を示す機能ブロック図である。2 is a functional block diagram showing a hardware configuration of a notebook PC 10. FIG. ノートPC10のパワー・ステートの遷移を説明する図である。It is a figure explaining the transition of the power state of notebook PC10. ハイブリッドHDD100の構成を示す機能ブロック図である。2 is a functional block diagram showing a configuration of a hybrid HDD 100. FIG. フラッシュ・メモリ109の構成を説明する図である。2 is a diagram illustrating a configuration of a flash memory 109. FIG. BIOS_ROM25のデータ構造を説明する図である。4 is a diagram for explaining a data structure of a BIOS_ROM 25. POST選択コード105がBIOSの実行パスを決定するための論理を説明する図である。It is a figure explaining the logic for the POST selection code 105 to determine the execution path of BIOS. ノートPC10がS0ステートからSxステートへパワー・ステートを変更するときの手順を示すフローチャートである。It is a flowchart which shows the procedure in case notebook PC10 changes a power state from S0 state to Sx state. ノートPC10がS0ステートからSxステートへパワー・ステートを変更するときの手順を示すフローチャートである。It is a flowchart which shows the procedure in case notebook PC10 changes a power state from S0 state to Sx state. ノートPC10がSxステートからS0ステートへパワー・ステートを変更するときの手順を示すフローチャートである。It is a flowchart which shows the procedure in case notebook PC10 changes a power state from Sx state to S0 state. ノートPC10がSxステートからS0ステートへパワー・ステートを変更するときの手順を示すフローチャートである。It is a flowchart which shows the procedure in case notebook PC10 changes a power state from Sx state to S0 state.

[パワー・ステート]
図1は、ノートブック型パーソナル・コンピュータ(ノートPC)10のハードウェアの構成を示す機能ブロック図である。多くのハードウェアの構成は周知であるため、ここでは本発明に必要な範囲で説明する。プラットフォーム・コントローラ・ハブ(PCH)21にはCPU11が接続されている。CPU11にはメイン・メモリ15、ビデオ・コントローラ17が接続されている。ビデオ・コントローラ17には、LCD19が接続されている。
[Power State]
FIG. 1 is a functional block diagram showing a hardware configuration of a notebook personal computer (notebook PC) 10. Since many hardware configurations are well known, they will be described here within the scope necessary for the present invention. A CPU 11 is connected to the platform controller hub (PCH) 21. A main memory 15 and a video controller 17 are connected to the CPU 11. An LCD 19 is connected to the video controller 17.

PCH21はさまざまな規格のインターフェース機能を備えており、図1では代表的にSATAにハイブリッドHDD100が接続され、SPIにBIOS_ROM25が接続され、LPCにエンベデッド・コントローラ(EC)27およびNVRAM31が接続されている。EC27には、キーボード29およびパワー・コントローラ33が接続されている。パワー・コントローラ33には、パワー・ボタン37、リッド・センサ38、およびDC/DCコンバータ35が接続されている。   In FIG. 1, the hybrid HDD 100 is typically connected to the SATA, the BIOS_ROM 25 is connected to the SPI, and the embedded controller (EC) 27 and the NVRAM 31 are connected to the LPC. . A keyboard 29 and a power controller 33 are connected to the EC 27. A power button 37, a lid sensor 38, and a DC / DC converter 35 are connected to the power controller 33.

ノートPC10は、ACPI(Advanced Configuration and Power Interface)の省電力機能およびプラグ・アンド・プレイに対応している。図2は、ノートPC10のパワー・ステートの遷移を説明する図である。ACPIでは、S1ステートからS4ステートまでの4つのスリーピング・ステート(省電力状態)、S0ステート(パワー・オン状態)、およびS5ステート(パワー・オフ状態)を定義している。ACPIのスリーピング・ステートについてノートPC10は、一例としてS3ステートとS4ステートだけを定義しているが他のスリーピング・ステートを定義してもよい。   The notebook PC 10 supports an ACPI (Advanced Configuration and Power Interface) power saving function and plug and play. FIG. 2 is a diagram for explaining the power state transition of the notebook PC 10. ACPI defines four sleeping states (power-saving state), S0 state (power-on state), and S5 state (power-off state) from the S1 state to the S4 state. As for an example of the ACPI sleeping state, the notebook PC 10 defines only the S3 state and the S4 state, but other sleeping states may be defined.

S3ステートはいわゆるサスペンド状態といわれ、メイン・メモリ15の記憶を保持し、メイン・メモリ15の記憶保持に必要のない電源を停止する状態である。S3ステートに入る際にオペレーティング・システム(OS)は、電源が停止するデバイスが保持していたシステム・コンテキストをメイン・メモリ15に退避し、電源が復帰したときにそれを各デバイスに復帰する。   The S3 state is a so-called suspend state, in which the storage of the main memory 15 is held and the power supply unnecessary for holding the storage of the main memory 15 is stopped. When entering the S3 state, the operating system (OS) saves the system context held by the device whose power is stopped to the main memory 15, and returns it to each device when the power is restored.

S4ステートはいわゆるハイバネーション状態といわれ、ACPIでサポートされるスリーピング・ステートの中で最も起動までの時間が長く、かつ消費電力が少ない状態である。ノートPC10がS0ステートからS4ステートに遷移する際には、OSがハイブリッドHDD100にメイン・メモリ15が記憶する退避データを格納してからパワー・コントローラ33などの電源の起動に必要なデバイス以外のデバイスに対する電源をオフにする。   The S4 state is a so-called hibernation state, and is the state in which the time to start is the longest among the sleeping states supported by ACPI and the power consumption is low. When the notebook PC 10 transitions from the S0 state to the S4 state, the OS stores the saved data stored in the main memory 15 in the hybrid HDD 100 and then a device other than the device necessary for starting the power source such as the power controller 33 Turn off the power to the.

S5ステートはいわゆるソフト・オフともいわれ、OSが退避データをハイブリッドHDD100に退避しない点を除いては基本的に電力を供給するデバイスの範囲がS4ステートと同じである。以下においては、S3ステート、S4ステート、およびS5ステートを総称するときはSxステートと表示する。Sxステートに対してS0ステートは原則としてノートPC10が動作するために必要なすべてのデバイスに電力が供給された状態である。   The S5 state is also called so-called soft-off, and basically the range of devices that supply power is the same as the S4 state except that the OS does not save the saved data to the hybrid HDD 100. Hereinafter, the S3 state, the S4 state, and the S5 state are collectively referred to as the Sx state. In contrast to the Sx state, the S0 state is a state in which power is supplied to all devices necessary for the operation of the notebook PC 10 in principle.

本実施の形態を説明するために、S0ステートについては電源状態にだけ着目してHW_S0ステートを定義する。HW_S0ステートは、S0ステートと同じ範囲のデバイスに電力を供給するが、メイン・メモリ15の記憶状態および各デバイスのシステム・コンテキストはS0ステートとは異なる状態である。たとえば、S4ステートからS0ステートに遷移する過渡的な状態のときに、電源はパワー・オン状態に復帰しているがハイブリッドHDD100に記憶した退避データがメイン・メモリ15に転送される前の状態は、HW_S0ステートとはいえるがデータ状態まで含めるとS0ステートおよびS4ステートのいずれともいえない。   In order to describe the present embodiment, for the S0 state, the HW_S0 state is defined focusing only on the power supply state. The HW_S0 state supplies power to devices in the same range as the S0 state, but the storage state of the main memory 15 and the system context of each device are different from the S0 state. For example, in a transitional state transitioning from the S4 state to the S0 state, the power supply returns to the power-on state, but the state before the saved data stored in the hybrid HDD 100 is transferred to the main memory 15 is Although it can be said to be the HW_S0 state, it cannot be said that it is neither the S0 state nor the S4 state when the data state is included.

本実施の形態においてはさらにパワー・ステートを遷移させる際のソフトウェア上の実行主体がOSとBIOSのいずれであるかという視点に基づいてS34ステートを定義する。S34ステートは、OSがS0ステートからS3ステートに遷移させ、その後自動的にBIOSがS3ステートからS4ステートに遷移させた状態である。S0ステートからSxステートへ移行させる処理およびSxステートからS0ステートへの復帰処理はOSが行うため、OSが認識しているパワー・ステートと実際のパワー・ステートは一致するのが原則である。これに対してS34ステートでは、OSは遷移先がS3ステートであると認識しているが、電源状態とデータ状態は実質的にはS4ステートに相当する。   In the present embodiment, the S34 state is defined based on the viewpoint of whether the execution subject on the software when the power state is shifted is the OS or the BIOS. The S34 state is a state in which the OS changes from the S0 state to the S3 state, and then the BIOS automatically changes from the S3 state to the S4 state. Since the OS performs the process of shifting from the S0 state to the Sx state and the process of returning from the Sx state to the S0 state, the power state recognized by the OS and the actual power state are in principle the same. In contrast, in the S34 state, the OS recognizes that the transition destination is the S3 state, but the power supply state and the data state substantially correspond to the S4 state.

OSはS0ステートからS3ステートに遷移するときに、システム・コンテキストにS3ステートからS0ステートに復帰するコードを含めているため、S34ステートからS0ステートに直接復帰させることはできない。S34ステートからS0ステートに復帰するときは、BIOSが一旦システムをS34ステートからS3ステートに復帰させた後にBIOSから制御権を引き継いだOSがS3ステートからS0ステートに復帰させる必要がある。   Since the OS includes a code for returning from the S3 state to the S0 state in the system context when the OS makes a transition from the S0 state to the S3 state, the OS cannot directly return from the S34 state to the S0 state. When returning from the S34 state to the S0 state, it is necessary for the OS that has taken over the control right from the BIOS after the BIOS temporarily returns the system from the S34 state to the S3 state to return from the S3 state to the S0 state.

これに対しS0ステートからS4ステートに遷移するときは、OSがシステム・コンテキストをメイン・メモリ15に書き込んだ後に、メイン・メモリ15が記憶する退避データをOSがハイブリッドHDD100に記憶する。OSは、システム・コンテキストにS4ステートからS0ステートに復帰するコードを含めているため、システムをS4ステートからS0ステートに直接復帰させることができる。S0ステートからS34ステートに遷移する際に、S3ステートに留まっている時間をS34時間ということにする。なお、以後の説明ではSxステートにS34ステートも含むものとする。   On the other hand, when transitioning from the S0 state to the S4 state, the OS stores the saved data stored in the main memory 15 in the hybrid HDD 100 after the OS writes the system context in the main memory 15. Since the OS includes a code for returning from the S4 state to the S0 state in the system context, the system can directly return the system from the S4 state to the S0 state. When the state transitions from the S0 state to the S34 state, the time that remains in the S3 state is referred to as S34 time. In the following description, the Sx state includes the S34 state.

SxステートからS0ステートに復帰する際には、リセットされたデバイスに対してBIOSがPOST(Power On Self Test)を実行する。POSTは、CPU11にリセット信号が供給されてからOSのロードを開始するまでの間に、BIOS_ROM25に格納されたコードがPCH21のコントローラや周辺デバイスにパラメータを設定して使用できる状態にする作業をいう。POSTは、CPU11がリセットされてからOSがロードを開始するまでにBIOSコードが行うすべての処理であったり、あるいはその中からCPU11およびメイン・メモリ15などの基本的なデバイスに対する初期化以外の処理を除いた処理であったりしてよい。   When returning from the Sx state to the S0 state, the BIOS executes POST (Power On Self Test) on the reset device. POST refers to an operation in which a code stored in the BIOS_ROM 25 is set to a parameter in the controller of the PCH 21 or a peripheral device so that the code can be used after the reset signal is supplied to the CPU 11 and before loading of the OS is started. . POST is all processing performed by the BIOS code from when the CPU 11 is reset to when the OS starts loading, or processing other than initialization for basic devices such as the CPU 11 and the main memory 15 from among them. It may be processing excluding.

[主要なハードウェア]
図1に戻って、PCH21は、RTC(Real Time Clock)50とRTCメモリ51を含んでいる。RTC50およびRTCメモリ51は、AC/DCアダプタおよび電池パックの電力が停止して、PCH21がDC/DCコンバータ35から電力が供給されないときにボタン電池から電力の供給を受けることができる。RTCメモリ51は、BIOSのセット・アップ・データおよびRTCが生成した時間情報などを記憶する揮発性メモリである。RTCメモリ51は、S3ステートに遷移する際にBIOSが参照するS34フラグおよびS34時間を記憶する。RTCメモリ51へのS34フラグおよびS34時間の設定は、BIOSセット・アップ・コード119(図5参照)によりBIOS_ROM25のデータ領域83(図5参照)にS34イネーブルが設定されたときにBIOSのSMIハンドラが行う。
[Major hardware]
Returning to FIG. 1, the PCH 21 includes an RTC (Real Time Clock) 50 and an RTC memory 51. The RTC 50 and the RTC memory 51 can be supplied with power from the button battery when the power of the AC / DC adapter and the battery pack is stopped and the PCH 21 is not supplied with power from the DC / DC converter 35. The RTC memory 51 is a volatile memory that stores BIOS setup data, time information generated by the RTC, and the like. The RTC memory 51 stores an S34 flag and an S34 time that are referred to by the BIOS when transitioning to the S3 state. The S34 flag and S34 time are set in the RTC memory 51 when the S34 enable is set in the data area 83 (see FIG. 5) of the BIOS_ROM 25 by the BIOS setup code 119 (see FIG. 5). Do.

S34フラグは、OSがノートPC10をS3ステートに遷移させたときに、S34ステートに遷移する処理をするようにBIOSに指示するための情報である。S34時間は、OSがシステムをS3ステートに遷移させてからBIOSが自動的にS34ステートに遷移させるまでの時間をいう。PCH21は、S5ステートで電源が維持されるACPIレジスタ57とレジスタ58を含む。   The S34 flag is information for instructing the BIOS to perform the process of transitioning to the S34 state when the OS transitions the notebook PC 10 to the S3 state. The S34 time is the time from when the OS changes the system to the S3 state until the BIOS automatically changes to the S34 state. The PCH 21 includes an ACPI register 57 and a register 58 in which power is maintained in the S5 state.

ACPIレジスタ57とレジスタ58は、不揮発性のメモリで構成してもよい。ACPIレジスタ57は、ACPIに規定するSLP_TYPレジスタおよびSLP_ENレジスタに相当する。ACPIレジスタ57はS0ステートからSxステートに遷移する際にOSにより設定される。レジスタ58には、S3ステートに遷移してからS34時間が経過したときにRTC50によりタイム・アップ・ビットが設定される。   The ACPI register 57 and the register 58 may be configured by a nonvolatile memory. The ACPI register 57 corresponds to an SLP_TYP register and an SLP_EN register defined in ACPI. The ACPI register 57 is set by the OS when transitioning from the S0 state to the Sx state. A time-up bit is set in the register 58 by the RTC 50 when S34 time has elapsed since the transition to the S3 state.

ハイブリッドHDD100はOS、デバイス・ドライバ、アプリケーション・プログラム、およびユーザ・データなどを記憶する大容量の記憶装置である。ハイブリッドHDD100は、本実施の形態ではブート・ディスク・ドライブとしており、ノートPC10が起動するときにロードされるブート・イメージを格納している。ただし、本発明はブート・ディスク以外のハイブリッドHDDに適用することもできる。また、本発明は、USBなどの有線または無線インターフェースで直接接続される外付けタイプのハイブリッドHDDまたはネットワーク経由で接続されるハイブリッドHDDに適用することもできる。ハイブリッドHDD100の構成は、図3を参照して詳しく説明する。   The hybrid HDD 100 is a large-capacity storage device that stores an OS, a device driver, an application program, user data, and the like. The hybrid HDD 100 is a boot disk drive in the present embodiment, and stores a boot image that is loaded when the notebook PC 10 is activated. However, the present invention can also be applied to a hybrid HDD other than a boot disk. The present invention can also be applied to an external type hybrid HDD directly connected via a wired or wireless interface such as a USB or a hybrid HDD connected via a network. The configuration of the hybrid HDD 100 will be described in detail with reference to FIG.

EC27は、CPU、ROM、RAMなどで構成されたマイクロ・コンピュータであり、さらにA/D入力端子、D/A出力端子、タイマー、およびディジタル入出力端子を備えている。EC27は、ノートPC10の内部の動作環境の管理にかかるプログラムをCPU11とは独立して実行することができる。EC27は、キーボード・コントローラを含んでいる。   The EC 27 is a microcomputer composed of a CPU, ROM, RAM, and the like, and further includes an A / D input terminal, a D / A output terminal, a timer, and a digital input / output terminal. The EC 27 can execute a program related to management of the operating environment inside the notebook PC 10 independently of the CPU 11. The EC 27 includes a keyboard controller.

パワー・コントローラ33は、EC27からの指示に基づいてDC/DCコンバータ35を制御するワイヤード・ロジックのディジタル制御回路(ASIC)である。DC/DCコンバータ35は、AC/DCアダプタまたは電池パックから供給される直流電圧を、ノートPC10を動作させるために必要な複数の電圧に変換し、さらにパワー・ステートに応じて定義された電力供給区分に基づいて各々のデバイスに電力を供給する。   The power controller 33 is a wired logic digital control circuit (ASIC) that controls the DC / DC converter 35 based on an instruction from the EC 27. The DC / DC converter 35 converts a DC voltage supplied from an AC / DC adapter or a battery pack into a plurality of voltages necessary for operating the notebook PC 10, and further supplies power defined according to the power state. Power is supplied to each device based on the partition.

パワー・ボタン37はユーザが押下できるようにノートPC10の筐体表面に配置されている。リッド・センサ38は、ディスプレイ筐体の開閉に連動して動作する。Sxステートに遷移しているときに、パワー・ボタン37の押下またはリッド・センサの動作により起動イベントが生成されると、パワー・コントローラ33はノートPC10のすべてのデバイスに電力を供給して、システムをHW_S0ステートに遷移させる。パワー・ボタン37およびリッド・センサ38は、起動イベントを生成するデバイスの例示であり、他には指紋認証装置またはWOLのマジック・パケットを受け取るネットワーク・カードなども起動イベントを生成することができる。   The power button 37 is arranged on the surface of the casing of the notebook PC 10 so that the user can press it. The lid sensor 38 operates in conjunction with opening and closing of the display housing. When the activation event is generated by pressing the power button 37 or the operation of the lid sensor during the transition to the Sx state, the power controller 33 supplies power to all the devices of the notebook PC 10, and the system To HW_S0 state. The power button 37 and the lid sensor 38 are examples of devices that generate an activation event. Other than that, a fingerprint authentication device or a network card that receives a WOL magic packet can also generate an activation event.

[ハイブリッドHDDの構成と動作モード]
図3はハイブリッドHDD100の構成を示す機能ブロック図である。ハイブリッドHDD100は、SATAインターフェース101、ハードディスク・コントローラ(HDC)103、リード/ライト・チャネル105、メモリ・コントローラ107、NAND型のフラッシュ・メモリ109、DRAM111、MPU113、ROM115、RAM117、NAND型のフラッシュ・メモリ119、サーボ・コントローラ121およびドライバ123を含んでいる。ハイブリッドHDD100は、さらにボイス・コイル・モータ125、磁気ヘッド127、磁気ディスク129、およびスピンドル・モータ131を含んでいる。
[Configuration and operation mode of hybrid HDD]
FIG. 3 is a functional block diagram showing the configuration of the hybrid HDD 100. The hybrid HDD 100 includes a SATA interface 101, a hard disk controller (HDC) 103, a read / write channel 105, a memory controller 107, a NAND flash memory 109, a DRAM 111, an MPU 113, a ROM 115, a RAM 117, and a NAND flash memory. 119, a servo controller 121 and a driver 123 are included. The hybrid HDD 100 further includes a voice coil motor 125, a magnetic head 127, a magnetic disk 129, and a spindle motor 131.

フラッシュ・メモリ109は読み書きの可能な不揮発性半導体メモリの一例であり、磁気ディスク129に比べて容量は小さいがアクセス速度は速い。フラッシュ・メモリ109の構成は図4を参照して説明する。SATAインターフェース101は、PCH21に接続される。DRAM111は、ノートPC10のシステム(ホスト装置)とハイブリッドHDD100との間のデータ転送速度の差を調整するバッファとして機能する。   The flash memory 109 is an example of a readable / writable non-volatile semiconductor memory, and has a smaller capacity than the magnetic disk 129 but a faster access speed. The configuration of the flash memory 109 will be described with reference to FIG. The SATA interface 101 is connected to the PCH 21. The DRAM 111 functions as a buffer that adjusts the difference in data transfer speed between the system (host device) of the notebook PC 10 and the hybrid HDD 100.

MPU113はRAM117を作業領域に利用してROM115に格納されたファームウェアを実行する。MPU113は、HDC103を通じてホスト装置から受け取ったコマンドを解釈してハイブリッドHDD100の動作を制御する。コマンドは、ACPIに定義されているコマンドに加えて、本実施の形態で新たに導入した特別なコマンドを含む。ハイブリッドHDD100は、フラッシュ・メモリ109の利用方法に関連して2つの動作モードを備えている。   The MPU 113 executes the firmware stored in the ROM 115 using the RAM 117 as a work area. The MPU 113 interprets a command received from the host device through the HDC 103 and controls the operation of the hybrid HDD 100. The command includes a special command newly introduced in the present embodiment in addition to a command defined in ACPI. The hybrid HDD 100 has two operation modes related to how to use the flash memory 109.

第1の動作モードは、ハイブリッドHDDとしての本来の動作をするためにフラッシュ・メモリ109をキャッシュとして利用する方法で、そのときのハイブリッドHDD100の動作モードをキャッシュ・モードということにする。第2の動作モードはホスト装置がフラッシュ・メモリ109をメモリとして利用する方法で、そのときのハイブリッドHDD100の動作モードをメモリ・モードということにする。   The first operation mode is a method of using the flash memory 109 as a cache in order to perform an original operation as a hybrid HDD, and the operation mode of the hybrid HDD 100 at that time is referred to as a cache mode. The second operation mode is a method in which the host device uses the flash memory 109 as a memory, and the operation mode of the hybrid HDD 100 at that time is referred to as a memory mode.

キャッシュ・モードは、通常のハイブリッドHDDの動作モードであるが、メモリ・モードは本発明で導入したあらたな動作モードである。メモリ・モードで動作するハイブリッドHDD100は、ATAが規定する読み取りまたは書き込みのコマンドには応答せず、ホスト装置が発行する特別なコマンドだけに応答する。ホスト装置は、メモリ・モードで動作するハイブリッドHDD100に対して特別なコマンドを送って、書き込みデータをフラッシュ・メモリ109に書き込み、読み取りデータをフラッシュ・メモリ109から読み取ることができる。このときMPU113は読み書きのいずれの場合でも磁気ディスク129へアクセスしないように制御する。   The cache mode is an operation mode of a normal hybrid HDD, but the memory mode is a new operation mode introduced in the present invention. The hybrid HDD 100 operating in the memory mode does not respond to a read or write command specified by the ATA, but only a special command issued by the host device. The host device can send a special command to the hybrid HDD 100 operating in the memory mode to write the write data to the flash memory 109 and read the read data from the flash memory 109. At this time, the MPU 113 performs control so as not to access the magnetic disk 129 in both cases of reading and writing.

キャッシュ・モードで動作するハイブリッドHDD100がホスト装置からATAが規定する読み書きのコマンドを受け取ったときは、フラッシュ・メモリ109をキャッシュとして利用し、周知のアルゴリズムで磁気ディスク129とフラッシュ・メモリ109に対する読み書きをする。フラッシュ・メモリ119は、動作モードを設定するモード・フラグおよびS34ステートに遷移させるために必要なフラグを格納する。   When the hybrid HDD 100 operating in the cache mode receives a read / write command specified by the ATA from the host device, the flash memory 109 is used as a cache, and the read / write to the magnetic disk 129 and the flash memory 109 is performed using a known algorithm. To do. The flash memory 119 stores a mode flag for setting an operation mode and a flag necessary for transition to the S34 state.

ハイブリッドHDD100は、モード・フラグを設定してからリセットすることにより動作モードを変更することができる。モード・フラグが設定されていない状態でリセットされるとキャッシュ・モードで動作し、モード・フラグが設定された状態でリセットされるとメモリ・モードで動作する。ハイブリッドHDD100は、ノートPC10がS0ステートも含むHW_S0ステートのときだけパワー・オン状態になり、Sxステートのときはパワー・オフ状態になる。   The hybrid HDD 100 can change the operation mode by resetting after setting the mode flag. When reset with the mode flag not set, it operates in cache mode, and when reset with the mode flag set, it operates in memory mode. The hybrid HDD 100 is in the power-on state only when the notebook PC 10 is in the HW_S0 state including the S0 state, and is in the power-off state when in the Sx state.

パワー・オン状態のハイブリッドHDD100はホスト装置からのコマンドまたは独自のアルゴリズムで、アクティブ、アイドル、スタンバイ、またはスリープなどのパワー・マネジメントを実行して消費電力の低減を図る。スタンバイとスリープでは磁気ディスク129の回転が停止する。ハイブリッドHDD100の構成はROM115が格納するファームウェアとフラッシュ・メモリ119に設定するモード・フラグなどのデータを除いて周知である。   The hybrid HDD 100 in the power-on state reduces power consumption by executing power management such as active, idle, standby, or sleep by a command from the host device or a unique algorithm. In standby and sleep, the rotation of the magnetic disk 129 is stopped. The configuration of the hybrid HDD 100 is well known except for data such as firmware stored in the ROM 115 and mode flags set in the flash memory 119.

[フラッシュ・メモリの構造]
図4はフラッシュ・メモリ109の構成を説明する図である。図4の構成は一例であり、本発明の趣旨に沿った他の構成を採用することもできる。図4(A)は、キャッシュ・モードのときの構成を示し、図4(B)、(C)はメモリ・モードのときの構成を示す。図4(A)では、フラッシュ・メモリ109の記憶領域がシステム領域151、リザーブ領域153、リード・キャッシュ領域155、およびライト・キャッシュ領域157に区分されている。
[Flash memory structure]
FIG. 4 is a diagram for explaining the configuration of the flash memory 109. The configuration in FIG. 4 is an example, and other configurations in accordance with the gist of the present invention can be employed. 4A shows the configuration in the cache mode, and FIGS. 4B and 4C show the configuration in the memory mode. In FIG. 4A, the storage area of the flash memory 109 is divided into a system area 151, a reserve area 153, a read cache area 155, and a write cache area 157.

システム領域151には、ハイブリッドHDD100の動作に必要なシステム・コードの一部が記憶されている。ハイブリッドHDD100は、リセット時にシステム領域151に格納されたシステム・コードを実行して磁気ディスク129からシステム・データを読み取らないでも、ホスト装置の初期化コマンドなどの一部のコマンドを処理することができる。   In the system area 151, a part of the system code necessary for the operation of the hybrid HDD 100 is stored. The hybrid HDD 100 can process some commands such as an initialization command of the host device without executing the system code stored in the system area 151 at the time of resetting and reading the system data from the magnetic disk 129. .

リザーブ領域153は、磁気ディスク129に書き込まれたデータのなかで特に読み取り頻度が高いデータを格納する。リザーブ領域153は、リード・キャッシュ領域に記憶されるデータのなかで特に優先度の高いデータを格納する領域である。リード・キャッシュ領域155は、ホスト装置が磁気ディスク129に書き込まれたデータを最初に読み出すときに同じデータを書き込み、次回以降にホスト装置から同じデータへの読み取り要求があったときに磁気ディスク129ではなくリード・キャッシュ領域155から読み取るための領域である。   The reserved area 153 stores data that is read frequently among data written to the magnetic disk 129. The reserved area 153 is an area for storing data having a particularly high priority among the data stored in the read cache area. The read cache area 155 writes the same data when the host device first reads the data written to the magnetic disk 129, and the next time the host device makes a read request to the same data, This is an area for reading from the read cache area 155.

リード・キャッシュ領域155のデータは、最もヒット率が高くなるように所定のアルゴリズムで新たなデータに置換される。ライト・キャッシュ領域157は、ホスト装置が磁気ディスク129に書き込むデータを高速に書き込む領域である。ホスト装置がライト・キャッシュ領域157に書き込んだデータは、ライトバック・キャッシングまたはライトスルー・キャッシングで磁気ディスク129にも書き込まれる。   The data in the read cache area 155 is replaced with new data by a predetermined algorithm so that the hit rate becomes the highest. The write cache area 157 is an area in which data to be written to the magnetic disk 129 by the host device is written at high speed. Data written by the host device to the write cache area 157 is also written to the magnetic disk 129 by write-back caching or write-through caching.

図4(B)では、ライト・キャッシュ領域157に割り当てられた領域にメモリ領域159が定義されている。メモリ領域159は一例では、メイン・メモリ15が記憶する退避データを、S34ステートに遷移する際に退避するための領域である。図4(B)では、メモリ領域159に退避データを記憶してもリード・キャッシュ領域155に記憶されていたデータは影響を受けない。   In FIG. 4B, a memory area 159 is defined as an area allocated to the write cache area 157. In one example, the memory area 159 is an area for saving the save data stored in the main memory 15 when transitioning to the S34 state. In FIG. 4B, even if the saved data is stored in the memory area 159, the data stored in the read cache area 155 is not affected.

図4(C)では、メモリ領域161がライト・キャッシュ領域157とリード・キャッシュ領域155の一部に定義されている。キャッシュ・モードで使用するリード・キャッシュ領域155はリード・キャッシュ領域155aまで縮小されるため、退避データの記憶のためにそれまで記憶されていたデータを消去しなければならない場合がある。このときメモリ・コントローラ107は、優先度の低いデータを消去したり、リード・キャッシュ領域155のデータを消去しないために記憶位置を再配置したりすることができる。なお、リード・キャッシュ領域155のデータをすべて消去して、ライト・キャッシュ領域157の全体とリード・キャッシュ領域155の全体をメモリ領域161に設定することもできる。   In FIG. 4C, the memory area 161 is defined as a part of the write cache area 157 and the read cache area 155. Since the read cache area 155 used in the cache mode is reduced to the read cache area 155a, it may be necessary to erase the data stored so far in order to store the saved data. At this time, the memory controller 107 can erase the low-priority data or rearrange the storage location so as not to erase the data in the read cache area 155. It is also possible to erase all data in the read cache area 155 and set the entire write cache area 157 and the entire read cache area 155 in the memory area 161.

〔BIOS_ROMの構成〕
図5はBIOS_ROM25のデータ構造を説明する図である。BIOS_ROM25に格納されたBIOSコードは、一例としてUEFIファームウェアで構成している。BIOS_ROM25は、BIOSコードを格納するBIOS領域81とBIOSコードが利用するデータ領域83を含む。BIOS_ROM25はBIOSコードの書き換えに伴うリスクを軽減するためにブート・ブロック方式を採用している。BIOS領域81はブート・ブロック85とシステム・ブロック87に分かれている。ブート・ブロック85は書き込み保護がされている記憶領域でここに格納されたプログラムまたはコードはTPM(Trusted Platform Module )の仕様書に規定するCRTM(Core Root of Trust for Measurement)として扱われ特別な権限がないと書き換えができないようになっている。
[Configuration of BIOS_ROM]
FIG. 5 is a diagram for explaining the data structure of the BIOS_ROM 25. The BIOS code stored in the BIOS_ROM 25 is configured by UEFI firmware as an example. The BIOS_ROM 25 includes a BIOS area 81 that stores the BIOS code and a data area 83 that is used by the BIOS code. The BIOS_ROM 25 employs a boot block method in order to reduce the risk associated with rewriting the BIOS code. The BIOS area 81 is divided into a boot block 85 and a system block 87. The boot block 85 is a write-protected storage area, and the program or code stored here is treated as a CRTM (Core Root of Trust for Measurement) defined in the TPM (Trusted Platform Module) specifications and has a special authority. It is impossible to rewrite without it.

ブート・ブロック85には基本デバイス初期化コード101、一貫性認証コード103、POST選択コード105および退避コード113がCRTMとして格納されている。CRTMは、BIOSコードの中で一貫性のある部分として構成され、ノートPC10がブートするときに必ず最初に実行される。ノートPC10のプラットフォームに関するすべての一貫性の計測は一貫性認証コード103により行われる。基本デバイス初期化コード101は、ノートPC10が起動してSxステートからS0ステートに復帰する際に、メイン・メモリ15にBIOSコードをロードして実行を開始するまでの処理に必要なCPU11、メイン・メモリ15およびその他の基本的なデバイスの検出、検査および初期化を最低限の範囲で行う。   In the boot block 85, the basic device initialization code 101, the consistency authentication code 103, the POST selection code 105, and the save code 113 are stored as CRTM. The CRTM is configured as a consistent part of the BIOS code and is always executed first when the notebook PC 10 boots. All consistency measurements regarding the platform of the notebook PC 10 are performed by the consistency authentication code 103. The basic device initialization code 101 is stored in the CPU 11, main memory necessary for processing until the BIOS 10 is loaded into the main memory 15 and execution is started when the notebook PC 10 is activated and returns from the Sx state to the S0 state. Detection, inspection, and initialization of the memory 15 and other basic devices are performed to a minimum extent.

POST選択コード105は、図6の論理値表を含んでおり、PCH21のレジスタ57、58、RTCメモリ51のS34フラグを参照して、基本POSTコード107、簡易POSTコード111、S3POSTコード115または退避コード113のいずれを実行するかを判断してBIOSコードの実行パスを制御する。退避コード113は、S0ステートからS34ステートに遷移する際に、S3ステートにおいてメイン・メモリ15が記憶する退避データをハイブリッドHDD100に転送する。退避コード113は、メイン・メモリ15の離散的なアドレスに記憶されている退避データを連続するデータに構成してから転送することができる。したがって、退避データのサイズはメイン・メモリ25の容量よりも大幅に小さくすることができる。   The POST selection code 105 includes the logical value table of FIG. 6, and refers to the registers 57 and 58 of the PCH 21 and the S34 flag of the RTC memory 51, and the basic POST code 107, simple POST code 111, S3 POST code 115 or save. It is determined which one of the codes 113 is executed, and the execution path of the BIOS code is controlled. The save code 113 transfers the save data stored in the main memory 15 in the S3 state to the hybrid HDD 100 when transitioning from the S0 state to the S34 state. The save code 113 can be transferred after the save data stored at discrete addresses in the main memory 15 is formed into continuous data. Therefore, the size of the saved data can be made significantly smaller than the capacity of the main memory 25.

基本POSTコード107はS4ステートまたはS5ステートからブートをするために、すべての内部デバイスを対象にして検出、検査、および初期化といった完全なPOST処理を行う。基本POSTコード107は、PCH21に接続されている周辺デバイスからパラメータを取得して現在のシステムにおいて最適なパラメータを選択しPCH21が含むコントローラに設定する。   In order to boot from the S4 state or the S5 state, the basic POST code 107 performs a complete POST process such as detection, inspection, and initialization for all internal devices. The basic POST code 107 acquires a parameter from a peripheral device connected to the PCH 21, selects an optimum parameter in the current system, and sets it in a controller included in the PCH 21.

このように内部デバイスを検査してそこから取得した情報に基づいて選択した最適なパラメータをコントローラに設定することを初期化といい、いずれかの場所に保存しておいた過去に設定したパラメータを対応するコントローラに設定することをリストアということにする。リストアは、内部デバイスの検出、検査および最適パラメータの選択のための処理を省略するので初期化に比べて短時間で完了することができる。   In this way, inspecting the internal device and setting the optimal parameter selected based on the information obtained from it in the controller is called initialization, and the parameter set in the past saved in one of the locations is called initialization. Setting to the corresponding controller is called restoration. The restoration can be completed in a shorter time than the initialization because the processing for detecting the internal device, inspecting, and selecting the optimum parameter is omitted.

認証コード109は、パワー・オン・パスワード、HDDパスワード、および管理者パスワードなどのBIOSパスワードの設定のためのプロンプトをLCD19に表示したり、入力されたパスワードを認証しまたはハイブリッドHDD100に送ってロックを解除したりする。簡易POSTコード111は、S34ステートからS0ステートに復帰する際に、一部のデバイスの検出、検査、および最適なパラメータの選択などのPOST処理を省略して基本POSTコード107よりも短時間でブートを完了する。POST処理を省略するデバイスの対象としては、ハイブリッドHDD100、USBデバイス、および無線モジュールなどのような応答時間が長いために初期化に多くの時間を費やすデバイスや、動作のタイミングからOSが初期化をしても問題がないようなデバイスなどを選定することができる。   The authentication code 109 displays a prompt for setting a BIOS password such as a power-on password, HDD password, and administrator password on the LCD 19, or authenticates the input password or sends it to the hybrid HDD 100 to lock it. Or cancel. When the simple POST code 111 returns from the S34 state to the S0 state, the POST processing such as detection of some devices, inspection, and selection of optimum parameters is omitted, and the booting is performed in a shorter time than the basic POST code 107. To complete. The devices that omit the POST process include devices that spend a lot of time for initialization because of the long response time such as the hybrid HDD 100, USB device, and wireless module, and the OS is initialized from the operation timing. You can select a device that does not cause any problems.

S4ステートまたはS5ステートからブートするときに実行された基本POSTコード107が設定した最適なパラメータやそのときのデバイスの情報など(以下、パラメータという。)はBIOS_ROM25のデータ領域83またはNVRAM31に格納される。簡易POSTコード111は、ブートするときに基本的なデバイスを除いて格納しておいたパラメータをリストアすることでPOST時間を短縮することができる。   The optimum parameters set by the basic POST code 107 executed when booting from the S4 state or the S5 state, the device information at that time (hereinafter referred to as parameters), and the like are stored in the data area 83 of the BIOS_ROM 25 or the NVRAM 31. . The simple POST code 111 can shorten the POST time by restoring parameters stored except for the basic device when booting.

S3POSTコード115は、S3ステートからレジュームする際に簡易POSTコード111よりも短時間でPOST処理を完了する。S4ステートまたはS5ステートからブートする際に基本POSTコード107が設定したパラメータは、S0ステートにおいてメイン・メモリ15に記憶される。S0ステートからS3ステートにサスペンドするときには、メイン・メモリ15に記憶されたパラメータおよびS3POSTコード115の記憶が維持される。S3POSTコード115は、メイン・メモリ15に記憶されたパラメータをリストアすることで短時間にコントローラの設定を完了することができる。   The S3 POST code 115 completes the POST process in a shorter time than the simple POST code 111 when resuming from the S3 state. The parameters set by the basic POST code 107 when booting from the S4 state or S5 state are stored in the main memory 15 in the S0 state. When suspending from the S0 state to the S3 state, the parameters stored in the main memory 15 and the storage of the S3POST code 115 are maintained. The S3 POST code 115 can complete the controller setting in a short time by restoring the parameters stored in the main memory 15.

I/Oコード117は、CPU11がリアル・モードで動作する際に周辺デバイスにアクセスするための入出力のインターフェースを提供する。BIOSセット・アップ・コード119は、ブート・ドライブの選択、各デバイスの機能のイネーブル/ディスエーブル、セキュリティのイネーブル/ディスエーブルなどのような内部デバイスに対する設定をユーザがカスタマイズするためのインターフェースを提供する。ブートの初期の段階で所定のキーを操作するとBIOSセット・アップ・コード119が実行されて、LCD19にBIOSセット・アップ画面が表示される。   The I / O code 117 provides an input / output interface for accessing peripheral devices when the CPU 11 operates in the real mode. The BIOS setup code 119 provides an interface for the user to customize settings for internal devices such as boot drive selection, enable / disable features of each device, enable / disable security, etc. . When a predetermined key is operated in the initial stage of booting, the BIOS setup code 119 is executed, and the BIOS setup screen is displayed on the LCD 19.

ユーザが設定したセット・アップ・データの多くは、PCH21内のRTCメモリ51に記憶される。CPU11は基本POSTコード107、簡易POSTコード111、またはS3POSTコード115を実行する際にRTCメモリ51に記憶されたセット・アップ・データを参照する。ユーザは、BIOSセット・アップ画面を通じて、S34ステートの利用をイネーブルまたはディスエーブルに設定することができる。   Most of the setup data set by the user is stored in the RTC memory 51 in the PCH 21. The CPU 11 refers to the setup data stored in the RTC memory 51 when executing the basic POST code 107, the simple POST code 111, or the S3 POST code 115. The user can enable or disable the use of the S34 state through the BIOS setup screen.

さらにS34ステートの利用をイネーブルに設定する際には、S34時間を設定することもできる。設定されたS34イネーブル・フラグとS34時間は、データ領域83に格納される。環境ユーティリティ・コード121は、ノートPC10の温度および電力を制御する。各BIOSコードは、図3に示したように独立したコードで構成する必要はなく、コードの一部を共通化してそれぞれの機能を果たすように実行パスを制御するように構成してもよい。本発明はブート・ブロック方式を採用しないBIOS_ROM、あるいは、BIOS領域の全体をブート・ブロックにしたBIOS_ROMに適用することもできる。   Further, when the use of the S34 state is enabled, the S34 time can be set. The set S34 enable flag and S34 time are stored in the data area 83. The environmental utility code 121 controls the temperature and power of the notebook PC 10. Each BIOS code does not need to be composed of independent codes as shown in FIG. 3, but may be configured to control an execution path so that a part of the code is shared and each function is performed. The present invention can also be applied to a BIOS_ROM that does not employ a boot block method, or a BIOS_ROM in which the entire BIOS area is a boot block.

[S0ステートからSxステートへの遷移]
図7、図8はノートPC10がS0ステートからSxステートへパワー・ステートを変更するときの手順を示すフローチャートである。ブロック301で、ノートPC10は最初にS5ステートに遷移しておりACPIレジスタ57はS5ステートに設定されているものと想定する。また、レジスタ58およびRTCメモリ51のS34フラグ、S34時間は何らか値が設定されているものとする。パワー・ボタン37を操作して起動イベントを生成しノートPC10の電源を起動すると、パワー・コントローラ33がDC/DCコンバータ35を動作させてノートPC10をHW_S0ステートに遷移させる。
[Transition from S0 state to Sx state]
7 and 8 are flowcharts showing a procedure when the notebook PC 10 changes the power state from the S0 state to the Sx state. In block 301, it is assumed that the notebook PC 10 first transits to the S5 state and the ACPI register 57 is set to the S5 state. Further, it is assumed that some values are set for the S34 flag and S34 time of the register 58 and the RTC memory 51. When the power button 37 is operated to generate a startup event and the notebook PC 10 is powered on, the power controller 33 operates the DC / DC converter 35 to transition the notebook PC 10 to the HW_S0 state.

フラッシュ・メモリ119には、モード・ビットが設定されていないため、リセットされたハイブリッドHDD100はキャッシュ・モードで動作する。EC27から起動イベントを受け取ったPCH21は、CPU11にリセット信号を送ってパワー・オン・リセットする。リセットされたCPU11は、ブート・ブロック85に格納された基本デバイス初期化コード101から実行するように構成されている。   Since the mode bit is not set in the flash memory 119, the reset hybrid HDD 100 operates in the cache mode. The PCH 21 that has received the activation event from the EC 27 sends a reset signal to the CPU 11 to perform power-on reset. The reset CPU 11 is configured to execute from the basic device initialization code 101 stored in the boot block 85.

リセット信号を受け取ったCPU11は、電圧が安定すると内部のキャッシュおよびレジスタを初期化する。CPU11はその後あらかじめ定められたBIOS_ROM25のアドレス(リセット・ベクタ)にアクセスしてインストラクションをフェッチする。CPU11は、アクセス先であるリセット・ベクタをBIOS_ROM25の基本デバイス初期化コード101のアドレスに切り換える。   The CPU 11 that has received the reset signal initializes the internal cache and the register when the voltage is stabilized. The CPU 11 then accesses a predetermined BIOS_ROM 25 address (reset vector) and fetches an instruction. The CPU 11 switches the reset vector that is the access destination to the address of the basic device initialization code 101 in the BIOS_ROM 25.

CPU11はブート・ブロック85に格納されたBIOSコードをキャッシュに読み出して、メイン・メモリ15およびPCH21などのBIOSコードを実行するのに必要な基本的なデバイスの検出、検査および初期化をする。基本デバイス初期化コード101は、初期化するためにコントローラに設定したパラメータをデータ領域83および必要に応じてNVRAM31に書き込む。   The CPU 11 reads out the BIOS code stored in the boot block 85 to the cache, and performs basic device detection, inspection, and initialization necessary for executing the BIOS code such as the main memory 15 and the PCH 21. The basic device initialization code 101 writes parameters set in the controller for initialization to the data area 83 and, if necessary, the NVRAM 31.

メイン・メモリ15が利用できるようになると、つづいて基本デバイス初期化コード101はシステム・ブロック87に格納されているBIOSコードおよびデータ領域83のパラメータをメイン・メモリ15にロードして、メイン・メモリ15をシャドウRAMとして利用できるようにする。CPU11は、ブート・ブロック85に格納された一貫性認証コード103およびPOST選択コード105の実行が終了すると、メイン・メモリ15にアクセスしてロードしたBIOSコードを実行する。   When the main memory 15 becomes available, the basic device initialization code 101 then loads the BIOS code stored in the system block 87 and the parameters of the data area 83 into the main memory 15, and the main memory 15 15 can be used as a shadow RAM. When the execution of the consistency authentication code 103 and the POST selection code 105 stored in the boot block 85 is completed, the CPU 11 accesses the main memory 15 and executes the loaded BIOS code.

つぎに、一貫性認証コード103は、システム・ブロック87に格納されたBIOSコードの改変に関する検証を行う。検証が終了するとブロック303でCPU11はPOST選択コード105を実行する。POST選択コード105は最初にRTCメモリ51のS34フラグを参照する。POST選択コード105は、S34フラグが設定されていないことを確認するとACPIレジスタ57を参照する。POST選択コード105は、ACPIレジスタ57にS5ビットが設定されていることを確認すると、図6の実行パス#4に従って基本POSTコード107に制御権を移す。なお以下の手順においてCPU11がリセットされるたびに実行されるPOST選択コード105は、図6の論理値表を参照して同様の手順で実行パスを決定する。   Next, the consistency authentication code 103 verifies the modification of the BIOS code stored in the system block 87. When the verification is completed, the CPU 11 executes the POST selection code 105 in block 303. The POST selection code 105 first refers to the S34 flag in the RTC memory 51. When the POST selection code 105 confirms that the S34 flag is not set, the POST selection code 105 refers to the ACPI register 57. When the POST selection code 105 confirms that the S5 bit is set in the ACPI register 57, the control right is transferred to the basic POST code 107 according to the execution path # 4 in FIG. The POST selection code 105 that is executed each time the CPU 11 is reset in the following procedure determines the execution path in the same procedure with reference to the logical value table of FIG.

ブロック305では基本POSTコード107が実行されている初期の段階で、ユーザがキーボード29の所定のファンクション・キーを押下するとBIOSセット・アップ・コード119が呼び出されてLCD19にセット・アップ画面を表示する。本発明との関連では、セット・アップ画面を通じてユーザがBIOS_ROM25のデータ領域83に対するS34フラグの設定およびS34時間の設定を行う。ユーザは、S3ステートの利便性とS34ステートの省電力の効果を考慮して0時間から所定の時間の範囲の間でS34時間を設定することができる。一例としてS34時間は3時間に設定する。BIOSセット・アップ・コード119は入力された他のセット・アップ・データをRTCメモリ51に記憶する。   In block 305, at the initial stage when the basic POST code 107 is being executed, when the user presses a predetermined function key on the keyboard 29, the BIOS setup code 119 is called to display the setup screen on the LCD 19. . In relation to the present invention, the user sets the S34 flag and the S34 time for the data area 83 of the BIOS_ROM 25 through the setup screen. In consideration of the convenience of the S3 state and the power saving effect of the S34 state, the user can set the S34 time between 0 hours and a predetermined time. As an example, S34 time is set to 3 hours. The BIOS set-up code 119 stores other input set-up data in the RTC memory 51.

ユーザはセット・アップ画面を通じて、ハイブリッドHDD100のフラッシュ・メモリ109に、メモリ領域159またはメモリ領域161として必要な容量を設定することができる。基本POSTコード107は、設定されたメモリ領域159、161の容量をハイブリッドHDD100のフラッシュ・メモリ119に格納する。ユーザがBIOSセット・アップ・コード119を終了すると、中断していた基本POSTコード107が実行される。基本POSTコード107は基本デバイス初期化コード101で処理されていない残りのすべてのデバイスの検出、検査および初期化を行う。   The user can set a necessary capacity as the memory area 159 or the memory area 161 in the flash memory 109 of the hybrid HDD 100 through the setup screen. The basic POST code 107 stores the set capacity of the memory areas 159 and 161 in the flash memory 119 of the hybrid HDD 100. When the user finishes the BIOS setup code 119, the interrupted basic POST code 107 is executed. The basic POST code 107 detects, inspects, and initializes all remaining devices that are not processed by the basic device initialization code 101.

BIOSコードのブート処理が終了するとブロック307でOSのロードが開始される。OS、デバイス・ドライバ、およびアプリケーションなどのプログラムがハイブリッドHDD100からメイン・メモリ15にロードされて実行される。その後OSは、BIOSコードがロードされたメイン・メモリ15の記憶領域を、S3ステートからS0ステートにレジュームする際に必要なコードを除いて一般のプログラムのために開放しS0ステートに遷移させる。以後の手順も含めてS0ステートに遷移するたびに、ハイブリッドHDD100は基本デバイス初期化コード101により初期化される。   When the boot process of the BIOS code is completed, loading of the OS is started in block 307. Programs such as an OS, a device driver, and an application are loaded from the hybrid HDD 100 to the main memory 15 and executed. After that, the OS releases the storage area of the main memory 15 loaded with the BIOS code for a general program except for the code necessary for resuming from the S3 state to the S0 state, and makes a transition to the S0 state. The hybrid HDD 100 is initialized by the basic device initialization code 101 every time the state transitions to the S0 state including the subsequent procedure.

ブロック309でユーザはパワー・ボタン37の押下、リッド・クローズ、Fnキーの操作、OSのインターフェースを通じた操作またはパワー・マネジメントの実行などによりノートPC10をS0ステートからSxステートに遷移させる操作をする。操作の種類と遷移先の関係はあらかじめ定義されている。S3ステートに移行させる操作とS34ステートに移行させる操作は同一とすることができる。   In block 309, the user performs an operation of shifting the notebook PC 10 from the S0 state to the Sx state by pressing the power button 37, lid closing, operating the Fn key, operating through the OS interface, or executing power management. The relationship between the operation type and the transition destination is predefined. The operation for shifting to the S3 state and the operation for shifting to the S34 state can be the same.

すなわち、ユーザはBIOSセット・アップ・コード119を実行してS34フラグを設定した後は、S34ステートへの遷移を意識した操作をする必要はない。ノートPC10はユーザがS3ステートに遷移させる操作をするとS3ステートに遷移し、S34時間の経過により自動的にS34ステートに遷移する。S3ステートに遷移するときはブロック311に移行し、S4ステートまたはS5ステートに遷移するときはブロック313に移行してそれぞれの処理が行われる。また、S34ステートに遷移するときはブロック315で処理される。   That is, after executing the BIOS setup code 119 and setting the S34 flag, the user does not need to perform an operation in consideration of the transition to the S34 state. When the user performs an operation for transition to the S3 state, the notebook PC 10 transitions to the S3 state, and automatically transitions to the S34 state when S34 time elapses. When transitioning to the S3 state, the process proceeds to block 311, and when transitioning to the S4 state or S5 state, the process proceeds to block 313 to perform each processing. Further, when the state transits to the S34 state, it is processed in a block 315.

BIOS_ROM25のS34フラグがディスエーブルに設定されているときはブロック311の処理が行われる。OSが、ACPIレジスタ57にS3ステートへの遷移がイネーブルになるように設定すると、ノートPC10はS3ステートに遷移する。ACPIレジスタへの設定をトラップしたSMIハンドラは、BIOS_ROM25のS34フラグを確認してRTCメモリ51のS34フラグとS34時間をクリアする。   When the S34 flag of the BIOS_ROM 25 is set to disable, the process of block 311 is performed. When the OS sets the ACPI register 57 to enable the transition to the S3 state, the notebook PC 10 transitions to the S3 state. The SMI handler that traps the setting in the ACPI register checks the S34 flag in the BIOS_ROM 25 and clears the S34 flag and S34 time in the RTC memory 51.

ブロック313でOSは、ACPIレジスタ57にS4ステートまたはS5ステートがイネーブルになるように設定して遷移させる。SMIハンドラはACPIレジスタへの設定をトラップしないため、RTCメモリ51に対するS34フラグの設定をしない。BIOS_ROM25のS34フラグがイネーブルに設定されているときはS34ステートに遷移するブロック315の処理が行われる。ブロック315の手順は図8を参照して説明する。   In block 313, the OS makes a transition by setting the ACPI register 57 so that the S4 state or the S5 state is enabled. Since the SMI handler does not trap the setting in the ACPI register, it does not set the S34 flag for the RTC memory 51. When the S34 flag of the BIOS_ROM 25 is set to enable, the process of the block 315 that transits to the S34 state is performed. The procedure of block 315 will be described with reference to FIG.

図8は、ノートPC10のシステムの動作とそれに対応するハイブリッドHDD100の動作を示している。ブロック401ではブロック309で生成された操作イベントを検出したPCH21がCPU11に割り込みをかけると、OSは動作中のプログラムにS3ステートに遷移するための処理をするように指示し、OSおよび必要に応じてデバイス・ドライバおよびBIOSがS3ステートで消失するシステム・コンテキストをメイン・メモリ15に記憶する。   FIG. 8 shows the operation of the notebook PC 10 system and the corresponding operation of the hybrid HDD 100. In block 401, when the PCH 21 that detected the operation event generated in block 309 interrupts the CPU 11, the OS instructs the operating program to perform processing for transitioning to the S3 state, and the OS and as necessary. The system context in which the device driver and BIOS disappear in the S3 state is stored in the main memory 15.

システム・コンテキストは、OSやデバイス・ドライバにより各デバイスのレジスタに設定されるハードウェア・コンテキストや、OSやデバイス・ドライバがCPU11およびその他のデバイスのキャッシュに記憶する制御データなどのソフトウェア・コンテキストを含む。OSは、S0ステートからS3ステートまたはS4ステートに遷移する際にメイン・メモリ15にシステム・コンテキストを書き込む。   The system context includes a software context such as a hardware context that is set in a register of each device by the OS or device driver, and control data that the OS or device driver stores in the cache of the CPU 11 and other devices. . The OS writes the system context in the main memory 15 when transitioning from the S0 state to the S3 state or the S4 state.

この時点に対応するブロック451でハイブリッドHDD100は、キャッシュ・モードに設定されており、アクティブ、アイドル、スタンバイ、スリープなどのいずれかのパワー・ステートに遷移している。ブロック403でOSは、I/Oコード117を通じてハイブリッドHDD100にATAが規定するPower Up in Standbyの設定をするためのSET FEATURESコマンドを送る。コマンドを受け取ったMPU113は、フラッシュ・メモリ119にPower Up in Standbyのイネーブルを設定する。Power Up in Standbyの設定は、それ以後に解除するコマンドを受け取らない限り、パワー・オン・リセット、ハードウェア・リセット、またはソフトウェア・リセットのいずれによっても解除されることはない。   In block 451 corresponding to this time point, the hybrid HDD 100 is set to the cache mode, and has transitioned to one of the power states such as active, idle, standby, and sleep. In block 403, the OS sends a SET FEATURES command for setting Power Up in Standby defined by the ATA to the hybrid HDD 100 through the I / O code 117. Receiving the command, the MPU 113 sets power up in standby enable in the flash memory 119. The setting of Power Up in Standby is not released by any of power-on reset, hardware reset, or software reset unless a command to be released thereafter is received.

Power Up in Standbyがイネーブルに設定されると、次に電源が投入されたハイブリッドHDD100はスタンバイに遷移し、磁気ディスク129を回転させないでSET FEATURES、IDENTIFY DEVICE、IDENTIFY PACKET DEVICEなどのATAのコマンドを処理することができる。そして、それ以後にホスト装置から磁気ディスク129に対する読み書きのコマンドを受け取ったときは磁気ディスク129を回転させて処理する。ブロック405でOSは、I/Oコード117を通じてハイブリッドHDD100にメモリ・モードに設定するためのコマンドを送る。ブロック453でコマンドを受け取ったMPU113は、フラッシュ・メモリ119にモード・フラグを設定する。   When Power Up in Standby is enabled, the hybrid HDD 100 that is powered on next transitions to standby and processes ATA commands such as SET FEATURES, IDENTIFY DEVICE, and IDENTIFY PACKET DEVICE without rotating the magnetic disk 129. can do. Thereafter, when a read / write command for the magnetic disk 129 is received from the host device, the magnetic disk 129 is rotated for processing. In block 405, the OS sends a command for setting the memory mode to the hybrid HDD 100 through the I / O code 117. Receiving the command in block 453, the MPU 113 sets a mode flag in the flash memory 119.

OSは各プログラムからS3ステートへ遷移する準備が完了したことの通知を受け取ると、ACPIレジスタ57に対してS3ステートへの遷移がイネーブルになるように設定する。SMIハンドラは、ACPIレジスタ57への設定をトラップして、BIOS_ROM25にS34フラグが設定されていることを確認すると、RTCメモリ51にS34フラグとS34時間を設定する。ACPIレジスタ57がイネーブルに設定されると、PCH21はEC27に指示してメイン・メモリ15の記憶を維持するために必要な電源以外の電源を停止し、RTC50のアラーム機構(RTC Resume)を動作させてブロック407でノートPC10をS3ステートに遷移させる。このときブロック455で、ハイブリッドHDD100の電源も停止する。   When the OS receives notification from each program that preparation for transition to the S3 state has been completed, the OS sets the ACPI register 57 so that transition to the S3 state is enabled. When the SMI handler traps the setting in the ACPI register 57 and confirms that the S34 flag is set in the BIOS_ROM 25, the SMI handler sets the S34 flag and the S34 time in the RTC memory 51. When the ACPI register 57 is set to enable, the PCH 21 instructs the EC 27 to stop the power supply other than the power supply necessary for maintaining the storage in the main memory 15, and operates the alarm mechanism (RTC Resume) of the RTC 50. In block 407, the notebook PC 10 is shifted to the S3 state. At this time, in block 455, the power supply of the hybrid HDD 100 is also stopped.

ブロック409でRTC50が計時した時間がRTCメモリ51に設定したS34時間に到達するとブロック411に移行する。ブロック411でRTC50はレジスタ58にタイム・アウト・ビットを設定し、さらにEC27に指示してHW_S0ステートに遷移させる。このときブロック457でハイブリッドHDD100はパワー・オン状態に遷移するが、Power Up in Standbyがイネーブルに設定されているため、磁気ディスク129は回転しない。   When the time counted by the RTC 50 in block 409 reaches the S34 time set in the RTC memory 51, the process proceeds to block 411. In block 411, the RTC 50 sets a time-out bit in the register 58, and further instructs the EC 27 to transit to the HW_S0 state. At this time, the hybrid HDD 100 transitions to the power-on state in block 457, but the magnetic disk 129 does not rotate because Power Up in Standby is enabled.

ブロック411でリセットされたCPU11はCRTMを最初のアドレスから実行する。POST選択コード105は、レジスタ58とRTCメモリ51を参照して図6の実行パス#2を選択してからレジスタ58のタイム・アップ・ビットを解除する。ブロック413で退避コード113に制御権が移る。初期化されたハイブリッドHDD100のMPU113はブロック461でフラッシュ・メモリ119を参照して、モード・フラグの設定を確認するとメモリ・モードに移行する。ブロック415で退避コード113はフラッシュ・メモリ409をメモリ・モードで使用するための特別な初期化コマンドを発行する。   The CPU 11 reset in block 411 executes CRTM from the first address. The POST selection code 105 selects the execution path # 2 in FIG. 6 with reference to the register 58 and the RTC memory 51, and then releases the time-up bit of the register 58. At block 413, the control right is transferred to the save code 113. The initialized MPU 113 of the hybrid HDD 100 refers to the flash memory 119 in block 461 and confirms the setting of the mode flag, and shifts to the memory mode. In block 415, the save code 113 issues a special initialization command for using the flash memory 409 in memory mode.

コマンドを受け取ったMPU113はメモリ・コントローラ107に指示してブロック463でフラッシュ・メモリ109を初期化しメモリ領域159またはメモリ領域161を形成する。このときMPU113は必要に応じてリード・キャッシュ領域155に記憶されていたデータの記憶場所を変更してメモリ領域161のためのスペースを確保する。メモリ領域159またはメモリ領域161に対応するライト・キャッシュ領域157またはリード・キャッシュ領域155は、それまで記憶されていたデータが消去されて新たなデータが記録できる状態になる。   Upon receiving the command, the MPU 113 instructs the memory controller 107 to initialize the flash memory 109 in block 463 and form the memory area 159 or the memory area 161. At this time, the MPU 113 secures a space for the memory area 161 by changing the storage location of the data stored in the read cache area 155 as necessary. In the write cache area 157 or the read cache area 155 corresponding to the memory area 159 or the memory area 161, the data stored so far is erased and new data can be recorded.

ブロック417で退避コード113は、メイン・メモリ15に記憶されている退避データの離散的なアドレスを連続するアドレスに構成してから特別な書き込みコマンドを発行してシステム・コンテキストを含む退避データをハイブリッドHDD100に転送する。アドレスの構成により、転送する退避データのサイズはメイン・メモリ15のサイズの半分以下まで小さくすることができる。メモリ・モードでのデータ転送で退避コード113は、OSがハイブリッドHDD100に書き込みデータを転送する場合のように磁気ディスク129のLBAを指定しないで退避データのサイズを知らせて転送できる。PCH21からハイブリッドHDD100にはSATAでシリアル転送されるため、適当なサイズごとにパリティ・チェックを付加して転送することが望ましい。   In block 417, the save code 113 configures the discrete addresses of the save data stored in the main memory 15 into continuous addresses and then issues a special write command to hybridize the save data including the system context. Transfer to HDD 100. Depending on the address configuration, the size of the saved data to be transferred can be reduced to less than half the size of the main memory 15. In the data transfer in the memory mode, the save code 113 can be transferred by notifying the size of the save data without specifying the LBA of the magnetic disk 129 as in the case where the OS transfers the write data to the hybrid HDD 100. Since serial transfer is performed from the PCH 21 to the hybrid HDD 100 by using SATA, it is desirable to add a parity check for each appropriate size.

ブロック465でコマンドを受け取ったMPU113は、SATAインターフェース101を通じて受け取った退避データをメモリ領域159またはメモリ領域161に書き込むようにHDC103およびメモリ・コントローラ107などを設定する。このとき、MPU113は磁気ディスク129を回転させない。また、MPU113はATAの書き込みコマンドを受け取ってもそれに応答しない。この時点で退避コード113は、SET FEATURESコマンドを送ってPower Up in Standbyの設定を解除してもよい。MPU113はフラッシュ・メモリ109への退避データの書き込みが終了すると、フラッシュ・メモリ119に退避データが書き込まれていることを示すフラグを設定する。   Receiving the command in block 465, the MPU 113 sets the HDC 103, the memory controller 107, and the like so as to write the saved data received through the SATA interface 101 to the memory area 159 or the memory area 161. At this time, the MPU 113 does not rotate the magnetic disk 129. Further, even if the MPU 113 receives an ATA write command, it does not respond to it. At this time, the save code 113 may cancel the setting of Power Up in Standby by sending a SET FEATURES command. When the MPU 113 finishes writing the saved data to the flash memory 109, the MPU 113 sets a flag indicating that the saved data is written to the flash memory 119.

転送が終了すると退避コード113はブロック419でEC27を通じてパワー・コントローラ33などの起動に必要な最小限のデバイスの電源以外の電源を停止する。それに伴ってブロック467でハイブリッドHDD100はパワー・オフ状態になる。この時点でノートPC10は、OSはシステムがS3ステートに遷移していると認識するが実際の電源状態およびデータ状態はS4ステートであるS34ステートに遷移する。   When the transfer is completed, the save code 113 stops the power supply other than the power supply of the minimum device necessary for starting the power controller 33 or the like through the EC 27 in block 419. Accordingly, in block 467, the hybrid HDD 100 is powered off. At this point, the notebook PC 10 recognizes that the OS has transitioned to the S3 state, but the actual power state and data state transition to the S34 state, which is the S4 state.

[SxステートからS0ステートへの遷移]
図9、図10はノートPC10がSxステートからS0ステートへパワー・ステートを変更するときの手順を示すフローチャートである。ブロック501でSxステートに遷移しているノートPC10に対して、ブロック503でパワー・ボタン37の押下またはリッド・センサ38の動作があると起動イベントが生成されて、パワー・コントローラ33がDC/DCコンバータ35を動作させブロック505でシステムをHW_S0ステートに遷移させる。
[Transition from Sx state to S0 state]
9 and 10 are flowcharts showing a procedure when the notebook PC 10 changes the power state from the Sx state to the S0 state. When the power button 37 is pressed or the lid sensor 38 is operated in block 503 for the notebook PC 10 that has transitioned to the Sx state in block 501, a start event is generated, and the power controller 33 is switched to DC / DC. The converter 35 is operated and in block 505, the system is shifted to the HW_S0 state.

このときリセットされたハイブリッドHDD100は、フラッシュ・メモリ119にモード・フラグが設定されているためメモリ・モードで動作する。Power Up in Standbyの設定が解除されていない場合は、磁気ディスク129は回転しない。MPU113は、フラッシュ・メモリ119に退避データが格納されていることを示すフラグが世定されている間はたとえ初期化をするための特別なコマンドを受け取っても、フラッシュ・メモリ109の初期化をしない。ブロック507でCPU11はPOST選択コード105を実行する。   The hybrid HDD 100 reset at this time operates in the memory mode because the mode flag is set in the flash memory 119. If the setting of Power Up in Standby is not cancelled, the magnetic disk 129 does not rotate. The MPU 113 initializes the flash memory 109 even if a special command for initialization is received while the flag indicating that the saved data is stored in the flash memory 119 is set. do not do. In block 507, the CPU 11 executes the POST selection code 105.

POST選択コード105は、RTCメモリ51のS34フラグ、レジスタ57のビットを確認して図6の実行パスを選択する。POST選択コード105は、S3ステートからの復帰であると判断したときは実行パス#3を選択してブロック509でS3POSTコード115に制御権を移す。S3POSTコード115がPOST処理を終了すると、ノートPC10はS3ステートへ遷移する前の状態に復帰する。POST選択コード105はS4、S5ステートからの復帰であると判断したときは実行パス#4を選択してブロック511で基本POSTコード107を実行してシステムをS0ステートに復帰させる。   The POST selection code 105 confirms the S34 flag of the RTC memory 51 and the bit of the register 57, and selects the execution path of FIG. When it is determined that the POST selection code 105 is a return from the S3 state, the execution path # 3 is selected and the control right is transferred to the S3 POST code 115 in block 509. When the S3 POST code 115 ends the POST process, the notebook PC 10 returns to the state before the transition to the S3 state. When it is determined that the POST selection code 105 is a return from the S4 and S5 states, the execution path # 4 is selected and the basic POST code 107 is executed in the block 511 to return the system to the S0 state.

ブロック513のS34ステートからの復帰処理は図10を参照して説明する。ブロック601でPOST選択コード105が実行パス#1を選択すると、簡易POSTコード111に制御権が移る。このときブロック651でハイブリッドHDD100は、メモリ・モードで動作している。ブロック603で簡易POSTコード111は、ハイブリッドHDD100に退避データを読み取るための特別な読み取りコマンドを発行する。退避データは常に一括して転送されるため特別な読み取りコマンドは、読み取りの指示をするだけでよい。   The return processing from the S34 state in block 513 will be described with reference to FIG. When the POST selection code 105 selects the execution path # 1 in block 601, the control right is transferred to the simple POST code 111. At this time, in block 651, the hybrid HDD 100 operates in the memory mode. In block 603, the simple POST code 111 issues a special read command for reading saved data to the hybrid HDD 100. Since the saved data is always transferred in a batch, a special read command only requires a read instruction.

メモリ・モードの間は、MPU113はATAの読み取りコマンドには応答しないで、フラッシュ・メモリ109のメモリ領域159、161に書き込まれたデータを出力する。ブロック653でコマンドを受け取ったMPU113は、フラッシュ・メモリ109に書き込まれた退避データをメイン・メモリ15に転送する。このとき、MPU113は磁気ディスク129が回転しないように制御する。   During the memory mode, the MPU 113 does not respond to the ATA read command and outputs the data written in the memory areas 159 and 161 of the flash memory 109. The MPU 113 that has received the command in block 653 transfers the saved data written in the flash memory 109 to the main memory 15. At this time, the MPU 113 controls so that the magnetic disk 129 does not rotate.

ブロック605で簡易POSTコード111は、ハイブリッドHDD100にキャッシュ・モードに変更するための特別なモード切換コマンドを発行する。ブロック655でコマンドを受け取ったMPU113は、フラッシュ・メモリ119に設定されていたモード・フラグを解除する。ブロック607で簡易POSTコード601は、フラッシュ・メモリ109をキャッシュ・モードで利用するための特別な初期化コマンドを発行する。コマンドを受け取ったMPU113は、ブロック657でフラッシュ・メモリ109を図4(A)の状態になるように初期化する。   In block 605, the simple POST code 111 issues a special mode switching command for changing the hybrid HDD 100 to the cache mode. Receiving the command in block 655, the MPU 113 clears the mode flag set in the flash memory 119. In block 607, the simple POST code 601 issues a special initialization command for using the flash memory 109 in the cache mode. Receiving the command, the MPU 113 initializes the flash memory 109 so as to be in the state shown in FIG.

ブロック609で簡易POSTコード111はハイブリッドHDD100にATAが規定するDEVICE RESETコマンドを送る。コマンドを受け取ったMPU113は、リセット動作をする際にフラッシュ・メモリ119のモード・フラグが解除されていることを確認すると、ブロック659でキャッシュ・モードに移行する。簡易POSTコード111はこの時点でPower Up in Standbyの解除をすれば、S34ステートへの遷移と復帰の間に磁気ディスク129は一切回転しないので、一層消費電力を低減することができる。   In block 609, the simple POST code 111 sends a DEVICE RESET command specified by the ATA to the hybrid HDD 100. When the MPU 113 receiving the command confirms that the mode flag of the flash memory 119 has been cleared during the reset operation, the MPU 113 shifts to the cache mode in block 659. If the simple POST code 111 cancels the power-up in standby at this point, the magnetic disk 129 does not rotate at all during the transition to the S34 state, and the power consumption can be further reduced.

この時点でノートPC10のデータ状態はS3ステートであるが、電源状態はHW_S0ステートである。データ転送が終了するとブロック611で簡易POSTコード111は、制御権をOSに移す。OSは、ACPIレジスタ57を参照して遷移元のパワー・ステートがS3ステートであると認識してS0ステートに遷移するために、必要に応じてデバイス・ドライバおよびBIOSと協働しながらシステム・コンテキストをリセットされた各デバイスに復帰してS0ステートに遷移する。S34ステートからS0ステートへの復帰は、磁気ディスク129にアクセスしないでフラッシュ・メモリ109から退避データを読み出し、かつ簡易POSTコード111で復帰処理をするため短時間で終了することができる。   At this time, the data state of the notebook PC 10 is the S3 state, but the power state is the HW_S0 state. When the data transfer is completed, the simple POST code 111 transfers the control right to the OS in block 611. The OS refers to the ACPI register 57, recognizes that the power state of the transition source is the S3 state, and transitions to the S0 state, so that the system context cooperates with the device driver and the BIOS as necessary. Is returned to each reset device and transitions to the S0 state. The return from the S34 state to the S0 state can be completed in a short time because the saved data is read from the flash memory 109 without accessing the magnetic disk 129 and the return processing is performed with the simple POST code 111.

これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。   Although the present invention has been described with the specific embodiments shown in the drawings, the present invention is not limited to the embodiments shown in the drawings, and is known so far as long as the effects of the present invention are achieved. It goes without saying that any configuration can be adopted.

100 ハイブリッドHDD
109 フラッシュ・メモリ
155 リード・キャッシュ領域
157 ライト・キャッシュ領域
159、161 メモリ領域
100 Hybrid HDD
109 Flash memory 155 Read cache area 157 Write cache area 159, 161 Memory area

Claims (8)

キャッシュ・モードまたはメモリ・モードに設定することが可能で、磁気ディスクと前記キャッシュ・モードおよび前記メモリ・モードで使用することが可能な共通の記憶領域を含む不揮発性半導体メモリを備えるハイブリッド・ハードディスク・ドライブにアクセスが可能なコンピュータがパワー・ステートを制御する方法であって、
前記キャッシュ・モードに設定されている間に前記コンピュータが作成したデータを前記磁気ディスクおよび前記共通の記憶領域に書き込むステップと、
スリープ・イベントに応答して前記ハイブリッド・ハードディスク・ドライブを前記メモリ・モードに設定するステップと、
前記コンピュータのメイン・メモリが記憶する退避データを前記磁気ディスクにアクセスしないで前記共通の記憶領域に記憶してからスリーピング・ステートに移行するステップと
を有する方法。
Hybrid hard disk drive comprising a non-volatile semiconductor memory that can be set to a cache mode or a memory mode and includes a magnetic disk and a common storage area that can be used in the cache mode and the memory mode A computer that has access to the drive to control the power state,
Writing the data created by the computer to the magnetic disk and the common storage area while the cache mode is set;
Setting the hybrid hard disk drive to the memory mode in response to a sleep event ;
Storing the saved data stored in the main memory of the computer in the common storage area without accessing the magnetic disk and then entering the sleeping state.
前記メモリ・モードに設定されている間に生成された復帰イベントに応答して前記退避データを前記磁気ディスクにアクセスしないで前記共通の記憶領域から前記メイン・メモリに転送してパワー・オン状態に移行するステップを有する請求項1に記載の方法。   In response to a return event generated while the memory mode is set, the save data is transferred from the common storage area to the main memory without accessing the magnetic disk, and is in a power-on state. The method of claim 1 including the step of transitioning. 前記パワー・オン状態に移行するステップが、前記メモリ・モードから前記キャッシュ・モードに切り換えるステップを含む請求項2に記載の方法。   The method of claim 2, wherein the step of transitioning to the power on state comprises switching from the memory mode to the cache mode. キャッシュ・モードまたはメモリ・モードに設定することが可能で、磁気ディスクと前記キャッシュ・モードおよび前記メモリ・モードで使用することが可能な共通の記憶領域を含む不揮発性半導体メモリを備えるハイブリッド・ハードディスク・ドライブにアクセスが可能なコンピュータがパワー・ステートを制御する方法であって、
前記キャッシュ・モードに設定されている間に前記コンピュータが作成したデータを前記磁気ディスクおよび前記共通の記憶領域に書き込むステップと、
スリープ・イベントに応答して前記メモリ・モードに設定した後にメイン・メモリにシステム・コンテキストを退避して、前記メイン・メモリの記憶保持に必要な電源以外の電源を停止した第1のスリーピング・ステートに移行するステップと
前記第1のスリーピング・ステートに続いて所定の時間後に、前記メイン・メモリが記憶する退避データを前記磁気ディスクにアクセスしないで前記共通の記憶領域に退避して前記第1のスリーピング・ステートより消費電力の小さい第2のスリーピング・ステートに移行するステップと
を有する方法。
Hybrid hard disk drive comprising a non-volatile semiconductor memory that can be set to a cache mode or a memory mode and includes a magnetic disk and a common storage area that can be used in the cache mode and the memory mode A computer that has access to the drive to control the power state,
Writing the data created by the computer to the magnetic disk and the common storage area while the cache mode is set;
The first sleeping state in which the system context is saved in the main memory after the memory mode is set in response to the sleep event, and the power supply other than the power supply necessary for holding the main memory is stopped. The steps to transition to
After a predetermined time following the first sleeping state, the saved data stored in the main memory is saved in the common storage area without accessing the magnetic disk and is consumed from the first sleeping state. Transitioning to a low power second sleeping state.
オペレーティング・システムが前記コンピュータに前記第1のスリーピング・ステートへ移行する機能を発揮させ、BIOSが前記コンピュータに前記第2のスリーピング・ステートへ移行する機能を発揮させる請求項4に記載の方法。 The method according to claim 4 , wherein an operating system causes the computer to perform a function of transitioning to the first sleeping state, and a BIOS causes the computer to perform a function of transitioning to the second sleeping state. 前記BIOSが前記コンピュータに前記第2のスリーピング・ステートから前記第1のスリーピング・ステートへ移行する機能を発揮させるステップと、
前記オペレーティング・システムが前記コンピュータに前記第1のスリーピング・ステートからパワー・オン状態へ移行する機能を発揮させるステップを
有する請求項5に記載の方法。
The BIOS causing the computer to perform a function of transitioning from the second sleeping state to the first sleeping state;
The method according to claim 5 , further comprising the step of causing the operating system to perform a function of transitioning from the first sleeping state to a power-on state.
スリーピング・ステートに遷移することが可能なコンピュータであって、
メイン・メモリと、
キャッシュ・モードまたはメモリ・モードに設定することが可能で、磁気ディスクと前記キャッシュ・モードおよび前記メモリ・モードで使用することが可能な共通の記憶領域を含む不揮発性半導体メモリを備えるハイブリッド・ハードディスク・ドライブと、
スリープ・イベントの生成手段と、
前記ハイブリッド・ハードディスク・ドライブを前記キャッシュ・モードまたは前記メモリ・モードに設定する設定手段と、
前記キャッシュ・モードに設定した後にデータを前記磁気ディスクおよび前記共通の記憶領域に書き込み、前記スリープ・イベントに応答して前記メモリ・モードに設定した後に前記メイン・メモリが記憶する退避データを前記磁気ディスクにアクセスしないで前記共通の記憶領域に記憶してから前記スリーピング・ステートに移行する制御手段と
を有するコンピュータ。
A computer capable of transitioning to a sleeping state,
Main memory,
Hybrid hard disk drive comprising a non-volatile semiconductor memory that can be set to a cache mode or a memory mode and includes a magnetic disk and a common storage area that can be used in the cache mode and the memory mode Drive,
A means for generating a sleep event;
Setting means for setting the hybrid hard disk drive to the cache mode or the memory mode;
After the cache mode is set, data is written to the magnetic disk and the common storage area, and the save data stored in the main memory after the memory mode is set in response to the sleep event is stored in the magnetic mode. A computer having control means for storing in the common storage area without accessing a disk and then shifting to the sleeping state;
キャッシュ・モードまたはメモリ・モードに設定することが可能で、磁気ディスクと前記キャッシュ・モードおよび前記メモリ・モードで使用することが可能な共通の記憶領域を含む不揮発性半導体メモリを備えるハイブリッド・ハードディスク・ドライブにアクセスが可能なコンピュータに、
スリープ・イベントを生成する機能と、
前記ハイブリッド・ハードディスク・ドライブを前記キャッシュ・モードまたは前記メモリ・モードに設定する機能と、
前記キャッシュ・モードに設定した後にデータを前記磁気ディスクおよび前記共通の記憶領域に書き込む機能と、
前記スリープ・イベントに応答して前記メモリ・モードに設定した後にメイン・メモリが記憶する退避データを前記磁気ディスクにアクセスしないで前記共通の記憶領域に記憶してからスリーピング・ステートに移行する機能と
を実現させるためのコンピュータ・プログラム。
Hybrid hard disk drive comprising a non-volatile semiconductor memory that can be set to a cache mode or a memory mode and includes a magnetic disk and a common storage area that can be used in the cache mode and the memory mode On a computer that has access to the drive,
The ability to generate sleep events;
A function of setting the hybrid hard disk drive to the cache mode or the memory mode;
A function of writing data to the magnetic disk and the common storage area after setting the cache mode;
A function of storing saved data stored in a main memory after setting the memory mode in response to the sleep event in the common storage area without accessing the magnetic disk and then entering a sleeping state; A computer program for realizing
JP2012202410A 2012-09-14 2012-09-14 Method and portable computer for storing data in a hybrid disk drive Active JP5894044B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012202410A JP5894044B2 (en) 2012-09-14 2012-09-14 Method and portable computer for storing data in a hybrid disk drive

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012202410A JP5894044B2 (en) 2012-09-14 2012-09-14 Method and portable computer for storing data in a hybrid disk drive

Publications (2)

Publication Number Publication Date
JP2014056543A JP2014056543A (en) 2014-03-27
JP5894044B2 true JP5894044B2 (en) 2016-03-23

Family

ID=50613778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012202410A Active JP5894044B2 (en) 2012-09-14 2012-09-14 Method and portable computer for storing data in a hybrid disk drive

Country Status (1)

Country Link
JP (1) JP5894044B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558065B2 (en) * 2015-02-02 2017-01-31 Kabushiki Kaisha Toshiba Memory system including cache
US10877693B2 (en) 2018-06-29 2020-12-29 Intel Corporation Architecture for dynamic transformation of memory configuration

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61190644A (en) * 1985-02-19 1986-08-25 Toshiba Corp Cache disc subsystem
JP2000105639A (en) * 1998-09-29 2000-04-11 Sony Corp Power saving circuit
JP2008090435A (en) * 2006-09-29 2008-04-17 Toshiba Corp Information processor and control method therefor
JP2008090436A (en) * 2006-09-29 2008-04-17 Toshiba Corp Information processor and system state control method
JP2009187604A (en) * 2008-02-04 2009-08-20 Fujitsu Ltd Magnetic disk device
EP2251867A4 (en) * 2008-03-11 2012-09-05 Sharp Kk Optical disc drive device
US8621144B2 (en) * 2008-06-26 2013-12-31 Intel Corporation Accelerated resume from hibernation in a cached disk system
JP2011090460A (en) * 2009-10-21 2011-05-06 Toshiba Corp Data storage device and method of controlling the same

Also Published As

Publication number Publication date
JP2014056543A (en) 2014-03-27

Similar Documents

Publication Publication Date Title
TWI528162B (en) Computer system and operating system switching method thereof
JP5128677B2 (en) System and method for fast platform hibernation and resume
US20080082845A1 (en) Information processing apparatus and system state control method
JP5885881B2 (en) Implementing a power off state on a computing device
JP5860543B2 (en) Boot data loading
TW201011524A (en) Method and controller for power management
US9483278B2 (en) Arrangement for secure independent operating environments in a computer
JP2008090435A (en) Information processor and control method therefor
JP2006259903A (en) Information processing device and starting method
US20140129759A1 (en) Low power write journaling storage system
TWI534707B (en) Computer system, shutdown and boot method thereof
JP4533960B2 (en) Storage device and information processing device
US20120233451A1 (en) Method for fast resuming computer system and computer system
JP5894044B2 (en) Method and portable computer for storing data in a hybrid disk drive
JP2000010666A (en) Computer system and flash rom rewriting method
JP2003085041A (en) Disc cache system
JP2008159003A (en) Information processor
TWI522924B (en) Electronic device and operating system switching method thereof
JP3961669B2 (en) Computer system and data transfer control method
JP5378451B2 (en) Method and computer for reducing start-up reliability and POST time
JP5764114B2 (en) Method for resuming portable computer from power saving state, power state control method, and portable computer
JP5913770B2 (en) Method for controlling the power state of a storage device comprising a rotating disk and portable computer
JP2000081921A (en) Computer system
JP2003345474A (en) Computer system and data transfer control method
US20130080717A1 (en) Information processing apparatus and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150317

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150330

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150410

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150728

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160223

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160225

R150 Certificate of patent or registration of utility model

Ref document number: 5894044

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250