JP5653315B2 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP5653315B2
JP5653315B2 JP2011166072A JP2011166072A JP5653315B2 JP 5653315 B2 JP5653315 B2 JP 5653315B2 JP 2011166072 A JP2011166072 A JP 2011166072A JP 2011166072 A JP2011166072 A JP 2011166072A JP 5653315 B2 JP5653315 B2 JP 5653315B2
Authority
JP
Japan
Prior art keywords
control data
power control
memory block
cpu
memory
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.)
Expired - Fee Related
Application number
JP2011166072A
Other languages
English (en)
Other versions
JP2013030024A (ja
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2011166072A priority Critical patent/JP5653315B2/ja
Priority to US13/421,090 priority patent/US9026830B2/en
Publication of JP2013030024A publication Critical patent/JP2013030024A/ja
Application granted granted Critical
Publication of JP5653315B2 publication Critical patent/JP5653315B2/ja
Expired - Fee Related 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/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/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)
  • Power Sources (AREA)

Description

本発明の実施形態は情報処理装置に関する。
情報処理システムは、一般的にプロセッサコア、キャッシュメモリ、メインメモリを含む。キャッシュメモリはSRAM(Static Random Access Memory)、メインメモリはDRAM(Dynamic Random Access Memory)で構成される。SRAMとDRAMは、共にデータの保持に電源を必要とする揮発性のメモリである。また、SRAMはデータセルのリーク電流が大きく、DRAMはデータ保持のために再書込み(リフレッシュ)動作が必要であり、どちらも消費電力が大きいという課題がある。
そこで、情報処理システムが演算を行っている状態(以下では、動作モードと称する)と行っていない状態(以下では、待機モードと称する)の内、待機モード時には、プロセッサコアからキャッシュメモリへのアクセスが無いことから、キャッシュメモリを構成するSRAMの電源電圧をデータ保持可能な最低の電圧まで下げる、またはSRAM内のデータをメインメモリへ退避させてからSRAMの電源を遮断するといった低消費電力化の方法が採用されている。
また、更なる情報処理システムの低消費電力化の方法として、動作モードに着目した方法が提案されている。例えば、複数のメモリアレイを備えた不揮発性メモリを含む情報処理装置において、メモリアレイ毎に電力供給を制御し、プロセッサがメモリアレイへのアクセス時にアクセス対象となるメモリアレイについての電源供給のオン/オフを制御することによって、アクセス対象でないメモリアレイに対する電源供給を遮断することで低消費電力化を実現する方法がある。
特開2009−211153号公報
しかしながら、プロセッサがメモリアレイへのアクセスするときに、実際にアクセス対象のメモリがアクセス可能となるまでに次のような工程が必要となる。アクセス対象となるメモリアレイに対して電力供給がされているかどうかを確認する工程、電力供給がされていなければそのメモリアレイに対して電力を供給し、他のメモリアレイに対する電力供給を遮断する工程、電力を供給した不揮発性メモリの安定化を待つ工程が必要となる。不揮発性メモリに電力を供給してから不揮発性メモリが安定化してアクセス可能となるまでには時間がかかる。特に、不揮発性メモリに含まれる電圧発生回路の安定化には数10〜数100μsの時間がかかる。そこで、メモリを低消費電力化しながらも、高速なアクセスを可能とすることが望まれていた。
上記目的を達成するために、本発明の実施形態による情報処理装置は、クロック信号に従って動作するCPUと、不揮発性メモリを含む複数のメモリブロックと、前記複数のメモリブロックに接続された内部電圧発生回路と、前記複数のメモリブロックに接続された入出力回路と、前記内部電圧発生回路、前記入出力回路、および前記複数のメモリブロックの各々に対応して設けられ、電源との接続をON/OFFするスイッチと、前記スイッチのON/OFFを制御するデータセットを格納する電源制御データレジスタと、前記電源制御データレジスタにデータセットを設定する電源制御データ管理回路と、前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなると、前記内部電圧発生回路に接続されたスイッチをONにし、前記複数のメモリブロックに接続されたスイッチをOFFにする第1のデータセットを生成して前記電源制御データレジスタに設定することを特徴としている。
本発明の第1の実施形態に係る情報処理装置のブロック図。 本発明の第1の実施形態に係る情報処理装置のキャッシュに含まれるスイッチの図。 本発明の第1の実施形態に係る情報処理装置の電源供給制御の様子を示す図。 本発明の第1の実施形態に係る情報処理装置に含まれる電源制御データ管理回路の図。 本発明の第1の実施形態に係る情報処理装置の状態遷移図。 本発明の第1の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第1の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第1の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第1の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第1の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第2の実施形態に係る情報処理装置の電源供給制御の様子を示す図。 本発明の第2の実施形態に係る情報処理装置に含まれる電源制御データ管理回路の図。 本発明の第2の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第3の実施形態に係る情報処理装置の電源供給制御の様子を示す図。 本発明の第3の実施形態に係る情報処理装置に含まれる電源制御データ管理回路の図。 本発明の第3の実施形態に係る情報処理装置の電源制御データ管理回路の処理フローチャート。 本発明の第4の実施形態に係る情報処理装置に含まれる電源制御データ管理回路の図。 本発明の第5の実施形態に係る情報処理装置に含まれる電源制御データ管理回路の図。
(第1の実施形態)
以下、本発明の実施形態について図面を参照して説明する。図1は本実施形態に係る情報処理装置のブロック図である。本実施形態に係る情報処理装置は、例えば、PCや携帯電話など情報機器のプロセッサである。
情報処理装置1は、キャッシュ10、メモリ電源電圧20、キャッシュメモリ電源制御回路30、キャッシュメモリ制御回路40、CPU50、CPU電源制御回路60を有する。ここでのキャッシュ10は、不揮発性メモリによって構成する。不揮発性メモリとしては、不揮発性を有するメモリであれば良く、例えば、MRAM(Megnetoresistive Random Access Memory)、PRAM(Phase change RAM)、ReRAM(Resistance Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、イオン伝導性を利用したRAMなどを用いることができる。
メモリ電源電圧20は、キャッシュ10に電力を供給する。CPU50は、CPUコアクロック信号にもとづいてキャッシュ10に格納されているデータを用いた演算を行う。CPUコア電源制御回路60は、CPU50の状態を判断し、CPU50の状態に応じた制御(スリープ制御、ウェイクアップ制御など)を行うためのステート情報信号をCPU50に入力する。キャッシュメモリ制御回路40は、CPU50の演算に従って、キャッシュ10へのアクセス(データの読み込み・書き込み)を制御する。キャッシュメモリ電源制御回路30は、キャッシュメモリ制御回路40の制御に従い、キャッシュメモリ制御回路40がアクセスする対象となるキャッシュ10のメモリブロックを判定し、キャッシュのメモリブロック毎に電力供給を制御する。キャッシュメモリ電源制御回路30の詳細な動作については、後述する。
キャッシュ10は、複数のメモリブロック11、入出力回路12、内部電圧発生回路13を有する。図1では、4つのメモリブロックがある場合を例とし、各メモリブロックをメモリブロックA〜メモリブロックDと表記する。各メモリブロック11は、1つまたは複数のメモリアレイに対応していても良いし、メモリアレイを更に細分化したメモリ領域に対応していても良い。入出力回路12は、キャッシュメモリ制御回路40の制御に応じて、メモリブロック11の指定されたアドレスからデータを読み出したり、メモリブロック11へデータを書き出したりする。
メモリブロック11は、対応する内部電圧発生回路13に接続されている。内部電圧発生回路13は、図示しないポンプ回路を有し、書き込み時の高電圧としてのプログラム電圧や読み出し電圧などをキャッシュメモリ制御回路40の制御に従ってメモリブロック11へ供給する。
メモリ電源電圧20とキャッシュ10の各構成要素は、キャッシュメモリ電源制御回路30のスイッチ32を介して接続されている。各スイッチ32は、例えば図2に示すように、電源制御データレジスタ31に格納されたデータに基づいて、メモリ電源電圧20とキャッシュ10の各構成要素(メモリブロック11、入出力回路12、電圧発生回路13)との接続をオン/オフする。
電源制御データレジスタ31は、キャッシュ10のメモリブロック11、入出力回路12、電圧発生回路13への電源供給をオン/オフする各スイッチ32を制御するためのデータを電源制御データ管理回路33から取得し、そのデータを格納する。
図2に示すように、メモリブロック11のそれぞれ(A〜D)は、異なるスイッチ32によってメモリ電源電圧20との接続が制御される。このため、メモリブロック11毎に電力供給を行うか停止するかを制御することができる。
さらに、メモリブロック11の電力供給を制御するスイッチとは異なるスイッチを用いて入出力回路12とメモリ電源電圧20との接続や内部電圧発生回路13とメモリ電源電圧20との接続が制御される。これによって、メモリブロック11とは独立して入出力回路12、内部電圧発生回路13への電力供給を制御することができる。
図3は、情報処理装置1によるメモリブロック11の電源供給制御の様子を示す図である。本実施形態に係る情報処理装置1は、メモリブロックA〜Dのいずれかにアクセスが発生することをアクセスエリア管理部30が判定すると、当該メモリブロックに対する電力供給を開始し、次のメモリブロックへのアクセスが発生するまで、そのメモリブロックに対する電力供給を維持する。
例えば、図3では、メモリブロックAにアクセスが発生すると、状態(2)のようにメモリブロックAへ電力が供給される。なお、図3では、電力が供給されるメモリブロックを網掛けして表現している。そして、メモリブロックAへのアクセスが完了した後も状態(3)のようにメモリブロックAへの電力供給を継続する。その後、メモリブロックDへのアクセスが発生すると、状態(4)のようにメモリブロックAへの電力供給を停止し、メモリブロックDへの電力供給を開始する。
また、本実施形態に係る情報処理装置1は、CPU電源制御回路60がCPU50の処理が完了したことを判断し、CPUコアクロック信号をオフにするための信号(ステート信号)を出力した場合に、キャッシュメモリ電源制御回路30にもそのステート信号が入力され、キャッシュメモリ電源制御回路30は、全てのメモリブロック11への電力供給を停止するよう電源制御データレジスタ31のデータを制御する。
例えば、図3の状態(5)のように、メモリブロックDへのアクセスが完了して一定時間経過前まではメモリブロックDへの電力供給が継続される。その後、メモリブロックDへのアクセスが完了してから一定時間が経過したことをCPU電源制御回路60が判断すると、CPU50に対してステート信号を出力し、CPUコアクロック信号をオフにしてCPU50を待機モードにするとともに、状態(6)のように全てのメモリブロック11への電力供給を停止する。そして、CPU50に入力されるCPUコアクロック信号が起動状態になりCPU50が動作モードとなると、状態(7)のように、前回アクセスしたメモリブロックDへの電力供給を開始する。
そして、CPU50が動作モードとなったことに基づいて前回アクセスしたメモリブロックへの電力供給を開始した後に、電源制御データ管理回路33にてCPU50から指示されたアクセス対象のアドレスがどのメモリブロックに属するのか判定し、アクセス対象のアドレスが属するメモリブロックへの電力供給を開始する。このとき、CPU50が動作モードとなったことに基づいて電力供給を開始したメモリブロックと、電源制御データ管理回路33にて判定されたメモリブロックとが同じであると、電源制御データ管理回路33にてメモリブロック判定後に、当該メモリブロックへの電力供給を開始する工程を行わなくて良い。そのため、CPU50が動作モードとなった後に、メモリブロックへアクセスするまでの処理時間を短くできる可能性がある。
不揮発性メモリを備えた情報処理装置1は、演算処理が行われていない時間が1msec以下の短時間であってもメモリブロックへの電源を遮断することによって、超低消費電力な情報処理を実現することができる。そのため、ユーザが1つのアプリケーションを継続的に使用している場合であっても、演算処理が行われていないと判断されて、CPU50を待機モードにする(全てのメモリブロックへの電源遮断する)状態と動作モードに復帰する(いずれかメモリブロックへの電源を供給する)状態を繰り返すことが想定される。このように全メモリブロックへの電源遮断の前後で同じアプリケーションが使用されている状況では、CPU50からアクセスが要求されるメモリブロックが変化しないことが多いと考えられる。そのため、CPU50が待機モードとなった後に、動作モードに復帰した場合、最後にアクセスされたメモリブロックに対して電力供給を開始することは有効である。
また、CPU50が動作モードに復帰したときに電力供給が開始される最後にアクセスされたメモリブロックと、電源制御データ管理回路33にて判定されるCPU50から要求されたアクセス先のアドレスが含まれるメモリブロックが異なった場合には、電源制御データ管理回路33によって判定されたメモリブロックへの電力供給を開始する。このような場合であっても、本実施形態を適用しない場合(CPU50が動作モードに復帰したときに最後にアクセスされたメモリブロックに電力を供給しない場合)と同等の時間でメモリブロックへのアクセスを開始することができる。
次に、図4および図5を用いて、図3に示したようなメモリブロックへの電力供給制御を行うための情報処理装置1の処理について説明する。
図4は、上述の機能を実現するための電源制御データ管理回路33の構成を示すブロック図である。本実施形態に係る電源制御データ管理回路33は、アクセスエリア判定回路331、電源制御データ履歴レジスタ332、セレクタ333を有する。アクセスエリア判定回路331は、CPU50がキャッシュメモリ制御回路40を介してキャッシュ10へアクセスする際のアドレスを受け取り、キャッシュメモリ電源制御回路30内の各スイッチ32を制御するためのデータセットを電源制御データレジスタ31へ設定することができる。電源制御データ履歴レジスタ332は、アクセスエリア判定回路331にて生成されたデータセットを記憶する。セレクタ333は、CPU電源制御回路60から出力される信号に基づき、アクセスエリア判定回路331から出力されるデータと電源制御データ履歴レジスタ332から出力されるデータのいずれかを選択し、選択したデータを電源制御データレジスタ31へ格納する。
図5は、上述のメモリブロックの電力供給制御を実現する場合の情報処理装置1の状態遷移を示す図である。情報処理装置1の状態には、アクセス処理状態、アクセス後処理状態、スタンバイ処理状態、アクティブ処理状態、スリープ処理状態、ウェイクアップ処理状態がある。
図5のアクセス処理状態は、CPU50からキャッシュ10への書き込みまたは読み出しアクセスが発生した場合の処理状態である。図6にアクセス処理状態のときのアクセスエリア判定回路331の動作を示す。
アクセス処理状態のとき、アクセスエリア判定回路331は、まずキャッシュメモリ制御回路40から、CPU50によって指定されるアクセス対象のキャッシュのアドレスを取得する(S11)。そして、アクセスエリア判定回路331は、そのアドレスが属するメモリブロック(アクセス対象のメモリブロックと称する)を判定する(S12)。このアクセス対象のメモリブロックに電力が供給されていなければ(S13のNo)、アクセス対象のメモリブロックの電力供給を開始し、他のメモリブロックへの電力供給を停止するように設定するデータセットを生成し(S14)、生成したデータセットを電源制御データレジスタ31と電源制御データ履歴レジスタ332に設定する(S15、S16)。これによって、アクセス対象のメモリブロックへの電力供給が開始され、CPU50からメモリブロック11へのアクセスが開始される。すなわち、デコーダ・ドライバによって信号がデコードされて、アクセス対象ビットへのアクセスが実施される。
なお、ステップS13で、アクセス対象のメモリブロックに電力が供給されている場合(S13のYes)、電源制御データレジスタ31に記憶されたデータセットの変更を行わない。そのため、直ちにCPU50からメモリブロック11へのアクセスが開始される。
アクセス処理状態の場合に、CPU50が指定するアクセス対象のアドレスへのアクセスが完了すると、アクセス後処理状態へ移行する。アクセス後処理の状態では、CPU50が演算処理を行う。そして、CPU50にて実行される演算処理が終了すると、CPU電源制御回路60がそれを判断し、CPU50に対してCPUコアクロック信号をOFFにするためのステート情報信号を出力し、CPUコアクロック信号がOFFとなる。アクセス後処理状態のときにCPU50からキャッシュ10へのアクセス要求が発生した場合には、アクセス処理状態に移行する。
アクセス後処理状態において、CPUコアクロック信号がOFFとなってから図示しないタイマを用いて一定時間t1が経過したことを判断した場合には、スタンバイ処理状態へ移行する。図7に、スタンバイ処理状態のときのアクセスエリア判定回路331の動作を示す。
CPUコアクロック信号がOFFとなってから一定時間が経過すると、アクセスエリア判定回路331は、キャッシュ10の構成要素の内、内部電圧発生回路13と入出力回路12以外の構成要素(メモリブロック11など)に対する電力供給を停止するように設定するデータセットを生成し(S21)、生成したデータセットを電源制御データレジスタ31に設定する(S22)。この電源制御データレジスタ31に設定されたデータセットに基づいてスイッチ32のON/OFFが切り換えられる。そのため、スタンバイ処理状態では、キャッシュ10内の内部電圧発生回路13と入出力回路12には電力が供給され、それ以外の回路には電力供給が停止された状態となる。
スタンバイ処理状態において、CPU電源制御回路60のステート情報信号に従って、CPUコアクロック信号がONになった場合、アクティブ処理状態に移行する。図8にアクティブ処理状態のときの電源制御データ管理回路33の動作を示す。
電源制御データ管理回路33は、CPUコアクロック信号がONになったことを示すステート信号を受け取ると、セレクタ333によって電源制御データ履歴レジスタ332に記憶されているデータセットを取得し(S31)、そのデータセットを電源制御データレジスタ31に設定する(S32)。電源制御データ履歴レジスタ332に記憶されているデータセットは、アクセス処理状態のときに設定されたデータセット(図7のステップS16参照)である。つまり、CPUコアクロック信号がOFFになった後にONされると、最後にアクセスされたメモリブロックに電力を供給するデータセットを電源制御データレジスタ31に設定することができる。
アクティブ処理状態において、CPU50からキャッシュ10へのアクセスが発生すると、アクセス処理状態に移行する。この場合、電源制御データ管理回路33にて図6のステップS14が完了する前までに、アクティブ処理状態において電源制御データレジスタに設定したデータセットに基づいてメモリブロック11の電源制御が行われている。
一方、スタンバイ処理状態において、一定時間t2が経過した場合、スリープ処理状態に移行する。つまり、CPUコアクロック信号がOFFとなってからt1+t2時間が経過すると、スリープ処理状態となる。図9に、スリープ処理状態のときの電源制御データ管理回路33の動作を示す。
CPUコアクロック信号がOFFとなってからt1+t2時間が経過すると、電源制御データ管理回路33は、キャッシュ10の全ての構成要素への電力供給を停止するためのデータセットを生成し(S41)、このデータセットを電源制御データレジスタ31に設定する。これによって、スタンバイ処理状態では入出力回路12と内部電圧発生回路13に対して電力が供給されているが、スリープ処理状態では入出力回路12と内部電圧発生回路13に対する電力供給も停止される。
内部電圧発生回路13は、電力が供給されてから回路の安定化までに数十〜数百μs程度の時間を要する。そのため、内部電圧発生回路13の電源を遮断すると、次にアクセスが発生したときのアクセスまでの処理時間が長くなる。そこで、上述のように、スタンバイ処理状態においては、内部電圧発生回路13への電力供給を継続することにより、頻繁に内部電圧発生回路13への電源が遮断されることを防ぐことが出来る。また、入出力回路12に電源が供給されていると、アクセス先のメモリブロック11への電源供給が開始されていなくても、キャッシュメモリ制御回路40から入出力回路12へアクセス先のアドレスをラッチしておくことができる。そのため、入出力回路12の電源を遮断しないことによって、キャッシュ10へのアクセスを早めることができる。
一方、CPUコアクロック信号がOFFとなってからt1+t2時間が経過すると、キャッシュ10へのアクセスがしばらく発生しないと考えられるため、入出力回路12と内部電圧発生回路13への電力供給も停止することによって、消費電力をより一層削減することができる。
なお、本実施形態では、スタンバイ処理状態において、入出力回路12と内部電圧発生回路13への電源供給を遮断しないとしたが、メモリブロック11と入出力回路12への電源供給は遮断し、内部電圧発生回路13への電源供給は遮断しないよう制御しても良い。
スリープ処理状態において、CPU電源制御回路60のステート情報信号に従って、CPUコアクロック信号がONになった場合、ウェイクアップ処理状態に移行する。図10に、ウェイクアップ処理状態のときの電源制御データ管理回路33の動作を示す。
キャッシュ10の全ての構成要素への電力供給が停止されている状態で、CPUコアクロック信号がONとなると、アクセスエリア判定回路331は、まず、入出力回路12および内部電圧発生回路13への電力を供給するためのデータセットを生成し(S51)、作成したデータセットを電源制御データレジスタ32に設定する(S52)。前述のように、内部電圧発生回路13は回路の安定に時間がかかるため、最初に内部電圧発生回路13への電力供給を開始することによって、アクセス可能となるまでの時間をできるだけ短くする。
そして、CPUコアクロック信号がONされるまでのスリープ時間が一定時間t3以上であるか否かを判断し、スリープ時間がt3よりも短ければ(S53のNo)、電源制御データ履歴レジスタ32に記憶されているデータセットを取得し(S54)、そのデータセットを電源制御データレジスタ31に設定する(S55)。
CPUコアクロック信号がONされるまでのスリープ時間がt3以上である場合には、前回のアクセス処理状態の時とは異なるアプリケーションが実行されている場合等、最後にアクセスされたメモリブロックとは異なるメモリブロックにアクセスが発生する可能性が高いと考えられるため、ステップS54、ステップS55の処理は行わない。
ウェイクアップ処理状態において、CPU50からキャッシュ10へのアクセスが発生すると、アクセス処理状態に移行する。
以上のように、最後にアクセスしたメモリブロックへの電源供給を行い、他のメモリブロックへの電源供給を停止するようなデータセットを電源制御データ履歴レジスタ332に格納しておき、CPUコアクロック信号がOFFになった後に再度ONになった場合、電源制御データ履歴レジスタ332に格納されたデータセットを電源制御データレジスタ31に格納することによって、CPUコアクロック信号ON後にCPU50からキャッシュ10へのアクセス開始に必要な時間(平均的な時間)を短くすることが可能となる。
(第2の実施形態)
図11は、本実施形態に係る情報処理装置によるメモリブロック11の電源供給制御の様子を示す図である。第1の実施形態に係る情報処理装置では、キャッシュ10に含まれるメモリブロックの内、コア50からアクセスが要求されたアドレスを含むメモリブロックに対して電源を供給し、他のメモリブロックに対する電源は遮断する。それに対して、本実施形態に係る情報処理装置では、コア50からキャッシュ10へのアクセスが要求されたとき、アクセス要求で指定されたアドレスを含むメモリブロックと、1〜n回前のアクセス要求で指定されたアドレスを含むメモリブロックとに対する電源を供給する。図11は、n=1である場合、すなわち、コア50から今回アクセスが要求されたアドレスを含むメモリブロックと、前回アクセスが要求されたアドレスを含むメモリブロックに対する電源を供給する様子を示す図である。
例えば、図11では、メモリブロックAにアクセスが発生すると、状態(2)のようにメモリブロックAと、前回アクセスが発生したメモリブロックCへ電力が供給される。そして、次にメモリブロックDにアクセスが発生すると、状態(4)のように、メモリブロックDと、前回アクセスが発生したメモリブロックAへ電力が供給される。また、状態(7)のように、CPUコアクロック信号がOFFとなって全メモリブロックへの電源が遮断された後にCPUコアクロック信号がONとなった場合には、CPUコアクロック信号がOFFとなる前に電源を供給していたメモリブロックへ電源を供給する。
図11に示すようなメモリブロックへの電力供給制御を行うためには、電源制御データ管理回路を図12のように構成する。なお、電源制御データ管理回路以外のブロックは図1と同様であるため、説明を省略する。
第2の実施形態に係る情報処理装置の電源制御データ管理回路33aは、アクセスエリア判定回路331、電源制御データ履歴レジスタ332、セレクタ333の他に、判定データ履歴レジスタ334を含む。判定データ履歴レジスタ334は、1〜n回前にアクセスされたメモリブロックを記憶する。判定データ履歴レジスタ334へ格納されるデータの形式は限定されず、1〜n回前にアクセスされたメモリブロックが判別できるデータであれば良い。
図13は、アクセス処理状態における電源制御データ管理回路33aの処理を示すフローチャートである。図13では、図6と同じステップは同じ記号を付し、詳細な説明を省略する。
アクセスエリア判定回路331がアクセス対象アドレスの含まれるメモリブロックを判定し、そのメモリブロックの電源が遮断されている場合(S13のNo)、アクセスエリア判定回路331は、判定データ履歴レジスタに格納されているデータを取得する(S201)。そして、アクセスエリア判定回路331は、ステップS12にて判定されたアクセス対象のメモリブロックと、ステップS201で取得した1〜n回前にアクセスされたメモリブロックのデータを使用して、アクセス対象のメモリブロックおよび1〜n回前にアクセスされたメモリブロックに対して電源を供給し、他のメモリブロックへの電源を遮断するためのデータセットを生成する(S202)。生成されたデータセットは、電源制御データレジスタ31、電源制御データ履歴レジスタ332にセットされる(S15、S16)。そして、アクセスエリア判定回路331は、ステップS12にて判定されたメモリブロックを1回前にアクセスされたメモリブロックとなるように、判定データ履歴レジスタ334のデータを更新する(S203)。
本実施形態に係る情報処理装置の、スタンバイ処理状態、アクティブ処理状態、スリープ処理状態、ウェイクアップ処理状態の処理は第1の実施形態にて説明した処理と同様である。このような処理によって、図11に示すようなメモリブロックへの電力供給制御を行うことができる。このような電力供給制御によると、第1の実施形態と比較して消費電力削減効果は下がるが、CPU50からアクセスが発生した場合にアクセス対象のメモリブロックの電源供給が既に行われている可能性が高くなり、平均的な処理動作速度が速くなる。
(第3の実施形態)
図14は、本実施形態に係る情報処理装置によるメモリブロック11の電源供給制御の様子を示す図である。第1の実施形態に係る情報処理装置では、最後にアクセスされた時刻からの経過時間が所定の時間以内のメモリブロックに対する電源を供給し、他のメモリブロックに対する電源供給は遮断する。
例えば、図14では、状態(2)のようにメモリブロックAとCに対して電源が供給されている状態で、メモリブロックCに対して最後にアクセスされた時刻から所定の時間が経過すると、状態(3)のようにメモリブロックCに対する電源供給を遮断し、メモリブロックAに対して電源供給を継続する。
図14に示すようなメモリブロックへの電力供給制御を行うためには、電源制御データ管理回路を図15のように構成する。なお、電源制御データ管理回路以外のブロックは図1と同様であるため、説明を省略する。
本実施形態に係る電源制御データ管理回路33bは、第2の実施形態にて説明した電源制御データ管理回路33aにて説明した構成要件に加えて、計時回路335を有する。電源制御データ管理回路33bの判定データ履歴レジスタ334は、例えばキャッシュ10に含まれる各メモリブロックに対応して1ビットのフラグを設ける。判定データ履歴レジスタ334のフラグの初期値は、「0」とする。
図16は、電源制御データ管理回路33bの処理を示すフローチャートである。図16では、図13と同じステップは同じ記号を付し、詳細な説明を省略する。
アクセスエリア判定回路331は、アクセス対象のメモリブロックを判定し、アクセス対象のメモリブロックと判定データ履歴レジスタ334にてフラグが「1」に設定されているメモリブロックを示すデータを取得する(S301)。そして、アクセス対象のメモリブロックと、判定データ履歴レジスタ334にてフラグが「1」に設定されているメモリブロックに電源を供給し、他のメモリブロックへの電源供給を遮断するようなデータセットを生成する(S202)。生成されたデータセットは、電源制御データレジスタ31、電源制御データ履歴レジスタ332にセットされる(S15、S16)。そして、ステップS12にて判定されたメモリブロックに対応する判定データ履歴レジスタ334のフラグを「1」に変更する(S302)。
計時回路335は、判定データ履歴レジスタ334の各フラグが「1」に変更された時刻から所定の時間が経過すると、当該フラグを「0」に変更する。
このような処理によって、メモリブロック毎に最後にアクセスされてからの経過時間を管理し、最後にアクセスされてから経過時間の短いメモリブロックに対して電源を供給することができる。
(第4の実施形態)
CPUコアクロック信号がOFF後にONされた場合に電源を供給するメモリブロックは、アクセス頻度が高いメモリブロックであっても良い。図17は、本実施形態に係る情報処理装置の電源制御データ管理回路33cの構成を示すブロック図である。電源制御データ管理回路33c以外のブロックは図1と同様である。
電源制御データ管理回路33cは、アクセスエリア判定回路331、電源制御データ履歴レジスタ332、セレクタ333、頻度管理回路336を有する。電源制御データ管理回路33cの電源制御データ履歴レジスタ332は、例えばキャッシュ10に含まれる各構成要件(メモリブロック11、入出力回路12、内部電圧発生回路13)に対応して1ビットのフラグを設ける。電源制御データ履歴レジスタ332のフラグの初期値は、「0」とする。
頻度管理回路336は、アクセスエリア判定回路331によって、アクセス先のメモリブロックが判定される度に、メモリブロックのアクセス頻度を表すデータを更新する。アクセス頻度は、所定の時間内で各メモリブロックにアクセスされた回数であっても良いし、所定のアクセス回数の内、各メモリブロックにアクセスされた回数であっても良い。
このように、頻度管理回路336によってアクセス頻度が高いと判断されたメモリブロックに対応する電源制御データ履歴レジスタ332のフラグを「1」にすることによって、CPUコアクロック信号がOFF後にONされた場合に、電源制御データ履歴レジスタ332のデータに基づいてアクセス頻度の高いメモリブロックに電源供給をいち早く行うことができる。
(第5の実施形態)
キャッシュ10にデータを書き込む際、所定のアプリケーションで必要とされるデータを同じメモリブロック11に書き込んでも良い。そして、図18に示すように、アプリケーションとデータが書き込まれるメモリブロックとの対応関係を示すデータを格納する対応データレジスタ337を設けておくことで、CPU50からアクセス要求が発生したときに、CPU50で実行されているアプリケーションに応じたメモリブロック11に対して電源を供給することができる。
このような実施形態の構成をとることで、メモリを低消費電力化しながらも、高速なアクセスを可能とする情報処理装置を提供することができる。
なお、上記実施形態に限定されることはなく、本発明の要旨を逸脱しない範囲において、適宜変更しても良い。例えば、上述の実施形態では、CPU内のキャッシュのメモリブロックおよび電圧発生回路の電源制御が行われるとして説明したが、CPUおよび不揮発性メモリから成るメインメモリを有する情報処理装置を構成し、CPU外に設けられたメインメモリのメモリブロックおよび電圧発生回路の電源制御を行っても良い。メインメモリの電源制御であっても、キャッシュの電源制御と同様の処理によって実現することができる。また、例えば、第1〜第5の実施形態を2つ以上組み合わせても良い。
1…情報処理装置、 10…キャッシュ、 11…メモリブロック、12…入出力回路、 13…内部電圧発生回路、 20…メモリ電源電圧、 30…キャッシュメモリ電源制御回路、 31…電源制御データレジスタ、 32…スイッチ、 33…電源制御データ管理回路、 40…キャッシュメモリ制御回路、 50…CPU、 60…CPU電源制御回路、 331…アクセスエリア判定回路、 332…電源制御データ履歴レジスタ、 333…セレクタ、 334…判定データ履歴レジスタ、 335…計時回路、 336…頻度管理回路、 337…対応データレジスタ

Claims (9)

  1. クロック信号に従って動作するCPUと、
    不揮発性メモリを含む複数のメモリブロックと、
    前記複数のメモリブロックに接続された内部電圧発生回路と、
    前記複数のメモリブロックに接続された入出力回路と、
    前記内部電圧発生回路、前記入出力回路、および前記複数のメモリブロックの各々に対応して設けられ、電源との接続をON/OFFするスイッチと、
    前記スイッチのON/OFFを制御するデータセットを格納する電源制御データレジスタと、
    前記電源制御データレジスタにデータセットを設定する電源制御データ管理回路と、を備え、
    前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなると、前記内部電圧発生回路に接続されたスイッチをONにし、前記複数のメモリブロックに接続されたスイッチをOFFにして当該複数のメモリブロックへの電力供給を停止する第1のデータセットを生成して前記電源制御データレジスタに設定す情報処理装置。
  2. 前記CPUから最後にアクセスされたメモリブロックに接続された前記スイッチをONにする第2のデータセットを格納する電源制御データ履歴レジスタを更に有し、
    前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなったことに基づいて前記電源制御データレジスタに前記第1のデータセットを設定した後に、前記CPUへ入力されるクロック信号がONとなると、前記電源制御データ履歴レジスタに記憶された前記第2のデータセットを前記電源制御データレジスタに設定す請求項1に記載の情報処理装置。
  3. 前記第2のデータセットは、前記電源制御データ管理回路が前記CPUからのアクセス対象アドレスを取得した場合に、前記複数のメモリブロックの内、アクセス対象アドレスのメモリが含まれるメモリブロックに接続された前記スイッチをONにして他の少なくとも1つのメモリブロックに接続された前記スイッチをOFFにするデータセットであって、前記電源制御データレジスタおよび前記電源制御データ履歴レジスタに設定され請求項2に記載の情報処理装置。
  4. 前記第2のデータセットは、前記電源制御データ管理回路が前記CPUからのアクセス対象アドレスを取得した場合に、前記複数のメモリブロックの内、アクセス対象アドレスのメモリが含まれるメモリブロックに接続された前記スイッチと、前回アクセスされたメモリブロックに接続された前記スイッチをONにして他のメモリブロックに接続された前記スイッチをOFFにするデータセットであって、前記電源制御データレジスタおよび前記電源制御データ履歴レジスタに設定され請求項2または3に記載の情報処理装置。
  5. 前記第2のデータセットは、前記電源制御データ管理回路が前記CPUからのアクセス対象アドレスを取得した場合に、前記複数のメモリブロックの内、アクセス対象アドレスのメモリが含まれるメモリブロックに接続された前記スイッチと、最後にアクセスされてから所定の時間経過前のメモリブロックに接続された前記スイッチをONにして他のメモリブロックに接続された前記スイッチをOFFにするデータセットであって、前記電源制御データレジスタおよび前記電源制御データ履歴レジスタに設定され請求項2または3に記載の情報処理装置。
  6. 前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなった後に所定の時間が経過すると、前記内部電圧発生回路に接続されたスイッチと前記複数のメモリブロックに接続されたスイッチをOFFにする第3のデータセットを生成し、前記電源制御データレジスタに設定す請求項1乃至のいずれか1項に記載の情報処理装置。
  7. 前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなった後に所定の時間が経過したことに応じて、前記内部電圧発生回路に接続されたスイッチと前記複数のメモリブロックに接続されたスイッチをOFFにする第3のデータセットを前記電源制御データレジスタに設定した後に、前記CPUへ入力されるクロック信号がONとなると、前記内部電圧発生回路に接続されたスイッチをONにする第4のデータセットを生成して前記電源制御データレジスタに設定す請求項に記載の情報処理装置。
  8. 前記CPUからアクセスされる頻度が高いメモリブロックに接続された前記スイッチをONにして他の少なくとも1つのメモリブロックに接続された前記スイッチをOFFにする第5のデータセット格納する電源制御データ履歴レジスタを更に有し、
    前記電源制御データ管理回路は、前記CPUへ入力されるクロック信号がOFFとなったことに基づいて前記電源制御データレジスタに第1のデータセットを設定した後に、前記CPUへ入力されるクロック信号がONとなると、前記電源制御データ履歴レジスタに記憶された前記第5のデータセットを前記電源制御データレジスタに設定す請求項1に記載の情報処理装置。
  9. 前記第1のデータセットは、前記内部電圧発生回路に接続されたスイッチをONにし、前記複数のメモリブロックに接続されたスイッチをOFFにするとともに、前記入出力回路に接続されたスイッチをONにす請求項1乃至8のいずれか1項に記載の情報処理装置。
JP2011166072A 2011-07-28 2011-07-28 情報処理装置 Expired - Fee Related JP5653315B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011166072A JP5653315B2 (ja) 2011-07-28 2011-07-28 情報処理装置
US13/421,090 US9026830B2 (en) 2011-07-28 2012-03-15 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011166072A JP5653315B2 (ja) 2011-07-28 2011-07-28 情報処理装置

Publications (2)

Publication Number Publication Date
JP2013030024A JP2013030024A (ja) 2013-02-07
JP5653315B2 true JP5653315B2 (ja) 2015-01-14

Family

ID=47598272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011166072A Expired - Fee Related JP5653315B2 (ja) 2011-07-28 2011-07-28 情報処理装置

Country Status (2)

Country Link
US (1) US9026830B2 (ja)
JP (1) JP5653315B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI619010B (zh) * 2013-01-24 2018-03-21 半導體能源研究所股份有限公司 半導體裝置
JP6322891B2 (ja) * 2013-02-20 2018-05-16 日本電気株式会社 間欠動作に適した計算装置およびその動作方法
JP6130750B2 (ja) * 2013-07-16 2017-05-17 株式会社東芝 メモリ制御回路およびプロセッサ
US9836235B2 (en) 2014-05-07 2017-12-05 Marvell World Trade Ltd. Low power distributed memory network
JP6158154B2 (ja) 2014-09-19 2017-07-05 株式会社東芝 プロセッサシステム、メモリ制御回路およびメモリシステム
US9939863B2 (en) * 2014-10-17 2018-04-10 Toshiba Memory Corporation Power control system and storage system
CN108418974A (zh) * 2018-04-25 2018-08-17 武汉轻工大学 信息处理设备
US20230008376A1 (en) * 2021-07-08 2023-01-12 Kioxia Corporation Memory system, control method, and power control circuit
CN114388008B (zh) * 2022-01-14 2023-08-29 长鑫存储技术有限公司 电源控制电路及控制方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6523125B1 (en) * 1998-01-07 2003-02-18 International Business Machines Corporation System and method for providing a hibernation mode in an information handling system
JP2000215100A (ja) * 1999-01-21 2000-08-04 Nec Corp 省電力メモリ管理システム
JP4064618B2 (ja) * 1999-11-09 2008-03-19 富士通株式会社 半導体記憶装置、その動作方法、その制御方法、メモリシステムおよびメモリの制御方法
US20030145239A1 (en) * 2002-01-31 2003-07-31 Kever Wayne D. Dynamically adjustable cache size based on application behavior to save power
KR100452323B1 (ko) * 2002-07-02 2004-10-12 삼성전자주식회사 반도체 메모리 장치의 기준전압 선택회로 및 그 방법
CN1914626B (zh) * 2004-01-30 2013-09-25 株式会社半导体能源研究所 半导体器件
KR100567916B1 (ko) * 2004-04-20 2006-04-05 주식회사 하이닉스반도체 반도체 메모리 소자의 전원 공급 장치 및 방법
KR101114984B1 (ko) * 2005-03-14 2012-03-06 삼성전자주식회사 가변적인 웨이크업 레이턴시를 가진 프로세싱 장치에서전원 관리 방법 및 장치
JP4082706B2 (ja) * 2005-04-12 2008-04-30 学校法人早稲田大学 マルチプロセッサシステム及びマルチグレイン並列化コンパイラ
WO2006120507A1 (en) * 2005-05-11 2006-11-16 Freescale Semiconductor, Inc. Method for power reduction and a device having power reduction capabilities
US8024508B2 (en) * 2006-03-21 2011-09-20 Lg Electronics Inc. Computer storage control
JP2009211153A (ja) * 2008-02-29 2009-09-17 Toshiba Corp メモリ装置、情報処理装置及び電力制御方法
CN101593016B (zh) * 2008-05-30 2011-03-23 鸿富锦精密工业(深圳)有限公司 电源控制电路
JP2010044460A (ja) * 2008-08-08 2010-02-25 Renesas Technology Corp 電源制御装置、計算機システム、電源制御方法、電源制御プログラムおよび記録媒体
DE102008053900A1 (de) * 2008-10-30 2010-05-06 Atmel Automotive Gmbh Schaltung, Verfahren zum Betrieb einer Schaltung und Verwendung
KR101706773B1 (ko) * 2009-10-20 2017-02-14 에스프린팅솔루션 주식회사 화상형성장치 및 그 제어방법
JP2011123955A (ja) * 2009-12-11 2011-06-23 Elpida Memory Inc 半導体システム
US8412971B2 (en) * 2010-05-11 2013-04-02 Advanced Micro Devices, Inc. Method and apparatus for cache control
US8984311B2 (en) * 2011-12-30 2015-03-17 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including dynamic C0-state cache resizing
JP6046514B2 (ja) * 2012-03-01 2016-12-14 株式会社半導体エネルギー研究所 半導体装置

Also Published As

Publication number Publication date
US20130031397A1 (en) 2013-01-31
JP2013030024A (ja) 2013-02-07
US9026830B2 (en) 2015-05-05

Similar Documents

Publication Publication Date Title
JP5653315B2 (ja) 情報処理装置
US9767882B2 (en) Method of refreshing memory device
JP6030085B2 (ja) キャッシュメモリおよびプロセッサシステム
JP2006147123A (ja) メモリ装置のリフレッシュ方法
JP6000708B2 (ja) メモリ制御装置および方法
JP5971547B2 (ja) メモリコントローラ,データ記憶装置およびメモリの制御方法
JP2010152962A (ja) 半導体記憶装置
JP2009211153A (ja) メモリ装置、情報処理装置及び電力制御方法
KR102054842B1 (ko) 정적 랜덤 액세스 메모리
JP2007157316A (ja) リフレッシュ電流消耗を最小化する半導体メモリ装置及びその駆動方法
JP2008505427A (ja) 半密度処理及び全密度処理を伴うdram
JP2007102566A (ja) メモリバックアップシステム
US9502095B1 (en) Memory system
WO2016043272A1 (ja) メモリシステムおよびキャッシュメモリ
JP2015232772A (ja) システムの制御方法及びシステム
US10496303B2 (en) Method for reducing power consumption memory, and computer device
US10698609B2 (en) Memory system and operating method of a memory system
JP2016206951A (ja) 電子装置及び電子装置の制御方法
JP5232742B2 (ja) Usbメモリ
JP2014203381A (ja) 記憶装置とその制御方法、および、プログラム
KR20140028582A (ko) 반도체 메모리 장치 및 그것의 동작 방법
JP2009289155A (ja) 半導体記憶装置
JP2017058960A (ja) メモリシステム
KR20080029576A (ko) 반도체 메모리 장치
TW202329112A (zh) 用於記憶體中之雙備用模式之系統及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140808

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141003

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141118

R151 Written notification of patent or utility model registration

Ref document number: 5653315

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees