JPS6364178A - 画像処理システム - Google Patents

画像処理システム

Info

Publication number
JPS6364178A
JPS6364178A JP13201687A JP13201687A JPS6364178A JP S6364178 A JPS6364178 A JP S6364178A JP 13201687 A JP13201687 A JP 13201687A JP 13201687 A JP13201687 A JP 13201687A JP S6364178 A JPS6364178 A JP S6364178A
Authority
JP
Japan
Prior art keywords
pattern
tree
pes
register
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.)
Pending
Application number
JP13201687A
Other languages
English (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6364178A publication Critical patent/JPS6364178A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8023Two dimensional arrays, e.g. mesh, torus

Abstract

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

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。
A、産業上の利用分野 B、従来技術 C0解決しようとする問題点 り0問題点を解決するための手段 E、実施例 El、実施例のハードウェア構成 E2.多形網構造 E3.制御アルゴリズム E4.アプリケーション E5.結論 A、産業上の利用分野 本発明は、基本演算器(プロセッシング・エレメント:
PE)のネットワーク(アレイ)から成るアレイプロセ
ッサを備えた画像処理袋71(並列計算機でもある。)
に係り、更に詳しくは、各1!本演算器が他の1山本演
算器とどのように連結するかを制御する連結制御機構を
備えることによりネットワークの構造がプログラムに従
って選択できるような画像処理装置に関する。
B、従来技術 以下に示す刊行文書及び米国特許が技術技術の代表的な
ものである。
(1) Sternbergの゛生物医学的画像処理(
Biomedical image processi
ng)”Computer。
Jan、 1983、には、近隣のディジタル画像デー
タをくり返し処理していくための、各セルが近接のセル
に連結されて成るセルアレイが示されている。
曲がりくねったシフトレジスタが3×3の近傍セルへの
入力を可能にしている。
(2) Turney等の″部分的に重った個所の認識
(Recogmjing Partially 0cc
luded Parts”IEEE  Transac
tions  on  Pattern  Analy
sis  andMachine Intellige
nce、July、1985、Pp、 410−421
には、テンプレートの一致に重点を置きながら、ホフ変
換を行う種々の技法が示されている。
(3) Mudge等のパ画像データの並列処理におけ
る特徴依存アルゴリズムの効率(Efficiency
 ofFeature Dependent Algo
rithms for theParallel Pr
ocessing of Izages) ” IIE
IEE 0190−3918/83100001036
91983,369−373には、基本演算器が連絡ネ
ットワークを通じて連絡するような重要プロセッサの利
点について示されている。著作は特徴依存アルゴリズム
と特徴非依存アルゴリズムとの相違について研究してい
る。
(4) Sternberg等の“工業的多形性(In
dustrialMorphology) ”には、単
一システム内における画像処理とパターン認識の結合を
示している。
(5) D、 E、 Shawの“N O−V ONス
ーパーコンピュータ(The N0N−VON Sup
ercomputer)”内部レポート、Columb
ia University、 Aug、 1982に
は各基本演算器がI10スイッチを備え、個々の基本演
算器を活動化、非活動化させるフラグレジスタを有する
ような大型並列処理システムが示されている。
(6) M、 J、にi+u+e1. R,S、 Ja
ffe、 J、 R。
Mancleville、及びM、 A、 Lavin
の“多形画像変換計算機、近傍プロセッサのパイプライ
ンの再構成アーキテクチャ (MITE : Morp
hic In+ageTransform Engin
e、 An Architecture forRec
onfigurable Pipelines of 
NeighborhoodProcessors” I
BM RC1143g、Oct、 10.1985には
オペレータ制御下でバス接続を通じてPEとPEとが種
々の相互接続を行うようなPEの再構成可能なネットワ
ークが示されている。
(7) A、 J、 Kessler及びJ、 tl、
 Patelの“障害に対して冗長性を有する再構成可
能な並列パイプライン(Reconfigurable
 Parallel Pipeljnes forFa
ult To 1erance)”、IEEE、C11
111113−15/821000010118.19
82には再構成可能なパイプライン接続が示されている
(8) S、 R,Sternbergの“画像処理用
並列アーキテクチャ (Parallel Archi
tecture for ImageProcessi
ng)”、 IEEE、CH1515−6/79100
00−0712.1979には完全接続されたPEネッ
トワークが示されている。
(9) T、 N、 Mudge、 E、 J、 De
lp、L、 J、 Siegel、及びH,J、 Si
egelの“マルチマイクロプロセッサシステムを用い
た画像データのコード化(In+ageCoding 
 Using  the  Multimicropr
ocessor  SystemPASM) ” IE
EE、82CH1761−6/82100001020
0.1982)には相互接続ネットワークにより相互接
続されたPEが示されている。
(10) S、 R,Sternbergの1′並列画
像処理用の言語及びアーキテクチャ(L anguag
e andArchitecture for Par
allel Image Processing)”、
Reco n1tion in Practice、N
orth−)1o11andPublishing C
o、、 1980には複雑なPEネットワーク及び動作
説明が示されている。
(11)米国特許第4174514号(1979年11
月13日)には、2つの隣接する画像スライスの重なり
合う領域の画像データへの中間アクセスのための互いに
相互接続された隣接するPEより成るアレイプロセッサ
が示されている。
(12)米国特許第4215401号(1980年7月
29日)r細胞型デイジタルアレイプロセツサ」には、
直交2軸に沿って周りの4つのPE(細胞)と連結する
PEより成るアレイプロセッサが示されている。
(13)米国特許第438004G号(1983年4月
12日)r大型並列処理計算機」には、隣接するPEの
PレジスタからPレジスタあるいは他のGレジスタへと
縦方向あるいは横方向に沿ってデータビットを空間的に
シフト(スライド)させるような画像処理装置が示され
ている。各PEは算術論理循環ユニット(ALRU)、
l10tニツト、及びローカルメモリユニット(LMU
)を有している。ALRUは、バイナリ−カウンタ/シ
フトレジスタサブユニット、ロジックスライダサブユニ
ット(Pレジスタ)、及びマスクサブユニット(Gレジ
スタ)という3つのサブユニットから構成されている。
(14)米国特許第4398176号(1983年8月
9日)「データ/命令共通バスを有するデータ分析装置
」には、バス上の情報がデータとして用いられるべきか
命令として用いられるべきかを制御する外部共通制御ラ
インに各PEが接続されている画像処理アレイが示され
ている。
(15)米国特許第4601055号(1986年7月
15日)「画像処理装置」には、像の1つ1つに対応し
た低レベルの画像処理装置をピクセル毎に正逆方向に1
つづつ変換する装置が示されている。
従来技術によれば、パイプライン型やその他の型内での
PEの固定的な構成については示されている。従来技術
によれば、スイッチングネットワーク及びバスを通して
PEのネットワークを再構成することについては示され
ている。しかしながら、従来技術には、多形(変形)網
のような非常に高速にスイッチングを行う技術について
は何らの示唆もない、多形網はプログラムにより再構成
させることができ、紐状、ツリー状、キューブ状、ピラ
ミッド状というように、処理内容に応じて適切な構成と
することができる。
セル構造オートマトンは画像処理、画像認識等に非常に
有用であることが認められている。しかしながら、現在
のオートマトン用のネットワーク構造は紐状なら紐状の
まま、メツシュならメツシュのまま、ツリーならツリー
のまま、キューブならキューブのまま、ピラミッドなら
ピラミッドのまま、というように固定された構成である
。各構成は特定の計算については適しているが、その構
成に適さない計算も存することになる。ネットワーク構
造が固定的に作り付けられているので、不適な計算であ
ることが判った場合にも、そのネットワーク構造は変え
られず、低効率のまま計算を行なわざるを得ないことに
なる。
例えば、NXNの網目構造が画像処理でのローカルオペ
レーション(特殊な操作)に適していても、グローバル
オペレーション(一般的な操作)には不適である。NX
Nの網目構造では最小値計算(M I N I M U
 M )にNサイクルを要するが、ツリー構造であれば
log Nサイクルで済む、だが、ツリー構造の場合に
は、近傍の基本演算器との接続が不足しているため、画
像処理用のローカルオペレーションには不適なのである
基本演算器の相互接続構造がアルゴリズムに不適なとき
には計算効率も低いが、その上に、構造が固定的なとき
には、用るアルゴリズムの設計に制約が生じる。これは
、基本演算器の相互接続構造がデータの流れに対する制
約を決定するからである。例えば、紐状構造では、デー
タの流れは左から右というように一方向であり、このよ
うな構造では、紐状にデータが流れる場合に適したアル
ゴリズムに制限される。このように、固定したネットワ
ーク構造は、各々が特別の適用性を有してはいるが、適
用範囲自体は狭いものである。
固定的な相互接続パターンの欠点は、画像処理及び中間
レベルの処理(画像情報を記号情報に変換する処理)を
同時に効率良く実行することができないということであ
る。このような欠点は、セルオートマトンであるコンピ
ュータビジョンにとって特に重大であり、そこでは画像
処理と中間処理とが不可欠部分である。この欠点は入出
力問題にとって深刻である。というのは、画像処理後の
画像データを後続の更なる中間処理のために出力しなけ
ればならないからである。
C0解決しようとする問題点 本発明の目的は、プロセッサアレイ中の基本演算器(プ
ロセッサエレメント:PE)の各々をプログラム制御に
より高速に連結し、PEを、全方向(多方向)連結の場
合に要求されるようなコスト高を招くことなく、効率良
く組み合せることである。
他の目的は、PEの再組み合せを、時に応じて、再組み
合せの必要性を検知したコンピュータの制御下により、
及び、再組み合せの必要性を予見したオペレータの操作
により、実行することである。
更に他の目的は、外部メモリデータをPEに接続するこ
とにより、必要なハードウェアを軽減するとともに操作
の柔軟性を向上させることである。
D0問題点を解決するための手段 本発明の特徴は多形(変形)網目型の基本演算器(PE
)を用いることである。各PEは、メモリを備えたAL
Uにより処理能力を備え、地理的な接続即ち論理的な接
続関係をプログラム制御する能力を備えている。
他の特徴はPEがプログラム制御下で短絡能力を有する
ことである。この短絡能力により、送り元のPEと遠く
離れた送り先のPEとの間の一連の中間に存在するPE
は単に導′R線としてのみの役割を果すだけとなり遅延
サイクルを生じさせることがない。
他の特徴は多形網目ネットワーク構造を有することであ
り、このネットワーク構造は各PEの外部の通常の網目
と各PEの内部の内部ネットワークとの組み合せネット
ワークであり、ソフトウェア制御を通じて通常のパター
ンと他の新しい有用なパターンとが計算処理に適したも
のとなるように調整されるようになっている。多形性と
いう特徴により、ネットワーク自体が再構成され、柔軟
性の有るアルゴリズムの設計と広範なアプリケーション
に用いることが可能となる。
画像処理に関連しては、多形網目構造により、中間レベ
ル処理(画像データの記号データへの変換処理)が効率
良く実行され、入出力問題に関する一連の問題を解決で
きる。
他の特徴はPE内にフラグレジスタを有することであり
、フラグレジスタは再構成操作のような条件付操作のた
めに用いられる。
他の特徴は複数ビットパターンレジスタを所定数有する
ことであり、所定数のソフトウェアにアクセスすること
によりハードウェアパターンを選択でき、各パターンは
多形網目により実現され得る。これらのパターンにはバ
ス構造、幾つかのツリー、キューブ、ピラミッドが含ま
れ、各パターンは関連する計算のタイプに適しており、
複数のパターンレジスタのうちの選択された1つのパタ
ーンレジスタ内の1種のビットパターンに応答してクロ
スバ−スイッチにより選択され得る。
本発明の利点は比較的安価でありながらスループットス
ピードが高いということであり、これはPE内のプログ
ラム制御される連結能力によるものであり、こうして、
物理的にも電気的にもプロセッサアレイの適正化がなさ
れる。
他の利点は中間レベル処理の結果がプログラムと結合し
て効率良く適正な再構成化に役立つことである。即ち、
中間データは適正な再組み合せ機能を呼び出すために用
いられる。
他の利点は構造が簡単で小さな面積上に構築でき、非常
に多数の相互連結されたPEを少ない数のチップで構成
できるという事である。
E、実施例 El、実施例のハードウェア構成 第1図はMXMのアレイ1を有する画像処理システムを
示し、アレイ1を構成する多形網目基本演算器(PE)
2はホストコンピュータ3により制御されるようになっ
ている。各PE2は連結子を有し、この実施例では、4
つの連結子を有し、各連結子は隣りの連結子と直交して
いる。これら直交する連結子には方向識別子NESW 
(北東南西)が付されている。これら連結子NESWの
役割は隣接するPE (4つ存在する。)に対して出力
を直接に与えることである。全般的なプログラミング制
御とハウスキーピング制御はホストコンピュータ3によ
り行う。
第1図にはPE2の一層詳しい内部構成も示されている
。PE2は、ALU6、メモリ(MEM)7、連結子制
御機構(CCM)8、及び4つの連結子N、E、S、W
を有し、これらの全体的なプログラミング制御とハウス
キーピング制御はバス9を介してホストコンピュータ3
が行うようになっている。
4つの連結子NESWを有するPE2は直交座標上に配
されており、この簡単な網目構造は画像処理において有
利である。また、この簡単な網目構造はVLS I上に
形成する上でも有利である。
直交座標上にないPE2同士は直接的には配線で結ばれ
ていない。対角線上のPE2同士の連結や遠く離れたP
E2同士の連結は配線上望ましくないものであり、製造
上の困難を伴う。多数配線の束は(静電)容量と(信号
経路)長さとを有し。
そのために固有の信号遅延をもたらす。
一実施例では、直交座標上にない関係のPE2同士は、
それらの間に介在する直交座標上のPE2を介して、各
々のCCM8の働きの下で、互いに接続される。CCM
8が制御する連結子のパターンは、入力側(送り先側)
PEと出力側(送り元側)PEとを効率良く短絡させる
ようになっている。PEの連結経路はチェスの載持(将
棋の飛車に相当する。)のように直交軸方向に沿った複
数個の長さ或いはチェスのナイトのように直交軸の両方
向に沿った複数個の長さに相当するものであり、チェス
のビショップ(将棋の角に相当する。)のように対角線
方向に延びるものではない。
複雑な経路も設定できるし、信号遅延を生ずることなく
多数のPE2を経由する非直交座標上の関係のPE間を
つなぐ経路が設定され得る。
簡単な直交座標に沿った連結状態に代えて、対角線上の
PE2相互を直接的に連結してもよいが、極めて遠く離
れたPE2相互を直接的に連結することは、そのような
連結状態は簡単な直交座標上の或いは対角線上のPE2
の組み合せをプログラム制御しても達成されることであ
り、好ましいものではない。
第2図は第1図中のCCM8の動作を説明するだめのも
のであり、実際の内部ハードウェアを示そうとするもの
ではない。CCM8の重要な機能は、パターンレジスタ
内のビット値の制御下でX方向の横棒の連結子NESW
のどれかをY方向の横棒の連結子N E S Wのどれ
かに連結させるというスイッチングネットワークとして
の機能である。
図示の例では、2つのパターンレジスタ21.22が選
択的に用いられ、その選択はパターン選択レジスタ23
の制御下で行なわれている。この例では、たとえ全てを
連結させることが実際には可能であっても、4×4のマ
トリックス内の全ての交点を連結させることが必要なわ
けではない、マトリックス10はY軸方向に沿った複数
の入力線11を有し、これらはX軸方向の導MS12に
接続している0図示のように、N連結子13は、連結用
電子部品14.15及び交線16を介して、E連結子1
7に連結されるよう設定されている。
他のS連結子27、W連結子28、N連結子29への連
結が交代的に或いは同時的に行なわれてもよい、制御は
16ビツトのパターンレジスタ21.22により行なわ
れる。連結線24.25、及び26への連結も可能であ
る。交線スイッチ10はパターンレジスタ21および2
2のうちの選択された方のレジスタ内のビット値により
制御されて16個の交点の1つ又は複数を連結させる。
各PE2はパターンレジスタ21.22の一方のビット
パターンに指示さ九て隣接する1つ又は複数のPE2と
連結する。パターンレジスタ21.22を切換えること
により連結関係の変更が直ちに行なわれる。説明上、パ
ターンレジスタ21.22は標準的若しくは変形的なパ
ターンレジスタであり、パターン選択レジスタ23はO
か1かの2値レジスタであるとする。
第3図は第1図のCCM8の内部の機能ブロックを示し
、これらの機構ブロックが第2図に関連して説明したと
ころの動作を実行する。[、QLな論理連結機構30は
AND、OR,XOR(e他的OR)、及びANDAL
LBIT機能を有する。
他の機構でもよいが、複雑なものであればコスト高を招
く、論理連結機構30は、第1フラグ(F1)31及び
第2フラグ(F2)32内のフラグ入力を受信する。こ
れらフラグ入力は機構30による制御を変更させる。シ
フトレジスタマスク(SRM)33は真出力(SRM)
34及び相補出力(SRM)35を出力し、これらの出
力信号は、機構30を制御するXレジスタ用シフトレジ
スタ(SRX)37及びXレジスタ用シフトレジスタ(
SRY)39のビット値を選択するために用いられる。
Xレジスタ36及びシフトレジスタX (SRX)37
はX方向の隣接するPE2への論理的、従って幾何的な
連結状態を制御する。Yレジスタ38及びシフトレジス
タY (SRY)39はY方向の論理的即ち幾何的な連
結状態を制御する0通常、Xレジスタ36及びYレジス
タ38には、画像処理システム内でのPE2の直交座標
の値が入っている。シフトレジスタX (SRX)37
及びシフトレジスタY (SRY)39は、シフトレジ
スタマスク(SRM)33と共働して、X及びY方向の
天々の一連のビットグループを誘導するために用いられ
る。第3図のCCM8の詳細な機能は多形網目により1
2の異なるパターンを形成する12の例により説明され
る。
各PE2は、そのPE2に対して示されたビット値に基
づいて算術論理演算操作あるいは論理変換操作を実行し
、あるいは、何らの操作も実行しない(ノー・オペレー
ション)。このような操作の実行あるいは不実行に加え
て、PE2は周りのPE2のうちの選択されたものと連
結さ九る。ここで言うところの隣接するPEへの連結は
短絡と呼べるようなものである。短絡は瞬時に起こる。
この短絡による連結の速度は、通常の操作(ノー・オペ
レーションを含む、)のように1サイクルの遅延をもた
らすものではなく、電気的速さ、即ち、光の速さである
。したがって、遅延サイクルを生じさせることなく複数
のPEを経由して遠隔のPEと連結することが可能とな
る。また、ジグザグ経路により同一の列にも同一の行に
もない離れたPE2と連結できる。こうして、対角線方
向の連結子がなくとも、対角線方向に隣接するPE2へ
の、あるいは対角線方向に遠く離れたPE2への更には
、対角線上から外れた遠いPE2への連結が可能である
本発明による多形網目画像処理システムは、適正にプロ
グラム制御されることにより、PE間の複雑な相互連結
を可能にする。各PEは自分に与えられた情報に準拠し
て適正な算術論理操作、変換操作、あるいはノー・オペ
レーションを実行するが、そうでないときには信号遅延
のない短絡的連結を行うことができる。
どれ程の数の複雑な連結ができるかは、パターンレジス
タ内のビット値の数に依り、パターンレジスタの数やC
CMの構成にも依る。しかし、多数のPEを必要とする
ような複雑な連結はコスト高となる。そこで、好ましい
実施例では、適切な連結状態の範囲を限定した。これら
については、第4図ないし第20図に示されている。
第4図は線形な配列の連結状態を示している。
西1’)から東(E)への線形的配列41と北(N)か
ら南(S)への線形的配列42が存在している。
第5図及び第6図は行方向のツリー配列についての2つ
の連結状態を示している。そのうち、第5図にはストリ
ング(紐)45〜51が示され、これらX方向に沿った
ストリング45〜51は種々の長さを有している。第6
図にはもっとツリー構造らし連結状態が示され、ここで
は、7つの入力が4つのステップを経て1つのPE52
へと導かれている。
第7図ないし第10図(第7図が本発明を示し。
第8〜10図は従来の例を示している。)は本発明の多
形網目型PEを用いた結果、チップ上の面積及びPE間
の接続に要する配線長さがいかに改良されたかを示して
いる。7図の多形網目61のチップ面積は、第9図の直
角配線型ツリー構造のパターン62と比較して極めて小
さい。第8図のパターン63の3×3のウィンドの平均
的接続(配a)長さは第7図の場合の1.5倍であり、
第10図のパターン64の3X3のウィンドでは2.1
25倍である。
第11図は逆ツリー構造を示している。第11図は第5
図と非常に似ているが、第5図のツリー構造ではPEか
ら情報を(1ケ所に)集めているのに対し、第11図の
逆ツリー構造では情報を広めている。
第12図ないし第20図には各々、多形網目PE間のプ
ログラム可能な相互連結状態のいくつかの例が示されて
いる。これらの図において、四角で囲まれた丸印は何ら
かの中間処理を行うPEを示し、単なる丸印は単なる通
過用(短絡用)に用いられるPEを示している。ただし
、どちらの場合のPEもプログラムにより制御されてい
る。各パターン(PEの相互連結状態)は16ビツト値
で表わされ適当なパターンレジスタ内に収容される。
第21図は本発明による多形網目PEの好ましい一実施
例の内部構成を示している0図中、破線93で囲まれた
部分は、種々の実施例を通じて比較的共通的な構造であ
る。ALU96は出力1及び出力2を有するとともに、
入力側にはマルチプレクサを備えている。入力は入力端
子94及びレジスタNESW95から与えられ、このレ
ジスタNESW95には第1メモリ(Ml)及び第2メ
モリ(M2)、あるいはALU96の出力1及び出力2
からデータが与えられる。ローカルメモリ101はAL
Uに適切な計算及びハウスキーピングを行なわせるため
に用いられる。外部メモリデータ線(EMD)102か
らは外部メモリ(図示せず)からデータが供給され、マ
ルチプレクサ103を経て、ローカルメモリ101とと
もに、第1メモリ(Ml)及び第2メモリ(M2)に接
続されている。ALU96の出力1及び出力2は同じP
E93に供給されるともに、CCMで選択された他のP
E93にも供給され得る。
外部メモリデータ線(EMD)及びMl、M2につなが
る複数のバスにより、外部メモリデータと内部メモリ 
(ローカルメモリ101)が接続され、PE93はロー
カルメモリ101及び外部メモリと協働することになる
外部メモリデータ線(EMD)102により個々のPE
はホストコンピュータ(H)3内のメモリ或いは独立型
のメモリに直接的に接続される。
このような接続は従来のアレイプロセッサには見られな
いものであり、このような接続により第3図に示した機
能が実現される。
第3図に示したような方向制御及び論理機能制御下にお
けるスイッチング機能は外部メモリ及びEMD 102
に関連して実行される。第3図に示したスイッチング機
能を実行するための手段については、その全ての部分を
各PE内に持たせてもよいし、あるいは、その全ての部
分をPE外のものとしてもよい、ただし、後者の場合に
は、得られた条件についてはEMD102を通じてパタ
ーンレジスタ選択用レジスタRp99に送ることとする
2つのパターンレジスタPRO97及びRRI98によ
り命令サイクルの遅延なしで1つの連結パターンから他
の連結パターンへと瞬時にスイッチングすることができ
る。この瞬時のスイッチングは1ビツトレジスタのパタ
ーンレジスタ選択用レジスタ(RP99)により制御さ
れる。2つのレジスタ97及び98のうちの一方のレジ
スタ内の値がもはや使用する必要のないものとなったと
きには、そのパターンレジスタには新しいパターンがロ
ード(転送)され得るようになっている。
このようなロードは自由に行なわれる。即ち、ALU損
作が行なわれている時に同時に行なわれ得る。なお、画
像処理システムでは通常、PEは1ビツト処理を行い、
多くの場合、比較的簡単な構造である。16ビツトパタ
ーンをパターンレジスタ97及び98にロードすること
は比較して述べればやや面倒な作業である。パターン選
択用レジスタ99にもある値をロードしなければならな
いが、この場合は1ビツトであるから簡単である。
パターンレジスタ97及び98を書換えるため理 に処理を中止しなければならないような場合がある。こ
の場合、2つのパターンレジスタ97及び98の書換え
に32サイクルを要し、選択用レジスタ99へのロード
に33番目のサイクルを要する。しかしながら、多くの
場合、パターンレジスタへのロードのために特別の時間
が必要になることはない、適当な命令中に、オペレータ
がレジスタ97あるいは98、あるいはレジスタ99内
に1ビツトだけロードすることができるからである。
ALU96がフル稼動しているときには、ALU96が
算術論理演算を行っている最中でも、CCM内の1つあ
るいは全てのレジスタの書換えを行うことができる。こ
のような融通性のあるロード動作は、インストラクショ
ンゲート100がロード機能を実行するように準備され
たときに、入力端子94からALU96のマルチプレク
サを通って出力1及び出力2により行なわれる。
パターンレジスタ97又は98から選ばれた16ビツト
値は4X4クロスバ−スイッチ104(詳細は第2図に
示しである。)を細かく制御するためのものである。
PEの典型的操作は短絡操作と処理操作(活動操作)で
ある、短絡操作の場合には、例えばパターンレジスタ9
7が短絡操作用に設定されて短絡操作を実行させ、PE
を1つ又は複数の他のPEに短絡接続させる。PEを処
理操作にするときには、パターンレジスタ選択用レジス
タ99を処理操作用に設定して、短絡バイパス用に設定
されているパターンレジスタ97から処理操作用に設定
されているパターンレジスタ98へとスイッチ操作する
PEの処理操作につき更に説明する。
第1図ないし第3図に示された多形網目はCCMに制御
されて複数のパターンに変形することができる。これら
のパターンのレパートリ−は計算のレパートリ−に対応
する。
各パターンに対応する制御アルゴリズムについて述べる
。全ての制御アルゴリズムは簡単であり、制御アルゴリ
ズムを実行し易いような所望のパターンの配線状態とな
っているハードウェアを用いていることができる。
ハードウェア機構は全てのパターンの形成を実行し、V
LS I上への実装に適している。
多形網目ハードウェアの大きな利点は、多くのアルゴリ
ズムの線形的な計算fit [0(N) ]が対数的な
計算量[0(1ogN) ]に減じることであり、好ま
しい、したがって、本発明による新規なアーキテクチャ
によりlogN/Nのスピードアップが図られ、例えば
、1024x1024のネットワークにおいてはスピー
ドアップは100である。
特に画像処理分野では、1つのパターンによる画像処理
の後に、得られた画像データが直ちにネットワーク外に
送出されるということはない6画像情報は更に別のパタ
ーン(例えばツリー構造)によって記号(符号)情報に
変換されなければならないし例えば133より大きな値
のピクセルが多数存在する)、多形網目の機能により、
データは出力されなくともよく、その結果、工/○操作
は十分に減小される。(例えば1024X1024の画
像の例では5桁の減小がある。)I10100減小によ
る処理速度の向上の効果は種々のスピードアップ効果の
中でも最も影響の大きいものである。
もう1つのパターンは対角線方向に拡がるツリーであり
、このパターンが多形網目で形成されることにより、A
x+By+Cの計算を前述の対数的時間内で実行するこ
とが容易となる。ただし、A、B、Cは定数で、(x、
y)はピクセルの座標であるとする。コンピュータグラ
フィクス(計算機図形処理)では、凸状多角形を表示さ
せることは、影をつくり、切り抜き(クリッピング)を
行い、球を描き、ヒストグラム平坦化計算を行い、組織
マツピング等の処理を行なう上で有用である。
また、ラインマスク、バンドマスク、多角形マスクをつ
くる上で有用である。更に、第1ホツフ(Hough)
変換を計算したり、その逆にノイズ画像からラインを検
出したり、あるいはその他の応用において有用である。
有用な12のセル構造オートマトンと12のアルゴリズ
ムをつくり出すハードウェア機構を有している好ましい
実施例では、ソフトウェア制御下で多形網目を再構成す
る。以下では、多形ハードウェア及び制御アルゴリズム
について述べる。
多形網目の注目すべき特徴は処理条件により自らを再構
成する能力を有することである。既述のように、ALU
の操作によりパターンレジスタ97及び98にはあるビ
ットパターンがロードされ、その結果、各PEはPパタ
ーン(PL、・・・Pp)を有する。
PEの条件Cに適合する再構成により各PEはパターン
Piを機能Cとして扱う、まず、全てのPEはPiとい
うパターンから始まり、処理は最初のパターンにもとづ
いて始まる。処理が進むにつれ、各PEはそのローカル
条件を検知しく例えば、これは値が寄り集まることのテ
ストであり得る。)そのパターンを継続するか新しいパ
ターンに置換するかを決める。
条件はグローバル(全体に影響するもの)であってもよ
く、これはホストコンピュータが各PE条件を一括的に
検知し、パターン選択を行い、全てのPEにそれをフィ
ードバックするものでもよい0条件はローカル(一部に
のみ影響するもの)であってもよい、新しいパターンの
個々のPEに与えてもよいし、適当なPEのグループに
与えてもよい。
新しいパターンの選択は幾つかの方法で行なわれる。
(1)1つには、予め計画されている場合である。
一連のパターン(例えば、Pl、F2)・・・Pp)が
計画され、この優先順序で利用される。新しいパターン
の必要性が検出されると、(Plを用いているとして)
次のパターンPitlが用いられる。
そしてPit 2が使用していないレジスタに同時的に
ロードされる。(2)他には1機能Cに基づく場合であ
る。
再構成の例には次のようなものがある。
3×3ウインドがPiにより形成されてフィルタ操作が
行なわれ、指標がフィルタ操作の効率を測る条件Cを示
している。ここでの目的はCが満足されないときウィン
ドサイズをを大きくすることである。これに関して、F
2を5×5ウインド、F3を7X7ウインド、F5を9
X9ウインド等とすることができる。
再構成の別の例はソフト誤りアプリケーションである。
各PE内に誤動作に関する条件Cを設計することは共通
的なことである。そのような条件は新しい適切な連結パ
ターンPiを決定するために利用される。
F2.多形網目構造 第1図に示されるように、多形網目はMXMのPE2の
アレイ1から成り、各PE2は4つの連結線(N、E、
S、W)を有し、各連結線は隣のPE2に連結している
。また、各PE2は、ALU6、MEM?、CCM8を
備え、ALU6及びMEM8については画像処理分野で
も通常用いられているが、CCM8は本発明に特有のも
のである。
連結制御機構(CCM)8は4つの連結線の他にALU
6及びメモリ(MEM)7どの間の入出力線を備えてい
る。ここで、A及びBをCCM8への入力線及び出力線
であるとしたとき、どこかの入力線Aをどこかの出力線
Bに短絡させる(“5HORT  CIRCUIT”)
ことにより連結aNESW間の経路指定が実施される。
このとき、入力線A上の信号と出力iB上の信号とは等
しくなり、例えば、“5HORT  WE” という命
令は連結線(W)24の信号と連結a(E)26の信号
とを等しいものにする。
第3図はCCM8の機能を示している。前出の“5HO
RT  CIRCUIT”の動作は条件付動作であり、
その条件はCCM8でつくられる。
各CCM8は条件信号を発生するための2つの1ビツト
フラツグF131及びF232を有する。また、各CC
M8は1つのシフトレジスタ(SRM)33を有し、S
RM33は両方向にシフト可能で、相補出力34及び3
5を出力する。
各CCMは一対のレジスタX36及びY37を有し、レ
ジスタX36はPEの行の位置(0≦X≦M−1)を保
持し、レジスタY37はPEの列の位置(0≦Y≦M−
1)を保持する。レジスタX36及びレジスタY37は
各々シフトレジスタ5RX38及び5RY39を備え、
これら5RX38及び5RY39には各々レジスタX3
6及びレジスタY37からデータが転送されるとともに
5RX38及び5RY39は両方向にシスト操作できる
。5RX38及び5RY39でシフトされた出力はBS
RX及びBSRYである。
“5HORT  CIRCUIT”動作についての条件
を発生するために幾つかの機能が設けられている。
L OA D reg value :この機能は命令
あるいは記憶内容を通じて“ある値”SRM、Fl、あ
るいはF2に転送することである。
COPYSRreg:この機能はレジスタx、Yの内容
をシストレジスタSRX、SRYに複写することである
AND10R/XORreg:この機能は次のどれかを
行うことである。
1、XとSRX及びXとSRM(あるいはSRM)につ
いてAND10R/X ORを行う。
2)YとSRY及びYとSRM(あるいはSRM)につ
いてAND10R/X ORを行う。
3、上記1及び2の両方を行う。
ANDALLB IT reg:この機能はレジスタ内
の全てのビットを” A N D ”することである、
これにより、レジスタがXで あれば条件ビットX A N D A L Lを、レジ
スタがYであれば条件ビットVA NALLを、あるいはこれらの両方の 条件ビットをつくり出す。
以上から“5HORT  CIRCUIT”動作はBS
RX、BSRY、XANDALL、YANDALL、F
l、及びF2の組み合せに基礎を置いていることがわか
る。
多形網目の残りの2つのブロック(A L U 6及び
MEM7)は通常の構成と同様である。メモリ7は1マ
シンサイクル毎に1ビツトをCCMに送ったりCCMか
ら受は取ったりする。ALU6も通常の構成と似てはい
るが、BSRX、BSRY、XANDALL及びYAN
DALLの組み合に応答して“5END”あるいは“R
ECEIVE”を選択する点に特徴を有する。
多形網目の12種のパターンをその制御アルゴリズムと
ともに以下に述べる。
F3.制御アルゴリズム (a)パターン1(線形配列) 第4図に示されるように、PE (M−1、i)の連結
子SをPE (0,i+1)の連結子Nに連結し、PE
(i、M−1)の連結子EをPE (i+1.0)の連
結子Wに連結することによって、M X Mの長さの行
(図中横方向)の線形配列及びM X Mの長さの列(
図中縦方向)の線形配列が形成される。PE (0,0
)の連結子E及びPE(M−1、M−1)の連結子Sは
各々、列方向の線形配列の開始端及び終末端であり、P
E (0,0)の連結子W及びPE(M−1、M−1)
の連結子Eは各々、行方向の線形配列の開始端及び終末
端である。
制御アルゴリズムは次のとおりである。
L  I  NEARO M E M = W ;  /事action  1 
 虐/E=MEM;ハaction 2 */M E 
