JPH06274526A - ベクトル処理装置 - Google Patents

ベクトル処理装置

Info

Publication number
JPH06274526A
JPH06274526A JP5916993A JP5916993A JPH06274526A JP H06274526 A JPH06274526 A JP H06274526A JP 5916993 A JP5916993 A JP 5916993A JP 5916993 A JP5916993 A JP 5916993A JP H06274526 A JPH06274526 A JP H06274526A
Authority
JP
Japan
Prior art keywords
vector
data buffer
array
data
instruction
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
JP5916993A
Other languages
English (en)
Inventor
Fujio Wakui
富士雄 涌井
Katsumi Hayashida
克己 林田
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
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP5916993A priority Critical patent/JPH06274526A/ja
Publication of JPH06274526A publication Critical patent/JPH06274526A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【目的】 ベクトルデータバッファを配列データの系統
数に分割し、使用することによって、データバッファの
物量の増加を防ぎ、利用効率の向上を図る。 【構成】 ベクトルデータバッファ部5は、入力ポイン
タ9,10と、入力ポインタのインクリメンタ11,1
2と、出力ポインタ13,14と、出力ポインタのイン
クリメンタ15,16と、ベクトルデータバッファ17
と、データバッファ部18,19とからなり、命令レジ
スタ3に命令がセットされると命令制御部2にてこの内
容を解読し、配列データの系統数をレジスタ8に保持
し、この系統数によりベクトルデータバッファ17を分
割し、さらに配列データを入力ポインタ9,10に従い
順次データバッファ部18,19へ格納し、そして出力
ポインタ13,14に従い配列データを順次読み出し、
ベクトル演算器6に渡り、演算を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ベクトル処理装置に関
し、特に、配列データの処理におけるベクトルデータバ
ッファの分割利用技術に適用して有効な技術に関する。
【0002】
【従来の技術】たとえば、記憶装置上にある配列データ
を処理するベクトル処理装置では、各々の配列データを
記憶装置から読み出し、各々のベクトルデータバッファ
に一時的に保持し、それをベクトル演算器に読み込み、
ベクトル演算を行っている。
【0003】このようなベクトル処理装置としては、特
開昭60−136849号公報等に開示されている。
【0004】また、記憶装置上にある配列データを処理
するベクトル命令には、たとえばロード命令のように記
憶装置上の1系統の配列データをベクトルレジスタ等へ
格納する命令の他に、加算命令のように、記憶装置上の
2系統の配列データを加算する命令がある。
【0005】一般に、記憶装置上の配列データを処理す
るベクトル命令では、通常1系統または2系統の配列デ
ータを処理する。また、系統数は命令により各々指定さ
れるものである。
【0006】
【発明が解決しようとする課題】ところが、前記のよう
な従来技術においては、このように2系統の配列データ
の処理を行う場合に、ベクトルデータバッファを配列デ
ータの系統別に用意して行うために、ベクトルデータバ
ッファの物量の増加を招くという欠点がある。
【0007】また、最小系統の配列データを取り扱う命
令では、ベクトルデータバッファ装置を複数個備えるた
めに、使用されない系統のベクトルデータバッファが発
生し、ベクトルデータバッファの利用効率の低下を招く
という欠点もある。
【0008】そこで、本発明の目的は、ベクトルデータ
バッファを命令により指定された配列データの系統数に
分割して使用することによって、ベクトルデータバッフ
ァの物量の増加を防ぎ、利用効率を向上させることがで
きるベクトル処理装置を提供することにある。
【0009】本発明の前記ならびにその他の目的と新規
な特徴は、本明細書の記述および添付図面から明らかに
なるであろう。
【0010】
【課題を解決するための手段】本願において開示される
発明のうち、代表的なものの概要を簡単に説明すれば、
下記のとおりである。
【0011】すなわち、本発明のベクトル処理装置は、
記憶装置上にある複数個の配列データを記憶装置から読
み出してベクトルデータバッファに一時的に保持し、保
持された配列データを順次ベクトル演算器へ読み込んで
演算を行うベクトル処理装置であって、命令により指定
された配列データの配列系統数を保持する配列系統数保
持手段と、配列系統数保持手段により保持された値によ
り複数の配列系統ごとにベクトルデータバッファを分割
し、配列データの入出力を制御する分割制御手段とを備
えるものである。
【0012】
【作用】前記したベクトル処理装置によれば、命令によ
り指定された配列データの系統数を配列系統数保持手段
により保持し、この保持された配列系統数の値により、
ベクトルデータバッファを分割し、さらに、分割制御手
段によりこの分割されたベクトルデータバッファに記憶
装置上の各配列データを保持することができる。
【0013】これにより、配列系統数に分割されたベク
トルデータバッファに記憶装置上の各配列データを一時
的に保持し、このバッファの使用によりベクトルデータ
バッファの物量の増加を防ぎ、利用効率を向上させるこ
とができる。
【0014】
【実施例】図1は本発明の一実施例であるベクトル処理
装置の構成を示すブロック図である。
【0015】まず、図1により本実施例のベクトル処理
装置1の構成を説明する。
【0016】本実施例のベクトル処理装置1は、たとえ
ば配列データを記憶装置から読み出し、バッファである
ベクトルデータバッファに一時的に保持し、その値をベ
クトル演算器に読み込み、ベクトル演算器にて演算を行
うベクトル処理装置とされ、命令制御部2と、命令レジ
スタ3と、記憶装置4と、ベクトルデータバッファ部5
と、ベクトル演算器6と、ベクトルレジスタ7などによ
り構成されている。
【0017】ベクトルデータバッファ部5は、レジスタ
8と、入力ポインタ9,10と、各入力ポインタのイン
クリメンタ11,12と、出力ポインタ13,14と、
各出力ポインタのインクリメンタ15,16と、ベクト
ルデータバッファ17と、データバッファ部18,19
と、ベクトル演算器6へのオペランド入力パス20,2
1とからなる。
【0018】レジスタ8は、命令により取り扱う配列系
統数を保持する配列系統数保持手段であり、さらにデー
タの入力ポインタ9,10と、そのインクリメンタ1
1,12と、出力ポインタ13,14と、そのインクリ
メンタ15,16とは、分割されたベクトルデータバッ
ファの各々のデータバッファ部18,19の入出力につ
いて制御を行う分割制御手段である。
【0019】次に、本実施例の作用について説明する。
【0020】まず、ベクトルデータバッファ17を2系
統に分割して使用する場合の動作を示す。
【0021】なお、配列データの各要素データを加算す
るVECTOR ELEMENTADD命令(以下、V
EA命令と記す)を用いて以下、説明する。
【0022】まず、命令レジスタ3にVEA命令がセッ
トされると、命令制御部2はこの内容を解読し、VEA
命令によって取り扱う配列データの系統数 '2’をレジ
スタ8に設定する。
【0023】次に、このレジスタ8の値によりベクトル
データバッファ17はデータバッファ部18,19に分
割される。
【0024】ここで、2系統の配列データを各々VOP
(VECTOR OPERAND)1,VOP2とする
と、ベクトルデータバッファ17のうち、データバッフ
ァ部18はVOP1に対応し、データバッファ部19は
VOP2に対応する。
【0025】また、入力ポインタ9、出力ポインタ13
はVOP1に対応し、入力ポインタ10および出力ポイ
ンタ14はVOP2に対応する。さらに、オペランド入
力パス20,21は、各々VOP1,VOP2に対応す
る。
【0026】そこで、レジスタ8に保持された値が '
2’であるときには、VOP1に対応したデータバッフ
ァ部18の入力ポインタ9に付随するインクリメンタ1
1により、入力ポインタ9が '00’から順次 '+1’
され、 '07’にさらに '+1’されると '00’へと
サイクリックに加算され、その入力ポインタ9の示すア
ドレスに従ってベクトルデータバッファ部5は、VOP
1を順次データバッファ部18へ格納する。
【0027】同様に、VOP2に対応したデータバッフ
ァ部19の入力ポインタ10に付随するインクリメンタ
12により、入力ポインタ10が '08’から順次 '+
1’され、 '15’にさらに '+1’されると、 '0
8’へとサイクリックに加算され、その入力ポインタ1
0の示すアドレスに従ってベクトルデータバッファ部5
は、VOP2を順次データバッファ部19へ格納する。
【0028】また、入力ポインタ9,10の加算は、V
OP1,VOP2のデータバッファ部18,19への格
納ごとに行われる。
【0029】次に、VOP1に対応したデータバッファ
部18の出力ポインタ13に付随するインクリメンタ1
5により、出力ポインタ13が '00’から順次 '+
1’され、 '07’にさらに '+1’されると '00’
へとサイクリックに加算され、その出力ポインタ13の
示すアドレスに従ってベクトルデータバッファ部5は、
順次データバッファ部18からVOP1をベクトル演算
器6へ渡す。
【0030】同様に、VOP2に対応したデータバッフ
ァ部19の出力ポインタ14に付随するインクリメンタ
16により、出力ポインタ14が '08’から順次 '+
1’され、 '15’にさらに '+1’されると、 '0
8’へとサイクリックに加算され、その出力ポインタ1
0の示すアドレスによりベクトルデータバッファ部5
は、順次データバッファ部19からVOP2をベクトル
演算器6へ渡す。
【0031】また、出力ポインタ13,14の加算は、
VOP1,VOP2のデータバッファ部18,19から
の読み出しごとに行われる。
【0032】さらに、データバッファ部18,19から
読み出されたVOP1,VOP2はオペランド入力パス
20,21を介してベクトル演算器6に入り演算が行わ
れ、その演算結果はベクトルレジスタ7に格納される。
【0033】以上、本実施例によると2系統の配列デー
タを取り扱うベクトル命令(VEA命令)において、ベ
クトルデータバッファ17が2分割され、2系統の配列
データに割り当てられて演算が実行可能となり、従来の
ような配列データの系統別にベクトルデータバッファ1
7を用意する必要がなくなる。
【0034】次に、ベクトルデータバッファ17を1系
統のみにて使用する場合の動作を示す。
【0035】なお、記憶装置4上の1系統の配列データ
をベクトルレジスタ7に順次格納するロード命令、VE
CTOR LOAD命令(以下、VLD命令と記す)に
よって以下、説明する。
【0036】まず、命令制御部2はVLD命令によって
取り扱う配列データの系統数 '1’をレジスタ8に設定
する。また、配列データはVOP1に対応する。
【0037】このレジスタ8の値により、ベクトルデー
タバッファ17は1系統にて処理が行われる。
【0038】そして、レジスタ8に保持された値が '
1’であるときには、VOP1に対応したデータバッフ
ァ部18の入力ポインタ9に付随するインクリメンタ1
1により、入力ポインタ9は、 '00’から順次 '+
1’され、 '15’にさらに、 '+1’されると '0
1’へとサイクリックに加算され、入力ポインタ9のア
ドレスに従ってベクトルデータバッファ部5は、VOP
1を順次ベクトルデータバッファ17に格納する。
【0039】一方、VOP2に対応したデータバッファ
部19の入力ポインタ10および出力ポインタ14に付
随するインクリメンタ12,16は、レジスタ8に保持
された値が '1’であるときには、動作しない。
【0040】次に、VOP1に対応したデータバッファ
部18の出力ポインタ13に付随するインクリメンタ1
5により、出力ポインタ13は、 '00’から順次 '+
1’され、 '15’にさらに、 '+1’されると '0
0’へとサイクリックに加算され、出力ポインタ13の
アドレスに従ってベクトルデータバッファ部5は、順次
ベクトルデータバッファ17からVOP1を読み出しベ
クトル演算器6へ渡す。
【0041】さらに、このデータバッファ部18,19
内に格納されたVOP1はオペランド入力パス20を介
してベクトル演算器6に入り、このベクトル演算器6
は、VLD命令の場合においてはオペランド入力パス2
0を経由してVOP1をそのまま演算結果として出力す
る。そして、その演算結果をベクトルレジスタ7に格納
する。
【0042】以上、本発明によると1系統の配列データ
を取り扱うベクトル命令(VLD命令)において、ベク
トルデータバッファ17が分割されることなく、1系統
の配列データに割り当てられて実行可能となり、ベクト
ルデータバッファ17が1系統により実行される場合に
ついても本実施例のベクトルデータ処理装置が適用でき
る。
【0043】従って、本実施例のベクトル処理装置によ
れば、命令によって取り扱う配列データの系統数を配列
系統数保持手段および分割制御手段により、ベクトルデ
ータバッファ17が分割され、各々のデータバッファ部
18,19において各配列データVOP1,VOP2が
一時的に保持され、それを用いてベクトル演算を高速に
行うことができ、ベクトルデータバッファの物量の増加
および利用効率の向上を図ることができる。
【0044】以上、本発明者によってなされた発明を実
施例に基づき具体的に説明したが、本発明は前記実施例
に限定されるものではなく、その要旨を逸脱しない範囲
において種々変更可能であることは言うまでもない。
【0045】たとえば、前記実施例においては、加算命
令およびロード命令を用いた場合について説明したが、
乗算命令や減算命令などのような他の命令についても広
く適用可能である。
【0046】さらに、3系統以上の配列データの分割が
必要とされる命令についても、ベクトルデータバッファ
17を3系統以上に分割して使用できることは言うまで
もない。
【0047】
【発明の効果】本願において開示される発明のうち、代
表的なものによって得られる効果を簡単に説明すれば、
下記のとおりである。
【0048】すなわち、本発明によれば、命令により指
定された配列データの配列系統数を配列系統数保持手段
により保持し、その値によってベクトルデータバッファ
を分割し、さらに分割制御手段によりこのベクトルデー
タバッファを制御し、配列データの入出力を制御するこ
とによってベクトル演算を効率良く行うことができる。
【0049】この結果、ベクトルデータバッファを、命
令によって指定された配列データの系統数に分割して使
用することにより、データバッファを複数個備えること
なく、ベクトルデータバッファの物量の増加を防ぎ、利
用効率の向上を図ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例であるベクトル処理装置の構
成を示すブロック図である。
【符号の説明】
1 ベクトル処理装置 2 命令制御部 3 命令レジスタ 4 記憶装置 5 ベクトルデータバッファ部 6 ベクトル演算器 7 ベクトルレジスタ 8 レジスタ(配列系統数保持手段) 9,10 入力ポインタ(分割制御手段) 11,12 入力ポインタのインクリメンタ(分割制御
手段) 13,14 出力ポインタ(分割制御手段) 15,16 出力ポインタのインクリメンタ(分割制御
手段) 17 ベクトルデータバッファ 18,19 データバッファ部 20,21 オペランド入力パス

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 記憶装置上にある複数個の配列データを
    該記憶装置から読み出してベクトルデータバッファに一
    時的に保持し、該保持された配列データを順次ベクトル
    演算器へ読み込んで演算を行うベクトル処理装置であっ
    て、命令により指定された前記配列データの配列系統数
    を保持する配列系統数保持手段と、該配列系統数保持手
    段により保持された値により複数の配列系統ごとにベク
    トルデータバッファを分割し、前記配列データの入出力
    を制御する分割制御手段とを備えることを特徴とするベ
    クトル処理装置。
