JP6054203B2 - 情報処理装置、デバイス制御方法及びプログラム - Google Patents

情報処理装置、デバイス制御方法及びプログラム Download PDF

Info

Publication number
JP6054203B2
JP6054203B2 JP2013040176A JP2013040176A JP6054203B2 JP 6054203 B2 JP6054203 B2 JP 6054203B2 JP 2013040176 A JP2013040176 A JP 2013040176A JP 2013040176 A JP2013040176 A JP 2013040176A JP 6054203 B2 JP6054203 B2 JP 6054203B2
Authority
JP
Japan
Prior art keywords
request
unit
notification
information processing
processing apparatus
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
JP2013040176A
Other languages
English (en)
Other versions
JP2014167781A (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 JP2013040176A priority Critical patent/JP6054203B2/ja
Priority to TW103105706A priority patent/TW201433920A/zh
Priority to CN201410057361.XA priority patent/CN104020836A/zh
Priority to US14/190,378 priority patent/US9619001B2/en
Publication of JP2014167781A publication Critical patent/JP2014167781A/ja
Application granted granted Critical
Publication of JP6054203B2 publication Critical patent/JP6054203B2/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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • 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/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Description

本発明の実施形態は、情報処理装置、デバイス制御方法及びプログラムに関する。
近年の機器は、様々なデバイスを搭載しているため、省電力化を考慮したデバイスの制御を行えば、機器全体の消費電力を抑えることができる。
米国特許第7913100号公報
本発明が解決しようとする課題は、情報処理装置のデバイスのハードウェア構成を変更せずに省電力化を実現できる情報処理装置、デバイス制御方法及びプログラムを提供することである。
実施形態の情報処理装置は、第1デバイスと、第2デバイスと、第1デバイスに処理の開始・終了などを行わせる第1デバイスコントローラと、第2デバイスに処理の開始・終了などを行わせる第2デバイスコントローラと、前記第1デバイスの動作を制御する第1制御部と、前記第2デバイスの動作を制御する第2制御部とを備える。前記第1制御部は、第1リクエスト処理部と、通知部と、第1実行部とを備える。前記第2制御部は、第2リクエスト処理部と、記憶部と、通知受信部と、第2実行部とを備える。第1リクエスト処理部は、前記第1デバイスの処理開始の指示を含む第1リクエストを受信する。通知部は、前記第1リクエストを受信したことを前記第2制御部に通知する。第1実行部は、前記第1リクエストにより指示される処理開始の指示を第1デバイスコントローラに行い、第1デバイスコントローラが第1デバイスの処理の実行を開始させる。第2リクエスト処理部は、前記第2デバイスの処理開始の指示を含む第2リクエストを受信する。記憶部は、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶する。通知受信部は、前記通知を受信する。第2実行部は、前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを記憶せずに実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストをを取り出し、処理開始の指示を第2デバイスコントローラに行い、第2デバイスコントローラが第2デバイスの処理の実行を開始させる。
実施形態のデバイス制御方法は、第1デバイスと、第2デバイスと、第1デバイスに処理の開始・終了などを行わせる第1デバイスコントローラと、第2デバイスに処理の開始・終了などを行わせる第2デバイスコントローラと、前記第1デバイスの動作を制御する第1制御部と、前記第2デバイスの動作を制御する第2制御部とを備える情報処理装置のデバイス制御方法である。デバイス制御方法は、前記第1制御部の第1リクエスト処理部が、前記第1デバイスの処理開始の指示を含む第1リクエストを受信するステップと、前記第1制御部の通知部が、前記第1リクエストを受信したことを前記第2制御部に通知するステップと、前記第1制御部の第1実行部が、前記第1リクエストにより指示される処理開始の指示を第1デバイスコントローラに行い、第1デバイスの処理の実行を開始させるステップと、前記第2制御部の第2リクエスト処理部が、前記第2デバイスの処理開始の指示を含む第2リクエストを受信するステップと、前記第2制御部の記憶部が、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶するステップと、前記第2制御部の通知受信部が、前記通知を受信するステップと、前記第2制御部の第2実行部が、前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを記憶せずに処理開始の指示を第2デバイスコントローラに行い第2デバイスコントローラが第2デバイスに処理を開始させ、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストに含まれる処理開始の指示を第2デバイスコントローラに行い第2デバイスコントローラが第2デバイスに処理を開始させるステップとを含む。
実施形態のプログラムは、第1デバイスと第2デバイスと第1デバイスに処理の開始・終了などを行わせる第1デバイスコントローラと、第2デバイスに処理の開始・終了などを行わせる第2デバイスコントローラを含むコンピュータを、前記第1デバイスの動作を制御する第1制御部と、前記第2デバイスの動作を制御する第2制御部として機能させる。前記第1制御部は、第1リクエスト処理部と、通知部と、第1実行部とを備える。前記第2制御部は、第2リクエスト処理部と、記憶部と、通知受信部と、第2実行部とを備える。第1リクエスト処理部は、前記第1デバイスの処理開始の指示を含む第1リクエストを受信する。通知部は、前記第1リクエストを受信したことを前記第2制御部に通知する。第1実行部は、前記第1リクエストにより指示される処理開始の指示を第1デバイスコントローラに行い、第1デバイスの処理の実行を開始させる。第2リクエスト処理部は、前記第2デバイスの処理開始の指示を含む第2リクエストを受信する。記憶部は、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶する。通知受信部は、前記通知を受信する。第2実行部は、前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを記憶せずに第2リクエストにより指示される処理開始の指示を第2デバイスコントローラに行い、第2デバイスコントローラが第2デバイスに処理を開始させ、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストにより指示される処理開始の指示を第2デバイスコントローラに行い、第2デバイスコントローラが第2デバイスに処理を開始させる。
第1実施形態の情報処理装置の機能ブロックの構成の一例を示す図。 第1実施形態の第2リクエスト処理部の機能ブロックの構成の一例を示す図。 第1実施形態の情報処理装置のハードウェア構成の一例を示す図。 第1実施形態の第1制御部の動作の一例を示すフローチャート。 第1実施形態の第2制御部の動作の一例を示すフローチャート。 第1実施形態の通知受信部が通知を受信したときの動作の一例を示すフローチャート。 第1実施形態のデバイス制御方法の一例(EPD及びNANDフラッシュ)を示す図。 第1実施形態のデバイス制御方法の一例(EPD及び無線LANデバイス)を示す図。 第2実施形態の情報処理装置の機能ブロックの一例を示す図。 第2実施形態の第2制御部の動作の一例を示すフローチャート。 第3実施形態の情報処理装置の機能ブロックの一例を示す図。 第3実施形態の情報処理装置のデバイス制御方法の一例を示す図。 第4実施形態の情報処理装置の機能ブロックの一例を示す図。 従来の情報処理装置のデバイス制御方法の一例を示す図。 第4実施形態の情報処理装置のデバイス制御方法の一例を示す図。 第1実施形態の変形例の情報処理装置の機能ブロックの構成の一例を示す図。
(第1の実施形態)
図1は、第1実施形態の情報処理装置100の機能ブロックの構成の一例を示す図である。本実施形態の情報処理装置100は、第1制御部10、第1デバイスコントローラ14、第1デバイス15、第2制御部20、第2デバイスコントローラ26、第2デバイス27、PMIC39、クロック制御モジュール31を備える。第1制御部10は、第1リクエスト処理部11、通知部12、アクティブ状態フラグ管理部16及び第1実行部13を備える。第2制御部20は、第2リクエスト処理部21、記憶部22、タイマ設定部23、通知受信部24、第2実行部25、を備える。
第1デバイス15及び第2デバイス27は、情報処理装置100を構成するデバイスの一つである。第1デバイス15及び第2デバイス27は、任意のデバイスでよい。
第1リクエスト処理部11は、第1デバイス15の処理開始の指示を含むリクエスト(以下「第1リクエスト」という)を第1制御部の外部から受信する。第1リクエストを送信するのは、例えば情報処理装置100で実行しているアプリケーションやオペレーティング・システム、デバイスドライバなどである。第1リクエスト処理部11が第1リクエストを受信すると、第1リクエスト処理部11は通知部12に通知する。通知部12は、第1リクエスト処理部11から通知を受けると、第1リクエストを受信したことを第2制御部20(通知受信部24)に通知する。また、第1リクエスト処理部11が第1リクエストを受信すると第1実行部13に第1リクエストを送る。第1実行部13は、第1リクエストを受けとり、第1デバイスコントローラ14に処理開始の指示を送り、第1デバイスコントローラ14が第1リクエストで指示された処理を第1デバイス15に開始させる。アクティブ状態フラグ管理部16は、第1デバイスがアクティブ状態であるか否かを示すフラグを管理するものであり、第1実行部13が第1デバイスコントローラ14に処理開始の指示を送る際に、第1実行部13からアクティブ状態フラグ管理部16に実行開始の通知を行い、それを受けてアクティブ状態フラグ管理部16は、フラグをONにしてアクティブ状態であることを示す。また、第1デバイス15は処理を終了したらアクティブ状態フラグ管理部16に処理終了の通知を送り、アクティブ状態フラグ管理部16は、フラグをOFFにする。
第2リクエスト処理部21は、第2デバイス27の処理開始の指示を含むリクエスト(以下「第2リクエスト」という)を第2制御部20の外部から受信する。第2リクエストを送信するのは、例えば情報処理装置100で実行しているアプリケーションやオペレーティング・システム、デバイスドライバなどである。
図2は第1実施形態の第2リクエスト処理部21の機能ブロックの構成の一例を示す図である。第2リクエスト処理部21は、受信部28及び判定部29を備える。受信部28は、第2リクエストを受信する。
第2リクエスト処理部21の受信部28は、第2リクエスト処理部21の判定部29に対し、第1デバイス15がアクティブ状態であるか否かを問い合わせる。第1デバイス15がアクティブ状態であるとはデバイスが処理を実行中である場合のことであり、例えば、第1デバイス15にクロックが送られている場合、第1デバイス15もしくは第1デバイスコントローラ14のステータスレジスタがONを示している場合、PMIC39が第1デバイス15に電力を供給している場合、第1制御部10のアクティブ状態フラグ管理部16のフラグがアクティブ状態を示している場合などのことである。判定部29は受信部28から第1デバイス15がアクティブ状態であるか否かの問い合わせを受信すると、第1デバイス15がアクティブ状態であるかを判定する。判定方法は例えば、第1デバイス15にクロックが送られているかを調べるために判定部がクロック制御モジュール31内の第1デバイスにクロックを供給しているかを示すレジスタを参照する、または、第1デバイス15もしくは第1デバイスコントローラ14にあるアクティブ状態かを示すステータスレジスタを参照する、または、PMIC39内にある第1デバイス15に電力を供給しているかを示すレジスタを参照する、または、第1制御部10のアクティブ状態フラグ管理部16で管理しているアクティブ状態かを示すフラグを参照するかのいずれかの方法、もしくは、複数の方法にて第1デバイス15がアクティブ状態かどうかを判定する。
判定部29にて第1デバイス15がアクティブ状態ではないと判定された場合は、第2リクエスト処理部21は記憶部22へ第2リクエストを送り、記憶部22は第2リクエストを第2リクエストを識別するIDと対応付けて記憶する。記憶部22は、複数の第2リクエストを時系列順に記憶できるように内部にキューを持つ。記憶部22は第2リクエストを記憶する際に、タイマ設定部23に対し、一定時間以上記憶部に第2リクエストが記憶されて実行されないことを防ぐため、記憶部22が記憶している第2リクエストを取り出して第2実行部に送る処理を実行するように第2リクエストを識別するIDとともにタイマを設定する。タイマを設定した時間が経過すると、タイマ設定部23は、第2リクエストを識別するIDを記憶部22に送り、記憶部22は、IDと対応する第2リクエストが記憶部に残っている場合は、その第2リクエストを第2実行部に送る。また、第2リクエスト処理部21の受信部28は、判定部29にて第1デバイス15がアクティブ状態と判定した場合には、第2リクエストを第2実行部25に送る。第2実行部25は、第2リクエストを受けとり、第2デバイスコントローラ26に処理開始の指示を送り、指示を受け取った第2デバイスコントローラ26が第2リクエストで指示された処理を第2デバイス27に開始させる。
通知受信部24は、第1リクエストを受信したことを示す通知を通知部12から受信する。受信通知部24は通知を受信すると、記憶部22にそれを通知する。記憶部22は、その通知を受けると、記憶していた第2リクエストを第2実行部に送り、第2実行部25は、第2リクエストを受けとり、第2デバイスコントローラ26に処理開始の指示を送り、指示を受け取った第2デバイスコントローラ26が第2リクエストで指示された処理を第2デバイス27に開始させる。
第1制御部10及び第2制御部20は、プログラムが実行されることによって実現される。第1制御部10と第2制御部20のプログラムは、それぞれオペレーティング・システムとデバイスドライバの一部、または、オペレーティング・システムとアプリケーションの一部、デバイスドライバとアプリケーションの一部、オペレーティング・システムとデバイスドライバとアプリケーションの一部のプログラムで実現できる。第1制御部10及び第2制御部20により、第1デバイス15がアクティブ状態である場合に、第2デバイス27の動作を開始させる制御を行うことができる。
図3は、第1実施形態の情報処理装置100のハードウェア構成の一例を示す図である。本実施形態の情報処理装置100は、SoC30(System on a chip)、電力量計測装置38、PMIC39(Power Management Integrated Circuit)、メインメモリ40、表示デバイス41、ストレージデバイス42、ネットワークデバイス43、蓄電装置44及び電源装置45を備える。なお、図3では図示されていないが、情報処理装置100は、更にキーボードやタッチパネル等の様々なデバイスを備えていてもよい。
SoC30は、クロック制御モジュール31、プロセッサコア32、バス33、メモリコントローラ34、表示デバイスコントローラ35、ストレージコントローラ36及びネットワークコントローラ37を備える。なお、メモリコントローラ34、表示デバイスコントローラ35、ストレージコントローラ36及びネットワークコントローラ37は、SoC30の外部にあってもよい。
ここで、本実施形態の情報処理装置100の第1デバイス15及び第2デバイス27の具体例について説明する。例えば、本実施形態の情報処理装置100が、ネットワークデバイス43が無線LANデバイス、ストレージデバイス42がNANDフラッシュ、表示デバイス35が液晶ディスプレイの場合は、第1デバイス14を無線LANとし、第2デバイス27を、NANDフラッシュ42とすることができる。デバイスがアクティブ状態になるタイミングを合わせるには、基準となる第1デバイス15を決めて、基準となるデバイスがアクティブ状態である期間に、他のデバイスを第2デバイス27とし、アクティブ状態になるタイミングを合わせる方法が望ましい。平均的なアクティブ状態の時間を比較すると、無線LANデバイスは、NANDフラッシュと比べてアクティブ状態になる時間が長い。また、NANDフラッシュを用いる処理のうち、NANDフラッシュの書き込み処理は、メインメモリ40上のページキャッシュの書き込み処理であるため、多少タイミングが遅れても問題になることが無い。また、メインメモリ40を不揮発性にした場合、電力が失われてもメインメモリ40上のページキャッシュを失うことが無いため、書き込みが遅れることによる問題発生の可能性は更に小さくなる。
したがって、本実施形態の情報処理装置100において、ネットワークデバイス43が無線LAN、ストレージデバイス42がNANDフラッシュ、表示デバイス41が液晶ディスプレイで、液晶ディスプレイの表示を消しており液晶ディスプレイをオフにしている場合は、無線LANデバイスを第1デバイス15、NANDフラッシュを第2デバイス27とし、無線LANのアクティブ状態にNANDフラッシュのアクティブ状態を合わせ込むことが望ましい。ただし、基準となるデバイスは無線LANデバイスに限定するものではない。
一方、例えば、情報処理装置100において、表示デバイス41にEPDを用いるような電子書籍端末の場合、EPDは無線LANやNANDフラッシュとくらべてアクティブ状態が長い。そのため、EPDを基準となる第1デバイス15とし、第2デバイス27に無線LANまたは、NANDフラッシュにするのが望ましい。または、EPDを第1デバイス15にし、無線LANとNANDフラッシュの両方を第2デバイス27にしてもよい。このとき、NANDフラッシュに加えて、無線LANデバイスの処理がEPDのアクティブ状態に合わせ込まれるため、処理開始が遅延されるが、元々ネットワーク処理は遅延することが前提であるため、問題になりにくい。なお、第2デバイス15が複数の場合の説明は、第4実施形態の情報処理装置100として説明する。
また、表示デバイス41がEPDではないデバイスであり、ネットワークが近接ノードのみで構成されており、ネットワーク処理のレスポンスが非常に早いネットワークでの使用が想定される場合、無線LANデバイスとNANDフラッシュのアクティブ状態に大きな差が無い場合がある。その場合は、無線LANデバイスとNANDフラッシュの両方を第1デバイス15とし、他のデバイスを第2デバイス27にすることもできる。なお、第1デバイス15が複数の場合の説明は、第3実施形態の情報処理装置100として説明する。
次に、本実施形態の情報処理装置100を構成するデバイスを、第1デバイス15又は第2デバイス27として動作させるための方法の一例について説明する。例えば、第1デバイス15を表示デバイス41とし、第2デバイス27を、ストレージデバイス42とする方法について説明する。表示デバイス41を基準となるデバイス(第1デバイス15)にして、表示デバイス41がアクティブ状態であるときに、ストレージデバイス42の書き込み処理のタイミングを合わせたい場合は、例えば、表示デバイス41のデバイスドライバに第1制御部10を組込む。つまり、従来の表示デバイス41のドライバは、第1リクエスト処理部11でリクエストを受信し、第1実行部13で第1リクエストにより指示される動作の実行を開始していたが、本実施形態の情報処理装置100では、第1リクエスト処理部11と第1実行部13との間に通知部12を組み込む。一方、ストレージデバイス42のデバイスドライバには、第2制御部20を組み込む。つまり、従来のストレージデバイス42のデバイスドライバの第2リクエスト処理部21と第2実行部25に加えて、新たに、記憶部22、タイマ設定部23及び通知受信部24を組み込む。また、第2リクエスト処理部21には、判定部29を組み込む。
また、別の例として、メインメモリ40上のページキャッシュをストレージデバイス42に書き込む処理の実行を、表示デバイス41のアクティブ状態に合わせるには、例えば、第2制御部20をオペレーティングシステムに組み込むことで実現できる。つまり、オペレーティングシステム内でページキャッシュの書き込み要求を受信し、ストレージデバイス42にページキャッシュの書き込みを行なっている箇所に第2制御部20を組み込む。
次に、本実施形態の情報処理装置100のハードウェア構成の各ハードウェアの詳細について説明する。
クロック制御モジュール31は、プロセッサコア32、バス33、メモリコントローラ34、表示デバイスコントローラ35、ストレージコントローラ36及びネットワークコントローラ37にクロックを供給する。メインメモリ40、表示デバイス41、ストレージデバイス42及びネットワークデバイス43にもクロックを供給する場合は、各コントローラ(メモリコントローラ34、表示デバイスコントローラ35、ストレージコントローラ36及びネットワークコントローラ37)から、又はクロック制御モジュール31から直接、クロックを供給する。
クロック制御モジュール31は、メインメモリ40、表示デバイス41、ストレージデバイス42及びネットワークデバイス43等のデバイスがアクティブ状態である場合に、アクティブ状態のデバイス、メインメモリ40及びバス33等にクロックを供給する。クロック制御モジュール31は、情報処理装置100内に動作中(アクティブ状態)のデバイスが1つでもある場合、クロックの供給を停止しない。本実施形態の情報処理装置100(又はSoC30)は、複数の省電力モードを備えていてもよいが、最も消費電力が抑えられるアイドル状態では、クロック制御モジュール31を停止できるものとする。したがって、アクティブ状態のデバイスが1つでもあると、情報処理装置100(又はSoC30)は動作状態をアイドル状態にすることができない。
プロセッサコア32は、オペレーティングシステムやアプリケーションなどのプログラムを実行して情報処理装置100の動作を制御する。バス33は、情報処理装置100のデバイス間でデータを送受信するための伝送路である。
PMIC39は、情報処理装置100を構成している各デバイスに電力を供給するパワーレール(電源ライン)を複数備える。PMIC39は、パワーレール(電源ライン)毎に異なる電圧を供給することができる。PMIC39は、蓄電装置44から供給される電力を、各デバイスが必要とする電圧に変換してから、それぞれのデバイスに供給する。PMIC39は、電力供給のパワーレール(電源ライン)毎に電圧を変更したり、電力供給を停止したりすることができる。デバイスの数だけのパワーレール(電源ライン)を提供できない等の場合は、1つのパワーレール(電源ライン)を複数のデバイスで共有してもよい。例えば、本実施形態の情報処理装置100では、ストレージコントローラ42及びネットワークデバイス43に電力を供給するためのパワーレール(電源ライン)が共有されている。しかしながら、パワーレール(電源ライン)を複数のデバイスで共有する場合は、アクティブ状態のデバイスのみに電力を供給すれば十分であるにも関わらず、アクティブ状態のデバイス以外のデバイスにも同時に電力を供給せざるを得ず、余計に電力消費を発生してしまうことがある。
メインメモリ40は、揮発性のメモリでも不揮発性のメモリでもよい。例えば、メインメモリ40が揮発性である場合は、DRAM(Dynamic Random Access Memory)や、SRAM(Static Random Access Memory)である。また、メインメモリ40が不揮発性である場合は、MRAM(Magnetoresistive Random Access Memory)、PCM(Phase Change Memory)、ReRAM(Resistance Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、NOR型フラッシュメモリ等である。
メインメモリ40は、メモリコントローラ34により制御されている。メインメモリ40の動作に必要なクロックは、メモリコントローラ34から供給する。メインメモリ40は、プロセッサコア32や、他のデバイスのコントローラがアクセスしていない間は、電力消費の少ないセルフリフレッシュモードなどの省電力モードに遷移することで消費電力を抑えることができる。メインメモリ40が不揮発性のメモリである場合は、電力が無くてもデータを保持できる。そのため、この場合は、PMIC39がメインメモリ40への電力供給を遮断することで、更に電力消費を抑えることができる。
また、表示デバイス41、ストレージデバイス42及びネットワークデバイス43は、アクティブ状態のときに、メインメモリ40にアクセスすることが多い。そのため、本実施形態の情報処理装置100は、表示デバイス41、ストレージデバイス42及びネットワークデバイス43のうち、いずれか1つのデバイスがアクティブ状態であるときは、メインメモリ40にもアクセスできるようにしておく。メインメモリ40は、セルフリフレッシュモードなどの省電力モードを提供していたり、不揮発性メモリの場合は電力を落としたりすることで消費電力を抑えることができる。しかしながら、セルフリフレッシュモード中や、電力を落としている間は、外部からのメモリアクセスができない。そのため、メインメモリ40にアクセスが発生するアクティブ状態のデバイスがあると、メモリコントローラ34は、メインメモリ40をセルフリフレッシュモードにしたり、電力供給を停止したりするなどしてメインメモリの電力消費を抑えることができない。
表示デバイス41は、例えば、液晶ディスプレイ、メモリ液晶ディスプレイ、EPD(Electrophoretic Display)などで実現できる。液晶ディスプレイは、表示中はデバイスとコントローラに電力とクロックを供給しなければならない。メモリ液晶ディスプレイは表示中はデバイスに電力を供給しなければならないが、表示内容を書き換えなければコントローラのクロックを止めることができる。EPDは、書き換え時にクロックや電力が必要だが、書き換え時以外は、電力を落としても描画内容を保持できる。一般に、EPDは、液晶ディスプレイなどと比べて書き換えに必要な時間が長いため、描画速度よりも消費電力削減が優先される電子リーダなどで用いられることが多い。EPDは、表示デバイスコントローラ35により制御される。EPDが描画処理を行うアクティブ状態である場合は、表示デバイスコントローラ35は、EPDにクロックを供給する。また、EPDのアクティブ状態では、メインメモリ40もアクティブ状態になる。これは、表示デバイスコントローラ35が、メインメモリ40上に展開された描画内容のデータをEPDに転送したり、描画内容のデータを元にEPDの電圧制御のためのパラメータを、メインメモリ40を使用して計算したりするためである。
ストレージデバイス42は、2次ストレージとして使用する。ストレージデバイス42は、例えば、NANDフラッシュ、NORフラッシュ、SDカードなどの各種メモリカード、ハードディスクなどで実現できる。本実施形態の情報処理装置100では、ストレージデバイス42がNANDフラッシュであることを前提として説明する。なお、ストレージデバイス42は、NANDフラッシュに限られず、任意のストレージデバイスでよい。NANDフラッシュは、ファイルやプログラムなどのデータを記憶する。NANDフラッシュは、ストレージコントローラ36により制御される。ストレージコントローラ36は、NANDフラッシュが読み書き処理を行うアクティブ状態のときにクロックを供給する。NANDフラッシュ上のデータを読み込む場合は、ストレージコントローラ36が、当該データをメインメモリ40上にページキャッシュとして展開する。アプリケーションやOSなどがデータを書き換える場合は、メインメモリ40上のページキャッシュを変更する。当該ページキャッシュは、定期的にストレージコントローラ36によってNANDフラッシュに書き込まれる。そのため、NANDフラッシュへのデータの読み書きが発生する場合は、メインメモリ40もアクティブ状態になる。
ネットワークデバイス43は、例えば、有線LANデバイス、802.11a/802.11b/802.11gなどの伝送規格の無線LANデバイス、Bluetooth(登録商標)などで実現できる。本実施形態の情報処理装置100では、ネットワークデバイス43が無線LANデバイスであることを前提として説明する。なお、ネットワークデバイス43は、無線LANデバイスに限られず、任意のネットワークデバイスでよい。無線LANデバイスは、ネットワークコントローラ37によって制御される。ネットワークコントローラ37は、無線LANデバイスがネットワーク処理を行うアクティブ状態のときにクロックを供給する。無線LANデバイスがアクティブ状態のときは、メインメモリ40を使用して送受信用のデータを読み書きするため、メインメモリ40もアクティブ状態になる。
電源装置45は、例えば、ACアダプタなどのAC電源や、エナジーハーベスト装置などの各種発電装置で実現できる。エナジーハーベスト装置は、光エネルギーを利用した太陽電池や、熱エネルギーの利用などの環境発電技術を利用した装置である。本実施形態の情報処理装置100では、電源装置45をエナジーハーベスト装置として説明するが、電源装置45は、エナジーハーベスト装置に限られない。電源装置45としてエナジーハーベスト装置を使用する場合、電源装置45の発電する電力のみでは、情報処理装置100の動作のピーク時の消費電力を得ることができないので、消費電力が少ない間に余剰電力を蓄電装置44に蓄電しておき、ピーク時の電力をまかなう。蓄電装置44は、電気2重層キャパシタやリチウムイオンキャパシタなどの大容量キャパシタ、又はリチウムイオン電池などのバッテリなどである。なお、蓄電装置44は、大容量キャパシタ及びバッテリの両方を組み合わせた装置でもよい。
電力量計測装置38は、蓄電装置44が蓄積している電力量を計測する装置である。例えば、蓄電装置44が電気二重層キャパシタやリチウムイオンキャパシタなどのキャパシタである場合は、その出力電圧を計測することで蓄積している電力量を知ることができる。そのため、ADコンバータを電力量計測装置38として用いることができる。また、蓄電装置44がリチウムイオン電池などのバッテリである場合は、クーロンカウンタを電力量計測装置38として用いることができる。つまり、バッテリの充放電量をクーロンカウンタで計測することで蓄積している電力量を知ることができる。
次に、本実施形態の情報処理装置100の第1制御部10及び第2制御部20によるデバイス制御方法について説明する。
図4は、第1実施形態の情報処理装置100の第1制御部10の動作の一例を説明するためのフローチャートである。第1リクエスト処理部11は、第1デバイス15の処理開始の指示を含む第1リクエストを受信する(ステップS1)。通知部12は、第1リクエストを受信したことを第2制御部20に通知する(ステップS2)。第1実行部13は、第1リクエスト(第1リクエストにより指示される動作)の実行を第1デバイスが開始できるように第1デバイスコントローラに指示し、第1デバイスコントローラは第1デバイスに処理の実行を開始させる(ステップS3)。
図5は、第1実施形態の情報処理装置100の第2制御部20の動作の一例を説明するためのフローチャートである。第2リクエスト処理部21は、第2デバイス27の処理開始の指示を含む第2リクエストを受信する(ステップS11)。第2リクエスト処理部21(判定部29)は、第1デバイス15が動作中(アクティブ状態)であるか否かを調べる(ステップS12)。第2リクエスト処理部21(判定部29)は、第1デバイス15が動作中(アクティブ状態)であるか否かを判定する(ステップS13)。第1デバイス15がアクティブ状態でない場合(ステップS13、No)は、記憶部22が、第2リクエストを記憶する(ステップS14)。第1デバイス15がアクティブ状態である場合(ステップS13、Yes)は、第2実行部25が、第2リクエスト(第2リクエストにより指示される動作)の実行を第2デバイスが開始できるように第2デバイスコントローラに指示し、第2デバイスコントローラは第2デバイスに処理の実行を開始させる(ステップS15)。
図6は、第1実施形態の情報処理装置100の通知受信部24が通知を受信したときの動作の一例を説明するためのフローチャートである。通知受信部24は、第1制御部10の通知部12から第1リクエストを受信したことを示す通知を受信する(ステップS21)。第2実行部25は、記憶部22に第2リクエストが記憶されているか否かを確認する(ステップS22)。第2リクエストが記憶されている場合(ステップS22、Yes)は、記憶部22に記憶されていた第2リクエストの実行を開始する(ステップS23)。第2リクエストが記憶されていない場合(ステップS22、No)は、処理を終了する。
なお、図6のフローチャートの処理は、第1デバイス15に第1リクエストが来なかった場合は実行されない。このため、タイマ設定部23が設定したタイマの満了を契機としても、図6のフローチャートの処理(ステップS22及びステップS23)を行うようにする。一般に、オペレーティングシステムには、一定時間経過した後に、又は周期的に、指定された処理を実行させるタイマ機能が提供されている。そのため、オペレーティングシステムのタイマ機能を用いてもタイマ割込み処理を実現できる。例えば、タイマ設定部23が、第2リクエストを記憶する際にタイマをセットしたり、オペレーティングシステムの起動時に、一定の間隔で周期的に図6のフローチャートの処理(ステップS22及びステップS23)を起動するようにしたりすることでタイマ割込み処理を実現できる。
次に、本実施形態の情報処理装置100のデバイス制御方法による効果について説明する。
図7は、第1実施形態の情報処理装置100のデバイス制御方法の一例(EPD及びNANDフラッシュ)を示す図である。本実施形態の情報処理装置100(図7の具体例の場合)は、第1デバイス15(EPD)がアクティブ状態である場合に、第2デバイス27(NANDフラッシュ)の動作を開始させる。図8は、第1実施形態の情報処理装置100のデバイス制御方法の一例(EPD及び無線LANデバイス)を示す図である。本実施形態の情報処理装置100(図8の具体例の場合)は、第1デバイス15(EPD)がアクティブ状態である場合に、第2デバイス27(無線LANデバイス)の動作を開始させる。これにより、従来の情報処理装置100よりもアイドル状態を長くすることができ、情報処理装置100を省電力化することができる。すなわち、SoC30を消費電力の少ないアイドル状態にしたり、メインメモリ40を省電力モードや電源オフ状態にしたりすることができる時間を長くすることができる。また、PMIC39がデバイスに電力を供給する時間を短くすることができる。
(第2実施形態)
次に、第2実施形態の情報処理装置100について説明する。第1実施形態の情報処理装置100は、第2デバイス27が第2リクエストを受信してから、第2リクエストで指定された処理の実行開始のタイミングをずらすことで省電力化を行っている。しかしながら、リクエストの受信と実行開始のタイミングに時間差が発生するため、電力に余裕がある場合は、時間差が無いほうが望ましい。本実施形態の情報処理装置100は、第2制御部20に電力量監視部17を備えることで、蓄積している電力量が閾値以下の場合にのみ、デバイスのアクティブ状態のタイミングを合わせる。
図9は、第2実施形態の情報処理装置100の機能ブロックの一例を示す図である。本実施形態の情報処理装置100は、第1制御部10、第1デバイスコントローラ14、第1デバイス15、第2制御部20、第2デバイスコントローラ26第2デバイス27、PMIC39、クロック制御モジュール31、電力量計測装置38を備える。第1制御部10は、第1リクエスト処理部11、通知部12及び第1実行部13を備える。第2制御部20は、第2リクエスト処理部21、記憶部22、タイマ設定部23、第1デバイス判定部24、通知受信部24、第2実行部25及び電力量監視部17を備える。電力量監視部17以外の機能ブロックについては、第1実施形態の情報処理装置100と同じであるため説明を省略する。
電力量監視部17は、情報処置装置100の電力量を監視する。電力量監視部17は,電力量を調べるには、電力量監視部17に電力量を問い合わせる。電力量監視部17は、電力量計測装置38から電力量を取得する。図10は、第2実施形態の情報処理装置100の第2制御部20の動作の一例を説明するためのフローチャートである。第2リクエスト処理部21は、第2デバイス27の処理開始の指示を含む第2リクエストを受信する(ステップS31)。電力量監視部17は、情報処置装置100の電力量が閾値(所定の値)以上であるか否かを判定する(ステップS32)。電力量が閾値以上である場合(ステップS32、Yes)は、ステップS36に進む。電力量が閾値より小さい場合(ステップS32、No)は、第2リクエスト処理部21(判定部29)が、第1デバイス15が動作中(アクティブ状態)であるか否かを調べる(ステップS33)。第2リクエスト処理部21(判定部29)は、第1デバイス15が動作中(アクティブ状態)であるか否かを判定する(ステップS34)。第1デバイス15がアクティブ状態でない場合(ステップS34、No)は、記憶部22が、第2リクエストを記憶する(ステップS35)。第1デバイス15がアクティブ状態である場合(ステップS34、Yes)は、第2実行部25が、第2リクエスト(第2リクエストにより指示される動作)の実行を第2デバイスが開始できるように第2デバイスコントローラに指示し、第2デバイスコントローラは第2デバイスに処理の実行を開始させる(ステップS36)。
本実施形態の情報処理装置100によれば、情報処置装置100に蓄積している電力量が閾値以下の場合にのみ、第2デバイス27のアクティブ状態のタイミングを、第1デバイス15のアクティブ状態に合わせる。これにより、情報処理装置100の省電力化を図りつつ、電力量に余裕がある場合は、リクエストの受信と実行開始のタイミングの差を小さくすることができる。
(第3実施形態)
次に、第3実施形態の情報処理装置100について説明する。第1実施形態の情報処理装置100は、第1デバイス15および第1デバイスコントローラが1つだった。しかしながら、情報処理装置100は、第1デバイス15を複数(任意の個数)備えていてもよい。本実施形態の情報処理装置100は、第1デバイス15を複数備えている場合である。
図11は、第3実施形態の情報処理装置100の機能ブロックの一例を示す図である。本実施形態の情報処理装置100は、第1制御部10、第1デバイスコントローラ14、第1デバイス15、第2制御部20、第2デバイスコントローラ26、第2デバイス27、PMIC39、クロック制御モジュール31を備える。本実施形態の情報処理装置100は、第1制御部10、第1デバイスコントローラ14、及び第1デバイス15を、それぞれ3つ備えている場合の例である。第1制御部10は、第1リクエスト処理部11、通知部12及び第1実行部13を備える。第2制御部20は、第2リクエスト処理部21、記憶部22、タイマ設定部23、第1デバイス判定部24、通知受信部24及び第2実行部25を備える。本実施形態の情報処理装置100は、第1デバイス判定部24を3つ備え、それぞれが、3つの第1デバイス15のうちの1つのアクティブ状態を判定している。
本実施形態の情報処理装置100の具体例について説明する。例えば、EPDと無線LANデバイスを第1デバイス15(基準となるデバイス)にする場合について説明する。この場合、たとえば、第1制御部10を、基準のデバイス(EPD及び無線LANデバイス)のデバイスドライバに組み込む。また、第2制御部20を、基準となるデバイスのアクティブ状態に、動作の開始を合わせたい第2デバイス27のデバイスドライバに組み込む。これにより、第2デバイス27は、複数の第1デバイス15のうちアクティブ状態の第1デバイス15が1つでもあれば、第2リクエストにより指示される動作の実行を開始することができる。
次に、本実施形態の情報処理装置100のデバイス制御方法による効果について説明する。第1デバイス15が2つであり、第2デバイス27が1つである場合について、具体例に基づいて説明する。図12は、第3実施形態の情報処理装置100のデバイス制御方法の一例を示す図である。本実施形態の情報処理装置100(図12の具体例の場合)は、第1デバイス15(NANDフラッシュ及び無線LANデバイス)のいずれか1つがアクティブ状態である場合に、第2デバイス27(処理の短いデバイス)の動作を開始させる。これにより、従来の情報処理装置100よりもアイドル状態を長くすることができ、情報処理装置100を省電力化することができる。すなわち、SoC30を消費電力の少ないアイドル状態にしたり、メインメモリ40を省電力モードや電源オフ状態にしたりすることができる時間を長くすることができる。また、PMIC39がデバイスに電力を供給する時間を短くすることができる。
(第4実施形態)
次に、第4実施形態の情報処理装置100について説明する。情報処理装置100は、第2デバイス27を複数(任意の個数)備えていてもよい。本実施形態の情報処理装置100は、第2デバイス27を複数備えている場合である。
本実施形態の情報処理装置100では、第1デバイス15をEPDとし、第2デバイス27を、NANDフラッシュ及び無線LANデバイスとする。この理由について説明する。デバイスがアクティブ状態になるタイミングを合わせるには、基準となるデバイスを決めて、基準となるデバイスがアクティブ状態である時間に、他のデバイスがアクティブ状態になるタイミングを合わせる方法が望ましい。デバイスの平均的なアクティブ状態の時間を比較すると、EPDは、NANDフラッシュや無線LANデバイスと比べてアクティブ状態になる時間が長い。また、NANDフラッシュを用いる処理のうち、NANDフラッシュの書き込み処理は、メインメモリ40上のページキャッシュの書き込み処理であるため、多少タイミングが遅れても問題になることが無い。また、メインメモリ40を不揮発性にした場合、電力が失われてもメインメモリ40上のページキャッシュを失うことが無いため、書き込みが遅れることによる問題発生の可能性は更に小さくなる。また、無線LANデバイスについても、元々ネットワーク処理は遅延することが前提であるため、無線LANデバイスの処理を遅延させても問題にはなりにくい。
したがって、本実施形態の情報処理装置100では、EPDをアクティブ状態のタイミングを合わせる基準とすることが望ましい。ただし、基準となるデバイスはEPDに限定されない。例えば、表示デバイス41としてEPDではなく、液晶ディスプレイを用いるパーソナルコンピュータのような情報処理装置100では、無線LANデバイスやNANDフラッシュのアクティブ状態が、他のデバイスと比べて相対的に大きくなることが多い。このような場合は、基準となるデバイスを無線LANデバイスやNANDフラッシュにしてもよい。
図13は、第4実施形態の情報処理装置100の機能ブロックの一例を示す図である。本実施形態の情報処理装置100は、第1制御部10、第1デバイス15、第2制御部20及び第2デバイス27を備える。本実施形態の情報処理装置100は、第2制御部20及び第2デバイス27を、それぞれ3つ備えている場合の例である。第1制御部10は、第1リクエスト処理部11、通知部12及び第1実行部13を備える。本実施形態の通知部12は、3つの第2制御部20(通知受信部24)に、第1リクエストを受信したことを通知する。図13には、通知部12が第2制御部と一対一に対応するように図示されているが、一つの通知部12が複数の第2制御部に受信を通知するような形態でもよい。第2制御部20は、第2リクエスト処理部21、記憶部22、タイマ設定部23、第1デバイス判定部24、通知受信部24及び第2実行部25を備える。
次に、本実施形態の情報処理装置100のデバイス制御方法による効果について、第1デバイス15が1つであり、第2デバイス27が2つである場合について、具体例に基づいて説明する。図14は、従来の情報処理装置のデバイス制御方法の一例を示す図である。図14では、それぞれのデバイスが、独立にアクティブ状態になっているため、アクティブ状態である時間の重なりがあまり無い。そのため、すべてのデバイスがアクティブ状態でない期間が短いため、情報処理装置100がアイドル状態になる期間が短い。
図15は、第4実施形態の情報処理装置100のデバイス制御方法の一例を示す図である。本実施形態の情報処理装置100は、第1デバイス15(EPD)がアクティブ状態である場合に、第2デバイス27(NANDフラッシュ及び無線LANデバイス)の動作を開始させる。これにより、従来の情報処理装置100よりもアイドル状態を長くすることができ、情報処理装置100を省電力化することができる。すなわち、SoC30を消費電力の少ないアイドル状態にしたり、メインメモリ40を省電力モードや電源オフ状態にしたりすることができる時間を長くすることができる。また、PMIC39がデバイスに電力を供給する時間を短くすることができる。
本実施形態の情報処理装置100は、第1制御部10の通知部12が、情報処理装置100を構成するそれぞれの第2デバイス27に、第1リクエストを受信したことを通知する。これにより、本実施形態の情報処理装置100は、第2デバイス27の数が任意でも、第1実施形態の情報処理装置100が奏する効果と同様の効果を奏する。
以上のように、第1〜4実施形態の情報処理装置100によれば、情報処理装置100のデバイスのハードウェア構成を変更せずに省電力化を実現することができる。
なお、情報処理装置100を構成するデバイスは、任意のデバイスでよい。上述の実施形態では説明しなかったデバイスの具体例として、デバイスがプロセッサである場合について説明する。
図16は、第1実施形態の変形例(第2デバイスがプロセッサの例)の情報処理装置100の機能ブロックの構成の一例を示す図である。図1の第2デバイスコントローラ26及び第2デバイス27が、図16では、第2プロセッサ47となるところが図1とは異なる。この場合は、第2プロセッサ47上で実行するプログラムの実行開始を第1デバイスがアクティブ状態であるときに合わせることになる。
具体的なプログラムの処理の例としては、例えば、アプリケーションが実行するGC(Garbage Collection)がある。GCは、アプリケーションが確保したメモリ領域のうち、不要となったメモリ領域を解放するための処理である。GCは、処理の負荷が大きいが、開始のタイミングの制約が厳しくなく、開始タイミングが遅れても大きな問題が無いという特徴がある。そのため、アプリケーションの中でGCを呼び出す箇所に第2制御部20を組込むことで、GCの実行のタイミングを第1デバイス(基準となるデバイス)のアクティブ状態に合わせれば、情報処理装置100の省電力化を実現できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 第1制御部
11 第1リクエスト処理部
12 通知部
13 第1実行部
14 第1デバイスコントローラ
15 第1デバイス
16 アクティブ状態フラグ管理部
17 電力量監視部
20 第2制御部
21 第2リクエスト処理部
22 記憶部
23 タイマ設定部
24 通知受信部
25 第2実行部
26 第2デバイスコントローラ
27 第2デバイス
28 受信部
29 判定部
30 SoC
31 クロック制御モジュール
32 プロセッサコア
33 バス
34 メモリコントローラ
35 EPDコントローラ
36 NANDコントローラ
37 無線LANコントローラ
38 電力量計測装置
39 PMIC
40 メインメモリ
41 EPD
42 NANDフラッシュ
43 無線LANデバイス
44 蓄電装置
45 電源装置
46 プロセッサ
100 情報処置装置

Claims (9)

  1. 第1デバイスの動作を制御する第1制御部と、
    第2デバイスの動作を制御する第2制御部とを備え、
    前記第1制御部は、
    前記第1デバイスの処理開始の指示を含む第1リクエストを受信する第1リクエスト処理部と、
    前記第1リクエストを受信したことを前記第2制御部に通知する通知部と、
    前記第1リクエストにより指示される動作を実行する第1実行部とを備え、
    前記第2制御部は、
    前記第2デバイスの処理開始の指示を含む第2リクエストを受信する第2リクエスト処理部と、
    前記第2リクエスト処理部が前記第2リクエストを受信したときに、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶する記憶部と、
    前記通知を受信する通知受信部と、
    前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストを実行する第2実行部と
    を備える情報処理装置。
  2. 前記第2制御部は、
    前記情報処理装置の電力量を監視する電力量監視部を更に備え、
    前記第2実行部は、前記電力量が所定の値以上ある場合は、前記第2リクエスト処理部が受信した前記第2リクエストを実行する
    請求項1に記載の情報処理装置。
  3. 前記情報処理装置は、
    複数の前記第1制御部を備え、
    前記第2実行部は、
    いずれか1つの前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストを実行する
    請求項1又は2に記載の情報処理装置。
  4. 前記情報処理装置は、
    複数の前記第2制御部を備え、
    前記通知部は、
    前記複数の第2制御部の前記通知受信部に前記通知を通知し、
    前記第2実行部は、
    前記第1デバイスがアクティブ状態である場合に、前記第2リクエスト処理部が受信した前記第2リクエストを実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストを実行する
    請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記第2デバイスは、プロセッサであり、
    前記第2リクエストは、前記プロセッサで実行するプログラムの実行開始を指示するリクエストである
    請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記第2制御部は、
    前記第2リクエストを前記記憶部に記憶するときにタイマを設定するタイマ設定部を更に備え、
    前記第2実行部は、
    前記タイマが満了したときに、前記記憶部に記憶された前記第2リクエストを実行する
    請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 第1デバイスの動作を制御する第1制御部と、
    第2デバイスの動作を制御する第2制御部とを備え、
    前記第1制御部は、
    前記第1デバイスの処理開始の指示を含む第1リクエストを受信する第1リクエスト処理部と、
    前記第1リクエストを受信したことを前記第2制御部に通知する通知部と、
    前記第1リクエストにより指示される動作を実行する第1実行部とを備え、
    前記第2制御部は、
    前記第2デバイスの処理開始の指示を含む第2リクエストを受信する第2リクエスト処理部と、
    前記通知を受信する通知受信部と、
    前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が前記第2リクエストを受信すると、受信した前記第2リクエストを実行し、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエスト処理部が前記第2リクエストを受信すると、前記通知を受信してから前記第2リクエストを実行する第2実行部と
    を備える情報処理装置。
  8. 第1デバイスの動作を制御する第1制御部と、第2デバイスの動作を制御する第2制御部とを備える情報処理装置のデバイス制御方法であって、
    前記第1制御部の第1リクエスト処理部が、前記第1デバイスの処理開始の指示を含む第1リクエストを受信するステップと、
    前記第1制御部の通知部が、前記第1リクエストを受信したことを前記第2制御部に通知するステップと、
    前記第1制御部の第1実行部が、前記第1リクエストにより指示される動作を実行するステップと、
    前記第2制御部の第2リクエスト処理部が、前記第2デバイスの処理開始の指示を含む第2リクエストを受信するステップと、
    前記第2制御部の記憶部が、前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶するステップと、
    前記第2制御部の通知受信部が、前記通知を受信するステップと、
    前記第2制御部の第2実行部が、前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストを実行するステップと
    を含むデバイス制御方法。
  9. 第1デバイスの動作を制御する第1制御部と、
    第2デバイスの動作を制御する第2制御部として機能させるためのプログラムであって、
    前記第1制御部は、
    前記第1デバイスの処理開始の指示を含む第1リクエストを受信する第1リクエスト処理部と、
    前記第1リクエストを受信したことを前記第2制御部に通知する通知部と、
    前記第1リクエストにより指示される動作を実行する第1実行部と、を備え、
    前記第2制御部は、
    前記第2デバイスの処理開始の指示を含む第2リクエストを受信する第2リクエスト処理部と、
    前記第1デバイスがアクティブ状態でない場合に、前記第2リクエストを記憶する記憶部と、
    前記通知を受信する通知受信部と、
    前記第1デバイスがアクティブ状態の場合に、前記第2リクエスト処理部が受信した前記第2リクエストを実行し、前記通知受信部が前記通知を受信したときに、前記記憶部に記憶されていた前記第2リクエストを実行する第2実行部と、を備える、
    プログラム。
JP2013040176A 2013-02-28 2013-02-28 情報処理装置、デバイス制御方法及びプログラム Expired - Fee Related JP6054203B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013040176A JP6054203B2 (ja) 2013-02-28 2013-02-28 情報処理装置、デバイス制御方法及びプログラム
TW103105706A TW201433920A (zh) 2013-02-28 2014-02-20 資訊處理裝置、元件控制方法、及電腦程式產品
CN201410057361.XA CN104020836A (zh) 2013-02-28 2014-02-20 信息处理装置以及设备控制方法
US14/190,378 US9619001B2 (en) 2013-02-28 2014-02-26 Information processing apparatus, device control method and computer program product for saving power

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013040176A JP6054203B2 (ja) 2013-02-28 2013-02-28 情報処理装置、デバイス制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2014167781A JP2014167781A (ja) 2014-09-11
JP6054203B2 true JP6054203B2 (ja) 2016-12-27

Family

ID=51389499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013040176A Expired - Fee Related JP6054203B2 (ja) 2013-02-28 2013-02-28 情報処理装置、デバイス制御方法及びプログラム

Country Status (4)

Country Link
US (1) US9619001B2 (ja)
JP (1) JP6054203B2 (ja)
CN (1) CN104020836A (ja)
TW (1) TW201433920A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6116941B2 (ja) 2013-02-28 2017-04-19 株式会社東芝 情報処理装置
JP6087662B2 (ja) 2013-02-28 2017-03-01 株式会社東芝 制御装置、制御プログラム及び情報処理システム
JP6071647B2 (ja) 2013-02-28 2017-02-01 株式会社東芝 情報処理装置、動作状態制御方法及びプログラム
JP2015064676A (ja) 2013-09-24 2015-04-09 株式会社東芝 情報処理装置、半導体装置、情報処理方法およびプログラム
JP6184891B2 (ja) 2014-03-12 2017-08-23 東芝メモリ株式会社 情報処理装置、半導体チップ、情報処理方法およびプログラム

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4856050A (en) * 1984-01-30 1989-08-08 Theis Peter F Telephone message retrieval system with improved message processor and retrieval console including auto-disabling playback switch
US5778882A (en) * 1995-02-24 1998-07-14 Brigham And Women's Hospital Health monitoring system
JP3399178B2 (ja) * 1995-09-18 2003-04-21 カシオ計算機株式会社 電源制御装置及び方法
TW200717334A (en) * 2005-10-21 2007-05-01 Carry Computer Eng Co Ltd Portable storage device with timer and application information displaying function, and a method thereof
US7913100B2 (en) * 2007-09-29 2011-03-22 Intel Corporation Opportunistic initiation of data traffic
KR20110055094A (ko) * 2009-11-19 2011-05-25 삼성전자주식회사 휴대용 단말기에서 전력 소모를 줄이기 위한 장치 및 방법
US8856564B2 (en) * 2009-12-18 2014-10-07 Intel Corporation Method and apparatus for power profile shaping using time-interleaved voltage modulation
US8279213B2 (en) * 2009-12-23 2012-10-02 Intel Corporation Synchronized media processing
US8335532B2 (en) * 2010-01-19 2012-12-18 Qualcomm Incorporated Session-triggered pushing of group communication data
JP4829370B1 (ja) * 2010-07-09 2011-12-07 株式会社東芝 メモリ制御装置、メモリ装置および停止制御方法
JP5170189B2 (ja) * 2010-09-15 2013-03-27 Necシステムテクノロジー株式会社 電池駆動装置、電池駆動方法およびプログラム
JP5372049B2 (ja) * 2011-02-04 2013-12-18 株式会社東芝 メモリシステム
JP5614347B2 (ja) * 2011-03-18 2014-10-29 富士通株式会社 情報処理装置、電力制御方法、および電力制御プログラム
JP5284401B2 (ja) 2011-03-24 2013-09-11 株式会社東芝 動作切替装置およびプログラム
JP2012203583A (ja) 2011-03-24 2012-10-22 Toshiba Corp 情報処理装置およびプログラム
US8949637B2 (en) * 2011-03-24 2015-02-03 Intel Corporation Obtaining power profile information with low overhead
JP5340335B2 (ja) 2011-03-24 2013-11-13 株式会社東芝 情報処理装置
JP5318139B2 (ja) * 2011-03-24 2013-10-16 株式会社東芝 制御装置およびプログラム
JP2013020593A (ja) * 2011-07-14 2013-01-31 Renesas Mobile Corp 半導体装置、それを用いた無線通信端末、及び電源制御方法
JP2013065150A (ja) 2011-09-16 2013-04-11 Toshiba Corp キャッシュメモリ装置、プロセッサ、および情報処理装置
JP5674611B2 (ja) 2011-09-22 2015-02-25 株式会社東芝 制御システム、制御方法およびプログラム
JP5777467B2 (ja) 2011-09-22 2015-09-09 株式会社東芝 制御装置およびプログラム
JP5674613B2 (ja) 2011-09-22 2015-02-25 株式会社東芝 制御システム、制御方法およびプログラム
JP2013149093A (ja) 2012-01-19 2013-08-01 Toshiba Corp 制御装置、制御方法、プログラムおよび電子機器
JP5665777B2 (ja) 2012-01-20 2015-02-04 株式会社東芝 制御装置、システムおよびプログラム
JP2013218672A (ja) 2012-03-14 2013-10-24 Toshiba Corp 状態制御装置、情報処理装置、プログラム、および半導体装置
JP6113538B2 (ja) 2012-03-23 2017-04-12 株式会社東芝 制御装置、制御方法、プログラムおよび半導体装置
JP5677376B2 (ja) 2012-07-06 2015-02-25 株式会社東芝 メモリ制御装置、半導体装置、およびシステムボード
JP2014016782A (ja) 2012-07-09 2014-01-30 Toshiba Corp 情報処理装置およびプログラム
JP5787852B2 (ja) 2012-09-07 2015-09-30 株式会社東芝 制御装置、情報処理装置、制御方法およびプログラム
JP5696110B2 (ja) 2012-09-19 2015-04-08 株式会社東芝 電源システム、電源制御装置およびプログラム
JP5802637B2 (ja) 2012-09-21 2015-10-28 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP2014102401A (ja) 2012-11-20 2014-06-05 Toshiba Corp 制御装置、及び情報処理装置
JP6116941B2 (ja) 2013-02-28 2017-04-19 株式会社東芝 情報処理装置
JP6071647B2 (ja) 2013-02-28 2017-02-01 株式会社東芝 情報処理装置、動作状態制御方法及びプログラム
JP6087662B2 (ja) 2013-02-28 2017-03-01 株式会社東芝 制御装置、制御プログラム及び情報処理システム

Also Published As

Publication number Publication date
TW201433920A (zh) 2014-09-01
JP2014167781A (ja) 2014-09-11
CN104020836A (zh) 2014-09-03
US20140245039A1 (en) 2014-08-28
US9619001B2 (en) 2017-04-11

Similar Documents

Publication Publication Date Title
EP2936272B1 (en) Reducing power consumption of volatile memory via use of non-volatile memory
US20140173311A1 (en) Methods and Systems for Operating Multi-Core Processors
KR101459866B1 (ko) 온 더 플라이 메모리 컨트롤러 맵핑
JP6054203B2 (ja) 情報処理装置、デバイス制御方法及びプログラム
US20140196050A1 (en) Processing system including a plurality of cores and method of operating the same
EP2915019B1 (en) System and method for dynamic memory power management
US9965384B2 (en) Method for managing multi-channel memory device to have improved channel switch response time and related memory control system
JP6113538B2 (ja) 制御装置、制御方法、プログラムおよび半導体装置
US20140244960A1 (en) Computing device, memory management method, and program
JP2015064676A (ja) 情報処理装置、半導体装置、情報処理方法およびプログラム
KR101410596B1 (ko) 정보 처리 장치, 카피 제어 프로그램 및 카피 제어 방법
US10175995B1 (en) Device hibernation control
US9996398B2 (en) Application processor and system on chip
JP2011203905A (ja) メモリシステム
JP2013218672A (ja) 状態制御装置、情報処理装置、プログラム、および半導体装置
JP2011095916A (ja) 電子機器
JP2014016782A (ja) 情報処理装置およびプログラム
JP2013222321A (ja) メモリ制御装置、メモリ制御方法、情報処理装置、およびプログラム
CN103076868B (zh) 电源管理方法及应用该方法的电子系统
US9625970B2 (en) Information processing apparatus, operation state control method, and computer program product
JP2014194634A (ja) 情報処理装置、情報処理方法、並びに記録媒体
JP6640776B2 (ja) メモリシステム
JP2010044460A (ja) 電源制御装置、計算機システム、電源制御方法、電源制御プログラムおよび記録媒体
US10430096B2 (en) Hybrid storage device, computer, control device, and power consumption reduction method
US10496303B2 (en) Method for reducing power consumption memory, and computer device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150914

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20151102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161014

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161130

R151 Written notification of patent or utility model registration

Ref document number: 6054203

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees