JPH04557A - Vector processor - Google Patents

Vector processor

Info

Publication number
JPH04557A
JPH04557A JP10087190A JP10087190A JPH04557A JP H04557 A JPH04557 A JP H04557A JP 10087190 A JP10087190 A JP 10087190A JP 10087190 A JP10087190 A JP 10087190A JP H04557 A JPH04557 A JP H04557A
Authority
JP
Japan
Prior art keywords
vector
memory
vector register
register
crossbar switch
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
JP10087190A
Other languages
Japanese (ja)
Inventor
Toshihisa Kamemaru
敏久 亀丸
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP10087190A priority Critical patent/JPH04557A/en
Publication of JPH04557A publication Critical patent/JPH04557A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PURPOSE:To reduce overhead due to the saving of the contents of a vector register at the time of switching a process by providing the vector processor with a virtual/physical vector register number conversion table and a control table for storing vector register numbers and memory saving addresses. CONSTITUTION:The vector processor regards a vector register (VR) number specified by a vector instruction as a virtual number, and at the time of process switching, refers the conversion table and converts the virtual VR number into a physical VR number. Consequently, the VR 4 for the old process is protected and a VR 4 for a new process is secured. When a bus is still idle after starting the execution of the new process, the contents of the VR 4 of the old process are saved in a memory and the VR 4 necessary for the reexecution of the old process is restored while referring the control table. Thereby, the generation of overhead is reduced and high performance is attained.

Description

【発明の詳細な説明】 (産業上の利用分野) この発明は、情報処理装置のベクトルプロセッサに関す
るものである。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a vector processor for an information processing device.

〔従来の技術〕[Conventional technology]

第3図は従来のベクトルプロセッサを示すブロック図で
あり、図において(1)は実行されるヘクトル命令が入
っている命令レジスタ、(2)はメモリからのロート・
データをキューイングするロード・バイブ、(3)は命
令レジスタ(1)のベクトルレジスタ番号(以降VR番
号)でベクトルレジスタへの人力パスを割り付けるクロ
スバ−スイッチ、(4)はベクトルレジスタ、(5)は
命令レジスタ(1)のVR番号でベクトルレジスタ(4
)からの出力パスを割り付けるクロスバ−スイッチ、(
6)はメモリへのストア・データをキューイングするス
トア・パイプ、(7)は演算器である・次に、動作につ
いて説明する。通常ベクトル演算を行う場合、命令レジ
スタ(1)よりVR番号がクロスバ−スイッチ(3)に
入力されるとロートパイプ(2)にキューイングされて
いたメモリからのデータはVR番号対応でクロスバ−ス
イッチ(3)によって割り付けられた人力パスを通って
所定のベクトルレジスタ(4)にロートされる。次に、
ロードされたデータはVR番号によりクロスバ−スイッ
チ(5)によって割り付けられた出力パルスを通って演
算器(7)に人力され、ベクトル演算か行われる。演算
結果は、再びクロスバ−スイッチ(3)によって割り付
けられた入力パスによって所定のベクトルレジスタに格
納される。以上のように、ベクトルレジスタにデータが
ロート或は演算結果が格納されている状態で、プロセス
・スイッチが起こったとき、使用中のベクトル・レジス
タ(4)の内容をすべてメモリのセーブ領域にセーブす
る。
FIG. 3 is a block diagram showing a conventional vector processor. In the figure, (1) is an instruction register containing hector instructions to be executed, and (2) is a rotor register containing a hector instruction to be executed.
Load vibe for queuing data, (3) is a crossbar switch that assigns a manual path to the vector register by the vector register number (hereinafter referred to as VR number) of the instruction register (1), (4) is the vector register, (5) is the VR number of the instruction register (1) and the vector register (4
), a crossbar switch that assigns the output path from (
6) is a store pipe for queuing store data to memory, and (7) is an arithmetic unit.Next, the operation will be explained. When performing normal vector operations, when a VR number is input from the instruction register (1) to the crossbar switch (3), the data queued in the rotor pipe (2) from the memory is transferred to the crossbar switch in correspondence with the VR number. (3) and is rolled into a predetermined vector register (4) through the manual path allocated by (3). next,
The loaded data is input to the arithmetic unit (7) through output pulses assigned by the crossbar switch (5) according to the VR number, and vector calculation is performed. The calculation result is stored in a predetermined vector register by the input path allocated again by the crossbar switch (3). As described above, when a process switch occurs while data is being loaded or calculation results are stored in the vector register, all contents of the vector register (4) in use are saved to the memory save area. do.

