JPS5994173A - ベクトル・インデツクス生成方式 - Google Patents

ベクトル・インデツクス生成方式

Info

Publication number
JPS5994173A
JPS5994173A JP20194782A JP20194782A JPS5994173A JP S5994173 A JPS5994173 A JP S5994173A JP 20194782 A JP20194782 A JP 20194782A JP 20194782 A JP20194782 A JP 20194782A JP S5994173 A JPS5994173 A JP S5994173A
Authority
JP
Japan
Prior art keywords
vector
register
value
stored
index
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
JP20194782A
Other languages
English (en)
Inventor
Yasunori Ushiro
後 保範
Shigeo Nagashima
長島 重夫
Takashi Kawabe
河辺 峻
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 JP20194782A priority Critical patent/JPS5994173A/ja
Publication of JPS5994173A publication Critical patent/JPS5994173A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はベクトル演算装置におけるベクトル・インデッ
クスの生成方式に係り、詳しくは、二重のループ構造を
持つ演算を一度のベクトル演算で実行させることに好適
なベクトル・インデックスの生成法に関するものである
〔従来技術〕
例えば、フォートランによって記述されたDIMENS
ION  A(to、10)、B(to、to)Do 
 I  J=2.4 Do  I  I=2.6.2 1  A(I、J)=A(I、J)+B(I、J)なる
