(57)【要約】【課題】本発明は、重複する演算ユニットの組込みを減らし、回路規模を縮小することが可能なパイプライン演算装置を提供する。【解決手段】本発明に係るパイプライン演算装置は、複数の演算ユニット５０ａ，５０ｂ，５０ｃと、入力セレクタ１４と、出力セレクタ１５と、バッファ２１と、制御部（画像コントローラ６）とを備えている。制御部は、入力セレクタ１４と出力セレクタ１５との間に接続された少なくとも１つの演算ユニット５０ａの動作クロックを、他の演算ユニット５０ｂ，５０ｃを動作させる基準クロックよりも高速になるように制御する。入力セレクタ１４と出力セレクタ１５との間に接続された少なくとも１つの演算ユニット５０ａが、パイプラインごとに時分割で演算処理を行なう。【選択図】図１
2013008265.tif 000002
【特許請求の範囲】
【請求項１】
パイプライン演算方式にて入力データに対して演算処理を行なう複数の演算ユニットと、
複数の前記演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも１つの前記演算ユニットの前段に接続され、演算処理を行なう前記入力データを選択して入力する入力セレクタと、
複数の前記演算ユニットのうち、複数の前記パイプラインで重複して演算処理を行なう少なくとも１つの前記演算ユニットの後段に接続され、演算処理を行なった前記入力データの出力先を選択する出力セレクタと、
前記入力セレクタの前段、および前記出力セレクタの後段にそれぞれ接続され、前記入力データ、および演算処理を行なった前記入力データを一時的に保持するバッファと、
前記入力セレクタと前記出力セレクタとの間に接続された少なくとも１つの前記演算ユニットの動作クロックを、他の前記演算ユニットを動作させる基準クロックよりも高速になるように制御する制御部と
を備え、
前記入力セレクタと前記出力セレクタとの間に接続された少なくとも１つの前記演算ユニットが、前記パイプラインごとに時分割で演算処理を行なうパイプライン演算装置。
【請求項２】
前記入力セレクタは、前段に接続された前記バッファに所定量の前記入力データが蓄積された後、後段に接続した前記演算ユニットに前記入力データを入力する、請求項１に記載のパイプライン演算装置。
【請求項３】
前記制御部は、前記入力セレクタの前段に接続される前記パイプラインを動作させる第１クロックと、前記出力セレクタの後段に接続された前記パイプラインを動作させる第２クロックとを異なるように調整する、請求項１または請求項２に記載のパイプライン演算装置。
【請求項４】
前記制御部は、前記入力セレクタで前記入力データを選択してから、前記出力セレクタで出力先を選択するまでの遅延時間を含む履歴情報を記憶する記憶部を有し、
前記出力セレクタは、前記記憶部に記憶した前記遅延時間に基づいて出力先を選択する、請求項１〜請求項３のいずれか１項に記載のパイプライン演算装置。
【請求項５】
前記制御部は、外部から信号に基づき、時分割で演算処理を行なう前記演算ユニットの時分割の数を変えるために前記動作クロックを変更する、請求項１〜請求項４のいずれか１項に記載のパイプライン演算装置。
【請求項６】
前記入力セレクタと前記バッファとの間に接続され、直列接続してある複数のラインバッファを有する拡張記憶部をさらに備える、請求項１〜請求項５のいずれか１項に記載のパイプライン演算装置。
【請求項７】
前記パイプラインは、複数の前記演算ユニット間で送受信される要求信号および応答信号に基づき前記入力データの転送タイミングを決定する非同期型である、請求項１〜請求項６のいずれか１項に記載のパイプライン演算装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パイプライン演算装置に関し、特に、パイプライン演算方式にて入力データに対して演算処理を行なう複数の演算ユニットを備えるパイプライン演算装置に関する。
【背景技術】
【０００２】
従来、画像データを処理する方法として、ハードウェアを用いて画像データを処理する方法と、ソフトウェアを用いて画像データを処理する方法とが知られている。
【０００３】
ハードウェアを用いて画像データを処理する方法では、特定の画像データを処理する演算ユニットをハイプライン演算方式で演算処理することができるような回路構成をチップに搭載した専用ハードウェア（パイプライン演算装置）が必要である。この専用ハードウェアは、画像データに対して特定の演算処理を行なうために回路構成を最適化してあるので、高速に画像データを処理することが可能である。具体的なパイプライン演算装置の構成については、特許文献１〜６に開示してある。
【０００４】
ただし、専用ハードウェアは、画像データに対して特定の演算処理を行なうために回路構成を設計するため、演算処理を行なうことできる範囲が狭く、範囲外の演算処理を行なうため別途回路構成を設計し直す必要があった。
【０００５】
ソフトウェアを用いて画像データを処理する方法は、汎用的な回路構成を用いて、プログラムにより演算処理を行なうため、プログラムを変更するだけで画像データに対するさまざまな演算処理を行なうことができる。
【０００６】
ただし、ソフトウェアを用いて画像データを処理する方法は、演算処理を行なうことできる範囲が広いが、専用ハードウェアと比較して演算処理を行なう速度が遅い。
【０００７】
そのため、設計者は、ハードウェアを用いて画像データを処理する方法と、ソフトウェアを用いて画像データを処理する方法とを適宜利用して、画像処理システムを構築している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−３１０６４９号公報
【特許文献２】特開平７−７３１６０号公報
【特許文献３】特開昭５７−２０９５６４号公報
【特許文献４】特開平６−１９５３６９号公報
【特許文献５】特開平１１−４１４８８号公報
【特許文献６】特開２００８−１０８０４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
画像データの処理には、さまざまな処理が存在するが、異なる処理内容であっても同じ演算処理が含まれていたり、処理内容に同じ演算処理が複数含まれていたりすることも多い。そのため、専用ハードウェア（パイプライン演算装置）では、同じ演算処理であっても異なる処理内容であれば、同じ演算処理を実行する演算ユニットを設けていた。また、専用ハードウェアでは、処理内容に同じ演算処理が複数含まれていれば、含まれている演算処理の数だけ演算処理を実行する演算ユニットを設けていた。
【００１０】
そのため、専用ハードウェアは、重複する演算ユニットを複数組込むことになり、回路規模が大きくなるという問題があった。
【００１１】
特許文献１で開示してあるパイプライン演算装置は、複数の演算ユニットの処理順序を直並列に組替え、動作させるものである。そのため、特許文献１で開示してあるパイプライン演算装置は、処理内容において一つの演算ユニットで演算処理を行なう回数が入力データ毎に１回程度であるため、重複する演算ユニット回路を複数組込むことになり、回路規模が大きくなる。
【００１２】
また、従来のパイプライン演算装置は、パイプライン中の各演算ユニットでの動作クロックが一定であるため、高速動作が可能な演算ユニットであっても、最も動作の遅い演算ユニットにあわせて動作クロックを決定する必要があった。そのため、従来のパイプライン演算装置では、高速動作が可能な演算ユニットの演算処理能力を十分に利用することができず、ハードウェア資源を無駄にしていた。
【００１３】
それゆえに、本発明は、上記問題点を解決するためになされたものであり、重複する演算ユニットの組込みを減らし、回路規模を縮小することが可能なパイプライン演算装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明に係るパイプライン演算装置は、複数の演算ユニットと、入力セレクタと、出力セレクタと、バッファと、制御部とを備えている。演算ユニットは、パイプライン演算方式にて入力データに対して演算処理を行なう。入力セレクタは、複数の演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも１つの演算ユニットの前段に接続され、演算処理を行なう入力データを選択して入力する。出力セレクタは、複数の演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも１つの演算ユニットの後段に接続され、演算処理を行なった入力データの出力先を選択する。バッファは、入力セレクタの前段、および出力セレクタの後段にそれぞれ接続され、入力データ、および演算処理を行なった入力データを一時的に保持する。制御部は、入力セレクタと出力セレクタとの間に接続された少なくとも１つの演算ユニットの動作クロックを、他の演算ユニットを動作させる基準クロックよりも高速になるように制御する。入力セレクタと出力セレクタとの間に接続された少なくとも１つの演算ユニットが、パイプラインごとに時分割で演算処理を行なう。
【００１５】
好ましくは、入力セレクタが、前段に接続されたバッファに所定量の入力データが蓄積された後、後段に接続した演算ユニットに入力データを入力する。
【００１６】
好ましくは、制御部が、入力セレクタの前段に接続されるパイプラインを動作させる第１クロックと、出力セレクタの後段に接続されたパイプラインを動作させる第２クロックとを異なるように調整する。
【００１７】
好ましくは、制御部は、入力セレクタで入力データを選択してから、出力セレクタで出力先を選択するまでの遅延時間を含む履歴情報を記憶する記憶部を有し、出力セレクタは、記憶部に記憶した遅延時間に基づいて出力先を選択する。
【００１８】
好ましくは、制御部は、外部から信号に基づき、時分割で演算処理を行なう演算ユニットの時分割の数を変えるために動作クロックを変更する。
【００１９】
好ましくは、入力セレクタとバッファとの間に接続され、直列接続してある複数のラインバッファを有する拡張記憶部をさらに備える。
【００２０】
好ましくは、パイプラインは、複数の演算ユニット間で送受信される要求信号および応答信号に基づき入力データの転送タイミングを決定する非同期型である。
【発明の効果】
【００２１】
本発明に係るパイプライン演算装置によれば、複数のパイプラインで重複して演算処理を行なう演算ユニットを、パイプラインごとに時分割で演算処理を行なわせることで、重複する演算ユニットの組込みを減らし、回路規模を縮小することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態１に係るパイプライン演算装置を含む画像情報処理装置の構成を示す概略図である。
【図２】本発明の実施の形態１に係る基準ＴＧ画像データに関するタイミング信号を示す波形図である。
【図３】本発明の実施の形態１に係るＬＴＧ画像データに関するタイミング信号を示す波形図である。
【図４】本発明の実施の形態１に係る画像処理プロセッサの構成を示す概略図である。
【図５】本発明の実施の形態１に係る画像処理プロセッサの画像処理コントローラに入出力する信号を示した信号配線図である。
【図６】本発明の実施の形態２に係る画像処理プロセッサのａ系統のパイプラインの入力データ量と、ｂ系統のパイプラインの入力データ量との関係を示すグラフである。
【図７】本発明の実施の形態３に係る画像処理プロセッサの動作を説明するためのタイミングチャートである。
【図８】本発明の実施の形態４に係る画像処理プロセッサの構成を示す概略図である。
【図９】基準ＴＧ、調整ＴＧおよび調整ＬＴＧの構成を示す概略図である。
【図１０】本発明の実施の形態４に係る画像処理プロセッサのａ系統調整ＴＧで処理される信号の波形を示すタイミングチャートである。
【図１１】本発明の実施の形態５に係る画像処理プロセッサの構成を示す概略図である。
【図１２】本発明の実施の形態６に係る時分割実行ユニットの構成を示す概略図である。
【図１３】本発明の実施の形態７に係る時分割実行ユニットの構成を示す概略図である。
【図１４】本発明の実施の形態８に係る時分割実行ユニットの構成を示す概略図である。
【図１５】本発明の実施の形態９に係る時分割実行ユニットの構成を示す概略図である。
【図１６】本発明の実施の形態１０に係る画像処理プロセッサの構成を示す概略図である。
【発明を実施するための形態】
【００２３】
以下、本発明に係る実施の形態について図面を参照して説明する。
（実施の形態１）
図１は、本発明の実施の形態１に係るパイプライン演算装置を含む画像情報処理装置の構成を示す概略図である。図１に示す画像情報処理装置１００は、画像出力部１、画像入力部２を含み、表示装置３に画像データを出力している。
【００２４】
画像入力部２は、テレビチューナ、ＤＶＤ（Digital  Versatile  Disc）再生装置、やＢｌｕ−Ｒａｙディスク再生装置などの画像データを生成する画像生成装置に接続され、画像出力部１に生成した画像データを出力する。
【００２５】
画像出力部１は、画像入力部２から入力した画像データに対して所定の画像処理（たとえば、画像データ（ＲＧＢのディジタルデータ）を画素単位でガンマ補正する）を行ない、液晶パネルなどの表示装置３に所定の画像処理を行なった画像データをライン単位に出力する。画像出力部１は、画像メモリ４、画像処理プロセッサ５、画像処理コントローラ６、マイクロコンピュータ７、基準ＴＧ（タイミングジェネレータ）８、ＬＴＧ（ローカルタイミングジェネレータ）９、入力インタフェース１０、出力インタフェース１１、割込みコントローラ１６を含んでいる。
【００２６】
画像メモリ４は、画像処理プロセッサ５で処理する画像データを一時的に保存するメモリである。なお、画像メモリ４は、画像出力部１内に独立して設けておく必要はなく、マイクロコンピュータ７のデータを保存する図示していないメモリと共用してもよい。
【００２７】
画像処理プロセッサ５は、後述する演算ユニットを用いて、画像データに対して所定の画像処理を行なう演算装置である。また、画像処理プロセッサ５は、複数の演算ユニットを用いて、パイプライン演算方式にて画像データに対して演算処理を行なうパイプライン演算装置でもある。
【００２８】
画像処理プロセッサ５は、入力セレクタ１４、出力セレクタ１５、演算ユニット５０ａ，５０ｂ，５０ｃを含んでいる。入力セレクタ１４は、演算ユニット５０ａの前段に接続され、演算処理を行なう画像データを選択して入力する切替装置である。出力セレクタ１５は、演算ユニット５０ａの後段に接続され、演算処理を行なった画像データの出力先（演算ユニット５０ｂまたは演算ユニット５０ｃ）を選択する切替装置である。
【００２９】
画像処理コントローラ６は、画像処理プロセッサ５の動作を制御する制御装置である。具体的に、画像処理コントローラ６は、マイクロコンピュータ７からの指令に従って、画像処理プロセッサ５に制御信号を出力し、画像処理プロセッサ５を制御して、画像処理の動作モードやパスなどを決定している。
【００３０】
マイクロコンピュータ７は、画像処理コントローラ６を含む画像出力部１全体の動作を制御する装置である。
【００３１】
基準ＴＧ８は、画像処理プロセッサ５の動作タイミングを決めるクロック信号を生成する装置である。そのため、画像処理プロセッサ５内に設けてある装置は、基本的に基準ＴＧ８が生成したクロック信号に基づき動作している。
【００３２】
ＬＴＧ９は、基準ＴＧ８と異なる周期のクロック信号を生成する装置で、画像処理プロセッサ５内に設けてある一部の装置の動作タイミングを決めている。なお、ＬＴＧ９は、画像処理コントローラ６からのクロック制御信号に基づき、基準ＴＧ８で生成されたタイミングを元に、基準ＴＧ８と異なる周期のクロック信号を生成している。
【００３３】
入力インタフェース１０は、画像入力部２と接続するためのインタフェースであり、画像入力部２から画像データを入力する。
【００３４】
出力インタフェース１１は、表示装置３と接続するためのインタフェースであり、画像出力部１で所定の画像処理した画像データを表示装置３へ出力する。図１に示す画像出力部１は、２つの出力インタフェース１１を有し、演算ユニット５０ｂに一方の出力インタフェース１１を、演算ユニット５０ｃに他方の出力インタフェース１１をそれぞれ接続してある。それぞれの出力インタフェース１１には、それぞれ表示装置３を接続してある。
【００３５】
割込みコントローラ１６は、画像入力部２へ割込み信号を出力する割込み出力機能を備えた制御装置である。
【００３６】
具体的に、画像情報処理装置１００の動作について説明する。まず、画像入力部２は、映像を構成する各フレームの画像データ（フレームデータ）を画像出力部１の入力インタフェース１０に入力する。画像出力部１は、入力インタフェース１０に入力された画像データ（フレームデータ）をライン同期信号に基づきライン毎の画像データ（ラインデータ）に変換する。図２は、本発明の実施の形態１に係る基準ＴＧ８の画像データに関するタイミング信号を示す波形図である。図２に示すライン同期信号は、１つのフレーム同期信号に複数含まれている。また、図２に示すライン同期信号には、複数のビットクロック信号が含まれ、ビットクロック信号の１周期が画像データの１ビットに対応している。
【００３７】
入力インタフェース１０は、１ライン（ライン同期信号の１周期）分の画像データに対応するビット幅を確保したパラレルバスを用いて、画像処理プロセッサ５にライン毎の画像データ（ラインデータ）を順次入力する。また、画像入力部２は、フレーム同期信号およびライン同期信号を、画像データとともに入力インタフェース１０に入力する。なお、入力インタフェース１０は、ライン同期信号は、例えば画像データの１ドットが２４ビットの場合、２４ビットのビットクロック信号で１周期の信号となる。
【００３８】
基準ＴＧ８は、フレーム同期信号に合わせて、割込みコントローラ１６を介して画像入力部２へ割込み信号を出力する。これにより、画像入力部２からの画像データを入力するタイミングが、基準ＴＧ８の動作クロック信号のタイミングと同期することができる。
【００３９】
図２に示す波形は、画像入力部２から画像出力部１の入力インタフェース１０へ入力され、基準ＴＧ８で生成したタイミング信号を図示してある。
【００４０】
画像入力部２から画像データを入力した画像処理プロセッサ５は、複数の演算ユニット５０ａ，５０ｂ，５０ｃを含んでおり、当該演算ユニット５０ａ，５０ｂ，５０ｃを用いて、各種の画像処理をパイプライン演算方式で演算処理する構成である。画像処理プロセッサ５は、複数のパイプラインで重複して演算処理を行なう演算ユニット５０ａを、パイプラインごとに時分割で演算処理を行なう。そのため、演算ユニット５０ａの動作クロックは、演算ユニット５０ｂ，５０ｃの動作クロックと周期が異なり、ＬＴＧ９で生成したクロック信号に基づいている。図３は、本発明の実施の形態１に係るＬＴＧ９の画像データに関するタイミング信号を示す波形図である。図３に示すタイミング信号は、基準ＴＧ８のタイミング信号の略２倍の周期を有している。具体的に、図２に示す基準ＴＧ８のライン同期信号の１周期に、図３に示すＬＴＧ９のライン同期信号の２周期が対応している。
【００４１】
そのため、画像処理プロセッサ５は、基準ＴＧ８のライン同期信号の１周期間に、演算ユニット５０ａをａ系統のパイプラインでの演算処理と、ｂ系統のパイプラインでの演算処理とを時分割で行なうことができる。具体的に、画像処理コントローラ６は、ＬＴＧ９のライン同期信号に基づき、演算ユニット５０ａで演算処理するパイプラインの系統を図３に示すように切替える。つまり、画像処理コントローラ６は、基準ＴＧ８のライン同期信号の１周期間に、演算ユニット５０ａをａ系統で演算処理するタイミングと、ｂ系統で演算処理するタイミングとを切替えている。
【００４２】
画像処理プロセッサ５は、画像メモリ４と接続してあるので、演算ユニット５０ａ，５０ｂ，５０ｃで演算処理した画像データを、画像メモリ４に一時的に保存することが可能である。また、画像処理プロセッサ５は、画像処理した画像データを表示装置３へ出力して、画像データを表示装置３に表示させる。
【００４３】
次に、画像処理プロセッサ５での演算ユニット５０ａ，５０ｂ，５０ｃの演算処理を詳しく説明する。図４は、本発明の実施の形態１に係る画像処理プロセッサ５の構成を示す概略図である。なお、図４（ａ）は、ａ系統およびｂ系統のパイプラインで演算処理する演算ユニットの処理順を示したブロック図である。図４（ｂ）は、画像処理プロセッサ５の構成を示す概略図である。図５は、本発明の実施の形態１に係る画像処理プロセッサ５の画像処理コントローラ６に入出力する信号を示した信号配線図である。
【００４４】
図４に示す画像処理プロセッサ５は、演算ユニット５０ａを含む時分割実行ユニット５０ｄと、時分割実行ユニット５０ｄで演算処理した画像データがそれぞれ入力される演算ユニット５０ｂ，５０ｃとを備えている。さらに、時分割実行ユニット５０ｄは、入力セレクタ１４と、出力セレクタ１５とを備えている。なお、画像処理プロセッサ５は、演算処理するタイミング信号を生成して時分割動作させるＬＴＧ９と、基準となるタイミング信号を生成する基準ＴＧ８と、パイプラインの系統の切替を制御する画像処理コントローラ６とに接続してある。
【００４５】
画像処理コントローラ６は、入力セレクタ１４および出力セレクタ１５で入出力を選択することで演算処理する系統のパイプラインを設定した後、時分割実行ユニット５０ｄにイネーブル信号を入力することで、演算ユニット５０ａをパイプラインごとに時分割で演算処理を行なわせることができる。
【００４６】
なお、画像処理プロセッサ５は、入力セレクタ１４の前段、および出力セレクタ１５の後段にそれぞれ接続され、画像データ、および演算処理を行なった画像データを一時的に保持するバッファ１２を備えている。バッファ１２は、時分割実行ユニット５０ｄでの演算処理のタイミングと、他のユニットでの演算処理などのタイミングとを差を吸収するためのＦＩＦＯ（First  In  First  Out）バッファである。図４には、ａ系統のパイプラインの入力側に設けてあるバッファ１２をＦＩＦＯＩ＿ａと、ａ系統のパイプラインの出力側に設けてあるバッファ１２をＦＩＦＯＯ＿ａと、ｂ系統のパイプラインの入力側に設けてあるバッファ１２をＦＩＦＯＩ＿ｂと、ｂ系統のパイプラインの出力側に設けてあるバッファ１２をＦＩＦＯＯ＿ｂとそれぞれ記載してある。
【００４７】
次に、画像処理プロセッサ５の具体的な動作について詳細に説明する。図４（ａ）に示すａ系統のパイプラインで演算処理する演算ユニット５０の処理順は、画像データの輝度を変換する演算ユニット“１”、画像データから所定のデータをフィルタする演算ユニット“２”の順である。図４（ｂ）に示すｂ系統のパイプラインで演算処理する演算ユニット５０の処理順は、画像データの輝度を変換する演算ユニット“３”、画像データに対してガンマ補正を行なう演算ユニット“４”の順である。
【００４８】
ａ系統のパイプラインの演算ユニット“１”と、ｂ系統のパイプラインの演算ユニット“３”とは、同じ画像データの輝度を変換する演算処理で、複数のパイプラインで重複する演算処理である。そのため、ａ系統のパイプラインの演算ユニット“１”と、ｂ系統のパイプラインの演算ユニット“３”とは、画像データの輝度を変換する１つの演算ユニット５０ａを時分割で演算処理することで実現することができる。つまり、演算ユニット“１”と演算ユニット“３”とを時分割実行ユニット５０ｄにまとめ、時分割実行ユニット５０ｄの入力セレクタ１４および出力セレクタ１５を切替えて実行する。
【００４９】
なお、パイプラインごとでの遅延は許容されるが、演算処理の速度は、それぞれのパイプラインで一定に保つ必要がある。つまり、時分割実行ユニット５０ｄをともに経由しているが、ａ系統のパイプラインで演算処理する速度と、ｂ系統のパイプラインで演算処理する速度とをそれぞれ一定に保つ制御を行なう必要がある。そのため、図５に示すようにａ系統基準ＴＧから演算ユニット５０ｂに至る経路の途中にタイミング信号を遅延させる遅延器１３を設けてある。同様に、ｂ系統基準ＴＧから演算ユニット５０ｃに至る経路の途中にもタイミング信号を遅延させる遅延器１３を設けてある。なお、図５には、ａ系統基準ＴＧの経路に設けてある遅延器１３は、遅延器１３＿ａと、ｂ系統基準ＴＧの経路に設けてある遅延器１３は、遅延器１３＿ｂと、それぞれ記載してある。
【００５０】
図４に示す画像処理プロセッサ５は、ａ系統のパイプラインの１段目の演算ユニットと、ｂ系統のパイプラインの１段目の演算ユニットとが、共通の演算ユニット５０ａである。
【００５１】
図５に示すａ系統およびｂ系統のパイプラインの入力側のバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）は、蓄積する画像データの量が入力基準値を上回ると、入力蓄積データ数を画像処理コントローラ６へ出力する。
【００５２】
ａ系統およびｂ系統のパイプラインの出力側のバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）は、蓄積する画像データの量が出力基準値を上回ると、出力蓄積データ数を画像処理コントローラ６へ出力する。
【００５３】
なお、画像処理プロセッサ５は、動作初期時、バッファ１２の入力基準値、出力基準値の代わりに、画像処理コントローラ６から入力される入力開始基準値、出力開始基準値を用いる。画像処理コントローラ６は、パイプラインでの演算処理に応じて、各系統のパイプラインの入力開始基準値および出力開始基準値を設定する。ａ系統のパイプラインでの演算処理と、ｂ系統のパイプラインでの演算処理とで非同期に動作させる場合や、動作モードを動的に変更する場合、画像処理コントローラ６は、動作初期段階での入力開始基準値を大きく設定し、その後、低い入力基準値とすることで、画像データを演算ユニット５０ａに滞ることなく供給し、画像処理プロセッサ５を安定して動作させることができる。
【００５４】
バッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）は、出力開始基準値を上回ると出力蓄積データ数を画像処理コントローラ６へ出力する。その後、画像処理プロセッサ５は、バッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）から外部へ出力を開始する。なお、画像処理コントローラ６は、動作初期段階での出力開始基準値を大きく設定することで、バッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）から外部へ出力する画像データの滞りを防ぎ、画像処理プロセッサ５を安定して動作させることができる。
【００５５】
画像処理コントローラ６は、出力蓄積データ数が入力され、かつ入力蓄積データ数が入力された系統のパイプラインから、交互または周期的に切替えて、演算ユニット５０ａに演算処理を実行させる。具体的に、画像処理コントローラ６は、ＬＴＧ９のライン同期信号単位で、読出（ｒｅａｄ）セレクタを選択するｒｅａｄセレクタ切替信号を出力する。
【００５６】
時分割実行ユニット５０ｄにイネーブル信号（ユニットＥｎ）を入力した後、演算処理を要求するバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）から画像データを入力して、時分割実行ユニット５０ｄで画像データの演算処理を行なう。演算処理にかかる遅延時間をクロック信号でカウントすることで測定する。入力セレクタ１４を切替えた後、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）から入力された画像データは、時分割実行ユニット５０ｄでの遅延時間を待って時分割実行ユニット５０ｄに入力される。
【００５７】
画像処理コントローラ６は、入力セレクタ１４を切替えた後、遅延時間を待って、入力セレクタ１４で選択した系統のパイプラインへ出力セレクタ１５を切替えるように、書込（ｗｒｉｔｅ）セレクタを選択するｗｒｉｔｅセレクタ切替信号を出力する。そのため、時分割実行ユニット５０ｄは、入力セレクタ１４の選択と、出力セレクタ１５の選択との間に時間差が生じる。なお、画像処理コントローラ６は、入力セレクタ１４で画像データを選択してから、出力セレクタ１５で出力先を選択するまでの遅延時間を含む履歴情報を記憶する記憶部を有している。
【００５８】
そして、画像処理コントローラ６の記憶部に記憶した履歴情報に基づいて、画像処理コントローラ６は、遅延器１３に対して適切な遅延量を出力する。遅延器１３は、画像処理コントローラ６から出力された遅延量に基づき、ａ系およびｂ系統基準ＴＧから演算ユニット５０ｂ，５０ｃに供給されるタイミング信号を遅延させる。
【００５９】
以上のように、本発明の実施の形態１に係る画像処理プロセッサ５は、パイプライン演算方式にて画像データ（入力データ）に対して演算処理を行なう複数の演算ユニット５０ａ，５０ｂ，５０ｃ、入力セレクタ１４、出力セレクタ１５、入力セレクタ１４の前段、および出力セレクタ１５の後段にバッファ１２、画像処理コントローラ６を備えている。パイプライン中の演算ユニット５０ａを、入力セレクタ１４と出力セレクタ１５とで囲み、演算ユニット５０ａを基準ＴＧのライン同期信号（基準クロック）に比べ、周期の速いＬＴＧのライン同期信号（動作クロック）で、演算ユニット５０ａに演算処理をさせているので、複数のパイプラインで重複して演算処理を行なう演算ユニット５０ａを、パイプラインごとに時分割で演算処理を行なわせることで、重複する演算ユニット５０ａの組込みを減らし、回路規模を縮小することができる。
【００６０】
なお、画像処理プロセッサ５は、バッファ１２に非同期のＦＩＦＯバッファであるので、時分割実行ユニット５０ｄに画像データを入力する動作クロックと、時分割実行ユニット５０ｄから画像データを出力する動作クロックとの周波数が異なっていてもよい。
【００６１】
（実施の形態２）
本発明の実施の形態２に係る画像処理プロセッサは、ａ系統のパイプラインと、ｂ系統のパイプラインとがそれぞれ独立して、非同期の動作クロックで動作している。なお、本発明の実施の形態２に係る画像処理プロセッサは、実施の形態１に係る画像処理プロセッサ５の構成と同じであるため、同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【００６２】
本実施の形態２に係るＬＴＧ９は、周期ごとに、基準ＴＧ８のライン同期信号に従って、モード切替タイミング、イネーブル信号を生成する。基準ＴＧ８のライン同期信号の１周期で、ａ系統およびｂ系統のパイプラインでの演算処理が行なえるように、ＬＴＧ９のライン同期信号の周期を速めている。
【００６３】
複数のパイプラインは、入力と出力との一対で構成してあり、固定されている。すなわち、バッファ１２（ＦＩＦＯＩ＿ａ）から入力された画像データは、バッファ１２（ＦＩＦＯＯ＿ａ）から、バッファ１２（ＦＩＦＯＩ＿ｂ）から入力された画像データは、バッファ１２（ＦＩＦＯＯ＿ｂ）からそれぞれ出力される。
【００６４】
具体的に、画像処理コントローラ６は、入力セレクタ１４および出力セレクタ１５にセレクタ切替信号を入力して、演算処理を行なうａ系統またはｂ系統のパイプラインを選択する。
【００６５】
そして、ａ系統のパイプラインの基準タイミングに同期して入力されるａ系統の画像データと、ｂ系統のパイプラインの基準タイミングに同期して入力されるｂ系統の画像データとを足しあわせたデータ量が、時分割実行ユニット５０ｄに入力され、ＬＴＧタイミングで演算処理される。
【００６６】
ＬＴＧタイミングは、図３に示したように、ａ系統およびｂ系統のパイプラインの基準タイミンで転送された複数の系統の画像データを同時に処理するため、高速なタイミングとなる。
【００６７】
ａ系統およびｂ系統のパイプラインの入力側のバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）から画像データが溢れないように演算処理するためには、ＬＴＧタイミングを高速にする必要があるが、演算ユニット５０ａが動作可能な速度には限界がある。そのため、演算ユニット５０ａは、できるだけ低い周波数で動作させることが望ましい。
【００６８】
ＬＴＧ９は、必要最低限の周波数のライン同期信号などのタイミング信号を生成すべく、ＬＴＧ９の転送周波数≧ａ系統のパイプラインの基準ＴＧの転送周波数＋ｂ系統のパイプラインの基準ＴＧの転送周波数とする。ここで、転送周波数は、ライン同期信号の周波数とする。ぞのため、ＬＴＧ９の設定可能な最低転送周波数＝ａ系統のパイプラインの基準ＴＧの転送周波数＋ｂ系統のパイプラインの基準ＴＧの転送周波数となる。
【００６９】
ａ系統のパイプラインの基準ＴＧの転送周波数と、ｂ系統のパイプラインの基準ＴＧの転送周波数とが同じであれば、ＬＴＧ９の設定可能な最低転送周波数と、ａ系統のパイプラインの基準ＴＧの転送周波数と、ｂ系統のパイプラインの基準ＴＧの転送周波数との平均値は常に一致している。しかし、本実施の形態２に係る画像処理プロセッサ５では、ａ系統のパイプラインと、ｂ系統のパイプラインとがそれぞれ独立して、非同期の動作クロックで動作しているので、ａ系統のパイプラインの基準ＴＧの転送周波数と、ｂ系統のパイプラインの基準ＴＧの転送周波数とが異なる。そのため、ＬＴＧ９の設定可能な最低転送周波数は、ａ系統のパイプラインの基準ＴＧの転送周波数と、ｂ系統のパイプラインの基準ＴＧの転送周波数との平均値を中心に変動することになる。
【００７０】
ＬＴＧ９の設定可能な最低転送周波数が変動することで問題となるのは、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）に蓄積された画像データが少ない動作初期時である。具体的に、ＬＴＧ９の設定可能な最低転送周波数が速いと、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）に蓄積された画像データが枯渇して、演算ユニット５０ａへの供給が滞り、画像処理プロセッサ５を安定して動作させることができない。
【００７１】
図６は、本発明の実施の形態２に係る画像処理プロセッサ５のａ系統のパイプラインの入力データ量と、ｂ系統のパイプラインの入力データ量との関係を示すグラフである。
【００７２】
図６の上段には、ａ系統のパイプラインの基準ＴＧの転送周波数（ａ系統基準タイミング）で動作させたバッファ１２（ＦＩＦＯＩ＿ａ）に入力された画像データを示すａ系統外部入力データ量と、ｂ系統のパイプラインの基準ＴＧの転送周波数（ｂ系統基準タイミング）で動作させたバッファ１２（ＦＩＦＯＩ＿ｂ）に入力された画像データを示すｂ系統外部入力データ量とが図示してある。
【００７３】
さらに、図６の上段には、ａ系統外部入力データ量とｂ系統外部入力データ量との合計（ａ系統＋ｂ系統外部入力データ量と）と、ＬＴＧ９の設定可能な最低転送周波数（ＬＴＧ出力タイミング）で演算ユニット５０ａが演算処理する画像データの量である時分割ユニット処理とが図示してある。
【００７４】
図６の中段には、ａ系統外部入力データ量と、バッファ１２（ＦＩＦＯＩ＿ａ）に蓄積されている画像データの量であるＦＩＦＯＩ＿ａ蓄積データと、ａ系統入力開始基準値とが図示してある。同様に、図６の下段には、ｂ系統外部入力データ量と、バッファ１２（ＦＩＦＯＩ＿ｂ）に蓄積されている画像データの量であるＦＩＦＯＩ＿ｂ蓄積データと、ｂ系統入力開始基準値とが図示してある。
【００７５】
図６では、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）に、それぞれａ系統入力開始基準値およびｂ系統入力開始基準値まで画像データを蓄積してから、時分割ユニット処理のデータ量に比べて、常にａ系統＋ｂ系統外部入力データ量が下回っており、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）に蓄積された画像データが枯渇せず、演算ユニット５０ａへの供給が滞ることなく、画像処理プロセッサ５を安定して動作させることができていることが分かる。
【００７６】
また、本発明の実施の形態２に係る画像処理プロセッサ５は、複数の系統のパイプラインのうち、どの系統のパイプラインの演算処理を優先して行なうのか選択する基準として、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）の蓄積データ量−入力開始基準値）が大きい系統のパイプラインを選択する。
【００７７】
（実施の形態３）
本発明の実施の形態３に係る画像処理プロセッサは、複数の系統のパイプラインのすべてを常に動作させる構成ではなく、常に動作させる系統のパイプラインと、一時的に動作させる系統のパイプラインとが混在する構成である。なお、本発明の実施の形態３に係る画像処理プロセッサは、実施の形態１に係る画像処理プロセッサ５の構成と同じであるため、同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【００７８】
画像処理プロセッサ５は、一時的に動作させる系統のパイプラインが混在している場合、動作モードを変更して、使用する系統のパイプラインのみ動作させて、時分割実行ユニット５０ｄの動作クロックを下げることで、消費電力を削減している。
【００７９】
具体的に、画像処理コントローラ６は、動作モードを選択する機能を持たせてあり、たとえば、“通常モード”ではａ系統のパイプラインのみ動作させておき、“並列処理モード”ではｂ系統のパイプラインも同時に動作させる。
【００８０】
図７は、本発明の実施の形態３に係る画像処理プロセッサの動作を説明するためのタイミングチャートである。図７には、ａ系統のパイプラインの動作、ｂ系統のパイプラインの動作、動作モードが図示してある。さらに、図７には、ａ系統のパイプラインの１段目における外部入力データ、バッファ１２（ＦＩＦＯＩ＿ａ）の読出（ｒｅａｄ）、バッファ１２（ＦＩＦＯＯ＿ａ）への書込（ｗｒｉｔｅ）、ａ系統のパイプラインの２段目における外部入力データが図示してある。同様に、図７には、ｂ系統のパイプラインの１段目における外部入力データ、バッファ１２（ＦＩＦＯＩ＿ｂ）の読出（ｒｅａｄ）、バッファ１２（ＦＩＦＯＯ＿ｂ）への書込（ｗｒｉｔｅ）、ｂ系統のパイプラインの２段目における外部入力データが図示してある。また、図７には、入力セレクタ１４が選択している系統、および出力セレクタ１５が選択している系統も図示してある。
【００８１】
動作モードが“通常モード”の「ａ専用」から“並列処理モード”の「ａ，ｂ時分割」へモード切替わると、ａ系統のパイプラインの動作、およびｂ系統のパイプラインの動作がともにオン状態となる。ｂ系統のパイプラインの動作がオン状態となると、ｂ系統のパイプラインの１段目における外部入力データ「１」が入力された立下りで、入力セレクタ１４が選択している系統がａ系統からｂ系統に切替わる。そのため、バッファ１２（ＦＩＦＯＩ＿ｂ）から外部入力データ「１」が読出され、読出された外部入力データ「１」が、演算ユニット５０ａで演算処理される。演算ユニット５０ａで演算処理された外部入力データ「１」が出力されるタイミングで、出力セレクタ１５が選択している系統がａ系統からｂ系統に切替わり、バッファ１２（ＦＩＦＯＯ＿ｂ）に演算処理された外部入力データ「１」が書込まれる。バッファ１２（ＦＩＦＯＯ＿ｂ）に書込まれた外部入力データ「１」は、ｂ系統のパイプラインの２段目における外部入力データとして出力される。
【００８２】
なお、動作モードが“通常モード”の「ａ専用」のとき、演算ユニット５０ａは時分割で演算処理する必要がないので、ＬＴＧ９は、基準ＴＧ８のタイミングクロックと同周期の動作クロックを出力する。
【００８３】
画像処理コントローラ６は、マイクロコンピュータ７から入力される動作モード選択信号に基づいて、動作モードが変更される。画像処理コントローラ６は、並列処理モード”の動作モード選択信号が入力された場合、ＬＴＧ９にクロック制御信号を出力する。ＬＴＧ９は、画像処理コントローラ６からのクロック制御信号に基づき、基準ＴＧ８で生成されたタイミングを元に、基準ＴＧ８より速い周期のクロック信号を生成する。
【００８４】
以上のように、本発明の実施の形態３に係る画像処理プロセッサ５は、動作モードを変更して、停止している系統のパイプラインを動作させるので、使用する系統のパイプラインのみ動作させて、時分割実行ユニット５０ｄの動作クロックを下げることができ、消費電力を削減することができる。
【００８５】
（実施の形態４）
本発明の実施の形態４に係る画像処理プロセッサは、時分割実行ユニットの前後でパイプラインを動作させる速度（クロック）に速度差を持たせる構成である。図８は、本発明の実施の形態４に係る画像処理プロセッサの構成を示す概略図である。図８に示す画像処理プロセッサ５ａは、ａ系統およびｂ系統基準ＴＧ８に加えてａ系統およびｂ系統調整ＴＧ１９、調整ＬＴＧ２０を備えている以外、図５に示す画像処理プロセッサ５の構成と同じである。そのため、本発明の実施の形態４に係る画像処理プロセッサ５ａは、実施の形態１に係る画像処理プロセッサ５と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【００８６】
バッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）の出力側、および演算ユニット５０ｂ，５０ｃは、図５に示す画像処理プロセッサ５と同様に、ａ系統およびｂ系統基準ＴＧ８で生成したクロック信号に基づいて駆動される。しかし、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）の入力側は、ａ系統およびｂ系統調整ＴＧ１９で生成したクロック信号に基づいて駆動され、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）の出力側からバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）の入力側までの間は、調整ＬＴＧ２０で生成したクロック信号に基づいて駆動される。
【００８７】
そのため、画像処理プロセッサ５ａは、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）およびバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）に適切なデータ量が蓄積されるように、時分割実行ユニット５０ｄの前後でパイプラインを動作させるクロックを動的に変化させることができる。
【００８８】
図５に示す画像処理プロセッサ５では、系統ごとにパイプラインの動作初期段階では、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）およびバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）に適切なデータ量が蓄積されるまで出力せず、所定の遅延時間待って出力を開始することでバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）およびバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）に蓄積されたデータ量を調整していた。
【００８９】
しかし、画像処理プロセッサ５ａでは、パイプラインの動作中にバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）に蓄積されたデータ量を調整し、時分割実行ユニット５０ｄからの画像データの出力速度を一定に保つために、時分割実行ユニット５０ｄの前後でパイプラインを動作させるクロックを動的に変化させる必要がある。そこで、画像処理プロセッサ５ａは、時分割実行ユニット５０ｄの前側であるバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）の入力側を、時分割実行ユニット５０ｄの後側であるバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）の出力側と異なるａ系統およびｂ系統調整ＴＧ１９で生成したクロック信号に基づいて駆動している。また、画像処理プロセッサ５ａは、時分割実行ユニット５０ｄ内にあたるバッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）の出力側からバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）の入力側までの間を、調整ＬＴＧ２０で生成したクロック信号に基づいて駆動している。
【００９０】
次に、図９は、基準ＴＧ８、調整ＴＧ１９および調整ＬＴＧ２０の構成を示す概略図である。なお、図９（ａ）は、基準ＴＧ８の構成を示す概略図、図９（ｂ）は、調整ＴＧ１９の構成を示す概略図、図９（ｃ）は、調整ＬＴＧ２０の構成を示す概略図である。また、以下では、ａ系統基準ＴＧ８、ａ系統調整ＴＧ１９およびａ系統調整ＬＴＧ２０について説明するが、ｂ系統基準ＴＧ８、ｂ系統調整ＴＧ１９およびｂ系統調整ＬＴＧ２０も同じ構成となるので詳細な説明を繰返さない。
【００９１】
図９（ａ）に示すａ系統基準ＴＧ８は、タイミング信号生成の基準となるクロック信号ｃｌｋ＿ａが入力される画像タイミング生成部８０を有している。画像タイミング生成部８０は、入力されるクロック信号ｃｌｋ＿ａをカウントして、画像転送用フォーマットに従った図２に示すようなタイミング信号を生成し、出力する。
【００９２】
図９（ｂ）に示すａ系統調整ＴＧ１９は、カウンタ９１、比較器９２、セレクタ９３、および画像タイミング生成部９４を有している。ａ系統調整ＴＧ１９は、ａ系統基準ＴＧ８の機能を拡張した構成で、タイミング信号生成の基準となるクロック信号ｃｌｋ＿ａの他に、クロック信号ｃｌｋ＿ａより周期の速いクロック信号ｃｌｋ＿ｆａｓｔと、クロック信号ｃｌｋ＿ａより周期の遅いクロック信号ｃｌｋ＿ｓｌｏｗとがカウンタ９１に入力される。
【００９３】
図１０は、本発明の実施の形態４に係る画像処理プロセッサ５ａのａ系統調整ＴＧ１９で処理される信号の波形を示すタイミングチャートである。図１０には、クロック信号ｃｌｋ＿ｆａｓｔ、クロック信号ｃｌｋ＿ａ、クロック信号ｃｌｋ＿ｓｌｏｗ、画像タイミング生成部９４の状態を示すカウンタＥｎ、コントローラクロック制御信号、およびクロック信号ｃｌｋ＿ｂｌｅｎｄが図示してある。
【００９４】
画像処理コントローラ６は、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）に蓄積された画像データの量がある基準値に比べて不足し、クロックを変更する必要があると判断した場合、比較器９２にコントローラクロック制御信号を出力する。ａ系統調整ＴＧ１９は、コントローラクロック制御信号が入力されると、カウンタＥｎがオン状態となる。
【００９５】
比較器９２は、コントローラクロック制御信号が正の値であれば、クロック信号ｃｌｋ＿ｆａｓｔへセレクタ９３を切替え、コントローラクロック制御信号が負の値であれば、クロック信号ｃｌｋ＿ｓｌｏｗへセレクタ９３を切替える。
【００９６】
画像タイミング生成部９４は、セレクタ９３を介して入力されるクロック信号ｃｌｋ＿ｂｌｅｎｄ（クロック信号ｃｌｋ＿ｆａｓｔ、クロック信号ｃｌｋ＿ａ、クロック信号ｃｌｋ＿ｓｌｏｗのいずれか１つのクロック信号）をカウントして、画像転送用フォーマットに従ったタイミング信号を生成し、出力する。
【００９７】
なお、ａ系統調整ＴＧ１９は、クロック信号ｃｌｋ＿ｆａｓｔのカウント値と、クロック信号ｃｌｋ＿ａのカウント値との差がコントローラクロック制御信号の値となったとき、クロック信号ｃｌｋ＿ａへセレクタ９３を戻す。具体的に、ａ系統調整ＴＧ１９は、図１０に示すように、コントローラクロック制御信号の値が＋５の場合、クロック信号ｃｌｋ＿ｆａｓｔへセレクタ９３を切替え、クロック信号ｃｌｋ＿ａのカウント値との差が＋５となったとき、クロック信号ｃｌｋ＿ａへセレクタ９３を戻す。
【００９８】
また、ａ系統調整ＴＧ１９は、クロック信号ｃｌｋ＿ｓｌｏｗのカウント値と、クロック信号ｃｌｋ＿ａのカウント値との差がコントローラクロック制御信号の値となったときも、クロック信号ｃｌｋ＿ａへセレクタ９３を戻す。
【００９９】
ａ系統調整ＬＴＧ２０は、２系統のパイプラインに対して複合動作するため、ＬＴＧ９と同様に、クロック信号ｃｌｋ＿ａとクロック信号ｃｌｋ＿ｂとの和相当の周波数で動作することに加え、和以上の速度を保証し、和に近い周波数で出力するためのクロック生成機能を備えている。
【０１００】
図９（ｃ）に示すａ系統調整ＬＴＧ２０は、カウンタ２０１、ＰＬＬ（Phase-locked  loop）回路２０２、比較器２０３、および画像タイミング生成部２０４を有している。カウンタ２０１は、クロック信号ｃｌｋ＿ａおよびクロック信号ｃｌｋ＿ｂの周期数をカウントする。比較器２０３は、クロック信号ｃｌｋ＿ａとクロック信号ｃｌｋ＿ｂとの周期数の和とＰＬＬ回路２０２の周期数カウントを比較して、修正値を計算し、ＰＬＬ回路２０２の分周設定値を変更する。なお、比較器２０３は、クロック信号ｃｌｋ＿ａとクロック信号ｃｌｋ＿ｂとの周期数の和とＰＬＬ回路２０２の周期数カウントを比較する際、コントローラクロック制御信号の値を考慮してもよい。ａ系統調整ＬＴＧ２０は、カウント単位で上記の処理を繰り返し、ＰＬＬ回路２０２から出力するクロック信号ｃｌｋ＿ｂｌｅｎｄを、目標出力（＝クロック信号ｃｌｋ＿ａ＋クロック信号ｃｌｋ＿ｂ＋周波数マージンＷ）に追従するように制御してある。
【０１０１】
画像タイミング生成部２０４は、ＰＬＬ回路２０２から出力するクロック信号ｃｌｋ＿ｂｌｅｎｄをカウントして、画像転送用フォーマットに従ったタイミング信号を生成し、出力する。
【０１０２】
以上のように、本発明の実施の形態４に係る画像処理プロセッサ５ａは、時分割実行ユニット５０ｄの前後でパイプラインを動作させる速度（クロック）に速度差を持たせているので、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）およびバッファ１２（ＦＩＦＯＯ＿ａ，ＦＩＦＯＯ＿ｂ）に蓄積されるデータ量を適切に調整することができる。
【０１０３】
（実施の形態５）
本発明の実施の形態５に係る画像処理プロセッサは、各系統のパイプラインでの演算処理がある基準のクロック信号にしたがって動作するのではなく、演算ユニット間で送受信される要求信号および応答信号に基づき画像データの転送タイミングを決定する非同期型である。
【０１０４】
図１１は、本発明の実施の形態５に係る画像処理プロセッサの構成を示す概略図である。図１１に示す画像処理プロセッサ５ｂは、ａ系統およびｂ系統基準ＴＧ８に加えて演算基準ＴＧ１７を備えている以外、図５に示す画像処理プロセッサ５の構成と同じである。そのため、本発明の実施の形態５に係る画像処理プロセッサ５ｂは、実施の形態１に係る画像処理プロセッサ５と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１０５】
画像処理プロセッサ５ｂは、各系統のパイプラインでの演算処理が非同期では各演算ユニット５０ａ，５０ｂ，５０ｃが非同期の転送時間で動作している。そして、画像処理プロセッサ５ｂは、外部からパイプラインへ画像データを入力する転送タイミングを決定するクロック信号を生成するために、ａ系統およびｂ系統基準ＴＧ８を備えている。さらに、画像処理プロセッサ５ｂは、パイプラインから外部へ画像データを出力する転送タイミングを決定するクロック信号を生成するために、演算基準ＴＧ１７を備えている。
【０１０６】
演算ユニット５０ｂから画像データの入力を要求する外部出力要求信号ａが画像処理コントローラ６に入力されると、画像処理コントローラ６は、外部入力要求信号ａをａ系統基準ＴＧ８に出力する。画像処理プロセッサ５ｂは、ａ系統基準ＴＧ８で生成されるクロック信号に基づき、図示していない画像メモリから時分割実行ユニット５０ｄのバッファ１２（ＦＩＦＯＩ＿ａ）に、画像データを供給する。ａ系統基準ＴＧ８は、外部入力応答信号ａ及び、外部入力同期信号ａを画像処理コントローラ６に出力する。
【０１０７】
画像処理コントローラ６は、ａ系統基準ＴＧ８から外部入力応答信号ａが入力されると、演算ユニット５０ｂから入力された外部出力要求信号ａを消し、ａ系統基準ＴＧ８から入力された外部入力同期信号ａを、外部出力応答信号ａとともに演算ユニット５０ｂに出力する。
【０１０８】
演算ユニット５０ｂは、バッファ１２（ＦＩＦＯＯ＿ａ）から出力された画像データを、入力された外部入力同期信号ａと演算基準ＴＧ１７とのタイミングに基づき演算処理を行なう。
【０１０９】
画像処理プロセッサ５ｂは、安定動作するために、バッファ１２（ＦＩＦＯＩ＿ａ）の入力側を駆動するａ系統およびｂ系統基準ＴＧ８が生成するクロック信号よりも、バッファ１２（ＦＩＦＯＯ＿ａ）の出力側および演算ユニット５０ｂ，５０ｃを駆動する演算基準ＴＧ１７が生成するクロック信号の方の周期を速くする必要がある。なお、ＬＴＧ９は、演算基準ＴＧ１７で生成したクロック信号に基づいて、時分割実行ユニット５０ｄを時分割で演算処理させる。
【０１１０】
以上のように、本発明の実施の形態５に係る画像処理プロセッサ５ｂは、演算ユニット５０ａ，５０ｂ，５０ｃ間で送受信される外部入力または外部出力要求信号、および外部入力または外部出力応答信号に基づき画像データの転送タイミングを決定するので、演算ユニット５０ａ，５０ｂ，５０ｃの現実の動作にあわせて、安定した駆動を行なうことが可能となる。
【０１１１】
（実施の形態６）
図１２は、本発明の実施の形態６に係る時分割実行ユニットの構成を示す概略図である。図１２に示す時分割実行ユニット５０ｄは、バッファ１２（ＦＩＦＯＩ＿ａ）と入力セレクタ１４との間に拡張記憶部１８を備えている以外、図４に示す時分割実行ユニット５０ｄの構成と同じである。そのため、本発明の実施の形態６に係る時分割実行ユニット５０ｄは、実施の形態１に係る時分割実行ユニット５０ｄと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１１２】
演算ユニット５０ａが画像データから所定のデータをフィルタする演算処理の場合、演算ユニット５０ａは、たとえば、サイクルごと３ライン分の画像データを取込み、演算処理する必要がある。
【０１１３】
しかし、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）は、１ライン分の画像データを保持するだけで、３ライン分の画像データを保持することはできない。そこで、図４に示す時分割実行ユニット５０ｄは、１ライン分の画像データを保持するラインバッファを２つ有する拡張記憶部１８を備えている。
【０１１４】
図４に示す時分割実行ユニット５０ｄは、拡張記憶部１８を備えているので、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）とあわせて、３ライン分の画像データを保持し、演算ユニット５０ａに供給することができる。拡張記憶部１８は、複数のラインバッファを直列に接続し、過去に依存する画像データを繰り返し利用することができる。また、系統ごとに、バッファ１２（ＦＩＦＯＩ＿ａ，ＦＩＦＯＩ＿ｂ）と入力セレクタ１４との間に拡張記憶部１８を接続してある。
【０１１５】
以上のように、本発明の実施の形態６に係る時分割実行ユニット５０ｄは、３ライン分の画像データを演算ユニット５０ａで１度に処理することができるので、演算ユニット５０ａを複数搭載したパイプラインと等価の動作を実現することができる。
【０１１６】
（実施の形態７）
図１３は、本発明の実施の形態７に係る時分割実行ユニットの構成を示す概略図である。図１３に示す時分割実行ユニット５０ｄは、単一の演算ユニット５０ａに代えて複数の演算ユニット５０ａを直列接続した構成以外、図４に示す時分割実行ユニット５０ｄの構成と同じである。そのため、本発明の実施の形態７に係る時分割実行ユニット５０ｄは、実施の形態１に係る時分割実行ユニット５０ｄと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１１７】
図４に示す時分割実行ユニット５０ｄは、入力セレクタ１４と出力セレクタ１５との間に演算ユニット５０ａ１と演算ユニット５０ａ２とを直列に接続してある。そのため、画像データの輝度を変換する演算ユニット５０ａ１と、画像データから所定のデータをフィルタする演算ユニット５０ａ２とを時分割で演算処理させることができる。
【０１１８】
以上のように、本発明の実施の形態７に係る時分割実行ユニット５０ｄは、入力セレクタ１４と出力セレクタ１５との間に複数の演算ユニット５０ａを直列接続した構成にすることができるので、重複する演算ユニットの組込みをさらに減らし、回路規模を縮小することができる。
【０１１９】
（実施の形態８）
図１４は、本発明の実施の形態８に係る時分割実行ユニットの構成を示す概略図である。図１４に示す時分割実行ユニット５０ｄは、ａ系統およびｂ系統の２系統のみからなるパイプラインを有する構成はなく、ｎ系統（ｎ≧２）からなるパイプラインを有する構成である。なお、本発明の実施の形態８に係る時分割実行ユニット５０ｄは、実施の形態１に係る時分割実行ユニット５０ｄと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１２０】
図１４に示す時分割実行ユニット５０ｄは、ｎ系統（ｎ≧２）からなるパイプラインを有しているので、入力セレクタ１４の前段にｎ個のバッファ１２（ＦＩＦＯ）、出力セレクタ１５の後段にｎ個のバッファ１２（ＦＩＦＯ）を備えている。
【０１２１】
以上のように、本発明の実施の形態８に係る時分割実行ユニット５０ｄは、ｎ系統（ｎ≧２）からなるパイプラインを有する構成であるため、重複する演算ユニットの組込みをさらに減らし、回路規模を縮小することができる。
【０１２２】
（実施の形態９）
図１５は、本発明の実施の形態９に係る時分割実行ユニットの構成を示す概略図である。図１５に示す時分割実行ユニット５０ｄは、２つのＬＵＴ（ルックアップテーブル）１５２と、ＬＵＴ１５２を切替える切替セレクタ１５１とを備える構成以外、図４に示す時分割実行ユニット５０ｄの構成と同じである。そのため、本発明の実施の形態９に係る時分割実行ユニット５０ｄは、実施の形態１に係る時分割実行ユニット５０ｄと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１２３】
図１５に示す時分割実行ユニット５０ｄは、系統ごとにＬＵＴ１５２を切替え、演算ユニット５０ａの設定を書替えて、演算処理を実行する。
【０１２４】
系統が切替わった後、演算ユニット５０ａは、別の系統の演算処理を実行するための設定を行なうタイミングで、ＬＵＴ１５２に保管してある設定パラメータをＬＵＴ１５２から演算ユニット５０ａに転送する。そのため、演算ユニット５０ａは、各系統の演算処理ごとに設定パラメータが書替わり、系統ごとに異なる設定の演算処理を行なうことができる。
【０１２５】
以上のように、本発明の実施の形態９に係る時分割実行ユニット５０ｄは、２つのＬＵＴ１５２と、ＬＵＴ１５２を切替える切替セレクタ１５１とを備えているので、系統ごと演算ユニット５０ａで最適な演算処理を行なうことができる。
【０１２６】
（実施の形態１０）
図１６は、本発明の実施の形態１０に係る画像処理プロセッサの構成を示す概略図である。図１６に示す画像処理プロセッサ５ｃは、ａ系統のパイプラインと、ｂ系統のパイプラインとが等価的に並列に接続してある構成ではなく、ａ系統のパイプラインと、ｂ系統のパイプラインとを１つのパイプラインとして直列に接続した構成である。なお、本発明の実施の形態１０に係る画像処理プロセッサ５ｃは、実施の形態１に係る画像処理プロセッサ５と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
【０１２７】
図１６（ａ）に示すパイプラインで演算処理する演算ユニット５０の処理順は、画像データの輝度を変換する演算ユニット“１”、画像データから所定のデータをフィルタする演算ユニット“２”、画像データに対してガンマ補正を行なう演算ユニット“３”、画像データの輝度を変換する演算ユニット“４”の順である。
【０１２８】
そのため、図１６に示す画像処理プロセッサ５ｃは、入力セレクタ１４と出力セレクタ１５との間に、画像データの輝度を変換する演算ユニット（“２”，“４”）５０ｆを備えている。そして、画像処理プロセッサ５ｃにおけるａ系統のパイプラインの前段に演算ユニット（“１”）５０ｅを、ａ系統のパイプラインの後段、かつｂ系統のパイプラインの前段に演算ユニット（“３”）５０ｇを備えている。
【０１２９】
以上のように、本発明の実施の形態１０に係る画像処理プロセッサ５ｃは、ａ系統のパイプラインと、ｂ系統のパイプラインとを１つのパイプラインとして直列に接続した構成であるので、複数の演算ユニットをさまざまな構成に組合わせて、演算処理を実行することができる。
【０１３０】
なお、本発明に係る画像処理プロセッサは、画像データをパイプライン演算方式にて演算処理を実行するパイプライン演算装置について説明したが、本発明はこれに限定されるもではない。本発明は、入力データをパイプライン演算方式にて演算処理を実行するパイプライン演算装置であれば、いずれの情報処理プロセッサにも適用することができる。
【０１３１】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３２】
１  画像出力部、２  画像入力部、３  表示装置、４  画像メモリ、５  画像処理プロセッサ、６  画像コントローラ、７  マイクロコンピュータ、８  基準ＴＧ、９  ＬＴＧ、１０  入力インタフェイス、１１  出力インタフェイス、１２  バッファ、１３  遅延器、１４  入力セレクタ、１５  出力セレクタ、１６  割込みコントローラ、１７  演算基準ＴＧ、１８  拡張記憶部、１９  調整ＴＧ、２０  調整ＬＴＧ。
【図１】
2013008265.tif 000003
【図２】
2013008265.tif 000004
【図３】
2013008265.tif 000005
【図４】
2013008265.tif 000006
【図５】
2013008265.tif 000007
【図６】
2013008265.tif 000008
【図７】
2013008265.tif 000009
【図８】
2013008265.tif 000010
【図９】
2013008265.tif 000011
【図１０】
2013008265.tif 000012
【図１１】
2013008265.tif 000013
【図１２】
2013008265.tif 000014
【図１３】
2013008265.tif 000015
【図１４】
2013008265.tif 000016
【図１５】
2013008265.tif 000017
【図１６】
2013008265.tif 000018