M = N;  /*action  3  串/S 
 = M E M ;  /奉action  4  
*/action 1 (動作1)は連結子W上のデー
タをサイクルの終りにメモリに置き、action 2
 (ljJ作2)はメモリのデータをデータサイクルの
初めに連結子Eに置く。PE (0,0)の連結子Wに
注入されたデータは東(図中左)に向って行進し、Mサ
イクル後には第1行目の全てのPEがデータで満される
0次のMサイクルでは、第2行目の全てのPEが前記デ
ータで満されるとともに、第1行目の全てのPEは新た
なデータで満たされる。
action 3 (動作3)及びaction 4 
(動作4)は同様の動作を列について行なわせる。
このような線形配列の形成には条件は付かない。
全PEが同じ動作を行い、CCMは利用されない。
(b)パターン2(行方行ツリー配列)この場合の制御
アルゴリズムは次のようである。
ROW−TREEO int t:ハt is time 5tep拳/in
t pattern 1dentifier; /寝c
olumn position ofa P E、 P
rocess I DO*/int M、 logM;
 /*M is the 5ide 5ize of 
theyaesh  and  logM=logMe
/int treemask = 1 ;ハa fla
g to construct thetree拳/ for(t=o:  t(1ogM;  t+÷)(i
f (−N treemask) (S)IORT  WE;DISABLE;)if(t
raemask &&  pattern 1dent
ifier<t>)E : M E M ; if(treemask  &&  pido<t>)
M E M = W; treemask=treemask  &  pid
O<t);第5図には1行が8個のPEであるときの例
が示されている。1=0で、全PEの″゛ツリーマスク
″′1であり、全PEは使用可能となり、偶数番目のP
Eは奇数番目のPEにデータを送る。この様子が゛″偶
/奇”PEのペア間の矢印により示されている。これが
ツリーの底部を形成する。
t=1では、ツリーマスクを調べることにより、pid
o(0>= 1 (pido(7)最下位ビット)のP
Eだけが使用可能になる。なお、pid OはPEの列
位置を表わすための識別子である。使用禁止(ディスエ
イプル)のPEは通常の丸印で示されており、これらは
PEIとPE3とを、及び、PE5とPE7とを連結す
る。これは“5HORT  WE”という動作(短絡操
作)による、こうして第2レベルのツリーが形成される
ツリーの最高位レベルはt=2のときの制御により形成
される。この段階ではPE3とPE7のみが使用可能で
あり、残りのPEは“5HORT”という動作により連
結を確立してW−E経路をつくるが何の操作もしない、
別言すれば、メモリ6内の値を変更させない。
この制御アルゴリズムを別の観点から示したのが第6図
である。第6図ではツリーの各レベルの節にはPEの識
別用番号が付されている。
ツリーパターンは画面を分割したり、全く別の画面にす
るような例では極めて便利である。このような例でのア
ルゴリズムの計算量(ステップ数)は、Nを入力データ
の大きさとしたときに、通常0=logNである。この
アルゴリズムは通常、○(= log N )実行タイ
ムを要し、N=1024であれば、1024 : 10
で表わされるようなスピードアップがある。この種の重
要なアルゴリズ11はMAX (最大値を求める) 、
 M I N (最小値を求める)、に番目の大きさの
検出、中間値の検出、等にも用いられる。
COMを使うと、制御アルゴリズムはレジスタX36を
pido(7)ために、また、レジスタ5RX37及び
フラグレジスタ(Fl)31をツリーマスクのために用
いる。レジスタX36の内容は5RX37に複写され、
pid< t >ビットはt段階でBSRXに出力され
、ツリーマスクとAND操作され、最終条件を誘導する
(C)パターン3(列ツリー) 行ツリーの場合と似ており、M列ツリーは、PEの行位
置である。pidlを制御子として有し、また、N−3
経路を連結子として有している多形網目により形成され
る。制御アルゴリズムは次のようである。
COLUMN−TREEO int  t;  /傘し is  time  5t
eps/int pidl; /1rovpositi
on of a P E*/int M、 logM;
 /M is the 5ide 5ize of t
