JP3593439B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP3593439B2
JP3593439B2 JP15118597A JP15118597A JP3593439B2 JP 3593439 B2 JP3593439 B2 JP 3593439B2 JP 15118597 A JP15118597 A JP 15118597A JP 15118597 A JP15118597 A JP 15118597A JP 3593439 B2 JP3593439 B2 JP 3593439B2
Authority
JP
Japan
Prior art keywords
data
image
image processing
processing
line
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 - Lifetime
Application number
JP15118597A
Other languages
Japanese (ja)
Other versions
JPH10340340A (en
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP15118597A priority Critical patent/JP3593439B2/en
Publication of JPH10340340A publication Critical patent/JPH10340340A/en
Application granted granted Critical
Publication of JP3593439B2 publication Critical patent/JP3593439B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、扱う画像データのビット幅が多様となる汎用の画像処理装置に関し、特に、画像データのビット幅に応じて処理構成を変更可能とした画像処理装置に関する。
【0002】
【従来の技術】
画像処理の一つであるフィルタ処理を高速に行なう方法に、ラインメモリ(LM)に画像データを記憶しながら処理を行なうものがある。LMを用いる方法は、フィルタ処理に必要な演算を部分的に並列処理することができる。また、画面を一通りスキャンするだけでフィルタ処理を行なうことができる。
【0003】
図2に、LMを用いる画像処理装置の概略構成を示す。同図(a)は、画像データのビット幅を8ビットとした時の3×3フィルタ処理の場合の構成を示す。3×3フィルタ処理では、ある画素の処理に、近傍の画素を含む9つの画像データが必要となる。この9つの画像データは、2本のラインメモリと処理対象メモリから読み出された画像データの組合せにより与えられる。そして、フィルタ処理に使用される9つの画像データと9つの係数を用いて、9つの乗算器を使用することにより並列に積和演算を行なうことで、フィルタ処理を高速に実行する。
【0004】
同じ3×3フィルタでも扱う画像データのビット幅が16ビットの場合には、図2(b)のように、16ビット幅のラインメモリを2本使用する。さらに、画像データのビット幅が8ビットで、5×5フィルタ処理を実現する場合は、図2(c)のように、8ビット幅のラインメモリが4本必要となる。
【0005】
従来、高分解能が要求される医療用などの画像処理では16ビット幅の画像データ、その他の分野の画像処理では8ビットや1ビット幅の画像データが用いられている。最近では、工業用の分野などでも16ビット幅の画像データによる画像処理の必要が高まっている。
【0006】
【発明が解決しようとする課題】
ラインメモリを使用する従来の画像処理装置では、処理対象の画像データにおける最大ビット幅の仕様によって、固定的に構成されていた。つまり、3×3フィルタ処理を考えた場合、最大8ビット幅の画像データを扱う画像処理装置は図2(a)の構成をとり、最大16ビット幅の画像データを扱う画像処理装置は図2(b)の構成をとっていた。したがって、1ビット幅、8ビット幅、16ビット幅の画像データを扱う画像処理装置においては、図2(b)の処理構成をとる必要があった。
【0007】
しかし、図2(b)の処理構成を用いて1ビット幅、8ビット幅の画像データを処理する場合、ラインメモリに未使用のメモリ領域が多く存在し、メモリの使用効率が悪く経済的でないという問題があった。
【0008】
また、5×5フィルタ処理を実現する図2(c)の処理構成においても、小さいビット幅の画像データを扱うときに上記と同様な問題が生じる。さらに、3×3フィルタ処理を行った場合、ラインメモリのみならず、フィルタ処理の演算装置にも未使用の回路が多く存在するという問題があった。
【0009】
上記のような使用効率の低さは、処理の高速化を考えた場合に重要な問題となる。一般に、複数のフィルタ処理を連続で行う場合の高速化についてはパイプライン処理を、単独のフィルタ処理の高速化については画面を小領域に分割して各小領域ごとに処理を行なう並列処理を挙げることができる。しかし、これらのパイプライン処理や並列処理にはラインメモリや演算装置の規模が大きくなるため、上記の問題点の解決が重要な課題となる。
【0010】
本発明の目的は、従来技術の問題点を克服し、扱う画像データのビット幅や処理機能に応じて処理構成を柔軟に変更でき、汎用性に優れリソースの使用効率が高い画像処理装置を提供することにある。また、高速処理の可能なパイプライン処理や並列処理を、画像データのビット幅に適応して任意に構成できる画像処理装置を提供することにある。
【0011】
【課題を解決するための手段】
本発明の上記目的は、処理対象の画像データを、複数ビットのライン幅をもつラインメモリを用いて画像処理回路に入力する画像処理装置において、画像データのビット幅に合わせて前記ラインメモリのライン幅を切り分けて理論上、複数の分割ラインメモリを構成し、かつ、設定される画像処理機能情報(以下、設定機能と略称)にしたがって使用する本数の分割ラインメモリを、前記画像処理回路と対応するよう、その入出力を制御する構成を備えたことにより達成される。
【0012】
上記の構成には、前記設定機能に応じて、前記画像処理回路における複数の演算回路の組合せを制御する機能を備え、3×3や5×5などの処理サイズの変更および/またはパイプラインや並列処理などの処理形態の変更を可能したことを特徴とする。
【0013】
すなわち、本発明の画像処理装置は、処理対象の画像データを格納する画像メモリと、所定の画像処理を行う画像処理回路と、前記画像メモリから読み出した画像データを処理サイズに合わせたブロックデータにして前記画像処理回路に出力するラインメモリを備える画像処理装置において、前記画像データのビット幅に合わせて前記ラインメモリのライン幅を切り分け理論上、複数の分割ラインメモリを構成し、かつ、設定機能にしたがって使用する本数の分割ラインメモリを、前記画像処理回路と対応するように、その入出力を制御する構成制御手段と、前記ラインメモリに入力する入力データを生成するラインメモリ入力データ制御手段と、前記ラインメモリの出力するデータから前記ブロックデータを生成するラインメモリ出力データ制御手段を備えることを特徴とする。
【0014】
また、前記設定機能が異なるi×iフィルター処理によるP段のパイプライン処理で、前記使用する本数Lが(i−1)×Pとなる場合、前記構成制御手段は、パイプライン処理の各段に使用する前記分割ラインメモリをL/P本のライン群とし、最前段の画像処理回路には前記画像メモリから読み出した画像データを直接入力する分割ラインメモリを含むライン群を対応させ、次段以降の画像処理回路には順次、前段の処理データを入力する分割ラインメモリを含むライン群を対応させるように、前記ラインメモリの入出力の制御を行うことを特徴とする。
【0015】
また、前記設定機能が同じi×iフィルター処理によるQ組の並列処理で、前記使用する本数Lが(i−1)×Qとなる場合、前記構成制御手段は、並列処理の各組に使用する前記分割ラインメモリをL/Q本のライン群とし、前記画像メモリに格納されている画像データの1画面分を垂直方向にQ分割し各々の領域から並列に読み出される画像データを、対応するライン群に入力するように制御することを特徴とする。
【0016】
さらに、前記構成制御手段は、前記設定機能を示すフィルタサイズ(i×i)、処理個数(1またはPまたはQ)、パイプラインなどの処理形態を設定されると、前記処理個数分の画像処理回路を前記フィルタサイズに見合った演算回路によって構成するように制御することを特徴とする。
【0017】
本発明によれば、扱う画像データのビット幅に合わせて、1ライン分のラインメモリのビット幅を可変にすることにより、理論上のラインメモリの本数を可変にすることができる。たとえば、図2(b)と同様な機能を実現する32ビット幅のラインメモリを使用した場合、ビット幅が16ビットの画像データを扱う場合には図2(b)と同様であるが、ビット幅が8ビットの画像データを扱う場合、図2(c)のようにラインメモリを制御することができる。つまり、扱う画像データのビット幅に合わせて、処理構成を変更できるので、画像処理装置の汎用性と使用効率を向上上できる。
【0018】
また、本発明によれば、画像処理の設定機能に応じてラインメモリの入出力を制御できるので、複数段のパイプライン処理や複数組の並列処理など、高速処理の可能な処理構成を簡単に構築できる。
【0019】
したがって、上記のようにラインメモリと画像回路の構成を可変制御する本発明によれば、たとえば32ビット幅のラインメモリと5×5フィルタ処理可能な積和演算回路を備える画像処理装置の場合に、画像データが16ビット幅の3×3フィルタ処理、画像データが1〜8ビット幅の5×5または3×3フィルタ処理、または、画像データが1〜8ビット幅の3×3フィルタ処理によるパイプライン処理もしくは並列処理を任意に構成制御できる汎用の画像処理装置を提供できる。
【0020】
【発明の実施の形態】
以下、本発明の一実施形態を図面を用いて詳細に説明する。図1は、一実施例による画像処理装置の全体構成を示す機能ブロック図である。図示で信号の流れを示す矢線は、後述するパイプライン処理に対応されている。
【0021】
構成制御部3は、処理対象の画像データの詳細情報を制御装置1から受取りそれを解釈する。さらに、制御装置1から伝達された画像処理機能を解釈し、その機能に必要な処理構成を行うための制御信号を発行する。構成制御部3で発行する制御信号のうち、タイミングに関する信号は、信号伝達手段4を介してメモリ制御部10に伝達される。メモリ制御部10は、画像データを記憶する処理対象メモリ部100や処理結果メモリ部700、ラインメモリ(LM)5を制御するLM制御部50を制御している。
【0022】
また、構成制御部3は、伝達された画像処理機能や画像データのビット幅の情報から、LM入力データ制御回路200やLM出力制御回路300などに、その入出力を制御する制御信号を伝達手段4を介して伝達する。LM入力データ制御回路200とLM出力データ制御回路300は、この制御信号に従ってLM5に入出力するデータを制御する。
【0023】
LM出力データ制御回路300から出力された画像データは、画像処理部90のプロセッサユニット(PU)400で演算され、データ統合回路500に入力される。本実施例の画像処理部90はフィルタ処理を実行するが、データ統合回路500に形状変換処理やラベリング処理を行なう回路を付加してもよい。
【0024】
フィルタ処理された処理結果データは、データ選択制御回路600に入力され、構成制御部3からの制御信号により処理結果データの選択を行い、処理結果メモリ部700にデータを出力する。また、このデータ選択制御回路600では、構成制御部3からの制御信号よりフィードバックの指示がある場合、フィードバック手段800を介して処理結果データをLM入力データ制御回路200にフィードバックする。本発明の一実施形態であるパイプライン処理構成では、このフィードバックされた処理結果を再びLM5に入力し、別のフィルタ処理を行うことができる。
【0025】
図3に、パイプライン処理を行う画像処理装置の概略構成を示す。本実施形態は、フィルタ処理A903の出力結果を再びLM5に戻すことにより、異なるフィルタ処理B904をパイプライン的に処理する。このパイプライン処理構成は、図2(b)または(c)から変更できる。すなわち、LM5は図2(b)、(c)の場合と同じ32ビット幅である。また、図2(c)の5×5フィルタ処理902は乗算器を25、加算器を24使用しているので、その中から乗算器を9個×2、加算器を8個×2用いて、図3のフィルタ処理903,904を構成できる。あるいは、図2(b)のシステムにおいて、乗算器を18個、加算器を16個それぞれ備えていれば、図3の処理構成への変更が可能になる。
【0026】
次に、図1の各ブロックを詳細に説明する。構成制御部3は、制御装置1から画像データに関する情報や画像処理機能の実行命令をバス2を介して受け取る。
【0027】
図4に、画像データ情報や画像処理機能情報の管理テーブルの一例を示す。これらの情報は、構成制御部3の記憶装置(図示なし)に設けられる管理テーブルに、制御装置1から設定される。同図(a)は、画面管理テーブルを示し、処理対象の画像データが記憶されているメモリを示す画像メモリチャネル番号や、処理を行なう画像画面上で開始する物理的なアドレス、画面のサイズ、さらには画像データのビット幅(w)やカラー、モノクロといった画像種別を示す画面のデータタイプなどの画像データ情報を格納している。
【0028】
同図(b)は、画像処理機能設定テーブルを示し、フィルタ処理などの処理内容と、単独、パイプラインあるいは並列などの処理形態と、処理個数及び処理サイズなどを格納している。同図(c)は、設定される処理機能の可否をチエックするための処理個数管理テーブルで、図示例はLM5が32ビット幅のとき、画像処理部90による構成可能なフィルタ処理の処理数個数を示している。すなわち、画像データのビット幅(w)と処理サイズ(フィルタ処理のカーネルサイズ)をパラメータとして、フィルタ処理の処理数個数が設定されている。例えば、画像データのビット幅がw=8で、3×3フィルタ処理を行う場合、可能な処理個数は2であり、2つの異なるフィルタ処理をパイプラインで、または2つの同じフィルタ処理を並列処理で実行できる。
【0029】
図5に構成制御部3の処理の流れを示す。構成制御部3では、画像データ情報の設定と画像処理機能の設定により(s101,s102)、LM5へのデータの入出力制御をはじめ、各ブロックを制御する信号を生成する(s103)。これらの制御信号は、たとえば図5(b)のように、画像データのビット幅(w)と設定機能に基づいて発行される。
【0030】
図5(b)のテーブルは、データ幅が8ビットの3×3フィルタ処理の各ブロックの制御信号の例を、単独、パイプライン処理、並列処理の場合について示している。
【0031】
構成制御部3からの制御信号で、メモリ制御部10に対しては、画像データの記憶場所や画面サイズを設定する。パイプライン処理の場合、図5(b)と後述する図6、図7に示すように、LM入力データ制御回路200に対しては、処理対象メモリ部100からのデータと、LM5の出力データと、画像処理結果のデータとから、LM5の入力データを作成するための制御信号を発生する。LM出力データ制御回路300に対しては、画像処理機能に応じてPU400やデータ統合回路500が3×3フィルタ処理の積和演算などを実現するように、LM5の出力(LM_out)301や、LM入力データ制御回路200から直接入力するデータ(LM_thr)302を基に、各PU400に分配するブロックデータを作成するための制御信号を発生する。
【0032】
次に、各PU400に対しては、積和演算などが所望の機能を実現するように、係数の設定や、乗算、加算などの機能の選択を行なう制御信号を発生する。データ統合回路500に対しては、たとえば図8に示す回路の構成を行う制御信号を発生し、各PU400からの演算結果から積和演算の加算処理をする。これらは、基本的には従来技術と同様に行われる。
【0033】
データ選択制御回路600については、処理結果メモリ部700に記憶する3×3フィルタ処理結果の選択や、パイプライン処理を実現するためにフィードバックする画像データを選択する信号を発生する。
【0034】
構成制御部3は、全ての制御信号を発生した後に、画像処理を開始する起動信号をメモリ制御部10に発生する(s104)。メモリ制御部10では、この起動信号により、画像データの記憶手段である各メモリにアクセスするためのアドレスや、タイミング信号を発生する。
【0035】
以上により、図3のパイプライン処理構成の場合、構成制御部3は32ビット幅のLM5を理論上、8ビット毎にLM0〜LM3に4分割し、分割した各LMに対応する入力データの取り込みを可能にする。また、使用する画像処理機能に合わせて2組の3×3フィルタ処理の構成を行う。本実施形態では、3×3フィルタ処理について説明しているが、5×5フィルタ処理構成をとることもできる。つまり、フィルタサイズを自由に選択できるように、積和演算の構成をフィルタサイズによって変更できるようにしている。
【0036】
図8に、異なる二つの3×3フィルタ処理を実現する構成、図9に、5×5フィルタ処理を実現する構成を示す。フィルタ処理における積和演算で、乗算はPU400で行なわれ、加算はデータ統合回路500で行なわれる。フィルタサイズの制御は、データ統合回路500においてデータの流れを制御することにより実現する。データの流れは、セレクタ510〜550によって制御し、フィルタサイズに応じて加算器を組み合わせることにより所望のフィルタ処理を実現する。したがって、図8と図9の構成の変更は、各セレクタ510〜550によってデータの流れを制御することにより可能となる。
【0037】
本実施形態では、処理構成と画像処理に係わる全ての制御を構成制御部3が行なっている。しかし、同様の機能を制御装置1が行なったり、構成制御部3が行なう機能の一部を別のブロックにより代替するなど、本実施形態に対する他の代案が可能である。
【0038】
次に、LM5の入出力制御について図6、図7及び図10〜図15を使用して詳細に説明する。まず、図6を用いてLM入力データ制御回路200、LM5及びLM出力データ制御回路300の関係を説明する。同図において、処理対象メモリ部100から入力されるビット幅8ビットのデータ201をM[7:0]、データ選択制御回路600からフィードバック手段800を介して入力されるデータ203をFB[7:0]、32ビット幅のLM5に入力するデータ210をLM_in[31:0]、LM5から出力されるデータ301(202)をLM_out[31:0]、LM入力データ制御回路200からLM出力データ制御回路300にLM5を介さずに入力されるデータ302をLM_thr[15:0]と記述する。なお、各データの符号は、対応する信号線の符号に読み替えることもある。
【0039】
まず、LM入力データ制御回路200とLM出力データ制御回路300の機能の概要を説明する。LM入力データ制御回路200においては、M[7:0]、FB[7:0]、LM_out[31:0]からLM5への入力データLM_in[31:0]と、LM出力データ制御回路300への入力データLM_thr[15:0]を生成する。このとき、LM_in[31:0]とLM_thr[15:0]は、画像データのビット幅に応じて制御され、そのビット幅が8ビットの場合、図9に示すように8ビットごとに切り別けて信号線を使用する。
【0040】
図10に、LM5の理論上の切り分け構成と入力データのビット幅の関係を示す。同図(a)のように、画像データのビット幅が16ビットの場合は、図2(b)の処理構成となるので、LM0にLM_in[15:0]、LM1にLM_in[31:16]が入力される。同図(b)のように、画像データのビット幅が8ビットで、図3の処理構成をとる場合、LM0にM[7:0]、LM1にLM_out[7:0]、LM2にFB[7:0]、LM3にLM_out[23:16]が入力される。
【0041】
次に、LM出力データ制御回路300においては、LM_out[31:0]とLM_thr[15:0]からフィルタ処理に必要なデータを選択制御して、PU400に出力する。ここで、3×3フィルタ処理A,Bをパイプライン処理する場合のデータの流れについて、詳細に説明する。
【0042】
図7に、LM出力データ制御回路300の構成を示す。LM出力データ制御回路300には、信号線301から垂直方向に1ラインもしくは2ライン遅延された画像データLM_outが、信号線302から垂直方向の遅延がない画像データLM_thrがそれぞれ入力される。図中、信号線上の斜線に付記した数字は、各信号線の本数を表わし、伝達するビット数に対応している。
【0043】
LM出力データ制御回路300の内部では、水平方向の遅延回路(フリップフロップ)311,312を用いて、水平方向に2段遅延したデータを生成し、3×3フィルタ処理に必要なブロックデータ、すなわち画面上の3×3領域に対応する9個の画像データの組み合わせを作成し、フィルタ処理AのPU400の各々に分配する。また、フィルタ処理Aの処理結果を用いるフィルタ処理Bに対しても、同様に遅延回路313,314を用いてブロックデータを作成する。なお、出力データの処理Aと処理Bへの切り分けは、出力データビット切り分け回路315によって行われる。
【0044】
図20に、他の実施例によるLM出力データ制御回路300の構成を示す。水平方向の遅延回路311〜314及び321〜324をそれぞれ4段とすることによって、3×3と5×5の両方のフィルタ処理に適用できるようにしている。具体的には出力データビット回路に指定された処理サイズ(カーネルサイズ)に合わせて、出力データを発生させる。
【0045】
図11に、フィルタ処理A,Bのデータ配列の関係を示す。この例は、積和演算の遅延がないときの関係を示し、図のフィルタAはAm,nの位置でのフィルタ処理の演算を示している。ここで、添え字のmは画像のx座標を、nはy座標を指している。処理に使用される9つのデータは、LM出力データ制御回路300により一組にまとめられ、9つ同時に積和演算を行なう回路であるPU400およびデータ統合回路500に入力される。
【0046】
次に、フィルタ処理Aの処理結果に対して異なるフィルタ処理Bをパイプライン処理する仕組みについて説明する。フィルタ処理AにおけるAm,nでの処理結果は、フィードバック手段800を介して、LM入力データ制御回路200に伝達され、フィルタ処理Bに使用される。このとき、Am,nでの処理結果はBm,nとなる。このとき、フィルタ処理Bの出力結果は、フィルタ処理Aの処理結果を処理しているため、フィルタ処理Aの処理結果よりも1ラインと1画素だけ遅延した位置のものになる。つまり、フィルタ処理Aは絶対座標で(m,n)の画素での結果を出力し、この時にはフィルタ処理Bは(m−1,n−1)の結果を出力する。
【0047】
以上を整理すると、フィルタ処理Aでは、処理対象メモリ部100からのデータに対しフィルタ処理を行なっているのに対し、フィルタ処理Bでは、フィルタ処理Aの処理結果に対してパイプライン的にフィルタ処理を行なっている。このとき、フィルタ処理Aとフィルタ処理Bとの構成の違いは、処理対象メモリ部100からのデータに対し処理を行なうか、フィルタ処理Aの処理結果のデータに対し処理を行なうかであり、個々には単独のフィルタ処理の場合の処理構成と変わらない。
【0048】
図11に示したフィルタ処理A,Bのパイプライン処理を実現するためのデータ制御について、さらに詳細に説明する。ここでのデータ制御の目的は、図11に斜線部で示した3つのデータを同時に、LM_outとLM_thrの2つのデータから生成できるように、データの流れのタイミングを制御することにある。上記の斜線部を同時に生成するということは、同時刻においてLM_outとLM_thrに上記斜線部のデータを発生することを意味する。
【0049】
図12に、図11の斜線部のデータのビット構成を示す。図示で、LM_in、LM_thr、LM_outから切り分けされるデータをビット幅毎に上段に示し、そのデータに対応するフィルタ処理A、Bでのデータ配列を下段に示している。
【0050】
これらのビットの切り分け制御は、LM_inに対しては図6におけるLM入力データ生成回路250で、LM_thrに対してはLM通過データ生成回路251で行なわれる。LM_outに関しては、LM5から読み出されるデータが既に、図12に示したビット構成になっている。
【0051】
図13に、フィルタ処理A、Bにおけるタイミングチャートを示す。(a)はフィルタ処理における演算の遅延がない場合で、RAはLM5のリードアドレス、WAはライトアドレスを示している。この例のLM5には、そのビット幅が32ビット、処理対象のビット幅が8ビットで、RAで指定されたアドレスのデータを1クッロク後に出力する同期型メモリを使用している。
【0052】
このとき、LM5の下位の16ビットはフィルタ処理Aに、上位の16ビットはフィルタ処理Bに使用されるよう制御される。つまり、LM5と信号線210、302をフィルタ処理A,Bで画像データのビット幅に合わせて2分割して使用できるように制御する。
【0053】
次に、LM5の動作とフィルタ処理Aおよびフィルタ処理Bとの関係を、図14と図15を用いてより具体的に説明する。図14は、処理対象の画像画面でのデータ配列とLM5のデータ配列を説明するための概念図である。LM5には、RAで指定されたアドレスのデータを1クッロク後に出力する同期型メモリを使用している。フィルタAで使用される画像データは丸数字、フィルタBで使用される画像データは二重丸数字で示している。図示のように、LA5に対しRA(=8)、WA(=7)が指示されているとき、フィルタ処理Aでは矩形内の9つの画像データを用いデータ68の処理を、同様にフィルタ処理Bでは処理Aの結果データ57(画像データ57に対応)の処理を行っている。以下、矩形で示されたフィルタ処理に注目して説明する。
【0054】
図15は、(a)〜(c)のように、LM5の動作を3クロック期間モニタリングした説明図である。以下では、フィルタAで使用するデータには添字a、フィルタBで使用するデータには添字bを付与して区別する。
【0055】
同図(a)の状態では、WA=5、RA=6を示している。画像メモリ100から画像データ59aが入力されると、LM5がそれに同期して、画像データ57a,58aを出力するように制御される。このとき、フィルタ処理Aは37a,38a,39a,47a,48a,49a,57a,58a,59aの画像データを使用してフィルタ処理を行い、その処理結果はデータ48bである。データ48bはLM5の入力として使用されると同時に、フィルタ処理Bに使用される。フィルタ処理Bは、処理Aの結果データ26b,27b,28b,36b,37b,38b,46b,47b,48bを使用して、37の位置の処理結果を出力する。
【0056】
次に、1クロック後の同図(b)の状態では、WA=6、RA=7となり、LM5からの出力は1クロック前に指定したアドレスのデータ56b,57b,67a,68aである。このとき、画像メモリ100から入力される画像データは69a、フィルタ処理Aの処理結果データは58bである。また、フィルタ処理Bの処理結果データは、47の位置のデータである。さらに、1クロック後の同図(c)の状態では、WA=7、RA=8となり、LM5からの出力はデータ66b,67b,77a,78aである。フィルタ処理Aの処理結果データは68b、フィルタ処理Bの処理結果データは、57の位置のデータである。
【0057】
このように、画像メモリ100から入力される画像データのビット幅に合わせて、毎クロックWA及びRAがカウントアップされる。そして、画像メモリ100から読み出される画像データに同調して、3×3フィルタ処理を実行できるようにLM5を制御する。
【0058】
なお、上記したLM5の動作は2段のパイプライン処理についての説明ではあるが、個々のフィルタ処理Aまたはフィルタ処理Bについてみれば、通常の3×3フィルタ処理や5×5フィルタ処理の動作と同じになる。
【0059】
また、本実施形態では、フィルタ処理における演算の遅延段数を考慮していないが、遅延段数を考慮してもよい。遅延段数を考慮した場合、図13(b)に示すように、LM_in およびLM_thr におけるフィルタ処理Aとフィルタ処理Bとのデータの組み合わせの差が1クロックになるだけで、制御方法は遅延がない場合と全く同様である。
【0060】
このように、本実施形態によれば、ラインメモリの入出力をデータの組合せによって簡単に制御できるので、フィルタサイズの異なるフィルタ処理、さらにはパイプライン処理や並列処理などを、共通のハード(リソース)を用いてその処理構成を変更することで効率的に実現できる。以下に、処理形態の異なる他の実施例について説明する。
【0061】
図16は、画像データのビット幅が16ビットの図2(b)の処理構成において、3×3フィルタ処理901に入力されるデータのビット構成を示す。図12の場合と同様に、LM_in、LM_thr、LM_outは制御されるデータを上段に、そのデータに対応するフィルタ処理A901での対象データを下段に示している。前例と同様に、これらのビットの切り分け制御は、LM_inに対してはLM入力データ生成回路250で、LM_thrに対してはLM通過データ生成回路251で行なわれる。LM_outに関しては、LM5から読み出されるデータが既に図10に示したビット構成になっている。
【0062】
図17に、画像データのビット幅が1ビットで、A〜Pの16段のパイプライン処理を行なう処理構成を示す。この場合にも、LM5を1ビット幅でLM0〜LM31に区分し、各3×3フィルタに入力するLM_in、LM_thr、LM_outのデータを、図12の場合の8ビット幅に対し1ビット幅で切り分け制御することで、同様に実現できる。
【0063】
このように、画像データのビット幅に応じてLMの入出力を制御し、LMの使用本数を実質的に最適化することにより複数段のパイプライン処理を可能とし、高速な画像処理を実現している。
【0064】
図18に、本発明の並列処理による画像処理装置の構成を示す。図示のように、n個の処理対象メモリ部100とn個の処理結果メモリ部700を用いている以外は、図1の実施形態と同じ構成となる。
【0065】
図19に、2個の並列処理の処理構成を示す。32ビット幅のLMを使用し、画像データのビット幅が8ビット、2個の3×3フィルタ処理Aを並列処理するときの処理構成を示している。同図(b)に示すように、一画面を2つに分割して並列に処理する場合、1個でフィルタ処理Aを行なう処理時間を1/2に短縮できる。
【0066】
この処理構成は、図3のパイプラインの処理構成から簡単に変更できる。たとえば、LM入力データ制御回路200において、フィードバック手段800によって伝達される処理結果データを、処理対象メモリ部100からの画像データに変更するだけでよい。したがって、パイプライン処理が必要なときには図3の処理構成を採用し、並列処理が必要なときには図14の処理構成を採用するように任意な構成が可能になる。もちろん、図2(c)の処理構成からの変更も可能である。
【0067】
【発明の効果】
本発明によれば、扱う画像データのビット幅と合わせ、一ライン分のラインメモリのビット幅を可変して理論上のラインメモリの本数を変更するので、画像データのビット幅と画像処理の設定機能に対応した処理構成を、ラインメモリや演算装置の規模の範囲内で柔軟に変更できる。
【0068】
また、本発明によれば、扱う画像データのビット幅と画像処理サイズに合わせてラインメモリの入出力を制御することにより、複数段のパイプライン処理や複数組の並列処理を自由に構成することができ、画像処理の高速化が可能になる。
【0069】
つまり、本発明によれば、扱う画像データのビット幅と画像処理の設定機能に合わせて、多様な処理構成をとることができるので、汎用性に優れリソースの使用効率が高い画像処理装置を提供できる。
【図面の簡単な説明】
【図1】本発明の一実施形態における画像処理装置の全体構成図。
【図2】ラインメモリを使用する画像処理装置の種々の処理構成を示す概念図。
【図3】本発明のパイプライン処理の画像処理装置の処理構成を示す概念図。
【図4】画像情報及び画像処理機能情報の設定内容を示すテーブル。
【図5】構成制御部による処理の流れと、発行される制御信号の一例を示す説明図。
【図6】ラインメモリの入力データを制御するLM入力データ制御回路とその周辺回路の構成を示す機能ブロック図。
【図7】LM出力データ制御回路の構成を示す機能ブロック図。
【図8】3×3フィルタ処理を実現する画像処理部の回路構成を示す機能ブロック図。
【図9】5×5フィルタ処理を実現する画像処理部の回路構成を示す機能ブロック図。
【図10】ラインメモリの理論上の分割構成を示す概念図。
【図11】3×3フィルタ処理のパイプライン処理を実現するブロックデータの推移を示す説明図。
【図12】図11の斜線部に対応し、LM入力データ、LM通過データ及びLM出力データをビット幅毎に示すデータ構成図。
【図13】図11のブロックデータのタイミングチャート。
【図14】3×3フィルタ処理のパイプライン処理でのブロックデータとラインメモリの位置を示す説明図。
【図15】ラインメモリのデータ移動を詳細に示す説明図。
【図16】本発明の他の実施形態で、画像データが15ビット幅の場合のLM入力データ、LM通過データ及びLM出力データをビット幅毎に示すデータ構成図。
【図17】本発明の他の実施形態で、画像データが1ビット幅の場合の3×3フィルタ処理を16段のパイプライン処理で行う処理構成の概念図。
【図18】本発明の他の実施形態で、n組の並列処理を行う画像処理装置の全体構成図。
【図19】3×3フィルタ処理の2並列処理を行う処理構成と対象メモリの説明図。
【図20】他の実施形態によるLM出力データ制御回路の構成を示す機能ブロック図。
【符号の説明】
1…制御装置、2…制御装置と画像処理装置とのバスインタフェース、3…構成制御部、5…ラインメモリ(LM)、90…画像処理部、100…処理対象メモリ部、200…LM入力データ制御回路、250…LM入力データ生成回路、300…LM出力データ制御回路、311〜314…遅延回路、321〜324…遅延回路、330…出力データビット切り分け回路、400…PU、500…データ統合回路、600…データ選択制御回路、700…処理結果メモリ部。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a general-purpose image processing apparatus in which bit widths of image data to be handled are various, and more particularly, to an image processing apparatus capable of changing a processing configuration according to a bit width of image data.
[0002]
[Prior art]
One of the methods for performing high-speed filter processing, which is one of image processing, is to perform processing while storing image data in a line memory (LM). In the method using the LM, the operation required for the filter processing can be partially performed in parallel. In addition, the filtering process can be performed by simply scanning the screen.
[0003]
FIG. 2 shows a schematic configuration of an image processing apparatus using LM. FIG. 3A shows a configuration in the case of 3 × 3 filter processing when the bit width of image data is 8 bits. In the 3 × 3 filter processing, nine image data including neighboring pixels are required for processing a certain pixel. These nine image data are given by a combination of two line memories and image data read from the processing target memory. Then, by using nine image data and nine coefficients used for the filter processing and performing a product-sum operation in parallel by using nine multipliers, the filter processing is executed at high speed.
[0004]
If the bit width of the image data handled by the same 3 × 3 filter is 16 bits, two line memories having a width of 16 bits are used as shown in FIG. Further, when the bit width of the image data is 8 bits and 5 × 5 filter processing is realized, four line memories having an 8-bit width are required as shown in FIG. 2C.
[0005]
2. Description of the Related Art Conventionally, 16-bit image data has been used for medical image processing requiring high resolution, and 8-bit or 1-bit image data has been used for image processing in other fields. Recently, there has been an increasing need for image processing using 16-bit width image data even in the industrial field.
[0006]
[Problems to be solved by the invention]
In a conventional image processing apparatus using a line memory, the configuration is fixed according to the specification of the maximum bit width in the image data to be processed. That is, in consideration of 3 × 3 filter processing, an image processing apparatus that handles image data having a maximum width of 8 bits has the configuration shown in FIG. 2A, and an image processing apparatus that handles image data having a maximum width of 16 bits has a configuration shown in FIG. (B). Therefore, in an image processing apparatus that handles 1-bit, 8-bit, and 16-bit image data, it is necessary to adopt the processing configuration shown in FIG.
[0007]
However, when processing image data of 1-bit width and 8-bit width using the processing configuration of FIG. 2B, there are many unused memory areas in the line memory, and the use efficiency of the memory is poor, which is not economical. There was a problem.
[0008]
Also, in the processing configuration of FIG. 2C that realizes 5 × 5 filter processing, the same problem as described above occurs when handling image data with a small bit width. Furthermore, when the 3 × 3 filter processing is performed, there is a problem that many unused circuits exist not only in the line memory but also in the arithmetic unit for the filter processing.
[0009]
The low use efficiency as described above is an important problem when speeding up processing. In general, pipeline processing is used for speeding up when a plurality of filter processes are continuously performed, and parallel processing for dividing a screen into small regions and performing processing for each small region is used for speeding up a single filter process. be able to. However, these pipeline processing and parallel processing require a large scale of a line memory and an arithmetic unit, and therefore, solving the above problems becomes an important issue.
[0010]
An object of the present invention is to provide an image processing apparatus which overcomes the problems of the prior art, can flexibly change the processing configuration according to the bit width and processing function of image data to be handled, and has excellent versatility and high resource use efficiency. Is to do. Another object of the present invention is to provide an image processing apparatus which can arbitrarily configure pipeline processing and parallel processing capable of high-speed processing according to the bit width of image data.
[0011]
[Means for Solving the Problems]
An object of the present invention is to provide an image processing apparatus for inputting image data to be processed to an image processing circuit using a line memory having a line width of a plurality of bits. A plurality of divided line memories are theoretically constructed by dividing the width, and the number of divided line memories used according to the set image processing function information (hereinafter, abbreviated as setting function) corresponds to the image processing circuit. This is achieved by providing a configuration for controlling the input and output.
[0012]
The above configuration has a function of controlling a combination of a plurality of arithmetic circuits in the image processing circuit according to the setting function, and includes changing a processing size such as 3 × 3 or 5 × 5 and / or It is characterized in that a processing form such as parallel processing can be changed.
[0013]
That is, the image processing apparatus of the present invention includes an image memory for storing image data to be processed, an image processing circuit for performing predetermined image processing, and converting the image data read from the image memory into block data corresponding to the processing size. An image processing apparatus having a line memory for outputting to the image processing circuit by dividing the line width of the line memory according to the bit width of the image data, theoretically forming a plurality of divided line memories, and setting function Configuration control means for controlling the input / output of the divided line memories of the number used in accordance with the image processing circuit, and line memory input data control means for generating input data to be input to the line memory. , Line memory output data for generating the block data from data output from the line memory. Characterized in that it comprises a control means.
[0014]
Further, in the P-stage pipeline processing by the i × i filter processing having a different setting function, when the number L to be used is (i−1) × P, the configuration control unit determines each stage of the pipeline processing. The divided line memory used in the first and second lines is a group of L / P lines, and a line group including a divided line memory for directly inputting image data read from the image memory is associated with the first stage image processing circuit. In the following image processing circuit, input / output control of the line memory is performed so as to sequentially correspond to a line group including a divided line memory for inputting processing data of a preceding stage.
[0015]
When the setting function is the parallel processing of the Q sets by the same i × i filter processing and the number L to be used is (i−1) × Q, the configuration control unit uses The divided line memories are divided into L / Q line groups, and one screen of the image data stored in the image memory is divided into Q in the vertical direction, and the image data read out in parallel from each area corresponds to the divided image data. It is characterized in that it is controlled to input to a line group.
[0016]
Further, when the configuration control means sets processing modes such as a filter size (i × i) indicating the setting function, the number of processes (1 or P or Q), and a pipeline, image processing for the number of processes is performed. It is characterized in that the circuit is controlled so as to be constituted by an arithmetic circuit corresponding to the filter size.
[0017]
According to the present invention, by changing the bit width of the line memory for one line according to the bit width of the image data to be handled, the theoretical number of line memories can be changed. For example, when a 32-bit line memory that realizes the same function as that of FIG. 2B is used, and when image data with a bit width of 16 bits is handled, the processing is the same as that of FIG. When handling image data having a width of 8 bits, the line memory can be controlled as shown in FIG. That is, since the processing configuration can be changed according to the bit width of the image data to be handled, the versatility and use efficiency of the image processing apparatus can be improved.
[0018]
Further, according to the present invention, since the input / output of the line memory can be controlled in accordance with the setting function of the image processing, a processing configuration capable of high-speed processing, such as multiple stages of pipeline processing and multiple sets of parallel processing, can be simplified. Can be built.
[0019]
Therefore, according to the present invention in which the configurations of the line memory and the image circuit are variably controlled as described above, for example, in the case of an image processing apparatus including a 32-bit line memory and a product-sum operation circuit capable of 5 × 5 filter processing The image data is processed by 3 × 3 filter processing of 16 bit width, the image data is processed by 5 × 5 or 3 × 3 filter processing of 1 to 8 bit width, or the image data is processed by 3 × 3 filter processing of 1 to 8 bit width It is possible to provide a general-purpose image processing apparatus capable of arbitrarily controlling the configuration of pipeline processing or parallel processing.
[0020]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a functional block diagram illustrating an overall configuration of an image processing apparatus according to an embodiment. Arrows indicating the flow of signals in the figure correspond to pipeline processing described later.
[0021]
The configuration control unit 3 receives detailed information of the image data to be processed from the control device 1 and interprets it. Further, it interprets the image processing function transmitted from the control device 1 and issues a control signal for performing a processing configuration necessary for the function. Among the control signals issued by the configuration control unit 3, signals related to timing are transmitted to the memory control unit 10 via the signal transmission unit 4. The memory control unit 10 controls the processing target memory unit 100 that stores image data, the processing result memory unit 700, and the LM control unit 50 that controls the line memory (LM) 5.
[0022]
The configuration control unit 3 transmits a control signal for controlling input / output to the LM input data control circuit 200, the LM output control circuit 300, and the like based on the transmitted information of the image processing function and the bit width of the image data. 4. The LM input data control circuit 200 and the LM output data control circuit 300 control data input to and output from the LM 5 according to the control signal.
[0023]
The image data output from the LM output data control circuit 300 is calculated by the processor unit (PU) 400 of the image processing unit 90 and is input to the data integration circuit 500. Although the image processing unit 90 of the present embodiment executes the filter processing, a circuit for performing the shape conversion processing and the labeling processing may be added to the data integration circuit 500.
[0024]
The filtered processing result data is input to the data selection control circuit 600, the processing result data is selected by a control signal from the configuration control unit 3, and the data is output to the processing result memory unit 700. Also, in the data selection control circuit 600, when there is a feedback instruction from the control signal from the configuration control unit 3, the processing result data is fed back to the LM input data control circuit 200 via the feedback unit 800. In the pipeline processing configuration according to an embodiment of the present invention, the feedback processing result can be input to the LM 5 again to perform another filtering processing.
[0025]
FIG. 3 shows a schematic configuration of an image processing apparatus that performs pipeline processing. In the present embodiment, a different filter process B904 is processed in a pipeline manner by returning the output result of the filter process A903 to the LM5 again. This pipeline processing configuration can be changed from FIG. 2B or 2C. That is, LM5 has the same 32-bit width as in FIGS. 2B and 2C. Also, the 5 × 5 filter processing 902 in FIG. 2C uses 25 multipliers and 24 adders. Therefore, among them, 9 × 2 multipliers and 8 × 2 adders are used. 3 can be configured. Alternatively, if the system shown in FIG. 2B has 18 multipliers and 16 adders, the processing configuration shown in FIG. 3 can be changed.
[0026]
Next, each block in FIG. 1 will be described in detail. The configuration control unit 3 receives information related to image data and an instruction to execute an image processing function from the control device 1 via the bus 2.
[0027]
FIG. 4 shows an example of a management table for image data information and image processing function information. These pieces of information are set from the control device 1 in a management table provided in a storage device (not shown) of the configuration control unit 3. FIG. 7A shows a screen management table, which includes an image memory channel number indicating a memory in which image data to be processed is stored, a physical address starting on an image screen to be processed, a screen size, and the like. Further, image data information such as a bit width (w) of image data and a screen data type indicating an image type such as color or monochrome is stored.
[0028]
FIG. 2B shows an image processing function setting table, which stores processing contents such as filter processing, processing forms such as single processing, pipeline processing and parallel processing, and the number of processings and processing sizes. FIG. 8C shows a processing number management table for checking whether or not the processing function to be set is available. In the illustrated example, when the LM5 has a 32-bit width, the number of processing operations of the filter processing that can be configured by the image processing unit 90 is shown. Is shown. That is, the number of filter processes is set using the bit width (w) of image data and the process size (kernel size of the filter process) as parameters. For example, when the bit width of image data is w = 8 and 3 × 3 filter processing is performed, the number of possible processes is 2, and two different filter processes are performed in a pipeline or two identical filter processes are performed in parallel. Can be run with
[0029]
FIG. 5 shows a processing flow of the configuration control unit 3. The configuration control unit 3 generates signals for controlling each block, including input / output control of data to and from the LM 5, by setting image data information and setting image processing functions (s103). These control signals are issued based on the bit width (w) of the image data and the setting function, for example, as shown in FIG.
[0030]
The table in FIG. 5B shows an example of the control signal of each block of the 3 × 3 filter processing having a data width of 8 bits for single, pipeline processing, and parallel processing.
[0031]
The storage location and screen size of the image data are set for the memory control unit 10 by the control signal from the configuration control unit 3. In the case of the pipeline processing, as shown in FIG. 5B and FIGS. 6 and 7 described later, the data from the processing target memory unit 100 and the output data of the LM 5 are transmitted to the LM input data control circuit 200. And a control signal for generating input data of the LM 5 from the data of the image processing result. For the LM output data control circuit 300, the output (LM_out) 301 of the LM5 and the LM5 are controlled so that the PU 400 and the data integration circuit 500 realize the product-sum operation of the 3 × 3 filter processing according to the image processing function. Based on the data (LM_thr) 302 directly input from the input data control circuit 200, a control signal for generating block data to be distributed to each PU 400 is generated.
[0032]
Next, for each PU 400, a control signal for setting a coefficient and selecting a function such as multiplication or addition is generated so that a product-sum operation or the like realizes a desired function. For the data integration circuit 500, for example, a control signal for performing the configuration of the circuit shown in FIG. 8 is generated, and the addition processing of the product-sum operation is performed from the operation result from each PU 400. These are performed basically in the same manner as in the prior art.
[0033]
The data selection control circuit 600 generates a signal for selecting a 3 × 3 filter processing result stored in the processing result memory unit 700 and selecting image data to be fed back for realizing pipeline processing.
[0034]
After generating all the control signals, the configuration control unit 3 generates a start signal for starting image processing to the memory control unit 10 (s104). The memory control unit 10 generates an address for accessing each memory serving as image data storage means and a timing signal according to the start signal.
[0035]
As described above, in the case of the pipeline processing configuration of FIG. 3, the configuration control unit 3 theoretically divides the 32-bit width LM5 into LM0 to LM3 every 8 bits, and fetches input data corresponding to each divided LM. Enable. Further, two sets of 3 × 3 filter processing are performed according to the image processing function to be used. In the present embodiment, the 3 × 3 filter processing has been described, but a 5 × 5 filter processing configuration may be adopted. That is, the configuration of the product-sum operation can be changed according to the filter size so that the filter size can be freely selected.
[0036]
FIG. 8 shows a configuration for realizing two different 3 × 3 filter processes, and FIG. 9 shows a configuration for realizing 5 × 5 filter processes. In the product-sum operation in the filter processing, the multiplication is performed by the PU 400, and the addition is performed by the data integration circuit 500. The control of the filter size is realized by controlling the data flow in the data integration circuit 500. The flow of data is controlled by selectors 510 to 550, and desired filter processing is realized by combining adders according to the filter size. Therefore, the configuration in FIGS. 8 and 9 can be changed by controlling the data flow by each of the selectors 510 to 550.
[0037]
In the present embodiment, the configuration control unit 3 performs all controls relating to the processing configuration and image processing. However, other alternatives to the present embodiment are possible, for example, the control device 1 performs the same function, or a part of the function performed by the configuration control unit 3 is replaced by another block.
[0038]
Next, the input / output control of the LM 5 will be described in detail with reference to FIGS. 6, 7, and 10 to 15. FIG. First, the relationship between the LM input data control circuit 200, LM5, and LM output data control circuit 300 will be described with reference to FIG. In the figure, the data 201 having a bit width of 8 bits input from the processing target memory unit 100 is M [7: 0], and the data 203 input from the data selection control circuit 600 via the feedback means 800 is FB [7: 0], LM_in [31: 0] for data 210 input to LM5 having a 32-bit width, LM_out [31: 0] for data 301 (202) output from LM5, and LM output data control from LM input data control circuit 200. Data 302 input to the circuit 300 without passing through the LM5 is described as LM_thr [15: 0]. Note that the code of each data may be replaced with the code of the corresponding signal line.
[0039]
First, an outline of the functions of the LM input data control circuit 200 and the LM output data control circuit 300 will be described. In the LM input data control circuit 200, input data LM_in [31: 0] from M [7: 0], FB [7: 0], LM_out [31: 0] to LM5, and LM output data control circuit 300 Of the input data LM_thr [15: 0]. At this time, LM_in [31: 0] and LM_thr [15: 0] are controlled according to the bit width of the image data, and when the bit width is 8 bits, it is divided into 8 bits as shown in FIG. Use signal lines.
[0040]
FIG. 10 shows the relationship between the theoretical separation configuration of the LM5 and the bit width of the input data. If the bit width of the image data is 16 bits as shown in FIG. 2A, the processing configuration shown in FIG. 2B is used. Therefore, LM_in [15: 0] is assigned to LM0 and LM_in [31:16] is assigned to LM1. Is entered. As shown in FIG. 3B, when the bit width of the image data is 8 bits and the processing configuration of FIG. 3 is used, M [7: 0] is set to LM0, LM_out [7: 0] is set to LM1, and FB [is set to LM2. 7: 0], and LM_out [23:16] is input to LM3.
[0041]
Next, in the LM output data control circuit 300, data necessary for the filtering process is selectively controlled from LM_out [31: 0] and LM_thr [15: 0], and output to the PU 400. Here, the data flow when the 3 × 3 filter processing A and B are pipelined will be described in detail.
[0042]
FIG. 7 shows the configuration of the LM output data control circuit 300. Image data LM_out delayed by one or two lines in the vertical direction from the signal line 301 and image data LM_thr without delay in the vertical direction from the signal line 302 are input to the LM output data control circuit 300. In the figure, the numbers attached to the oblique lines on the signal lines indicate the number of each signal line, and correspond to the number of transmitted bits.
[0043]
Inside the LM output data control circuit 300, data delayed by two stages in the horizontal direction is generated using delay circuits (flip-flops) 311 and 312 in the horizontal direction, and block data required for 3 × 3 filter processing, that is, A combination of nine pieces of image data corresponding to a 3 × 3 area on the screen is created and distributed to each of the PUs 400 of the filter processing A. Similarly, for filter processing B using the processing result of filter processing A, block data is created using delay circuits 313 and 314. The output data is divided into the processing A and the processing B by the output data bit separation circuit 315.
[0044]
FIG. 20 shows a configuration of an LM output data control circuit 300 according to another embodiment. The delay circuits 311 to 314 and 321 to 324 in the horizontal direction each have four stages so that the delay circuits can be applied to both 3 × 3 and 5 × 5 filter processing. Specifically, output data is generated according to the processing size (kernel size) specified in the output data bit circuit.
[0045]
FIG. 11 shows the relationship between the data arrays of the filtering processes A and B. This example shows the relationship when there is no delay in the product-sum operation, and the filter A in the figure shows the operation of the filter processing at the position of Am, n. Here, the subscript m indicates the x coordinate of the image, and n indicates the y coordinate. Nine pieces of data used for the processing are combined into one set by the LM output data control circuit 300, and are input to the PU 400 and the data integration circuit 500, which are circuits that perform the product-sum operation at the same time.
[0046]
Next, a description will be given of a mechanism for performing pipeline processing of a different filter process B on the processing result of the filter process A. The processing result of Am, n in the filter processing A is transmitted to the LM input data control circuit 200 via the feedback means 800 and used for the filter processing B. At this time, the processing result of Am, n is Bm, n. At this time, the output result of the filter processing B is a position delayed by one line and one pixel from the processing result of the filter processing A because the processing result of the filter processing A is processed. That is, the filter processing A outputs the result at the pixel of (m, n) in absolute coordinates, and at this time, the filter processing B outputs the result of (m-1, n-1).
[0047]
Summarizing the above, in the filter processing A, the filter processing is performed on the data from the memory unit 100 to be processed, whereas in the filter processing B, the processing result of the filter processing A is filtered in a pipeline manner. Are doing. At this time, the difference between the configurations of the filter processing A and the filter processing B is that the processing is performed on the data from the processing target memory unit 100 or the processing is performed on the data resulting from the filtering processing A. Is the same as the processing configuration in the case of a single filtering process.
[0048]
The data control for realizing the pipeline processes of the filter processes A and B shown in FIG. 11 will be described in further detail. The purpose of the data control here is to control the timing of the data flow so that the three data indicated by the hatched portions in FIG. 11 can be simultaneously generated from the two data LM_out and LM_thr. Simultaneous generation of the above-mentioned hatched portions means that data of the above-mentioned hatched portions is generated in LM_out and LM_thr at the same time.
[0049]
FIG. 12 shows the bit configuration of the data in the hatched portion in FIG. In the drawing, data separated from LM_in, LM_thr, and LM_out are shown in the upper row for each bit width, and the data array in filter processing A and B corresponding to the data is shown in the lower row.
[0050]
6 is controlled by the LM input data generation circuit 250 in FIG. 6 and LM_thr is controlled by the LM pass data generation circuit 251. Regarding LM_out, the data read from LM5 already has the bit configuration shown in FIG.
[0051]
FIG. 13 shows a timing chart in the filtering processes A and B. (A) shows the case where there is no delay in the operation in the filter processing, where RA indicates the read address of LM5 and WA indicates the write address. The LM5 in this example uses a synchronous memory having a bit width of 32 bits, a processing target bit width of 8 bits, and outputting data of an address designated by RA one clock after the clock.
[0052]
At this time, control is performed so that the lower 16 bits of LM5 are used for filter processing A and the upper 16 bits are used for filter processing B. That is, control is performed so that the LM5 and the signal lines 210 and 302 can be used by being divided into two in accordance with the bit width of the image data by the filtering processes A and B.
[0053]
Next, the relationship between the operation of the LM 5 and the filter processing A and the filter processing B will be described more specifically with reference to FIGS. FIG. 14 is a conceptual diagram for explaining the data array on the image screen to be processed and the data array of LM5. The LM5 uses a synchronous memory that outputs the data at the address specified by RA one clock after. Image data used in the filter A is indicated by circled numbers, and image data used in the filter B is indicated by double circled numbers. As shown in the figure, when RA (= 8) and WA (= 7) are instructed to LA5, filter processing A performs processing of data 68 using nine image data in a rectangle, and filter processing B similarly. In, processing of the result data 57 (corresponding to the image data 57) of the processing A is performed. The following description focuses on the filter processing indicated by a rectangle.
[0054]
FIG. 15 is an explanatory diagram in which the operation of the LM 5 is monitored for three clock periods as in (a) to (c). Hereinafter, the data used in the filter A is distinguished by adding a suffix a, and the data used in the filter B is given a suffix b.
[0055]
In the state of FIG. 3A, WA = 5 and RA = 6. When the image data 59a is input from the image memory 100, the LM 5 is controlled so as to output the image data 57a and 58a in synchronization with the input. At this time, the filter processing A performs the filter processing using the image data of 37a, 38a, 39a, 47a, 48a, 49a, 57a, 58a, 59a, and the processing result is data 48b. The data 48b is used as an input of the LM5, and at the same time, is used for the filtering B. The filter processing B uses the result data 26b, 27b, 28b, 36b, 37b, 38b, 46b, 47b, 48b of the processing A to output the processing result at the position 37.
[0056]
Next, in the state of FIG. 7B one clock later, WA = 6 and RA = 7, and the output from LM5 is data 56b, 57b, 67a, 68a of the address specified one clock earlier. At this time, the image data input from the image memory 100 is 69a, and the processing result data of the filter processing A is 58b. The processing result data of the filter processing B is data at the position of 47. Further, in the state of FIG. 10C after one clock, WA = 7 and RA = 8, and the outputs from LM5 are data 66b, 67b, 77a and 78a. The processing result data of the filter processing A is 68b, and the processing result data of the filter processing B is data at the position of 57.
[0057]
Thus, the clocks WA and RA are counted up in accordance with the bit width of the image data input from the image memory 100. Then, the LM 5 is controlled so that the 3 × 3 filter processing can be executed in synchronization with the image data read from the image memory 100.
[0058]
The above-described operation of the LM5 is a description of the two-stage pipeline processing. However, regarding the individual filter processing A or the filter processing B, the operation of the ordinary 3 × 3 filter processing or 5 × 5 filter processing is different. Will be the same.
[0059]
Further, in the present embodiment, the number of delay stages of the operation in the filtering process is not considered, but the number of delay stages may be considered. When the number of delay stages is considered, as shown in FIG. 13B, the difference between the data combination of the filter processing A and the data of the filter processing B in LM_in and LM_thr is only one clock, and the control method has no delay. Is exactly the same as
[0060]
As described above, according to the present embodiment, the input / output of the line memory can be easily controlled by a combination of data, so that filter processing with different filter sizes, and further, pipeline processing and parallel processing can be performed by a common hardware (resource ) Can be efficiently realized by changing the processing configuration. Hereinafter, another embodiment having a different processing mode will be described.
[0061]
FIG. 16 shows a bit configuration of data input to the 3 × 3 filter processing 901 in the processing configuration of FIG. 2B in which the bit width of image data is 16 bits. As in the case of FIG. 12, LM_in, LM_thr, and LM_out indicate data to be controlled in the upper row, and target data in the filter processing A901 corresponding to the data are shown in the lower row. As in the previous example, the control of separating these bits is performed by the LM input data generation circuit 250 for LM_in and by the LM passage data generation circuit 251 for LM_thr. As for LM_out, the data read from LM5 has the bit configuration already shown in FIG.
[0062]
FIG. 17 shows a processing configuration in which the bit width of the image data is 1 bit and 16 stages of A to P pipeline processing are performed. Also in this case, LM5 is divided into LM0 to LM31 with a 1-bit width, and LM_in, LM_thr, and LM_out data to be input to each 3 × 3 filter are divided into 1-bit widths in comparison with the 8-bit width in FIG. By controlling, it can be realized similarly.
[0063]
As described above, the input / output of the LM is controlled in accordance with the bit width of the image data, and the number of LMs used is substantially optimized, thereby enabling a plurality of stages of pipeline processing and realizing high-speed image processing. ing.
[0064]
FIG. 18 shows the configuration of an image processing apparatus using parallel processing according to the present invention. As shown in the drawing, the configuration is the same as that of the embodiment of FIG. 1 except that n processing target memory units 100 and n processing result memory units 700 are used.
[0065]
FIG. 19 shows a processing configuration of two parallel processes. The processing configuration when parallel processing of two 3 × 3 filter processes A using an LM having a 32-bit width and an image data having a bit width of 8 bits is shown. As shown in FIG. 2B, when one screen is divided into two and processed in parallel, the processing time for performing the filter processing A by one can be reduced to half.
[0066]
This processing configuration can be easily changed from the processing configuration of the pipeline in FIG. For example, in the LM input data control circuit 200, it is only necessary to change the processing result data transmitted by the feedback unit 800 to image data from the processing target memory unit 100. Therefore, an arbitrary configuration is possible such that the processing configuration of FIG. 3 is employed when pipeline processing is required, and the processing configuration of FIG. 14 is employed when parallel processing is required. Of course, a change from the processing configuration of FIG. 2C is also possible.
[0067]
【The invention's effect】
According to the present invention, the number of theoretical line memories is changed by changing the bit width of the line memory for one line together with the bit width of the image data to be handled. The processing configuration corresponding to the function can be changed flexibly within the range of the scale of the line memory or the arithmetic unit.
[0068]
Further, according to the present invention, it is possible to freely configure a plurality of stages of pipeline processing and a plurality of sets of parallel processing by controlling input / output of a line memory according to a bit width of image data to be handled and an image processing size. And the speed of image processing can be increased.
[0069]
That is, according to the present invention, it is possible to provide various processing configurations according to the bit width of image data to be handled and the setting function of image processing, so that an image processing apparatus with excellent versatility and high resource use efficiency is provided. it can.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram of an image processing apparatus according to an embodiment of the present invention.
FIG. 2 is a conceptual diagram showing various processing configurations of an image processing apparatus using a line memory.
FIG. 3 is a conceptual diagram showing a processing configuration of an image processing apparatus for pipeline processing according to the present invention.
FIG. 4 is a table showing setting contents of image information and image processing function information.
FIG. 5 is an explanatory diagram showing a flow of processing by a configuration control unit and an example of a control signal to be issued;
FIG. 6 is a functional block diagram showing a configuration of an LM input data control circuit for controlling input data of a line memory and peripheral circuits thereof.
FIG. 7 is a functional block diagram showing a configuration of an LM output data control circuit.
FIG. 8 is a functional block diagram illustrating a circuit configuration of an image processing unit that implements 3 × 3 filter processing.
FIG. 9 is a functional block diagram illustrating a circuit configuration of an image processing unit that implements 5 × 5 filter processing.
FIG. 10 is a conceptual diagram showing a theoretical division configuration of a line memory.
FIG. 11 is an explanatory diagram showing transition of block data for realizing pipeline processing of 3 × 3 filter processing.
12 is a data configuration diagram corresponding to a hatched portion in FIG. 11 and showing LM input data, LM passing data, and LM output data for each bit width.
FIG. 13 is a timing chart of the block data of FIG. 11;
FIG. 14 is an explanatory diagram showing block data and the position of a line memory in pipeline processing of 3 × 3 filter processing.
FIG. 15 is an explanatory diagram showing data movement of a line memory in detail.
FIG. 16 is a data configuration diagram showing LM input data, LM passing data, and LM output data for each bit width when image data has a 15-bit width in another embodiment of the present invention.
FIG. 17 is a conceptual diagram of a processing configuration for performing 3 × 3 filter processing in a case where image data has a 1-bit width by 16-stage pipeline processing in another embodiment of the present invention.
FIG. 18 is an overall configuration diagram of an image processing apparatus that performs n sets of parallel processing according to another embodiment of the present invention.
FIG. 19 is an explanatory diagram of a processing configuration for performing two parallel processing of 3 × 3 filter processing and a target memory;
FIG. 20 is a functional block diagram showing a configuration of an LM output data control circuit according to another embodiment.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Control device, 2 ... Bus interface between a control device and an image processing device, 3 ... Configuration control unit, 5 ... Line memory (LM), 90 ... Image processing unit, 100 ... Memory to be processed, 200 ... LM input data Control circuit, 250 LM input data generation circuit, 300 LM output data control circuit, 311-314 delay circuit, 321-324 delay circuit, 330 output data bit separation circuit, 400 PU, 500 data integration circuit , 600: data selection control circuit, 700: processing result memory unit.

Claims (9)

処理対象の画像データを格納する画像メモリと、所定の画像処理を行う画像処理回路と、前記画像メモリから読み出した画像データを処理サイズに合わせたブロックデータにして前記画像処理回路に出力するラインメモリを備える画像処理装置において、
前記画像データのビット幅に合わせて前記ラインメモリのライン幅を切り分けて、理論上、複数の分割ラインメモリを構成し、かつ、設定される画像処理機能(設定機能)にしたがって使用する本数の分割ラインメモリの入出力を、前記画像処理回路と対応するように制御する構成制御手段を備えたことを特徴とする画像処理装置。
An image memory for storing image data to be processed, an image processing circuit for performing predetermined image processing, and a line memory for converting the image data read from the image memory into block data according to the processing size and outputting the block data to the image processing circuit An image processing apparatus comprising:
Said cut line width of the line memory in accordance with the bit width of the image data, theoretically, to configure the plurality of divided line memories, and the division of the number to be used in accordance with the image processing function to be set (setting function) the output of the line memory, image processing apparatus characterized by comprising a configuration control means for control so as to correspond to the image processing circuit.
請求項1において、前記構成制御手段は前記画像処理機能に応じて、前記画像処理回路における複数の演算回路の組合せを制御
3×3や5×5などの処理サイズの変更および/またはパイプラインや並列処理などの処理形態の変更を可能したことを特徴とする画像処理装置。
According to claim 1, wherein the configuration control means in response to the image processing function to control the combination of a plurality of arithmetic circuits in the image processing circuit,
An image processing apparatus capable of changing a processing size such as 3 × 3 or 5 × 5 and / or changing a processing mode such as pipeline or parallel processing.
処理対象の画像データを格納する画像メモリと、所定の画像処理を行う画像処理回路と、前記画像メモリから読み出した画像データを処理サイズに合わせたブロックデータにして前記画像処理回路に出力するラインメモリを備える画像処理装置において、
前記画像データのビット幅に合わせて前記ラインメモリのライン幅を切り分けて、理論上、複数の分割ラインメモリを構成し、かつ、設定される画像処理機能(設定機能)にしたがって使用する本数の分割ラインメモリの入出力を、前記画像処理回路と対応するように制御する構成制御手段と、
前記構成制御手段の制御により、前記ラインメモリに入力する入力データを生成するラインメモリ入力データ制御手段と、前記ラインメモリの出力するデータから前記ブロックデータを生成するラインメモリ出力データ制御手段を備え、
前記ラインメモリのライン幅の範囲内で処理構成を任意に変更できるようにしたことを特徴とする画像処理装置。
An image memory for storing image data to be processed, an image processing circuit for performing predetermined image processing, and a line memory for converting the image data read from the image memory into block data according to the processing size and outputting the block data to the image processing circuit An image processing apparatus comprising:
The line width of the line memory is cut in accordance with the bit width of the image data to theoretically constitute a plurality of divided line memories, and the number of lines used in accordance with the set image processing function (setting function) is divided. the output of the line memory, and control Gosuru configuration controller to correspond to the said image processing circuit,
A line memory input data control unit that generates input data to be input to the line memory under the control of the configuration control unit, and a line memory output data control unit that generates the block data from data output from the line memory;
An image processing apparatus wherein a processing configuration can be arbitrarily changed within a range of a line width of the line memory.
請求項3において、前記画像処理機能が異なるi×iフィルター処理によるP段のパイプライン処理で、前記使用する本数Lが(i−1)×Pとなる場合、
前記構成制御手段は、パイプライン処理の各段に使用する前記分割ラインメモリをL/P本のライン群とし、最前段の画像処理回路には前記画像メモリから読み出した画像データを直接入力する分割ラインメモリを含むライン群を対応させ、次段以降の画像処理回路には順次、前段の処理データを入力する分割ラインメモリを含むライン群を対応させるように、前記ラインメモリの入出力の制御を行うことを特徴とする画像処理装置。
4. The image processing function according to claim 3, wherein the number L used is (i−1) × P in P-stage pipeline processing by i × i filter processing having different image processing functions .
The configuration control means sets the divided line memory used for each stage of the pipeline processing to an L / P line group, and directly inputs the image data read from the image memory to the foremost image processing circuit. The input / output control of the line memory is controlled so that a line group including a line memory is associated, and a line group including a divided line memory for inputting processing data of a previous stage is sequentially associated with a subsequent image processing circuit. An image processing apparatus characterized in that the image processing is performed.
請求項4において、前記ラインメモリ入力データ制御手段は、前記画像メモリから読み出した画像データと、前記ラインメモリの出力データの一部と、前記画像処理回路の各段の処理結果データとから、前記分割ラインメモリの全てに入力するための入力データを生成することを特徴とする画像処理装置。5. The image processing apparatus according to claim 4, wherein the line memory input data control unit is configured to calculate the image data read from the image memory, a part of output data of the line memory, and processing result data of each stage of the image processing circuit. An image processing apparatus for generating input data to be input to all divided line memories. 請求項3において、前記画像処理機能が同じi×iフィルター処理によるQ組の並列処理で、前記使用する本数Lが(i−1)×Qとなる場合、
前記構成制御手段は、並列処理の各組に使用する前記分割ラインメモリをL/Q本のライン群とし、前記画像メモリに格納されている画像データの1画面分を垂直方向にQ分割し各々の領域から並列に読み出される画像データを、対応するライン群に入力するように制御することを特徴とする画像処理装置。
4. The image processing function according to claim 3, wherein the image processing function is the parallel processing of Q sets by the same i × i filter processing, and the number L used is (i−1) × Q.
The configuration control means sets the divided line memory used for each set of parallel processing to L / Q line groups, and divides one screen of image data stored in the image memory into Q in the vertical direction, and An image processing apparatus which controls image data read out in parallel from an area to be input to a corresponding line group.
請求項4〜6のいずれか1項において、前記構成制御手段は、前記画像処理機能を示すフィルタサイズ(i×i)、処理個数(1またはPまたはQ)、パイプラインなどの処理形態を設定されると、前記処理個数分の画像処理回路を前記フィルタサイズに見合った演算回路によって構成するように制御し、
また、前記処理形態がパイプラインの場合に、前記画像処理回路の各々の処理結果データを前記ラインメモリ入力データ制御手段にフィードバックするように制御することを特徴とする画像処理装置。
7. The configuration control unit according to claim 4, wherein the configuration control unit sets a processing mode such as a filter size (i × i) indicating the image processing function , a processing number (1 or P or Q), and a pipeline. Then, control to configure the image processing circuits for the number of processes by an arithmetic circuit corresponding to the filter size,
In the image processing apparatus, when the processing mode is a pipeline, control is performed so that processing result data of each of the image processing circuits is fed back to the line memory input data control means.
処理対象の画像データを格納する画像メモリと、所定の画像処理を行う画像処理回路と、前記画像メモリから読み出した画像データを処理サイズに合わせたブロックデータにして前記画像処理回路に出力するラインメモリを備える画像処理装置において、
異なるi×iフィルター処理によるP段のパイプライン処理を行うためのP組の画像処理回路と、
前記画像データのビット幅に合わせて前記ラインメモリのライン幅を切り分けて、理論上、L(=(i−1)×P)本の分割ラインメモリを構成し、かつ、設定される画像処理機能(設定機能)にしたがって使用する分割ラインメモリをL/P本のライン群毎に各画像処理回路に対応させて、前記ラインメモリの入出力を制御する構成制御手段と、
前記画像メモリから読み出した画像データと、前記ラインメモリの出力データの一部と、前記画像処理回路の各段の処理結果データとから、前記ラインメモリを理論上で切り分けた全てのラインに入力するための入力データを生成するラインメモリ入力データ制御手段と、
前記ラインメモリから出力するデータから前記ブロックデータを生成するラインメモリ出力データ制御手段を備え、
ラインメモリのライン幅の範囲内でパイプライン処理構成を任意に変更できるようにしたことを特徴とする画像処理装置。
An image memory for storing image data to be processed, an image processing circuit for performing predetermined image processing, and a line memory for converting the image data read from the image memory into block data according to the processing size and outputting the block data to the image processing circuit An image processing apparatus comprising:
P sets of image processing circuits for performing P stages of pipeline processing by different i × i filter processes;
The line width of the line memory is cut in accordance with the bit width of the image data to theoretically constitute L (= (i−1) × P) divided line memories and set image processing functions A configuration control means for controlling input / output of the line memory by associating a divided line memory used in accordance with (setting function) with each image processing circuit for each of L / P line groups;
From the image data read from the image memory, a part of the output data of the line memory, and the processing result data of each stage of the image processing circuit, the line memory is input to all lines theoretically cut off. Line memory input data control means for generating input data for
A line memory output data control unit that generates the block data from data output from the line memory,
An image processing apparatus wherein a pipeline processing configuration can be arbitrarily changed within a range of a line width of a line memory.
請求項8において、i=3、P=2の場合に、
前記ラインメモリ入力データ制御手段は、前記画像メモリから読み出した画像データの幅のMビットと、1クロック前に読み出した画像データで前記出力データの中から得られるMビットを前段の画像処理回路に対応する2本の分割メモリからなるライン群に、このときの前段の画像処理回路の処理結果データのMビットと、その1クロック前の処理結果データのMビットを後段の画像処理回路に対応する2本の分割メモリからなるライン群に入力するように制御し、
前記ラインメモリ出力データ制御手段は、前記画像メモリから読み出した画像データと前段のライン群から出力する2の画像データとの画面上3ラインのデータ組みと、それらデータ組の1クロック前及び2クロック前のデータ組を合わせた9つのデータブロックを生成して前段の画像処理回路に、このときの前段の処理結果データと後段のライン群から出力する2の処理結果データを、前段の場合と同様に制御してデータブロックを生成して後段の画像処理回路に出力するように制御することを特徴とする画像処理装置。
In claim 8, when i = 3 and P = 2,
The line memory input data control means transmits the M bits of the width of the image data read from the image memory and the M bits obtained from the output data by the image data read one clock before to the preceding image processing circuit. In the line group consisting of the two corresponding divided memories, the M bits of the processing result data of the preceding image processing circuit and the M bits of the processing result data one clock before this line correspond to the subsequent image processing circuit. Control to input to a line group consisting of two divided memories,
The line memory output data control means includes: a data set of three lines on the screen of the image data read from the image memory and two image data output from the preceding line group; one clock before the data set and two clocks; Nine data blocks are generated by combining the preceding data sets, and the preceding processing result data and the second processing result data output from the subsequent line group are sent to the preceding image processing circuit in the same manner as in the preceding stage. An image processing apparatus, which controls so as to generate a data block and output the generated data block to a subsequent image processing circuit.
JP15118597A 1997-06-09 1997-06-09 Image processing device Expired - Lifetime JP3593439B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15118597A JP3593439B2 (en) 1997-06-09 1997-06-09 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15118597A JP3593439B2 (en) 1997-06-09 1997-06-09 Image processing device

Publications (2)

Publication Number Publication Date
JPH10340340A JPH10340340A (en) 1998-12-22
JP3593439B2 true JP3593439B2 (en) 2004-11-24

Family

ID=15513148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15118597A Expired - Lifetime JP3593439B2 (en) 1997-06-09 1997-06-09 Image processing device

Country Status (1)

Country Link
JP (1) JP3593439B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4146654B2 (en) 2002-02-28 2008-09-10 株式会社リコー Image processing circuit, composite image processing circuit, and image forming apparatus
JP4987364B2 (en) 2006-06-23 2012-07-25 株式会社東芝 Line memory mounting apparatus and television receiving apparatus
JP2010026738A (en) * 2008-07-18 2010-02-04 Ricoh Co Ltd Image processing apparatus, image processing method, image processing program and recording medium
US8754895B2 (en) * 2008-09-09 2014-06-17 Sony Corporation Pipelined image processing engine
JP2010086497A (en) * 2008-10-03 2010-04-15 Renesas Technology Corp Image-processing device and data processor
US9749548B2 (en) 2015-01-22 2017-08-29 Google Inc. Virtual linebuffers for image signal processors
US9756268B2 (en) 2015-04-23 2017-09-05 Google Inc. Line buffer unit for image processor
KR102577184B1 (en) * 2016-05-24 2023-09-11 삼성전자주식회사 Electronic apparatus and operating method thereof

Also Published As

Publication number Publication date
JPH10340340A (en) 1998-12-22

Similar Documents

Publication Publication Date Title
US5960211A (en) Data formatting method and apparatus for a data processing array
EP0298658A2 (en) Computational apparatus
KR20060060689A (en) Parallel processing array
JP3593439B2 (en) Image processing device
US8024549B2 (en) Two-dimensional processor array of processing elements
JP3971535B2 (en) SIMD type processor
JP5601327B2 (en) Data rearrangement circuit, variable delay circuit, fast Fourier transform circuit, and data rearrangement method
JPH02226336A (en) Digital signal processing device
US11249722B2 (en) Semiconductor device and method of controlling the semiconductor device
JP3726971B2 (en) Parallel processor device
JP4413052B2 (en) Data flow graph processing apparatus and processing apparatus
JP5116499B2 (en) Arithmetic processing circuit
KR200148662Y1 (en) High speed image processor
JP2518912B2 (en) Parallel data processor
JP3091441B2 (en) Data processing device
JP2001160736A (en) Digital filter circuit
JP4413905B2 (en) SIMD type processor
JP2003330914A (en) Vector calculation processing device, vector calculation method and vector calculation program
JP2569210B2 (en) Propagation signal processing device and processor system
JPH08171538A (en) Signal processor
JP2006270178A (en) Fir digital filter
JPS63245726A (en) Arrayed subscript converter
JPH0668055A (en) Digital signal processor
JPH09205346A (en) Digital filter
JPH0467253A (en) Parallel data processor

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040402

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: 20040824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040830

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

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110903

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120903

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 9

EXPY Cancellation because of completion of term