JPS63197283A - 並列画像処理装置 - Google Patents

並列画像処理装置

Info

Publication number
JPS63197283A
JPS63197283A JP2833387A JP2833387A JPS63197283A JP S63197283 A JPS63197283 A JP S63197283A JP 2833387 A JP2833387 A JP 2833387A JP 2833387 A JP2833387 A JP 2833387A JP S63197283 A JPS63197283 A JP S63197283A
Authority
JP
Japan
Prior art keywords
image processing
image
processing
host processor
parallel
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.)
Pending
Application number
JP2833387A
Other languages
English (en)
Inventor
Toyokazu Uda
豊和 宇田
Makoto Takaoka
真琴 高岡
Akiyoshi Fukumoto
福本 晶美
Susumu Sugiura
進 杉浦
Kentaro Matsumoto
健太郎 松本
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2833387A priority Critical patent/JPS63197283A/ja
Publication of JPS63197283A publication Critical patent/JPS63197283A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、複数の画像処理ユニットを有する並列画像処
理装置に関する。
[従来の技術] 画像処理の分野においては、その処理対象のデータの膨
大さに鑑みて、複数の画像処理ユニット(以下、プロセ
ッシングユニットPUと略す)により並列処理されるこ
とがある。
第2図は従来の並列画像処理装置を説明するブロック図
である。1はホストプロセッサ、2−1〜2−6は並列
処理を行うPU(以降、これらを総称して2で表す)。
32−1 + 33−2等はプロセッサ間通信を行う通
信路(以降、これらを総称して3で表す)、4はホスト
プロセッサ自身のメモリ、5は処理すべき画像や処理し
た画像を保持する画像メモリ、6は画像メモリ5のデー
タを表示するための表示コントローラ、7はCRT、8
はシステムバス、9は表示バスである。
第3図はPU2の内部のブロック図であり、201はプ
ロセッサ間通信機能を持つCPU、202はローカルメ
モリ、203はプロセッサ内部の内部通信路である。
第4図は画像処理対象の画像を説明する図であり、10
は画像、10−I〜10−6は分割された部分画像を表
す。
第2.3.4図を用いて、従来例に係る並列画像処理つ
いて説明を行う。まず、画像メモリ5に保持される画像
10はホストプロセッサ1により読出され分割され、各
分割された部分画像10−1〜10−4はそれぞれ、P
U2−、〜PU2−a夫々のローカルメモリ202へ、
通信路3を介して伝送される。次に、各PU2はそれぞ
れのローカルメモリ202に保持する部分画像に対して
並列に画像処理を行う。その結果は通信路3を介してホ
ストプロセッサ1より画像メモリ5へ転送され、CRT
8へ結果が表示される。これが基本的な並列画像処理で
ある。
[発明が解決しようとしている問題点]このようなシス
テムにおいては、以下の2つの問題があると考えられる
第1に、処理すべき画像を、各PUへ転送する時、及び
各puからの処理された画像を画像メモリ5へ転送する
時に、プロセッサ間通信を行う必要があるが、通常この
種の通信路3はシリアル転送で行なわれるため、通信速
度が遅く、画像データの転送に多くの時間が必要となる
重大な欠点がある。
第2に、通常、画像処理は処理すべき画素に対して近傍
演算が多い。このため、画像処理は部分画像の境界領域
を除いて、各PU内で処理を完結できる。また、境界領
域も通信路3を介してPU間間通管行うことにより処理
できる。このときの通信量は全体の処理時間に比べ小さ
い。ところが、例えば画像の回転を行わせようとすると
、各PUでそれぞれ保持する各部分画像をプロセッサ間
通信によりデータ転送を行い、画素の並べ換えを行わう
必要がでてくる。特に、PUを増やし、並列性を高め、
高速化を図ろうとすると、それだけ上記のPU間での通
信量が増加し、通信に要する時間が多くなり、処理効率
の低下が生じてしまう。同様な画像を分割して処理する
場合にプロセッサ間通信量が多い場合には、通信に時間
がかかるという重大な問題点がある。
即ち、上記の問題を整理すれば、各PUに課せられた画
像処理の処理単位が各PU間で実質的に独立したもので
あれば、境界領域の処理は少ないためにPU間間通管そ
れほど問題にならないが、一度に大量に発生するホスト
プロセッサとPU間の通信が処理効率上のネックになる
。逆に、画像の回転の如く、画像処理の単位が複数のP
U間にまたがる場合は、各PU間の通信が処理効率上の
ネックになる。
そこで、本発明は上記従来技術の問題点を解消するため
に提案されたものでその目的は、複数の画像処理ユニッ
トを用いて各ユニットで行なわれる画像処理が互いに依
存しあうような場合でも、各処理ユニット間の通信が処
理効率を低下させる要因とならない並列画像処理装置を
提供する点にある。
[問題点を解決するための手段] 上記課題を達成するための本発明の構成は、画像処理対
象の画像データを格納する画像メモリと、画像処理を行
う複数の画像処理ユニットと、前記画像メモリに接続さ
れると共に上記複数の画像処理ユニットとデータ転送路
により接続されるホストプロセッサと、画像処理前及び
画像処理後の画像データを前記転送路を介して、前記ホ
ストプロセッサと前記画像処理ユニット間で転送する並
列画像処理装置において、前記画像処理ユニットは、少
なくとも2つの画像処理手順を記憶することのできる記
憶手段を有し、この2つの画像処理手順の一方は、複数
の画像処理ユニット間で実質的に独立した画像処理であ
り、他方の画像処理手順は画像処理ユニット間で依存関
係を有するシーケンシャル画像処理であり、前記ホスト
プロセッサは、前記少なくとも2つの画像処理手順の1
つを選択実行させる起動手段を有することを特徴とする
[作用] 上記構成によると、記憶手段に記憶される少なくとも2
つの画像処理手順を選択することにより、複数の画像処
理ユニット間で実質的に独立した画像処理と、画像処理
ユニット間で依存関係を有するシーケンシャル画像処理
とを、共に高速に処理できる。
[実施例] 以下添付図面を参照しつつ本発明に係る実施例を詳細に
説明する。
く全体構成〉 第1図は実施例の画像処理装置の全体ブロック図で、1
はホストプロセッサ、2−1〜2−6は並列画像処理を
行うプロセッシングユニット(PU)、3はプロセッサ
間通信を行う通信路、4はホストプロセッサ1のプログ
ラム等を格納するメモリ、5は画像データを保持する画
像メモリ、6は画像メモリを表示するための表示コント
ローラ、7はCRT、8はシステムバス、9は表示バス
である。
第1図システムは2つの大きな機能を有する。
その1つはホストプロセッサ1が撞数の通信路を有して
いることである。第1図の例では、ホストプロセッサ1
は3つの通信路3−1+ 3−3+ 3−、を有してい
る。第2の機能は並列処理とパイプライン処理を使い分
けることができることである。
第5図に、これらのPU及びホストプロセッサ1に使用
されるマイクロプロセサLSI(大規模集積回路)の内
部構成を示す。このマイクロプロセサは英国のI NM
O3社製のTa2Oである。
図中、301は32ビツトCPUであり、306〜30
9はリンク(通信路)インターフェース、304、は4
にバイトのローカルメモリ、305は内蔵メモリ304
の拡張メモリ用のインターフェース、302は割込み等
のシステムサービスを統御する部分、又300は浮動小
数点演算ユニットである。LSIが内蔵する4つのリン
クインターフェースを、第1図に示すように、各PU間
で結合する。又、このLSIをホストプロセッサ1とし
て使う場合は、3つのリンクインターフェースを、PU
2−1.2−s、2−sと接続する。
画像処理は各PUが行なう。PU2−1〜2−6は、デ
ータ処理に先立ち、ホストプロセッサから画像処理の手
順を記述した処理プログラムを通信路3−In  3−
3+  3−5を介して受信して、ローカルメモリ30
4に格納する。このようなプログラムとしてこの実施例
では、第7図と第9図に夫々示したところの二値化処理
と画像回転処理を挙げて説明する。ローカルメモリ30
4に格納されたプログラムは第6図のように格納されて
いる。即ち、第7図若しくは第9図の処理プログラムが
第6図の処理プログラムに該当する。そして、本実施例
の並列処理装置では、並列処理又はパイプライン処理を
効率よく行なうた。めに、第6図にも示すように、処理
プログラムの他に種々のデータをローカルメモリ304
に格納する。ローカルメモリ304に格納されたプログ
ラムは第6図のように格納されている。第6図中の送信
元プロセサ番号はデータを受けた相手のプロセサの番号
を示す。又、送信先プロセサ番号は、画像処理結果を送
るべき送信先プロセサの番号である。プロセサ番号は、
第1図システムではホストプロセッサ1には“O′を、
PUI、には1″を、PU2−2には“2”・・・が割
り当てられている。単純な並列処理の場合には、各PU
内に格納された、送信先プロセサ番号はホストプロセッ
サ1のプロセサ番号“0”である。一方、例えばパイプ
ライン処理等の場合は、そのアルゴリズムに従ったプロ
セッサ番号が格納される。又、隣接プロセサ番号とは、
このPUが担当する分割画像に隣接する分割画像であっ
て、その分割画像の処理を担当するPUのプロセサ番号
である。
〈並列処理〉 並列処理として、例えば第4図面像を閾値マトリクスに
より二値化する場合を考えてみる。第7図にその処理手
順を示す。この二値化処理は、例えば4×4のマトリク
スの各要素と画像データの画素とを比較して(ステップ
S1)、その大小判別(ステップS2)により、白又は
黒と二値化(ステップ33.34)する。ステップS5
では二値化結果をローカルメモリ304に格納する。
この動作を、同じブロック内の全ての画素について実行
する(ステップS7)。ステップS8では、この現在処
理中のブロックが、このPUの処理担当の最終ブロック
かを調べる。もし最終ブロックならばステップS12で
、処理済みの画像データを、送信先プロセサ番号に示さ
れたユニットに転送する。この場合の送信先プロセサ番
号は前述したようにホストプロセッサ1の“0″である
ステップS8で、もしまだ処理すべきブロックが残って
いるのならば、ステップS9へ進み、ローカルメモリ3
04から次のブロックを切り出す。ステップ510では
、この切り出されたブロックが境界領域にあるか否かを
調べる。これは、切り出されたブロックが4×4の大き
さをもたないことによりわかるやもし境界領域にないの
ならば、ステップS1へ戻り、前述のステップ81以下
を繰り返す。境界領域にあるのならば、ステップSit
で、隣接プロセサ番号を求め、そのPUから、必要な画
素のデータをもらい、ステップS1へ戻る。
上記のステップは各PUに共通しており、従って、処理
を終了したPUは一斉にホストプロセッサ1へ処理デー
タをリンクインターフェース(通信路3)を介して、転
送する。ホストプロセッサ1は、この通信路3−1n 
 3−s、  3−s上のデータを自身のローカルメモ
