JPH07104839B2 - マルチプロセツサ・システムの制御方法 - Google Patents

マルチプロセツサ・システムの制御方法

Info

Publication number
JPH07104839B2
JPH07104839B2 JP17154186A JP17154186A JPH07104839B2 JP H07104839 B2 JPH07104839 B2 JP H07104839B2 JP 17154186 A JP17154186 A JP 17154186A JP 17154186 A JP17154186 A JP 17154186A JP H07104839 B2 JPH07104839 B2 JP H07104839B2
Authority
JP
Japan
Prior art keywords
data
processor
image
ring bus
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 - Lifetime
Application number
JP17154186A
Other languages
English (en)
Other versions
JPS6329874A (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.)
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 JP17154186A priority Critical patent/JPH07104839B2/ja
Publication of JPS6329874A publication Critical patent/JPS6329874A/ja
Publication of JPH07104839B2 publication Critical patent/JPH07104839B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理を高速に実行するための並列処理装
置に係り、特に画像などの2次元データを複数のプロセ
ツサを用いて処理するのに好適なマルチプロセツサシス
テムの制御方法に関する。
〔従来の技術〕
画像処理では、単一のプロセツサでは実現できないほ
ど、大きな計算能力が要求されるため、マルチプロセツ
サ型式のイメージプロセツサが、種種提案されている。
例えば、ISSCC 82に発表された「An LSI Adaptive Arr
ay Processor」のように、画素数分だけのプロセツサを
用意し(完全並列型と呼ばれる)、それぞれのプロセツ
サは1ビツトの演算という低い機能しか持たないが、こ
れを多数個並べることによつて高速化を図るというよう
な構成がある。この従来技術では、単純だが超高速演算
が要求されるフイルタリング等の前処理のレベルに着目
していた。
ところが、イメージ・プロセツサの応用分野が拡大する
につれ、要求される処理も高度化してきている。すなわ
ち、前処理のみの高速化では意味がなく、より上位のレ
ベルを扱うことのできるプロセツサが要求されるように
なつた。
これに応えるものとして、先の出願(特願昭58−246936
号)では、高度な機能を持つ複数のプロセツサをリング
状に接続することによつて、高速でかつ複雑な処理をも
可能とする方式を提供した。
〔本発明が解決しようとする問題点〕
画像処理では2次元的に隣接するプロセツサと高速にデ
ータ転送を行えるようにする必要がある。
前述した先の出願である、プロセツサをリング状に接続
する方式は、回路規模の増大を防ぐために考案されたも
のである。しかし、この方式は、データをリングバス上
を一次元的に流すために、隣接8方向のプロセツサへの
データ転送は、その方向によつては、大変に時間がかか
るという問題を持つている。
また、このようなリングバス状の接続方法だけでなく、
一般に、どのような接続方法を採るマルチプロセツサ・
システムにおいても、プロセツサ間のデータ転送は、全
体の処理時間を遅くするものであり、特にデータ転送方
向や経路を切換えるために要する時間も大きな無駄時間
となるから、データ転送の方向や数は少ない程、処理を
高速化できる。本発明の目的は、データの処理方法と転
送方法に工夫を加えることによつて、マルチプロセツサ
・システムの能力を更に高めるためのマルチプロセツサ
の制御方法を提供することにある。
〔問題点を解決するための手段〕
上記目的は、プロセツサ間で画像データを受け渡すとき
にその転送方向を減少させることによつて達成される。
すなわち、従来は、画像を分割して処理する場合、画像
処理を施した結果生ずる画像の非正常部(後で詳述す
る)を正常データと置換するために、隣接する8方向の
プロセツサ間で、データの交換が必要と考えられていた
が、本発明では、このデータ転送を、3方向のみできる
ようにし、全体としての処理時間を大幅に短縮できるよ
うにした。
〔作用〕
まず、画像を分割して処理する場合に生じる問題につい
て、第2図により説明する。200は対象画像であり、201
は画像200を分割してできる部分画像である。第2図に
示すようにX×Y画素の大きさの画像をx×y画素の大
きさの部分画像Sijに分割する。そして、このm×n個
の部分画像Sijを、m×n台のPUに割り当てて処理す
る。従つて、フイルタリング処理のように、1つの画素
の処理結果は、その画素を中心とするマスクエリアのな
かに含まれる複数の画素のデータによつて決定される場
合には、第3図に示すように、画像の周辺部の画素にお
いては、その画素を中心とするマスクエリア303が、画
像の外にはみ出すため、正しく処理することができない
(このようにしてできる正しく処理できない部分を非正
常部と呼ぶ。)。第3図で、300は対象画像、301は正常
部、302は非正常部、303はフイルタのマスクエリアであ
る。この問題は画像処理一般に生じるが、特に領域を分
割して処理する場合には、後で各部分画像をつなぎ合わ
せて元の大きさに戻してやる必要があるため、部分画像
の周辺(すなわち境界部)に非正常部が生じると致命的
である。これを避けるために、領域を分割して処理する
場合には、第4図(a)に示すように、部分画像400を
あらかじめ周辺の部分画像401,402,403,404,405,406,40
7,408とオーバラツプさせておくことが必要である。更
に、部分画像の周辺に生ずる非正常部の幅(マスクエリ
アの幅から1を引いた数の半分)は、フイルタリングを
繰り返すことによつて、加算的に増加していくので、こ
れを阻止する必要がある。つまり、フイルタリング処理
を実行する度に(あるいは何回かの繰返し毎に)非正常
部を正常に処理された画像で置換することが必要とな
る。この非正常部の置換は次のようにして実現できる。
部分画像Sij400をフイルタリング処理して生じた非正常
部を、隣接する部分画像間で見ると、第4図(b)に示
すように、互いに相手の正常に処理されたエリア内にあ
ることが分かる。つまり、第4図(b)の斜線で示した
領域409が非正常部であり、この非正常部409は周辺の部
分画像の正常部410,411,412,413,414,415,416,417に属
する。従つて、8方向に隣接するプロセツサユニツトの
もつこれらの正常な画像データを用いれば、先の置換は
正しく行なうことができる。
本発明ではフイルタリング処理後の画像が処理前の位置
に対して相対的に、全体にシフトすることを許容し、マ
スクエリアの左上隅位置に処理結果の画素を書き込むよ
うにして、非正常部を対象画像の右方と下方のみに生じ
させるようにした。このようにすると、前述の置換のた
めのデータ転送を8方向ではなく3方向のみで済ませら
れるので、プロセツサ間のデータの転送が高速化され
る。
以下、本発明の実施例を第1図により説明する。100は
部分画像であり、101,102,103は部分画像100の周辺に存
在する部分画像である。
104は、フイルタリング処理の結果生じた非正常部であ
る。ここで、フイルタリング処理の際、第3図のマスク
エリア303の左上隅位置に処理結果の画素を書き込み、
非正常部104を図示のようにあらかじめ周辺の3つの部
分画素101,102,103とオーバーラツプさせておく。
同図(b)において、105,107,109は正常部であり、10
6,108,110は非正常部である。
そして、部分画像100の非正常部104を周辺の部分画像の
正常部105,107,109で置き換えてやれば正しく処理を行
なうことができる。
従つて、各部分画像に対応して設けられたプロセツサに
おけるデータの転送が3方向で済みデータの転送が高速
化される。
〔実施例〕
本発明を実施するのに適したプロセツサの代表的な構成
例を第5図に示す。図中破線で示したプロセツサ・ユニ
ツト20は、プロセツサ・エレメント3と、そのローカル
メモリ2から成り、これを複数組並べる。
プロセツサユニツト20とその内部の回路については、同
一の回路構成が、64組使われており、( )の中の番号
は、第何番目のものであるかを示す。
それぞれのプロセツサユニツト3とローカルメモリ2の
間には、パス制御回路4が入つており、64個のパス制御
回路はシフトレジスタ状に接続されている。又、このシ
フトレジスタはリングバス1を形成しており、リングバ
ス制御回路8によつて制御される。
そして、全体はマイクロコンピユータ5で制御され、シ
ステムバス10と入出力のためのインタフエース部9を介
して、ホストコンピユータ(図示せず)と接続される。
又、リングバス1はリングバス制御回路8を介して外部
機器(図示せず)との間で画像の入出力を高速に行なう
ためにも利用する。尚、本発明によれば、プロセツサユ
ニツト数は任意に選択可能で、必要とする処理能力に合
わせて自由に増減できる。
処理対象である画像データはリングバス制御回路8へ入
力されて、リングバス1を経由して、各プロセツサユニ
ツト20(1)〜20(64)のローカルメモリ(1)〜2
(64)に送り込まれるようにしている。又、各プロセツ
サユニツト3(1)〜3(64)はその中に独立に専用の
プログラムメモリを持ち、その内容(プログラム)はシ
ステムメモリ6から、必要に応じてコントローラ7によ
つて転送される。このとき全プログラムエレメント3
(1)〜3(64)に対し、一斉に同一プログラムを転送
することもできる。そしてプログラムエレメント3の任
意アドレスからの起動や停止などの制御は、マイクロプ
ロセツサ5から行い、各プログラムエレメント3は必要
な時にはマイクロプロセツサ5に対して割込みを掛ける
ことができる。
第5図で示したリングバス1上にあるパス制御回路4の
1プロセツサユニツト分の詳細を第6図に示す。パス制
御回路には2種のラツチ(データラツチ21とフラツグラ
ツチ22)があつて、それぞれシフトレジスタ状に隣のプ
ロセツサユニツトの同様のラツチに接続され、リングバ
ス制御部8と合せて、全体としてリングバス1を構成し
ている。
すなわちデータラツチ21とフラツグラツチ22は、シフト
クロツク14を受けとるごとにデータを更新することによ
つてシフトレジスタとしての動作をし、64組の全体とし
て、リング状にデータを転送する。
第6図に基づき、まずデータの流れについて説明する。
隣の段のデータラツチから送られて来る16ビツトのデー
タは、データバス制御部23に入る。ここには、プロセツ
サエレメント3のデータバス51とローカルメモリ2のデ
ータバス52と53(それぞれ16ビツトの幅を持つ)が接続
されている。そしてその先にその段に所属するデータラ
ツチ21があつて、隣のプロセツサユニツトへと出て行
く。データバス制御部23は図示したように7つのトライ
ステート制御ゲート231〜237によつて構成され、どの制
御ゲートを開き、どの制御ゲートを閉じるかはセレクト
信号54によつて切替られる。セレクト信号とは、プロセ
ツサエレメント3から出力されるリード信号(RD)55、
ライト信号(WT)56、およびアドレスバス(図示せず)
の組合せによつて決まる信号である。リングバス1はデ
ータの転送のみの役割とし、ローカルメモリ2へのアド
レス及びリード・ライト信号は(プログラムによつて)
プロセツサエレメント3から供給するようにして、アド
レスカウンタなどのハードウエアを省略し、回路規模の
縮小を図つている。
次にフラツグラツチの機能について説明する。第6図に
示したように、フラツグラツチの出力58はANDゲート25
によつて、プロセツサエレメント3のリード・ライト信
号(RD55,WT56)をORゲート24によつてオアした信号57
と、アンドを取つて、プロセツサエレメント3のレデイ
ピン(RDY)59に接続されている。従つて、プロセツサ
エレメント3のリード・ライト動作は、フラツグラツチ
22に1がセツトされている時にのみ実行され、フラツグ
ラツチ22が1になるまでは、プロセツサエレメント3の
リード・ライト動作は引き延ばされる。つまり、リング
バス1上を流れてくるデータ11が、所望のプロセツサユ
ニツト3のデータバス制御部23に到達するタイミング
で、フラツグラツチ22がセツトされるようにして、プロ
セツサエレメント3のプログラムによるリード・ライト
動作との同期を取つている。尚、フラツグラツチの状態
は、リングバス制御回路8から送られて来るモード信号
12、前段のフラツグラツチの状態58(i−1)、及び前
シフトサイクルにおける自分自身の状態58(i)によつ
て、フラツグ制御回路26が決定する。
前述したように、本発明では複数のプロセツサユニツト
20がリングバス1によつて物理的に1次元的に接続され
ている。これを第2図に示したような2次元の領域分割
モードで利用する場合に、各プロセツサユニツトを論理
的な2次元配置(m×n)に対応させる。例えば、第2
図の部分画像S11はプロセツサユニツト20(1)に、部
分画像S21はプロセツサユニツト20(m+n)に、部分
画像Smnはプロセツサユニツト20(mn)にそれぞれ対応
している。このとき、プロセツサユニツト間の接続の関
係は第7図のようになつており、実は画像のラスタスキ
ヤンとの整合がうまく取れている。更に、プロセツサユ
ニツト間の論理的な2次元方向の距離と物理的な1次元
の距離との対応も単純になる。例えば、論理的な2次元
空間での右へのデータ移動は、リングバスの1回のシフ
トであり、下への移動はm回のシフト、左上への移動は
(mn−n−1)回のシフトという具合に対応するが、こ
の関係は全てのプロセツサユニツトの組合せについて成
立する。これらの特徴を生かしたリングバス制御方式
は、次のようになる。
全てのプロセツサエレメント3には、『ローカルメモ
リ2のアドレスを更新しつつリードを行ない、次いでラ
イトを行なうことを繰り返す』プログラムをロードし起
動して置く。
モード信号12によつて一度全てのフラツグラツチ22を
1にセツトして、全てのプロセツサエレメント3にロー
カルメモリ2からの読出しを行なわせる。
再びモード信号12によつて全フラツグラツチ22を0に
戻してプロセツサエレメント3のライト動作を引き延ば
して置き)、リングバス1を所定回数(プロセツサユニ
ツトの論理的な2次元配列と論理的な2次元の転送方向
によつて決まる数)だけシフトする。
再度全フラツグラツチ22を1にセツトする。これで転
送されたデータが、プロセツサエレメント3のライト動
作によつてローカルメモリ2に書き込まれる。こうして
1画素分の置換が完了する。以後 に戻つて、同じ動作を所定回数(オーバラツプの幅
と部分画像の1辺の長さの積として求まる画素数、第1
図を参照)だけ繰り返す。
ここまでで、1方向分の画素データの置換が終了する。
リングバス制御回路8にセツトしてあるリングバスの
シフト回数(で用いる)を変更して、〜をもう一
度実行する。
これで2方向分の置換が終了するが、ここまでで3方向
転送型で実際に必要な転送は全て完了しており、3回目
の転送は不要である。何故ならば、(左への転送の次に
上への転送を行なうとして)1回目の置換時に第1図で
示したSi1jの正常データは、Sijへと転送さ
れており、これを2回目の転送でSij中の正常デー
タと合わせてSijへ転送できるからである。
以上の説明で分かるように、領域分割処理における非正
常部の置換は、リングバス1を用いることによつて、複
数のプロセツサユニツト3の全てに対して並列的に行な
うことができるため、プロセツサユニツト3の数に依存
せず短時間で終了する。
リングバス制御回路8は、第8図に示すようにシフト制
御部81とセレクタ82、入力バツフア83、出力バツフア84
から構成される。通常セレクタ82はリングバスデータ11
(64)が11(0)に出ていくように接続されている。画
像データの入力を行う際には、セレクタ82が、システム
バス10からの信号によつて切替えられて、入力バツフア
を経由して入つてくるデータをリングバスデータ11
(0)としてリングバスに送り込まれる。プリンタなど
への画像データの出力は、リングバスデータ11(64)を
出力バツフア84を介して外部へ取り出す。
シフト制御部81の中には、論理的な2次元配置に置かれ
たプロセツサユニツトの縦と横の数mとnや領域分割さ
れた画像のオーバラツプ幅などを記憶するレジスタ(図
示せず)を設け、これらの値は、リングバス1の転送開
始前にマイクロコンピユータ5によつて設定される。シ
フト制御部81は上記レジスタの他にシフトクロツク発生
器、シフトクロツク14をカウントするカウンタ(図示せ
ず)、これらのカウント値とレジスタに設定された値を
元に、モード信号12を次々に変更するためのROMやPAL
(図示せず)から構成される。
前述したように領域分割処理においては、フイルタリン
グ処理等の後に生じる非正常部を、隣接プロセツサユニ
ツトからの正しい画像データで置換することが必要であ
り、これをリングバスのシフトによつて実行する。1つ
のプロセツサユニツトに要する1画素当りの時間は、ロ
ーカルメモリの読出し、書込み時間をそれぞれtr,tw
し、リングバスの1回のシフトに要する時間をttとした
とき、論理的な2次元空間上の方向により、 右:tr+tt+tw 左:tr+(nm−1)tt+tw 上:tr+(nm−n)tt+tw 下:tr+ntt+tw 右上:tr+(nm−n+1)tt+tw 右下:tr+(n+1)tt+tw 左下:tr+(n−1)tt+tw 左上:tr+(nm−n−1)tt+tw となる。ここでn,mは論理的な2次元配置におけるプロ
セツサユニツトの横と縦の数である。
これらと第1図,第4図から分かるデータ転送量を用い
て、非正常部の置換に要する時間を求めると、2次元の
領域分割で8方向転送の場合 となる。但し、式を簡単にするため、n=mとし、Xは
処理する画像の一辺の長さとした。尚dは分割画像に持
たせたオーバラツプの幅である。
これに対し、3方向転送の場合の所要時間は となる。リングバスのシフト時間ttの係数が8方向転送
ではm2となつている。すなわち8方向転送では、全PU数
m2に比例する回数だけのリングバスのシフトが必要なの
に対し、3方向転送では、その平方根+1の回数だけの
シフトで済むことが分かる。つまり3方向転送にすると
約m倍早い。
尚、ここでは、リングバスで接続されたマルチプロセツ
サ・システムにおける実施例を示したが、本発明による
処理とデータ転送の制御方法は、他の接続構造を持つマ
ルチプロセツサ・システムに用いても同様の効果が得ら
れる。
上記の実施例ではプロセツサユニツトが1次元的なリン
グバスによつて結合されているが、例えば、先に説明し
た従来技術のように各プロセツサユニツトが上下左右お
よび斜めの8方向のPUと接続されたマルチプロセツサ・
システムに、本発明を適用すると(データの転送方向を
2方向に制限しても支障ないので)、斜め方向にプロセ
ツサユニツトを結合している回路が不要となり、全体の
回路規模を大きく削減することができる。
〔発明の効果〕 本発明によれば、プロセツサ間のデータの交換を高速化
できるため、マルチプロセツサにおける処理速度を大幅
に向上することができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す図、第2図は画像の領
域分割の説明図、第3図はフイルタリング処理によつて
できる非正常部を示す図、第4図はオーバラツプさせた
部分画像を示す図、第5図は、本発明を実施するための
システムの一例を示す図、第6図は、パス制御回路の詳
細を示す図、第7図は複数のプロセツサユニツト間の接
続関係を示す図、第8図はリングバス制御回路の詳細を
示す図である。 1……リングバス、2……ローカルメモリ、3……プロ
セツサエレメント、4……パス制御回路、5……マイク
ロコンピユータ、8……リングバス制御回路。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のプロセツサ間でデータ交換をなし得
    る構造をもつマルチプロセツサ・システムにおいて、2
    次元データをます目状に分割して複数のプロセツサで処
    理する際、処理によつて生じる無効データ部分が、該ま
    す目の3方のエツジ部にのみ生じるように処理結果をシ
    フトして格納し、該プロセツサ間のデータ交換は、論理
    的に隣接する2あるいは3方向のプロセツサからのみ転
    送して行うようにしたことを特徴とするマルチプロセツ
    サ・システムの制御方法。