また、再度プロセス・スイッチが起こってはじめに実行
していたプロセスの続きを実行する場合、セーブされた
ベクトル・レジスタ(4)の内容をメモリからリストア
する。これらの処理はプロセス・スイッチのプロセス中
で行われる・(発明が解決しようとする課題) 従来のベクトルプロセッサは以上のように構成されてい
るのて、プロセス・スイッチの度、使用中のベクトル・
レジスタの内容をメモリ間で転送しなければならず、こ
のためプロセス・スイッチに非常に長い時間がかかり、
ベクトルプロセッサの実行性能が低下するという問題点
があった。
In addition, when a process switch occurs again and the originally executed process is to be executed again, the contents of the saved vector register (4) are restored from memory. These processes are performed during the process of a process switch. (Problem to be solved by the invention) Since conventional vector processors are configured as described above, each time a process switch is performed, the vectors in use are
The contents of registers must be transferred between memories, which makes process switches take a very long time, and
There was a problem in that the execution performance of the vector processor deteriorated.

この発明は上記のような問題点を解消するためになされ
たもので、プロセス・スイッチ時のベクトル・レジスタ
内容のセーブによるオーバ・ヘットを少なくしたベクト
ル・プロセッサを得ることを目的とする。
The present invention was made to solve the above-mentioned problems, and it is an object of the present invention to provide a vector processor that reduces the overhead caused by saving the contents of vector registers at the time of process switching.

〔課題を解決するための手段〕[Means to solve the problem]

この発明に係るベクトルプロセッサは、複数のベクトル
レジスタと、これらベクトルレジスタに対し、メモリか
らのロート・データの人力バスを割り付ける第1のクロ
スバ−スイッチと、上記各ベクトルレジスタに対し、メ
モリにストアするデータの出力パスを割り付ける第2の
クロスバ−スイッチと、各クロスバ−スイッチに対する
バス割り付け命令を仮想ベクトルレジスタ番号で出力す
る命令レジスタと、出力された仮想ベクトルレジスタ番
号をクロスバ−スイッチに人力する物理ベクトルレジス
タ番号に変換する変換テーブルと、メモリに一時退避し
たベクトルデータのベクトルレジスタ番号とメモリの退
避アドレスを格納する管理テーブルとを設けたものであ
る。
A vector processor according to the present invention includes a plurality of vector registers, a first crossbar switch that allocates a manual bus of rotary data from the memory to these vector registers, and stores the vector registers in the memory. A second crossbar switch that allocates a data output path, an instruction register that outputs a bus allocation instruction for each crossbar switch as a virtual vector register number, and a physical vector that manually inputs the output virtual vector register number to the crossbar switch. A conversion table for converting into register numbers and a management table for storing vector register numbers of vector data temporarily saved in memory and memory save addresses are provided.

〔作用〕[Effect]

この発明に係るベクトルプロセッサは、ベクトル命令で
示されるVR番号を仮想的なものと見なし、物理的なV
R番号に変換する変換テーブルを有し、プロセス・スイ
ッチのときには変換テーブルを参照して仮想的なVR番
号を物理的なVR番号を付け換えることで、旧プロセス
のベクトル・レジスタを保護し、新プロセスのためのベ
クトル・レジスタを確保し、新プロセスの実行を開始し
てから、バス(メモリへのデータ転送路)が空いている
ときに、旧プロセスのベクトル・レジスタの内容をメモ
リにセーブし、また、旧プロセス番号とレジスタ番号と
セーブ・アドレスの書かれた管理テーブルを有し、旧プ
ロセスが再度実行されるときに必要なベクトル・レジス
タを管理テーブルを見ることによって復帰できるように
したものである。
The vector processor according to the present invention regards the VR number indicated by the vector instruction as a virtual one, and
It has a conversion table for converting to R numbers, and when a process switch is performed, the conversion table is referred to and the virtual VR number is replaced with the physical VR number, thereby protecting the vector register of the old process and converting it to the new process. After allocating a vector register for a process and starting execution of the new process, when the bus (data transfer path to memory) is free, save the contents of the old process's vector register to memory. , also has a management table in which the old process number, register number, and save address are written, so that when the old process is re-executed, the necessary vector registers can be restored by looking at the management table. It is.

〔実施例〕〔Example〕