JP5916993A 1993-03-19 1993-03-19 ベクトル処理装置 Pending JPH06274526A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5916993A JPH06274526A (ja) 1993-03-19 1993-03-19 ベクトル処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5916993A JPH06274526A (ja) 1993-03-19 1993-03-19 ベクトル処理装置

Publications (1)

Publication Number Publication Date
JPH06274526A true JPH06274526A (ja) 1994-09-30

Family

ID=13105617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5916993A Pending JPH06274526A (ja) 1993-03-19 1993-03-19 ベクトル処理装置

Country Status (1)

Country Link
JP (1) JPH06274526A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100603124B1 (ko) * 2003-11-18 2006-07-20 인터내셔널 비지네스 머신즈 코포레이션 프로세서 및 매트릭스 데이터 처리 방법
JP2009252133A (ja) * 2008-04-10 2009-10-29 Nec Computertechno Ltd ベクトル処理装置及びベクトル処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100603124B1 (ko) * 2003-11-18 2006-07-20 인터내셔널 비지네스 머신즈 코포레이션 프로세서 및 매트릭스 데이터 처리 방법
JP2009252133A (ja) * 2008-04-10 2009-10-29 Nec Computertechno Ltd ベクトル処理装置及びベクトル処理方法

Similar Documents

Publication Publication Date Title
US7072929B2 (en) Methods and apparatus for efficient complex long multiplication and covariance matrix implementation
US6922716B2 (en) Method and apparatus for vector processing
JPH11282679A (ja) 演算処理装置
US4967338A (en) Loosely coupled pipeline processor
US7818540B2 (en) Vector processing system
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPS61160176A (ja) ベクトル処理装置
EP0588341A2 (en) Data processor
GB2394571A (en) Vector permutation in single-instruction multiple-data processor which is controlled by parameters stored in control registers accessed via a control block
US6674435B1 (en) Fast, symmetric, integer bezier curve to polygon conversion
EP1634163B1 (en) Result partitioning within simd data processing systems
JPH06274526A (ja) ベクトル処理装置
JP2538053B2 (ja) 制御装置
US5497344A (en) Data flow type information processor
US6904515B1 (en) Multi-instruction set flag preservation apparatus and method
EP0992917A1 (en) Linear vector computation
JPH01286030A (ja) 情報処理装置
US7107478B2 (en) Data processing system having a Cartesian Controller
JPH01118926A (ja) パイプライン処理装置
JPH04349570A (ja) 情報処理装置
JPS6361330A (ja) マイクロプログラム制御装置
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPS6373335A (ja) 情報処理装置
JPH05204638A (ja) パイプライン処理装置
JPH04287227A (ja) 演算処理装置