JPH04281583A - データ駆動型プロセッサ - Google Patents

データ駆動型プロセッサ

Info

Publication number
JPH04281583A
JPH04281583A JP4509791A JP4509791A JPH04281583A JP H04281583 A JPH04281583 A JP H04281583A JP 4509791 A JP4509791 A JP 4509791A JP 4509791 A JP4509791 A JP 4509791A JP H04281583 A JPH04281583 A JP H04281583A
Authority
JP
Japan
Prior art keywords
data
memory
queue
processor
area
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
JP4509791A
Other languages
English (en)
Inventor
Hiroki Miura
三浦 宏喜
Hidenori Ohashi
大橋 秀紀
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP4509791A priority Critical patent/JPH04281583A/ja
Publication of JPH04281583A publication Critical patent/JPH04281583A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データフローグラフを
プログラムとして実行するデータフロー計算機の如きデ
ータ駆動型プロセッサに関する。
【0002】
【従来の技術】近年、実用的な並列処理計算機の実現に
向けて研究が進められており、特に、データ駆動型プロ
セッサは、並列処理に適した命令実行方式を有する計算
機として注目されている。
【0003】一般的に、データ駆動型プロセッサにおい
ては、データにノード番号と呼ばれる論理的行き先番号
が付加されたデータパケットの形で処理が行われ、同一
のノード番号を持つ2つのパケットが揃ったら、2つの
パケットが1つのパケットとなり、演算器に送られて、
所定の命令が実行されるメカニズムになっている。この
ようなノード番号は、データフローグラフと呼ばれるデ
ータの依存関係を表したプログラムに従って付加される
。さらにデータ駆動型プロセッサにおいては、データフ
ローグラフに従って、同じデータに種々のノード番号が
付加され、複数のパケットが複製(コピー)される。 即ち、(1) ノード番号の付加とコピー処理、(2)
 2つのオペランドのマッチング処理、(3) 演算の
