JPS61262934A - Data processor and data transmission line - Google Patents

Data processor and data transmission line

Info

Publication number
JPS61262934A
JPS61262934A JP10627285A JP10627285A JPS61262934A JP S61262934 A JPS61262934 A JP S61262934A JP 10627285 A JP10627285 A JP 10627285A JP 10627285 A JP10627285 A JP 10627285A JP S61262934 A JPS61262934 A JP S61262934A
Authority
JP
Japan
Prior art keywords
data
processing
register
stage
signal
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
JP10627285A
Other languages
Japanese (ja)
Other versions
JPH0533430B2 (en
Inventor
Hironori Terada
浩詔 寺田
Katsuhiko Asada
勝彦 浅田
Hiroaki Nishikawa
博昭 西川
Soichi Miyata
宗一 宮田
Satoshi Matsumoto
敏 松本
Hajime Asano
浅野 一
Masahisa Shimizu
清水 雅久
Hiroki Miura
三浦 宏喜
Kenji Shima
憲司 嶋
Nobufumi Komori
伸史 小守
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.)
Mitsubishi Electric Corp
Sharp Corp
Sanyo Electric Co Ltd
Panasonic Holdings Corp
Original Assignee
Mitsubishi Electric Corp
Sharp Corp
Sanyo Electric Co Ltd
Matsushita Electric Industrial 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 Mitsubishi Electric Corp, Sharp Corp, Sanyo Electric Co Ltd, Matsushita Electric Industrial Co Ltd filed Critical Mitsubishi Electric Corp
Priority to JP10627285A priority Critical patent/JPS61262934A/en
Priority to US06/863,979 priority patent/US4907187A/en
Publication of JPS61262934A publication Critical patent/JPS61262934A/en
Publication of JPH0533430B2 publication Critical patent/JPH0533430B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To attain smoothly data processing by supplying data automatically from a data processor when a register at the preceding stage is idle and constituting an asynchronous data processor. CONSTITUTION:The data are outputted from a parallel data buffer B1 and the buffer B1 is going to be idle. This fact is detected by the corresponding C element C1 and delivers a signal AKO in the form of a high place. Thus the signal AKO is supplied to the C element C2 at the next stag in the form of a high-order signal AKI. Here a signal TRO obtained from a signal C2 obtained from the corresponding element C2 is set at a high-order. Then the signal TRO is supplied to the element C1 at the preceding stage via a data processor 54 in the form of a signal TRI of a high-order in case data exist at a parallel data buffer B2 at the next stage. Here the signal TRO of a high place is also applied to the buffer B2 as a transfer command signal. Thus a data packet loaded in the buffer B2 is outputted to the buffer B1.

Description

【発明の詳細な説明】 (産業上の利用分野) この発明はデータ処理装置に関し、特にデータ駆動形の
データ処理装置に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a data processing device, and particularly to a data-driven data processing device.

(従来技術) ノイマン形データ処理装置では、逐次処理のために、速
度が遅く、しかも並列処理が困難である゛  などの欠
点があった。そこで、最近では、データ駆動形(データ
フロー形)データ処理装置が提案されかつ実現されてい
る。このようなデータ駆動形のデータ処理装置の一例が
、たとえば、昭和59年4月9日付で発行された日経エ
レク1−ロニクス第181頁から第218頁に開示され
ている。
(Prior Art) Neumann type data processing devices have drawbacks such as slow speed and difficulty in parallel processing due to sequential processing. Therefore, recently, data driven type (data flow type) data processing apparatuses have been proposed and implemented. An example of such a data-driven data processing device is disclosed, for example, in Nikkei Electronics, published on April 9, 1980, pages 181 to 218.

従来のデータ駆動形データ処理装置においては、FIF
Oノモリを用い、そのFTF○メモリから同期式パスを
通して、処理ユニットにデータを転送している。
In conventional data-driven data processing devices, FIF
Data is transferred from the FTF memory to the processing unit through a synchronous path.

(発明が解決しようとする問題点) データ駆動形の処理装置においては、発火したものから
処理するために、処理の流れが均一にならない。そこで
、従来は、上述のように複数の緩衝記憶(FTFOメそ
り)や処理要素を同期式のハスで接続するようにしてい
た。
(Problems to be Solved by the Invention) In a data-driven processing device, the processing flow is not uniform because the processing starts from the one that is fired. Therefore, conventionally, as described above, a plurality of buffer memories (FTFO memory) and processing elements were connected using a synchronous lotus.

