説明

マイクロコンピュータ、それを含んだシステムおよびデータ転送装置

【課題】異なる領域のデータを並行して取り込んで記憶回路に転送することが可能なマイクロコンピュータを提供すること。
【解決手段】マイクロコンピュータ1は、カメラ2から入力される画像データの中から所定領域の画像データを取り込んでメモリブロック0〜N(3−0〜3−N)に転送するDRI0〜2(12−0〜12−2)と、カメラ2から入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロック0〜N(3−0〜3−N)に転送するようにDRI0〜2(12−0〜12−2)を制御するCPU11とを含む。したがって、異なる領域の画像データを並行して取り込んでメモリブロック0〜N(3−0〜3−N)に転送することが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラの画像処理、高速データ通信などのように大量のデータに対して高速処理を行なう技術に関し、特に、処理対象のデータの中から複数の所定データを抽出し、それぞれをメモリ内の異なる領域に転送するマイクロコンピュータ、それを含んだシステムおよびデータ転送装置に関する。
【背景技術】
【0002】
近年、画像処理などの技術分野において、大量のデータに対する高速処理の要望が高まっている。たとえば、カメラが取り込んだ画像に対して演算処理を行ない、演算処理後の画像の表示を行なう際、リアルタイム性が要求される場合には、大量のデータを高速に処理する必要がある。これに関連する技術として、下記の特許文献1〜4に開示された発明がある。
【0003】
特許文献1に開示された発明は、外部からの選択信号が変化しなくても複数データを書き込むことを目的とした表示駆動回路に関するものである。外部からの表示データをCCBインターフェイスを介し、シフトレジスタに取り込む。そして、シリアルデータカウンタにおいてカウントした表示データ転送に従って、表示データを順次DCRAMまたはADRAMに書き込む。
【0004】
特許文献2に開示された発明は、圧縮データの高速な展開処理と、液体噴射ヘッドへの高速なデータ転送とを実現し、液体噴射装置の液体噴射実行速度を従来と比較して飛躍的に高速化することを目的とする。インターフェース部が受信した記録制御データは、切換制御ブロックへ転送され、ヘッダ解析ブロックへ転送されてヘッダの解析が行われる。ヘッダ以降のデータがコマンドである場合には、コマンド格納レジスタへ格納され、圧縮記録データである場合には、データ転送制御ブロックへ転送される。コマンド格納レジスタへMPUがアクセスしてコマンド解析する。圧縮記録データは、データ転送制御ブロックから第1の専用バスを介してFIFOメモリへ格納され、DECUへ第2の専用バスを介して転送される。
【0005】
特許文献3に開示された発明は、異なる種類のシリアルデータを1個のシリアルインターフェース回路で取扱うことを目的とする。複数配置されている送信受信FIFOの片側または両側にセレクタ回路を配置し、そのセレクタ回路の切り替えで、シリアル入出力回路に対するFIFOの割り当て数と接続方式とを変更する。
【0006】
特許文献4に開示された発明は、パラレルインターフェースの使用端子数を削減し、多くのスイッチのデータ入力を可能にすることを目的としたスイッチ信号の多入力回路に関するものである。パラレルインターフェース、CPU、複数の16進スイッチにより構成され、インターフェースおよびスイッチ間が、共通データバスとスイッチのデータ出力許可信号線とにより接続されている。そして、データ出力許可信号によりデータ出力スイッチを選択し、共通データバスを使用してデータの入力を行なう。これにより、パラレルインターフェースの使用端子数が削減される。
【特許文献1】特開2002−297080号公報
【特許文献2】特開2005−28875号公報
【特許文献3】特開2002−91904号公報
【特許文献4】特開平5−127788号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上述の特許文献1〜4に開示された発明は、処理対象のデータの中から複数の所定データを抽出し、それぞれをメモリ内の異なる領域に転送する技術には適用することができない。
【0008】
本発明は、上記問題点を解決するためになされたものであり、その目的は、異なる領域のデータを並行して取り込んで記憶回路に転送することが可能なマイクロコンピュータ、それを含んだシステムおよびデータ転送装置を提供することである。
【課題を解決するための手段】
【0009】
本発明の一実施例によれば、カメラから入力される画像データをメモリブロックに転送するマイクロコンピュータが提供される。マイクロコンピュータは、カメラから入力される画像データの中から所定領域の画像データを取り込んでメモリブロックに転送する複数のDRIと、カメラから入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロックに転送するように複数のDRIを制御するCPUとを含む。
【発明の効果】
【0010】
CPUは、カメラから入力される画像データの中のそれぞれ異なる領域の画像データをメモリブロックに転送するように複数のDRIを制御するので、異なる領域の画像データを並行して取り込んでメモリブロックに転送することが可能となる。
【発明を実施するための最良の形態】
【0011】
(第1の実施の形態)
図1は、本発明の第1の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。このシステムは、マイクロコンピュータ1と、カメラなどのセンサ2と、メモリブロック0〜N(3−0〜3−N)とを含む。本実施の形態においては、センサ2の一例としてカメラの場合について説明するが、高速にデータを出力するものであればよく、これに限られるものではない。
【0012】
各メモリブロックの容量およびメモリブロックの個数は特に限定されるものではないが、たとえば、16KByteのメモリブロックが32個使用される。これらのメモリブロックは、連続するアドレスにマッピングされており、異なるメモリブロックに対しては同時にアクセス可能となるようにバスに接続されている。
【0013】
また、メモリブロックはSRAM(Static Random Access Memory)などの記憶回路によって構成されるが、データを記憶できるものであればよく、これに限定されるものではない。
【0014】
マイクロコンピュータ1は、端子15−1を介してカメラ2から出力される制御信号が入力され、端子15−2を介してカメラ2から出力される画像データが入力される。マイクロコンピュータ1は、カメラ2から出力された画像データの中から複数の所定領域の画像データを抽出し、それぞれの所定領域ごとの画像データをメモリブロック0〜N(3−N)に転送する。
【0015】
マイクロコンピュータ1は、アービタ4と、CPU11と、ダイレクトRAMインタフェース(以下、DRIと呼ぶ。)0〜2(12−0〜12−2)と、メモリI/F13−0〜13−Nと、バスコントローラ14とを含む。なお、DRI0〜2(12−0〜12−2)を特にデータ転送装置とも呼ぶことにする。
【0016】
CPU11は、マイクロコンピュータ1の全体的な制御を行なうものであり、後述のようにDRI0〜2(12−0〜12−2)内のレジスタに値を設定することにより、DRI0〜2(12−0〜12−2)を動作させる。このDRI0〜2(12−0〜12−2)は、それぞれ同じ構成を有しているが、その詳細については後述する。
【0017】
CPU11、バスコントローラ14およびメモリI/F13−0〜13−Nは、バス(アドレスバス、データバス)を介して接続されている。また、アービタ4およびメモリI/F13−0〜13−Nは、DRIアドレスバスおよびDRIデータバスを介して接続されている。アービタ4は、DRI0〜2(12−0〜12−2)からメモリブロック0〜N(3−0〜3−N)へのアクセス要求を監視しており、アクセス要求が競合する場合にはそのアクセス要求の調停を行ない、調停後のアドレスおよびデータをDRIアドレスバスおよびDRIデータバスを介して出力する。バスコントローラ14は、CPU11およびアービタ4からメモリブロック0〜N(3−0〜3−N)へのアクセス要求を受け、バスの制御を行なう。
【0018】
メモリI/F13−0〜13−Nは、CPU11およびアービタ4からのアクセス要求に応じて、メモリブロック0〜N(3−0〜3−N)からの画像データの読み出し、およびメモリブロック0〜N(3−0〜3−N)への画像データの書き込みを行なう。
【0019】
図2は、図1に示すDRIの内部構成を示すブロック図である。このDRIは、イベント検出回路21と、DRIイベントカウンタ22と、DRI取り込み/転送制御回路23と、DD入力端子選択回路24とを含む。
【0020】
イベント検出回路21は、DIN0〜DIN5端子を介して外部から入力される信号を受け、イベントの検出を行なう。このイベントとは、たとえば、DIN0〜DIN5端子にカメラ2が接続される場合には、垂直同期(VSYNC)信号のエッジ検出、水平同期(HSYNC)信号のエッジ検出、クロック(PCLK)信号の検出などである。後述のように、カメラ2が接続される場合には、DIN0端子にVSYNC信号が接続され、DIN1端子にHSYNC信号が接続され、DIN3端子にPCLK信号が接続され、それ以外のDIN2、DIN4およびDIN5端子は使用されない。
【0021】
DRIイベントカウンタ22は、6つのDEC(DRI Event Counter)を有しており、このDEC0〜5(34〜39)の接続を適宜切替えることによって、イベント検出回路21によって検出されたイベントのカウントを行なう。このDRIイベントカウンタ22の詳細については後述する。
【0022】
DRI取り込み/転送制御回路23は、DRIイベントカウンタ22から出力される信号に応じて、外部から入力されるデータを取り込み、メモリブロック0〜N(3−0〜3−N)に対して取り込んだデータの書き込みを行なう。
【0023】
このDRI取り込み/転送制御回路23は、DRIデータ取り込みイベント数設定レジスタ41と、DRI取り込みイベントカウンタ42と、DRI転送カウンタ43と、DRIアドレスリロードレジスタ0(44)と、DRIアドレスカウンタ0(45)と、DRIアドレスリロードレジスタ1(46)と、DRIアドレスカウンタ1(47)と、32ビットのデータバッファ48とを含む。
【0024】
DRIデータ取り込みイベント数設定レジスタ41は、データ取り込みを行なうイベント数を設定するレジスタであり、設定された値がDRI取り込みイベントカウンタ42およびDRI転送カウンタ43のリロード値として使用される。
【0025】
DRI取り込みイベントカウンタ42は、データ取り込みイベントをカウントするカウンタであり、データ取り込み禁止状態からデータ取り込み許可状態に変化すると、DRIデータ取り込みイベント数設定レジスタ41の設定値がリロードされる。その後、データ取り込みが行なわれるたびに“1”ずつデクリメントされ、カウント値が“0”となった時点でカウント動作を停止する。
【0026】
DRI転送カウンタ43は、DRI転送データ取り込みをカウントするカウンタであり、データ取り込み禁止状態からデータ取り込み許可状態に変化すると、DRIデータ取り込みイベント数設定レジスタ41の設定値と、外部から入力されるデータのバス幅とに基づいて決定された値がカウント値としてリロードされる。その後、DRI転送が完了するたびに“1”ずつデクリメントされ、カウント値が“0”となった時点でカウント動作を停止し、CPU11に対してDRI転送割込み要求信号を出力することによりDRI転送が完了したことを通知する。
【0027】
外部から入力されるデータのバス幅が8ビットの場合には4回のデータ取り込みイベントが発生するごとに、16ビットの場合には2回のデータ取り込みイベントが発生するごとに、32ビットの場合には1回のデータ取り込みイベントが発生するごとにDRI転送が実行される。これは、DRIがメモリブロック0〜N(3−0〜3−N)に対して32ビット単位でデータを転送するためである。
【0028】
DRIアドレスリロードレジスタ0(44)は、DRIアドレスカウンタ0(45)のリロード値を格納するレジスタであり、この値がDRI転送の開始アドレスとして使用される。この設定値は、所定のタイミングでDRIアドレスカウンタ0(45)にリロードされる。
【0029】
DRIアドレスカウンタ0(45)は、DRI転送先であるメモリブロック0〜N(3−0〜3−N)のアドレスを指定するためのカウンタであり、DRI転送が完了するたびに“4”ずつインクリメントされる。
【0030】
DRIアドレスリロードレジスタ1(46)およびDRIアドレスカウンタ1(47)は、DRIアドレスリロードレジスタ0(44)およびDRIアドレスカウンタ0(45)と同等の機能を有しており、たとえば、メモリが2バンク構成となっている場合にそれぞれのアドレスを指定可能としている。
【0031】
32ビットデータバッファ48は、外部から入力されるデータを一時的に保持するために設けられており、データが32ビットとなった時点でDRI転送が行なわれ、DRIデータバス(図1に示すマイクロコンピュータ1内のバス)およびメモリI/F13を介してメモリブロック0〜N(3−0〜3−N)に出力される。
【0032】
DD入力端子選択回路24は、DD0〜DD31入力端子の中の8ビット/16ビット/32ビットを選択して32ビットデータバッファ48に出力する回路である。外部から入力されるデータのバス幅が8ビットの場合には、その8ビットのデータが入力される入力端子を選択するように設定される。また、外部から入力されるデータのバス幅が16ビットの場合には、その16ビットのデータが入力される入力端子を選択するように設定される。外部から入力されるデータのバス幅が32ビットの場合には、DD0〜DD31入力端子をすべて選択するように設定される。
【0033】
図3は、イベント検出回路21およびDRIイベントカウンタ22の詳細を説明するためのブロック図である。
【0034】
イベント検出回路21は、DIN0イベント検出回路〜DIN5イベント検出回路の6つの回路によって構成され、入力される信号の立ち上がりエッジ、立ち下がりエッジのいずれか、または両エッジを検出してイベントを発生させる。なお、本実施の形態においてはDIN0イベント検出回路31、DIN1イベント検出回路32およびDIN3イベント検出回路33の3つが使用される。
【0035】
DIN0イベント検出回路31は、カメラ2からのVSYNC信号が入力される。本実施の形態においては、VSYNC信号の立ち上がりエッジで、DIN0イベント検出回路31がイベントを発生させるものとする。
【0036】
DIN1イベント検出回路32は、カメラ2からのHSYNC信号が入力される。本実施の形態においては、HSYNC信号の立ち下がりエッジで、DIN1イベント検出回路32がイベントを発生させるものとする。
【0037】
DIN3イベント検出回路33は、カメラ2からのPCLK信号が入力される。本実施の形態においては、PCLK信号の立ち下がりエッジで、DIN3イベント検出回路33がイベントを発生させるものとする。
【0038】
DEC0〜5(34〜39)はそれぞれ、EN信号によってカウントが許可されたときにCK信号に同期してカウント値を“1”ずつデクリメントする。DEC0〜5(34〜39)はそれぞれ、4つまたは5つの信号の中から1つを選択してEN信号として使用する。また、DEC0〜5(34〜39)はそれぞれ、4つの信号の中から1つを選択してCK信号として使用する。
【0039】
たとえば、DEC0(34)は、VSYNC信号の立ち上がりで発生するイベント、HSYNC信号の立ち下がりで発生するイベント、DIN2イベント検出回路によって検出されたイベント(未使用)、取り込み許可信号、およびPDACイベントH信号の中から1つを選択してEN信号として使用する。また、DEC0(34)は、VSYNC信号の立ち上がりで発生するイベント、HSYNC信号の立ち下がりで発生するイベント、DIN2イベント検出回路によって検出されたイベント(未使用)、および取り込みイベントカウンタアンダフロー信号の中から1つを選択してCK信号として使用する。
【0040】
DEC0(34)は、アンダフローが発生したときにudf信号を次段のDEC1(35)に出力する。この信号は、カメラ2からのデータの取り込み許可を判断する際に使用する取り込み許可要因としても使用される。
【0041】
また、DEC1(35)は、VSYNC信号の立ち上がりで発生するイベント、HSYNC信号の立ち下がりで発生するイベント、DEC0(34)から出力されるudf信号、取り込み許可信号、およびPDACイベントH信号の中から1つを選択してEN信号として使用する。また、DEC1(35)は、HSYNC信号の立ち下がりで発生するイベント、DIN2イベント検出回路によって検出されたイベント(未使用)、PCLK信号、およびDEC0(34)から出力されるudf信号の中から1つを選択してCK信号として使用する。
【0042】
図3において、取り込み許可信号は、ソフトウェアなどによって外部から取り込み許可を指示する信号である。取り込みイベントカウンタアンダフロー信号は、DRI取り込みイベントカウンタ42においてアンダフローが発生したことを示す信号である。DRI転送1回完了信号は、1回のDRI転送が完了するごとに出力される信号である。DRI転送カウンタアンダフロー信号は、DRI転送カウンタ43においてアンダフローが発生したことを示す信号である。なお、これらの信号は本実施の形態とは直接関係するものではないので、詳細な説明は行なわない。
【0043】
図4は、図2に示すDRIを用いた画像データの取り込みの一例を示す図である。図5は、図3に示すDEC0〜5(34〜39)の動作を説明するための図である。なお、図4に示すように四角領域の画像データを取り込む場合、DEC4(38)およびDEC5(39)は使用されない。
【0044】
図4に示す四角領域の画像を取り込む場合、まず、DEC0(34)によってフレーム間引きを行なう。図5に示すように、DEC0(34)のEN信号としてS/W(取り込み許可)信号が選択され、CK信号としてVSYNC信号の立ち上がりで発生するイベントが選択される。DEC0(34)は、ソフトウェアによってカウントが許可されたときにVSYNC信号の立ち上がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。そして、DEC0(34)のアンダフロー(udf信号)によって画像データの取り込みが許可される。
【0045】
たとえば、リロード値が“H’0001”であれば、1フレームおきにフレーム間引きが行なわれる。なお、連続動作モードとは、DEC0(34)のアンダフローによってリロード値をリロードするモードである。
【0046】
次に、DEC1(35)によって不要ラインの間引きが行なわれる。図5に示すように、DEC1(35)のEN信号としてVSYNC信号の立ち上がりで発生するイベントが選択され、CK信号としてHSYNC信号の立ち下がりで発生するイベントが選択される。DEC1(35)は、VSYNC信号の立ち上がりで発生するイベントによってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、HSYNC信号の立ち下がりで発生するイベントによってダウンカウントを行なう。そして、DEC1(35)のアンダフローによって画像データの取り込みが許可される。なお、ワンショットモードとは、DEC1(35)のアンダフローによってカウント動作を停止し、再度カウントが許可されたときに、DEC1(35)がリロード値のリロードを行なうモードである。
【0047】
次に、DEC2(36)によって不要画素の間引きが行なわれる。図5に示すように、DEC2(36)のEN信号としてHSYNC信号の立ち下がりで発生するイベントが選択され、CK信号としてPCLK信号の立ち下がりで発生するイベントが選択される。DEC2(36)は、HSYNC信号の立ち下がりで発生するイベントによってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、PCLK信号の立ち下がりで発生するイベントによってダウンカウントを行なう。そして、DEC2(36)のアンダフローによってDEC3(37)のカウントが許可される。
【0048】
次に、DEC3(37)によって1ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。図5に示すように、DEC3(37)のEN信号としてDEC2(36)のudf信号が選択され、CK信号としてPCLK信号の立ち下がりで発生するイベントが選択される。DEC3(37)は、DEC2(36)から出力されるudf信号によってカウントが許可されたときに、所定のタイミングでリロード値をリロードし、PCLK信号の立ち下がりで発生するイベントによってダウンカウントを行なう。DEC3(37)は、DEC2(36)から出力されるudf信号によってカウントが許可されたときに、画像データの取り込みを許可し、DEC3(37)のアンダフローによって画像データの取り込みを禁止する。
【0049】
DRI取り込み/転送制御回路23は、DEC0〜3(34〜37)から出力される画像データの取り込み許可要因によってDRIデータ取り込みイベントを発生させ、内部動作を行なう。
【0050】
図6は、DIN0、DIN1およびDIN3端子に入力されるVSYNC信号、HSYNC信号およびPCLK信号と、DEC2(36)の動作とを説明するためのタイミングチャートである。
【0051】
DIN0イベント検出回路31は、VSYNC信号の立ち上がりでイベントを発生させ、DRIイベントカウンタ22に出力する。このとき、CPU11に対してVSYNC信号の立ち上がりが発生したことを通知する割込み信号が出力可能である。
【0052】
DIN1イベント検出回路32は、HSYNC信号の立ち下がりでイベントを発生させ、DRIイベントカウンタ22に出力する。このとき、CPU11に対してHSYNC信号の立ち下がりが発生したことを通知する割込み信号が出力可能である。
【0053】
DIN3イベント検出回路33は、PCLK信号の立ち下がりでイベントを発生させ、DRIイベントカウンタ22に出力する。
【0054】
図6のT1において、HSYNC信号の立ち下がりで割り込みが発生すると、CPU11は、次ラインが取り込みラインか否かを判定する。この判定は、DEC1(35)によって不要ラインが間引きされた後であるか否かによって行なわれる。次ラインが取り込みラインであれば、CPU11は、取り込み禁止状態から取り込み許可状態に変化させる。このとき、DEC2(36)はリロード値をリロードする。
【0055】
T1において、HSYNC信号の立ち下がりエッジを検出すると、DEC2(36)はカウントを開始し、PCLK信号の立ち下がりでダウンカウントを行なう。そして、T3において、DEC2(36)のアンダフローが発生すると、udf信号をDEC3(37)に出力してDEC3(37)のカウントを開始させる。
【0056】
図7は、図2に示すDRIを用いた画像データの取り込みの他の一例を示す図である。図8は、図3に示すDEC0〜5(34〜39)の動作の他の一例を説明するための図である。なお、図7に示すように1ラインおきの画像データを取り込む場合、DEC5(39)は使用されない。
【0057】
図7に示すように1ラインおきの画像を取り込む場合、まず、DEC0(34)によってフレーム間引きを行なう。次に、DEC1(35)によって不要ラインの間引きが行なわれ、DEC2(36)によって不要画素の間引きが行なわれる。そして、DEC3(37)によって1ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。これらの動作は、図5を用いて説明した動作と同様である。
【0058】
さらに、DEC4(38)によって1ラインおきの間引きが行なわれる。図8に示すように、DEC4(38)のEN信号としてDEC3(37)のudf信号が選択され、CK信号としてPCLK信号の立ち下がりで発生するイベントが選択される。DEC4(38)は、DEC3(37)から出力されるudf信号によってカウントが許可されたときに、HSYNC信号の立ち下がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。たとえば、リロード値が“H’0001”であれば、1ラインおきにライン間引きが行なわれる。
【0059】
DRI取り込み/転送制御回路23は、DEC0〜4(34〜38)から出力される画像データの取り込み許可要因によってDRIデータ取り込みイベントを発生させ、内部動作を行なう。
【0060】
図9は、図2に示すDRIを用いた画像データの取り込みのさらに他の一例を示す図である。図10は、図3に示すDEC0〜5(34〜39)の動作のさらに他の一例を説明するための図である。
【0061】
図9に示すように四角領域内の1ライン/1画素おきの画像を取り込む場合、まず、DEC0(34)によってフレーム間引きを行なう。次に、DEC1(35)によって不要ラインの間引きが行なわれ、DEC2(36)によって不要画素の間引きが行なわれる。そして、DEC3(37)によって1ライン分の画像データの取り込み、および画像データ取り込み後の不要画素の間引きが行なわれる。そして、DEC4(38)によって1ラインおきの間引きが行なわれる。これらの動作は、図8を用いて説明した動作と同様である。
【0062】
さらに、DEC5(39)によって1画素おきの間引きが行なわれる。図10に示すように、DEC5(39)のEN信号としてHSYNC信号の立ち下がりで発生するイベントが選択され、CK信号としてPCLK信号の立ち下がりで発生するイベントが選択される。DEC5(39)は、HSYNC信号の立ち下がりで発生するイベントによってカウントが許可されたときにPCLK信号の立ち下がりで発生するイベントによってダウンカウントを行ない、所定のタイミングでリロード値をリロードする。そして、DEC5(39)のアンダフロー(udf信号)によって画像データの取り込みが許可される。
【0063】
たとえば、リロード値が“H’0001”であれば、1画素おきに画素の間引きが行なわれる。
【0064】
DRI取り込み/転送制御回路23は、DEC0〜5(34〜39)から出力される画像データの取り込み許可要因によってDRIデータ取り込みイベントを発生させ、内部動作を行なう。
【0065】
図11は、1つのDRIのみを用いて3つの領域の画像データを取り込む場合の問題点を説明するための図である。たとえば、アプリケーションAにおいてA領域の画像データを使用し、アプリケーションBにおいてB領域の画像データを使用し、アプリケーションCにおいてC領域の画像データを使用する場合、カメラ2からの画像データを時系列でメモリブロック0〜N(3−0〜3−N)に転送する必要がある。たとえば、あるフレームでA領域の画像データを取り込んでメモリブロック0〜N(3−0〜3−N)に転送し、次のフレームでB領域の画像データを取り込んでメモリブロック0〜N(3−0〜3−N)に転送し、その次のフレームでC領域の画像データを取り込んでメモリブロック0〜N(3−0〜3−N)に転送するといった具合である。この場合には、画像データを取り込むごとに格納先のメモリブロック0〜N(3−0〜3−N)のアドレスを変更するといった煩雑な制御が必要になる。
【0066】
また、カメラ2からの画像データをすべて取り込んでメモリブロック0〜N(3−0〜3−N)に格納し、アプリケーションA〜Cで使用する画像データをそれぞれ切り出すといった方法もあるが、CPU11が必要な画像データを取り出して処理する必要があるため、システム全体の処理能力が低下することになる。
【0067】
図12は、3つのカメラ1〜3(2−1〜2−3)および3つのDRI0〜2(12−0〜12−2)を用いて3つの領域の画像データを取り込む場合の問題点を説明するための図である。DRI0(12−0)がカメラ1(2−1)からアプリケーションAで使用する画像データを取り込み、DRI1(12−1)がカメラ2(2−2)からアプリケーションBで使用する画像データを取り込み、DRI2(12−2)がカメラ3(2−3)からアプリケーションCで使用する画像データを取り込む。この場合、それぞれの画像データをパラレルデータとして取り込むことができる。
【0068】
しかしながら、マイクロコンピュータ1に複数のデータ入力端子およびクロック入力端子が必要になり、パッケージの小型化、小ピン化が困難になるといった問題点がある。また、複数のカメラ1〜3(2−1〜2−3)を使用することから、システム全体のコストアップにつながるといった問題点もある。
【0069】
したがって、本実施の形態におけるシステムにおいては、図1に示すように1つのカメラ2からの画像データを3つのDRI0〜2(12−0〜12−2)が取り込むといった構成を採用する。
【0070】
図13は、本発明の第1の実施の形態におけるマイクロコンピュータ1による画像データの取り込みタイミングの一例を示す図である。DRI0(12−0)は、アプリケーションAで使用する画像データを取り込み、メモリブロック0〜N(3−0〜3−N)に転送する。DRI1(12−1)は、アプリケーションBで使用する画像データを取り込み、メモリブロック0〜N(3−0〜3−N)に転送する。DRI2(12−2)は、アプリケーションCで使用する画像データを取り込み、メモリブロック0〜N(3−0〜3−N)に転送する。
【0071】
図13に示すように、DRI0〜2(12−0〜12−2)のそれぞれは、画像データを取り込んでメモリブロック0〜N(3−0〜3−N)に転送する際、他のアプリケーションで使用する画像データと重複する場合でも、特別な制御を必要とせず、それぞれのアプリケーションで使用する画像データをメモリブロック0〜N(3−0〜3−N)のアドレスが連続する領域に転送することができる。
【0072】
図14は、アプリケーションAで使用する画像データの取り込みを説明するための図である。このアプリケーションAで使用される画像データの取り込みは、DRI0(12−0)によって行なわれる。図14(a)に示すように、1ラインごとのライン間引きおよび1画素ごとの画素間引きを行なう場合、DRI0(12−0)のDEC0〜5(34〜39)が図10を用いて説明したように制御される。図14(b)に示すように、10ピクセル×10ラインの画像データが、5ピクセル×5ラインの画像データに縮小されてメモリブロック0〜N(3−0〜3−N)に格納される。
【0073】
図15は、アプリケーションBで使用する画像データの取り込みを説明するための図である。このアプリケーションBで使用される画像データの取り込みは、DRI1(12−1)によって行なわれる。図15(a)に示すように、1ラインごとのライン間引きを行なう場合、DRI1(12−1)のDEC0〜5(34〜39)が図8を用いて説明したように制御される。図15(b)に示すように、10ピクセル×10ラインの画像データが、10ピクセル×5ラインの画像データに縮小されてメモリブロック0〜N(3−0〜3−N)に格納される。
【0074】
図16は、アプリケーションCで使用する画像データの取り込みを説明するための図である。このアプリケーションCで使用される画像データの取り込みは、DRI2(12−2)によって行なわれる。図16(a)に示すように、10ピクセル×10ラインの画像データのうち下の3ラインを抽出する場合、DRI2(12−2)のDEC0〜5(34〜39)が図5を用いて説明したように制御される。図16(b)に示すように、10ピクセル×10ラインの画像データから、10ピクセル×3ラインの画像データが抽出されてメモリブロック0〜N(3−0〜3−N)に格納される。
【0075】
図17は、メモリブロック0〜N(3−0〜3−N)に格納された画像データの画面表示の一例を示す図である。DRI0(12−0)によって取り込まれたA領域の画像データが画面の中央に表示され、DRI1(12−1)によって取り込まれたB領域の画像データが上部に表示され、DRI2(12−2)によって取り込まれたC領域の画像データが下部に表示されるところを示している。
【0076】
本実施の形態において説明したシステムは、たとえば、自動車に搭載したカメラによって走行中の画像を取り込み、状況に応じて自動車を制御するアプリケーションに応用することができる。自動車は、図17に示すA領域により前方を走行する車両や障害物を広範囲で確認し、B領域により標識等を認識し、C領域により白線検知として詳細に認識することができる。
【0077】
以上説明したように、本実施の形態におけるマイクロコンピュータによれば、1つのカメラ2からの画像データを3つのDRI0〜2(12−0〜12−2)で取り込み、メモリブロック0〜N(3−0〜3−N)に転送するようにしたので、カメラ2によって撮像された画像データ内の異なる領域の画像データを同時に取り込むことができ、メモリブロック0〜N(3−0〜3−N)内のアドレスが連続した領域にそれぞれの画像データを転送することが可能となった。
【0078】
また、1つのカメラ2からの画像データ内の複数の領域の画像データを取り込むことができるので、複数のカメラを使用する必要がなくなり、システム全体のコストを削減することが可能となった。
【0079】
また、複数の領域の画像データのそれぞれがメモリブロック0〜N(3−0〜3−N)内のアドレスが連続した領域に格納されるので、アプリケーションごとに容易に画像データを取り出すことができ、CPU11の負荷を削減することが可能となった。
【0080】
(第2の実施の形態)
図18は、本発明の第2の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。このシステムは、図1に示す第1の実施の形態におけるシステムの構成と比較して、2台目のカメラおよび3台目のカメラのクロック信号および画像データが入力される端子15−3〜15−6が追加された点、およびセレクタ16〜19が追加された点のみが異なる。したがって、重複する構成および機能の詳細な説明は繰り返さない。
【0081】
セレクタ16は、端子15−2を介して入力されるカメラ2からの画像データと、端子15−4を介して入力される図示しない2台目のカメラからの画像データとのいずれかを選択的にDRI1(12−1)に出力する。
【0082】
セレクタ17は、端子15−2を介して入力されるカメラ2からの画像データと、端子15−6を介して入力される図示しない3台目のカメラからの画像データとのいずれかを選択的にDRI2(12−2)に出力する。
【0083】
セレクタ18は、端子15−1を介して入力されるカメラ2からのクロック信号と、端子15−3を介して入力される図示しない2台目のカメラからのクロック信号とのいずれかを選択的にDRI1(12−1)に出力する。
【0084】
セレクタ19は、端子15−1を介して入力されるカメラ2からのクロック信号と、端子15−5を介して入力される図示しない3台目のカメラからのクロック信号とのいずれかを選択的にDRI2(12−2)に出力する。
【0085】
セレクタ16および18によってカメラ2からの画像データおよびクロック信号を選択してDRI1(12−1)に出力し、セレクタ17および19によってカメラ2からの画像データおよびクロック信号を選択してDRI2(12−2)に出力することにより、図1に示す第1の実施の形態において説明したシステム構成を実現することができる。
【0086】
また、セレクタ16および18によって2台目のカメラからの画像データおよびクロック信号を選択してDRI1(12−1)に出力し、セレクタ17および19によって3台目のカメラからの画像データおよびクロック信号を選択してDRI2(12−2)に出力することにより、図12に示すシステム構成を実現することができる。
【0087】
セレクタ16〜19の切り替えによって、2台目のカメラおよび3台目のカメラに対応したシステム構成とすることにより、たとえば、2台目のカメラおよび3台目のカメラを、カメラ2とは異なる位置に配置して、異なる方向の複数の画像データを画面に表示するといったアプリケーションにも対応することができる。
【0088】
以上説明したように、本実施の形態におけるマイクロコンピュータによれば、セレクタ16〜19の切り替えによって2台目のカメラおよび3台目のカメラからの画像データを取り込めるようにしたので、第1の実施の形態において説明した効果に加えて、さらに多様なアプリケーションにも対応することが可能となった。
【0089】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【0090】
【図1】本発明の第1の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。
【図2】図1に示すDRIの内部構成を示すブロック図である。
【図3】イベント検出回路21およびDRIイベントカウンタ22の詳細を説明するためのブロック図である。
【図4】図2に示すDRIを用いた画像データの取り込みの一例を示す図である。
【図5】図3に示すDEC0〜5(34〜39)の動作を説明するための図である。
【図6】DIN0、DIN1およびDIN3端子に入力されるVSYNC信号、HSYNC信号およびPCLK信号と、DEC2(36)の動作とを説明するためのタイミングチャートである。
【図7】図2に示すDRIを用いた画像データの取り込みの他の一例を示す図である。
【図8】図3に示すDEC0〜5(34〜39)の動作の他の一例を説明するための図である。
【図9】図2に示すDRIを用いた画像データの取り込みのさらに他の一例を示す図である。
【図10】図3に示すDEC0〜5(34〜39)の動作のさらに他の一例を説明するための図である。
【図11】1つのDRIのみを用いて3つの領域の画像データを取り込む場合の問題点を説明するための図である。
【図12】3つのカメラ1〜3(2−1〜2−3)および3つのDRI0〜2(12−0〜12−2)を用いて3つの領域の画像データを取り込む場合の問題点を説明するための図である。
【図13】本発明の第1の実施の形態におけるマイクロコンピュータ1による画像データの取り込みタイミングの一例を示す図である。
【図14】アプリケーションAで使用する画像データの取り込みを説明するための図である。
【図15】アプリケーションBで使用する画像データの取り込みを説明するための図である。
【図16】アプリケーションCで使用する画像データの取り込みを説明するための図である。
【図17】メモリブロック0〜N(3−0〜3−N)に格納された画像データの画面表示の一例を示す図である。
【図18】本発明の第2の実施の形態におけるマイクロコンピュータを含んだシステムの構成例を示すブロック図である。
【符号の説明】
【0091】
1 マイクロコンピュータ、2,2−1〜2−3 カメラ、3−0〜3−N メモリブロック、11 CPU、12−0〜12−2 DRI、13 メモリI/F、14 バスコントローラ、15−1〜15−6 端子、16〜19 セレクタ、21 イベント検出回路、22 DRIイベントカウンタ、23 DRI取り込み/転送制御回路、24 DD入力端子選択回路、31 DIN0イベント検出回路、32 DIN1イベント検出回路、33 DIN3イベント検出回路、34〜39 DEC、41 DRIデータ取り込みイベント数設定レジスタ、42 DRI取り込みイベントカウンタ、43 DRI転送カウンタ、44 DRIアドレスリロードレジスタ0、45 DRIアドレスカウンタ0、46 DRIアドレスリロードレジスタ1、47 DRIアドレスカウンタ1、48 32ビットのデータバッファ。

