JPS6343782B2 - - Google Patents

Info

Publication number
JPS6343782B2
JPS6343782B2 JP23189682A JP23189682A JPS6343782B2 JP S6343782 B2 JPS6343782 B2 JP S6343782B2 JP 23189682 A JP23189682 A JP 23189682A JP 23189682 A JP23189682 A JP 23189682A JP S6343782 B2 JPS6343782 B2 JP S6343782B2
Authority
JP
Japan
Prior art keywords
stage
identifier
vector
control block
stages
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.)
Expired
Application number
JP23189682A
Other languages
Japanese (ja)
Other versions
JPS59123975A (en
Inventor
Juji Oinaga
Shoji Nakatani
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 JP23189682A priority Critical patent/JPS59123975A/en
Publication of JPS59123975A publication Critical patent/JPS59123975A/en
Publication of JPS6343782B2 publication Critical patent/JPS6343782B2/ja
Granted 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)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、ベクトルデータ処理装置における記
憶制御方式に関し、特に主メモリへのベクトルデ
ータアクセス命令の実行において、連続する複数
の命令を順次的にかつ多重に実行するための記憶
制御方式に関する。
Detailed Description of the Invention [Technical Field of the Invention] The present invention relates to a storage control method in a vector data processing device, and in particular, in executing a vector data access instruction to a main memory, a plurality of consecutive instructions are sequentially and This invention relates to a storage control method for multiple execution.

〔技術の背景〕[Technology background]

ベクトル計算機は、大量のデータを高速で処理
することができる。そのためデータを連続的に供
給する必要があり、通常は、バツフアメモリを用
いずに、主メモリとレジスタあるいは演算器との
間で、直接データ転送を行なう方式が多くとられ
ている。
Vector computers can process large amounts of data at high speed. Therefore, it is necessary to supply data continuously, and a method is generally used in which data is directly transferred between the main memory and a register or an arithmetic unit without using a buffer memory.

その際、主メモリのアクセス時間が問題とな
り、たとえば、ベクトルロード命令の場合、第1
図の基本タイムチヤート例に見られるように、ア
ドレスを生成してから、フエツチしたデータをベ
クトルレジスタVRまたはマスクレジスタMRヘ
ライトするまでの間に、数十サイクル分の時間が
必要とされる。
At that time, main memory access time becomes a problem. For example, in the case of a vector load instruction, the first
As seen in the example basic time chart in the figure, several tens of cycles are required between generating an address and writing the fetched data to the vector register VR or mask register MR.

そのため、ベクトルロード命令を連続して実行
させる場合、従来のようにVRへのライト動作が
終了してから次のベクトルロード命令を発信する
ならば、第2図にTDで示すように、立上り時に
常に数十サイクルの遅れが生じることになる。し
たがつて、連続する命令を、オーバーラツプさせ
て実行するならば、処理効率を改善することが可
能である。
Therefore, when executing vector load instructions consecutively, if the next vector load instruction is issued after the write operation to VR is completed as in the past, as shown by T D in Figure 2, Sometimes there will always be a delay of several tens of cycles. Therefore, if consecutive instructions are executed in an overlapping manner, processing efficiency can be improved.

〔発明の目的および構成〕[Object and structure of the invention]

本発明の目的は、ベクトルアクセス命令を多重
に連続実行させる手段を提供し、効率の改善を図
ることにあり、そのための構成として、ベクトル
レジスタと、主メモリと、該ベクトルレジスタお
よび主メモリの間でデータ転送を行なうアクセス
パイプラインとをそなえたベクトルデータ処理装
置において、上記アクセスパイプラインは、命令
を管理する複数の順次のステージと異なるステー
ジにより起動されて独立に各々のオペレーシヨン
を実行する複数の制御ブロツクとを有し、上記複
数の順次のステージの一部は、排他的な並列のス
テージを含み、処理待ちの命令を保持するために
使用されるようにするとともに、上記複数の順次
のステージの最初のステージで命令ごとに識別子
を発生し、該識別子を命令コードとともに順次の
各ステージおよび起動する制御ブロツクへ送り、
該識別子により定まる排他的な並列のステージの
一つに保持されるようにすることを特徴としてい
る。
An object of the present invention is to provide a means for continuously executing multiple vector access instructions and to improve efficiency. In a vector data processing device, the access pipeline has a plurality of sequential stages that manage instructions and a plurality of sequential stages that manage instructions and execute each operation independently. control blocks, some of the plurality of sequential stages include exclusive parallel stages, and are used to hold instructions pending processing; generating an identifier for each instruction in the first stage and sending the identifier along with the instruction code to each successive stage and control block to be activated;
It is characterized in that it is held in one of the exclusive parallel stages determined by the identifier.