hemesh and logM=logM*/int
 treemask==1; /”a flag to
 construct thetree拳/ for(t=o;  t<1ogM;  t++)(i
f(−+treemask) (SHORT  NS;  DISABLE;  )i
f(treemask  &&  −+pidl<t>
)S:MEM; if(treemask  &&  pido<t>)
M E M ” N ; treemask=treemask  &  pid
o(t):列ツリーはデータを列方向に分配させるのに
有用であり、その際には、行ツリーの説明のところで述
べたように、従来の線形的な計算量[0(N)]のアル
ゴリズムから対数的な計算量[0(1ogN)]のアル
ゴリズムへと変換される。
ROW  TREEと同様に、COLUMN  TRE
E制御アルゴリズムではレジスタYをpid 1に、S
RYをcopy Yに、F2をツリーマスクの保持のた
めに用いている。5HORT  NSの条件はtime
 5tep 1でpid(1>を生じさせるF2及びB
SRYのAND処理結果に準拠している。
(d)パターン4(直角線ツリー) 直角線ツリーは分類処理、マトリックス操作、最小幅ツ
リー操作、FFT、及びその他の図形処理アルゴリズム
にとって有用なネットワーク構造である。以下に示す0
RTHTREEアルゴリズムにより行ツリーと列ツリー
とを結合することによってそのような多形メツシュが形
成され得る。
0RTHTREEO int  jll、  /*t  is  time 
 5teps/int  pido;  /*colu
mn  position  of  a  P  E
 。
Process   I  Dos/ int pidl;ハrow position of
 a P E*/int M、 1ogM; /5M1
s the 5ide 5ize of themes
h  and  logM =logM*/int  
hmask=1.  vvask=1;  /牟fla
gs  to  constructthe  tre
es/ for(t=0;  t<logM;  t++)(/
拳cycle  l  傘/ 1f(−+hmask) (SHORT  WE;  DISABLE; )if
(hmask &&  −+pidO(t))E=ME
M: if(hmask HpidO(t>)MEM=W; hmask=hmask & pido<t>;/傘c
ycle  2  拳/ if(−1vmask) (SHORT  NS;  DISABLE; )if
(vmask  &&  −+pidl<t>)S=M
EM; if(vmask  &&  pidl<t))MEM
=N; vmask=vmask  &  pidl<t>;多
形網目から直角線ツリーを形成することの大きな利点は
、(1)チップ面積の減小化と(2)隣接操作の効率化
と2点である。
(1)チップ面積の減少化:w4目構造及び直角線ツリ
ー構造をレイアウトするために必要なチップ面積は夫々
、O[N”l 及びo [(N2) x(logN)”
]である、ここで、Nは網目構造の横幅であり、ツリー
のリーフの数である。これは、(logN)2の分だけ
節約がなされていることを示し、N=1024であると
き、多形網目を用いると、そのチップ面は直角線ツリー
(第9図参照)の場合の17100になる。
(2)隣接操作の効率化:直角線ツリーのPEは幾可的
に最も近い他のPEに連結されていない。
これでは、直接通信経路が存在しないので、多くの重要
な操作を効率良く行うことができない、事実、3×3の
ウィンドウ内の半分を越えるデータはツリーのルベルか
らウィンドウの中央へと移動しなければならない。3×
3ウインドウのデータ間の平均的距離は2.125であ
るが、多形網目では1.5である。直角線ツリーの3X
3のウィンドウの例は第8図及び第10図に示されてお
り、丸印に符された数字はデータとウィンドウの中心と
の距離を表わしている。
N=4の場合の第7図の例について述べると、多形網目
と直角線ツリーとでは、チップ面積比は16 : 46
であり、3X3ウインドウの平均的距離の比は1.5:
2.1 (第8図及び第10図)である。
制御アルゴリズム○RTHTREEは、BSRX内でタ
イムステップしにおいて、レジスタXをpidOL、−
15RXをpidOノ複写に、Flをhvマスク用いて
pid O< t >をつくり出す、同様に制御アルゴ
リズムは、BSRY内でtime 5tep tにおい
て、レジスタYをpid lに、SRYをpid 1の
複写に、F2をレマスクに用いてpid l < シ>
をつくり出す0条件付S HORT  W E及び5H
ORNSはBSRX、BSRY、Fl、F2に基礎を置
いている。
(e)パターン5(逆−行ツリー) RRツリー(Revesc−Rowツリー)は頂部から
低部へとデータが流れるツリーである(行ツリーは底部
から頂部へと流れる。)。制御アルゴリズムは次のよう
である。
RR−T RE E 0 int  t:  /傘t  is  ti■e  5
tep傘/int  pidO;  ハcolumn 
 position  of  a  P  E 傘/
int M、 logM; /*M is the 5
ide 5ize of themesh and l
ogM=logMe/int tree@ask = 
M%2; /*a flag to construc
tthe trees/ int a+ask: /man intermedi
ate conditions/for(t=0:  
t<logM:  t+◆)(mask=ANDALL
B  IT (treemask l pidO);if(−Ima
sk) (SHORT  WE:  DISABLE;  )i
f(mask  &&  pido<logM−t−1
>)W=MEM: if(mask  &&  *pidO<logM−t
−1>)MEM=E; tree+5ask= A  S  HI  F T 
(treemask、  1);第11図の8−PEの
例については制御アルゴリズムを次のように説明するこ
とができる。
フラグツリーマスクはPEの総数の半分について初期化
される(即ち、4=100)、INVERTされたツリ
ーマスクはまずpid OとORされてその結果はAN
DALLBITに渡され、ANDALLBITはもしそ
の結果の全ビットが1であればlをリターンし、その他
の場合では0をリターンする。マスク=1のPE(即ち
、PE3及びPE7)はツリーの一部であり、ツリーの
節でない他のPEは自らを使用禁止にするかあるいはツ
リ一連結を確立するためにW−Eパスを5HORTさせ
る。PE3及びPE7では、pid O(7)ビット2
が更にチェックされ、それが1であればPE7をしてデ
ータをPE3に送らせる(それまではPE3のビット2
はOである。)。これはt=0においてツリーのトップ
レベルを形成する。
1=0の最後にツリーマスクは算術的に左へ1ビツトシ
フトされる。したがって、次のタイムステップ用110
となる。
t=1では、PE1.3.5.7がツリー節であり、P
E7がPE5に、また、PE3がPEIにデータを送る
。し=1の最後にツリーマスクは111になる。
し=2では全PEがツリー節となり奇数pid Qの各
PEは偶隣接する低位の偶数pid Qの各PEにデー
タを各々送る。
CCM中の機構を用いて、ツリーマスクはSRMにロー
ドされ、XはSRXに複写される。レジスタXはINV
ERTされたSRMとORされ、次に、その結果はマス
クをつくるためにANDALLBITされる。SRXは
タイムステップtにおいてBSRX内にて左へ論理的に
シフトされても pido <logM −* −1>をつくる、これは
ツリー節ノヘア用に5END/RECE IVEを制御
するように用いられる。
RRツリーはデータを全ツリー節に拡げるためのもので
あり、全ツリー節はツリー内の位置に応じて異なる操作
を施す。計算機図形処理では、このパターンは有用であ
る。というのは、Aを定数Xをpid Oとして各PE
にAXXを同時に行なわせるからである。AXXを並列
的に調べることによりラインの最初の生成を行うことが
できる。これについては、対角線波リッリー(パターン
12)について述べるところで更に説明する。
一般に逆ツリーはパラメータ空間の記号表現を画像空間
の画像表現に変換するために有用であり、アルゴリズム
は多形網目による非常に大量の並列処理を行う。
制御アルゴリズムは最高位のpid Oを有するPEを
ツリーの根として用いるが、最低位のpid Qを有す
るPEもツリーの根として用いることもでき、制御アル
ゴリズムは同等の複雑さを有する。
(f)パターン6(従列ツリー:RCツリー)RRツリ
ーと同様に、RCツリーもpidlを制御子とし、N−
3をツリー確立のための経路とすることにより形成され
る。制御アルゴリズムは次のとおりである。
RC−TREEO int j;ハt is time 5teps/in
t  pidl;  /拳rov  position
  of  a  P  E*/int M、 log
M; 78M is the 5ide 5ize o
f the+1esh and logM=logM・
/int  treemask = M%2:  /阜
a  flag  to  constructthe
 trees/ int  mask:  /man  interme
diate condition拳/for(t=o:
  t(logM:  t÷+)(mask:ANDA
LLB IT (treemask l pidl):if(コ層as
k) (SHORT  NS:  DISABLE; )if
(mask  &&  pidl<logM−t−1>
)N=MEM; if(mask &&  −+pidl<logM−t
−1>)MEM=S; treemask=A S HI F T (tree
mask、  l);RCツリーの特性はRRツリーと
同様であり、ただ、RCツリーでは網目の列(コラム)
中のデータに関連している点で異なるだけである。
(g)パターン7(行バス) 回報通信目的では、バスは同報通信距離を最短にするの
で非常に有用である。1つのバスが以下の制御アルゴリ
ズムにより多形網目の全ての行について形成される。
ROW  BUSO int 5ender: /* I D for th
e 5enders/int pido; 5HORT  WE; if (pido = = sender)E=MEM
; lse M E M = W : 行中の1のPEが送り元として働き、残りのPEは受は
手となる。全てのPEはE−Wを5HORTさせてバス
を確立し、送り元はデータをE(あるいはW)に送り、
受は手はデータをW(あるいはE)から受は取る。この
他に、データはWあるいはEに外部コントローラから注
入され、送り元としてのPEは存在せず、全てのPEが
受は手である場合もある。
CCMにより送り元はSRMにロードされる。
INVERTされたSRMはpid Oを格納シティる
レジスタXとXOHされる。得られたビット値はAND
ALLBITされる。XANDALL中の1は送り元と
してのPEを特定し、X A N D ALL=OのP
Eは受は手となる。
(h)パターン8(列バス) 行バスと同様に、列バスも、pid 1を制御子とし、
N−3を経路とすることにより、多形網目の各列につい
て形成される。制御アルゴリズムは次のようである。
COLUMN  BUSO int  5ender:  /拳 I  D  fo
r  the  5enders/int pidl: 5HORT   NS; if (pidl = = sender)S=MEM
: lse MEM=N; 列バスの特性は行バスと同様である。
行バスと列バスとが組み合わせられることにより2ステ
ツプで列データが全PEに回報通信される。第1ステツ
プでは、列データが最上位の行の全PEに同報通信され
、次に第2ステツプでは、最上位の行のPEは他の全P
Eに列方向に沿って列データを同報通信する。
(i)パターン9 (ピラミッド) ピラミッド構造は、多重解像度画像を取扱う上で優れて
いる。ピラミッドパターンは次の制御アルゴリズムによ
り多網目から形成される。
PYRAMIDO int  t;  /*t  is  time  5
teps/int pido:ハcolumn pos
ition of a P E*/int  pidl
:  /11row  positions/int 
 M、lo[cM:  /*M  is  the  
5ide  5ize  of  the+mesh 
and  logM=1ogM*/int  b+as
k=1.vmask=1;  /*tIIo  fla
gs  t。
construct  the pyraa*id*/
for(t=0;  t<lo(M;  t÷+)(/
*cycle  1  actions/1f(−+h
mask l −+vmask)(SHORT  WE
;  5HORT   NS;DISABLE;  ) if(hmask  &&  vmask  &&  
−IpidO(t>  &&=pidlG>) E=MEM; if(hmask &&  vmask &&  −p
ido<t> 8&iρidl<t>) (N=MEM:  MEM1=W:  )if(ha+
ask  &&  vmask  &&  −Ipid
o<t>  &&ρidl<t>) E=MEM; if(hmask  &&  vvsask  && 
 pido<t>  &&  pidl<t>)(ME
MO=N;  MEM2=W?  )/*cycla 
 2  actions/if(−qhmask  l
  wv+*ask)(SHORT  WE;  5H
ORT  NS:DISABLE:  ) if(hmask  &&  veeask  && 
 −IpidO<t>  &&−pidl<t>) No   ACT I ON; if(hmask  &&  vmask  &&  
pidO<t>  &&−Ipidl<t>) S=MEM1: if(hmask  &&  vmask  &&  
−IpidO(t>  &&pidl<t>) No   ACTI○N; if(hmask  &&  vmask  &&  
pido<t>  &&  pidl<t>)M E 
M 1 = N ; h+++ask=hmask  &  pido(t)
;vmask=v+aask  &  pidl<t>
;制御アルゴリズムはlogMのステップを含み、各ス
テップには2つの制御サイクルが存在している。別言す
れば、ステップは2つのPEサイクルでピラミッドの1
つのレベルを形成する。
第12図、第13図、及び第14図は8×8網目におけ
るピラミッド制御アルゴリズムを示している。
hマスク(行用)及び■マスク(列用)の2つのマスク
が1に初期化され網目中の全PEが初めのステップにお
いて使用可能になる。t=OZおいて、全PEが処理操
作状態(アクティブ状態)となり、2×2のPEが1つ
のグループを形成する。これら4つの(2X2)PEは
、ピラミッドのNW、NE、SW、及びSE息子であり
、親はSE息子と同様である。4つの息子の処理操作は
pido<t>及びpid< t >のビット値で区別
される。
pido<O>=pidl<O>=1(7)SE息子(
あルイはMA) は、第1サイクルにおいて、pido
<0)=0且つpidl<O>=lのSW息子及びpi
do<O>==1且つpidl<0)=OのNE息子か
らデータを受は取る。このサイクル中で、NW息子はデ
ータをNE息子からデータを受は取る。このサイクル中
で、NW息子はデータをNE息子へと渡す、このデータ
は第2サイクルで親により受取られる。第2サイクルで
は、NE息子と親との間だけでデータの受渡しが行なわ
れ、他の2のPEは活動しない。
■マスクとhマスクは次のタイムステップの連結を制御
するために更新される。
し=1において、再び4つのPEがピラミッドの次のレ
ベルの4つの息子と親とを形成する。4×4網目中のこ
れら4つのPEの幅は第13図に示されている。4つの
息子と親の処理操作はL=0で等しいが、偶数行と偶数
列のPEは使用不可である。これらの使用不可の非ピラ
ミッドPEは自らのWとEライン及びNとSラインを5
HORTしてピラミッド連結を確立させる。
第14図にはピラミッドの最終レベルを構成するPEが
示されている。
上述の直角線型ピラミッド構造では、ピラミッドパター
ンは各レベルに網目連結を有している。
これは同一レベルに4つの近傍(N、S、E、W)が存
在しているピラミッド中の各ノードであり、下のレベル
の4つ息子や上のレベルの1つの親のためのものではな
い、この関係は第15図に示されている。
同一レベルの近傍PEを得るための制御アルゴリズムは
上述の制御アルゴリズム中に組み込まれている0例えば
、第15図で、1=0では、同一レベルの近傍PEは元
の網目に連結されている9t=1では、同一レベルの近
傍PEは他の行及び列に拡がり網目連結が確立される。
ピラミッドの同一レベルでの近iPEの内容を得るため
には、下記の制御アルゴリズムPYRAMIDの各ステ
ップに2つの制御サイクルが付加される。サイクル3は
NとWの内容を得るため、サイクル4はSとEの内容を
得るためのものである。
PYRAMIDO int  t:  /*t  is  ti+ie  
5tep拳/int  pidO;  /拳colum
n  position  of  a  P  E 
傘/int  pidl;  /事row  posi
tions/int M、 logM: /*M is
 the 5ide 5ize of thea+es
h  and  lo(M=1o(Me/int hm
ask=1. vmask=l:ハtwo flags
 t。
construct the pyramids/fo
r(t=o;  t(logM;  t++)(/*c
ycle l actions/1f(−+hmask
 l 1vIIlask)(SHORT  WE; 5
HORT  NS:DISABLE;  ) if(ha+ask  &&  vmask  && 
 −+pidO<t>  &&門pidl<t>) E=MEM; if(hmask  &&  vIlask  && 
 pido<t>  &&−+pidl<t>) (N=MEM;  MEM 1 =W;  )if(h
mask  &&  v+mask  &&  −+p
idO<t>  &&pidl<t>) E=MEM; if(hmask  &&  vmask  &&  
pido(t)  &&  pidl<t>)(MEM
O=N:  MEM2=W:  )ハcycle  2
  action拳/1f(−+hmask l −+
vmask)(SHORT  WE:  5HORT 
 NS;DISABLE:  ) if(h++ask  &&  vmask  && 
 −+pidO<t>  &&=Pidl<t>) NO−AcTION; if(hmask && vllIask && pi
do<t> &&−+pidl<t>) S ” M E M 1 : if(hmask && vmask && −pid
o<t) &&pidl(t>) No   ACT I ON; if(hmask && vmask && pidO
<t> && pidl(t>)MEM1=N; ハcycle 3 actions/ if(−qhmask l −qvs+ask)(SH
ORT  WE;  5HORT   NS:DISA
BLE;) if(hmask && vmask)(S=MEM3
: E =M E M 4 ; MEM3=N; M E M 4 =W; /拳cycle  4  actions/1f(−+
hmask  l  −+vmask)(SHORT 
 WE;  5HORT  NS;DISABLE; 
 ) if(h+mask  &&  Vmask)(N=M
EM5: W=MEM6; MEM5=S; MEM6=E: hmask=hmask  &  pidO<t>:v
+mask=vmask  &  pidl<t);C
CMの働きにより、hマスク及びVマスクがFl及びF
2に夫々ロードされる。レジスタX内のpid O及び
レジスタY内のpid 1はSRX及びSRYに夫々複
写される。右に論理的にシフトすることにより、BSR
X及びBSRYはpido<t)及びpid 1 < 
t >を、タイムステップtにおいて、その内容とする
。Fl及びF2とともにこれらの2つの条件は5HOR
T処理操作処理待に用いられる。
上述のピラミッドはMXMのベースを有し、縮退2であ
る。縮退2とはMXMのベースの上部レベルが(M/2
)x (MX2)であり、以下これを繰り返すことを意
味する。PYRAMID制御アルゴリズムはKを2の累
乗数として縮尺にの場合に拡張できる。そのためには、
以下のようにしてhマスク及び■マスクを更新すればよ
い。
hマスク=hマスク& pido(t > & pid
O<t+i> ■マスク=V’7Xり& pidl<t> & pid
l<t+i) そして、ピラミッドノード処理操作を偶数tステップむ
にスキップすればよい。
(j)パターン10(逆ピラミッド) 画像データから記号(符号)データへの変換にはピラミ
ッドの底から頂部へと情報が流れる。しかし、記号デー
タから画像データへの変換には逆方向に情報を流す必要
がある。これは、以下の制御アルゴリズムにより多形1
!!目から形成される逆ピラミッド(Rピラミッド)に
より実行される。
R−PYRAMIDO int  t;  /*t  is  time  5
tap傘/int pido; /*row posi
tion of a P E*/int pidl;ハ
colu@n position of a P E傘
/int M、 logM; /*M is the 
5ide 5ize of themesh  and
  logM=logM拳/int mask = M
%2; /11a flag to construc
t thepyra■id・/ int hmask、 va+ask:for(t=o
:  t(lo(M:  t◆÷)(hmask=AN
DALLB I T(−Imask l pido);
vmask=ANDALLB IT(−Imasklp
idl);/*cycle  1  */ if(whmask l −+vmask)(SHOR
T  WE;  5HORT  NS;DISABLE
;  ) if(ha+ask && vmask && pid
O〈logM−t−1> &&pidl(logM−t
−1>) N=MEM2; if(hmask && vo+ask && pid
O<logM−t−1> &&−+pidl<logM
−t−1>) MEM2=S; if(hmask  &&  vmask  &&  
−+pidO<logM−t−1)&&  pidl(
loHM−t−1>)NO−ACTION; if(hmask  &&  vmask  &&  
wpidO<logM−t−1)&&  −Ipidl
<logM−t−1>)No−ACT I ON; /・cycle  Z  拳/ if(whmask  l  −+vmask)(SH
ORT  WE;  5HORT  NS;DISAB
LE:  ) if(hmask  &&  vmask  &&  
pido<logM−t−4>  &&pidl<lo
gM−t−1>) (N=MEM1; W=MEM3; )if(hmas
k  &&  vmask  &&  pido(lo
gM−t−1>  &&−Ipidl<logM−t−
1>) (MEM1=S; W=MEM2: )if(hmas
k  &&  vmask  &&  −+pidO<
lol(M−t−1>&& pidl<logM−t−
1>)MEM3=E; if(hmask  &&  vmask  &&  
−+pidO<logM−t−1)&&  −Ipid
l(lo(M−t−1>)MEM2=E: mask= A S HI F T (mask、  
1);RPYRAMID制御アルゴリズムはPYRAM
IDアルゴリズムの逆方向処理であり、RRTREE及
びRCTREEの拡張である。第19図に簡単な例が示
されている。この例では8X8W4目中の3つのレベル
が示されている。
第19図に示されるように、逆ピラミッドの根はPE 
(0,0)(図中左上端のPE)である。
その左息子はPE (4,0)、右息子はPE(0,4
)である。
第2レベルの息子は横方向及び縦方向の第ルベルの息子
の夫々に関して2つある。PE (6、o)及びPE 
(2,4)がPE (0,4)の息子であり、PE (
4,2)及びPE(6,0)がPE (4,0)の息子
である。
同様にして第3レベルの、な、子も定まる。
−1a的ニ=ツで、NIXNw4目’?’はPE (0
、○)が根であり、K=0からN−1であるとしてPE
(k、N−1−k)がリーフである。PE (s、し)
の第1番目(i=1からlogNとする)のレベル左息
子はPE (S+2 (logN−i) 、  t)で
あり、右息子はPE (s、t+2 (1ogN−j)
)である。
制御アルゴリズムは次のようである。
tJLDSTO int fs=0. fr=o; /@flag−se
nd is used t。
construct the D S Tl//拳fl
ag−receive  is  aninterme
diate var t。
update  fs本/ int pido、 pidl; int t; /Q is time 5teps/i
nt  M、  logM;  /拳M  is  t
he  5ide  5ize  of  theII
Iesh  and  log M : log M 
傘/int treemask = M%2: /拳a
 flag tのconstructthe tree
s/ 1f(pidO= =O&& pidl= =O)(f
s=1; fr=IH) for(t=0:  t<logM;  t++)(h
mask=ANDALLB  I T(−+treem
ask l pido);vmask=ANDALLB
  I T(−1treesask l pidl);
1f(−+hmask l −qv+mask)(SH
ORT  WE;  5HORT  NS;DISAB
LE:  ) if(hmask l vmask && fr)(E
=fs;  5=fs; fr=o; )if(hma
sk l vmask &&  wfr)(fs=W 
I N; fr=W I N:  )treesask
 = A S HI F T (treeIIlask
、  l);8×8の多形網目の例で上記アルゴリズム
を説明する。PE (000,000)をDST(Di
agonal−3pan−Tree :対角線パスツリ
ー構造)の根として選び、fs (flag 5end
 :フラグ送り)及びFr (flag receiv
e :フラグ受は取り)を1にセットする。t=0のタ
イムステップで、行oOOと100、及び列000と1
00がアクティブであり、残りはディスエイプル(不活
動)である。
不活動なPEはWE及びNSを短絡してfsを更新する
ために新しいパスを確立する。fr=1なるfrを有す
るアクティブなPEはそのfs値をE及びS近傍へ送り
、次のタイムステップでは送り手とならないようにfr
を0にリセットする。受は手(fr=0である。)はそ
のfsをNとWのORされた値として更新する。受は手
は又そのfrを同じORされた値として更新し、それゆ
え、N又はWから1を受は取ったPEは次のタイムステ
ップでは送り元となる。ステップ1=0では、2つのP
E (PE(000,100) とPE (100,0
00)のこと、)がDSTのノードとして(fs=1に
セットすることにより)選択され、更に、これらが新し
い送り元として(fr=1とセットすることにより)準
備され、後続のステップにおいて更なるDSTがセット
される。
次のステップでは、先の2つの新しい送り元の各々が2
つのDSTノード及び2つの送り元を同様の方法で形成
する。新しいノード及び送り元はPE (000,11
0)、PE (010,100)、PE (too、o
lo)、及びPE(110,000)である。
ステップt=2では、対角線PEが制御アルゴリズムに
より達成される。それらのfsが1にセットされて自ら
がDSTの部分であることが示される。更に、それらの
frが1にセットされ、自らが対角線ノードであること
が示される。対角線の識別はDSTアルゴリズムによる
付加効果である。
このことは、次のセクションで説明する種々の計算に役
立つ。
DSTを形成するため、フラグfsは条件フラグとして
用いられる。fs=OのPEはWE及びNSパスを短絡
させ、fs=1のPEはメモリ内容をE及びSに送ると
ともにW及びNからデータを受は取る。
連結制御ブロックの機能を利用して、゛ツリ−マスクが
SRMへ、fsがFlへ、frがF2へ、各々ロードさ
れる。INVERTされたSRMの内容は、レジスタX
内のpid O及びレジスタY内のpid 1の各々と
ORされる。このようにORされた結果は“ANDAL
LBIT”されてXANDALL内に“hマスク″を、
YANDALL内に11Vマスク″を生成させる。各ス
テップの最後において、SRMが右へ自動的にシフトさ
れる。5HORT動作は、こうシテ、F2)XANDA
LL、及びYANDALLに基づく。
異なる根を選択して同様の制御アルゴリズムを用いるこ
とにより、同じ多形網目中に異なるDSTが形成され得
る。第20図には下の右端に根を有するDSTが示され
ている。これをtJ RD S Tという。
以下において、ULDSTと■、RDSTとを共存させ
てA−X+B−Y+Cという計算を画像の各画素(x、
y)について並行処理により行え得ることを示す。この
ような能力は計算機図形(画像)処理に関して幅広く役
立つ。
E−4,アプリケーション 単純な網目の画像処理へのよく知られたアプリケーショ
ンの他に、多形網目の下記のアプリケーションは、単純
な網目では実行不可能であったり或いは単純な網目より
高速である。
これらのアプリケーションは6つの型に分類できる。
(1)分割統合処理 このタイプの計算には、Nデータの1つのセットをそれ
らの性質に応じて2つのグループに分ける計算が含まれ
る。次に同様にして各グループは2つのサブグループに
分けられる。このような処理がグループ内のデータが唯
1つになるまで繰り返される。
網目連結では、このタイプの計算はO(N)あるいはそ
れ以上の計算量になる。しかし、多形網目においてツリ
ーあるいはピラミッドに変形すれば、このタイプの計算
はO(logN)の計算量になる。N=1024のデー
タセットであれば、100:lの比の(つまり、2桁の
)スピードアップが図られる。
このタイプに属する計算は、分類、最大値発見、最小値
発見、K番目の大きさの値の発見、中間値の発見等の計
算である。これら全てのアルゴリズムの計算量(計算ス
テップ数)はO(logN)である。
(2)画像データと記号データ間の変換このタイプの計
算は計算機図形処理に特有のものであり、しばしば中間
レベル処理と呼ばれる。
ある画像が与えられたとき、次の事を検討しなければな
らない。
(a)どれ位の画素が特定の性質を満足するか。
(b)どの画素が特定の性質を満足するか。
(c)幾つかの画素あるいは全ての画素が特定の性質を
満足するのか、あるいは特定の性質を満足する画素は無
いのか。
ここで、上記特定の性質とは、ある値と等しいとか、あ
る値より大きいとか、ある値より小さいとか、あるいは
これらから算術的または自動的に合成される条件である
これらの全てのアルゴリズムは多形網目におけるツリー
やピラミッドパターンによりO(log N )ステッ
プで計算される。より重要で従来の固定的パターンと比
較されるべき特徴は出力に関するものである。多形網目
では■/○速度が向上する。
多くの場合、1024X1024ビツト(全画像)に対
して唯の1ビツト(ハイ/イイエ)が出力されるだけで
ある。
Iloに関連して、余分のN−SパスがIlo及び処理
の同時流れのために網目に付加されたことがある。この
ような機構及び利点は多形網目にも有効であるが、本発
明の必須とするところではない。
(3)統計 多形網目は以下の統計的計算をO(logN)ステップ
で行うことができる。
(a)平均、差異、標準偏差 (b)面積、周辺長さ、図心 (C)第1モーメント、第2モーメント、クロスモーメ
ント 上記(、)はNデータ一般に関するもので、(b)及び
(c)は画像に特有のものである。
統計的計算は他のアルゴリズムの基礎である。
計算機図形処理において統計的計算は領域解析やパター
ン認識の基礎である。
(4)A−x+B−y+Cの計算 A−x+B−y+Cを計算するためには、多形網目によ
る4つのパターンが必要となる。それらは上方左対角ス
パンツリー(U L D S T: Upper−Le
ft−Diagonal−3pan−Tree) 、下
方右対角スパンツリー(L RD S T : Lov
er−Right−DST)、行バス、及び列バスであ
る。ULDSTとLRDSTとはA−x+C及びB−y
を同時に計算するために共存する。行バスと列バスは合
算(例えばA−x +C+B −y)を行うために共存
する。
アルゴリズムはビット連続的に実行される。画素平面内
の2つの特殊なツリーが消去され得る。
定数A及びBが計算開始前に全PEに同報通信され、ア
レイの開始部分に先取りされている。
(logM −1)のOとともにアレイA及び已にスト
アされる。ストアされたA及びBはビット反転され、先
取りされたOがアクセスされた後に、A及びBの下位桁
側のビットが先ずアクセスされ、るようになっている、
定数CはULDSTの根のWを通じて最下位ビットから
スタートして1タイムステップ当り1ビツトずつ多形網
目に、主入される。
、A−x+Cを計算するためにULDSTをツリーとし
て用いるとき、各PEは3つの変数を有する(合算、キ
ャリー、及び遅延)、各タイムステップにおいて1合算
は、東境界へ渡され、遅延は南堺界側へ渡され、各PE
は、(a)NにアレイAを加え、キャリービットをキャ
リーにストアし、(6)Nを遅延にストアするという2
つの処理を行う。
1ogMステップの後、網目の対角#jAPE (ある
いはULDSTのリーフ)が対応する行のためにA・X
をストアする。同様に、B−yの計算は、根のEから0
が注入され且つPEが遅延を北堺界側に、合算を西境界
側に渡すようなLRDSTにより実行される* log
Mステップの後、各対角線PEは対応する列のためにB
−yをストアする。
行中にA−xを7、列中にB−yを得た後、多形網目は
WEパスの行バスとNSパスの列バスに変形する。各P
 E l、を行バス上の値と列バス上の値とを加えてA
−x+B−y+Cをビット連続形式で算出する。
DSTとバスとを同時に確立することができないため、
A−x+B−y+Cの結果は他の毎回のタイムステップ
毎にビット連続的に伝えられる。
(5)第1ライン検出 多形網目の2つのタイムステップ毎にA−x+B−y+
Cを計算する能力により、MxM画像中の画素(x、y
)がA、B、Cで定まる与えられたあるライン上にある
か否かを決定できる。A、B、Cの全ての数かにビット
長であるとき、(logM+2K)タイムステップで決
定が行なわれる。
第1ライン検出機能は計算機図形処理及び計算機視覚処
理に非常に有用である。計算機図形処理にとっては、凸
形多角形の表示、影の形成、クリッピング、球の描画、
ヒストグラムの同等化計算、テキスチャのマツピング、
及び非変名処理(anti−aliasing)に役立
つ。計算機視覚処理では、ノイズ画面中にラインを見つ
けるための第1 Rough変換を計算する上で役立つ
(6)記号情報の画像情報への変換 多形網目による大規模な並列処理ハードウェアを用いる
と、記号処理(通常は網目では実行されない)から画像
処理への変換して処理を大規模な並列処理により実行し
てしまうことができる。上述の第1 Hough変換は
そのような一例である。マーク発生は本カテゴリー中の
他の例である。
(6,1)バンドマスク発生 バンドマスクは2平行ライン以内に制限され、その一方
は(A、B、C1)により、他方は(A、B、C2)に
より夫々決定される。バンドマスクを発生するため、各
PEはA−x+B−y+C1及びA−x+B−y+C2
を上述のように計算する。計算結果はSL (A−x+
B−y+C1の符号)及び52(A−x十B−y十02
の符号)であり、これらは画素(x、y)がバンドの内
側に存るか否かを決定するために用いられる。
バンドマスクは、計算機視覚処理において、興味ある領
域内の処理だけを行うために役立つ。人間の視覚はマス
クを発生するには異なる方法を採っている。その方法と
は記号情報に関するが、その処理は実際には上述のよう
に画像的に行なわれる。
(6,2)多角マスク発生 多角マスクはバンドマスクを一般化したものである。そ
れはP部分平面から成り、P部分平面の各々はA−x十
B−y+Cで特定されるラインにより決定される。ライ
ン検出機能を用いると、対応するラインについて符号S
l、S2・・・・・・SPを得ることができる。Slか
らSPのプール結合による画素(x、y)がその多角形
内側に存るかどうかが決定される。
E−5,結論 連結制御機構(CCM)の制御により次の変換操作が可
能である。
物理的なMXM網目は、MXMの長さの1つの行及びM
xMの長さの1つの列に連結できる。
物理的なM x M網目は、各々がMのリーフを有する
M行ツリーに連結できる。
物理的なM X M網目は、各々がMのリーフを有する
M列ツリーに連結できる。
物理的なM X M網目は、MXM直交ツリーに連結で
きる。
物理的なMXM、93目は、各々がMのリーフを有する
M逆行ツリーに連結できる。
物理的なM X M網目は、各々がMのリーフを有する
M連列ツリーに連結できる。
物理的なM X M網目は、各々がMのPEを有するM
行バスに連結できる。
物理的なMXM網目は、各々がMのPEを有するM列バ
スに連結できる。
物理的なM X M !i4目は、M X Mのベース
を有し縮小率K (Kは2の累乗数)のピラミッドに連
結できる。
物理的なMXM1!l目は、MxMのベースを有し縮小
率K (Kは2の累乗数)の逆ピラミッドに連結できる
物理的なMXMの網目は、MXMXK (KはPEのロ
ーカルメモリで制限される整数)の立方体に連結できる
また、CCMの外部のプログラムの制御下で以下の変換
が行なわれる。
物理的なM X Mの網目はDSTツリー構造に連結で
きる。DSTツリーの根は網目のどこの角にあってもよ
い。根が対角線の反対方向の角にあれば、2つのDST
が共存できる。
物理的なMXMの網目は、O(M”)のシリコン上の面
積内にMXMの直交線ツリーに連結できる。本発明によ
れば、○[(log M )2]の要因により、面積が
節約される。なお、Mは直交線ツリーの側辺の大きさで
ある。
分割統合アルゴリズムは、O(M)という線形の計算量
(計算ステップ数)の場合とO(1ogM)という対数
形の計算量の場合とに分類される。M/IOEMの節約
が本発明により得られる。これについても既に実施例の
説明で述べられている。
画像から記号への変換(中間レベル処理)操作は多形網
目内部で行なわれ、I10量は非常に減小される。非常
に多くの場合、6桁程度の減小が図られる。
記号表現から画像表現への変換が上述のパターンにより
行なわれて画像に関する処理が大規模に並列的に行なわ
れ得ることになる。そのような構成を記号処理の範囲の
網目に拡張してもよい。
網目は次のような機能を有する。
(a)画像処理を行う。
(b)画像データを記号データに変換する。
(c)記号データを画像データに変換する。
(d)記号データ処理をその画悔データ等価物において
行う。
本発明によれば、MXM網目内で○(logM)ステッ
プにて、各画素(x、y)に対し並列に、A−x+B−
y+Cの計算ができる(A、B、Cは定数とする。) 本発明によれば、各画素(x、y)が(a)ライン上か
、(b)ラインの右側か、(c)ラインの左側かの検出
をO(1ogM)計算ステップ数で行うことができる。
本発明によれば、各画素(x、y)が2つの平行線で形
成されるバンドの内側か外側かの検出を並列的に行うこ
とができる。
本発明によれば、各画素(x、y)が多角形の内側か外
側かの検出を並列的に行うことができる。
本発明は、レジスタ2)シフトレジスタSRZ、及びフ
ラグレジスタF3をCCMに付加することにより、3次
元網目(物理的立方体)に形成して、12のパターンの
より高次元の拡張を果すことができる。
3次元(3D)画像素子はボクセル(νoxel)であ
る、ボクセルは面積のみを有するピクセル(画素)と類
似している0本発明は3次元に拡張して各ボクセル(x
、y、z)が(a)2つの平行平面で形成される領域、
(b)多角形体内に存るか否か、あるいは(c)ボクセ
ルがある平面上か、左か右かについての検出を並列で行
うことができる。
本発明は多形という概念を物理的網目にCaX2を通じ
て適用している。同様の概念及び機構を他の固定的な連
結構造に適用することもできる。
多形網目により形成されるパターンは、ALUの出力を
通じてFl及び/またはF2にロードされる値の内容に
より、データの性質に適するようにされる。
任意のパターンが、命令又はメモリ内容を通じてFl及
びF2レジスタをセットすることにより、多形網目りか
ら形成され得る。命令、メモリ内容、近傍PEからの中
間処理値、及びPE内部の診断情報は、典型的システム
操作パラメータであり、これらはよく知られた技術及び
簡単な手段によって、フラグレジスタのセットに用いら
れる。CCMはシステム操作パラメータによりセットさ
れ得るフラグレジスタ手段を有し、パターンレジスタの
少なくとも1つに新しいパターンをセットするために用
いられ得る制御情報を発生する。このような機能は、プ
ログラマによりアクセス可能であり、プログラマにより
データに関して或いは条件に関して更に他の事象取扱い
の可能性を有する。
そのような事象では、フラグレジスタがセットされ、そ
れに応答して新しいパターンがフェッチあるいは計算さ
れる。
【図面の簡単な説明】
第1図は本発明で用いられる複数の多形網目処理要素を
有する網目組織から成る画像処理装置を示すブロック図
、 第2図は前記多形網目処理要素の連結制御機構の切換機
構を示すブロック図、 第3図は前記連結制御機構の構成を示すブロック図、 第4図は前記多形網目処理要素が枝分れ等のない−続き
のひも状に連結された状態を示すブロック図、 第5図は前記多形網目処理要素が木構造状に連結された
状態を示すブロック図。 第6図は前記多形網目処理要素が前記以外の木構造に連
結された状態を示すブロック図、第7図ないし第10図
は本発明の多形網目処理要素を用いた場合のチップ上面
積の比較及び連絡部の改良状態を示すブロック図、 第11図は前記多形網1処理要素が連木構造状に連結さ
れた状態を示すブロック図、 第12図ないし第20図は各々前記多形網目処理要素の
代理的な連結状態を示すブロック図、第21図は前記多
形網目処理要素の内部機構の一例を示すブロックである
。 1・・・・アレイ、2・・・・基本演算器、3・・・・
ホストコンピュータ、6・・・・ALU、7・・・・・
・・メモリ、8・・・・連結制御機構(CCM)、9・
・・・バス、10・・・・マトリックス(交線スイッチ
)、11・・・・入力線。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  岡  1) 次  生(外1名) FIG、 1 FIG、9 FIG、4 FIG、5 FIG、6 FIG、 8           FIG、 10ロ
ー二〇  〇−’(]  D−’0  ロー7口t□2
FIG、12          FIG、14FIG
、 13          FIG、 15oooo
oooo    ooooooo。 FIG、 16         FIG、 17FI
G、18 ooooooo。 ooooooo。 ooooooo。

Claims (2)

    【特許請求の範囲】
  1. (1)システム全体を制御するホストコンピュータと複
    数の基本演算器のアレイとを備え、前記基本演算器は、 (a)メモリと、 (b)前記メモリに接続されたALUと、 (c)内部短絡経路及び他の基本演算器との間の外部連
    結の形成を前記ホストコンピュータから与えられる連結
    制御パターンに従って制御する連結制御機構と、 を有することを特徴とする画像処理システム。
  2. (2)特許請求の範囲第(1)項記載の画像処理システ
    ムにおいて、前記ホストコンピュータから与えられる連
    結制御パターンは前記連結制御機構に備えられた複数の
    パターンレジスタ内に順次保持されるとともに、連結制
    御機構に備えられたパターン選択レジスタにより連結制
    御パターンの切換えが直ちに行なわれるよう構成されて
    いることを特徴とする画像処理システム。
JP13201687A 1986-08-29 1987-05-29 画像処理システム Pending JPS6364178A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US90234386A 1986-08-29 1986-08-29
US902343 1986-08-29

Publications (1)

Publication Number Publication Date
JPS6364178A true JPS6364178A (ja) 1988-03-22

Family

ID=25415719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13201687A Pending JPS6364178A (ja) 1986-08-29 1987-05-29 画像処理システム

Country Status (6)

Country Link
EP (1) EP0257581B1 (ja)
JP (1) JPS6364178A (ja)
AU (1) AU584817B2 (ja)
BR (1) BR8704237A (ja)
CA (1) CA1289261C (ja)
DE (1) DE3788758T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0229849A (ja) * 1988-05-13 1990-01-31 American Teleph & Telegr Co <Att> コンピュータ、メモリシステム、情報蓄積装置
JP2008530642A (ja) * 2005-02-07 2008-08-07 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト 低レイテンシーの大量並列データ処理装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727515B2 (ja) * 1987-03-05 1995-03-29 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 2次元メッシュ・アレイの処理要素
GB8713819D0 (en) * 1987-06-12 1987-12-16 Smiths Industries Plc Information processing systems
AU603714B2 (en) * 1987-06-15 1990-11-22 Unisys Corporation Neurocomputer system for solving optimization problems
GB2239772B (en) * 1989-10-26 1993-12-01 Gen Electric Co Plc Image generation and processing
HU900629D0 (en) * 1990-02-01 1990-04-28 Cellware Mikroelektronikai Kut Cicuit arrangement for inhomogen operating processors with homogen structure and cellular building
WO1994017488A1 (en) * 1993-01-22 1994-08-04 University Corporation For Atmospheric Research Multipipeline multiprocessor system
US5819061A (en) * 1994-07-25 1998-10-06 International Business Machines Corporation Method and apparatus for dynamic storage reconfiguration in a partitioned environment
US5682491A (en) * 1994-12-29 1997-10-28 International Business Machines Corporation Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier
US5677956A (en) * 1995-09-29 1997-10-14 Innovative Computing Group Inc Method and apparatus for data encryption/decryption using cellular automata transform
AU7201396A (en) * 1995-09-29 1997-04-17 Innovative Computing Group, Inc. Method and apparatus for information processing using cellular automata transform
US6067609A (en) * 1998-04-09 2000-05-23 Teranex, Inc. Pattern generation and shift plane operations for a mesh connected computer
US7889951B2 (en) 2003-06-19 2011-02-15 Intel Corporation Processor to processor communication in a data driven architecture
DE10344285A1 (de) 2003-09-24 2005-05-12 Infineon Technologies Ag Prozessor-Anordnung, Textilgewebestruktur, Flächenverkleidungsstruktur und Verfahren zum Weiterleiten von elektrischer Energieversorgung zwischen einer Vielzahl einander örtlich benachbart angeordneter Prozessorelemente
US8812749B2 (en) 2003-12-31 2014-08-19 Intel Corporation Programmable video processing and video storage architecture

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56101262A (en) * 1979-12-31 1981-08-13 Goodyear Aerospace Corp Matrix and array for multiple processing element
JPS60111546A (ja) * 1983-11-21 1985-06-18 Fujitsu Ltd プロセッサ間通信方式

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3287702A (en) * 1962-12-04 1966-11-22 Westinghouse Electric Corp Computer control
US4270170A (en) * 1978-05-03 1981-05-26 International Computers Limited Array processor
GB2129589B (en) * 1982-11-08 1986-04-30 Nat Res Dev Array processor cell

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56101262A (en) * 1979-12-31 1981-08-13 Goodyear Aerospace Corp Matrix and array for multiple processing element
JPS60111546A (ja) * 1983-11-21 1985-06-18 Fujitsu Ltd プロセッサ間通信方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0229849A (ja) * 1988-05-13 1990-01-31 American Teleph & Telegr Co <Att> コンピュータ、メモリシステム、情報蓄積装置
JP2008530642A (ja) * 2005-02-07 2008-08-07 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト 低レイテンシーの大量並列データ処理装置

Also Published As

Publication number Publication date
EP0257581B1 (en) 1994-01-12
AU584817B2 (en) 1989-06-01
EP0257581A3 (en) 1989-10-18
DE3788758T2 (de) 1994-06-23
CA1289261C (en) 1991-09-17
AU7767587A (en) 1988-03-03
EP0257581A2 (en) 1988-03-02
BR8704237A (pt) 1988-04-12
DE3788758D1 (de) 1994-02-24

Similar Documents

Publication Publication Date Title
JPS6364178A (ja) 画像処理システム
EP3654247A1 (en) Convolution engine for neural networks
JP2930341B2 (ja) データ並列処理装置
CA2215598C (en) Fpga-based processor
JPS62264357A (ja) 並列プロセツサ・アレイにおけるプロセツサ付加のシミユレ−シヨン方法
Jenq et al. Reconfigurable mesh algorithms for the Hough transform
KR20010014381A (ko) 메니폴드 어레이 프로세서
JPH0642237B2 (ja) 並列処理装置
EP0112885A1 (en) CONNECTION LEVEL USED IN A MODULAR DATA FIELD PROCESSOR.
EP0773502B1 (en) Two-dimensional associative processor and data transfer method
JPH02503245A (ja) N次元網でm次元(mはnより小さい)結合網をシミュレートする方法と装置
US20030140213A1 (en) Center focused single instruction multiple data (SIMD) array system
Bhattacharya Connected component labeling for binary images on a reconfigurable mesh architecture
Olariu et al. Fast component labelling and convex hull computation on reconfigurable meshes
CN112099850A (zh) 一种多核Hourglass网络加速方法
Jonker et al. Architectures for multidimensional low-and intermediate level image processing
JPH06318194A (ja) 並列データ処理方式
JP2974398B2 (ja) 自動配線方式
Torralba A systolic array with applications to image processing and wire-routing in VLSI circuits
JP2862387B2 (ja) 超高速画像処理システムのフィルタリング処理方式
Baglietto et al. Euclidean distance transform on polymorphic processor array
JPH0156421B2 (ja)
Gavrilova et al. Computing the euclidean distance transform on a linear array of processors
Lee et al. Self-configuration of defective cellular arrays
Baglietto Euclidean distance transform on a dedicated architecture based on a reconfigurable mesh network