JPH05298095A - パイプライン演算装置 - Google Patents

パイプライン演算装置

Info

Publication number
JPH05298095A
JPH05298095A JP4097665A JP9766592A JPH05298095A JP H05298095 A JPH05298095 A JP H05298095A JP 4097665 A JP4097665 A JP 4097665A JP 9766592 A JP9766592 A JP 9766592A JP H05298095 A JPH05298095 A JP H05298095A
Authority
JP
Japan
Prior art keywords
register
operand
arithmetic unit
stage
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.)
Pending
Application number
JP4097665A
Other languages
English (en)
Inventor
Yutaka Harada
豊 原田
Kazumasa Takagi
一正 高木
Koji Nakahara
宏治 中原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4097665A priority Critical patent/JPH05298095A/ja
Publication of JPH05298095A publication Critical patent/JPH05298095A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

(57)【要約】 【目的】本発明は、長い語長のオペランドを演算する高
速演算器を提供しようとするものである。 【構成】この目的のために本発明では、マイクロパイプ
ライン方式の演算器で、各ステ−ジに短く分割した該オ
ペランドの演算を割当てる方法を採用する。 【効果】本発明による方式を採用すれば、各パイプライ
ンのステ−ジ毎に短く分割したオペランドの演算を割当
てるため、ハ−ドウエアとして規模の小さな演算器で長
い語長の演算を実行できる。また演算結果はがイプライ
ンの演算ピッチで順次得られ、メモリをいちいち参照す
る必要がないため、高速で演算が完了する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は計算機の演算器構成方法
に係り、特に語長の長いオペランドの演算を実行する演
算器の構成方法に関する。
【0002】
【従来の技術】計算機性能を向上させるには、素子性能
特に回路速度を改良する方法と、計算機構造を改良する
方法とがある。計算機構造を改良するにあたって、計算
機の持つ機能を分割し、命令列でその機能を時分割で使
う方法、いわゆるパイプライン方式を導入することが極
めて有効である。このパイプライン方式については例え
ば”ジ ア−キテクチャ− オブ パイプラインド コ
ンピュ−タ−ズ” ヘミスフェア− パブリッシング
コ−ポレ−ション 1981年(”The Archi
tecture of pipelined comp
uters” Hemisphere Publish
ing Corcoration 1981)に記載さ
れている。さらに、従来のパイプライン方式を改良し、
1個のハ−ドウエアで複数の処理装置を並列動作させる
マイクロパイプライン方式が開示されている。このマイ
クロパイプライン方式では処理機能を従来のパイプライ
ン方式より細かく分割し、分割した機能を各パイプライ
ンに割り当てる方法で、処理が進むにつれてデ−タを順
次のステ−ジに送る。このパイプライン方式については
例えば”マイクロパイプラインズ” コミュニケ−ショ
ン オブ ザ エ−シ−エム vol.32,No.6
June 1989 p720−738(”Micr
opiplines” Communication
of TheACM vol.32,No.6 Jun
e 1989 p720−738)に記載されている。
また、計算機の計算精度はますます高いものが要求さ
れ、演算器の演算語長はますます長いものが必要となっ
ている。従来技術では、語長の長い演算を実行するに
は、目的とする演算語長を包含する様な規模の大きい演
算器を用意するか、ソフトウエア等の制御のもと、オペ
ランドを短い語長に分割し、その短い語長の演算を複数
回繰り返す方法が採用されてきた。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来技術では、演算器の規模が大きくなる、長い語長の演
算を複数の命令に分割するため計算機が命令読みだし、
オペランド読みだし、オペランド格納等のメモリを参照
する回数が多く、演算を完了するまでの演算時間が長く
なる、等の欠点がある。
【0004】本発明の目的は、長い語長のオペランドを
演算する高速演算器を提供しようとするものである。
【0005】
【課題を解決するための手段】上記目的は、演算機能を
複数のステ−ジに分け、処理が進むに連れ順次デ−タを
転送するマイクロパイプライン方式の演算器で、複数ス
テ−ジに分割したオペランドの一部分を割り当てること
により達成される。
【0006】
【作用】本発明による方式を採用すれば、各パイプライ
ンのステ−ジ毎に短く分割したオペランドの演算を割当
てるため、ハ−ドウエアとして規模の小さな演算器で長
い語長の演算を実行できる。また演算結果がイプライン
の演算ピッチで順次得られ、メモリをいちいち参照する
必要がないため、高速で演算が完了する。
【0007】
【実施例】以下に、本発明を実施例を使って説明する。
図2は本実施例の演算器で扱うオペランドを示してい
る。このオペランドは12ビットの語長を持ち、1個の
オペランドを4ビットの短い語長の3個のオペランドに
分割している。本発明では、例えば演算語長4ビットの
マイクロパイプライン方式の演算回路を用意する。従っ
て、12ビットのオペランドの加算演算を実行するには
4ビットオペランドの加算演算を3回実行する。図1は
本発明によるマイクロパイプライン演算器の第1の実施
例である。図1のマイクロパイプライン演算器は、9ス
テ−ジのパイプラインから構成されている。図1の演算
器はレジスタA10、レジスタB20、演算回路30、
インストラクションレジスタ40から構成されている。
この演算器はレジスタA10とレジスタB20にある1
2ビットのオペランドを演算し、その結果をレジスタA
10またはレジスタB20に格納する動作を行うもので
ある。演算器の制御はインストラクションレジスタにあ
る命令語が制御する。この演算器は、例えばジョセフソ
ン素子を使った演算器を想定したもので、各ステ−ジは
3相タイミングで駆動され、活性化領域が重なりあった
部分で前のステ−ジから次のステ−ジにデ−タが転送さ
れる構成である。図1のレジスタA10およびレジスタ
B20何れも4ビットごとに3個のオペランドに分割さ
れている。また、レジスタA10およびレジスタB20
はステ−ジ0からステ−ジ2までの3相のクロックで駆
動されるシフトレジスタを構成しており、最終段のデ−
タは初段に戻る構成となっている。従って、3相クロッ
クの進行に従ってデ−タが各レジスタ内を循環すため該
デ−タを保持することができる。該レジスタA10、レ
ジスタB20の12ビットデ−タはマルチプレクサ6
1、62を介して演算回路30に供給される。マルチプ
レクサ60、61はレジスタA10、レジスタB20の
分割されたオペランドから1個の4ビットオペランド
を、インストラクションレジスタ40の命令語を参照し
て選択する。従って、マルチプレクサはレジスタA1
0、レジスタB20の3個に分割された4ビットオペラ
ンドを順次該演算回路30に送る事ができる。演算回路
30は4ステ−ジから構成されている。演算回路30の
出力(演算結果)はレジスタ50を介してレジスタA1
0、レジスタB20に戻される。各レジスタはマルチプ
レクサ70a、70bを介して演算回路30から戻され
たデ−タかレジスタ自身で循環させているデ−タのどち
らかを選択する。図3に図1に示す演算器のタイミング
を示す。各ステ−ジは3相のクロックで活性化される。
レジスタA10、レジスタB20はステ−ジ0からステ
−ジ2までの3相で駆動され、レジスタ内をデ−タが循
環する。演算の実行はステ−ジ3からステ−ジ8までの
6相で実行される。その内、4ビット演算回路30はス
テ−ジ4からステ−ジ7までの4相である。該レジスタ
内を循環する12ビットのオペランドは、最初のステ−
ジ3で最も下位の4ビット分が選択され4ビット演算回
路30に送られる。4ビット演算回路30では、ステ−
ジ4からステ−ジ7までの最初の処理の流れの中で、4
ビットオペランド間の演算が実行される。演算結果はス
テ−ジ8を通過してステ−ジ0でレジスタA10または
レジスタB20に書き込まれる。同様に、分割された中
位の4ビットオペランド、上位の4ビットオペランド何
れも順次4ビット演算回路30に転送され、2番目、3
番目の処理の流れの中で4ビット毎に演算が実行され
る。従って、3本の処理の流れを経て1個の命令実行が
完了する。図2は2個の命令を実行する例を示してい
る。分割されたオペランド間演算でのデ−タのやり取り
は個々の処理の流れの間で実行される。図3で最初の処
理の流れと、2番目の処理の流れの間では例えば、ステ
−ジ5からステ−ジ3にデ−タの転送が行われている。
この様な処理流れの間におけるデ−タの転送は、例えば
加算演算でキャリ−の伝搬等で頻繁に実行される。図4
は図3に示す3相のクロックで活性化されるパイプライ
ン方式で処理の流れの間でデ−タを転送する方法を示し
ている。この図はパイプライン動作に従って順次転送さ
れるデ−タ35と他の処理の流れに転送されるデ−タ4
0、他の処理流れから転送されたデ−タ36を示してい
る。例えば、ステ−ジ8にあるデ−タはチャンネル31
を介してステ−ジ3に転送される。これは1番目の処理
流れから3番目の処理流れにデ−タを転送することに他
ならない。同様に、ステ−ジ6からステ−ジ4にチャン
ネル32を介してデ−タが送られているが、これは2番
目の処理流れから3番目の処理流れにデ−タを転送して
いることになる。図5は演算回路30の回路構成例であ
る。この回路は例えばジョセフソン素子を使うと想定し
て組んである。演算回路30は桁上げ先見加算回路で、
4個のステ−ジから構成されている。この構成で次の処
理流れに転送するデ−タは、4ビット毎に桁上げするキ
ャリ−C4、桁上げ先見回路の信号P4、G4の3個の
信号である。また、下位より転送されたキャリ−C4は
上位のキャリ−C_として受け取られる。
【0008】図6は本発明による第2の実施例である。
図6の例は、12ビットのレジスタを4ビットのレジス
タ3個に分割し、各々を各ステ−ジに割り付ける方法で
ある。図6の例では、レジスタはレジスタA110、レ
ジスタB120、レジスタC130、レジスタD140
の4個ある。各レジスタは4ビットのシフトレジスタか
ら構成されており、その最終段の出力は初段に戻されて
いるため、デ−タは該シフトレジスタの内部を循環す
る。図6の例では各レジスタは9段の4ビットシフトレ
ジスタで構成されている。更に該シフトレジスタは3相
のクロックで駆動されるため、該シフトレジスタには3
語、すなわち12ビットのデ−タを保持することができ
る。従って、該シフトレジスタには12ビットのオペラ
ンドを4ビットづつに分け、連続する3語で保持するこ
とができる。レジスタA110、レジスタB120、レ
ジスタC130、レジスタD140の保持するオペラン
ドは4ビット毎にステ−ジ3でチャンネル80、81、
82、83、マルチプレクサ60、61を介して演算回
路30に転送される。演算回路30では、4ビットオペ
ランドが転送される毎に1番目から3番目までの処理流
れを形づくり、オペランド間の演算を実行する。演算結
果はマルチプレクサ170a、170b、170c、1
70dを介して該シフトレジスタに格納される。図6の
構成では、演算回路30の動作と並行にレジスタ間のデ
−タ処理が可能である。図6の実施例ではステ−ジ6で
チャンネル180、マルチプレクサ190を介してレジ
スタA110からレジスタB120にデ−タを転送する
例を示している。
【0009】本実施例ではジョセフソン素子を念頭に3
相クロックで駆動する例を示したが、本発明を単相や、
他の多相のクロックで駆動される回路に適用でき、ま
た、ステ−ジの分割数を変えればオペランドを任意の数
に分割したパイプライン演算器を構成できることも明ら
かである。
【0010】
【発明の効果】本発明は、ハ−ドウエアの使用効率を高
め、少ない語長の演算回路で長い語長のオペランドを演
算できる高速演算器を実現する。従って、本発明は、高
性能の処理装置を実現する極めて有効な手段を提供する
ものである。
【図面の簡単な説明】
【図1】本発明による第1のマイクロパイプライン演算
器の実施例
【図2】オペランドの構成例
【図3】第1の実施例による演算器のタイミング図
【図4】処理流れ間のデ−タの転送方法
【図5】4ビット演算回路例
【図6】本発明による第2のマイクロパイプライン演算
器の実施例
【符号の説明】
10:レジスタA、 20:レジスタB、 30:演算
回路、 40:インストラクションレジスタ、 50:レジスタ 60、61、70a、70b:マルチプレクサ、 35:処理流れ内で順次転送されるデ−タ、 34、36:処理流れ間で転送されるデ−タ 31、32、80、81、82、83:チャンネル、 110、120、130、140:レジスタ 170a、170b、170c、170d:マルチプレ
クサ 180:チャンネル、 190:マルチプレクサ

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】複数のレジスタと演算回路からなる演算器
    であって、演算機能を複数のステ−ジに分け、処理が進
    むに連れ順次デ−タを転送するマイクロパイプライン方
    式の演算器であって、該複数ステ−ジに分割したオペラ
    ンドの一部分を割り当てる事を特徴とする演算器。
  2. 【請求項2】特許請求の範囲第1項において、演算回路
    の語長がオペランドの語長より短い事を特徴とする演算
    器。
  3. 【請求項3】特許請求の範囲第2項において、該複数ス
    テ−ジ間でデ−タを転送する機能を有することを特徴と
    する演算器。
  4. 【請求項4】特許請求の範囲第3項において、複数のレ
    ジスタからオペランドの一部を順次演算回路に転送し、
    該転送されたオペランドは演算回路の複数のステ−ジを
    進む事により演算が実行され、実行結果が該複数のレジ
    スタに格納されることを特徴とする演算器。
  5. 【請求項5】特許請求の範囲第3項において、オペラン
    ドは演算器の語長に相当する短い語長の複数のオペラン
    ドに分割され、該短いオペランドの語長のシフトレジス
    タで該オペランドを格納するレジスタを構成し、演算回
    路のステ−ジの進行と、該シフトレジスタのデ−タ転送
    が同期する事を特徴とする演算器。