実行、という概ね3つのステップを循環的に繰り返すパ
イプライン処理装置(循環パイプライン)によってプロ
グラムが実行される。また、データ駆動型プロセッサに
おいては、一般的にプロセッサ内部に存在するデータパ
ケット数が増加したり、減少したりしながらプログラム
の実行が進められる。このようなデータ量の変動を吸収
するために、循環パイプライン上には、FIFO形式の
キューメモリが設けられる。
【0004】このようなメカニズムにより、データ駆動
型プロセッサにおいては、データフローグラフによって
並列的に表現されたプログラムに従い、複数のプロセス
の処理を1つのプロセッサの中で並行的に進めることが
できる。
【0005】しかし、作成したプログラムに欠陥があっ
た場合や、プロセッサのハードウェアに欠陥が合った場
合には、プログラムの実行中に、あるプロセスの実行の
みが中断されたり、誤ったマッチングによりあるプロセ
スのみが暴走したりといった現象により、プログラム実
行が正常終了しないまま、即ち循環パイプライン構造の
実行ユニット内部にデータパケットが多数残ったまま、
デッドロック状態に陥ることがある。
【0006】このようなデッドロックが生じた時には、
その内部状態を外部に読み出して、解析を行うことが不
可欠である。
【0007】これを解決する手段として、1990年5
月に開催された並列処理シンポジウム(JSPP’90
)の論文集の第161頁から第168頁に開示されてい
る「データ駆動型シングルチッププロセッサEMC−R
」においては、デッドロック状態に陥った時に、通常プ
ロセッサに供給されているシステムクロックを停止して
、循環パイプラインの各部の内容をプロセッサ外部に読
み出すような機構を設けている。しかし、この方法では
、クロックの停止制御や各部の読み出し制御のための回
路規模が大きくなる。また各部のデータを外部に読み出
すための配線量も大きくなる。更に、プロセッサのLS
I化に際しては、これらの情報を読み出すための出力ピ
ンが追加される形となるため、総ピン数が増加してしま
うという欠点があった。
【0008】
【発明が解決しようとする課題】本発明の目的は、デー
タ駆動型プロセッサが、プログラムの実行中に上述のよ
うなデッドロック状態に陥った時に、プロセッサ内部に
存在する情報を、ハードウェア量の大幅な増加を必要と
せずに、プロセッサ外部に読み出す手段を提供すること
である。
【0009】
【課題を解決するための手段】本発明のデータ駆動型プ
ロセッサは、データの依存関係を示すデータフローグラ
フに従ってプログラムを実行する実行ユニットと、プロ
セッサ間通信を制御する通信ユニットと、プログラムの
実行に必要なデータを記憶するデータメモリを備える。 更に本発明のデータ駆動型プロセッサは、プロセッサ外
部からの待避要求信号を入力する手段を備え、待避要求
信号の入力に応じて、前記実行ユニット内部に存在する
データを、データメモリの所定の領域に書き込む待避処
理機能を備える。
【0010】更に、本発明のデータ駆動型プロセッサは
キューメモリを含む循環パイプライン構造をなしており
、キューメモリがオーバフローした時に、キューメモリ
に書き込むべきデータをデータメモリ上の拡張キュー領
域に書き込む手段と、キューメモリに空きができた時に
、拡張キュー領域の先頭からデータを読み出し、読み出
したデータをキューメモリに書き込む手段を備え、待避
処理を行う際に、実行ユニット内部に存在するデータを
、拡張キュー領域への書き込み手段を用いて書き込む。 また、拡張キューの形成のためにデータメモリ上に予め
設けられた拡張キュー領域がオーバフローした時、及び
実行ユニットにおいて演算エラーが生じた時には、待避
要求信号の入力を待たずに自動的に待避処理を行う。
【0011】更に、拡張キュー領域がオーバフローした
時には、実行ユニット内部のデータを、データメモリ上
の拡張キュー領域以外の領域に待避する。
【0012】
【作用】本発明のデータ駆動型プロセッサによれば、プ
ログラム実行時にプロセッサがデッドロック状態に陥っ
た際に、外部から待避要求信号を入力することにより、
プログラム情報や演算の対象となるデータなど、プログ
ラム実行に必要な情報を記憶するために設けられたデー
タメモリに、プロセッサ内に存在するデータを自動的に
書き込み、待避することができる。また、このような待
避処理を、拡張キューの形成時と同様のハードウェアを
用いて行うことができる。また、データメモリ上の拡張
キュー領域がオーバフローした時や、演算エラーが生じ
た時には、外部から待避入力信号を入力しなくても、自
動的に待避処理を行える。
【0013】
【実施例】図2に本発明のデータ駆動型プロセッサが複
数台結合された並列処理システムの一実施例の概略構成
図を示し、図1に本発明のデータ駆動型プロセッサの一
実施例の概略構成図を示す。
【0014】まず、図1のデータ駆動型プロセッサ(P
E)は、基本的にはプログラム記憶部(1)、発火制御
・カラー管理部(2)、命令実行部(3)及びキューメ
モリ(4)が循環パイプライン構造に接続された構成と
している。
【0015】プログラム記憶部(1)は、ノード番号の
更新、定数付与及び結果のコピーを行う。発火制御・カ
ラー管理部(2)は、2段階の待ち合わせ記憶方式で発
火制御及びカラーの獲得・解放の管理を行う。命令実行
部(3)は、浮動小数点演算、整数演算、条件判定、分
岐、簡易定数発生などの命令及びそれらの複合命令を実
行する。
【0016】キューメモリ(4)はリング状でのあらゆ
るデータ流変動を吸収する緩衝記憶である。緩衝記憶が
必要となるのは(a)コピー、(b)リングへの強制的
入力、(c)リングからの出力遅延、(d) FCCM
における待ちリストのサーチ、などが生じたときである
。本データ駆動型プロセッサ(PE)にはキューメモリ
(4)のデータ滞在量に応じて(a)〜(d)の動作モ
ードを動的に変更する機能を付加し、これによって並列
度の制御を行う。
【0017】ネットワーク制御部(6)は、東西南北4
系統の通信ポ−ト(7)、(8)、(9)、(10)を
保持し、最大1024プロセッサ(PE)のトーラス結
合網に基づくルーティング制御を行う。また、自身に向
けて到着したデータパケットを、巡回パイプライン部に
向けて入力するための入力制御部(11)及び循環パイ
プラインからのデータパケットをネットワーク制御部に
出力するための出力制御部(12)を備える。
【0018】ベクトル演算制御部(13)は、ベクトル
演算関連命令、及び通常のメモリアクセス命令の実行制
御を行う。ベクトル演算制御部(13)と入力制御部(
11)の間には、ベクトルデータの入力、及びデータメ
モリ(5)に対するデータの出力、外部メモリを外部キ
ュ−メモリとして使用する場合の入出力を行うためのベ
クトル入力バス(14)を備えている。また、ベクトル
演算制御部(13)と入力制御部(11)の間には、ベ
クトルデータを出力するためのベクトル出力バス(15
)を備えている。
【0019】エラーリクエスト信号(16)は、命令実
行部(3)におけるオーバーフロー、不正命令実行など
のエラー発生時にアクティブとなる演算エラー信号(2
2)と、キューメモリ(4)及び外部メモリ(5)の拡
張キュー領域のデータ量がオーバーフローして実行を継
続することが不可能となった事を示す入力制御部(11
)からのキューオーバフロー信号(23)との否定和(
NOR)をNORゲート(17)において施し、外部に
出力するものである。キューメモリビジー信号(18)
は、キューメモリ(4)上にパケットが少なくとも1つ
存在することを示す信号で、インバータゲート(19)
を介して外部に出力するものである。ネットワークビジ
ー信号(20)は、ネットワーク制御部(6)にパケッ
トが少なくとも1つ存在することを示す信号で、インバ
ータゲート(21)を介して外部に出力するものである
。ここで、(17)、(19)、(21)の各ゲートは
マイクロプロセッサ外部でワイヤードオアをとることが
可能な様に、オープンドレイン出力となっている。
【0020】データメモリ(5)は、種々の用途のため
に、複数の領域に分割されている。(51)はプログラ
ムを格納するプログラム領域、(52)は演算に使用す
るデータを格納するデータ領域、(53)は拡張キュー
の形成のために使用する拡張キュー領域、(54)はデ
ータを待避するために使用される待避領域である。また
、待避要求信号(24)は、外部から与えられる入力信
号であり、これに応じてデータの待避処理を行う。
【0021】本プロセッサは、キューメモリ(4)がオ
ーバーフローしたときにはデータメモリ(5)上に拡張
キューを形成してこれを吸収し、プログラム実行の継続
を図る。即ち、キューメモリ(4)がオーバフローした
時、入力制御部(11)は、キューメモリ(4)に書き
込むべきデータを、メモリ入出力バス(14)を介しデ
ータメモリ(5)の拡張キュー領域(53)に書き込む
。その後、キューメモリ(4)に空きができれば、入力
制御部(11)は、拡張キュー領域(53)にからデー
タを読み出し、それをメモリ入出力バス(14)を介し
て、キューメモリ(4)に書き込む。このような拡張キ
ューの形成機能により、プログラム実行を継続すること
ができる。また、このような拡張キューの形成時に、拡
張キュー領域(53)がオーバフローすれば、それ以上
実行を継続することができなくなり、入力制御部(11
)は、キューオーバフロー信号(23)を出力する。
【0022】本発明のデータ駆動型プロセッサの特徴と
するところは、上記待避要求信号(24)の入力に応じ
て、循環パイプライン、即ち、プログラム記憶部(1)
、発火制御・カラー管理部(2)、命令実行部(3)及
びキューメモリ(4)内部のデータを、自動的にデータ
メモリ(5)に書き込み、待避する点にある。 更に、このような待避処理を上述の拡張キューの形成と
同様のハードウェアを用いて効率的に行うことができる
【0023】即ち、待避要求信号(24)が入力される
と、入力制御部(11)は、命令実行部(3)を経て、
次々に入力されるデータを、メモリ入出力バス(14)
を介しデータメモリ(5)の拡張キュー領域(53)に
書き込む。
【0024】更に入力制御部(11)は、拡張キューの
形成処理時に拡張キュー領域(53)がオーバフローし
た時、及び命令実行部(3)において演算エラーが発生
し演算エラー信号(22)が出力された時など、システ
ムに致命的なエラーが生じた時には、待避要求信号(2
4)の有無にかかわらず、自動的に循環パイプライン上
にあるデータを前述と同様に、データメモリ(5)に書
き込む。
【0025】ただし、拡張キュー領域(53)がオーバ
フローした時は、別途設定されている待避領域(54)
に、前述と同様の経路でデータを待避する。
【0026】斯様なデータ駆動型プロセッサ(PE)を
多数用いた並列データ駆動計算機システムの基本的なシ
ステム構成は図2に示すように、n×m台の要素プロセ
ッサをトーラス結合網で接続することを基本とする。該
トーラス結合網とは、多数のプロセッサを行列配置し、
各縦方向、即ち南北方向のプロセッサ列を循環的に結合
する複数の縦通信線と各横方向、即ち東西方向のプロセ
ッサ行を循環的に結合する複数の横通信線とで任意のプ
ロセッサ間のデータ通信を可能としたものである。
【0027】本実施例の並列計算機システムでは、ネッ
トワークとのデータのやりとりは、南北方向の任意の通
信リンクにネットワークインタフェース(NIF)を挿
入することによって行う。ホスト計算機(HC)と要素
プロセッサ(PE)群とのデータのやりとりは、ホスト
計算機(HIF)、及び上記のネットワークインたフェ
ース(NIF)を介して行われる。
【0028】即ち、ホスト計算機(HC)から、ホスト
インタフェース(HIF)、ネットワークインタフェー
ス(NIF)、及び各プロセッサの通信ポートを介して
、プログラムやデータが各要素プロセッサ(PE)のデ
ータメモリ(5)にロードされる。この時プログラムは
プログラム領域(51)に、データはデータ領域にロー
ドされる。
【0029】また、同様の経路で、各要素プロセッサ(
PE)内のデータメモリ(5)の内容を、ホスト計算機
(HC)に読み出すことができる。
【0030】本実施例の並列計算機システムにおいては
、前述の待避要求信号(24)がホスト計算機(HC)
より出力されて、各要素プロセッサ(PE)に入力され
る。待避要求信号(24)が入力されると、各要素プロ
セッサ(PE)は、前述のようにプロセッサ内部のデー
タを、データメモリ(5)に待避する。待避処理が終了
すると、待避されたデータは、上述のプログラム等の読
み出しと同様にして、ホスト計算機(HC)に読み出す
ことができる。使用者は読み出したデータを解析して、
エラーが生じた原因を解明することができる。
【0031】本実施例のシステムでは、ホスト計算機と
して汎用のEWSまたはパソコンを用い、ホストインタ
フェースを介してネットワークインタフェース(NIF
)に接続する。実装形態としては、データメモリ(5)
を除く部分を、1チップのLSIで実現し、このLSI
1個と外付けデータメモリを名刺大のプリント基板に実
装したものプロセッサモジュールとしている。そして、
約30cm×40cm程度のプリント基板に、プロセッ
サモジュールを16台実装して16プロセッサのシステ
ムを構成し、これを更に複数枚、マザーボードに実装す
る方式としている。
【0032】
【発明の効果】以上の説明から明らかなように、本発明
によれば、データ駆動型プロセッサがデッドロック状態
に陥った時に、自動的に、プロセッサ内部に存在する情
報をデータメモリに待避することができる。また、この
ような待避処理のために、特別なハードウェアを付加す
る必要がない。更に、待避されたデータを外部に読み出
す機能をも容易に実現できる。
【図面の簡単な説明】
【図1】本発明の実施例であるデータ駆動型プロセッサ
の概略構成図である。
【図2】図1に示したデータ駆動型プロセッサを複数台
用いた並列処理システムの構成図である。
【符号の説明】
1  プログラム記憶部 2  発火制御・カラー管理部 3  命令実行部 4  キューメモリ 5  データメモリ 6  ネットワーク制御部 7  通信ポ−ト(東) 8  通信ポ−ト(西) 9  通信ポ−ト(南) 10  通信ポ−ト(北) 11  入力制御部 12  出力制御部 13  ベクトル演算制御部 14  メモリ入出力バス 15  ベクトル出力バス 16  エラーリクエスト信号 17  NORゲート 18  キューメモリビジー信号 19  インバータゲート 20  ネットワークビジー信号 21  インバータゲート 22  演算エラー信号 23  キューメモリオーバフロー信号24  待避要
求信号 51  プログラム領域 52  データ領域 53  拡張キュー領域 54  待避領域 HC  ホスト計算機 HIF  ホストインタフェース

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】  データの依存関係を示すデータフロー
    グラフに従ってプログラムを実行する実行ユニットと、
    プロセッサ間通信を制御する通信ユニットと、プログラ
    ムの実行に必要なデータを記憶するデータメモリを含む
    データ駆動型プロセッサに於て、プロセッサ外部からの
    待避要求信号を入力する手段を備え、該待避要求信号の
    入力に応じて、前記実行ユニット内部に存在するデータ
    を、前記データメモリの所定の領域に書き込む待避処理
    機能を有することを特徴となすデータ駆動型プロセッサ
  2. 【請求項2】  請求項1の前記実行ユニットは、キュ
    ーメモリを含む循環パイプライン構造をなし、該キュー
    メモリがオーバフローした時に、キューメモリに書き込
    むべきデータを前記データメモリ上の拡張キュー領域に
    書き込む手段と、前記キューメモリに空きができた時に
    、前記拡張キュー領域からデータを読み出し、該データ
    を前記キューメモリに書き込む手段を備え、前記待避処
    理を行う際に、前記実行ユニット内部に存在するデータ
    を、前記拡張キュー領域への書き込み手段を用いて書き
    込むことによって、ハードウェアの大幅な増加を必要と
    せずに前記待避処理を可能にすることを特徴とした請求
    項1記載のデータ駆動型プロセッサ。
  3. 【請求項3】  請求項2の拡張キューの形成のために
    前記データメモリ上に予め設けられた拡張キュー領域が
    オーバフローした時、及び前記実行ユニットにおいて演
    算エラーが生じた時に、前記待避要求信号の入力を待た
    ずに自動的に待避処理を行うことを特徴とした請求項2
    記載のデータ駆動型プロセッサ。
  4. 【請求項4】  請求項2の拡張キュー領域がオーバフ
    ローした時には、前記実行ユニット内部のデータを、前
    記データメモリ上の拡張キュー領域以外の領域に待避す
    ることを特徴とした請求項2記載のデータ駆動型プロセ
    ッサ。