このような従来のデータ処理装置では、FTF○メモリ
の容量は発火の速さや時期に大きく左右されるため、全
(スムーズに処理できるようにするためのこのFIFO
メモリの容量の設計ないし選択が非常に困難である。し
たがって、現実的には、適当に設計しておき、FIFO
メそりがいっばいになれば処理を停止するなどしている
In such conventional data processing devices, the capacity of the FTF○ memory is greatly affected by the speed and timing of firing, so all (this FIFO to ensure smooth processing)
Designing or selecting memory capacity is extremely difficult. Therefore, in reality, it is necessary to design the FIFO appropriately.
Processing is stopped when the amount of data becomes too large.

一方、このような事態を回避するためには、特殊なオー
バフロー処理機構を採用して、入力の続行、停止を各部
分毎に制御すればよい。しかしながら、そのような処理
機構はハード的に複雑になってしまう。
On the other hand, in order to avoid such a situation, a special overflow processing mechanism may be employed to control continuation and stop of input for each part. However, such a processing mechanism becomes complicated in terms of hardware.

それゆえに、この発明の主たる目的は、データ処理をス
ムーズに行なえる、データ駆動形のデータ処理装置を提
供することである。
Therefore, the main object of the present invention is to provide a data-driven data processing device that can perform data processing smoothly.

(問題点を解決するための手段) 第1の発明は、簡単にいえば、前段および後段のレジス
タ、前段および後段のレジスタ間に配置され、後段から
のデータを受けてそれを処理してその結果を前段のレジ
スタに与えるデータ処理手段、前段のレジスタの空きを
検出するための空き検出手段、空き検゛出手段によって
前段のレジスタの空きが検出されたことに応じて、後段
のレジスタから出力されてデータ処理手段を経たデータ
を前段のレジスタへ転送するための手段、および前段の
レジスタの内容に応じてデータ処理手段に対して処理の
種類を指示するための指示手段を備える、データ処理装
置である。
(Means for Solving the Problems) To put it simply, the first invention is arranged between the registers in the former stage and the latter stage, and the registers in the former stage and the latter stage, and receives data from the latter stage and processes it. Data processing means for giving the result to the register in the previous stage, empty detection means for detecting the empty space in the register in the previous stage, and output from the register in the latter stage in response to the empty space in the register in the previous stage being detected by the empty detection means. a data processing device, comprising: means for transferring the data that has been processed and passed through the data processing means to a register at the previous stage; and an instruction means for instructing the data processing means on the type of processing according to the contents of the register at the previous stage. It is.

第2の発明は、データのプッシュインとポンプアウトと
を独立的かつ同時的に行なうことができ、さらにプッシ
ュインされたデータが前段のレジスタの空きを条件とし
て自動的に前段のレジスタにシフトされる、自走式シフ
トレジスタを用いて構成されるデータ伝送路のレジスタ
間にデータ処理手段を配置した、データ伝送路である。
In the second invention, push-in and pump-out of data can be performed independently and simultaneously, and the pushed-in data is automatically shifted to a register in the previous stage on the condition that the register in the previous stage is free. This is a data transmission path in which data processing means is arranged between the registers of the data transmission path constructed using self-propelled shift registers.

(作用) 前段のレジスタからデータがさらに前段のレジスタに転
送される。このとき、このデータに含まれるたとえば処
理コードが指示手段に入力される。
(Operation) Data is transferred from the previous register to the further previous register. At this time, for example, a processing code included in this data is input to the instruction means.

指示手段ではその内容に応じて、データ処理手段におけ
る処理の種類もしくは処理の種類の系列を生成し、それ
をデータ処理手段に与える。このとき後段のレジスタの
データはデータ処理手段に与えられ、指示手段からの指
示に応じた処理が実行される。一方、空き検出手段が前
段のレジスタの空きを検出すると、転送手段がデータ処
理手段を経たデータを前段のレジスタへ与える。
The instruction means generates a type of processing or a series of types of processing in the data processing means according to the content, and provides it to the data processing means. At this time, the data in the register at the subsequent stage is given to the data processing means, and processing according to the instruction from the instruction means is executed. On the other hand, when the vacancy detection means detects vacancy in the register at the previous stage, the transfer means provides the data that has passed through the data processing means to the register at the previous stage.

(発明の効果) この発明によれば、前段のレジスタが空き状態であれば
自動的にデータ処理手段からデータが与えられるため、
非同期式のデータ処理装置として構成することができる
。したがって、処理手段における処理の頻度に応じて、
特別に緩衝制御などを設けることなく、スムーズに処理
を実行するごとができる。また、この発明によれば、レ
ジスタ間にデータ処理手段を配置するだけでよく、繰り
返しのデータ処理などが効率よく行なえ、そしてその設
計もまた極めて簡単である。
(Effects of the Invention) According to the present invention, if the register at the previous stage is empty, data is automatically given from the data processing means.
It can be configured as an asynchronous data processing device. Therefore, depending on the frequency of processing in the processing means,
Processing can be executed smoothly without the need for special buffer control. Further, according to the present invention, it is only necessary to arrange the data processing means between the registers, and repeated data processing can be performed efficiently, and its design is also extremely simple.

この発明の上述の目的、その他の目的、特徴および利点
は、図面を参照して行なう以下の実施例の詳細な説明か
ら一層明らかとなろう。
The above objects, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.

(実施例) 第1図はこの発明が実施され得るデータ処理装置の一例
としての並列処理形エミュレータの一例を示すシステム
概念図である。システム10は、データ伝送路として非
同期遅延線リング12を含み、この非同期遅延線リング
12には、合流部14を通して処理すべきデータパケッ
トが与えられるとともに、その処理されたデータは分岐
部16を通して出力される。合流部14から与えられた
データパケットは、非同期遅延線リング12を通って、
分岐部18によって分岐されて、機能記憶部20に与え
られる。機能記憶部20から読み出されたデータは、合
流部22を通して再び非同期遅延線リング12に与えら
れる。
(Embodiment) FIG. 1 is a conceptual system diagram showing an example of a parallel processing type emulator as an example of a data processing device in which the present invention can be implemented. The system 10 includes an asynchronous delay line ring 12 as a data transmission path, a data packet to be processed is given to the asynchronous delay line ring 12 through a merging section 14, and the processed data is outputted through a branching section 16. be done. The data packet given from the merging section 14 passes through the asynchronous delay line ring 12,
It is branched by the branching section 18 and provided to the function storage section 20 . The data read from the function storage section 20 is given to the asynchronous delay line ring 12 again through the merging section 22.

機能記憶部20から与えられたデータパケットは、たと
えば第2図に示すように、ヘッダHDとそれに後続する
複数のデータワードDW、−DWnを含む。ヘッダHD
は、処理コードPCおよび制御コードCCを含み、この
処理コードPCには、パケット構造を示すコードと処理
内容を示すコードとが含まれる。パケット構造を示すコ
ードとしては、たとえばヘッダであることや最後のデー
タワードであることなどを示す順番コードがたとえば第
17番目および第16番目の2ビツトで与えられる。処
理内容を示すコードは、特にFコードと呼ばれ、たとえ
ばr+J、r−J、  ・・・またはデータの置換ある
いは挿入など、処理の種類を特定するために用いられる
。制御コードCCには、プログラム構造に起因するノー
ド情報すなわち物理的な行先情報やカラー情報など論理
的な情報が含まれる。
The data packet given from the function storage unit 20 includes a header HD and a plurality of data words DW, -DWn following it, as shown in FIG. 2, for example. header hd
includes a processing code PC and a control code CC, and this processing code PC includes a code indicating a packet structure and a code indicating processing contents. As a code indicating the packet structure, an order code indicating that it is a header or the last data word is given, for example, by the 17th and 16th two bits. A code indicating the processing content is particularly called an F code, and is used to specify the type of processing, such as r+J, r-J, . . . or data replacement or insertion. The control code CC includes node information resulting from the program structure, that is, logical information such as physical destination information and color information.

非同期遅延線リング12によって伝送される上述のよう
なデータパケットは、分岐部24および合流部26を通
して、発火部27を構成する第1のループ状のデータ伝
送路28に与えられる。異なるデータパケットが、異な
る分岐部30および合流部32を通して、発火部27を
構成する第2のループ状のデータ伝送路34に取り込ま
れる。
The data packets as described above transmitted by the asynchronous delay line ring 12 are provided to a first loop-shaped data transmission path 28 forming a firing section 27 through a branching section 24 and a merging section 26 . Different data packets are taken into a second loop-shaped data transmission path 34 forming the firing section 27 through different branching sections 30 and merging sections 32 .

第1および第2のループ状のデータ伝送路28および3
4に与えられたデータパケットは、それぞれのループを
互いに逆方向に伝送され、これら伝送路とともに発火部
27を構成する発火検出部36に与えられる。発火検出
部36では、2つのデータパケットの間でそれぞれのデ
ータパケット中に含まれる制御コードの比較を行なうこ
とによって、第1のループ状のデータ伝送路2日上に存
在するデータパケットと第2のループ状のデータ伝送路
34上に存在するデータパケットとが対をなすか否かを
判定し、データパケット対として検出された特定のデー
タパケットに基づいて1つの新しいデータパケットを生
成する。このようにして生成された新しいデータパケッ
トは、たとえば第1のループ状のデータ伝送路28上に
置かれ、分岐部38および合流部40を通して再び非同
期遅延線リング12上にもたらされる。
First and second loop-shaped data transmission lines 28 and 3
The data packets given to No. 4 are transmitted through the respective loops in opposite directions, and are given to the firing detecting section 36 which constitutes the firing section 27 together with these transmission paths. The firing detection unit 36 compares the control codes included in each data packet between the two data packets, thereby distinguishing between the data packet existing two days above the first loop-shaped data transmission path and the second data packet. A new data packet is generated based on the specific data packet detected as a data packet pair. The new data packet generated in this manner is placed, for example, on the first loop-shaped data transmission path 28 and is brought onto the asynchronous delay line ring 12 again through the branching section 38 and the merging section 40.

非同期遅延線リング12上を転送される新しいデータパ
ケットは、たとえば分岐部42を通して演算処理部44
に与えられ、そこでそのデータパケットのヘッダに含ま
れる処理コードに従ってそのデータパケットに含まれヘ
ッダに後続する単一または複数の処理対象データを処理
する。この演算処理部44によって処理されたデータが
、合流部46を通して再び非同期遅延線リング12に合
流される。この処理結果は、再び機能記憶部2゜に与え
られるか、あるいは分岐部16を通して出力されるので
ある。
A new data packet transferred on the asynchronous delay line ring 12 is transferred to the arithmetic processing unit 44 through the branching unit 42, for example.
and then processes the single or multiple pieces of processing target data included in the data packet and following the header according to the processing code included in the header of the data packet. The data processed by the arithmetic processing unit 44 is merged into the asynchronous delay line ring 12 again through the merge unit 46. This processing result is given again to the function storage section 2° or outputted through the branching section 16.

なお、システム10には、さらに、制御コード処理部4
8およびカラー管理部5oが設けられる。
Note that the system 10 further includes a control code processing section 4.
8 and a color management section 5o are provided.

この発明は第1図に示すシステム1oにおける演算処理
部44に適用され得る。しかしながら、このような演算
処理部44は、主データ伝送路12に対して並列的では
なく、第1図において点線で示すように、そのデータ伝
送路12」二に直列的に介挿されてもよい。
The present invention can be applied to the arithmetic processing section 44 in the system 1o shown in FIG. However, such an arithmetic processing unit 44 is not inserted in parallel with the main data transmission path 12, but is inserted in series with the data transmission path 12, as shown by the dotted line in FIG. good.

第3図はこの発明の一実施例を示す概略ブロック図であ
る。演算処理部44は、多段接続された並列データバッ
フ7BO,Bll  B2.B3.  ・・・およびそ
れらのそれぞれに関連して設けられるC要素(Coin
cident Element) Co 、 C,、C
2、C3,・・・を含む。これら並列データハソファB
。−B3およびC要素C3−C3は、協働して、非同期
自走式シフトレジスタを構成する。
FIG. 3 is a schematic block diagram showing one embodiment of the present invention. The arithmetic processing unit 44 includes parallel data buffers 7BO, Bll B2 . B3. ...and C elements (Coin) provided in relation to each of them.
incident Element) Co, C,,C
2, C3,... These parallel data hash sofa B
. -B3 and C elements C3-C3 together constitute an asynchronous free-running shift register.