JP4097665A 1992-04-17 1992-04-17 パイプライン演算装置 Pending JPH05298095A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4097665A JPH05298095A (ja) 1992-04-17 1992-04-17 パイプライン演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4097665A JPH05298095A (ja) 1992-04-17 1992-04-17 パイプライン演算装置

Publications (1)

Publication Number Publication Date
JPH05298095A true JPH05298095A (ja) 1993-11-12

Family

ID=14198346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4097665A Pending JPH05298095A (ja) 1992-04-17 1992-04-17 パイプライン演算装置

Country Status (1)

Country Link
JP (1) JPH05298095A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6003127A (en) * 1995-10-04 1999-12-14 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6003127A (en) * 1995-10-04 1999-12-14 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations
US6308263B1 (en) 1995-10-04 2001-10-23 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations

Similar Documents

Publication Publication Date Title
EP0053457B1 (en) Data processing apparatus
US5068819A (en) Floating point apparatus with concurrent input/output operations
JPH0230538B2 (ja)
JPS6077265A (ja) ベクトル処理装置
JPH03138759A (ja) 信号プロセツサ
JPH07122853B2 (ja) コンピュータ及び命令処理方法
GB2122781A (en) Multimicroprocessor systems
US4837678A (en) Instruction sequencer for parallel operation of functional units
EP0295646B1 (en) Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus
JPS61160176A (ja) ベクトル処理装置
US7409529B2 (en) Method and apparatus for a shift register based interconnection for a massively parallel processor array
Kratz et al. A microprogrammed approach to signal processing
JP2518293B2 (ja) デ−タフロ−プロセツサ
US8024549B2 (en) Two-dimensional processor array of processing elements
EP0239634A1 (en) Multizone processor
US5192882A (en) Synchronization circuit for parallel processing
JPH0282378A (ja) 並列計算機におけるイベントスケジューリング処理方式
EP0136218A2 (en) Multiple port pipelined processor
JP3144859B2 (ja) 算術論理演算装置
EP0348030B1 (en) Computing sequence result availability
JPS63141131A (ja) パイプライン制御方式
JP2760808B2 (ja) データ処理装置
JP2545798B2 (ja) デイジタル信号処理回路
JPH05298096A (ja) 処理装置
JPS60205647A (ja) デ−タ処理装置