以下、この発明の一実施例を図について説明する。第1
図において(1)は実行されるベクトル命令が人フてい
る命令レジスタ、(2)はメモリからのロード・データ
をキューイングするロート・パイプ、(3)は物理ベク
トル・レジスタ番号(以降PVR番号)でベクトル・レ
ジスタへの人力バスを割り付けるクロスバ・スイッチ、
(4)はベクトル・レジスタ、(5)はPVR番号でベ
クトル・レジスタ(4)からの出力パスを割り付けるク
ロスバ・スイッチ、(6)はメモリへのストア・データ
をキューイングするストア・バイブ、(7)は演算器、
(8)はベクトル・レジスタ番号(VR)をPVRに変
換するためのテーブル(VRT) とプロセス・スイッ
チ時にメモリ内にベクトル・レジスタをセーブ・リスト
アするための管理テーブル(SAT)  とを有するV
R番号変換器である。
An embodiment of the present invention will be described below with reference to the drawings. 1st
In the figure, (1) is the instruction register where the vector instruction to be executed is stored, (2) is the rotary pipe that queues the load data from memory, and (3) is the physical vector register number (hereinafter referred to as PVR number). ), a crossbar switch that assigns a human-powered bus to a vector register,
(4) is a vector register, (5) is a crossbar switch that allocates the output path from vector register (4) by PVR number, (6) is a store vibe that queues store data to memory, ( 7) is a computing unit,
(8) is a V having a table (VRT) for converting a vector register number (VR) to a PVR and a management table (SAT) for saving and restoring vector registers in memory at the time of a process switch.
This is an R number converter.

次に動作について説明する。VR番号は1〜4、PVR
番号も1〜4とする。
Next, the operation will be explained. VR number is 1-4, PVR
The numbers are also 1-4.

■プロセス1が実行、ベクトル・レジスタのVRI 、
 VR2を使うとする。この時変換器(8)内のVR変
