JPS6347841A - デ−タフロ−計算機 - Google Patents

デ−タフロ−計算機

Info

Publication number
JPS6347841A
JPS6347841A JP19050686A JP19050686A JPS6347841A JP S6347841 A JPS6347841 A JP S6347841A JP 19050686 A JP19050686 A JP 19050686A JP 19050686 A JP19050686 A JP 19050686A JP S6347841 A JPS6347841 A JP S6347841A
Authority
JP
Japan
Prior art keywords
data flow
flow graph
processing
exception
token
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
JP19050686A
Other languages
English (en)
Inventor
Teruo Tanaka
輝雄 田中
Yasuhiro Inagami
稲上 泰弘
Shigeo Nagashima
長島 重夫
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 JP19050686A priority Critical patent/JPS6347841A/ja
Publication of JPS6347841A publication Critical patent/JPS6347841A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データフロー計算機に係り、特にデータフロ
ーアーキテクチャと整合性の悪かった演算例外などの割
り込み処理を可能とするデータフロー計算機に関する。
〔従来の技術〕
データ駆動に基づくデータフロー計算機は、現在主流と
なっているノイマン型計算機の限界をこえるアーキテク
チャとなる可能性を持っているため、現在研究がさかん
に行われている。
たとえば、岩披講座情報料学15「計算機アーキテクチ
ャ」pρ、177−191にデータフロー計算機の主要
技術がまとめられている。
データフロー計算機は、その動作・処理手段がデータフ
ローグラフに完全に表現されている。
このデータフローグラフは、データブロー計算機で処理
が進行する前に、データフロー計算機上に表現しておか
なくてはならない。もし、その処理が分岐処理である時
も、データフローグラフ上では分岐先の両方の処理を完
全にグラフ上に接続しておく必要があった。
よって、たとえば演算処理の時におこるオーバーフロー
、アンダーフローなどのあまり頻繁に起こる可能性の少
ない例外処理のためにもすべての例外処理の手続きを、
すべてのおこる可能性のある演算処理のあとに接続し、
データフローグラフを構成しなければならなく、このた
め、データフローグラフが本質的でない部分のために非
常に大きくなってしまった。
また、この例外処理のプログラム(データフローグラフ
)を書きかえる時も、プログラム全体を再構成する必要
があった。
〔発明が解決しようとする問題点〕
上記に示した従来のデータフロー計算機の技術では、ノ
イマン型の計算機では評準的な1割込み′に対応する概
念がなく、通常の処理も例外処理もすべて同様に一つの
データフローグラフとして扱わなくてはならない。
さらに、例外処理などはふつういくらかのきまった定型
となるが、データフローマシンはデータフローグラフと
して起こる可能性のあるすべての場所に、これらの例外
処理をすべて展開しなくてはならないため、データフロ
ーグラフがふくれあがるという問題がある。
本発明の目的は、データフロー計算機において。
データブローグラフが例外処理等によってふくれあがる
のを防止することにある。
〔問題点を解決するための手段〕
上記目的は、データフローグラフを、主データフローグ
ラフと、例外処理を扱う例外処理データフローグラフか
ら構成し、演算処理において、この演算結果に例外が起
こったことを判別する手段と、あらかじめ1例外処理デ
ータフローグラフに処理を移すための情報を保持する第
1の保持手段と、演算例外が起こった場合、主データフ
ローグラフの処理を止めて、前記保持手段から、例外処
理データフローグラフに処理を移すための情報を取り出
し、処理を例外処理データフローグラフ上に移す手段を
設けることにより実現できる。
また1例外処理終了後、もう一度処理を主データフロー
グラフにもどすためには、上記手段に演算例外が起こっ
た場合に、主データフローグラフの処理を一時中断し、
グラフ上の次の処理を行うための情報を一時保持する第
2の保持手段を加え、例外処理データフローグラフ上の
処理が終了した場合、前記第2の保持手段より、もとの
主データフローグラフ上の次の処理に進むための情報を
取り出し、主データフローグラフ上の処理を再開する手
段を設けることにより実現できる。
〔作用〕
上記の手段を用いることにより、例外処理等が例外処理
データフローグラフとしてモジュール化することができ
、実行時に主データフローグラフ上の処理の結果により
、グラフを接続することができる。それによって、主デ
ータフローグラフがあまり頻繁に起こることのない例外
処理等のデータフローグラフでふくれあがることはない
。また、例外処理等を変更したい場合も、例外処理デー
タフローグラフのみを変更あるいは追加すればよく。
主データフローグラフに影響をあたえなくてもすむ。
(実施例〕 以下、本発明の一実施例を図面を用いて説明する。
第1@はデータフローマシンの全体構成の一例を示す図
である0図中、1は演算部、2はトークン持ち合わせ部
で、この間を、f153.Q55゜Q50およびQ52
上を、4ないし5の(命令アドレスやデータを持つ)ト
ークンを送ることにより情報の交換を行う。3−1ない
し3−2はスイツチで、3−1には、151を介して、
初期データ、プログラムおよびその他の外部から制御情
報が送られてくる。3−2からは、結果の出力やデータ
フローマシンの状態情報がΩ54を介して外部に報告さ
れる。
次にトークン4ないし5の構成の一例を第2図を用いて
示す。
1つはトークン5で、このトークンは、トークン持ち合
わせ部2から演算部1へ送られる時のトークン形式の一
例である。トークン5は、6つのフィールドから構成さ
れている。第1のフィールド5−1は演算命令を示すフ
ィールドで、第2のフィールド5−2のデータAおよび
第3のフィールド5−3のデータBを用いて行う演算の
種類を示す、もちろん命令によっては、データAおよび
データBの両方を用いる、あるいは片方を用いる。
あるいは両方とも用いない場合もありうる。第4のフィ
ールド5−4および第5のフィールド5−5は、このト
ークンが演算部1で演算処理された結果をトークン持ち
合わせ部2のどのアドレスに渡すかを示している。第6
のフィールドはタグを示し、トークン持ち合わせ部2で
同じアドレス(の命令)を複数回用いる場合、持ち合わ
せデータの区別をするために用いる。このトークン形式
はデータフローグラフ上では第3図で示すようなノード
で表現される。
もう1つのトークン形式はトークン4で、このトークン
は、演算部1からトークン持ち合わせ部2へ送られる時
のトークン形式の一例である。トークン4は3つのフィ
ールドから構成されている。
第1のフィールド4−1は演算部1で演算された結果の
データを保持する。第2のフィールド4−2は行き先の
トークン持ち合わせ部2のアドレスを示す、第3のフィ
ールド4−3はタグを示す。
第1図にもどり、説明を続ける。
次にトークン持ち合わせ部2の動作の概略を示す、6は
持ち合わせ中のトークンを示す。
Ω50.スイッチ3−1,052を通ってトークン持ち
合わせ部2に到着したトークン4は、フィールド4−2
で示されたアドレスに、フィールド4−1のデータおよ
びフィールド4−3のタグを送る。目的のアドレス上で
は、もし、もう1つのデータがすでに到着していれば、
トークン5の形成のトークンを形成し、α53に送られ
る。もし、もう1つのデータがまだ到着していなければ
目的のアドレスにおいて、もう1つのデータが到着する
ことを持つ。
本実施例では、持ち合わせの最大データ数は2としたが
、それ以上大きくすることも可能である。
また1次命令アドレスも最大2ケ所としたが、それ以上
増やすことも可能である。
次に演算部1の動作の概略を示す、演算部1中10は命
令解読部、20は演算装置、30はトークン先変更部、
40はセレクタを示す。
本実施例で扱うデータフローグラフは第4図に示すよう
に、主データフローグラフと1例外処理データフローグ
ラフからなっている。よって、演算部1内の処理は、(
1)主データフローグラフ内あるいは例外処理データフ
ローグラフ内の処理、(2)演算部内の演算処理の結果
によって、主データフローグラフから例外処理データフ
ローグラフに処理が移行する場合の処理、  (3) 
Returr命令によって、例外処理データフローグラ
フから、主データフローグラフに処理が移行する場合の
処理に分けることができる。
なお、本実施例では1例外処理データフローグラフとし
て、演算例外のオーバフロー、アンダーフロー、#算例
外等を扱ったが9例外処理データフローグラフを用いる
という考え方はそれだけに限るものではない。
まず、(1)の処理の場合、演算部1にトークン5が到
着すると、トークン5の中の演算命令5−1が命令解読
部10に送られ、命令が解読される。また、データA3
−2およびデータB5−3は、演算部[20に送られ、
命令解読部10で解読された演算指令をもとに、演算装
置20で所定の演算処理を行い、結果データとなる。結
果データ、次命令アドレス5−4およびタグ5−6でト
ークンを形成し、950に送り出す、また、結果データ
、次命令アドレス5−5およびタグ5−6でもトークン
を形成し、Q50に送り出す。Q50に送り出されるト
ークンの数は、一般に次命令アドレスの数である。この
処理は従来のデータフローマシンの動作である。
次に(2)の処理の場合を示す。
トークン5が演算部1に送られ、データA3−2および
データB5−3が演算部!20で演算されるまでは(1
)の処理と同じである。今、仮りに、演算装置20で行
う演算が除算で、データB5−3として送られてきた除
数が0であるとしよう、この場合、除算例外が起こる0
本実施例ではあらかじめ、除算例外が起ったときの例外
処理データフローグラフが用意されている。また、この
例外処理データフローグラフの入口の命令アドレスがト
ークン先変更部30に保持されている。
演算装置20で演算された結果わかった除算例外はトー
クン先変更部に報告される。トークン先変更部30は、
トークン5の中の次命令アドレス5−4、次命令アドレ
ス5−5およびタグ5−6を取り込み、保持する。また
、トークン先変更部30は除算例外サブデータフローグ
ラフの入口の命令アドレスおよび先程取り込んだ本来進
むべきはずであった命令アドレス、タグを取り込んだ場
所を示すアドレスをもとに、トークンを生成し、125
0に送り出す。
最後に(3)の処理について示す。
Ω55を通して演算部1に到着したトークン5の演算命
令5−1がReturrであれば、命令解読部1oはト
ークン先変更部30に指示を送り、先程取り込んでおい
た(本来の)命令アドレス、タグをもとにトークンを生
成し、Q50に送り出す。
次に第5図を用いて、(2)の処理および(3)の処理
についての詳細を示す。
第5図は、演負部の詳細を示した図である。
図中、5は入カドークン、10は命令解読部、20は演
算装置、11はプレイレジスタ、12はトークン情報一
時保持テーブル、15は例外処理データフローグラフ入
ロアドレステーブル、1Gはトークン先変更制御部およ
び4は出カドークンを示す。
先程来した3つの処理のうち1本実施例で新しく設けた
(2)の処理、(3)の処理について詳細を示す。
まず、(2)の処理について示す。
演算部1に到着したトークン5のうち、演算命令5−1
はQ61を通して、命令解読部10に、データA3−2
およびデータB5−3はf162およびQ63を介して
演算部e20に、次命令アドレス1 5−4.次命令ア
ドレス25−5およびタグ 5−6はQ64ないしQ6
6を介してデイレイレジスタ11に送られ、演算結果が
演算装置20から出てくるのを持つ。
いま、演算命令5−1が除算で、除算であるデータBが
Oとする(除算命令は、(データA)÷(データB)と
仮定する)、この場合、演算装置20において、除算例
外が検出される。除算例外が検出されると、演算処理装
置20はl170を通して、トークン先アドレス変更制
御部16に報告する。トークン先アドレス変更制御部1
6はプログラム可能なマイクロコンピュータで制御され
ており、トークン先アドレス変更制御を行う。
まず、トークン先アドレス変更制御部16は。
Q86を通して、テーブル12に現在実行中のトークン
の情報(デイレイレジスタ11の内容)を取り込むこと
を持示する。そのために、有効ビット12−5を調ベテ
ーブル12中のあき領域をさがす、あき領域が見つかっ
た場合は、その領域にデイレイレジスタ11の内容を取
り込み、対応する有効ビット12−5を有効にする。ま
た、そのあき領域の場所を示すアドレス情報12−1を
Ω81、セレクタ40−3を介して、出カドークンレジ
スタ第3フィールド13−3に送る。以下、例外処理デ
ータフローグラフ中では、この値がタグとなる。
さらに、トークン先アドレス変更制御部16は、Q85
を介して、例外処理データフローグラフ入ロアドレス保
持テーブル15に制御を送り、除算例外(例外処理デー
タフローグラフ)アドレス15−3の内容をQ87、セ
レクタ40−2を介して、出カド−クンレジスタ第2フ
ィールド13−2に送る。よって出カドークン13は除
算例外データフローグラフの入カドークンとなる。なお
本実施例では、サブデータフローグラフ入ロアドレス保
持テーブル15の中に、オーバーフロー処理、アンダー
フロー処理、除算例外処理等を示したが、他の処理を登
録しておいてもよい。
また、この時の演算命令5−1をΩ67、セレクタ40
−1を介して、出カドークンレジスタ第1フィールド1
3−1に送る。除算例外データフローグラフにおいて、
たとえば、外部に対して、除算例外を起ったことを報告
したい時などに、このフィールド情報を送ることが考え
られる。
このようにして完成した出カドークンレジスタ13内の
出カドークンはQ88.セレクタ26を介してα50に
送り出される。
この場合、出カドークンは1つなので、出カドークンレ
ジスタ13の情報を送るだけで、出カドークンレジスタ
14は用いない。
次に(3)の処理について示す。
演算部1に到着したトークン5のうち、演算命令5−1
はQ61を通して、命令解読10に、データA3−2お
よびデータB5−3はI262およびQ63を介して演
算装置20に、次命令アドレス1 5−4.次命令アド
レス25−5およびタグ5−6はj264ないし、06
6を介してデイレイレジスタ11に送られ、演算結果が
演算装置20から出てくるのを持つ。
いま、演算命令5−1が(サブルーチン除算例外処理の
) Raturr命令であるとする。命令解読部1oで
、命令がR8turr命令であることがわかると。
デイレイレジスタの第3フィールド11−3の情報(タ
グ)を用いて、主データフローグラフのもどるべき次命
令アドレス情報、タグ情報を検策する。ここで、11−
3に保持されているタグ情報が、例外処理データフロー
グラフの中では、テーブル12中のもどり先の主データ
フローグラフのアドレスを示していたことに注意する。
テーブル12上の求める次命令アドレス情報、タグ情報
などが見つかると、それらを、Q82゜セレクタ22を
介して、出カドークンレジスタ13の第2フイールドへ
、またQ83.セレクタ24を介して、出カドークンレ
ジスタ14の第2フイールドへ、さらに、J284.セ
レクタ23または、セレクタ25を介して、出カドーク
ンレジスタ13および14の第3フィールド13−3お
よび13−4に送る。
このようにして、データフローグラフ上のデータの流れ
を、データに依存して、主データフローグラフ上から、
例外処理データフローグラフ上に、また1例外処理デー
タフローグラフ上から主データフローグラフ上にもどす
ことが可能となる。
〔発明の効果〕
本発明によれば、′a算例外等の例外処理を例外処理デ
ータフローグラフとして、主データフローグラフと分け
ておくことができるので、主データフローグラフがあま
り頻繁に起こることのない例外処理等のデータフローグ
ラフでふくれあがることがない。
また、例外処理等を変更したい場合も、例外処理データ
フローグラフのみを変更すればよいので、主データフロ
ーグラフに影響をあたえなくてもすむ効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例のデータフローマシンの全体
構成図、第2図はトークンのフォーマットの一例を示す
図、第3図はデータフローグラフの一部のトークンノー
ドの説明図、第4図は主データフローグラフと例外処理
データフローグラフから成るデータフローグラフの一例
を示す図、第5図は演算部の一構成例を示す図。 1・・・演算部、2・・・トークン持ち合わせ部、4,
5・・・トークン、10・・・命令解読部、20・・・
演算装置。

Claims (1)

  1. 【特許請求の範囲】 1、主データフローグラフと例外処理を扱う1つまたは
    複数の例外処理データフローグラフから構成されたデー
    タフローグラフ上の処理において、演算ノードの結果に
    例外が起こつたことを判別する手段と、 あらかじめ、例外処理データフローグラフに処理を移す
    ための情報を保持する第1の保持手段と、 例外が起こつた場合、主データフローグラフの処理を止
    めて、前記第1の保持手段から、例外処理データフロー
    グラフに処理を移すための情報を取り出し処理を例外処
    理データフローグラフ上に移す手段を有することを特徴
    とするデータフロー計算機。 2、第1項記載のデータフロー計算機において、例外が
    起こつた場合、データフローグラフ上の処理を一時中断
    し、データフローグラフ上の次の処理に進むための情報
    を一時保持する第2の保持手段と、 例外処理データフローグラフ上の処理が終了すると、前
    記第2の保持手段から、もとのデータフローグラフ上の
    次の処理に進むための情報を取り出し、もとのデータフ
    ローグラフ上の処理を再開する手段を有することを特徴
    とするデータフロー計算機。
JP19050686A 1986-08-15 1986-08-15 デ−タフロ−計算機 Pending JPS6347841A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19050686A JPS6347841A (ja) 1986-08-15 1986-08-15 デ−タフロ−計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19050686A JPS6347841A (ja) 1986-08-15 1986-08-15 デ−タフロ−計算機

Publications (1)

Publication Number Publication Date
JPS6347841A true JPS6347841A (ja) 1988-02-29

Family

ID=16259224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19050686A Pending JPS6347841A (ja) 1986-08-15 1986-08-15 デ−タフロ−計算機

Country Status (1)

Country Link
JP (1) JPS6347841A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01154232A (ja) * 1987-12-10 1989-06-16 Nec Corp データフロー型計算機
JP2010534891A (ja) * 2007-07-26 2010-11-11 アビニシオ テクノロジー エルエルシー エラーハンドリングをもつトランザクションのグラフ型計算

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01154232A (ja) * 1987-12-10 1989-06-16 Nec Corp データフロー型計算機
JP2010534891A (ja) * 2007-07-26 2010-11-11 アビニシオ テクノロジー エルエルシー エラーハンドリングをもつトランザクションのグラフ型計算
JP2014130647A (ja) * 2007-07-26 2014-07-10 Ab Initio Technology Llc エラーハンドリングをもつトランザクションのグラフ型計算

Similar Documents

Publication Publication Date Title
US6292888B1 (en) Register transfer unit for electronic processor
US4274138A (en) Stored program control system with switching between instruction word systems
JP2005317023A (ja) データ処理装置のブレークポイント論理ユニット、デバッグ論理、およびブレークポイントの方法
KR19990044957A (ko) 데이터 처리기에서의 후속 명령 처리에 영향을 미치는 방법 및장치
JPH0769812B2 (ja) データ処理装置
KR950009454A (ko) 다중 실행 장치 처리 시스템 상태의 선택적 저장방법 및 시스템
JPS6347841A (ja) デ−タフロ−計算機
JPS63253433A (ja) 演算処理装置
JPS6236575B2 (ja)
JPH0377137A (ja) 情報処理装置
JPH08249018A (ja) マルチプロセッサ演算装置、および該装置を有するプログラマブルコントローラ
JPS63111535A (ja) デ−タ処理装置
JPS59218569A (ja) マイクロ・コンピユ−タ
JPS6242301B2 (ja)
JPH0764822A (ja) マイクロコンピュータ
JPH0248733A (ja) 情報処理装置
JP3239042B2 (ja) マイクロコンピュータ
JPS6057440A (ja) 情報処理装置
JPS58166454A (ja) デ−タ処理装置
JPH08263304A (ja) 演算処理装置
JPH03142532A (ja) 計算機システムの入出力実行装置
JPH0659916A (ja) 命令プリフェッチ装置
JPH02181859A (ja) コプロセッサ・インタフェース回路
JPH08221271A (ja) パイプラインプロセッサ
JPS6329839A (ja) デ−タ処理装置