JPS62202264A - ベクトル演算処理方式 - Google Patents

ベクトル演算処理方式

Info

Publication number
JPS62202264A
JPS62202264A JP2504586A JP2504586A JPS62202264A JP S62202264 A JPS62202264 A JP S62202264A JP 2504586 A JP2504586 A JP 2504586A JP 2504586 A JP2504586 A JP 2504586A JP S62202264 A JPS62202264 A JP S62202264A
Authority
JP
Japan
Prior art keywords
vector
operand
vector register
processing
result
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
JP2504586A
Other languages
English (en)
Inventor
Morie Sagawa
佐川 守江
Hiroshi Nagakura
長倉 浩士
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2504586A priority Critical patent/JPS62202264A/ja
Publication of JPS62202264A publication Critical patent/JPS62202264A/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)
  • Advance Control (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概 要〕 ベクトル処理装置で演算を実行するプログラムのステッ
プ数を短縮するための処理方式。被演算数のベクトルレ
ジスタが、その演算結果の格納先になっているときは、
被演算数を一旦他のベクトルレジスタに転送して被演算
数とする必要があるので、他の演算と被演算数を置換し
て等価な演算が可能か検索し、可能なら被演算数を置換
して転送不要な演算に変換する。この方式で転送ステ・
ノブを不要にすることにより、ステップ数が減少される
〔産業上の利用分野〕
本発明は、ベクトル処理装置で演算を実行するプログラ
ムのステップ数を短縮するためのベクトル演算処理方式
に関する。
ベクトル処理装置は公知のように、ベクトルレジスタに
保持されるベクトルデータを、パイプライン方式等の並
列処理によって、高速に連続処理するようにした処理装
置である。
〔従来の技術と発明が解決しようとする問題点〕第2図
はベクトル処理装置の一構成例を示すブロック図である
ベクトル処理装置は、所要のベクトル演算命令に従う実
行制御部1の制御のちとに、ベクトルレジスタ記憶部2
の、該命令で指定されるベクトルレジスタから、被演算
数ベクトルの要素データを、公知のパイプライン方式の
演算器3へ、連続的に順次読み出して演算を実行し、演
算結果をベクトルレジスタ記憶部2上の指定のベクトル
レジスタへ格納する。
又、ベクトルロード/ストア命令の実行によってアクセ
ス制御部4は、ベクトルレジスタ記憶部2の指定のベク
トルレジスタと主記憶装置の指定領域との間のデータ転
送を制御する。
ベクトルレジスタ記憶部2は例えば数百キロバイトの容
量の高速メモリで構成され、その上の領域が各ベクトル
レジスタとして、例えば図示しない制御情報によって別
途指定される。
それらの各ベクトルレジスタは、主記憶装置に保持され
るベクトルデータを、演算のために一時的に保持するレ
ジスタ群として使用される。
ベクトル演算命令は、ベクトルレジスタをνt!で表し
、命令をプログラミング言語の代入文型式で表した場合
に、一般に[vtc −νt@ @vt6 Jのように
指定され、ベクトルレジスタvt、とvtbに保持され
る各ベクトル要素データ間に@で示される演算(例えば
加算、乗算等)を実行して、その結果をベクトルレジス
タVtcの各要素データ値として格納することを示す。
こ\で、FORTRANプログラミング言語で記述され
た原プログラムを、いわゆるコンパイラで翻訳して、ベ
クトル処理装置によって実行される目的プログラムを生
成する場合に、原プログラムの論理を直接翻訳した結果
、例えばvtb −vt、 +vtbの形のベクトル演
算命令を得たとする。
このように、被演算数のベクトルレジスタが、結果の格
納先にも指定されている場合には、一般にこの命令を実
行する場合に被演算ベクトルの要素データの内容が、該
要素データの演算実行前に結果の格納先となって更新さ
れることが起こらないことが保証されなければならない
。    ゛これを一般に保証する等の理由から、この
場合にはvtbの内容を一旦他のベクトルレジスタ記憶
部−するベクトル転送命令のステップvtc −vtb
を追加し、上記ベクトル演算はvtb −νts +v
tcに変換して実行するようにする。
このようにすれば当然処理時間が長くなるので、ベクト
ルレジスタ間転送命令の追加は必要最小限にするのが望
ましいが、従来の方式では前記の形の命令になる場合に
は、無条件に転送命令を挿入している。
〔問題点を解決するための手段〕
第1図は、本発明の処理の流れ図である。
図はコンパイラ等による、ベクトル演算命令の生成処理
における処理の流れを示し、10〜15は処理ステップ
である。
〔作 用〕
被演算ベクトルの2ベクトルレジスタと、演算結果を格
納するベクトルレジスタが決定して、ベクトル演算命令
を生成する場合に、処理ステップ10において結果のベ
クトルレジスタと同じベクトルレジスタが被演算ベクト
ルレジスタに有るか識別する。
同じベクトルレジスタがあれば、処理ステップ11で、
もう一方の被演算ベクトルレジスタを結果の格納先とす
る他の演算があるか識別する。
該当する他の演算があった場合には、処理ステップ12
において、他の演算の被演算ベクトルレジスタの1つと
、現処理中の結果のベクトルレジスタと同一の被演算ベ
クトルレジスタとを置換して構成する演算を仮定して、
原プログラム論理上に矛盾を生じないか判定する。
矛盾が無い場合には、処理ステップ13において、上記
の他の演算のベクトル演算命令を置換した被演算数によ
って行う演算命令に修正し、処理ステップ15で他方の
ベクトル演算命令を生成して処理を終わる。
以上の条件以外の場合には、従来と同様の命令生成が処
理ステップ14.15で行われる。
以上の処理方式により、ベクトル転送命令が゛追加され
る場合が減少し、処理ステップの短縮ができる。
〔実施例〕
以下の説明においては、原プログラムから、次の演算を
要することが分かったものとする。
vb=vtI+vtz+  vt4=vt3+vt4そ
の結果、第1の演算に対しては特に問題なく、第1図の
処理ステップ10から直ちに処理ステップ15に進んで
、上記演算器りのベクトル加算命令が生成され得る。
第2の演算のベクトル演算命令生成において、処理ステ
ップ10において結果のベクトルレジスタと同じベクト
ルレジスタが被演算ベクトルレジスタに有るか識別し、
vtaが該当することが検出されるので処理ステップ1
1に進む。
処理ステップ11で、もう一方の被演算ベクトルレジス
タ(vts)を結果の格納先とする他の演算があるか識
別し、第1の演算が該当するので処理ステップ12に進
む。
なお、該当する他の演算が無い場合には、処理ステップ
14に進んで、従来と同様にvt、の内容を他のベクト
ルレジスタ (例えばvt5)に転送するベクトル転送
命令を生成し、次に処理ステップ15でベクトル加算命
令(vt4−vt3+vts)を生成することになる。
処理ステップ12において、他の演算の被演算ベクトル
レジスタの1つと、現処理中の結果のベクトルレジスタ
を置換した演算を仮定して、原プログラム論理上に矛盾
を生じないか判定する。
この例の場合、vt3をこの後の処理で参照していない
とすれば矛盾を生じないので、処理ステップ13に進む
。もし、矛盾を生じる場合には、置換できないので、処
理ステップ14に進んで従来と同様にベクトル転送命令
を追加する。
処理ステップ13において、前記の第1の演算の例えば
被演算ベクトルレジスタvt、と、第2の演算の被演算
ベクトルレジスタvt、とを置換して、第1の演算のベ
クトル加算命令をvt3=vt、+vtnに変更する。
次に処理ステップ15で第2の演算のベクトル加算命令
としてvt4・vt3+νt2を生成する。
〔発明の効果〕
以上の説明から明らかなように、本発明によれば、ベク
トル処理装置で実行される演算命令の生成において、被
演算ベクトルレジスタと結果のベクトルレジスタが同一
になることを避けるために、ベクトル転送命令が追加さ
れる場合が減少し、処理ステップが短縮されるので、ベ
クトル処理装置の処理効率を改善するという著しい工業
的効果がある。
【図面の簡単な説明】
第1図は本発明の処理の流れ図、 第2図はベクトル処理装置の一構成例ブロック図である
。 図において、 1は実行制御部、 2はベクトルレジスタ記憶部、 3は演算器、     4はアクセス制御部、10〜1
5は処理ステップ

Claims (1)

  1. 【特許請求の範囲】 原プログラムからベクトル処理装置で演算を実行するプ
    ログラムを生成するに際し、 第1の演算の第1の被演算数を保持する第1のベクトル
    レジスタが、第1の演算の演算結果を格納するベクトル
    レジスタとなる場合に(10)、第1の演算の第2の被
    演算数を保持する第2のベクトルレジスタを、演算結果
    の格納先とする第2の演算の被演算数のベクトルレジス
    タの1つと、第1のベクトルレジスタとを置換して構成
    する演算によって、前記原プログラム論理上に矛盾を生
    じない該第2の演算を検索し(11、12)、該置換を
    行った第1及び第2の演算を実行する命令によってプロ
    グラムを構成することを特徴とするベクトル演算処理方
    式。
JP2504586A 1986-02-07 1986-02-07 ベクトル演算処理方式 Pending JPS62202264A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2504586A JPS62202264A (ja) 1986-02-07 1986-02-07 ベクトル演算処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2504586A JPS62202264A (ja) 1986-02-07 1986-02-07 ベクトル演算処理方式

Publications (1)

Publication Number Publication Date
JPS62202264A true JPS62202264A (ja) 1987-09-05

Family

ID=12154944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2504586A Pending JPS62202264A (ja) 1986-02-07 1986-02-07 ベクトル演算処理方式

Country Status (1)

Country Link
JP (1) JPS62202264A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2523823A (en) * 2014-03-07 2015-09-09 Advanced Risc Mach Ltd Data processing apparatus and method for processing vector operands

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2523823A (en) * 2014-03-07 2015-09-09 Advanced Risc Mach Ltd Data processing apparatus and method for processing vector operands
CN104899181A (zh) * 2014-03-07 2015-09-09 Arm有限公司 用于处理向量操作数的数据处理装置和方法
US10514919B2 (en) 2014-03-07 2019-12-24 Arm Limited Data processing apparatus and method for processing vector operands
CN104899181B (zh) * 2014-03-07 2020-01-03 Arm 有限公司 用于处理向量操作数的数据处理装置和方法
GB2523823B (en) * 2014-03-07 2021-06-16 Advanced Risc Mach Ltd Data processing apparatus and method for processing vector operands

Similar Documents

Publication Publication Date Title
US5710902A (en) Instruction dependency chain indentifier
KR0138468B1 (ko) 마이크로 컴퓨터
JPS6028015B2 (ja) 情報処理装置
JPS63132338A (ja) コード生成方法
JP2004529405A (ja) 依存性を決定するためのコンテンツ・アドレス指定可能メモリを実装したスーパースケーラ・プロセッサ
JP3318051B2 (ja) 翻訳処理方法
JPS62202264A (ja) ベクトル演算処理方式
JP3705367B2 (ja) 命令処理方法
JP3578493B2 (ja) 長語命令生成方法および命令処理装置
JP2591325B2 (ja) 分岐制御装置
JPH056227B2 (ja)
JP2722493B2 (ja) レジスタ割り付け処理方法
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPS5829051A (ja) 演算処理装置
JPH0258128A (ja) データ処理装置
KR19990026795A (ko) 마이크로프로세서
JPH03119424A (ja) 情報処理方式及び装置
JPS6028014B2 (ja) マイクロプロセツサ
JPS6162141A (ja) 論理型情報処理装置
JPH04149637A (ja) 情報処理装置
JPH04178738A (ja) レジスタアロケーション方式
JPS6314276A (ja) 配列処理プログラム最適化処理方式
JPS58151654A (ja) レジスタ割付け方式
JPH046020B2 (ja)
JPS62295138A (ja) アドレス生成方式