JP2518293B2 - Data Flow Processor - Google Patents

Data Flow Processor

Info

Publication number
JP2518293B2
JP2518293B2 JP62185829A JP18582987A JP2518293B2 JP 2518293 B2 JP2518293 B2 JP 2518293B2 JP 62185829 A JP62185829 A JP 62185829A JP 18582987 A JP18582987 A JP 18582987A JP 2518293 B2 JP2518293 B2 JP 2518293B2
Authority
JP
Japan
Prior art keywords
token
data
processor
processing
arithmetic
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
JP62185829A
Other languages
Japanese (ja)
Other versions
JPS6429938A (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.)
NEC Corp
Original Assignee
Nippon 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP62185829A priority Critical patent/JP2518293B2/en
Publication of JPS6429938A publication Critical patent/JPS6429938A/en
Application granted granted Critical
Publication of JP2518293B2 publication Critical patent/JP2518293B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、メモリ部、演算部をパイプライン状のバス
で結合し、データフロー方式により演算順序をコントロ
ールすることを特徴とするデータフロープロセッサに関
するものである。
DETAILED DESCRIPTION OF THE INVENTION (Industrial field of use) The present invention relates to a data flow processor characterized in that a memory unit and an arithmetic unit are connected by a pipeline bus and the arithmetic order is controlled by a data flow method. It is about.

(従来の技術) 従来、データフロープロセッサとしては特開昭56−16
9152号公報に記載されている技術があり、それを製品化
したものとして日本電気株式会社製のμPD7281がある。
μPD7281は第4図に示されるような構成を持つ。外部バ
スから装置に入力されるデータの単位となるトークン
は、データ値、入力後にリンクテーブル92を参照するた
めのリンクテーブルアドレス、そのトークンが処理され
るべき装置示すモジュール番号を持ち、トークン入力部
91は、外部バスを通るトークンのモジュール番号がその
装置の番号と一致する場合にそのトークンを内部に入力
し、そうでない場合トークン出力部97を通じてそのまま
外部バスから出力する。入力されたトークンは、その持
つリンクテーブルアドレスによりリンクテーブル92を参
照し、そこでファンクションテーブル93を参照するため
のファンクションテーブルアドレスと次回にリンクテー
ブル92を参照するためのリンクテーブルアドレスを得た
後にファンクションテーブル93へ送られる。
(Prior Art) Japanese Laid-Open Patent Publication No. 56-16
There is a technology described in Japanese Patent No. 9152, and a product of the technology is μPD7281 manufactured by NEC Corporation.
The μPD7281 has the structure shown in FIG. The token, which is the unit of data input to the device from the external bus, has a data value, a link table address for referring to the link table 92 after input, and a module number indicating the device on which the token is to be processed.
91 inputs the token internally when the module number of the token passing through the external bus matches the number of the device, and otherwise outputs the token through the token output unit 97 from the external bus. The input token refers to the link table 92 by its own link table address, and after obtaining the function table address for referencing the function table 93 and the link table address for referencing the link table 92 next time, the function is executed. Sent to table 93.

トークンはファンクションテーブル93においてそのフ
ァンクションテーブルアドレスによる参照を行い、そこ
でデータメモリ94の管理情報の参照・更新を行うと同時
にプロセッシングユニット96での処理内容を示す処理コ
ードとデータメモリ94のアクセスアドレスを得、データ
メモリ94に送られ、そこで必要に応じて2項演算の相手
方のオペランドの待合わせあるいは定数演算のための定
数の読み出しを行う。キューメモリ95はプロセッシング
ユニット96が前のトークンを処理中で次のトークンを入
力できない時にトークンを一時保持するためのメモリで
あり、プロセッシングユニット96がビジーでない場合に
は、トークンはキューメモリ95からプロセッシングユニ
ット96に送られ、その処理コードに応じて、整数データ
の加減乗算、論理演算、シフト、比較、ビット反転、プ
ライオリティエンコーディング、分流、数値発生、コピ
ー、内部レジスタを利用した演算などのうちの1つの処
理を受ける。なおトークンの持つ処理コートが出力を示
すものである場合には、トークンはキューメモタ95から
トークン出力部97へ送られ、入力トークンの形に変形さ
れた後に、外部バスへ出力される。プロセッシングユニ
ット96で処理をうけたトークンは、リンクテーブル92に
送られ、再びそのリンクテーブルアドレスにより参照を
行う。以下同様にして出力命令が実行されるまで内部の
リンクバスを回り、そのデータ値に対して必要な処理を
受ける。
The token refers to the function table address in the function table 93, and then refers to and updates the management information of the data memory 94, and at the same time obtains a processing code indicating the processing content in the processing unit 96 and an access address of the data memory 94. , To the data memory 94, and waits for the operand of the other party of the binary operation or reads the constant for constant operation, if necessary. The queue memory 95 is a memory for temporarily holding the token when the processing unit 96 is processing the previous token and cannot input the next token, and when the processing unit 96 is not busy, the token is processed from the queue memory 95. It is sent to the unit 96, and depending on the processing code, one of the addition / subtraction multiplication of integer data, logical operation, shift, comparison, bit inversion, priority encoding, shunting, number generation, copy, operation using internal register, etc. Receive one treatment. If the processing coat of the token indicates output, the token is sent from the cue memotor 95 to the token output unit 97, transformed into the form of the input token, and then output to the external bus. The token processed by the processing unit 96 is sent to the link table 92, and again referred to by the link table address. In the same manner, the data is passed through the internal link bus until the output instruction is executed, and the necessary processing is performed on the data value.

(発明が解決しようとする問題点) 前述のデータフロープロセッサではサポートされてい
る算術演算処理が整数データに対する加減乗算に限られ
ているため、これら以外の浮動小数点表現のデータの演
算を必要とする処理、さらに除算、開平や三角関係など
の初等超越関数の計算を含む処理は実行できなかった。
(Problems to be Solved by the Invention) In the above-mentioned data flow processor, since the arithmetic operation processing supported is limited to addition / subtraction multiplication for integer data, it is necessary to arithmetically operate the data of the floating point representation other than these. Processing, and processing including division, calculation of elementary transcendental functions such as square roots and triangular relations could not be performed.

例えばZ−バッファ方によるコンピュータグラフィク
ス処理を行う場合、比較的広いダイナミックレンジを持
つデータの処理を精度良く行うため浮動小数点演算が必
要であり、また透視投影変換、交点算出、輝度計算など
には除算、開平や三角関係などの初等超越関数の計算が
不可欠である。
For example, when computer graphics processing by the Z-buffer method is performed, floating-point arithmetic is required to accurately process data having a relatively wide dynamic range, and division is performed for perspective projection conversion, intersection calculation, luminance calculation, and the like. , It is essential to calculate elementary transcendental functions such as Kaihei and triangular relations.