〔発明の実施例〕[Embodiments of the invention]

以下に、本発明を実施例にしたがつて説明す
る。
The present invention will be explained below using examples.

第3図は、ベクトルデータ処理装置における記
憶制御部のデータおよびアドレス系の一般的な構
成を示すブロツク図であり、第4図はその制御系
の本発明実施例による構成を示すブロツク図であ
る。
FIG. 3 is a block diagram showing the general configuration of the data and address system of the storage control unit in a vector data processing device, and FIG. 4 is a block diagram showing the configuration of the control system according to an embodiment of the present invention. .

第3図において、1はアクセスパイプライン、
2はベクトルレジスタ、3はマスクレジスタ、4
は複数エレメントデータのパウンダリを変換する
ためのアライン部、5はセグメントデータのため
の先頭アドレス生成および論理アドレス/実アド
レス変換を行なうアドレス操作部、6は主メモリ
制御部、7はECC生成およびチエツクあるいは
パーシヤルストアの際のマージ処理などを行なう
データ操作部、8は主メモリに対するアクセスリ
クエストのプライオリテイ制御およびパーシヤル
ストア時のタイミング調整のためのアドレスパイ
ンライン等を含むブロツク、9は主メモリであ
る。
In Fig. 3, 1 is an access pipeline;
2 is a vector register, 3 is a mask register, 4
5 is an alignment unit for converting boundaries of multiple element data; 5 is an address operation unit that generates a start address for segment data and performs logical address/real address conversion; 6 is a main memory control unit; and 7 is an ECC generation and check unit. 8 is a block that includes an address spine line for controlling the priority of access requests to the main memory and timing adjustment during partial stores; 9 is a main memory block; It is.

第4図において、10乃至14のブロツクは、
供給された命令を逐次的にシフトさせるパイプラ
インのステージであり、10はAステージ、11
はBステージ、12はC0ステージ、13はC1ス
テージである。また10aは供給された順次の命
令に識別子を付加するための2ビツトのカウンタ
である。14乃至20のブロツクは、制御ブロツ
クであり、14はアドレス制御ブロツク、15は
レジスタリード制御ブロツク、16は主メモリ制
御インタフエース、17はアライン制御ブロツ
ク、18はアラインバツフアライト制御ブロツ
ク、19はアラインバツフアリード制御ブロツ
ク、20はレジスタライト制御ブロツクを示す。
In FIG. 4, blocks 10 to 14 are
These are the stages of the pipeline that sequentially shift the supplied instructions, 10 being the A stage, 11
is the B stage, 12 is the C0 stage, and 13 is the C1 stage. Further, 10a is a 2-bit counter for adding an identifier to sequential instructions supplied. Blocks 14 to 20 are control blocks, 14 is an address control block, 15 is a register read control block, 16 is a main memory control interface, 17 is an align control block, 18 is an align buffer write control block, and 19 is a Align buffer read control block 20 indicates a register write control block.

次に、第3図および第4図を参照して実施例の
動作を説明する。
Next, the operation of the embodiment will be explained with reference to FIGS. 3 and 4.

