(57)【特許請求の範囲】
【請求項１】
共通バスに転送される転送データを一時的に格納するバッファ部と、
入力データを前記転送データとして前記バッファ部にライトするライト制御部と、
前記バッファ部から前記転送データをリードするリード制御部と、
前記リード制御部により前記バッファ部からリードされた前記転送データを、所定のバスプロトコルに従って前記共通バスに転送するインターフェイス部と、
フレーム画像に含まれる最終転送データ以外の転送データを前記共通バスに転送する際の転送データ間の時間間隔を第１の時間に設定し、前記最終転送データを前記共通バスに転送する際の転送データ間の時間間隔を前記第１の時間よりも短い第２の時間に設定することにより、前記共通バスの帯域を平滑化する帯域平滑部と、
を備えたデータ転送装置。
【請求項２】
前記帯域平滑部は、
前記フレーム画像上の前記転送データの位置を示す座標情報に基づき前記時間間隔を前記第１の時間または前記第２の時間に設定することを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記帯域平滑部は、
前記最終転送データ以外の転送データを転送する際の時間間隔に関する第１パラメータと、前記最終転送データを転送する際の時間間隔に関する第２パラメータとを有し、
前記転送データのフレーム画像上の位置が前記最終転送データ以外の転送データの位置である場合、前記第１パラメータを用いて前記転送データ間の時間間隔を前記第１の時間に設定し、
前記転送データのフレーム画像上の位置が前記最終転送データの位置である場合、前記第２パラメータを用いて前記転送データ間の時間間隔を前記第２の時間に設定することを特徴とする請求項１または２に記載のデータ転送装置。
【請求項４】
前記バッファ部の残容量を判定する判定部を更に備え、
前記帯域平滑部は、
前記判定部の判定結果に応じて、前記転送データ間の時間間隔を調整し、前記バッファ部の残容量が少ない程、前記転送データ間の時間間隔を減少させることを特徴とする請求項１から３の何れか１項に記載のデータ転送装置。
【請求項５】
ライト制御部が、共通バスに転送される転送データとして入力データをバッファ部にライトする第１段階と、
リード制御部が、前記バッファ部から前記転送データをリードし、インターフェイス部が、前記バッファ部からリードされた前記転送データを、所定のバスプロトコルに従って前記共通バスに転送する第２段階と、
を含み、
前記第２段階では、
帯域平滑部が、フレーム画像に含まれる最終転送データ以外の転送データを前記共通バスに転送する際の転送データ間の時間間隔を第１の時間に設定し、前記最終転送データを前記共通バスに転送する際の転送データ間の時間間隔を前記第１の時間よりも短い第２の時間に設定することにより、前記共通バスの帯域を平滑化する、データ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送装置およびデータ転送方法に関する。
【背景技術】
【０００２】
従来、デジタルカメラ等の撮像システムは、各種の機能ブロックが割り当てられた複数のＬＳＩ(Large Scale Integration)を備えている。上記複数のＬＳＩは、ＤＭＡ(Direct Memory Access)用の共通バスに接続されており、上記複数のＬＳＩにそれぞれ割り当てられた複数の機能ブロックが上記共通バスを介して１つのＤＲＡＭ(Dynamic Random Access Memory)を共有している。複数の機能ブロックが上記共通バスを共有するために、この種のシステムには、所謂バスアービタが備えられている。
【０００３】
一般に、バスアービタによるアービトレーションによれば、優先度の高い機能ブロックがＤＭＡ転送要求を連続的に出力した場合、他の機能ブロックにバス権が渡らず、他の機能ブロックの処理が破綻する場合が起こり得る。この問題の解決を図った従来技術として、特許文献１に開示された技術がある。この従来技術では、優先度の高い機能ブロックが一定の時間間隔を空けてＤＭＡ転送要求を出力し、共通バスの帯域を平滑化することにより、当該機能ブロックのＤＭＡ転送要求が連続しても、バスアービタが優先度の低い他の機能ブロックのＤＭＡ転送要求を受け付けることを可能にしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３９６７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術によれば、共通バスを平滑化した結果、或るフレームの転送データが次のフレームの転送データと共通バス上で干渉し、転送データの転送処理が困難になる場合が起こり得るという問題がある。この問題について、後述する図６および図１１を参照して具体的に説明する。図６には、時間的に連続する複数のフレーム画像Ｐ１，Ｐ２，…が示されている。図６に示す例では、先頭のフレーム画像Ｐ１の下側に、転送対象のデータが密に存在する画像領域Ａ１３存在し、次のフレーム画像Ｐ２の上側に、転送対象のデータが密に存在する画像領域Ａ２１が存在している。
【０００６】
図６に例示する複数のフレーム画像Ｐ１，Ｐ２…を順次転送する過程で、先頭のフレーム画像Ｐ１の最後の画像領域Ａ１３に含まれる第３グループのデータを転送する際に共通バスの帯域を平滑化すると、図１１に示すように、先頭のフレーム画像Ｐ１の第３グループの一部のデータＤｏ（６）が次のフレーム画像Ｐ２の画像領域Ａ２１に含まれる第１グループのデータＤｏ（１）等と共通バス上で干渉する。即ち、転送データがフレームを跨いで共通バスに出力され、フレーム間でデータが干渉する。この結果、共通バス上に転送された転送データを用いた処理が破綻する場合が起こり得る。
【０００７】
本発明は、上記事情に鑑みてなされたものであり、フレーム間のデータ干渉を抑制しつつ、共通バスの帯域を平滑化することができるデータ転送装置およびデータ転送方法を提供することを課題とする。
【課題を解決するための手段】
【０００８】
本発明に係るデータ転送装置は、共通バスに転送される転送データを一時的に格納するバッファ部と、入力データを前記転送データとして前記バッファ部にライトするライト制御部と、前記バッファ部から前記転送データをリードするリード制御部と、前記リード制御部により前記バッファ部からリードされた前記転送データを、所定のバスプロトコルに従って前記共通バスに転送するインターフェイス部と、フレーム画像に含まれる最終転送データ以外の転送データを前記共通バスに転送する際の転送データ間の時間間隔を第１の時間に設定し、前記最終転送データを前記共通バスに転送する際の転送データ間の時間間隔を前記第１の時間よりも短い第２の時間に設定することにより、前記共通バスの帯域を平滑化する帯域平滑部と、を備える。
【０００９】
例えば、前記帯域平滑部は、前記フレーム画像上の前記転送データの位置を示す座標情報に基づき前記時間間隔を前記第１の時間または前記第２の時間に設定してもよい。
例えば、前記帯域平滑部は、前記最終転送データ以外の転送データを転送する際の時間間隔に関する第１パラメータと、前記最終転送データを転送する際の時間間隔に関する第２パラメータとを有し、前記転送データのフレーム画像上の位置が前記最終転送データ以外の転送データの位置である場合、前記第１パラメータを用いて前記転送データ間の時間間隔を前記第１の時間に設定し、前記転送データのフレーム画像上の位置が前記最終転送データの位置である場合、前記第２パラメータを用いて前記転送データ間の時間間隔を前記第２の時間に設定してもよい。
例えば、前記バッファ部の残容量を判定する判定部を更に備え、前記帯域平滑部は、前記判定部の判定結果に応じて、前記転送データ間の時間間隔を調整し、前記バッファ部の残容量が少ない程、前記転送データ間の時間間隔を減少させてもよい。
【００１０】
本発明に係るデータ転送方法は、ライト制御部が、共通バスに転送される転送データとして入力データをバッファ部にライトする第１段階と、リード制御部が、前記バッファ部から前記転送データをリードする第２段階と、インターフェイス部が、前記バッファ部からリードされた前記転送データを、所定のバスプロトコルに従って前記共通バスに転送する第３段階と、帯域平滑部が、フレーム画像に含まれる最終転送データ以外の転送データを前記共通バスに転送する際の転送データ間の時間間隔を第１の時間に設定し、前記最終転送データを前記共通バスに転送する際の転送データ間の時間間隔を前記第１の時間よりも短い第２の時間に設定することにより、前記共通バスの帯域を平滑化する第４段階と、を含む。
【発明の効果】
【００１１】
本発明によれば、フレーム間のデータ干渉を抑制しつつ、共通バスの帯域を平滑化することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態によるデータ転送装置が適用された撮像システムの構成例を示すブロック図である。
【図２】本発明の第１実施形態によるデータ転送装置の構成例を示すブロック図である。
【図３】本発明の第１実施形態によるデータ転送装置が備える帯域平滑部の構成例を示すブロック図である。
【図４】本発明の第１実施形態によるデータ転送装置の動作フローの一例を示すフローチャートである。
【図５】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、転送対象の画像データの例を説明するための図である。
【図６】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、転送対象の連続した複数のフレーム画像の例を説明するための図である。
【図７】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、（Ａ）は、最終転送データ以外のデータを転送する場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、最終転送データ以外のデータを転送する場合の入力データと出力データとの関係を説明するための図である。
【図８】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、（Ａ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の入力データと出力データとの関係を説明するための図である。
【図９】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、（Ａ）は、最終転送データを転送する場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、最終転送データを転送する場合の入力データと出力データとの関係を説明するための図である。
【図１０】本発明の第１実施形態によるデータ転送装置の動作を説明するための図であり、フレーム間の転送データの関係を示す図である。
【図１１】本発明の第１実施形態によるデータ転送装置の動作を補足説明するための図であり、転送データ間の時間間隔を切り替えない場合のフレーム間の転送データの関係を示す図である。
【図１２】本発明の第２実施形態によるデータ転送装置の動作を説明するための図であり、転送対象のフレーム画像の例を説明するための図である。
【図１３】本発明の第２実施形態によるデータ転送装置の動作を補足説明するための図であり、フレーム間の転送データの関係を示す図である。
【図１４】本発明の第３実施形態によるデータ転送装置の構成例を示すブロック図である。
【図１５】本発明の第３実施形態によるデータ転送装置が備える帯域平滑部の構成例を示すブロック図である。
【図１６】本発明の第３実施形態によるデータ転送装置が備える帯域平滑部の動作を説明するための図であり、バッファ部の残容量と転送データ間の時間間隔との関係を説明するための図である。
【図１７】本発明の実施形態によるデータ転送装置の効果を補足するための従来技術によるデータ転送装置の動作例を説明するための図であり、（Ａ）は、ＤＭＡ転送要求が受け付けられるまでの時間が短い場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の動作を説明するためのタイミングチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、本発明の実施形態を説明する。
（第１実施形態）
先ず、本発明の第１実施形態を説明する。
図１は、本発明の第１実施形態によるデータ転送装置が適用された撮像システム１００の構成例を示すブロック図である。
撮像システム１００は、例えばデジタルカメラであり、イメージセンサ１１０、機能ブロック１２０〜１６０、バスアービタ１６１、ＤＲＡＭインターフェイス部１６２、ＤＲＡＭ１６３、中央演算処理装置（ＣＰＵ；Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１７０、共通バス１８０を備えている。なお、図１では、イメージセンサ１１０の撮像面に被写体の光像を結像させるための光学系等は省略されている。
【００１４】
イメージセンサ１１０は、被写体の光像を光電変換して画素データ（画素信号）を生成するための要素であり、例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）イメージセンサまたはＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）イメージセンサである。イメージセンサ１１０は、例えばＲＧＢ表色系の画像データを出力する。
【００１５】
機能ブロック１２０は、イメージセンサ１１０により得られた画像データを共通バス１８０に出力するためのバスインターフェイスとして機能する要素であり、前処理部１２１、画像抽出部１２２，１２３、評価値生成部１２４、データ転送部１２５〜１２７を備えている。前処理部１２１は、イメージセンサ１１０により得られた画像データに対し、例えばキズ補正やシェーディング補正等の前処理を施すための要素である。
【００１６】
画像抽出部１２２，１２３は、イメージセンサ１１０により得られた画像データの一部を切り出すことにより、上記画像データから表示画像や記録画像等の画像データを抽出するための要素である。評価値生成部１２４は、露出、ホワイトバランス、フォーカス等の制御に用いられる評価値を生成するための要素である。データ転送部１２５，１２６は、画像抽出部１２２，１２３によりそれぞれ抽出された画像データを共通バス１８０に転送するための要素である。データ転送部１２７は、評価値生成部１２４により生成された評価値を共通バス１８０に転送するための要素である。
【００１７】
機能ブロック１３０は、画像を表示するための要素であり、データ転送部１３１、表示処理部１３２、表示デバイス１３３を備えている。データ転送部１３１は、表示デバイス１３３に表示される画像（以下、表示画像と称す。）の画像データを共通バス１８０から表示処理部１３２に転送するための要素である。表示処理部１３２は、ＤＲＡＭ１６３から表示画像の画像データを取得し、この画像データにＯＳＤ（Ｏｎ  Ｓｃｒｅｅｎ  Ｄｉｓｐｌａｙ）重畳処理等の表示処理を施すための要素である。表示デバイス１３３は、表示処理部１３２により処理された画像データを可視化するための要素である。表示デバイス１３３は、例えばＴＦＴ（Ｔｈｉｎ  Ｆｉｌｍ  Ｔｒａｎｓｉｓｔｏｒ）液晶デバイスや有機ＥＬ（ＥｌｅｃｔｒｏＬｕｍｉｎｅｓｃｅｎｃｅ）表示デバイスである。
【００１８】
機能ブロック１４０は、画像データを記憶するための要素であり、データ転送部１４１，１４２、カードインターフェイス部１４３、記録媒体１４４を備えている。データ転送部１４１は、カードインターフェイス部１４３から供給される画像データを共通バス１８０に転送するための要素である。データ転送部１４２は、共通バス１８０から供給される画像データをカードインターフェイス部１４３に転送するための要素である。カードインターフェイス部１４３は、ＤＲＡＭ１６３から画像データをリードして記録媒体１４４にライトし、記録媒体１４４から画像データをリードしてＤＲＡＭ１６３にライトするための要素である。記録媒体１４４は、例えばＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）カードやＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ）等、カードインターフェイス部１４３に着脱可能なメモリカードである。
【００１９】
機能ブロック１５０は、ＤＲＡＭ１６３に格納された画像データ（前処理された画像データ）に対し、ノイズ除去処理、ＹＣ変換処理、リサイズ処理、ＪＰＥＧ圧縮処理等の所定の画像処理を施して表示画像や記録画像を生成するための要素である。機能ブロック１５０は、データ転送部１５１，１５２、画像処理部１５３を備えている。データ転送部１５１は、画像処理部１５３から供給された画像データを共通バス１８０に転送するための要素である。データ転送部１５２は、共通バス１８０から供給された画像データを画像処理部１５３に転送するための要素である。画像処理部１５３は、上記所定の画像処理を実施するための要素である。画像処理部１５３により上記所定の画像処理が施された画像データは、ＤＲＡＭ１６３に転送されて格納される。
【００２０】
バスアービタ１６１は、共通バス１８０に接続された機能ブロック１２０〜１５０から出力されるＤＭＡ転送要求を調停するための要素である。バスアービタ１６１は、ＤＲＡＭ１６３に対するアクセスを許可するためのバス権が付与される機能ブロックを決定する。ＤＲＡＭインターフェイス部１６２は、ＤＲＡＭ１６３への画像データのライトとＤＲＡＭ１６３からの画像データのリードとを実施するための要素である。ＤＲＡＭ１６３は、機能ブロック１２０〜１５０により共有された半導体メモリであり、例えばシンクロナスＤＲＡＭである。
【００２１】
中央演算処理装置１７０は、撮像システム１００の全体動作を制御するための要素である。なお、中央演算処理装置１７０も、上述の機能ブロック１２０〜１５０と同様に、ＤＲＡＭ１６３を共有する機能ブロックの一つである。
【００２２】
第１実施形態によるデータ転送装置は、上述した撮像システム１００に備えられたデータ転送部１２５〜１２７，１３１，１４１，１４２，１５１，１５２のうち、共通バス１８０に画像データを出力する機能を担うデータ転送部１２５〜１２７，１４１，１５１のそれぞれに相当する。以下では、機能ブロック１２０に備えられたデータ転送部１２５に着目して説明することとし、データ転送部１２５を「データ転送装置１０」と称す。
なお、第１実施形態によるデータ転送装置は、図１に示す撮像システム１００に備えられた全てのデータ転送部に適用することもでき、一部のデータ転送部にのみ適用することもできる。
【００２３】
図２は、本発明の第１実施形態によるデータ転送装置１０の構成例を示すブロック図である。
データ転送装置１０は、ライト制御部１１、バッファ部１２、リード制御部１３、インターフェイス部（Ｉ／Ｆ部）１４、帯域平滑部１５を備えている。
なお、帯域平滑部１５とライト制御部１１とを一体化してもよく、帯域平滑部１５とリード制御部１３とを一体化してもよい。また、リード制御部１３とインターフェイス部１４とを一体化してもよい。
【００２４】
ライト制御部１１は、イメージセンサ１１０によって取得された画素データのデータ列からなる入力画像データＤｉを転送データとしてバッファ部１２の記憶領域Ｍ０〜Ｍ１５に順次的にライトするための要素である。ライト制御部１１は、入力画像データＤｉをなす所定数の画素分の画素データ（例えば３２画素分の画素データ）のライトが完了する都度、入力画像データＤｉをバッファ部１２にライトした旨を示すライト完了通知信号ＳＷを出力する。ライト完了通知信号ＳＷには、入力画像データＤｉがライトされた記憶領域Ｍ０〜Ｍ１５の何れかを示すアドレス情報が含まれている。ここでは、ライト制御部１１は、入力画像データＤｉをなす３２画素分の画素データのライトが完了する都度、ライト完了通知信号ＳＷを出力するものとするが、この例に限定されない。
【００２５】
また、ライト制御部１１は、後述するリード制御部１３からリード完了通知信号ＳＲを受信すると、そのリード完了通知信号ＳＲに基づいて、バッファ部１２の記憶領域Ｍ０〜Ｍ１５のうち、転送データがリードされた記憶領域（即ち、空いた記憶領域）を特定する。ライト制御部１１は、バッファ部１２の空いた記憶領域に入力画像データＤｉをライトする。
【００２６】
バッファ部１２は、共通バス１８０に転送される転送データを一時的に格納するための要素である。バッファ部１２は、例えばＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）から構成される。第１実施形態では、バッファ部１２は、記憶領域Ｍ０〜Ｍ１５の合計１６個の記憶領域を含む。各記憶領域には、入力画像データＤｉをなす上記所定数の画素分の画素データが転送データとして格納される。ここでは、記憶領域Ｍ０〜Ｍ１５のそれぞれには、３２画素分の画素データが格納されるものとする。１画素分の画素データを２バイトとすれば、記憶領域Ｍ０〜Ｍ１５のそれぞれには、６４（＝２×３２）バイトの画素データが格納される。従って、記憶領域Ｍ０〜Ｍ１５のそれぞれは、少なくとも６４バイトの記憶容量を有している。
【００２７】
バッファ部１２は、記憶領域Ｍ０から記憶領域Ｍ１５に向けて、入力画像データＤｉをなす画素データを６４バイト単位で順次的に格納する。具体的には、バッファ部１２は、入力画像データＤｉをなす最初の３２画素分の６４バイトの画素データを先頭の記憶領域Ｍ０に格納し、次の３２画素分の６４バイトの画素データを記憶領域Ｍ１に格納する。以下同様にして、バッファ部１２は、入力画像データＤｉをなす後続の画素データを６４バイト単位で記憶領域Ｍ２〜Ｍ１５に順次格納する。最後の記憶領域Ｍ１５に入力画像データＤｉが格納されると、バッファ部１２は、再び先頭の記憶領域Ｍ０から記憶領域Ｍ１５に向けて、入力画像データＤｉをなす新たな後続の各画素データを６４バイト単位で各記憶領域に順次的に格納する。即ち、バッファ部１２の記憶領域Ｍ０から記憶領域Ｍ１５には、イメージセンサ１１０から順次出力される入力画像データＤｉの各画素データがライト制御部１１によって巡回的にライトされる。以下では、バッファ部１２に画素データをライトすることは、記憶領域Ｍ０〜Ｍ１５に入力画像データＤｉを３２画素分の６４バイト単位でライトすることを意味する。
【００２８】
なお、撮像システム１００の構成上、バッファ部１２に入力画像データＤｉをライトするためのライトクロック信号と、バッファ部１２から転送データをリードするためのリードクロック信号とが、相互に異なるクロック信号である場合、バッファ部１２として、例えば、ライトクロック信号とリードクロック信号とを個別に入力可能なタイプのＳＲＡＭ（例えば、デュアルポートＳＲＡＭ）を用いることができる。
【００２９】
リード制御部１３は、帯域平滑部１５から出力される後述のリード制御信号ＳＣに応答して、バッファ部１２から転送データをリードするための要素である。リード制御信号ＳＣは、ライト完了通知信号ＳＷを遅延させた信号である。従って、リード制御信号ＳＣは、ライト完了通知信号ＳＷと同様に、バッファ部１２に入力画像データＤｉがライトされた旨を示す情報と共に、入力画像データＤｉがライトされた記憶領域を示すアドレス情報を含んでいる。リード制御部１３は、帯域平滑部１５からリード制御信号ＳＣを受信すると、このリード制御信号ＳＣに含まれるアドレス情報によって示されるバッファ部１２の記憶領域Ｍ０〜Ｍ１５から３２画素分の６４バイト単位で画素データを転送データとしてリードする。以下では、バッファ部１２から転送データをリードすることは、記憶領域Ｍ０〜Ｍ１５から画素データを転送データとして３２画素分の６４バイト単位でリードすることを意味する。
【００３０】
リード制御部１３は、バッファ部１２から３２画素分の６４バイトの転送データのリードを完了する都度、その転送データをリードした旨を示すリード完了通知信号ＳＲをライト制御部１１に出力する。リード完了通知信号ＳＲには、リードされた転送データが格納されていたバッファ部１２の記憶領域を示すアドレス情報（即ち、空いた記憶領域を示す情報）が含まれている。
【００３１】
インターフェイス部１４は、リード制御部１３によりバッファ部１２からリードされた転送データを、所定のバスプロトコルに従って共通バス１８０に転送するための要素である。具体的には、インターフェイス部１４は、転送データを共通バス１８０に転送するために、ＤＭＡ転送要求ＲＥＱの送信、ＤＭＡ転送受付ＡＣＫの受信、転送データの転送先を示すＤＲＡＭ上のアドレスＡＤＤの送信、転送データ（画素データ）本体の送信等を行う。
【００３２】
帯域平滑部１５は、共通バス１８０の帯域を平滑化するための要素である。帯域平滑部１５は、ライト制御部１１から入力されるライト完了通知信号ＳＷに基づいて、リード制御部１３がバッファ部１２から転送データをリードするタイミングを制御することにより、共通バス１８０の帯域を平滑化する。帯域平滑部１５は、ライト制御部１１から入力されたライト完了通知信号ＳＷを遅延させることにより、バッファ部１２から転送データをリードするタイミングを制御するためのリード制御信号ＳＣを生成してリード制御部１３に出力する。ライト完了通知信号ＳＷを遅延させることは、ライト完了通知信号ＳＷを平滑化することを意味する。従って、ライト完了通知信号ＳＷを遅延させることにより生成されるリード制御信号ＳＣは、平滑化後のライト完了通知信号ＳＷである。
【００３３】
具体的には、帯域平滑部１５は、入力画像データＤｉをなす画素データがライト制御部１１によりバッファ部１２に順次的にライトされるに従ってライト制御部１１から順次的に出力されるライト完了通知信号ＳＷを遅延させることにより、所定の時間間隔を空けて、前記ライト完了通知信号を前記リード制御信号としてリード制御部１３に順次的に出力する。帯域平滑部１５には、上記所定の時間間隔を設定するための設定信号Ｅが中央演算処理装置１７０（図１）等から入力される。ただし、設定信号Ｅは、外部から直接的に帯域平滑部１５に入力されてもよい。
なお、第１実施形態では、帯域平滑部１５は、バッファ部１２から転送データをリードするタイミングを制御することにより、共通バス１８０の帯域を平滑化するものとするが、共通バス１８０の帯域の平滑化の手法は任意である。
【００３４】
また、帯域平滑部１５は、共通バス１８０に転送される上記転送データのフレーム画像上の位置に基づき、上記転送データを共通バス１８０に転送する際の転送データ間の時間間隔を与える上記所定の時間間隔を切り替えることにより、共通バス１８０の帯域を適応的に平滑化する。帯域平滑部１５は、上記所定の時間間隔を設定するためのパラメータとして、フレーム画像に含まれる最終転送データ以外の転送データを転送する際の転送データ間の時間間隔に関する第１パラメータと、上記最終転送データを転送する際の転送データ間の時間間隔に関する第２パラメータとを有している。第２パラメータを用いて設定される上記転送データ間の時間間隔は、第１パラメータを用いて設定される上記転送データ間の時間間隔よりも短い。
【００３５】
帯域平滑部１５は、上記転送データのフレーム画像上の位置が、最終転送データ以外の転送データの位置である場合、第１パラメータを用いて上記転送データ間の時間間隔を設定する。また、帯域平滑部１５は、上記転送データのフレーム画像上の位置が、最終転送データの位置である場合、第２パラメータを用いて上記転送データ間の時間間隔を設定する。第１パラメータおよび第２パラメータは、帯域平滑部１５を構成する後述のカウンタ１５０３（図３）のカウント値の最大値を与える。
【００３６】
図３は、本発明の第１実施形態によるデータ転送装置１０が備える帯域平滑部１５の構成例を示すブロック図である。
帯域平滑部１５は、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−ＯＵＴ）メモリ１５０１、カウンタ１５０２，１５０３、リード判定部１５０４、セレクタ１５０５を備えている。ＦＩＦＯメモリ１５０１は、ライト制御部１１から順次的に出力されるライト完了通知信号ＳＷを一時的に保持するための要素である。ＦＩＦＯメモリ１５０１は、例えば、従属接続された複数のレジスタから構成される。ＦＩＦＯメモリ１５０１は、ライト完了通知信号ＳＷを一時的に保持することにより、ライト完了通知信号ＳＷを遅延させ、後述するリード判定部１５０４から入力されるＦＩＦＯリード命令に従ってライト完了通知信号ＳＷをリード制御信号ＳＣとして出力する。
【００３７】
カウンタ１５０２は、ライト制御部１１から順次的に出力されるライト完了通知信号ＳＷに応答して、ＦＩＦＯメモリ１５０１に既に保持されたライト完了通知信号ＳＷのうち、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷの数をカウントするための要素である。カウンタ１５０２は、ライト制御部１１からＦＩＦＯメモリ１５０１にライト完了通知信号ＳＷが入力される都度、カウントアップする。また、カウンタ１５０２は、ＦＩＦＯメモリ１５０１からライト完了通知信号ＳＷがリードされる都度、カウントダウンする。
【００３８】
カウンタ１５０２のカウント値は、ＦＩＦＯメモリ１５０１に入力されたライト完了通知信号ＳＷの数とＦＩＦＯメモリ１５０１から出力されたライト完了通知信号ＳＷの数との差分（ゼロを含む自然数）を表す。従って、カウンタ１５０２のカウント値から、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷの有無を知ることができる。カウンタ１５０２のカウント値が１以上の値であれば、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷがＦＩＦＯメモリ１５０１に存在する。また、カウンタ１５０２のカウント値が０であれば、ＦＩＦＯメモリ１５０１に入力されたライト完了通知信号ＳＷは全てリードされ、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷはＦＩＦＯメモリ１５０１に存在しない。
【００３９】
カウンタ１５０３は、セレクタ１５０５から供給される設定信号Ｅ１または設定信号Ｅ２によってカウンタ１５０３に設定されるカウント値の最大値にカウント値が到達するまで所定周期でカウントアップする要素である。カウンタ１５０３のカウント値が、設定信号Ｅ１または設定信号Ｅ２によって設定される最大値に到達すると、カウンタ１５０３は、カウント値が最大値に到達した旨を示す信号をリード判定部１５０４に出力し、その後、カウンタ１５０３は、ＦＩＦＯメモリ１５０１のリードのタイミングで初期化される。即ち、カウンタ１５０３のカウント値は、ＦＩＦＯメモリ１５０１からライト完了通知信号ＳＷがリードされる度に初期化される。具体的には、カウンタ１５０３は、リード判定部１５０４がＦＩＦＯリード命令を出力すると、そのＦＩＦＯリード命令に応答して初期化される。カウンタ１５０３は、初期化された後、カウント値が最大値に到達するか、または、再度、初期化されるまで、繰り返しカウントアップする。
【００４０】
設定信号Ｅ１，Ｅ２によってカウンタ１５０３に設定されるカウント値の最大値は、帯域平滑部１５から順次的に出力されるリード制御信号ＳＣの時間間隔Ｔｓを与える。ここで、設定信号Ｅ１は前述の第１パラメータに相当し、設定信号Ｅ２は前述の第２パラメータに相当する。カウンタ１５０３に設定される上記最大値を増加させる程、リード制御信号ＳＣの時間間隔Ｔｓ（図７）が大きくなる。この場合、共通バス１８０の帯域の平滑化が顕著になる一方、データの転送速度が低下する傾向を示す。逆に、上記最大値を減少させる程、リード制御信号ＳＣの時間間隔が小さくなる。この場合、データの転送速度が上昇する一方、共通バス１８０の平滑化が抑制される傾向を示す。カウンタ１５０３に設定されるカウント値の最大値は、必要とされるデータ転送速度や共通バス１８０の帯域の平滑化の程度等に応じて任意に設定され得る。ただし、第１実施形態では、カウンタ１５０３に設定されるカウント値の最大値は、セレクタ１５０５から供給される設定信号Ｅ１および設定信号Ｅ２に対応した二つの値のうちの何れかに設定されるものとする。
【００４１】
リード判定部１５０４は、カウンタ１５０２，１５０３のカウント値に基づいてＦＩＦＯメモリ１５０１のリードを制御するための要素である。即ち、リード判定部１５０４は、カウンタ１５０３のカウント値が上記最大値によって与えられる所定値に到達し、且つ、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷがＦＩＦＯメモリ１５０１に存在することをカウンタ１５０２のカウント値が示す場合、ライト完了通知信号ＳＷのリードを指示するためのＦＩＦＯリード命令をＦＩＦＯメモリ１５０１に出力する。
【００４２】
リード判定部１５０４は、上記ＦＩＦＯリード命令をＦＩＦＯメモリ１５０１に出力することにより、ＦＩＦＯメモリ１５０１からリードされていないライト完了通知信号ＳＷをＦＩＦＯメモリ１５０１からリード制御信号ＳＣとしてリードして出力させる。このとき、リード制御信号ＳＣは、カウンタ１５０３に設定されるカウント値の最大値によって定まる所定の時間間隔Ｔｓ（図７）を空けて、帯域平滑部１５のＦＩＦＯメモリ１５０１からリード制御部１３に順次的に出力される。このように、リード制御信号ＳＣが時間間隔Ｔｓを空けてリード制御部１３に入力されることにより、後述するように、共通バス１８０の帯域が平滑化される。
【００４３】
セレクタ１５０５は、カウンタ１５０３のカウント値の最大値を設定するための設定信号Ｅ１，Ｅ２の何れか選択してカウンタ１５０３に供給するための要素である。セレクタ１５０５には、例えば図１に示す中央演算処理装置１７０から２種類の設定信号Ｅ１，Ｅ２が入力される。設定信号Ｅ１，Ｅ２は、それぞれ、カウンタ１５０３のカウント値の最大値を設定するための上述の第１パラメータおよび第２パラメータを与える信号である。
【００４４】
設定信号Ｅ２（第２パラメータ）によって設定されるカウント値の最大値は、設定信号Ｅ１（第１パラメータ）によって設定されるカウント値の最大値よりも小さい。従って、設定信号Ｅ２によってカウンタ１５０３のカウント値の最大値が設定された場合には、設定信号Ｅ１によってカウンタ１５０３のカウント値の最大値が設定された場合に比較して、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｓが短くなる。
【００４５】
また、セレクタ１５０５には、図１に示す画像抽出部１２２から設定信号Ｅ３が入力される。設定信号Ｅ３は、リード制御部１３によってバッファ部１２からリードされる転送データが最終転送データであること、即ち、バッファ部１２からリードされる上記転送データのフレーム画像上の位置が、このフレーム画像上の最終転送データの位置であることを示す最終転送情報信号である。第１実施形態では、設定信号Ｅ３は、各フレーム画像に密に存在するデータの集合のうち、フレーム内で最後に転送対象となるデータの集合を示す信号である。具体的には、図１０の最上段に例示するように、設定信号Ｅ３は、例えば図５（Ａ）に示す下側の画像領域Ａ３に密に存在するデータ（第３グループ）を転送する際にローレベルからハイレベルに遷移する信号である。第１実施形態では、設定信号Ｅ３として、画像抽出部１２２が画像抽出処理を実施する過程で生成する既存の信号を用いる。
【００４６】
セレクタ１５０５は、設定信号Ｅ３によって示される転送データの位置がフレーム画像上の最終転送データの位置を示す場合、設定信号Ｅ２を選択してカウンタ１５０３およびリード判定部１５０４に出力する。その他の場合、即ち、設定信号Ｅ３によって示される転送データの位置がフレーム画像上の最終転送データ以外の転送データの位置を示す場合、セレクタ１５０５は、設定信号Ｅ１を選択してカウンタ１５０３およびリード判定部１５０４に出力する。
【００４７】
次に、図４に示すフローに沿って、図５から図１１を参照しながら、第１実施形態によるデータ転送装置１０の動作（データ転送方法）を説明する。
ここでは、理解の容易化のため、転送データがフレーム画像内の最終転送データでない場合と、転送データがフレーム画像内の最終転送データである場合とに分けて、データ転送装置１０の動作を説明する。なお、フレーム画像内の「最終転送データ」とは、フレーム画像内に密に存在するデータの集合のうち、時間的に最後に転送対象となるデータの集合を指し、例えば、図５（Ａ）に例示する撮影画面Ｐを形成するフレーム画像の画像領域Ａ１〜Ａ３のうち、最後に転送対象となる画像領域Ａ３に含まれるデータの集合である。
【００４８】
図４は、本発明の第１実施形態によるデータ転送装置１０の動作フローの一例を示すフローチャートである。図５は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、転送対象の画像データの例を説明するための図である。図６は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、転送対象の連続した複数のフレーム画像の例を説明するための図である。図７は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、（Ａ）は、最終転送データ以外のデータを転送する場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、最終転送データ以外のデータを転送する場合の入力画像データＤｉと出力転送データＤｏとの関係を説明するための図である。図８は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、（Ａ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の入力画像データＤｉと出力転送データＤｏとの関係を説明するための図である。図９は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、（Ａ）は、最終転送データを転送する場合の動作を説明するためのタイミングチャートであり、（Ｂ）は、最終転送データを転送する場合の入力データと出力データとの関係を説明するための図である。図１０は、本発明の第１実施形態によるデータ転送装置１０の動作を説明するための図であり、フレーム間の転送データの関係を示す図である。図１１は、本発明の第１実施形態によるデータ転送装置１０の動作を補足説明するための図であり、転送データ間の時間間隔を切り替えない場合のフレーム間の転送データの関係を示す図である。
【００４９】
画像抽出部１２２は、入力画像データＤｉ（前処理部１２１によって前処理が施された入力画像データ）から画像データを抽出する際に、入力画像データＤｉがフレーム内の最終転送データであるか否かを判定する。そして、画像抽出部１２２は、入力画像データＤｉが最終転送データであるか否かを示す情報を含む設定信号Ｅ３を帯域平滑部２５のセレクタ１５０５に出力する。
ここでは、転送データがフレーム画像内の最終転送データでない場合と、転送データがフレーム画像内の最終転送データである場合とに分けて、データ転送装置１０の動作を説明する。
【００５０】
１．転送データがフレーム画像内の最終転送データでない場合
転送データの位置が最終転送データの位置でない場合には、通常、共通バスの帯域を平滑化しても、フレーム間のデータ干渉は発生し得ない。従って、この場合の動作は、共通バス１８０の帯域の平滑化に留まり、フレーム間のデータ干渉の抑制に関連する動作は顕在化しない。
【００５１】
転送データの位置が最終転送データの位置でない場合、画像抽出部１２２から帯域平滑部１５に供給される設定信号Ｅ３は、最終転送データの位置以外の位置を示す。この場合、セレクタ１５０５は、設定信号Ｅ１を選択してカウンタ１５０３に供給する。従ってこの場合、カウンタ１５０３のカウント値の最大値は、設定信号Ｅ１に基づいて設定される値となり、設定信号Ｅ２に基づいて設定される値よりも大きい値になる。このことは、後述するように、転送データが最終転送データでない場合の転送データ間の時間間隔が、転送データが最終転送データである場合の転送データ間の時間間隔よりも大きくなることを意味する。
【００５２】
ここでは、第１実施形態による効果に関する理解を容易化するため、入力画像データＤｉには、画素データが密に含まれる領域と、画素データが疎に含まれる領域が存在するものとする。一般に、画素データが密に含まれる入力画像データＤｉを或る機能ブロックから共通バス１８０に転送する場合、当該機能ブロックはＤＭＡ転送要求を連続的に出力する。このため、ＤＭＡ転送要求が出力される期間、他の機能ブロックのＤＭＡ転送要求がバスアービタに受け付けられなくなる状況が発生し得る。このような状況を回避するため、第１実施形態では、帯域平滑部１５が共通バス１８０の帯域を平滑化する。
【００５３】
図５（Ａ）〜（Ｄ）には、データ転送装置１０によるデータ転送の対象となる画素データが密に含まれる領域と画素データが疎に含まれる領域とが存在する入力画像データＤｉによる撮影画面Ｐの例が示されている。図５（Ａ）に示された撮影画面Ｐは、画像（転送対象となる画素データ）の取り込みが行われる画像領域Ａ１〜Ａ３と、画像の取り込みが殆ど行われない画像領域（画像領域Ａ１〜Ａ３以外の領域）とを含んでいる。イメージセンサ１１０から取得される入力画像データＤｉには、画像領域Ａ１〜Ａ３を表示するための画素データが密に含まれている。換言すれば、画像領域Ａ１〜Ａ３には、画素データが密に含まれている。これに対し、入力画像データＤｉには、画像領域Ａ１〜Ａ３以外の領域を表示するための画素データは殆ど含まれていない。換言すれば、画像領域Ａ１〜Ａ３には、画素データが殆ど含まれていない。このため、図５（Ａ）に例示する撮影画面Ｐの走査線に沿ってイメージセンサ１１０から順次的に出力される入力画像データＤｉには、画素データが密に含まれる領域と画素データが殆ど含まれない領域とが交互に存在する。
【００５４】
図５（Ｂ）に示された撮影画面Ｐは、上述の図５（Ａ）に示す例と同様に、画像（転送対象となる画素データ）の取り込みが行われる画像領域Ａ１〜Ａ３と、画像の取り込みが殆ど行われない画像領域（画像領域Ａ１〜Ａ３以外の領域）とを含んでいる。ただし、図５（Ｂ）の例では、実際に転送対象となる画素データは、点線で示される各領域の上辺側の一部の画素データと、下辺側の一部の画素データのみである。この場合、点線で示される領域の画素データが入力画像データＤｉに密に含まれ、その他の領域の画素データは疎である。この場合も、撮影画面Ｐの走査線に沿ってイメージセンサ１１０から順次的に出力される入力画像データＤｉには、画素データが密に含まれる領域と画素データが殆ど含まれない領域とが交互に存在する。
【００５５】
図５（Ｃ）に示された撮影画面Ｐは、広角画像ＰＷと望遠画像ＰＴとを含む。このように広角画像ＰＷと望遠画像ＰＴとを含む撮影画面Ｐの画素データを転送するマルチレコーディングでは、望遠画像ＰＴの領域が、画像（転送対象となる画素データ）の取り込みが行われる領域に相当し、望遠画像ＰＴの領域には、望遠画像ＰＴの領域の画素データが入力画像データＤｉに密に含まれる。その他の領域は、画像の取り込みが殆ど行われない領域に相当し、上記その他の領域には、画素データが疎に含まれる。この場合も、撮影画面Ｐの走査線に沿ってイメージセンサ１１０から順次的に出力される入力画像データＤｉには、画素データが密に含まれる領域と画素データが殆ど含まれない領域とが交互に存在する。所謂デジタルズーミングによりイメージセンサ１１０から取得される入力画像データも同様である。
【００５６】
図５（Ｄ）に示された撮影画面Ｐは、露出やホワイトバランス等の評価値を取得するための複数の評価領域を含んでいる。図５（Ｄ）では、複数の評価領域は、点線によって示されている。上記評価値は、各評価領域の最後の走査線に対応した入力画像データＤｉに含まれている。このため、各評価領域の最後の走査線に対応した入力画像データＤｉには、上記評価値が密に含まれている。即ち、各評価領域の最後の走査線に対応した領域には、評価のための画素データが密に含まれ、その他の領域には、評価のための画素データが疎に含まれる。従って、この場合も、撮影画面Ｐの走査線に沿ってイメージセンサ１１０から順次的に出力される入力画像データＤｉには、評価値に関し、画素データが密に含まれる領域と画素データが疎に含まれる領域とが存在する。
【００５７】
図６には、図５（Ａ）に例示する撮影画面Ｐを形成する複数のフレーム画像Ｐ１，Ｐ２が連続する場合において、転送データが密に存在する画像領域Ａ１１〜Ａ１３，Ａ２１〜Ａ２３の位置関係が示されている。図６の例では、先頭のフレーム画像Ｐ１の下側の画像領域Ａ１３と、次のフレーム画像Ｐ２の上側の画像領域Ａ２１との間の時間間隔が小さくなることに留意されたい。このようなフレーム画像の境界では、フレーム間で転送データの干渉が発生しやすくなるが、その詳細については後述する（「２．転送データがフレーム画像内の最終転送データである場合」の説明参照）。
【００５８】
次に、上述した図５に例示する撮影画面Ｐを形成する入力画像データＤｉがイメージセンサ１１０からデータ転送装置１０に入力されたときの動作について、データ転送装置１０から出力されるＤＭＡ転送要求ＲＥＱがバスアービタ１６１に速やかに受け付けられる場合と、ＤＭＡ転送要求ＲＥＱが受け付けられるまでに長時間を要する場合とに分けて説明する。
【００５９】
なお、理解の容易化のため、入力画像データＤｉの画素データが密に含まれる領域には、６個の画素データが連続して存在するものとする。また、入力画像データＤｉには、連続した６個の画素データを１つのグループとして、複数のグループが含まれているものとする。ただし、この例に限定されず、入力画像データＤｉに含まれる画素データの配列は任意である。
【００６０】
（１）ＤＭＡ転送受付ＡＣＫが速やかに受信される場合
イメージセンサ１１０から出力された入力画像データＤｉをなす画素データが、３２画素分の画素データに相当する６４バイト単位で画像抽出部１２２からデータ転送部１２５をなすデータ転送装置１０のライト制御部１１に順次入力される。ライト制御部１１は、入力画像データＤｉを、共通バス１８０に転送される転送データとして３２画素分の６４バイト単位でバッファ部１２にライトする（ステップＳ１）。また、ライト制御部１１は、入力画像データＤｉに含まれる３２画素分の６４バイトの画素データをバッファ部１２にライトする都度、図７（Ａ）に示すように、入力画像データＤｉをバッファ部１２にライトした旨を示すライト完了通知信号ＳＷを出力する（ステップＳ１）。
【００６１】
図７（Ａ）では、ライト完了通知信号ＳＷを模式的に示すシンボルに付加された括弧書きの数字は、入力画像データＤｉに密に含まれる６個の画素データの配列順に対応している。ここで、例えば「ライト完了通知信号ＳＷ（１）」なる表記は、入力画像データＤｉに密に含まれる６個の画素データのうち、先頭の画素データがバッファ部１２にライトされた場合にライト制御部１１から出力される信号を表している。このような信号の表記はリード制御信号ＳＣについても同様である。
【００６２】
入力画像データＤｉをなす画素データがライト制御部１１に順次入力される過程で、画像抽出部１２２は、ライト制御部１１に順次入力されるフレーム画像上の画素データの位置が、そのフレーム画像の最終転送データの位置であるか否かを判定し、最終転送データの位置である場合、上記画素データ（転送データ）の位置が最終転送データの位置である旨を示す最終転送情報を含む設定信号Ｅ３をセレクタ１５０５に出力する。セレクタ１５０５は、画像抽出部１２２から最終転送情報を含む設定信号Ｅ３が入力された場合、その画素データが転送データとしてバッファ部１２からリードされる際に設定信号Ｅ２を選択する。
【００６３】
ここでは、ライト制御部１１に順次入力される画素データ（転送データ）は最終転送データではないので、次に説明するように、セレクタ１５０５は、設定信号Ｅ１を選択してカウンタ１５０３およびリード判定部１５０４に出力する。この場合、リード制御信号ＳＣの時間間隔Ｔｓは、上述した設定信号Ｅ１によって所定の時間間隔Ｔｓ１に設定される。この所定の時間間隔Ｔｓ１は、最終転送データを転送する場合に設定信号Ｅ２によって設定される後述の所定の時間間隔Ｔｓ２（図９）よりも長い時間間隔である。
【００６４】
具体的には、帯域平滑部１５は、ライト完了通知信号ＳＷに基づいて、共通バス１８０の帯域を平滑化するようにバッファ部１２から転送データをリードするためのリード制御信号ＳＣを生成する（ステップＳ２）。即ち、帯域平滑部１５は、ライト制御部１１から順次出力されるライト完了通知信号ＳＷを、図３に示すＦＩＦＯメモリ１５０１に順次入力する。そして、帯域平滑部１５は、ＦＩＦＯメモリ１５０１に保持されたライト完了通知信号ＳＷをリード制御信号ＳＣとして一定の時間間隔Ｔｓを空けて入力順にリード制御部１３に出力する。
【００６５】
また、帯域平滑部１５は、ライト制御部１１に入力される画素データ（転送データ）がフレーム内の最終転送データであるか否かを示す設定信号Ｅ３に応じて、リード制御信号ＳＣの時間間隔を切り替えることにより、共通バス１８０に転送される転送データ間の時間間隔Ｔｓを切り替える。ここでは、ライト制御部１１に入力される画素データ（転送データ）がフレーム内の最終転送データではないので、帯域平滑部１５のセレクタ１５０５は設定信号Ｅ１を選択し、帯域平滑部１５は、設定信号Ｅ１に基づいて転送データ間の時間間隔Ｔｓを時間間隔Ｔｓ１に切り替える。
【００６６】
図７（Ａ）の例では、ライト制御部１１から帯域平滑部１５に出力されるライト完了通知信号ＳＷ（１）〜ＳＷ（６）と、帯域平滑部１５から出力されるリード制御信号ＳＣ（１）〜ＳＣ（６）とが模式的に示されている。図７（Ａ）の例に示すように、リード制御信号ＳＣ（１）〜ＳＣ（６）の時間間隔Ｔｓは、設定信号Ｅ１によってカウンタ１５０３に設定されるカウント値の最大値によって与えられる時間間隔Ｔｓ１に設定される。
【００６７】
ここで、入力画像データＤｉに画素データの疎密が存在する場合、共通バス１８０の帯域を平滑化するためには（即ち、共通バス１８０に出力されるＤＭＡ転送要求ＲＥＱの送信間隔を均一化するためには）、画素データが密に存在する入力画像データＤｉを転送する際のＤＭＡ転送要求ＲＥＱの送信間隔を広げればよい。この観点から、図３に示すカウンタ１５０３に設定されるカウント値の最大値は、上述のように、リード制御信号ＳＣの時間間隔Ｔｓ（Ｔｓ１）がライト完了通知信号ＳＷの時間間隔よりも大きくなるように設定される。ライト完了通知信号ＳＷの時間間隔は、入力画像データＤｉに含まれる画素データの時間間隔に対応する。
【００６８】
なお、リード制御信号ＳＣの時間間隔Ｔｓが大きくなる程、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒも大きくなるので、データ転送速度が低下する傾向を示す。また、リード制御信号ＳＣの時間間隔Ｔｓが大き過ぎると、その後のデータ転送を伴う処理を阻害する場合も起こり得る。このため、カウンタ１５０３に設定されるカウント値の最大値は、必要なデータ転送速度が得られる範囲で設定される。
【００６９】
続いて、リード制御部１３は、帯域平滑部１５から入力されるリード制御信号ＳＣに応答して、バッファ部１２から転送データをリードする（ステップＳ３）。ここで、リード制御部１３は、前回のリード制御信号ＳＣに応答してバッファ部１２から既にリードした前回の転送データが存在する場合、その前回の転送データのＤＭＡ転送要求ＲＥＱに対するＤＭＡ転送受付ＡＣＫがインターフェイス部１４で受信されていることを条件に、バッファ部１２から今回の転送データをリードする。
【００７０】
インターフェイス部１４は、リード制御部１３によりバッファ部１２から転送データがリードされると、ＤＭＡ転送要求ＲＥＱを共通バス１８０に出力し、バッファ部１２からリードされた転送データを所定のバスプロトコルに従って共通バス１８０に転送する（ステップＳ４）。具体的には、図７（Ａ）に示すように、インターフェイス部１４は、一定の時間間隔Ｔｓ（Ｔｓ１）で帯域平滑部１５から入力されるリード制御信号ＳＣ（１）〜ＳＣ（６）に対応して、６個のＤＭＡ転送要求ＲＥＱを順次出力する。
【００７１】
ここでは、インターフェイス部１４から出力されたＤＭＡ転送要求ＲＥＱがバスアービタ１６１で速やかに受け付けられる場合を想定しているので、図７（Ａ）に例示するように、インターフェイス部１４は、次回のＤＭＡ転送要求ＲＥＱを出力する前に、今回のＤＭＡ転送要求ＲＥＱがバスアービタ１６１に受け付けられた旨を示すＤＭＡ転送受付ＡＣＫを受信する。そして、インターフェイス部１４は、リード制御部１３によりバッファ部１２からリードされた転送データを共通バス１８０に転送する（ステップＳ４）。
【００７２】
このようにＤＭＡ転送要求ＲＥＱがバスアービタ１６１に速やかに受け付けられる状況下では、図７（Ｂ）において第１グループとして示されている６個の画素データを密に含む入力画像データＤｉは、カウンタ１５０３に設定されたカウント値の最大値によって与えられる時間間隔Ｔｓ１で転送データＤｏとしてインターフェイス部１４から共通バス１８０に出力される。図７（Ｂ）に示す例では、第１グループの後ろに続く第２グループの画素データを密に含む入力画像データＤｉが入力される前に、第１グループの画素データのデータ転送が完了しているので、グループ間でのデータ干渉は発生しない。
【００７３】
従って、図７の例では、ＤＭＡ転送要求ＲＥＱが速やかに受け付けられる状況下では、共通バス１８０の帯域を平滑化することにより、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒに余裕が生まれる。このため、画素データが密に存在する入力画像データＤｉを転送する際、バスアービタ１６１が各機能ブロックのＤＭＡ転送要求ＲＥＱの調停を適切に行うことができ、バスアービタ１６１の負担を軽減することが可能になる。
【００７４】
また、図７の例では、画素データが密に存在する入力画像データＤｉを転送する際のＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒを広げても、各グループの画素データのデータ転送は、相互に干渉することなく行われる。このため、共通バス１８０の帯域を平滑化しても、データ転送速度を低下させることなく、バスアービタ１６１によるアービトレーションに従って、イメージセンサ１１０の画素データをＤＲＡＭ１６３に転送することが可能になる。
【００７５】
また、図７の例では、共通バス１８０の帯域を平滑化することにより、イメージセンサ１１０から取得された画素データをＤＲＡＭ１６３に転送する機能ブロック１２０によって共通バス１８０が占有される頻度が低下し、他の機能ブロック１３０，１４０，１５０のＤＭＡ転送要求ＲＥＱがバスアービタ１６１で受け付けられる頻度が高まる。このため、バスアービタ１６１によるアービトレーションにおいて、イメージセンサ１１０の画素データをＤＲＡＭ１６３に転送するための機能ブロック１２０の優先度を高く設定しても、他の機能ブロック１３０，１４０，１５０の処理に与える影響を抑制することができ、他の機能ブロックの処理の破綻を防止することが可能になる。
【００７６】
（２）ＤＭＡ転送要求ＲＥＱが受け付けられるまでに長時間を要する場合
次に、図８を参照して、ＤＭＡ転送要求に対するＤＭＡ転送受付ＡＣＫが受信されるまでに長時間を要する場合の動作を説明する。
なお、ライト完了通知信号ＳＷおよびリード制御信号ＳＣの表記については、図７の例に示す場合と同様である。
【００７７】
上述したＤＭＡ転送受付ＡＣＫが速やかに受信される場合と同様に、ライト制御部１１は、イメージセンサ１１０から取得された画素データを含む入力画像データＤｉをバッファ部１２にライトする都度、ライト完了通知信号ＳＷを順次出力する（ステップＳ１）。帯域平滑部１５からは、ライト制御部１１から出力されるライト完了通知信号ＳＷに応答して、リード制御信号ＳＣを一定の時間間隔Ｔｓ（Ｔｓ１）を空けて順次出力する（ステップＳ２）。リード制御部１３は、帯域平滑部１５から出力されるリード制御信号ＳＣに応答して、バッファ部１２から転送データをリードする（ステップＳ３）。インターフェイス部１４は、リード制御信号ＳＣに応答してリード制御部１３によりリードされた転送データのＤＭＡ転送要求ＲＥＱを出力し、その転送データを転送する（ステップＳ４）。
【００７８】
ここで、最初のリード制御信号ＳＣ（１）に応答してインターフェイス部１４から出力された最初のＤＭＡ転送要求ＲＥＱが、例えば共通バス１８０の輻輳等により、バスアービタ１６１に受け付けられるまでに長時間を要した場合を考える。図８（Ａ）の例では、時刻ｔ０でインターフェイス部１４から出力された最初のＤＭＡ転送要求ＲＥＱが時刻ｔ１でバスアービタ１６１に受け付けられるまでに長時間を要している。その結果、最初のＤＭＡ転送要求ＲＥＱに対するＤＭＡ転送受付ＡＣＫは、３番目のリード制御信号ＳＣ（３）が出力された後の時刻ｔ１でインターフェイス部１４に受信されている。
【００７９】
時刻ｔ１でＤＭＡ転送受付ＡＣＫがインターフェイス部１４に受信されると、上述のステップＳ３において、リード制御部１３は、２番目のリード制御信号ＳＣ（２）に応答してバッファ部１２から次の転送データをリードする。そして、上述のステップＳ４において、インターフェイス部１４は、２番目のリード制御信号ＳＣ（２）に応答してリード制御部１３によりリードされた転送データのＤＭＡ転送要求ＲＥＱを出力すると共に、その転送データを共通バス１８０に転送する。
【００８０】
この場合、２番目以降のリード制御信号ＳＣ（２）〜ＳＣ（６）に応答してリード制御部１３によってバッファ部１２からリードされる転送データが一時的に滞留する。図８（Ｂ）の例では、最初のリード制御信号ＳＣ（１）に応答してバッファ部１２からリードされた転送データのＤＭＡ転送要求ＲＥＱがバスアービタ１６１に受け付けられるまでに長時間を要したため、その間、２番目以降のリード制御信号ＳＣ（２）〜ＳＣ（６）に応答して転送されるべき転送データＤｏ（２）〜Ｄｏ（３）の転送が滞留している。
【００８１】
しかしながら、第１実施形態によれば、次に説明するように、ＤＭＡ転送要求ＲＥＱが速やかに受け付けられる状況が回復すれば、滞留した転送データの転送が短い時間間隔で速やかに行われ、転送データの転送の遅れを挽回することができる。
【００８２】
具体的に説明する。図８（Ａ）の例では、時刻ｔ１で、最初のリード制御信号ＳＣ（１）に加えて、２番目のリード制御信号ＳＣ（２）および３番目のリード制御信号ＳＣ（３）が帯域平滑部１５からリード制御部１３に既に出力されている。このため、リード制御部１３は、最初のリード制御信号ＳＣ（１）に応答してバッファ部１２からリードした最初の転送データのＤＭＡ転送受付ＡＣＫが受信されると、上述のステップＳ３において、即座に、バッファ部１２から２番目のリード制御信号ＳＣ（２）に応答して次の転送データをリードする。そして、上述のステップＳ４において、インターフェイス部１４は、２番目のリード制御信号ＳＣ（２）に応答してリードされた転送データのＤＭＡ転送要求ＲＥＱを共通バス１８０に出力すると共に、その転送データを共通バス１８０に転送する。
【００８３】
ここで、時刻ｔ１の後、ＤＭＡ転送要求ＲＥＱが速やかに受け付けられる状況が維持される限り、ＤＭＡ転送要求ＲＥＱは、カウンタ１５０３のカウント値の最大値に制限されることなく、最小限の時間間隔でインターフェイス部１４から出力される。このため、滞留した２番目以降の転送データが速やかに転送され、転送データの転送の遅れを挽回することができる。
【００８４】
図８（Ｂ）に示す例では、第１グループの次の第２グループの画素データを密に含む入力画像データＤｉが入力される前に、第１グループの画素データのデータ転送の遅れが挽回されている。従って、第１グループの最初の転送データの転送が遅れたことによる処理の影響を防止することができる。
従って、第１実施形態によれば、共通バス１８０の帯域を有効に利用しつつ、滞留したデータ転送を速やかに行うことができる。
【００８５】
２．転送データがフレーム画像内の最終転送データである場合
次に、フレーム内の最終転送データを転送する場合のデータ転送装置１０の動作を詳細に説明する。ここでも、ライト制御部１１に順次入力される画素データ（転送データ）は最終転送データではないものとし、リード制御信号ＳＣの時間間隔Ｔｓは、上述した設定信号Ｅ１によって所定の時間間隔Ｔｓ１に設定されるものとする。
【００８６】
転送データがフレーム画像内の最終転送データでない場合と同様に、ライト制御部１１は、入力画像データＤｉを、共通バス１８０に転送される転送データとしてバッファ部１２にライトする（ステップＳ１）。入力画像データＤｉをなす画素データがライト制御部１１に順次入力される過程で、画像抽出部１２２は、ライト制御部１１に順次入力されるフレーム画像上の画素データの位置が、そのフレーム画像の最終転送データの位置であるか否かを判定し、最終転送データの位置である場合、転送データの位置が最終転送データの位置である旨を示す最終転送情報を含む設定信号Ｅ３をセレクタ１５０５に出力する。
【００８７】
続いて、リード制御部１３は、バッファ部から転送データをリードして、共通バス１８０に転送する（ステップＳ２〜Ｓ４）。具体的に説明すると、帯域平滑部１５は、ライト完了通知信号ＳＷに基づいて、共通バス１８０の帯域を平滑化するようにバッファ部１２から転送データをリードするためのリード制御信号ＳＣを生成する（ステップＳ２）。このとき、帯域平滑部１５は、転送データがフレーム内の最終転送データであるか否かに応じて、リード制御信号ＳＣの時間間隔を切り替えることにより、共通バス１８０に転送される転送データ間の時間間隔を切り替える。ここでは、転送データがフレーム内の最終転送データであるから、画像抽出部１２２からセレクタ１５０５に最終転送情報を含む設定信号Ｅ３が入力される。セレクタ１５０５は、最終転送情報を含む設定信号Ｅ３が入力された場合、その転送データがバッファ部１２からリードされる際に設定信号Ｅ２を選択してカウンタ１５０３に供給する。
【００８８】
帯域平滑部１５は、設定信号Ｅ２に基づいて転送データ間の時間間隔Ｔｓを時間間隔Ｔｓ２に設定する。具体的には、帯域平滑部１５は、ライト制御部１１から順次出力されるライト完了通知信号ＳＷを、図３に示すＦＩＦＯメモリ１５０１に順次入力する。そして、帯域平滑部１５は、ＦＩＦＯメモリ１５０１に保持されたライト完了通知信号ＳＷを、設定信号Ｅ２によって与えられる一定の時間間隔Ｔｓ（Ｔｓ２）を空けて、リード制御信号ＳＣとして入力順に出力する。これにより、図９（Ａ）に例示するように、リード制御信号ＳＣの時間間隔Ｔｓは、設定信号Ｅ２によって与えられる所定の時間間隔Ｔｓ２に設定される。
【００８９】
図９（Ａ）の例では、ライト制御部１１から帯域平滑部１５に出力されるライト完了通知信号ＳＷ（１）〜ＳＷ（６）と、帯域平滑部１５から出力されるリード制御信号ＳＣ（１）〜ＳＣ（６）とが模式的に示されている。所定の時間間隔Ｔｓ２は、最終転送データ以外のデータを転送する場合に設定信号Ｅ１によって設定される上述の所定の時間間隔Ｔｓ１（図７、図８）よりも短い時間間隔である。なお、リード制御信号ＳＣ（１）〜ＳＣ（６）の時間間隔Ｔｓ（Ｔｓ２）は、設定信号Ｅ２によって前述した図３に示すカウンタ１５０３に設定されるカウント値の最大値によって与えられるが、その重複する説明は省略する。
【００９０】
続いて、リード制御部１３は、帯域平滑部１５から入力されるリード制御信号ＳＣに応答して、バッファ部１２から転送データをリードする（ステップＳ３）。そして、インターフェイス部１４は、リード制御部１３によりバッファ部１２からリードされた転送データを共通バス１８０に転送する（ステップＳ４）。
時間間隔Ｔｓの設定に関する動作を除けば、転送データが最終転送データである場合の動作は、転送データが最終転送データ以外のデータである場合の上述した動作と同様である。
【００９１】
上述のように、設定信号Ｅ２に基づいて転送データ間の時間間隔（即ち、リード制御信号ＳＣの時間間隔）を切り替えるようにしたので、共通バス１８０の帯域を平滑化しても、フレームの最終転送データの転送速度が上昇し、これによりフレームの境界付近におけるデータの干渉を抑制することができる。
【００９２】
ここで、図１０を参照してデータ干渉の抑制について具体的に説明する。
図１０の例では、転送データ間の時間間隔Ｔｓは切り替えられず、時間間隔Ｔｓ１に固定されている。図１０において、時刻ｔ１から時刻ｔ３までの期間が第１フレームに相当し、時刻ｔ３以降が第２フレームに相当し、時刻ｔ２で、最終転送データとなる第３グループの転送が開始されている。時刻ｔ２で最終転送データの転送が開始される際に、最終転送情報を含む設定信号Ｅ３がハイレベルになる。
【００９３】
セレクタ１５０５は、最終転送情報を含む設定信号Ｅ３に応答して設定信号Ｅ２をカウンタ１５０３に出力する。これにより、時刻ｔ２でカウンタ１５０３のカウント値の最大値が設定信号Ｅ２により設定される。このため、時刻ｔ２以降においてリード制御信号ＳＣの時間間隔Ｔｓが時間間隔Ｔｓ２（＜Ｔｓ１）に設定され（図１０）、データ転送装置１０から共通バス１８０に出力される転送データＤｏの時間間隔も時間間隔Ｔｓ１から時間間隔Ｔｓ２（＜Ｔｓ１）に短縮される。
【００９４】
図１０から理解されるように、時刻ｔ２で転送データＤｏの時間間隔が時間間隔Ｔｓ２に短縮されると、時刻ｔ２以降、第１フレームの最終転送データ（第３グループ）の転送速度が上昇する。このため、第２フレームの先頭のデータ（第１グループ）の転送を開始する前に、第１フレームのデータ転送が完了する。このため、第１フレームの第１グループと第２グループのデータを転送する際に共通バス１８０の帯域を平滑化しても、第１フレームと第２フレームとの間で転送データの干渉は生じない。
【００９５】
ただし、リード制御信号ＳＣの時間間隔を時間間隔Ｔｓ２（＜Ｔｓ１）に切り替えることにより、第１フレームの最終転送データである第３グループを転送する際、共通バス１８０の帯域の平滑化が行われない場合が起こり得る。しかしながら、その他のデータ転送の際には共通バス１８０の帯域の平滑化が有効に実施されるので、全体としてみれば、共通バス１８０の帯域を活用することができ、バスアービタ側の処理の負担を軽減することができる。
従って、第１実施形態によれば、フレーム間のデータ干渉を抑制しつつ、共通バスの帯域を平滑化することができる。即ち、共通バス１８０の帯域を制御しつつ、最終転送データも正しく転送することができる。
【００９６】
図１１には、参考例として、最終転送データを転送する際にリード制御信号ＳＣの時間間隔Ｔｓを時間間隔Ｔｓ２に切り替えず、時間間隔Ｔｓ１に維持した場合の各フレームの転送データの関係が示されている。図１１に例示するように、リード制御信号ＳＣの時間間隔Ｔｓを時間間隔Ｔｓ１に維持した場合、共通バス１８０に転送される転送データＤｏの時間間隔も時間間隔Ｔｓ１に維持される。この結果、図１１の例では、第１フレームの最終転送データ（第３グループ）の一部のデータＤｏ（６）が、第２フレームの第１グループのデータと干渉している。この場合、第１フレームおよび第２フレームのデータを用いた処理が正常に実施されないおそれがある。しかしながら、本発明の第１実施形態によれば、図１０に例示したように、共通バス１８０の帯域を平滑化しても、フレーム間でのデータ干渉を抑制することができ、処理の破綻を回避することができる。
【００９７】
（第２実施形態）
次に、本発明の第２実施形態を説明する。
上述の第１実施形態では、設定信号Ｅ３として、図５（Ａ）に示す撮影画面Ｐの下側の画像領域Ａ３に密に存在するデータの集合を示す信号を想定したが、第２実施形態では、図１２に例示するように、撮影画面Ｐを形成するフレーム画像上でデータが密に存在する任意の画像領域内で最後に転送される単一のデータの位置を示す座標情報を含む信号を設定信号Ｅ３として用いる。従って、第２実施形態では、帯域平滑部１５は、撮影画面Ｐを形成するフレーム画像上の単一の転送データの位置を示す座標情報に基づき、転送データ間の時間間隔Ｔｓを調整する。その他は、第１実施形態と同様である。
【００９８】
図１２の例では、撮影画面Ｐを形成するフレーム画像内に設定された評価エリアＸ１〜Ｘ３の上側に隣接する画像領域Ｙ１１，Ｙ２１，Ｙ３１（斜線部の領域）と、下側に隣接する画像領域Ｙ１２，Ｙ２２，Ｙ３２（斜線部の領域）は、評価値を補正するために使用されるデータを取得するための補正領域である。補正領域は、転送データが密に存在する画像領域である。図１２において、画像領域Ｙ１１，Ｙ２１，Ｙ３１，Ｙ１２，Ｙ２２，Ｙ３２のそれぞれの最後の単一のデータの座標位置は、黒丸で模式的に示されている。第２実施形態では、設定信号Ｅ３は、図１２に黒丸で例示された単一のデータの座標位置に関する情報を含んでいる。このような単一の画像データの座標位置を示す信号として、例えば画像抽出部１２２における画像抽出処理の過程で生成される既存の信号を利用することができる。
【００９９】
第２実施形態によれば、撮影画面Ｐを形成するフレーム画像内の各画像領域の最後のデータを転送する場合、その座標位置に関する情報を含む設定信号Ｅ３が画像抽出部１２２から出力される。そして、帯域平滑部１５は、画像抽出部１２２から供給される設定信号Ｅ３に基づいてカウンタ１５０３のカウント値の最大値を設定し、リード制御信号ＳＣの時間間隔を時間間隔Ｔｓ２に切り替える。
【０１００】
図１３の例では、第３グループの最後のデータＤｉ（６）の座標位置に関する設定信号Ｅ３が出力される時刻ｔ２Ａでリード制御信号ＳＣの時間間隔を時間間隔Ｔｓ２に切り替えている。即ち、図１３の例では、時刻ｔ２Ａで画像抽出部１２２が第３グループの最後のデータＤｉ（６）の座標位置を取得し、その情報を設定信号Ｅ３に反映させている。設定信号Ｅ３が、第１フレームの第３グループをなす最後のデータＤｉ（６）の座標位置を示す情報を含む場合、帯域平滑部１５は、リード制御信号ＳＣの時間間隔Ｔｓを、設定信号Ｅ２によって与えられる時間間隔Ｔｓ２に設定する。これにより、時刻ｔ２Ａ以降では、共通バス１８０に転送される転送データＤｏの時間間隔が時間間隔Ｔｓ２に短縮される。この結果、前述の図１０の例と同様に、第２フレームのデータが転送される前に、第１フレームの全てのデータの転送が完了している。
【０１０１】
第２実施形態によれば、フレーム内の各画像領域の最終のデータ転送以外の通常のデータ転送では、設定信号Ｅ１により転送データ間の時間間隔が時間間隔Ｔｓ１に設定され、共通バス１８０の帯域の平滑化が実施される。また、フレーム内の各画像領域の最後のデータ転送では、設定信号Ｅ１により設定されるカウンタ１５０３のカウント値の最大値と比較して、設定信号Ｅ２によりカウンタ１５０３のカウント値の最大値が小さい値に設定されるので、リード制御信号ＳＣの時間間隔Ｔｓが短縮され、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒも短縮される。この場合、共通バス１８０の帯域の平滑化は抑制されるが、データの転送速度が上昇するので、画像領域間およびフレーム間のデータ干渉を防止することが可能になる。
【０１０２】
従って、第２実施形態によれば、フレームの内外を問わず、データ干渉を抑制しつつ、共通バスの帯域を平滑化することができる。
また、第２実施形態によれば、個々のデータの座標位置に応じて転送データ間の時間間隔Ｔｓを切り替えるので、フレーム内にサイズが異なる複数の画像領域が含まれていても、各画像領域間のデータ干渉を抑制しつつ、共通バスの帯域を柔軟に平滑化することができる。
【０１０３】
（第３実施形態）
次に、本発明の第３実施形態を説明する。
図１４は、本発明の第３実施形態によるデータ転送装置３０の構成例を示すブロック図である。データ転送装置３０は、上述した第１実施形態による図２に示すデータ転送装置１０の構成において、帯域平滑部１５に代えて、帯域平滑部３５を備えている。その他のデータ転送装置３０の構成は、第１実施形態のデータ転送装置１０の構成と同様である。
【０１０４】
図１５は、本発明の第３実施形態によるデータ転送装置３０が備える帯域平滑部３５の構成例を示すブロック図である。帯域平滑部３５は、上述した第１実施形態による図３に示す帯域平滑部１５の構成において、バッファ余裕度判定部１５０６を更に備えている。その他の帯域平滑部３５の構成は、第１実施形態の帯域平滑部１５の構成と同様である。
【０１０５】
バッファ余裕度判定部１５０６は、バッファ部１２の残容量（バッファ余裕度）を判定するための要素である。帯域平滑部３５は、バッファ余裕度判定部１５０６の判定結果に応じて、共通バス１８０に転送される転送データ間の時間間隔（設定信号Ｅ１，Ｅ２により設定された時間間隔Ｔｓ１，Ｔｓ２）を調整する。具体的には、帯域平滑部３５は、バッファ部１２の残容量が少ない程、転送データ間の時間間隔Ｔｓを減少させる。第３実施形態では、帯域平滑部３５は、第１実施形態と同様に設定信号Ｅ１，Ｅ２に応じてリード制御信号ＳＣの時間間隔を設定すると共に、バッファ部１２の残容量に応じてリード制御信号ＳＣの時間間隔を調整する。
なお、設定信号Ｅ１，Ｅ２によるリード制御信号ＳＣの時間間隔の調整を省略してもよく、この場合、共通バス１８０の帯域の平滑化は行われない。
【０１０６】
帯域平滑部３５は、ライト完了通知信号ＳＷの数（即ち、バッファ部１２にライトされたデータの数）とリード制御信号ＳＣの数（即ち、バッファ部１２からリードされたデータの数）との差分から、バッファ部１２の残容量を取得し、この残容量からバッファ部１２の残容量を把握する。バッファ部１２の残容量が少ないことは、バッファ部１２にライトできなくなる可能性が高まり、バッファ部１２の機能が損なわれる可能性が高まることを意味する。バッファ余裕度判定部１５０６は、バッファ部１２の残容量（バッファ余裕度）を示す信号Ｍをカウンタ１５０３に出力する。第３実施形態では、信号Ｍは、バッファ部１２の残容量に余裕があること、残容量が少ないこと、残容量が殆どないことの何れかを示す。
【０１０７】
図１６は、本発明の第３実施形態によるデータ転送装置３０が備える帯域平滑部３５の動作を説明するための図であり、バッファ部１２の残容量と転送データ間の時間間隔Ｔｓ１１（＝Ｔｓ１），Ｔｓ１２，Ｔｓ１３の関係を説明するための図である。
カウンタ１５０３は、バッファ余裕度判定部１５０６から入力される信号Ｍに基づいて、設定信号Ｅ１，Ｅ２に応じて設定されたカウント値の最大値を調整する。図１６の例では、帯域平滑部３５は、バッファ部１２の残容量に余裕があることを信号Ｍが示す場合、設定信号Ｅ１によって与えられる時間間隔Ｔｓ１に所定の第１係数「１」を乗じて得られる時間間隔Ｔｓ１１にリード制御信号ＳＣの時間間隔Ｔｓを設定する。この場合、共通バス１８０に転送される転送データＤｏの時間間隔Ｔｓが時間間隔Ｔｓ１と等しい値に設定される。
【０１０８】
また、帯域平滑部３５は、時刻ｔ３１でバッファ部１２の残容量が少ないことを信号Ｍが示す場合、設定信号Ｅ１によって与えられる時間間隔Ｔｓ１に所定の第２係数「０．５」を乗じた時間間隔Ｔｓ１２にリード制御信号ＳＣの時間間隔Ｔｓを設定する。この場合、共通バス１８０に転送される転送データＤｏの時間間隔Ｔｓが時間間隔Ｔｓ１の２分の１の値（＝Ｔｓ１×０．５）に設定される。
【０１０９】
更に、帯域平滑部３５は、時刻ｔ３２でバッファ部１２の残容量が殆どないことを信号Ｍが示す場合、設定信号Ｅ１によって与えられる時間間隔Ｔｓ１に所定の第３係数「０．２」を乗じた時間間隔Ｔｓ１３にリード制御信号ＳＣの時間間隔Ｔｓを設定する。これにより、共通バス１８０に転送される転送データＤｏの時間間隔が時間間隔Ｔｓ１の５分の１の値（＝Ｔｓ１×０．２）に設定される。
なお、上述の例において、第１係数、第２係数、第３係数の各数値は一例に過ぎず、バッファ部１２の残容量を調整することができることを限度に、各係数の数値を任意に設定することができる。
【０１１０】
上述のように、帯域平滑部３５は、信号Ｍによって示されるバッファ部１２の残容量が少ない程、設定信号Ｅ１によって設定されたリード制御信号ＳＣの時間間隔Ｔｓ１を減少させ、転送データ間の時間間隔Ｔｓ１を減少させる。設定信号Ｅ２によって設定される転送データ間の時間間隔Ｔｓ２についても同様である。この結果、バッファ部１２へのライト速度よりもバッファ部１２からのリード速度が相対的に増加し、これにより、バッファ部１２の残容量が増えるようになる。
【０１１１】
第３実施形態によれば、バッファ部１２の残容量に応じて転送データ間の時間間隔Ｔｓを制御するので、バッファ部１２に対するデータのライト動作を安定化させることができ、バッファ部１２のバッファ機能を安定的に維持することができる。
【０１１２】
次に、上述した第１実施形態から第３実施形態による効果を、特許文献１による技術と比較して検証する。
図１７は、本発明の実施形態によるデータ転送装置の効果を補足するための従来技術によるデータ転送装置の動作例を説明するための図である。ここで、図１７（Ａ）は、ＤＭＡ転送要求が受け付けられるまでの時間が短い場合の動作を説明するためのタイミングチャートであり、図１７（Ｂ）は、ＤＭＡ転送要求が受け付けられるまでの時間が長い場合の動作を説明するためのタイミングチャートである。
【０１１３】
特許文献１の技術によれば、図１７（Ａ）に例示するように、ＤＭＡ転送要求ＲＥＱの時間間隔ＴＩＮＴは一定に固定される。このため、図１７（Ｂ）に例示するように、時刻ｔ１０で最初のＤＭＡ転送要求ＲＥＱが共通バスに出力されてから時刻ｔ１１でＤＭＡ転送受付ＡＣＫが受信されるまでに長時間を要した場合、最初のＤＭＡ転送要求ＲＥＱから一定の時間間隔ＴＩＮＴを空けて、時刻ｔ１２で次のＤＭＡ転送要求ＲＥＱが出力される。換言すれば、最初のＤＭＡ転送要求ＲＥＱが受け付けられても、一定の時間間隔ＴＩＮＴに相当する時間が経過しなければ、次のＤＭＡ転送要求ＲＥＱは出力されない。このため、最初のＤＭＡ転送要求ＲＥＱが受け付けられるまでに滞留した転送データを速やかに転送することができない。
【０１１４】
これに対し、前述した本発明の第１実施形態から第３実施形態によれば、ＤＭＡ転送要求ＲＥＱが受け付けられるまで長時間を要する状況下では、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒは、帯域平滑部１５から出力されるリード制御信号ＳＣの時間間隔Ｔｓに制限されず、最小の時間間隔でＤＭＡ転送要求ＲＥＱが出力される。このため、バスアービタ１６１に受け付けられるまでに長時間を要したＤＭＡ転送要求ＲＥＱの後のＤＭＡ転送要求ＲＥＱを速やかに出力することができる。従って、ＤＭＡ転送要求ＲＥＱが受け付けられるまでに長時間を要したとしても、その間に滞留した転送データを速やかに転送することができ、データ転送速度の低下を抑制することができる。
【０１１５】
また、前述した本発明の第１実施形態から第３実施形態によれば、ＤＭＡ転送要求ＲＥＱが速やかに受け付けられる状況下では、共通バス１８０の帯域を平滑化するために、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒは、帯域平滑部１５から出力されるリード制御信号ＳＣの時間間隔Ｔｓに応じて設定される。このようにＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒが設定されたとしても、図７（Ａ）に例示したように、ＤＭＡ転送要求ＲＥＱが速やかに受け付けられる状況下では、本来的に各グループの画素データは相互に干渉しないので、データ転送速度は損なわれない。
【０１１６】
従って、上述した実施形態によれば、共通バス１８０を平滑化することにより、優先度の低い機能ブロックのＤＭＡ転送要求ＲＥＱの受け付けを可能とすると共に、優先度の高い機能ブロックのＤＭＡ転送要求ＲＥＱが長時間にわたって受け付けられない状況が発生しても、データ転送の遅れを挽回することができる。従って、優先度の高い機能ブロックの処理を優先的に実施すると共に、優先度の低い機能ブロックの処理の破綻を有効に防止することができる。
【０１１７】
次に、本発明の実施形態の主要な効果をまとめる。
本発明の第１実施形態から第３実施形態によれば、フレーム間のデータ干渉を抑制しつつ、共通バス１８０の帯域を平滑化することができる。また、本発明の実施形態によれば、共通バス１８０の帯域を有効に利用しつつ、滞留したデータ転送を速やかに行うことができる。更に、バッファ部１２の残容量に応じて転送データ間の時間間隔Ｔｓを調整するようにしたので、バッファ部１２のバッファ機能を安定化させることができる。
【０１１８】
また、バッファ部１２に保持されている転送データ量に応じてＤＭＡ転送要求ＲＥＱを出力することができ、これにより、転送データ量に応じて共通バス１８０の帯域を柔軟に平滑化することができる。
また、ＤＭＡ転送要求が長時間にわたって受け付けられない場合であっても、転送データのバッファとしての処理の破綻を抑制することができる。
また、ＤＭＡ転送要求ＲＥＱを出力する前に帯域を制御することができ、共通バス１８０の帯域の制御が容易になる。
また、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒを制御するための複雑な回路を備える必要がないので、回路の規模を抑制することができる。
【０１１９】
また、ＤＭＡ転送要求ＲＥＱがバスアービタ１６１に速やかに受け付けられる状況下では、共通バス１８０の帯域を平滑化することができる。従って、バスアービタ１６１によるアービトレーションにおける優先度の高い機能ブロックの処理を実施しつつ、優先度の低い機能ブロックの処理を確保することができる。
【０１２０】
また、ＤＭＡ転送要求ＲＥＱがバスアービタ１６１に受け付けられるまでに長時間を要する状況が発生しても、その後、ＤＭＡ転送要求ＲＥＱがバスアービタ１６１に速やかに受け付けられる状況が回復すれば、ＤＭＡ転送要求ＲＥＱが受け付けられるまでに長時間を要したことにより滞留したデータ転送の遅れを挽回することができる。
また、画素データの疎密を有する入力画像データＤｉが入力された場合、ＤＭＡ転送要求ＲＥＱを時間軸上で拡散させることにより、共通バス１８０の帯域を平滑化することができる。
【０１２１】
また、ＤＭＡ転送によるデータレートが高い状態に合わせて各機能ブロックの優先度をバスアービタに設定した場合、優先度の機能ブロックのＤＭＡ転送要求が連続しても、優先度の低い他の機能ブロックのＤＭＡ転送要求をバスアービタで受け付けることが可能になる。このため、優先度の高い機能ブロックにバス権が占有されることがなくなり、優先度の低い機能ブロックがバス権を確保することが可能になる。従って、優先度の低い機能ブロックの処理の破綻を防止することができる。
【０１２２】
また、簡易な構成により、ＤＭＡ転送要求ＲＥＱの時間間隔Ｔｒを柔軟に調整することができる。
また、バスアービタ１６１によるアービトレーションのルールが変更されても、設定信号Ｅによりカウンタ１５０３のカウント値の最大値を調整することにより、共通バス１８０の帯域を柔軟に平滑化することができる。
【０１２３】
以上、本発明の好ましい実施形態を説明したが、本発明はこれら実施形態およびその変形例に限定されることはない。本発明の趣旨を逸脱しない範囲で、構成の付加、省略、置換、およびその他の変更が可能である。また、本発明は前述した説明によって限定されることはなく、添付のクレームの範囲によってのみ限定される。
【符号の説明】
【０１２４】
１０，３０…データ転送装置
１１…ライト制御部
１２…バッファ部
１３…リード制御部
１４…インターフェイス部（Ｉ／Ｆ部）
１５，３５…帯域平滑部
１００…撮像システム
１１０…イメージセンサ
１２０，１３０，１４０，１５０…機能ブロック
１２１…前処理部
１２２，１２３…画像抽出部
１２４…評価値生成部
１２５〜１２７…データ転送部
１３１…データ転送部
１３２…表示処理部
１３３…表示デバイス
１４１，１４２…データ転送部
１４３…カードインターフェイス部
１４４…記録媒体
１５１，１５２…データ転送部
１５３…画像処理部１５３
１６１…バスアービタ
１６２…ＤＲＡＭインターフェイス部
１６３…ＤＲＡＭ
１７０…中央演算処理装置
１５０１…ＦＩＦＯメモリ
１５０２，１５０３…カウンタ
１５０４…リード判定部
１５０５…セレクタ
１５０６…バッファ余裕度判定部
【図１】
0006564625.tif 000002
【図２】
0006564625.tif 000003
【図３】
0006564625.tif 000004
【図４】
0006564625.tif 000005
【図５】
0006564625.tif 000006
【図６】
0006564625.tif 000007
【図７】
0006564625.tif 000008
【図８】
0006564625.tif 000009
【図９】
0006564625.tif 000010
【図１０】
0006564625.tif 000011
【図１１】
0006564625.tif 000012
【図１２】
0006564625.tif 000013
【図１３】
0006564625.tif 000014
【図１４】
0006564625.tif 000015
【図１５】
0006564625.tif 000016
【図１６】
0006564625.tif 000017
【図１７】
0006564625.tif 000018