JPH0654505B2 - 並列型演算処理装置 - Google Patents

並列型演算処理装置

Info

Publication number
JPH0654505B2
JPH0654505B2 JP58241993A JP24199383A JPH0654505B2 JP H0654505 B2 JPH0654505 B2 JP H0654505B2 JP 58241993 A JP58241993 A JP 58241993A JP 24199383 A JP24199383 A JP 24199383A JP H0654505 B2 JPH0654505 B2 JP H0654505B2
Authority
JP
Japan
Prior art keywords
execution
state
circuit
arithmetic
instruction
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
JP58241993A
Other languages
English (en)
Other versions
JPS60134957A (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 JP58241993A priority Critical patent/JPH0654505B2/ja
Publication of JPS60134957A publication Critical patent/JPS60134957A/ja
Publication of JPH0654505B2 publication Critical patent/JPH0654505B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、データ処理装置の構成に係り、特に画像処理
装置など、同種の演算を大量のデータに対して実行する
装置に好適な並列演算処理装置の構成方法に関する。
〔発明の背景〕
画像処理は、従来映像入力装置によつて撮像された映像
信号をデイジタル量に変換して汎用計算機で処理してい
る。しかし、画像処理の演算は比較的単純であるにもか
かわらずデータ量が膨大なため、大型計算機をもってし
ても時間のかかる処理である。そのため近年、マイクロ
コンピユータを複数台結合し、膨大な画像データ量を分
担処理させることにより、安価な装置にもかかわらず高
速処理が可能な装置の開発が行なわれるようになつてき
た。このような並列計算機型の処理装置は確かに従来に
くらべれば高速低価格を実現する可能性があるが、1つ
1つの計算回路の単位が完成されたマイクロコンピユー
タのため小型化に限界があり、その全体的な制御の難か
しさとあいまつて、実用的にはまだまだ問題が大きい。
この装置をさらに小型化するためには、マイクロコンピ
ユータをマイクロ命令を順次発生する回路部分とデータ
演算を行う演算部分とに分離し、後者のみを複数持た
せ、同じ演算を別々の演算回路で別々のデータに行える
ようにすればよい。しかし、この方式には1つの大きな
難点がある。すなわち、処理の内容がデータの状態、た
とえばデータの正負、大小関係などによつて変わる場合
には、マイクロ命令発生回路が1個のため対応できない
という問題があつた。
〔発明の目的〕
本発明の目的は、上記問題点を克服する演算回路の制御
手段を提供し、小型、低価格でかつ高速な実用的並列演
算処理装置を実現することにある。
〔発明の概要〕
本発明に関する並列演算処理装置は、同一の実行命令で
同時に多数の演算回路を駆動する型式の並列演算処理装
置である。したがつて、画像処理のように多数の画像デ
ータに対して同じ演算を実行する場合には演算回路の数
だけ並列に演算を実行することができ、高速処理を達成
することができる。しかし、プログラムが複雑でデータ
によつて処理を変えなければならない場合には、すなわ
ち、第1図(a)のように判定分岐命令が挿入される場合
には、各演算回路によつて異なる演算を行なわなければ
ならないので、実行が不可能になつてしまう。
これを解決するために各演算回路に自分で自分を停止回
復できる機能を付加し、第1図(a)の処理を(b)のように
変更しさえすれば等価な処理が実行できる。すなわち、
図において判定Cが不合格の演算回路は合格の演算回路
がプログラムAを実行している間、自らを停止し、次に
条件判定を逆のにして停止していた演算回路だけがプ
ログラムBを実行できるようにする。このようにすれ
ば、上記方式の並列演算処理装置でも(a)と等価な処理
が実行できる。これを回路的に実現させるためには各演
算回路に実行制御回路を付加し、各演算回路毎に最低限 (1)判定結果により自らを停止させる機能 (2)停止状態を回復させる機能 があればよく、さらに (3)演算回路の停止/実行状態を逆転させる機能があれ
ば、プログラムによる実行がより簡単になる。
しかし、このようにしても、プログラムが複雑化すると
困難が生じる。すなわち、第2図のように、分岐後のプ
ログラムの中にさらに判定分岐がある場合には、P
においてもともと全演算回路が実行状態ではないので、
上記(2)の機能によつて停止状態を回復してしまうと点
において全演算回路が実行状態になつてしまい、一
部演算回路の演算内容に誤りが生じてしまうからであ
る。特に、プログラムがサブルーチンとして階層化され
る実用プログラムの場合には大きな困難が生じることに
なる。
そこで、本発明では上記の機能に加えて、新たに演算回
路の実行/停止状態を記憶するスタツク回路を設け、ス
タツク回路の内容に応じて演算回路の実行/停止状態を
次のごとく制御することにより、この問題を解決した。
(4)判定分岐を実行する時に、演算回路の停止/実行状
態をスタツクにプツシユして記憶する。
(5)演算回路の停止/実行状態を逆転させる場合には、
スタツクに最後にプツシユされて記憶されている停止/
実行状態が実行状態である時に限り逆転させる。
(6)停止状態を回復する場合には、スタツクをポツプし
てそこに最後に記憶されていた停止/実行状態に戻す。
このようにすれば、分岐後の必要な処理が完了した後に
は、演算回路の停止/実行状態が分岐処理前の状態に回
復できる。したがつて、スタツクがオーバーフローしな
い限り何重にでも分岐を実行することができ、単一命令
/複数演算型の装置方式にもかかわらず、使い易い汎用
的な処理装置を実現することができる。
〔発明の実施例〕
以下本発明の一実施例を図面により説明する。第3図は
画像処理用並列演算処理装置の構成例である。図におい
て、本発明に関係しない部分は省略してある。
1は実行命令発生回路であり、1からはあらかじめプロ
グラムとして与えられて内部に記憶されている実行命令
の列が、一定クロツクCLKの周期に合わせて信号11
として順次出力される。
2は画像データの記憶されている画像メモリ、3a〜3
nは演算回路、4a〜4nは本発明にかかわる実行制御
回路である。各回路は全て実行命令信号11と、外部か
らの一定クロツク信号CLKによつて駆動される。所望
の画像処理は、あらかじめ定められた実行命令の列が順
次実行されることによつて達成される。
実行命令信号11のうち、12は画像メモリ2に対する
座標及び書込/読出しのための制御信号を含む命令であ
る。画像メモリのデータは信号線15a〜15nを通じ
て演算回路3a〜3nとの間で転送される。演算回路3
a〜3nは実行命令13で指定される演算をクロツク信
号CLKに同期して実行する。16a〜16nは、この
時の演算内容に応じた条件フラグであり、たとえば演算
結果のオーバーフロー、負符号、データゼロ、などを示
すフラグである。また、17a〜17nは、対応する演
算回路の演算を一時停止させるための制御信号である。
すなわち、17a〜17nの信号に“1”となるものが
あれば、対応する演算回路は実行命令13が何であつて
も実行を停止する。
実行制御回路4a〜4nは本発明にかかわる回路であ
り、本回路を付加することにより本発明が実施される。
実行制御回路4a〜4nは実行命令発生回路1からの実
行命令14に応じて制御フラグ16a〜16nの内容を
評価し、制御信号17a〜17nによつて演算回路3a
〜3nを制御する。この制御を、先の発明の概要の項で
述べたように行うことにより、プログラムの中に分岐処
理があつても並列演算を実行することができる。
次に、全体の動作をもう少し具体的に説明する。実行命
令信号11は、前にも述べたごとく画像メモリ2への実
行命令信号12、演算回路3a〜3nへの実行命令信号
13、および実行制御回路4a〜4nへの実行命令信号
14に大きく分割される。このうち、12は画像メモリ
のメモリアドレス情報及び読出し書込制御信号を含み、
演算回路3a〜3nのデータ信号線15a〜15nを介
してのデータのメモリへの記憶読出し動作を制御する。
13は演算回路3a〜3nの演算内容を指定する信号で
あり、その内容により演算回路内に含まれるレジスタ間
の代数演算、論理演算、あるいは信号線15a〜15n
へのデータの出力、信号線15a〜15nの内容の内部
レジスタへの書込み、さらに条件命令による演算器ステ
ータスレジスタ内容の信号線16a〜16nへの出力、
などを指定する。通常の演算プログラムの場合、実行制
御命令12と13とがクロツク信号CLKに同期して順
次適切に指定されることにより、画像メモリの任意の番
地の内容が信号線15a〜15nを介して演算回路に読
出されたり、また逆に演算回路の内容が画像メモリの任
意の番地に書込まれたり、演算回路の内部で任意の演算
が行なわれたりしながら、所望の処理が実行されること
になる。
実行制御命令14は実行制御回路4a〜4nの機能を指
定する信号であり、判定分岐機能、停止/実行状態逆転
機能、停止状態回復機能、及び無変化(NOOP)機能を指定
する。判定分岐機能の場合は14で判定分岐を指定する
とともに13で条件命令を指定し、演算回路のステータ
スレジスタの内容を実行制御回路へと出力する。実行制
御回路においては、そのステータスレジスタが指定の値
を持つているか否かを判定し、演算回路への停止/実行
制御信号を発生する。停止/実行状態の逆転機能、回復
機能の場合は、14でその機能を指定することにより、
次のクロツクからの各演算回路の停止/実行状態を変化
させる。無変化(NOOP)機能の場合は、演算回路の停止/
実行状態を変化させないとの機能であり、先に述べた画
像メモリと演算回路による通常の演算実行時には、必ず
この無変化機能が14によつて指定される。
本構成の回路のうち実行命令発生回路1は通常の計算機
のマイクロプログラム制御回路そのものであり、たとえ
ば市販のLSIであるAMD社製品Am2910により容易
に実施できる。また、演算回路はレジスタフアイルを含
む汎用演算回路であり、たとえば同じくAMD社製品A
m29116により容易に実施できる。画像メモリ回路2は
並列に読み書き可能な構成をもつ単純な記憶回路である
ので、市販LSIであるランダム記憶素子(RAM)に
よつて容易に実施できる。したがつて、本実施例が実施
可能であることを示すためには実行制御回路の詳細を示
し、前に述べた停止/実行制御機能が実施可能であるこ
とを示せば充分である。以下、実行制御回路4a〜4n
のより詳細な回路例について説明する。
第4図は実行制御回路4aの詳細な回路例である。4b
〜4nも全く同等の回路であるので、4aについてのみ
説明する。信号21は実行制御回路4aに与えられる実
行命令14の一部であつて、判定すべき条件の内容を示
す信号である。
23は一致回路であり、前記条件信号21が演算回路か
らの条件フラグ16aと一致したとき、一致信号24を
“1”として出力する。25は選択回路であり、実行命
令14の中に含まれる機能命令22によつてA1〜A4
のうちの1つを選択し、信号26として出力する。すな
わち、条件判定による停止機能の場合にはA1を選択
し、停止/実行状態を逆転する機能の場合にはA2を
選択し、回復機能の場合にはA3を選択し、何もし
ない時にはA4を選択する。27は停止制御信号17a
を保持するためのフリツプフロツプ回路であり、信号2
6をクロツク信号CLKに同期してセツトする。28は
スタツクポインタ回路であり、30はスタツクポインタ
信号29に従つて停止制御信号を記憶したり、記憶内容
を信号31として出力するスタツク回路である。すなわ
ち、この28と30はプツシユダウンスタツク回路を構
成する。次に動作を説明する。
停止機能が制御信号22で指定されたときには、一致回
路23の出力信号24は停止制御信号17aとOR回路
で論理和をとられ、クロツク信号CLKのタイミングで
フリツプフロツプ回路27にセツトされる。すなわち、
演算回路3aがすでに停止していて17aが“1”とな
つている場合には停止状態を保持し、17aが“0”で
あつて動作中の場合には条件一致信号24の内容に従つ
て次の停止/動作状態をセツトする。また、同時にスタ
ツクポインタ回路28によつてスタツクポインタ29を
+1するとともに、フリツプフロツプ27の前の状態を
スタツク30に退避記憶する。タイミングを厳密に述べ
るなら、スタツク30は変化前のフリツプフロツプの内
容をクロツクに同期していつたん保持し、スタツクポイ
ンタ29の+1動作が完了したのちにスタツク用記憶回
路の中に記憶する。その内容は、スタツクポインタが再
び変化しない限りそのままスタツク出力信号31として
出力する。すなわち停止機能動作後には現在の停止/動
作状態が信号17aとして出力され、そのひとつ前の停
止/動作状態が信号31として出力される。
逆転機能の場合、選択回路でA2が選択されるので、も
し信号31が停止状態“1”ならばOR回路34を介し
てそのまま停止状態を保持し、信号31が“実行”状態
であれば現在の停止/実行状態17aを否定回路33で
逆転してフリツプフロツプ27にセツトする。
回復機能の場合はA3が選択されているので、31の状
態、すなわちひとつ前の動作状態がフリツプフロツプに
セツトされ、17aとなる。また同時に、スタツクポイ
ンタ回路28によつてスタツクポインタ29が−1さ
れ、スタツク30はさらにひとつ前の停止/実行状態を
信号31として出力する。
何もしない場合にはA4が選択されるので、フリツプフ
ロツプ27の出力がそのままクロツク信号CLKに同期
してセツトされ、状態は全く変化しない。
以上のような回路を構成することにより、すでに発明の
概要の項で述べた演算回路の停止/実行制御機能は完全
に実現できる。したがつて、本発明が容易に実施可能で
あることは説明できた。
なお、前述の実施例では各演算回路3a〜3nは実行制
御回路4a〜4nからの信号17a〜17nでのみ停止
/実行を制御されるものとしたが、信号17a〜17n
を新たな論理回路に加え、実行命令14の一部でその論
理回路を制御し、かつその出力を改めて演算回路に入力
すれば、実行制御回路からの出力信号に優先して実行命
令で直接演算回路の停止を制御することも容易である。
このようにすればさらに高度な処理をプログラムとして
容易に実現できるが、上記実施例から容易に拡張できる
ものであり、本発明に含まれる。
本実施例によれば、単一命令/複数演算回路方式でも複
雑な分岐を含むプログラムを実行することが可能にな
り、その結果、高速汎用でかつ小型低価格の画像処理装
置を実現することができる。
〔発明の効果〕
本発明によれば、複雑な分岐を含むプログラムを実行す
ることのできる単一命令/複数演算回路型の高速並列演
算処理装置を容易に実現することができる。
したがつて、従来のように完成された計算機を複数個並
べて並列に処理を実行する形の並列演算処理装置にくら
べて大幅に装置を小型化することができる。
この装置は、画像処理のように大量にデータに対して同
一の演算処理を行う場合に特に有効であり、たとえば、
小型できわめて汎用的で、かつ高速な画像処理装置を提
供できる、という効果がある。
【図面の簡単な説明】
第1図は並列演算処理装置におけるプログラム実行方法
を示す図、第2図はさらに複雑なプログラムの実行方法
を示す図、第3図は本発明の実施例である画像処理装置
の全体構成図、第4図は本発明に係る実行制御回路のさ
らに詳細な説明図である。 1…実行命令発生回路、2…画像メモリ、3a〜3b…
演算回路、4a〜4n…実行制御回路、 16a〜16n…条件フラグ、17a〜17n…停止制
御信号、23…一致回路、 25…選択回路、27…フリツプフロツプ回路、28…
スタツクポインタ回路、30…スタツク回路。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】同一の演算回路を複数個備え、その複数個
    の演算回路に同時に同一の実行命令を与えることによっ
    て複数の演算処理を並列実行する並列柄演算処理装置に
    おいて、 各演算回路ごとに、演算回路の過去の実行/停止状態を
    示す情報をスタックするスタック手段と、入力される実
    行命令、演算回路の演算結果、及びスタック手段の内容
    を参照して演算回路の次の時点からの実行/停止状態を
    決定する制御手段とを備え、 上記実行命令には、所定の条件を判定し、条件が満足し
    た場合に演算回路を実行状態とし、それ以外の場合には
    停止状態とすることを指定する第1の命令、演算回路の
    現在の実行/停止状態を反転させることを指定する第2
    の命令、及び、条件付き演算実行を終了することを指定
    する第3の命令を含み、 各演算回路は、上記第1の命令が入力されたとき、現在
    の状態を上記スタック手段にプッシュするとともに、上
    記制御手段にて演算結果についての条件を判定し、現在
    状態が実行状態であってかつ演算結果が条件を満足した
    場合にのみ次の時点からの現在状態を実行状態とし、そ
    れ以外の場合には停止状態とし、 上記第2の命令が入力されたとき、上記制御手段にて上
    記スタック手段に最も新しくプッシュした状態値を判定
    し、それが実行状態であれば、現在の実行/停止状態を
    反転し、 上記第3の命令が入力されたとき、上記制御手段にて上
    記スタック手段に最も新しくプッシュした状態値を次の
    時点からの現在状態となるように構成することを特徴と
    する並列型演算処理装置。
JP58241993A 1983-12-23 1983-12-23 並列型演算処理装置 Expired - Lifetime JPH0654505B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58241993A JPH0654505B2 (ja) 1983-12-23 1983-12-23 並列型演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58241993A JPH0654505B2 (ja) 1983-12-23 1983-12-23 並列型演算処理装置

Publications (2)

Publication Number Publication Date
JPS60134957A JPS60134957A (ja) 1985-07-18
JPH0654505B2 true JPH0654505B2 (ja) 1994-07-20

Family

ID=17082648

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58241993A Expired - Lifetime JPH0654505B2 (ja) 1983-12-23 1983-12-23 並列型演算処理装置

Country Status (1)

Country Link
JP (1) JPH0654505B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1012297B (zh) * 1985-11-13 1991-04-03 奥尔凯托N·V公司 具有内部单元控制和处理的阵列结构
US4791641A (en) * 1986-09-15 1988-12-13 Thinking Machines Corporation Parallel processor error checking
JPS63291178A (ja) * 1987-05-22 1988-11-29 Matsushita Electric Ind Co Ltd ディジタル信号処理装置
CA2138263C (en) * 1993-09-27 2000-02-22 Yukihiko Okumura Multiprocessor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56127266A (en) * 1980-03-10 1981-10-05 Ibm Method of executing and controlling command stream

Also Published As

Publication number Publication date
JPS60134957A (ja) 1985-07-18

Similar Documents

Publication Publication Date Title
US4187539A (en) Pipelined data processing system with centralized microprogram control
US3359544A (en) Multiple program computer
JPH0414385B2 (ja)
JPS62115542A (ja) 情報処理装置
JPH0654505B2 (ja) 並列型演算処理装置
US5828859A (en) Method and apparatus for setting the status mode of a central processing unit
JPS58178464A (ja) 並列演算処理装置
US3290655A (en) Program control for data processing machine
US3238508A (en) Logical manipulator
JPH07219766A (ja) 演算処理装置
EP0306533A1 (en) High-speed floating point operation system
JPH0222413B2 (ja)
JP2511063B2 (ja) パイプライン制御方式
JPS6052449B2 (ja) 割込み処理方式
JPS6155731A (ja) コンデイシヨンコ−ド判定機能を備えるプロセツサ
JP2866143B2 (ja) 動的パイプライン処理装置
JP2543589B2 (ja) デ―タ処理装置
JPH0338613B2 (ja)
JPS60193046A (ja) 命令例外検出方式
JPS6125167B2 (ja)
JPH02287732A (ja) レジスタアドレス生成装置
JPH0792902A (ja) プログラマブルコントローラ
JPS6028014B2 (ja) マイクロプロセツサ
JPS60178540A (ja) 情報処理装置におけるバイパス制御方式
JPS6014335A (ja) 情報処理装置