この非同期自走式シフトレジスタとは、データのプッシ
ュインとポツプアウトとを独立的かつ同時的に行なうこ
とができ、さらにプッシュインされたデータが前段のレ
ジスタないし並列データバッファが空いていることを条
件として、シフトクロックを用いずに、自動的に転送さ
れるようなシフトレジスタをいう。このような非同期自
走式シフトレジスタは、主データ伝送路12およびルー
プ状の第1および第2のデータ伝送路28および34と
しても用いられ得る。
This asynchronous free-running shift register is capable of independently and simultaneously pushing in and popping out data, and furthermore, the push-in data must be available on the condition that the previous stage register or parallel data buffer is empty. A shift register that automatically transfers data without using a shift clock. Such an asynchronous self-propelled shift register can also be used as the main data transmission line 12 and the looped first and second data transmission lines 28 and 34.

ここで、第4図および第5図を参照して、非同期自走式
シフトレジスタを構成するC要素について説明する。C
要素Cは、6つの端子T、〜T6を含み、端子T、には
後段のC要素からの信号TRI  (Transfer
 In )が与えられ、端子T2からは後段のC要素に
対して信号A K O(Acknowledge Ou
t )が出力される。端子T3からは前段のC要素に対
して信号T P O(Transfer 0ut)が出
力され、端子T4からば前段のC要素からの信号AK 
I  (Acknowledge In)が与えられる
。信号TROは、さらに、その対応する並列データバッ
ファに転送指令信号として与えられる。そして、信号A
KIは、前段の並列データハソファの空き信号として与
えられる。
Here, with reference to FIGS. 4 and 5, the C element constituting the asynchronous self-propelled shift register will be described. C
Element C includes six terminals T, ~T6, and terminal T receives a signal TRI (Transfer
In ) is given, and from terminal T2, a signal A KO (Acknowledge Ou
t) is output. A signal TPO (Transfer 0ut) is output from the terminal T3 to the C element in the previous stage, and a signal AK from the C element in the previous stage is output from the terminal T4.
I (Acknowledgement In) is given. Signal TRO is further given to its corresponding parallel data buffer as a transfer command signal. And signal A
KI is given as an empty signal of the preceding stage parallel data processor.

なお、端子T5にはリセット信号RESETが与えられ
、端子T6には停止信号5TOPが与えられる。
Note that a reset signal RESET is applied to the terminal T5, and a stop signal 5TOP is applied to the terminal T6.

第4図の回路において、端子T5からリセット信号RE
SETが与えられると、それがインバータによって反転
され、この信号が与えられる4つのナントゲートc、 
、C4,c、lおよびG、4の出力がともにハイレベル
になる。ナントゲートG、、G4およびGl 1 、 
Gl 4の出力がハイレベルであり、したがってそれを
受けるナンドケー)G3およびG13の出力がともにロ
ーレベルとなる。ナントゲートG4のハイレベルの出力
が信号AKOとなり、端子T2から後段のC要素への信
号AKIとして与えられる。これが前段の並列データム
・7フアの空きの状態を表わす信号である。
In the circuit shown in FIG. 4, the reset signal RE is sent from the terminal T5.
When SET is given, it is inverted by an inverter and this signal is given to four Nant gates c,
, C4,c,l and G,4 both become high level. Nant Gate G, , G4 and Gl 1 ,
The output of Gl4 is at high level, and therefore the outputs of G3 and G13 that receive it are both at low level. The high level output of the Nandt gate G4 becomes the signal AKO, which is given as the signal AKI from the terminal T2 to the C element at the subsequent stage. This is a signal representing the empty status of the preceding stage parallel datum 7 fur.

このとき、データがまだ到着していないとすれば、端子
T1への信号TR■がローレベルである。端子T5への
りセント信号R,BS、ETが解除されると、インバー
タの出力がハイレベルとなり、一方ナンドゲートGI4
からの信号AK’もまたハイレベルであり、この状態が
初期状態である。
At this time, if data has not yet arrived, the signal TR■ to the terminal T1 is at a low level. When the input signals R, BS, and ET to the terminal T5 are released, the output of the inverter becomes high level, while the NAND gate GI4
The signal AK' from is also at high level, and this state is the initial state.

初期状態においては、したがって、ナントゲートG +
およびGllのそれぞれの出力がハイレベルであり、オ
アゲートG2およ、びGl2の一方入力がハイレベルで
ある。そのため、ナントゲートG3およびG13の2つ
の入力はともにそれぞれハイレベルであり、したがって
このナントゲートG3およびCI3の出力はともにロー
レベルである。すなわち、信号TR’および端子T3か
らの信号TPOがローレベルである。ナンドゲ−1−G
4およびG、4の入力は、それぞれ、ローレベル、ハイ
レベルおよびハイレベルとなり、これらナントゲートG
4およびCI4の出力はそれぞれハイレベルとなる。
In the initial state, therefore, the Nant gate G +
and Gll are at high level, and one input of OR gate G2 and G12 is at high level. Therefore, the two inputs of Nandts gates G3 and G13 are both at high level, and therefore the outputs of these Nandts gates G3 and CI3 are both at low level. That is, signal TR' and signal TPO from terminal T3 are at low level. Nando game-1-G
The inputs of 4, G, and 4 are low level, high level, and high level, respectively, and these Nant gate G
The outputs of CI4 and CI4 are each at high level.

データが転送されてきて、後段のC要素から与えられる
端子T1への信号TRIが第5図に示すようにハイレベ
ルに転じると、ナントゲートG。
When the data is transferred and the signal TRI applied to the terminal T1 from the C element in the subsequent stage changes to high level as shown in FIG.

の3つの入力はすべてハイレベルとなり、その出力はロ
ーレベルとなる。そうすると、ナントゲートG3の出力
すなわち信号TR’が第5図に示すようにハイレベルと
なり、ナントゲートG4の出力がローレベルとなる。信
号TR’がハイレベルとなると、ナントゲートG3.の
出力がローレベルとなり、ナントゲートC’+3の出力
TPOがハイレベル、ナントゲートG、4の出力AK’
がローレベルとなる。ナンドゲ−1−04およびG、4
の出力がそれぞれナントゲートG3およびGI3の入力
に戻り、これらナントゲートG3およびG13の出力が
ハイレベルの状態でロックされる。
All three inputs of will be high level, and its output will be low level. Then, the output of the Nant gate G3, that is, the signal TR' becomes high level as shown in FIG. 5, and the output of the Nant gate G4 becomes low level. When the signal TR' becomes high level, the Nant gate G3. The output of Nant gate C'+3 becomes low level, the output TPO of Nant gate C'+3 becomes high level, and the output AK' of Nant gate G,4 becomes
becomes low level. Nando game-1-04 and G, 4
The outputs of the gates G3 and GI3 are respectively returned to the inputs of the gates G3 and GI3, and the outputs of the gates G3 and G13 are locked at a high level.

このようにして、第5図に示すように端子T2からの信
号AKOがローレベルとなり、このC要素Cの対応する
並列データハソファにデータが転送されたこと、すなわ
ちその状態ではもはやデータの転送を受は付けないこと
が後段のC要素に伝えられる。また、ナンドゲ−1−G
、3の出力がハイレベルであり、端子T3から、前段の
C要素にハイレベルの信号TROが与えられる。このハ
イレベルの信号TROが、それに対応する並列データハ
ソファへの転送指令として与えられ、その並列データバ
ッファのデータが前段に送られる。
In this way, as shown in FIG. 5, the signal AKO from the terminal T2 becomes low level, indicating that data has been transferred to the corresponding parallel data processor of this C element C. In other words, in that state, data transfer is no longer possible. This is communicated to the subsequent C element that the message is not accepted. Also, Nando Game-1-G
, 3 are at high level, and a high level signal TRO is applied from terminal T3 to the C element at the previous stage. This high level signal TRO is given as a transfer command to the corresponding parallel data buffer, and the data in the parallel data buffer is sent to the previous stage.

信号AK○がローレベルになると、第5図に示すように
信号TRIがローレベルになり、したがって、ナンドゲ
−1〜G+の出力TR’がハイレベルに戻る。さらに、
前述のようにして、ナントゲートG14の出力AK’が
ローレベルに変わることによって、ナントゲートG4の
出力AKOはハイレベルに戻り、ナンドゲ−1−03の
出力TR’ばローレベルに戻る。
When the signal AK◯ goes low, the signal TRI goes low as shown in FIG. 5, and therefore the outputs TR' of the NAND games -1 to G+ return to the high level. moreover,
As described above, when the output AK' of the Nandt gate G14 changes to low level, the output AKO of the Nandt gate G4 returns to the high level, and the output TR' of the Nandt gate G1-03 returns to the low level.

前段のC要素からの信号A K Oすなわち端子T4か
ら与えられる信号AKIが、第5図に示すように、ハイ
レベルからローレベルに変わると、すなわち、前段の並
列データバッファの空きが抽出されると、オアゲートG
12の入力がローレベルとなり、信号TR’もまたロー
レベルであるため、このオアゲートG1□の出力もまた
ローレベルとなる。このとき、ナントゲートGI3の出
力はハイレベルになっているので、ナントゲートGI4
の出力がハイレベルに変わる。そのため、ナントゲート
G13の入力がハイレベルとなり、ナントゲートG13
の出力はローレベルに戻る。このようにして、初期状態
と同じ状態に戻る。
When the signal AKO from the C element in the previous stage, that is, the signal AKI applied from the terminal T4, changes from high level to low level, as shown in FIG. 5, the empty space in the parallel data buffer in the previous stage is extracted. and Orgate G
Since the input of G12 is at low level and the signal TR' is also at low level, the output of this OR gate G1□ is also at low level. At this time, the output of Nante gate GI3 is at a high level, so Nante gate GI4
output changes to high level. Therefore, the input of the Nant gate G13 becomes high level, and the Nant gate G13
output returns to low level. In this way, the state returns to the same state as the initial state.

もし前段のC要素からの信号AKOすなわち端子T4か
らの信号AKIがローレベルのままであるとすると、す
なわち前段のC要素に対応する並列データバッファがま
だ空き状態でないとすると、ナントゲートG1.の1つ
の入力ばローレベルのままとなるため、端子T、からの
信号TRTがハイレベルとして与えられ、信号TR’が
ハイレベルに変わっても、ナンドゲ−1・C++は作用
せず、信号TPOがハイレベルにはならないので、それ
によって後段からのデータの受は付けが拒否され、した
がってこのC要素に対応する並列データバ・ソファには
その状態ではデータが転送できない。
If the signal AKO from the previous stage C element, that is, the signal AKI from the terminal T4, remains at a low level, that is, if the parallel data buffer corresponding to the previous stage C element is not yet empty, then the Nantes gate G1. Since one of the inputs remains at a low level, even if the signal TRT from the terminal T is given as a high level and the signal TR' changes to a high level, the NAND game 1/C++ does not act and the signal TPO does not go to a high level, thereby refusing to accept data from the subsequent stage, and therefore data cannot be transferred to the parallel data buffer corresponding to this C element in that state.

このようにして、第3図に示すように、並列データバッ
ファB。−B3およびC要素C8〜C3によって、非同
期自走式シフトレジスタが構成される。
In this way, a parallel data buffer B, as shown in FIG. -B3 and C elements C8 to C3 constitute an asynchronous self-propelled shift register.

なお、このC要素Cに端子T6から、停止信号5TOP
が与えられると、そのハイレベルの信号がオアゲートG
5を通してナンドゲーl−G+3に与えられる。したが
って、このナントゲートG。
In addition, a stop signal 5TOP is applied to this C element C from the terminal T6.
is given, the high level signal is the OR gate G
5 is given to Nandoge l-G+3. Therefore, this Nantes Gate G.

3の出力がローレベルとなり、この状態では端子T3か
らの信号TPOがローレベルとなり、データの転送が停
止される。
The output of terminal T3 becomes low level, and in this state, the signal TPO from terminal T3 becomes low level, and data transfer is stopped.

第3図に示すように、演算処理部44に含まれる非同期
自走式シフトレジスタを構成する並列データバッファB
1およびB2の間に、たとえばAl1 L U (Arithmatic Logic Uni
t ) +乗算器などを含むデータ処理要素54が配置
される。そして、前段の並列データハソファB、からの
データ特にデータバケットに含まれる処理コードPC(
第2、図)が処理指示回路56へ与えられる。この処理
指示回路56は、簡単にいうと、並列データバッファB
、に含まれる処理コードに応じて、データ処理要素54
に対してデータ処理の種類ないし態様を指示するための
指示信号を与える。したがって、データ処理要素54に
後段の並列データバッファB2のデータが与えられ、そ
れがそこで処理される際に、前段の並列データバッファ
B、からの処理コードによって、その処理の内容が制御
されることになる。換言すれば、後続するデータに対す
る処理の種類もしくは処理の種類の系列が、先行するデ
ータによって決定される。
As shown in FIG. 3, a parallel data buffer B forming an asynchronous self-running shift register included in the arithmetic processing unit
1 and B2, for example, Al1 L U (Arithmatic Logic Uni
A data processing element 54 is arranged, including a t) + multiplier and the like. Then, the data from the previous stage parallel data processor B, especially the processing code PC included in the data bucket (
2) is applied to the processing instruction circuit 56. Simply put, this processing instruction circuit 56 is a parallel data buffer B.
, the data processing element 54
An instruction signal is given to instruct the type or mode of data processing. Therefore, when data from the parallel data buffer B2 at the subsequent stage is given to the data processing element 54 and processed there, the content of the processing is controlled by the processing code from the parallel data buffer B at the previous stage. become. In other words, the type of processing or series of types of processing for subsequent data is determined by the preceding data.

第6図はこの発明の一実施例を示すブロック図である。FIG. 6 is a block diagram showing one embodiment of the present invention.

演算処理部44は、先の第3図で説明したように、並列
データバッファB、およびB2を含み、それらの間には
データ処理要素54が介挿される。データ処理要素54
は、この実施例では、ALU58を含み、このALU5
8の2つの入力には、並列データバッファB1およびB
2からの処理対象データ(第2図)が与えられる。そし
て、それぞれの並列データバッファBlおよびB2に対
応じて、第4図で説明したようなC要素C1およびC2
が設けられる。並列データバッファB2の17ビツト目
(および16ビツト目)のデータはデータ処理要素54
に与えられる。データ処理要素54は、この17ビツト
目のデータが11」のときは、データがヘッダであるこ
とを表し、データ処理要素54は、並列データバッファ
B2からのそのデータをそのまま並列データバッファB
、に出力する。すなわち、データがヘッダのときはデー
タ処理要素(A L U)はNOPとなる。
The arithmetic processing unit 44 includes the parallel data buffers B and B2, as described above with reference to FIG. 3, and the data processing element 54 is inserted between them. Data processing element 54
includes ALU58 in this example, and this ALU5
The two inputs of 8 have parallel data buffers B1 and B
Data to be processed from 2 (FIG. 2) is given. Then, corresponding to the respective parallel data buffers Bl and B2, C elements C1 and C2 as explained in FIG.
will be provided. The 17th bit (and 16th bit) data of the parallel data buffer B2 is stored in the data processing element 54.
given to. When the 17th bit data is 11'', the data processing element 54 indicates that the data is a header, and the data processing element 54 directly transfers the data from the parallel data buffer B2 to the parallel data buffer B.
, output to. That is, when the data is a header, the data processing element (ALU) becomes NOP.

処理指示回路56には、デコーダ60およびフリップフ
ロップ群62が含まれる。デコーダ60には、前段の並
列データバッファB、からの、処理コードPC(第2図
)に含まれるFコードが与えられるとともに、その処理
コードに含まれる第17ビツト目のデータすなわち順番
コードのIビットが与えられる。フリップフロップ群6
2には、並列データバッファB、に対応するC要素C1
がらの信号TROがトリガ入力として与えられる。
Processing instruction circuit 56 includes a decoder 60 and a flip-flop group 62. The decoder 60 is given the F code included in the processing code PC (FIG. 2) from the parallel data buffer B at the previous stage, and also receives the I of the 17th bit of data included in the processing code, that is, the sequential code. bit is given. Flip-flop group 6
2 has a C element C1 corresponding to parallel data buffer B.
The empty signal TRO is provided as a trigger input.

フリップフロップ群62のセット入力には、デコーダ6
0からの信号が与えられるとともに、リセット入力には
並列データバッファB1がらの、処理コードPCに含ま
れる第16ビツト目のデータすなわち順番コードの1ビ
ツトが与えられる。このフリップフロップ群62の出力
が再びデコーダ60に与えられ、したがって、デコーダ
6oの出力がフリップフロップ群62によって保持され
る。
The set input of the flip-flop group 62 is connected to the decoder 6.
A signal from 0 is applied, and the 16th bit data included in the processing code PC from the parallel data buffer B1, ie, 1 bit of the order code, is applied to the reset input. The output of this flip-flop group 62 is given again to the decoder 60, and therefore the output of the decoder 6o is held by the flip-flop group 62.

デコーダ60の出力は、処理指示信号として、データ処
理要素54に含まれるALU58に与えられる。
The output of the decoder 60 is given to the ALU 58 included in the data processing element 54 as a processing instruction signal.