【特許請求の範囲】
【請求項1】
外部から入力されるデータを記憶回路に転送するマイクロコンピュータであって、
前記外部から入力されるデータの中から所定領域のデータを取り込んで前記記憶回路に転送する複数のインタフェース手段と、
前記外部から入力されるデータの中のそれぞれ異なる領域のデータを前記記憶回路に転送するように前記複数のインタフェース手段を制御するプロセッサとを含む、マイクロコンピュータ。
【請求項2】
前記複数のインタフェース手段のそれぞれは、前記外部から入力されるデータの中から重複する領域のデータを取り込み、並行して前記記憶回路に転送する、請求項1記載のマイクロコンピュータ。
【請求項3】
前記複数のインタフェース手段のそれぞれは、外部から入力される同期信号に応じてイベントを検出するイベント検出手段と、
前記イベント検出手段によって検出されたイベントをカウントして、前記所定領域に対応するデータの取り込み許可を行なう複数のカウント手段と、
前記複数のカウント手段からの取り込み許可に応じて、前記外部から入力されるデータの中から前記所定領域のデータを取り込んで前記記憶回路に出力する制御手段と、
前記制御手段によって出力される前記所定領域のデータを格納するアドレスを生成して、前記記憶回路に出力するアドレス生成手段とを含む、請求項1または2記載のマイクロコンピュータ。
【請求項4】
前記マイクロコンピュータはさらに、前記外部から入力されるデータと、前記外部から入力されるデータとは異なるデータとのいずれかを選択して、前記複数のインタフェース手段の少なくとも1つに出力する選択手段を含む、請求項1〜3のいずれかに記載のマイクロコンピュータ。
【請求項5】
画像を撮像するカメラと、
データを記憶する記憶回路と、
前記カメラから入力される画像データを前記記憶回路に転送するマイクロコンピュータとを含んだシステムであって、
前記マイクロコンピュータは、前記カメラから入力される画像データの中から所定領域の画像データを取り込んで前記記憶回路に転送する複数のインタフェース手段と、
前記カメラから入力される画像データの中のそれぞれ異なる領域の画像データを前記記憶回路に転送するように前記複数のインタフェース手段を制御するプロセッサとを含む、システム。
【請求項6】
外部から入力されるデータを記憶回路に転送するデータ転送装置であって、
前記外部から入力されるデータの中から所定領域のデータを取り込んで前記記憶回路に転送する複数のインタフェース手段を含み、
前記複数のインタフェース手段のそれぞれは、前記外部から入力されるデータの中のそれぞれ異なる領域のデータを前記記憶回路に転送する、データ転送装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2010−86401(P2010−86401A)
【公開日】平成22年4月15日(2010.4.15)
【国際特許分類】
【出願番号】特願2008−256475(P2008−256475)
【出願日】平成20年10月1日(2008.10.1)
【出願人】(503121103)株式会社ルネサステクノロジ (4,790)
【Fターム(参考)】