しかしこれらの数値演算処理ハードウェアをそのまま
従来装置のプロセッシングユニットに備えた場合次のよ
うな問題が生ずる。
However, the following problems occur when the processing unit of the conventional apparatus is equipped with these numerical operation processing hardware as they are.

従来行っていた整数演算処理は簡単なハードウェアで
短時間に処理可能なのに比べ、浮動小数点演算処理は複
雑なハードウェアと長い処理時間がかかる。そのため従
来のように全ての命令に対し同一のステップ数でプロセ
ッシングユニットの処理を終了しようとすると動作パイ
プラインサイクルを長くせざるを恵那九名田、データフ
ロープロセッサ全体の処理速度が遅くなる。
Conventional integer arithmetic processing can be performed in a short time with simple hardware, whereas floating-point arithmetic processing requires complicated hardware and a long processing time. Therefore, if it is attempted to finish the processing of the processing unit with the same number of steps for all instructions as in the conventional art, the operation pipeline cycle must be lengthened, and the processing speed of the entire data flow processor becomes slow.

初等超越関数演算には通常収束計算による反復法が用
いられるが、これはデータや関数の種類により終了まで
のステップ数が可変であり、そのあいだプロセッシング
ユニットを占有するので、全体のパイプライン性を悪化
させこれによって処理性能が低下する。
The iterative method based on the convergence calculation is usually used for the elementary transcendental function operation, but the number of steps to the end is variable depending on the type of data and function, and the processing unit is occupied during that time, so the overall pipeline performance is improved. It deteriorates, and processing performance falls by this.

本発明は上記のような問題点を解決し、浮動小数点表
現のデータの演算を必要とする処理、さらに除算、開平
や三角関係などの初等超越関数の計算を含む処理をなる
べくパイプライン性能を低下させずに実行できるデータ
フロープロセッサを提供し、コンピュータグラフィクス
なとの高速な処理を実現することを目的としている。
The present invention solves the problems described above, and reduces the pipeline performance as much as possible to the processing that requires the operation of the data of the floating point representation and the processing including the calculation of the elementary transcendental functions such as division, square root and triangular relation. The purpose of the present invention is to provide a data flow processor that can be executed without executing it, and to realize high-speed processing with computer graphics.

(問題点を解決するための手段) 本発明のデータフロープロセッサは、リング状バスを
構成するように順に接続された、トークンの行き先アド
レスを貯えておくリンクテーブル、命令コードを貯えて
おくファンクションテーブル、演算に用いるオペランド
データを一時貯えるデータメモリ、トークンを一時保持
するバッファキュー、トークンに対するデータ処理を行
うプロセッシングユニット、前記プロセッシングユニッ
トからの結果出力を制御する演算出力選択回路を持ち、
さらにプロセッシングユニットからトークンを外部バス
へ送出するトークン出力部とを外部バスからトークンを
入力してリンクテーブルまたは前記トークン出力部へ送
出するトークン入力部とを持つことにより構成され、特
に前記プロセッシングユニットは並列に配置された、主
として整数データの演算を行う整数演算プロセッサと、
浮動小数点データの演算を行う浮動小数点演算プロセッ
サと、超越関数の計算を行う数値関数演算プロセッサと
からなり、また前記バッファキューは上記プロセッシン
グユニットの各プロセッサに入力するトークンを保持す
るために並列に配置された整数演算プロセッサキュー、
数値関数演算プロセッサキューからなることを特徴とし
ている。
(Means for Solving Problems) A data flow processor of the present invention is a link table for storing destination addresses of tokens and a function table for storing instruction codes, which are connected in sequence so as to form a ring bus. , A data memory for temporarily storing operand data used for operations, a buffer queue for temporarily holding tokens, a processing unit for performing data processing on tokens, and an operation output selection circuit for controlling result output from the processing unit,
Furthermore, the processing unit is configured by having a token output unit for sending a token to an external bus and a token input unit for inputting a token from an external bus and sending it to the link table or the token output unit, and in particular, the processing unit is An integer arithmetic processor, which is arranged in parallel and mainly performs arithmetic on integer data,
It is composed of a floating point arithmetic processor for arithmetical operation of floating point data and a numerical function arithmetical processor for arithmetic of transcendental functions, and the buffer queues are arranged in parallel to hold tokens to be inputted to each processor of the processing unit. An integer arithmetic processor queue,
It is characterized by a numerical function arithmetic processor queue.

(作用) 本発明のデータフロープロセッサにおいては、処理さ
れるべきデータを持つトークンはリンクテーブル、ファ
ンクションテーブル、データメモリ、バッファキューを
経て必要な処理コード、パラメタ、2項演算の相手方デ
ータなどを得る。データメモリを出た各トークンはその
処理コードに応じてバッファキューの整数演算プロセッ
サキュー、浮動小数点演算プロセッサキュー、数値関数
演算プロセッサキューのいずれかに入力され、その後続
する整数演算プロセッサ、浮動小数点演算プロセッサ、
数値関数演算プロセッサがビジー状態でないときにこれ
に入力され、そこで処理を受けて結果データを持つトー
クンが演算出力選択回路へ送られる。
(Operation) In the data flow processor of the present invention, the token having the data to be processed obtains the necessary processing code, parameter, and binary data of the binary operation through the link table, function table, data memory and buffer queue. . Each token leaving the data memory is input to one of the integer arithmetic processor queue, the floating point arithmetic processor queue, and the numerical function arithmetic processor queue of the buffer queue according to the processing code, and the subsequent integer arithmetic processor and floating point arithmetic Processor,
When the numerical function arithmetic processor is not busy, it is input to it, processed there, and the token having the result data is sent to the arithmetic output selection circuit.

整数演算プロセッサは主として整数データに対する演
算などの処理を行い、さらに複数の機能の合成された処
理をパイプライン的に行うことができる。浮動小数点演
算プロセッサは長いステップを必要とする浮動小数点デ
ータ計算を行う。また数値関数演算プロセッサでは反復
演算により初等超越関数の計算を行うが、数値関数演算
プロセッサがこのような可変時間の反復処理を行って1
つのデータによりハードウェアを占有している間も他の
整数演算プロセッサと浮動小数点演算プロセッサはそれ
らに対応するバッファキューから入力トークンの供給を
受け、並列して動作することが出来る。
The integer arithmetic processor mainly performs operations such as arithmetic operations on integer data, and can further perform combined processing of a plurality of functions in a pipeline manner. Floating point processors perform floating point data calculations that require long steps. In addition, the numerical function arithmetic processor calculates the elementary transcendental function by iterative calculation, and the numerical function arithmetic processor performs such variable time iterative processing.
While one piece of data occupies the hardware, other integer arithmetic processors and floating point arithmetic processors can be supplied with input tokens from their corresponding buffer queues and operate in parallel.