この第6図の回路において、後段の並列データバッファ
B2から前段の並列データバッファB。
In the circuit of FIG. 6, the parallel data buffer B2 at the subsequent stage to the parallel data buffer B at the previous stage.

へのデータ転送は前述のように、それぞれ対応のC要素
C2およびC1によって制御される。すなわち、並列デ
ータバッファB、からデータが出力され、この並列デー
タバッファB、が空き状態に存ろうとすると、対応のC
要素C8がそのことを検知し信号AKOをハイレベルと
して出力する。
Data transfer to is controlled by corresponding C elements C2 and C1, respectively, as described above. That is, when data is output from parallel data buffer B, and this parallel data buffer B attempts to remain in an empty state, the corresponding C
Element C8 detects this and outputs signal AKO at a high level.

この信号AKOが後段のC要素C2へ、ハイレベルの信
号AKTとして入力される。このとき、後。
This signal AKO is input to the subsequent C element C2 as a high level signal AKT. At this time, after.

段の並列データバッファB2にデータが存在すれば、対
応のC要素C2からの信号TPOがハイレベルとなり、
それがハイレベルの信号TRIとして前段のC要素C7
に与えられる。このとき、並列データハソファB2にも
ハイレベルの信号TPOが転送指令信号として与えられ
るため、並列データバッファB2にロードされていたデ
ータパケットが前段の並列データハソファB、に向けて
出力される。
If data exists in the parallel data buffer B2 of the stage, the signal TPO from the corresponding C element C2 becomes high level,
It serves as a high level signal TRI to the previous stage C element C7.
given to. At this time, since the high-level signal TPO is also given to the parallel data buffer B2 as a transfer command signal, the data packets loaded in the parallel data buffer B2 are output to the preceding parallel data buffer B. .

前述のように、前段の並列データバッファB1に、デー
タ処理要素54のALU58を経て、データパケットの
ヘッダが入力されると、そのデータパケットに含まれる
第17ビツト目のデータとともに、Fコードが、デコー
ダ60に与えられる。
As mentioned above, when the header of a data packet is input to the preceding stage parallel data buffer B1 via the ALU 58 of the data processing element 54, the F code is input along with the 17th bit data included in the data packet. is applied to decoder 60.

データパケットのヘッダであれば、第2図に示すように
第17ビツト目の信号はハイレベルであり、応じて、デ
コーダ60は、並列データハソファB1からの処理コー
ドを有効化し、したがって、デコーダ60は並列データ
バッファB、から入力されたFコードをデコードする。
If it is a header of a data packet, the 17th bit signal is at a high level as shown in FIG. 60 decodes the F code input from the parallel data buffer B.

たとえばそのときのFコードがrNOPJであるとすれ
ば、このデコーダ60から、データ処理要素54に含ま
れるALU58に対して、rNOPJ指令が与えられる
。デコーダ60では、さらにたとえば「F+1」が生成
され、フリップフロップ群62への信号として与えられ
る。
For example, if the F code at that time is rNOPJ, the rNOPJ command is given from the decoder 60 to the ALU 58 included in the data processing element 54. Decoder 60 further generates, for example, "F+1" and provides it as a signal to flip-flop group 62.

なお、第1番目のデータワードDW、に対するFコード
は、上述のようなrNOPJ以外に、他の適当な単項演
算たとえばインクリメント、反転などであってもよいこ
とは勿論である。
It goes without saying that the F code for the first data word DW may be any other suitable unary operation, such as increment or inversion, in addition to rNOPJ as described above.

より詳しく説明すると、デコーダ60に、前段の並列デ
ータバッファB、のデータパケットのヘッダの処理コー
ドが入力されると、デコーダ60から、たとえば「イン
クリメント」の演算指令がALU58に与えられる。後
段の並列データバソファB2にデータがロードされると
、ALU58で、「インクリメント」演算が実行される
。そして、C要素C1によって前段の並列データバッフ
ァBlの空きが検出されると、そのタイミングで上述の
「インクリメント」演算の結果が前段の並列データハソ
ファBlに与えられる。このとき、同じタイミングで、
フリップフロップ群62にデコーダ60からr F +
1. Jが書き込まれる。この時点では、前段の並列デ
ータバッファB、にはデータバケットのデータワードが
存在し、したがってデコーダ60の入力としては、この
フリップフロップ群62からのrF+IJのコードがを
効化されている。すなわち、前段の並列データバッファ
B1のヘッダがデコーダ60によって解君売された後は
、デコーダ60は、フリップフロップ群62からのコー
ドを受けることになる。
To explain in more detail, when the processing code of the header of the data packet of the preceding stage parallel data buffer B is inputted to the decoder 60, the decoder 60 provides the ALU 58 with an operation command of, for example, "increment". When data is loaded into the subsequent parallel data bath sofa B2, the ALU 58 executes an "increment" operation. When the C element C1 detects an empty space in the preceding parallel data buffer Bl, the result of the above-mentioned "increment" operation is given to the preceding parallel data buffer Bl at that timing. At this time, at the same time,
r F + from the decoder 60 to the flip-flop group 62
1. J is written. At this point, the data word of the data bucket exists in the preceding parallel data buffer B, and therefore the rF+IJ code from this flip-flop group 62 is valid as an input to the decoder 60. That is, after the header of the preceding parallel data buffer B1 is released by the decoder 60, the decoder 60 receives the code from the flip-flop group 62.

そして、その後デコーダ60は、そのフリップフロップ
群62からのr F −1−I Jをデコードする。
Then, the decoder 60 decodes r F −1−I J from the flip-flop group 62 .

デコーダ60では、このrF+IJが入力されると、た
とえば「+」の演算指令を生成するように組まれている
ものとすると、デコーダ60からまず「インクリメント
」の演算指令が出力された後には、このデコーダ60か
らは「十」の演算指令がALU58に与えられる。した
がって、ALU58では、前段の並列データバッファB
、から戻されたデータと後段の並列データバッファB2
からのデータとの間で「+」演算を実行する。このよう
にして、前段の並列データバケットB+のデータがデー
タパケットのうち最後のデータワードになるまで、デコ
ーダ60から所要の演算指令が出力され、A L U 
58では、それに応じた演算が繰り返される。
Assuming that the decoder 60 is configured to generate, for example, an arithmetic command of "+" when this rF+IJ is input, after the decoder 60 first outputs an arithmetic command of "increment", this The decoder 60 provides the ALU 58 with a calculation command for "10". Therefore, in the ALU 58, the previous stage parallel data buffer B
, and the subsequent parallel data buffer B2.
Performs a "+" operation with the data from. In this way, the decoder 60 outputs the necessary operation commands until the data in the preceding parallel data bucket B+ becomes the last data word of the data packet, and the ALU
At 58, the corresponding calculation is repeated.

最後のデータワードでは、第2図に示すように、順番コ
ードの1ビツトすなわち第16ピント目がハイレベルと
なる。このハイレベルの信号がフリップフロップ群62
のリセント入力として与えられる。したがって、それ以
後このフリップフロップ群62の出力がたとえばすべて
ゼロとなる。
In the last data word, as shown in FIG. 2, one bit of the order code, that is, the 16th pinpoint, goes high. This high level signal is transmitted to the flip-flop group 62.
given as the recent input. Therefore, from then on, the outputs of this flip-flop group 62 become, for example, all zero.

このようにして、1つのデータパケットに対する演算が
実行される。そして、そのときの後段の並列データハソ
ファB2からの処理対象データについての処理の種類は
、前段の並列データバッファB、のデータによって特定
される。そして、後段の並列データハソファB2からは
、前段の並列データバッファB、が空き状態であること
を条件としてデータがポツプアウトされるため、この演
算処理部44は完全な非同期式システムとして構成する
ことができる。
In this way, an operation is performed on one data packet. Then, the type of processing to be performed on the data to be processed from the parallel data buffer B2 in the subsequent stage is specified by the data in the parallel data buffer B in the previous stage. Since data is popped out from the subsequent parallel data buffer B2 on the condition that the previous parallel data buffer B is empty, this arithmetic processing unit 44 must be configured as a completely asynchronous system. I can do it.

第7図はこの発明の他の実施例を示すブロック図である
。第6図実施例では、第2図に示すような構造のデータ
バケットを利用して、データ処理要素54すなわちAL
U58では、前段の並列データバッファB、のデータす
なわち先行するデータと後段の並列データバッファB2
すなわち後続するデータとをその入力として受け、その
処理結果を再び前段の並列データバッファB、に与える
ようにした。
FIG. 7 is a block diagram showing another embodiment of the invention. In the embodiment of FIG. 6, the data processing element 54, that is, the AL
In U58, the data of the preceding stage parallel data buffer B, that is, the preceding data and the succeeding stage parallel data buffer B2
That is, the subsequent data is received as input, and the processing result is again given to the parallel data buffer B at the previous stage.