形の二重DOループの行列は第1図のように表わされる
。第1図において、丸印で囲った数列がA及びBのとる
べき数列を示す。
このような二重のループ構造を持つベクトル演算は、配
列AおよびBを一次元と見なし、数列「12」に対応す
る初期値を「0」としたときのインデックスl’−o 
、 2 、4.10,12,14.22,24 Jなる
数列を作成することで行う。この場合、従来は「0゜2
.4」、「Io 、 12 、14J及びJ20 、2
’、2 、24Jと3つのベクトルに分割して作成した
後、合成して1つのベクトル・インデックスを作成して
おり、目的のベクトル・インデックスを作成するには複
数回のベクトル演算処理が必要であるという欠点があゆ
た。
〔発明の目的〕
本発明の目的は、二重ループで表現されるループを一重
のループに変換し、ベクトル長を長(したベクトル演算
が可能となるようなベクトル・インデックスの生成を効
率よく行うベクトル・インデックス生成方式を提供する
ことにある。
〔発明の概要〕
本発明は、一般に整数iを整数りで除算したときの整数
の商を[i/L)で表わし、剰余をmod(i、L)で
表わすとして、ベクトル長Nに対してiが0.1.・・
・・・・、N−1と変化するとき、2つの増分値aとb
及び最内側のループの長さを表わす値りに対してaXm
od(i、L)+bx[i/L]なる値のベクトル・イ
ンデックスを演算するにあたり、上記値aが格納される
レジスタ及びbが格納されるレジスタを指示する第1の
レジスタ指定部と、演算結果が格納されるベクトル・レ
ジスタを指示する第2のレジスタ指定部と、上記値Nを
セットする第1のレジスタと、上記値りをセットする第
2のレジスタを備え、第1のレジスタで指示されたレジ
スタの内容と第1及び第2のレジスタの内容を使用して
a Xmod (i 、 L )+b X [: i/
Lj:なる演算を行い、その結果を上記第2のレジスタ
指定部で指示されたベクトル・レジスタに格納するよう
に制御することを特徴としている。
〔発明の実施例〕
第2図は本発明の一実施例の構成図を示したものである
。第2図中、1は本発明にいうベクトル・インデックス
生成命令がセットされる命令レジスタ、12−0 、2
−1 、・・・・・・、2−mはそれぞれ汎用レジスタ
、3−0.3−1.・・・・・・、3−nはそれぞれP
語の長さを持つベクトル・レジスタである。4はセレク
タであって、上記命令レジスタ1中のレジスタ指定部R
2の内容によって1つの汎用レジスタ例えば2−0を選
択するものである。5もセレクタであって、上記命令レ
ジスタ1中のレジスタ指定部R3の内容によって1つの
汎用レジスタ例えば2−1を選択するものである。同様
に6もセレ、13+。
フタであって、上記命令レジスタ1中のレジスタ指定部
R1の内容によって1つのベクトル・レジスタ例えば3
−1を選定するもので友る。7及び8は乗算器、9は加
算器である。10はプラス1回路及びゼロクリア回路を
持つカウンタであって、初期値は「0」がセットされる
。該カウンタ10のゼロクリア回路は12の比較器で一
致が検出されたとぎカウンタをrOJにセットし、又、
プラス1回路は乗算器7による乗算処理の都度、カウン
ト内容をプラス1する。11は部分ベクトル長りがセッ
トされるレジスタ、12は比較器である。13はカウン
タであり、初期値「0」がセットされ、比較器12で一
致が検出されたときプラス1回路が動作し、カウント内
容をプラス1するものである。14はベクトル長VLが
セットされるレジネ亥である015は処理回数カウンタ
であって、初期値「0」がセットされ、乗算器7による
乗算処理の都度、そのプラス1回路が動作し、カウント
内容を1プラスするものである。16は比較器を表わし
ている。
以下、菅頭に記述した二重DOループを例にと、(4) す、そのベクトル・インデックスl’−0,2,4,t
o。
12 、14 、20 、22 、24 Jを作成する
場合の動作を説明する。この場合、あらかじめ例えばレ
ジスタ2−0には増分値「2」、レジスタ2−1には増
分値「10」をセットしておき、さらにレジスタ11に
は部分ベクトル長りの値として「2」、レジスタ14に
はベクトル長VLの値として「9」をセットしておく。
今、命令レジスタ1によってベクトル・インデックス生
成が指示されたとする。この時、命令レジスタ1中のレ
ジスタ指定部上・2の内容に−よってレジスタ+”2−
 ;Oが指定され、セレクタ4を通して値「2」が乗算
器7に入力される。同様に、命令レジスタ1中のレジス
タ指定部R3の内容によってレジスタ2−1が指定され
、セレクタ5を通して値「10」が乗算器8に入力され
る。一方、カウンタ10は、そのプラス1回路によりr
o」、rlJ 。
「2」と歩進していくが、その値は比較器12によりレ
ジスタ11にセットされた値「2」と比較され、一致す
るとゼロクリア回路が動作してrOJにすセットする。
カウンタ13は、比較器12で一致を検出する毎にその
内容をプラス1していく。これにより、カウンタ10は
rOJ 、rlJ 、r2J 、rOJ 、rlJ 、
r2J 、rOJ 、・旧・・ど変化していき、この時
、カウンタ13はrOJ 、rOJ 、rOJ  、I
ll  、rlJ  、rlJ  、r2J・・・・・
・と変化していく。
カウンタlOの出力は乗算器7に入力され、カウンタ1
3の出力は乗算器8に入力される。これにより、乗算器
7からはrOJ 、r2J 、r4J 、rOJ 、r
2J 、r4J 、ro」、・・・・・・の値をとる数
列が得られ、この時、乗算器8からは「0」。
rOJ 、 rOJ 、 rlOJ 、 rlOJ 、
 rlOJ 、 r20」、・・・・・・の値をとる数
列が得られる。該乗算器7と8の出力が加算器9で加算
されることにより、加算器9からはrOJ 、r2J 
、r4J 、[oJ 。
r12J 、 r14J 、 r20J 、・・・・・
・の値をとる数列が得られる。他方、カウンタ15の値
は、カウンタ10の歩進動作に同期してrOJ 、rl
J 、r2J 。
r3J 、r4J 、・・・・・・と変化してい(が、
該カウンタ15の内容が「9」になった時、比較器16
は一致出力を発し、乗算器7と8におけるそれ以上の演
算実行を停止する。したがって、このとき命令レジスタ
1中のレジスタ指定部R1の内容によって指定されたベ
クトル・レジスタ3−0には、セレクタ6を通ってベク
トル・インデックス値[0゜2 、4.10,12,1
4,20,22.24Jが得られている。
〔発明の効果」 以上説明した如(、本発明によれば、二次元配列の形で
主記憶装置上に記憶されたデータの相対アドレスをベク
トル・インデックスとしてベクトル・レジスタ上に次々
とパイプライン処理で作成することができるため、イン
デックス付ベクトル演算と合わせて、主記憶装置上に二
次元配列されたデータの演算を高速度で処理でき、ベク
トル演算などにおいてきわめて有効である。
【図面の簡単な説明】
第1図は二重Doループの配列例を示す図、第2図は本
発明の一実施例を示す図である。 第2図において1 、  +71 。 1は命令レジスタ、2−0 、2−1 、・・曲は夫々
汎用レジスタ、3−0.3−1.・・曲は夫々ベクトル
・レジスタ、4.5及び6はセレクタ、7及び8は乗算
器、9は加算器、10はカウンタ、11は部分ベクトル
長セット・レジスタ、12は比較器、13はカウンタ、
14はベクトル長セット・レジスタ、15は処理回数カ
ウンタ、16は比較器を表わす。 ・ (8)゛

Claims (1)

    【特許請求の範囲】
  1. (1)予め与えられた値Nに対してiが0,1.・・・
    。 N−1と変化するとき、与えられた値a、b及びLに対
    してaXmod(i、L)+bX[i/L〕なる値のベ
    クトル・インデックスを計算するベクトル演算装置にお
    いて、値a及びbが格納されるレジスタ群と、値りがセ
    ットされるレジスタと、値Nがセットされるレジスタと
    、これらのレジスタの内容を使ってaXmod(i、L
    )+bX[i/L〕なる演算を逐次実行する演算機構と
    を備え、該演算結果をベクトル・レジスタに格納するよ
    うにしたことを特徴とするベクトル・インデックス生成
    方式。
JP20194782A 1982-11-19 1982-11-19 ベクトル・インデツクス生成方式 Pending JPS5994173A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20194782A JPS5994173A (ja) 1982-11-19 1982-11-19 ベクトル・インデツクス生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20194782A JPS5994173A (ja) 1982-11-19 1982-11-19 ベクトル・インデツクス生成方式

Publications (1)

Publication Number Publication Date
JPS5994173A true JPS5994173A (ja) 1984-05-30

Family

ID=16449408

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20194782A Pending JPS5994173A (ja) 1982-11-19 1982-11-19 ベクトル・インデツクス生成方式

Country Status (1)

Country Link
JP (1) JPS5994173A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107688466A (zh) * 2016-08-05 2018-02-13 北京中科寒武纪科技有限公司 一种运算装置及其操作方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107688466A (zh) * 2016-08-05 2018-02-13 北京中科寒武纪科技有限公司 一种运算装置及其操作方法

Similar Documents

Publication Publication Date Title
US4754421A (en) Multiple precision multiplication device
US5081573A (en) Parallel processing system
US5793661A (en) Method and apparatus for performing multiply and accumulate operations on packed data
US5880985A (en) Efficient combined array for 2n bit n bit multiplications
US5983257A (en) System for signal processing using multiply-add operations
US5835392A (en) Method for performing complex fast fourier transforms (FFT's)
US20100121899A1 (en) Methods and apparatus for efficient complex long multiplication and covariance matrix implementation
US4769779A (en) Systolic complex multiplier
US6202077B1 (en) SIMD data processing extended precision arithmetic operand format
JP2002149400A (ja) 複数レジスタ指定が可能なsimd演算方式
US4954947A (en) Instruction processor for processing branch instruction at high speed
US20050131975A1 (en) Function arithmetic method and function arithmetic circuit
Nath et al. Efficient arithmetic in (pseudo-) Mersenne prime order fields
US6523054B1 (en) Galois field arithmetic processor
US20070260660A1 (en) Efficient mapping of FFT to a reconfigurable parallel and pipeline data flow machine
CN107688469B (zh) 兼顾通用指令和专用指令的可重构计算装置
Kratz et al. A microprogrammed approach to signal processing
EP1131699B1 (en) A data processing system and method for performing an arithmetic operation on a plurality of signed data values
JPS5994173A (ja) ベクトル・インデツクス生成方式
US5140545A (en) High performance divider with a sequence of convergence factors
US5754875A (en) Computer system with double width data bus
EP0169030A2 (en) Data processing circuit for calculating either a total sum or a total product of a series of data at a high speed
US5948051A (en) Device improving the processing speed of a modular arithmetic coprocessor
US5799265A (en) Apparatus and method for generating a sinusoidal signal
US11113028B2 (en) Apparatus and method for performing an index operation