換テーブル(以降VRTは第2図(a)のようになる。
■Process 1 executes, VRI of vector register,
Suppose you use VR2. At this time, the VR conversion table (hereinafter VRT) in the converter (8) becomes as shown in FIG. 2(a).

■プロセス・スイッチが入り、プロセス2が実行、ベク
トル・レジスタのVRI 、VR2を使うとする。コノ
とき、VRTはVRI、2をそれぞれPVR3,4ニ対
応させ、PVRI、2はメモリにセーブを始める(この
ときセーブ中=1となる)。セーブ・アドレスを格納し
た管理テーブル(以降SAT )にプロセス番号=1、
VR番号=1、または2、セーブアドレス= 1000
または1100が記録される。
■Assume that the process switch is turned on, process 2 is executed, and uses vector registers VRI and VR2. At this time, the VRT associates VRI, 2 with PVRs 3 and 4, respectively, and starts saving PVRI, 2 in the memory (at this time, saving = 1). In the management table (hereinafter referred to as SAT) that stores save addresses, process number = 1,
VR number = 1 or 2, save address = 1000
Or 1100 is recorded.

PVRI、2の内容のセーブが完了したらVRTのセー
ブ中=0、セーブ済=1となる、この時のVRT 。
When the saving of the contents of PVRI, 2 is completed, the VRT at this time will be saved = 0 and saved = 1.

SATは第2図(b)のようになる。The SAT becomes as shown in FIG. 2(b).

■プロセス・スイッチが入り、プロセス3が実行、ベク
トル・レジスタのVRIのみを使うとする。このときP
VR= 1はセーブ済なので、VRIはPVRIに対応
させる。PVR3,4はメモリにセーブしセーブ完了し
たときのVRT、SATは第2図(C)のようになる。
■Assume that the process switch is turned on and process 3 is executed, using only the vector register VRI. At this time P
Since VR=1 has been saved, VRI is made to correspond to PVRI. PVRs 3 and 4 are saved in the memory, and when the save is completed, the VRT and SAT become as shown in FIG. 2(C).

■プロセス・スイッチが入り、プロセス1が再実行され
る。このときプロセス1のVR= 2はベクトル・レジ
スタ内にPVR=2として残っているので、これをその
まま使い、VR=1はベクトル・レジスタ内に残ってい
ないので、SATよりセーブ・アドレス= 1000よ
り復帰させる。PVRIはメモリにセーブ。セーブ完了
したときのVRT 、SATは第2図(d)のようにな
る。
■The process switch is turned on and process 1 is re-executed. At this time, VR = 2 of process 1 remains in the vector register as PVR = 2, so use it as is, and since VR = 1 does not remain in the vector register, save address = 1000 from SAT. Bring it back. PVRI is saved in memory. When the save is completed, the VRT and SAT will be as shown in FIG. 2(d).

なお、上記実施例では、VR数、PVR数とも4とした
が、この数は任意である。ストア・パイプ、ロード・パ
イプ、演算器等の個数は任意である。
In the above embodiment, both the number of VRs and the number of PVRs are set to four, but these numbers are arbitrary. The number of store pipes, load pipes, arithmetic units, etc. is arbitrary.

(発明の効果) 以上のように、この発明によれば、VR番号をPVR番
号に変換する変換器を有し、VR番号とPVR番号の対
応関係の変更たけでVRの保護と確保ができるようにな
るので、ベクトルスイッチ時のベクトル・レジスタのセ
ーブによるオーバヘットか減少し高性能なベクトルプロ
セッサが得られる効果がある。
(Effects of the Invention) As described above, according to the present invention, a converter is provided that converts a VR number into a PVR number, and it is possible to protect and secure a VR by simply changing the correspondence between a VR number and a PVR number. Therefore, the overhead due to vector register saving at the time of vector switching is reduced, and a high-performance vector processor can be obtained.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はこの発明の一実施例によるベクトルプロセッサ
のブロック図、第2図はプロセス・スイッチ毎の変換テ
ーブル、管理テーブルの変遷を例示した図表、第3図は
従来のベクトルプロセッサのブロック図である。 図において、(1)は命令レジスタ、(3) 、 (5
)はクロスバ−スイッチ、(4)はベクトル・レジスタ
、(8)はベクトル・レジスタ番号変換器。 尚、図中同一符号は同−又は相当部分を示す。 第1図 メモリ
FIG. 1 is a block diagram of a vector processor according to an embodiment of the present invention, FIG. 2 is a diagram illustrating the transition of conversion tables and management tables for each process switch, and FIG. 3 is a block diagram of a conventional vector processor. be. In the figure, (1) is the instruction register, (3), (5
) is a crossbar switch, (4) is a vector register, and (8) is a vector register number converter. Note that the same reference numerals in the figures indicate the same or corresponding parts. Figure 1 Memory

Claims (1)

【特許請求の範囲】[Claims] 複数のベクトルレジスタと、これらベクトルレジスタに
対し、メモリからのロード・データの入力パスを割り付
ける第1のクロスバースイッチと、上記各ベクトルレジ
スタに対し、メモリにストアするデータの出力パスを割
り付ける第2のクロスバースイッチと、各クロスバース
イッチに対するパス割り付け命令を仮想ベクトルレジス
タ番号で出力する命令レジスタと、出力された仮想ベク
トルレジスタ番号をクロスバースイッチに入力する物理
ベクトルレジスタ番号に変換する変換テーブルと、メモ
リに一時退避したベクトルデータのベクトルレジスタ番
号とメモリの退避アドレスを格納する管理テーブルとを
備えたことを特徴とするベクトルプロセッサ。
a plurality of vector registers; a first crossbar switch that allocates input paths for loading data from memory to these vector registers; and a second crossbar switch that allocates output paths for data to be stored in memory to each of the vector registers. a crossbar switch, an instruction register that outputs a path allocation instruction for each crossbar switch as a virtual vector register number, and a conversion table that converts the output virtual vector register number to a physical vector register number input to the crossbar switch. A vector processor comprising: a management table that stores vector register numbers of vector data temporarily saved in memory and memory save addresses;
JP10087190A 1990-04-17 1990-04-17 Vector processor Pending JPH04557A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10087190A JPH04557A (en) 1990-04-17 1990-04-17 Vector processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10087190A JPH04557A (en) 1990-04-17 1990-04-17 Vector processor

Publications (1)

Publication Number Publication Date
JPH04557A true JPH04557A (en) 1992-01-06

Family

ID=14285381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10087190A Pending JPH04557A (en) 1990-04-17 1990-04-17 Vector processor

Country Status (1)

Country Link
JP (1) JPH04557A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0686922A1 (en) * 1994-05-31 1995-12-13 Nec Corporation Vector processing unit with reconfigurable data buffer

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0686922A1 (en) * 1994-05-31 1995-12-13 Nec Corporation Vector processing unit with reconfigurable data buffer
AU691593B2 (en) * 1994-05-31 1998-05-21 Nec Corporation Vector processing unit with reconfigurable data buffer

Similar Documents

Publication Publication Date Title
US6075546A (en) Packetized command interface to graphics processor
JPH09212371A (en) Register saving and restoring system
JPH04557A (en) Vector processor
JPS62151940A (en) Register save/restore method
JP2007317232A (en) Data processor
JPS5814253A (en) Interruption system for central processor
JPH0353659B2 (en)
JPH05165641A (en) Single chip microcomputer
JP2697619B2 (en) N-point FFT dedicated processor
JP2972557B2 (en) Data transfer control device and control method
JP2742245B2 (en) Parallel computer
JPH07325789A (en) Parallel processors
JPS58214930A (en) Data processor
JPH04293159A (en) Vector data processor
JPS6352240A (en) Data processor
JPS5850411Y2 (en) data channel device
JPH05241986A (en) Input/output instruction retrying system
JPH02103635A (en) Digital system
JPH07120307B2 (en) Initial setting method
JPH0855034A (en) Arithmetic processor and interrupt processing system using the processor
JPH0481933A (en) Vector data processor
JPS6222149A (en) Process changeover system
JPS6314242A (en) Memory expansion method
JPS63282542A (en) Virtual space managing device
JPS626329A (en) data transfer circuit