JPS59208649A - Operation processor - Google Patents

Operation processor

Info

Publication number
JPS59208649A
JPS59208649A JP58083069A JP8306983A JPS59208649A JP S59208649 A JPS59208649 A JP S59208649A JP 58083069 A JP58083069 A JP 58083069A JP 8306983 A JP8306983 A JP 8306983A JP S59208649 A JPS59208649 A JP S59208649A
Authority
JP
Japan
Prior art keywords
processing
unit
pipeline
data
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP58083069A
Other languages
Japanese (ja)
Inventor
Takao Kusano
隆夫 草野
Tomoji Nukiyama
抜山 知二
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
NEC Corp
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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP58083069A priority Critical patent/JPS59208649A/en
Publication of JPS59208649A publication Critical patent/JPS59208649A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

PURPOSE:To execute processing different from previously fixed processing or having different flow using a fixed pipe line unit by forming a parallel bus connecting respective units in parallel, an input control circuit, etc. CONSTITUTION:When a specific processing request different from the previously fixed processing exists, an input control circuit 7 waits pipe line data during one pipe line cycle. Namely, input to the initial stage unit is stopped and idle state is sent to a pipe line and made flow from a unit 1 to a unit 4. Interruption data are inputted to the idle processing unit through the parallel bus 6 and the fixed processing is executed in the unit. When the interruption data requiring the specific processing are inputted, the input of pipe line data is interrupted, the idle state is formed and the processing can be executed by forming the circuits 6, 7.

Description

【発明の詳細な説明】 本発明は演算装置に関し、特にパイプライン方式の演算
装置の構成に関するものである。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an arithmetic device, and particularly to the configuration of a pipelined arithmetic device.

通常、パイプライン構造をとる演算装置は処理の流れに
従って所定のj@序で配置された複数個の演算処理ユニ
ットを直列的にパイプラインバスで接続することによっ
て構成され、一連の処理は上記の如くに配置されたI・
−ドウエアユニットの並びで固定されてしまう傾向があ
った。従って、パイプラインで規定されている一連の処
理の流れとは異なった処理もしくは異った流れの処理を
パイプライン中のユニットを用いて行なうことは極めて
困難であった。首だ、例えできたとしても本来のパイプ
ライ/機能の効率を極端に低下させてしまう欠点があっ
た。
Normally, an arithmetic unit with a pipeline structure is constructed by serially connecting a plurality of arithmetic processing units arranged in a predetermined order according to the flow of processing with a pipeline bus, and a series of processing is performed as described above. I, arranged like
- There was a tendency for the hardware units to become fixed in line. Therefore, it is extremely difficult to use the units in the pipeline to perform a process different from the series of processes defined by the pipeline or a different process flow. Even if it were possible, it had the drawback of drastically reducing the efficiency of the original pipeline/function.

本発明の目的は固定されたパイプラインユニットを用い
てそれに予め定められた処理とは異なる処理もしくは異
なる流れの処理をも可能とした演算装置を提供すること
にあシ、パイプラインバスで直列に接続された複数の演
算ユニットを互いに並列に結ぶ並列バスを設け、前記パ
イプラインバスおよび並列バスへのデータの入力、出力
の制御を司どる制御機構を前記2種類のバスに接続し、
バスを通る命令群中にいずれのバスを使用するかのバス
制御命令を包含させることによシ、パイプライン演算ユ
ニットの効率を極端に低下させることなく、パイプライ
ンで規定されている一連の処理とは異った処理もしくは
異った流れの処理を実行できるようにしたものである。
An object of the present invention is to provide an arithmetic device that uses a fixed pipeline unit to perform processing different from the predetermined processing or processing of a different flow. A parallel bus is provided that connects the plurality of connected arithmetic units in parallel with each other, and a control mechanism that controls input and output of data to the pipeline bus and the parallel bus is connected to the two types of buses,
By including a bus control instruction that determines which bus to use in a group of instructions that pass through the bus, a series of processes specified by the pipeline can be executed without significantly reducing the efficiency of the pipeline arithmetic unit. It is possible to execute different processing or a different flow of processing.

本発明はパイプラインバス以外に各パイプライン演算ユ
ニットを並列に結ぶ並列バスと、パイプラインの流れと
バスからの入力、出力の制御を司る制御機構と2設け、
バス制御命令を包含することよシ、以下のような構成と
した。
In addition to the pipeline bus, the present invention includes a parallel bus that connects each pipeline operation unit in parallel, and a control mechanism that controls the flow of the pipeline and the input and output from the bus.
In order to include bus control instructions, the following configuration was adopted.

