(57)【特許請求の範囲】
【請求項１】
それぞれ周波数の異なる複数の周波数のクロック信号を発生するクロック発生源と、
前記クロック発生源から出力される複数の周波数のクロック信号のいずれかを選択する選択手段と、
それぞれが、処理済み或は処理対象のデータを記憶するメモリを有し、前記選択手段により選択されたクロック発生源からのクロック信号により動作する複数の処理手段と、
前記複数の処理手段の各処理手段が有する前記メモリに記憶されているデータ量の情報を取得し、当該取得したデータ量の情報に応じて各処理手段に対するクロック信号を選択するように制御する選択制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記複数の処理手段の１つは、
撮像した画像信号を入力する入力手段と、
前記入力手段により入力された画像信号を間引く間引き手段とを有し、
前記間引き手段により間引かれた画像信号を前記メモリに記憶することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記複数の処理手段の１つは、
前記メモリに記憶された画像信号を補間する補間手段と、
前記補間手段により補間された画像信号に基づいて画像を表示する表示手段とを有することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記メモリはＦＩＦＯであり、前記データ量の情報は前記ＦＩＦＯに占める有効データの割合を表す情報であることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
それぞれが、処理済み或は処理対象のデータを記憶するメモリを有しクロック発生源からのクロック信号により動作する複数の処理手段を有する情報処理装置の制御方法であって、
前記複数の処理手段の各処理手段を動作させるために、それぞれ周波数の異なる複数の周波数のクロック信号を発生するクロック発生源から出力される複数の周波数のクロック信号のいずれかを選択する選択工程と、
前記複数の処理手段の各処理手段が有するメモリに記憶されているデータ量の情報を取得し、前記取得したデータ量の情報に応じて各処理手段に対するクロック信号を選択するように制御する選択制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項６】
請求項５に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラムを記憶した、コンピュータにより読取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばディジタル・スチルカメラや携帯テレビ電話端末装置、或はカメラ内蔵型ノートＰＣ等に適用できる情報処理装置及びその方法に関するものである。
【０００２】
【従来の技術】
近年、ＣＣＤ等の固体撮像装置の小型化、省電力化及びＬＳＩの高集積化、高機能化、低消費電力化などの技術の進展に伴い、ディジタルスチルカメラに代表されるように、電池で駆動可能な携帯型の撮影装置が一般に利用されるようになった。更には、携帯電話機能を内蔵した携帯型テレビ電話端末やカメラを内蔵したノート型ＰＣ等も開発されている。このような特に電池で駆動される撮影装置では、電池による動作時間を延長するために電力削減が求められている。また、ＡＣ電源で駆動される撮影装置においても、環境保全等の観点により、より有効な省電力機能が求められてきている。そのため従来から電池残量を常に表示し、残量が少なくなってきた場合は、ユーザに電源をこまめに切ることを促したり、ユーザの選んだ動作モードに応じて非動作部分のクロック供給を遮断したりする節電機能が実現されている。
【０００３】
【発明が解決しようとする課題】
一般に撮影装置においては、撮影される画像のフレームレートと解像度が高くなるほど単位時間当たりに処理すべき画像データ量が増大するため、画像データを扱う電子回路は高い動作クロック周波数を必要とする。一般に、回路の消費電力は、その回路を駆動するクロック周波数に比例して増大するため、画像のフレームレートと解像度の増大は消費電力の増大をもたらす。従って、消費電力を低減するためには、極力フレームレートと解像度を小さくするほうが望ましい。
【０００４】
しかしながら、例えばデジタルカメラなどの撮影装置では、その動作モードによって取り込む画像のフレームレートや解像度に対する要求が異なる。例えば、電子ビューファインダモード（ＥＶＦモードと呼ぶ）においては、極力スムーズな動画像が表示されることが望ましいが、その表示画面は機器に内蔵された小さな画面であることが多い。従って、フレームレートは大きい程良いが、解像度はそれほど要求されない。また静止画取り込みモード（撮影モードと呼ぶ）では、フレームレートは最低でよい（静止画のため）が、解像度は最大であることが要求される。更に記録した画像を再生する再生モードでは、撮像素子による画像信号の取り込みを行わず、表示部への表示が最大解像度で行われる。またテレビ電話モードでは、フレームレート、解像度ともに電話回線のデータ転送能力によって決定される。
【０００５】
上記の例より明らかなように、このような撮影装置を構成する各々の機能ブロック、例えば撮影機能ブロック、画像処理機能ブロック、表示機能ブロックなどでは、その動作モードに応じて単位時間当たりに処理すべきデータ量が大幅に異なり、常に最大周波数で動作する必要がなく、正常な動作が行われる限り、できるだけ低い周波数で動作したほうが装置の消費電力を低減させることが可能になる。にもかかわらず、従来の技術では、完全に非動作状態にある機能ブロックへのクロック信号の供給を停止させるだけで、装置の消費電力を抑えるようにしていたため、有効な電力削減を行うことができなかった。
【０００６】
本発明は上記従来例に鑑みてなされたもので、複数の処理手段のそれぞれに供給するクロック信号の周波数を、各処理手段が有するメモリに記憶されているデータ量の情報に応じて切り替えることにより、装置全体の消費電力を抑えることができる情報処理装置及びその制御方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために本発明の情報処理装置は以下のような構成を備える。即ち、
それぞれ周波数の異なる複数の周波数のクロック信号を発生するクロック発生源と、
前記クロック発生源から出力される複数の周波数のクロック信号のいずれかを選択する選択手段と、
それぞれが、処理済み或は処理対象のデータを記憶するメモリを有し、前記選択手段により選択されたクロック発生源からのクロック信号により動作する複数の処理手段と、
前記複数の処理手段の各処理手段が有する前記メモリに記憶されているデータ量の情報を取得し、当該取得したデータ量の情報に応じて各処理手段に対するクロック信号を選択するように制御する選択制御手段と、
を有することを特徴とする。
【０００９】
上記目的を達成するために本発明の情報処理装置の制御方法は以下のような工程を備える。即ち、
それぞれが、処理済み或は処理対象のデータを記憶するメモリを有しクロック発生源からのクロック信号により動作する複数の処理手段を有する情報処理装置の制御方法であって、
前記複数の処理手段の各処理手段を動作させるために、それぞれ周波数の異なる複数の周波数のクロック信号を発生するクロック発生源から出力される複数の周波数のクロック信号のいずれかを選択する選択工程と、
前記複数の処理手段の各処理手段が有するメモリに記憶されているデータ量の情報を取得し、前記取得したデータ量の情報に応じて各処理手段に対するクロック信号を選択するように制御する選択制御工程と、
を有することを特徴とする。
【００１０】
【発明の実施の形態】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【００１１】
図１は、本発明の実施の形態に係る携帯型のテレビ電話端末装置の構成を示すブロック図である。図１において、各機能ブロック間を接続する線のうち、データ系の接続を太い実線で図示し、制御系の接続を細い実線で図示し、クロック系の接続を点線で図示している。但し、全ての接続が図示されているわけではなく、説明に必要な代表的な配線接続のみを図示した。
【００１２】
このテレビ電話端末装置の主要なブロック構成として、撮像した画像信号の取り込みに関する処理を実行する画像取り込みコントローラ１、その画像信号から生成した画像データに対して画像処理を実行する信号処理プロセッサ２、画像データに基づく画像表示に関わる処理を行う表示コントローラ３、画像データをメモリに記憶させるためのメモリ制御を行うメモリコントローラ４、装置全体の制御を行うＣＰＵ５を有している。
【００１３】
まず、代表的な動作モードとして、ＥＶＦ（ビューファインダ）モード、撮影モード、再生モード及びテレビ電話モードのそれぞれについて動作を説明を行う。
【００１４】
［画像取り込みコントローラ１の説明］
撮像対象の画像がレンズモジュール６を介してＣＣＤ７上に結像されることにより、その画像に応じた画像信号がＣＣＤ７から出力される。尚、このレンズモジュール６は、レンズ、オート・アイリスのための駆動系、オートフォーカスのための駆動系等を備えており、これら駆動系の制御は図示しない制御信号によってＣＰＵ５によって行われる。ＣＣＤ７から出力される画像信号は前処理モジュール（CDS・AGC）８に入力される。本実施の形態においては、ＣＣＤ７の取り込む有効画素数は６４０×４８０画素（ＶＧＡ相当）である。前処理モジュール８は、ＣＤＳ（相関二重サンプリング）及びＡＧＣ（自動利得制御）機能を備えている。また、ＣＣＤ７及び前処理モジュール８に対するクロック及びタイミング信号は、タイミング生成回路（TG）９より供給される。前処理モジュール８で前処理が施された画像データは、Ａ／Ｄ変換器（ADC）１０により１０ビットのディジタルデータに変換され、タイミング生成回路（SG）１１により生成されるピクセルクロック（Pixel Clock）に同期して画像取り込みコントローラ１に入力される。
【００１５】
画像取り込みコントローラ１に入力された画像データは間引き回路１ａによって間引き処理され、間引かれた結果であるデータがＦＩＦＯ１ｂに書き込まれる。この間引き回路１ａにおける間引き方式は、図示しない制御信号によってＣＰＵ５によって予め設定されている。
【００１６】
図２（Ａ）は、間引き回路１ａの動作の一例を示すタイミングチャートである。間引き回路１ａは、ＳＧ１１から入力されるピクセルクロック(Pixel Clock)を計数するピクセルカウンタ(Pixel Count)、図示しない水平・垂直同期信号に基づいて、画像のライン数を計数するラインカウンタ(Line Num)を備えており、ＣＰＵ５によって予め設定された間引き方式と、これらのカウンタの計数値に基づいて、ＡＤＣ１０から入力されるデジタル画像データをラッチし、ＦＩＦＯ１ｂに書き込むためのクロック(Latch Clock)を生成する。
【００１７】
図２（Ａ）の例では、水平６４０ピクセル、垂直４８０ラインのデータに対し水平・垂直とも１／２の間引きを行う場合（３２０×２４０画素：ＣＩＦ相当）が例示されている。従って、有効ラインは奇数ラインであり、この期間を示すための信号がActive Line信号である。また、有効ピクセルは奇数ピクセルであり、これを示す信号がActive Pixel信号である。
【００１８】
これら信号を基に、図２（Ｂ）に示すようにPixel Clock、Active Line信号及びActive Pixel信号の論理積が取られ、これがＦＩＦＯ１ｂに書き込むためのLatch Clock信号となる。なお、図２（Ａ）において、ＦＩＦＯ１ｂに書き込まれるデータがData to FIFOである。
【００１９】
尚、この間引き回路１ａは、フレーム間引き機能も備える構成にすることが可能である。この場合は、更にフレームカウンタを設け、例えば４フレームごとに１フレームを取り込む場合にはフレームカウンタが「４の倍数＋１」のときにActive Frame信号を生成し、図２（Ｂ）に示すＡＮＤ回路の入力に加えるようにすればよい。
【００２０】
バスインターフェース回路（BUS IF）１ｃは、ＦＩＦＯ１ｂが空でない状態（何等のデータが書込まれている）を検知すると、メインバス（MB）上にデータ書き込みのバストランザクションを発生し、メモリコントローラ４にＦＩＦＯ１ｂから読み出したデータを転送する。バスインターフェース回路１ｃは、通常、画像取り込みクロック(Latch Clock)とは非同期のバスクロックで動作している。従って、ＦＩＦＯ１ｂの読み出しクロックは、ＦＩＦＯ１ｂの書き込みクロック（Latch Clock）とは非同期であり、ＦＩＦＯ１ｂはこの非同期のデータ転送を緩衝するために備えられている。
【００２１】
尚、このメインバスＭＢには、他にもバストランザクションを発生するバスマスタが複数接続されている（信号処理プロセッサ２、表示コントローラ３、ＣＰＵ５など）ので、同時に複数のバストランザクションが発生する可能性がある。そのためバスアービタ１２は、１度に１つだけのバスマスタがバストランザクションを発生できるようにバスを調停する。
【００２２】
［メモリコントローラ４の説明］
メモリコントローラ４は、バスインターフェース回路（BUS IF）４ａにおいてバストランザクションを受信し、格納すべき画像データ及びその画像データを格納すべきメモリアドレスを一時バッファ４ｂに書き込む。ＳＤＲＡＭインターフェース回路（SDRAM IF）４ｃは、画像メモリであるＳＤＲＡＭ１３への各種制御信号を出力するとともに、バッファ４ｂに格納されたメモリアドレス及び画像データをＳＤＲＡＭ１３に出力する。バスインターフェース回路４ａ、バッファ４ｂ、ＳＤＲＡＭインターフェース回路４ｃ、及びＳＤＲＡＭ１３は全てバスクロックに同期して動作する。
【００２３】
［信号処理プロセッサ２の説明］
信号処理プロセッサ２は、画像データの読み出しのためのバストランザクションを発生し、バスクロックで動作するバスインターフェース回路（BUS IF）２ａによって、画像取り込みコントローラによって取り込まれた画像データを画像メモリから読み出す。こうして読み出された画像データはバスクロックに同期して双方向ＦＩＦＯ２ｂに書き込まれる。ＤＳＰ（デジタル信号プロセッサ）２ｃは、バスクロックとは異なるクロック（ＤＳＰクロック）で動作しており、このＤＳＰクロックに同期して双方向ＦＩＦＯ２ｂのデータにアクセスして、カラーマトリクス処理によりＹＣ分離を行い、続いて色補正、エッジ強調、ホワイトバランス調整、ガンマ補正などの処理を行う。このようにして得られた画像データは、モニタ１５への表示に用いられる他、画像圧縮にも用いられる。モニタ１５への表示用に用いる場合は、表示コントローラ３が読み出せるように、バスインターフェース回路２ａを起動して、書き込みのバストランザクションを発生し、ＳＤＲＡＭ１３にデータを転送する。
【００２４】
［ＥＶＦモードの説明］
ＥＶＦモードにおいては、上述した動作をフレーム毎に繰り返すことによって、連続したフレームを画像メモリ１３に取り込む。信号処理プロセッサ２が画像データを書込む画像メモリの領域としては、同一領域を上書きする動作でよい。表示コントローラ３は、その画像メモリの領域より画像データを読み出すことにより表示データを得る。その際、表示コントローラ３は、画像データを読み出すためのバストランザクションを発生し、バスクロックで動作するバスインターフェース回路（BUS IF）３ａによって画像メモリ１３から表示すべき画像データを読み出す。表示コントローラ３は更に、この読み出した画像データをバスクロックに同期してＦＩＦＯ３ｂの書き込みポートに入力する。ＮＴＳＣのモニタや液晶ディスプレイに代表されるように、一般に表示装置は画面を絶え間なくリフレッシュする必要があるため、有効画面期間中は、あるピクセルクロックで動作し続けなければならない。そのためバスインターフェース回路３ａは、ＦＩＦＯ３ｂがフル状態になるまで画像メモリから画像データを読み出し続ける。
【００２５】
次に補間回路３ｃは、表示ピクセルクロックに同期してＦＩＦＯ３ｂより画像データを読み出す。補間回路３ｃはラインメモリを備えており、ＦＩＦＯ３ｂより読み出された画像データは、まずこのラインメモリに格納される。このラインメモリに格納された画像データは、補間なしの場合は先頭から順に読み出されてＮＴＳＣエンコーダ３ｄに入力され、ＮＴＳＣフォーマットの映像データに変換される。この場合、補間回路３ｃは、１ピクセル分の画像データが読み出されると、直ちに１ピクセル分の画像データをＦＩＦＯ３ｂから読み出す。ここでライン補間を行う場合は、（補間するライン数−１）分のラインデータをＮＴＳＣエンコーダ３ｄに送出した後、次のラインは１ピクセル分の画像データをＮＴＳＣエンコーダ３ｄに送出する毎に、ＦＩＦＯ３ｂから１ピクセル分の画像データを読み出す。例えば、ここでライン方向に４倍の補間を施すときは、３ライン分をそのラインメモリからの画像データで表示し、４ライン目の表示の際には、そのラインの表示を行いながらＦＩＦＯ３ｂから次のラインの画像データを読み込んでくるという動作を行う。
【００２６】
ＮＴＳＣエンコーダ３ｄによってＮＴＳＣフォーマットに変換された映像データは、Ｄ／Ａ変換器（DAC）１４によってアナログ信号に変換された後、ＮＴＳＣのモニタ１５によって表示される。
【００２７】
上記の動作をフレームごとに連続して行うことにより、ＥＶＦモードの動作となる。このＥＶＦモードでは、画像取り込みコントローラ１がフレーム間引きを行っていたとしても、各フレーム分の画像データを読み出す必要がある。この場合、表示される画像はこま落しになるが、モニタ１５は一定のフレームレートで動作し続ける必要があるからである。
【００２８】
［撮影モードの説明］
次に、撮影モードでの動作を説明する。この撮影モードでは、１フレーム分の画像データを取り込んだ後、この画像データをＪＰＥＧ圧縮してメモリカード１７などの外部記憶等に記録する。
【００２９】
まず、シャッタ・ボタン等含むスイッチ群１６のシャッタ・ボタンの押下がＣＰＵ５によって検出されると、ＣＰＵ５は図示しない制御信号により画像取り込みコントローラ１に対し、次の１フレームの画像データを取り込み、それ以降のフレームの画像データを取り込まないように指示する。同様に、信号処理プロセッサ２に対し、次の１フレームの画像データに対して圧縮処理を行うように通知する。
【００３０】
画像取り込みコントローラ１は、前述のＥＶＦモードの場合とは異なり、１フレームの画像を取り込んで画像メモリ１３に画像データを転送し終えると、動作を一時停止する。信号処理プロセッサ２は、このメモリ１３に格納された１フレーム分の画像データを読み出して、ＥＶＦモードで表示用の画像データを生成した場合と全く同様にしてＹＣ分離、色補正、エッジ強調、ホワイトバランス調整、ガンマ補正等の画像処理を行う。その後、直ちにその画像データに対して、ＤＣＴ演算処理、量子化処理、可変長符号化処理などを施して得られた符号化データを、画像メモリ１３内の表示用画像データ領域とは別の領域に書き込む。
【００３１】
ＣＰＵ５は、画像メモリ１３に記憶された画像データを読み出し、必要なマーカ等を付加してＪＰＥＧデータとした後に、メモリカード１７に格納する。こうして１フレーム分の画像データの格納が終了すると、ＣＰＵ５は画像取り込みコントローラ１に対して、ＥＶＦモードでの画像信号の取り込み再開するように通知する。
【００３２】
なお、メモリカード１７に格納された符号化された画像データは、ＰＣ等のホストコンピュータとのインターフェースを実現するコミュニケーション回路１８を介して、ＰＣ等からアクセスすることが可能である。本実施の形態においてはコミュニケーション回路１８は、例えばシリアルインターフェース、ＵＳＢ、ＩｒＤＡ、携帯電話モジュールなどを含んでいる。
【００３３】
［再生モードの説明］
次に再生モードの動作を説明する。この再生モードでは、画像取り込みコントローラ１の動作は停止している。ＣＰＵ５はメモリカード１７に格納された符号化された圧縮データを読み出してＳＤＲＡＭ１３に書き込む。信号処理プロセッサ２は、このＳＤＲＡＭ１３に書込まれた符号データを読み出して、復号化、逆量子化、逆ＤＣＴ変換等の画像伸長処理を行って表示可能な画像データとした後、再びＳＤＲＡＭ１３に書き戻す。表示コントローラ３は、この表示可能データをＳＤＲＡＭ１３より読み出して表示動作を行う。
【００３４】
［テレビ電話モードの説明］
次に、テレビ電話モードの動作を説明する。前述した撮影モードでは、１フレームの画像データを取り込んだ後、画像取り込みコントローラ１は一時動作を停止した。しかし、このテレビ電話モードでは、画像データの取り込み処理を中断せずに、次々に連続するフレームの画像データを取り込む。このときの取り込みフレームレートは、ＣＰＵ５によって設定された間引き方式に基づいて決定される。こうして取り込まれた画像データは撮影モードの場合と同様の処理によって信号処理プロセッサ２により画像処理及び画像圧縮・符号化処理が施されて、ＳＤＲＡＭ１３に書き込まれる。こうしてＳＤＲＡＭ１３に書き込まれた符号データは、ＣＰＵ５により読み出され、所定のマーカ等が挿入された後、コミュニケーション回路１８の携帯電話モジュールによって電話回線を通じて通話相手に伝送される。
【００３５】
一方、電話回線を通じて通話相手より受信した符号データは、コミュニケーション回路１８からＣＰＵ５を経由してＳＤＲＡＭ１３に書き込まれる。信号処理プロセッサ２は、このＳＤＲＡＭ１３に書込まれた符号データを読み出して、復号化、逆量子化、逆ＤＣＴ変換等の画像伸長処理を行って表示可能な画像データとした後、再びＳＤＲＡＭ１３に書き戻す。表示コントローラ３は、表示すべき画像データをＳＤＲＡＭ１３より読み出してモニタ１５に表示するように表示動作を行う。
【００３６】
以上のようにして、ＣＣＤ７により撮像した画像を通話相手に電送するとともに、通信相手から送られてくる画像データを受信してモニタ１５に表示することができる。
【００３７】
［クロックの説明］
次に、画像取り込みコントローラ１、信号処理プロセッサ２、表示コントローラ３及びメモリコントローラ４のそれぞれに供給されるクロックについて説明する。
【００３８】
クロック発生器（CG）１９，２０，２１，２２は、ＣＰＵ５により、そのクロック出力をオン／オフできる可変クロック発生器である。クロック発生器（CG(C)）１９は、ＳＧ１１及び画像取り込みコントローラ１の画像取り込み部（間引き回路１ａ、ＦＩＦＯ１ｂ）の動作クロックを生成する。クロック発生器（CG(D)）２０は、ＤＳＰ２ｃの動作クロックを生成する。クロック発生器（CG(B)）２１は、各コントローラのバスインターフェース部の動作クロックを生成する。クロック発生器（CG(N)）２２は、表示コントローラ３のＦＩＦＯ３ｂ、補間回路３ｃ、ＮＴＳＣエンコーダ３ｄ及びＤ／Ａ変換器１４の動作クロックを生成する。
【００３９】
またクロック発生器２１から出力されるバスクロックは、各コントローラのバスインターフェース回路に供給されるが、各コントローラ毎にクロック供給を停止できるようにクロックゲート回路（G）２３，２４，２５，２６を備えている。この内、クロックゲート回路２６はＣＰＵ５によって制御され、クロックゲート回路２３はＦＩＦＯ１ｂからの制御信号により制御され、クロックゲート回路２４はＦＩＦＯ２ｂからの、クロックゲート回路２５はＦＩＦＯ３ｂからの制御信号により制御される。
【００４０】
次に、動作モードに応じて間引き回路１ａ、補間回路３ｃの設定をどのように制御するかを説明する。
【００４１】
動作モードの変更は、ユーザによるスイッチ群１６の操作によって行われる。スイッチの構成は様々な例が考えられるが、本実施の形態ではダイアルと押しボタンにより構成する。ダイアルの回転により動作モードの候補が順次更新されて表示され、その候補が表示されている時に押しボタンの押下により、その表示されている動作モードが実際の動作モードとして選択される。この動作モードの選択のイベントによりＣＰＵ５に割り込みが発生し、ＲＯＭ２７に格納された割り込み処理ルーチンにより、動作モードの変更処理ルーチンが実行される。
【００４２】
この動作モード変更処理ルーチンでは、新たに選択された動作モードを読み取り、その読み取られた動作モードに対応して間引き回路１ａ及び補間回路３ｃに初期値が設定される。これら間引き回路１ａ及び補間回路３ｃに設定されるデフォルト値は、工場出荷時のＲＯＭ２７に格納されている。ユーザが設定値を変更した場合は、その変更したことを示すフラグと共に、その変更を加えた部分の対応がＲＡＭ２８に記録される。
【００４３】
図３は、動作モードと間引き方式及び補間方式の設定値の対応例を説明する図である。
【００４４】
ここでは動作モードとして、ＥＶＦ、撮影、再生、テレビ電話の４種類が定義されている。間引き方式は解像度（図中ではサイズ(size)と表記）とフレームレート（図中ではフレーム(frame)と表記）とに分けて示しており、補間方式は解像度のみを示してある。なぜなら本実施の形態では、表示がＮＴＳＣ出力であるためフレームレートが一定だからである。解像度の間引き・補間方式は縦横１／２間引き・補間の場合を「ＣＩＦ」として示し、縦横１／４間引き・補間の場合を「ＱＣＩＦ」として示している。またフレームレートは、１秒間に３０フレームならば３０フレーム／ｓ（frame/s）のように示している。また、停止状態を示す場合は「−」と図示している。
【００４５】
図３に示す例によれば、動作モード変更ルーチンが読み取った新たな動作モードがＥＶＦモードだった場合は、解像度の間引き・補間方式は「ＣＩＦ」であり、フレームレートは３０フレーム／ｓと設定する。また撮影モードでは、表示は停止しており、画像取り込みとしてはＶＧＡを１フレームだけ取り込むように設定する。更に再生モードの場合は、画像取り込みは停止しており、表示としては「ＶＧＡ」を表示する。またテレビ電話モードの場合は、解像度の間引き・補間方式は「ＱＣＩＦ」であり、フレームレートは１５フレーム／ｓと設定する。ＣＰＵ５は、この図３の内容に相当するデータをＲＯＭ２７又はＲＡＭ２８より読み出して間引き回路１ａにおける間引き方式、及び補間回路３ｃにおける補間方式の設定を得る。
【００４６】
次にクロック発生器１９〜２２及びクロックゲート回路２３〜２６の設定をどのように制御するかを説明する。
【００４７】
クロック発生器１９は、ＣＰＵ５からのオン信号によりピクセルクロックとして１３．５ＭＨｚのクロック信号を出力する。このピクセルクロックは通常オン（出力される）であるが、再生モードの場合は新たに画像信号を取り込む必要はないためオフとされる。
【００４８】
クロック発生器２０は、ＣＰＵ５からの２ビットのクロック選択信号により４種類の周波数のクロックを発生することができる。即ち、選択信号が“００”の場合は０ＭＨｚ、即ちクロックの発生が停止された状態であり、“０１”の場合は５０ＭＨｚのクロックを出力し、“１０”の場合は１００ＭＨｚのクロックを出力し、“１１”の場合には１５０ＭＨｚのクロックを出力する。この２ビットの選択信号は、ＲＯＭ２７に格納されてＣＰＵ５により読み出されて実行される制御プログラムによって制御される。即ち、動作モードと処理する画像データの解像度により単位時間に処理すべき画像データの量が異なるため、例えばＥＶＦモードではＶＧＡの場合は１００ＭＨｚで動作させ、ＣＩＦ及びＱＣＩＦでは５０ＭＨｚで動作させるが、テレビ電話モードではＶＧＡの場合は１５０ＭＨｚで動作させ、ＣＩＦの場合は１００ＭＨｚで動作させ、ＱＣＩＦの場合は５０ＭＨｚで動作させる、というような制御を行う。
【００４９】
クロック発生器２１は、ＣＰＵ５からのオン／オフ信号により起動／停止するとともに、起動状態にあってもＦＩＦＯ１ｂ，２ｂ，３ｂからの制御信号によって、その発生するクロックの周波数が変更される。
【００５０】
図４は、クロック発生器２１の一例を示すブロック図である。
【００５１】
２１ａはクロック原発振器で、８０ＭＨｚのクロックを常時発生している。２１ｂはクロックの１／２分周器であり、８０ＭＨｚのクロック信号が入力され４０ＭＨｚのクロック信号を出力する。２１ｃはクロックの１／２分周器であり、４０ＭＨｚのクロック信号が入力されて２０ＭＨｚのクロック信号を出力する。２１ｄはクロックの１／２分周器であり、２０ＭＨｚのクロック信号が入力されて１０ＭＨｚのクロック信号を出力する。２１ｅはクロックセレクタで、４つのクロック入力Ａ，Ｂ，Ｃ，Ｄのうち１つのクロックを選択信号SelＡ，SelＢ，SelＣ，SelＤに応じて出力端子Outに出力する。
【００５２】
図５は、このクロックセレクタ２１ｅにおけるクロック信号の選択処理を説明する図である。
【００５３】
選択信号SelＡ、SelＢ，SelＣ，SelＤの順にプライオリティが高くなり、例えばSelＤが“１”の場合は、他の選択信号の状態に拘わらずＤ端子に入力されたクロック信号がOut端子に出力される。ここで入力Ａ，Ｂ，Ｃ，Ｄのそれぞれには、前述した周波数１０ＭＨｚ，２０ＭＨｚ，４０ＭＨｚ，８０ＭＨｚのクロック信号がそれぞれ入力されている。また、端子SelＡにはＡＮＤ回路２１ｆの出力が、端子SelＢにはＯＲ２１ｇの出力が、端子SelＣにはＯＲ２１ｈの出力が、そして端子SelＤにはＯＲ２１Ｉの出力がそれぞれ接続されている。またＡＮＤ２１ｆ，ＯＲ２１ｇ，２１ｈ，２１ｉの各入力には、ＦＩＦＯ１ｂ，２ｂ，３ｂのポインタステータス信号がそれぞれ接続される。各々のポインタステータス信号の意味するところを、ＦＩＦＯ１ｂの一例の構成図である図６、ＦＩＦＯ２ｂの一例の構成図である図７、ＦＩＦＯ３ｂの一例の構成図である図８を用いて説明する。
【００５４】
図６は、本実施の形態のＦＩＦＯ１ｂの構成例を示すブロック図である。
【００５５】
このＦＩＦＯ１ｂは、同期型デュアルポートＳＲＡＭ１ｂ０、書き込み制御回路１ｂ１、書き込みアドレス生成（ポインタ生成）回路１ｂ２、読み出し制御回路１ｂ３、読み出しアドレス生成（ポインタ生成）画路１ｂ４及びポインタステータス生成回路１ｂ５を備えている。
【００５６】
デュアルポートＳＲＡＭ１ｂ０は、例えば１２８（ワード）×８（ビット）のデュアルポートＳＲＡＭで、間引き回路１ａよりの書き込み有効信号（write en）が入力されるとＣＣＤのピクセルクロック（ccd clk）に同期してＣＣＤデータであるWRITE DATAが、書き込みアドレス生成（ポインタ生成）回路１ｂ２から出力されるメモリアドレスに書き込まれる。こうしてデュアルポートＳＲＡＭ１ｂ０に１つの画像データが書き込まれた後、書込むアドレス生成回路１ｂ２から出力される書き込みアドレスは１だけインクリメントされる。また読み出し動作は、バスインターフェース回路１ｃからの読み出し有効信号（read en）が入力されるとバスクロック（bus clk）に同期して読み出しアドレス生成（ポインタ生成）回路１ｂ４の生成するポインタの示すアドレスからREAD DATAが出力される。
【００５７】
こうして１つの画像データが読み出された後、読出しアドレス生成回路１ｂ４から出力される読み出しアドレスは１だけインクリメントされる。ポインタステータス回路１ｂ５は、書き込みポインタ（アドレス）と読み出しポインタ（アドレス）の差の絶対値を演算することにより、ＦＩＦＯ１ｂのステータスを出力する。例えば、差の絶対値が“０”の場合は、ＦＩＦＯ１ｂが空であることを示すので「１ｂ：Ｅｍｐｔｙ」信号を出力する。また、この差の絶対値がＦＩＦＯ１ｂの容量（１２８ワード）の８０％以上の場合は、ＦＩＦＯ１ｂの有効データがＦＩＦＯ１ｂの容量の２０％以下であることを示すので「１ｂ＜２０％」信号を出力する。同様に、ＦＩＦＯ１ｂの有効データが２０％から４０％の間の場合は「１ｂ＞２０％」信号を出力し、４０％から６０％の間の場合は「１ｂ＞４０％」信号を出力し、６０％以上の場合は「１ｂ＞６０％」信号を出力する。
【００５８】
図７は、ＦＩＦＯ２ｂの構成を示すブロック図である。
【００５９】
このＦＩＦＯ２ｂは、バスインターフェース回路２ａからＤＳＰ２ｃ方向のＦＩＦＯと逆向きのＦＩＦＯの組み合わせとして実現される。バスインターフェース回路２ａからＤＳＰ２ｃ方向のＦＩＦＯは、同期型デュアルポートＳＲＡＭ２ｂ０、書き込み制御回路２ｂ１、書き込みアドレス生成（ポインタ生成）回路２ｂ２、読み出し制御回路２ｂ３、読み出しアドレス生成（ポインタ生成）回路２ｂ４及びポインタステータス生成回路２ｂ５を備えている。
【００６０】
一方、ＤＳＰ２ｃからバスインターフェース回路２ａ向きのＦＩＦＯは、同期型デュアルポートＳＲＡＭ２ｂ６、書き込みアドレス生成（ポインタ生成）回路２ｂ７、読み出しアドレス生成（ポインタ生成）回路２ｂ８、書き込み制御回路２ｂ９、読み出し制御回路２ｂ１０及びポインタステータス生成回路２ｂ１１を備えている。
【００６１】
デュアルポートＳＲＡＭ２ｂ０は、例えば１２８（ワード）×８（ビット）のデュアルポートＳＲＡＭであり、バスインターフェース回路２ａよりの書き込み有効信号（write en）が入力されるとバスクロック（bus clk）に同期してバス転送データであるWRITE DATAが書き込みアドレス生成（ポインタ生成）回路２ｂ２の生成するメモリアドレスに書き込まれる。このデータの書き込み後、書き込みアドレス生成回路２ｂ２から出力される書き込みポインタ（アドレス）はインクリメントされる。また読み出し動作は、ＤＳＰ２ｃからの読み出し有効信号（read en）が入力されるとＤＳＰクロック（dsp clk）に同期して読み出しアドレス生成（ポインタ生成）回路２ｂ４の生成するポインタの示すアドレスからREAD DATAが出力されるので、これを読み出す。このデータの読み出し後、読み出しアドレス生成回路２ｂ４から出力される読み出しポインタはインクリメントされる。ポインタステータス回路２ｂ５は、これら書き込みポインタと読み出しポインタの差の絶対値を演算することにより、ＦＩＦＯ２ｂのステータスデータを出力する。
【００６２】
またデュアルポートＳＲＡＭ２ｂ６は、例えば１２８（ワード）×８（ビット）のデュアルポートＳＲＡＭで、ＤＳＰ２ｃからの書き込み有効信号（write en）が入力されるとＤＳＰクロック（dsp clk）に同期してバス転送データであるWRITE DATAが書き込みアドレス生成（ポインタ生成）回路２ｂ７の生成するメモリアドレスに書き込まれる。このデータ書き込み後、書き込みアドレス生成回路２ｂ７から出力される書き込みポインタはインクリメントされる。また読み出し動作は、バスインターフェース回路２ａからの読み出し有効信号（read en）が入力されるとバスクロック（bus clk）に同期して読み出しアドレス生成（ポインタ生成）回路２ｂ８の生成するポインタの示すメモリアドレスからREAD DATAを出力するので、これを読み出す。このデータの読み出し後、読み出しアドレス生成回路２ｂ８から出力される読み出しポインタがインクリメントされる。ポインタステータス回路２ｂ１１は、これら書き込みポインタと読み出しポインタの差の絶対値を演算することにより、ＦＩＦＯ２ｂのステータスを出力する。
【００６３】
ＦＩＦＯ２ｂのポインタステータス信号は、上記ポインタステータス回路２ｂ５，２ｂ１１の出力の演算により生成される。例えば、２つのＦＩＦＯポインタの差の絶対値がともに“０”の場合はＦＩＦＯ２ｂが空であることを示すのでＡＮＤ２ｂ１２により「２ｂ：Empty」信号を出力する。２つのＦＩＦＯポインタの差の絶対値がともにＦＩＦＯ２ｂの容量（１２８ワード）の８０％以上の場合はＦＩＦＯ２ｂの有効データがＦＩＦＯ２ｂの容量の２０％以下であることを示すので、ＡＮＤ２ｂ１３により「２ｂ＜２０％」信号を出力する。同様に、少なくとも一方のＦＩＦＯの有効データが２０％から４０％の間の場合は、ＯＲ２ｂ１４により「２ｂ＞２０％」信号を出力し、少なくとも一方が４０％から６０％の間の場合はＯＲ２ｂ１５により「２ｂ＞４０％」信号を出力し、更に少なくとも一方が６０％以上の場合は、ＯＲ２ｂ１６により「２ｂ＞６０％」信号を出力する。
【００６４】
図８は、ＦＩＦＯ３ｂの構成を示すブロック図である。
【００６５】
図８に示すように、ＦＩＦＯ３ｂは同期型デュアルポートＳＲＡＭ３ｂ０、書き込み制御回路３ｂ１、書き込みアドレス生成（ポインタ生成）回路３ｂ２、読み出し制御回路３ｂ３、読み出しアドレス生成（ポインタ生成）回路３ｂ４及びポインタステータス生成回路３ｂ５を備えている。
【００６６】
ここで３ｂ０は、例えば１２８（ワード）×８（ビット）のデュアルポートＳＲＡＭであり、バスインターフェース回路３ａよりの書き込み有効信号（write en）が入力されるとバスクロック（bus clk）に同期してバス転送データであるWRITE DATAが書き込みアドレス生成（ポインタ生成）回路３ｂ２の生成するメモリアドレスに書き込まれる。このデータ書き込み後、書き込みアドレス生成回路３ｂ２から出力される書き込みポインタがインクリメントされる。また読み出し動作は、補間回路３ｃからの読み出し有効信号（read en）が入力されると表示クロック（disp clk）に同期して読み出しアドレス生成（ポインタ生成）回路３ｂ４の生成するポインタの示すメモリアドレスからREAD DATAを出力するのでこれを読み出す。このデータの読み出し後、読み出しアドレス生成回路３ｂ４から出力される読み出しポインタがインクリメントされる。ポインタステータス回路３ｂ５は、これら書き込みポインタと読み出しポインタの差の絶対値を演算することにより、ＦＩＦＯ３ｂのステータスを出力する。例えば、差の絶対値が“１２８”の場合はＦＩＦＯ３ｂが一杯であることを示すので「３ｂ：full」信号を出力し、差の絶対値がＦＩＦＯ３ｂの容量（１２８ワード）の２０％以下の場合は、ＦＩＦＯ３ｂの有効データがＦＩＦＯ容量の８０％以上であることを示すので「３ｂ＞８０％」信号を出力する。同様に、ＦＩＦＯ３ｂの有効データが８０％から６０％の間の場合は「３ｂ＜８０％」信号を出力し、６０％から４０％の間の場合は「３ｂ＜６０％」信号を出力し、４０％以下の場合は「３ｂ＜４０％」信号を出力する。
【００６７】
再び図４を用いてクロック発生器２１の動作を説明する。
【００６８】
各ＦＩＦＯより入力されるポインタステータス信号は、ＡＮＤ２１ｆ，ＯＲ２１ｇ，２１ｈ，２１ｉに入力される。ここでＦＩＦＯ１ｂ，２ｂはＦＩＦＯ内の有効データが少ないほどバスの転送能力に余裕があることを示している。
【００６９】
一方、ＦＩＦＯ３ｂは空き容量がある限りデータを先読みするため、ＦＩＦＯ３ｂがＦＵＬＬに近いほどバスの転送能力に余裕があることを示す。ＡＮＤ２１ｆには、「１ｂ＜２０％」信号と「２ｂ＜２０％」信号と「３ｂ＞８０％」信号が入力されており、全ての入力が“１”である状態は全てのバスマスタにとってバス転送能力が十分あることを示している。従って、クロックの周波数を最低に設定することができるので、ＡＮＤ２ｆの出力をSelＡ入力とし、周波数１０ＭＨｚのクロック信号が選択されるようにする。
【００７０】
次に転送すべきデータ量が増加してＦＩＦＯ１ｂ又はＦＩＦＯ２ｂの少なくとも一方が２０％を超えるか、或はＦＩＦＯ３ｂが８０％を下回った場合は、ＯＲ２１ｇの出力が“１”となり、周波数２０ＭＨｚのクロック信号が選択される。更に転送すべきデータ量が増加してＦＩＦＯ１ｂ又はＦＩＦＯ２ｂの少なくとも一方が４０％を超えるか、或はＦＩＦＯ３ｂが６０％を下回った場合、ＯＲ２１ｂの出力が“１”となり、周波数４０ＭＨｚのクロック信号が選択される。更に転送すべきデータ量が増加してＦＩＦＯ１ｂ又はＦＩＦＯ２ｂの少なくとも一方が６０％を超えるか、或はＦＩＦＯ３ｂが４０％を下回った場合、ＯＲ２１ｉの出力が“１”となり、周波数８０ＭＨｚのクロック信号が選択される。即ち、少なくとも１つのバスマスタのデータ転送能力が不足してきたことを動的に検知してバスクロックの周波数を自動的に高くすることができる。なお、クロック発生器２１のバスクロックを停止するためには、ＣＰＵ５によってクロックオン信号を“０”に設定する。こうすることによりＡＮＤゲート２１ｊによってセレクタ２１ｅで選択されたバスクロックがゲートされ、クロック信号の出力が停止される。
【００７１】
一方、クロック発生器２２は、ＣＰＵ５からのオン信号によりピクセルクロックとして周波数１３．５ＭＨｚのクロック信号を出力する。
【００７２】
次に、クロックゲート回路２３，２４，２５の動作をクロックゲート回路の一例の構成図を用いて説明する。
【００７３】
図９は、クロックゲート回路２３を説明する回路図である。
【００７４】
図９に示すように、クロックゲート回路２３は、バスクロック（bus clk）をＦＩＦＯ１ｂのエンプティ信号である「１ｂ：Empty」信号（図６）の反転信号でゲートする。即ち、画像取り込みコントローラ１の取り込みデータがなくなると自動的に画像取り込みコントローラ１のバスインターフェース回路１ａの動作クロック及びＦＩＦＯ１ｂの読み出しクロックが停止する。
【００７５】
図１０は、クロックゲート回路２４を説明する回路図である。
【００７６】
図１０に示すように、クロックゲート回路２４は、バスクロック（bus clk）をＦＩＦＯ２ｂのエンプティ信号である「２ｂ：Empty」信号（図７）の反転信号でゲートする。即ち、信号処理プロセッサ２の処理データがなくなると自動的に信号処理プロセッサ２のバスインターフェース回路２ａの動作クロック及びＦＩＦＯ２ｂのバス側クロックが停止する。
【００７７】
図１１は、クロックゲート回路２５を説明する回路図である。
【００７８】
図１１に示すように、クロックゲート回路２５は、バスクロック（bus clk）をＦＩＦＯ３ｂのフル信号である「３ｂ：full」信号（図８）の反転信号でゲートする。即ち、表示コントローラ３の表示データをそれ以上読み出せない状態になると自動的に表示コントローラ２のバスインターフェース回路３ａの動作クロック及びＦＩＦＯ３ｂの書き込みクロックが停止する。
【００７９】
フレームレートに対応するクロック発生器１９〜２２及びクロックゲート回路２３〜２６の設定は、ＣＰＵ５によってフレームごとにクロック発生器及びクロックゲート回路を制御することによって行う。例えば、ＥＶＦモードにおいてフレームレートが１０フレーム／ｓと設定されていたならば、画像取り込みコントローラ１及び信号処理プロセッサ２は、３フレームにつき１フレームだけ処理を行えばよいので、取り込みを行わない３フレーム中２フレーム分の期間はクロックゲート回路２３及び２４及びクロック発生器２０により、画像取り込みコントローラ１及び信号処理プロセッサ２へのクロック信号の供給を停止させる。
【００８０】
本実施の形態に示したような間引き方式、補間方式の設定とクロック周波数の制御によれば、あらゆる動作モードにおいてユーザの望む解像度やフレームレートを柔軟に設定できるとともに、ユーザの設定した解像度やフレームレートで正常に動作するためのクロック周波数が自動的に設定されるので、あらゆる動作状況においても最大限の省電力効果が得られる。
【００８１】
なお本発明は、複数の機器（例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００８２】
また本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或は装置に供給し、そのシステム或は装置のコンピュータ（又はCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８３】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８４】
以上に述べたように本実施の形態の携帯型のテレビ電話端末装置によれば、ユーザの利用形態に応じた柔軟な画質の制御が極めて容易に実現可能となり、また、いかなる動作モードにおいても最大限の消費電力削減を行えるいう効果がある。
【００８５】
【発明の効果】
以上説明したように本発明によれば、複数の処理手段のそれぞれに供給するクロック信号の周波数を、各処理手段が有するメモリに記憶されているデータ量の情報に応じて切り替えることにより、装置全体の消費電力を抑えることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る携帯型のテレビ電話端末装置の構成を示すブロック図である。
【図２】本実施の形態の間引き回路の動作の一例を示すタイミングチャート（Ａ）及びラッチクロック（Latch Clock）の生成回路を示す図（Ｂ）である。
【図３】動作モードと間引き方式及び補間方式の対応を説明する図である。
【図４】本実施の形態に係るクロック発生器の構成を示すブロック図である。
【図５】図４のクロックセレクタにおけるクロック選択を説明する図である。
【図６】本実施の形態に係るＦＩＦＯ１ｂの構成例を示すブロック図である。
【図７】本実施の形態に係るＦＩＦＯ２ｂの構成例を示すブロック図である。
【図８】本実施の形態に係るＦＩＦＯ３ｂの構成例を示すブロック図である。
【図９】本実施の形態に係るクロックゲート回路２３の構成例を示す図である。
【図１０】本実施の形態に係るクロックゲート回路２４の構成例を示す図である。
【図１１】本実施の形態に係るクロックゲート回路２５の構成例を示す図である。
【図１】
0004266477.tif 000002
【図２】
0004266477.tif 000003
【図３】
0004266477.tif 000004
【図４】
0004266477.tif 000005
【図５】
0004266477.tif 000006
【図６】
0004266477.tif 000007
【図７】
0004266477.tif 000008
【図８】
0004266477.tif 000009
【図９】
0004266477.tif 000010
【図１０】
0004266477.tif 000011
【図１１】
0004266477.tif 000012