JP6018113B2 - Method, computer and host device for preventing data loss of nonvolatile memory - Google Patents

Method, computer and host device for preventing data loss of nonvolatile memory Download PDF

Info

Publication number
JP6018113B2
JP6018113B2 JP2014083345A JP2014083345A JP6018113B2 JP 6018113 B2 JP6018113 B2 JP 6018113B2 JP 2014083345 A JP2014083345 A JP 2014083345A JP 2014083345 A JP2014083345 A JP 2014083345A JP 6018113 B2 JP6018113 B2 JP 6018113B2
Authority
JP
Japan
Prior art keywords
time
power
refresh
standby state
computer
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
JP2014083345A
Other languages
Japanese (ja)
Other versions
JP2015203995A (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 JP2014083345A priority Critical patent/JP6018113B2/en
Publication of JP2015203995A publication Critical patent/JP2015203995A/en
Application granted granted Critical
Publication of JP6018113B2 publication Critical patent/JP6018113B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、時間経過による不揮発性メモリのデータ消失を防止する技術に関し、さらには、ホスト装置が待機状態に遷移している間のデータ消失を防止する技術に関する。   The present invention relates to a technique for preventing data loss of a nonvolatile memory over time, and further relates to a technique for preventing data loss while a host device is transitioning to a standby state.

電気的な書き換えが可能なフラッシュ・メモリを実装したソリッド・ステート・ドライブ(SSD)が、従来のハードディスク・ドライブ(HDD)に代わってコンピュータやタブレット端末などのホスト装置に採用されてきている。フラッシュ・メモリはDRAMとは異なって、SSDの電源が停止した状態でも比較的長い時間記憶を維持できるが、データ保持時時間(Retention time)には限界がある。このデータ保持時間は、メモリ・セルの消去回数または書込回数に依存して短くなることが知られている。   A solid state drive (SSD) equipped with an electrically rewritable flash memory has been adopted in a host device such as a computer or a tablet terminal in place of a conventional hard disk drive (HDD). Unlike the DRAM, the flash memory can maintain the memory for a relatively long time even when the power of the SSD is stopped, but the data retention time (Retention time) is limited. It is known that this data holding time is shortened depending on the number of times of erasing or writing of memory cells.

特許文献1は、本体に接続されたSSDが本体の電源停止および投入時刻を管理して停止している間の経過時間を計算し、リテンション・チェックのタイミングを判断する発明を開示する。ここにリテンション・チェックは、データの読み出し時に、通常の読出電圧をコントロールゲートに印加してデータを読み出すとともに、通常の読出電圧よりも高い電圧をコントロールゲートに印加してデータを読出し、読み出した2つのデータの論理が異なる場合はそのメモリ・セルのしきい値電圧が低下していると判断して再プログラムを行なう動作をいう。   Japanese Patent Application Laid-Open No. 2004-228561 discloses an invention in which the SSD connected to the main body manages the power supply stop and turn-on times of the main body to calculate the elapsed time while the SSD is stopped, and determines the retention check timing. Here, in the retention check, when reading data, a normal read voltage is applied to the control gate to read data, and a voltage higher than the normal read voltage is applied to the control gate to read and read data 2 When the logics of two data are different, it means an operation of reprogramming by judging that the threshold voltage of the memory cell is lowered.

特許文献2は、本体から離脱したメモリ・カードが、内部バッテリィでデータ保持時間を管理してリフレッシュする発明を開示する。同発明では、ページに対する書き込みが終了した時点からのデータ保持時間をメモリ・カードが少ない消費電力で管理し、データ保持時間より短い間隔でリフレッシュする。特許文献3は、劣化した強誘電体メモリの記憶を維持するために、機器が停止しているときに、定期的にメモリ・チップのリフレッシュに必要な回路に電力を供給して、リフレッシュする発明を開示する。   Patent Document 2 discloses an invention in which a memory card detached from a main body refreshes by managing data retention time with an internal battery. In the present invention, the data retention time from the point when writing to the page is completed is managed by the memory card with less power consumption, and refreshed at intervals shorter than the data retention time. Patent Document 3 discloses an invention in which power is periodically supplied to a circuit necessary for refreshing a memory chip and refreshed when the device is stopped in order to maintain the storage of a deteriorated ferroelectric memory. Is disclosed.

特許文献4は、ホストに電源が投入されている間にフラッシュ・メモリ・デバイスが、定期的にまたはホストからのコマンドを受け取ってリフレッシュする発明を開示する。特許文献5は、チップ・セットに組み込まれたリアル・タイム・クロック(RTC)を利用してコンピュータを所定の時刻でウェイクアップさせるRTCウェイクアップ機能について開示する。   Patent Document 4 discloses an invention in which a flash memory device refreshes periodically or by receiving a command from the host while the host is powered on. Patent Document 5 discloses an RTC wakeup function that wakes up a computer at a predetermined time using a real time clock (RTC) incorporated in a chip set.

特表2010−515953号公報Special table 2010-515953 gazette 特開2007−48347号公報JP 2007-48347 A 特開2004−28097号公報Japanese Patent Laid-Open No. 2004-28097 特開2009−223876号公報JP 2009-223876 A 特開2012−226677号公報JP 2012-226777 A

ホスト装置に接続されるSSDは、ホスト装置から電力の供給を受ける。ホスト装置は、使用しないときに省電力状態に移行してSSDの電力を停止する場合がある。ホスト装置およびSSDがともに電力が供給されて動作している間は、特許文献1の発明のようにリテンション・チェックを行って、データの消失を防ぐことができる。また、特許文献4の発明のようにSSDがホストからコマンドを受け取ったり自ら定期的にリフレッシュしたりすることは可能である。しかし、待機状態においてホスト装置またはSSDの電力が停止しているときはこのような方法を採用することができない。   The SSD connected to the host device receives power supply from the host device. When the host device is not used, the host device may shift to a power saving state and stop the power of the SSD. While both the host device and the SSD are operating while being supplied with power, a retention check can be performed as in the invention of Patent Document 1 to prevent data loss. Further, as in the invention of Patent Document 4, it is possible for the SSD to receive a command from the host or to periodically refresh itself. However, such a method cannot be adopted when the power of the host device or the SSD is stopped in the standby state.

特許文献2の発明のように、SSDに内部バッテリィを搭載する場合は待機状態でもリフレッシュできるが、コストの増加およびサイズの増加などのほかにバッテリィの容量管理などが課題になる。特許文献3のようにホスト装置が定期的にSSDの電源を投入してリフレッシュする方法は、ホスト装置に電源が投入されていることが前提になるため、待機状態に遷移するホスト装置に適用することはできない。またデータ保持時間とは無関係に定期的にSSDに電源を投入するとホスト装置の待機電力が増加する。   When an internal battery is mounted on an SSD as in the invention of Patent Document 2, refreshing is possible even in a standby state, but in addition to an increase in cost and an increase in size, battery capacity management and the like become problems. A method in which the host device periodically powers on and refreshes the SSD as in Patent Document 3 is applied to the host device that transitions to a standby state because the host device is presumed to be powered on. It is not possible. In addition, standby power of the host device increases when the SSD is periodically turned on regardless of the data holding time.

そこで本発明の目的は、待機状態に遷移するホスト装置に接続された不揮発性メモリのデータ消失を防止する方法を提供することにある。さらに本発明の目的は、ホスト装置の待機電力の低減を図りながら不揮発性メモリのデータ消失を防止する方法を提供することにある。さらに本発明の目的は、ハードウェアの変更を最小限にしながら不揮発性メモリのデータ消失を防止する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するホスト装置およびコンピュータを提供することにある。   SUMMARY OF THE INVENTION An object of the present invention is to provide a method for preventing data loss in a nonvolatile memory connected to a host device that transits to a standby state. It is another object of the present invention to provide a method for preventing data loss in a nonvolatile memory while reducing standby power of a host device. It is a further object of the present invention to provide a method for preventing data loss in a non-volatile memory while minimizing hardware changes. A further object of the present invention is to provide a host device and a computer that realize such a method.

本発明にかかる不揮発性メモリは、書き込んでからデータ保持時間が経過するとデータの信頼性が低下して実質的に消失したとみなす。このような不揮発性メモリのデータの消失を防ぐためにはデータの書込時刻からの経過時間を計時してデータ保持時間が経過する前にリフレッシュすることが有効である。しかし、記憶装置の電源はコンピュータが待機状態に遷移したときに停止する必要があるため、内部に電力源のない記憶装置では経過時間を計時することができない。   The non-volatile memory according to the present invention considers that the reliability of data is reduced and substantially lost when the data holding time has elapsed since writing. In order to prevent such loss of data in the nonvolatile memory, it is effective to measure the elapsed time from the data writing time and to refresh before the data holding time elapses. However, since the power supply of the storage device needs to be stopped when the computer transits to the standby state, the elapsed time cannot be measured in a storage device without an internal power source.

コンピュータは、待機状態において待機状態に遷移してから不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時して監視する。消失時刻の計算に必要な書込時刻に関する情報とデータ保持時間に関する情報は、待機状態に遷移する前に記憶装置から取得することができる。本発明の第1の態様では、コンピュータは、経過時間に基づいて消失時刻が到来したと判断したときに、記憶装置とリフレッシュ・コマンドを送出するために必要な回路に電源を投入して記憶装置にリフレッシュ・コマンドを送出する。したがって、待機状態を維持しながらデータの消失を防ぐことができる。   The computer measures and monitors the elapsed time from the transition to the standby state in the standby state to the disappearance time at which the data stored in the nonvolatile memory is lost. Information about the writing time and data holding time necessary for calculation of the disappearance time can be acquired from the storage device before transition to the standby state. In the first aspect of the present invention, when the computer determines that the disappearance time has arrived based on the elapsed time, the computer turns on power to the storage device and circuits necessary for sending a refresh command. Send a refresh command to. Therefore, loss of data can be prevented while maintaining the standby state.

記憶装置はオペレーティング・システムを記憶するスタティック・ディスク・ドライブであってもよい。また不揮発性メモリは、ハードディスク・ドライブのキャッシュもよい。不揮発性メモリの種類は、リフレッシュによりデータの消失を防ぐことができるものであれば特に限定しない。リフレッシュ・コマンドは待機状態のコンピュータに電源を投入してからオペレーティング・システムがロードされる前に送出すると待機電力の増加防止およびリフレッシュ時間の短縮の面で有益である。   The storage device may be a static disk drive that stores an operating system. The non-volatile memory may be a hard disk drive cache. The type of non-volatile memory is not particularly limited as long as it can prevent data loss by refresh. If the refresh command is sent before the operating system is loaded after the standby computer is turned on, it is useful for preventing an increase in standby power and shortening the refresh time.

電源制御部は、待機状態で電源を停止し所定のタイミングでウェイクアップして経過時間を監視するようにすれば待機電力を低減できる。ウェイクアップの所定のタイミングは一定の周期にしてもよいし、ウェイクアップして再び電源が停止する前に毎回異なる時間を設定して異なる周期にしてもよい。計時部が、コンピュータに電力を供給する電池の充放電を制御する電池ユニットの制御部とすれば、ハードウェアの変更の必要がなく計時動作のために待機電力が増加しない。電源制御部は待機状態に遷移して電源が停止する前に電池ユニットに消失時刻までの経過時間を設定し、電池ユニットは経過時間が到来したときに電源制御部をウェイクアップさせれば、電源制御部が無駄にウェイクアップすることがなくなる。   The power supply control unit can reduce standby power by stopping the power supply in the standby state, wakeup at a predetermined timing, and monitoring the elapsed time. The predetermined timing of the wake-up may be a fixed cycle, or may be set to a different cycle by setting a different time each time before the power is stopped again after wake-up. If the timing unit is a control unit of a battery unit that controls charging / discharging of the battery that supplies power to the computer, there is no need to change hardware, and standby power does not increase for the timing operation. The power supply control unit sets the elapsed time until the disappearance time before the power supply stops after transitioning to the standby state, and if the battery unit wakes up the power supply control unit when the elapsed time arrives, The control unit will not wake up unnecessarily.

また計時部が、システムの時刻情報を生成するリアル・タイム・クロックを含むウェイクアップ回路とすることもできる。電源制御部は待機状態に遷移して電源が停止する前にウェイクアップ回路に消失時刻を設定し、ウェイクアップ回路は消失時刻が到来したときに電源制御部をウェイクアップさせることもできる。この場合もハードウェアの変更の必要がなく計時動作のための待機電力も増加しない。   In addition, the timing unit may be a wakeup circuit including a real time clock that generates system time information. The power supply control unit can set the disappearance time in the wakeup circuit before the power supply stops after the transition to the standby state, and the wakeup circuit can also wake up the power supply control unit when the disappearance time arrives. In this case as well, there is no need to change hardware, and standby power for timekeeping operation does not increase.

本発明の第2の態様では、記憶装置が、コントローラが参照してリフレッシュの必要性を判断するためのリフレッシュ端子を備える。計時部は記憶装置の電源が停止する待機状態に遷移してから不揮発性メモリが記憶するデータが消失するまでの残存時間を計時する。電源制御部は、残存時間の経過に応答して記憶装置に電源を投入する。設定部は残存時間の経過に応答してリフレッシュ信号を出力してリフレッシュ端子を設定する。この場合、待機状態において、記憶装置の電源とリフレッシュ信号を出力する回路に電源を投入すれば、データが消失する前にリフレッシュすることができる。   In the second aspect of the present invention, the storage device includes a refresh terminal that is referred to by the controller to determine the necessity of refresh. The timer unit counts the remaining time until the data stored in the non-volatile memory disappears after transitioning to a standby state in which the power of the storage device is stopped. The power control unit turns on the power to the storage device in response to the passage of the remaining time. The setting unit sets a refresh terminal by outputting a refresh signal in response to the passage of the remaining time. In this case, in the standby state, if power is turned on to the power supply of the storage device and the circuit that outputs the refresh signal, the data can be refreshed before being lost.

設定部は、インターフェースを利用しないサイドバンドを経由してリフレッシュ端子を設定することができる。計時部と設定部をコンピュータに電力を供給する電池ユニットが構成したり、システムの時刻情報を生成するリアル・タイム・クロックを含むウェイクアップ回路が構成したりすれば、待機電力を増加させないようにしながらサイドバンドを追加するだけでリフレッシュをすることができる。   The setting unit can set the refresh terminal via a sideband that does not use an interface. If the clock unit and the setting unit are configured by a battery unit that supplies power to the computer, or if a wake-up circuit that includes a real time clock that generates system time information is configured, the standby power is not increased. However, you can refresh just by adding sidebands.

本発明により、待機状態に遷移するホスト装置に接続された不揮発性メモリのデータ消失を防止する方法を提供することができた。さらに本発明により、ホスト装置の待機電力の低減を図りながら不揮発性メモリのデータ消失を防止する方法を提供することができた。さらに本発明により、ハードウェアの変更を最小限にしながら不揮発性メモリのデータ消失を防止する方法を提供することができた。さらに本発明により、そのような方法を実現するホスト装置およびコンピュータを提供することができた。   According to the present invention, it is possible to provide a method for preventing data loss of a nonvolatile memory connected to a host device that transits to a standby state. Furthermore, according to the present invention, it is possible to provide a method for preventing data loss in the nonvolatile memory while reducing standby power of the host device. Furthermore, according to the present invention, it is possible to provide a method for preventing data loss in a nonvolatile memory while minimizing hardware changes. Further, according to the present invention, a host device and a computer that realize such a method can be provided.

ホスト装置の一例としてのノートPC10の本実施形態の理解に必要な構成を説明するための機能ブロック図である。It is a functional block diagram for demonstrating a structure required for understanding of this embodiment of notebook PC10 as an example of a host apparatus. SSD30の不揮発性メモリ37の構造とブロック管理テーブル81のデータ構造を説明するための図である。4 is a diagram for explaining the structure of a nonvolatile memory 37 of the SSD 30 and the data structure of a block management table 81. FIG. EC40が格納するリフレッシュ管理テーブル83、85のデータ構造を説明するための図である。It is a figure for demonstrating the data structure of the refresh management tables 83 and 85 which EC40 stores. ノートPC10が第1のリフレッシュ方法を実行する手順を説明するためのフローチャートである。It is a flowchart for demonstrating the procedure in which the notebook PC10 performs the 1st refresh method.

[用語の意味]
最初に本明細書で使用する用語を説明する。ホスト装置とは、SSDの電源を制御することが可能な装置をいう。ホスト装置は、省電力状態(待機状態)に遷移している間にSSDの電源を停止するがリフレッシュが必要なタイミングで一時的に電源を投入することができる。データ保持時間とは、フラッシュ・メモリのページにデータを書き込んでからフローティング・ゲートに注入した電荷が抜けてデータが消失すると想定するまでの時間または電荷を維持してデータの記憶を維持すると想定する時間をいう。データの書込時刻からの経過時間がデータ保持時間に到達するとデータは十分な信頼性のもとで記憶されているとはいえなくなり、実質的に消失したことと同等の状態として扱う。
[Meaning of terms]
First, terms used in this specification will be explained. The host device is a device capable of controlling the power supply of the SSD. The host device stops the power supply of the SSD during the transition to the power saving state (standby state), but can temporarily turn on the power at a timing that requires refreshing. The data retention time is assumed to maintain the data storage by maintaining the time or charge from the time when data is written to the flash memory page until the charge injected into the floating gate is lost and the data is assumed to be lost. Say time. When the elapsed time from the data writing time reaches the data holding time, it cannot be said that the data is stored with sufficient reliability, and is treated as being in a state equivalent to being substantially lost.

データ保持時間はフラッシュ・メモリの固有の性能で劣化パラメータの影響を受けて短くなる。本発明においては、ホスト装置がデータ保持時間を取得する方法は問わない。データ保持時間は、フラッシュ・メモリまたはSSDの製造者によって、動作中のSSDから取得が可能な劣化パラメータに関連付けた値として提供される。劣化パラメータは主として書込回数の前提となる消去回数とすることができるが、読取回数や使用時間などの他の劣化パラメータを含めてデータ保持時間を取得するようにしてもよい。本実施の形態では、劣化パラメータを代表的に消去回数として説明する。   The data retention time is an inherent performance of the flash memory and is shortened by the influence of the deterioration parameter. In the present invention, the method by which the host device acquires the data holding time is not limited. The data retention time is provided as a value associated with a degradation parameter that can be obtained from the active SSD by the flash memory or SSD manufacturer. The deterioration parameter can be mainly the number of erasures that is a premise of the number of times of writing, but the data holding time may be acquired including other deterioration parameters such as the number of readings and the use time. In the present embodiment, the deterioration parameter is typically described as the number of erasures.

また本実施の形態では、消去をそれぞれ読み書きの最小単位となる複数のページの集合であるブロック単位で行うため消去回数はブロックごとに発生し、データ保持時間もブロックごとに発生する。書込時刻は、ページにデータを書き込んだ時刻をいう。消失時刻は、書込時刻からデータ保持時間が経過したときの時刻をいう。残存時間は、消失時刻と現在時刻の差に相当する現在からデータが消失するまでの時間をいう。このときデータ保持時間は、書込時刻から消失時刻までの時間に相当する。また、消去はブロック単位で行うため、消失時刻はブロック単位の概念として把握することができる。各ブロックの消失時刻は、当該ブロックのなかで最も早く書き込まれたページの書込時刻から当該ブロックのデータ保持時間が経過する時刻に相当する。   In this embodiment, since erasure is performed in units of blocks, which are a set of a plurality of pages, each of which is the minimum unit of reading and writing, the number of erasures occurs for each block, and the data retention time also occurs for each block. The write time is the time when data is written to the page. The disappearance time is the time when the data retention time has elapsed from the writing time. The remaining time is the time from the present time corresponding to the difference between the disappearance time and the current time until the data disappears. At this time, the data holding time corresponds to the time from the writing time to the disappearance time. Since erasure is performed in units of blocks, the disappearance time can be grasped as a concept of blocks. The disappearance time of each block corresponds to the time when the data retention time of the block elapses from the write time of the page written earliest in the block.

リフレッシュは、各ブロックの消失時刻が到来する前にフラッシュ・メモリのデータをRAMに読み出してから同じブロックに書き込む処理をいう。リフレッシュは、SSDの電源がリフレッシュ中に停止したときのデータ消失を防ぐために、元のブロックに書き込んだデータをRAMに読み出してリフレッシュ領域のブロックに書き込み、その後元のブロックを消去して新たなリフレッシュ領域として割り当てる方法で行うこともできる。リフレッシュするブロックの単位は特に限定しない。したがって、いずれかのブロックが消失時刻に近付いたときにすべてのブロックを一括してリフレッシュしてもよいし、消失時刻が到来した単一のブロックまたは消失時刻の到来が近い複数のブロックごとにリフレッシュしてもよい。   Refresh refers to a process of reading data from a flash memory to a RAM and writing it to the same block before the disappearance time of each block arrives. In refresh, in order to prevent data loss when the SSD power supply stops during refresh, the data written in the original block is read to the RAM and written to the block in the refresh area, and then the original block is erased and a new refresh is performed. It can also be performed by a method of allocating as an area. The unit of the block to be refreshed is not particularly limited. Therefore, when one of the blocks approaches the disappearance time, all the blocks may be refreshed at once, or a single block whose disappearance time has arrived or a plurality of blocks that are close to the disappearance time are refreshed. May be.

[ノートPCの構成]
図1は、ホスト装置の一例としてのノートブック型パーソナル・コンピュータ(ノートPC)10の、本実施形態の理解に必要な構成を説明するための機能ブロック図である。本明細書では、後に第1のリフレッシュ方法から第3のリフレッシュ方法まで3つのリフレッシュの実行態様を説明する。それぞれの実行態様では、図1に示すいずれかの要素を利用する。したがって、図1に示す要素がすべて各実行態様の必須の要素にはならない。本発明の必須の要素は特許請求の範囲に記載するとおりである。
[Configuration of notebook PC]
FIG. 1 is a functional block diagram for explaining a configuration necessary for understanding the present embodiment of a notebook personal computer (notebook PC) 10 as an example of a host device. In the present specification, three refresh execution modes from the first refresh method to the third refresh method will be described later. Each execution mode uses one of the elements shown in FIG. Therefore, all the elements shown in FIG. 1 are not essential elements of each execution mode. The essential elements of the present invention are as set forth in the appended claims.

ノートPC10は、ACPIが規定するパワー・オン状態(S0ステート)、ソフト・オフ状態(S5ステート)に加えてサスペンド状態(S3ステート)、ハイバネーション状態(S4ステート)などのスリーピング状態に遷移する。ソフト・オフ状態およびスリーピング状態を併せて本実施の形態においては待機状態ということにする。なお、ノートPC10の通常の動作ではソフト・オフ状態およびスリーピング状態からパワー・オン状態に復帰するが、本実施の形態にかかる待機状態ではリフレッシュに必要な一部のデバイスにだけ電源を供給する場合もある。本発明の待機状態は必ずしもACPIのパワー・ステートに関連付ける必要がないが、待機状態ではSSD30の電源が停止する。   The notebook PC 10 transitions to a sleeping state such as a suspend state (S3 state) and a hibernation state (S4 state) in addition to a power-on state (S0 state) and a soft-off state (S5 state) defined by ACPI. The soft off state and the sleeping state are collectively referred to as a standby state in the present embodiment. Note that the normal operation of the notebook PC 10 returns from the soft-off state and the sleeping state to the power-on state, but in the standby state according to the present embodiment, power is supplied only to some devices required for refresh. There is also. The standby state of the present invention does not necessarily have to be associated with the ACPI power state, but the power supply of the SSD 30 is stopped in the standby state.

なお本発明の適用可能な待機状態はここで例示したパワー・ステートに限定するものではなく、少なくともSSD30およびCPU11の電源が停止する省電力状態とすることができる。また、待機状態における待機電力は常に一定である必要はない。待機状態はリフレッシュのために一時的にSSD30、CPU11およびその他のデバイスに電力を供給する状態も含む。   Note that the standby state to which the present invention can be applied is not limited to the power state exemplified here, and can be a power saving state in which the power of at least the SSD 30 and the CPU 11 is stopped. Further, the standby power in the standby state does not always have to be constant. The standby state includes a state in which power is temporarily supplied to the SSD 30, the CPU 11, and other devices for refresh.

チップ・セット20は、USB(Universal Serial Bus)、SATA(Serial AT Attachment)バス、SPI (Serial Peripheral Interface)バス、 PCI(Peripheral Component Interconnect)バス、PCI−Express(PCIe)バス、およびLPC(Low Pin Count)バスなどのインターフェースとなるI/Oコントローラ25を備え、それらに対応したさまざまなデバイスを接続することができる。   The chip set 20 includes a USB (Universal Serial Bus), a SATA (Serial AT Attachment) bus, an SPI (Serial Peripheral Interface) bus, a PCI (Peripheral Component Interconnect) bus, a PCI-Express (PCIe) bus, and an LPC (Low Pin). An I / O controller 25 serving as an interface such as a (Count) bus is provided, and various devices corresponding to them can be connected.

図1では本実施の形態の理解のためにチップ・セット20に接続された、CPU11、システム・メモリ13、ファームウェアROM15、SSD30およびエンベデッド・コントローラ40を例示している。一般的なノートPCではチップ・セット20にさらに、図示しないUSBコネクタ、通信モジュール、ディスプレイ、およびオーディオ・デバイスなどが接続される。チップ・セット20は、複数の機能ブロックごとに電力を供給することができる。パワー・オン状態ではすべての機能ブロックに電力を供給するが、待機状態では当該パワー・ステートに応じた必要最小限の機能ブロックにだけ電力を供給して消費電力を低減することができる。   FIG. 1 illustrates a CPU 11, a system memory 13, a firmware ROM 15, an SSD 30, and an embedded controller 40 connected to the chip set 20 in order to understand the present embodiment. In a typical notebook PC, a USB connector, a communication module, a display, an audio device, and the like (not shown) are further connected to the chip set 20. The chip set 20 can supply power for each of a plurality of functional blocks. While power is supplied to all functional blocks in the power-on state, power can be reduced by supplying power only to the minimum necessary functional blocks corresponding to the power state in the standby state.

一例としてSSD30はSATAポートに接続され、EC40はSPIポートに接続される。チップ・セット20はさらに、RTC21およびRTCメモリ23を含んでいる。RTC21はシステムが使用するカレンダ時刻を生成するための計時動作をする。   As an example, the SSD 30 is connected to the SATA port, and the EC 40 is connected to the SPI port. The chip set 20 further includes an RTC 21 and an RTC memory 23. The RTC 21 performs a time measuring operation for generating a calendar time used by the system.

RTCメモリ23はRTC21の計時動作に基づいて生成されたカレンダ時刻を記憶する。OSは、ネットワークを通じて取得した標準時刻で定期的にRTCメモリ23が記憶するカレンダ時刻を補正することができる。RTCメモリ23が記憶するカレンダ時刻はシステムや周辺デバイスに提供され、ファイルのタイム・スタンプやスケジュール管理などに利用される。   The RTC memory 23 stores the calendar time generated based on the timing operation of the RTC 21. The OS can periodically correct the calendar time stored in the RTC memory 23 with the standard time acquired through the network. The calendar time stored in the RTC memory 23 is provided to the system and peripheral devices and used for file time stamps and schedule management.

RTC21およびRTCメモリ23はチップ・セット20に電力が供給されるときはその電力で動作するが電力が供給されないときはボタン電池(図示せず)から供給された電力で動作するため、ノートPC10がいかなるパワー・ステートに遷移していてもカレンダ時刻の生成が停止することはない。チップ・セット20は、周知のRTCウェイクアップ機能を備えている。   The RTC 21 and the RTC memory 23 operate with power supplied to the chip set 20 but operate with power supplied from a button battery (not shown) when power is not supplied. The generation of the calendar time does not stop regardless of the transition to any power state. The chip set 20 has a well-known RTC wakeup function.

RTCウェイクアップ機能は、チップ・セット20がRTCメモリ23のカレンダ時刻を利用してRTCメモリ23に設定された時刻でシステムを待機状態からパワー・オン状態に遷移させる処理をいう。RTCウェイクアップ機能は、RTC21、RTCメモリおよびEC40に対する入出力回路で構成するRTCウェイクアップ回路24が実行する。RTCウェイクアップ機能がイネーブルになる場合は、待機状態のときにRTCウェイクアップ回路24に電源が供給される。   The RTC wakeup function refers to a process in which the chip set 20 changes the system from the standby state to the power-on state at the time set in the RTC memory 23 using the calendar time of the RTC memory 23. The RTC wakeup function is executed by the RTC wakeup circuit 24 configured by an input / output circuit for the RTC 21, the RTC memory, and the EC 40. When the RTC wakeup function is enabled, power is supplied to the RTC wakeup circuit 24 in the standby state.

RTCウェイクアップ回路24は、第2のリフレッシュ方法において消失時刻が到来したときにRTCウェイクアップ機能を利用してEC40をウェイクアップさせる。RTCウェイクアップ回路24は、第3のリフレッシュ方法において消失時刻が到来したときにサイドバンド34を通じてリフレッシュ端子39を設定するためのコードを含む。   The RTC wakeup circuit 24 uses the RTC wakeup function to wake up the EC 40 when the disappearance time has arrived in the second refresh method. The RTC wakeup circuit 24 includes a code for setting the refresh terminal 39 through the sideband 34 when the disappearance time comes in the third refresh method.

SSD30は、チップ・セット20にシリアル・バス32で接続するインターフェース31、MPU33、MPU33が実行するファームウェアを格納するROM34、RAM35、NAND型のフラッシュ・メモリ37、およびDRAMまたはMRAMで構成したキャッシュ・メモリ36などを含んでいる。SSD30は、DC/DCコンバータ51から電力が供給される。SSD30は、ノートPC10の筐体に収納される内蔵タイプでも、筐体に設けたコネクタで接続された外付けタイプでもよい。   The SSD 30 includes an interface 31 that is connected to the chip set 20 via a serial bus 32, an MPU 33, a ROM 34 that stores firmware executed by the MPU 33, a RAM 35, a NAND flash memory 37, and a cache memory configured by DRAM or MRAM. 36 etc. are included. The SSD 30 is supplied with power from the DC / DC converter 51. The SSD 30 may be a built-in type housed in the casing of the notebook PC 10 or an external type connected by a connector provided on the casing.

MPU33はファームウェアを実行して、フラッシュ・メモリ37に対する読み取り、書き込み、ウェアレベリング(wear leveling)、およびリフレッシュなどを行うコントローラとして機能する。後に説明する第3のリフレッシュ方法を実現するために、SSD30には電源が投入されたときにMPU33が参照してリフレッシュの必要性を判断するためのリフレッシュ端子39を設けることができる。リフレッシュ端子39は、サイドバンド34でRTCクロック回路24に接続され、サイドバンド38で電池ユニット60に接続される。サイドバンド32、38は、電源が停止してそれぞれの基本的な通信経路であるシリアル・バス32またはSM(System Management)バス62を利用した通信ができないときにリフレッシュ信号を送るための通信経路である。   The MPU 33 functions as a controller that executes firmware and performs reading, writing, wear leveling, and refreshing on the flash memory 37. In order to realize a third refresh method to be described later, the SSD 30 can be provided with a refresh terminal 39 that is referred to by the MPU 33 when the power is turned on to determine the necessity of refresh. The refresh terminal 39 is connected to the RTC clock circuit 24 by the side band 34 and is connected to the battery unit 60 by the side band 38. The sidebands 32 and 38 are communication paths for sending a refresh signal when the power supply is stopped and communication using the serial bus 32 or the SM (System Management) bus 62 which is a basic communication path is not possible. is there.

RTCクロック回路24または電池ユニット60はリフレッシュ信号を出力して、リフレッシュ端子39を設定することができる。リフレッシュ端子39は、周知のさまざまな回路で構成することができる。一例では、FETでグランドとSSD30の内部電源に接続され、リフレッシュ信号がFETをオンにしたときにグランド電位に遷移し、オフにしたときに電源の電位に遷移する端子とすることができる。リフレッシュ端子39を備えるSSD30のMPU33は、電源が投入されるたびにリフレッシュ端子39を参照して、設定されているときには、CPU11からのアクセスがないアイドル状態のときにリフレッシュを実行することができる。   The RTC clock circuit 24 or the battery unit 60 can output a refresh signal and set the refresh terminal 39. The refresh terminal 39 can be composed of various known circuits. In one example, the FET is connected to the ground and the internal power supply of the SSD 30, and the refresh signal can be used as a terminal that changes to the ground potential when the FET is turned on and changes to the power supply potential when the FET is turned off. The MPU 33 of the SSD 30 provided with the refresh terminal 39 refers to the refresh terminal 39 every time the power is turned on and, when set, can perform refreshing in an idle state where there is no access from the CPU 11.

フラッシュ・メモリ37は、図2に示すように管理領域、予備領域、リフレッシュ領域、およびユーザ領域に論理的に区分されている。管理領域は、ホスト装置がアクセスできない領域で、ホスト装置が指定する論理ブロック・アドレス(LBA)を物理ブロック・アドレス(PBA)に変換するアドレス変換テーブルの他に、ブロック管理テーブル81を格納している。ブロック管理テーブル81は、予備領域、リフレッシュ領域、およびユーザ領域をそれぞれ構成する各ブロックの消去回数、書込日時およびデータ保持時間を記録するテーブルである。   As shown in FIG. 2, the flash memory 37 is logically divided into a management area, a spare area, a refresh area, and a user area. The management area is an area that cannot be accessed by the host device, and stores a block management table 81 in addition to an address conversion table that converts a logical block address (LBA) designated by the host device into a physical block address (PBA). Yes. The block management table 81 is a table for recording the number of times of erasure, the writing date and time, and the data holding time of each block constituting the spare area, the refresh area, and the user area.

ここに消去回数は、データ保持時間を推定するための劣化パラメータに相当する。MPU33は消去回数が増加するたびにブロック管理テーブル81を更新する。MPU33は消去回数に基づいてブロックごとのデータ保持時間を決定しブロック管理テーブル81に書き込むことができる。データ保持時間は、SSD30から受け取った書込回数に基づいてシステムが決定することもできる。その場合はブロック管理テーブル81にデータ保持時間を記録しておく必要はない。   Here, the erase count corresponds to a deterioration parameter for estimating the data retention time. The MPU 33 updates the block management table 81 every time the number of deletions increases. The MPU 33 can determine the data holding time for each block based on the erase count and write it in the block management table 81. The data holding time can also be determined by the system based on the number of writes received from the SSD 30. In that case, it is not necessary to record the data holding time in the block management table 81.

フラッシュ・メモリ37では一例として、最小単位が512+16バイトの固定長のページを最小単位として読み書きが行われる。ブロックは任意の数のページの集合として構成することができる。MPU33は、SSD30に電源が投入されるたびにシステムからRTCメモリ23のカレンダ時刻を取得することができる。MPU33は、各ブロックを構成するいずれかのページに、最初にデータ書き込まれたときの書込日時をブロック管理テーブル81に書き込む。   In the flash memory 37, for example, reading and writing are performed with a fixed unit page having a minimum unit of 512 + 16 bytes as a minimum unit. A block can be configured as a collection of any number of pages. The MPU 33 can acquire the calendar time of the RTC memory 23 from the system every time the SSD 30 is powered on. The MPU 33 writes the writing date and time when data is first written in any block constituting each block in the block management table 81.

予備領域は、不良ページが発生したときの代替記憶領域である。リフレッシュ領域は、リフレッシュの際の新たな書き込み先のブロックとして利用する領域である。SSD30はブート・ドライブで、ユーザ領域にはOS91、アプリケーション93、リフレッシュ・マネージャ95などのプログラムの他にユーザ・データ97が記憶される。リフレッシュ・マネージャ95は、リフレッシュに関する処理をするアプリケーションである。   The spare area is an alternative storage area when a defective page occurs. The refresh area is an area used as a new write destination block at the time of refresh. The SSD 30 is a boot drive, and user data 97 is stored in the user area in addition to programs such as the OS 91, the application 93, and the refresh manager 95. The refresh manager 95 is an application that performs processing related to refresh.

ファームウェアROM15は、BIOSやUEFIといった主として電源起動時のデバイスの初期化や認証などを行うシステム・ファームウェアを格納する。システム・ファームウェアはリセットされたCPU11が必ず最初に実行するプログラムである。後に説明する第1のリフレッシュ方法と第2のリフレッシュ方法において、システム・ファームウェアはリフレッシュのために待機状態のCPU11に電源が投入されたときに、OS91にブート処理を渡す前にSSD30にリフレッシュ・コマンドを送る。   The firmware ROM 15 stores system firmware, such as BIOS and UEFI, which mainly performs initialization and authentication of devices at the time of power activation. The system firmware is a program that is always executed first by the reset CPU 11. In the first refresh method and the second refresh method, which will be described later, when power is supplied to the CPU 11 in a standby state for refresh, the system firmware sends a refresh command to the SSD 30 before passing the boot process to the OS 91. Send.

EC40は、MPU41、ROM43、RAM45、フラッシュ・メモリ47およびロジック回路49などを含むマイクロ・コンピュータである。EC40はさらに、図示しないDMAコントローラ、割り込みコントローラ、および電池ユニット60に接続するSMバポート、およびチップ・セット20に接続するSPIポートなどを備えている。EC40はCPU11からは独立して動作し、パワー・ステートに応じてDC/DCコンバータ51の動作を制御する。   The EC 40 is a microcomputer including an MPU 41, a ROM 43, a RAM 45, a flash memory 47, a logic circuit 49, and the like. The EC 40 further includes a DMA controller (not shown), an interrupt controller, an SM port connected to the battery unit 60, an SPI port connected to the chip set 20, and the like. The EC 40 operates independently of the CPU 11 and controls the operation of the DC / DC converter 51 according to the power state.

EC40には、DC/DCコンバータ51の制御回路、ユーザが操作するパワー・ボタン53、筐体の開閉を検知するリッド・センサ55、タイマー57、充電器58が接続され、さらにSMバス62およびサイドバンド64で電池ユニット60が接続されている。ROM43はMPU41がリフレッシュをするための消失時刻の判断や電源の起動制御などを行うためのコードを含む。フラッシュ・メモリ47は、図3に示すリフレッシュ管理テーブル83を格納する。   The EC 40 is connected with a control circuit for the DC / DC converter 51, a power button 53 operated by the user, a lid sensor 55 for detecting opening / closing of the housing, a timer 57, and a charger 58, and further with an SM bus 62 and a side. A battery unit 60 is connected by a band 64. The ROM 43 includes codes for determining the disappearance time for the MPU 41 to refresh and for controlling the activation of the power source. The flash memory 47 stores a refresh management table 83 shown in FIG.

リフレッシュ管理テーブル83は、ブロック番号ごとに消失時刻または残存時間を記録する。MPU41は、システムが待機状態に遷移する際に、毎回、SSD30からブロック管理テーブル81が記憶するブロック番号ごとの書込日時とデータ保持時間を受け取り、RTCメモリ23が記憶するカレンダ時刻に基づいて消失時刻を計算してリフレッシュ管理テーブル83に記憶することができる。   The refresh management table 83 records the disappearance time or remaining time for each block number. The MPU 41 receives the writing date / time and the data holding time for each block number stored in the block management table 81 from the SSD 30 every time the system transitions to the standby state, and disappears based on the calendar time stored in the RTC memory 23. The time can be calculated and stored in the refresh management table 83.

MPU41は、SSD30からデータ保持時間を受け取ることができないときは、あらかじめリフレッシュ・マネージャ95を通じて消去回数とデータ保持時間の関係を示すリフレッシュ管理テーブル85を受け取ってフラッシュ・メモリ47に格納しておくことができる。リフレッシュ管理テーブル85は、フラッシュ・メモリやSSDの製造者により提供される。この場合、MPU41はシステムが待機状態に遷移する直前に、毎回、SSD30からブロック管理テーブル81が記憶するブロック番号ごとの書込日時と消去回数を受け取り、リフレッシュ管理テーブル85からデータ保持時間を抽出して、RTCメモリ23が記憶するカレンダ時刻に基づいて消失時刻を計算することができる。   When the MPU 41 cannot receive the data retention time from the SSD 30, the MPU 41 may receive the refresh management table 85 indicating the relationship between the erase count and the data retention time through the refresh manager 95 and store it in the flash memory 47 in advance. it can. The refresh management table 85 is provided by a flash memory or SSD manufacturer. In this case, the MPU 41 receives the write date / time and the erase count for each block number stored in the block management table 81 from the SSD 30 and extracts the data retention time from the refresh management table 85 every time immediately before the system transitions to the standby state. Thus, the disappearance time can be calculated based on the calendar time stored in the RTC memory 23.

EC40は待機状態でロジック回路49を除いて電力が停止する。タイマー57は、EC40に比べて消費電力は小さい。タイマー57は第1のリフレッシュ方法において、待機状態で常時電力を供給して利用する。MPU41は、待機状態に入る直前にタイマー57に動作時間を設定する。タイマー57は、待機状態のときにMPU41が設定した動作時間を計時してロジック回路49にタイムアップ信号を出力する。ロジック回路49は第1のリフレッシュ方法において、待機状態のときにタイマー57のタイムアップ信号を受け取ってDC/DCコンバータ51を制御し、EC40に電源を供給してウェイクアップさせる。タイマー57の精度が十分に確保できないときは、待機状態に遷移する前にEC40がシステム・クロックを利用してタイマー57をキャリブレーションすることができる。   The EC 40 is in a standby state and power is stopped except for the logic circuit 49. The timer 57 consumes less power than the EC 40. In the first refresh method, the timer 57 always supplies power for use in a standby state. The MPU 41 sets an operation time in the timer 57 immediately before entering the standby state. The timer 57 measures the operation time set by the MPU 41 in the standby state and outputs a time-up signal to the logic circuit 49. In the first refresh method, the logic circuit 49 receives the time-up signal of the timer 57 in the standby state, controls the DC / DC converter 51, supplies power to the EC 40, and wakes up. When the accuracy of the timer 57 cannot be ensured sufficiently, the EC 40 can calibrate the timer 57 using the system clock before transitioning to the standby state.

ロジック回路49は第2のリフレッシュ方法において、待機状態のときにサイドバンド64を通じて電池ユニット60からウェイクアップ信号を受け取ったときにDC/DCコンバータ51を制御してEC40をウェイクアップさせることができる。またロジック回路49は第2のリフレッシュ方法において、待機状態のときにRTCウェイクアップ回路24からウェイクアップ信号を受け取ったときにDC/DCコンバータ51を制御してEC40をウェイクアップさせることができる。   In the second refresh method, the logic circuit 49 can wake up the EC 40 by controlling the DC / DC converter 51 when receiving a wake-up signal from the battery unit 60 through the sideband 64 in the standby state. Further, in the second refresh method, the logic circuit 49 can wake up the EC 40 by controlling the DC / DC converter 51 when receiving a wake-up signal from the RTC wake-up circuit 24 in the standby state.

ロジック回路49は、待機状態の時にパワー・ボタン53の押下またはリッド・センサ55の動作を検出してDC/DCコンバータ51を制御し、ノートPC10をパワー・オン状態に遷移させる。DC/DCコンバータ51は電池ユニット60または図示しないAC/DCアダプタから電力の供給を受けて複数の安定した電圧に変換する。DC/DCコンバータ51はパワー・ステートに対応するように複数の系統に別れており、SSD30を含むノートPC10の各デバイスに電力を供給する。MPU41は、SMバスを通じてMPU61から電池セル69の充電状態に関連するデータを取得し、充電器58の動作を制御する。充電器58は、AC/DCアダプタが供給する電力で電池ユニット60を充電する。   The logic circuit 49 detects the depression of the power button 53 or the operation of the lid sensor 55 in the standby state, controls the DC / DC converter 51, and shifts the notebook PC 10 to the power-on state. The DC / DC converter 51 receives power supplied from the battery unit 60 or an AC / DC adapter (not shown) and converts it into a plurality of stable voltages. The DC / DC converter 51 is divided into a plurality of systems so as to correspond to the power state, and supplies power to each device of the notebook PC 10 including the SSD 30. The MPU 41 acquires data related to the charging state of the battery cell 69 from the MPU 61 through the SM bus, and controls the operation of the charger 58. The charger 58 charges the battery unit 60 with power supplied from the AC / DC adapter.

電池ユニット60は、AC/DCアダプタが接続されていないときにDC/DCコンバータ51に電力を供給する。電池ユニット60は、MPU61、保護回路63、ROM65、タイマー67、電池セル69、および電池セル69の充放電経路となる入出力回路71などを含んでいる。電池ユニット60は、ノートPC10に内蔵してもよいし電池パックとして電池ベイに装着するようにしてもよい。電池ユニット60はサイドバンド38でリフレッシュ端子39に接続される。   The battery unit 60 supplies power to the DC / DC converter 51 when the AC / DC adapter is not connected. The battery unit 60 includes an MPU 61, a protection circuit 63, a ROM 65, a timer 67, a battery cell 69, an input / output circuit 71 serving as a charge / discharge path for the battery cell 69, and the like. The battery unit 60 may be built in the notebook PC 10 or may be installed in the battery bay as a battery pack. The battery unit 60 is connected to the refresh terminal 39 via the side band 38.

ROM65は、第2のリフレッシュ方法において残存時間が到来したときにサイドバンド64を通じてEC40をウェイクアップさせるコードを含む。ROM65は、第3のリフレッシュ方法において残存時間が到来したときにサイドバンド38を通じてリフレッシュ端子39を設定するためのコードを含む。EC40はバスマスタとなって、電池ユニット60と定期的に通信して電池セル69の電圧、残容量およびセル温度などの状態を監視して充電器58に充電パラメータの設定をする。   The ROM 65 includes a code that wakes up the EC 40 through the sideband 64 when the remaining time comes in the second refresh method. The ROM 65 includes a code for setting the refresh terminal 39 through the side band 38 when the remaining time comes in the third refresh method. The EC 40 serves as a bus master and periodically communicates with the battery unit 60 to monitor the state of the battery cell 69 such as the voltage, remaining capacity, and cell temperature and set the charging parameters in the charger 58.

[第1のリフレッシュ方法]
図4は、ノートPC10が第1のリフレッシュ方法を実行する手順を説明するためのフローチャートである。ブロック101でノートPC10は、パワー・オン状態に遷移しており、CPU11はSSD30にデータを書き込む。SSD30のMPU33は、電源投入時およびその後随時RTC21が計時した時刻情報をシステムから取得して電源が投入されている間は内部で経過時間を計時して時刻情報を生成することができる。SSD30は、パワー・オン状態の間は周知のリテンション・チェックを利用してデータを保持することができる。
[First refresh method]
FIG. 4 is a flowchart for explaining a procedure for the notebook PC 10 to execute the first refresh method. In block 101, the notebook PC 10 has transitioned to the power-on state, and the CPU 11 writes data to the SSD 30. The MPU 33 of the SSD 30 can acquire the time information timed by the RTC 21 at the time of power-on and anytime thereafter from the system and can measure the elapsed time internally and generate the time information while the power is on. The SSD 30 can hold data using a known retention check during the power-on state.

ブロック103でMPU33は、いずれかのブロックが消去されるたびに、ブロック管理テーブル81の当該ブロックに関する消去回数を1ずつ増加するように更新する。ブロックの消去は、新たなデータの書き込み、リテンション・チェック、リフレッシュまたはウェアレベリングなどによって発生する。MPU33は、消去されたブロックが含むいずれかのページに最初にデータが書き込まれた日時を書込日時としてブロック管理テーブル81に記録する。   In block 103, every time any block is erased, the MPU 33 updates the block management table 81 so that the number of times of erasure for the block is increased by one. Block erasure occurs by writing new data, retention check, refresh or wear leveling. The MPU 33 records in the block management table 81 the date and time when data was first written on any page included in the erased block as the write date and time.

MPU33は自らが消去回数からデータ保持時間を抽出できる場合は、いずれかのブロックの消去回数を更新したときに、必要に応じてブロック管理テーブル81が記憶する当該ブロックのデータ保持時間を更新する。ブロック105でパワー・ボタン53の押下、リッド・センサ55の動作、図示しないキーボードの操作または設定されたアイドル時間の経過などにより待機状態に遷移するための待機イベントが生成されOS91に通知される。   If the MPU 33 can extract the data retention time from the number of erases, the MPU 33 updates the data retention time of the block stored in the block management table 81 as necessary when the erase count of any block is updated. In block 105, a standby event for transitioning to the standby state is generated and notified to the OS 91 by pressing of the power button 53, operation of the lid sensor 55, operation of a keyboard (not shown), or elapse of a set idle time.

OS91は実行中のアプリケーション93、リフレッシュ・マネージャ95、デバイス・ドライバおよびEC40に待機イベントを送る。ブロック107で待機イベントを受け取ったEC40は、CPU11に割り込みをかけてリフレッシュ・マネージャ95にSSD30からブロック管理テーブル81が記憶する、消失時刻または残存時間を計算するための基礎データを取得するように要求する。リフレッシュ・マネージャ95は、ブロック管理テーブル81がデータ保持時間を記憶する場合は、基礎データとしてブロック番号とそれに対応する書込日時およびデータ保持時間を取得する。   The OS 91 sends a standby event to the running application 93, the refresh manager 95, the device driver, and the EC 40. The EC 40 that has received the standby event in block 107 interrupts the CPU 11 and requests the refresh manager 95 to acquire basic data for calculating the lost time or remaining time stored in the block management table 81 from the SSD 30. To do. When the block management table 81 stores the data holding time, the refresh manager 95 acquires the block number, the writing date / time and the data holding time corresponding to the block number as basic data.

リフレッシュ・マネージャ95は、ブロック管理テーブル81がデータ保持時間を記憶していない場合は、基礎データとしてブロック番号とそれに対応する消去回数および書込日時を取得する。ブロック109でMPU41はリフレッシュ・マネージャ95から受け取った基礎データを必要に応じてフラッシュ・メモリ47に記憶する。MPU41はブロック番号ごとの書込日時とデータ保持時間から消失時刻または残存時間を計算して、リフレッシュ管理テーブル83を更新する。MPU41はSSD30からデータ保持時間を受け取らない場合は、リフレッシュ管理テーブル85を参照して消去回数に基づいてデータ保持時間を計算してからブロック番号ごとの消失時刻または残存時間を計算する。   When the block management table 81 does not store the data holding time, the refresh manager 95 acquires the block number, the number of erasures corresponding to the block number, and the writing date / time as basic data. In block 109, the MPU 41 stores the basic data received from the refresh manager 95 in the flash memory 47 as necessary. The MPU 41 updates the refresh management table 83 by calculating the disappearance time or remaining time from the writing date and time and the data holding time for each block number. When the MPU 41 does not receive the data holding time from the SSD 30, the MPU 41 refers to the refresh management table 85 to calculate the data holding time based on the number of erasures and then calculates the disappearance time or remaining time for each block number.

この時点ではシステムの電源はまだ維持されているが、待機状態に遷移するとCPU11およびSSD30の電源は停止しそれぞれのパワー・ステートに応じた最小限のデバイスにだけ電力が供給される。電源が停止したSSD30は経過時間を計時することができないため、消失時刻または残存時間を管理することができない。フラッシュ・メモリ37のデータ消失を防止するためにはSSD30に代わってホスト装置が残存時間を管理する必要があるが待機状態で消費電力が増大することは好ましくない。また、ハードウェアの変更も最小限に留めることが望ましい。   At this time, the system power supply is still maintained, but when transitioning to the standby state, the power supply of the CPU 11 and the SSD 30 is stopped, and power is supplied only to the minimum devices corresponding to the respective power states. Since the SSD 30 whose power is stopped cannot measure the elapsed time, the lost time or the remaining time cannot be managed. In order to prevent the data loss of the flash memory 37, the host device needs to manage the remaining time instead of the SSD 30, but it is not preferable that the power consumption increases in the standby state. It is also desirable to minimize hardware changes.

MPU41は、更新されたリフレッシュ管理テーブル83において最も消失時刻が早い(残存時間が短い)ブロックを抽出してリフレッシュ・フラグを設定する。リフレッシュ・フラグは、消失時刻の早い順に抽出した複数のブロックに対して設定してもよい。ブロック111でMPU41は、電池ユニット60のMPU61に現在のカレンダ時刻からの経過時間を計時するように要求する。あるいは、MPU41は現在のカレンダ時刻と消失時刻から計算した残存時間の残り時間を計時するように要求する。さらに、MPU41はこのとき必要に応じて、残存時間を監視するために、タイマー57にEC40がウェイクアップするまでの時間を設定することができる。   The MPU 41 extracts the block having the earliest disappearance time (shortest remaining time) in the updated refresh management table 83 and sets the refresh flag. The refresh flag may be set for a plurality of blocks extracted in order of the disappearance time. In block 111, the MPU 41 requests the MPU 61 of the battery unit 60 to time the elapsed time from the current calendar time. Alternatively, the MPU 41 requests to count the remaining time calculated from the current calendar time and disappearance time. Further, the MPU 41 can set a time until the EC 40 wakes up in the timer 57 in order to monitor the remaining time as necessary.

EC40は電池ユニット60に経過時間の計時動作を開始させ、必要に応じてタイマー57を設定してから、OS91に待機状態への準備完了の通知をする。OS91はすべてのハードウェアおよびプログラムが待機状態への遷移の準備が完了したことを確認すると、ブロック113でEC40に指示して遷移先のパワー・ステートに応じたデバイスの電源を停止させシステムを待機状態に遷移させる。   The EC 40 causes the battery unit 60 to start measuring the elapsed time, sets the timer 57 as necessary, and notifies the OS 91 of the completion of preparation for the standby state. When the OS 91 confirms that all hardware and programs are ready for the transition to the standby state, it instructs the EC 40 in block 113 to stop the power supply of the device according to the power state of the transition destination and wait for the system. Transition to a state.

電池ユニット60のMPU61はタイマー67を動作させて待機状態に遷移してからの経過時間の計時をする。待機状態でも自然放電で電池セル69の残存容量は低下する。電池ユニット60は、システムが待機状態であっても電池セル69の充電状態を管理して必要に応じてEC40に充電の要求をする必要がある。電池セル69は待機状態でもMPU61や保護回路63に電力を供給するため、消失時刻を計時するために電池ユニット60の消費電力はほとんど増加しない。   The MPU 61 of the battery unit 60 operates the timer 67 to measure the elapsed time since the transition to the standby state. Even in the standby state, the remaining capacity of the battery cell 69 decreases due to spontaneous discharge. Even when the system is in a standby state, the battery unit 60 needs to manage the charge state of the battery cell 69 and request the EC 40 to charge as necessary. Since the battery cell 69 supplies power to the MPU 61 and the protection circuit 63 even in a standby state, the power consumption of the battery unit 60 hardly increases in order to measure the disappearance time.

EC40は、待機状態の間に電池セル69の残存容量が低下したときに充電器58を動作させて充電する必要がある。タイマー57は、待機状態のときにMPU41がMPU61と通信して電池セル69の残存容量を確認できるように定期的にタイムアップ信号を送ってEC40をウェイクアップさせる。EC40はブロック115で、残存容量の確認のためにウェイクアップしたときに、ブロック117で電池ユニット60が計時した待機状態に遷移してからの経過時間または残存時間の残り時間を確認してリフレッシュの必要性を判断する。残存容量の確認のためにウェイクアップする一定の周期が、リフレッシュの必要性を管理するための周期として利用できない場合は、EC40は先にブロック111でタイマー57に残存時間の確認のために設定した動作時間でウェイクアップすることができる。   The EC 40 needs to be charged by operating the charger 58 when the remaining capacity of the battery cell 69 decreases during the standby state. The timer 57 periodically wakes up the EC 40 by sending a time-up signal so that the MPU 41 can communicate with the MPU 61 and check the remaining capacity of the battery cell 69 in the standby state. When the EC 40 wakes up to check the remaining capacity in block 115, the elapsed time after the transition to the standby state measured by the battery unit 60 in block 117 or the remaining time of the remaining time is checked to refresh. Determine the need. If the fixed period to wake up to confirm the remaining capacity cannot be used as a period to manage the need for refresh, the EC 40 first set the timer 57 in block 111 to confirm the remaining time. It can wake up in operation time.

ブロック117でEC40は、リフレッシュ管理テーブル83にリフレッシュ・フラグが設定された最も早い消失時刻が到来していないと判断したときは、必要に応じてタイマー57にウェイクアップまでの新たな時間を設定してから、自らの電源を停止してブロック113に戻る。新たなウェイクアップまでの時間は、残存時間が少なくなるにしたがって短くなるように設定してもよいし一定でもよい。EC40は消失時刻が到来したと判断したときに、ブロック119でDC/DCコンバータ51を制御して所定のデバイスに電力を供給する。このとき、EC40はフラッシュ・メモリ47にCPU11のリセットの原因がリフレッシュであることをシステム・ファームウェアに通知するためのフラグを設定する。   In block 117, when the EC 40 determines that the earliest disappearance time for which the refresh flag is set in the refresh management table 83 has not arrived, it sets a new time until wakeup in the timer 57 as necessary. After that, the power supply is stopped and the process returns to block 113. The time until the new wake-up may be set to be shorter as the remaining time decreases, or may be constant. When the EC 40 determines that the disappearance time has come, it controls the DC / DC converter 51 in block 119 to supply power to a predetermined device. At this time, the EC 40 sets a flag for notifying the system firmware that the cause of the reset of the CPU 11 is refresh in the flash memory 47.

所定のデバイスは、SSD30にリフレッシュ・コマンドを送るために必要な最低限の範囲に留めることが望ましい。したがって、CPU11、システム・メモリ13、ファームウェアROM15、チップ・セット20の一部およびSSD30には電力を供給するが、図示しないディスプレイ、オーディオ・デバイス、および通信デバイスなどには電力を供給する必要がない。   It is desirable to keep the given device within the minimum range necessary for sending a refresh command to the SSD 30. Accordingly, power is supplied to the CPU 11, the system memory 13, the firmware ROM 15, a part of the chip set 20, and the SSD 30, but it is not necessary to supply power to a display, an audio device, and a communication device (not shown). .

電源が投入されると、リセットされたCPU11はシステム・メモリ13にシステム・ファームウェアをロードして実行する。システム・ファームウェアはブロック121で、必要なデバイスの初期化をしてからフラッシュ・メモリ47のリセット原因を示すフラグを確認する。システム・ファームウェアはOSのロードをしないで自らおよびファームウェア・アプリケーションからのSSD30に対するアクセスを停止する。ブロック123でシステム・ファームウェアは、シリアル・バス32を通じてSSD30にリフレッシュ・コマンドを送ってSSD30からのリフレッシュ完了通知を待つ。リフレッシュ・コマンドは本実施の形態において定義するユニークなコマンドである。   When the power is turned on, the reset CPU 11 loads the system firmware into the system memory 13 and executes it. The system firmware checks the flag indicating the cause of resetting the flash memory 47 after initializing the necessary devices in block 121. The system firmware stops access to the SSD 30 from itself and the firmware application without loading the OS. In block 123, the system firmware sends a refresh command to the SSD 30 via the serial bus 32 and waits for a refresh completion notification from the SSD 30. The refresh command is a unique command defined in the present embodiment.

システム・ファームウェアはOSがブートする前にSSD30へのアクセスを停止して、リフレッシュ・コマンドを送ることができるため、SSD30は電源が起動してから短時間でリフレッシュを開始することができる。リフレッシュ・コマンドは、ノートPC10のブートが完了してからリフレッシュ・マネージャ95が送るようにしてもよいが、OSがブートしている間はSSD30へのアクセスを停止することができず、また、OSのブートが完了するまで長い時間を費やすので、リフレッシュ・コマンドはシステム・ファームウェアが送った方が待機電力とリフレッシュの完了までの時間の観点で有益である。   Since the system firmware can stop access to the SSD 30 and send a refresh command before the OS boots, the SSD 30 can start refreshing in a short time after the power is turned on. The refresh command may be sent by the refresh manager 95 after the notebook PC 10 has been booted, but access to the SSD 30 cannot be stopped while the OS is booting, and the OS Since it takes a long time to complete the boot, it is beneficial that the refresh command is sent by the system firmware in terms of standby power and time to completion of the refresh.

システム・ファームウェアは、リフレッシュ管理テーブル83を参照して、リフレッシュ・コマンドのパラメータにリフレッシュ・フラグが設定されているブロックのブロック番号を設定する。さらにシステム・ファームウェアは、リフレッシュ・コマンドに、データが書き込まれているすべてのブロックをリフレッシュするようにパラメータを設定してもよい。ブロック125でMPU33はリフレッシュ・コマンドを実行して、指定されたブロックまたはすべてのブロックをリフレッシュする。   The system firmware refers to the refresh management table 83 and sets the block number of the block for which the refresh flag is set in the refresh command parameter. Further, the system firmware may set a parameter to refresh all blocks in which data is written in the refresh command. In block 125, the MPU 33 executes a refresh command to refresh the specified block or all blocks.

リフレッシュが終了したSSD30は、ブロック管理テーブル81を更新すると、ブロック127でシステム・ファームウェアにリフレッシュ完了通知をする。システム・ファームウェアはブート処理をOSに渡さないで、EC40に指示してシステムをふたたび待機状態に戻す。上記手順では、タイマー57による計時動作も、電池ユニット60による計時動作も待機状態での消費電力をほとんど増加させない。   The refreshed SSD 30 updates the block management table 81 and notifies the system firmware of the refresh completion in block 127. The system firmware instructs the EC 40 to return the system to the standby state again without passing the boot process to the OS. In the above procedure, the clocking operation by the timer 57 and the clocking operation by the battery unit 60 hardly increase the power consumption in the standby state.

また、EC40はSMバス62を通じて電池ユニット60が計時する経過時間を監視することができ、システム・ファームウェアはシリアル・バス32を通じてSSD30にリフレッシュ・コマンドを送ることができるためハードウェアを変更する必要がない。さらにシステム・ファームウェアがリフレッシュ・コマンドを送っているため、リフレッシュのためにシステムが消費する電力は最小限の範囲に留めることができる。ブロック115で、電池ユニット60が計時する経過時間を監視する例を説明したが、EC40はウェイクアップしたときにRTCウェイク回路24を通じてカレンダ時刻を取得し、リフレッシュ管理テーブル83を参照して消失時刻の到来を判断することもできる。   Further, the EC 40 can monitor the elapsed time measured by the battery unit 60 through the SM bus 62, and the system firmware can send a refresh command to the SSD 30 through the serial bus 32. Therefore, the hardware needs to be changed. Absent. Furthermore, since the system firmware sends a refresh command, the power consumed by the system for refreshing can be kept to a minimum range. In the block 115, the example in which the elapsed time measured by the battery unit 60 is monitored has been described. However, when the EC 40 wakes up, the calendar time is acquired through the RTC wake circuit 24, and the lost time is determined by referring to the refresh management table 83. The arrival can also be judged.

[第2のリフレッシュ方法]
第1のリフレッシュ方法では、EC40がタイマー57で一時的にウェイクアップして電池ユニット60が計時する残存時間またはRTCウェイク回路24のカレンダ時刻を確認したときにリフレッシュの必要がなく、再び待機状態に戻る動作をすることが多くなる。第2のリフレッシュ方法は、システム・ファームウェアがシリアル・バス32を通じてリフレッシュ・コマンドを送る点では第1のリフレッシュ方法と同じであるが、待機状態のときにEC40をタイマー57でウェイクアップさせないでリフレッシュが必要なときにだけウェイクアップさせる。
[Second refresh method]
In the first refresh method, when the EC 40 temporarily wakes up with the timer 57 and confirms the remaining time counted by the battery unit 60 or the calendar time of the RTC wake circuit 24, there is no need for refresh, and the standby state is again entered. There is a lot of back movement. The second refresh method is the same as the first refresh method in that the system firmware sends a refresh command via the serial bus 32. However, the refresh can be performed without causing the timer 40 to wake up the EC 40 in the standby state. Wake up only when necessary.

第2のリフレッシュ方法の1つの態様では、EC40と電池ユニット60の間に新たに設けたサイドバンド64を利用する。第2のリフレッシュ方法の手順は、図4のブロック111からブロック117までの手順に代えて行う。EC40は電池ユニット60に消失時刻までの残存時間を設定してからシステムを待機状態に遷移させEC40の電源を停止する。待機状態の間EC40はリフレッシュの必要性を確認するためにタイマー57でウェイクアップしない。   In one aspect of the second refresh method, a sideband 64 newly provided between the EC 40 and the battery unit 60 is used. The procedure of the second refresh method is performed instead of the procedure from block 111 to block 117 in FIG. The EC 40 sets the remaining time until the disappearance time in the battery unit 60 and then shifts the system to a standby state and stops the power supply of the EC 40. During the standby state, the EC 40 does not wake up with the timer 57 to confirm the need for refresh.

MPU61は、設定された残存時間が到来すると、サイドバンド64を経由してロジック回路49にウェイクアップ信号を送り、EC40をウェイクアップさせる。それ以降は、図4のブロック119以降の手順と同じである。この場合、EC40が無駄にウェイクアップすることによって待機電力が増加しない。第2のリフレッシュ方法の他の態様ではEC40は、待機状態に遷移する前にRTCメモリ23に消失時刻を設定する。待機状態で設定時刻が到来すると、RTCウェイクアップ回路24は設定された消失時刻でEC40をウェイクアップさせる。この場合は、RTCウェイクアップ機能がディスエーブルのときでも待機状態でRTCウェイクアップ回路に電源を供給する必要があるがハードウェアを変更する必要はない。   When the set remaining time arrives, the MPU 61 sends a wakeup signal to the logic circuit 49 via the sideband 64 to wake up the EC 40. The subsequent steps are the same as the steps after block 119 in FIG. In this case, the standby power does not increase because the EC 40 wakes up unnecessarily. In another aspect of the second refresh method, the EC 40 sets the disappearance time in the RTC memory 23 before transitioning to the standby state. When the set time arrives in the standby state, the RTC wakeup circuit 24 wakes up the EC 40 at the set disappearance time. In this case, even when the RTC wakeup function is disabled, it is necessary to supply power to the RTC wakeup circuit in a standby state, but it is not necessary to change the hardware.

[第3のリフレッシュ方法]
第1のリフレッシュ方法と第2のリフレッシュ方法は、いずれも、SSD30にリフレッシュ・コマンドを送ってリフレッシュするため、SSD30についてはファームウェアの変更をするだけで実現できる。ただし、リフレッシュ・コマンドを送る際に、CPU11、システム・メモリ13およびチップ・セット20などに電力を供給する必要がある。第3のリフレッシュ方法では、リフレッシュ・コマンドに代えてサイドバンド34、38を通じてリフレッシュ信号を送る。SSD30にはリフレッシュ信号で設定するリフレッシュ端子39を設ける。第3のリフレッシュ方法の手順は、図4のブロック111からブロック119までの手順に代えて行う。
[Third refresh method]
Since both the first refresh method and the second refresh method are refreshed by sending a refresh command to the SSD 30, the SSD 30 can be realized only by changing the firmware. However, when the refresh command is sent, it is necessary to supply power to the CPU 11, the system memory 13, the chip set 20, and the like. In the third refresh method, a refresh signal is sent through the sidebands 34 and 38 instead of the refresh command. The SSD 30 is provided with a refresh terminal 39 that is set by a refresh signal. The procedure of the third refresh method is performed instead of the procedure from block 111 to block 119 in FIG.

第3のリフレッシュ方法では、第2のリフレッシュ方法と同じように電池ユニット60またはRTCウェイク回路24が待機状態の間に経過時間または消失時刻を計時する。そして消失時刻が到来したときにEC40をウェイクアップさせる。EC40は、DC/DCコンバータ51を動作させて、第1のリフレッシュ方法および第2のリフレッシュ方法とは異なって、SSD30にだけ電源を供給する。つづいて、電池ユニット60またはRTCウェイク回路24は、サイドバンド38またはサイドバンド34を経由してリフレッシュ信号を送りリフレッシュ端子39を設定する。電源が投入されたSSD30は、MPU33がリフレッシュ端子39を参照してリフレッシュを実行する。   In the third refresh method, the elapsed time or disappearance time is measured while the battery unit 60 or the RTC wake circuit 24 is in the standby state, as in the second refresh method. When the disappearance time comes, the EC 40 is woken up. Unlike the first refresh method and the second refresh method, the EC 40 supplies power only to the SSD 30 by operating the DC / DC converter 51. Subsequently, the battery unit 60 or the RTC wake circuit 24 sends a refresh signal via the side band 38 or the side band 34 to set the refresh terminal 39. The MPU 33 refers to the refresh terminal 39 and executes the refresh of the SSD 30 that is powered on.

これまで、SSDが搭載するフラッシュ・メモリ37のリフレッシュを行う方法を説明したが、本発明はシステムが待機状態のときに書込時刻からの経過時間を計測できない他のフラッシュ・メモリに適用することもできる。一例として本発明はHDDのキャッシュ・メモリに適用することができる。HDDのライトバック・キャッシングでは、書き込みが完了した時点でフラッシュ・メモリにだけデータが存在する。   So far, the method for refreshing the flash memory 37 mounted on the SSD has been described. However, the present invention is applied to other flash memories in which the elapsed time from the write time cannot be measured when the system is in a standby state. You can also. As an example, the present invention can be applied to an HDD cache memory. In HDD write-back caching, data exists only in the flash memory when writing is completed.

フラッシュ・メモリが記憶するデータは、システムがアイドル状態のときに所定のアルゴリズムに基づくタイミングでHDDに書き込まれる。劣化が進行したフラッシュ・メモリにライトバック・キャッシングを採用すると、フラッシュ・メモリが記憶するデータをフラッシュ・メモリに書き込んでから待機状態に遷移した場合に、消失時刻が経過する傾向が顕著になるため、本発明を適用してデータが消失する前にキャッシュをリフレッシュすることが有効である。   Data stored in the flash memory is written to the HDD at a timing based on a predetermined algorithm when the system is in an idle state. When write-back caching is used for flash memory that has deteriorated, the loss time tends to elapse when data stored in the flash memory is written to the flash memory and then transitions to the standby state. It is effective to refresh the cache before data is lost by applying the present invention.

この場合のキャッシュ・メモリはHDDに内蔵してもよいし外部に設けてもよい。キャッシュ・メモリをHDDの外に設けて独立したインターフェースでチップ・セット20に接続する場合は、チップ・セット20に内蔵したキャッシュ・コントローラがリフレッシュをすることができる。また、NAND型のフラッシュ・メモリを例示して説明したが、本発明はNOR型のフラッシュ・メモリに適用することもできる。さらに、EPROMまたは強誘電体メモリのような劣化が進行したセルのデータを保持するためにリフレッシュが必要な不揮発性メモリ一般に適用することができる。さらに本発明は、コンピュータだけでなく、フラッシュ・メモリが接続され待機状態に遷移するホスト装置全般に適用することができる。   The cache memory in this case may be built in the HDD or provided outside. When the cache memory is provided outside the HDD and connected to the chip set 20 through an independent interface, the cache controller built in the chip set 20 can perform refreshing. Further, the NAND type flash memory has been described as an example, but the present invention can also be applied to a NOR type flash memory. Further, the present invention can be applied to a general nonvolatile memory such as an EPROM or a ferroelectric memory that needs to be refreshed in order to hold data of a cell whose deterioration has progressed. Furthermore, the present invention can be applied not only to a computer but also to all host devices that are connected to a flash memory and transition to a standby state.

これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。   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.

10 ノートPC
30 ソリッド・ステート・ドライブ(SSD)
40 エンベデッド・コントローラ(EC)
60 電池ユニット
34、38、64 サイドバンド
39 リフレッシュ端子
37 フラッシュ・メモリ
81 ブロック管理テーブル(SSDに格納)
83、85 リフレッシュ管理テーブル(ECに格納)
10 Notebook PC
30 Solid State Drive (SSD)
40 Embedded Controller (EC)
60 Battery unit 34, 38, 64 Side band 39 Refresh terminal 37 Flash memory 81 Block management table (stored in SSD)
83, 85 Refresh management table (stored in EC)

Claims (17)

待機状態に遷移することが可能なコンピュータであって、
不揮発性メモリとリフレッシュ・コマンドを受け取って前記不揮発性メモリをリフレッシュするコントローラを含む記憶装置の接続が可能なインターフェースと、
前記記憶装置の電源が停止する待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時する計時部と、
前記待機状態の間に前記経過時間を監視して前記消失時刻が到来したと判断したときに、前記記憶装置と前記リフレッシュ・コマンドを送出するために必要な回路に電源を投入する電源制御部と、
電源が投入されてからオペレーティング・システムがロードされる前に前記記憶装置に前記インターフェースを通じて前記リフレッシュ・コマンドを送出するコマンド送出部と
を有するコンピュータ。
A computer capable of transitioning to a standby state,
An interface capable of connecting a storage device including a nonvolatile memory and a controller that receives a refresh command and refreshes the nonvolatile memory; and
A timing unit that counts the elapsed time from the transition to the standby state in which the power of the storage device is stopped to the disappearance time at which the data stored in the nonvolatile memory is lost;
A power supply controller that monitors the elapsed time during the standby state and determines that the disappearance time has arrived, and powers on the storage device and a circuit necessary for sending the refresh command; ,
A computer having a command sending unit for sending the refresh command to the storage device through the interface before the operating system is loaded after the power is turned on;
前記記憶装置がオペレーティング・システムを記憶するソリッド・ステート・ドライブである請求項1に記載のコンピュータ。   The computer of claim 1, wherein the storage device is a solid state drive that stores an operating system. 前記不揮発性メモリが、ハードディスク・ドライブのキャッシュである請求項1に記載のコンピュータ。   The computer of claim 1, wherein the non-volatile memory is a hard disk drive cache. 待機状態に遷移することが可能なコンピュータであって、
不揮発性メモリとリフレッシュ・コマンドを受け取って前記不揮発性メモリをリフレッシュするコントローラを含む記憶装置の接続が可能なインターフェースと、
前記記憶装置の電源が停止する待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時する計時部と、
前記待機状態に遷移したときに電源が停止し、前記待機状態の間に所定のタイミングでウェイクアップして前記計時部が計時した前記経過時間を監視して前記消失時刻が到来したと判断したときに、前記記憶装置と前記リフレッシュ・コマンドを送出するために必要な回路に電源を投入する電源制御部と、
前記記憶装置に前記インターフェースを通じて前記リフレッシュ・コマンドを送出するコマンド送出部と
を有するコンピュータ。
A computer capable of transitioning to a standby state,
An interface capable of connecting a storage device including a nonvolatile memory and a controller that receives a refresh command and refreshes the nonvolatile memory; and
A timing unit that counts the elapsed time from the transition to the standby state in which the power of the storage device is stopped to the disappearance time at which the data stored in the nonvolatile memory is lost;
When it is determined that the disappearance time has arrived by monitoring the elapsed time measured by the timing unit by wakeup at a predetermined timing during the standby state when the power is turned off A power control unit for turning on power to the storage device and a circuit necessary for sending the refresh command;
A computer having a command sending unit for sending the refresh command to the storage device through the interface;
待機状態に遷移することが可能なコンピュータであって、
不揮発性メモリとリフレッシュ・コマンドを受け取って前記不揮発性メモリをリフレッシュするコントローラを含む記憶装置の接続が可能なインターフェースと、
前記記憶装置の電源が停止する待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時するように前記コンピュータに電力を供給する電池の充放電を制御する電池ユニットの制御部で構成した計時部と、
前記待機状態の間に前記経過時間を監視して前記消失時刻が到来したと判断したときに、前記記憶装置と前記リフレッシュ・コマンドを送出するために必要な回路に電源を投入する電源制御部と、
前記記憶装置に前記インターフェースを通じて前記リフレッシュ・コマンドを送出するコマンド送出部と
を有するコンピュータ。
A computer capable of transitioning to a standby state,
An interface capable of connecting a storage device including a nonvolatile memory and a controller that receives a refresh command and refreshes the nonvolatile memory; and
Controls charging / discharging of the battery that supplies power to the computer so as to measure the elapsed time from the transition to the standby state in which the power of the storage device is stopped to the disappearance time at which the data stored in the nonvolatile memory is lost A time measuring unit configured by a control unit of the battery unit
A power supply controller that monitors the elapsed time during the standby state and determines that the disappearance time has arrived, and powers on the storage device and a circuit necessary for sending the refresh command; ,
A computer having a command sending unit for sending the refresh command to the storage device through the interface;
前記電源制御部が前記待機状態に遷移して電源が停止する前に前記電池ユニットに前記消失時刻までの経過時間を設定し、前記電池ユニットは前記消失時刻が到来したときに前記電源制御部をウェイクアップさせる請求項5に記載のコンピュータ。   The power supply control unit sets an elapsed time until the disappearance time before the power supply stops when the power supply control unit transitions to the standby state, and the battery unit turns the power supply control unit when the disappearance time arrives. The computer according to claim 5, which is waked up. 待機状態に遷移することが可能なコンピュータであって、
不揮発性メモリとリフレッシュ・コマンドを受け取って前記不揮発性メモリをリフレッシュするコントローラを含む記憶装置の接続が可能なインターフェースと、
前記記憶装置の電源が停止する待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時するようにシステムの時刻情報を生成するリアル・タイム・クロックを含むウェイクアップ回路で構成した計時部と、
前記待機状態の間に前記経過時間を監視して前記消失時刻が到来したと判断したときに、前記記憶装置と前記リフレッシュ・コマンドを送出するために必要な回路に電源を投入する電源制御部と、
前記記憶装置に前記インターフェースを通じて前記リフレッシュ・コマンドを送出するコマンド送出部と
を有するコンピュータ。
A computer capable of transitioning to a standby state,
An interface capable of connecting a storage device including a nonvolatile memory and a controller that receives a refresh command and refreshes the nonvolatile memory; and
A real time clock that generates system time information so as to measure the elapsed time from the transition to a standby state in which the power of the storage device is stopped until the data stored in the nonvolatile memory is lost. A timekeeping section composed of a wake-up circuit including
A power supply controller that monitors the elapsed time during the standby state and determines that the disappearance time has arrived, and powers on the storage device and a circuit necessary for sending the refresh command; ,
A computer having a command sending unit for sending the refresh command to the storage device through the interface;
前記電源制御部が前記待機状態に遷移して電源が停止する前に前記ウェイクアップ回路に前記消失時刻を設定し、前記ウェイクアップ回路は前記消失時刻が到来したときに前記電源制御部をウェイクアップさせる請求項7に記載のコンピュータ。   The power supply control unit sets the disappearance time in the wakeup circuit before the power supply is stopped due to transition to the standby state, and the wakeup circuit wakes up the power supply control unit when the disappearance time arrives The computer according to claim 7. 待機状態に遷移することが可能なコンピュータであって、
不揮発性メモリとリフレッシュ端子と該リフレッシュ端子を参照して前記不揮発性メモリのリフレッシュをするコントローラを含む記憶装置の接続が可能なインターフェースと、
前記記憶装置の電源が停止する待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失するまでの残存時間を計時する計時部と、
前記残存時間の経過に応答して前記記憶装置に電源を投入する電源制御部と、
前記残存時間の経過に応答して前記リフレッシュ端子を設定する設定部と
を有するコンピュータ。
A computer capable of transitioning to a standby state,
An interface capable of connecting a storage device including a nonvolatile memory, a refresh terminal, and a controller for refreshing the nonvolatile memory with reference to the refresh terminal;
A timing unit that counts the remaining time from the transition to the standby state in which the power of the storage device is stopped until the data stored in the nonvolatile memory is lost;
A power control unit for turning on the power to the storage device in response to the passage of the remaining time;
A setting unit configured to set the refresh terminal in response to elapse of the remaining time.
前記設定部は前記インターフェースを利用しないサイドバンドを経由して前記リフレッシュ端子を設定する請求項9に記載のコンピュータ。   The computer according to claim 9, wherein the setting unit sets the refresh terminal via a sideband that does not use the interface. 前記計時部と前記設定部を前記コンピュータに電力を供給する電池ユニットが構成する請求項9に記載のコンピュータ。   The computer according to claim 9, wherein the clock unit and the setting unit are configured by a battery unit that supplies power to the computer. 前記計時部と前記設定部をシステムの時刻情報を生成するリアル・タイム・クロックを含むウェイクアップ回路が構成する請求項9に記載のコンピュータ。   The computer according to claim 9, wherein the clock unit and the setting unit are configured by a wakeup circuit including a real time clock for generating system time information. 不揮発性メモリを含むディスク・ドライブが接続されたコンピュータが、前記不揮発性メモリが記憶するデータの消失を防ぐ方法であって、
待機イベントに応じて前記コンピュータが前記ディスク・ドライブの電源が停止する待機状態に遷移するステップと、
前記コンピュータが前記待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失する消失時刻までの経過時間を計時するステップと、
前記消失時刻が到来したことに応答して、前記コンピュータがリフレッシュ・コマンドを送出するために必要な回路と前記ディスク・ドライブに電源を投入するステップと、
電源が投入されてからオペレーティング・システムがロードされる前に前記ディスク・ドライブに前記リフレッシュ・コマンドを送付するステップと、
前記リフレッシュ・コマンドに応答して前記ディスク・ドライブが前記不揮発性メモリをリフレッシュするステップと
を有する方法。
A computer to which a disk drive including a nonvolatile memory is connected is a method for preventing loss of data stored in the nonvolatile memory,
Transitioning to a standby state in which the computer is powered off in response to a standby event;
Measuring the elapsed time from the transition of the computer to the standby state to the disappearance time at which the data stored in the nonvolatile memory is lost;
In response to the arrival of the disappearance time, turning on power to the circuit and the disk drive necessary for the computer to send a refresh command;
Sending the refresh command to the disk drive after being powered on and before the operating system is loaded;
The disk drive refreshing the non-volatile memory in response to the refresh command.
前記待機イベントに応じて前記コンピュータが前記ディスク・ドライブから前記消失時刻を計算するための書込日時に関する情報とデータ保持時間に関する情報を取得する請求項13に記載の方法。   14. The method of claim 13, wherein the computer obtains information about a write date and time and a data retention time for calculating the disappearance time from the disk drive in response to the standby event. 不揮発性メモリとリフレッシュ端子を含むディスク・ドライブが接続されたコンピュータが、前記不揮発性メモリが記憶するデータの消失を防ぐ方法であって、
前記コンピュータが前記ディスク・ドライブの電源が停止する待機状態に遷移するステップと、
前記コンピュータが前記待機状態に遷移してから前記不揮発性メモリが記憶するデータが消失するまでの残存時間を計時するステップと、
前記残存時間の経過に応答して、前記ディスク・ドライブに電源を投入し前記リフレッシュ端子を設定するステップと、
前記リフレッシュ端子を参照して前記ディスク・ドライブが前記不揮発性メモリをリフレッシュするステップと
を有する方法。
A computer to which a disk drive including a nonvolatile memory and a refresh terminal is connected is a method for preventing the loss of data stored in the nonvolatile memory,
Transitioning to a standby state in which the computer is powered off by the computer;
Measuring the remaining time from the transition of the computer to the standby state until the data stored in the nonvolatile memory is lost;
In response to elapse of the remaining time, turning on the disk drive and setting the refresh terminal;
The disk drive refreshing the non-volatile memory with reference to the refresh terminal.
不揮発性メモリを搭載するディスク・ドライブが接続されたホスト装置であって、
パワー・オン状態において前記不揮発性メモリが記憶するデータの消失時刻を取得する消失時刻取得部と、
待機状態に遷移して前記ディスク・ドライブの電源を停止してからの経過時間を計時する計時部と、
前記経過時間に基づいて前記消失時刻が到来したと判断したときに前記ディスク・ドライブに電力を供給する電源制御部と、
電力が供給された前記ディスク・ドライブにオペレーティング・システムがロードされる前にリフレッシュさせるための指示をする指示部と
を有するホスト装置。
A host device to which a disk drive having a non-volatile memory is connected,
A lost time acquisition unit for acquiring a lost time of data stored in the nonvolatile memory in a power-on state;
A timekeeping unit for measuring the elapsed time since the power to the disk drive was stopped by transitioning to the standby state;
A power supply controller that supplies power to the disk drive when it is determined that the disappearance time has arrived based on the elapsed time;
A host device having an instruction unit for instructing the disk drive to which power is supplied to refresh before the operating system is loaded;
不揮発性メモリを搭載するディスク・ドライブが接続されたホスト装置が、前記不揮発性メモリが記憶するデータの消失を防止する方法であって、
前記ホスト装置がパワー・オン状態において前記不揮発性メモリが記憶するデータの消失時刻を取得するステップと、
前記ホスト装置が待機状態に遷移して前記ディスク・ドライブの電源を停止するステップと、
前記ホスト装置が前記ディスク・ドライブの電源を停止してからの経過時間を計時するステップと、
前記ホスト装置が前記経過時間に基づいて前記消失時刻が到来したと判断したときに前記ディスク・ドライブに電力を供給してオペレーティング・システムがロードされる前にリフレッシュの指示をするステップと、
電力が供給された前記ディスク・ドライブが前記指示に基づいて前記不揮発性メモリをリフレッシュするステップと
を有する方法。
A host device to which a disk drive equipped with a nonvolatile memory is connected is a method for preventing the loss of data stored in the nonvolatile memory,
Obtaining a data erasure time stored in the nonvolatile memory when the host device is in a power-on state;
The host device transitions to a standby state to stop the power of the disk drive;
Measuring the elapsed time since the host device stopped powering the disk drive;
Instructing refresh before the operating system is loaded by supplying power to the disk drive when the host device determines that the disappearance time has arrived based on the elapsed time;
And wherein the powered disk drive refreshes the non-volatile memory based on the instructions.
JP2014083345A 2014-04-15 2014-04-15 Method, computer and host device for preventing data loss of nonvolatile memory Active JP6018113B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014083345A JP6018113B2 (en) 2014-04-15 2014-04-15 Method, computer and host device for preventing data loss of nonvolatile memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014083345A JP6018113B2 (en) 2014-04-15 2014-04-15 Method, computer and host device for preventing data loss of nonvolatile memory

Publications (2)

Publication Number Publication Date
JP2015203995A JP2015203995A (en) 2015-11-16
JP6018113B2 true JP6018113B2 (en) 2016-11-02

Family

ID=54597417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014083345A Active JP6018113B2 (en) 2014-04-15 2014-04-15 Method, computer and host device for preventing data loss of nonvolatile memory

Country Status (1)

Country Link
JP (1) JP6018113B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11175835B2 (en) 2018-08-03 2021-11-16 Samsung Electronics Co., Ltd. Storage device initiating maintenance operation actively without instruction of host and electronic system including the same
US11360836B2 (en) 2020-07-02 2022-06-14 Kioxia Corporation Receiving terminal, communication system, and program
US11733883B2 (en) 2018-08-03 2023-08-22 Samsung Electronics Co., Ltd. Storage device initiating maintenance operation actively without instruction of host and electronic system including the same

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6668674B2 (en) 2015-10-15 2020-03-18 住友電気工業株式会社 Silicon carbide substrate
CN106356097B (en) * 2016-08-25 2020-02-14 浙江宇视科技有限公司 Protection method and device for preventing data loss
JP6475210B2 (en) * 2016-10-14 2019-02-27 Necプラットフォームズ株式会社 Flash memory device
KR102244921B1 (en) * 2017-09-07 2021-04-27 삼성전자주식회사 Storage device and Method for refreshing thereof
KR102576684B1 (en) * 2018-11-15 2023-09-11 에스케이하이닉스 주식회사 Storage device and operating method thereof
CN114175004B (en) * 2019-07-12 2024-04-23 松下知识产权经营株式会社 Vehicle-mounted storage system
CN113672450B (en) * 2021-07-19 2022-11-22 荣耀终端有限公司 Processing method and device for solid state disk

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4580621B2 (en) * 2003-03-17 2010-11-17 ソニー株式会社 Semiconductor memory
JP2008090477A (en) * 2006-09-29 2008-04-17 Toshiba Corp Information recording device, information processor and write control method
JP5609604B2 (en) * 2009-12-11 2014-10-22 株式会社デンソー Navigation device
JP5928031B2 (en) * 2011-03-15 2016-06-01 オムロン株式会社 User program development support apparatus, user program development support program, recording medium, programmable controller system, and programmable controller
JP5716473B2 (en) * 2011-03-18 2015-05-13 株式会社リコー Image processing device
JP2013171600A (en) * 2012-02-20 2013-09-02 Denso Corp Nonvolatile memory device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11175835B2 (en) 2018-08-03 2021-11-16 Samsung Electronics Co., Ltd. Storage device initiating maintenance operation actively without instruction of host and electronic system including the same
US11733883B2 (en) 2018-08-03 2023-08-22 Samsung Electronics Co., Ltd. Storage device initiating maintenance operation actively without instruction of host and electronic system including the same
US11360836B2 (en) 2020-07-02 2022-06-14 Kioxia Corporation Receiving terminal, communication system, and program

Also Published As

Publication number Publication date
JP2015203995A (en) 2015-11-16

Similar Documents

Publication Publication Date Title
JP6018113B2 (en) Method, computer and host device for preventing data loss of nonvolatile memory
US10521006B2 (en) Report updated threshold level based on parameter
US9286985B2 (en) Semiconductor device with power mode transitioning operation
US9389673B2 (en) Systems and methods of performing a data save operation
US10891062B2 (en) Managing host communication with a regulator in a low power mode
US9092150B2 (en) Systems and methods of performing a data save operation
US20180275740A1 (en) System on chip for reducing wake-up time, method of operating same, and computer system including same
JP3974510B2 (en) Computer apparatus, power management method, and program
US8914594B2 (en) Systems and methods of loading data from a non-volatile memory to a volatile memory
US11550496B2 (en) Buffer management during power state transitions using self-refresh and dump modes
KR20120127624A (en) Memory power reduction in a sleep state
US20140223213A1 (en) Memory system
JP5281625B2 (en) Computer reset method and computer
JP5795758B2 (en) Method for protecting data in non-volatile storage device
TWI769794B (en) Memory system and a method of managing power in a memory system
JP5894044B2 (en) Method and portable computer for storing data in a hybrid disk drive
KR20080083878A (en) Method and apparatus for decrease of suspend current in device
RU2815054C2 (en) Electronic device and its method for using storage space
JP5913770B2 (en) Method for controlling the power state of a storage device comprising a rotating disk and portable computer
US11481021B2 (en) Information processing apparatus and control method
US20130080717A1 (en) Information processing apparatus and control method
CN116243997A (en) Chip system, starting method thereof and electronic equipment

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160818

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160929

R150 Certificate of patent or registration of utility model

Ref document number: 6018113

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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