1)パイプラインバスに接続てれている任意のユニット
に並列バスを通し1データを設定するようにして、選択
された任意のユニットにデータを供給でさるようにした
1) One piece of data is set through a parallel bus to any unit connected to the pipeline bus, so that data can be supplied to any selected unit.

2)各パイプラインユニットから並列バスへデータを出
力する手段を設けて、パイプラインサイクルで定められ
たタイミングとは異なるタイミングでデータを出力でさ
るようにした。
2) A means for outputting data from each pipeline unit to a parallel bus is provided so that data is output at a timing different from the timing determined by the pipeline cycle.

3)パイプラインの入力端において有効処理入力が与え
られない空き状態のパイプラインサイクルを意図的に生
成する手段を設け、任意のユニット−\のアクセスがで
きるよ’> vc して、割込み等の緊急処理ができる
ようにした。
3) A means is provided to intentionally generate an empty pipeline cycle in which no valid processing input is given at the input end of the pipeline, so that any unit -\ can be accessed, and interrupts etc. Enabled emergency processing.

4)上記3において、パイプラインの途中よシ前記並列
バスを介し割込む処理の優先度を制御する制御機構を設
け、割込み処理の機能を強化した。
4) In 3 above, a control mechanism is provided to control the priority of interrupt processing via the parallel bus in the middle of the pipeline, thereby strengthening the interrupt processing function.

5)前記バスにおいて任意の区間で電気的に分離する手
段を有する装置XLa。
5) A device XLa having means for electrically isolating any section of the bus.

