JP2013008265A - Pipeline arithmetic device - Google Patents
Pipeline arithmetic device Download PDFInfo
- Publication number
- JP2013008265A JP2013008265A JP2011141459A JP2011141459A JP2013008265A JP 2013008265 A JP2013008265 A JP 2013008265A JP 2011141459 A JP2011141459 A JP 2011141459A JP 2011141459 A JP2011141459 A JP 2011141459A JP 2013008265 A JP2013008265 A JP 2013008265A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- pipeline
- input
- unit
- selector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
【課題】本発明は、重複する演算ユニットの組込みを減らし、回路規模を縮小することが可能なパイプライン演算装置を提供する。
【解決手段】本発明に係るパイプライン演算装置は、複数の演算ユニット50a,50b,50cと、入力セレクタ14と、出力セレクタ15と、バッファ21と、制御部(画像コントローラ6)とを備えている。制御部は、入力セレクタ14と出力セレクタ15との間に接続された少なくとも1つの演算ユニット50aの動作クロックを、他の演算ユニット50b,50cを動作させる基準クロックよりも高速になるように制御する。入力セレクタ14と出力セレクタ15との間に接続された少なくとも1つの演算ユニット50aが、パイプラインごとに時分割で演算処理を行なう。
【選択図】図1The present invention provides a pipeline arithmetic device capable of reducing the circuit scale by reducing the incorporation of overlapping arithmetic units.
A pipeline arithmetic device according to the present invention includes a plurality of arithmetic units 50a, 50b, 50c, an input selector 14, an output selector 15, a buffer 21, and a control unit (image controller 6). Yes. The control unit controls the operation clock of at least one arithmetic unit 50a connected between the input selector 14 and the output selector 15 to be faster than the reference clock for operating the other arithmetic units 50b and 50c. . At least one arithmetic unit 50a connected between the input selector 14 and the output selector 15 performs arithmetic processing in a time division manner for each pipeline.
[Selection] Figure 1
Description
本発明は、パイプライン演算装置に関し、特に、パイプライン演算方式にて入力データに対して演算処理を行なう複数の演算ユニットを備えるパイプライン演算装置に関する。 The present invention relates to a pipeline arithmetic device, and more particularly to a pipeline arithmetic device including a plurality of arithmetic units that perform arithmetic processing on input data by a pipeline arithmetic method.
従来、画像データを処理する方法として、ハードウェアを用いて画像データを処理する方法と、ソフトウェアを用いて画像データを処理する方法とが知られている。 Conventionally, as a method of processing image data, a method of processing image data using hardware and a method of processing image data using software are known.
ハードウェアを用いて画像データを処理する方法では、特定の画像データを処理する演算ユニットをハイプライン演算方式で演算処理することができるような回路構成をチップに搭載した専用ハードウェア(パイプライン演算装置)が必要である。この専用ハードウェアは、画像データに対して特定の演算処理を行なうために回路構成を最適化してあるので、高速に画像データを処理することが可能である。具体的なパイプライン演算装置の構成については、特許文献1〜6に開示してある。 In the method of processing image data using hardware, a dedicated hardware (pipeline arithmetic device) having a circuit configuration that can perform arithmetic processing on the arithmetic unit that processes specific image data using the hyperline arithmetic method. )is required. Since this dedicated hardware has a circuit configuration optimized for performing specific arithmetic processing on the image data, it is possible to process the image data at high speed. The specific configuration of the pipeline arithmetic device is disclosed in Patent Documents 1-6.
ただし、専用ハードウェアは、画像データに対して特定の演算処理を行なうために回路構成を設計するため、演算処理を行なうことできる範囲が狭く、範囲外の演算処理を行なうため別途回路構成を設計し直す必要があった。 However, since dedicated hardware designs a circuit configuration to perform specific arithmetic processing on image data, the range in which arithmetic processing can be performed is narrow, and a separate circuit configuration is designed to perform arithmetic processing outside the range. I had to start over.
ソフトウェアを用いて画像データを処理する方法は、汎用的な回路構成を用いて、プログラムにより演算処理を行なうため、プログラムを変更するだけで画像データに対するさまざまな演算処理を行なうことができる。 The method of processing image data using software performs arithmetic processing by a program using a general-purpose circuit configuration, so that various arithmetic processing can be performed on image data simply by changing the program.
ただし、ソフトウェアを用いて画像データを処理する方法は、演算処理を行なうことできる範囲が広いが、専用ハードウェアと比較して演算処理を行なう速度が遅い。 However, although the method of processing image data using software has a wide range in which arithmetic processing can be performed, the speed of performing arithmetic processing is slower than that of dedicated hardware.
そのため、設計者は、ハードウェアを用いて画像データを処理する方法と、ソフトウェアを用いて画像データを処理する方法とを適宜利用して、画像処理システムを構築している。 Therefore, the designer constructs an image processing system by appropriately using a method of processing image data using hardware and a method of processing image data using software.
画像データの処理には、さまざまな処理が存在するが、異なる処理内容であっても同じ演算処理が含まれていたり、処理内容に同じ演算処理が複数含まれていたりすることも多い。そのため、専用ハードウェア(パイプライン演算装置)では、同じ演算処理であっても異なる処理内容であれば、同じ演算処理を実行する演算ユニットを設けていた。また、専用ハードウェアでは、処理内容に同じ演算処理が複数含まれていれば、含まれている演算処理の数だけ演算処理を実行する演算ユニットを設けていた。 There are various types of processing of image data, but the same arithmetic processing is often included even if the processing content is different, or the same arithmetic processing is often included in the processing content. Therefore, the dedicated hardware (pipeline arithmetic device) is provided with an arithmetic unit that executes the same arithmetic processing if the processing contents are different even if the arithmetic processing is the same. In addition, in the dedicated hardware, when a plurality of the same arithmetic processes are included in the processing content, an arithmetic unit that executes the arithmetic processes as many as the included arithmetic processes is provided.
そのため、専用ハードウェアは、重複する演算ユニットを複数組込むことになり、回路規模が大きくなるという問題があった。 For this reason, the dedicated hardware incorporates a plurality of overlapping arithmetic units, and there is a problem that the circuit scale increases.
特許文献1で開示してあるパイプライン演算装置は、複数の演算ユニットの処理順序を直並列に組替え、動作させるものである。そのため、特許文献1で開示してあるパイプライン演算装置は、処理内容において一つの演算ユニットで演算処理を行なう回数が入力データ毎に1回程度であるため、重複する演算ユニット回路を複数組込むことになり、回路規模が大きくなる。
The pipeline arithmetic device disclosed in
また、従来のパイプライン演算装置は、パイプライン中の各演算ユニットでの動作クロックが一定であるため、高速動作が可能な演算ユニットであっても、最も動作の遅い演算ユニットにあわせて動作クロックを決定する必要があった。そのため、従来のパイプライン演算装置では、高速動作が可能な演算ユニットの演算処理能力を十分に利用することができず、ハードウェア資源を無駄にしていた。 In addition, since the operation clock of each arithmetic unit in the pipeline is constant in the conventional pipeline arithmetic unit, even if it is an arithmetic unit capable of high-speed operation, the operation clock is adjusted in accordance with the slowest arithmetic unit. It was necessary to decide. For this reason, in the conventional pipeline arithmetic device, the arithmetic processing capability of the arithmetic unit capable of high-speed operation cannot be fully utilized, and hardware resources are wasted.
それゆえに、本発明は、上記問題点を解決するためになされたものであり、重複する演算ユニットの組込みを減らし、回路規模を縮小することが可能なパイプライン演算装置を提供することを目的とする。 Therefore, the present invention has been made in order to solve the above-described problems, and an object of the present invention is to provide a pipeline arithmetic device capable of reducing the circuit scale by reducing the incorporation of overlapping arithmetic units. To do.
本発明に係るパイプライン演算装置は、複数の演算ユニットと、入力セレクタと、出力セレクタと、バッファと、制御部とを備えている。演算ユニットは、パイプライン演算方式にて入力データに対して演算処理を行なう。入力セレクタは、複数の演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも1つの演算ユニットの前段に接続され、演算処理を行なう入力データを選択して入力する。出力セレクタは、複数の演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも1つの演算ユニットの後段に接続され、演算処理を行なった入力データの出力先を選択する。バッファは、入力セレクタの前段、および出力セレクタの後段にそれぞれ接続され、入力データ、および演算処理を行なった入力データを一時的に保持する。制御部は、入力セレクタと出力セレクタとの間に接続された少なくとも1つの演算ユニットの動作クロックを、他の演算ユニットを動作させる基準クロックよりも高速になるように制御する。入力セレクタと出力セレクタとの間に接続された少なくとも1つの演算ユニットが、パイプラインごとに時分割で演算処理を行なう。 The pipeline arithmetic device according to the present invention includes a plurality of arithmetic units, an input selector, an output selector, a buffer, and a control unit. The arithmetic unit performs arithmetic processing on input data by a pipeline arithmetic method. The input selector is connected to the preceding stage of at least one arithmetic unit that performs arithmetic processing redundantly in a plurality of pipelines among the plurality of arithmetic units, and selects and inputs input data to be subjected to arithmetic processing. The output selector is connected to a subsequent stage of at least one arithmetic unit that performs arithmetic processing redundantly in a plurality of pipelines among the plurality of arithmetic units, and selects an output destination of the input data subjected to the arithmetic processing. The buffers are respectively connected to the previous stage of the input selector and the subsequent stage of the output selector, and temporarily hold the input data and the input data on which the arithmetic processing has been performed. The control unit controls an operation clock of at least one arithmetic unit connected between the input selector and the output selector so as to be faster than a reference clock for operating other arithmetic units. At least one arithmetic unit connected between the input selector and the output selector performs arithmetic processing in a time division manner for each pipeline.
好ましくは、入力セレクタが、前段に接続されたバッファに所定量の入力データが蓄積された後、後段に接続した演算ユニットに入力データを入力する。 Preferably, after a predetermined amount of input data is accumulated in the buffer connected to the preceding stage, the input selector inputs the input data to the arithmetic unit connected to the subsequent stage.
好ましくは、制御部が、入力セレクタの前段に接続されるパイプラインを動作させる第1クロックと、出力セレクタの後段に接続されたパイプラインを動作させる第2クロックとを異なるように調整する。 Preferably, the control unit adjusts the first clock for operating the pipeline connected to the previous stage of the input selector and the second clock for operating the pipeline connected to the subsequent stage of the output selector to be different.
好ましくは、制御部は、入力セレクタで入力データを選択してから、出力セレクタで出力先を選択するまでの遅延時間を含む履歴情報を記憶する記憶部を有し、出力セレクタは、記憶部に記憶した遅延時間に基づいて出力先を選択する。 Preferably, the control unit includes a storage unit that stores history information including a delay time from selection of input data by the input selector to selection of an output destination by the output selector, and the output selector is stored in the storage unit. The output destination is selected based on the stored delay time.
好ましくは、制御部は、外部から信号に基づき、時分割で演算処理を行なう演算ユニットの時分割の数を変えるために動作クロックを変更する。 Preferably, the control unit changes the operation clock in order to change the number of time divisions of the arithmetic unit that performs arithmetic processing by time division based on a signal from the outside.
好ましくは、入力セレクタとバッファとの間に接続され、直列接続してある複数のラインバッファを有する拡張記憶部をさらに備える。 Preferably, it further includes an extended storage unit connected between the input selector and the buffer and having a plurality of line buffers connected in series.
好ましくは、パイプラインは、複数の演算ユニット間で送受信される要求信号および応答信号に基づき入力データの転送タイミングを決定する非同期型である。 Preferably, the pipeline is an asynchronous type that determines the transfer timing of input data based on a request signal and a response signal transmitted and received between a plurality of arithmetic units.
本発明に係るパイプライン演算装置によれば、複数のパイプラインで重複して演算処理を行なう演算ユニットを、パイプラインごとに時分割で演算処理を行なわせることで、重複する演算ユニットの組込みを減らし、回路規模を縮小することができる。 According to the pipeline arithmetic device according to the present invention, the arithmetic unit that performs the arithmetic processing redundantly in a plurality of pipelines is subjected to the arithmetic processing in a time division manner for each pipeline, so that the overlapping arithmetic units can be incorporated. The circuit scale can be reduced.
以下、本発明に係る実施の形態について図面を参照して説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係るパイプライン演算装置を含む画像情報処理装置の構成を示す概略図である。図1に示す画像情報処理装置100は、画像出力部1、画像入力部2を含み、表示装置3に画像データを出力している。
Hereinafter, embodiments according to the present invention will be described with reference to the drawings.
(Embodiment 1)
FIG. 1 is a schematic diagram showing a configuration of an image information processing apparatus including a pipeline arithmetic device according to
画像入力部2は、テレビチューナ、DVD(Digital Versatile Disc)再生装置、やBlu−Rayディスク再生装置などの画像データを生成する画像生成装置に接続され、画像出力部1に生成した画像データを出力する。
The
画像出力部1は、画像入力部2から入力した画像データに対して所定の画像処理(たとえば、画像データ(RGBのディジタルデータ)を画素単位でガンマ補正する)を行ない、液晶パネルなどの表示装置3に所定の画像処理を行なった画像データをライン単位に出力する。画像出力部1は、画像メモリ4、画像処理プロセッサ5、画像処理コントローラ6、マイクロコンピュータ7、基準TG(タイミングジェネレータ)8、LTG(ローカルタイミングジェネレータ)9、入力インタフェース10、出力インタフェース11、割込みコントローラ16を含んでいる。
The
画像メモリ4は、画像処理プロセッサ5で処理する画像データを一時的に保存するメモリである。なお、画像メモリ4は、画像出力部1内に独立して設けておく必要はなく、マイクロコンピュータ7のデータを保存する図示していないメモリと共用してもよい。
The
画像処理プロセッサ5は、後述する演算ユニットを用いて、画像データに対して所定の画像処理を行なう演算装置である。また、画像処理プロセッサ5は、複数の演算ユニットを用いて、パイプライン演算方式にて画像データに対して演算処理を行なうパイプライン演算装置でもある。
The
画像処理プロセッサ5は、入力セレクタ14、出力セレクタ15、演算ユニット50a,50b,50cを含んでいる。入力セレクタ14は、演算ユニット50aの前段に接続され、演算処理を行なう画像データを選択して入力する切替装置である。出力セレクタ15は、演算ユニット50aの後段に接続され、演算処理を行なった画像データの出力先(演算ユニット50bまたは演算ユニット50c)を選択する切替装置である。
The
画像処理コントローラ6は、画像処理プロセッサ5の動作を制御する制御装置である。具体的に、画像処理コントローラ6は、マイクロコンピュータ7からの指令に従って、画像処理プロセッサ5に制御信号を出力し、画像処理プロセッサ5を制御して、画像処理の動作モードやパスなどを決定している。
The
マイクロコンピュータ7は、画像処理コントローラ6を含む画像出力部1全体の動作を制御する装置である。
The microcomputer 7 is a device that controls the operation of the entire
基準TG8は、画像処理プロセッサ5の動作タイミングを決めるクロック信号を生成する装置である。そのため、画像処理プロセッサ5内に設けてある装置は、基本的に基準TG8が生成したクロック信号に基づき動作している。
The
LTG9は、基準TG8と異なる周期のクロック信号を生成する装置で、画像処理プロセッサ5内に設けてある一部の装置の動作タイミングを決めている。なお、LTG9は、画像処理コントローラ6からのクロック制御信号に基づき、基準TG8で生成されたタイミングを元に、基準TG8と異なる周期のクロック信号を生成している。
The
入力インタフェース10は、画像入力部2と接続するためのインタフェースであり、画像入力部2から画像データを入力する。
The
出力インタフェース11は、表示装置3と接続するためのインタフェースであり、画像出力部1で所定の画像処理した画像データを表示装置3へ出力する。図1に示す画像出力部1は、2つの出力インタフェース11を有し、演算ユニット50bに一方の出力インタフェース11を、演算ユニット50cに他方の出力インタフェース11をそれぞれ接続してある。それぞれの出力インタフェース11には、それぞれ表示装置3を接続してある。
The
割込みコントローラ16は、画像入力部2へ割込み信号を出力する割込み出力機能を備えた制御装置である。
The interrupt
具体的に、画像情報処理装置100の動作について説明する。まず、画像入力部2は、映像を構成する各フレームの画像データ(フレームデータ)を画像出力部1の入力インタフェース10に入力する。画像出力部1は、入力インタフェース10に入力された画像データ(フレームデータ)をライン同期信号に基づきライン毎の画像データ(ラインデータ)に変換する。図2は、本発明の実施の形態1に係る基準TG8の画像データに関するタイミング信号を示す波形図である。図2に示すライン同期信号は、1つのフレーム同期信号に複数含まれている。また、図2に示すライン同期信号には、複数のビットクロック信号が含まれ、ビットクロック信号の1周期が画像データの1ビットに対応している。
Specifically, the operation of the image
入力インタフェース10は、1ライン(ライン同期信号の1周期)分の画像データに対応するビット幅を確保したパラレルバスを用いて、画像処理プロセッサ5にライン毎の画像データ(ラインデータ)を順次入力する。また、画像入力部2は、フレーム同期信号およびライン同期信号を、画像データとともに入力インタフェース10に入力する。なお、入力インタフェース10は、ライン同期信号は、例えば画像データの1ドットが24ビットの場合、24ビットのビットクロック信号で1周期の信号となる。
The
基準TG8は、フレーム同期信号に合わせて、割込みコントローラ16を介して画像入力部2へ割込み信号を出力する。これにより、画像入力部2からの画像データを入力するタイミングが、基準TG8の動作クロック信号のタイミングと同期することができる。
The
図2に示す波形は、画像入力部2から画像出力部1の入力インタフェース10へ入力され、基準TG8で生成したタイミング信号を図示してある。
The waveform shown in FIG. 2 is input from the
画像入力部2から画像データを入力した画像処理プロセッサ5は、複数の演算ユニット50a,50b,50cを含んでおり、当該演算ユニット50a,50b,50cを用いて、各種の画像処理をパイプライン演算方式で演算処理する構成である。画像処理プロセッサ5は、複数のパイプラインで重複して演算処理を行なう演算ユニット50aを、パイプラインごとに時分割で演算処理を行なう。そのため、演算ユニット50aの動作クロックは、演算ユニット50b,50cの動作クロックと周期が異なり、LTG9で生成したクロック信号に基づいている。図3は、本発明の実施の形態1に係るLTG9の画像データに関するタイミング信号を示す波形図である。図3に示すタイミング信号は、基準TG8のタイミング信号の略2倍の周期を有している。具体的に、図2に示す基準TG8のライン同期信号の1周期に、図3に示すLTG9のライン同期信号の2周期が対応している。
The
そのため、画像処理プロセッサ5は、基準TG8のライン同期信号の1周期間に、演算ユニット50aをa系統のパイプラインでの演算処理と、b系統のパイプラインでの演算処理とを時分割で行なうことができる。具体的に、画像処理コントローラ6は、LTG9のライン同期信号に基づき、演算ユニット50aで演算処理するパイプラインの系統を図3に示すように切替える。つまり、画像処理コントローラ6は、基準TG8のライン同期信号の1周期間に、演算ユニット50aをa系統で演算処理するタイミングと、b系統で演算処理するタイミングとを切替えている。
Therefore, the
画像処理プロセッサ5は、画像メモリ4と接続してあるので、演算ユニット50a,50b,50cで演算処理した画像データを、画像メモリ4に一時的に保存することが可能である。また、画像処理プロセッサ5は、画像処理した画像データを表示装置3へ出力して、画像データを表示装置3に表示させる。
Since the
次に、画像処理プロセッサ5での演算ユニット50a,50b,50cの演算処理を詳しく説明する。図4は、本発明の実施の形態1に係る画像処理プロセッサ5の構成を示す概略図である。なお、図4(a)は、a系統およびb系統のパイプラインで演算処理する演算ユニットの処理順を示したブロック図である。図4(b)は、画像処理プロセッサ5の構成を示す概略図である。図5は、本発明の実施の形態1に係る画像処理プロセッサ5の画像処理コントローラ6に入出力する信号を示した信号配線図である。
Next, the arithmetic processing of the
図4に示す画像処理プロセッサ5は、演算ユニット50aを含む時分割実行ユニット50dと、時分割実行ユニット50dで演算処理した画像データがそれぞれ入力される演算ユニット50b,50cとを備えている。さらに、時分割実行ユニット50dは、入力セレクタ14と、出力セレクタ15とを備えている。なお、画像処理プロセッサ5は、演算処理するタイミング信号を生成して時分割動作させるLTG9と、基準となるタイミング信号を生成する基準TG8と、パイプラインの系統の切替を制御する画像処理コントローラ6とに接続してある。
The
画像処理コントローラ6は、入力セレクタ14および出力セレクタ15で入出力を選択することで演算処理する系統のパイプラインを設定した後、時分割実行ユニット50dにイネーブル信号を入力することで、演算ユニット50aをパイプラインごとに時分割で演算処理を行なわせることができる。
The
なお、画像処理プロセッサ5は、入力セレクタ14の前段、および出力セレクタ15の後段にそれぞれ接続され、画像データ、および演算処理を行なった画像データを一時的に保持するバッファ12を備えている。バッファ12は、時分割実行ユニット50dでの演算処理のタイミングと、他のユニットでの演算処理などのタイミングとを差を吸収するためのFIFO(First In First Out)バッファである。図4には、a系統のパイプラインの入力側に設けてあるバッファ12をFIFOI_aと、a系統のパイプラインの出力側に設けてあるバッファ12をFIFOO_aと、b系統のパイプラインの入力側に設けてあるバッファ12をFIFOI_bと、b系統のパイプラインの出力側に設けてあるバッファ12をFIFOO_bとそれぞれ記載してある。
The
次に、画像処理プロセッサ5の具体的な動作について詳細に説明する。図4(a)に示すa系統のパイプラインで演算処理する演算ユニット50の処理順は、画像データの輝度を変換する演算ユニット“1”、画像データから所定のデータをフィルタする演算ユニット“2”の順である。図4(b)に示すb系統のパイプラインで演算処理する演算ユニット50の処理順は、画像データの輝度を変換する演算ユニット“3”、画像データに対してガンマ補正を行なう演算ユニット“4”の順である。
Next, a specific operation of the
a系統のパイプラインの演算ユニット“1”と、b系統のパイプラインの演算ユニット“3”とは、同じ画像データの輝度を変換する演算処理で、複数のパイプラインで重複する演算処理である。そのため、a系統のパイプラインの演算ユニット“1”と、b系統のパイプラインの演算ユニット“3”とは、画像データの輝度を変換する1つの演算ユニット50aを時分割で演算処理することで実現することができる。つまり、演算ユニット“1”と演算ユニット“3”とを時分割実行ユニット50dにまとめ、時分割実行ユニット50dの入力セレクタ14および出力セレクタ15を切替えて実行する。
The arithmetic unit “1” in the a system pipeline and the arithmetic unit “3” in the b system pipeline are arithmetic processes that convert the luminance of the same image data, and are arithmetic processes that overlap in a plurality of pipelines. . For this reason, the arithmetic unit “1” in the a system pipeline and the arithmetic unit “3” in the b system pipeline perform time-division processing on one
なお、パイプラインごとでの遅延は許容されるが、演算処理の速度は、それぞれのパイプラインで一定に保つ必要がある。つまり、時分割実行ユニット50dをともに経由しているが、a系統のパイプラインで演算処理する速度と、b系統のパイプラインで演算処理する速度とをそれぞれ一定に保つ制御を行なう必要がある。そのため、図5に示すようにa系統基準TGから演算ユニット50bに至る経路の途中にタイミング信号を遅延させる遅延器13を設けてある。同様に、b系統基準TGから演算ユニット50cに至る経路の途中にもタイミング信号を遅延させる遅延器13を設けてある。なお、図5には、a系統基準TGの経路に設けてある遅延器13は、遅延器13_aと、b系統基準TGの経路に設けてある遅延器13は、遅延器13_bと、それぞれ記載してある。
Although delay in each pipeline is allowed, the processing speed needs to be kept constant in each pipeline. In other words, both the time-
図4に示す画像処理プロセッサ5は、a系統のパイプラインの1段目の演算ユニットと、b系統のパイプラインの1段目の演算ユニットとが、共通の演算ユニット50aである。
In the
図5に示すa系統およびb系統のパイプラインの入力側のバッファ12(FIFOI_a,FIFOI_b)は、蓄積する画像データの量が入力基準値を上回ると、入力蓄積データ数を画像処理コントローラ6へ出力する。
The buffer 12 (FIFOI_a, FIFOI_b) on the input side of the pipelines a and b shown in FIG. 5 outputs the number of input accumulated data to the
a系統およびb系統のパイプラインの出力側のバッファ12(FIFOO_a,FIFOO_b)は、蓄積する画像データの量が出力基準値を上回ると、出力蓄積データ数を画像処理コントローラ6へ出力する。
The buffer 12 (FIFO_a, FIFO_b) on the output side of the pipelines of the a system and the b system outputs the number of output stored data to the
なお、画像処理プロセッサ5は、動作初期時、バッファ12の入力基準値、出力基準値の代わりに、画像処理コントローラ6から入力される入力開始基準値、出力開始基準値を用いる。画像処理コントローラ6は、パイプラインでの演算処理に応じて、各系統のパイプラインの入力開始基準値および出力開始基準値を設定する。a系統のパイプラインでの演算処理と、b系統のパイプラインでの演算処理とで非同期に動作させる場合や、動作モードを動的に変更する場合、画像処理コントローラ6は、動作初期段階での入力開始基準値を大きく設定し、その後、低い入力基準値とすることで、画像データを演算ユニット50aに滞ることなく供給し、画像処理プロセッサ5を安定して動作させることができる。
The
バッファ12(FIFOO_a,FIFOO_b)は、出力開始基準値を上回ると出力蓄積データ数を画像処理コントローラ6へ出力する。その後、画像処理プロセッサ5は、バッファ12(FIFOO_a,FIFOO_b)から外部へ出力を開始する。なお、画像処理コントローラ6は、動作初期段階での出力開始基準値を大きく設定することで、バッファ12(FIFOO_a,FIFOO_b)から外部へ出力する画像データの滞りを防ぎ、画像処理プロセッサ5を安定して動作させることができる。
The buffer 12 (FIFO_a, FIFOO_b) outputs the number of output accumulated data to the
画像処理コントローラ6は、出力蓄積データ数が入力され、かつ入力蓄積データ数が入力された系統のパイプラインから、交互または周期的に切替えて、演算ユニット50aに演算処理を実行させる。具体的に、画像処理コントローラ6は、LTG9のライン同期信号単位で、読出(read)セレクタを選択するreadセレクタ切替信号を出力する。
The
時分割実行ユニット50dにイネーブル信号(ユニットEn)を入力した後、演算処理を要求するバッファ12(FIFOI_a,FIFOI_b)から画像データを入力して、時分割実行ユニット50dで画像データの演算処理を行なう。演算処理にかかる遅延時間をクロック信号でカウントすることで測定する。入力セレクタ14を切替えた後、バッファ12(FIFOI_a,FIFOI_b)から入力された画像データは、時分割実行ユニット50dでの遅延時間を待って時分割実行ユニット50dに入力される。
After an enable signal (unit En) is input to the time
画像処理コントローラ6は、入力セレクタ14を切替えた後、遅延時間を待って、入力セレクタ14で選択した系統のパイプラインへ出力セレクタ15を切替えるように、書込(write)セレクタを選択するwriteセレクタ切替信号を出力する。そのため、時分割実行ユニット50dは、入力セレクタ14の選択と、出力セレクタ15の選択との間に時間差が生じる。なお、画像処理コントローラ6は、入力セレクタ14で画像データを選択してから、出力セレクタ15で出力先を選択するまでの遅延時間を含む履歴情報を記憶する記憶部を有している。
After switching the
そして、画像処理コントローラ6の記憶部に記憶した履歴情報に基づいて、画像処理コントローラ6は、遅延器13に対して適切な遅延量を出力する。遅延器13は、画像処理コントローラ6から出力された遅延量に基づき、a系およびb系統基準TGから演算ユニット50b,50cに供給されるタイミング信号を遅延させる。
Then, based on the history information stored in the storage unit of the
以上のように、本発明の実施の形態1に係る画像処理プロセッサ5は、パイプライン演算方式にて画像データ(入力データ)に対して演算処理を行なう複数の演算ユニット50a,50b,50c、入力セレクタ14、出力セレクタ15、入力セレクタ14の前段、および出力セレクタ15の後段にバッファ12、画像処理コントローラ6を備えている。パイプライン中の演算ユニット50aを、入力セレクタ14と出力セレクタ15とで囲み、演算ユニット50aを基準TGのライン同期信号(基準クロック)に比べ、周期の速いLTGのライン同期信号(動作クロック)で、演算ユニット50aに演算処理をさせているので、複数のパイプラインで重複して演算処理を行なう演算ユニット50aを、パイプラインごとに時分割で演算処理を行なわせることで、重複する演算ユニット50aの組込みを減らし、回路規模を縮小することができる。
As described above, the
なお、画像処理プロセッサ5は、バッファ12に非同期のFIFOバッファであるので、時分割実行ユニット50dに画像データを入力する動作クロックと、時分割実行ユニット50dから画像データを出力する動作クロックとの周波数が異なっていてもよい。
Since the
(実施の形態2)
本発明の実施の形態2に係る画像処理プロセッサは、a系統のパイプラインと、b系統のパイプラインとがそれぞれ独立して、非同期の動作クロックで動作している。なお、本発明の実施の形態2に係る画像処理プロセッサは、実施の形態1に係る画像処理プロセッサ5の構成と同じであるため、同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 2)
In the image processor according to the second embodiment of the present invention, the a-system pipeline and the b-system pipeline are independently operated with asynchronous operation clocks. The image processor according to the second embodiment of the present invention is the same as the configuration of the
本実施の形態2に係るLTG9は、周期ごとに、基準TG8のライン同期信号に従って、モード切替タイミング、イネーブル信号を生成する。基準TG8のライン同期信号の1周期で、a系統およびb系統のパイプラインでの演算処理が行なえるように、LTG9のライン同期信号の周期を速めている。
The
複数のパイプラインは、入力と出力との一対で構成してあり、固定されている。すなわち、バッファ12(FIFOI_a)から入力された画像データは、バッファ12(FIFOO_a)から、バッファ12(FIFOI_b)から入力された画像データは、バッファ12(FIFOO_b)からそれぞれ出力される。 The plurality of pipelines are composed of a pair of an input and an output, and are fixed. That is, the image data input from the buffer 12 (FIFOI_a) is output from the buffer 12 (FIFOO_a), and the image data input from the buffer 12 (FIFOI_b) is output from the buffer 12 (FIFOO_b).
具体的に、画像処理コントローラ6は、入力セレクタ14および出力セレクタ15にセレクタ切替信号を入力して、演算処理を行なうa系統またはb系統のパイプラインを選択する。
Specifically, the
そして、a系統のパイプラインの基準タイミングに同期して入力されるa系統の画像データと、b系統のパイプラインの基準タイミングに同期して入力されるb系統の画像データとを足しあわせたデータ量が、時分割実行ユニット50dに入力され、LTGタイミングで演算処理される。
Data obtained by adding the a system image data input in synchronization with the reference timing of the a system pipeline and the b system image data input in synchronization with the reference timing of the b system pipeline. The amount is input to the time-
LTGタイミングは、図3に示したように、a系統およびb系統のパイプラインの基準タイミンで転送された複数の系統の画像データを同時に処理するため、高速なタイミングとなる。 As shown in FIG. 3, the LTG timing is a high-speed timing because the image data of a plurality of systems transferred by the reference timings of the pipelines of the a system and the b system are processed simultaneously.
a系統およびb系統のパイプラインの入力側のバッファ12(FIFOI_a,FIFOI_b)から画像データが溢れないように演算処理するためには、LTGタイミングを高速にする必要があるが、演算ユニット50aが動作可能な速度には限界がある。そのため、演算ユニット50aは、できるだけ低い周波数で動作させることが望ましい。
In order to perform arithmetic processing so that image data does not overflow from the input side buffer 12 (FIFOI_a, FIFOI_b) of the pipelines of the a system and the b system, the LTG timing needs to be increased, but the
LTG9は、必要最低限の周波数のライン同期信号などのタイミング信号を生成すべく、LTG9の転送周波数≧a系統のパイプラインの基準TGの転送周波数+b系統のパイプラインの基準TGの転送周波数とする。ここで、転送周波数は、ライン同期信号の周波数とする。ぞのため、LTG9の設定可能な最低転送周波数=a系統のパイプラインの基準TGの転送周波数+b系統のパイプラインの基準TGの転送周波数となる。
In order to generate a timing signal such as a line synchronization signal having a minimum necessary frequency, the
a系統のパイプラインの基準TGの転送周波数と、b系統のパイプラインの基準TGの転送周波数とが同じであれば、LTG9の設定可能な最低転送周波数と、a系統のパイプラインの基準TGの転送周波数と、b系統のパイプラインの基準TGの転送周波数との平均値は常に一致している。しかし、本実施の形態2に係る画像処理プロセッサ5では、a系統のパイプラインと、b系統のパイプラインとがそれぞれ独立して、非同期の動作クロックで動作しているので、a系統のパイプラインの基準TGの転送周波数と、b系統のパイプラインの基準TGの転送周波数とが異なる。そのため、LTG9の設定可能な最低転送周波数は、a系統のパイプラインの基準TGの転送周波数と、b系統のパイプラインの基準TGの転送周波数との平均値を中心に変動することになる。
If the transfer frequency of the reference TG of the a system pipeline and the transfer frequency of the reference TG of the b system pipeline are the same, the minimum transfer frequency that can be set by the
LTG9の設定可能な最低転送周波数が変動することで問題となるのは、バッファ12(FIFOI_a,FIFOI_b)に蓄積された画像データが少ない動作初期時である。具体的に、LTG9の設定可能な最低転送周波数が速いと、バッファ12(FIFOI_a,FIFOI_b)に蓄積された画像データが枯渇して、演算ユニット50aへの供給が滞り、画像処理プロセッサ5を安定して動作させることができない。
A problem that occurs when the minimum transfer frequency that can be set in the
図6は、本発明の実施の形態2に係る画像処理プロセッサ5のa系統のパイプラインの入力データ量と、b系統のパイプラインの入力データ量との関係を示すグラフである。
FIG. 6 is a graph showing the relationship between the input data amount of the a system pipeline and the input data amount of the b system pipeline of the
図6の上段には、a系統のパイプラインの基準TGの転送周波数(a系統基準タイミング)で動作させたバッファ12(FIFOI_a)に入力された画像データを示すa系統外部入力データ量と、b系統のパイプラインの基準TGの転送周波数(b系統基準タイミング)で動作させたバッファ12(FIFOI_b)に入力された画像データを示すb系統外部入力データ量とが図示してある。 In the upper part of FIG. 6, an a-system external input data amount indicating image data input to the buffer 12 (FIFOI_a) operated at the transfer frequency of the reference TG (a-system reference timing) of the a-system pipeline, The b system external input data amount indicating the image data input to the buffer 12 (FIFOI_b) operated at the transfer frequency (b system reference timing) of the reference TG of the system pipeline is illustrated.
さらに、図6の上段には、a系統外部入力データ量とb系統外部入力データ量との合計(a系統+b系統外部入力データ量と)と、LTG9の設定可能な最低転送周波数(LTG出力タイミング)で演算ユニット50aが演算処理する画像データの量である時分割ユニット処理とが図示してある。
Further, in the upper part of FIG. 6, the total of the a system external input data amount and the b system external input data amount (a system + b system external input data amount) and the minimum transfer frequency (LTG output timing) that can be set for the
図6の中段には、a系統外部入力データ量と、バッファ12(FIFOI_a)に蓄積されている画像データの量であるFIFOI_a蓄積データと、a系統入力開始基準値とが図示してある。同様に、図6の下段には、b系統外部入力データ量と、バッファ12(FIFOI_b)に蓄積されている画像データの量であるFIFOI_b蓄積データと、b系統入力開始基準値とが図示してある。 The middle part of FIG. 6 illustrates the a-system external input data amount, the FIFOI_a accumulated data that is the amount of image data stored in the buffer 12 (FIFOI_a), and the a-system input start reference value. Similarly, in the lower part of FIG. 6, b system external input data amount, FIFOI_b stored data that is the amount of image data stored in the buffer 12 (FIFOI_b), and b system input start reference value are illustrated. is there.
図6では、バッファ12(FIFOI_a,FIFOI_b)に、それぞれa系統入力開始基準値およびb系統入力開始基準値まで画像データを蓄積してから、時分割ユニット処理のデータ量に比べて、常にa系統+b系統外部入力データ量が下回っており、バッファ12(FIFOI_a,FIFOI_b)に蓄積された画像データが枯渇せず、演算ユニット50aへの供給が滞ることなく、画像処理プロセッサ5を安定して動作させることができていることが分かる。
In FIG. 6, after the image data is accumulated in the buffer 12 (FIFOI_a, FIFOI_b) up to the a system input start reference value and the b system input start reference value, respectively, the a system is always compared with the data amount of the time division unit processing. + B system external input data amount is lower, the image data stored in the buffer 12 (FIFOI_a, FIFOI_b) is not depleted, the supply to the
また、本発明の実施の形態2に係る画像処理プロセッサ5は、複数の系統のパイプラインのうち、どの系統のパイプラインの演算処理を優先して行なうのか選択する基準として、バッファ12(FIFOI_a,FIFOI_b)の蓄積データ量−入力開始基準値)が大きい系統のパイプラインを選択する。
In addition, the
(実施の形態3)
本発明の実施の形態3に係る画像処理プロセッサは、複数の系統のパイプラインのすべてを常に動作させる構成ではなく、常に動作させる系統のパイプラインと、一時的に動作させる系統のパイプラインとが混在する構成である。なお、本発明の実施の形態3に係る画像処理プロセッサは、実施の形態1に係る画像処理プロセッサ5の構成と同じであるため、同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 3)
The image processor according to the third embodiment of the present invention is not configured to always operate all of a plurality of pipelines, but includes a pipeline that is always operated and a pipeline that is temporarily operated. It is a mixed configuration. The image processor according to the third embodiment of the present invention is the same as the configuration of the
画像処理プロセッサ5は、一時的に動作させる系統のパイプラインが混在している場合、動作モードを変更して、使用する系統のパイプラインのみ動作させて、時分割実行ユニット50dの動作クロックを下げることで、消費電力を削減している。
When the pipelines of the system to be temporarily operated are mixed, the
具体的に、画像処理コントローラ6は、動作モードを選択する機能を持たせてあり、たとえば、“通常モード”ではa系統のパイプラインのみ動作させておき、“並列処理モード”ではb系統のパイプラインも同時に動作させる。
Specifically, the
図7は、本発明の実施の形態3に係る画像処理プロセッサの動作を説明するためのタイミングチャートである。図7には、a系統のパイプラインの動作、b系統のパイプラインの動作、動作モードが図示してある。さらに、図7には、a系統のパイプラインの1段目における外部入力データ、バッファ12(FIFOI_a)の読出(read)、バッファ12(FIFOO_a)への書込(write)、a系統のパイプラインの2段目における外部入力データが図示してある。同様に、図7には、b系統のパイプラインの1段目における外部入力データ、バッファ12(FIFOI_b)の読出(read)、バッファ12(FIFOO_b)への書込(write)、b系統のパイプラインの2段目における外部入力データが図示してある。また、図7には、入力セレクタ14が選択している系統、および出力セレクタ15が選択している系統も図示してある。
FIG. 7 is a timing chart for explaining the operation of the image processor according to the third embodiment of the present invention. FIG. 7 illustrates the operation of the a system pipeline, the operation of the b system pipeline, and the operation mode. Further, FIG. 7 shows external input data in the first stage of the a-system pipeline, reading (read) of the buffer 12 (FIFOI_a), writing to the buffer 12 (FIFO_a) (write), and the a-system pipeline. The external input data in the second stage is shown. Similarly, FIG. 7 shows external input data in the first stage of the b-system pipeline, reading (read) of the buffer 12 (FIFOI_b), writing to the buffer 12 (FIFO_b) (write), and b-system pipes. External input data in the second stage of the line is shown. FIG. 7 also shows the system selected by the
動作モードが“通常モード”の「a専用」から“並列処理モード”の「a,b時分割」へモード切替わると、a系統のパイプラインの動作、およびb系統のパイプラインの動作がともにオン状態となる。b系統のパイプラインの動作がオン状態となると、b系統のパイプラインの1段目における外部入力データ「1」が入力された立下りで、入力セレクタ14が選択している系統がa系統からb系統に切替わる。そのため、バッファ12(FIFOI_b)から外部入力データ「1」が読出され、読出された外部入力データ「1」が、演算ユニット50aで演算処理される。演算ユニット50aで演算処理された外部入力データ「1」が出力されるタイミングで、出力セレクタ15が選択している系統がa系統からb系統に切替わり、バッファ12(FIFOO_b)に演算処理された外部入力データ「1」が書込まれる。バッファ12(FIFOO_b)に書込まれた外部入力データ「1」は、b系統のパイプラインの2段目における外部入力データとして出力される。
When the mode is switched from “normal mode” “dedicated to a” to “parallel processing mode” “a, b time division”, the operation of the a system pipeline and the operation of the b system pipeline are both Turns on. When the operation of the b-system pipeline is turned on, the system selected by the
なお、動作モードが“通常モード”の「a専用」のとき、演算ユニット50aは時分割で演算処理する必要がないので、LTG9は、基準TG8のタイミングクロックと同周期の動作クロックを出力する。
When the operation mode is “normal mode” “dedicated to a”, the
画像処理コントローラ6は、マイクロコンピュータ7から入力される動作モード選択信号に基づいて、動作モードが変更される。画像処理コントローラ6は、並列処理モード”の動作モード選択信号が入力された場合、LTG9にクロック制御信号を出力する。LTG9は、画像処理コントローラ6からのクロック制御信号に基づき、基準TG8で生成されたタイミングを元に、基準TG8より速い周期のクロック信号を生成する。
The
以上のように、本発明の実施の形態3に係る画像処理プロセッサ5は、動作モードを変更して、停止している系統のパイプラインを動作させるので、使用する系統のパイプラインのみ動作させて、時分割実行ユニット50dの動作クロックを下げることができ、消費電力を削減することができる。
As described above, the
(実施の形態4)
本発明の実施の形態4に係る画像処理プロセッサは、時分割実行ユニットの前後でパイプラインを動作させる速度(クロック)に速度差を持たせる構成である。図8は、本発明の実施の形態4に係る画像処理プロセッサの構成を示す概略図である。図8に示す画像処理プロセッサ5aは、a系統およびb系統基準TG8に加えてa系統およびb系統調整TG19、調整LTG20を備えている以外、図5に示す画像処理プロセッサ5の構成と同じである。そのため、本発明の実施の形態4に係る画像処理プロセッサ5aは、実施の形態1に係る画像処理プロセッサ5と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 4)
The image processor according to the fourth embodiment of the present invention is configured to give a speed difference to the speed (clock) at which the pipeline is operated before and after the time division execution unit. FIG. 8 is a schematic diagram showing a configuration of an image processor according to
バッファ12(FIFOO_a,FIFOO_b)の出力側、および演算ユニット50b,50cは、図5に示す画像処理プロセッサ5と同様に、a系統およびb系統基準TG8で生成したクロック信号に基づいて駆動される。しかし、バッファ12(FIFOI_a,FIFOI_b)の入力側は、a系統およびb系統調整TG19で生成したクロック信号に基づいて駆動され、バッファ12(FIFOI_a,FIFOI_b)の出力側からバッファ12(FIFOO_a,FIFOO_b)の入力側までの間は、調整LTG20で生成したクロック信号に基づいて駆動される。
The output side of the buffer 12 (FIFO_a, FIFOO_b) and the
そのため、画像処理プロセッサ5aは、バッファ12(FIFOI_a,FIFOI_b)およびバッファ12(FIFOO_a,FIFOO_b)に適切なデータ量が蓄積されるように、時分割実行ユニット50dの前後でパイプラインを動作させるクロックを動的に変化させることができる。
Therefore, the
図5に示す画像処理プロセッサ5では、系統ごとにパイプラインの動作初期段階では、バッファ12(FIFOI_a,FIFOI_b)およびバッファ12(FIFOO_a,FIFOO_b)に適切なデータ量が蓄積されるまで出力せず、所定の遅延時間待って出力を開始することでバッファ12(FIFOI_a,FIFOI_b)およびバッファ12(FIFOO_a,FIFOO_b)に蓄積されたデータ量を調整していた。
The
しかし、画像処理プロセッサ5aでは、パイプラインの動作中にバッファ12(FIFOO_a,FIFOO_b)に蓄積されたデータ量を調整し、時分割実行ユニット50dからの画像データの出力速度を一定に保つために、時分割実行ユニット50dの前後でパイプラインを動作させるクロックを動的に変化させる必要がある。そこで、画像処理プロセッサ5aは、時分割実行ユニット50dの前側であるバッファ12(FIFOI_a,FIFOI_b)の入力側を、時分割実行ユニット50dの後側であるバッファ12(FIFOO_a,FIFOO_b)の出力側と異なるa系統およびb系統調整TG19で生成したクロック信号に基づいて駆動している。また、画像処理プロセッサ5aは、時分割実行ユニット50d内にあたるバッファ12(FIFOI_a,FIFOI_b)の出力側からバッファ12(FIFOO_a,FIFOO_b)の入力側までの間を、調整LTG20で生成したクロック信号に基づいて駆動している。
However, the
次に、図9は、基準TG8、調整TG19および調整LTG20の構成を示す概略図である。なお、図9(a)は、基準TG8の構成を示す概略図、図9(b)は、調整TG19の構成を示す概略図、図9(c)は、調整LTG20の構成を示す概略図である。また、以下では、a系統基準TG8、a系統調整TG19およびa系統調整LTG20について説明するが、b系統基準TG8、b系統調整TG19およびb系統調整LTG20も同じ構成となるので詳細な説明を繰返さない。
Next, FIG. 9 is a schematic diagram showing configurations of the reference TG8, the adjustment TG19, and the adjustment LTG20. 9A is a schematic diagram illustrating the configuration of the
図9(a)に示すa系統基準TG8は、タイミング信号生成の基準となるクロック信号clk_aが入力される画像タイミング生成部80を有している。画像タイミング生成部80は、入力されるクロック信号clk_aをカウントして、画像転送用フォーマットに従った図2に示すようなタイミング信号を生成し、出力する。
The a system reference TG8 illustrated in FIG. 9A includes an image
図9(b)に示すa系統調整TG19は、カウンタ91、比較器92、セレクタ93、および画像タイミング生成部94を有している。a系統調整TG19は、a系統基準TG8の機能を拡張した構成で、タイミング信号生成の基準となるクロック信号clk_aの他に、クロック信号clk_aより周期の速いクロック信号clk_fastと、クロック信号clk_aより周期の遅いクロック信号clk_slowとがカウンタ91に入力される。
The a
図10は、本発明の実施の形態4に係る画像処理プロセッサ5aのa系統調整TG19で処理される信号の波形を示すタイミングチャートである。図10には、クロック信号clk_fast、クロック信号clk_a、クロック信号clk_slow、画像タイミング生成部94の状態を示すカウンタEn、コントローラクロック制御信号、およびクロック信号clk_blendが図示してある。
FIG. 10 is a timing chart showing waveforms of signals processed by the a
画像処理コントローラ6は、バッファ12(FIFOI_a,FIFOI_b)に蓄積された画像データの量がある基準値に比べて不足し、クロックを変更する必要があると判断した場合、比較器92にコントローラクロック制御信号を出力する。a系統調整TG19は、コントローラクロック制御信号が入力されると、カウンタEnがオン状態となる。
When the
比較器92は、コントローラクロック制御信号が正の値であれば、クロック信号clk_fastへセレクタ93を切替え、コントローラクロック制御信号が負の値であれば、クロック信号clk_slowへセレクタ93を切替える。 The comparator 92 switches the selector 93 to the clock signal clk_fast if the controller clock control signal is a positive value, and switches the selector 93 to the clock signal clk_slow if the controller clock control signal is a negative value.
画像タイミング生成部94は、セレクタ93を介して入力されるクロック信号clk_blend(クロック信号clk_fast、クロック信号clk_a、クロック信号clk_slowのいずれか1つのクロック信号)をカウントして、画像転送用フォーマットに従ったタイミング信号を生成し、出力する。 The image timing generation unit 94 counts the clock signal clk_blend (any one clock signal of the clock signal clk_fast, the clock signal clk_a, and the clock signal clk_slow) input via the selector 93 and follows the image transfer format. Generate and output timing signals.
なお、a系統調整TG19は、クロック信号clk_fastのカウント値と、クロック信号clk_aのカウント値との差がコントローラクロック制御信号の値となったとき、クロック信号clk_aへセレクタ93を戻す。具体的に、a系統調整TG19は、図10に示すように、コントローラクロック制御信号の値が+5の場合、クロック信号clk_fastへセレクタ93を切替え、クロック信号clk_aのカウント値との差が+5となったとき、クロック信号clk_aへセレクタ93を戻す。
The a
また、a系統調整TG19は、クロック信号clk_slowのカウント値と、クロック信号clk_aのカウント値との差がコントローラクロック制御信号の値となったときも、クロック信号clk_aへセレクタ93を戻す。
The a
a系統調整LTG20は、2系統のパイプラインに対して複合動作するため、LTG9と同様に、クロック信号clk_aとクロック信号clk_bとの和相当の周波数で動作することに加え、和以上の速度を保証し、和に近い周波数で出力するためのクロック生成機能を備えている。
Since the
図9(c)に示すa系統調整LTG20は、カウンタ201、PLL(Phase-locked loop)回路202、比較器203、および画像タイミング生成部204を有している。カウンタ201は、クロック信号clk_aおよびクロック信号clk_bの周期数をカウントする。比較器203は、クロック信号clk_aとクロック信号clk_bとの周期数の和とPLL回路202の周期数カウントを比較して、修正値を計算し、PLL回路202の分周設定値を変更する。なお、比較器203は、クロック信号clk_aとクロック信号clk_bとの周期数の和とPLL回路202の周期数カウントを比較する際、コントローラクロック制御信号の値を考慮してもよい。a系統調整LTG20は、カウント単位で上記の処理を繰り返し、PLL回路202から出力するクロック信号clk_blendを、目標出力(=クロック信号clk_a+クロック信号clk_b+周波数マージンW)に追従するように制御してある。
The a
画像タイミング生成部204は、PLL回路202から出力するクロック信号clk_blendをカウントして、画像転送用フォーマットに従ったタイミング信号を生成し、出力する。
The image
以上のように、本発明の実施の形態4に係る画像処理プロセッサ5aは、時分割実行ユニット50dの前後でパイプラインを動作させる速度(クロック)に速度差を持たせているので、バッファ12(FIFOI_a,FIFOI_b)およびバッファ12(FIFOO_a,FIFOO_b)に蓄積されるデータ量を適切に調整することができる。
As described above, the
(実施の形態5)
本発明の実施の形態5に係る画像処理プロセッサは、各系統のパイプラインでの演算処理がある基準のクロック信号にしたがって動作するのではなく、演算ユニット間で送受信される要求信号および応答信号に基づき画像データの転送タイミングを決定する非同期型である。
(Embodiment 5)
The image processor according to the fifth embodiment of the present invention does not operate in accordance with a reference clock signal having an arithmetic process in each system pipeline, but generates a request signal and a response signal transmitted and received between the arithmetic units. It is an asynchronous type that determines the transfer timing of image data based on it.
図11は、本発明の実施の形態5に係る画像処理プロセッサの構成を示す概略図である。図11に示す画像処理プロセッサ5bは、a系統およびb系統基準TG8に加えて演算基準TG17を備えている以外、図5に示す画像処理プロセッサ5の構成と同じである。そのため、本発明の実施の形態5に係る画像処理プロセッサ5bは、実施の形態1に係る画像処理プロセッサ5と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
FIG. 11 is a schematic diagram showing a configuration of an image processor according to the fifth embodiment of the present invention. The
画像処理プロセッサ5bは、各系統のパイプラインでの演算処理が非同期では各演算ユニット50a,50b,50cが非同期の転送時間で動作している。そして、画像処理プロセッサ5bは、外部からパイプラインへ画像データを入力する転送タイミングを決定するクロック信号を生成するために、a系統およびb系統基準TG8を備えている。さらに、画像処理プロセッサ5bは、パイプラインから外部へ画像データを出力する転送タイミングを決定するクロック信号を生成するために、演算基準TG17を備えている。
In the
演算ユニット50bから画像データの入力を要求する外部出力要求信号aが画像処理コントローラ6に入力されると、画像処理コントローラ6は、外部入力要求信号aをa系統基準TG8に出力する。画像処理プロセッサ5bは、a系統基準TG8で生成されるクロック信号に基づき、図示していない画像メモリから時分割実行ユニット50dのバッファ12(FIFOI_a)に、画像データを供給する。a系統基準TG8は、外部入力応答信号a及び、外部入力同期信号aを画像処理コントローラ6に出力する。
When an external output request signal a requesting input of image data from the
画像処理コントローラ6は、a系統基準TG8から外部入力応答信号aが入力されると、演算ユニット50bから入力された外部出力要求信号aを消し、a系統基準TG8から入力された外部入力同期信号aを、外部出力応答信号aとともに演算ユニット50bに出力する。
When the external input response signal a is input from the a system reference TG8, the
演算ユニット50bは、バッファ12(FIFOO_a)から出力された画像データを、入力された外部入力同期信号aと演算基準TG17とのタイミングに基づき演算処理を行なう。
The
画像処理プロセッサ5bは、安定動作するために、バッファ12(FIFOI_a)の入力側を駆動するa系統およびb系統基準TG8が生成するクロック信号よりも、バッファ12(FIFOO_a)の出力側および演算ユニット50b,50cを駆動する演算基準TG17が生成するクロック信号の方の周期を速くする必要がある。なお、LTG9は、演算基準TG17で生成したクロック信号に基づいて、時分割実行ユニット50dを時分割で演算処理させる。
For stable operation, the
以上のように、本発明の実施の形態5に係る画像処理プロセッサ5bは、演算ユニット50a,50b,50c間で送受信される外部入力または外部出力要求信号、および外部入力または外部出力応答信号に基づき画像データの転送タイミングを決定するので、演算ユニット50a,50b,50cの現実の動作にあわせて、安定した駆動を行なうことが可能となる。
As described above, the
(実施の形態6)
図12は、本発明の実施の形態6に係る時分割実行ユニットの構成を示す概略図である。図12に示す時分割実行ユニット50dは、バッファ12(FIFOI_a)と入力セレクタ14との間に拡張記憶部18を備えている以外、図4に示す時分割実行ユニット50dの構成と同じである。そのため、本発明の実施の形態6に係る時分割実行ユニット50dは、実施の形態1に係る時分割実行ユニット50dと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 6)
FIG. 12 is a schematic diagram showing a configuration of a time division execution unit according to
演算ユニット50aが画像データから所定のデータをフィルタする演算処理の場合、演算ユニット50aは、たとえば、サイクルごと3ライン分の画像データを取込み、演算処理する必要がある。
When the
しかし、バッファ12(FIFOI_a,FIFOI_b)は、1ライン分の画像データを保持するだけで、3ライン分の画像データを保持することはできない。そこで、図4に示す時分割実行ユニット50dは、1ライン分の画像データを保持するラインバッファを2つ有する拡張記憶部18を備えている。
However, the buffer 12 (FIFOI_a, FIFOI_b) only holds image data for one line and cannot hold image data for three lines. Therefore, the time
図4に示す時分割実行ユニット50dは、拡張記憶部18を備えているので、バッファ12(FIFOI_a,FIFOI_b)とあわせて、3ライン分の画像データを保持し、演算ユニット50aに供給することができる。拡張記憶部18は、複数のラインバッファを直列に接続し、過去に依存する画像データを繰り返し利用することができる。また、系統ごとに、バッファ12(FIFOI_a,FIFOI_b)と入力セレクタ14との間に拡張記憶部18を接続してある。
Since the time
以上のように、本発明の実施の形態6に係る時分割実行ユニット50dは、3ライン分の画像データを演算ユニット50aで1度に処理することができるので、演算ユニット50aを複数搭載したパイプラインと等価の動作を実現することができる。
As described above, the time
(実施の形態7)
図13は、本発明の実施の形態7に係る時分割実行ユニットの構成を示す概略図である。図13に示す時分割実行ユニット50dは、単一の演算ユニット50aに代えて複数の演算ユニット50aを直列接続した構成以外、図4に示す時分割実行ユニット50dの構成と同じである。そのため、本発明の実施の形態7に係る時分割実行ユニット50dは、実施の形態1に係る時分割実行ユニット50dと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 7)
FIG. 13 is a schematic diagram showing a configuration of a time division execution unit according to Embodiment 7 of the present invention. The time
図4に示す時分割実行ユニット50dは、入力セレクタ14と出力セレクタ15との間に演算ユニット50a1と演算ユニット50a2とを直列に接続してある。そのため、画像データの輝度を変換する演算ユニット50a1と、画像データから所定のデータをフィルタする演算ユニット50a2とを時分割で演算処理させることができる。
In the time
以上のように、本発明の実施の形態7に係る時分割実行ユニット50dは、入力セレクタ14と出力セレクタ15との間に複数の演算ユニット50aを直列接続した構成にすることができるので、重複する演算ユニットの組込みをさらに減らし、回路規模を縮小することができる。
As described above, the time
(実施の形態8)
図14は、本発明の実施の形態8に係る時分割実行ユニットの構成を示す概略図である。図14に示す時分割実行ユニット50dは、a系統およびb系統の2系統のみからなるパイプラインを有する構成はなく、n系統(n≧2)からなるパイプラインを有する構成である。なお、本発明の実施の形態8に係る時分割実行ユニット50dは、実施の形態1に係る時分割実行ユニット50dと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 8)
FIG. 14 is a schematic diagram showing a configuration of a time division execution unit according to the eighth embodiment of the present invention. The time
図14に示す時分割実行ユニット50dは、n系統(n≧2)からなるパイプラインを有しているので、入力セレクタ14の前段にn個のバッファ12(FIFO)、出力セレクタ15の後段にn個のバッファ12(FIFO)を備えている。
The time
以上のように、本発明の実施の形態8に係る時分割実行ユニット50dは、n系統(n≧2)からなるパイプラインを有する構成であるため、重複する演算ユニットの組込みをさらに減らし、回路規模を縮小することができる。
As described above, the time
(実施の形態9)
図15は、本発明の実施の形態9に係る時分割実行ユニットの構成を示す概略図である。図15に示す時分割実行ユニット50dは、2つのLUT(ルックアップテーブル)152と、LUT152を切替える切替セレクタ151とを備える構成以外、図4に示す時分割実行ユニット50dの構成と同じである。そのため、本発明の実施の形態9に係る時分割実行ユニット50dは、実施の形態1に係る時分割実行ユニット50dと同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 9)
FIG. 15 is a schematic diagram showing a configuration of a time division execution unit according to
図15に示す時分割実行ユニット50dは、系統ごとにLUT152を切替え、演算ユニット50aの設定を書替えて、演算処理を実行する。
The time
系統が切替わった後、演算ユニット50aは、別の系統の演算処理を実行するための設定を行なうタイミングで、LUT152に保管してある設定パラメータをLUT152から演算ユニット50aに転送する。そのため、演算ユニット50aは、各系統の演算処理ごとに設定パラメータが書替わり、系統ごとに異なる設定の演算処理を行なうことができる。
After the system is switched, the
以上のように、本発明の実施の形態9に係る時分割実行ユニット50dは、2つのLUT152と、LUT152を切替える切替セレクタ151とを備えているので、系統ごと演算ユニット50aで最適な演算処理を行なうことができる。
As described above, the time
(実施の形態10)
図16は、本発明の実施の形態10に係る画像処理プロセッサの構成を示す概略図である。図16に示す画像処理プロセッサ5cは、a系統のパイプラインと、b系統のパイプラインとが等価的に並列に接続してある構成ではなく、a系統のパイプラインと、b系統のパイプラインとを1つのパイプラインとして直列に接続した構成である。なお、本発明の実施の形態10に係る画像処理プロセッサ5cは、実施の形態1に係る画像処理プロセッサ5と同じ構成要素について同じ符号を付して、詳細な説明を繰返さない。
(Embodiment 10)
FIG. 16 is a schematic diagram showing a configuration of an image processor according to the tenth embodiment of the present invention. The
図16(a)に示すパイプラインで演算処理する演算ユニット50の処理順は、画像データの輝度を変換する演算ユニット“1”、画像データから所定のデータをフィルタする演算ユニット“2”、画像データに対してガンマ補正を行なう演算ユニット“3”、画像データの輝度を変換する演算ユニット“4”の順である。
The processing order of the
そのため、図16に示す画像処理プロセッサ5cは、入力セレクタ14と出力セレクタ15との間に、画像データの輝度を変換する演算ユニット(“2”,“4”)50fを備えている。そして、画像処理プロセッサ5cにおけるa系統のパイプラインの前段に演算ユニット(“1”)50eを、a系統のパイプラインの後段、かつb系統のパイプラインの前段に演算ユニット(“3”)50gを備えている。
For this reason, the
以上のように、本発明の実施の形態10に係る画像処理プロセッサ5cは、a系統のパイプラインと、b系統のパイプラインとを1つのパイプラインとして直列に接続した構成であるので、複数の演算ユニットをさまざまな構成に組合わせて、演算処理を実行することができる。
As described above, the
なお、本発明に係る画像処理プロセッサは、画像データをパイプライン演算方式にて演算処理を実行するパイプライン演算装置について説明したが、本発明はこれに限定されるもではない。本発明は、入力データをパイプライン演算方式にて演算処理を実行するパイプライン演算装置であれば、いずれの情報処理プロセッサにも適用することができる。 In addition, although the image processing processor according to the present invention has been described with respect to a pipeline arithmetic device that performs arithmetic processing on image data by a pipeline arithmetic method, the present invention is not limited to this. The present invention can be applied to any information processing processor as long as it is a pipeline arithmetic device that performs arithmetic processing on input data by a pipeline arithmetic method.
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1 画像出力部、2 画像入力部、3 表示装置、4 画像メモリ、5 画像処理プロセッサ、6 画像コントローラ、7 マイクロコンピュータ、8 基準TG、9 LTG、10 入力インタフェイス、11 出力インタフェイス、12 バッファ、13 遅延器、14 入力セレクタ、15 出力セレクタ、16 割込みコントローラ、17 演算基準TG、18 拡張記憶部、19 調整TG、20 調整LTG。 1 image output unit, 2 image input unit, 3 display device, 4 image memory, 5 image processor, 6 image controller, 7 microcomputer, 8 reference TG, 9 LTG, 10 input interface, 11 output interface, 12 buffer , 13 delay unit, 14 input selector, 15 output selector, 16 interrupt controller, 17 calculation reference TG, 18 extended storage unit, 19 adjustment TG, 20 adjustment LTG.
Claims (7)
複数の前記演算ユニットのうち、複数のパイプラインで重複して演算処理を行なう少なくとも1つの前記演算ユニットの前段に接続され、演算処理を行なう前記入力データを選択して入力する入力セレクタと、
複数の前記演算ユニットのうち、複数の前記パイプラインで重複して演算処理を行なう少なくとも1つの前記演算ユニットの後段に接続され、演算処理を行なった前記入力データの出力先を選択する出力セレクタと、
前記入力セレクタの前段、および前記出力セレクタの後段にそれぞれ接続され、前記入力データ、および演算処理を行なった前記入力データを一時的に保持するバッファと、
前記入力セレクタと前記出力セレクタとの間に接続された少なくとも1つの前記演算ユニットの動作クロックを、他の前記演算ユニットを動作させる基準クロックよりも高速になるように制御する制御部と
を備え、
前記入力セレクタと前記出力セレクタとの間に接続された少なくとも1つの前記演算ユニットが、前記パイプラインごとに時分割で演算処理を行なうパイプライン演算装置。 A plurality of arithmetic units that perform arithmetic processing on input data by a pipeline arithmetic method;
An input selector that is connected to a preceding stage of at least one arithmetic unit that performs arithmetic processing redundantly in a plurality of pipelines among the plurality of arithmetic units, and that selects and inputs the input data for arithmetic processing;
An output selector that is connected to a subsequent stage of at least one arithmetic unit that performs arithmetic processing in a plurality of pipelines among the plurality of arithmetic units, and that selects an output destination of the input data that has undergone arithmetic processing; ,
A buffer that is connected to a preceding stage of the input selector and a subsequent stage of the output selector, and temporarily holds the input data and the input data that has undergone arithmetic processing;
A control unit that controls an operation clock of at least one of the arithmetic units connected between the input selector and the output selector so as to be faster than a reference clock for operating the other arithmetic units;
A pipeline arithmetic device in which at least one arithmetic unit connected between the input selector and the output selector performs arithmetic processing in a time division manner for each pipeline.
前記出力セレクタは、前記記憶部に記憶した前記遅延時間に基づいて出力先を選択する、請求項1〜請求項3のいずれか1項に記載のパイプライン演算装置。 The control unit includes a storage unit that stores history information including a delay time from selection of the input data by the input selector to selection of an output destination by the output selector,
The pipeline operation device according to any one of claims 1 to 3, wherein the output selector selects an output destination based on the delay time stored in the storage unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2011141459A JP2013008265A (en) | 2011-06-27 | 2011-06-27 | Pipeline arithmetic device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2011141459A JP2013008265A (en) | 2011-06-27 | 2011-06-27 | Pipeline arithmetic device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2013008265A true JP2013008265A (en) | 2013-01-10 |
Family
ID=47675547
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2011141459A Withdrawn JP2013008265A (en) | 2011-06-27 | 2011-06-27 | Pipeline arithmetic device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2013008265A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015072583A (en) * | 2013-10-02 | 2015-04-16 | オリンパス株式会社 | Image processing apparatus, image processing method, and imaging apparatus |
| JP2015207101A (en) * | 2014-04-18 | 2015-11-19 | 株式会社リコー | Accelerator circuit and image processor |
| WO2025169698A1 (en) * | 2024-02-08 | 2025-08-14 | ソニーセミコンダクタソリューションズ株式会社 | Image processing device, driving method, and recording medium |
-
2011
- 2011-06-27 JP JP2011141459A patent/JP2013008265A/en not_active Withdrawn
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015072583A (en) * | 2013-10-02 | 2015-04-16 | オリンパス株式会社 | Image processing apparatus, image processing method, and imaging apparatus |
| JP2015207101A (en) * | 2014-04-18 | 2015-11-19 | 株式会社リコー | Accelerator circuit and image processor |
| WO2025169698A1 (en) * | 2024-02-08 | 2025-08-14 | ソニーセミコンダクタソリューションズ株式会社 | Image processing device, driving method, and recording medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN114902325B (en) | Variable refresh rate control using PWM aligned frame period | |
| US9495926B2 (en) | Variable frame refresh rate | |
| JP5185697B2 (en) | Display device, display panel driver, display panel drive method, and image data supply method to display panel driver | |
| JP2010027032A (en) | Fifo device and method of storing data in fifo buffer | |
| US20120249565A1 (en) | Signal processing circuit, signal processing method, and display apparatus | |
| CN115240578A (en) | Method and device for seamless switching between command mode and video mode and display device | |
| US8578074B2 (en) | First in first out device and method thereof | |
| JP6480226B2 (en) | Skew adjustment device | |
| US20170323419A1 (en) | Systems and methods for time shifting tasks | |
| JP2007133527A (en) | Clock signal generation circuit, semiconductor integrated circuit, and frequency division ratio control method | |
| JP2013008265A (en) | Pipeline arithmetic device | |
| US10013046B2 (en) | Power management techniques | |
| JP2005338619A (en) | Dot clock synchronous generating circuit | |
| CN102902648A (en) | A DMA-based GPIO module capable of flashing LED displays | |
| US8363766B2 (en) | Device and method of synchronizing signals | |
| JP6512640B1 (en) | Asynchronous FIFO circuit | |
| JPH1127229A (en) | Frame aligner circuit | |
| CN110034768B (en) | Delay buffer circuit with adaptive time shift | |
| US20230118079A1 (en) | Display cycle control system | |
| TWI581247B (en) | Display device and control method thereof | |
| JP2001331157A (en) | Video signal converter | |
| JP2011150255A (en) | Drive circuit | |
| CN115083363B (en) | Time sequence signal generating device and method, screen logic board and liquid crystal display device | |
| JP5126010B2 (en) | Memory access control circuit and image processing apparatus | |
| JP4825929B2 (en) | Video signal converter |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140902 |