(実施例) 次に本発明について図面を参照して説明する。(Example) Next, this invention is demonstrated with reference to drawings.

第1図は本発明の一実施例におけるデータフロープロ
セッサの構成を示す内部ブロック図であり、11はトーク
ン入力部、12はリンクテーブル、13はファンクションテ
ーブル、14はデータメモリ、15はバッファキュー、16は
プロセッシングユニット、23は演算出力選択回路、17は
トークン出力部であり、リンクテーブル12、ファンクシ
ョンテーブル13、データメモリ14、バッファキュー15、
プロセッシングユニット16、演算出力選択回路23は図に
示すようにこの順にパイプライン方式のバスでリング状
に接続しており、トークンはこの内部リングバス上で転
送される。またバッファキュー15は整数演算プロセッサ
キュー24、浮動小数点演算プロセッサキュー25、数値関
数演算プロセッサキュー26が、プロセッシングユニット
16は整数演算プロセッサ20、浮動小数点演算プロセッサ
21、数値関数演算プロセッサ22がそれぞれ並列に配置さ
れたものである。データメモリ14を出たトークンはバッ
ファキュー15を構成するいずれかのキューに送られ、そ
の後それに接続する整数演算プロセッサ20、浮動小数点
演算プロセッサ21、数値関数演算プロセッサ22のいずれ
かに送られ、そこにおける処理の結果トークンは演算出
力選択回路23に送出される。
FIG. 1 is an internal block diagram showing a configuration of a data flow processor according to an embodiment of the present invention. 11 is a token input unit, 12 is a link table, 13 is a function table, 14 is a data memory, 15 is a buffer queue, 16 is a processing unit, 23 is a calculation output selection circuit, 17 is a token output section, and a link table 12, a function table 13, a data memory 14, a buffer queue 15,
As shown in the figure, the processing unit 16 and the operation output selection circuit 23 are connected in a ring shape by a pipeline type bus in this order, and tokens are transferred on this internal ring bus. The buffer queue 15 is an integer arithmetic processor queue 24, a floating point arithmetic processor queue 25, and a numerical function arithmetic processor queue 26 are processing units.
16 is an integer processor 20 and a floating point processor
21 and a numerical function processor 22 are arranged in parallel. The token leaving the data memory 14 is sent to one of the queues forming the buffer queue 15, and is then sent to one of the integer arithmetic processor 20, the floating point arithmetic processor 21 and the numerical function arithmetic processor 22 connected to the queue, and there. The token obtained as a result of the processing in (1) is sent to the operation output selection circuit 23.

第2図は本発明の一実施例を用いたデータ処理装置の
例の全体構成図である。本装置においては複数のデータ
フロープロセッサ1、2と、1つのメモリインタフェー
ス回路3が外部バス5で結ばれており、外部バスはメモ
リインタフェース回路3を介してメモリ4と接続されて
いる。外部バス5上でトークンはハンドシェーク方式に
より非同期に転送される。
FIG. 2 is an overall configuration diagram of an example of a data processing device using an embodiment of the present invention. In this device, a plurality of data flow processors 1 and 2 and one memory interface circuit 3 are connected by an external bus 5, and the external bus is connected to the memory 4 via the memory interface circuit 3. The token is transferred asynchronously on the external bus 5 by the handshake method.

第3図はデータの単位であるトークンの形式を示す。
外部バス5上でトークン60はモジュール番号61、組織別
子62、リンクテーブルアドレス63とデータ部64からな
る。
FIG. 3 shows the format of a token which is a unit of data.
On the external bus 5, the token 60 comprises a module number 61, an organization identifier 62, a link table address 63 and a data section 64.

この実施例で用いられるトークンについては1つまた
は複数のトークンからなる組トークン1つのまとまりと
して処理することが出来る。組トークンは常に連続して
処理装置内を流れ、また同一のモジュール番号61と同一
のリンクテーブルアドレス63を持つ。組織別子62は組ト
ークン内でのそのトークンの識別に用いられ、そのトー
クンが単独で組トークンを構成する場合には“0"を、ま
た複数のトークンからなる組トークン内で互いを区別す
る必要がある場合にはそれぞれ異なる値を持つことがで
きる。ただし組トークン内の最後尾のトークンは組織別
子として“0"を持つ。
The tokens used in this embodiment can be processed as a group of one token or a plurality of tokens. The group token always flows continuously in the processing device, and has the same module number 61 and the same link table address 63. The organization identifier 62 is used to identify the token in the set token, and distinguishes "0" when the token constitutes a set token by itself, and distinguishes each other in a set token composed of multiple tokens. They can have different values if needed. However, the last token in the group token has "0" as an organization identifier.

トークン入力部11は前段のデータフロープロセッサま
たはメモリインタフェース回路から入力されるトークン
のうちそのモジュール番号61が、その装置に与えられた
番号に等しいもののみを内部へ取り込みリンクテーブル
12へパイプラインサイクルに同期して送り、その他のト
ークンは通過トークンとしてそのままトークン出力部17
へ送る。ただしリンクテーブル12あるいはトークン出力
部17が以下に述べるように組トークンの処理中でビジー
状態である場合にはトークンを送出せず、更に前段のデ
ータフロープロセッサまたはメモリインタフェース回路
への入力を停止する。
The token input unit 11 takes in only the tokens whose module number 61 is equal to the number given to the device among the tokens input from the preceding data flow processor or memory interface circuit, and link table
It is sent to 12 in synchronism with the pipeline cycle, and other tokens are used as transit tokens as they are in the token output section 17
Send to. However, when the link table 12 or the token output unit 17 is in the busy state during the processing of the group token as described below, the token is not transmitted, and the input to the preceding data flow processor or memory interface circuit is stopped. .

リンクテーブル12は演算出力選択回路23またはトーク
ン入力部11からトークンを入力するが、両方から同時に
入力があった場合には通常はトークン入力部11からの入
力を優先する。ただしどちらからのものであっても入力
されたトークンの組織別子が“0"でない場合には、その
トークンが複数のトークンからなる組トークンの最後尾
以外のトークンであり、さらに連続して組トークンの残
りが入力されてくることがわかるので、それらのトーク
ンの送出元でない方に対してビジー状態であることを知
らせ入力を停止することにより、それらの組トークン全
体を優先して連続して入力する。これにより組トークン
の連続性が保証される。
The link table 12 inputs a token from the operation output selection circuit 23 or the token input unit 11, but when both are input at the same time, the input from the token input unit 11 is usually prioritized. However, if the organization identifier of the input token is not "0" regardless of which one, the token is a token other than the last token in the group consisting of multiple tokens, and the tokens are grouped consecutively. Since it can be seen that the rest of the tokens will be input, by notifying the non-source of those tokens that they are busy and stopping the input, priority will be given to the entire set of tokens in succession. input. This guarantees the continuity of the group token.

演算出力選択回路23またはトークン入力部11からリン
クテーブル12に入力された第3図のトークン60はそのリ
ンクテーブルアドレス63を用いてその内部メモリを参照
し、そこで得たファンクションテーブルアドレス及び次
回のリンクテーブル12参照のためのリンクテーブルアド
レスを持ってファンクションテーブル13に送られる。
The token 60 of FIG. 3 input from the operation output selection circuit 23 or the token input unit 11 to the link table 12 refers to its internal memory using the link table address 63, and the function table address and the next link obtained there. It is sent to the function table 13 with the link table address for referring to the table 12.

ファンクションテーブル13では入力されるトークンの
ファンクションテーブルアドレスによりその内部のテー
ブルをアクセスし、データメモリ14の管理情報の参照・
更新を行なうと同時にプロセッシングユニット16での処
理内容を示す処理コード、及びデータメモリ14のアクセ
スアドレスをトークンに付加する。このプロセッシング
ユニット16の処理コードはそのトークンが整数演算プロ
セッサ20、浮動小数点演算プロセッサ21、数値関数演算
プロセッサ22のいずれにおいて処理されるべきであるか
を示すプロセッサ選択コードと、プロセッシングユニッ
ト16で処理された後の結果トークンが演算出力選択回路
23からリンクテーブル12へ送られるかトークン出力部17
へ送られるかを示す出力方向選択コードとを含む。
In the function table 13, the internal table is accessed by the function table address of the input token, and the management information in the data memory 14 is referred to.
Simultaneously with the update, the processing code indicating the processing content in the processing unit 16 and the access address of the data memory 14 are added to the token. The processing code of the processing unit 16 is processed by the processing unit 16 and a processor selection code indicating whether the token should be processed by the integer arithmetic processor 20, the floating point arithmetic processor 21, or the numerical function arithmetic processor 22. Result token after calculation is the operation output selection circuit
Is sent from 23 to link table 12 or token output unit 17
And an output direction selection code indicating whether or not to be sent to.

データメモリ14は上記アクセスアドレスによってアク
セスされ、必要に応じて2項演算のデータの、またはメ
モリインタフェース回路に対する書込みトークン出力の
時のデータを持つトークンとアドレスを持つトークンの
待ち合わせのためのキューとして、あるいは定数演算の
ための定数などの格納のためのメモリとして用いられ、
トークン到着時にそのデータの読出し/書込みが行われ
る。
The data memory 14 is accessed by the above access address, and as a queue for waiting for the token having the address and the token having the data for the binary operation data or the write token output to the memory interface circuit, if necessary. Or used as a memory for storing constants for constant operations,
When the token arrives, the data is read / written.

バッファキュー15は、プロセッシングユニット16にト
ークンを入力する前にトークンを一時保持するためのFI
FOメモリであり、整数演算プロセッサキュー24、浮動小
数点演算プロセッサキュー25、数値関数演算プロセッサ
キュー26からなる。データメモリ14を出たトークンはそ
の持つプロセッサ選択コードに従って、そのトークンが
整数演算プロセッサ20で処理されるべきトークンである
場合には整数演算プロセッサキュー24へ、浮動小数点演
算プロセッサ21で処理されるべきトークンである場合に
は浮動小数点演算プロセッサキュー25へ、数値関数演算
プロセッサ22で処理されるべきトークンである場合には
数値関数演算プロセッサキュー26へ、それぞれ入力され
る。各キューにはそれぞれ後続するプロセッサからそれ
ぞれそのプロセッサが現在処理中でビジー状態であり次
のトークンが入れないか、あるいはビジー状態でなくそ
のクロックでバッファキュー15からのトークンを受け付
け可能であるかを示す信号が送られている。各キューの
後続するプロセッサがビジーでない場合にはそのトーク
ンは即時キューからそのプロセッサに送られ、そうでな
いときには各キューはビジーでなくなるまで出力を停止
する。
The buffer queue 15 is a FI for temporarily holding the token before inputting the token to the processing unit 16.
The FO memory is composed of an integer arithmetic processor queue 24, a floating point arithmetic processor queue 25, and a numerical function arithmetic processor queue 26. The token leaving the data memory 14 should be processed by the floating-point arithmetic processor 21 according to the processor selection code of the floating-point arithmetic processor 21 if the token is a token to be processed by the integer arithmetic processor 20. If it is a token, it is input to the floating point arithmetic processor queue 25, and if it is a token to be processed by the numerical function arithmetic processor 22, it is input to the numerical function arithmetic processor queue 26. Whether each processor is busy with the next token from the succeeding processor and the next token cannot be entered in each queue, or whether the token from the buffer queue 15 can be accepted at that clock without being busy The indicated signal is being sent. If the subsequent processor in each queue is not busy, the token is sent from the immediate queue to that processor, otherwise each queue stops outputting until it is no longer busy.

演算出力選択回路23は整数演算プロセッサ20、浮動小
数点演算プロセッサ21、数値関数演算プロセッサ22のう
ち結果出力リクエストがあったものからトークンを受け
取り、それに対してアクノレジ信号を返す。3つのうち
複数のプロセッサから同時にリクエストがあった場合に
は、 数値関数演算プロセッサ>浮動小数点演算プロセッサ>
整数演算プロセッサ の優先順位を持って受け付ける順序を決定する。トーク
ンを受け取るとそのトークンの持つ出力方向選択コード
に従って、リンクテーブル12またはトークン出力17のい
ずれかに対してそのトークンを送出する。ただしトーク
ン出力部17またはリンクテーブル12がトークン入力部11
からのトークン転送を受け付け中でビジー状態である場
合にはその送出を停止し、また整数演算プロセッサ20、
浮動小数点演算プロセッサ21、数値関数演算プロセッサ
22へのアクノレジ信号を返さない。
The arithmetic output selection circuit 23 receives a token from the integer arithmetic processor 20, the floating point arithmetic processor 21, and the numerical function arithmetic processor 22 that has issued a result output request, and returns an acknowledge signal to it. When requests are made simultaneously from multiple processors out of the three, numerical function arithmetic processor> floating point arithmetic processor>
The order of acceptance is determined by the priority of the integer arithmetic processor. When the token is received, the token is sent to either the link table 12 or the token output 17 according to the output direction selection code of the token. However, the token output unit 17 or the link table 12 is the token input unit 11
If it is in the busy state while accepting the token transfer from, the output is stopped, and the integer arithmetic processor 20,
Floating-point arithmetic processor 21, numerical function arithmetic processor
Do not return acknowledge signal to 22.