次に、本発明の一実施例を図面を参照して説明する。第
1図は本発明の基本的構成を示すブロック図で1、パイ
プライン中には一例として4個の処理ユニット1〜4を
設け、夫々をパイプライン5で接続し、これとは別に各
ユニットヲ並列に接続する並列バス6を配設し、2つの
バス5および6に入力制御回路7を設けた。パイプライ
ンで規定されている一連の処理を受けるデータ(以下、
パイプラインデータと云う)は入力制御回路7を経てパ
イプラインバス5を通シ、ユニット1〜4で定められた
流れの下に一連のパイプライン処理を受けた後最終段の
パイプラインバスから出力される。一方、パイプライン
で規定されている一連の処理以外の処理を受けるデータ
(以下、割込みデータと云う)は入力制御回路7を経た
後、並列バス6を介して転送され、処理ユニット1〜4
の内指定されたユニットの処理を受ける。第2図は第1
図で示される構成のパイプラインの状態遷移図である。
Next, one embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the basic configuration of the present invention. As an example, four processing units 1 to 4 are provided in the pipeline, each connected by a pipeline 5, and each unit is separately connected to the pipeline. Parallel buses 6 connected in parallel are provided, and two buses 5 and 6 are provided with an input control circuit 7. Data that undergoes a series of processing specified in the pipeline (hereinafter referred to as
The pipeline data (referred to as pipeline data) passes through the pipeline bus 5 via the input control circuit 7, undergoes a series of pipeline processing according to the flow determined by units 1 to 4, and is output from the final stage pipeline bus. be done. On the other hand, data that undergoes processing other than the series of processing specified by the pipeline (hereinafter referred to as interrupt data) passes through the input control circuit 7 and is transferred via the parallel bus 6 to the processing units 1 to 4.
The specified unit will be processed. Figure 2 is the first
FIG. 2 is a state transition diagram of a pipeline having the configuration shown in the figure.

1〜4は第1図の各処理ユニットに、5はパイプライン
バスに夫々相当する。この図で100H、パイプライン
データがパイプラインを流れて処理され転送される流れ
図であり、バイグラインデータは各ユニットに定められ
ている処理時間(以下、パイプラインサイクルと云う)
ごとに1→2→3→4と処理を受けて流れている。この
状態では各処理ユニットには、どの時間においても処理
を受けるべきデータ(以下、有効データと云う)が入力
されている。
1 to 4 correspond to each processing unit in FIG. 1, and 5 corresponds to a pipeline bus. In this figure, 100H is a flowchart in which pipeline data flows through the pipeline, is processed and transferred, and bigline data is processed during the processing time determined for each unit (hereinafter referred to as pipeline cycle).
The flow is processed in the order of 1 → 2 → 3 → 4 for each time. In this state, data to be processed (hereinafter referred to as valid data) is input to each processing unit at any time.

次に、特殊処理要求が入力制御回路7に入力された場合
について説明する。入力制御回路7はパイプラインデー
タを1パイプラインサイクルの間待たせて、すなわち初
段のユニットへの入力を止めて、有効データのない状態
(空き状態)をパイプライン中に送υ込む。空き状態は
有効データの必る状態と同様にしてパイプライン中を1
→2→3→4と流れていく。この状態を衣わしたのが1
01〜104である。図で黒丸は鳴動データのある状態
、白丸は空き状態を示している。割込みデータは入力制
御回路7によって創他出された空き状態にある処理ユニ
ットに対して並列バスを介して入力され、そのユニット
に定められた処理が施される。第2図で101では処理
ユニット1が、102では処理ユニット2が、103で
は処理ユニット3が、104では処理ユニット4が、こ
の空き状態を有し、割込みデータに基づく処理が可能な
状態になっている。割込みデータは、各命令に対応して
規定された処理を谷処理ユニットが空き状態の時に行う
Next, a case where a special processing request is input to the input control circuit 7 will be explained. The input control circuit 7 makes the pipeline data wait for one pipeline cycle, that is, stops inputting to the first-stage unit, and sends a state without valid data (empty state) into the pipeline. The free state is the same as the state where valid data is required, and the pipeline is set to 1.
→ It flows as 2 → 3 → 4. The person who caused this condition was 1.
01 to 104. In the figure, black circles indicate states with ringing data, and white circles indicate idle states. The interrupt data is input via the parallel bus to a vacant processing unit created by the input control circuit 7, and a predetermined process is performed on that unit. In FIG. 2, processing unit 1 at 101, processing unit 2 at 102, processing unit 3 at 103, and processing unit 4 at 104 have this empty state and are in a state where processing based on interrupt data is possible. ing. Interrupt data is processed according to each instruction when the valley processing unit is idle.

以上記したように、特殊な処理を必要とする割込みデー
タが入力された時には、入力制御回路はこれを判断して
割込みデータの処理に応じて、また処理の優先度に応じ
て、バ・rプラインデータの入力を阻止して空き状態を
創り出す。割込みデータは、命令によって規定された処
理を行うユニットが空き状態の時に、バスからユニット
に入力され、処理を受ける。処理を受けた割込みデータ
は、その命令により、その処理以後は、パイプラインを
流れるか、あるいは並列バスに出力でれる。割込データ
とパイプラインデータとは、識別用のピットを設けるこ
とによって入力制御回路7にて容易に区別できる。また
、割込みデータをどのユニットに転送するかは、ユニッ
トにアドレスを付けておけばよい。このアドレスととも
に割込みデータを並列バスへ転送し、各ユニットがバス
上のアドレスと自分に割当てられたアドレスとを比較す
ることによシ、各ユニットは自分への割込みデータのi
lJ来を独自に−I(I断することができる。
As described above, when interrupt data that requires special processing is input, the input control circuit determines this and selects the barrer according to the processing of the interrupt data and the priority of the processing. Create an empty state by preventing input of line data. Interrupt data is input to the unit from the bus and processed when the unit that performs the processing specified by the instruction is in an idle state. After the processing, the processed interrupt data flows through the pipeline or is output to the parallel bus, depending on the instruction. Interrupt data and pipeline data can be easily distinguished by the input control circuit 7 by providing identification pits. Further, to determine which unit the interrupt data is transferred to, it is sufficient to assign an address to the unit. By transferring the interrupt data along with this address to the parallel bus, and each unit comparing the address on the bus with the address assigned to itself, each unit receives the interrupt data i.
-I (I) can be cut independently from lJ.

なお、空き状態の設定は1個のみならず複数個つづけて
設定してもよい。さらに優先判断に関しては、例えば優
先ピントをデータに伺加しておいてもよいし、また入力
制御回路7にて優先順位を判断して、その順位に従って
ユニットのアドレスを作成し、並列バスへ、転送するよ
うにすればよい。
Note that the vacant status setting may be made not only for one item but also for a plurality of items in succession. Furthermore, regarding priority determination, for example, a priority focus may be added to the data, or the input control circuit 7 determines the priority order, creates a unit address according to that order, and sends it to the parallel bus. All you have to do is transfer it.

壕だ、並列バスが、命令によシミ気的にユニット間で分
離(バス曹セパレータ)されるようにしてもよい。この
ようにすれば1つのデータ2バスから処理ユニットに入
力すると同時に、分hi〔された別の部分を用いて出力
することが出来、効率の艮い処理が可能となる。
In other words, parallel buses may be selectively separated between units (bus separators). In this way, it is possible to input data from one data 2 bus to the processing unit and output it using another part that has been separated, thereby making it possible to perform processing with high efficiency.

本発明は以上説明したようにパイプラインユニットを並
列に結ぶバス構造と、バイプラ・fンデータとバスデー
タの分がC又は合流の制御を司どる制御機構とを設け、
更にバス制御系の命令でこれを制御することにより、パ
イプラインそのものの効率を低下させることなく、・・
イブライン中の任意の処理ユニットを用いて、パイプラ
インのハードウェアで規定されている一連の処理とは異
った処理をも可能とすることができる。
As explained above, the present invention provides a bus structure that connects pipeline units in parallel, and a control mechanism that controls the C or merging of biplin data and bus data,
Furthermore, by controlling this with bus control instructions, the efficiency of the pipeline itself is not reduced.
By using any processing unit in the pipeline, it is possible to perform processing different from the series of processing defined by the pipeline hardware.

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

第1図は本発明の一実施例によるシステム7゛ロック図
である。 1〜4・・・・・・パイプライン中の処理ユニット、5
・・・・・・パイプライン、6・・・・・・バス、7・
・・・・・入力制御回路。 82図は第1図で示さ九る構り又のパイプラインの状態
遷移図である。 1〜4・・・・・・パイプライン中の処理ユニット、5
・・・・・・パイプライン、100・・・・・・)くイ
ブラインデータのパイプライン中の流れの図、101〜
104・・・・・・パイプラインサイクルタイムごとの
空き状態の遷移図、■・・・・・・有効データのある状
態、・・・・・・・空き状態。
FIG. 1 is a block diagram of a system 7 according to one embodiment of the present invention. 1 to 4...Processing units in the pipeline, 5
...Pipeline, 6...Bus, 7.
...Input control circuit. FIG. 82 is a state transition diagram of the nine pipelines shown in FIG. 1 to 4...Processing units in the pipeline, 5
...Pipeline, 100...) Diagram of flow in pipeline of pipeline data, 101~
104... Transition diagram of free state for each pipeline cycle time, ■... State with valid data, ... Free state.

Claims (1)

【特許請求の範囲】[Claims] 複数の演算ユニットと、これらを直列に接続する第1の
バス機構と、これらを並列に接続する第2のバス機構と
、前記第1のバス機構と第2のバス機構とに接続された
バス制御装置とを有し、このバス制御装置によって処理
すべきデータを前記第1および第2のバス機構に選択的
に転送するようにしたことを特徴とする演算処理装置。
A plurality of arithmetic units, a first bus mechanism that connects them in series, a second bus mechanism that connects them in parallel, and a bus that is connected to the first bus mechanism and the second bus mechanism. 1. An arithmetic processing device comprising: a control device; and data to be processed by the bus control device is selectively transferred to the first and second bus mechanisms.
JP58083069A 1983-05-12 1983-05-12 Operation processor Pending JPS59208649A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58083069A JPS59208649A (en) 1983-05-12 1983-05-12 Operation processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58083069A JPS59208649A (en) 1983-05-12 1983-05-12 Operation processor

Publications (1)

Publication Number Publication Date
JPS59208649A true JPS59208649A (en) 1984-11-27

Family

ID=13791886

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58083069A Pending JPS59208649A (en) 1983-05-12 1983-05-12 Operation processor

Country Status (1)

Country Link
JP (1) JPS59208649A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63124163A (en) * 1986-11-13 1988-05-27 Matsushita Electric Ind Co Ltd Processor array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5367328A (en) * 1976-11-29 1978-06-15 Nec Corp Order process system
JPS5864562A (en) * 1981-10-14 1983-04-16 Hitachi Ltd Signal processor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5367328A (en) * 1976-11-29 1978-06-15 Nec Corp Order process system
JPS5864562A (en) * 1981-10-14 1983-04-16 Hitachi Ltd Signal processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63124163A (en) * 1986-11-13 1988-05-27 Matsushita Electric Ind Co Ltd Processor array

Similar Documents

Publication Publication Date Title
EP0380851A2 (en) Modular crossbar interconnections in a digital computer
JPS59208649A (en) Operation processor
JP2594130B2 (en) Semiconductor circuit
JPS59218561A (en) Microcomputer
JPH02500692A (en) Integration of computational elements in multiprocessor computers
JPH0581040A (en) Computer system
JPS61201338A (en) Processor for data flow
JPH0619706A (en) Pipeline processing circuit
JPH07249062A (en) Generating method for logic circuit
JPH08278939A (en) Method and device for data transfer
JPH07141288A (en) Dma transfer system
JP3652269B2 (en) Signal processing device
JPS6220025A (en) Pipeline system
JPS59103156A (en) Data processing system
JPS607531A (en) Logical simulation device
JPH0262649A (en) Input/output controller
JPS60147836A (en) Arithmetic processor
JPH05241986A (en) Input/output instruction retrying system
JPH01243158A (en) Information processor
JPH0381833A (en) Arithmetic processor
JPS62226364A (en) Information processor
JPS62262145A (en) Output token processing mechanism
JPS6020273A (en) Data transfer system
JPH0341547A (en) Multiprocessor constitution system
JPH03184174A (en) Logic simulator