説明

情報処理装置

【課題】動作周波数の制御を行い、好適に消費電力の低減を行うと同時に、DMA転送処理については処理性能を高く維持することができる情報処理装置を提供する。
【解決手段】CPU46と、所定の動作周波数のクロック信号を供給するクロック供給手段51と、CPU46のアイドル率を一定時間毎に取得するCPUアイドル率取得手段53と、CPUアイドル率取得手段53により取得されたアイドル率に基づき、クロック供給手段51から供給されるクロック信号の動作周波数を決定するクロック制御手段52と、クロック信号に同期してDMA転送を実行するDMA転送手段47とを備えた。クロック制御手段52は、DMA転送実行中であるか否かを判定し、DMA転送実行中ではないと判定した場合には、動作周波数をアイドル率に基づき決定された動作周波数に制御し、DMA転送実行中であると判定した場合には、動作周波数を所定の周波数に制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置に係り、特にDMA転送を好適に実行する情報処理装置に関する。
【背景技術】
【0002】
近年、携帯電話機を代表とする内蔵バッテリで駆動される情報処理装置は、外出先や移動中において広く使用されている。また、この情報処理装置は、音声通話機能、電子メール機能のみならず、動画データや音楽データなどの再生機能、ワンセグ放送の視聴・録画機能などが備えられ、高機能化が図られている。
【0003】
このような情報処理装置の高機能化に伴い、動作周波数の増大によるプロセッサの高性能化が必須となっている。しかし、情報処理装置は、動作周波数の増大に伴い消費電力が増大する。このため、特に携帯電話などのモバイル機器においては、内蔵バッテリの駆動時間が短くなり、長時間の連続使用が不可能となるという課題があった。
【0004】
そこで、従来、動作周波数を変化させることにより、情報処理装置の電力消費を削減することができる技術が開示されている(例えば、特許文献1参照)。また、CPUのアイドル率を一定時間毎に取得し、取得したCPUのアイドル率に応じて動作周波数を変更する技術も知られている。
【特許文献1】特開2002−99432号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
情報処理装置には、CPUを介さずにメモリとメモリ間またはメモリと外部記憶装置間で直接データを転送するDMA(Direct Memory Access)転送を実行するDMAコントローラが設けられている。近年このDMAコントローラにより実行されるDMA転送速度がCPUの動作周波数を決めるクロックに依存している情報処理装置が多く作られており、その場合当然ながらDMA転送速度はCPUの動作周波数が高いほど速くなる。
【0006】
ここで、CPUはアイドル状態となる場合がある。上述の通り、DMA転送速度がCPUの動作周波数を決めるクロックに依存している情報処理装置において、CPUがアイドル状態になると、動作周波数が低下してしまう。そして、動作周波数の低下に伴って、DMA転送速度が低下し、DMA転送時間の長期化につながる。
【0007】
このように、従来のCPUの動作周波数の制御技術においては、DMA転送速度については十分に考慮されていなかった。
【0008】
本発明はこのような事情を考慮してなされたもので、動作周波数の制御を行い、好適に消費電力の低減を行うと同時に、DMA転送処理について処理性能を高く維持することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る情報処理装置は、上述した課題を解決するために、CPUと、所定の動作周波数のクロック信号を供給するクロック供給手段と、前記CPUのアイドル率を一定時間毎に取得するCPUアイドル率取得手段と、前記CPUアイドル率取得手段により取得された前記CPUのアイドル率に基づき、前記クロック供給手段から供給される前記クロック信号の動作周波数を決定するクロック制御手段と、前記クロック供給手段から供給された前記クロック信号に同期してDMA転送を実行するDMA転送手段とを備え、前記クロック制御手段は、前記DMA転送実行中であるか否かを判定し、前記DMA転送実行中ではないと判定した場合には、前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御し、前記DMA転送実行中であると判定した場合には、前記クロック信号の動作周波数を所定の周波数に制御することを特徴とする。
【0010】
また、本発明に係る情報処理装置は、上述した課題を解決するために、CPUと、所定の動作周波数のクロック信号を供給するクロック供給手段と、前記CPUのアイドル率を一定時間毎に取得するCPUアイドル率取得手段と、前記CPUアイドル率取得手段により取得された前記CPUのアイドル率に基づき、前記クロック供給手段から供給される前記クロック信号の動作周波数を決定するクロック制御手段と、前記クロック供給手段から供給された前記クロック信号に同期してDMA転送を実行するDMA転送手段とを備え、前記クロック制御手段は、前記DMA転送実行中であるか否かを判定し、前記DMA転送実行中ではない場合には、前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御し、その後前記DMA転送実行が開始された場合には、前記CPUのアイドル率にかかわらず前記クロック信号の動作周波数を所定の周波数以上に制御することを特徴とする。
【発明の効果】
【0011】
本発明に係る情報処理装置は、動作周波数の制御を行い、好適に消費電力の低減を行うと同時に、DMA転送処理について処理性能を高く維持することができる。
【発明を実施するための最良の形態】
【0012】
本発明に係る情報処理装置の実施形態を添付図面に基づいて説明する。図1は、本発明に係る情報処理装置の実施形態を示す携帯電話機の外観の構成を示す図である。図1(A)は、携帯電話機1を約180度に開いた開状態のときの正面から見た外観の構成を示し、(B)は、携帯電話機1を開状態としたときの右側面から見た外観の構成を示す。
【0013】
図1(A)および(B)に示されるように、携帯電話機1は、中央のヒンジ部11を境に第一の筐体12と第二の筐体13とがヒンジ結合されており、ヒンジ部11を介して矢印X方向に折り畳み可能に形成される。携帯電話機1の内部の所定の位置には、送受信用のアンテナが設けられており、内蔵されたアンテナを介して基地局(図示せず)との間で電波を送受信する。
【0014】
第一の筐体12には、その表面に「0」から「9」の数字キー、発呼・応答キー、リダイヤルキー、終話・電源キー、クリアキー、およびメニューキーなどの操作キー14が設けられており、操作キー14を用いて各種指示を入力することができる。
【0015】
第一の筐体12には、操作キー14として上部に十字キー16と確定キー17が設けられている。十字キー16には、上方向キー、下方向キー、右方向キー、左方向キーが設けられており、使用者が十字キー16を上下左右方向に操作することによりメインディスプレイ21に表示されたカーソルなどを上下左右方向に移動させることができる。また、確定キー17を押下することにより、種々の機能を確定することができる。確定キー17には、メインディスプレイ21の下部に設けられた確定キー機能表示部21aに表示される処理も割り当てられる。
【0016】
さらに、第一の筐体12には、左ソフトキー18および右ソフトキー19が十字キー16および確定キー17の上部にそれぞれ設けられる。第一の筐体12の側面には、携帯電話機1の操作を行うサイドキー20が設けられる。左ソフトキー18、右ソフトキー19およびサイドキー20は、第一の筐体12の内部方向に押下されることによって、それぞれ所定の処理が割り当てられている。特に左ソフトキー18および右ソフトキー19は、メインディスプレイ21の下部に設けられた左ソフトキー機能表示部21bおよび右ソフトキー機能表示部21cに表示される処理が割り当てられる。
【0017】
第一の筐体12には、操作キー14の下部にマイクロフォン22が設けられており、マイクロフォン22によって通話時の使用者の音声を集音する。
【0018】
なお、第一の筐体12は、背面側に図示しないバッテリパックが挿着されており、終話・電源キーが押下されてオン状態になると、バッテリパックから各回路部に対して電力が供給されて動作可能な状態に起動する。
【0019】
一方、第二の筐体13には、その正面にメインディスプレイ21が設けられており、電波の受信状態、電池残量の他、電子メールの内容、簡易ホームページなどを表示することができる。なお、メインディスプレイ21は、例えばLCD(Liquid Crystal Display)、有機EL(ElectroLuminescence)ディスプレイ、無機EL(inorganic ElectroLuminescence)ディスプレイにより構成されるディスプレイである。
【0020】
また、メインディスプレイ21の上部の所定の位置にはレシーバ(受話器)23が設けられており、これにより、使用者は音声通話することが可能である。なお、携帯電話機1の所定の位置には、レシーバ23以外の音声出力部としてのスピーカ(図示せず)も設けられている。テレビ電話通信時には、このスピーカから通話相手の音声が出力される。
【0021】
携帯電話機1は、第一の筐体12と第二の筐体13の内部の所定の位置に、携帯電話機1の筐体12、13の状態を検出するための磁気センサ24a、24b、24c、および24d(磁気センサ24)が設けられる。
【0022】
図2は、本発明に係る情報処理装置の第1実施形態を示す携帯電話機の他の外観の構成を示す図である。図2の携帯電話機1は、図1の携帯電話機1の状態から矢印X方向に回動させた閉状態を構成する。図2(A)は、携帯電話機1が閉状態のときの正面から見た外観の構成を示し、(B)は、携帯電話機1が閉状態のときの右側面から見た外観の構成を示す。
【0023】
第二の筐体13には、例えばLCDで構成されるサブディスプレイ25が設けられており、現在のアンテナの感度のレベルを示すアンテナピクト、携帯電話機1の現在の電池残量を示す電池ピクト、現在の時刻などが表示される。
【0024】
また、第一の筐体12の左側面には、外部メモリインタフェース26および外部接続端子27を備える。外部メモリインタフェース26は、メモリカードを着脱することが可能なスロットを備えている。メモリカードは、NAND型フラッシュメモリカードやNOR型フラッシュメモリカードなどに代表されるフラッシュメモリカードの一種であり、10ピン端子を介して画像や音声、音楽などの各種データの書き込みおよび読み出しが可能となっている。外部接続端子27は、バッテリの充電を行う際に用いられる充電ケーブル、パーソナルコンピュータなどと携帯電話機1とを接続させる際に用いられるUSBケーブルなどの各種外部機器と接続される端子である。
【0025】
図3は、第1実施形態における携帯電話機の内部の構成を示す図である。図示せぬ基地局から送信されてきた無線信号は、アンテナ31で受信された後、アンテナ共用器(DUP)32を介して受信回路(RX)33に入力される。受信回路33は、受信された無線信号を周波数シンセサイザ(SYN)34から出力された局部発振信号とミキシングして中間周波数信号に周波数変換(ダウンコンバート)する。そして、受信回路33は、このダウンコンバートされた中間周波数信号を直交復調して受信ベースバンド信号を出力する。
【0026】
受信回路33からの受信ベースバンド信号は、CDMA信号処理部36に入力される。CDMA信号処理部36は、図示せぬRAKE受信機を備える。このRAKE受信機では、受信ベースバンド信号に含まれる複数のパスがそれぞれの拡散符号(すなわち、拡散された受信信号の拡散符号と同一の拡散符号)で逆拡散処理される。そして、この逆拡散処理された各パスの信号は、位相が調停された後、コヒーレントRake合成される。Rake合成後のデータ系列は、デインタリーブおよびチャネル復号(誤り訂正復号)が行われた後、2値のデータ判定が行われる。これにより、所定の伝送フォーマットの受信パケットデータが得られる。この受信パケットデータは、圧縮伸張処理部37に入力される。
【0027】
圧縮伸張処理部37は、DSP(Digital Signal Processor)などにより構成され、CDMA信号処理部36から出力された受信パケットデータを図示せぬ多重分離部によりメディアごとに分離し、分離されたメディアごとに対してそれぞれ復号処理を行う。
【0028】
圧縮伸張処理部37のビデオコーデックにて復号されたディジタル動画像信号は、制御部41に入力される。制御部41は、圧縮伸張処理部37から出力されたディジタル動画像信号に基づく動画像を、図示せぬビデオRAM(例えばVRAMなど)を介してメインディスプレイ21に表示させる。
【0029】
一方、通話モードにおいて、マイクロフォン22に入力された話者(使用者)の音声信号(アナログオーディオ信号)は、送話増幅器40により適正レベルまで増幅された後、PCMコーデック38によりPCM符号化される。このPCM符号化後のディジタルオーディオ信号は、圧縮伸張処理部37に入力される。また、制御部41にて作成された電子メールなどのテキストデータも圧縮伸張処理部37に入力される。
【0030】
圧縮伸張処理部37は、PCMコーデック38から出力されたディジタルオーディオ信号を所定の送信データレートに応じたフォーマットで圧縮符号化する。これにより、オーディオデータが生成される。また、圧縮伸張処理部37は、制御部41から出力されたディジタル動画像信号を圧縮符号化して動画像データを生成する。そして、圧縮伸張処理部37は、これらのオーディオデータや動画像データを図示せぬ多重分離部で所定の伝送フォーマットに従って多重化した後にパケット化し、パケット化後の送信パケットデータをCDMA信号処理部36に出力する。
【0031】
CDMA信号処理部36は、圧縮伸張処理部37から出力された送信パケットデータに対し、送信チャネルに割り当てられた拡散符号を用いてスペクトラム拡散処理を施し、スペクトラム拡散処理後の出力信号を送信回路(TX)35に出力する。送信回路35は、スペクトラム拡散処理後の信号をQPSK(Quadrature Phase Shift Keying)方式などのディジタル変調方式を使用して変調する。送信回路35は、ディジタル変調後の送信信号を、周波数シンセサイザ34から発生される局部発振信号と合成して無線信号に周波数変換(アップコンバート)する。そして、送信回路35は、制御部41により指示される送信電力レベルとなるように、このアップコンバートにより生成された無線信号を高周波増幅する。この高周波増幅された無線信号は、アンテナ共用器32を介してアンテナ31に供給され、このアンテナ31から図示せぬ基地局に向けて送信される。
【0032】
電源回路44は、バッテリ43の出力を元に所定の動作電源電圧Vccを生成して各回路部に供給する。
【0033】
クロック供給回路51は、所定の動作周波数を持ったクロック信号を生成し、携帯電話機1の各部に供給する。CPUアイドル率取得部53は、CPU46のアイドル率を取得してクロックレベル制御部52に供給する。CPUアイドル率取得部53は、例えば、一定時間あたりにスリープタスクがCPU46を占有した割合で求めることができる。クロックレベル制御部52は、取得したCPU46のアイドル率に応じて、クロック供給回路51から各部に供給されるクロック信号の周波数レベル(クロックレベル)を決定し、クロック供給回路51を制御する。クロックレベルは、所定の動作周波数が割り当てられた複数のレベル(例えば1〜4レベル)間で段階的に制御される。
【0034】
本実施形態においては、クロックレベルが大きくなると、動作周波数が大きいとし、クロックレベルが小さくなると動作周波数が小さいとして説明する。なお、CPU46は内部クロックに基づいて動作するが、この内部クロックはクロック供給回路51より供給されるクロック信号(外部クロック)の動作周波数に比例した依存関係を有する。
【0035】
制御部41は、主に、CPU46(central Processing Unit)、ROM48(Read Only Memory)、およびRAM49(Random Access Memory)、DMA(Direct Memory Access)コントローラ47などからなる。CPU46は、ROM48に記憶されているプログラムまたは記憶部42からRAM49にロードされた各種のアプリケーションプログラムに従って各種の処理を実行するとともに、種々の制御信号を生成し、各部に供給することにより携帯電話機1を統括的に制御する。
【0036】
RAM49は、メインメモリとして機能するDRAM、SDRAMなどであって、CPU46が各種の処理を実行する上において必要なデータなどを適宜記憶する。また、制御部41はビデオRAM50も備え、メインディスプレイ21に表示される映像に関する情報が一時的に格納される。
【0037】
DMAコントローラ47は、CPU46を介さずにメモリとメモリ間またはメモリと外部記憶装置間で直接データを転送するDMA(Direct Memory Access)転送を専用に制御する。DMAコントローラ47は、SDRAMなどのメモリ間、記憶部42とメモリ間、外部メモリインタフェース26に接続されたメモリカード57や、外部接続端子27に接続された外部記憶装置とメモリ間でDMA転送を実行する。
【0038】
記憶部42は、例えば、電気的に書換えや消去が可能な不揮発性メモリであるフラッシュメモリ素子やHDD(Hard Disc Drive)などからなり、CPU46により実行される種々のアプリケーションプログラムや種々のデータ群を格納している。
【0039】
本実施形態における携帯電話機1は、クロック供給回路51より携帯電話機1の各部に供給するクロック信号の動作周波数(外部クロック)が、複数のクロックレベル間で制御可能に構成される。このクロックレベルは、クロック供給回路51のCPUアイドル率取得部53によって取得されたCPU46のアイドル率に応じて決定される。
【0040】
本実施形態における携帯電話機1で実行されるクロックレベル制御処理について説明する。このクロックレベル制御処理は、通常のクロックレベル制御処理とDMA転送開始・終了時におけるクロックレベル制御処理とがあり、これらは非同期に制御が行われる。携帯電話機1が起動中においては、通常のクロックレベル制御処理が所定の時間毎(例えば50ms毎)に実行され、DMA転送開始・終了時におけるクロックレベル制御処理は常時実行される処理である。図4は、本実施形態における携帯電話機1のクロックレベル制御部52で実行される通常のクロックレベル制御処理を説明するフローチャートである。
【0041】
ステップS1において、クロック供給回路51のクロックレベル制御部52は、CPUアイドル率取得部53が算出する一定時間(例えば50msec〜100msec)におけるCPU46のアイドル率を取得する。クロックレベル制御部52は、取得されたCPU46のアイドル率を後述する図5のクロックレベル制御処理で参照可能なように記憶しておくようにしてもよい。CPUアイドル率取得部53は一定時間あたりにスリープタスクがCPU46を占有した割合でCPU46のアイドル率を求めている。
【0042】
ここで、CPU46で実行されるタスクには、それぞれ優先度が付与されている。スリープタスクは、これらのタスクの中で最も低い優先度が付与された特別なタスクであり、常時実行待ち状態となっている。スリープタスクがCPU46を占有した状態は、CPU46において実行中または実行待ち状態の他のタスクが存在しないため、CPU46がアイドル状態であることを示している。
【0043】
ステップS2において、クロックレベル制御部52は、CPUアイドル率取得部53より取得されたCPU46のアイドル率に応じて、クロックレベルを決定する。クロックレベル制御部52は、決定されたクロックレベルを後述する図5のクロックレベル制御で参照可能なように記憶してもよい。クロックレベル制御部52は、CPU46のアイドル率が所定の閾値Aより小さい場合に現在のクロックレベルを現在のクロックレベルより1段階上昇させる。また、クロックレベル制御部52は、CPU46のアイドル率が所定の閾値Bより大きい場合にクロックレベルを現在のクロックレベルより1段階低下させる。
【0044】
CPU46のアイドル率が閾値Aよりも小さい場合には、CPU46がスリープタスク以外のタスクにより占有される割合が高いため、高動作周波数でCPU46を動作させて、タスク処理能力を向上させる必要がある。一方、CPU46のアイドル率が閾値Bよりも大きい場合には、CPU46がスリープタスクにより占有される割合が高いため、低動作周波数でCPU46を動作させることにより省電力化が可能である。
【0045】
閾値Aと閾値Bとは同じ値であってもよいし異なる値であってもよいが、携帯電話機1の省電力化を好適に実現するためには、多少のアイドル率の上昇ではクロックレベルが上昇しにくく、かつ使用率の低下に伴うクロックレベルの変動には追従性を持たせるように閾値Aおよび閾値Bを決定することが望ましい。
【0046】
ステップS3において、クロックレベル制御部52は、DMAコントローラ47によりDMA転送が実行されているか否かの判定を行う。
【0047】
クロックレベル制御部52は、DMA転送実行中であると判定した場合、ステップS4において、ユーザが携帯電話機1の操作中であるか否かの判定を行う。クロックレベル制御部52は、ユーザが携帯電話機1の操作中であるか否かの判定を、例えばメインディスプレイ21が点灯中であるか否か、操作キー14により入力を受け付けてから所定の時間以内であるか否か、操作キー14により入力を受け付けた操作に基づいてDMA転送が実行されたか否か、携帯電話機1の第一の筐体12と第二の筐体13とが開状態であるか否かに基づいて行う。クロックレベル制御部52は、メインディスプレイ21が点灯中であった場合、操作キー14により入力を受け付けた操作に基づいてDMA転送が実行された場合、第一の筐体12と第二の筐体13とが開状態であった場合には、ユーザが携帯電話機1の操作中であると判定する。クロックレベル制御部52は、これらの判定方法の中から一または複数の判定方法を選択して、判定を行うことができる。なお、ステップS4におけるユーザ操作中か否かの判断は全く行うことなく、全てステップS5へ移行するようにしてもよい(つまりユーザ操作中か否かの判断をせずにDMA転送実行中であればステップS5に移行してもよい)。以下に説明するユーザ操作中か否かの判断(図5のステップS12、S15、S18)についても同様に省略可能である。
【0048】
クロックレベル制御部52は、ユーザが携帯電話機1の操作中であると判定した場合、ステップS5において、クロックレベルを最高レベルに制御する(または既に最高レベルであれば、S2において取得したレベルに係わらず最高レベルを維持する)。クロックレベル制御部52は、レベル決定ステップS2において取得したクロックレベルに係わらず最高レベルとすることで、DAM転送速度を向上させることができ、DMA転送を高性能で実行することができる。
【0049】
一方、クロックレベル制御部52は、DMA転送判定ステップS3においてDMA転送実行中ではないと判定した場合、および操作判定ステップS4においてユーザ操作中ではないと判定した場合、ステップS6において、クロックレベルをレベル決定ステップS2において決定されたクロックレベルに制御する。
【0050】
クロックレベル制御部52によりレベル制御ステップS5およびステップS6においてクロックレベルが制御された後、処理はアイドル率取得ステップS1に戻り、再び一定時間のCPU46のアイドル率取得が実行される。以上でクロックレベル制御処理の説明を終了する。
【0051】
なお、レベル制御ステップS5において、最高レベルに限定されず、所定の高レベル(例えば4段階であれば、一番高いレベルであってもよいし、一番高いレベルから2番目のレベル(以下レベルXとする)であってもよい)に上げるように制御してもよい。例えば、レベル制御ステップS5において、レベルXにするように制御するとした場合は、レベル制御ステップS5において、クロックレベルがレベルX未満であった場合には、レベル決定ステップS2において取得したクロックレベルに係わらずレベルXになるように制御する。また、既にクロックレベルがレベルXを超えていれば、レベル決定ステップS2において取得したレベルに係わらずレベルX以上を維持する。そして、DMA転送実行当初のクロックレベルが一番高いレベルであった場合には、クロックレベルがレベルXになるまで、レベル決定ステップS2において決定されたクロックレベルに基づきクロックレベルを制御する。すなわち、クロックレベルが一番高いレベルからレベルXまで低下するまでは、CPUのアイドル率に従いクロックレベルが制御される。
【0052】
次に、DMA転送開始・終了時のクロックレベル制御処理を説明する。図5は本実施形態における携帯電話機1のクロックレベル制御部52で実行されるDMA転送開始・終了時のクロックレベル制御処理を説明するフローチャートである。
【0053】
ステップS11において、クロックレベル制御部52は、DMAコントローラ47によりDMA転送が開始されたか否かの判定を行う。クロックレベル制御部52は、DMA転送が開始されていないと判定した場合、DMA転送が開始されるまで処理を待機する。
【0054】
一方、クロックレベル制御部52は、DMA転送が開始されたと判定した場合、ステップS12において、ユーザが携帯電話機1の操作中であるか否かの判定を行う。クロックレベル制御部52は、ユーザが携帯電話機1の操作中ではないと判定した場合、DMA転送開始判定ステップS11に戻る。
【0055】
クロックレベル制御部52は、ユーザが携帯電話機1の操作中であると判定した場合、ステップS13において、クロックレベルを最高レベルに制御する(または既に最高レベルであれば最高レベルを維持する)。このとき制御されるクロックレベルは、最高レベルに限定されず、上述したレベルXに上げる(または既にレベルX以上であればそのレベルを維持する)ように制御してもよい。
【0056】
ステップS14において、クロックレベル制御部52は、DMA転送が終了したか否かの判定を行う。クロックレベル制御部52は、DMA転送が終了したと判定した場合、処理はタイマセットステップS16に進む。一方、クロックレベル制御部52は、DMA転送が終了していないと判定した場合、ステップS15において、ユーザが携帯電話機1の操作中であるか否かの判定を行う。クロックレベル制御部52は、ユーザが携帯電話機1の操作中であると判定した場合、DMA転送終了判定ステップS14に戻る。DMA転送実行中であり、かつユーザ操作中である場合には、引き続きクロックレベルを最高レベルに維持する(またはレベルX以上を維持する)必要があるためである。これに対し、DMA転送実行中であってもユーザ操作中でない場合には、ユーザに対する高い操作性を維持する必要がないため、DMA転送が終了した場合と同様に扱う。
【0057】
クロックレベル制御部52は、DMA転送終了判定ステップS14においてDMA転送が終了したと判定した場合、またはDMA転送が終了していないがユーザ操作判定ステップS15においてユーザが携帯電話機1の操作中でないと判定した場合、ステップS16において、所定時間(例えば10msec)をカウントするタイマをセットする。DMA転送処理は、処理終了後、再度DMA転送が実行される可能性が非常に高い。DMA転送が終了した直後、またはユーザ操作が終了した直後に高クロックレベルの維持を終了し、CPU46のアイドル率に基づくクロックレベルに制御させると、再度DMA転送が実行された場合にはクロックレベルの頻繁な変動が発生してしまい、かえってDMA転送処理がもたつく結果となる場合がある。このため、本実施形態における携帯電話機1では、DMA転送終了後などの所定時間において高クロックを維持し、再度実行される可能性の高いDMA転送に備えるようになっている。クロックレベル制御部52により設定されたタイマは、所定時間として例えば10msec〜50msec(図4のクロックレベル制御処理の間隔より短い時間)、好ましくは10msecにセットされる。
【0058】
ステップS17において、クロックレベル制御部52は、DMA転送が開始されたか否かの判定を行う。クロックレベル制御部52は、DMA転送が開始されていないと判定した場合、処理はタイムアウト判定ステップS19に進む。
【0059】
一方、クロックレベル制御部52は、DMA転送が開始されたと判定された場合、ステップS18において、ユーザが携帯電話機1の操作中であるか否かの判定を行う。クロックレベル制御部52は、ユーザが携帯電話機1の操作中であると判定した場合、処理はクロックレベル制御ステップS13に戻る。
【0060】
クロックレベル制御部52は、DMA転送開始判定ステップS17においてDMA転送が開始されていないと判定した場合、または、DMA転送が開始されたがユーザ操作判定ステップS18においてユーザが携帯電話機1の操作中でないと判定した場合、ステップS19において、タイマセットステップS16においてセットされたタイマがタイムアウトしたか否かの判定を行う。クロックレベル制御部52は、未だ所定時間が経過しておらずタイマがタイムアウトしていないと判定した場合、処理はDMA転送開始判定ステップS17に戻る。
【0061】
クロックレベル制御部52は、タイマセットステップS16においてセットされたタイマがタイムアウトしたと判定した場合、ステップS20において、クロックレベルをCPU46のアイドル率に基づくクロックレベルに制御する。このとき採用されるクロックレベルは、図4のクロックレベル制御処理のレベル決定ステップS2において決定され参照可能に記憶されたクロックレベルである。その後、処理はステップS11に戻り、再びDMA転送が開始された場合には以降の処理が繰り返される。
【0062】
なお、クロックレベル制御ステップS20において、クロックレベル制御部52は、予め決定され記憶されたCPU46のアイドル率に基づくクロックレベルに制御を行ったが、図4のアイドル率取得ステップS1において取得され参照可能に記憶された直前のアイドル率に基づいて、クロックレベルを決定して制御を行ってもよい。また、クロックレベル制御部52は、タイムアウト判定ステップS19においてタイムアウトが判定された後に、CPU46のアイドル率を新たに取得し、そのアイドル率に基づいて決定されたクロックレベルに制御を行ってもよい。
【0063】
次に、図4、図5のクロックレベル制御処理を、クロックレベルの遷移例を用いて説明する。
【0064】
図6は、クロックレベル制御部52により制御されるクロックレベルの遷移例を示すグラフである。図6(A)は、本実施形態におけるクロックレベルの遷移例を示すグラフ、(B)は、クロックレベルの遷移例の比較例を示すグラフである。図6の縦軸はクロックレベルを表わし、横軸は時間を表わす。クロックレベル数は4レベルとし、図4のクロックレベル制御ステップS5および図5のクロックレベル制御ステップS13において制御される(引き上げられる)クロックレベルであるレベルXはレベル3とする。また、図4のクロックレベル制御処理のアイドル率取得ステップS1においてCPUアイドル率取得部がアイドル率を取得する一定時間は50msecであり、50msec毎にクロックレベルが決定され制御(更新)されるものとして説明する。
【0065】
図6(A)および(B)の時間t、t、tにおいて図4のクロックレベル制御処理が実行され、クロックレベルが1段階ずつ上昇し、時間tにおいてクロックレベルがレベル4となった。詳細には、クロックレベル制御部52は、アイドル率取得ステップS1においてCPUアイドル率取得部53により取得されたCPU46のアイドル率が閾値Aより小さかったため、レベル決定ステップS2において現在のクロックレベルから1段階ずつ上昇したクロックレベルに決定を行った。また、クロックレベル制御部52は、転送実行判定ステップS3においてDMA転送は実行されていないと判定したため、現在のクロックレベルから一段階ずつ上昇させる制御を行った。
【0066】
図6(A)の時間tの直後である時間tA1において、DMA転送が開始された。そうすると、図5のクロックレベル制御が行われる。クロックレベル制御部52は、現在のクロックレベルはレベルXとしてのレベル3以上であるレベル4であったため、クロックレベルを特に上昇させることなく現在のクロックレベルを維持した(ステップS13)。なお、図6(A)のクロックレベルの遷移例においては、ユーザが携帯電話機1の操作中であるものとする。
【0067】
図6(A)の時間tでは、クロックレベル制御部52は、図4のクロックレベル制御が行われ、クロックレベル制御部52は、アイドル率取得ステップS1においてCPUアイドル率取得部53により取得されたCPU46のアイドル率が閾値Bより大きかったため、レベル決定ステップS2においてクロックレベルを1段階低下させたレベル3に決定を行った。クロックレベル制御部52は、DMA転送中であっても、DMA転送中に維持されるクロックレベル(レベル3)以上であるレベル4であった場合には、クロックレベルがレベル3になるまで、レベル決定ステップS2において決定されたクロックレベルに基づきクロックレベルが制御される。すなわち、クロックレベルがレベル4からレベル3に低下するまでは、CPU46のアイドル率に従いクロックレベルが制御される(ステップS5の「クロックレベルをレベルX以上維持するように制御」)。
【0068】
図6(A)の時間t、tでは、クロックレベル制御部52は、図4及び図5のクロックレベル制御が行われ、図4のクロックレベル制御によりCPU46のアイドル率に基づいてクロックレベルをレベル2に決定した(ステップS2)。しかし、DMA転送実行中であるため、クロックレベルはCPU46のアイドル率に係わらずに、レベル3に維持された(図4ステップS5、図5のステップS14、S15)。時間t、tでは、クロックレベル制御部52によりクロックレベルがレベル3に維持されたため、DMA転送を高処理性能で実行することができる。このとき、クロックレベル制御部52は、DMA転送中であっても、図4のレベル決定ステップS2において決定した最新のCPU46のアイドル率に基づくクロックレベルを記憶しておく。そして、クロックレベル制御部52は、DMA転送が終了した場合には、記憶されたクロックレベルに基づいてレベルの制御を行う。
【0069】
図6(A)の時間tA1´では、DMA転送が終了した。クロック制御部52は、図5のクロックレベル制御において、クロックレベルをレベル3に維持したまま、所定時間Δt(例えば10msec)のカウントを行った(ステップS16)。クロック制御部52は、所定時間Δt内においてDMA転送が開始されず、またはDMA転送が開始されたがユーザ操作中ではないと判定したため、時間tA1″において、クロックレベルを図4のクロックレベル制御処理のレベル決定ステップS2において決定され記憶された最新のクロックレベルであるレベル2に制御を行った(ステップS20)。
【0070】
図6(A)の時間t〜t12では、図4のクロックレベル制御処理に基づくクロックレベルの制御処理が実行された(詳細省略)。その後、時間tA2において、DMA転送が開始された。このとき、クロックレベル制御部52は、図5のクロックレベル制御処理によりクロックレベルがレベル3未満であるレベル2であったため、クロックレベルをレベル3に引き上げた(ステップS13)。
【0071】
図6(A)の時間t13、t14では、クロックレベル制御部52は、図4及び図5のクロックレベル制御を行い、図4のクロックレベル制御によりCPU46のアイドル率に基づいてクロックレベルをレベル2に決定した(ステップS2)。しかし、DMA転送実行中であるため、クロックレベルはCPU46のアイドル率に係わらずに、レベル3に維持された(図4ステップS5、図5のステップS14、S15)。時間tA2´では、DMA転送が終了した。クロック制御部52は、図5のクロックレベル制御処理により、クロックレベルをレベル3に維持したまま、所定時間Δt(例えば10msec)のカウントを行う(ステップS16)。クロック制御部52は、所定時間Δt内においてDMA転送が開始されず、またはDMA転送が開始されたがユーザ操作中ではないと判定したため、時間tA2″において、クロックレベルを図4のクロックレベル制御処理のレベル決定ステップS2において決定され記憶された最新のクロックレベルであるレベル2に制御を行った(ステップS20)。
【0072】
一方、比較例としての図6(B)の時間tB1においては、DMA転送の実行開始に係わらず、CPU46のアイドル率に基づいて決定されたクロックレベルが維持されている。また、時間tB1でDMA転送が開始されたことに伴いCPU46のアイドル率が上昇した。このため、時間t、tにおいてはアイドル率が閾値Bより大きくなり、クロックレベルは1段階ずつ低下して、最終的にレベル2に遷移した。
【0073】
図6(B)の比較例では、CPU46のアイドル率の上昇に追従して、クロックレベルが低下するため、消費電力は抑制される。しかし、DMA転送速度は、クロックレベルの低下に伴い低下するためDMA転送の処理性能も低下する、このため、DMA転送時間はΔtB1となり、図6(A)のDMA転送時間ΔtA1より長時間要する上に、長時間の処理の実行による消費電力の増加が生じる結果となる。
【0074】
時間tA2において開始されるDMA転送においても同様に、本実施形態における遷移例を示す図6(A)ではクロックレベルをレベル3に上昇させることにより、CPU46のアイドル率に係わらずDMA転送速度を向上させることができる。このため、DMA転送実行時間はΔtA2となり、図6(B)の実行時間ΔtB2に比べて短縮することができる。
【0075】
なお、図4のクロックレベル制御処理の操作判定ステップS4および、図5のクロックレベル制御処理の操作判定ステップS12において、ユーザが携帯電話機1の操作中ではないと判定された場合には、クロックレベル制御部52はDMA転送実行中であってもCPU46のアイドル率に基づき決定されたクロックレベルに従って遷移させるため、クロックレベルは図6(B)と同様に制御される。
【0076】
この携帯電話機1によれば、CPU46のアイドル率に基づいてクロックレベルを制御するため、携帯電話機1を不要に高いクロックレベルで動作させることによる消費電力の増加を抑制することができると同時に、DMA転送実行中である場合には、クロックレベルを最高レベルまたは所定のレベルXに引き上げるため、DMA転送の処理性能を高く維持することができる。このため、例えばユーザ操作によりメモリカード57から携帯電話機1の記憶部42などにデータのコピー処理がDMA転送により実行される場合には、DMA転送中についてはクロックレベルが最高レベルに引き上げられるため、コピー時間を長時間化させず、ユーザに対する操作性を向上させることができる。
【0077】
また、携帯電話機1は、DMA転送実行中においてもCPU46のアイドル率に基づいて決定されたクロックレベルを保持し、DMA転送終了後のクロックレベル決定時においては現在のクロックレベルがこのアイドル率に基づき決定されたクロックレベルであったものとみなして、クロックレベルの決定および制御を行うようになっている。このため、クロックレベル制御部52は、DMA転送終了後であっても、携帯電話機1を不要に高クロックレベルで動作させることなく、CPU46の稼動状態にあったクロックレベルに遷移させることができる。ゆえに、携帯電話機1は、不要な消費電力を抑制することができる。
【0078】
さらに、クロックレベル制御部52は、DMA転送実行中であれば全ての場合においてクロックレベルを最高レベルに引き上げるのではなく、ユーザが携帯電話機1の操作を行っているか否かを判断し、ユーザ操作中であると判断した場合にのみクロックレベルを引き上げるようになっている。このため、ユーザに対する操作性の向上の観点からDMA転送速度を上昇させる必要がない場合には、CPU46のアイドル率に基づきクロックレベル制御が行われ、携帯電話機1を最高レベルで不要に動作させることなく、好適に消費電力を抑制することができる。例えば、携帯電話機1がコンテンツサーバよりデータの自動ダウンロードを実行する場合には、ユーザは携帯電話機1の操作を行っている状態ではないといえるため、ユーザに対する操作性を向上させる必要はない。このような場合には、携帯電話機1は、消費電力の抑制を優先してCPU46のアイドル率に応じてクロックレベルを制御することで、携帯電話機1の長時間連続使用を可能とすることができる。
【0079】
さらにまた、クロックレベル制御部52は、DMA転送終了後においても所定時間(例えば10msec)だけ最高レベルまたはレベルXに維持するため、DMA転送終了直後に再度DMA転送が実行される場合であっても、クロックレベルを不要に変動させることなく、処理のもたつきを抑制し、ユーザに対してより高い操作性を有することができる。
【0080】
本発明は携帯電話機以外にもPDA(Personal Digital Assistant)、パーソナルコンピュータ、携帯型ゲーム機、携帯型音楽再生機、携帯型動画再生機、その他の情報処理装置にも適用することができる。
【0081】
さらに、本発明の各実施形態において説明した一連の処理は、ソフトウェアにより実行させることもできるが、ハードウェアにより実行させることもできる。
【0082】
さらにまた、本実施形態では、フローチャートのステップは記載された順序に沿って時系列的に行われる処理の例を示したが、必ずしも時系列的に処理されなくとも、並列的あるいは個別実行される処理をも含むものである。
【図面の簡単な説明】
【0083】
【図1】本発明に係る情報処理装置の実施形態を示す携帯電話機の外観の構成を示す図。
【図2】本発明に係る情報処理装置の実施形態を示す携帯電話機の他の外観の構成を示す図。
【図3】本実施形態における携帯電話機の内部の構成を示す図。
【図4】本実施形態における携帯電話機のクロックレベル制御部で実行されるクロックレベル制御処理を説明するフローチャート。
【図5】本実施形態における携帯電話機のクロックレベル制御部で実行されるDMA転送開始・終了時のクロックレベル制御処理を説明するフローチャート。
【図6】クロックレベル制御部により制御されるクロックレベルの遷移例を示すグラフであり、(A)は本実施形態におけるクロックレベルの遷移例を示すグラフ、(B)はクロックレベルの遷移例の比較例を示すグラフ。
【符号の説明】
【0084】
1 携帯電話機
11 ヒンジ部
12 第一の筐体
13 第二の筐体
14 操作キー
21 メインディスプレイ
22 マイクロフォン
23 レシーバ
24 磁気センサ
25 サブディスプレイ
26 外部メモリインタフェース
27 外部接続端子
41 制御部
42 記憶部
43 バッテリ
46 CPU
47 DMAコントローラ
48 ROM
49 RAM
50 VRAM
51 クロック供給回路
52 クロックレベル制御部
53 CPUアイドル率取得部
57 メモリカード

【特許請求の範囲】
【請求項1】
CPUと、
所定の動作周波数のクロック信号を供給するクロック供給手段と、
前記CPUのアイドル率を一定時間毎に取得するCPUアイドル率取得手段と、
前記CPUアイドル率取得手段により取得された前記CPUのアイドル率に基づき、前記クロック供給手段から供給される前記クロック信号の動作周波数を決定するクロック制御手段と、
前記クロック供給手段から供給された前記クロック信号に同期してDMA転送を実行するDMA転送手段とを備え、
前記クロック制御手段は、前記DMA転送実行中であるか否かを判定し、前記DMA転送実行中ではないと判定した場合には、前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御し、前記DMA転送実行中であると判定した場合には、前記クロック信号の動作周波数を所定の周波数に制御することを特徴とする情報処理装置。
【請求項2】
前記動作周波数は、所定の動作周波数が割り当てられた複数のクロックレベル間で段階的に遷移し、
前記クロック制御手段は、前記DMA転送実行中であると判定した場合には、前記クロックレベルを最大動作周波数が割り当てられた前記クロックレベルに制御する請求項1記載の情報処理装置。
【請求項3】
前記クロック制御手段は、前記DMA転送実行中においても、前記CPUアイドル率取得手段により取得された前記CPUのアイドル率に基づき前記クロックレベルを決定しておき、前記DMA転送が終了したことに基づいて、この決定された前記クロックレベルによるクロックレベルの制御を行う請求項2記載の情報処理装置。
【請求項4】
表示手段をさらに備え、
前記クロック制御手段は、表示手段が点灯中であるか否かを判定し、表示手段が非点灯中であると判定した場合には、前記DMA転送実行中であっても前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御する請求項1記載の情報処理装置。
【請求項5】
入力手段をさらに備え、
前記クロック制御手段は、入力手段により入力を受け付けた操作に基づいて前記DMA転送が実行された否かを判定し、外部から受け付けた操作に基づき実行された前記DMA転送ではないと判定した場合、前記DMA転送実行中であっても前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御する請求項1記載の情報処理装置。
【請求項6】
開閉状態を構成する折りたたみ式の筐体をさらに備え、
前記クロック制御手段は、前記筐体の開閉状態を判定し、前記筐体が閉状態であると判定した場合、DMA転送実行中であっても前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御する請求項1記載の情報処理装置。
【請求項7】
CPUと、
所定の動作周波数のクロック信号を供給するクロック供給手段と、
前記CPUのアイドル率を一定時間毎に取得するCPUアイドル率取得手段と、
前記CPUアイドル率取得手段により取得された前記CPUのアイドル率に基づき、前記クロック供給手段から供給される前記クロック信号の動作周波数を決定するクロック制御手段と、
前記クロック供給手段から供給された前記クロック信号に同期してDMA転送を実行するDMA転送手段とを備え、
前記クロック制御手段は、前記DMA転送実行中であるか否かを判定し、前記DMA転送実行中ではない場合には、前記クロック信号の動作周波数を前記CPUのアイドル率に基づき決定された動作周波数に制御し、その後前記DMA転送実行が開始された場合には、前記CPUのアイドル率にかかわらず前記クロック信号の動作周波数を所定の周波数以上に制御することを特徴とする情報処理装置。
【請求項8】
前記クロック制御手段は、前記DMA転送実行中において、前記クロック信号の動作周波数を前記所定の周波数以上に維持するように制御し、前記DMA転送が終了したあと所定の時間経過後、前記CPUのアイドル率に基づき決定された動作周波数に制御を行う請求項7記載の情報処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate