JPH0981540A - データ駆動型情報処理装置 - Google Patents

データ駆動型情報処理装置

Info

Publication number
JPH0981540A
JPH0981540A JP7241497A JP24149795A JPH0981540A JP H0981540 A JPH0981540 A JP H0981540A JP 7241497 A JP7241497 A JP 7241497A JP 24149795 A JP24149795 A JP 24149795A JP H0981540 A JPH0981540 A JP H0981540A
Authority
JP
Japan
Prior art keywords
data
output
data packet
processor
processing unit
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.)
Granted
Application number
JP7241497A
Other languages
English (en)
Other versions
JP3618419B2 (ja
Inventor
Shinichi Yoshida
眞一 芳田
Goji Muramatsu
剛司 村松
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP24149795A priority Critical patent/JP3618419B2/ja
Priority to US08/718,258 priority patent/US5913055A/en
Publication of JPH0981540A publication Critical patent/JPH0981540A/ja
Application granted granted Critical
Publication of JP3618419B2 publication Critical patent/JP3618419B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/36—Prevention of errors by analysis, debugging or testing of software
    • G06F11/362—Debugging of software
    • G06F11/3648—Debugging of software using additional hardware
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44—Arrangements for executing specific programs
    • G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494—Execution paradigms, e.g. implementations of programming paradigms data driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 データフローグラフを容易にデバッグできる
データ駆動型情報処理装置を提供する。 【解決手段】 データ駆動型情報処理1は、データパケ
ットを処理するための本体処理部13と、本体処理部1
3が出力したデータパケットを、引続き本体処理部13
で処理すべきか、または外部に出力すべきかを判定する
際に利用される情報を格納するレジスタ16と、本体処
理部13の出力を本体処理部13と出力処理部15のど
ちらに与えるかをレジスタ16の内容とデータパケット
の内容とに従って判定し、分岐させるための分岐部24
とを含む。分岐部24は、分流指定端子20が分流を指
定する値に設定されているときに、データパケットを引
続き本体処理部13により処理すべきと判定したときに
は、当該データパケットの複製を作成し出力処理部15
に与える複製機能を有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データフローグラ
フを実行するデータ駆動型情報処理装置に関し、特に、
実行すべきデータフローグラフのデバッグを容易に行な
うことができるデータ駆動型情報処理装置に関する。
【0002】
【従来の技術】データ駆動型プロセッサでは、「ある処
理に必要なデータがすべて揃い、かつ、その処理に必要
な演算処理のための資源が割当てられたときに処理を行
なう」という単純な規則に従って処理が並列に進行す
る。データは、その宛先情報とともにデータパケットに
より伝送される。
【0003】図11に、従来の映像信号処理向きデータ
駆動型情報処理システムのブロック構成図を示す。図1
1を参照して、この従来のシステムは、データ駆動型プ
ロセッサ61と、画像メモリ部11とを含む。画像メモ
リ部11は、メモリインタフェース2と画像メモリ3と
を含む。
【0004】データ駆動型プロセッサ61は、入力ポー
トIA、IBおよびIVと、出力ポートOA、OBおよ
びOVとを含む。入力ポートIAおよびIBには、伝送
路7および8がそれぞれ接続され、処理されるべき映像
信号を含むデータパケットが与えられる。入力ポートI
Vには伝送路5が接続され、画像メモリ部11において
行なわれる画像メモリ3に対するアクセス結果を含むデ
ータパケットが与えられる。出力ポートOAおよびOB
には伝送路9および10がそれぞれ接続され、当該シス
テムにおいて行なわれた処理結果データを含むデータパ
ケットが出力される。出力ポートOVには伝送路4が接
続され、画像メモリ部11をアクセスするためのデータ
を含むデータパケットがメモリインタフェース2に対し
て送出される。
【0005】メモリインタフェース2および画像メモリ
3はメモリアクセス制御線6を介して相互に接続されて
いる。このメモリアクセス制御線6上を伝送されるデー
タもデータパケットである。
【0006】図12に、図11に示されるシステム内の
データ伝送路7〜10を介して伝送されるデータパケッ
トのフィールド構成の例を示す。プロセッサ61に対し
て入出力されるデータパケット120は、プロセッサ内
での処理の内容を示す命令コード122と、当該データ
パケットを処理すべきデータ駆動型プロセッサをシステ
ム内で一意に指定するためのプロセッサ番号124と、
当該データパケットを処理すべきプロセッサ上で実行さ
れるべき命令を一意に指定するためのノード番号126
と、データ伝送路7または8からプロセッサ61に対し
て入力される時点において、入力時系列の順序に従って
つけられている識別子である世代番号128と、データ
130とを含む。世代番号128は、プロセッサ61に
おいてはデータの待合せの際に利用され、メモリインタ
フェース2に対しては、画像メモリ3に対するアドレス
としての意味を持つ。
【0007】なお図12に示されるように、この例では
命令コード122と、プロセッサ番号124と、ノード
番号126と、世代番号128と、データ130とはそ
れぞれ8ビット、9ビット、6ビット、24ビット、1
2ビットというビット長を有するが、これら各フィール
ドのビット長と、またデータパケット全体のパケット長
とは、これ以外の値もとり得る。
【0008】データ処理時には図11に示すシステムは
次のように動作する。入力ポートIAまたはIBを介し
て、世代番号を持つ信号入力パケットが時系列的にプロ
セッサ61に与えられる。プロセッサ61は、予め映像
処理のためのデータフロープログラムを記憶している。
プロセッサ61は、与えられるデータをこのプログラム
に基づいて処理し、処理結果を出力ポートOAまたはO
Bのいずれか一方のポートを介して送出する。
【0009】画像メモリ3に対するアクセス(画像メモ
リ3に記憶されたデータの参照/更新など)が必要とな
った場合には、プロセッサ61の出力ポートOVを介し
て、画像メモリ部11に、画像メモリ3に対するアクセ
ス要求を格納したデータパケットが送出される。メモリ
インタフェース2は、このアクセス要求を受取るとメモ
リアクセス制御線6を介して画像メモリ3に対してアク
セスを行ない、その結果データを格納したデータパケッ
トを伝送路5を介してプロセッサ60の入力ポートIV
に与える。プロセッサ60は、入力ポートIVを介して
与えられたデータパケットを受取り、前述のデータフロ
ープログラムに基づいて処理を続行する。
【0010】図13に、従来の映像処理向きデータ駆動
型システムで使用されるデータ駆動型プロセッサ61の
ブロック構成図を示す。図13を参照して、従来のデー
タ駆動型プロセッサ61は、その入力端に入力ポートI
AおよびIBが接続される入力処理部17と、合流部1
2と、データフロープログラムを記憶し、それに基づい
て処理を実行する本体処理部13と、分岐部14と、そ
の出力端に出力ポートOAおよびOBが接続される出力
処理部15と、ネットワークを組むシステム内で当該プ
ロセッサ61を一意に識別するための識別番号PE#を
記憶するためのPE#レジスタ16と、データパケット
を出力ポートOAおよびOBのいずれに送出するかを決
定するための分岐条件が格納された分岐制御パラメータ
レジスタ群18とを含む。
【0011】入力処理部17は、入力ポートIAまたは
IBを介して入力されるデータパケットを受け、当該入
力パケット中のプロセッサ番号とPE#レジスタ16の
内容とを比較して、比較結果に従ってデータパケットを
合流部12または出力処理部15に選択的に与えるため
のものである。より具体的には、入力処理部17は、入
力データパケット中のプロセッサ番号とPE#レジスタ
16の内容とが一致した場合にはこのデータパケットを
自プロセッサ宛のパケットと判断し、合流部12に与え
る。そうでない場合には入力処理部17は、当該パケッ
トを他のプロセッサ宛のパケットであると判断し、当該
入力パケットを出力処理部15に与える。
【0012】合流部12は、入力処理部17から与えら
れるデータパケットと、後述する分岐部14から与えら
れるデータパケットとを合流させ、本体処理部13に与
えるためのものである。本体処理部13は、合流部12
から与えられるデータパケットを、所定のデータフロー
プログラムに従って処理するためのものである。この際
仮に画像メモリ3(図11参照)に対するアクセスが必
要な場合には、本体処理部13は出力ポートOVを介し
て画像メモリ部11に処理パケットを送出する。画像メ
モリ部11において処理された結果のデータパケット
は、入力ポートIVを介してデータ駆動型プロセッサ6
1に受取られる。
【0013】分岐部14は、本体処理部13から出力さ
れるデータパケットを受け、当該データパケット内のプ
ロセッサ番号と、PE#レジスタ16の内容とが一致す
るか否かに従って、当該データパケットを出力処理部1
5または合流部12に選択的に与えるためのものであ
る。より具体的には、分岐部14は、入力されたデータ
パケットのプロセッサ番号とPE#レジスタ16の内容
とが一致すれば、当該データパケットを合流部12に与
える。さもなければ分岐部14は当該入力データパケッ
トを出力処理部15に与える。
【0014】出力処理部15は、分岐部14または入力
処理部17から与えられるデータパケットを受け、当該
入力データパケット中のプロセッサ番号または世代番号
を参照して、予め分岐制御パラメータレジスタ群18に
設定された分岐条件に従って、出力ポートOAまたはO
Bのいずれか一方に選択的にデータパケットを出力する
ためのものである。
【0015】上述の図13に示すような構成を有するデ
ータ駆動型プロセッサはたとえば、特開平6−1622
28号公報に開示されている。同公報に開示されたデー
タ駆動型プロセッサ装置では、IDパラメータレジスタ
(PE)と、分岐比較データパラメータレジスタ(R
D)と、分岐比較マスクパラメータレジスタ(RM)の
3種のレジスタが分岐制御パラメータレジスタ群18と
して用意されている。このうち、IDパラメータレジス
タ(PE)は、図13に示すPE#レジスタ16と等価
であると考えられるので、図13に示される装置は特開
平6−162228号公報に示されているデータフロー
プロセッサ装置と同等であり、分岐制御パラメータレジ
スタ群18としては、分岐比較データパラメータレジス
タと分岐比較マスクパラメータレジスタとの2種類のレ
ジスタがあれば十分であると考えられる。特開平6−1
62228号公報に従えば、分岐条件は次の式で表わさ
れる。
【0016】 (RM.and.pe#).exor.(RM.and.RD)…(1) なお式(1)において、RMおよびRDはそれぞれ、分
岐比較マスクパラメータレジスタRMおよび分岐比較デ
ータパラメータレジスタRDに格納されている値であ
る。また、pe#は、出力処理部15に対する当該入力
パケット中のプロセッサ番号である。演算子andおよ
びexorはそれぞれ、ビットごとの論理積およびビッ
トごとの排他的論理和を表わす。
【0017】exor演算に対する非演算子(RM.a
nd.pe#)と(RM.and.RD)とが一致する
と、式(1)の値は0となる。この場合出力処理部15
は、入力されたデータパケットを出力ポートOAを介し
て伝送路9上に出力する。exor演算に対する被演算
子(RM.and.pe#)と(RM.and.RD)
とが不一致の場合、式(1)の結果は0とはならない。
この場合には出力処理部15は、入力されたデータパケ
ットを出力ポートOBを介して伝送路10上に出力す
る。
【0018】図14に、従来のデータ駆動型プロセッサ
61の分岐部14の機能的な構成を示す。図14を参照
して、分岐部14は、本体処理部13から与えられるデ
ータパケット中のプロセッサ番号と、PE#レジスタ1
6の内容とを比較し、その判定結果を出力するための分
岐先判定部142と、分岐先判定部142の出力によっ
て制御され、本体処理部13から与えられるデータパケ
ットを一方端子aを介して合流部12に、または他方端
子bを介して出力処理部15に選択的に出力するための
セレクタ141とを含む。
【0019】たとえば分岐先判定部142は、データパ
ケット中のプロセッサ番号とPE#レジスタ16の内容
とが一致した場合には「1」を、不一致のときには
「0」をセレクタ141に与える。セレクタ141は、
分岐先判定部142の出力が「1」のときにはデータパ
ケットを合流部12に与え、「0」のときには出力処理
部15に与える。
【0020】図15に、従来の分岐部14のより具体的
な構成を、合流部12および出力処理部15の関連部分
とともに示す。図15を参照して、分岐部14は、デー
タパケットが伝搬するパイプラインを構成するデータ伝
送路72、74、76およびデータラッチ回路54、5
6を含む。データ伝送路72の入力側は本体処理部13
内のデータラッチ回路(図示せず)に接続されている。
データ伝送路76は分岐し、合流部12のデータラッチ
回路60の入力と、出力処理部15内のデータラッチ回
路58の入力とに接続されている。
【0021】分岐部14はさらに、これらデータラッチ
回路54、56によるデータのラッチのタイミングを制
御するための転送制御素子44および46を含む。同様
に合流部12は転送制御素子50を、出力処理部15は
転送制御素子48をそれぞれ含む。転送制御素子44、
46、48および50はそれぞれ、データラッチ回路5
4、56、58および60によるデータのラッチのタイ
ミングを制御するためのクロックパルスを生成し、それ
ぞれ対応のデータラッチ回路に与えるためのものであ
る。各転送制御素子44、46、48、50は、データ
保持信号CIの入力と、データ保持信号CO*(本願明
細書では以下、図において信号名上に付されたオーバー
バーを「*」で表わすものとする。)の出力と、後段か
らの空き信号RIの入力と、前段への空き信号RO*の
出力とを有している。転送制御素子44、46、48、
50はそれぞれ、データ保持信号CO*、CI、空き信
号RO*、RIを前段および後段の転送制御素子と交信
することにより、データラッチ上のデータの伝搬を制御
する。
【0022】分岐部14はさらに、本体処理部13から
データラッチ回路54を介して与えられるデータパケッ
ト内のプロセッサ番号と、PE#レジスタ16の内容と
を比較し、一致した場合は「1」を、不一致の場合には
「0」となる信号をデータラッチ回路56の入力に与え
る一致判定回路42と、転送制御素子46のCO*出力
に入力が接続されたインバータ90と、インバータ90
の出力に一方入力が、データラッチ回路56を介して一
致判定回路42の出力に他方入力が接続されたNAND
回路82と、データラッチ回路56を介して一致判定回
路42の出力に入力が接続されたインバータ92と、イ
ンバータ90および92にそれぞれ接続された2つの入
力を有するNAND回路86と、転送制御素子50およ
び48の出力OR*にそれぞれ接続された2つの入力を
有するAND回路88とを含む。NAND回路82の出
力は転送制御素子50の入力CIに接続される。NAN
D回路86の出力は転送制御素子48の入力CIに接続
される。
【0023】図15に示す分岐部14の動作について簡
単に説明する。まず、本体処理部13からのデータパケ
ット内のプロセッサ番号とPE#レジスタ16の内容と
が一致する場合を考える。一致判定回路42の出力はハ
イレベルとなる。また、転送制御素子44、46、50
および48から出力されている信号CO*およびRO*
がいずれもハイレベルであるものとする。この場合転送
制御素子46への空き信号RIはハイレベルとなってい
る。このように後段からの空き信号RIがハイレベルと
なっている場合、後段では前段からのデータを受けるこ
とが可能であることを示す。逆に後段からの空き信号R
Iがローレベルであれば、後段ではデータを受信する準
備ができていないことを示す。
【0024】転送制御素子46への前段からのデータ保
持信号CIがローレベルに立下がると、転送制御素子4
6は前段に与える空き信号RO*をローレベルに立下げ
る。前段の転送制御素子44は、転送制御素子46から
与えられる空き信号RIがローレベルとなったことに応
答して、データ保持信号CO*をハイレベルに立上げ
る。転送制御素子46は、データ保持信号CIがハイレ
ベルに立上がったことに応答して、データラッチ56に
対してクロックパルスCPを立上げるとともに、空き信
号RO*をローレベルに立下げる。データラッチ回路5
6は、クロックパルスの立上りに応答してデータラッチ
回路54および一致判定回路42の出力をラッチする。
【0025】さらに転送制御素子46は、ラッチパルス
CPの立上がりに応答してデータ保持信号CO*をロー
レベルに立下げる。インバータ90の出力はローレベル
からハイレベルに立上がる。前述のように一致判定回路
42の出力はハイレベルであるため、NAND回路82
の出力はハイレベルからローレベルに立下がる。転送制
御素子50は、データ保持信号CIがローレベルとなっ
たことに応答して、空き信号RO*をハイレベルからロ
ーレベルに立下げる。
【0026】一方インバータ92の出力はローレベルで
あるため、NAND回路86の出力は、インバータ90
の出力にかかわらず常にハイレベルである。転送制御素
子48は動作せず、その空き信号RO*はハイレベルの
ままである。
【0027】AND回路88の出力は、転送制御素子5
0の空き信号RO*がローレベルとなったことに応答し
てローレベルとなる。転送制御素子46は、空き信号R
Iがローレベルとなったことに応答してラッチパルスC
Pをローレベルに立下げるとともに、データ保持信号C
O*をローレベルからハイレベルに立上げる。転送制御
素子50はこれに応答してデータラッチ回路60へのク
ロックパルスを立ち上げてデータをラッチさせるととも
に、空き信号RO*を再びハイレベルに立上げ、それに
よって転送制御素子46の空き信号RIもハイレベルに
立上がる。このとき転送制御素子48は動作しない。す
なわち、この場合、分岐部14でデータラッチ回路56
にラッチされたデータは、合流部12のデータラッチ回
路60のみにラッチされ、出力処理部15のデータラッ
チ回路58にはラッチされない。
【0028】一方、一致判定回路42の出力が不一致を
示す値、すなわち「0」である場合には、分岐部14内
の各回路の動作は上述とは逆になり、データラッチ回路
56のデータは出力処理部15のデータラッチ回路58
のみにラッチされ、合流部12のデータラッチ回路60
にはラッチされない。
【0029】したがって一致判定回路42による判定結
果に従って、分岐部14がデータを合流部12と出力処
理部15とに選択的に出力させることとなり、データの
分岐が実現できる。
【0030】図16は、4台の映像処理向きデータ駆動
型プロセッサ61を用いたシステムの構成例である。図
16を参照して、このシステムの4つのプロセッサ61
にはそれぞれ、当該プロセッサを一意に識別するための
識別番号PE#0、PE#1、PE#2およびPE#3
が割当てられる。これら識別記号0〜3は、それぞれの
プロセッサ61のPEレジスタ16に格納される(図1
0参照)。以下、各プロセッサ61に割当てられた識別
番号を用いてプロセッサを特定しながら説明する。
【0031】図16に示すシステムにおいては、どのプ
ロセッサからも他の任意のプロセッサにデータパケット
を与えることができるようにネットワークが形成されて
いる。たとえばプロセッサPE#0からプロセッサPE
#1にデータパケットを与える場合を考える。この場合
まず、プロセッサPE#0の出力ポートOAから、図1
2に示すプロセッサ番号124を目標のプロセッサPE
#1の識別番号に設定したデータパケットを出力する。
当該データパケットは、一旦プロセッサPE#3の入力
ポートIAに与えられる。当該データパケットはその
後、プロセッサPE#3の出力ポートOAから出力さ
れ、目標のプロセッサPE#1の入力ポートIAに与え
られる。
【0032】こうしたネットワークを構成するには、各
プロセッサの分岐制御パラメータレジスタ群のRM、R
Dを、図16に示すように設定すればよい。各プロセッ
サでの出力ポートの選択の判定には、上述の式(1)が
用いられるものとする。
【0033】図16に示される例では、各プロセッサで
の出力ポートの選択は次のように行なわれる。
【0034】プロセッサPE#0では、出力データパケ
ット中のプロセッサ番号124の最下位ビットが1であ
れば出力ポートOAを選択し、それ以外の場合には出力
ポートOBを選択する。プロセッサPE#1では、デー
タパケット中のプロセッサ番号124の最下位ビットが
0であれば出力ポートOAを選択し、他の場合には出力
ポートOBを選択する。プロセッサPE#2およびプロ
セッサPE#3では、データパケット中のプロセッサ番
号124が0〜3であれば出力ポートOAを選択し、そ
れ以外の場合には出力ポートOBを選択する。
【0035】図17に、データ駆動型プロセッサで実行
される一例として簡単なフローグラフを示す。図17に
示すデータフローグラフは、入力データをxとしたと
き、y=(x+2)(x−1)を求めるプログラムであ
る。
【0036】図17を参照して、このデータフローグラ
フは入力ノード102と、入力ノード102から与えら
れるデータを複製して2つに分岐させるコピーノード1
04と、コピーノード104から与えられるデータに
「2」を加算する「+」ノード106と、コピーノード
104から与えられるデータから1を減算する「−」ノ
ード108と、「+」ノード106および「−」ノード
108から与えられるデータを乗算するための「*」ノ
ード110と、ノード110からのデータが与えられる
出力ノード112とを含む。このデータフローグラフに
よれば、出力ノード112にはy=(x+2)(x−
1)が得られるはずである。
【0037】このデータフローグラフを実行するシステ
ムの構成例を図18に示す。図18は、1台の映像処理
向きデータ駆動型プロセッサ60を用いている。このプ
ロセッサ60には、識別番号PE#0が割当てられてい
る。このプロセッサPE#0に、図17に示す簡単なデ
ータフローグラフを割当てた場合の、プロセッサPE#
0の動作について説明する。
【0038】プロセッサPE#0の入力ポートIAに、
入力データ値xを格納したデータパケットが与えられ
る。このデータパケットのプロセッサ番号124(図1
2)は、プロセッサPE#0の識別番号である。また図
12に示す命令コード120はコピーノードに対応する
コピー命令である。
【0039】データパケットは図13を参照して、入力
処理部17に与えられる。入力処理部17は、当該デー
タパケットが自プロセッサを宛先とすると判断し、この
データパケットを合流部12を経て本体処理部13に与
える。本体処理部13では、入力データパケットにより
「コピー」ノードに対応する処理が実行され、結果とし
て入力データパケットとその複製とが出力される。この
2つのデータパケットのノード番号は、それぞれ図17
に示す「+」演算と「−」演算とを表わしている。また
それぞれのデータパケットのプロセッサ番号124(図
12参照)は共にプロセッサPE#0を表わしている。
【0040】複製後の2つのデータパケットは本体処理
部13から出力され、分岐部14に与えられる。分岐部
14は、入力されたデータパケットのいずれについて
も、そのプロセッサ番号124(図12参照)がPE#
レジスタ16の内容と一致しているため、これらデータ
パケットを合流部12に与える。このデータパケットは
再び本体処理部13に与えられ、それぞれ「+」と
「−」の演算が実行される。
【0041】この演算後の2つのデータパケットはとも
にノード番号126(図12参照)に「*」ノードが設
定され、本体処理部13から出力される。プロセッサ番
号124(図12参照)にはプロセッサPE#0を表わ
す値が格納される。「+」と「−」演算の実行の結果生
成された2個のデータパケットはいずれも本体処理部1
3から分岐部14に与えられる。
【0042】分岐部14は、入力された2個のデータパ
ケットともそのプロセッサ番号124が自プロセッサ番
号と一致するため、いずれのデータパケットも合流部1
2に与える。合流部12を経たこれらデータパケットは
再び本体処理部13に与えられ、「*」ノードの左右の
入力としてマッチングされて「*」演算が実行される。
【0043】「*」演算実行後のデータパケットには、
プロセッサ番号としてたとえば「PE#1」が付与され
るように、本体処理部13(図13参照)はプログラミ
ングされているものとする。このデータパケットは、本
体処理部13から分岐部14に与えられる。分岐部14
は、入力されたデータパケットのプロセッサ番号124
が自プロセッサ番号と一致しないため、このデータパケ
ットを出力処理部15に与える。出力処理部15は、前
述のように分岐制御パラメータレジスタ群の設定内容に
従って出力ポートを決定する。図18に示すようにレジ
スタが設定されている場合、データパケット内のプロセ
ッサ番号124に「PE#1」が設定されている場合に
は当該データパケットは出力ポートOAから出力される
ことになる。
【0044】
【発明が解決しようとする課題】上述のように図17に
示されるデータフローグラフを図18に示すデータ駆動
型プロセッサで実行した場合に、出力結果が正しく得ら
れない場合がある。その原因としては、データフローグ
ラフの記述ミスなどが考えられる。このような場合、デ
ータフローグラフのデバッグを行なう必要が生じる。
【0045】従来、データフローグラフをデバッグする
1つの方法として、実行途中の演算結果を出力させるよ
うにデータフローグラフを修正し、そのようにして得ら
れた実行途中の演算結果が期待どおりのものかどうかを
調べる方法がある。図19に、デバッグのために図17
に示すデータフローグラフを修正した例を示す。
【0046】図19を参照して、この例では「+」演算
と「−」演算との結果をいずれもプロセッサPE#0外
に出力させるような修正が行なわれている。 すなわ
ち、図19に示すように、データフローグラフを修正
し、新たに2つのデバッグ用出力ノード114および1
16を設ける。これらデバッグ用出力114および11
6にはそれぞれ、「+」ノード106の出力と、「−」
ノード108の出力とが、「*」ノード110とは別に
出力される。
【0047】こうして、図20に示すように、たとえば
出力ポートOBに出力ノード114および116からの
データパケットが出力されるようにし、このデータパケ
ットの内容を調べることができる。プロセッサ外に出力
されたそれぞれの結果を期待値と比較することにより、
データフローグラフのどの部分に誤りがあるかを調べる
ことができる。
【0048】図17に示した例は非常に簡単なデータフ
ローグラフであるため、デバッグを行なうようにこのデ
ータフローグラフを修正することはそれほど困難ではな
い。しかし、実用的な目的のために使用されるデータフ
ローグラフははるかに複雑であり、どの部分の中間結果
を出力すれば容易にデバッグできるのかがよくわからな
い場合が通常である。デバッグを容易に行なえるような
中間結果を得るために、試行錯誤的にデータフローグラ
フを何度も修正することが多い。このため、従来のシス
テムではデータフローグラフのデバッグの効率が悪く、
システムの構築に長時間を要するという問題が生じてい
た。
【0049】それゆえに、請求項1に記載の発明は、デ
ータフローグラフのデバッグを容易にかつ効率的に行な
うことができるデータ駆動型情報処理装置を提供するこ
とを目的とする。また請求項2または3に記載の発明
は、テスト時にはデータフローグラフのデバッグを容易
かつ効率的に行なえるように動作するとともに、テスト
時以外には通常と同様の動作を行なうような切換が容易
にできるデータ駆動型情報処理装置を提供することを目
的とする。
【0050】
【課題を解決するための手段】請求項1に記載のデータ
駆動型情報処理装置は、データパケットを受ける入力ポ
ートと、データパケットを出力するための出力ポート
と、入力ポートを介して入力されたデータパケットを処
理するための処理手段と、処理手段により出力されたデ
ータパケットを、引続き処理手段で処理すべきか、また
は外部に出力すべきかを判定する際に利用される情報を
格納するための格納手段と、処理手段により出力された
データパケットを処理手段により引続き処理すべきか、
または外部に出力すべきかを、当該データパケットの内
容と、格納手段に格納された情報とに従って判定し、判
定結果に従ってデータパケットを処理手段と出力ポート
とのいずれかに分岐させるための分岐手段とを含み、分
岐手段は、データパケットを処理手段により引続き処理
すべきと判定したときには、当該データパケットの複製
を作成し出力ポートに与える複製機構を有することを特
徴とする。
【0051】請求項2に記載のデータ駆動型情報処理装
置は、請求項1に記載のデータ駆動型情報処理装置であ
って、分岐手段は、外部から与えられる分流指定信号に
従って、複製機構を可能化し、または不能化するための
機構をさらに有することを特徴とする。
【0052】請求項3に記載のデータ駆動型情報処理装
置は、請求項1に記載のデータ駆動型情報処理装置であ
って、分岐手段は、分流指定情報を保持するための記憶
手段と、記憶手段に保持された分流指定情報に従って、
複製機構を可能化し、または不能化するための機構とを
さらに有することを特徴とする。
【0053】いずれの請求項に記載のデータ駆動型情報
処理装置においても、データパケットを引続き処理手段
で処理すべきと判定された場合には、そのデータパケッ
トの複製を複製機構が作成し、出力ポートを介して外部
に出力する。通常であれば内容を知ることができない、
内部のみを巡回するデータパケットの内容をデータフロ
ーグラフを変更することなく確認することができるの
で、データフローグラフのデバッグが容易になる。
【0054】また請求項2または3に記載のように、外
部から分流指定信号を与え、または分流指定情報を保持
する記憶手段を設け、分流指定信号または分流指定情報
に応じて、複製機構を可能化し、または不能化すること
により、テスト時には外部に複製データパケットを出力
し、通常動作時にはそのようなデータパケットを作成し
ないようにすることが容易にできる。
【0055】
【発明の実施の形態】以下、本願発明の実施形態を詳細
に説明する。
【0056】図1に、本願発明のデータ駆動型情報処理
装置の実施形態1に係るデータ駆動型プロセッサ1を含
む映像信号処理向きデータ駆動型情報処理システムのブ
ロック構成図を示す。図1に示すシステムは図11に示
す従来のデータ駆動型プロセッサ61を用いたシステム
とは、データ駆動型プロセッサ61に代えて本願発明に
係るデータ駆動型プロセッサ1を使用している点を除い
て同じである。したがってここでは以下に述べるデータ
駆動型プロセッサ1の詳細な説明を除き、他の部分につ
いては詳細な説明は繰返さない。
【0057】図1に示されるように、データ駆動型プロ
セッサ1に対しては、データ駆動型プロセッサ1をデバ
ッグモードで動作させるか、通常動作モードで動作させ
るかを外部で設定するための分流指定信号を与える分流
指定端子20が設けられている。以下に述べる実施形態
では、分流指定端子20の信号が「0」であれば図11
および図13に示す従来のデータ駆動型プロセッサ60
と全く同一の動作を行なう。分流指定端子20の設定が
「1」であれば、このデータ駆動型プロセッサ1は、従
来はデータ駆動型プロセッサ1の内部のみで処理されて
いたデータパケットの複製を出力ポートOAまたはOB
のいずれか一方に出力するようになっている。そうした
動作に必要な構成について図2以下を参照して説明す
る。
【0058】図2を参照して、本願発明の実施形態1に
係るデータ駆動型プロセッサ1は、図13に示す従来の
データ駆動型プロセッサ61とほぼ同様であるが、図1
3に示す分岐部14に代えて、分流指定端子20からの
分流指定信号に従って、デバッグモードの動作と、通常
動作時の動作とを切換えて行なう分岐部24を含むこと
を特徴とする。データ駆動型プロセッサ1のその他の部
分の構成は、図13に示す従来のデータ駆動型プロセッ
サ61のものと同一である。図2と図13とにおいて、
対応する部品には同一の参照符号を付し、それらの詳細
な説明はここでは繰返さない。
【0059】図3を参照して、分岐部24は、機能的に
は、合流部12に接続される出力端子a、出力処理部1
5に接続される出力端子b、ならびに合流部12および
出力処理部15の双方に接続される出力端子cを有し、
本体処理部13から与えられるデータパケットを、制御
信号に応答してこれら3つの出力端子のいずれかに与え
るためのセレクタ241と、分流指定端子20に接続さ
れ、分流指定端子20の設定が1の場合にはセレクタ2
41を制御して本体処理部13から与えられるデータパ
ケットを出力端子cに与えるようにし、分流指定端子2
0の設定が0の場合には図14に示す分岐先判定部14
2と同様に動作する分岐先判定部242とを含む。
【0060】この分岐部24によれば、分流指定端子2
0の設定が1の場合には、本体処理部13から与えられ
たデータパケットは合流部12と出力処理部15との双
方に与えられる。また分流指定端子20の設定が0の場
合には、本体処理部13から与えられるデータパケット
のプロセッサ番号とPE#レジスタ16の内容とを比較
し、一致すればデータパケットを出力端子aを介して合
流部12へ、不一致であれば出力端子bを介して出力処
理部15にそれぞれ与えるように動作する。
【0061】図4に、図2に示す本願発明の実施形態1
のデータ駆動型プロセッサ1に使用される分岐部24の
より具体的な構成を、合流部12および出力処理部15
の一部とともに示す。図4と図15とにおいて、同一の
部品には同一の参照符号および名称が与えられており、
それらの機能も同一である。したがってここではそれら
についての詳しい説明は繰返さない。
【0062】図4に示される分岐部24が図15に示す
従来の分岐部14と異なるのは、インバータ92の出力
とNAND回路86の入力との間に、OR回路84が挿
入されていることである。OR回路84の他方の入力は
分流指定端子20に接続されている。OR回路84の出
力はNAND回路86の入力に接続されている。その他
の点では、図4の分岐部24は図15に示す従来の分岐
部14と全く同じである。
【0063】このOR回路84を設けたことにより、分
流指定端子20の設定が1であるときには分岐部24は
デバッグモードで動作し、分流指定端子20が0に設定
されているときには従来の分岐部14と同様に動作す
る。デバッグモードにおいては、データパケットが合流
部12に向けて分岐される場合には、そのデータパケッ
トの複製が出力処理部15にも出力されることになる。
以下、その動作を説明する。
【0064】まず図4を参照して、分流指定端子20が
0に設定されている場合を考える。この場合分岐部24
は、図15に示す分岐部14と全く同様に動作すること
は明らかである。まず最初に、本体処理部13から与え
られるデータパケットのプロセッサ番号124と、PE
#レジスタ16の内容とが一致する場合について考察す
る。この場合一致判定回路42の出力がハイレベル(図
5(B))、したがってインバータ92の出力はローレ
ベル(図5(C))となる。分流指定端子20がローレ
ベルに設定されているため、OR回路84の出力はロー
レベルとなる。
【0065】図5に示すように、初期状態として転送制
御素子46に入力されているデータ保持信号CIと空き
信号RI、転送制御素子46から出力されているデータ
保持信号CO*および空き信号RO*はすべてハイレベ
ルであるものとする。このとき、転送制御素子50への
データ保持信号CIおよび転送制御素子50からの空き
信号RO*もハイレベルである。また転送制御素子48
へのデータ保持信号CIおよび転送制御素子48からの
空き信号RO*もハイレベルである。転送制御素子46
からデータラッチ56への信号CPはローレベルであ
る。
【0066】まず、図5(D)に示すように、転送制御
素子46へのデータ保持信号CIがハイレベルからロー
レベルに立下がる。これに応答して転送制御素子46
は、転送制御素子44への空き信号RO*をハイレベル
からローレベルに立下げる(図5(E))。するとこれ
に応答して、転送制御素子44はその出力するデータ保
持信号CO*(転送制御素子46へのデータ保持信号C
I)を再びハイレベルに立上げる。
【0067】転送制御素子46は、データ保持信号CI
がハイレベルに立上がったことに応答して、データラッ
チ56に対してクロックパルスCPを与える。すなわち
転送制御素子46からデータラッチ56へのクロックパ
ルスCPはハイレベルに立上がる(図5(F))。同じ
く転送制御素子46は、転送制御素子44への空き信号
RO*を再びハイレベルに立上げる(図5(E))。
【0068】そしてクロックパルスCPがハイレベルに
立上がったことに応答して転送制御素子46は、次段へ
のデータ保持信号CO*をハイレベルからローレベルに
立下げる(図5(G))。NAND回路82に対してデ
ータラッチ回路56を介して一致判定回路42から与え
られる信号はハイレベルであり、したがってNAND回
路82は、転送制御素子46の出力の変化をそのまま合
流部12の転送制御素子50にデータ保持信号CIとし
て与える(図5(I))。
【0069】またNAND回路86に対して分流指定端
子20からローレベルの信号が与えられており、インバ
ータ92の出力もローレベルであるため、NAND回路
86の出力はハイレベルのままとなる(図5(K))。
【0070】転送制御素子50は、図5(J)に示すよ
うに、その出力する空き信号RO*をハイレベルからロ
ーレベルに立下げて(図5(F))データラッチ回路6
0に対してデータラッチのためのクロックパルスを与え
る。これによりデータラッチ回路60に、データラッチ
回路56のラッチデータが伝送されることになる。一方
データラッチ回路58は動作しない。
【0071】転送制御素子50の出力する空き信号RO
*がハイレベルからローレベルに変化すると、転送制御
素子46への空き信号RIもハイレベルからローレベル
に変化する(図5(H))。転送制御素子46は、入力
される空き信号RIがハイレベルからローレベルになっ
たことに応答して、クロックパルスCPを再びローレベ
ルに立下げる(図5(F))とともに、その出力するデ
ータ保持信号CO*をハイレベルに立上げる(図5
(G))。これにより転送制御素子50に与えられるデ
ータ保持信号CIもローレベルからハイレベルに立上が
る(図5(I))。その結果転送制御素子50の出力す
る空き信号RO*は再びハイレベルに立上がる(図5
(J))。
【0072】続いて次のデータパケットに対して一致判
定回路42による一致判定が行なわれるとともに、転送
制御素子46へのデータ保持信号CIがローレベルに立
下げられ、次の転送サイクルが開始されることになる。
【0073】続いて図6を参照して、一致判定回路42
において、本体処理部13から与えられたデータパケッ
トのプロセッサ番号とPE#レジスタ16の内容とが一
致していないと判定された場合の分岐部24の動作につ
いて考える。この場合一致判定回路42の出力はローレ
ベル、したがってインバータ92の出力はハイレベルと
なる。インバータ92の出力がハイレベルとなるためN
AND回路86に対してOR回路84から与えられる信
号もハイレベルとなる。したがってNAND回路86
は、インバータ90を介して転送制御素子46から与え
られるデータ保持信号CO*の波形変化をそのまま次段
の転送制御素子48にデータ保持信号CIとして与え
る。一方、NAND回路82に対してデータラッチ回路
56を介して一致判定回路42から与えられる信号はロ
ーレベルである。したがってNAND回路82は、転送
制御素子46の出力するデータ保持信号CO*の値にか
かわらず、合流部12の転送制御素子50に対してはハ
イレベルのデータ保持信号CIを与える。したがって転
送制御素子46からのデータ保持信号CO*の波形変化
は転送制御素子50には伝搬されない。
【0074】その結果、図6(A)〜(H)の波形は図
5の対応波形と変わらないが、図6(I)および(J)
に示すように、転送制御素子50は転送制御動作を行な
わない。したがって合流部12のデータラッチ回路60
はデータラッチ回路56のデータをラッチすることはな
い。また図6(K)および(L)に示すように出力処理
部15のデータラッチ回路58のみがデータラッチ回路
56のデータを受取ることになり、データパケットが出
力処理部15のみに出力される。
【0075】すなわちこの場合、データパケットは出力
処理部15のみに出力され、合流部12に対しては与え
られないことになる。
【0076】次に分流指定端子20が「1」に設定され
ている場合を考える。まず最初に、本体処理部13から
与えられるデータパケットのプロセッサ番号124と、
PE#レジスタ16の内容とが一致する場合について考
察する。この場合一致判定回路42の出力はハイレベ
ル、インバータ92の出力はローレベルとなる。インバ
ータ92の出力はローレベルであるが、分流指定端子2
0が1に設定されているため、OR回路84の出力は常
にハイレベルである。
【0077】図7に示すように、初期状態として転送制
御素子46に入力されているデータ保持信号CIと空き
信号RI、転送制御素子46から出力されているデータ
保持信号CO*および空き信号RO*はすべてハイレベ
ルであるものとする。このとき、転送制御素子50への
データ保持信号CIおよび転送制御素子50からの空き
信号RO*もハイレベルである。また転送制御素子48
へのデータ保持信号CIおよび転送制御素子48からの
空き信号RO*もハイレベルである。転送制御素子46
からデータラッチ56へのクロックパルスCPはローレ
ベルである。
【0078】まず、図7(D)に示すように、転送制御
素子46へのデータ保持信号CIがハイレベルからロー
レベルに立下がる。これに応答して転送制御素子46
は、転送制御素子44への空き信号RO*をハイレベル
からローレベルに立下げる(図7(E))。するとこれ
に応答して、転送制御素子44はその出力するデータ保
持信号CO*(転送制御素子46へのデータ保持信号C
I)を再びハイレベルに立上げる(図7(D))。
【0079】転送制御素子46は、データ保持信号CI
がハイレベルに立上がったことに応答して、データラッ
チ56に対してクロックパルスCPを与える。すなわち
転送制御素子46からのデータラッチ56へのクロック
パルスCPはハイレベルに立上がる(図7(F))。同
じく転送制御素子46は、転送制御素子44への空き信
号RO*を再びハイレベルに立上げる(図7(E))。
【0080】そしてクロックパルスCPがハイレベルに
立上がったことに応答して転送制御素子46は、次段へ
のデータ保持信号CO*をハイレベルからローレベルに
立下げる(図7(G))。NAND回路82に対して一
致判定回路42から与えられる信号はハイレベルであ
り、したがってNAND回路82は、転送制御素子46
の出力の変化をそのまま合流部12の転送制御素子50
にデータ保持信号CIとして与える(図7(I))。
【0081】またNAND回路86に対して分流指定端
子20からハイレベルの信号が与えられているため、N
AND回路86も同様に転送制御素子46の出力するデ
ータ保持信号CO*の波形変化をそのまま出力処理部1
5の転送制御素子48に対してデータ保持信号CIとし
て与える(図7(K))。
【0082】転送制御素子48および50は、図7
(J)(K)に示すように、その出力する空き信号RO
*をハイレベルからローレベルに立下げて(図7
(F))にデータラッチ回路58および60に対してそ
れぞれデータラッチのためのクロックパルスを与える。
これによりデータラッチ回路58および60に、データ
ラッチ56のラッチデータが伝送されることになる。
【0083】転送制御素子48および50の出力する空
き信号RO*のいずれか一方がハイレベルからローレベ
ルに変化すると、転送制御素子46への空き信号RIも
ハイレベルからローレベルに変化する(図7(H))。
転送制御素子46は、入力される空き信号RIがハイレ
ベルからローレベルになったことに応答して、クロック
パルスCPを再びローレベルに立下げる(図7(F))
とともに、その出力するデータ保持信号CO*をハイレ
ベルに立上げる(図7(G))。これにより転送制御素
子50および48に与えられるデータ保持信号CIもロ
ーレベルからハイレベルに立上がる(図7(I)および
(K))。その結果転送制御素子48および50の出力
する空き信号RO*は再びハイレベルに立上がる(図7
(J)および(L))。
【0084】続いて次のデータパケットに対して一致判
定回路42による一致判定が行なわれるとともに、転送
制御素子46へのデータ保持信号CIがローレベルに立
下げられ(図7(D))、次の転送サイクルが開始され
ることになる。
【0085】続いて図8を参照して、一致判定回路42
において、本体処理部13から与えられたデータパケッ
トのプロセッサ番号とPE#レジスタ16の内容とが一
致していないと判定された場合の分岐部24の動作につ
いて考える。この場合一致判定回路42の出力はローレ
ベルとなり、したがってインバータ92の出力はハイレ
ベルとなる。インバータ92の出力がハイレベルである
ためNAND回路86に対してOR回路84から与えら
れる信号もハイレベルである。したがってNAND回路
86は、転送制御素子46から与えられるデータ保持信
号CO*の波形変化をそのまま次段の転送制御素子48
にデータ保持信号CIとして与える。
【0086】一方、NAND回路82に対して一致判定
回路42から与えられる信号はローレベルである。した
がってNAND回路82は、転送制御素子46の出力す
るデータ保持信号CO*の値にかかわらず、合流部12
の転送制御素子50に対してはハイレベルのデータ保持
信号CIを与える。したがって転送制御素子46からの
データ保持信号CO*の波形変化は転送制御素子50に
は伝搬されない。
【0087】その結果、図8(A)〜(H)ならびに
(K)および(L)の波形は図7の対応波形と変わらな
いが、図8(I)および(J)に示すように、転送制御
素子50は転送制御動作を行なわない。したがって合流
部12のデータラッチ回路60はデータラッチ回路56
のデータをラッチすることはない。データラッチ回路5
8のみがデータラッチ回路56のデータを受取ることに
なり、データパケットは出力処理部15のみに出力され
る。
【0088】すなわちこの場合、データパケットが出力
処理部15のみに出力され、合流部12に対しては与え
られないことになる。
【0089】前述のように一致判定回路42により、本
体処理部13からのデータパケットのプロセッサ番号と
PE#レジスタ16の内容とが一致した場合、合流部1
2に対してデータパケットが与えられるとともに、その
複製が出力処理部15にも与えられる。この場合出力処
理部15に与えられたデータパケットは、分岐部24で
次プロセッサ行と判断されたデータパケットの複製と考
えることができるから、そのデータパケットのプロセッ
サ番号124は自プロセッサ番号となっている。そして
また前述のとおり出力処理部15は、分岐制御パラメー
タレジスタ群の設定内容とデータパケットの内容とに従
って出力ポートを決定する。
【0090】分岐制御パラメータレジスタRMおよびR
Dが図9に示されようにそれぞれ「00000001」
に設定されている場合を考え、このプロセッサPE#0
で図17に示すデータフローグラフを実行すると、プロ
セッサPE#0からは図9に示すようなデータパケット
が出力される。この例では、分岐部24で複製されたデ
ータパケットのプロセッサ番号にはPE#0が設定され
ている。したがってこれらデータパケットは出力ポート
OBから出力されることになる。
【0091】以上のようにこの実施形態1に係るデータ
駆動型プロセッサでは、本体処理部13から出力された
データパケットが再び本体処理部13に与えられて処理
される場合には、そのデータパケットの複製がプロセッ
サ外に出力される。これらのデータパケットはデータフ
ローグラフの中間演算結果であり、従来は、データフロ
ーグラフをデバッグ用に変更しないかぎり、プロセッサ
外からその内容を確認することはできなかった。しかし
上述のようにこの実施形態1のデータ駆動型プロセッサ
によれば、データフローグラフを修正することなく、こ
の中間結果の内容をプロセッサ外から確認することがで
きる。その内容を予め用意しておいた期待値と比較する
ことにより、データフローグラフのデバッグを容易に行
なうことができる。データフローグラフを修正する必要
は全くないので、効率的にデバッグを行なうことが可能
になる。しかもデバッグが終了すれば、分流指定端子2
0の設定を0とすることにより、上述のデバッグのため
のデータパケット出力が行なわれることはなくなり、従
来のデータ駆動型プロセッサと全く同一の動作が行なえ
る。すなわちデバッグモードの動作と通常動作モードの
動作とを容易に切換えることができる。
【0092】なおこの実施形態1における分流指定端子
20の設定は、上述のようにデータ駆動型プロセッサ内
のみを巡回するデータパケットの複製を外部に出力する
分流指定を有効にするか無効にするかを指定するための
情報である。この設定は、分流指定端子20のような外
部端子だけではなく、データ駆動型プロセッサに設けら
れた内蔵レジスタを使用して行なうことも可能である。
そのような分流指定レジスタ30を設けた、本願発明の
データ駆動型情報処理装置の実施形態2に係るデータ駆
動型プロセッサ1aのブロック構成図を図10に示す。
【0093】図10を参照して、この実施形態2のデー
タ駆動型プロセッサ1aは、図2に示すデータ駆動プロ
セッサ1の構成にさらに分流指定レジスタ30を加え、
この分流指定レジスタ30に対する更新および参照処理
が可能な分岐部34を分岐部24に代えて新たに含む点
が特徴である。
【0094】分岐部34は、特定の命令に応答して分流
指定レジスタ30に値を格納させる機能をさらに含むこ
と以外には、図2および図4に示す分岐部24と同様の
構成を有する。
【0095】分流指定レジスタ30の値は、データ駆動
型プロセッサを初期化する際にソフトウェア的に設定可
能である。たとえば分流指定レジスタ30の設定を0と
すれば図13に示す従来のデータ駆動型プロセッサと全
く同一の動作を行なう。分流指定レジスタ30の設定を
1とすれば、データ駆動型プロセッサ1a内を巡回して
いたデータパケットの複製が出力処理部15から外部に
出力され、デバッグに使用できる。この分岐部34およ
び出力処理部15の動作は実施形態1と同様であるの
で、ここではその詳細については繰返さない。
【0096】以上のように本願発明の実施形態に係るデ
ータ駆動型プロセッサによれば、分岐部24および34
が、引続き本体処理部13で演算を行なうデータパケッ
トを合流部12を介して本体処理部13に与えるととも
に、その複製のデータパケットを出力処理部15を介し
て外部に出力する。そのため外部では処理途中の中間結
果を確認することができ、期待値と比較することによっ
てデータフローグラフのデバッグを容易に行なうことが
できる。デバッグに際して、従来のようにデータフロー
グラフを修正する必要がなく、効率的なデバッグを行な
うことが可能になる。また分流設定端子20および分流
指定レジスタ30の設定を通常動作を示す値とすること
により、従来と全く同一の動作に切り替えることが容易
に行なえる。
【図面の簡単な説明】
【図1】本願発明の実施形態1に係るデータ駆動型プロ
セッサを含む映像信号処理向きデータ駆動型情報処理シ
ステムのブロック構成図である。
【図2】本願発明の実施形態1に係るデータ駆動型プロ
セッサのブロック構成図である。
【図3】図2に示すデータ駆動型プロセッサの分岐部の
機能的構成を模式的に示す図である。
【図4】分岐部の構成をより具体的に示す回路ブロック
図である。
【図5】分岐部の動作を示すタイミングチャートであ
る。
【図6】分岐部の動作を示すタイミングチャートであ
る。
【図7】分岐部の動作を示すタイミングチャートであ
る。
【図8】分岐部の動作を示すタイミングチャートであ
る。
【図9】実施の形態1のデータ駆動型プロセッサによる
データパケットの出力の態様を模式的に示す図である。
【図10】本願発明の実施形態2に係るデータ駆動型プ
ロセッサのブロック構成図である。
【図11】従来のデータ駆動型プロセッサを含む映像処
理向きデータ駆動型情報処理システムのブロック構成図
である。
【図12】データパケットのフィールド構成を模式的に
示す図である。
【図13】従来のデータ駆動型プロセッサのブロック構
成図である。
【図14】従来のデータ駆動型プロセッサの分岐部の機
能的構成を示す図である。
【図15】従来のデータ駆動型プロセッサの分岐部の回
路ブロック図である。
【図16】4つのデータ駆動型プロセッサを含むシステ
ムの構成図である。
【図17】データフローグラフの一例を示す図である。
【図18】従来のプロセッサによるデータパケットの出
力の態様を示す図である。
【図19】デバッグのために修正されたデータフローグ
ラフを模式的に示す図である。
【図20】従来のデータ駆動型プロセッサにおいてデバ
ッグ用に修正されたデータフローグラフを実行した場合
のデータパケットの出力の態様を模式的に示す図であ
る。
【符号の説明】
1、1a データ駆動型プロセッサ 12 合流部 13 本体処理部 14、24、34 分岐部 15 出力処理部 20 分流指定端子 30 分流指定レジスタ 42 一致判定回路 44、46、48、50 転送制御素子

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 データパケットを受ける入力ポートと、 データパケットを出力するための出力ポートと、 前記入力ポートを介して入力されたデータパケットを処
    理するための処理手段と、 前記処理手段により出力されたデータパケットを、引続
    き前記処理手段で処理すべきか、または外部に出力すべ
    きかを判定する際に利用される情報を格納するための格
    納手段と、 前記処理手段により出力されたデータパケットを前記処
    理手段により引続き処理すべきか、または外部に出力す
    べきかを、当該データパケットの内容と前記格納手段に
    格納された前記情報とに従って判定し、判定結果に従っ
    てデータパケットを前記処理手段の入力と、前記出力ポ
    ートとに分岐させるための分岐手段とを含み、 前記分岐手段は、データパケットを前記処理手段により
    引続き処理すべきと判定したときには、当該データパケ
    ットの複製を作成して前記出力ポートに与える複製機構
    を有する、データ駆動型情報処理装置。
  2. 【請求項2】 前記分岐手段は、外部から与えられる分
    流指定信号に従って、前記複製機構を可能化し、または
    不能化するための機構をさらに有する、請求項1記載の
    データ駆動型情報処理装置。
  3. 【請求項3】 前記分岐手段は、分流指定情報を保持す
    るための記憶手段と、 前記記憶手段に保持された前記分流指定情報に従って、
    前記複製機構を可能化し、または不能化するための機構
    とをさらに有する、請求項1記載のデータ駆動型情報処
    理装置。
JP24149795A 1995-09-20 1995-09-20 データ駆動型情報処理装置 Expired - Fee Related JP3618419B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP24149795A JP3618419B2 (ja) 1995-09-20 1995-09-20 データ駆動型情報処理装置
US08/718,258 US5913055A (en) 1995-09-20 1996-09-20 Data driven information processor for executing and debugging a data flow graph without revising the data flow graph

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24149795A JP3618419B2 (ja) 1995-09-20 1995-09-20 データ駆動型情報処理装置

Publications (2)

Publication Number Publication Date
JPH0981540A true JPH0981540A (ja) 1997-03-28
JP3618419B2 JP3618419B2 (ja) 2005-02-09

Family

ID=17075211

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24149795A Expired - Fee Related JP3618419B2 (ja) 1995-09-20 1995-09-20 データ駆動型情報処理装置

Country Status (2)

Country Link
US (1) US5913055A (ja)
JP (1) JP3618419B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082515B2 (en) 2000-04-27 2006-07-25 Sharp Kabushiki Kaisha Data driven type information processing apparatus having deadlock breaking function

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3766779B2 (ja) * 2000-03-31 2006-04-19 シャープ株式会社 自己同期型データ伝送装置およびこれを用いたデータ駆動型情報処理装置
US7103675B1 (en) * 2002-05-23 2006-09-05 Network General Technology Multiplexed request and reply packets
US7194609B2 (en) * 2002-08-08 2007-03-20 Hewlett-Packard Development Company, L.P. Branch reconfigurable systems and methods
JP4149360B2 (ja) * 2003-11-10 2008-09-10 シャープ株式会社 データ駆動型情報処理装置およびデータフロープログラムの実行制御方法
US7770151B2 (en) * 2005-04-07 2010-08-03 International Business Machines Corporation Automatic generation of solution deployment descriptors
US7797678B2 (en) * 2005-04-07 2010-09-14 International Business Machines Corporation Automatic generation of license package for solution components
US20060235760A1 (en) * 2005-04-19 2006-10-19 International Business Machines Corporation Properties file that will allow configuration input based on experience
US7526759B2 (en) * 2005-04-19 2009-04-28 International Business Machines Corporation Debugging prototyped system solutions in solution builder wizard environment
CN101848083B (zh) * 2009-03-23 2013-04-24 东北大学技术转移中心 通信设备及方法
US8887138B2 (en) 2012-05-25 2014-11-11 Telefonaktiebolaget L M Ericsson (Publ) Debugging in a dataflow programming environment
US10817406B2 (en) 2018-03-30 2020-10-27 Ab Initio Technology Llc Debugging an executable control flow graph that specifies control flow

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5038348A (en) * 1988-07-01 1991-08-06 Sharp Kabushiki Kaisha Apparatus for debugging a data flow program
US5369775A (en) * 1988-12-20 1994-11-29 Mitsubishi Denki Kabushiki Kaisha Data-flow processing system having an input packet limiting section for preventing packet input based upon a threshold value indicative of an optimum pipeline processing capacity
US5165036A (en) * 1989-01-31 1992-11-17 Sharp Kabushiki Kaisha Parallel processing development system with debugging device includes facilities for schematically displaying execution state of data driven type processor
US5745723A (en) * 1989-09-04 1998-04-28 Mitsubishi Denki Kabushiki Kaisha Data processing system capable of execution of plural instructions in parallel
JP2652079B2 (ja) * 1990-08-09 1997-09-10 シャープ株式会社 データ伝送装置
US5454115A (en) * 1991-12-25 1995-09-26 Sharp Kabushiki Kaisha Data driven type processor having data flow program divided into plurality of simultaneously executable program groups for an N:1 read-out to memory-access ratio
JP3312039B2 (ja) * 1992-01-08 2002-08-05 シャープ株式会社 データ駆動型情報処理装置
JP2772604B2 (ja) * 1992-10-27 1998-07-02 シャープ株式会社 データ処理システム
US5404558A (en) * 1992-02-17 1995-04-04 Sharp Kabushiki Kaisha Data driven type information processor having a plurality of memory banks
JPH06162228A (ja) * 1992-11-26 1994-06-10 Sharp Corp データフロープロセッサ装置
JP3285430B2 (ja) * 1993-09-02 2002-05-27 シャープ株式会社 データ駆動型情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082515B2 (en) 2000-04-27 2006-07-25 Sharp Kabushiki Kaisha Data driven type information processing apparatus having deadlock breaking function

Also Published As

Publication number Publication date
US5913055A (en) 1999-06-15
JP3618419B2 (ja) 2005-02-09

Similar Documents

Publication Publication Date Title
JP3677315B2 (ja) データ駆動型情報処理装置
JP4404438B2 (ja) 合成及びレイアウトのオーバーヘッドが少ないsatソルバー・アーキテクチャーを得るための方法及び装置
JP2772604B2 (ja) データ処理システム
JP3983447B2 (ja) データ駆動型情報処理装置
JP3618419B2 (ja) データ駆動型情報処理装置
JPS63291134A (ja) 論理集積回路
JPH08249306A (ja) データ駆動型情報処理装置
US7051194B2 (en) Self-synchronous transfer control circuit and data driven information processing device using the same
JP3571367B2 (ja) データ駆動型プロセッサ、データ駆動型情報処理装置、およびこのデータ駆動型情報処理装置において、複数個のデータ駆動型プロセッサの経路接続を確認するための方法
JPH06162228A (ja) データフロープロセッサ装置
US5812806A (en) Data driven information processor configuring each data packet with a multi-attribute tag having at least two components
JPH06266861A (ja) データ駆動型情報処理システムにおける識別データ確認方法
CN107204922B (zh) 用于过滤事务的装置和方法
JP3738128B2 (ja) データ駆動型情報処理装置
US7340586B2 (en) Data transfer for debugging in data driven type processor processing data packet with data flow program including transfer control bit setting instruction
JP3055139B2 (ja) マイクロプログラム制御方式
KR100290280B1 (ko) 프로그램 가능한 플래시 메모리를 내장하는 마이크로콘트롤러
JP2848619B2 (ja) テスト容易化回路
JP2743889B2 (ja) プログラム評価の方法および装置
JP2723017B2 (ja) シミュレーションエンジン
JPH0756886A (ja) ペトリネットに基づく並列制御システム
JPH07191955A (ja) データ駆動型情報処理装置
JP2755646B2 (ja) データ駆動型データ処理装置
JP3541498B2 (ja) データ処理装置
JPH0311479A (ja) ストリーム演算終了検知方法及びその装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041110

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees