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