トークン出力部17は演算出力選択回路23及びトークン
入子部11からトークンを入力し、演算出力選択回路23か
らの入力の場合には、トークンを第2図における外部バ
ス5上の第3図におけるトークン形式60に変形し、外部
バス5を介して後段のデータフロープロセッサまたはメ
モリインタフェース回路に対して出力する。ただし演算
出力選択回路23またはトークン入力部11の両方から同時
にそのリクエストがあった場合には通常はトークン入力
部11からの入力を優先する。ただしどちらからのもので
あっても入力されたトークンの組織別子が“0"でない場
合には、そのトークンが複数のトークンからなる組トー
クンの最後尾以外のトークンであり、さらに連続して組
トークンの残りが入力されてくることがわかるので、そ
れらのトークンの送出元でない方に対してビジー状態で
あることを知らせ入力を停止することにより、それらの
組トークン全体を優先して連続して入力する。これによ
り組トークンの連続性が保証される。
The token output unit 17 inputs a token from the operation output selection circuit 23 and the token nesting unit 11, and in the case of an input from the operation output selection circuit 23, the token is input to the external bus 5 in FIG. It is transformed into the token format 60 and output to the data flow processor or memory interface circuit in the subsequent stage via the external bus 5. However, when there is a request from both the operation output selection circuit 23 and the token input section 11 at the same time, the input from the token input section 11 is usually given priority. However, if the organization identifier of the input token is not "0" regardless of which one, the token is a token other than the last token in the group consisting of multiple tokens, and the tokens are grouped consecutively. Since it can be seen that the rest of the tokens will be input, by notifying the non-source of those tokens that they are busy and stopping the input, priority will be given to the entire set of tokens in succession. input. This guarantees the continuity of the group token.

第2図におけるメモリインタフェース回路3はデータ
フロープロセッサ1、2からこれを行き先とするモジュ
ール番号61を持つトークン60を入力された時にその中の
リンクテーブルアドレス63、データ部64で指定される動
作を行う。例えば読出し要求トークンが与えられた時に
データ部64に含まれる値をアドレスとしてメモリ4から
読出し動作を行い読み出した値を持つトークンをリンク
テーブルアドレス63で指定されたデータフロープロセッ
サに送り出す。あるいは書込みデータを持つトークンと
書込みアドレスを持つトークンが組トークンとして与え
られた時にそれらを用いてメモリ4に対する書込み動作
を行うなどである。
When the memory interface circuit 3 in FIG. 2 receives a token 60 having a module number 61 destined for it from the data flow processors 1 and 2, the operation specified by the link table address 63 and the data section 64 therein is performed. To do. For example, when a read request token is given, a read operation is performed from the memory 4 using the value included in the data section 64 as an address, and the token having the read value is sent to the data flow processor designated by the link table address 63. Alternatively, when a token having write data and a token having a write address are given as a set token, they are used to perform a write operation to the memory 4.

以下プロセッシングユニット16を構成する整数演算プ
ロセッサ20、浮動小数点演算プロセッサ21、数値関数演
算プロセッサ22について説明する。これらはそれぞれ整
数演算プロセッサキュー24、浮動小数点演算プロセッサ
キュー25、数値関数演算プロセッサキューへ26からトー
クンを入力し、その処理コードに従って演算を実行し、
結果データを持つトークンを演算出力選択回路23へ送出
する。
Hereinafter, the integer arithmetic processor 20, the floating point arithmetic processor 21, and the numerical function arithmetic processor 22 which constitute the processing unit 16 will be described. These input tokens from the integer arithmetic processor queue 24, the floating point arithmetic processor queue 25, and the numerical function arithmetic processor queue 26, respectively, and execute arithmetic according to the processing code,
The token having the result data is sent to the operation output selection circuit 23.

整数演算プロセッサ20は主として整数データを持つト
ークンを整数演算プロセッサキュー24から入力し、それ
に対して加減算、乗算、論理演算、シフト、比較、ビッ
ト反転、プライオリティエンコーディング、数列発生、
内部レジスタの操作とそれを用いた演算などの処理を行
い、また一般に入力トークンをもとに分流、コピー、組
トークン生成などの動作を行う。より詳細には本実施例
において整数演算プロセッサ20は次のような4つの部分
からなる。
The integer arithmetic processor 20 mainly inputs a token having integer data from the integer arithmetic processor queue 24, to which addition / subtraction, multiplication, logical operation, shift, comparison, bit inversion, priority encoding, sequence generation,
It operates internal registers and processes such as operations, and generally performs operations such as shunting, copying, and group token generation based on input tokens. More specifically, in this embodiment, the integer arithmetic processor 20 is composed of the following four parts.

a)入力トークンのコピー動作を行い、1つのトークン
から複数トークン列を生成し、組トークンを生成し、あ
るいは整数データをもとに数列を生成する。
a) Copying the input tokens, generating a plurality of token sequences from one token, generating a set token, or generating a sequence of numbers based on integer data.

b)主として2項あるいは単項の算術演算、論理演算、
シフト、比較などの演算処理を内部状態を持たずに実行
する。
b) Mainly binary or unary arithmetic operations, logical operations,
Arithmetic processing such as shift and comparison is executed without having an internal state.

c)レジスタを用い、連続して流入するトークン列のデ
ータの和をとるように内部状態を持った処理を行う。
c) Using a register, a process having an internal state is performed so as to take the sum of the data of token streams that flow in continuously.

d)上記の部分の演算結果に基づいて正負などの比較判
定を行い、それに従ってトークンの持つリンクテーブル
アドレスを変更することにより分岐を実現し、あるいは
不必要なトークンを消滅させる動作を行う。
d) A branch is realized by performing a positive / negative comparison judgment based on the operation result of the above part and changing the link table address of the token accordingly, or an operation of erasing unnecessary tokens is performed.