これに対して、この第7図実施例では、第8図に示すよ
うな構造のデータパケットが利用される。
On the other hand, in the embodiment shown in FIG. 7, a data packet having a structure as shown in FIG. 8 is used.

第8図に示すデータバケットは、データワードDWに複
数(この例では2つ)の処理対象データが並列的に含ま
れ、このデータワードがポツプアウトされるときは、2
つの処理対象データが同時に出力されることになる。し
たがって、第7図実施例では、データ処理要素54に含
まれるALU58は、後段の並列データバッファB2か
らのデータのみを受け、その結果を前段の並列データバ
ッファB、に与えるようにしている。しかしながら、こ
の実施例においても、処理指示回路56からは、前段の
並列データバッファB、のデータすなわち先行するデー
タワードに基づいて、データ処理要素54のALU58
における後続のデータワードに対する処理が実行される
。そして、この第7図実施例でも、演算処理部44は、
完全な非同期式システムとして構成されている。
In the data bucket shown in FIG. 8, a data word DW contains a plurality of (in this example, two) pieces of processing target data in parallel, and when this data word is popped out, two
Two pieces of processing target data will be output at the same time. Therefore, in the embodiment of FIG. 7, the ALU 58 included in the data processing element 54 receives only data from the parallel data buffer B2 at the subsequent stage, and provides the result to the parallel data buffer B at the previous stage. However, in this embodiment as well, the processing instruction circuit 56 sends data to the ALU 58 of the data processing element 54 based on the data of the preceding stage parallel data buffer B, that is, the preceding data word.
Processing on subsequent data words at is performed. Also in this FIG. 7 embodiment, the arithmetic processing section 44
It is configured as a completely asynchronous system.

第9図はこの発明のその他の実施例を示すブロック図で
ある。先の第6図および第7図に示す実施例では、いず
れも、8ビツトのデータを同時に処理するシステムとし
て説明した。これに対して、この第9図では、8ビツト
のデータの処理を2ビソトずつ逐次的に処理するための
実施例を示す。
FIG. 9 is a block diagram showing another embodiment of the invention. In the embodiments shown in FIGS. 6 and 7 above, both systems were described as systems that simultaneously process 8-bit data. On the other hand, FIG. 9 shows an embodiment in which 8-bit data is sequentially processed 2 bits at a time.

しかしながら、その基本的な構成は先の2つの実施例と
同様である。
However, its basic configuration is similar to the previous two embodiments.

第9図の演算処理部44は、7段の並列データバッファ
11311〜B1□とそれに関連する7段のC要素CI
l〜cr7との組み合わせからなる非同期自走式シフト
レジスタを含んで構成される。
The arithmetic processing unit 44 in FIG. 9 includes seven stages of parallel data buffers 11311 to B1
It is configured to include an asynchronous self-propelled shift register consisting of a combination of registers l to cr7.

なお、並列データバッファBll”Bl□は、ともに、
18ビットとして構成されていて、それぞれの間にはデ
ータ処理要素54.〜546が介挿されている。この実
施例では、データ処理要素543〜546が、ともに、
2ビツトA L Uを含み、データ処理要素54□が8
ビツトシフタを含み、データ処理要素54.が正負・ゼ
ロ判定回路を含む。したがって、この実施例では、デー
タ処理要素543〜546すなわち4つのA L Uで
演算された結果が、必要に応じて、データ処理要素54
2すなわち8ビツトシフタによってシフトされ、その後
データ処理要素54.すなわち正負・ゼロ判定回路によ
ってその結果の正負/ゼロが判定されて、最前段の並列
データハソファBl+にプッシュインされる。
Note that the parallel data buffers Bll"Bl□ are both
18 bits, with data processing elements 54 . ~546 is inserted. In this example, data processing elements 543-546 both include:
It includes 2-bit ALU, and the data processing elements 54□ are 8
Data processing element 54, including a bit shifter. includes a positive/negative/zero determination circuit. Therefore, in this embodiment, the results calculated by the data processing elements 543 to 546, that is, the four ALUs, are transferred to the data processing element 54 as necessary.
2 or 8 bit shifter and then data processing element 54. That is, the positive/negative/zero determination circuit determines whether the result is positive/negative/zero and is pushed into the parallel data filter Bl+ at the front stage.

データ処理要素54.〜546に対応じて、先の第6図
および第7図で説明した処理指示回路561〜566が
設けられる。それぞれの処理指示回路56.〜566は
、デコーダ60およびフリップフロップ群62を含む。
Data processing element 54. - 546, the processing instruction circuits 561 - 566 described above with reference to FIGS. 6 and 7 are provided. Each processing instruction circuit 56. ~566 includes a decoder 60 and a group of flip-flops 62.

それぞれの処理指示回路56゜〜566のデコーダ60
には、対応の並列データバッファBll”B10から、
第17番目のビットが与えられ、フリップフロップ群6
2には、第16番目のビットが与えられることは、前述
のとおりである。
Decoder 60 for each processing instruction circuit 56° to 566
, from the corresponding parallel data buffer Bll”B10,
The 17th bit is given and flip-flop group 6
As mentioned above, the 16th bit is given to the bit 2.

これら処理指示回路56.〜566に含まれるデコーダ
60は、次表1のようなデコード機能を達成する。
These processing instruction circuits 56. The decoder 60 included in ~566 achieves the decoding function as shown in Table 1 below.

(以下余白) 表1 f3f2f1foS4S3S2SIS。(Margin below) Table 1 f3f2f1foS4S3S2SIS.

oooo  oooo。oooooooooo.

011.100111 1000 01.000 110.010000 最初の4つのFコード“0000″、0001”、“0
010”および“0011”でば、出力32.S3およ
びS4はともにaO”となり、後述のように、すべての
データ処理要素54.〜546はN OP (No−O
peration)となる。そして、次の4つのFコー
ド” o t o o”、“’0101″、“0110
 ”および“0111”では、いずれの場合も出力S2
が1”となる。したがって、後述のように、データ処理
要素543〜546に含まれる2ピツ)ALUのみが能
動化される。次0)4つ(DFコ−1”1000”、”
1001”。
011.100111 1000 01.000 110.010000 First four F codes “0000”, 0001”, “0
010" and "0011", outputs 32.S3 and S4 are both aO", and all data processing elements 54. ~546 is N OP (No-O
peration). Then, the following four F codes "o t o o", "'0101", "0110"
” and “0111”, in both cases the output S2
becomes 1". Therefore, as will be described later, only the 2 ALUs included in the data processing elements 543 to 546 are activated.
1001”.

“1010″および”1011″では、いずれの場合も
出力S3が“1″となり、後述のように、データ処理要
素54゜に含まれる8ビツトシフタが能動化される。最
後の4つのFコード” 1100”、”1101”、’
1110”および“1111”では、いずれの場合も、
出力S4が“1”となり、後述のように、データ処理要
素54.に含まれる正負・ゼロ判定回路が能動化される
For "1010" and "1011", the output S3 becomes "1" in both cases, and the 8-bit shifter included in the data processing element 54.degree. is activated, as will be described later. The last four F codes "1100", "1101",'
1110" and "1111", in both cases,
The output S4 becomes "1", and as will be described later, the data processing element 54. The positive/negative/zero determination circuit included in is activated.

この第9図実施例では、第10図に示すようなデータパ
ケットを処理する。第10図(A)は、そのデータパケ
ットに1ワードのデータのみが含まれる場合を示し、第
10図(B)は、そのデータワード1−に複数のデータ
ワードDWI〜D W nが含まれる場合を示している
。そして、2つの8ビツトデータL。〜L7とR8−R
7との間で処理を行ない、その結果が、前段の並列デー
タム・7フアの、一方のデータL。〜■7、に相当する
位置に格納される。なお、この第10図において、処理
コードP Cに含まれるf。−f3はFコードを示す。
In this embodiment of FIG. 9, data packets as shown in FIG. 10 are processed. FIG. 10(A) shows the case where the data packet contains only one word of data, and FIG. 10(B) shows the case where the data word 1- contains a plurality of data words DWI to DWn. It shows the case. And two 8-bit data L. ~L7 and R8-R
7, and the result is data L of one of the parallel datums 7 and 7 in the previous stage. It is stored in the position corresponding to ~■7. In addition, in this FIG. 10, f included in the processing code PC. -f3 indicates F code.

データ処理要素543〜546のそれぞれに含まれる2
ビツトA L Uは、第11図に示すように、入力しお
よび入力Rを受け、制御信号So、S。
2 included in each of the data processing elements 543 to 546
Bit ALU is input and receives input R, as shown in FIG. 11, and receives control signals So, S.

およびS2に応じて、それによって特定される演算を実
行し、その結果を前段の並列データバッファの対応の2
ビツトに与える。また、このA L tJからのキャリ
ー信号が、前段の△LUに与えられる。これら2ピノ)
 A L Uは、次表2に示す機能を実行する。
