JP4203480B2 - 画像処理プロセッサ - Google Patents

画像処理プロセッサ Download PDF

Info

Publication number
JP4203480B2
JP4203480B2 JP2005052323A JP2005052323A JP4203480B2 JP 4203480 B2 JP4203480 B2 JP 4203480B2 JP 2005052323 A JP2005052323 A JP 2005052323A JP 2005052323 A JP2005052323 A JP 2005052323A JP 4203480 B2 JP4203480 B2 JP 4203480B2
Authority
JP
Japan
Prior art keywords
dedicated
common
register
data
processing
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.)
Expired - Fee Related
Application number
JP2005052323A
Other languages
English (en)
Other versions
JP2006236175A (ja
Inventor
正治 今井
龍洋 吉村
幸司 蟹江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Axell Corp
Original Assignee
Axell Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Axell Corp filed Critical Axell Corp
Priority to JP2005052323A priority Critical patent/JP4203480B2/ja
Publication of JP2006236175A publication Critical patent/JP2006236175A/ja
Application granted granted Critical
Publication of JP4203480B2 publication Critical patent/JP4203480B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Description

本発明は、画像データを入力とした画像処理を実行する画像処理プロセッサに関する。
近年の画像処理技術の向上により、リアルタイムで生成される画像において、様々な効果を引き出すために、画像データの加工技術の多様化が進んでいる。例えば、特許文献1には、入力された命令およびデータに基づいて所定の画像処理を行う汎用処理ユニットのみならず、少なくとも一つの専用処理ユニットをも備えた画像処理プロセッサが開示されている。専用処理ユニットは、透視変換/光源処理、セットアップ/DDA処理またはフラグメント処理といったように、予め定められた所定の画像処理のみを行う。
特開2003−108989号公報
本発明の目的は、画像処理の高速化を図り得る新規な画像処理プロセッサを提供することである。
かかる課題を解決するために、第1の発明は、画像処理プロセッサを提供する。この画像処理プロセッサは、複数の色成分について共通で用いられる共通処理ユニットと、複数の色成分のそれぞれに対応して色成分毎に専用で用いられる複数の専用処理ユニットと、制御部とを有する。共通処理ユニットは、共通演算部と、共通レジスタとを有する。それぞれの専用処理ユニットは、専用演算回路と、専用レジスタとを有し、各色成分の処理を並行的に実行する。制御部は、共通処理ユニットと、複数の専用処理ユニットとを制御する。また、制御部は、共通処理ユニットから複数の専用処理ユニットへのデータ転送と、複数の専用処理ユニットから共通処理ユニットへのデータ転送とを制御する。共通レジスタには、共通演算部から出力されたデータおよび専用処理ユニットから出力されたデータのいずれかが格納される。専用レジスタには、この専用レジスタに対応する専用演算回路から出力されたデータが格納される。制御部は、専用レジスタに格納されたデータを、この専用レジスタに対応する専用演算回路および共通処理ユニットのいずれかに出力させる。
第2の発明は、画像処理手順を規定する一連の命令に基づいて、画像処理を実行する画像処理プロセッサを提供する。この画像処理プロセッサは、複数の色成分について共通で用いられる共通処理ユニットと、複数の色成分のそれぞれに対応して色成分毎に専用で用いられる複数の専用処理ユニットと、制御部とを有する。共通処理ユニットは、共通演算部と、共通レジスタとを有する。それぞれの専用処理ユニットは、専用演算回路と、専用レジスタとを有し、各色成分の処理を並行的に実行する。制御部は、共通処理ユニットと、複数の専用処理ユニットとを制御する。また、制御部は、共通処理ユニットから複数の専用処理ユニットへのデータ転送と、複数の専用処理ユニットから共通処理ユニットへのデータ転送とを制御する。共通レジスタには、共通演算部から出力されたデータおよび専用処理ユニットから出力されたデータのいずれかが格納される。専用レジスタには、この専用レジスタに対応する専用演算回路から出力されたデータが格納される。制御部は、各色成分の演算を実行する第1の命令に応じて、専用レジスタに格納されたデータをこの専用レジスタに対応する専用演算回路の入力とした演算を並行的に実行させる。また、制御部は、各色成分のデータを出力する第2の命令に応じて、専用レジスタのそれぞれに格納されたデータを共通処理ユニットに一括で出力させる。
ここで、第2の発明において、制御部は、各色成分のデータを所定値に設定する第3の命令に応じて、専用レジスタのそれぞれに格納されたデータを所定値に一括で設定することが好ましい。
第1または第2の発明において、共通レジスタは、ビット幅nの記憶領域を有するとともに、専用レジスタは、画像データを構成する画素値の各色成分のビット幅よりも大きなビット幅を有する中間データを格納するために、共通レジスタよりも大きなビット幅m(m>n)の記憶領域を有することが好ましい。その際、専用レジスタに格納されたデータを共通処理ユニットに出力する場合には、このデータをビット幅mからビット幅nに整数化することが望ましい。
本発明によれば、共通処理ユニットに加え、色成分ごとに個別に設けられた複数の専用処理ユニットを設けることで、共通処理ユニットのみを用いた処理と比較して、画像処理の高速化を図ることができる。
また、専用処理ユニットに専用レジスタを内蔵し、自己の演算回路による処理結果を専用レジスタに格納することで、専用処理ユニット外のレジスタの使用頻度を減らすことができるので、画像処理の高速化を図ることができる。
図1は、本実施形態に係る画像処理プロセッサ1の概略的なブロック構成図である。画像処理プロセッサ1は、例えばフレームメモリ2に格納されている画素値(輝度を示すRGBデータと透明度を示すαデータとを含む)を入力として、画像データに対する演算が必要な画像処理を実行する。なお、この画像処理プロセッサ1の特徴は、画像処理演算部5の構成にあり、それ以外については一般的な構成を有する。
画像処理プロセッサ1は、制御部3と、命令格納部4(例えばレジスタ)と、画像処理演算部5とから構成されている。制御部3は、命令格納部4にアクセスし、個々に格納されている一連の命令(画像処理の手順を規定)にしたがって、画像処理演算部5を制御する。
画像処理演算部5は、共通処理ユニット6と、複数の専用処理ユニット7とから構成される。共通処理ユニット6は、共通演算部6aと共通レジスタ6bとを有し、複数の色成分について共通で用いられ、ある命令に応じた処理を実行する。共通演算部6aは、制御部3からの命令に応じた処理を実行する。共通レジスタ6bは、共通演算部6aでの処理結果である出力データ、または、専用処理ユニット7での処理結果である出力データを一時的に格納する。複数の専用処理ユニット7は、複数の色成分(RGB)のそれぞれに対応して色成分毎に専用で用いられ、ある命令に応じた処理をそれぞれが並行的に実行する。
図2は、専用処理ユニット7のブロック構成図である。それぞれの色成分(RGB)に対応した各専用処理ユニット7は、専用加算器7aおよび専用乗算器7bの双方を含む専用演算回路と、専用セレクタ7cと、専用レジスタ7dとから構成されている。専用セレクタ7cは、専用加算器7aから出力されたデータ、専用乗算器7bから出力されたデータおよび前記共通ユニットから転送されたデータのいずれかを後段の専用レジスタ7dに出力し、格納する。制御部3は、この専用レジスタ7dに格納されたデータを専用演算回路への入力としてフィードバックし、または、この格納されたデータを共通処理ユニット6に出力する。
それぞれの専用処理ユニット7は、画素値を構成する各色成分本来のビット幅(nビット)よりも大きなビット幅(mビット:m>n)を有する中間データを処理対象としている。そのため、専用処理ユニット7に設けられた専用レジスタ7dは、この中間データを格納すべく、少なくともmビット幅の記憶領域を有する。本実施形態において、共通レジスタのビット幅は各色成分それぞれ8ビット(n=8)であり、専用レジスタ7dのビット幅は各色成分それぞれ32ビット(m=32)である。
つぎに、命令格納部4に格納される各種命令(コマンド)のうち、本実施形態に固有の命令である専用命令について詳述する。以下は、説明を簡略化すべく、フレームメモリ2の画像データは、共通レジスタ6bに既に転送・格納されているものとする。
[データ設定命令(rgbset)]
図3は、データ設定命令(rgbset)の説明図である。この命令(rgbset)は、各専用レジスタ7dの値を所定の値に一括かつ画一的に設定する命令である。具体的には、命令中の引数が設定値として専用レジスタ7dに格納される。例えば、命令「rgbset 0」、すなわち、この命令に記述された設定値が「0」(初期化)の場合、RGBそれぞれの専用レジスタ7dの値が全て「0」に設定される。
[加減算命令(rgbadd)]
図4は、加減算命令(rgbadd)の説明図である。この命令(rgbadd)は、命令中の引数によってアドレス指定された共通レジスタ6bのRGBデータの値と、各専用レジスタ7dに格納された値との加算を同時並行的に行い、この演算結果を各専用レジスタ7dへ上書格納する命令である。具体的には、まず、命令中に記述された共通レジスタ6bの指定アドレスに格納されているRGBデータの値が各専用加算器7aに転送される。つぎに、専用加算器7aは、共通レジスタ6bより読み出された値と、専用レジスタ7dよりフィードバックされた値との加算を行う。そして、専用セレクタ7cの選択により、専用加算器7aの出力が専用レジスタ7dに転送され、元のデータに上書きされる。例えば、共通レジスタ6bのアドレスr0にRGBデータの値(R0,G0,B0)が纏めて格納され、R用の専用レジスタ7dに「Rind」、G用のそれに「Gind」、B用のそれに「Bind」がそれぞれ格納されているケースを考える。この場合、「rgbbadd r0」が実行されると、それぞれの専用レジスタ7dの値Rind,Gind,Bindは以下のように更新される。

Rind ← Rind + R0
Gind ← Gind + G0
Bind ← Bind + B0
なお、専用加算器7aは、加算のみならず減算も可能である。減算は、共通レジスタ6bに格納されている値または専用レジスタ7dに格納されている値の一方を、マイナスの値にすることによって実行される。本実施形態を実装する場合は、専用加算器7aの入力側にそれぞれの値に対するビット反転回路を設け、専用加算器7aに入力される値の一方に対するビット反転を、制御部3から制御することで実現する。なお、専用加算器7aは、このビット反転回路を含めて加減算器とみなすこともできる。
[乗除算命令(rgbmult)]
図5は、乗除算命令(rgbmult)の説明図である。この命令(rgbmult)は、専用レジスタ7dに格納されたRGBデータの値と、任意の値とで乗算を同時並行的に行い、この演算結果を専用レジスタ7dへ上書きして格納する命令である。具体的には、まず、命令中に引数として記述された指定アドレスに格納されている値が共通レジスタ6bより読み出され、これが各専用乗算器7bに転送される。つぎに、専用乗算器7bは、この共通レジスタ6bから転送された値と、専用レジスタ7dに格納された値との乗算を行う。そして、専用セレクタ7cの選択により、専用乗算器7bの出力が専用セレクタ7cに転送され、元のデータに上書きされる。例えば、共通レジスタのアドレスr0に定数Constが格納され、R用の専用レジスタ7dに「Rind」、G用のそれに「Gind」、B用のそれに「Bind」がそれぞれ格納されているケースを考える。この場合、「rgbmult r0」が実行されると、それぞれの専用レジスタ7dの値Rind,Gind,Bindは以下のように更新される。

Rind ← Rind × Const
Gind ← Gind × Const
Bind ← Bind × Const
なお、専用乗算器7bは、乗算のみならず除算も可能である。除算は、共通レジスタ6bの値が1未満の場合に実行される。本実施形態を実装する場合は、共通レジスタ6に格納されている除算したい値(例えばaとする)を、あらかじめ共通処理ユニット6で計算しておき、この計算結果の値(1/a)を乗算することで実現する。
[データ出力(rgbget)]
図6は、データ出力命令(rgbget)の説明図である。この命令(rgbget)は、専用レジスタ7dに格納されたRGBデータの各値を一括して出力し、これらの値を共通レジスタ6bにおける引数としての指定アドレスに格納する命令である。具体的には、まず、RGBそれぞれの専用レジスタ7dに格納されている値が出力され、命令中の指定アドレスにしたがって、これらの値が共通レジスタ6bへ格納される。例えば、専用レジスタ7dのそれぞれにRind,Gind,Bindが格納されていたとする。ここで、「rgbset r0」が実行されると、Rind,Gind,Bindの各値が、アドレスr0の共通レジスタ6bに纏めて同時並行的に格納される。なお、専用レジスタ7dのビット幅は、色成分ごとにそれぞれ32ビット設けられているが、共通レジスタ6bの各色成分のビット幅は、8ビットしかないので、それぞれ整数化(8ビット化)されて、共通レジスタ6bに格納される。
本実施形態に係る画像処理プロセッサ1は、上述したような固有の専用命令と、それ以外の汎用命令とを組み合わせることによって、様々な画像処理を実行可能である。以下、このような画像処理の一例について、プログラムリストを例示しながら詳述する。
(モザイク処理・ぼかし処理)
図7は、モザイク処理のプログラムリストである。モザイク処理とは、フレームメモリ2上に配置されている画像領域を所定サイズの画素ブロックに分け、その画素ブロック内で画素の平均値を算出する処理である。一例として、画像ブロックを2×2サイズとし、利用する画素値は互いに隣接する4つのアドレス(Addr1,Addr2,Addr3,Addr4)に格納されているものとする。
なお、同図のプログラムリストに記載されている命令「read」は、フレームメモリ2に格納されているRGBデータの値を、共通レジスタ6bに読み出す命令である。また、「write」は、共通レジスタ6bに格納されているRGBデータの値をフレームメモリ2に書き出す命令である。例えば、「read r0, Addr1」が読み出されると、フレームメモリ2のアドレスAddr1におけるRGBデータの値が共通レジスタ6bのr0に格納される。また、「write r0, Addr1」が読み出されると、共通レジスタ6bに格納されているRGBデータの値が、フレームメモリ2のAddr1に書き出される。
1行目の命令「rgbset 0」によって、各色成分の専用レジスタ7dが0に設定される。つぎに、2行目の命令「read r0, Addr1」によって、フレームメモリ2のアドレスAddr1に格納されているRGBデータの各値が、共通レジスタ6bのアドレスr0に転送される。3行目の命令「rgbadd r0」によって、共通レジスタ6bのアドレスr0に格納されているRGBデータの値R0,G0,B0が、色成分ごとに各専用処理ユニット7の専用加算器7aへ同時並行的にデータ転送される。転送されたこれらのデータは、専用加算器7aにおいて、各専用レジスタ7dに格納されている値と加算され、専用セレクタ7cを介して、各専用レジスタ7dへ上書きして格納される。
そして、4行目〜9行目の命令において、2〜3行目の命令と同様に、フレームメモリ2のアドレスを順次Addr2〜Addr4とシフトさせながら、各色成分の値を共通レジスタ6bに格納する。共通レジスタ6bに格納された各色成分の値は、各専用レジスタ7dの値と合算される。
10行目の命令「rgbmult 1/4」によって、各専用レジスタ7dに格納されている値が1/4で乗算(4で除算)される。11行目の命令「rgbget r0」によって、各専用レジスタ7dに格納されている値が共通レジスタ6bのアドレスr0に対して纏めて返される。最後に、12〜15行目の命令「write r0,Addrn」(n=1〜4)によって、共通レジスタ6bのアドレスr0に格納されている各RGBデータの値が、フレームメモリ2の各アドレス(Addr1,Addr2,Addr3,Addr4)に返される。以上の処理によって、モザイク処理が完了する。
なお、上記モザイク処理の変形例として、ぼかし処理を実行することも可能である。ぼかし処理は、モザイク処理と比べて、平均値を算出するメモリフレームのアドレスが、互いに隣接するブロック状(矩形状)でない点で異なる。プログラム上におけるぼかし処理は、フレームメモリ内の各アドレスについて、そのアドレスの周囲の数ピクセルにおける、RGBデータの値の読み込みと加算(2〜3行目のプログラム)とを繰り返し、最後に平均値をとることで実現する。具体的なプログラムについては、モザイク処理と大差ないので、これ以上の説明を省略する。
(YUVデータ変換処理)
図8は、YUVデータ変換処理のプログラムリストである。YUVデータ変換処理とは、RGBデータから、YUVデータ(輝度と色差情報からなるデータ)へフォーマットを変換する処理である。RGBデータにおける各色成分の値をR,G,Bとすると、YUVデータにおける各色成分の値Y,U,Vは、以下のような式の計算で求められる。

Y= 0.299×R+0.587×G+0.114×B ・・・式(1)
U=−0.147×R−0.289×G+0.436×B ・・・式(2)
V= 0.615×R−0.515×G−0.100×B ・・・式(3)
上記処理を、本実施形態において実装するために、変換するアドレスのR,G,Bの各値を読み込んで、所定の定数と乗算(除算)させるプログラムを設定する。本実施形態において、YUVデータに変換する処理はAddr1に格納されているRGBデータである。
なお、同図のプログラムリストに記載されている命令「ldi」とは、任意の定数を、記述されたアドレスを持つ共通レジスタ6bに格納するという命令である。例えば、命令「ldi r0, 10」が実行されると、共通レジスタ6bのr0に、定数「10」が格納される。また、命令「ldi r1, (20, 30)」が実行されると、共通レジスタ6bのr1における上位16ビットに「20」が格納され、r1における下位16ビットに「30」が格納される。これらの命令は、本実施形態に限らず一般のプロセッサでも同様の命令を持っているが、その他に持っている基本的な命令の組み合わせでも同じ処理が実現できるものである。本発明を実装する場合、RGBデータにおける各ビット幅の合計が、専用レジスタ7dに出力されるビット幅以下であればよい。
また、命令「rgbmult2」とは、前述した命令「ldi」によって格納される共通レジスタ6bの値と、専用レジスタ7dとを乗算するという処理である。例えば、各専用レジスタに格納されている値がR,G,Bであり、上記の命令「ldi」により、共通レジスタ6bのr0に1つ、r1に2つの係数がそれぞれ格納されているとする。このとき、命令「rgbmult2 r0, r1」が読み出されると、専用処理ユニット7内で以下の処理が同時並行的に行われる。

R ← R×r0
G ← G×(r1の上位16ビットに格納された値)
B ← B×(r1の下位16ビットに格納された値)
なお、上記命令は、r0〜r2のそれぞれに1つの係数が格納されていたとして、「rgbmult r0, r1, r2」と記述してもよい。本発明を実装する場合、1行の命令で3つ以上の共通レジスタ6bを指定するのは、あまり一般的ではないため、1つのレジスタに2つの係数を格納した。
図8を用いてプログラムの具体的な説明をする。プログラムの全体の流れとしては、まず、1行目の命令によって、フレームメモリ2の処理対象となるアドレスのRGBデータを共通レジスタ6bへ読み取る。そして、2〜16行目の命令によって、RGBスケールをYUVスケールに変換処理を行い、17〜20行目の命令によって、共通レジスタ6bへのYUVデータの出力を行う。
なお、2〜6行目までの命令はYデータの値を算出する命令であり、同様に、7行目〜11行目までの命令はUデータの値、12〜16行目までのプログラムはVデータの値をそれぞれ算出する。また、17行目〜19行目のプログラムによって、Y,U,Vの値が、再度各専用レジスタ7dに格納される。そして、20行目のプログラムによって、専用レジスタ7dに格納されていたY,U,Vの値はそれぞれ8ビット幅に変換されて、共通レジスタ6bに格納される。
YUVデータ変換処理における各成分値の算出するプログラムは類似しており、特に算出に係る係数のみが異なる。そのため、UデータおよびVデータの算出についての説明は省略し、2〜6行目のプログラムによる、Yデータの値の算出を説明する。まず、2行目の命令によって、r0に0.229という定数が格納される。つぎに、3行目の命令によって、r1の上位16ビットに0.587が、また下位16ビットに0.114が格納される。つぎに、4行目の命令によって、専用レジスタ7dに、各色成分に対応したRGBデータの値が格納される。つぎに、5行目の命令によって、Rの専用処理ユニット7内では、専用レジスタ7dに格納されている値Rと、共通レジスタ6bに格納されている係数(0.299)とが乗算され、その結果が専用レジスタに再び格納される。同様に、GおよびBの専用処理ユニット7内では、専用レジスタ7dに格納されている値と、r1に格納されている2つの係数(0.587,0.114)が乗算され、その結果が専用レジスタに再び格納される。ちなみに、5行目の命令は式(1)に相当し、Yの値を算出している。最後に、6行目の命令によって、共通レジスタr3にYデータの値が出力される。
(畳込処理)
図9は、畳込処理のプログラムリストである。畳み込み(コンボリューション)処理とは、注目するRGBデータとその周囲のRGBデータに、任意の重みをかけて足す処理である。なお、この処理は画像表示される物体の輪郭などを検出する画像処理にも適用可能である。
プログラム中では、Addr1が処理対象の画素のアドレス、Addr2〜9が周囲の画素のアドレスとし、Const1〜Const9は各ピクセルの重みを表す定数とする。このとき、例えば、Const1〜Const9の値が全て1/9である場合、出力される値は、単純に注目ピクセルと周囲のピクセルを足した平均値となり、これはぼかし処理と同一の処理となる。
なお、図9に記載されている命令「rgbmuladd r0, r1」は、共通レジスタ6bのアドレスr0に格納されている値に、共通レジスタ6bのアドレスr1に格納されているRGBデータの値を乗算し、さらに、各色成分の専用レジスタ7dに格納されている値を足す命令である。例えば、r0に格納されている各色成分の値をRa,Ga,Baとし、r1に格納されている値をConst1とする。ここで、命令「rgbmuladd r1」が実行されると、以下の処理が同時並行的に行われる。

R ← R+Ra×Const1
G ← G+Ga×Const1
B ← B+Ba×Const1
このとき、RGBデータのそれぞれにr1を乗算する回路が、専用処理ユニット7の外部にある回路に用意されている場合、乗算処理は、専用乗算器7bの外部で行った方がよい。これは、実装上において、制御部3が行う他の命令と共有できるようにするためである。
図9を用いてプログラムの具体的な説明をする。プログラムの全体的な流れとしては、まず、1行目の命令によって専用レジスタ7dのリセットが行われる。そして2〜4行目までの3行の命令によって、9画素うちの1つに対して重み付けを行った値が算出される。そして、5〜13行目までにかけて、2〜4行目と同様の処理が行われ、残りの8画素における重み付けを行った値が算出され、算出した結果が順次合算される。最後に14行目の命令により、各専用レジスタ7dに格納された値が、共通レジスタ6bへ出力される。
畳込処理における各RGBデータの値に重み付けを行うプログラムは類似しており、特に算出に係る係数のみが異なる。そのため、2番目から9番目のRGBデータの値における処理の説明は省略し、1〜4行目のプログラムによる、1番目のRGBデータの値における処理を説明する。まず、1行目の命令によって、各専用レジスタ7d内の値が0に格納される。つぎに、2行目の命令によって、フレームメモリ2に格納されている画素値が共通レジスタ6bのr0に格納される。つぎに、3行目の命令によって、共通レジスタ6bのr1に定数Const1が格納される。つぎに、4行目の命令によって、共通レジスタr0の各色成分にr1を乗算し、その乗算結果に専用レジスタ7dの値を加算して、再び専用レジスタ7dに格納する。5行目以降の命令については、2〜4行目の命令を、読み出すフレームメモリ2のアドレスを変位させながら繰り返して処理を行う。
本実施形態によれば、専用処理ユニット7を画像処理装置内に設け、初期化をはじめとした各色成分ごとの演算処理に関する複数の命令を1命令で実行する。これにより、各色成分ごとに個別に設けられた複数の専用処理ユニット7が処理を並行的に実行するので、共通処理ユニット6のみを用いた処理と比較して、画像処理の高速化を図ることができる。また、専用処理ユニット7に専用レジスタ7dを内蔵し、自己の演算回路による処理結果を専用レジスタ7dに出力をすることで、専用処理ユニット7外のレジスタの使用頻度を減らすことができるので、より一層の画像処理の高速化を図ることができる。
また、専用レジスタ7dのビット幅は、共通レジスタ6b(またはフレームメモリ2)に格納されている色成分のビット幅より大きいため、従来であれば演算処理において、32ビットの専用レジスタを8ビットの整数型へ変換する必要があったが、本実施形態では、専用加算器7a・専用乗算器7bも32ビットでの対応が可能であるため、さらなる処理速度の高速化を図ることができる。
本実施形態に係る画像処理プロセッサの概略的なブロック構成図 専用演算部のブロック構成図 データ設定命令(rgbset)の説明図 加減算命令(rgbadd)の説明図 乗除算命令(rgbmult)の説明図 データ出力命令(rgbget)の説明図 モザイク処理のプログラムリスト YUVデータ変換処理のプログラムリスト 畳込処理のプログラムリスト
符号の説明
1 画像処理プロセッサ
2 フレームメモリ
3 制御部
4 命令格納部
5 画像処理演算部
6 共通処理ユニット
6a 共通演算部
6b 共通レジスタ
7 専用処理ユニット
7a 専用加算器
7b 専用乗算器
7c 専用セレクタ
7d 専用レジスタ

Claims (4)

  1. 画像処理プロセッサにおいて、
    複数の色成分について共通で用いられ、共通演算部と、共通レジスタとを有する共通処理ユニットと、
    複数の色成分のそれぞれに対応して色成分毎に専用で用いられ、それぞれが、専用演算回路と、専用レジスタとを有し、各色成分の処理を並行的に実行する複数の専用処理ユニットと、
    前記共通処理ユニットと、前記複数の専用処理ユニットとを制御するとともに、前記共通処理ユニットから前記複数の専用処理ユニットへのデータ転送と、前記複数の専用処理ユニットから前記共通処理ユニットへのデータ転送とを制御する制御部とを有し、
    前記共通レジスタには、前記共通演算部から出力されたデータおよび前記専用処理ユニットから出力されたデータのいずれかが格納され、
    前記専用レジスタには、当該専用レジスタに対応する前記専用演算回路から出力されたデータが格納され、
    前記制御部は、前記専用レジスタに格納されたデータを、当該専用レジスタに対応する前記専用演算回路および前記共通処理ユニットのいずれかに出力させることを特徴とする画像処理プロセッサ。
  2. 画像処理手順を規定する一連の命令に基づいて、画像処理を実行する画像処理プロセッサにおいて、
    複数の色成分について共通で用いられ、共通演算部と、共通レジスタとを有する共通処理ユニットと、
    複数の色成分のそれぞれに対応して色成分毎に専用で用いられ、それぞれが、専用演算回路と、専用レジスタとを有し、各色成分の処理を並行的に実行する複数の専用処理ユニットと、
    前記共通処理ユニットと、前記複数の専用処理ユニットとを制御するとともに、前記共通処理ユニットから前記複数の専用処理ユニットへのデータ転送と、前記複数の専用処理ユニットから前記共通処理ユニットへのデータ転送とを制御する制御部とを有し、
    前記共通レジスタには、前記共通演算部から出力されたデータおよび前記専用処理ユニットから出力されたデータのいずれかが格納され、
    前記専用レジスタには、当該専用レジスタに対応する前記専用演算回路から出力されたデータが格納され、
    前記制御部は、各色成分の演算を実行する第1の命令に応じて、前記専用レジスタに格納されたデータを当該専用レジスタに対応する前記専用演算回路の入力とした演算を並行的に実行させるとともに、各色成分のデータを出力する第2の命令に応じて、前記専用レジスタのそれぞれに格納されたデータを前記共通処理ユニットに一括で出力させることを特徴とする画像処理プロセッサ。
  3. 前記制御部は、各色成分のデータを所定値に設定する第3の命令に応じて、前記専用レジスタのそれぞれに格納されたデータを前記所定値に一括で設定することを特徴とする請求項2に記載された画像処理プロセッサ。
  4. 前記共通レジスタは、ビット幅nの記憶領域を有し、
    前記専用レジスタは、前記画像データを構成する画素値の各色成分のビット幅よりも大きなビット幅を有する中間データを格納するために、前記共通レジスタよりも大きなビット幅m(m>n)の記憶領域を有し、
    前記専用レジスタに格納されたデータを前記共通処理ユニットに出力する場合、当該データをビット幅mからビット幅nに整数化することを特徴とする請求項1から3のいずれかに記載された画像処理プロセッサ。
JP2005052323A 2005-02-28 2005-02-28 画像処理プロセッサ Expired - Fee Related JP4203480B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005052323A JP4203480B2 (ja) 2005-02-28 2005-02-28 画像処理プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005052323A JP4203480B2 (ja) 2005-02-28 2005-02-28 画像処理プロセッサ

Publications (2)

Publication Number Publication Date
JP2006236175A JP2006236175A (ja) 2006-09-07
JP4203480B2 true JP4203480B2 (ja) 2009-01-07

Family

ID=37043728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005052323A Expired - Fee Related JP4203480B2 (ja) 2005-02-28 2005-02-28 画像処理プロセッサ

Country Status (1)

Country Link
JP (1) JP4203480B2 (ja)

Also Published As

Publication number Publication date
JP2006236175A (ja) 2006-09-07

Similar Documents

Publication Publication Date Title
US10531030B2 (en) Block operations for an image processor having a two-dimensional execution lane array and a two-dimensional shift register
EP3557484A1 (en) Neural network convolution operation device and method
US4635292A (en) Image processor
JP6837084B2 (ja) 二次元実行レーンアレイおよび二次元シフトレジスタを有する画像プロセッサ上でのブロック処理のためのコアプロセス
JP2010134697A (ja) コンボリューション演算回路、階層的コンボリューション演算回路及び物体認識装置
KR20070039490A (ko) Simd 어레이 프로세서를 위한 비트 직렬 프로세싱 소자
JP6532334B2 (ja) 並列演算装置、画像処理装置及び並列演算方法
JP2005267615A (ja) 並列演算プロセッサ
EP3264261B1 (en) Processor and control method of processor
JP4203480B2 (ja) 画像処理プロセッサ
JP2009181293A (ja) 行列演算コプロセッサ
JP2003016441A (ja) 画像処理装置
JP5045652B2 (ja) 相関処理装置及びその相関処理装置で読みとり可能な媒体
JP2013239120A (ja) 画像処理装置
JP4693649B2 (ja) 画像処理装置および画像データの補間方法
JP2012205298A (ja) デジタル信号処理装置およびプログラム
JPH01121930A (ja) データ処理装置
JP4896839B2 (ja) マイクロプロセッサおよびデータ処理方法
JP3055390B2 (ja) 画像処理装置
JP4749824B2 (ja) グラフィックスシステム
JP2790911B2 (ja) 直交変換演算装置
JP2862388B2 (ja) 超高速画像処理システムのフィルタリング処理方式
JP2005128618A (ja) 除算器、露出制御装置および除算方法
JPH03268024A (ja) マイクロプロセッサ、情報処理装置及びそれを用いた図形表示装置
JP2005266897A (ja) 画像処理装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080829

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080925

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081010

R150 Certificate of patent or registration of utility model

Ref document number: 4203480

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

R255 Notification that request for automated payment was rejected

Free format text: JAPANESE INTERMEDIATE CODE: R2525

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131017

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131017

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees