JP2012043420A - 電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム - Google Patents

電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム Download PDF

Info

Publication number
JP2012043420A
JP2012043420A JP2011176364A JP2011176364A JP2012043420A JP 2012043420 A JP2012043420 A JP 2012043420A JP 2011176364 A JP2011176364 A JP 2011176364A JP 2011176364 A JP2011176364 A JP 2011176364A JP 2012043420 A JP2012043420 A JP 2012043420A
Authority
JP
Japan
Prior art keywords
nvm
operations
current threshold
power
current
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.)
Granted
Application number
JP2011176364A
Other languages
English (en)
Other versions
JP5722728B2 (ja
Inventor
Matthew Byom
ビヨム マシュー
Khmelnitsky Vadim
フメリニツキー ヴァディム
Hugo Fiennes
ファインズ ヒューゴ
Kapoor Arjun
カプール アージュン
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.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of JP2012043420A publication Critical patent/JP2012043420A/ja
Application granted granted Critical
Publication of JP5722728B2 publication Critical patent/JP5722728B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

【課題】電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステムを提供する。
【解決手段】多数の同時の不揮発性メモリ(NVM)動作を時間にわたって分散させる電力制限スキームを使用してNVMの電力消費を制限するシステム及び方法を開示する。これは、NVMの電流消費の上限を固定してピーク電力事象を排除する「電流消費キャップ」を提供する。複数のシステムリソースの少なくとも1つから電流スレッシュホールドを調整する際にファクタとして使用するのに適したデータを受け取ることによりNVMの電力消費を制限できる。電流スレッシュホールドは、NVMが消費できるピーク電流未満であり、その受け取られたデータに基づき調整できる。NVMの累積電流消費がその調整された電流スレッシュホールドを越えないように、実行される同時NVM動作の数を制限する電力制限スキームを使用することができる。
【選択図】図8B

Description

本発明は、電力消費を制限するようにNANDフラッシュメモリのような不揮発性メモリの動作を動的に制御することに係る。
電子システムは、益々複雑になり、益々多くのコンポーネントを組み込むようになってきている。従って、これらシステムの電力需要が問題になり続けている。特に、システム内の多くのコンポーネントが同時に動作するので、システムは、電力又は電流スパイクに悩まされる。この影響は、種々のシステムコンポーネントが各々大電力動作を同時に行うときに特に顕著なものとなる。
消費者電子装置の大量記憶に通常使用されるフラッシュメモリシステムは、電力消費が問題となるシステムの一例である。過酷な使用では、フラッシュシステムは、ここでピーク電力事象と称される高いレベルの電力事象を経験する。ピーク電力事象は、フラッシュメモリシステムの各ダイが同時にアクセスされるときに生じる。フラッシュメモリシステムを使用するシステムは、このようなピーク電力事象を取り扱う(即ち、ピーク電力事象の電力需要を満足するに充分な電力リソースを維持する)ように設計される。しかしながら、ピーク電力事象は、あまり頻繁に生じるものでなく、フラッシュシステムの平均電力消費は、ピーク電力より実質的に低い。従って、その結果、これらシステムは、高い電力レベルが常に必要とされなくても、高レベルの電力を予約しておくように設計される。
多数の同時の不揮発性メモリ(NVM)動作を時間にわたって分散させる電力制限スキームを使用してNVMの電力消費を制限するためのシステム及び方法が開示される。これは、NVMの電流消費の上限を固定してピーク電力事象を排除する「電流消費キャップ」を提供する。
一実施形態において、NVMの電力消費は、複数のシステムリソースの少なくとも1つから電流スレッシュホールドを調整する際にファクタとして使用するのに適したデータを受け取ることにより制限することができる。電流スレッシュホールドは、NVMによって消費できるピーク電流未満であり、その受け取られたデータに基づき調整することができる。NVMの累積電流消費がその調整された電流スレッシュホールドを越えないように、実行される同時NVM動作の数を制限する電力制限スキームを使用することができる。ある実施形態では、この電力制限スキームは、NVMにより与えられるフィードバックデータを使用して、各NVM動作がいつ完了するか決定する反応的電力制限スキームである。別の実施形態では、電力制限スキームは、各NVM動作が完了するまでにどれほど長くかかるかを予想する予想的電力制限スキームである。
本発明の前記及び他の態様並びに効果は、全体を通じて同じ部分が同じ参照文字で示された添付図面を参照した以下の詳細な説明から明らかとなろう。
本発明の種々の実施形態により構成された電子装置の回路図である。 ホストプロセッサと、本発明の種々の実施形態により構成された管理型不揮発性メモリパッケージとを備えた例示的システムの概略図である。 ホストプロセッサと、本発明の種々の実施形態により構成された生の不揮発性メモリパッケージとを備えた例示的システムの概略図である。 本発明の種々の実施形態によるNVMパッケージの電流消費プロフィールを示すグラフである。 本発明の種々の実施形態によるNVMパッケージの一部分を詳細に示すブロック図である。 従来システムにより制御されるNVMパッケージの全てのダイの累積的電流消費プロフィールを示すグラフである。 本発明の種々の実施形態によるシステムにより制御されるNVMパッケージの全てのダイの累積的電流消費プロフィールを示すグラフである。 本発明の種々の実施形態による電力レベル選択回路の例示的ブロック図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したフローチャートである。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したフローチャートである。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したタイミング図である。 本発明の種々の実施形態による電力制限スキームに関連したフローチャートである。 本発明の種々の実施形態による電力制限スキームに関連したフローチャートである。
図1は、電子装置100の回路図である。ある実施形態では、電子装置100は、ポータブルメディアプレーヤ(例えば、カリフォルニア州クパチーノのアップル社により入手できるiPodTM)、セルラー電話(例えば、アップル社により入手できるiPhoneTM)、ポケットサイズパーソナルコンピュータ、パーソナルデジタルアシスタント(PDA)、デスクトップコンピュータ、ラップトップコンピュータ、並びに他の適当な形式の電子装置であるか、又はそれらを含む。
電子装置100は、システム・オン・ア・チップ(SoC)110と、不揮発性メモリ(NVM)120と、電力レベル選択回路130とを含むことができる。不揮発性メモリ120は、フローティングゲート又は電荷トラップ技術に基づくNANDフラッシュメモリ、NORフラッシュメモリ、消去可能なプログラマブルリードオンリメモリ(EPROM)、電気的に消去可能なプログラマブルリードオンリメモリ(EEPROM)、強誘電体RAM(FRAM)、磁気抵抗性RAM(MRAM)、他の既知の又は将来の形式の不揮発性メモリ技術、又はその組み合わせを含む。NVMメモリ120は、最小の消去単位である「ブロック」へと編成されると共に、最小のプログラム可能で且つ読み取り可能な単位である「ページ」へと編成される1つ以上のダイを含むことができる。ある実施形態では、NVM120は、複数のブロックを各々有する複数の集積回路を含むことができる。対応する集積回路からのブロック(例えば、同じ位置又はブロック番号を有するブロック)は、「スーパーブロック」を形成する。NVM120の各メモリ位置(例えば、ページ又はブロック)は、物理的アドレス(例えば、物理的ページアドレス又は物理的ブロックアドレス)を使用してアドレスすることができる。
電力レベル選択回路130は、NVM120が消費できる最大電力量又は電流量を制限する電力レベルをセットすることができる。電力レベルは、電圧レベル、電流レベル、又はその両方を含むことができる。回路130は、多数のファクタに基づいて電力レベルを選択するように動作できる。これらのファクタは、例えば、電源から利用できる電力(例えば、利用可能なバッテリ電力)、装置100の種々のコンポーネント(例えば、SoC制御回路112)により要求される電力負荷、及び装置100の温度を含む。回路130は、SoC110及びNVM120に例示的に接続されて示されているが、回路130は、装置100のいずれのコンポーネントにも接続できることを理解されたい。回路130の付加的な細部は、図5の説明に関連して以下に述べる。
図1及びそれ以降の図、並びにここに開示する種々の実施形態は、時々、フラッシュ技術に関連して説明する。しかしながら、これは、限定を意図したものではなく、他の形式の不揮発性メモリも実施することができる。又、電子装置100は、図面が複雑になり過ぎるのを防ぐために図1には示されていない電源又はユーザ入力又は出力コンポーネントのような他のコンポーネントを含むことができる。
システム・オン・ア・チップ110は、SoC制御回路112、メモリ114及びNVMインターフェイス118を含むことができる。SoC制御回路112は、SoC110の一般的な動作及び機能、並びにSoC110又は装置100の他のコンポーネントを制御することができる。例えば、ユーザ入力、及び/又はアプリケーション又はオペレーティングシステムのインストラクションに応答して、SoC制御回路112は、NVM120からデータを得又はそこにデータを記憶するためにNVMインターフェイス118へ読み取り又は書き込みコマンドを発生することができる。明瞭化のために、SoC制御回路112が記憶又は検索に要求するデータは、そのデータがユーザ又はユーザアプリケーションに直接関連していなくても、「ユーザデータ」と称される。むしろ、ユーザデータは、(例えば、アプリケーション又はオペレーティングシステムを経て)SoC制御回路112により発生され又は得られたデジタル情報の適当なシーケンスである。
SoC制御回路112は、ハードウェア、ソフトウェア及びファームウェアの任意の組み合わせ、並びに電子装置100の機能を駆動するように働くコンポーネント、回路又はロジックを含む。例えば、SoC制御回路112は、NVM120又はメモリ114に記憶されたソフトウェア/ファームウェアの制御の下で動作する1つ以上のプロセッサを含む。
メモリ114は、適当な形式の揮発性又は不揮発性メモリ、例えば、ダイナミックランダムアクセスメモリ(DRAM)、同期ダイナミックランダムアクセスメモリ(SDRAM)、ダブルデータレート(DDR)RAM、キャッシュメモリ、リードオンリメモリ(ROM)、又はその組み合わせを含むことができる。メモリ114は、ユーザデータを不揮発性メモリ120へプログラミングするか又はそこから読み取るために一時的に記憶できるデータソースを含むことができる。ある実施形態では、メモリ14は、SoC制御回路112の一部分として実施されるプロセッサのためのメインメモリとして働くことができる。
NVMインターフェイス118は、SoC制御回路112とNVM120との間のインターフェイス又はドライバとして働くように構成されたハードウェア、ソフトウェア及び/又はファームウェアの適当な組み合わせを含む。NVMインターフェイス118に含まれたソフトウェアモジュールについては、それに対応するプログラムコードがNVM120又はメモリ114に記憶される。
NVMインターフェイス118は、SoC制御回路112がNVM120にアクセスしそしてNVM120のメモリ位置(例えば、ページ、ブロック、スーパーブロック、集積回路)及びそこに記憶されたデータ(例えば、ユーザデータ)を管理できるようにする種々の機能を遂行することができる。例えば、NVMインターフェイス118は、SoC制御回路112からの読み取り又は書き込みコマンドを解釈し、ウェアレベリングを遂行し、そしてNVM120のバスプロトコルに適合する読み取り及びプログラムインストラクションを発生することができる。
NVMインターフェイス118及びSoC制御回路112は、個別のモジュールとして示されているが、これは、本発明の実施形態の説明を簡単化するために過ぎない。これらのモジュールは、ハードウェアコンポーネント、ソフトウェアコンポーネント、又はその両方を共有することを理解されたい。例えば、SoC制御回路112の一部分として実施されるプロセッサは、NVMインターフェイス118のためのソフトウェアベースのメモリドライバを実行する。従って、SoC制御回路112及びNVMインターフェイス118の各部分を集合的に「制御回路」と称してもよい。
図1は、NVM120がそれ自身のコントローラをもたない電子装置を示す。他の実施形態では、電子装置100は、NVM120と、NVMインターフェイス118の幾つかの部分又は全ての部分(例えば、以下に述べる変換レイヤ)とを含むフラッシュ又はSDカードのようなターゲット装置を含むことができる。これらの実施形態では、SoC110又はSoC制御回路112は、ターゲット装置のためのホストコントローラとして働いてもよい。例えば、ホストコントローラとして、SoC110は、ターゲット装置へ読み取り又は書き込み要求を発生することができる。
図2A及び2Bは、図1の実施形態100の種々の実施形態を例示するシステムの回路図である。最初に図2Aを参照すると、システム200は、ホストプロセッサ210と、少なくとも1つの不揮発性メモリ(NVM)パッケージ220とを含むことができる。ホストプロセッサ210及び任意であるがNVMパッケージ220は、ポータブルメディアプレーヤ(例えば、カリフォルニア州クパチーノのアップル社により入手できるiPodTM)、セルラー電話(例えば、アップル社により入手できるiPhoneTM)、ポケットサイズパーソナルコンピュータ、パーソナルデジタルアシスタント(PDA)、デスクトップコンピュータ、又はラップトップコンピュータのような適当なホスト装置又はシステムにおいて実施することができる。
ホストプロセッサ210は、現在入手できる又は将来開発される1つ以上のプロセッサ又はマイクロプロセッサを含む。それとは別に又はそれに加えて、ホストプロセッサ210は、メモリシステム200の種々の動作を制御できる他のコンポーネント又は回路(例えば、特定用途向け集積回路(ASIC))を含むか又はそれに関連して動作することができる。プロセッサベースの実施では、ホストプロセッサ210は、ホストに実施されたメモリ(図示せず)へロードされるファームウェア及びソフトウェアプログラムを実行することができる。このメモリは、適当な形式の揮発性メモリ(例えば、キャッシュメモリ又はランダムアクセスメモリ(RAM)、例えば、ダブルデータレート(DDR)RAM又はスタティックRAM(SRAM))を含む。ホストプロセッサ210は、そのホストプロセッサ210が不揮発性メモリパッケージ220のための種々のメモリ管理及びアクセス機能を遂行できるようにするベンダー特有及び/又は技術特有のインストラクションを与えるNVMドライバ212を実行することができる。ホストプロセッサ210は、(図1の)SoC110いずれかの機能を遂行することができる。
又、ホストプロセッサ210は、NVMドライバ212の一部分として実施される電力キャッピングモジュール214を実行することもできる。電力キャッピングモジュール214は、NVMパッケージ220の電力消費コントローラとして動作し、本発明の種々の実施形態により種々の電力制限スキームを実施することができる。これらの電力制限スキームは、同時にアクセスできるダイ224の数を制御することによりNVMパッケージ220で消費される電力を制限することができる。本発明の実施形態による種々の電力制限スキームは、以下で詳細に説明する。
NVMパッケージ220は、ボールグリッドアレイ(BGA)パッケージ又は他の適当な形式の集積回路(IC)パッケージである。NVMパッケージ220は、管理型NVMパッケージでもよい。特に、NVMパッケージ220は、適当な数のNVMダイ224に結合されたNVMコントローラ222を含むことができる。NVMコントローラ222は、プロセッサ、マイクロプロセッサ、又はハードウェアベースのコンポーネント(例えば、ASIC)の適当な組み合わせを含み、そしてホストプロセッサ210と同じコンポーネント又は異なるコンポーネントを含んでもよい。NVMコントローラ222は、NVMダイ224の物理的メモリ位置を管理し及び/又はそこにアクセスする責任をNVMドライバ212と共有する。或いは又、NVMコントローラ222は、NVMダイ224に対する実質的に全ての管理及びアクセス機能を遂行してもよい。従って、「管理型NVM」とは、不揮発性メモリ(例えば、NVMダイ224)に対する少なくとも1つのメモリ管理機能を遂行するように構成されたコントローラ(例えば、NVMコントローラ222)を含むメモリ装置又はパッケージを指す。NVMダイ224に対してNVMコントローラ222及び/又はホストプロセッサ210により遂行されるメモリ管理及びアクセス機能は、読み取り、書き込み又は消去インストラクションを発生し、そしてウェアレベリング、不良ブロック管理、不要データ収集、論理的/物理的アドレスマッピング、SLC又はMLCプログラミング判断、エラー修正又は検出の適用、及びプログラム動作を設定するためのデータキューイングを遂行することを含む。
NVMパッケージ220は、NVMコントローラ222により実行できる電力キャッピングモジュール223を含むことができる。電力キャッピングモジュール223は、電力キャッピングモジュール214と同じ動作能力を有する。ある実施形態では、両電力キャッピングモジュール214及び223をシステム200に含ませることができる。この実施形態では、モジュール214及び223は、本発明の一実施形態による電力制限スキームを実施するように一緒に機能してもよい。例えば、モジュール214は、マスターとして機能し、そしてモジュール223は、スレーブとして機能してもよい。別の実施形態では、システム200は、電力キャッピングモジュール214を含むが、電力キャッピングモジュール223は含まない。更に別の実施形態では、システム200は、電力キャッピングモジュール223を含むが、電力キャッピングモジュール214は含まない。
NVMダイ224は、メモリシステム200を停止するときに保持する必要のある情報を記憶するのに使用される。ここで使用する「不揮発性メモリ」という語は、状況に応じて、データを記憶できるNVMダイを指すか、又はNVMダイを含むNVMパッケージを指してもよい。
図2Bは、図1の電子装置100の別の実施形態の一例であるシステム250の回路図である。このシステム250は、図2Aのシステム200に関連して上述した特徴及び機能のいずれかを有する。特に、図2Bに示すいずれかのコンポーネントは、図2Aの同じ名前のコンポーネントのいずれかの特徴及び機能を有し、そしてその逆のことも言える。
システム250は、ホストプロセッサ260及び不揮発性メモリパケット270を含むことができる。図2Aのメモリシステム200とは異なり、NVMパッケージ270は、埋め込まれたNVMコントローラを含まず、それ故、NVMダイ274は、ホストプロセッサ260により(例えば、NVMドライバ262を経て)完全に管理される。従って、不揮発性メモリパッケージ270は、「生のNVM」と称される。「生のNVM」とは、NVMパッケージの外部で実施されるホストコントローラ又はプロセッサ(例えば、ホストプロセッサ260)により完全に管理されるメモリ装置又はパッケージを指す。ホストプロセッサ260は、図2Aのホストプロセッサ210及びNVMコントローラ222に関連して上述した他のメモリ管理及びアクセス機能のいずれかを遂行することができる。更に、ホストプロセッサ260は、(図1の)SoC110の機能のいずれかを遂行することができる。
又、ホストプロセッサ260は、NVMドライバ262の一部分として実施されてもよい電力キャッピングモジュール264も実行できる。電力キャッピングモジュール264は、電力キャッピングモジュール214(図2A)と同じ動作能力を有することができる。
図2A及び2Bを参照し続けると、NVMコントローラ222(図2A)及びホストプロセッサ260(例えば、NVMドライバ262を経て)(図2B)は、各々、図1に関連して上述したSoC110の特徴及び機能を実施し、そしてNVMダイ224及び274は、本発明の種々の実施形態を使用して確認できる各電力消費プロフィールを実施することができる。特に、NVMダイ224(図2A)及び274(図2B)は、各々、ピーク電流プロフィールを有し、ダイがその最も電力集中の動作を遂行するときに最も高いピークが生じる。フラッシュメモリの実施形態では、このような電力集中動作の一例は、メモリセルに記憶されたデータを読むときに使用される感知動作(例えば、電流感知動作)である。このような感知動作は、例えば、プログラミングの後にデータが適切に記憶されたことを検証するときにホストプロセッサ及び/又はNVMコントローラからの読み取り要求に応答して遂行される。
図2Cは、電流消費プロフィール290を示す。この電流消費プロフィール290は、検証型の感知動作中にNVMダイ(例えば、NVMダイ224又は274の1つ)の電流消費の一例を与える。ピーク292及び294を含む多数のピークを伴う電流消費プロフィール290は、検証型の感知動作がどれほどピーキーであるかを示している。これらの検証型感知動作は、複数のNVMダイを横切って同時に生じるおそれがあるので(即ち、複数のダイを横切って並列な書き込みを使用するために)、特に問題である。従って、NVMコントローラ222(図2A)又はホストプロセッサ260(図2B)により管理されない場合には、異なるNVMダイのピークが重畳し、電流の総和が許容できないほど高くなる。この状況は、他の形式の電力集中動作、例えば、消去及びプログラム動作でも生じ得る。従って、各ダイが同時にアクセスされる(例えば、プログラム、読み取り、消去、又はその組み合わせにより)ときには、累積電流消費プロフィールは、単一のダイのものより著しく高くなる。
図3は、本発明の一実施形態によるNVMパッケージの一部分を詳細に示すブロック図である。図3は、書き込み動作中に、どのようにしてデータをデータソース310からバッファ320へ転送し、そしてバッファ320から、ダイ330のブロック332の1つに存在するページ334の1つへ転送するかを示している。書き込み動作は、2つの部分、即ち(1)データをデータソース310からバッファ320へ転送するバッファ動作、及び(2)データをバッファ320からダイ310へ転送するプログラム動作を含むことができる。両部分は、時間成分及び電力消費成分を有する。これを完全に遂行するために要求されるバッファ動作及び時間は、ここでは、Tbuffと称される。又、これを完全に遂行するために要求されるプログラミング動作及び時間は、ここでは、Tprogと称される。
書き込み動作のバッファ及びプログラム部分がタイミング図350に示されている。このタイミング図350は、時間t0で開始し、時間t1で終了する書き込み動作を示している。バッファ部分は、t0で開始しtiで終了する全書き込み動作の比較的僅かな部分を占有し、一方、プログラム部分は、tiで開始しt1で終了する書き込み動作の比較的大きな部分を占有する。又、図350は、バッファ及びプログラム部分の電力消費も示している。プログラム部分は、バッファ部分より実質的に多くの電力を消費する。
データソース310は、任意のデータソースのブラックボックス表現である。例えば、データソースは、データをNVMパッケージへ及びNVMパッケージからルーティングするデータバスラインである。データソース310は、図2A及び2Bのホストプロセッサ210又は260のようなホストプロセッサからデータを受け取る。
バッファ320は、データを一時的に記憶するための適当な構造でよい。例えば、バッファ320は、レジスタでよい。バッファ320を使用するのは、ダイ330より相当に高いレートでデータを受け取って記憶できるからである。従って、バッファ320は、NVMインターフェイスが、データを、一時的及び高速記憶(バッファ320に)のために各ダイへディスパッチして、データラインを更なるデータ転送のために解放できるようにする。バッファ320が存在しない場合には、データラインは、全てのデータがダイ330に書き込まれるまでビジーとなる。
ダイ330は、所定数の物理的なブロック332を含むことができ、そして各ブロックは、所定数のページ334を含むことができる。ページ及びブロックは、ダイ330内のメモリセルの物理的な位置を表す。ページ又はブロック内のセルは、セルが存在するNVMパッケージに関連したアドレス回路(図示せず)を使用してアクセスすることができる。典型的に、所与の時間に、ダイ当たり1つのブロックしかアクセスできない。ある実施形態では、ダイは、複数の平面に分割され、ダイの各平面のブロックは、同時にアクセスすることができる。
ある実施形態では、2つ以上のダイからのブロックを仮想的に一緒にリンクしてスーパーブロックを形成することができる。ブロックは、各ダイの同じ行においてスーパーブロックとして仮想的にリンクされる必要はない。実際に、ブロックは、2つ以上のダイからランダムに選択されて、スーパーブロックを形成することができる。ある実施形態では、ブロックは、2つ以上の平面から選択され、各平面のブロックに同時にアクセスすることができる。スーパーブロックは、動作の並列性を与え、異なる平面に位置するブロック上でプログラミング、読み取り及び消去動作を並列に行えるようにする。別の実施形態では、2つ以上のダイ又は平面からのページを仮想的に一緒にリンクして、スーパーページを形成することができる。NVMインターフェイスにおいて実施される変換レイヤは、スーパーブロック又はスーパーページを追跡する。
フィードバックライン340は、ダイ330及び/又はバッファ320の動作に関する情報を与えることができる。例えば、フィードバックライン340は、書き込み動作のバッファ部分及びプログラム部分が完了したときに、ページをプログラムするのに必要なパルスの数、電圧信号、電圧範囲、又はダイ300の動作に関連した他の情報のようなフィードバック情報を与えることができる。書き込み動作の任意の部分の時間及び電力は、ダイ、ダイの領域、ブロック又はページ(例えば、下位ページ又は上位ページ)まで分解することができ、且つこの情報のいずれかをフィードバックライン340に与えられることが理解される。フィードバックライン340の情報は、NVMコントローラ(例えば、NVMコントローラ222)及び/又はホストプロセッサに与えられ、又はより詳細には、電力キャッピングモジュールに与えられる。
図3を参照して述べたNVM動作は、プログラミング動作に関するものであるが、読み取り及び消去のような他のNVM動作も、同様のタイミング及び電力消費パラメータを示すことが理解される。例えば、読み取り動作は、読み取り部分及びバッファ部分を有する。読み取り部分は、バッファ部分より多くの電力を消費し、又、遂行するのにより長時間を要する。
図4Aは、従来のシステムによって制御されるNVMパッケージにおける全てのダイの累積電流消費プロフィール410を例示するものである。このプロフィール410は、電力制限スキームを使用しないシステムにおいて発生される。その結果、電流プロフィール410は、ピーク412及び414で示すように、ピーク電流消費のインスタンスを含む。このような従来のシステムは、ピーク電力事象の発生を許すので、このような事象を受け容れるように設計されねばならない。これは、システムに不要な設計上の制約を課し、ピーク電流に達するNVM事象を取り扱い且つピーク電力要求を満足するに充分な電力の予約を強制することになる。更に、ピーク電力事象はあまり頻繁ではないから、平均電流消費は、図示されたように、ピーク電流より低い。ピーク電流と平均電流とのこの相違の結果、過剰な電流オーバーヘッドがNVMパッケージに割り当てられる。本発明による実施形態は、図4Aの欠点を克服する。
図4Bは、本発明の実施形態によるシステム(例えば、システム100、システム200、又はシステム250)により制御されるNVMパッケージにおける全てのダイの累積電流消費プロフィール420を例示するものである。このプロフィール420は、電力制限又は電流制御スキームを使用するシステムにおいて発生される。このスキームは、電流消費を制限し、瞬時電流が電流スレッシュホールドを越えるのを防止する。電流を制限することにより、ピーク422及び424は、電流スレッシュホールドにより制限されない場合に消費する多量の電流を瞬時に消費することが許されない。図示されたように、ピーク422及び424は、本発明の一実施形態による電流制限スキームにより同時のNVM動作の数が制限されるので、平坦化される。従って、制限なしに動作することが許された場合に電流スレッシュホールドを越える同時動作負荷を有するNVM事象が作用することが防止され、電流消費がスレッシュホールドを越えないことを保証するようにそれら事象が時間にわたって分散される。NVM事象の同時動作を制限する技術は、図6ないし12を参照して以下に詳細に述べる。
電力制限スキームの使用で、NVMパッケージに対する電力オーバーヘッド負担を減少することができる。これは、システムが電力リソースをシステム内の他のコンポーネントに割り当てできるようにする。というのは、電力制限スキームによりセットされた電流スレッシュホールドにより、NVMパッケージにより引き出される最大電力をセットできるからである。ある実施形態では、電力制限スキームは、電流スレッシュホールドを種々のシステムパラメータに基づいて変化させる。例えば、プロセッサのようなシステム内の他のコンポーネントが相対的にアイドル状態である場合に、NVMパッケージの電流スレッシュホールドを上げて、付加的な同時NVM動作を許すことができる。他のコンポーネントが相対的にアクティブになると、NVMの電流スレッシュホールドを下げることができる。
図5は、電源監視回路512、負荷監視回路514、温度監視回路516、及びNVM電力消費データ518から受け取った入力に基づいて電流スレッシュホールドを与え且つ動的に変化させるよう動作する電力レベル選択回路510の例示的ブロック図である。この選択回路510は、NVMインターフェイス(例えば、NVMインターフェイス118)又はNVMパッケージ(例えば、NVM120)に電流スレッシュホールドを与える。
電源監視回路512は、システムでの入手可能な電力レベルを監視し、そしてそのデータを電力レベル選択回路510に与えることができる。例えば、回路512は、バッテリのエネルギーレベルを監視することができる。別の例として、回路512は、システムがラップトップ又はパワーブリックのような外部電源からシステムが電力を受け取るかどうか検出する。更に、システムが外部電力を受け取るときには、回路が、電力レベル選択回路に、どれほど多くの電力が受け取られるか(例えば、ラップトップから500mA又はパワーブリックから1A)を指示することができる。負荷監視回路514は、システム内の種々のコンポーネント(例えば、プロセッサ、メモリ、バックライト、LCD、ユーザインターフェイス、等)のリアルタイム負荷を監視することができる。又、回路514は、例えば、システム内に存在するコマンドキューに基づいてコンポーネントの負荷を予想することができる。温度監視回路516は、システムの温度を監視することができる。
NVM電力消費データ518は、NVMパッケージによりどれほど多くの電力を消費できるか特定する。NVMパッケージの電力消費分解能は、比較的特定のもの(例えば、上位ページの電力又は電流消費)から比較的一般的なもの(例えば、特定のダイの電力消費)へと変化する。このデータを使用して、選択回路510は、所与の電流スレッシュホールドに対してどれほど多くの同時NVM動作を遂行できるか決定することができる。データ518は、例えば、NVMパッケージのベンダーから、又はNVMパッケージの電力消費を決定するテストから導出することができる。NVMパッケージの電力消費を決定するためのテストの一例が、参考としてここにそのまま援用される“Peak Power Validation Methods and Systems for Non-Volatile Memory”と題する米国特許出願(代理人管理番号P8909US1)に見られる。
選択回路510は、それが受け取るデータをバランスさせ、それに応じて電流スレッシュホールドをセットすることができる。例えば、供給電力が所定の電力スレッシュホールドより高く、システム負荷が所定の負荷スレッシュホールドより低く、且つ温度が所定の温度スレッシュホールドより低い場合には、回路510は、比較的高い電流スレッシュホールドを選択してもよい。別の例として、供給電力が所定の電力スレッシュホールドより低く、システム負荷が所定の負荷スレッシュホールドより高く、且つ温度が所定の温度スレッシュホールドより低い場合には、回路510は、比較的低い電流スレッシュホールドを選択してもよい。これらの例は、単なる例示に過ぎず、そして回路510は、ここに述べるものを越える付加的な入力を、電流スレッシュホールドを動的に変化させるファクタとして受け取ってもよいことが理解される。
図6から12を参照し、NVM動作における電力消費を制限するための幾つかの技術を説明する。各技術は、図3について上述したように、バッファするための時間及びプログラムするための時間を参照するものである。バッファするための時間は、ここでは、Tbuffと称され、そしてプログラムするために時間は、ここでは、Tprogと称される。幾つかの図は、番号付けされたダイを参照することを含む。Tbuff及びTprogは、Tbuff及びTprog動作がどのダイに関連するか指示するためにダイ番号(例えば、Tprog1)が添付される。例えば、Tprog1は、ダイ番号1に対してプログラムするための時間を指す。
図6は、電流制限されない理想的なタイミング図610を例示している。このタイミング図610は、番号1及び2で示された2つのダイオードに対するTbuff及びTprogを示している。付加的なダイを示すことができるが、図面の過剰な複雑さを回避するために省略されていることを理解されたい。図示されたように、NVM事象は、Tbuff1で始まり、その完了直後に、Tprog1及びTbuff2が始まる。Tbuff2が完了した後に、Tprog2が始まる。この点において、Tprog1及びTprog2が同時の動作であるから、電流消費が最高となる。Tprog1が完了すると、Tprog2が遂行されるだけであるから、電流消費は下がる。タイミング図610は、NVMの動作に電流スレッシュホールドが課せられず、従って、ダイ1及び2の両方の電流消費を積み重ねることができるので、理想的である。
図7は、本発明の一実施形態による電流制限型タイミング図710である。このタイミング図710は、同時ダイ動作を1つのダイのみに実際上制限する電流スレッシュホールドに従うものである。図示されたように、NVM事象は、Tbuff1で始まり、その完了直後に、Tprog1及びTbuff2が始まる。図6とは対照的に、Tprog2は、Tbuff2及びTprog1が完了する後まで開始しない。従って、Tprog1が完了する後までTprog2の開始を遅延することで、電流消費を制限し、電流スレッシュホールドに従わせる。(理想的なモードにおいて作用する)Tprog2の破線表示が比較のために設けられる。
図8Aは、本発明の一実施形態による反応的電力制限スキームに基づいて動作する電流制限型タイミング図810を例示するものである。このスキームでは、実質的にTbuff動作が完了した直後にTprog動作が開始すると仮定する。このスキームは、フィードバックデータを使用して、ダイごとにTbuff及びTprog動作のディスパッチ(即ち、開始)を制御する。フィードバックデータは、例えば、所与のダイのTprogがいつ完了するか特定することができる。従って、所与の電流スレッシュホールドに対し、どれほど多くのTprog動作を遂行できるか分かる。この知識及びフィードバックデータを使用して、反応的電力制限スキームは、電流スレッシュホールドに対して可能であるのと同程度に多くの動作をディスパッチすることができる。
タイミング図810は、Tbuff1で始まり、次いで、Tprog1となる。Tprog1が完了した後に、Tprog1が完了したことを指示するフィードバックデータが与えられる。このフィードバックデータが受け取られた後、反応的電力制限スキームは、Tbuff2を開始し、その直後に、Tprog2となる。図示されていないが、Tprog1が完了した後にTbuff2が開始するのに待ち時間が生じ得る。というのは、フィードバックデータを受け取って処理するのに要する時間に関連した遅延が生じるからである。
図8Bは、本発明の一実施形態により反応的電力制限スキームで遂行されるステップの例示的フローチャートである。ステップ820で開始して、電流スレッシュホールドが受け取られる。システム内の種々のファクタに基づいて電流スレッシュホールドを変更できることを示すためにフィードバックループが設けられる。異なる電流スレッシュホールドが受け取られたときに、電流制限スキームは、その差を考慮して、必要に応じて適当な変更を行う。
ステップ830において、受け取られた電流スレッシュホールドに基づいて遂行できる同時NVM動作の最大数Cmaxに関して決定がなされる。ステップ840において、キューイングされる同時NVM動作の上限が受け取られ、それらを同時に動作すると、電流スレッシュホールドを越えることになる。ステップ850において、キューイングされるNVM動作の第1セットをディスパッチし、この第1セットは、Cmaxを越えない動作の数を含む。この第1セットは、Tprogの完了をまだ報告していない以前にディスパッチされたNVM動作を考慮することができる。ステップ860において、Tprog完了のフィードバックを監視する。完了したTprogが検出されると、ステップ870に示されたように、キューイングされるNVM動作の別の1つをディスパッチすることができる。
ステップ880において、キューイングされる付加的なNVM動作が存在するかどうかの決定がなされる。その決定がイエスの場合には、プロセスは、ステップ860へループバックする。キューイングされるNVM動作の上限に追加される付加的なNVM動作が受け取られることがあり、従って、同時動作の数を制限する必要性が更に続く。その決定がノーの場合には、プロセスは、ステップ820へループバックする。
図9は、本発明の一実施形態によるパイプライン型反応的電力制限スキームに基づいて動作する電流制限タイミング図910を例示する。このスキームは、図8A及び8Bを参照して上述した反応的電力制限スキームと同様であるが、Tbuff動作をパイプライン型とすることができる。しかしながら、Tprog動作は、実質的にTbuff動作が完了した直後に自動的に開始しない。このスキームは、Tbuff動作を実質的にそれに対応するTprog動作の直前に遂行する必要性を排除することによりNVM動作のスループットを高めることができる。即ち、第2のダイに対するTbuff動作を、第1のダイのTprog動作の前又は動作中に遂行することができる。
タイミング図910は、Tbuff1で開始し、そしてTbuff1が完了した後に、Tprog1及びTbuff2の両方が開始することができる。Tbuff2は、Tprog1が完了する前にその動作を完了するが、パイプライン反応的スキームは、Tprog1が完了したことを示すフィードバックが受け取られるまでTprog2の開始を許さない。別の実施形態では、Tbuff1及びTbuff2が一緒に開始できるが、Tprog2は、Tprog1が完了するまで開始しない。
図10A及び11Aは、本発明の一実施形態による予想的電力制限スキームに基づいて動作する電流制限タイミング図を例示する。この予想的電力制限スキームは、各NVM動作を完了するのにどれほど長く要するか予想することができ、そして所与の電流スレッシュホールドに対してどれほど多くの同時Tprog動作を遂行できるか分かるので、この予想的電力制限スキームは、できるだけ多くの同時動作をディスパッチするように動作できる。反応的電力制限スキームとは対照的に、予想的電力制限スキームは、その後のNVM動作をいつディスパッチできるか決定するためにフィードバックに依存する必要はない。その名前が意味する通り、予想的電力制限は、所与のNVM動作がいつ完了するか予想し、その予想に関連した期間が終了した後にNVM動作をディスパッチする。
NVM動作の予想は、2つの部分、即ち(1)予想をバッファするための時間Tbuff(p)、及び予想をプログラムするための時間Tprog(p)を含むことができる。これらのTbuff(p)及びTprog(p)は、実際のTbuff及びTprog動作が実際にどれほど長くを要するかの予想である。Tbuff(p)及びTprog(p)の選択は、保守的から積極的へと変化することができる。他の実施形態では、コンテクスト特有の予想を選択することができる(例えば、Tprog(p)は、上位ページをプログラミングする方が、下位ページをプログラミングより高い)。更に別の実施形態では、フィードバック情報での予想を使用するハイブリッド解決策を実施することができる。
図10Aを参照すれば、本発明の一実施形態による保守的な予想的電力制限スキームに基づいて動作する電流制限タイミング図1010が例示される。一実施形態において、この保守的な予想は、各NVM動作に充分な時間が割り当てられるように保証し、実際のTbuff及びTprog時間がTbuff(p)及びTprog(p)より短くなるよう実質上合理的に保証することができる。別の実施形態では、保守的な予想は、Tbuff(p)がTprogより大きいことを保証するように選択することができる。これら解決策は、例えば、Tprogの予想されない遅延に対して保護するための安全ネットを与えることができるが、動作を完了するために実際に必要とされる以上のものを予想することを犠牲にする。従って、同時NVM動作のスループットを下げる予想オーバーヘッド時間の潜在的な危険性がある。
タイミング図1010は、2つのダイに対する予想タイミングパラメータを示し、そして保守的な予想パラメータが選択されるので、Tbuffは、Tprogより、完了までに長時間を要すると仮定される。実際に、その逆も真であり、Tprogは、一般的に常に、Tbuffより、完了までに長時間を要する。図示されたように、Tbuff(p1)及びTbuff(p2)は、Tprog(p)及びTprog(p)より、完了のために長時間が割り当てられる。図10A及び図10Bの両方を参照すれば、タイミング図1020は、保守的な予想的電力制限スキームに基づいて動作する2つのダイに対する実際のタイミングパラメータを示す。Tprog2の開始は、Tprog1の完了ではなく、Tbuff(p2)の完了とキーオフされる。従って、Tbuff(p2)がTprog1より大きいことを保証することにより、Tprog1及びTprog2の重畳はなく、NVM動作の望ましからぬ同時動作が防止される。
図10Cは、本発明の一実施形態による保守的な予想的電力制限スキームを実施するために行われるステップのフローチャートを例示する。ステップ1022で始めて、電流スレッシュホールドを受け取る。システムの種々のファクタに基づいて電流スレッシュホールドを変更できることを示すためにフィードバックループが与えられる。異なる電流スレッシュホールドが受け取られると、その異なる電流スレッシュホールドに関連した限界が予想的電力制限スキームにより適用される。ステップ1030において、受け取った電流スレッシュホールドに基づいて遂行できる同時NVM動作の最大数(Cmax)の決定を行う。
ステップ1040において、予想スキームは、NVM動作の予想タイミングパラメータを選択する。これらのパラメータは、Tbuff(p)及びTprog(p)を含み、全てのNVM動作に均一に適用することができる。例えば、一実施形態では、Tbuff(p)の期間は、Tprog(p)の期間より長い。予想時間パラメータとして選択される実際の値は、適当なソースから導出される。例えば、これらパラメータは、NVMパッケージベンダー仕様、Tprog及び/又はTbuffの平均期間、又はテストデータに基づく。ある実施形態では、Tbuff(p)及びTprog(p)として選択される実際の値は、これらNVM動作の各々に必要とされる最大期間に基づく。これらのNVM動作の平均期間に基づいて実際の値を選択する解決策とは対照的に、Tbuff(p)及びTprog(p)の最大期間を使用することで、先にディスパッチされた動作が、次の動作が始まる前に完了しないという状態を防止することができる。
ステップ1045において、キューイングされる同時NVM動作の上限を受け取り、全部を一度に動作することが許される場合に、それらが同時に動作されると、電流スレッシュホールドを越えることになる。説明を容易にするため、キューイングされるNVM動作は、少なくとも1つのTprog動作が進行中である間に受け取られると仮定する。ステップ1050において、ディスパッチされるセットがCmaxを越えないように、キューイングされるNVM動作のどれほど多くをディスパッチできるかの決定がなされる。この決定は、既にディスパッチされたが、依然、予想されるタイミングパラメータ、例えば、Tbuff(p)内にある、先にディスパッチされたNVM動作を考慮することができる。例えば、選択された電流スレッシュホールドに対して5つの同時NVM動作を遂行することができ、且つ1つの先にディスパッチされたNVM動作が未解決であるが、先にディスパッチされた動作に対する予想される時間パラメータ(例えば、Tbuff(p))が満了になっていないために完了したと推定できないことを仮定する。この仮定のもとで動作すると、ディスパッチされるセットは、キューイングされるNVM動作を4つ含むことができる。ステップ1050又はその後のステップが遂行される間に、付加的なNVM動作をキューに追加できることを理解されたい。
ステップ1055において、キューイングされるNVM動作のディスパッチされたセットに関連したTbuff(p)パラメータを、先にディスパッチされたNVM動作のTbuff(p)パラメータの終わりに添付する。先にディスパッチされたNVM動作が2つ以上ある場合には、先にディスパッチされたNVM動作のシーケンスにおける最後のものがNVM動作とキーオフされる。換言すれば、先にディスパッチされたNVM動作のTprogが始まるときに、Tbuff(p)パラメータのディスパッチされたセットを開始することができる。従って、Tbuff(p)パラメータの第1セットをこのように添付することで、先にディスパッチされたNVM動作のTprogに、ディスパッチされたセットのTprogが始まるまでにその動作を完了するに充分な時間が与えられることを保証する。
ステップ1060において、先にディスパッチされたNVM動作を、ディスパッチされたセットのTbuff(p)の間にNVMパッケージのページへプログラムする。ステップ1070において、キューイングされたNVM動作が残っているかどうかの決定がなされる。もしイエスであれば、プロセスは、ステップ1050へ復帰する。もしノーであれば、プロセスは、ステップ1022へ復帰する。
図11Aは、本発明の一実施形態による積極的な予想的電力制限スキームに基づき動作する電流制限タイミング図を例示する。一実施形態において、この積極的なスキームは、各NVM動作に対してTbuffが実質的に一定であり、且つTprogが1つ以上のファクタに基づいて変化すると仮定する。従って、積極的なスキームは、典型的にバッファ動作に関連した時間値のような定数をTbuff(p)に添付することができ、そしてこのスキームは、Tprog(p)に対する予想時間のスライディングスケールを使用してもよい。更に、Tbuff動作は、パイプライン型で、このスキームにより許されるや否や、Tprog動作について準備することができる。同時NVM動作(このスキームで制限されない場合に電流スレッシュホールドを越える累積電力消費を生じることになる)に対するTprogの開始は、先にディスパッチされたNVM動作のTprog(p)の終わりである。これは、Tbuff(p)の終わりにTprogを開始した保守的な予想解決策とは対照的である。
このスキームの積極的な態様は、Tprog(p)のスライディングスケールによって与えられる。Tprog(p)を最小にするのが望ましいが、実際のTprog動作がTprog(p)を越えるほどではない。Tprog(p)は、多数のファクタに基づいて変化し得る。例えば、Tprog(p)は、電流スレッシュホールド、データが下位ページへプログラムされるか上位ページへプログラムされるか、データをプログラムすべきダイの領域、上限キューにおけるNVM動作の数、又はその組み合わせに基づいて変化し得る。
例えば、システムにより消費される電流は、データが下位ページへプログラムされるか上位ページへプログラムされるかに基づいて変化し得る。上位ページのプログラミングは、一般に、下位ページのプログラミングより長いので、上位ページのプログラミングに対する電流消費は、対応的に高くなる。従って、上位ページのプログラミングについては、下位ページのプログラミングよりも長い予想時間がTprog(p)に指定される。
タイミング図1110は、1つの同時NVM動作しか許さない電流スレッシュホールドのもとで動作する2つのダイに対する予想Tbuff(p)及びTprog(p)を示す。図示されたように、Tbuff(p1)及びTbuff(p2)は、バッファ動作をパイプライン型であることを示す。Tprog(p1)は、Tbuff(p1)の直後に開始し、そしてこの例では、1つの同時NVM動作しか許されないので、Tprog(p2)がTprog(p1)の予想される終わりにキーオフされる。図11A及び11Bの両方を参照すれば、タイミング図1120は、積極的な予想的電力制限スキームに基づいて動作する2つのダイに対する実際のタイミングパラメータを示す。Tprog1の開始は、Tbuff(p1)の完了とキーオフされ、そしてTprog2の開始は、Tprog(p1)の完了とキーオフされる。
図11C及び11Dは、各々、本発明の実施形態による積極的な予想的電力制限スキームに基づく付加的なタイミング図1130及び1140を示す。これらのタイミング図1130及び1140は、2つの同時NVM動作しか許さない電流スレッシュホールドのもとで動作する6つの同時NVM動作を示している。更に、これらのタイミング図1130及び1140は、あるNVM動作から別のNVM動作への予想Tprog(p)が(上述したような適当なファクタに基づいて)どれほど変化するか示している。例えば、タイミング図1130では、NVM Tprog(p)動作1、3及び5には、NVM Tprog(p)動作2、4及び6より短い時間が割り当てられる。一方、タイミング図1140のように、NVM Tprog(p)動作1、3及び5には、NVM Tprog(p)動作2、4及び6より長い時間が割り当てられる。タイミング図1130及び1140において、各次々のTprog(p)動作が、先のTprog(p)動作の完了にキーオフされる。
図11Eは、本発明の一実施形態による積極的な予想的電力制限スキームにより遂行されるステップのフローチャートを例示する。このフローチャートは、図10Cを参照して上述したフローチャートと多くの観点で同様であり、主たる相違は、Tprog動作がTprog(p)予想とキーオフされることである。
ステップ1142で始めて、各NVM動作にはプログラミングパラメータ(Tprog(p))の予想時間が指定される。このパラメータは、上述したように、種々のファクタに基づいて変化し得る。ステップ1144では、各NVM動作に関連したデータをバッファし、実質的に即時のプログラミングにデータが利用できるようにする。即ち、複数のNVM動作のためのデータを複数の各バッファに記憶できるが、そこに記憶されたデータは、ダイのページへ自動的にプログラムされない。
ステップ1146において、NVM動作のその後のプログラム動作のスタートは、先のNVM動作のTprog(p)の終わりに開始される。例えば、その後のプログラム動作がTprog2であり、そして先のプログラム動作Tprog1の予想Tprog(p1)が時間t1に終了すると仮定する。これは、プログラム動作Tprog1が時間t1(Tprog(p1)により予想される)までに完了することを仮定している。従って、その後のプログラム動作Tprog2は、時間t1に開始する。更に、プログラム動作Tprog2の予想Tprog(p2)も、時間t1に開始する。ステップ1148において、バッファされたデータを使用して、その後のNVM動作のプログラミング部分を遂行する。
図12は、本発明の一実施形態による電力制限スキームを使用してシステムにより実施されるステップを例示する。ステップ1210で始めて、電流スレッシュホールドを調整する際にファクタとして使用するのに適したデータを複数のソースから受け取る。これらソースは、コンポーネント及びそれらコンポーネントに関連した状態を監視する種々の監視回路(例えば、図5の回路512、514及び516)を含むことができる。又、ソースは、システムの種々のコンポーネントの動作パラメータ(例えば、NVMパッケージのピーク電力消費)を特定するデータを含むこともできる。電流スレッシュホールドは、たとえNVMパッケージが、スレッシュホールドでセットされた以上の電力を消費できても、NVMパッケージの最大電流消費をセットすることができる。電流スレッシュホールドは、NVMが消費できるピーク電流未満である。
ステップ1220において、電流スレッシュホールドを、受け取ったデータに基づいて調整することができる。このシステムは、電流スレッシュホールドを最小の電流スレッシュホールドレベルに最初にセットすることができる。このレベルは、NVMパッケージが最小性能スレッシュホールドを満足できることを保証することができる。受け取ったデータが、付加的な電力をNVMパッケージに供給できることを示す場合には、付加的な電力の利点を取り入れるように、電流スレッシュホールドをアップ方向に調整することができる。受け取ったデータが、付加的な電力がもはや得られないことを示すときには、それに応じて電流スレッシュホールドをダウン方向に調整することができる。電流スレッシュホールドをリアルタイムで調整できることを示すために、ステップ1220からステップ1210へのフィードバックループが設けられる。
ステップ1230において、累積電流消費が調整された電流スレッシュホールドを越えないように、電力制限スキームを使用して同時NVM動作の数を制限する。電力制限スキームは、ここに述べた電力制限スキームのいずれか1つ(例えば、反応的又は予想的電力制限スキームの1つ)である。ある実施形態では、このシステムは、2つ以上の電力制限スキーム間をスイッチすることができる。
図8B、10C、11E及び12のフローチャートに含まれたステップは、単なる例示に過ぎないことを理解されたい。本発明の範囲から逸脱せずに、これらのステップのいずれかを除去し、変更し、又は組み合わせしてもよく、又、付加的なステップを追加してもよい。
本発明の以上の実施形態は、説明上表現されたものであり、これに限定されない。
100:電子装置
110:システム・オン・ア・チップ(SoC)
112:SoC制御回路
114:メモリ
118:NVMインターフェイス
120:不揮発性メモリ(NVM)
130:電力レベル選択回路
200、250:システム
210、260:ホストプロセッサ
214、223、264:電力キャッピングモジュール
220、270:不揮発性メモリ(NVM)パッケージ
222:NVMコントローラ
224、274:ダイ
262:NVMドライバ
290:電流消費プロフィール
292、294:ピーク
310:データソース
320:バッファ
330:ダイ
332:ブロック
334:ページ
340:フィードバックライン
350:タイミング図
410、420:電流消費プロフィール
422、424:ピーク
510:電力レベル選択回路
512:電力供給監視回路
514:負荷監視回路
516:温度監視回路
518:NVM電力消費データ

Claims (28)

  1. 複数のダイを有する不揮発性メモリ(NVM)を含むシステムで実施される方法において、
    電流スレッシュホールドを調整する際にファクタとして使用するのに適したデータを複数のシステムソースのうちの少なくとも1つから受け取る段階であって、前記電流スレッシュホールドは、前記NVMが消費できるピーク電流未満であるような段階と、
    前記電流スレッシュホールドを、前記受け取ったデータに基づいて調整する段階と、
    前記NVMの累積電流消費が前記調整された電流スレッシュホールドを越えないように、遂行される同時NVM動作の数を制限する電力制限スキームを使用する段階と、
    を備えた方法。
  2. 電力制限スキームを使用する前記段階は、前記NVMの累積電流消費が前記調整された電流スレッシュホールドを越えないように、前記同時NVM動作を時間にわたって分散することを更に含む、請求項1に記載の方法。
  3. 前記電力制限スキームは、前記NVMにより与えられるフィードバックデータを使用して、各NVMの動作がいつ完了するか決定する反応的電力制限スキームを含む、請求項1に記載の方法。
  4. 前記電力制限スキームは、各NVM動作が完了するのにどれほど長く要するか予想する予想的電力制限スキームを含む、請求項1に記載の方法。
  5. 前記電流スレッシュホールドは、NVM性能の最小レベルを可能にするレベルに最初にセットされる、請求項1に記載の方法。
  6. 前記調整は、
    前記受け取ったデータが、付加的な電流が得られることを指示するときには、前記電流スレッシュホールドを上げ、
    前記受け取ったデータが、付加的な電流が得られないことを指示するときには、前記電流スレッシュホールドを下げる、
    ことを含む請求項1に記載の方法。
  7. 複数のダイを有し、固定量の電流を各々消費する複数の同時NVM動作を遂行するように働く不揮発性メモリ(NVM)と、
    複数の装置ソースの少なくとも1つから受け取られるデータに基づいて電流スレッシュホールドを与えるように動作する電力レベル選択回路であって、前記電流スレッシュホールドは、前記NVMが消費できるピーク電流未満であるような電力レベル選択回路と、
    前記NVM及び電力レベル選択回路と動作上通信し、前記NVMの累積電流消費が前記電流スレッシュホールドを越えないように、遂行される同時NVM動作の数を制限するように働く電力キャッピング回路と、
    を備えた電子装置。
  8. 前記複数の装置ソースは、電力供給監視回路、負荷監視回路、温度監視回路、NVMデータソース、及びその組み合わせより成るグループから選択される、請求項7に記載の装置。
  9. 前記電力レベル選択回路は、前記電流スレッシュホールドを、NVM性能の最小レベルを可能にするレベルに最初にセットするように動作する、請求項7に記載の装置。
  10. 前記電力レベル選択回路は、
    前記受け取ったデータが、付加的な電流が得られることを指示するときには、前記電流スレッシュホールドを上げ、
    前記受け取ったデータが、付加的な電流が得られないことを指示するときには、前記電流スレッシュホールドを下げる、
    ように動作する請求項7に記載の装置。
  11. 前記電力キャッピング回路は、前記NVMの累積電流消費が前記調整された電流スレッシュホールドを越えないように、前記同時NVM動作を時間にわたって分散するように働く、請求項7に記載の装置。
  12. 前記NVMと電力キャッピング回路との間に結合されたフィードバックラインを更に備え、前記電力キャッピング回路は、そのフィードバックラインを経て前記NVMから与えられるフィードバックデータを使用して、各NVMがいつ完了するか決定するように働く、請求項7に記載の装置。
  13. 前記電力キャッピング回路は、各NVM動作が完了するのにどれほど長く要するか予想するように働く、請求項7に記載の装置。
  14. 前記NVMは、ナンドフラッシュNVMである、請求項7に記載の装置。
  15. 不揮発性メモリ(NVM)の電力消費を反応的に制限する方法において、
    電流スレッシュホールドを受け取る段階と、
    前記電流スレッシュホールドに基づいて遂行できる同時NVM動作の最大数を決定する段階と、
    キューイングされる同時NVM動作の上限を受け取る段階であって、それらを同時に動作すると、累積電流消費が前記電流スレッシュホールドを越えることになる段階と、
    キューイングされる同時NVM動作の第1セットをディスパッチする段階であって、その第1セットは、前記最大数を越えない数の前記キューイングされるNVM動作を含むものである段階と、
    完了したNVM動作に対するフィードバックデータを監視する段階と、
    完了したNVM動作が監視されるときに前記キューイングされるNVM動作の別の1つをディスパッチする段階と、
    を備えた方法。
  16. NVM動作は、バッファ部分及びプログラム部分を含み、前記ディスパッチ段階は、実質的に前記バッファ部分が遂行された直後に前記プログラム部分を遂行することを含む、請求項15に記載の方法。
  17. NVM動作は、バッファ部分及びプログラム部分を含み、前記ディスパッチ段階は、
    前記バッファ部分を遂行すること、及び
    完了したNVM動作が監視されるまで前記プログラム部分の遂行を遅延すること、
    をふくむ請求項15に記載の方法。
  18. 前記NVMは、ナンドフラッシュNVMであり、前記電流スレッシュホールドは、そのナンドフラッシュNVMが消費できるピーク電流未満である、請求項15に記載の方法。
  19. 完了したNVM動作が監視されるときに、付加的なキューイングされるNVM動作のディスパッチを繰り返す段階を更に備えた請求項15に記載の方法。
  20. 不揮発性メモリ(NVM)の電力消費を予想的に制限する方法において、そのNVMは、NVM動作を遂行するように働き、各NVM動作は、バッファ部分及びプログラム部分を含み、そのバッファ部分は、完全に遂行されるために時間Tbuffを要求し、そしてプログラム部分は、完全に遂行されるために時間Tprogを要求し、前記方法は、
    電流スレッシュホールドを受け取る段階と、
    前記電流スレッシュホールドに基づいて遂行できる同時NVM動作の最大数を決定する段階と、
    各NVM動作に対する予想的タイミングパラメータを指定する段階であって、その予想的タイミングパラメータは、NVM動作のバッファ部分を完全に遂行するための予想的タイミングパラメータTbuff(p)を含み、このTbuff(p)は、Tprogより大きいものである段階と、
    キューイングされる同時NVM動作の上限を受け取る段階であって、それらを同時に動作すると、累積電流消費が前記電流スレッシュホールドを越えることになる段階と、
    同時NVM動作の数が前記最大数を越えないように、キューイングされる同時NVM動作のどれほど多くを、ディスパッチされるNVM動作のその後のセットとしてディスパッチできるか決定する段階と、
    前記その後のセットにおける各NVM動作のTbuff(p)を、先にディスパッチされたNVM動作のTbuff(p)の終わりに添付する段階と、
    前記その後のセットのTbuff(p)の間に前記先にディスパッチされたNVM動作のプログラム部分を遂行する段階と、
    を備えた方法。
  21. 前記その後のセットにおける各NVM動作のプログラム部分を、前記その後のセットにおける各NVM動作の各Tbuff(p)の終わりに遂行する段階を更に備えた、請求項20に記載の方法。
  22. 前記決定は、更に、同時NVM動作の数に影響し得る前記先にディスパッチされたNVM動作を要因として考慮に入れることを含む、請求項20に記載の方法。
  23. 前記電流スレッシュホールドは、前記NVMが消費できるピーク電流未満である、請求項20に記載の方法。
  24. 前記その後のセットのTbuff(p)中に前記先にディスパッチされたNVM動作のプログラム部分を遂行することは、前記先にディスパッチされたNVM動作のプログラム部分のスタートを前記先にディスパッチされたNVM動作のTbuff(p)の終わりに開始することを含む、請求項20に記載の方法。
  25. 不揮発性メモリ(NVM)の電力消費を予想的に制限する方法において、そのNVMは、NVM動作を遂行するように働き、各NVM動作は、バッファ部分及びプログラム部分を含み、そのバッファ部分は、完全に遂行されるために時間Tbuffを要求し、そしてプログラム部分は、完全に遂行されるために時間Tprogを要求し、前記方法は、
    各NVM動作に対する予想的タイミングパラメータを指定する段階であって、その予想的タイミングパラメータは、NVM動作のプログラム部分を完全に遂行するための予想的タイミングパラメータTprog(p)を含むものである段階と、
    各NVM動作に関連したデータをバッファして、NVM動作のプログラム部分に対してデータが実質的に即座に得られるようにする段階と、
    その後のNVM動作のプログラム部分のスタートを、先のNVM動作のTprog(p)の終わりに開始する段階であって、Tprog(p)は、Tprogより大きいものである段階と、
    前記バッファされたデータを使用して、前記その後の動作のプログラム部分を遂行する段階と、
    を備えた方法。
  26. 電流スレッシュホールドを受け取る段階と、
    前記電流スレッシュホールドに基づいて遂行できる同時NVM動作の最大数を決定する段階と、
    キューイングされる同時NVM動作の上限を受け取る段階であって、それらを同時に動作すると、累積電流消費が前記電流スレッシュホールドを越えることになる段階と、
    同時NVM動作の数が前記最大数を越えないことを保証するために1つ以上の前記キューイングされる同時NVM動作のTprog(p)を調整する段階と、
    を更に備えた請求項25に記載の方法。
  27. 前記先のNVM動作のTprog(p)は、前記その後のNVM動作の直前のNVM動作に指定されたTprog(p)である、請求項25に記載の方法。
  28. NVM動作に指定されるTprog(p)の期間は、NVM動作に関連したデータが上位ページにプログラムされるか、下位ページにプログラムされるかに基づく、請求項25に記載の方法。
JP2011176364A 2010-07-26 2011-07-26 電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム Active JP5722728B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/843,448 US8555095B2 (en) 2010-07-26 2010-07-26 Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US12/843,448 2010-07-26

Publications (2)

Publication Number Publication Date
JP2012043420A true JP2012043420A (ja) 2012-03-01
JP5722728B2 JP5722728B2 (ja) 2015-05-27

Family

ID=44483928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011176364A Active JP5722728B2 (ja) 2010-07-26 2011-07-26 電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム

Country Status (7)

Country Link
US (4) US8555095B2 (ja)
JP (1) JP5722728B2 (ja)
KR (2) KR101363844B1 (ja)
CN (1) CN102347078B (ja)
HK (1) HK1166876A1 (ja)
TW (2) TWI457750B (ja)
WO (1) WO2012015793A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019075105A (ja) * 2017-10-12 2019-05-16 三星電子株式会社Samsung Electronics Co.,Ltd. メモリプレーンを含む不揮発性メモリ装置及びその動作方法

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101005997B1 (ko) * 2009-01-29 2011-01-05 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법
JP2011227664A (ja) 2010-04-19 2011-11-10 Toshiba Corp メモリシステム
US8555095B2 (en) * 2010-07-26 2013-10-08 Apple Inc. Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US20120221767A1 (en) 2011-02-28 2012-08-30 Apple Inc. Efficient buffering for a system having non-volatile memory
US8645723B2 (en) 2011-05-11 2014-02-04 Apple Inc. Asynchronous management of access requests to control power consumption
US9477586B1 (en) * 2011-11-03 2016-10-25 Altera Corporation Power-aware memory controller circuitry
US8738866B2 (en) 2012-05-02 2014-05-27 Hitachi, Ltd. Storage system and control method therefor
US8874828B2 (en) * 2012-05-02 2014-10-28 Apple Inc. Systems and methods for providing early hinting to nonvolatile memory charge pumps
KR101961324B1 (ko) * 2012-05-09 2019-03-22 삼성전자주식회사 메모리 장치 및 메모리 장치의 파워 관리 방법
US8854900B2 (en) * 2012-07-26 2014-10-07 SanDisk Technologies, Inc. Non-volatile memory and method with peak current control
US9329986B2 (en) 2012-09-10 2016-05-03 Sandisk Technologies Inc. Peak current management in multi-die non-volatile memory devices
GB2507484A (en) * 2012-10-30 2014-05-07 Ibm Limiting the number of concurrent requests in a database system
KR20140088766A (ko) * 2013-01-03 2014-07-11 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US9443600B2 (en) 2013-03-28 2016-09-13 Intel Corporation Auto-suspend and auto-resume operations for a multi-die NAND memory device to reduce peak power consumption
US9368214B2 (en) 2013-10-03 2016-06-14 Apple Inc. Programmable peak-current control in non-volatile memory devices
US9286959B2 (en) 2013-11-18 2016-03-15 International Business Machines Corporation Low latency memory access control for non-volatile memories
EP2884369B1 (en) 2013-12-16 2018-02-07 Stichting IMEC Nederland Memory control system for a non-volatile memory and control method
US9348380B2 (en) * 2013-12-28 2016-05-24 Samsung Electronics Co., Ltd. Dynamic thermal budget allocation for memory array
US9361951B2 (en) 2014-01-14 2016-06-07 Apple Inc. Statistical peak-current management in non-volatile memory devices
US9286208B2 (en) 2014-02-07 2016-03-15 Kabushiki Kaisha Toshiba Controller controlling an interleave operation, solid-state drive including the controller, and control method controlling an interleave operation
US9582211B2 (en) 2014-04-29 2017-02-28 Sandisk Technologies Llc Throttling command execution in non-volatile memory systems based on power usage
US9575677B2 (en) 2014-04-29 2017-02-21 Sandisk Technologies Llc Storage system power management using controlled execution of pending memory commands
US9547587B2 (en) 2014-05-23 2017-01-17 International Business Machines Corporation Dynamic power and thermal capping for flash storage
US10402319B2 (en) 2014-07-25 2019-09-03 Micron Technology, Inc. Apparatuses and methods for concurrently accessing different memory planes of a memory
US9423961B2 (en) 2014-09-08 2016-08-23 Apple Inc. Method to enhance programming performance in multilevel NVM devices
US10013345B2 (en) * 2014-09-17 2018-07-03 Sandisk Technologies Llc Storage module and method for scheduling memory operations for peak-power management and balancing
WO2016064554A1 (en) * 2014-10-20 2016-04-28 Sandisk Enterprise Ip Llc Storage system power management using controlled execution of pending memory commands
US9847662B2 (en) 2014-10-27 2017-12-19 Sandisk Technologies Llc Voltage slew rate throttling for reduction of anomalous charging current
US9880605B2 (en) 2014-10-27 2018-01-30 Sandisk Technologies Llc Method and system for throttling power consumption
US9916087B2 (en) 2014-10-27 2018-03-13 Sandisk Technologies Llc Method and system for throttling bandwidth based on temperature
US9846541B2 (en) * 2014-12-11 2017-12-19 Toshiba Memory Corporation Memory system for controlling perforamce by adjusting amount of parallel operations
CN105867834A (zh) * 2015-01-22 2016-08-17 深圳市硅格半导体有限公司 存储装置数据整理方法
JP2016167167A (ja) * 2015-03-09 2016-09-15 株式会社東芝 半導体装置及びメモリシステム
KR102450556B1 (ko) 2015-04-17 2022-10-04 삼성전자주식회사 불휘발성 메모리 장치들을 제어할 수 있는 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
US10289327B2 (en) 2015-06-05 2019-05-14 Western Digital Technologies, Inc. Scheduling scheme(s) for a multi-die storage device
US9875053B2 (en) 2015-06-05 2018-01-23 Western Digital Technologies, Inc. Scheduling scheme(s) for a multi-die storage device
KR102445390B1 (ko) * 2015-09-02 2022-09-21 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US9690364B2 (en) * 2015-09-04 2017-06-27 Qualcomm Incorporated Systems and methods for dynamically adjusting memory state transition timers
US10599349B2 (en) 2015-09-11 2020-03-24 Samsung Electronics Co., Ltd. Method and apparatus of dynamic parallelism for controlling power consumption of SSDs
US11216323B2 (en) 2015-09-16 2022-01-04 Samsung Electronics Co., Ltd. Solid state memory system with low power error correction mechanism and method of operation thereof
US10241701B2 (en) 2015-09-16 2019-03-26 Samsung Electronics Co., Ltd. Solid state memory system with power management mechanism and method of operation thereof
US9977487B2 (en) 2015-09-22 2018-05-22 Samsung Electronics Co., Ltd. Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives
US9711232B2 (en) 2015-09-22 2017-07-18 Samsung Electronics Co., Ltd. Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives
US10095412B2 (en) * 2015-11-12 2018-10-09 Sandisk Technologies Llc Memory system and method for improving write performance in a multi-die environment
JP6529941B2 (ja) 2016-08-30 2019-06-12 東芝メモリ株式会社 メモリシステム
CN107919143B (zh) * 2016-10-11 2023-03-21 北京忆恒创源科技股份有限公司 固态存储设备及其温度控制方法
US10353602B2 (en) * 2016-11-30 2019-07-16 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Selection of fabric-attached storage drives on which to provision drive volumes for realizing logical volume on client computing device within storage area network
JP2018136762A (ja) * 2017-02-22 2018-08-30 富士通株式会社 並列処理装置および並列処理装置の起動方法
KR102474460B1 (ko) 2017-08-23 2022-12-07 삼성전자 주식회사 전자 장치 및 전자 장치의 동작 제어 방법
US10181351B1 (en) * 2017-08-30 2019-01-15 Micron Technology, Inc. Increased NAND performance under high thermal conditions
KR102532206B1 (ko) 2017-11-09 2023-05-12 삼성전자 주식회사 메모리 컨트롤러 및 그것을 포함하는 스토리지 장치
KR102603245B1 (ko) 2018-01-11 2023-11-16 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN108052464A (zh) * 2018-01-12 2018-05-18 江苏华存电子科技有限公司 用于分散与降低非易失性储存装置峰值电流与功耗的方法
KR20190109872A (ko) 2018-03-19 2019-09-27 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10923199B2 (en) 2019-05-01 2021-02-16 Micron Technology, Inc. Peak current management in a memory array
US11669272B2 (en) * 2019-05-31 2023-06-06 Micron Technology, Inc. Predictive data transfer based on availability of media units in memory sub-systems
CN110209502B (zh) * 2019-06-05 2021-07-20 北京奇艺世纪科技有限公司 一种信息存储方法、装置、电子设备及存储介质
US10884480B1 (en) * 2019-08-22 2021-01-05 Micron Technology, Inc. Current summing monitoring circuit in a multi-chip package to control power
US11164784B2 (en) 2019-08-22 2021-11-02 Micron Technology, Inc. Open-drain transistor monitoring circuit in a multi-chip package to control power
US11237612B2 (en) 2019-08-22 2022-02-01 Micron Technology, Inc. Charge-sharing capacitive monitoring circuit in a multi-chip package to control power
US11314315B2 (en) 2020-01-17 2022-04-26 Samsung Electronics Co., Ltd. Performance control of a device with a power metering unit (PMU)
US11467900B2 (en) * 2020-07-14 2022-10-11 Micron Technology, Inc. Adjusting read throughput level for a data recovery operation
KR20220053177A (ko) 2020-10-22 2022-04-29 삼성전자주식회사 스토리지 장치, 멀티-컴포넌트 장치 및 이의 동작 제어 방법
WO2022252120A1 (en) 2021-06-01 2022-12-08 Yangtze Memory Technologies Co., Ltd. Power management for memory system
CN113519027B (zh) * 2021-06-01 2022-09-06 长江存储科技有限责任公司 用于存储器系统的功率管理
CN116301662B (zh) * 2023-05-12 2023-08-01 合肥联宝信息技术有限公司 一种固态硬盘功耗管理方法及固态硬盘

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320512A (ja) * 1997-05-16 1998-12-04 Oki Electric Ind Co Ltd 不揮発性半導体ディスク装置
US20070168625A1 (en) * 2006-01-18 2007-07-19 Cornwell Michael J Interleaving policies for flash memory
US20070211551A1 (en) * 2005-11-25 2007-09-13 Yoav Yogev Method for dynamic performance optimization conforming to a dynamic maximum current level

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3594626B2 (ja) 1993-03-04 2004-12-02 株式会社ルネサステクノロジ 不揮発性メモリ装置
US5724592A (en) 1995-03-31 1998-03-03 Intel Corporation Method and apparatus for managing active power consumption in a microprocessor controlled storage device
US6233693B1 (en) 1998-05-06 2001-05-15 International Business Machines Corporation Smart DASD spin-up
JP2000143360A (ja) 1998-11-11 2000-05-23 Toyo Tanso Kk 層間強化した炭素繊維強化炭素複合材料
US6748493B1 (en) 1998-11-30 2004-06-08 International Business Machines Corporation Method and apparatus for managing memory operations in a data processing system using a store buffer
US6478441B2 (en) 1999-03-25 2002-11-12 Sky City International Limited Hand held light apparatus
US7702831B2 (en) * 2000-01-06 2010-04-20 Super Talent Electronics, Inc. Flash memory controller for electronic data flash card
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6636976B1 (en) 2000-06-30 2003-10-21 Intel Corporation Mechanism to control di/dt for a microprocessor
JP4694040B2 (ja) 2001-05-29 2011-06-01 ルネサスエレクトロニクス株式会社 半導体記憶装置
GB0123416D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
US6925573B2 (en) 2002-01-02 2005-08-02 Intel Corporation Method and apparatus to manage use of system power within a given specification
US6857055B2 (en) 2002-08-15 2005-02-15 Micron Technology Inc. Programmable embedded DRAM current monitor
US7400062B2 (en) 2002-10-15 2008-07-15 Microsemi Corp. - Analog Mixed Signal Group Ltd. Rack level power management
CN100371873C (zh) * 2003-09-18 2008-02-27 松下电器产业株式会社 半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法
JP4264087B2 (ja) 2003-11-28 2009-05-13 パナソニック株式会社 記録装置
US7155623B2 (en) 2003-12-03 2006-12-26 International Business Machines Corporation Method and system for power management including local bounding of device group power consumption
US7305572B1 (en) 2004-09-27 2007-12-04 Emc Corporation Disk drive input sequencing for staggered drive spin-up
JP2006185407A (ja) 2004-12-01 2006-07-13 Matsushita Electric Ind Co Ltd ピーク電力制御方法および装置
JP2006195569A (ja) 2005-01-11 2006-07-27 Sony Corp 記憶装置
US7440215B1 (en) 2005-03-30 2008-10-21 Emc Corporation Managing disk drive spin up
US7444526B2 (en) 2005-06-16 2008-10-28 International Business Machines Corporation Performance conserving method for reducing power consumption in a server system
US7562234B2 (en) 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
US7512029B2 (en) * 2006-06-09 2009-03-31 Micron Technology, Inc. Method and apparatus for managing behavior of memory devices
US7587559B2 (en) 2006-08-10 2009-09-08 International Business Machines Corporation Systems and methods for memory module power management
US7673160B2 (en) 2006-10-19 2010-03-02 International Business Machines Corporation System and method of power management for computer processor systems
US20080137401A1 (en) * 2006-12-07 2008-06-12 Jan Boris Philipp Memory that limits power consumption
US7545165B2 (en) 2007-01-09 2009-06-09 International Business Machines Corporation System architectures for and methods of scheduling on-chip and across-chip noise events in an integrated circuit
JP4851962B2 (ja) 2007-02-28 2012-01-11 株式会社東芝 メモリシステム
TWI417719B (zh) * 2007-08-09 2013-12-01 Ibm 提供能監測能源使用之減少以及在儲存資料於記憶體中時之能源減少的指令的方法、設備及電腦程式產品
US20110213995A1 (en) * 2007-08-09 2011-09-01 International Business Machines Corporation Method, Apparatus And Computer Program Product Providing Instruction Monitoring For Reduction Of Energy Usage
US7783846B2 (en) * 2007-08-09 2010-08-24 International Business Machines Corporation Method, apparatus and computer program product providing energy reduction when storing data in a memory
US7949888B2 (en) 2008-01-07 2011-05-24 Apple Inc. Forced idle of a data processing system
US7961544B2 (en) 2008-08-05 2011-06-14 Sandisk Il Ltd. Storage system and method for managing a plurality of storage devices
JP5489434B2 (ja) 2008-08-25 2014-05-14 株式会社日立製作所 フラッシュメモリ搭載ストレージ装置
US8386808B2 (en) 2008-12-22 2013-02-26 Intel Corporation Adaptive power budget allocation between multiple components in a computing system
US20100274933A1 (en) * 2009-04-24 2010-10-28 Mediatek Inc. Method and apparatus for reducing memory size and bandwidth
US20100306451A1 (en) * 2009-06-01 2010-12-02 Joshua Johnson Architecture for nand flash constraint enforcement
US8281227B2 (en) 2009-05-18 2012-10-02 Fusion-10, Inc. Apparatus, system, and method to increase data integrity in a redundant storage system
US8307258B2 (en) 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
WO2011074059A1 (ja) 2009-12-14 2011-06-23 富士通株式会社 演算処理装置、情報処理装置及びその制御方法
US20110173462A1 (en) 2010-01-11 2011-07-14 Apple Inc. Controlling and staggering operations to limit current spikes
US8826051B2 (en) 2010-07-26 2014-09-02 Apple Inc. Dynamic allocation of power budget to a system having non-volatile memory and a processor
US8555095B2 (en) * 2010-07-26 2013-10-08 Apple Inc. Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US8522055B2 (en) 2010-07-26 2013-08-27 Apple Inc. Peak power validation methods and systems for non-volatile memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320512A (ja) * 1997-05-16 1998-12-04 Oki Electric Ind Co Ltd 不揮発性半導体ディスク装置
US20070211551A1 (en) * 2005-11-25 2007-09-13 Yoav Yogev Method for dynamic performance optimization conforming to a dynamic maximum current level
US20070168625A1 (en) * 2006-01-18 2007-07-19 Cornwell Michael J Interleaving policies for flash memory
JP2007193810A (ja) * 2006-01-18 2007-08-02 Apple Inc フラッシュメモリ用インターリーブポリシー

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019075105A (ja) * 2017-10-12 2019-05-16 三星電子株式会社Samsung Electronics Co.,Ltd. メモリプレーンを含む不揮発性メモリ装置及びその動作方法
JP7280027B2 (ja) 2017-10-12 2023-05-23 三星電子株式会社 メモリプレーンを含む不揮発性メモリ装置及びその動作方法

Also Published As

Publication number Publication date
US8555095B2 (en) 2013-10-08
CN102347078B (zh) 2015-03-18
US9063732B2 (en) 2015-06-23
US20120023346A1 (en) 2012-01-26
WO2012015793A1 (en) 2012-02-02
US8495402B2 (en) 2013-07-23
US20120023348A1 (en) 2012-01-26
KR101363844B1 (ko) 2014-02-14
TWI468929B (zh) 2015-01-11
TWI457750B (zh) 2014-10-21
HK1166876A1 (en) 2012-11-09
KR20120010992A (ko) 2012-02-06
KR101560860B1 (ko) 2015-10-19
US20120023347A1 (en) 2012-01-26
TW201224736A (en) 2012-06-16
KR20120031970A (ko) 2012-04-04
JP5722728B2 (ja) 2015-05-27
US20140068296A1 (en) 2014-03-06
CN102347078A (zh) 2012-02-08
TW201229743A (en) 2012-07-16
US8583947B2 (en) 2013-11-12

Similar Documents

Publication Publication Date Title
JP5722728B2 (ja) 電力消費を制限するように不揮発性メモリの動作を動的に制御する方法及びシステム
US11216323B2 (en) Solid state memory system with low power error correction mechanism and method of operation thereof
US9383808B2 (en) Dynamic allocation of power budget for a system having non-volatile memory and methods for the same
US10831384B2 (en) Memory device with power management
AU2011203893B2 (en) Controlling and staggering operations to limit current spikes
US10241701B2 (en) Solid state memory system with power management mechanism and method of operation thereof
KR20170035320A (ko) 솔리드 스테이트 드라이브들의 전력 소비를 컨트롤하기 위해 동적으로 불휘발성 메모리 오퍼레이션을 스케쥴링하는 메모리 장치 및 그것의 동작 방법
US20220300172A1 (en) Memory system, information processing system, and host device
AU2014100558B4 (en) Controlling and staggering operations to limit current spikes
JP2023553681A (ja) メモリシステムの電力管理

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130515

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130815

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130820

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130917

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130920

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140324

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140624

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140627

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150326

R150 Certificate of patent or registration of utility model

Ref document number: 5722728

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250