and S2, execute the operation specified by it, and transfer the result to the corresponding 2
Give it to Bittu. Further, the carry signal from this A L tJ is given to the previous stage ΔLU. These 2 Pinot)
ALU performs the functions shown in Table 2 below.

表2 S、So  出力 0 0  L+R O]  L−R 0LORR 11LA’NDR * ただし 52−1 S2−0のときはNOP データ処理要素542に含まれる8ビツトシフタは、た
とえば第12図に示す構成を採る。ずなわち、8ビツト
シフタば、8ピッ1−の入力■。〜■7を受け、その出
力として8ビツトのデータ。
Table 2 S, So Output 0 0 L+R O] L-R 0LORR 11LA'NDR * However, 52-1 NOP when S2-0 The 8-bit shifter included in the data processing element 542 has the configuration shown in FIG. 12, for example. . In other words, if it is an 8-bit shifter, the input is 8 pins 1-. ~■Receives 7 and outputs 8-bit data.

。〜07を出力する。そして、その機能は次表2で与え
られる。
. ~07 is output. Its functions are given in Table 2 below.

(以下余白) 表3 S、 S。  機能 0 0   左シフト(算術) 0 1   左シフト(論理) 1 0   右シフト(算術) 1 1   右シフト(論理) * ただし 53−1 S3−0のときはNOP データ処理要素54.に含まれる正負・ゼロ判定回路は
、第13図に示す構成で、次表4で示す機能を実行する
(Margins below) Table 3 S, S. Function 0 0 Shift left (arithmetic) 0 1 Shift left (logical) 1 0 Shift right (arithmetic) 1 1 Shift right (logical) * However, 53-1 NOP when S3-0 Data processing element 54. The positive/negative/zero determination circuit included in the circuit has the configuration shown in FIG. 13 and executes the functions shown in Table 4 below.

(以下余白) 表4 S、 So  機能 0 0  A>O? 01  A≦B? 1 0  A=O? 11  A≠0? * ただし 54−1 S4−0のときはNOP この正負・ゼロ判定回路では、表4に示す機能に対して
、” True ”のときは“FF (hex)  ″
を、“False ″のときには”00(hex)  
″を出力し、前段の並列データバッファBl+に与える
(Left below) Table 4 S, So Function 0 0 A>O? 01 A≦B? 1 0 A=O? 11 A≠0? *However, when 54-1 S4-0, it is NOP. In this positive/negative/zero judgment circuit, for the functions shown in Table 4, when "True", "FF (hex)"
, when it is “False”, it is “00 (hex)”
'' is outputted and applied to the preceding stage parallel data buffer Bl+.

この第9図実施例においても、前段の並列データバッフ
ァの空き状態が対応のC要素によって検出されると、後
段の並列データバッファからのデータが前段に向けて出
力される。そして、そのデータ転送の間に、それぞれの
並列データバッファ間に介挿されたデータ処理要素54
1〜546によってデータ処理されて、その処理された
結果が、前段の並列データ八ソファに与えられる。
In the embodiment of FIG. 9 as well, when the empty state of the parallel data buffer in the previous stage is detected by the corresponding C element, data from the parallel data buffer in the latter stage is outputted toward the previous stage. During the data transfer, a data processing element 54 is inserted between each parallel data buffer.
1 to 546, and the processed results are given to the preceding stage parallel data eight sofas.

より詳しく説明すると、まず、最後段の並列データバッ
ファB1□からデータが前段の並列データバッファBI
6に転送されるとき、先の第6図において詳細に説明し
たように、データ処理要素546ずなわち2ピツ) A
 L Uで、表2で示す処理が実行され、もしあればキ
ャリー信号が前段の並列データバッファBI6を通して
前段のデータ処理要素545すなわちA L Uに与え
られる。そして、演算結果は前段の並列データバッファ
B。
To explain in more detail, first, data is transferred from the last stage parallel data buffer B1□ to the previous stage parallel data buffer BI.
6, the data processing element 546 (i.e. 2 bits) A, as described in detail in FIG. 6 above.
In L U, the processing shown in Table 2 is executed, and a carry signal, if any, is given to the preceding stage data processing element 545, ie, A LU, through the preceding stage parallel data buffer BI6. Then, the calculation result is sent to the parallel data buffer B in the previous stage.

6の対応の2ビツトに与えられる。さらに、並列データ
バッファB16から前段の並列データバッファBI5に
データが転送されるとき、データ処理要素545すなわ
ち2ビン)ALUによって演算が実行される。そして、
並列データバッファB、5に与えられ、もしあればキャ
リー信号が前段のデータ処理要素544すなわち2ビツ
トALUに与えられる。同じように、並列データバッフ
ァBI5から並列データバッファB14へのデータの転
送の際に、並列データバッファBI4から並列データ八
ソファBI3へのデータの転送の際に、それぞれデータ
処理要素544および543ずなわち2つの2ピツ)A
LUで演算が実行される。
6 is given to the corresponding 2 bits. Further, when data is transferred from the parallel data buffer B16 to the preceding parallel data buffer BI5, an operation is executed by the data processing element 545, that is, the 2-bin ALU. and,
A carry signal, if any, is applied to the parallel data buffer B, 5, and a carry signal, if any, is applied to the preceding stage data processing element 544, ie, the 2-bit ALU. Similarly, when transferring data from parallel data buffer BI5 to parallel data buffer B14, and from parallel data buffer BI4 to parallel data buffer BI3, data processing elements 544 and 543 are connected, respectively. Chi two two pits) A
Operations are performed in the LU.

したがって、並列データ八ソファB13には、その段階
で、2つの8ビツトデータの演算結果がプッシュインさ
れている。
Therefore, the calculation results of the two 8-bit data are pushed into the parallel data processor B13 at that stage.

この並列データバッファB13から並列データバッファ
BI2へのデータの転送の際に、必要に応じて、データ
処理要素542に含まれる8ピツトンフタが能動化され
て表3に示す機能が実行された後、その結果が並列デー
タバッファBI2に与えられる。そして、この並列デー
タバッファB、2から並列データバッファBl+へのデ
ータの転送の際に、必要に応じて、データ処理要素54
、に含まれる正負・ゼロ判定回路が能動化され、表4に
示す機能が実行され、その結果が最前段の並列データバ
ッファBl+に格納される。このようにして、一連の並
列データバッファB17から並列データバッファBl+
へのデータの転送とともに、所定のデータ処理が実行さ
れる。
When transferring data from the parallel data buffer B13 to the parallel data buffer BI2, if necessary, the 8-pitton lid included in the data processing element 542 is activated and the functions shown in Table 3 are executed. The result is provided to parallel data buffer BI2. Then, when transferring data from the parallel data buffers B and 2 to the parallel data buffer Bl+, the data processing element 54
The positive/negative/zero determination circuit included in , is activated, the functions shown in Table 4 are executed, and the results are stored in the first-stage parallel data buffer Bl+. In this way, from the series of parallel data buffers B17 to parallel data buffers Bl+
Predetermined data processing is performed along with the data transfer to.