これらの部分は整数演算プロセッサキュー24から入力
されるトークンに対してそれらの持つ処理コードに従っ
て直列にパイプライン的に動作し、結果データを持つト
ークンを生成する。整数演算プロセッサ16は結果データ
を持つトークンの出力があるときには演算出力選択回路
23に対して出力を要求し、その出力を演算出力選択回路
23が受け入れた時に次の出力動作に移る。
These parts operate serially in a pipeline manner on the token input from the integer arithmetic processor queue 24 according to the processing code that they have, and generate a token having result data. The integer arithmetic processor 16 is an arithmetic output selection circuit when a token having result data is output.
23 output request, and the output is calculated output selection circuit
When 23 is accepted, the next output operation starts.

浮動小数点演算プロセッサ21は浮動小数点フォーマッ
トのデータを持つトークンを扱うための専用ハードウェ
アを持ち、浮動小数点演算プロセッサキュー25から与え
られるトークンのデータについて浮動小数点データ同士
の加算、乗算、また浮動小数点データからの整数データ
への及びその逆のデータ型変換を行う。浮動小数点演算
プロセッサ21は結果データを持つトークンの出力がある
ときには演算出力選択回路23に対して出力リクエストを
発し、其に対して演算出力選択回路23からアクノレジが
返された時に次の出力動作に移る。
The floating-point processor 21 has dedicated hardware for handling tokens that have floating-point format data, and the token data given from the floating-point processor queue 25 adds, multiplies, or floats floating-point data. Performs data type conversion from to integer data and vice versa. The floating-point arithmetic processor 21 issues an output request to the arithmetic output selection circuit 23 when there is an output of the token having the result data, and when the arithmetic output selection circuit 23 responds with an acknowledge, the next output operation is performed. Move.

例えば浮動小数点演算プロセッサ21で2つの浮動小数
点データの加算を行うためには、それを構成する指数部
データ同士の比較と減算を行い、小さい方に対応する仮
数部データにその差分だけシフトを行い、シフト後の仮
数部データ同士を加算し、得られた和が正規化されるよ
うに仮数部和のシフトを行い、指数部からそのシフト数
を減ずる、という複雑でステップ数のかかる処理を行う
必要がある。浮動小数点演算プロセッサ22ではこのよう
な複雑な処理に必要なハードウェアを時間順で分割し、
各々が連続して入力されるデータに対してパイプライン
的に動作できるように設計してあり、これにより浮動小
数点演算プロセッサ22は長いステップ数がかかる複雑な
処理を行ってもスループットを上げることができ、処理
性能を高く保つことが可能となっている。
For example, in order to add two floating-point data in the floating-point arithmetic processor 21, the exponent part data constituting them are compared and subtracted, and the mantissa part data corresponding to the smaller one is shifted by the difference. , The mantissa data after the shift are added together, the mantissa sum is shifted so that the obtained sum is normalized, and the shift number is subtracted from the exponent part, thereby performing a complicated and step-intensive process. There is a need. The floating-point arithmetic processor 22 divides the hardware necessary for such complicated processing in time order,
Each of them is designed to be able to operate in a pipeline manner with respect to continuously input data, which allows the floating-point arithmetic processor 22 to increase throughput even when performing complicated processing that requires a long number of steps. It is possible to maintain high processing performance.

数値関数演算プロセッサ22は数値関数演算プロセッサ
キュー26からデータ値とそれに対する処理コードが持つ
トークンが与えられた時にそのコードに従って関数演算
を行い、結果データを持つトークンを演算出力選択回路
23に出力する。実行する演算としては除算、平方根計
算、指数・対数関数、三角・双曲線関数あるいはその逆
関数のような初等超越関数の演算があり、また数値関数
演算プロセッサ22はそれらの関数計算を非線形方程式の
解を反復収束演算により求めるニュートン=ラフソン法
によって行う。数値関数演算プロセッサ22はこの方法の
1回の反復単位計算を行う演算ハードウェアと反復終了
条件の判定を行うハードウェアとを持ち、数値関数演算
プロセッサキュー26から入力トークンが与えられると適
当な初期値を演算ハードウェア内のレジスタに設定し、
収束により上記反復終了条件が成立するまで反復して上
記単位処理を行う。この終了までの間は数値関数演算プ
ロセッサ22はビジー状態となっており、数値関数演算プ
ロセッサキュー26に対してビジー信号を出すことにより
次のトークンの入力を停止させる。反復終了条件成立時
には結果データを用いてトークンを生成すると共に、演
算出力選択回路23に対して出力リクエストを出し、結果
トークンを送出する。これに対して演算出力選択回路23
からのアクノレジが返された時に数値関数演算プロセッ
サ22は1つのデータに対する処理を完了し、数値関数演
算プロセッサキュー26に対するビジー信号を解除するこ
とによりその先頭トークンを受け付け、新たな反復演算
処理動作を開始する。
When the numerical function arithmetic processor 22 receives a token having a data value and a processing code corresponding to the data value from the numerical function arithmetic processor queue 26, the numerical function arithmetic processor 22 performs a functional operation according to the code and outputs a token having result data to an arithmetic output selection circuit.
Output to 23. The operations to be performed include operations of elementary transcendental functions such as division, square root calculation, exponential / logarithmic function, trigonometric / hyperbolic function or the inverse function thereof. Is performed by the Newton-Raphson method which is obtained by iterative convergence calculation. The numerical function arithmetic processor 22 has arithmetic hardware for performing one iterative unit calculation of this method and hardware for judging the iteration end condition, and when an input token is given from the numerical function arithmetic processor queue 26, an appropriate initial value is given. Set the value to a register in the arithmetic hardware,
The unit processing is repeatedly performed until the iterative termination condition is satisfied by convergence. Until this end, the numerical function arithmetic processor 22 is in a busy state, and by issuing a busy signal to the numerical function arithmetic processor queue 26, the input of the next token is stopped. When the repetition end condition is satisfied, the result data is used to generate a token, an output request is issued to the operation output selection circuit 23, and the result token is transmitted. On the other hand, the calculation output selection circuit 23
When the acknowledge is returned from, the numerical function processor 22 completes the processing for one data, cancels the busy signal to the numerical function processor queue 26, and accepts its head token to start a new iterative processing operation. Start.

なお本実施例においては反復演算としてニュートン=
ラフソン法を用いているが、これは必要な初等超越関数
の計算を完了できる方法ならば他の方法、例えばテイラ
ー展開法によることも可能である。
In this embodiment, Newton =
Although the Rafson method is used, this can be another method as long as the necessary calculation of the elementary transcendental function can be completed, for example, the Taylor expansion method.