ベクトルロード命令が、命令制御部から発信さ
れると、命令は、Aステージ10に入り、同時に
アドレス制御ブロツク14を起動する。アドレス
制御ブロツク14は、アドレス操作部5を制御し
て、指定されたエレメント数だけアドレス生成、
アドレス変換、主メモリ制御部6へのリクエスト
を行なわせる。命令は、Aステージ10からBス
テージ11へ移り、アライン制御ブロツク17に
起動をかけて、Cステージへ移る。Cステージ
は、C0ステージ12およびC1ステージ13から
なり、命令に付加されている識別子によりいずれ
か一方へ入力される。
When a vector load instruction is issued from the instruction control unit, the instruction enters the A stage 10 and simultaneously activates the address control block 14. The address control block 14 controls the address operation unit 5 to generate addresses for a specified number of elements.
Address conversion and a request to the main memory control unit 6 are performed. The instruction moves from the A stage 10 to the B stage 11, activates the alignment control block 17, and moves to the C stage. The C stage consists of a C0 stage 12 and a C1 stage 13, and an instruction is input to either one according to an identifier added to the instruction.

アライン制御ブロツク17は、主メモリ制御部
6からの、フエツチデータを知らせるデータトラ
ンスフアウオーニング(DTW)信号により、デ
ータを揃える制御信号をアライン部4に送り、次
のサイクルで、アラインバツフアライト制御ブロ
ツク18に起動をかけ、アラインの結果をアライ
ン部4内のアラインバツフアに入れる。
The align control block 17 sends a control signal for aligning data to the align unit 4 in response to a data transfer wake-up (DTW) signal from the main memory control unit 6 that notifies fetch data, and in the next cycle, the align buffer write control block 18 is activated, and the alignment result is put into the alignment buffer in the alignment section 4.

次のサイクルで、アラインバツフアリード制御
ブロツク19に起動をかけ、ベクトルレジスタ2
は書き込むタイミングになつたら、アラインされ
た結果をアラインバツフアから読み出して、レジ
スタライト制御ブロツク20へ知らせる。レジス
タライト制御ブロツク20は、Cステージ12ま
たは13に保持されているベクトルレジスタ2の
アドレスのところへ書き込む。
In the next cycle, the align buffer read control block 19 is activated and the vector register 2 is activated.
When the writing timing comes, the aligned result is read from the alignment buffer and is notified to the register write control block 20. Register write control block 20 writes to the address of vector register 2 held in C stage 12 or 13.

次の命令発信は、アドレス制御ブロツク14
が、前の命令の最後のアドレス生成を終えていれ
ば可能であり、そのとき、その命令はB又はCス
テージに移つているので、Aステージ10に入れ
る事ができる。
The next command is sent to the address control block 14.
However, this is possible if the last address generation of the previous instruction has been completed, and at that time, the instruction has moved to the B or C stage, so it can be entered into the A stage 10.

ベクトル長(データサイズ)が小さいベクトル
ロード命令においては、最初の命令で、ベクトル
レジスタに書き込み中で、2番目の命令は、アラ
インが終わつてアラインバツフアにあり、3番目
の命令は、アライン中という事がある。そのよう
なベクトル長の小さいベクトルロード命令におい
ても、3命令のパイプライン実行を可能にするた
めには、図示のようにCステージをC0とC1の2
つの並列に設けるとアライン済みの命令を保持す
る事ができる。
In a vector load instruction with a small vector length (data size), the first instruction is writing to the vector register, the second instruction is in the alignment buffer after alignment, and the third instruction is in the alignment process. There is. Even in such a vector load instruction with a small vector length, in order to enable pipeline execution of three instructions, the C stage is divided into two stages, C0 and C1, as shown in the figure.
By providing two in parallel, aligned instructions can be held.