上で説明したような演算処理部44は、それ自体が非同
期式システムであるので、そのような演算処理部すなわ
ちデータ処理装置を第1図に示す非同期遅延線リングす
なわちデータ伝送路12に直列的に介挿することかでき
る。その際、第9図に示すように、一連のデータ処理を
分散するようにすれば、それぞれのデータ処理要素にお
ける所要時間を、データ伝送に全く支障のない程度にま
で短くすることができよう。すなわち、データ処理をこ
の発明のように非同期システムとして構成すれば、デー
タ伝送路として用いられる非同期自走式シフトレジスタ
にそのままデータ処理機能を組み込むことができるので
ある。
Since the arithmetic processing section 44 as described above is itself an asynchronous system, such an arithmetic processing section or data processing device is connected in series to the asynchronous delay line ring or data transmission path 12 shown in FIG. It is possible to insert In this case, if a series of data processing is distributed as shown in FIG. 9, the time required for each data processing element can be shortened to such an extent that data transmission is not hindered at all. That is, if data processing is configured as an asynchronous system as in the present invention, the data processing function can be directly incorporated into an asynchronous self-propelled shift register used as a data transmission path.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明が実施され得る並列処理形エミュレー
タの一例を示すシステム概念図である。 第2図は処理されるべきデータパケットの一例を示す図
解図である。 第3図はこの発明を原理的に示す概略ブロック図である
。 第4図はC要素を示す回路図である。 第5図は第4図に示ずC要素の動作を説明するためのタ
イミング図である。 第6図はこの発明の一実施例を示すブロック図である。 第7図はこの発明の他の実施例を示すブロック図である
。 第8図は第7図実施例において処理されるべきデータパ
ケットの構造を示す図解図である。 第9図はこの発明のその他の実施例を示すブロック図で
ある。 第10図は第9図実施例において処理されるべきデータ
パケットの構成例を示す図解図である。 第11図は2ビツトA L tJを示すブロック図であ
る。 第12図は8ビツトシフタを示すブロック図である。 第13図は正負・ゼロ判定回路を示すブロック図である
。 図において、12は非同期遅延線リング(データ伝送路
)、27は発火部、36は発火検出部、44は演算処理
部、54および54−、〜546はデータ処理要素、5
6および561〜566は処理指示回路、Bo〜B3お
よびBll”Bl□は並列データバッファ、co−03
およびCIl〜C1□はC要素を示す。 特許出願人 三洋電機株式会社(ばか3名)代理人 弁
理士 山1) 義人(ほか1名)O≧ 富 滅 j        Ct” イr 区 派
FIG. 1 is a conceptual system diagram showing an example of a parallel processing type emulator in which the present invention can be implemented. FIG. 2 is an illustrative diagram showing an example of a data packet to be processed. FIG. 3 is a schematic block diagram showing the principle of this invention. FIG. 4 is a circuit diagram showing the C element. FIG. 5 is a timing diagram for explaining the operation of the C element not shown in FIG. 4. FIG. 6 is a block diagram showing one embodiment of the present invention. FIG. 7 is a block diagram showing another embodiment of the invention. FIG. 8 is an illustrative diagram showing the structure of a data packet to be processed in the embodiment of FIG. FIG. 9 is a block diagram showing another embodiment of the invention. FIG. 10 is an illustrative diagram showing an example of the structure of a data packet to be processed in the embodiment of FIG. FIG. 11 is a block diagram showing a 2-bit A L tJ. FIG. 12 is a block diagram showing an 8-bit shifter. FIG. 13 is a block diagram showing a positive/negative/zero determination circuit. In the figure, 12 is an asynchronous delay line ring (data transmission path), 27 is a firing section, 36 is a firing detection section, 44 is an arithmetic processing section, 54 and 54-, ~546 are data processing elements, 5
6 and 561 to 566 are processing instruction circuits, Bo to B3 and Bll"Bl□ are parallel data buffers, co-03
and CI1 to C1□ indicate C elements. Patent applicant Sanyo Electric Co., Ltd. (3 idiots) Agent Patent attorney Yama 1) Yoshito (1 other person)

Claims (1)

【特許請求の範囲】 1 前段および後段のレジスタ、 前記前段および後段のレジスタ間に配置され、前記後段
からのデータを受けてそれを処理して前記前段のレジス
タに与えるデータ処理手段、前記前段のレジスタの空き
を検出するための空き検出手段、 前記空き検出手段によって前記前段のレジスタの空きが
検出されたことに応じて、前記後段のレジスタから出力
されて前記データ処理手段を経たデータを前記前段のレ
ジスタへ転送するための手段、および 前記前段のレジスタの内容に応じて前記データ処理手段
に対して処理の種類を指示するための指示手段を備える
、データ処理装置。 2 前記データは処理コードと対象データとを含み、 前記指示手段は前記前段のレジスタからの前記処理コー
ドを解読するための手段を含む、特許請求の範囲第1項
記載のデータ処理装置。 3 前記前段のレジスタからの前記対象データを前記処
理手段に入力するための手段を備え、前記処理手段は前
記前段のレジスタからの対象データと前記後段のレジス
タからの対象データとを前記指示手段からの指示に応じ
て処理するための手段を含む、特許請求の範囲第2項記
載のデータ処理装置。 4 前記データは複数の前記対象データを含み、前記処
理手段は前記後段のレジスタからの前記複数の対象デー
タを前記指示手段からの指示に基づいて処理する、特許
請求の範囲第2項記載のデータ処理装置。 5 データのプッシュインとポップアウトとを独立的か
つ同時的に行なうことができ、さらにプッシュインされ
たデータが前段のレジスタの空きを条件として自動的に
前段のレジスタにシフトされる、自走式シフトレジスタ
を用いて構成されるデータ伝送路であって、 前記自走式シフトレジスタのレジスタ間に配置されたデ
ータ処理手段を備える、データ伝送路。
[Scope of Claims] 1 Registers in the preceding stage and the succeeding stage; data processing means disposed between the registers in the preceding stage and the succeeding stage, receiving data from the latter stage, processing it, and providing the data to the register in the preceding stage; an empty space detection means for detecting an empty space in a register; in response to the empty space in the preceding stage register being detected by the empty space detecting means, the data output from the latter stage register and passed through the data processing means is transferred to the preceding stage; A data processing device, comprising: means for transferring data to a register in the previous stage; and an instruction means for instructing a type of processing to the data processing means according to the contents of the register at the previous stage. 2. The data processing device according to claim 1, wherein the data includes a processing code and target data, and the instruction means includes means for decoding the processing code from the preceding register. 3. Means for inputting the target data from the preceding register into the processing means, the processing means inputting the target data from the preceding register and the target data from the succeeding register from the instruction means. 3. The data processing apparatus according to claim 2, further comprising means for processing in accordance with an instruction. 4. The data according to claim 2, wherein the data includes a plurality of the target data, and the processing means processes the plurality of target data from the subsequent register based on an instruction from the instruction means. Processing equipment. 5 A self-propelled type that can push in and pop out data independently and simultaneously, and that pushed-in data is automatically shifted to the register in the previous stage, subject to the availability of the register in the previous stage. A data transmission line configured using a shift register, the data transmission line comprising data processing means arranged between the registers of the self-propelled shift register.
JP10627285A 1985-05-17 1985-05-17 Data processor and data transmission line Granted JPS61262934A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP10627285A JPS61262934A (en) 1985-05-17 1985-05-17 Data processor and data transmission line
US06/863,979 US4907187A (en) 1985-05-17 1986-05-16 Processing system using cascaded latches in a transmission path for both feedback and forward transfer of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10627285A JPS61262934A (en) 1985-05-17 1985-05-17 Data processor and data transmission line

Publications (2)

Publication Number Publication Date
JPS61262934A true JPS61262934A (en) 1986-11-20
JPH0533430B2 JPH0533430B2 (en) 1993-05-19

Family

ID=14429445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10627285A Granted JPS61262934A (en) 1985-05-17 1985-05-17 Data processor and data transmission line

Country Status (1)

Country Link
JP (1) JPS61262934A (en)

Also Published As

Publication number Publication date
JPH0533430B2 (en) 1993-05-19

Similar Documents

Publication Publication Date Title
US5499350A (en) Vector data processing system with instruction synchronization
US3764988A (en) Instruction processing device using advanced control system
US4398244A (en) Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same
EP0154051B1 (en) Integrated and programmable processor for word-wise digital signal processing
US4553203A (en) Easily schedulable horizontal computer
EP0328721B1 (en) Dynamic multiple instruction stream multiple data multiple pipeline floatingpoint unit
EP0172038B1 (en) Information processor
JPS6341932A (en) Branching instruction processing device
US4305124A (en) Pipelined computer
JPS59173850A (en) Pipeline type processor
EP0078034A1 (en) Data processing machine suitable for high-speed processing
US7051194B2 (en) Self-synchronous transfer control circuit and data driven information processing device using the same
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
JPS63155336A (en) Data processor
US5561804A (en) Operation processing apparatus for executing a feedback loop process
JPS61262934A (en) Data processor and data transmission line
US4975837A (en) Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets
David et al. Self-timed architecture of a reduced instruction set computer
US5446909A (en) Binary multiplication implemented by existing hardware with minor modifications to sequentially designate bits of the operand
JPS61262935A (en) Data processor and data transmission line
EP0416345B1 (en) Instruction decoder for a pipeline processor
US5542080A (en) Method for controlling execution of data driven type information processor
US3400259A (en) Multifunction adder including multistage carry chain register with conditioning means
EP0305752B1 (en) Programmable data path width in a programmable unit having plural levels of subinstruction sets
EP0313817B1 (en) Method and apparatus for explicitly evaluating conditions in a data processor

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term