本発明においては、上で説明したように反復計算によ
って占有される関数演算のためにハードウェア資源であ
る数値関数演算プロセッサを、他の整数演算プロセッ
サ、浮動小数点演算プロセッサと並列に配置し、各々が
独立に動作することが可能になっており、さらにそれぞ
れに入力されるべきトークンを異なったバッファキュー
に保持するようにしている。これによりたとえ反復計算
によって数値関数演算プロセッサが占有されていても、
他の整数演算プロセッサと浮動小数点演算プロセッサは
対応するバッファキューからトークンを入力し並列して
処理を続行することが可能となっている。
In the present invention, as described above, the numerical function arithmetic processor which is a hardware resource for the function arithmetic occupied by the iterative calculation is arranged in parallel with another integer arithmetic processor and a floating point arithmetic processor, It is possible to operate independently, and the tokens to be input to each are held in different buffer queues. This makes it possible for the iterative computation to occupy a numeric function processor,
Other integer arithmetic processors and floating point arithmetic processors can input tokens from corresponding buffer queues and continue processing in parallel.

(発明の効果) 以上説明したように本発明によれば、 ・数値関数演算プロセッサを整数演算プロセッサ、浮動
小数点演算プロセッサと並列に配置しそれらと独立、並
列に動作させることにより、可変時間がかかる反復演算
処理の間数値関数演算プロセッサがそのトークンの処理
により占有されてもその間他の整数演算プロセッサ、浮
動小数点演算プロセッサは動作することが可能であり、
並列処理により処理性能向上が図れる。
(Effects of the Invention) As described above, according to the present invention, it takes a variable time by arranging a numerical function arithmetic processor in parallel with an integer arithmetic processor and a floating point arithmetic processor and operating them independently and in parallel. Even if the numerical function arithmetic processor is occupied by the processing of the token during the repetitive arithmetic processing, the other integer arithmetic processors and floating point arithmetic processors can operate during that time.
Processing performance can be improved by parallel processing.

・トークンがプロセッシングユニットに入力される前に
一時保持されるバッファキューも、プロセッシングユニ
ットを構成する整数演算プロセッサ、浮動小数点演算プ
ロセッサ、数値関数演算プロセッサ用に分かれて用意さ
れ分離されて保持されるため、たとえあるプロセッサが
ビジーであり、それにトークンを供給するバッファキュ
ーの出力が停止させられていても、他のプロセッサに対
しては処理されるべきトークンが次々に供給され、休む
ことなく演算動作を続けることができ、効率的な処理が
可能である。
・ Because the buffer queue that is temporarily held before the token is input to the processing unit is also prepared separately for the integer arithmetic processor, floating point arithmetic processor, and numerical function arithmetic processor that make up the processing unit, and is retained separately. , Even if one processor is busy and the output of the buffer queue that supplies tokens to it is stopped, tokens to be processed are supplied to other processors one after another, and arithmetic operations are performed without interruption. It can be continued and efficient processing is possible.

・大きなハードウェアを必要とし本来ならば長い処理時
間がかかる浮動小数点の加減乗算に対し専用ハードウェ
アを用意し、しかもそれをパイプライン的に動作する複
数ステップに分割して構成している。これにより浮動小
数点計算のスループットを向上させ、つまり実効的な演
算時間を短縮することができ、さらにプロセッシングユ
ニット部、さらにはデータフロープロセッサ全体の動作
パイプラインサイクルを短縮することが可能になること
により処理性能が向上される。
-Floating-point addition / subtraction multiplication, which requires a large amount of hardware and would otherwise take a long time, is provided with dedicated hardware and is configured by dividing it into multiple steps that operate in a pipeline. As a result, the throughput of floating-point calculation can be improved, that is, the effective calculation time can be shortened, and further, the processing pipeline unit and the operation pipeline cycle of the entire data flow processor can be shortened. Processing performance is improved.

という効果があり、これにより処理の高速化を図ること
ができる。
This has the effect of increasing the processing speed.

特に始めの2点については、本発明において実現され
ているような、プログラム中のある箇所の実行に時間が
かかり、そこがゆっくりにしか処理が進まなくても、そ
ことは関係のない他の部分についての処理を平行して進
められるという本発明において実現されているデータ処
理方式は、演算の実行順序がデータの依存関係から生ず
るデータ駆動方式によって実行時に決定されるデータフ
ロープロセッサの特性を生かしており、本発明で高い処
理性能を達成できる大きな理由となっている。また本発
明におけるもののような処理時間の長さが異なるプロセ
ッサや、処理時間が可変であるようなプロセッサの並列
動作は、本装置がデータフロー方式の動作モデルに基づ
いていることにより比較的容易に可能となっている。
Especially for the first two points, it takes time to execute a certain part in the program as realized in the present invention, and even if the process proceeds only slowly, there are other unrelated items. The data processing method realized in the present invention in which the processing of the parts can proceed in parallel makes use of the characteristic of the data flow processor, which is determined at the time of execution by the data driven method in which the execution order of the operations is caused by the data dependency. This is a major reason why the present invention can achieve high processing performance. In addition, parallel operation of processors having different processing times such as those in the present invention or processors having variable processing times is relatively easy because the present device is based on the operation model of the data flow method. It is possible.

【図面の簡単な説明】[Brief description of drawings]