JP17154186A 1986-07-23 1986-07-23 マルチプロセツサ・システムの制御方法 Expired - Lifetime JPH07104839B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17154186A JPH07104839B2 (ja) 1986-07-23 1986-07-23 マルチプロセツサ・システムの制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17154186A JPH07104839B2 (ja) 1986-07-23 1986-07-23 マルチプロセツサ・システムの制御方法

Publications (2)

Publication Number Publication Date
JPS6329874A JPS6329874A (ja) 1988-02-08
JPH07104839B2 true JPH07104839B2 (ja) 1995-11-13

Family

ID=15925034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17154186A Expired - Lifetime JPH07104839B2 (ja) 1986-07-23 1986-07-23 マルチプロセツサ・システムの制御方法

Country Status (1)

Country Link
JP (1) JPH07104839B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4664327B2 (ja) * 2007-05-16 2011-04-06 株式会社日立ハイテクノロジーズ パターン検査方法

Also Published As

Publication number Publication date
JPS6329874A (ja) 1988-02-08

Similar Documents

Publication Publication Date Title
JPH0740252B2 (ja) マルチプロセツサシステム
US5450603A (en) SIMD architecture with transfer register or value source circuitry connected to bus
EP0054243A2 (en) Memory controlling apparatus
US6421772B1 (en) Parallel computer with improved access to adjacent processor and memory elements
KR20010031192A (ko) 기계시각시스템에서의 영상데이터와 같은 논리적으로인접한 데이터샘플들을 위한 데이터처리시스템
EP0147857A2 (en) Parallel data processing system
US7409528B2 (en) Digital signal processing architecture with a wide memory bandwidth and a memory mapping method thereof
JP3971535B2 (ja) Simd型プロセッサ
US5428804A (en) Edge crossing circuitry for SIMD architecture
JPH07104839B2 (ja) マルチプロセツサ・システムの制御方法
JP3988340B2 (ja) 画像処理装置およびそれを備えた複写装置
JPH01291387A (ja) 画像処理装置
JP2000311241A (ja) 画像処理装置
RU168781U1 (ru) Устройство обработки стереоизображений
EP0797150A2 (en) DMA controller
JPS58107977A (ja) 記憶装置へのアクセス方式
JP3553376B2 (ja) 並列画像処理プロセッサ
JPS6334658A (ja) 画像処理用dmaコントロ−ラ
JPH0251783A (ja) 並列画像処理装置
JP3969580B2 (ja) データ処理装置、画像処理装置、画像形成装置、プログラム及び記憶媒体
JP4821427B2 (ja) データ処理装置及びそのプログラム
KR20010072505A (ko) 다수의 처리 및 메모리 회로를 포함하는 데이터 처리장치, 그 구성 방법 및 컴퓨터 프로그램 제품
JP2002216128A (ja) 論理フィルタ装置及びその制御方法
JPS59135497A (ja) 拡大又は縮小表示の制御装置
JPS6150190A (ja) 高速ビツトマツプ展開装置