C0ステージ12とC1ステージ13は、Aステ
ージ10の2ビツトのカウンタ10aにより、入
力された命令を順次カウントし、その値を識別子
として命令に付加する。そしてその下位ビツトが
“0”のときはC0ステージへ、“1”のときはC1
ステージへ選択的に格納する。さらに、その識別
子を各制御ブロツクに送り、ステージと制御ブロ
ツクの同期制御を容易にする事ができる。また3
番目の命令は、BステージからCステージに移る
ときに、予め識別子によりC0ステージ又はC1ス
テージが空いているかどうかをみて移ればよい。
なお、上記Cステージは、C0とC1の2個に限ら
れるものではなく、任意複数の並列ステージで構
成することができる。
The C0 stage 12 and the C1 stage 13 sequentially count input instructions using the 2-bit counter 10a of the A stage 10, and add the values to the instructions as identifiers. When the lower bit is “0”, it goes to the C0 stage, and when it is “1”, it goes to the C1 stage.
Selectively store to stage. Furthermore, the identifier can be sent to each control block to facilitate synchronized control of the stage and the control block. Also 3
When the second instruction moves from the B stage to the C stage, it is sufficient to check in advance whether the C0 stage or the C1 stage is vacant using the identifier.
Note that the above-mentioned C stage is not limited to two, C0 and C1, but can be composed of any number of parallel stages.

〔発明の効果〕〔Effect of the invention〕

以上述べたように、本発明によれば、ベクトル
データの主メモリアクセスにおいて、アクセスパ
イプラインを複数命令により多重に制御すること
が可能となり、ベクトルデータ処理装置の処理速
度を向上させることができる。
As described above, according to the present invention, it is possible to multiplexly control the access pipeline using a plurality of instructions in main memory access of vector data, and the processing speed of a vector data processing device can be improved.

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

第1図はベクトルロード命令の基本タイムチヤ
ート、第2図はベクトルロード命令を連続実行す
る場合の従来のシーケンス図、第3図はベクトル
データ処理装置の記憶制御部の実施例構成図、第
4図は制御系の実施例構成図である。 図中、1はアクセスパイプライン、2はベクト
ルレジスタ、3はマスクレジスタ、4は複数エレ
メントデータのバウンダリを変換するためのアラ
イン部、5はセグメントデータのための先頭アド
レス生成および論理アドレス/実アドレス変換を
行なうアドレス操作部、6は主メモリ制御部、7
はECC生成およびチエツクあるいはパーシヤル
ストアの際のマージ処理などを行なうデータ操作
部、8は主メモリに対するアクセスリクエストの
プライオリテイ制御およびパーシヤルストア時の
タイミング調整のためのアドレスパイプライン等
を含むブロツク、9は主メモリ、10はAステー
ジ、11はBステージ、12はC0ステージ、1
3はC1ステージ、10aは供給された順次の命
令に識別子を付加するための2ビツトのカウン
タ、14はアドレス制御ブロツク、15はレジス
タリード制御ブロツク、16は主メモリ制御イン
タフエース、17はアライン制御ブロツク、18
はアラインバツフアライト制御ブロツク、19は
アラインバツフアリード制御ブロツク、20はレ
ジスタライト制御ブロツクを示す。
Fig. 1 is a basic time chart of a vector load instruction, Fig. 2 is a conventional sequence diagram when vector load instructions are executed continuously, Fig. 3 is an example configuration diagram of a storage control unit of a vector data processing device, and Fig. 4 The figure is a configuration diagram of an embodiment of the control system. In the figure, 1 is an access pipeline, 2 is a vector register, 3 is a mask register, 4 is an alignment unit for converting boundaries of multiple element data, and 5 is a start address generation and logical address/real address for segment data. 6 is a main memory control unit; 7 is an address operation unit that performs conversion;
8 is a data manipulation unit that performs ECC generation and checking or merging processing during partial store, and 8 is a block that includes an address pipeline for controlling the priority of access requests to the main memory and adjusting timing during partial store. , 9 is main memory, 10 is A stage, 11 is B stage, 12 is C0 stage, 1
3 is the C1 stage, 10a is a 2-bit counter for adding an identifier to the supplied sequential instructions, 14 is an address control block, 15 is a register read control block, 16 is a main memory control interface, and 17 is an alignment control block. block, 18
19 is an align buffer write control block, 19 is an align buffer read control block, and 20 is a register write control block.

Claims (1)

【特許請求の範囲】 1 ベクトルレジスタと、主メモリと、該ベクト
ルレジスタおよび主メモリの間でデータ転送を行
なうアクセスパイプラインとをそなえたベクトル
データ処理装置において、上記アクセスパイプラ
インは、命令を管理する複数の順次のステージ
と、異なるステージにより起動されて独立に各々
のオペレーシヨンを実行する複数の制御ブロツク
とを有し、上記複数の順次のステージの一部は、
排他的な並列のステージを含み、処理待ちの命令
を保持するために使用されるようにするととも
に、上記複数の順次のステージの最初のステージ
で命令ごとに識別子を発生し、該識別子を命令コ
ードとともに順次の各ステージおよび起動する制
御ブロツクへ送り、該識別子により定まる排他的
な並列のステージの一つに保持されるようにする
ことを特徴とするベクトルデータ記憶制御方式。 2 前記第1項において、複数の順次のステージ
の最初のステージで発生された識別子を、順次の
ステージおよび起動する制御ブロツクへ送り、こ
れらの順次のステージおよび起動する制御ブロツ
クでは、該識別子を用いてそれぞれのステージお
よび制御ブロツクを管理することを特徴とするベ
クトルデータ記憶制御方式。
[Scope of Claims] 1. In a vector data processing device including a vector register, a main memory, and an access pipeline that transfers data between the vector register and the main memory, the access pipeline manages instructions. a plurality of sequential stages, and a plurality of control blocks that are activated by different stages to independently perform their respective operations; some of the plurality of sequential stages include:
The first stage of the plurality of sequential stages generates an identifier for each instruction and uses the identifier as an instruction code. A vector data storage control system characterized in that the vector data is sent to each successive stage and activated control block, and is held in one of the exclusive parallel stages determined by the identifier. 2. In paragraph 1 above, the identifier generated in the first stage of a plurality of sequential stages is sent to the sequential stages and the activating control block, and these sequential stages and activating control blocks use the identifier. A vector data storage control method characterized in that each stage and control block are managed by a vector data storage control method.
JP23189682A 1982-12-29 1982-12-29 Storage control system of vector data Granted JPS59123975A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23189682A JPS59123975A (en) 1982-12-29 1982-12-29 Storage control system of vector data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23189682A JPS59123975A (en) 1982-12-29 1982-12-29 Storage control system of vector data

Publications (2)

Publication Number Publication Date
JPS59123975A JPS59123975A (en) 1984-07-17
JPS6343782B2 true JPS6343782B2 (en) 1988-09-01

Family

ID=16930730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23189682A Granted JPS59123975A (en) 1982-12-29 1982-12-29 Storage control system of vector data

Country Status (1)

Country Link
JP (1) JPS59123975A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4402671A1 (en) * 1994-01-29 1995-08-03 Hoechst Ag conductivity sensor

Also Published As

Publication number Publication date
JPS59123975A (en) 1984-07-17

Similar Documents

Publication Publication Date Title
JPS6131502B2 (en)
JPS618785A (en) Access control system for storage device
JPH0463430B2 (en)
JPS59160267A (en) Vector processing device
JPS59167761A (en) Computer system
JPS6343782B2 (en)
JPS6343783B2 (en)
JPH0233175B2 (en)
JPS6341106B2 (en)
JPS6343784B2 (en)
JPS60205647A (en) Data processor
JP3009168B2 (en) Data processing device
JPH0364903B2 (en)
JPS62143176A (en) Vector register access control system
JP2622026B2 (en) Register writing control method in central processing unit
JPS60176144A (en) Register file device
JPH01250163A (en) Bus controller
JPS59212957A (en) Microprogram controller
JPS6336030B2 (en)
JPS61157962A (en) Data transfer device
JPH0477945B2 (en)
JPS6267648A (en) Processing system for exclusive control instruction
JPS6359169B2 (en)
JPS6160473B2 (en)
JPS63311567A (en) Access controlling system