第1図は本発明のデータフロープロセッサの構成図、第
2図はデータフロープロセッサを用いた処理装置の例を
示す全体構成図、第3図は本発明の説明に供するトーク
ンの形式を示す図、第4図は従来のデータフロープロセ
ッサの構成を示す図である。 図において、 11……トークン入力部、12……リンクテーブル、13……
ファンクションテーブル、14……データメモリ、17……
トークン出力部、24,25,26……キューメモリ、20,21,22
……プロセッサ、23……演算出力選択回路。
FIG. 1 is a configuration diagram of a data flow processor of the present invention, FIG. 2 is an overall configuration diagram showing an example of a processing device using the data flow processor, and FIG. 3 is a diagram showing a format of a token used for explaining the present invention. , FIG. 4 is a diagram showing a configuration of a conventional data flow processor. In the figure, 11 …… Token input section, 12 …… Link table, 13 ……
Function table, 14 …… Data memory, 17 ……
Token output part, 24,25,26 …… Queue memory, 20,21,22
...... Processor, 23 …… Calculation output selection circuit.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】データの単位であるトークンを内部のリン
グ状のバスに流すことにより処理を行うデータフロープ
ロセッサであって、前記のリング状バスを構成するよう
に順に接続された、トークンの行き先アドレスを貯えて
おくリンクテーブル、命令コードを貯えておくファンク
ションテーブル、演算に用いるオペランドデータを一時
貯えるデータメモリ、トークンを一時保持するバッファ
キュー、トークンに対するデータ処理を行うプロセッシ
ングユニット、前記プロセッシングユニットからの結果
出力を制御する演算出力選択回路を持ち、さらにプロセ
ッシングユニットからトークンを外部バスへ送出するト
ークン出力部と外部バスからトークンを入力してリンク
テーブルまたは前記トークン出力部へ送出するトークン
入力部とを持つことにより構成され、特に前記プロセッ
シングユニットは並列に配置された、主として整数デー
タの演算を行う整数演算プロセッサと、浮動小数点デー
タの演算を行う浮動小数点演算プロセッサと、超越関数
の計算を行う数値関数演算プロセッサとからなり、また
前記バッファキューは上記プロセッシングユニットの各
プロセッサに入力するトークンを保持するために並列に
配置された整数演算プロセッサキュー、整数演算プロセ
ッサキュー、数値関数演算プロセッサキューからなるこ
とを特徴とするデータフロープロセッサ。
1. A data flow processor for performing processing by flowing a token, which is a unit of data, to an internal ring-shaped bus, and destinations of the tokens connected in sequence so as to form the ring-shaped bus. A link table for storing addresses, a function table for storing instruction codes, a data memory for temporarily storing operand data used for operations, a buffer queue for temporarily holding tokens, a processing unit for processing data on tokens, and a processing unit from the processing unit. It has a calculation output selection circuit for controlling the result output, and further has a token output section for sending a token from the processing unit to the external bus and a token input section for inputting the token from the external bus and sending it to the link table or the token output section. Have In particular, the processing unit is arranged in parallel, and an integer arithmetic processor that mainly performs integer data arithmetic, a floating point arithmetic processor that performs floating point data arithmetic, and a numerical function arithmetic processor that performs transcendental function arithmetic. And the buffer queue comprises an integer arithmetic processor queue, an integer arithmetic processor queue, and a numerical function arithmetic processor queue arranged in parallel to hold a token to be input to each processor of the processing unit. Data Flow Processor to do.
JP62185829A 1987-07-24 1987-07-24 Data Flow Processor Expired - Lifetime JP2518293B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62185829A JP2518293B2 (en) 1987-07-24 1987-07-24 Data Flow Processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62185829A JP2518293B2 (en) 1987-07-24 1987-07-24 Data Flow Processor

Publications (2)

Publication Number Publication Date
JPS6429938A JPS6429938A (en) 1989-01-31
JP2518293B2 true JP2518293B2 (en) 1996-07-24

Family

ID=16177602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62185829A Expired - Lifetime JP2518293B2 (en) 1987-07-24 1987-07-24 Data Flow Processor

Country Status (1)

Country Link
JP (1) JP2518293B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010100970A1 (en) 2009-03-03 2010-09-10 Canon Kabushiki Kaisha Data processing apparatus, method for controlling data processing apparatus, and program
US8811418B2 (en) 2010-08-18 2014-08-19 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
US8948542B2 (en) 2010-06-25 2015-02-03 Canon Kabushiki Kaisha Image processing apparatus
US9152605B2 (en) 2009-06-08 2015-10-06 Canon Kabushiki Kaisha Apparatus, method, and computer-readable storage medium for data processing in a ring bus
US9239811B2 (en) 2009-07-14 2016-01-19 Canon Kabushiki Kaisha Data processing apparatus and data processing method

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2542922B2 (en) * 1989-03-14 1996-10-09 三洋電機株式会社 Data drive type data processor
JPH0751523Y2 (en) * 1990-03-26 1995-11-22 コウノ工業株式会社 Structure fitting
CA2043505A1 (en) * 1990-06-06 1991-12-07 Steven K. Heller Massively parallel processor including queue-based message delivery system
IL97894A0 (en) * 1991-04-17 1992-06-21 Ibm Multi-processor computer system
JPH05225362A (en) * 1992-02-17 1993-09-03 Sharp Corp Data flow type information processor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
「bit」Vol.12,No.4p.624(1980−03)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010100970A1 (en) 2009-03-03 2010-09-10 Canon Kabushiki Kaisha Data processing apparatus, method for controlling data processing apparatus, and program
US9021126B2 (en) 2009-03-03 2015-04-28 Canon Kabushiki Kaisha Data processing apparatus and method for controlling data processing apparatus
US10148455B2 (en) 2009-03-03 2018-12-04 Canon Kabushiki Kaisha Data processing apparatus, method for controlling data processing apparatus, and program
US9152605B2 (en) 2009-06-08 2015-10-06 Canon Kabushiki Kaisha Apparatus, method, and computer-readable storage medium for data processing in a ring bus
US9239811B2 (en) 2009-07-14 2016-01-19 Canon Kabushiki Kaisha Data processing apparatus and data processing method
US8948542B2 (en) 2010-06-25 2015-02-03 Canon Kabushiki Kaisha Image processing apparatus
US9824415B2 (en) 2010-06-25 2017-11-21 Canon Kabushiki Kaisha Image processing apparatus
US8811418B2 (en) 2010-08-18 2014-08-19 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium

Also Published As

Publication number Publication date
JPS6429938A (en) 1989-01-31

Similar Documents

Publication Publication Date Title
US5226171A (en) Parallel vector processing system for individual and broadcast distribution of operands and control information
US5081573A (en) Parallel processing system
US5261113A (en) Apparatus and method for single operand register array for vector and scalar data processing operations
US5068819A (en) Floating point apparatus with concurrent input/output operations
US4228498A (en) Multibus processor for increasing execution speed using a pipeline effect
EP0211614A2 (en) Loop control mechanism for a scientific processor
EP0053457A1 (en) Data processing apparatus
EP0127508A2 (en) Full floating point vector processor
JP2518293B2 (en) Data Flow Processor
EP0295646B1 (en) Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus
JPS59128670A (en) Vector processor
JPH01309178A (en) Processor switching system for multi-processor
JPH07244589A (en) Computer system and method to solve predicate and boolean expression
JPH0752390B2 (en) Instruction processor
JP2503984B2 (en) Information processing device
JP3278441B2 (en) Vector processing equipment
JP2654451B2 (en) Data output method
JPH0616287B2 (en) Vector arithmetic processor with mask
JP2003244190A (en) Processor for data flow control switch and data flow control switch
JPS58158745A (en) Pipeline control type information processing device
JPH0648499B2 (en) Processing unit
JPH0646412B2 (en) Data Flow Processor
JP2920968B2 (en) Instruction processing order control method
JPH0644270B2 (en) Vector processor control processing method
JP2503983B2 (en) Information processing device