(57)【要約】【課題】異なる領域のデータを並行して取り込んで記憶回路に転送することが可能なマイクロコンピュータを提供すること。【解決手段】マイクロコンピュータ１は、カメラ２から入力される画像データの中から所定領域の画像データを取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送するＤＲＩ０〜２（１２−０〜１２−２）と、カメラ２から入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送するようにＤＲＩ０〜２（１２−０〜１２−２）を制御するＣＰＵ１１とを含む。したがって、異なる領域の画像データを並行して取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送することが可能となる。【選択図】図１
2010086401.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力されるデータを記憶回路に転送するマイクロコンピュータであって、
前記外部から入力されるデータの中から所定領域のデータを取り込んで前記記憶回路に転送する複数のインタフェース手段と、
前記外部から入力されるデータの中のそれぞれ異なる領域のデータを前記記憶回路に転送するように前記複数のインタフェース手段を制御するプロセッサとを含む、マイクロコンピュータ。
【請求項２】
前記複数のインタフェース手段のそれぞれは、前記外部から入力されるデータの中から重複する領域のデータを取り込み、並行して前記記憶回路に転送する、請求項１記載のマイクロコンピュータ。
【請求項３】
前記複数のインタフェース手段のそれぞれは、外部から入力される同期信号に応じてイベントを検出するイベント検出手段と、
前記イベント検出手段によって検出されたイベントをカウントして、前記所定領域に対応するデータの取り込み許可を行なう複数のカウント手段と、
前記複数のカウント手段からの取り込み許可に応じて、前記外部から入力されるデータの中から前記所定領域のデータを取り込んで前記記憶回路に出力する制御手段と、
前記制御手段によって出力される前記所定領域のデータを格納するアドレスを生成して、前記記憶回路に出力するアドレス生成手段とを含む、請求項１または２記載のマイクロコンピュータ。
【請求項４】
前記マイクロコンピュータはさらに、前記外部から入力されるデータと、前記外部から入力されるデータとは異なるデータとのいずれかを選択して、前記複数のインタフェース手段の少なくとも１つに出力する選択手段を含む、請求項１〜３のいずれかに記載のマイクロコンピュータ。
【請求項５】
画像を撮像するカメラと、
データを記憶する記憶回路と、
前記カメラから入力される画像データを前記記憶回路に転送するマイクロコンピュータとを含んだシステムであって、
前記マイクロコンピュータは、前記カメラから入力される画像データの中から所定領域の画像データを取り込んで前記記憶回路に転送する複数のインタフェース手段と、
前記カメラから入力される画像データの中のそれぞれ異なる領域の画像データを前記記憶回路に転送するように前記複数のインタフェース手段を制御するプロセッサとを含む、システム。
【請求項６】
外部から入力されるデータを記憶回路に転送するデータ転送装置であって、
前記外部から入力されるデータの中から所定領域のデータを取り込んで前記記憶回路に転送する複数のインタフェース手段を含み、
前記複数のインタフェース手段のそれぞれは、前記外部から入力されるデータの中のそれぞれ異なる領域のデータを前記記憶回路に転送する、データ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラの画像処理、高速データ通信などのように大量のデータに対して高速処理を行なう技術に関し、特に、処理対象のデータの中から複数の所定データを抽出し、それぞれをメモリ内の異なる領域に転送するマイクロコンピュータ、それを含んだシステムおよびデータ転送装置に関する。
【背景技術】
【０００２】
近年、画像処理などの技術分野において、大量のデータに対する高速処理の要望が高まっている。たとえば、カメラが取り込んだ画像に対して演算処理を行ない、演算処理後の画像の表示を行なう際、リアルタイム性が要求される場合には、大量のデータを高速に処理する必要がある。これに関連する技術として、下記の特許文献１〜４に開示された発明がある。
【０００３】
特許文献１に開示された発明は、外部からの選択信号が変化しなくても複数データを書き込むことを目的とした表示駆動回路に関するものである。外部からの表示データをＣＣＢインターフェイスを介し、シフトレジスタに取り込む。そして、シリアルデータカウンタにおいてカウントした表示データ転送に従って、表示データを順次ＤＣＲＡＭまたはＡＤＲＡＭに書き込む。
【０００４】
特許文献２に開示された発明は、圧縮データの高速な展開処理と、液体噴射ヘッドへの高速なデータ転送とを実現し、液体噴射装置の液体噴射実行速度を従来と比較して飛躍的に高速化することを目的とする。インターフェース部が受信した記録制御データは、切換制御ブロックへ転送され、ヘッダ解析ブロックへ転送されてヘッダの解析が行われる。ヘッダ以降のデータがコマンドである場合には、コマンド格納レジスタへ格納され、圧縮記録データである場合には、データ転送制御ブロックへ転送される。コマンド格納レジスタへＭＰＵがアクセスしてコマンド解析する。圧縮記録データは、データ転送制御ブロックから第１の専用バスを介してＦＩＦＯメモリへ格納され、ＤＥＣＵへ第２の専用バスを介して転送される。
【０００５】
特許文献３に開示された発明は、異なる種類のシリアルデータを１個のシリアルインターフェース回路で取扱うことを目的とする。複数配置されている送信受信ＦＩＦＯの片側または両側にセレクタ回路を配置し、そのセレクタ回路の切り替えで、シリアル入出力回路に対するＦＩＦＯの割り当て数と接続方式とを変更する。
【０００６】
特許文献４に開示された発明は、パラレルインターフェースの使用端子数を削減し、多くのスイッチのデータ入力を可能にすることを目的としたスイッチ信号の多入力回路に関するものである。パラレルインターフェース、ＣＰＵ、複数の１６進スイッチにより構成され、インターフェースおよびスイッチ間が、共通データバスとスイッチのデータ出力許可信号線とにより接続されている。そして、データ出力許可信号によりデータ出力スイッチを選択し、共通データバスを使用してデータの入力を行なう。これにより、パラレルインターフェースの使用端子数が削減される。
【特許文献１】特開２００２−２９７０８０号公報
【特許文献２】特開２００５−２８８７５号公報
【特許文献３】特開２００２−９１９０４号公報
【特許文献４】特開平５−１２７７８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述の特許文献１〜４に開示された発明は、処理対象のデータの中から複数の所定データを抽出し、それぞれをメモリ内の異なる領域に転送する技術には適用することができない。
【０００８】
本発明は、上記問題点を解決するためになされたものであり、その目的は、異なる領域のデータを並行して取り込んで記憶回路に転送することが可能なマイクロコンピュータ、それを含んだシステムおよびデータ転送装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明の一実施例によれば、カメラから入力される画像データをメモリブロックに転送するマイクロコンピュータが提供される。マイクロコンピュータは、カメラから入力される画像データの中から所定領域の画像データを取り込んでメモリブロックに転送する複数のＤＲＩと、カメラから入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロックに転送するように複数のＤＲＩを制御するＣＰＵとを含む。
【発明の効果】
【００１０】
ＣＰＵは、カメラから入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロックに転送するように複数のＤＲＩを制御するので、異なる領域の画像データを並行して取り込んでメモリブロックに転送することが可能となる。
【発明を実施するための最良の形態】
【００１１】
（第１の実施の形態）
図１は、本発明の第１の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。このシステムは、マイクロコンピュータ１と、カメラなどのセンサ２と、メモリブロック０〜Ｎ（３−０〜３−Ｎ）とを含む。本実施の形態においては、センサ２の一例としてカメラの場合について説明するが、高速にデータを出力するものであればよく、これに限られるものではない。
【００１２】
各メモリブロックの容量およびメモリブロックの個数は特に限定されるものではないが、たとえば、１６ＫＢｙｔｅのメモリブロックが３２個使用される。これらのメモリブロックは、連続するアドレスにマッピングされており、異なるメモリブロックに対しては同時にアクセス可能となるようにバスに接続されている。
【００１３】
また、メモリブロックはＳＲＡＭ（Static Random Access Memory）などの記憶回路によって構成されるが、データを記憶できるものであればよく、これに限定されるものではない。
【００１４】
マイクロコンピュータ１は、端子１５−１を介してカメラ２から出力される制御信号が入力され、端子１５−２を介してカメラ２から出力される画像データが入力される。マイクロコンピュータ１は、カメラ２から出力された画像データの中から複数の所定領域の画像データを抽出し、それぞれの所定領域ごとの画像データをメモリブロック０〜Ｎ（３−Ｎ）に転送する。
【００１５】
マイクロコンピュータ１は、アービタ４と、ＣＰＵ１１と、ダイレクトＲＡＭインタフェース（以下、ＤＲＩと呼ぶ。）０〜２（１２−０〜１２−２）と、メモリＩ／Ｆ１３−０〜１３−Ｎと、バスコントローラ１４とを含む。なお、ＤＲＩ０〜２（１２−０〜１２−２）を特にデータ転送装置とも呼ぶことにする。
【００１６】
ＣＰＵ１１は、マイクロコンピュータ１の全体的な制御を行なうものであり、後述のようにＤＲＩ０〜２（１２−０〜１２−２）内のレジスタに値を設定することにより、ＤＲＩ０〜２（１２−０〜１２−２）を動作させる。このＤＲＩ０〜２（１２−０〜１２−２）は、それぞれ同じ構成を有しているが、その詳細については後述する。
【００１７】
ＣＰＵ１１、バスコントローラ１４およびメモリＩ／Ｆ１３−０〜１３−Ｎは、バス（アドレスバス、データバス）を介して接続されている。また、アービタ４およびメモリＩ／Ｆ１３−０〜１３−Ｎは、ＤＲＩアドレスバスおよびＤＲＩデータバスを介して接続されている。アービタ４は、ＤＲＩ０〜２（１２−０〜１２−２）からメモリブロック０〜Ｎ（３−０〜３−Ｎ）へのアクセス要求を監視しており、アクセス要求が競合する場合にはそのアクセス要求の調停を行ない、調停後のアドレスおよびデータをＤＲＩアドレスバスおよびＤＲＩデータバスを介して出力する。バスコントローラ１４は、ＣＰＵ１１およびアービタ４からメモリブロック０〜Ｎ（３−０〜３−Ｎ）へのアクセス要求を受け、バスの制御を行なう。
【００１８】
メモリＩ／Ｆ１３−０〜１３−Ｎは、ＣＰＵ１１およびアービタ４からのアクセス要求に応じて、メモリブロック０〜Ｎ（３−０〜３−Ｎ）からの画像データの読み出し、およびメモリブロック０〜Ｎ（３−０〜３−Ｎ）への画像データの書き込みを行なう。
【００１９】
図２は、図１に示すＤＲＩの内部構成を示すブロック図である。このＤＲＩは、イベント検出回路２１と、ＤＲＩイベントカウンタ２２と、ＤＲＩ取り込み／転送制御回路２３と、ＤＤ入力端子選択回路２４とを含む。
【００２０】
イベント検出回路２１は、ＤＩＮ０〜ＤＩＮ５端子を介して外部から入力される信号を受け、イベントの検出を行なう。このイベントとは、たとえば、ＤＩＮ０〜ＤＩＮ５端子にカメラ２が接続される場合には、垂直同期（ＶＳＹＮＣ）信号のエッジ検出、水平同期（ＨＳＹＮＣ）信号のエッジ検出、クロック（ＰＣＬＫ）信号の検出などである。後述のように、カメラ２が接続される場合には、ＤＩＮ０端子にＶＳＹＮＣ信号が接続され、ＤＩＮ１端子にＨＳＹＮＣ信号が接続され、ＤＩＮ３端子にＰＣＬＫ信号が接続され、それ以外のＤＩＮ２、ＤＩＮ４およびＤＩＮ５端子は使用されない。
【００２１】
ＤＲＩイベントカウンタ２２は、６つのＤＥＣ（ＤＲＩ  Ｅｖｅｎｔ  Ｃｏｕｎｔｅｒ）を有しており、このＤＥＣ０〜５（３４〜３９）の接続を適宜切替えることによって、イベント検出回路２１によって検出されたイベントのカウントを行なう。このＤＲＩイベントカウンタ２２の詳細については後述する。
【００２２】
ＤＲＩ取り込み／転送制御回路２３は、ＤＲＩイベントカウンタ２２から出力される信号に応じて、外部から入力されるデータを取り込み、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に対して取り込んだデータの書き込みを行なう。
【００２３】
このＤＲＩ取り込み／転送制御回路２３は、ＤＲＩデータ取り込みイベント数設定レジスタ４１と、ＤＲＩ取り込みイベントカウンタ４２と、ＤＲＩ転送カウンタ４３と、ＤＲＩアドレスリロードレジスタ０（４４）と、ＤＲＩアドレスカウンタ０（４５）と、ＤＲＩアドレスリロードレジスタ１（４６）と、ＤＲＩアドレスカウンタ１（４７）と、３２ビットのデータバッファ４８とを含む。
【００２４】
ＤＲＩデータ取り込みイベント数設定レジスタ４１は、データ取り込みを行なうイベント数を設定するレジスタであり、設定された値がＤＲＩ取り込みイベントカウンタ４２およびＤＲＩ転送カウンタ４３のリロード値として使用される。
【００２５】
ＤＲＩ取り込みイベントカウンタ４２は、データ取り込みイベントをカウントするカウンタであり、データ取り込み禁止状態からデータ取り込み許可状態に変化すると、ＤＲＩデータ取り込みイベント数設定レジスタ４１の設定値がリロードされる。その後、データ取り込みが行なわれるたびに“１”ずつデクリメントされ、カウント値が“０”となった時点でカウント動作を停止する。
【００２６】
ＤＲＩ転送カウンタ４３は、ＤＲＩ転送データ取り込みをカウントするカウンタであり、データ取り込み禁止状態からデータ取り込み許可状態に変化すると、ＤＲＩデータ取り込みイベント数設定レジスタ４１の設定値と、外部から入力されるデータのバス幅とに基づいて決定された値がカウント値としてリロードされる。その後、ＤＲＩ転送が完了するたびに“１”ずつデクリメントされ、カウント値が“０”となった時点でカウント動作を停止し、ＣＰＵ１１に対してＤＲＩ転送割込み要求信号を出力することによりＤＲＩ転送が完了したことを通知する。
【００２７】
外部から入力されるデータのバス幅が８ビットの場合には４回のデータ取り込みイベントが発生するごとに、１６ビットの場合には２回のデータ取り込みイベントが発生するごとに、３２ビットの場合には１回のデータ取り込みイベントが発生するごとにＤＲＩ転送が実行される。これは、ＤＲＩがメモリブロック０〜Ｎ（３−０〜３−Ｎ）に対して３２ビット単位でデータを転送するためである。
【００２８】
ＤＲＩアドレスリロードレジスタ０（４４）は、ＤＲＩアドレスカウンタ０（４５）のリロード値を格納するレジスタであり、この値がＤＲＩ転送の開始アドレスとして使用される。この設定値は、所定のタイミングでＤＲＩアドレスカウンタ０（４５）にリロードされる。
【００２９】
ＤＲＩアドレスカウンタ０（４５）は、ＤＲＩ転送先であるメモリブロック０〜Ｎ（３−０〜３−Ｎ）のアドレスを指定するためのカウンタであり、ＤＲＩ転送が完了するたびに“４”ずつインクリメントされる。
【００３０】
ＤＲＩアドレスリロードレジスタ１（４６）およびＤＲＩアドレスカウンタ１（４７）は、ＤＲＩアドレスリロードレジスタ０（４４）およびＤＲＩアドレスカウンタ０（４５）と同等の機能を有しており、たとえば、メモリが２バンク構成となっている場合にそれぞれのアドレスを指定可能としている。
【００３１】
３２ビットデータバッファ４８は、外部から入力されるデータを一時的に保持するために設けられており、データが３２ビットとなった時点でＤＲＩ転送が行なわれ、ＤＲＩデータバス（図１に示すマイクロコンピュータ１内のバス）およびメモリＩ／Ｆ１３を介してメモリブロック０〜Ｎ（３−０〜３−Ｎ）に出力される。
【００３２】
ＤＤ入力端子選択回路２４は、ＤＤ０〜ＤＤ３１入力端子の中の８ビット／１６ビット／３２ビットを選択して３２ビットデータバッファ４８に出力する回路である。外部から入力されるデータのバス幅が８ビットの場合には、その８ビットのデータが入力される入力端子を選択するように設定される。また、外部から入力されるデータのバス幅が１６ビットの場合には、その１６ビットのデータが入力される入力端子を選択するように設定される。外部から入力されるデータのバス幅が３２ビットの場合には、ＤＤ０〜ＤＤ３１入力端子をすべて選択するように設定される。
【００３３】
図３は、イベント検出回路２１およびＤＲＩイベントカウンタ２２の詳細を説明するためのブロック図である。
【００３４】
イベント検出回路２１は、ＤＩＮ０イベント検出回路〜ＤＩＮ５イベント検出回路の６つの回路によって構成され、入力される信号の立ち上がりエッジ、立ち下がりエッジのいずれか、または両エッジを検出してイベントを発生させる。なお、本実施の形態においてはＤＩＮ０イベント検出回路３１、ＤＩＮ１イベント検出回路３２およびＤＩＮ３イベント検出回路３３の３つが使用される。
【００３５】
ＤＩＮ０イベント検出回路３１は、カメラ２からのＶＳＹＮＣ信号が入力される。本実施の形態においては、ＶＳＹＮＣ信号の立ち上がりエッジで、ＤＩＮ０イベント検出回路３１がイベントを発生させるものとする。
【００３６】
ＤＩＮ１イベント検出回路３２は、カメラ２からのＨＳＹＮＣ信号が入力される。本実施の形態においては、ＨＳＹＮＣ信号の立ち下がりエッジで、ＤＩＮ１イベント検出回路３２がイベントを発生させるものとする。
【００３７】
ＤＩＮ３イベント検出回路３３は、カメラ２からのＰＣＬＫ信号が入力される。本実施の形態においては、ＰＣＬＫ信号の立ち下がりエッジで、ＤＩＮ３イベント検出回路３３がイベントを発生させるものとする。
【００３８】
ＤＥＣ０〜５（３４〜３９）はそれぞれ、ＥＮ信号によってカウントが許可されたときにＣＫ信号に同期してカウント値を“１”ずつデクリメントする。ＤＥＣ０〜５（３４〜３９）はそれぞれ、４つまたは５つの信号の中から１つを選択してＥＮ信号として使用する。また、ＤＥＣ０〜５（３４〜３９）はそれぞれ、４つの信号の中から１つを選択してＣＫ信号として使用する。
【００３９】
たとえば、ＤＥＣ０（３４）は、ＶＳＹＮＣ信号の立ち上がりで発生するイベント、ＨＳＹＮＣ信号の立ち下がりで発生するイベント、ＤＩＮ２イベント検出回路によって検出されたイベント（未使用）、取り込み許可信号、およびＰＤＡＣイベントＨ信号の中から１つを選択してＥＮ信号として使用する。また、ＤＥＣ０（３４）は、ＶＳＹＮＣ信号の立ち上がりで発生するイベント、ＨＳＹＮＣ信号の立ち下がりで発生するイベント、ＤＩＮ２イベント検出回路によって検出されたイベント（未使用）、および取り込みイベントカウンタアンダフロー信号の中から１つを選択してＣＫ信号として使用する。
【００４０】
ＤＥＣ０（３４）は、アンダフローが発生したときにｕｄｆ信号を次段のＤＥＣ１（３５）に出力する。この信号は、カメラ２からのデータの取り込み許可を判断する際に使用する取り込み許可要因としても使用される。
【００４１】
また、ＤＥＣ１（３５）は、ＶＳＹＮＣ信号の立ち上がりで発生するイベント、ＨＳＹＮＣ信号の立ち下がりで発生するイベント、ＤＥＣ０（３４）から出力されるｕｄｆ信号、取り込み許可信号、およびＰＤＡＣイベントＨ信号の中から１つを選択してＥＮ信号として使用する。また、ＤＥＣ１（３５）は、ＨＳＹＮＣ信号の立ち下がりで発生するイベント、ＤＩＮ２イベント検出回路によって検出されたイベント（未使用）、ＰＣＬＫ信号、およびＤＥＣ０（３４）から出力されるｕｄｆ信号の中から１つを選択してＣＫ信号として使用する。
【００４２】
図３において、取り込み許可信号は、ソフトウェアなどによって外部から取り込み許可を指示する信号である。取り込みイベントカウンタアンダフロー信号は、ＤＲＩ取り込みイベントカウンタ４２においてアンダフローが発生したことを示す信号である。ＤＲＩ転送１回完了信号は、１回のＤＲＩ転送が完了するごとに出力される信号である。ＤＲＩ転送カウンタアンダフロー信号は、ＤＲＩ転送カウンタ４３においてアンダフローが発生したことを示す信号である。なお、これらの信号は本実施の形態とは直接関係するものではないので、詳細な説明は行なわない。
【００４３】
図４は、図２に示すＤＲＩを用いた画像データの取り込みの一例を示す図である。図５は、図３に示すＤＥＣ０〜５（３４〜３９）の動作を説明するための図である。なお、図４に示すように四角領域の画像データを取り込む場合、ＤＥＣ４（３８）およびＤＥＣ５（３９）は使用されない。
【００４４】
図４に示す四角領域の画像を取り込む場合、まず、ＤＥＣ０（３４）によってフレーム間引きを行なう。図５に示すように、ＤＥＣ０（３４）のＥＮ信号としてＳ／Ｗ（取り込み許可）信号が選択され、ＣＫ信号としてＶＳＹＮＣ信号の立ち上がりで発生するイベントが選択される。ＤＥＣ０（３４）は、ソフトウェアによってカウントが許可されたときにＶＳＹＮＣ信号の立ち上がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。そして、ＤＥＣ０（３４）のアンダフロー（ｕｄｆ信号）によって画像データの取り込みが許可される。
【００４５】
たとえば、リロード値が“Ｈ’０００１”であれば、１フレームおきにフレーム間引きが行なわれる。なお、連続動作モードとは、ＤＥＣ０（３４）のアンダフローによってリロード値をリロードするモードである。
【００４６】
次に、ＤＥＣ１（３５）によって不要ラインの間引きが行なわれる。図５に示すように、ＤＥＣ１（３５）のＥＮ信号としてＶＳＹＮＣ信号の立ち上がりで発生するイベントが選択され、ＣＫ信号としてＨＳＹＮＣ信号の立ち下がりで発生するイベントが選択される。ＤＥＣ１（３５）は、ＶＳＹＮＣ信号の立ち上がりで発生するイベントによってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、ＨＳＹＮＣ信号の立ち下がりで発生するイベントによってダウンカウントを行なう。そして、ＤＥＣ１（３５）のアンダフローによって画像データの取り込みが許可される。なお、ワンショットモードとは、ＤＥＣ１（３５）のアンダフローによってカウント動作を停止し、再度カウントが許可されたときに、ＤＥＣ１（３５）がリロード値のリロードを行なうモードである。
【００４７】
次に、ＤＥＣ２（３６）によって不要画素の間引きが行なわれる。図５に示すように、ＤＥＣ２（３６）のＥＮ信号としてＨＳＹＮＣ信号の立ち下がりで発生するイベントが選択され、ＣＫ信号としてＰＣＬＫ信号の立ち下がりで発生するイベントが選択される。ＤＥＣ２（３６）は、ＨＳＹＮＣ信号の立ち下がりで発生するイベントによってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、ＰＣＬＫ信号の立ち下がりで発生するイベントによってダウンカウントを行なう。そして、ＤＥＣ２（３６）のアンダフローによってＤＥＣ３（３７）のカウントが許可される。
【００４８】
次に、ＤＥＣ３（３７）によって１ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。図５に示すように、ＤＥＣ３（３７）のＥＮ信号としてＤＥＣ２（３６）のｕｄｆ信号が選択され、ＣＫ信号としてＰＣＬＫ信号の立ち下がりで発生するイベントが選択される。ＤＥＣ３（３７）は、ＤＥＣ２（３６）から出力されるｕｄｆ信号によってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、ＰＣＬＫ信号の立ち下がりで発生するイベントによってダウンカウントを行なう。ＤＥＣ３（３７）は、ＤＥＣ２（３６）から出力されるｕｄｆ信号によってカウントが許可されたときに、画像データの取り込みを許可し、ＤＥＣ３（３７）のアンダフローによって画像データの取り込みを禁止する。
【００４９】
ＤＲＩ取り込み／転送制御回路２３は、ＤＥＣ０〜３（３４〜３７）から出力される画像データの取り込み許可要因によってＤＲＩデータ取り込みイベントを発生させ、内部動作を行なう。
【００５０】
図６は、ＤＩＮ０、ＤＩＮ１およびＤＩＮ３端子に入力されるＶＳＹＮＣ信号、ＨＳＹＮＣ信号およびＰＣＬＫ信号と、ＤＥＣ２（３６）の動作とを説明するためのタイミングチャートである。
【００５１】
ＤＩＮ０イベント検出回路３１は、ＶＳＹＮＣ信号の立ち上がりでイベントを発生させ、ＤＲＩイベントカウンタ２２に出力する。このとき、ＣＰＵ１１に対してＶＳＹＮＣ信号の立ち上がりが発生したことを通知する割込み信号が出力可能である。
【００５２】
ＤＩＮ１イベント検出回路３２は、ＨＳＹＮＣ信号の立ち下がりでイベントを発生させ、ＤＲＩイベントカウンタ２２に出力する。このとき、ＣＰＵ１１に対してＨＳＹＮＣ信号の立ち下がりが発生したことを通知する割込み信号が出力可能である。
【００５３】
ＤＩＮ３イベント検出回路３３は、ＰＣＬＫ信号の立ち下がりでイベントを発生させ、ＤＲＩイベントカウンタ２２に出力する。
【００５４】
図６のＴ１において、ＨＳＹＮＣ信号の立ち下がりで割り込みが発生すると、ＣＰＵ１１は、次ラインが取り込みラインか否かを判定する。この判定は、ＤＥＣ１（３５）によって不要ラインが間引きされた後であるか否かによって行なわれる。次ラインが取り込みラインであれば、ＣＰＵ１１は、取り込み禁止状態から取り込み許可状態に変化させる。このとき、ＤＥＣ２（３６）はリロード値をリロードする。
【００５５】
Ｔ１において、ＨＳＹＮＣ信号の立ち下がりエッジを検出すると、ＤＥＣ２（３６）はカウントを開始し、ＰＣＬＫ信号の立ち下がりでダウンカウントを行なう。そして、Ｔ３において、ＤＥＣ２（３６）のアンダフローが発生すると、ｕｄｆ信号をＤＥＣ３（３７）に出力してＤＥＣ３（３７）のカウントを開始させる。
【００５６】
図７は、図２に示すＤＲＩを用いた画像データの取り込みの他の一例を示す図である。図８は、図３に示すＤＥＣ０〜５（３４〜３９）の動作の他の一例を説明するための図である。なお、図７に示すように１ラインおきの画像データを取り込む場合、ＤＥＣ５（３９）は使用されない。
【００５７】
図７に示すように１ラインおきの画像を取り込む場合、まず、ＤＥＣ０（３４）によってフレーム間引きを行なう。次に、ＤＥＣ１（３５）によって不要ラインの間引きが行なわれ、ＤＥＣ２（３６）によって不要画素の間引きが行なわれる。そして、ＤＥＣ３（３７）によって１ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。これらの動作は、図５を用いて説明した動作と同様である。
【００５８】
さらに、ＤＥＣ４（３８）によって１ラインおきの間引きが行なわれる。図８に示すように、ＤＥＣ４（３８）のＥＮ信号としてＤＥＣ３（３７）のｕｄｆ信号が選択され、ＣＫ信号としてＰＣＬＫ信号の立ち下がりで発生するイベントが選択される。ＤＥＣ４（３８）は、ＤＥＣ３（３７）から出力されるｕｄｆ信号によってカウントが許可されたときに、ＨＳＹＮＣ信号の立ち下がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。たとえば、リロード値が“Ｈ’０００１”であれば、１ラインおきにライン間引きが行なわれる。
【００５９】
ＤＲＩ取り込み／転送制御回路２３は、ＤＥＣ０〜４（３４〜３８）から出力される画像データの取り込み許可要因によってＤＲＩデータ取り込みイベントを発生させ、内部動作を行なう。
【００６０】
図９は、図２に示すＤＲＩを用いた画像データの取り込みのさらに他の一例を示す図である。図１０は、図３に示すＤＥＣ０〜５（３４〜３９）の動作のさらに他の一例を説明するための図である。
【００６１】
図９に示すように四角領域内の１ライン／１画素おきの画像を取り込む場合、まず、ＤＥＣ０（３４）によってフレーム間引きを行なう。次に、ＤＥＣ１（３５）によって不要ラインの間引きが行なわれ、ＤＥＣ２（３６）によって不要画素の間引きが行なわれる。そして、ＤＥＣ３（３７）によって１ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。そして、ＤＥＣ４（３８）によって１ラインおきの間引きが行なわれる。これらの動作は、図８を用いて説明した動作と同様である。
【００６２】
さらに、ＤＥＣ５（３９）によって１画素おきの間引きが行なわれる。図１０に示すように、ＤＥＣ５（３９）のＥＮ信号としてＨＳＹＮＣ信号の立ち下がりで発生するイベントが選択され、ＣＫ信号としてＰＣＬＫ信号の立ち下がりで発生するイベントが選択される。ＤＥＣ５（３９）は、ＨＳＹＮＣ信号の立ち下がりで発生するイベントによってカウントが許可されたときにＰＣＬＫ信号の立ち下がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。そして、ＤＥＣ５（３９）のアンダフロー（ｕｄｆ信号）によって画像データの取り込みが許可される。
【００６３】
たとえば、リロード値が“Ｈ’０００１”であれば、１画素おきに画素の間引きが行なわれる。
【００６４】
ＤＲＩ取り込み／転送制御回路２３は、ＤＥＣ０〜５（３４〜３９）から出力される画像データの取り込み許可要因によってＤＲＩデータ取り込みイベントを発生させ、内部動作を行なう。
【００６５】
図１１は、１つのＤＲＩのみを用いて３つの領域の画像データを取り込む場合の問題点を説明するための図である。たとえば、アプリケーションＡにおいてＡ領域の画像データを使用し、アプリケーションＢにおいてＢ領域の画像データを使用し、アプリケーションＣにおいてＣ領域の画像データを使用する場合、カメラ２からの画像データを時系列でメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送する必要がある。たとえば、あるフレームでＡ領域の画像データを取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送し、次のフレームでＢ領域の画像データを取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送し、その次のフレームでＣ領域の画像データを取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送するといった具合である。この場合には、画像データを取り込むごとに格納先のメモリブロック０〜Ｎ（３−０〜３−Ｎ）のアドレスを変更するといった煩雑な制御が必要になる。
【００６６】
また、カメラ２からの画像データをすべて取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納し、アプリケーションＡ〜Ｃで使用する画像データをそれぞれ切り出すといった方法もあるが、ＣＰＵ１１が必要な画像データを取り出して処理する必要があるため、システム全体の処理能力が低下することになる。
【００６７】
図１２は、３つのカメラ１〜３（２−１〜２−３）および３つのＤＲＩ０〜２（１２−０〜１２−２）を用いて３つの領域の画像データを取り込む場合の問題点を説明するための図である。ＤＲＩ０（１２−０）がカメラ１（２−１）からアプリケーションＡで使用する画像データを取り込み、ＤＲＩ１（１２−１）がカメラ２（２−２）からアプリケーションＢで使用する画像データを取り込み、ＤＲＩ２（１２−２）がカメラ３（２−３）からアプリケーションＣで使用する画像データを取り込む。この場合、それぞれの画像データをパラレルデータとして取り込むことができる。
【００６８】
しかしながら、マイクロコンピュータ１に複数のデータ入力端子およびクロック入力端子が必要になり、パッケージの小型化、小ピン化が困難になるといった問題点がある。また、複数のカメラ１〜３（２−１〜２−３）を使用することから、システム全体のコストアップにつながるといった問題点もある。
【００６９】
したがって、本実施の形態におけるシステムにおいては、図１に示すように１つのカメラ２からの画像データを３つのＤＲＩ０〜２（１２−０〜１２−２）が取り込むといった構成を採用する。
【００７０】
図１３は、本発明の第１の実施の形態におけるマイクロコンピュータ１による画像データの取り込みタイミングの一例を示す図である。ＤＲＩ０（１２−０）は、アプリケーションＡで使用する画像データを取り込み、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送する。ＤＲＩ１（１２−１）は、アプリケーションＢで使用する画像データを取り込み、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送する。ＤＲＩ２（１２−２）は、アプリケーションＣで使用する画像データを取り込み、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送する。
【００７１】
図１３に示すように、ＤＲＩ０〜２（１２−０〜１２−２）のそれぞれは、画像データを取り込んでメモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送する際、他のアプリケーションで使用する画像データと重複する場合でも、特別な制御を必要とせず、それぞれのアプリケーションで使用する画像データをメモリブロック０〜Ｎ（３−０〜３−Ｎ）のアドレスが連続する領域に転送することができる。
【００７２】
図１４は、アプリケーションＡで使用する画像データの取り込みを説明するための図である。このアプリケーションＡで使用される画像データの取り込みは、ＤＲＩ０（１２−０）によって行なわれる。図１４（ａ）に示すように、１ラインごとのライン間引きおよび１画素ごとの画素間引きを行なう場合、ＤＲＩ０（１２−０）のＤＥＣ０〜５（３４〜３９）が図１０を用いて説明したように制御される。図１４（ｂ）に示すように、１０ピクセル×１０ラインの画像データが、５ピクセル×５ラインの画像データに縮小されてメモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納される。
【００７３】
図１５は、アプリケーションＢで使用する画像データの取り込みを説明するための図である。このアプリケーションＢで使用される画像データの取り込みは、ＤＲＩ１（１２−１）によって行なわれる。図１５（ａ）に示すように、１ラインごとのライン間引きを行なう場合、ＤＲＩ１（１２−１）のＤＥＣ０〜５（３４〜３９）が図８を用いて説明したように制御される。図１５（ｂ）に示すように、１０ピクセル×１０ラインの画像データが、１０ピクセル×５ラインの画像データに縮小されてメモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納される。
【００７４】
図１６は、アプリケーションＣで使用する画像データの取り込みを説明するための図である。このアプリケーションＣで使用される画像データの取り込みは、ＤＲＩ２（１２−２）によって行なわれる。図１６（ａ）に示すように、１０ピクセル×１０ラインの画像データのうち下の３ラインを抽出する場合、ＤＲＩ２（１２−２）のＤＥＣ０〜５（３４〜３９）が図５を用いて説明したように制御される。図１６（ｂ）に示すように、１０ピクセル×１０ラインの画像データから、１０ピクセル×３ラインの画像データが抽出されてメモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納される。
【００７５】
図１７は、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納された画像データの画面表示の一例を示す図である。ＤＲＩ０（１２−０）によって取り込まれたＡ領域の画像データが画面の中央に表示され、ＤＲＩ１（１２−１）によって取り込まれたＢ領域の画像データが上部に表示され、ＤＲＩ２（１２−２）によって取り込まれたＣ領域の画像データが下部に表示されるところを示している。
【００７６】
本実施の形態において説明したシステムは、たとえば、自動車に搭載したカメラによって走行中の画像を取り込み、状況に応じて自動車を制御するアプリケーションに応用することができる。自動車は、図１７に示すＡ領域により前方を走行する車両や障害物を広範囲で確認し、Ｂ領域により標識等を認識し、Ｃ領域により白線検知として詳細に認識することができる。
【００７７】
以上説明したように、本実施の形態におけるマイクロコンピュータによれば、１つのカメラ２からの画像データを３つのＤＲＩ０〜２（１２−０〜１２−２）で取り込み、メモリブロック０〜Ｎ（３−０〜３−Ｎ）に転送するようにしたので、カメラ２によって撮像された画像データ内の異なる領域の画像データを同時に取り込むことができ、メモリブロック０〜Ｎ（３−０〜３−Ｎ）内のアドレスが連続した領域にそれぞれの画像データを転送することが可能となった。
【００７８】
また、１つのカメラ２からの画像データ内の複数の領域の画像データを取り込むことができるので、複数のカメラを使用する必要がなくなり、システム全体のコストを削減することが可能となった。
【００７９】
また、複数の領域の画像データのそれぞれがメモリブロック０〜Ｎ（３−０〜３−Ｎ）内のアドレスが連続した領域に格納されるので、アプリケーションごとに容易に画像データを取り出すことができ、ＣＰＵ１１の負荷を削減することが可能となった。
【００８０】
（第２の実施の形態）
図１８は、本発明の第２の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。このシステムは、図１に示す第１の実施の形態におけるシステムの構成と比較して、２台目のカメラおよび３台目のカメラのクロック信号および画像データが入力される端子１５−３〜１５−６が追加された点、およびセレクタ１６〜１９が追加された点のみが異なる。したがって、重複する構成および機能の詳細な説明は繰り返さない。
【００８１】
セレクタ１６は、端子１５−２を介して入力されるカメラ２からの画像データと、端子１５−４を介して入力される図示しない２台目のカメラからの画像データとのいずれかを選択的にＤＲＩ１（１２−１）に出力する。
【００８２】
セレクタ１７は、端子１５−２を介して入力されるカメラ２からの画像データと、端子１５−６を介して入力される図示しない３台目のカメラからの画像データとのいずれかを選択的にＤＲＩ２（１２−２）に出力する。
【００８３】
セレクタ１８は、端子１５−１を介して入力されるカメラ２からのクロック信号と、端子１５−３を介して入力される図示しない２台目のカメラからのクロック信号とのいずれかを選択的にＤＲＩ１（１２−１）に出力する。
【００８４】
セレクタ１９は、端子１５−１を介して入力されるカメラ２からのクロック信号と、端子１５−５を介して入力される図示しない３台目のカメラからのクロック信号とのいずれかを選択的にＤＲＩ２（１２−２）に出力する。
【００８５】
セレクタ１６および１８によってカメラ２からの画像データおよびクロック信号を選択してＤＲＩ１（１２−１）に出力し、セレクタ１７および１９によってカメラ２からの画像データおよびクロック信号を選択してＤＲＩ２（１２−２）に出力することにより、図１に示す第１の実施の形態において説明したシステム構成を実現することができる。
【００８６】
また、セレクタ１６および１８によって２台目のカメラからの画像データおよびクロック信号を選択してＤＲＩ１（１２−１）に出力し、セレクタ１７および１９によって３台目のカメラからの画像データおよびクロック信号を選択してＤＲＩ２（１２−２）に出力することにより、図１２に示すシステム構成を実現することができる。
【００８７】
セレクタ１６〜１９の切り替えによって、２台目のカメラおよび３台目のカメラに対応したシステム構成とすることにより、たとえば、２台目のカメラおよび３台目のカメラを、カメラ２とは異なる位置に配置して、異なる方向の複数の画像データを画面に表示するといったアプリケーションにも対応することができる。
【００８８】
以上説明したように、本実施の形態におけるマイクロコンピュータによれば、セレクタ１６〜１９の切り替えによって２台目のカメラおよび３台目のカメラからの画像データを取り込めるようにしたので、第１の実施の形態において説明した効果に加えて、さらに多様なアプリケーションにも対応することが可能となった。
【００８９】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００９０】
【図１】本発明の第１の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。
【図２】図１に示すＤＲＩの内部構成を示すブロック図である。
【図３】イベント検出回路２１およびＤＲＩイベントカウンタ２２の詳細を説明するためのブロック図である。
【図４】図２に示すＤＲＩを用いた画像データの取り込みの一例を示す図である。
【図５】図３に示すＤＥＣ０〜５（３４〜３９）の動作を説明するための図である。
【図６】ＤＩＮ０、ＤＩＮ１およびＤＩＮ３端子に入力されるＶＳＹＮＣ信号、ＨＳＹＮＣ信号およびＰＣＬＫ信号と、ＤＥＣ２（３６）の動作とを説明するためのタイミングチャートである。
【図７】図２に示すＤＲＩを用いた画像データの取り込みの他の一例を示す図である。
【図８】図３に示すＤＥＣ０〜５（３４〜３９）の動作の他の一例を説明するための図である。
【図９】図２に示すＤＲＩを用いた画像データの取り込みのさらに他の一例を示す図である。
【図１０】図３に示すＤＥＣ０〜５（３４〜３９）の動作のさらに他の一例を説明するための図である。
【図１１】１つのＤＲＩのみを用いて３つの領域の画像データを取り込む場合の問題点を説明するための図である。
【図１２】３つのカメラ１〜３（２−１〜２−３）および３つのＤＲＩ０〜２（１２−０〜１２−２）を用いて３つの領域の画像データを取り込む場合の問題点を説明するための図である。
【図１３】本発明の第１の実施の形態におけるマイクロコンピュータ１による画像データの取り込みタイミングの一例を示す図である。
【図１４】アプリケーションＡで使用する画像データの取り込みを説明するための図である。
【図１５】アプリケーションＢで使用する画像データの取り込みを説明するための図である。
【図１６】アプリケーションＣで使用する画像データの取り込みを説明するための図である。
【図１７】メモリブロック０〜Ｎ（３−０〜３−Ｎ）に格納された画像データの画面表示の一例を示す図である。
【図１８】本発明の第２の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。
【符号の説明】
【００９１】
１  マイクロコンピュータ、２，２−１〜２−３  カメラ、３−０〜３−Ｎ  メモリブロック、１１  ＣＰＵ、１２−０〜１２−２  ＤＲＩ、１３  メモリＩ／Ｆ、１４  バスコントローラ、１５−１〜１５−６  端子、１６〜１９  セレクタ、２１  イベント検出回路、２２  ＤＲＩイベントカウンタ、２３  ＤＲＩ取り込み／転送制御回路、２４  ＤＤ入力端子選択回路、３１  ＤＩＮ０イベント検出回路、３２  ＤＩＮ１イベント検出回路、３３  ＤＩＮ３イベント検出回路、３４〜３９  ＤＥＣ、４１  ＤＲＩデータ取り込みイベント数設定レジスタ、４２  ＤＲＩ取り込みイベントカウンタ、４３  ＤＲＩ転送カウンタ、４４  ＤＲＩアドレスリロードレジスタ０、４５  ＤＲＩアドレスカウンタ０、４６  ＤＲＩアドレスリロードレジスタ１、４７  ＤＲＩアドレスカウンタ１、４８  ３２ビットのデータバッファ。
【図１】
2010086401.tif 000003
【図２】
2010086401.tif 000004
【図３】
2010086401.tif 000005
【図４】
2010086401.tif 000006
【図５】
2010086401.tif 000007
【図６】
2010086401.tif 000008
【図７】
2010086401.tif 000009
【図８】
2010086401.tif 000010
【図９】
2010086401.tif 000011
【図１０】
2010086401.tif 000012
【図１１】
2010086401.tif 000013
【図１２】
2010086401.tif 000014
【図１３】
2010086401.tif 000015
【図１４】
2010086401.tif 000016
【図１５】
2010086401.tif 000017
【図１６】
2010086401.tif 000018
【図１７】
2010086401.tif 000019
【図１８】
2010086401.tif 000020