JP4509791A 1991-03-11 1991-03-11 データ駆動型プロセッサ Pending JPH04281583A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4509791A JPH04281583A (ja) 1991-03-11 1991-03-11 データ駆動型プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4509791A JPH04281583A (ja) 1991-03-11 1991-03-11 データ駆動型プロセッサ

Publications (1)

Publication Number Publication Date
JPH04281583A true JPH04281583A (ja) 1992-10-07

Family

ID=12709801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4509791A Pending JPH04281583A (ja) 1991-03-11 1991-03-11 データ駆動型プロセッサ

Country Status (1)

Country Link
JP (1) JPH04281583A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218112A (ja) * 2009-03-16 2010-09-30 Nec System Technologies Ltd キュー管理システム及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218112A (ja) * 2009-03-16 2010-09-30 Nec System Technologies Ltd キュー管理システム及び方法

Similar Documents

Publication Publication Date Title
US5784630A (en) Method and apparatus for processing data in multiple modes in accordance with parallelism of program by using cache memory
JP2770603B2 (ja) 並列計算機
US4365292A (en) Array processor architecture connection network
US7805638B2 (en) Multi-frequency debug network for a multiprocessor array
EP0539595A1 (en) Data processor and data processing method
JPH03219345A (ja) 多ポートキャッシュメモリ制御装置
JPH05233281A (ja) 電子計算機
US7577874B2 (en) Interactive debug system for multiprocessor array
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
KR100288170B1 (ko) 레지스터 화일군을 공유하는 연산 유닛을 갖춘 데이타 처리기
JPH04281583A (ja) データ駆動型プロセッサ
KR20230034386A (ko) 레지스터 데이터 소거
JPH06309285A (ja) 並列計算機における通信処理回路
JP2717850B2 (ja) 高速通信機構を持った並列計算機
JP2657090B2 (ja) 計算機のデータ通信システム
JP2006515446A (ja) 関連アプリケーションを相互参照するカルテシアンコントローラを有するデータ処理システム
JPH02211534A (ja) 並列処理装置
JPH04281549A (ja) 並列処理用マイクロプロセッサ
JP2643116B2 (ja) 主記憶制御装置
JP2755769B2 (ja) データ駆動型データ処理装置
JPH0926945A (ja) 情報処理装置
JPH04281582A (ja) 並列処理用マイクロプロセッサ
JP2001188764A (ja) マルチプロセッサシステム
JPH0346053A (ja) 複プロセッサ間制御方式
JPH0521262B2 (ja)