リ304に格納して、システムバス8を介して画像メモ
リ5に戻す。メモリ4は、メモリインターフェース30
5を介してホストプロセッサ1を接続され、外部メモリ
となっている。
〈並列処理方式の効果〉 かくして、二値化の画像処理が終了した。この場合、二
値化の如き画像処理は、分割画像(画像処理の単位)毎
(PU毎)の画像処理が各pu間で独立しているので、
第7図のフローチャートにて示したように、20間の通
信はわずかじか発生せず、通信のネックとなる部分はホ
ストプロセッサと各20間の通信しかないと言える。し
かし、ホストプロセッサ1と各20間とは複数のインタ
ーフェース通信路が存在しているので、処理スピードの
低下はない。即ち、ホストプロセッサ1として、複数の
通信路を持ちそれらを介して並列にデータ転送が可能な
ようなプロセッサを用いており、複数のPUと並列にデ
ータ転送を行うことにより、画像データを高速に転送す
ることが可能となる。更に、ホストプロセッサ1と各2
0間の命令や状態などのデータの受は渡しなども並列に
実現でき、高速化が図れる。
さて、本実施例ではホストプロセッサ1と各20間の通
信路が3つの場合について説明したが、ホストプロセッ
サ1が2つ以上の通信路3を持ち、これらを介して並列
にデータ転送を行えるホストプロセッサを使用すること
も可能である。
また、第1図示の本実施例において、各PUはデータ転
送と処理を同時に行うことにより、複数のパイプライン
処理も実現できる。
くバイブライン処理方式〉 上記の二値化画像処理は各20間での処理が互いに実質
的に独立しているので、純粋な意味での並列処理に適し
ていた。ところが、例えば画像の回転のように、処理前
の画素位置を担当するPUと処理後の画素位置を担当す
るPUとが異なるものとなってしまう場合は、PU間通
信が増えてくるので、ホストプロセッサ1とPU間との
通信路を増やしただけでは対処しきれない。そこで、画
像の回転の如くバイブライン処理が可能な場合には、各
PUを論理的にパイプライン構成をとるように結合する
。この場合、システムの構成は第1図と変わらずに、P
Uのローカルメモリ304に格納される処理プログラム
、送信元プロセサ番号、送信先プロセサ番号等が、各P
U間でユニークなものとなる。
画像の回転は次式で表わされる。即ち、読出し座標を(
XR,Y−)、書込み座標を(x、、yw)とすれば、 即ち、xR=  cosθ・X、−5INθ−Y。
YR=  SINθ−x、+cosθ−Y。
である。
第8図に、この画像回転をバイブライン処理を行なって
実現する場合のシステムを、4つのPUによって実現し
たものを示す。即ち、ホストプロセッサ1は、回転後の
座標=書込み座標(X、。
Yw)を次々と生成して、PU:lIに転送し、回転前
の座標=読出し座標(XR、YR)をPU2−3から受
けとる。この読出し座標(XR,YR)に基づいて、画
像メモリ5の内容を読出して、そのビット値を、書込み
座標(x、、y、)に書込む。
具体的に説明すると、ホストプロセッサ1はPUl、に
座標Xw、Y、を送る。PtJ−、では、a=CO8θ
・Xwを演算する。このaと座標(X−。
Y、)とをPU2−2に送る。PU2−2では、XR=
a−5INθ−Y、を演算する。PU2−2はこの演算
結果xRと(Xw、Y、)とをPU2−4に送る。PU
2−4はb=SINθ−X、を演算する。PU2−4は
、xR,(x、、y、) とbをPU2−3に送る。P
U2−sはYR=b+CO5θ・Ywを演算する。こう
して、XRとYRはホストプロセッサ1へ送られる。
ここで送信元プロセサ番号と送信先プロセサ番号をまと
めると、 となる。
第9図は各PUの画像処理手順を示す。このPUの手順
が実行される以前に、各PUはそのプログラム、プロセ
サ番号等をホストプロセッサ1から受信して、内部のロ
ーカルメモリ304に格納しているものとする。又、第
9図の処理手順は説明の便宜上、各PUに一般的な形式
で示す。ステップS20ではローカルメモリ304から
送信元プロセッサ番号を読取る。ステップS21では、
この送信元のPU(又はホストプロセッサ1)からのデ
ータを待つ。データを受信すると、ステップ322で、
このPUに課せられた画像処理の一部(例えば、第8図
のPU2−+であれば、a震C0Sθ・xw)を実行す
る。ステップ$23では送信先プロセサ番号を読出す。
ステップS24では送信先がデータ受信可であるかを調
べ、可であれば、ステップS25で処理結果データを送
信する。
このように、第8図システムでは、4つのPUが4段の
パイプライン構成となっており、全体で1つの画素の回
転を実現するものとなっている。
又、処理シーケンスはローカルメモリ内の送信元、送信
先プロセサ番号に規定されているので、各PUは連続的
な処理が可能となり、高速の画像回転処理が達成される
〈変形例〉 画面分割による並列処理か、パイプライン処理による並
列処理かの選択は、上述したように、ホストプロセッサ
1が各PUに処理手順及びプロセサ番号を送ることで選
択される。この場合、これらの処理手順を前もって各P
U内に格納しておき、ホストプロセッサ1が命令を出し
て選択するようにしてもよい。
尚、上記実施例はPUが4個若しくは6個の場合につい
て述べたが、PU2が2個以上の場合についても容易に
実現できる。また、処理に全PUを使用する必要はなく
、適宜必要な数を論理的に接続すればよい。
また、PUを格子状に接続しているが、これ以外の接続
形態、例えばスター状、リング状接続にも容易に通用可
能である。
[発明の効果] 以上説明したように本発明の並列画像処理装置によれば
、複数の画像処理ユニットを用いて各ユニットで行なわ
れる画像処理が互いに依存しあうような場合でも、パイ
プライン処理を行なうことによって、各処理ユニット間
の通信が錯綜せず、処理効率が低下しない。
【図面の簡単な説明】
第1図は実施例に係る並列画像処理装置の全体図、 第2図、第3図は従来技術を説明する図、第4図は従来
技術1本実施例に使われる画像分割の例を示す図、 第5図は本実施例に用いられる画像処理用のLSIの構
成図、 第6図はローカルメモリ内の構成図、 第7図、第9図は実施例の制御手順を示すフローチャー
ト、 第8図は画像回転を行なうためのPUの構成を説明する
図である。 図中、1・・・ホストプロセッサ、2−3〜2−6・・
・プロセッシングユニット(PU)、3.3−+〜3−
6・・・通信路、4・・・メモリ、5・・・画像メモリ
、301・・・CPU、304・・・ローカルメモリ、
306〜309・・・リンクインターフェース(通信イ
ンターフェースである。 特許出願人  キャノン株式会社 第5図 第6図 〜寸

Claims (3)

    【特許請求の範囲】
  1. (1)画像処理対象の画像データを格納する画像メモリ
    と、 画像処理を行う複数の画像処理ユニットと、前記画像メ
    モリに接続されると共に、上記複数の画像処理ユニット
    とデータ転送路により接続されるホストプロセッサとを
    有して、 画像処理前及び画像処理後の画像データを前記転送路を
    介して、前記ホストプロセッサと前記画像処理ユニット
    間で転送する並列画像処理装置において、 前記画像処理ユニットは、少なくとも2つの画像処理手
    順を記憶することのできる記憶手段を有し、この2つの
    画像処理手順の一方は、複数の画像処理ユニット間で実
    質的に独立した画像処理であり、他方の画像処理手順は
    画像処理ユニット間で依存関係を有するシーケンシャル
    画像処理であり、 前記ホストプロセッサは、前記少なくとも2つの画像処
    理手順の1つを選択実行させる起動手段を有することを
    特徴とする並列画像処理装置。
  2. (2)前記ホストプロセッサは、前記少なくとも2つ画
    像処理手順を前記記憶手段上で書き換えることにより、
    処理手順を選択することを特徴とする特許請求の範囲第
    1項記載の並列画像処理装置。
  3. (3)ホストプロセッサが複数の画像処理ユニットへ指
    令を出すことにより、複数の画像処理ユニットの動作を
    選択することを特徴とする特許請求の範囲第1項記載の
    並列画像処理装置。
JP2833387A 1987-02-12 1987-02-12 並列画像処理装置 Pending JPS63197283A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2833387A JPS63197283A (ja) 1987-02-12 1987-02-12 並列画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2833387A JPS63197283A (ja) 1987-02-12 1987-02-12 並列画像処理装置

Publications (1)

Publication Number Publication Date
JPS63197283A true JPS63197283A (ja) 1988-08-16

Family

ID=12245683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2833387A Pending JPS63197283A (ja) 1987-02-12 1987-02-12 並列画像処理装置

Country Status (1)

Country Link
JP (1) JPS63197283A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742406A (en) * 1991-03-01 1998-04-21 Canon Kabushiki Kaisha Image processing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742406A (en) * 1991-03-01 1998-04-21 Canon Kabushiki Kaisha Image processing apparatus

Similar Documents

Publication Publication Date Title
KR100840113B1 (ko) 광대역 네트워크상의 컴퓨터 구조를 위한 처리 모듈
KR100847982B1 (ko) 광대역 네트워크상의 컴퓨터 구조에 있어서 자원 전용방법 및 시스템
KR100959748B1 (ko) 컴퓨터 프로세서 상에서 프로그램들 및 상기 프로그램들과 관련된 데이터를 처리하는 방법
KR100866739B1 (ko) 광대역 네트워크용 컴퓨터 구조에 있어서 데이터 동기를위한 시스템 및 방법
KR100890134B1 (ko) 광대역 네트워크용 컴퓨터 구조를 위한 메모리 보호시스템 및 방법
JPS62192867A (ja) イメ−ジデ−タを扱うワ−クステ−シヨン
CN108475416A (zh) 处理图像的方法和装置
JP2784459B2 (ja) データ処理システム
JPS63197283A (ja) 並列画像処理装置
US20030231183A1 (en) Apparatus and method of processing image data
JPS63197282A (ja) 並列画像処理装置
CN111045623B (zh) 一种多gpu拼接环境下图形命令的处理方法
JPH10143426A (ja) メモリ回路に格納されたピクセルデータを転送する方法および装置
JPH01296388A (ja) 画像生成装置
JPH01284961A (ja) カラー画像処理装置
JP3019906B2 (ja) 画像処理装置
JP2839026B1 (ja) 並列画像処理装置
JPS61233869A (ja) 画像処理装置
JPS63128459A (ja) 画像デ−タバス
JPH01199280A (ja) 逐次マスク演算処理方式
JPS6177948A (ja) デ−タ処理装置
JPH0126108B2 (ja)
JPH04291681A (ja) 超高速画像処理システムのフィルタリング処理方式
JPH06119438A (ja) 能動型画像記憶装置
JPS62194582A (ja) 画像処理方式