(57)【要約】【課題】記憶媒体用の入出力バスのクロック周波数を決定する際の記録装置の待ち時間を記録装置の容量を大幅に増大させずに低減すると共に、記憶媒体用の入出力バスのクロック周波数が不適切なことによる消費電力の増大を低減する。【解決手段】デジタルカメラ１００で撮像された１枚の画像データを記憶媒体１５０に転送した期間であるバースト転送期間Ｔ２６０と、転送した画像データのデータ量とに基づいて、画像データの記憶媒体１５０への転送速度を導出する。この転送速度と、入出力バスの幅から入出力バスクロック周波数ｆ２を算出し、入出力バスクロック周波数ｆ１を、算出した入出力バスクロック周波数ｆ２に変更する。【選択図】図２
2013025625.tif 000002
【特許請求の範囲】
【請求項１】
着脱可能な記憶媒体に対してデータの入力と出力の少なくとも何れか一方を実行する記録装置であって、
前記記憶媒体への出力がユーザによって指示されたデータが、前記記憶媒体へ出力された際の、当該データの転送時間、または、前記記憶媒体からの入力がユーザによって指示されたデータが、前記記憶媒体から入力された際の、当該データの転送時間を計測する計測手段と、
前記計測手段により計測されたデータの転送時間と、前記記憶媒体へ出力または前記記憶媒体から入力された当該データのデータ量とに基づいて、当該データの転送速度を導出する導出手段と、
前記導出手段により導出された転送速度に応じて、前記記憶媒体と前記記録装置とを相互に接続する部分である入出力バスのクロック周波数を決定する決定手段と、
前記決定手段により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、変更したクロック周波数で前記入出力バスを動作させて、前記記憶媒体へのデータの出力または前記記憶媒体からのデータの入力を行う制御手段と、を有することを特徴とする記録装置。
【請求項２】
前記決定手段は、前記導出手段により導出された転送速度と、前記入出力バスのバス幅とに基づいて、当該入出力バスのクロック周波数を導出することを特徴とする請求項１に記載の記録装置。
【請求項３】
前記決定手段は、前記導出したクロック周波数を前記記録装置に設定できる場合には、当該クロック周波数を、前記入出力バスのクロック周波数として決定し、
前記導出したクロック周波数を前記記録装置に設定できない場合には、前記記録装置に設定できるクロック周波数であって、前記導出手段により導出された転送速度で前記データを前記記憶媒体へ出力または前記記憶媒体から入力できるクロック周波数のうち、当該導出したクロック周波数に最も近いクロック周波数を、前記入出力バスのクロック周波数として決定することを特徴とする請求項２に記載の記録装置。
【請求項４】
前記計測手段による転送時間の計測の開始を指示する計測開始手段と、
前記計測手段による転送時間の計測の終了を指示する計測終了手段と、をさらに有し、
前記計測開始手段は、前記記憶媒体へのデータの出力、または前記記憶媒体からのデータの入力が開始する際に、前記計測手段による転送時間の計測の開始を指示し、
前記計測終了手段は、前記記憶媒体へのデータの出力、または前記記憶媒体からのデータの入力が終了した際に、前記計測手段による転送時間の計測の終了を指示し、
前記計測手段は、前記計測開始手段により計測の開始が指示されたときから、前記計測終了手段により計測の終了が指示されるまでの時間を、前記データの転送時間として計測することを特徴とする請求項１〜３の何れか１項に記載の記録装置。
【請求項５】
前記記録装置は、撮影装置であり、
前記データは、前記撮影装置で撮影された静止画像データ、および前記撮影装置で撮影された動画像データの少なくとも何れか一方であることを特徴とする請求項１〜４の何れか１項に記載の記録装置。
【請求項６】
前記制御手段は、
前記データが静止画像データである場合であって、複数の静止画像データが連続して撮影される場合には、前記記憶媒体に対して入力または出力が行われた静止画像データの枚数、または前記記憶媒体に対して入力または出力が行われた静止画像データの物理層におけるセクタの数が、所定の数になる度に、前記決定手段により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、
前記データが動画像データである場合には、前記記憶媒体に対して入力または出力が行われた動画像データのフレームの数が、所定の数になる度に、前記決定手段により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更することを特徴とする請求項５に記載の記録装置。
【請求項７】
着脱可能な記憶媒体に対してデータの入力と出力の少なくとも何れか一方を実行する記録装置の制御方法であって、
前記記憶媒体への出力がユーザによって指示されたデータが、前記記憶媒体へ出力された際の、当該データの転送時間、または、前記記憶媒体からの入力がユーザによって指示されたデータが、前記記憶媒体から入力された際の、当該データの転送時間を計測する計測工程と、
前記計測工程により計測されたデータの転送時間と、前記記憶媒体へ出力または前記記憶媒体から入力された当該データのデータ量とに基づいて、当該データの転送速度を導出する導出工程と、
前記導出工程により導出された転送速度に応じて、前記記憶媒体と前記記録装置とを相互に接続する部分である入出力バスのクロック周波数を決定する決定工程と、
前記決定工程により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、変更したクロック周波数で前記入出力バスを動作させて、前記記憶媒体へのデータの出力または前記記憶媒体からのデータの入力を行う制御工程と、を有することを特徴とする記録装置の制御方法。
【請求項８】
前記決定工程は、前記導出工程により導出された転送速度と、前記入出力バスのバス幅とに基づいて、当該入出力バスのクロック周波数を導出することを特徴とする請求項７に記載の記録装置の制御方法。
【請求項９】
前記決定工程は、前記導出したクロック周波数を前記記録装置に設定できる場合には、当該クロック周波数を、前記入出力バスのクロック周波数として決定し、
前記導出したクロック周波数を前記記録装置に設定できない場合には、前記記録装置に設定できるクロック周波数であって、前記導出工程により導出された転送速度で前記データを前記記憶媒体へ出力または前記記憶媒体から入力できるクロック周波数のうち、当該導出したクロック周波数に最も近いクロック周波数を、前記入出力バスのクロック周波数として決定することを特徴とする請求項７に記載の記録装置の制御方法。
【請求項１０】
前記計測工程による転送時間の計測の開始を指示する計測開始工程と、
前記計測工程による転送時間の計測の終了を指示する計測終了工程と、をさらに有し、
前記計測開始工程は、前記記憶媒体へのデータの出力、または前記記憶媒体からのデータの入力が開始する際に、前記計測工程による転送時間の計測の開始を指示し、
前記計測終了工程は、前記記憶媒体へのデータの出力、または前記記憶媒体からのデータの入力が終了した際に、前記計測工程による転送時間の計測の終了を指示し、
前記計測工程は、前記計測開始工程により計測の開始が指示されたときから、前記計測終了工程により計測の終了が指示されるまでの時間を、前記データの転送時間として計測することを特徴とする請求項７〜９の何れか１項に記載の記録装置の制御方法。
【請求項１１】
前記記録装置は、撮影装置であり、
前記データは、前記撮影装置で撮影された静止画像データ、および前記撮影装置で撮影された動画像データの少なくとも何れか一方であることを特徴とする請求項７〜１０の何れか１項に記載の記録装置の制御方法。
【請求項１２】
前記制御工程は、
前記データが静止画像データである場合であって、複数の静止画像データが連続して撮影される場合には、前記記憶媒体に対して入力または出力が行われた静止画像データの枚数、または前記記憶媒体に対して入力または出力が行われた静止画像データの物理層におけるセクタの数が、所定の数になる度に、前記決定工程により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、
前記データが動画像データである場合には、前記記憶媒体に対して入力または出力が行われた動画像データのフレームの数が、所定の数になる度に、前記決定工程により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更することを特徴とする請求項１１に記載の記録装置の制御方法。
【請求項１３】
記録装置に装着された着脱可能な記憶媒体に対してデータの入力と出力の少なくとも何れか一方を実行することをコンピュータに実行させるためのコンピュータプログラムであって、
前記記憶媒体への出力がユーザによって指示されたデータが、前記記憶媒体へ出力された際の、当該データの転送時間、または、前記記憶媒体からの入力がユーザによって指示されたデータが、前記記憶媒体から入力された際の、当該データの転送時間を計測する計測工程と、
前記計測工程により計測されたデータの転送時間と、前記記憶媒体へ出力または前記記憶媒体から入力された当該データのデータ量とに基づいて、当該データの転送速度を導出する導出工程と、
前記導出工程により導出された転送速度に応じて、前記記憶媒体と前記記録装置とを相互に接続する部分である入出力バスのクロック周波数を決定する決定工程と、
前記決定工程により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、変更したクロック周波数で前記入出力バスを動作させて、前記記憶媒体へのデータの出力または前記記憶媒体からのデータの入力を行う制御工程と、をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置、記録装置の制御方法、及びコンピュータプログラムに関し、特に、記録装置に装着された着脱可能な記憶媒体に対してデータの入出力を行うために用いて好適なものである。
【背景技術】
【０００２】
記録装置（情報処理装置）の状態に応じて、記録装置全体のクロック周波数（ＣＰＵを動作させるクロック周波数）を低くすることにより、記録装置の消費電力を低減する技術が知られている。
このような技術として、記録装置で動作中のユーザプロセスの有無により記録装置の状態を変え、その状態に応じてクロック周波数を制御する技術が知られている（特許文献１を参照）。
また、記録装置の複数の部分毎に、クロック周波数を個別に制御し、かつ、各部分を監視する技術がある（特許文献２を参照）。この技術では、各部分の動作状態によって、必要に応じて、各部分のクロック周期を下げることで、効率良く記録装置の消費電力を減少させることができる。
一方、最近の着脱可能な記憶媒体（半導体メモリ、磁気ディスク、フラッシュ・メモリ・カード等）は大容量化し、それに比例するようにデータの入出力速度も向上している。
そのため、記録装置に対して着脱される記憶媒体には、データを高速に書き込むことができる記憶媒体もある。
しかしながら、記憶媒体用の入出力バスのクロック周波数を変更できる記録装置に、高速にデータの入出力を行うことに対応していない記憶媒体（例えばフラッシュ・メモリ・カード）を差し込むと、次のような問題が生じる虞がある。すなわち、高いクロック周波数で記憶媒体に対してデータの入出力を行った場合の書き込み速度と、低いクロック周波数で記憶媒体に対してデータの入出力を行った場合の書き込み速度とに、差が生じないことがある。
【０００３】
この結果、記憶媒体用の入出力バスのクロック周波数を変更できる記録装置に、高速にデータの入出力を行うことに対応していない記憶媒体を差し込み、この記憶媒体に対してデータの入出力を行うと、記録装置において無駄な電力を消費する場合がある。この問題に対して、データの書き込み速度をできるだけ落とさずに、記憶媒体用の入出力バスのクロック周波数を低くすることにより、記録装置の無駄な消費電力を低減することができるようにする技術が提案されている（特許文献３を参照）。
【０００４】
特許文献３に記載の技術では、データの入出力速度を著しく低下させない範囲で、記憶媒体用の入出力バスのクロック周波数を可能な限り下げることで最適なクロック周波数を決定する。このクロック周波数を決定する周波数決定処理は、記録装置に記憶媒体を装着したときに実行される。この周波数決定処理において、記録装置に装着された記憶媒体の個体識別情報と、データの入出力速度特性としての「入出力バスのクロック周波数」と、の組で構成された記憶媒体のクロック特性テーブルをＲＯＭに格納する。このとき、記録装置は、データの入出力速度を計測するために、計測に十分な量なデータを記憶媒体に対して送信する。以降、この記憶媒体に供給するクロックは、このクロック特性テーブルに格納された「入出力バスのクロック周波数」で動作する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１９１０１７号公報
【特許文献２】特開２０００−１４８２７９号公報
【特許文献３】特開２００６−３５０９６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献３に記載の技術では、前述の周波数決定処理を、記録装置に記憶媒体を装着したときに行う。このため、記録装置に記憶媒体を装着したタイミングで、データの入出力速度の計測に十分な量のデータを送信してしまうと、記録装置が記憶媒体の装着を検知してから、所定の動作状態に状態を移行するまでに時間を要する可能性がある。例えば、記録装置がデジタルカメラ等の撮像装置である場合、デジタルカメラに記憶媒体が装着されてから、デジタルカメラの状態が撮影可能な動作状態に移行するまで待ち時間が生じる。
【０００７】
また、記憶媒体に十分な空き容量が存在しない場合には、データの入出力速度の計測を実行できない。また、計測に用いるデータ量を小さく制限してしまうと、精度の高いデータの入出力速度を計測することが出来ない。
特許文献３には、計測に時間を要する問題に対して、次のようにすることが記載されている。すなわち、特許文献３に記載の技術では、前述したように、ＲＯＭ等に、記憶媒体のクロック特性テーブルを記憶する。このクロック特性テーブルには、その記憶媒体に固有の個体識別情報と、データの入出力速度特性としての「入出力バスのクロック周波数」とが書き込まれる。このようにすることによって、記憶媒体が挿入された際に、当該記憶媒体についての「入出力バスのクロック周波数」がクロック特性テーブルにある場合には、「入出力バスのクロック周波数」の計測を行わないようにすることができる。
【０００８】
しかしながら、ＲＯＭの容量が限られている記録装置等では、データの入出力速度特性を、記憶媒体毎に逐一記録すると、すぐにＲＯＭの容量が圧迫される。このため、ＲＯＭの容量が限られている記録装置等では、クロック特性テーブルを採用することは難しい。
また、特許文献３の記載の技術では、記録装置は、記憶媒体が装着されたときに、データの入出力速度の計測と、入出力バスのクロック周波数の決定とを実行する。そして、以降は、その入出力バスのクロック周波数で、記憶媒体に対するデータの入出力の動作をし続ける。しかしながら、例えば、記憶媒体の物理的な劣化により、データの入出力速度が低下したり、記憶媒体に形成された論理的な記録形式（ファイルシステム等）におけるデータフラグメント等により、データの入出力速度が低下したりすることがある。特許文献３に記載の技術では、このようなことが、記録装置の動作中に発生しても、それに追従して、入出力バスのクロック周波数を再決定することができない。このため、無駄な電力を記録装置が消費することに繋がる。
【０００９】
そこで、本発明は、記憶媒体用の入出力バスのクロック周波数を決定する際の記録装置の待ち時間を記録装置の容量を大幅に増大させずに低減すると共に、記憶媒体用の入出力バスのクロック周波数が不適切なことによる消費電力の増大を低減することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の記録装置は、着脱可能な記憶媒体に対してデータの入力と出力の少なくとも何れか一方を実行する記録装置であって、前記記憶媒体への出力がユーザによって指示されたデータが、前記記憶媒体へ出力された際の、当該データの転送時間、または、前記記憶媒体からの入力がユーザによって指示されたデータが、前記記憶媒体から入力された際の、当該データの転送時間を計測する計測手段と、前記計測手段により計測されたデータの転送時間と、前記記憶媒体へ出力または前記記憶媒体から入力された当該データのデータ量とに基づいて、当該データの転送速度を導出する導出手段と、前記導出手段により導出された転送速度に応じて、前記記憶媒体と前記記録装置とを相互に接続する部分である入出力バスのクロック周波数を決定する決定手段と、前記決定手段により決定されたクロック周波数に、前記入出力バスのクロック周波数を変更し、変更したクロック周波数で前記入出力バスを動作させて、前記記憶媒体へのデータの出力または前記記憶媒体からのデータの入力を行う制御手段と、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ユーザによって指示されたデータが、着脱可能な記憶媒体に対して出力または入力された際の当該データの転送時間を計測した結果に基づいて当該データの転送速度を導出し、導出した転送速度に応じて、入出力バスのクロック周波数を決定する。このように、実際に記憶媒体に対して出力または入力されたデータを使用する。よって、入出力バスのクロック周波数を決定する際の記録装置の待ち時間を低減することができると共に、入出力バスのクロック周波数を記憶媒体ごとに保持する必要がなくなる。また、実際に記憶媒体に対して出力または入力されたデータを使用するので、入出力バスのクロック周波数を高精度に求めることができる。これにより、記録装置の消費電力の増大を低減することができる。
【図面の簡単な説明】
【００１２】
【図１】デジタルカメラの構成を示す図である。
【図２】スチル画像を１枚撮影する際のデジタルカメラの動作を説明する図である。
【図３】連続撮影をする際のデジタルカメラの動作を説明する図である。
【図４】ＵＭＬのシーケンス図を用いて制御プログラムを説明する図である。
【発明を実施するための形態】
【００１３】
以下に、本発明の実施形態を、図面に基づいて詳しく説明する。
（第１の実施形態）
図１は、本実施形態に係る記録装置の一例であるデジタルカメラの構成の一例を示す図である。
本実施形態の記録装置は、撮像素子を用いて撮影した静止画像又は動画像の画像データを、所定のファイル形式で、当該記録装置に着脱可能な記憶媒体に記録する機能を有する装置である。
以下、各実施形態では、記録装置がデジタルカメラである場合を例に挙げて説明する。しかしながら、記録装置は、当該記録装置に記憶媒体を着脱可能であり、かつ、当該記憶媒体に対してデータの入出力（読み書き）を行うためのインターフェースを有するものであれば、デジタルカメラに限るものではない。例えば、記録装置は、デジタルビデオカメラ、デジタルカメラ付き携帯電話等の、デジタルカメラとしての機能を有する装置であってもよい。
【００１４】
図１において、デジタルカメラ１００には、記憶媒体１５０が着脱される。
撮影レンズユニット１０１は、複数のレンズ（レンズ群）を備えている。デジタルカメラ１００は、撮影レンズユニット１０１を、他の撮影レンズユニットに交換することが可能である。
撮影レンズユニット１０１は、マイクロコンピュータ１２６と通信し、その結果に基づいて、撮影レンズユニット１０１内部のレンズ制御回路１０１ａを制御する。具体的に、撮影レンズユニット１０１は、撮影レンズユニット１０１内のフォーカシングレンズを変移させることにより、焦点を合わせる（すなわち、オートフォーカス機能を実行する）。
フォーカシングレンズの変移量は、測距回路１１７の出力に基づき、マイクロコンピュータ１２６で演算される。また、撮影レンズユニット１０１内には絞り制御回路１０１ｂが設けられている。撮影レンズユニット１０１は、マイクロコンピュータ１２６と通信し、その結果に基づいて、絞り制御回路１０１ｂを制御する。具体的に、撮影レンズユニット１０１は、光学的な絞り値を変化させる。
【００１５】
クイックリターンミラー１０２は、撮影光路中に配置される。クイックリターンミラー１０２は、撮影レンズユニット１０１（撮影レンズ）からの被写体光をファインダ光学系（不図示）に導く位置と撮影光路外に退避する位置との間で移動することが可能である。
シャッタ１０３は、露光を制御するものである。光学フィルタ１０４は、透過する光を調整するものである。光学フィルタ１０４は、防塵ガラスで覆われている。撮像素子１０５は、光学像を電気信号に変換する。Ａ／Ｄ変換器１０６は、撮像素子１０５からのアナログ信号の出力をディジタル信号に変換する。
【００１６】
タイミング発生回路１０８は、撮像素子１０５及びＡ／Ｄ変換器１０６に対してクロック信号や制御信号を供給する。このタイミング発生回路１０８は、後述するメモリ制御回路１１１及びマイクロコンピュータ１２６により制御される。
【００１７】
画像処理回路１０７は、Ａ／Ｄ変換器１０６からの画像データ、或いはメモリ制御回路１１１からの画像データに対して、当該画像データに付加されている処理データ等に基づき、所定の画素補間処理や現像処理等を行う。
メモリ制御回路１１１は、Ａ／Ｄ変換器１０６、画像処理回路１０７、タイミング発生回路１０８、画像表示メモリ１１２、メモリ１１３、及び圧縮／伸長回路１１４を制御する。
Ａ／Ｄ変換器１０６からのデータが、画像処理回路１０７及びメモリ制御回路１１１を介して、画像表示メモリ１１２或いはメモリ１１３に書き込まれる。
表示部１１０は、ＴＦＴ又はＬＣＤ等を備える。画像表示メモリ１１２に書き込まれた表示用の画像データは表示制御回路１０９により表示部１１０に表示される。
【００１８】
メモリ１１３は、例えばＲＡＭであり、以下のメモリ領域を有している。すなわち、メモリ１１３は、撮影した非圧縮の画像データを一時的に格納するイメージバッファとしての領域を有する。また、メモリ１１３は、画像処理回路１０７にて画像データを現像処理する際に使用する処理データや、ＡＦ／ＡＥ／ＡＷＢの演算結果の保持や、その他一時的に使用するデータを記憶するワークバッファとしての領域を有する。また、メモリ１１３は、圧縮／伸長回路１１４で圧縮された圧縮画像データを格納するファイルバッファとしての領域を有する。
メモリ１１３は、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶容量を備えている。これにより、複数枚の静止画像を連続して撮影する連写撮影の場合であっても、メモリ１１３に対して高速にかつ大量の画像データの書き込みを行うことが可能となる。
【００１９】
圧縮／伸長回路１１４は、離散コサイン変換（ＤＣＴ）等により画像データをＪＰＥＧデータとして圧縮伸長する。圧縮／伸長回路１１４は、メモリ１１３に格納された画像データを読み出して圧縮処理或いは伸長処理を行う。圧縮／伸長回路１１４は、圧縮処理或いは伸長処理を終えたデータをメモリ１１３に書き込む。
シャッタ制御回路１１５は、シャッタ１０３の動作を制御する。
【００２０】
ミラー制御回路１１６は、クイックリターンミラー１０２を、撮影光路の内外に駆動する。測距回路１１７は、撮影レンズユニット１０１のフォーカシングレンズの変位量を制御する。測光回路１１８は、被写体の輝度を測定する。測光回路１１８からの出力により、露出が制御される。
【００２１】
記憶媒体制御部１２３は、メモリカード等の記憶媒体１５０に対する読み書きを制御する。記憶媒体制御部１２３は、クロック周波数制御部１２３ａと、内部バッファ１２３ｂとを有する。クロック周波数制御部１２３ａは、記憶媒体制御部１２３から記憶媒体１５０に出力される入出力バスクロック信号の周波数を制御する。内部バッファ１２３ｂは、記憶媒体制御部１２３が記憶媒体１５０とデータを送受信する際、一時的に送受信データを蓄積する。ここで、入出力バスクロック信号は、デジタルカメラ１００と記憶媒体１５０とを接続する部分（入出力バス。本実施形態では、コネクタ１２５及びコネクタ１５１）のクロック信号である。
【００２２】
ＤＭＡ制御部１２４は、メモリ１１３に保存された画像ファイルデータを、記憶媒体制御部１２３を介して記憶媒体１５０に転送する機能と、記憶媒体１５０から転送されたデータを、記憶媒体制御部１２３を介してメモリ１１３に保存する機能とを有する。
マイクロコンピュータ１２６は、デジタルカメラ１００の動作を統括制御する。
タイマ制御部１６０は、基準クロックのサイクル数を計数することによって時間を計測する機能を有する。タイマ制御部１６０は、計測開始レジスタ１６０ａと、計測終了レジスタ１６０ｂと、計測値レジスタ１６０ｃとを有する。計測開始レジスタ１６０ａは、タイマ制御部１６０に、時間の計測の開始を指示するためのレジスタである。計測終了レジスタ１６０ｂは、タイマ制御部１６０に、時間の計測の終了を指示するためのレジスタである。計測値レジスタ１６０ｃは、タイマ制御部１６０によって計測された時間の値を取得するためのレジスタである。
【００２３】
割り込み制御部１６１は、ＤＭＡ制御部１２４や記憶媒体制御部１２３等の各部で発生した割り込みを、マイクロコンピュータ１２６に通知する機能を有する。
不揮発性メモリ１１９には、撮像処理を行うプログラム、画像処理を行うプログラム、及び画像ファイルデータを記憶媒体１５０に記録するプログラム等の各種プログラムが記録されている。また、不揮発性メモリ１１９には、これらのプログラムのマルチタスク構成を実現し実行するＯＳ等の各種プログラム、及び各種制御を行うための調整値等が記録されている。
【００２４】
次に、デジタルカメラ１００が備える各操作部材の一例について説明する。
レリーズスイッチ１２０及びメニュー操作スイッチ１２１は、マイクロコンピュータ１２６の各種の動作指示を入力するための操作部材である。レリーズスイッチ１２０及びメニュー操作スイッチ１２１は、各種ボタンスイッチ、ダイアル、及びタッチパネルの少なくとも何れか１つ等により構成される。
ここで、これらの操作部材の一例を具体的に説明する。
【００２５】
レリーズスイッチ１２０は、次に示す一連の処理の動作開始を指示するための操作部材である。レリーズスイッチ１２０がユーザによって半押しされると、レリーズスイッチ１２０はＳＷ１の状態となり、そのことを示す信号がマイクロコンピュータ１２６に出力される。この信号がマイクロコンピュータ１２６に出力されると、ＡＦ（オートフォーカス）処理、及びＡＥ（自動露出）処理等の撮影準備動作の開始が指示する。レリーズスイッチ１２０がユーザによって全押しされると、レリーズスイッチ１２０はＳＷ２の状態となり、そのことを示す信号がマイクロコンピュータ１２６に出力される。この信号がマイクロコンピュータ１２６に出力されると、撮像処理、ホワイトバランス補正処理、現像処理、及び記録処理等が行われる。撮像処理は、撮像素子１０５から出力された信号を、Ａ／Ｄ変換器１０６及びメモリ制御回路１１１を介して、メモリ１１３に画像データとして書き込む処理である。ホワイトバランス補正処理は、画像データに対して設定されているホワイトバランスモードに応じて、ホワイトバランスを調整する処理である。ホワイトバランス補正処理は、画像処理回路１０７により実行される。記録処理は、メモリ１１３から、現像された画像データ（撮像データ）を読み出し、その撮像データに対して圧縮を行い、記憶媒体１５０に圧縮された撮像データを書き込む処理である。撮像データに対する圧縮は、圧縮／伸長回路１１４により行われる。
【００２６】
メニュー操作スイッチ１２１は、例えば、不図示のメニューキー、セットキー、及び十字キーの組み合わせで構成される。ユーザは、デジタルカメラ１００の撮影条件や現像条件等の各種設定の変更や、外部記憶媒体の省電力モードの選択等の各種操作を、表示部１１０に表示される画面表示を見ながらメニュー操作スイッチ１２１を操作することにより行うことができる。
【００２７】
次に、デジタルカメラ１００と接続される各構成要素及び付属部材について説明する。
電源制御回路１２２は、電池検出回路、ＤＣ−ＤＣコンバータ、及び通電するブロックを切り換えるスイッチ回路等を備える。
電源制御回路１２２は、電池の装着の有無、電池の種類、及び電池残量の検出を行う。そして、電源制御回路１２２は、これらの検出結果と、マイクロコンピュータ１２６からの指示とに基づいて、ＤＣ−ＤＣコンバータを制御する。これにより、必要な電圧が必要な期間、記憶媒体１５０を含む各部へ供給される。
コネクタ１２５は、デジタルカメラ１００と、メモリカード等の記憶媒体１５０とを相互に電気的に接続するためのものである。
【００２８】
記憶媒体１５０は、例えば、半導体メモリで構成されたメモリカードである。記憶媒体１５０は、コネクタ１５１と、メモリ制御部１５２と、記憶媒体部１５３とを有する。コネクタ１５１は、デジタルカメラ１００と記憶媒体１５０とを相互に電気的に接続するためのものである。メモリ制御部１５２は、記憶媒体部１５３に対するデータの読み書きを制御する。記憶媒体部１５３は、例えば、半導体メモリから構成される。
【００２９】
前述したように、レリーズスイッチ１２０の全押し（ＳＷ２操作）によって撮像処理が開始されると、撮像データがメモリ１１３に書き込まれる。そして、圧縮・伸長回路１１４は、メモリ１１３に書き込まれた撮像データに対して圧縮を行い、撮像データをＪＰＥＧ等の画像データとする。この画像データが、記憶媒体制御部１２３を介して、メモリ１１３から記憶媒体１５０に転送される。
【００３０】
この際、メモリ１１３から、記憶媒体制御部１２３の内部バッファ１２３ｂに対しての画像データの転送は、ＤＭＡ制御部１２４によって行われる。
記憶媒体制御部１２３は、自身の内部バッファ１２３ｂに、一定量のデータが蓄積されると、クロック周波数制御部１２３ａが発生する入出力バスクロック信号に同期して画像データを転送する。
【００３１】
図２は、スチル画像を１枚撮影する際のデジタルカメラ１００の動作の一例を説明する図である。
図２を参照しながら、デジタルカメラ１００が記憶媒体１５０への画像データの転送を開始してから、画像データの転送時の転送速度に応じて入出力バスクロック周波数を変更するまでの一連の工程の一例を説明する。
【００３２】
図２において、横軸は、時間軸を表している。図２では、各信号及び状態の時間推移を示している。
レリーズスイッチＳＷ２信号２００は、レリーズスイッチ１２０のＳＷ２のオン・オフの状態を示す信号である。レリーズスイッチ１２０のＳＷ２がオンの状態（レリーズスイッチ１２０が全押しの状態）のときに、レリーズスイッチＳＷ２信号２００の信号レベルはＨｉｇｈになる。一方、レリーズスイッチ１２０のＳＷ２がオフの状態（レリーズスイッチ１２０の全押しが解除された状態）のときに、レリーズスイッチＳＷ２信号２００の信号レベルはＬｏｗになる。
転送開始指示信号２０１は、マイクロコンピュータ１２６がＤＭＡ制御部１２４に対して、画像データのＤＭＡ転送の開始を指示するタイミングを示す信号である。転送開始指示信号２０１は、画像データのＤＭＡ転送の開始が指示されるタイミングで一定時間Ｈｉｇｈになる。
【００３３】
クロック信号２０２は、入出力バスクロック信号である。
データバス状態２０３は、画像データの転送状態を示す。
転送完了通知信号２０４は、画像データの転送の完了を通知するタイミングを示す信号である。転送完了通知信号２０４は、画像データの転送の完了が通知されるタイミングで一定時間Ｈｉｇｈになる。
記録装置内部処理２０５は、デジタルカメラ１００の内部処理の状態遷移を示す。
【００３４】
まず、ステップＳ２２０のタイミングで、マイクロコンピュータ１２６は、レリーズスイッチ１２０のＳＷ２がオンの状態、すなわち、レリーズスイッチ１２０が全押し状態になったことを検知すると、撮像処理ＳＴ２３０を実行する。
そして、１枚分の画像データが生成されると、マイクロコンピュータ１２６は、計測開始処理ＳＴ２３１を実行する。具体的に、マイクロコンピュータ１２６は、タイマ制御部１６０の計測開始レジスタ１６０ａを設定し、時間の計測を開始させる。
次に、ステップＳ２２１のタイミングで、マイクロコンピュータ１２６は、ＤＭＡ制御部１２４に対して、画像データのＤＭＡ転送の開始を指示する。
【００３５】
このＤＭＡ転送の開始の指示により、ＤＭＡ制御部１２４は、転送開始処理ＳＴ２３２を実行する。具体的に、ＤＭＡ制御部１２４は、記憶媒体制御部１２３の内部バッファ１２３ｂに対して画像データを送信する。
記憶媒体制御部１２３は、内部バッファ１２３ｂに一定量の画像データが蓄積されると、送信対象の画像データは、例えば、セクタブロック単位等の「入出力バス物理層の転送データブロック単位」に分割され、記憶媒体１５０に送信される。
【００３６】
まず、記憶媒体制御部１２３は、入出力バスクロック信号に同期して、記憶媒体１５０に転送する画像データ（転送データブロック２０６）を送信する。
このとき記憶媒体１５０は、受信した転送データブロック２０６を、メモリ制御部１５２を介して記憶媒体部１５３に書き込む。記憶媒体１５０は、記憶媒体部１５３への書き込み速度限界等により、これ以上、転送データブロック２０６を受信できなくなると、デジタルカメラ１００からの転送データブロック２０６の受信を一時的に中断する。そのために、記憶媒体１５０は、Ｂｕｓｙ信号２０７をデジタルカメラ１００に送信する。
【００３７】
Ｂｕｓｙ信号２０７が記憶媒体１５０によって解除されると、デジタルカメラ１００は、転送データブロック２０８を送信する（転送データブロックの送信を再開する）。
その後、再び記憶媒体１５０からＢｕｓｙ信号２０９が送信されると、デジタルカメラ１００は、再び転送データブロック２０８の送信を中断する。
その後、再びＢｕｓｙ信号２０９が記憶媒体１５０によって解除されると、デジタルカメラ１００は、転送データブロック２１０を送信する（転送データブロックの送信を再開する）。
【００３８】
ここで、転送データブロック２０６の送信から転送データブロック２１０の送信までの一連の区間をバースト転送期間Ｔ２６０と称する。バースト転送期間Ｔ２６０におけるデジタルカメラ１００の処理を転送１回目バースト転送処理ＳＴ２３３と称する。
このバースト転送期間Ｔ２６０は、周波数ｆ１期間Ｔ２７０に含まれている。周波数ｆ１期間Ｔ２７０は、クロック信号２０２（入出力バスクロック信号）がクロック周波数ｆ１で動作している期間である。バースト転送期間Ｔ２６０における一連のデータの転送は、このクロック周波数ｆ１のクロック信号２０２に同期して行われる。
【００３９】
転送データブロック２１０の転送の完了によって、ＤＭＡ制御部１２４に予め指定されたデータ転送量分の転送データブロックの転送が完了すると、ステップＳ２２２のタイミングで、マイクロコンピュータ１２６に対して転送の完了が通知される。この通知は、例えば、割り込み制御部１６１からマイクロコンピュータ１２６への割り込み通知処理等により行われる。この転送完了通知を受けると、マイクロコンピュータ１２６は、転送終了処理ＳＴ２３４を行う。そして、マイクロコンピュータ１２６は、計測終了処理ＳＴ２３５を行う。具体的に、マイクロコンピュータ１２６は、タイマ制御部１６０の計測終了レジスタ１６０ｂを設定し、タイマ制御部１６０に対して、時間の計測の終了を指示する。さらに、マイクロコンピュータ１２６は、計測値レジスタ１６０ｃから読み出された計測値、すなわちバースト転送期間Ｔ２６０を読み出す。
【００４０】
次に、マイクロコンピュータ１２６は、転送速度算出処理ＳＴ２３６を実行する。具体的に、マイクロコンピュータ１２６は、タイマ制御部１６０により計測されたバースト転送期間Ｔ２６０と、バースト転送期間Ｔ２６０で実際に転送されたデータのデータ量（の総量）とから、転送速度を算出する処理を実行する。転送速度は、以下の（式１）のようにして求められる。
[転送速度（ｂｉｔ／ｓ）]＝[転送総量（ｂｉｔ）]／[バースト転送期間（ｓ）]  ・・・（式１）
【００４１】
次に、マイクロコンピュータ１２６は、周波数算出・変更処理ＳＴ２３７を実行する。具体的に、マイクロコンピュータ１２６は、以上のようにして算出された転送速度を、入出力バスのバス幅のビット数で除算することで、入出力バスクロック信号のクロック周波数ｆ２を算出する（（式２）を参照）。以下の説明では、入出力バスクロック信号のクロック周波数を必要に応じて「入出力バスクロック周波数」と称する。
[入出力バスクロック周波数ｆ２（Ｈｚ）]＝[転送速度（ｂｉｔ／ｓ）]／[入出力バスのバス幅（ｂｉｔ）]  ・・・（式２）
【００４２】
尚、クロック周波数制御部１２３ａの周波数設定値の精度上、（式２）で算出された入出力バスクロック周波数の値をそのままクロック周波数制御部１２３ａに設定出来ない場合がある。このような場合、マイクロコンピュータ１２６は、クロック周波数制御部１２３ａに設定可能な精度でその近傍値を求め、求めた近傍値を、クロック周波数制御部１２３ａに設定する「入出力バスクロック信号のクロック周波数」として決定することができる。近傍値は、クロック周波数制御部１２３ａに設定可能な周波数であって、（式１）で算出された転送速度でデータを転送可能な周波数のうち、（式２）で算出された入出力バスクロック周波数に最も近い周波数である。
【００４３】
マイクロコンピュータ１２６は、以上のようにして得られる新たな入出力バスクロック周波数ｆ２をクロック周波数制御部１２３ａに再設定する。そうすると、ステップＳ２２３のタイミングで、クロック周波数制御部１２３ａは、新たな入出力バスクロック周波数ｆ２のクロック信号２０２を記憶媒体１５０に出力し始める。以降、周波数ｆ２期間Ｔ２７１の間、入出力バスのデータの転送は、入出力バスクロック周波数ｆ２のクロック信号２０２に同期して行われる。
【００４４】
以上のように本実施形態では、デジタルカメラ１００で撮像された１枚の画像データの、記憶媒体１５０との間の転送時間であるバースト転送期間Ｔ２６０と、転送した画像データのデータ量とに基づいて、画像データの記憶媒体１５０への転送速度を導出する。この転送速度と、入出力バスの幅から入出力バスクロック周波数ｆ２を算出し、入出力バスクロック周波数ｆ１を、算出した入出力バスクロック周波数ｆ２に変更する。
【００４５】
このように、デジタルカメラ１００が記憶媒体１５０に実際の画像データを記録している際に、その画像データを用いて転送速度（記憶媒体１５０への画像データの出力速度）を計測する。このため、例えば、デジタルカメラ１００の起動時の記憶媒体１５０の認識時や、記憶媒体１５０の挿入時等に、転送速度を計測するためのデータの書き込みを行う必要がなくなる。よって、所定の動作（例えば撮影動作）を開始するまでのデジタルカメラ１００の待ち時間を可及的に短くすることができる。また、記憶媒体１５０毎に、入出力バスクロック周波数を個別に記憶する必要がなくなる。
また、ユーザの動作の指示に基づき、実際にデジタルカメラ１００が記憶媒体１５０に記録する画像データを用いて、転送速度を計測する。このため、より実際のデータの入出力に即した精度の高いバースト転送期間Ｔ２６０の算出が可能になる。これにより、入出力バスクロック周波数も高精度に算出することができる。さらに、実際の運用中に、記憶媒体１５０の物理的な劣化や、記録形式のデータフラグメントに起因して、記憶媒体１５０に対するデータの入出力速度の低下が発生しても、その時の入出力速度に応じた入力バスクロック周波数を算出することができる。以上により、デジタルカメラ１００における無駄な消費電力を更に低減することができる。
【００４６】
本実施形態では、デジタルカメラ１００から記憶媒体１５０へ画像データを書き込むときに、記憶媒体１５０への画像データの出力速度を転送速度として計測（算出）する場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はない。すなわち、デジタルカメラ１００が、記憶媒体１５０から画像データを読み出すときに、記憶媒体１５０からのデータの入力速度を計測（算出）するようにしてもよい。
【００４７】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。第１の実施形態では、デジタルカメラ１００で１枚の画像データの撮影を実行した際の「当該画像データの記憶媒体１５０への転送と、入出力バスクロック周波数の変更のタイミング」等について説明した。これに対し、本実施形態では、画像データの連続撮影を実行した際の「当該画像データの記憶媒体１５０への転送と、入出力バスクロック周波数の変更のタイミング」等について説明する。このように、本実施形態は、複数枚の画像データを連続して撮影することによる処理が第１の実施形態と主として異なる。したがって、本実施形態の説明において、第１の実施形態と同一の部分については、図１及び図２に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００４８】
図３は、連続撮影をする際のデジタルカメラ１００の動作の一例を説明する図である。図３において、横軸は、時間軸を表している。図２では、各信号及び状態の時間推移を示している。図３に示すレリーズスイッチＳＷ２信号３００、転送開始指示信号３０１、クロック信号３０２、データバス状態３０３、転送完了通知信号３０４、記録装置内部処理３０５の意味は、図２に示したものと同じである。また、周波数ｆ１期間Ｔ２７０及びバースト転送期間Ｔ２６０の意味も、図２に示したものと同じである。さらに、記録装置内部処理２０５に含まれる各処理の意味も、図２に示したものと同じである。
【００４９】
まず、ステップＳ２２０のタイミングで、マイクロコンピュータ１２６は、レリーズスイッチ１２０のＳＷ２がオンの状態、すなわち、レリーズスイッチ１２０が全押しの状態になったことを検知すると、撮像処理ＳＴ３３０を実行する。
この撮像処理ＳＴ３３０では、デジタルカメラ１００は、レリーズスイッチ１２０のＳＷ２が引き続きオンの状態（全押しが継続している状態）にある場合、連続的に画像データを生成し、生成した画像データを、メモリ１１３に蓄積出来る限り格納する。
【００５０】
撮像処理ＳＴ３３０が終わると、マイクロコンピュータ１２６は、計測開始処理ＳＴ３３１を実行して、タイマ制御部１６０の時間計測機能を起動する。次に、ステップＳ３２１のタイミングで、マイクロコンピュータ１２６は、ＤＭＡ制御部１２４に対して、画像データの転送の開始を指示する。そして、最終的にステップＳ３２３のタイミングで、入出力バスのクロック信号３０２の入出力バスクロック周波数がｆ１からｆ２に変更される。これら計測開始処理ＳＴ３３１から周波数算出・変更処理ＳＴ３３７までの工程は、第１の実施形態と同じである。
【００５１】
以上のようにして１枚目の画像データの記憶媒体１５０への転送と１回目の入出力バスクロック周波数の変更とが完了した後、２枚目の画像データの転送が開始する。
まず、マイクロコンピュータ１２６は、計測開始処理ＳＴ３３８を実行する。具体的に、マイクロコンピュータ１２６は、タイマ制御部１６０の計測開始レジスタ１６０ａを設定し、時間の計測を開始させる。次に、ステップＳ３２３のタイミングで、マイクロコンピュータ１２６は、ＤＭＡ制御部１２４に対して、画像データの転送の開始を指示する。
そして、ＤＭＡ制御部１２４は、転送開始処理ＳＴ３３９を実行する。具体的に、ＤＭＡ制御部１２４は、記憶媒体制御部１２３の内部バッファ１２３ｂに対して２枚目の画像データを送信する。
前述した通り、入出力バスクロック周波数はｆ１からｆ２に変更されている。よって、転送２回目バースト転送処理ＳＴ３４０では、転送２回目において転送される転送データブロック３１１、３１２、３１３は、入出力バスクロック周波数ｆ２のクロック信号に同期して送信される。
【００５２】
２回目の転送における全ての転送データブロック３１１、３１２、３１３の送信が完了すると、ステップＳ３２５のタイミングで、ＤＭＡ制御部１２４は、マイクロコンピュータ１２６に対して転送の完了を通知する。以降の処理は、第１の実施形態と同じである。すなわち、転送終了処理ＳＴ３４１は、図２に示した転送終了処理ＳＴ２３４と同じであり、計測終了処理ＳＴ３４２は、図２に示した計測終了処理ＳＴ２３５と同じである。さらに、転送速度算出処理ＳＴ３４３は、図２に示した転送速度算出処理ＳＴ２３６と同じであり、周波数算出・変更処理ＳＴ３４４は、図２に示した周波数算出・変更処理ＳＴ２３７と同じである。
【００５３】
２回目の転送時に使用される入出力バスクロック周波数ｆ２は、１回目の転送に使用された入出力バスクロック周波数ｆ１よりも低速である。このため、入出力バスにおけるデータの通信速度は低下する。これにより、記憶媒体１５０の記憶媒体部１５３へのデータの書き込み速度が、入出力バスのデータ通信速度に追いつかないことによって、Ｂｕｓｙ信号の送信と、データの送受信の一時停止とが発生してしまうことを抑制できる。すなわち、Ｂｕｓｙ信号の送信と、データの送受信の一時停止とが発生しなくなったり、それらの発生頻度が低減されたりする。
【００５４】
図３に示すように、２回目のバースト転送期間Ｔ３６１の間、Ｂｕｓｙ信号は発生しない。したがって、転送データブロック３１１、３１２、３１３の送信のみに入出力バスの帯域が使用される。よって、入出力バスクロック周波数自体は、１回目の転送のときよりも低下するものの、２回目のバースト転送期間Ｔ３６１内の全クロックサイクルで転送データブロック３１１、３１２、３１３を送信できる。その結果、１回目のバースト転送期間Ｔ３６０の時のように、Ｂｕｓｙ信号３０７、３０９によって、転送データブロックを送信できないサイクルがなくなる。これにより、２回目のバースト転送期間Ｔ３６１全体としてみれば、２回目のバースト転送期間Ｔ３６１のときの方が１回目のバースト転送期間Ｔ３６０のときよりも、データ転送速度を落とすことなく通信が可能となる。
【００５５】
以上のように本実施形態では、スチル画像（静止画像）の連続撮影を行う場合には、スチル画像を転送する度に、入出力バスクロック周波数を変更する。したがって、第１の実施形態で説明した効果に加えて、画像データの転送速度を低下させることなく、より低い入出力バスクロック周波数で画像データの送信を行うことが可能になる。よって、より省電力で入出力バスを動作させることが可能になる。
【００５６】
本実施形態では、バースト転送期間Ｔ３６０、Ｔ３６１で転送される画像データが、夫々１枚目の画像データ、２枚目の画像データである場合を例に挙げて説明した。すなわち、１枚のスチル撮影毎に、入出力バスクロック周波数が変更される場合を例に挙げて説明した。しかしながら、入出力バスクロック周波数を変更する契機は、１枚のスチル画像の撮影毎でなくてもよい。例えば、所定の複数枚のスチル画像の撮影に対して１回の頻度で入出力バスクロック周波数を変更してもよい。また、画像データの枚数の単位ではなく、画像データの物理層におけるセクタの単位で入出力バスクロック周波数を変更する契機を定めてもよい。例えば、１セクタ単位毎、もしくは数〜数十セクタ単位の画像データの書き込みがある度に、入出力バスクロック周波数を変更してもよい。
以上のように、入出力バスクロック周波数を変更するタイミングは、画像データの転送毎という転送単位に制約されるものではない。
【００５７】
また、本実施形態では、スチル画像の連続撮影を行う場合を例に挙げて説明した。しかしながら、画像データは、スチル画像データ（静止画像データ）に限定されるものではない。すなわち、画像データは、動画像データであってもよい。このようにする場合、動画像のフレームが所定数（１つ又は複数）記憶媒体１５０に転送される度に、入出力バスクロック周波数を変更することができる。すなわち、本実施形態におけるスチル画像データを、動画撮影における動画像データの記録フレームに置き換えることにより、動画像データについても、本実施形態で説明したのと同じようにして、入出力バスクロック周波数を変更することができる。この場合、記録装置（デジタルカメラ１００）は、動画像を撮影することが可能なデジタルビデオカメラ等になる。
【００５８】
また、本実施形態においても、第１の実施形態と同様に、デジタルカメラ１００から記憶媒体１５０へ画像データを書き込むときに、記憶媒体１５０への画像データの出力速度を転送速度として計測（算出）する場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はない。すなわち、デジタルカメラ１００が、記憶媒体１５０から画像データを読み出すときに、記憶媒体１５０からのデータの入力速度を計測（算出）するようにしてもよい。
【００５９】
（制御プログラム）
図４は、ＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）のシーケンス図を用いて、各実施形態における制御プログラムの一例を説明する図である。
図４において、メイン部４００は、制御プログラムの本体モジュールである。画像処理ドライバ４０１は、画像処理回路１０７を制御するデバイスドライバである。タイマ制御ドライバ４０２は、タイマ制御部１６０を制御するデバイスドライバである。ＤＭＡ制御ドライバ４０３は、ＤＭＡ制御部１２４を制御するデバイスドライバである。入出力バスクロック制御ドライバ４０４は、クロック周波数制御部１２３ａを制御するデバイスドライバである。
【００６０】
まず、ステップＳ４１０において、メイン部４００は、レリーズスイッチ１２０の全押し（ＳＷ２のオン）を検知する。これを契機に、ステップＳ４１１において、メイン部４００は、画像処理ドライバ４０１に対して撮像の開始要求を出す。
この要求を受けると、画像処理ドライバ４０１は、ステップＳ４１１ａにおいて、画像処理回路１０７を制御して、画像データの撮影及び現像処理等を実行する。
【００６１】
画像処理回路１０７が撮像を完了すると、画像処理ドライバ４０１は、ステップＳ４１２において、割り込みハンドラ等を用いてメイン部４００に対し画像データの取得を通知する。
次に、ステップＳ４１３において、メイン部４００は、タイマ制御ドライバ４０２に対して、時間の計測開始を要求する。この要求を受けると、タイマ制御ドライバ４０２は、ステップＳ４１３ａにおいて、タイマ制御部１６０の計測開始レジスタ１６０ａを設定して、時間計測機能を起動する。
【００６２】
次に、ステップＳ４１４において、メイン部４００は、ＤＭＡ制御ドライバ４０３に対して、ＤＭＡ転送開始を要求する。このとき、メイン部４００は、ＤＭＡ制御ドライバ４０３に対して、転送データサイズや、ＤＭＡ転送開始番地を通知する。ＤＭＡ転送開始番地は、転送データブロックが格納されている「メモリ１１３の領域」の先頭の番地である。
この要求を受けると、ＤＭＡ制御ドライバ４０３は、ステップＳ４１４ａにおいて、ＤＭＡ制御部１２４を制御してＤＭＡ転送機能を起動する。
【００６３】
その後、ＤＭＡ制御部１２４が先に指定された転送データサイズ分だけのＤＭＡ転送を完了すると、ステップＳ４１５において、ＤＭＡ制御ドライバ４０３は、割り込みハンドラ等を介して、メイン部４００にＤＭＡ転送完了を通知する。
【００６４】
このＤＭＡ転送完了通知を受けると、メイン部４００は、ステップＳ４１６において、タイマ制御ドライバ４０２に対して、時間の計測終了を要求する。この要求を受けると、タイマ制御ドライバ４０２は、タイマ制御部１６０の計測終了レジスタ１６０ｂを設定して、時間計測機能を停止する。
次に、ステップＳ４１７において、メイン部４００は、タイマ制御ドライバ４０２に対して、データの転送期間中に実測した時間の計測値の取得を要求する。
この要求を受けると、タイマ制御ドライバ４０２は、ステップＳ４１７ａにおいて、タイマ制御部１６０の計測値レジスタ１６０ｃを参照して、実測した時間の計測値を取得する。そして、ステップＳ４１８において、タイマ制御ドライバ４０２は、メイン部４００に対し、計測値を返信する。
【００６５】
そして、ステップＳ４１９において、メイン部４００は、計測値と、転送データサイズの値とに基づいて、第１の実施形態で説明したようにして、データの転送速度の算出を行う（（式１）を参照）。
次に、ステップＳ４２０において、メイン部４００は、データの転送速度と入出力バスのバス幅とに基づいて、第１の実施形態で説明したようにして、新たな入出力バスクロック周波数を算出する（（式２）を参照）。
【００６６】
次に、ステップＳ４２１において、メイン部４００は、入出力バスクロック制御ドライバ４０４に対して、入出力バスクロック周波数を新たな入出力バスクロック周波数に変更することを要求する。
この要求を受けると、入出力バスクロック制御ドライバ４０４は、ステップＳ４２１ａにおいて、クロック周波数制御部１２３ｂに、新たな入出力バスクロック周波数の値を設定する。これにより、発生する入出力バスクロック周波数が変更される。
【００６７】
もし、ステップＳ４１１での撮像の開始要求が、１枚のスチル画像の撮影の開始要求である場合には、この時点で、メモリ１１３に記憶されていた画像データの、記憶媒体１５０への転送が完了している。このため、一連のデータの転送及び入出力バスクロック周波数の転送は完了する。
一方、ステップＳ４１２での撮像の開始要求が、連続撮影の開始要求である場合には、メモリ１１３に、未転送の画像データが残っていることがある。このため、未転送の画像データがなくなるまで、再び一連のデータ転送及び入出力クロック周波数の転送（ステップＳ４１３〜Ｓ４２１ａの処理）を繰り返す（ステップＳ４２２）。
【００６８】
前述したように、クロック周波数制御部１２３ａの周波数設定値の精度上、ステップＳ４２０で算出された入出力バスクロック周波数の値を、そのままでクロック周波数制御部１２３ａに設定出来ない場合には、次のようにする。すなわち、クロック周波数制御部１２３ａに設定可能な精度で、ステップＳ４２０で算出された入出力バスクロック周波数の近傍値を求める。
また、デジタルカメラ１００から記憶媒体１５０へのデータの書き込み時、及び記憶媒体１５０からデジタルカメラ１００へのデータ読み出し時のどちらであっても、図４に示す制御プログラムを適用することができる。
【００６９】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００７０】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が当該コンピュータプログラムを読み出して実行する。
【符号の説明】
【００７１】
１００  デジタルカメラ、１２３  記憶媒体制御部、１５０  記憶媒体
【図１】
2013025625.tif 000003
【図２】
2013025625.tif 000004
【図３】
2013025625.tif 000005
【図４】
2013025625.tif 000006