JPS60136875A - ベクトル演算器 - Google Patents
ベクトル演算器Info
- Publication number
- JPS60136875A JPS60136875A JP58244042A JP24404283A JPS60136875A JP S60136875 A JPS60136875 A JP S60136875A JP 58244042 A JP58244042 A JP 58244042A JP 24404283 A JP24404283 A JP 24404283A JP S60136875 A JPS60136875 A JP S60136875A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- phase
- latch
- cyclic
- output
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の対象〕
本発明は、ベクトル演算器に関し、特に巡回型計算を高
速に処理するものに関する。
速に処理するものに関する。
最近のベクトル演算器は、パイプライン制御方式が採用
され、この制御により、演算処理を複数段のステージと
よばれる概念的データ処理過程に分割し、演算器に間断
なく被演算データを入力することによシ、演算の高速化
を計っている。パイプライン制御によシ、高速処理が可
能となる必要十分なる条件は、演算に用いられる被演算
データ要素間に「独立々」関係を有することである。
され、この制御により、演算処理を複数段のステージと
よばれる概念的データ処理過程に分割し、演算器に間断
なく被演算データを入力することによシ、演算の高速化
を計っている。パイプライン制御によシ、高速処理が可
能となる必要十分なる条件は、演算に用いられる被演算
データ要素間に「独立々」関係を有することである。
ところで、巡回型演算は次式で示されるように、
$i+、=Zi+α、(器=0.1,2.・・) ・
(1)直前の計算結果を必要とし、[独立な]関係を満
足しない。このため、ベクトル演算器に間断なく被演算
データを入力することはできず、演算器からの出力を待
って、該出力を再度ベクトル演算器に入力しなければな
らない。このため、ベクトル演算器のステージ段数以上
のクロックタイミングだけ被演算データを入力すること
を中断させる制御を行う必要がある。この中断によるベ
クトル演算器の巡回型計算に対する処理能力の低下は、
最新の超高速計算機に於いては他の[独立」に実行でき
る型の計算に比べ数分の−から士数分の−におよんでい
る。この顕著な性能の低下は巡回型計算のみに関するも
のではなく、ベクトル処理装置のチェイニング制御によ
って複数個のベクトル演算の入出力を概念的に結合させ
、連続する演算処理を高速化する方式においては、巡回
型計算の後続する演算処理全体の性能低下をもたらすと
いう欠点を生じる。
(1)直前の計算結果を必要とし、[独立な]関係を満
足しない。このため、ベクトル演算器に間断なく被演算
データを入力することはできず、演算器からの出力を待
って、該出力を再度ベクトル演算器に入力しなければな
らない。このため、ベクトル演算器のステージ段数以上
のクロックタイミングだけ被演算データを入力すること
を中断させる制御を行う必要がある。この中断によるベ
クトル演算器の巡回型計算に対する処理能力の低下は、
最新の超高速計算機に於いては他の[独立」に実行でき
る型の計算に比べ数分の−から士数分の−におよんでい
る。この顕著な性能の低下は巡回型計算のみに関するも
のではなく、ベクトル処理装置のチェイニング制御によ
って複数個のベクトル演算の入出力を概念的に結合させ
、連続する演算処理を高速化する方式においては、巡回
型計算の後続する演算処理全体の性能低下をもたらすと
いう欠点を生じる。
本発明の目的は、ハードウェア量のいちじるしい増大を
招くことなく°、巡回型演算の高速化を計ったベクトル
演算器を提供するととにある。
招くことなく°、巡回型演算の高速化を計ったベクトル
演算器を提供するととにある。
巡回型演算の特徴は「直前の結果を使用し処理を行う」
ことにあるが、この「直前」は1つ前の結果を意味して
いるわけではない。巡回型演算の一般式 %式%) 〔ここでf(−)は変数X、の関数を意味している〕か
ら、次のような式の変形を行なうと、xi++ f C
fCx1 + ) ) = t<xi + )[直前」
は2つ前の結果を意味することになる。この式の変形操
作をくりかえすことにょシ、任意の正の数ルに対し、 xt++ =f (f(”””f Cjci−n) )
−L(”1−yb)、なる関係式をうる。この式は0
≦m≦ル なる全てのmについて、 ”z++十m = ’(”i−n十m )Nを満足する
。従ってX。、Xl、・・”m + ・・・−(初期値
)から、並列的に”n+ j r ”fL+ 2 +
””” ”yt+m+ + +x2 rL+ Iという
ル+1個の結果を得ることができる。この方式によると
、巡回型演算を行なうためにはル千1個の演算器を必要
とする。さらに関数fから導かれる関数iは、概してf
に比較し複雑な形式となり、変数、i、 、十□から’
(”1−rL+m ) を計算する際、必要となる演
算器の数はfを計算する場合と比べ、一般的に多くなる
。これらの理由から、巡回演算の並列処理方式は必然的
にハードウェア量の著しい増大をもたらす。
ことにあるが、この「直前」は1つ前の結果を意味して
いるわけではない。巡回型演算の一般式 %式%) 〔ここでf(−)は変数X、の関数を意味している〕か
ら、次のような式の変形を行なうと、xi++ f C
fCx1 + ) ) = t<xi + )[直前」
は2つ前の結果を意味することになる。この式の変形操
作をくりかえすことにょシ、任意の正の数ルに対し、 xt++ =f (f(”””f Cjci−n) )
−L(”1−yb)、なる関係式をうる。この式は0
≦m≦ル なる全てのmについて、 ”z++十m = ’(”i−n十m )Nを満足する
。従ってX。、Xl、・・”m + ・・・−(初期値
)から、並列的に”n+ j r ”fL+ 2 +
””” ”yt+m+ + +x2 rL+ Iという
ル+1個の結果を得ることができる。この方式によると
、巡回型演算を行なうためにはル千1個の演算器を必要
とする。さらに関数fから導かれる関数iは、概してf
に比較し複雑な形式となり、変数、i、 、十□から’
(”1−rL+m ) を計算する際、必要となる演
算器の数はfを計算する場合と比べ、一般的に多くなる
。これらの理由から、巡回演算の並列処理方式は必然的
にハードウェア量の著しい増大をもたらす。
一方、複数ステージ段数を有するベクトル演算器を用い
て、巡回型演算処理を行なうと、第1図に示すように、
時間とZテーツの2要素から成る空間(以後この空間を
πとよぶ)において、有効な演算の行なわれている部分
(第1図ハツチング部分)はきわめて少々い。従ってπ
内の無効処理を示す部分において、巡回演算の並列処理
方法の関数tの処理および巡回演算並列処理を行なえば
、ルの値は空間π内の無効部分によって制限を課せられ
るが、ハードウェアの増大を招くことなく、巡回型演算
の並列処理が可能となる。
て、巡回型演算処理を行なうと、第1図に示すように、
時間とZテーツの2要素から成る空間(以後この空間を
πとよぶ)において、有効な演算の行なわれている部分
(第1図ハツチング部分)はきわめて少々い。従ってπ
内の無効処理を示す部分において、巡回演算の並列処理
方法の関数tの処理および巡回演算並列処理を行なえば
、ルの値は空間π内の無効部分によって制限を課せられ
るが、ハードウェアの増大を招くことなく、巡回型演算
の並列処理が可能となる。
以上の方式を具体的な例によって示す。最も簡単な巡回
型演算 ”i++=Jci+αt を次のように変形する。
型演算 ”i++=Jci+αt を次のように変形する。
”i+1−”i−+ + at−+ + aiこの式を
基準にすると、具体的な巡回計算は、x2−xo+(α
。+(1+) 、z’、 =、z’、 + (α、+α2):t4=J
2+(α2+α5) となる。ここでX。+”+は初期値として与えられてい
る。この一連の計算を、α、十α、+5部分と、3:i
+、=”i+ ・・・部分とに分離し、両者を時分割し
たベクトル演算器によって処理する場合、π空間は第2
図(α)のようになる。第1図と第2図(α)を比較す
れば明らかなように、 1)第2図のπ空間の有効演算部分が並列処理方式によ
って第1図のそれよシ拡大し、その結果、 2)出力の得られる速度が約2倍になっている。
基準にすると、具体的な巡回計算は、x2−xo+(α
。+(1+) 、z’、 =、z’、 + (α、+α2):t4=J
2+(α2+α5) となる。ここでX。+”+は初期値として与えられてい
る。この一連の計算を、α、十α、+5部分と、3:i
+、=”i+ ・・・部分とに分離し、両者を時分割し
たベクトル演算器によって処理する場合、π空間は第2
図(α)のようになる。第1図と第2図(α)を比較す
れば明らかなように、 1)第2図のπ空間の有効演算部分が並列処理方式によ
って第1図のそれよシ拡大し、その結果、 2)出力の得られる速度が約2倍になっている。
この巡回型演算に対する顕著な効果は、ベクトル演算器
を増加させることなく、1つの演算器を時分割すること
によりもたらされている。
を増加させることなく、1つの演算器を時分割すること
によりもたらされている。
次にベクトル演算器を複数個直列に連結した場合の効果
について、実例を上げて説明する。
について、実例を上げて説明する。
次のような一次巡回式
%式%)
をパイプライン制御方式によって演算するためには、乗
算器と加算器を直列に連結する。当該ハードウェア構成
のベクトル演算器において、従来の巡回演算方式のπ空
間図を示すと第3図のようになる。上記−次巡回式を次
のように変形する。
算器と加算器を直列に連結する。当該ハードウェア構成
のベクトル演算器において、従来の巡回演算方式のπ空
間図を示すと第3図のようになる。上記−次巡回式を次
のように変形する。
x、、 =x6−、 +(a7 、 *a6)+(41
6、+a6+46 )ゆえに、 J2=、z’o+ ((Zo矢α+)+(’o”++’
+)x、=x、餐(α、■−α2)+(41苦α2+4
2)x4=x2七(α2蒼α3)+(石、蒼α3+尋、
)x5=x、+(a、蒼a4)+(lr、+a44−4
4)を得る。この一連の巡回計算を、時分割した乗加算
器連結型のベクトル演算器によって処理する場合のπ空
間図を第4図に示す。
6、+a6+46 )ゆえに、 J2=、z’o+ ((Zo矢α+)+(’o”++’
+)x、=x、餐(α、■−α2)+(41苦α2+4
2)x4=x2七(α2蒼α3)+(石、蒼α3+尋、
)x5=x、+(a、蒼a4)+(lr、+a44−4
4)を得る。この一連の巡回計算を、時分割した乗加算
器連結型のベクトル演算器によって処理する場合のπ空
間図を第4図に示す。
第4図から明らかなように、パイプライン演算器を直列
に結合した型式のベクトル演算器の6場合にも、該演算
器を時分割使用することにより、巡回型演算の処理速度
を向上させることができる。
に結合した型式のベクトル演算器の6場合にも、該演算
器を時分割使用することにより、巡回型演算の処理速度
を向上させることができる。
以下、本発明の一実施例を具体的演算例にっ。
いて説明する。次の型式の巡回型計算について、X乙+
j=xi+αL を、X困−”i−+ +(ai−1+α、)と変形した
時の演算処理を、入力オペランドと出方について示すと
第5図のようになる。
j=xi+αL を、X困−”i−+ +(ai−1+α、)と変形した
時の演算処理を、入力オペランドと出方について示すと
第5図のようになる。
第5図において、ベクトル演算器の処理は、クロック番
号に従って上昇順に行なわれる。このベクトル演算器(
との実施例の場合は加算器)の処理は、処理の性質によ
ってP、N、Eの3種類に分割することができる。この
うち、N−7エイズは実際は何らの処理も行なわないフ
ェイズである。変数lは計算対象のベクトルXの最終要
素番号を示す。第5図では、とのlを奇数とした。lが
偶数の場合は、最後のE−7エイズでxlを計算する手
続と、そのための入力オペランド計算のP−7エイズが
騒となる。コノ末端処理を行なった場合の処理図は本発
明の概念とは直接関係ないので省略しである。
号に従って上昇順に行なわれる。このベクトル演算器(
との実施例の場合は加算器)の処理は、処理の性質によ
ってP、N、Eの3種類に分割することができる。この
うち、N−7エイズは実際は何らの処理も行なわないフ
ェイズである。変数lは計算対象のベクトルXの最終要
素番号を示す。第5図では、とのlを奇数とした。lが
偶数の場合は、最後のE−7エイズでxlを計算する手
続と、そのための入力オペランド計算のP−7エイズが
騒となる。コノ末端処理を行なった場合の処理図は本発
明の概念とは直接関係ないので省略しである。
第5図の動作を行なう論理回路図の概要を第6図に示す
。
。
第6図において、1は被演算データα、Xを保持してい
るベクトルレジスタ2および3へのリクエスト要求に、
よる当該レジスタ書込みおよび読出しアドレスを生成す
るベクトルレジスタ制御回路である。ここでX。、x、
要素はすでに定義されているものとする。4は第5図1
こ示した巡回演算のフェイズを定義する制御回路(以後
フェイズジェネレータとよぶ)である。5.6.7.1
0.11は被演算データ(α、)が保持されるラッチ回
路で、当該ラッチ回路上の(0問は次の(”L++)が
ベクトルレジスタ2から送出されると、次の段のラッチ
回路へ送シ出されるものとする。14はバイブ2イン制
御方式の加算器8.9は当該加算器14によってP−7
エイズに計算された((α、−1+α、))を保持する
ラッチ回路であシ、当該ラッチ回路上のデータも、次の
((α、十αL+、))が加算器14によって送出され
ると、次段のラッチ回路へ自動的にセットされるよう制
御される。
るベクトルレジスタ2および3へのリクエスト要求に、
よる当該レジスタ書込みおよび読出しアドレスを生成す
るベクトルレジスタ制御回路である。ここでX。、x、
要素はすでに定義されているものとする。4は第5図1
こ示した巡回演算のフェイズを定義する制御回路(以後
フェイズジェネレータとよぶ)である。5.6.7.1
0.11は被演算データ(α、)が保持されるラッチ回
路で、当該ラッチ回路上の(0問は次の(”L++)が
ベクトルレジスタ2から送出されると、次の段のラッチ
回路へ送シ出されるものとする。14はバイブ2イン制
御方式の加算器8.9は当該加算器14によってP−7
エイズに計算された((α、−1+α、))を保持する
ラッチ回路であシ、当該ラッチ回路上のデータも、次の
((α、十αL+、))が加算器14によって送出され
ると、次段のラッチ回路へ自動的にセットされるよう制
御される。
12.15は加算器14によって計算された(−)を保
持するラッチ回路である。本回路も次の(”i++ )
が加算器14によって計算されると、次段へ自動的に進
むよう制御されている。これらの次段ラッチ回路への自
動セットは、データ生成時のデータの有効性を示すイネ
ーブル信号を用いて、ラッチ内のデータを次段ラッチ回
路へセットすればよく、第6図には簡約化のためその制
御回路は省略されている。
持するラッチ回路である。本回路も次の(”i++ )
が加算器14によって計算されると、次段へ自動的に進
むよう制御されている。これらの次段ラッチ回路への自
動セットは、データ生成時のデータの有効性を示すイネ
ーブル信号を用いて、ラッチ内のデータを次段ラッチ回
路へセットすればよく、第6図には簡約化のためその制
御回路は省略されている。
第6図のベクトル演算器に起動指示が行なわれると、ベ
クトルレジスタ制御回路1はパス21上に加算器スター
トを意味する信号を送る。当゛該信号によって、フェイ
ズジェネレータ4は第5図のP−7エイズを指示する信
号を生成し、この信号をパス23を通して、セレクタ1
6.17に送る。
クトルレジスタ制御回路1はパス21上に加算器スター
トを意味する信号を送る。当゛該信号によって、フェイ
ズジェネレータ4は第5図のP−7エイズを指示する信
号を生成し、この信号をパス23を通して、セレクタ1
6.17に送る。
一方、ベクトルレジスタ制御回路1は、7エイズジエネ
レータ4がP−7工イズ信号を生成し、当該信号をセレ
クタ16 、17へ送出するタイミングに合致するよう
、ベクトルレジスタ2上のデータα。、al、α2.・
・・・・を、リクエストパス20゜データバス24を通
して、ラッチ回路群5.6.7.10.11へ送る。第
6図から明らかなように、ラッチ7にα。がセットされ
た時、2ツチ11にはα1がセットされている。P−7
エイズでは、セレクタ16.17はそれぞれラッチ7.
11側の出力を選択し、結果を加算器14へ送る。加算
器14では、送られたデータが順次変換され、定まった
タイミング後、加算結果が7リツプフロツプ1已に得ら
れる。
レータ4がP−7工イズ信号を生成し、当該信号をセレ
クタ16 、17へ送出するタイミングに合致するよう
、ベクトルレジスタ2上のデータα。、al、α2.・
・・・・を、リクエストパス20゜データバス24を通
して、ラッチ回路群5.6.7.10.11へ送る。第
6図から明らかなように、ラッチ7にα。がセットされ
た時、2ツチ11にはα1がセットされている。P−7
エイズでは、セレクタ16.17はそれぞれラッチ7.
11側の出力を選択し、結果を加算器14へ送る。加算
器14では、送られたデータが順次変換され、定まった
タイミング後、加算結果が7リツプフロツプ1已に得ら
れる。
フェイズジェネレータ4が生成した7工イズ信号は、加
算器14のステージ段数定義されているディレィラッチ
群15を通過し、上記の演算結果(α。+al)が7リ
ツプ70ツブ1Bに得られたタイミングに一致するよう
、P−7エイズを意味する信号をスイッチング回路19
へ送る。当該回路19はバス25をP−7工イズ時に選
択し、。
算器14のステージ段数定義されているディレィラッチ
群15を通過し、上記の演算結果(α。+al)が7リ
ツプ70ツブ1Bに得られたタイミングに一致するよう
、P−7エイズを意味する信号をスイッチング回路19
へ送る。当該回路19はバス25をP−7工イズ時に選
択し、。
加算結果(、a。+α、)はラッチ8にセットされる。
。
同様にして、次のタイミングでは(α、十α2)がラッ
チ8に、ラッチ9には(α。+α、)がセットされる、 次に7エイズジエネレータ4はフェイズ切換えを行い、
N−7工イズ信号をパス23上に送出する。N−7エイ
ズではセレクタ16.17、およびスイッチング回路1
9ともに有意なデータを選択するようなパス間の接続を
行なわない。従って、ラッチ7.11上のデータはその
まま保持される。一方当該N−フェイズでは、ディレィ
ラッチ群15の出力信号(バス44)によって、セレク
タ42を作用させ、ベクトルレジスタ出力バス43とラ
ッチ12のデータバス接続を行なう。
チ8に、ラッチ9には(α。+α、)がセットされる、 次に7エイズジエネレータ4はフェイズ切換えを行い、
N−7工イズ信号をパス23上に送出する。N−7エイ
ズではセレクタ16.17、およびスイッチング回路1
9ともに有意なデータを選択するようなパス間の接続を
行なわない。従って、ラッチ7.11上のデータはその
まま保持される。一方当該N−フェイズでは、ディレィ
ラッチ群15の出力信号(バス44)によって、セレク
タ42を作用させ、ベクトルレジスタ出力バス43とラ
ッチ12のデータバス接続を行なう。
この動作により、ベクトルXの初期値”D % xjが
ラッチ12.15にセットされる。当該セットタイミン
グ時、7エイズジエネレータ4はP−フェイズ信号を生
成しておシ、セレクタ17はラッチ11と加算器14と
のバスの結合を行なっている。このタイミング時、ラッ
チ7にはα2、ラッチ11にはα、が格納されておシ、
この2番目のP−7エイズにおいて加算器14は、(α
2+α3)、・(α5+α4)の処理を行なう。当該出
力がラッチ18に格納されたタイミングでは、7エイズ
ジエネレータはE−7エイズを生成しておシ、セレクタ
16.17に作用して、ラッチ回路13側を選択し、当
該出力を、加算器14へ送る。加算器11の出力、即ち
”2 、”3は、その値が生成された時点、では、スイ
ッチング回路19およびセレクタ42はバス26を選択
しているので、ラッチ回路1213へ順次セットされる
。、z2、x5がラッチ回路12.15にセットされる
時、セレクタ17はP−7工イズ信号(第2図<4)参
照)によって、ラッチ回路11側の出力を選択して、次
のP−7エイズの被演算データを、加算器14へ送出で
きるよう。
ラッチ12.15にセットされる。当該セットタイミン
グ時、7エイズジエネレータ4はP−フェイズ信号を生
成しておシ、セレクタ17はラッチ11と加算器14と
のバスの結合を行なっている。このタイミング時、ラッ
チ7にはα2、ラッチ11にはα、が格納されておシ、
この2番目のP−7エイズにおいて加算器14は、(α
2+α3)、・(α5+α4)の処理を行なう。当該出
力がラッチ18に格納されたタイミングでは、7エイズ
ジエネレータはE−7エイズを生成しておシ、セレクタ
16.17に作用して、ラッチ回路13側を選択し、当
該出力を、加算器14へ送る。加算器11の出力、即ち
”2 、”3は、その値が生成された時点、では、スイ
ッチング回路19およびセレクタ42はバス26を選択
しているので、ラッチ回路1213へ順次セットされる
。、z2、x5がラッチ回路12.15にセットされる
時、セレクタ17はP−7工イズ信号(第2図<4)参
照)によって、ラッチ回路11側の出力を選択して、次
のP−7エイズの被演算データを、加算器14へ送出で
きるよう。
バスの接続を完了している。
一方、E−7エイズで計算された”2 、”Aはベクト
ルレジスタ制御回路1のアドレス生成値に従い、バス2
6を通って、ベクトルレジスタ回路3へ書込まれる。
ルレジスタ制御回路1のアドレス生成値に従い、バス2
6を通って、ベクトルレジスタ回路3へ書込まれる。
以上のP−、E−7エイズのくりかえしにょシ巡回型演
算が実行される。
算が実行される。
第7図に、フェイズジェネレータ回路4の概・略図を示
す。本図は第6図と番号づけを共有している。第7図に
おいて、30はタイミングジェネレータ、31は2ビツ
トのサイクリックカウンタ、52d2ビツトの7リツプ
フロツプ、33.34はベクトルレジスタ制御回路1か
らの起動信号、およびデータ送出終了信号をフェイズジ
ェネレータが適切なタイミングで受信するためのディレ
ィのためのラッチ群、55.56は論理積回路、37は
論理和回路、67はインバータである。フェイズジェネ
レータ4が起動される際、カウンタ61は’11’にリ
セットされる。
す。本図は第6図と番号づけを共有している。第7図に
おいて、30はタイミングジェネレータ、31は2ビツ
トのサイクリックカウンタ、52d2ビツトの7リツプ
フロツプ、33.34はベクトルレジスタ制御回路1か
らの起動信号、およびデータ送出終了信号をフェイズジ
ェネレータが適切なタイミングで受信するためのディレ
ィのためのラッチ群、55.56は論理積回路、37は
論理和回路、67はインバータである。フェイズジェネ
レータ4が起動される際、カウンタ61は’11’にリ
セットされる。
ここでバス23上の信号を次のように定義する。
00′はP−フェイズ、″11′はN−フェイズ、10
′はE−7エイズ、01′は無意味な信号とする。フェ
イズジェネレータ4に起動がかかり、タイミングパルス
が、カウンタ31に送り出されると、カウンタ値は00
′→’oi’→’10’→’11’→ ・と変化。
′はE−7エイズ、01′は無意味な信号とする。フェ
イズジェネレータ4に起動がかかり、タイミングパルス
が、カウンタ31に送り出されると、カウンタ値は00
′→’oi’→’10’→’11’→ ・と変化。
する。この値は直ちにフリップフロップ32にセットさ
れる。バス40は該クリップ70ツブ3200ビツト(
以下上位ビットという)出力端に接続されている。従っ
て、バス25の上位ビントはスタートから2クロック間
10′となる。この時、ベクトルレジスタ制御回路1か
らの終了信号はバス22上に送信されていないので、論
理積回路36の出力は0′となシ、回路37の出力も0
′となる。
れる。バス40は該クリップ70ツブ3200ビツト(
以下上位ビットという)出力端に接続されている。従っ
て、バス25の上位ビントはスタートから2クロック間
10′となる。この時、ベクトルレジスタ制御回路1か
らの終了信号はバス22上に送信されていないので、論
理積回路36の出力は0′となシ、回路37の出力も0
′となる。
即ちバス23上の下位ビットが0′となシ、P−7エイ
ズを意味する信号を生成する。
ズを意味する信号を生成する。
3クロツク以後、カウンタ31の出力の上位ビットは1
1′となる。一方、ベクトルレジスタ制御回路1からバ
ス21上に送り出された[スタート信号」は、ディレィ
ラッチ群33を通り、3クロックタイミング時に合致す
るより論理積回路350入力となる。従って、バス23
の下位ビットは1′とな)、上位ビットと合わせてN−
7エイズを意味する信号を生成する。ここで、[スター
ト信号」は2クロック間、ベクトルレジスタ制御回路1
が送出するものと仮定している。もし当該信号を1クロ
ック間有効とする場合、フェイズジェネレータ内で、カ
ウンタ61の出力を利用して、さらにもう1クロック間
、「スタート−信号」を保持する論理が必要である。当
該論理は本発明の根幹とは直接関係しないので、説明を
簡約化するため、第7図からは当該論理を除いた。同様
にベクトルレジスタ制御回路1からバス22上に送出さ
れる「終了信号」についても、以後の説明では、2クロ
ック間送出されるものとする。
1′となる。一方、ベクトルレジスタ制御回路1からバ
ス21上に送り出された[スタート信号」は、ディレィ
ラッチ群33を通り、3クロックタイミング時に合致す
るより論理積回路350入力となる。従って、バス23
の下位ビットは1′とな)、上位ビットと合わせてN−
7エイズを意味する信号を生成する。ここで、[スター
ト信号」は2クロック間、ベクトルレジスタ制御回路1
が送出するものと仮定している。もし当該信号を1クロ
ック間有効とする場合、フェイズジェネレータ内で、カ
ウンタ61の出力を利用して、さらにもう1クロック間
、「スタート−信号」を保持する論理が必要である。当
該論理は本発明の根幹とは直接関係しないので、説明を
簡約化するため、第7図からは当該論理を除いた。同様
にベクトルレジスタ制御回路1からバス22上に送出さ
れる「終了信号」についても、以後の説明では、2クロ
ック間送出されるものとする。
N−フェイズ生成後、7エイズジエネレータ4はP−、
E−、・・・・・の順に各7エイズを生成し、該情報を
、パス23上に送信する。
E−、・・・・・の順に各7エイズを生成し、該情報を
、パス23上に送信する。
ベクトルレジスタ制御回路1が[終了信号」を送信した
際、カウンタ31がP−7エイズとなるよう、ベクトル
レジスタ側の制御回路1と、フェイズジェネレータ40
間で、データ送受信に関して、タイミングの一致をとる
必要がある。゛このために、フェイズ切換信号を、バス
41上に送信する。当該信号にょシ、レジスタ制御回路
1は、データの処理状況を知るととができ、最終データ
送出に先だち7エイズジエネレータ4が受けることので
きる適切なタイミングで、「終了信号」をバス22によ
って送信することができる。このように生成された「終
了信号」によって、巡回演算処理の最後の段階で、P−
7エイズをN−フェイズ化する処理が第7図のインバー
タ3日、論理積回路36の組合せで可能となる終了処理
時、生成されるN−フェイズ信号によって、セレクタ4
2(第6図)はバス43側を選択する。この時、バス4
3上のデータについては何ら保証はないが、この最終N
−7エイズの結果は次の演算に使用されることはないの
で、本発明のベクトル演算器の動作は保証される。
際、カウンタ31がP−7エイズとなるよう、ベクトル
レジスタ側の制御回路1と、フェイズジェネレータ40
間で、データ送受信に関して、タイミングの一致をとる
必要がある。゛このために、フェイズ切換信号を、バス
41上に送信する。当該信号にょシ、レジスタ制御回路
1は、データの処理状況を知るととができ、最終データ
送出に先だち7エイズジエネレータ4が受けることので
きる適切なタイミングで、「終了信号」をバス22によ
って送信することができる。このように生成された「終
了信号」によって、巡回演算処理の最後の段階で、P−
7エイズをN−フェイズ化する処理が第7図のインバー
タ3日、論理積回路36の組合せで可能となる終了処理
時、生成されるN−フェイズ信号によって、セレクタ4
2(第6図)はバス43側を選択する。この時、バス4
3上のデータについては何ら保証はないが、この最終N
−7エイズの結果は次の演算に使用されることはないの
で、本発明のベクトル演算器の動作は保証される。
本発明によれば、高速巡回型演算のための前処理と、高
速巡回型演算そのものを、同一のパイプライン演算器に
行わせることができ、演算器時分割処理によシ、巡回型
演算をハードクエ1゜アの著しい増大を招くことなく、
高速化できる。
速巡回型演算そのものを、同一のパイプライン演算器に
行わせることができ、演算器時分割処理によシ、巡回型
演算をハードクエ1゜アの著しい増大を招くことなく、
高速化できる。
効果がある。また従来は不可能であった次のよ。
うな巡回型演算も
’i++ =″i ” ”i +−1−1” ’i−t
+ ’i −2パイプライン乗算器と加算器を直列に
連結した構成のハードウェアによって実現可能である。
+ ’i −2パイプライン乗算器と加算器を直列に
連結した構成のハードウェアによって実現可能である。
当該演算時のπ−空間図を第8図に示す。
第1図はパイプライン演算器によって処理される巡回型
演算処理のπ空間における部分を汗す図、第2図(α)
は本発明によって処理されるr同型演算のπ空間内にお
ける部分を示す図、第2図(4)は本発明による演算器
時分割回路が生成するフェイズのπ空間入力時と出力時
の位相関係を示す図、第3図はπ空間内における計算の
処理図、第4図は本発明による場合のπ空間内の巡回型
演算処理の状態図、第5図は演算器制御回路の生成する
フェイズ情報との対応表を示す図、第6図は第5図で示
した巡回型演算処理を実現するベクトル演算器のブロッ
ク図、第7図は第6図中に示されているフェイズ生成回
鈍1のブロック図、第8図は本発明による場合のπ空間
内の巡回型演算の処理図である。 符号の説明 第6図において、 1・・・ベクトルレジスタ制御回路 2,3・・ベクトルレジスタ 4・・・フェイズジェネレータ 14・・・パイプライン制御方式の加算器第7図におい
て、 30・・・タイミングジェネレータ 31・・・サイクリックカウンタ 32・・・フリップフロップ回路 33 、34・・・ディレィラッチ群 第1圀 etbtP品を 第2Iii] /− (3> 第 3 圀 ρmPu、を 第 4 酌 第 J 第 2 目
演算処理のπ空間における部分を汗す図、第2図(α)
は本発明によって処理されるr同型演算のπ空間内にお
ける部分を示す図、第2図(4)は本発明による演算器
時分割回路が生成するフェイズのπ空間入力時と出力時
の位相関係を示す図、第3図はπ空間内における計算の
処理図、第4図は本発明による場合のπ空間内の巡回型
演算処理の状態図、第5図は演算器制御回路の生成する
フェイズ情報との対応表を示す図、第6図は第5図で示
した巡回型演算処理を実現するベクトル演算器のブロッ
ク図、第7図は第6図中に示されているフェイズ生成回
鈍1のブロック図、第8図は本発明による場合のπ空間
内の巡回型演算の処理図である。 符号の説明 第6図において、 1・・・ベクトルレジスタ制御回路 2,3・・ベクトルレジスタ 4・・・フェイズジェネレータ 14・・・パイプライン制御方式の加算器第7図におい
て、 30・・・タイミングジェネレータ 31・・・サイクリックカウンタ 32・・・フリップフロップ回路 33 、34・・・ディレィラッチ群 第1圀 etbtP品を 第2Iii] /− (3> 第 3 圀 ρmPu、を 第 4 酌 第 J 第 2 目
Claims (1)
- 演算を複数個のステージに分割して処理するパイプライ
ン制御方式のベクトル演算器において、演算処理を複数
基本処理単位に分割して当該基本処理単位を管理する制
御回路を設け、当該制御回路によってベクトル演算器を
時分割で使用することより巡回型演算を行なうことを特
徴とするベクトル演算器。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58244042A JPS60136875A (ja) | 1983-12-26 | 1983-12-26 | ベクトル演算器 |
US06/685,134 US4757444A (en) | 1983-12-26 | 1984-12-21 | Vector processor capable of performing iterative processing |
DE19843446957 DE3446957A1 (de) | 1983-12-26 | 1984-12-21 | Vektor-prozessor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58244042A JPS60136875A (ja) | 1983-12-26 | 1983-12-26 | ベクトル演算器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60136875A true JPS60136875A (ja) | 1985-07-20 |
JPH0514936B2 JPH0514936B2 (ja) | 1993-02-26 |
Family
ID=17112847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58244042A Granted JPS60136875A (ja) | 1983-12-26 | 1983-12-26 | ベクトル演算器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US4757444A (ja) |
JP (1) | JPS60136875A (ja) |
DE (1) | DE3446957A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01258067A (ja) * | 1988-04-06 | 1989-10-16 | Fujitsu Ltd | ベクトル逐次演算方式 |
JPH02266468A (ja) * | 1989-04-06 | 1990-10-31 | Koufu Nippon Denki Kk | ベクトル演算処理装置 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6353678A (ja) * | 1986-08-22 | 1988-03-07 | Hitachi Ltd | ベクトル処理装置 |
EP0281132B1 (en) * | 1987-03-04 | 1995-10-25 | Nec Corporation | Vector calculation circuit capable of rapidly carrying out vector calculation of three input vectors |
EP0314809B1 (en) * | 1987-05-14 | 1993-07-21 | Fujitsu Limited | Vector processor for processing recurrent equations at a high speed |
JPS6462764A (en) * | 1987-09-03 | 1989-03-09 | Agency Ind Science Techn | Vector computer |
JP2512778B2 (ja) * | 1988-01-13 | 1996-07-03 | 株式会社日立製作所 | 演算処理方法 |
US5170370A (en) * | 1989-11-17 | 1992-12-08 | Cray Research, Inc. | Vector bit-matrix multiply functional unit |
US5119323A (en) * | 1990-01-16 | 1992-06-02 | United Technologies Corporation | Numerical processing of optical wavefront data |
EP0453641B1 (de) * | 1990-04-20 | 1997-03-12 | Siemens Aktiengesellschaft | CORDIC-Prozessor für Vektordrehungen in Carry-Save-Architektur |
JPH04177462A (ja) * | 1990-11-08 | 1992-06-24 | Koufu Nippon Denki Kk | ベクトル総和演算装置 |
US5208490A (en) * | 1991-04-12 | 1993-05-04 | Hewlett-Packard Company | Functionally complete family of self-timed dynamic logic circuits |
US5389835A (en) * | 1991-04-12 | 1995-02-14 | Hewlett-Packard Company | Vector logic method and dynamic mousetrap logic gate for a self-timed monotonic logic progression |
US6609189B1 (en) * | 1998-03-12 | 2003-08-19 | Yale University | Cycle segmented prefix circuits |
US7730282B2 (en) * | 2004-08-11 | 2010-06-01 | International Business Machines Corporation | Method and apparatus for avoiding data dependency hazards in a microprocessor pipeline architecture using a multi-bit age vector |
US9355061B2 (en) | 2014-01-28 | 2016-05-31 | Arm Limited | Data processing apparatus and method for performing scan operations |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
JPS6024985B2 (ja) * | 1978-08-31 | 1985-06-15 | 富士通株式会社 | デ−タ処理方式 |
US4302818A (en) * | 1979-07-10 | 1981-11-24 | Texas Instruments Incorporated | Micro-vector processor |
US4400768A (en) * | 1980-06-04 | 1983-08-23 | Burroughs Corporation | Parallel access computer memory system employing a power-of-two memory modules |
KR860001434B1 (ko) * | 1980-11-21 | 1986-09-24 | 후지쑤 가부시끼가이샤 | 데이타 처리시 스템 |
JPS57134774A (en) * | 1981-02-13 | 1982-08-20 | Hitachi Ltd | Vector operating device |
JPS57155666A (en) * | 1981-03-20 | 1982-09-25 | Fujitsu Ltd | Instruction controlling system of vector processor |
-
1983
- 1983-12-26 JP JP58244042A patent/JPS60136875A/ja active Granted
-
1984
- 1984-12-21 DE DE19843446957 patent/DE3446957A1/de active Granted
- 1984-12-21 US US06/685,134 patent/US4757444A/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01258067A (ja) * | 1988-04-06 | 1989-10-16 | Fujitsu Ltd | ベクトル逐次演算方式 |
JPH02266468A (ja) * | 1989-04-06 | 1990-10-31 | Koufu Nippon Denki Kk | ベクトル演算処理装置 |
Also Published As
Publication number | Publication date |
---|---|
JPH0514936B2 (ja) | 1993-02-26 |
US4757444A (en) | 1988-07-12 |
DE3446957C2 (ja) | 1991-10-31 |
DE3446957A1 (de) | 1985-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60136875A (ja) | ベクトル演算器 | |
US4156922A (en) | Digital system for computation of the values of composite arithmetic expressions | |
JPH0222423B2 (ja) | ||
EP0295646A3 (en) | Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus | |
US5898878A (en) | Data processing system having capability to interpolate processing coefficients | |
JPH04245324A (ja) | 演算装置 | |
JPH08329261A (ja) | パラメータ曲線発生器 | |
JPS638952A (ja) | メモリのアドレス方法およびこの方法を用いたプロセッサ | |
JPS63147255A (ja) | 複数の直列接続段を有する計算用プロセッサおよびこのプロセッサを応用したコンピュータならびに計算方法 | |
JPS6237737A (ja) | マイクロプロセツサ回路 | |
JPH0616287B2 (ja) | マスク付きベクトル演算処理装置 | |
JPS62168415A (ja) | ラツチ間伝送方式 | |
JPS62160563A (ja) | 情報処理システム | |
JPH02217038A (ja) | 結合回路網 | |
EP4091049A1 (en) | Programmable controller | |
JP2968718B2 (ja) | 演算装置 | |
JPH05158686A (ja) | 算術論理演算装置 | |
JPH10334081A (ja) | リストベクトル処理装置 | |
JP2545798B2 (ja) | デイジタル信号処理回路 | |
RU2020744C1 (ru) | Универсальный параллельный счетчик по модулю m - дешифратор количества единиц в n-разрядном двоичном коде | |
JP2541697B2 (ja) | パイプライン演算装置 | |
JPS63198144A (ja) | マルチポ−トメモリにおけるダイレクトメモリアクセス制御方式 | |
JPH04330519A (ja) | 乗算回路 | |
JPS62134764A (ja) | ベクトル処理装置 | |
JPH0467661B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |