JPS6180452A - Vector processor - Google Patents

Vector processor

Info

Publication number
JPS6180452A
JPS6180452A JP59201776A JP20177684A JPS6180452A JP S6180452 A JPS6180452 A JP S6180452A JP 59201776 A JP59201776 A JP 59201776A JP 20177684 A JP20177684 A JP 20177684A JP S6180452 A JPS6180452 A JP S6180452A
Authority
JP
Japan
Prior art keywords
vector
processing
logical
data
processor
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
JP59201776A
Other languages
Japanese (ja)
Inventor
Tomoo Aoyama
青山 智夫
Yuji Aoki
雄二 青木
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 JP59201776A priority Critical patent/JPS6180452A/en
Publication of JPS6180452A publication Critical patent/JPS6180452A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PURPOSE:To obtain a vector processor which is most suitable to the logical simulation and picture processing by executing at a high speed a logical operation which is expressed in the combination of logical operations to a specific field of the data to be operated. CONSTITUTION:When a processor is started, a controller 101 performs a prescribed preparation and then indicates the start to a vector processor 102. A control circuit 103 reads out a vector instruction stored in a main memory 100. Based on this vector instruction, it is checked whether the necessary resources can be used or not. Then the vector instruction is executed only when the necessary resources can all be used. The vector processing operation is carried out in two steps, that is, the regulation of the vector operator processing function done by the preparatory processing before the start of the processor 102 and the designation of a computing element in a vector instruction mode. The circuit 103 in the processor 102 sends the information on the end of the vector processing to the controller 101 when a series of vector processings are through. The data on the logical simulation and the picture processing are processed by repeating said preparatory processing are vector processing.

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はベクトル処理装置に係り、特に画像処理、論理
シミュレーション等に好適なベクトル処理装置に関する
DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a vector processing device, and particularly to a vector processing device suitable for image processing, logic simulation, and the like.

〔発明の背景〕[Background of the invention]

従来、科学技術計算に頻繁にあられ九るベクトル処理を
高速に行うために種々のベクトル処理装置が提案されて
いる。該ベクトル処理装置の一つに複数のベクトル演算
器、ベクトルレジスタ、および該ベクトルレジスタと主
記憶装置間のデータ転送を行う複数のりクエスタを具備
するベクトル処理装置がある(CRAY−1コンピユー
タシステム、「汎用大型コンピュータJ P、283〜
295、日経マグロウヒル、1982)。
Conventionally, various vector processing devices have been proposed to perform high-speed vector processing, which frequently occurs in scientific and technical calculations. One of the vector processing devices is a vector processing device that includes a plurality of vector arithmetic units, a vector register, and a plurality of queuers that transfer data between the vector register and the main memory (CRAY-1 computer system, " General-purpose large computer JP, 283~
295, Nikkei McGraw-Hill, 1982).

このようなベクトル処理装置においては、主記憶上の被
演算データはりクエスタによって一担ベクトルレジスタ
にローディングされた後、ベクトル命令の指定に従いベ
クトル演算器に送られて処理され、ベクトルレジスタに
格納される。このベクトルレジスタ上のデータは、続い
て解読されるベクトル命令がデータ処理を指定している
場合。
In such a vector processing device, the operand data in the main memory is loaded into a vector register by the quester, and then sent to the vector arithmetic unit according to the specification of the vector instruction, processed, and stored in the vector register. . The data on this vector register is subsequently decoded if a vector instruction specifies data processing.

主記憶を介することなくベクトル演算器に送られ処理が
行われる。このように、一連のベクトル命令によって規
定されるデータ処理が、主記憶を経由することなく、主
記憶よりもアクセス時間の速いベクトルレジスタを介し
て行われるため、ベクトル演算器を主記憶よりも高速に
設計しても演算に必要なデータ転送能力を確保できる利
点がある。
The data is sent to the vector arithmetic unit and processed without going through the main memory. In this way, data processing specified by a series of vector instructions is performed via vector registers, which have faster access times than main memory, without going through main memory. It has the advantage of ensuring the data transfer capacity necessary for calculations even if the design is

ベクトル処理装置を科学技術計算以外の大規模データ処
理、たとえば電子回路の論理シミュレーションや画像処
理に適用した場合、ベクトルレジスタを介する論理演算
は高速ベクトル演算処理が可能である。しかし、論理シ
ミュレーション、画像処理対象のデータは、科学技術計
算とは異り。
When a vector processing device is applied to large-scale data processing other than scientific and technical calculations, such as logic simulation of electronic circuits and image processing, high-speed vector processing is possible for logical operations via vector registers. However, the data for logical simulation and image processing is different from scientific calculations.

被演算データの特定フィールドに対する論理演算の組合
せによって表わされる論理演算が多く、この種の演算に
対して、現在のベクトル処理装置は次のような処理によ
って目的とする論理演算を行うことになる。
There are many logical operations that are expressed by combinations of logical operations on specific fields of data to be operated on, and for these types of operations, current vector processing devices carry out the following processing to perform the desired logical operation.

(1)被演算データの特定フィールド間の相対的位置を
合致させる。
(1) Match the relative positions between specific fields of operand data.

(2)被演算データの特定フィールド間の論理演算を行
う。
(2) Perform logical operations between specific fields of operand data.

(3)  (2)で得られた演算結果を被演算データの
特定フィールドに上書きする。
(3) Overwrite the operation result obtained in (2) in the specific field of the operand data.

(4)上記(1)〜(3)の処理を必要なだけ繰り返え
す。
(4) The above processes (1) to (3) can be repeated as many times as necessary.

上記(1)〜(4)の処理は現在のベクトル処理装置を
用い、チェイニング機能を使って、ある程度の高速処理
を図ることができる。しかし、現状のベクトル処理装置
の処理では、上記(1)〜(4)の演算間に必要なベク
トルレジスタへのアクセスをほぼ零とすることはできな
い、また、上記のように、一つの基本的なデータ処理の
ために1個のベクトル演算器を使用する処理では、複雑
な処理になると演算器不足となり、これが原因となって
チェイニングが不可能になる。このため処理速度の著し
い低下を招く。
Processes (1) to (4) above can be performed at a certain level of high-speed processing using current vector processing devices and using a chaining function. However, with the processing of current vector processing devices, it is impossible to reduce the number of accesses to the vector registers required between the operations (1) to (4) above to almost zero. In a process that uses one vector arithmetic unit for complex data processing, if the processing becomes complex, there will be a shortage of arithmetic units, and this will cause chaining to become impossible. This causes a significant decrease in processing speed.

このように、論理シミニレ−9321画像処理などで多
く出現するところの、被演算データの特定フィールドに
対する論理演算の組合せによって表現される論理演算に
対して、現在のベクトル処理装置は必要とされるに十分
な処理性能を発揮することができない。
In this way, current vector processing devices are not required for logical operations expressed by combinations of logical operations on specific fields of operand data, which often appear in logic SIMILE-9321 image processing. Unable to demonstrate sufficient processing performance.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、被演算データの特定フィールドに対す
る論理演算の組合せによって表現される任意の論理演算
を高速に実行するベクトル演算器を実現し、論理シミュ
レーション、画像処理に最適なベクトル処理装置を提供
することにある。
An object of the present invention is to realize a vector arithmetic unit that can quickly execute any logical operation expressed by a combination of logical operations on a specific field of operand data, and to provide a vector processing device that is optimal for logic simulation and image processing. It's about doing.

〔発明の概要〕[Summary of the invention]

被演算データの特定フィールドに対する論理演算の組合
せによって表現される論理演算を、以下組合せ論理演算
と呼ぶ。この組合せ論理演算を高速に処理するベクトル
演算器として必要な条件は次の通りである。
A logical operation expressed by a combination of logical operations on a specific field of data to be operated on is hereinafter referred to as a combinational logical operation. The conditions necessary for a vector arithmetic unit that processes this combinational logic operation at high speed are as follows.

(1)組合せ論理演算動作を規定する手段。(1) Means for specifying combinatorial logic operations.

(2)基本的な論理演算を行う複数の演算器。(2) Multiple computing units that perform basic logical operations.

(3)被演算データの任意のフィールドへ演算結果を書
込む論理回路。
(3) A logic circuit that writes the operation result to any field of the operand data.

(1)の論理演算動作規定手段は、複数の演算器対応に
処理動作指示を保持する記憶手段を設けることにより容
易に実現できる。
The logical operation operation regulation means (1) can be easily realized by providing storage means for holding processing operation instructions corresponding to a plurality of arithmetic units.

(2)については、複数の演算器の結合関係が機能、性
能上の重要な問題となる。複数の演算器を並列に結合し
た場合、複数のフィールドに対し同時に演算が行われ、
性能上は最も好ましい演算器となる。 しかし、この場
合、(3)の演算結果を特定フィールドに書込む処理の
実現が、特にフィールド間の重複又は空き領域が存在す
る場合困難である。
Regarding (2), the connection relationship between a plurality of arithmetic units becomes an important issue in terms of function and performance. When multiple calculation units are connected in parallel, calculations are performed on multiple fields at the same time.
In terms of performance, it is the most preferable arithmetic unit. However, in this case, it is difficult to realize the process of writing the operation result in (3) into a specific field, especially when there is overlap between fields or empty areas.

複数演算器を直列に結合した場合、複数のフィールドに
対し演算はシリアルに行われることになる。しかし、ベ
クトル演算器をパイプライン制御により動作させること
により、並列結合の演算器に比較して著しい性能上の低
下を招くことがないように設計することができる。 さ
らに(3)の演算結果を書込む処理を基本的な演算器対
応にシリアルに行うことにより、1個の演算結果を任意
のフィールドに書込む処理に還元させることが出来、論
理が簡約化される。また、直列に演算器を配置すること
により、前段の演算結果を使って次の論理演算を行うこ
とが可能となる。このことは1組合せ論理演算の組合せ
によって表現される高次の組合せ論理演算(以下このタ
イプの論理演算をcOmplex logical演算
と呼ぶ)も直列結合の演算器によって処理できることを
示す。従って、論理演算器を直列に結合し、その各段に
演算結果を被演算データの任意のフィールドに書込む手
段を設けた構成のベクトル演算器は、機能、性能の面で
論理シミュレーションおよび画像処理に好適な演算器と
考えられる。本発明は、かかるベクトル演算器を実現す
るものである。
When multiple arithmetic units are connected in series, operations are performed serially on multiple fields. However, by operating the vector arithmetic unit under pipeline control, it is possible to design the vector arithmetic unit so as not to cause a significant drop in performance compared to parallel-coupled arithmetic units. Furthermore, by performing the process of writing the calculation result in (3) serially in a manner compatible with basic arithmetic units, it is possible to reduce the process to writing a single calculation result to an arbitrary field, simplifying the logic. Ru. Further, by arranging the arithmetic units in series, it becomes possible to perform the next logical operation using the operation result of the previous stage. This indicates that a high-order combinatorial logical operation expressed by a combination of one combinatorial logical operation (hereinafter this type of logical operation will be referred to as a cOmplex logical operation) can also be processed by serially coupled arithmetic units. Therefore, in terms of function and performance, vector arithmetic units with a configuration in which logic arithmetic units are connected in series and each stage is provided with a means for writing the arithmetic result to an arbitrary field of the data to be operated on are suitable for logic simulation and image processing. It is considered to be a suitable arithmetic unit for The present invention realizes such a vector arithmetic unit.

論理シミュレーションに出現するデータ処理の特徴は複
数の組合せ論理演算にある。従って、おのおのの組合せ
論理演算に対して専用のベクトル演算器を設計すること
はハードウェア量の制約から不可能なことである。この
ため、組合せ論理演算のどのようなタイプにも適用可能
なベクトル演算器を設計する必要があり、かつ論理シミ
ュレーション処理を実行中、動的に上記ベクトル演算器
の処理動作を規定する手段が必要となる。この手段を実
現するため1本発明ではベクトル処理装置を制御する制
御装置を考え、該制御装置によってベクトル演算器の構
成要素である論理演算器と演算結果書込回路の処理動作
を規定している記憶手段に制御情報を書込むことが可能
なように、制御情報書込バスを設け、該制御情報書込動
作をベクトル処理装置の制御装置の命令によって行える
よ   ゛うにする。これにより、論理シミュレーショ
ン実行中に1次ステップのシミュレーション処理に必要
な組合せ論理演算又はcon+plex logica
l演算を実行するために必要なベクトル演算器を概念的
に生成することが出来、高速論理シミュレーションが可
能になる。
The data processing that appears in logic simulations is characterized by multiple combinatorial logic operations. Therefore, it is impossible to design a dedicated vector arithmetic unit for each combinatorial logical operation due to hardware limitations. Therefore, it is necessary to design a vector calculator that can be applied to any type of combinatorial logic operation, and a means is needed to dynamically specify the processing operation of the vector calculator while performing logic simulation processing. becomes. In order to realize this means, 1 the present invention considers a control device that controls a vector processing device, and uses the control device to specify the processing operations of a logical arithmetic unit and a calculation result writing circuit, which are components of a vector arithmetic unit. A control information write bus is provided so that control information can be written to the storage means, and the control information write operation can be performed by a command from a control device of the vector processing device. This allows the combinatorial logic operation or con+plex logic necessary for the first step simulation process to be performed during the execution of the logic simulation.
The vector arithmetic unit required to execute the l operation can be conceptually generated, and high-speed logic simulation becomes possible.

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

第1図は本発明のベクトル処理装置の概略ブロック図を
示したものである。第1図において、100は主記憶装
置、102はベクトル処理装置。
FIG. 1 shows a schematic block diagram of a vector processing device according to the present invention. In FIG. 1, 100 is a main storage device, and 102 is a vector processing device.

101はベクトル処理装置を制御するための制御装置で
ある。 103はベクトル処理装置管理回路であり、ベ
クトル処理装置102内のメモリリクエスタ104.ベ
クトルレジスタ106、及びベクトルレジスタ106の
読出書込動作を行うためのデータバスの切換を行うスイ
ッチング回路105.107の起動終結処理を管理する
ものである。
101 is a control device for controlling the vector processing device. 103 is a vector processing device management circuit, and memory requester 104 . It manages activation and termination processing of the vector register 106 and switching circuits 105 and 107 that switch data buses for performing read/write operations of the vector register 106.

109は被演算データの特定フィールドに対し任意の論
理演算を行うことのできる論理演算器、11Oは論理演
算器109の処理を規定する情報を保持する記憶回路で
ある。記憶回路110と論理演算器109はそれぞれ直
列に結合されて、ベクトル演算器108を構成している
Reference numeral 109 denotes a logic operation unit capable of performing an arbitrary logic operation on a specific field of data to be operated, and reference numeral 11O indicates a storage circuit that holds information that defines the processing of the logic operation unit 109. The memory circuit 110 and the logic operation unit 109 are each connected in series to form a vector operation unit 108.

第1図において、便宜上、メモリリクエスタ104、ベ
クトルレジスタ106.ベクトル演算器108等はそれ
ぞれ1個ずつ示されているが、一般にこれらは複数個存
在する。また、ベクトル演算器108内の論理演算器1
09.記憶回路110の数も3個としたが、これに限定
する必要はない。
In FIG. 1, for convenience, memory requester 104, vector register 106 . Although one vector arithmetic unit 108 and the like is shown, there are generally a plurality of these. In addition, the logical operator 1 in the vector operator 108
09. Although the number of memory circuits 110 is also three, it is not necessary to limit it to this.

当該処理装置が起動されると、制御装置101は主記憶
装置lOOからベクトル処理装置102の制御に関する
命令を読出す。この命令の中には。
When the processing device is started, the control device 101 reads instructions related to the control of the vector processing device 102 from the main storage device lOO. In this command.

ベクトル演算器108の処理動作を規定する命令が含ま
れている。当該命令が制御装置101によって解読され
ると、該制御装置lotはベクトル処理装置管理回路1
03を介して、ベクトル演算器108内の記憶回路11
0へ論理演算器制御情報を書込む。にクトル演算器10
8内の複数の論理演算器109にはおのおの固有の番号
が付けられていて、制御装置101はこの固有の番号と
セットすべき制御情報を対応させて送出することにより
、ベクトル演算器108内の任意の論理演算器109に
命令で規定された固有の論理演算を行わせることが出来
る。
It includes instructions that define the processing operations of the vector arithmetic unit 108. When the instruction is decoded by the control device 101, the control device lot loads the vector processing device management circuit 1.
03, the storage circuit 11 in the vector arithmetic unit 108
Write logic operator control information to 0. vector calculator 10
Each of the plurality of logic operators 109 in the vector calculator 108 is assigned a unique number, and the control device 101 sends out the control information in correspondence with the unique number to set the control information. Any logical operation unit 109 can be caused to perform a unique logical operation specified by the instruction.

以上のベクトル処理に先立つ処理のことを以降。The following describes the processing that precedes the vector processing described above.

セットアツプ処理と呼ぶことにする。This will be called setup processing.

続いて、制御装置101がベクトル処理装置102に起
動を指示すると、管理回路103は主記憶袋aioo上
に格納さ−れでいるベクトル命令を読み出し、該命令の
情報に従って必要なメモリリクエスタ、ベクトルレジス
タ、ベクトル演算器(これらを総称してリソースと呼ぶ
)が使用できる状態か否かを調べて、要求リソースが全
て使用可の場合にのみ該ベクトル命令を実行する。この
ときベクトル処理動作は、ベクトル処理装置1゜2を起
動する前のセットアツプ処理によるベクトル演算器処理
機能規定とベクトル命令中の演算器指定の2段階によっ
て行われる。一連のベクトル処理が終了した後、ベクト
ル処理装置102内の管理回路103はベクトル処理完
了情報を制御装置101に送る。
Subsequently, when the control device 101 instructs the vector processing device 102 to start up, the management circuit 103 reads the vector instruction stored in the main memory bag aioo, and executes the necessary memory requester and vector register according to the information of the instruction. , checks whether vector arithmetic units (these are collectively referred to as resources) are available for use, and executes the vector instruction only when all requested resources are available. At this time, the vector processing operation is performed in two steps: defining the processing function of the vector arithmetic unit by a set-up process before starting up the vector processing device 1-2, and specifying the arithmetic unit in the vector instruction. After a series of vector processing is completed, the management circuit 103 in the vector processing device 102 sends vector processing completion information to the control device 101.

以上のセットアツプ処理とベクトル処理の繰りかえしに
よって論理シミュレーションおよび画像処理に関するデ
ータ処理が行われる。
Data processing related to logic simulation and image processing is performed by repeating the above setup processing and vector processing.

第2図は第1図の論理演算器109とその制御情報を保
持している記憶回路110のブロック図である。
FIG. 2 is a block diagram of the logical arithmetic unit 109 of FIG. 1 and the storage circuit 110 holding its control information.

セットアツプ処理時、論理演算器制御情報は記憶回路1
10にセットされる。該記憶回路110は3個のフィー
ルド201,202,203を有している。それぞれの
フィールドは被演算データのシフト情報、論理演算情報
、結果の格納に関する情報を保持している。
During setup processing, logic operation unit control information is stored in memory circuit 1.
Set to 10. The memory circuit 110 has three fields 201, 202, 203. Each field holds shift information of operand data, logical operation information, and information regarding storage of results.

ベクトル処理時、ベクトル演算器に被演算データが送ら
れるといったんレジスタ204.205に被演算データ
が格納される。被演算データの特定フィールド間の論理
演算を行うため、相互のビット位置を合致させる必要が
ある。このため、論理演算に先立ってシフタ206,2
07でシフト処理を行う。シフタ206,207のシフ
ト量は、記憶回路110のフィールド201にセットア
ツプ処理時に設定されたシフト情報より決定される。
During vector processing, once the operand data is sent to the vector calculator, the operand data is stored in registers 204 and 205. In order to perform logical operations between specific fields of operand data, it is necessary to match mutual bit positions. For this reason, the shifters 206 and 2
Shift processing is performed in step 07. The shift amounts of shifters 206 and 207 are determined from shift information set in field 201 of storage circuit 110 during setup processing.

シフト処理後、論理演算器208により記憶回路110
のフィールド202に定められる論理演算が行われるに
こで論理演算とは、論理シミュレーション、画像処理に
必要な論理演算、即ち、論理和、論理積、排他的論理和
1反、転などの基本的な論理演算を云い、比較等の論理
演算を含まないものとする。論理演算結果はレジスタ2
09に保持され、タイミング合せを行ったのち、レジス
タ204.205に保持されている被演算データと共に
、マージ回路210の入力となり、記憶回路110のフ
ィールド203に従い、被演算データの特定フィールド
に演算結果が書込まれる。マージ回路210の出力は1
次段の論理演算器が存在する場合は2パス211,21
2であり、存在しない最終段の演算器では1パス212
のみである。
After the shift processing, the memory circuit 110 is
The logical operations defined in the field 202 are performed here.Logical operations are the logical operations necessary for logic simulation and image processing, i.e., basic logical operations such as logical sum, logical product, exclusive logical sum, inversion, and so on. This refers to logical operations such as logical operations, and does not include logical operations such as comparison. Logical operation result is in register 2
09 and after timing alignment, it becomes an input to the merge circuit 210 together with the operand data held in the registers 204 and 205, and the operation result is stored in a specific field of the operand data according to the field 203 of the storage circuit 110. is written. The output of the merge circuit 210 is 1
If there is a logical operator in the next stage, 2 paths 211, 21
2, and in the final stage arithmetic unit that does not exist, 1 pass 212
Only.

従ってベクトル演算器の最終段の論理演算器の処理動作
規定時にはこの点を留意してセットアツプ処理を行う必
要がある。マージ回路210の論理はシフタとセレクタ
によって構成することができる。
Therefore, when specifying the processing operation of the logic arithmetic unit at the final stage of the vector arithmetic unit, it is necessary to perform setup processing with this point in mind. The logic of the merge circuit 210 can be configured by shifters and selectors.

第3図は8バイトのベクトルレジスタ上に4個の2バイ
ト幅のフィールドを定義し、その4人力信号値s、、s
、、s、、s、の論理積をとる処理を、従来のベクトル
処理装置と本発明のベクトル処理装置で行う場合を示し
た図である。第3図(a)は従来のベクトルが処理装置
の場合であり。
Figure 3 defines four 2-byte wide fields on an 8-byte vector register, and their four input signal values s, , s
, , s, , s, is a diagram showing a case where a conventional vector processing device and a vector processing device of the present invention perform a process of calculating the logical product of , s, , s. FIG. 3(a) shows a case where the conventional vector is a processing device.

第3図(b)は本発明のベクトル処理装置の場合である
FIG. 3(b) shows the case of the vector processing device of the present invention.

まず第3図(a)につ・いて説明する。入力データを2
バイト分左シフトすると、S、フィールドのデータは失
われ、1番右端の2バイト分のフィールドには0が入る
。このシフトされた結果を301bとし、シフト前のデ
ータを301aとする。
First, FIG. 3(a) will be explained. Input data 2
When the data is shifted to the left by bytes, the data in the S field is lost, and the rightmost 2-byte field is filled with 0. This shifted result is designated as 301b, and the data before shifting is designated as 301a.

次に301aと301bの両データの全8バイトの論理
積をとり、その結果を3010とする。ここで5次の段
階で不必要なフィールドのデータは斜線で示す6次に3
010のデータを4バイト左シフトすると、右端から4
バイトまでにはOが入る。これを301dとする。ここ
でも1次の段階で不必要なフィールドは斜線で示す0次
に3010と301dの8バイトの論理積をとり、その
結果を3018とする。この3018の左端の2バイト
に目的のSl ・S2 ・Sl・S4が得られる。
Next, all 8 bytes of data 301a and 301b are ANDed, and the result is 3010. Here, unnecessary field data in the 5th stage is indicated by diagonal lines in the 6th and 3rd stage.
If you shift the data of 010 by 4 bytes to the left, it will shift 4 bytes from the right end.
There will be an O before the part time job. This is designated as 301d. Here again, fields unnecessary in the primary stage are logically ANDed of 8 bytes of 0th order 3010 and 301d shown by diagonal lines, and the result is 3018. The target Sl, S2, Sl, and S4 are obtained in the leftmost 2 bytes of this 3018.

次に第3図(b)の場合を第2図の構成と対応させて説
明する。ここで、第2図のレジスタ204゜205のデ
ータ幅を8バイトとする。
Next, the case of FIG. 3(b) will be explained in relation to the configuration of FIG. 2. Here, it is assumed that the data width of the registers 204 and 205 in FIG. 2 is 8 bytes.

まず、301Aのデータをレジスタ204.205にロ
ードする。記憶回路110の201にはレジスタ204
のデータをシフトしないという情報(すなわち、0ビツ
ト左シフト)とレジスタ205のデータを2バイト左シ
フトするという情報をセットアツプしておく。202に
は論理積を指示するオペレーションコード、203には
演算結果をレジスタ204.205のデータ上にうわが
きする指示をセットアツプしておく。この記憶回路11
0で規定される演算処理を行うと、パス211.212
上のデータは共に第3図(a)の3010のデータと同
じものになる。
First, data 301A is loaded into registers 204 and 205. A register 204 is provided in 201 of the memory circuit 110.
Information that the data in the register 205 is not shifted (ie, shifted to the left by 0 bits) and information that the data in the register 205 is shifted to the left by 2 bytes are set up. At 202, an operation code for instructing a logical product is set up, and at 203, an instruction for writing the operation result onto the data in the registers 204 and 205 is set up. This memory circuit 11
When the calculation process specified by 0 is performed, the path 211.212
Both of the above data are the same as the data 3010 in FIG. 3(a).

パス211.212のデータは、直列に結合された次段
の論理演算器の入力レジスタ204,205に格納され
る。このレジスタを前段のものと区別するため、204
’ 、205’ とする。同様に1次段の論理演算器用
の記憶回路を110′とする。この次段の論理演算器用
の記憶回路110′の情報としては、201’ にはレ
ジスタ204′のデータに対して0ビツトシフト、レジ
スタ205′のデータに対して4バイト左シフトを指示
する情報、202′には論理積を指示する情報、203
には演算結果をレジスタ204’ 、205’のデータ
上にうわがきする情報が入っている。記憶回路110′
で規定される論理演算を行うと。
The data on paths 211 and 212 are stored in input registers 204 and 205 of the next-stage logical arithmetic units connected in series. To distinguish this register from the previous one, 204
' , 205'. Similarly, the storage circuit for the logical operation unit of the first stage is assumed to be 110'. The information in the storage circuit 110' for the logical operation unit at the next stage includes information instructing a 0-bit shift for the data in the register 204' and a 4-byte left shift for the data in the register 205' in 201';' is information indicating logical product, 203
contains information for displaying the calculation results on the data in the registers 204' and 205'. Memory circuit 110'
If you perform the logical operation specified by .

パス211または212上には第3図(a)の301e
データと同じものが現われる。
301e in FIG. 3(a) is on the path 211 or 212.
The same data appears.

即ち、本発明の直列結合された論理演算器を用いること
によって、その2段目の出力に目的の演算結果が得られ
る。演算器が3段以上から構成されている場合、3段以
降の演算器に対しては「何もしない」指示をセットアツ
プしておけばよい。
That is, by using the series-coupled logic arithmetic units of the present invention, the desired arithmetic result can be obtained at the output of the second stage. If the arithmetic units are composed of three or more stages, a ``do nothing'' instruction may be set up for the arithmetic units in the third and subsequent stages.

第3図(a)と第3図(b)の処理の性能を比較すると
次のようになる。
Comparing the performance of the processing in FIG. 3(a) and FIG. 3(b), the results are as follows.

第3図(a)の処理; ■ VLD      VRo 、 301 a(ベク
トルレジスタVROへ301aデータをロードする。) ■ VSHIFT   VRI、VRo、2B(2B左
シフトを行う) ■ VAND     VR2,VRl、VRO(論理
積をとる) ■ VSHIFT   VR3,VR2,4B(4B左
シフトを行う) ■ VAND     VR4,VR2,VR3(論理
積をとる) +li+  VSTD       VR4,301e
(結果をストアする) 第3図(b)の処理; ■ VLD      VRo、301A+z  VL
D      VRl、301A(ベクトルレジスタV
R0,1に301Aのデータをロードする) @  VMACROL  VR2,VRO,VRI(マ
クロ・ロジカル演算を行う) tl  VSTD     VR2,301e有するベ
クトル処理装置で上記第3図(a)の処理を行う場合の
タイムチャートであり、第4図(b)は第3図(b)の
本発明の場合のタイムチャートである。、ここで、nは
ベクトル要素数を示す。第4図より5本発明は従来に比
へて3倍高速化される。
Processing in FIG. 3(a); ■ VLD VRo, 301 a (loads data 301a to vector register VRO) ■ VSHIFT VRI, VRo, 2B (shifts left by 2B) ■ VAND VR2, VRl, VRO (logical (takes the product) ■ VSHIFT VR3, VR2, 4B (shifts 4B to the left) ■ VAND VR4, VR2, VR3 (takes the logical product) +li+ VSTD VR4, 301e
(Storing results) Processing in Figure 3 (b); ■ VLD VRo, 301A+z VL
D VRl, 301A (vector register V
Load the data of 301A into R0, 1) @ VMACROL VR2, VRO, VRI (perform macro-logical operations) tl VSTD Time when performing the processing in Figure 3 (a) above with a vector processing device having VR2, 301e FIG. 4(b) is a time chart in the case of the present invention shown in FIG. 3(b). , where n indicates the number of vector elements. From FIG. 4, the present invention is three times faster than the conventional method.

また、ベクトル処理装置内の制御回路からは論理演算器
は1個とみえ、制御回路のハードウェア量の削減に有効
である。これらをまとめると第5図のようになる。
Furthermore, from the control circuit within the vector processing device, the number of logical arithmetic units appears to be one, which is effective in reducing the amount of hardware in the control circuit. These are summarized as shown in Figure 5.

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

本発明によれば、ベクトルレジスタ上の特定のフィール
ドに対し任意の論理演算を実施し、この基本論理演算を
組合せて一個のマクロな論理演算を1ベクトル演算器に
よって実施できるので、複雑な論理演算を数多く行わな
ければならないデータ処理、たとえば電子回路の論理シ
ミュレーションおよび画像処理等に著しい性能上の利点
を有する。
According to the present invention, any logical operation can be performed on a specific field on a vector register, and by combining these basic logical operations, one macro logical operation can be performed by one vector operator, so that complex logical operations can be performed. It has a significant performance advantage in data processing that requires a large number of operations, such as logic simulation of electronic circuits and image processing.

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

第1図は本発明のベクトル処理装置の概略ブロック図、
第2図は第1図におけるベクトル演算器の詳細図、第3
図は従来のベクトル処理装置と本発明のベクトル処理装
置の処理の比較図、第4図は従来装置と本発明装置のタ
イミング図、第5図は性能比較図である。 100・・・主記憶装置1.  101・・・ベクトル
処理装置制御装置、  102・・・ベクトル処理装置
、103・・・ベクトル処理装置管理回路、  104
・・・メモリリクエスタ、  105,107・・・ス
イチソング回路、  106・・・ベクトルレジスタ。 10B・・・ベクトル演算器、  109・・・論理演
算器、  110・・・記憶回路。 第3図 (OL)(!r−)
FIG. 1 is a schematic block diagram of a vector processing device of the present invention;
Figure 2 is a detailed diagram of the vector arithmetic unit in Figure 1;
The figure is a comparison diagram of the processing of the conventional vector processing device and the vector processing device of the present invention, FIG. 4 is a timing diagram of the conventional device and the present invention device, and FIG. 5 is a performance comparison diagram. 100...Main storage device 1. 101... Vector processing device control device, 102... Vector processing device, 103... Vector processing device management circuit, 104
...Memory requester, 105,107...Switch song circuit, 106...Vector register. 10B...Vector arithmetic unit, 109...Logic arithmetic unit, 110...Storage circuit. Figure 3 (OL) (!r-)

Claims (1)

【特許請求の範囲】[Claims] (1)主記憶装置と、ベクトルレジスタと、主記憶装置
とベクトルレジスタとの間のデータ転送を行うリクエス
タと、ベクトルレジスタから受取ったベクトルデータに
対しベクトル演算処理を行い、結果をベクトルレジスタ
に送出するベクトル演算器を具備してなるベクトル処理
装置において、被演算データの特定フィールドに対して
任意の論理演算を実行し、結果を被演算データの任意の
フィールドに格納する機能を持った論理演算器を複数個
直列に結合してベクトル演算器を構成すると共に、前記
論理演算器の処理動作を制御する手段を設けたことを特
徴とするベクトル処理装置。
(1) A requester that transfers data between the main memory device, a vector register, and the main memory device and the vector register, performs vector arithmetic processing on the vector data received from the vector register, and sends the result to the vector register. In a vector processing device equipped with a vector arithmetic unit, the logical arithmetic unit has the function of executing an arbitrary logical operation on a specific field of operand data and storing the result in an arbitrary field of the operand data. 1. A vector processing device comprising: a vector computing unit configured by connecting a plurality of logic computing units in series; and means for controlling processing operations of said logical computing unit.
JP59201776A 1984-09-28 1984-09-28 Vector processor Pending JPS6180452A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59201776A JPS6180452A (en) 1984-09-28 1984-09-28 Vector processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59201776A JPS6180452A (en) 1984-09-28 1984-09-28 Vector processor

Publications (1)

Publication Number Publication Date
JPS6180452A true JPS6180452A (en) 1986-04-24

Family

ID=16446747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59201776A Pending JPS6180452A (en) 1984-09-28 1984-09-28 Vector processor

Country Status (1)

Country Link
JP (1) JPS6180452A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62259102A (en) * 1986-05-02 1987-11-11 Mitsubishi Electric Corp Computer system for process control
JP2012128790A (en) * 2010-12-17 2012-07-05 Fujitsu Ltd Arithmetic processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62259102A (en) * 1986-05-02 1987-11-11 Mitsubishi Electric Corp Computer system for process control
JP2012128790A (en) * 2010-12-17 2012-07-05 Fujitsu Ltd Arithmetic processor

Similar Documents

Publication Publication Date Title
US5168571A (en) System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
JP2001516916A (en) Data processing device with digital signal processing capability
JPS6027984A (en) Data processor
US4853890A (en) Vector processor
JPS6180452A (en) Vector processor
JP2008090455A (en) Multiprocessor signal processor
JPH0363092B2 (en)
JPS59114677A (en) Vector processor
JP3332606B2 (en) Microprocessor
JPH06309349A (en) Program-controlled processor
JP3144859B2 (en) Arithmetic logic unit
EP0660225B1 (en) ALU capable of simultaneously executing a plurality of operations
JP3723311B2 (en) Parallel processor
JPH0683618A (en) Flag control circuit
CA1222830A (en) Concurrent processor for control
JP2696903B2 (en) Numerical calculator
JP2583614B2 (en) Vector arithmetic unit
JP3753442B2 (en) DSP equipment
JPH0243216B2 (en)
JP2982129B2 (en) Micro program controller
JPH03149656A (en) Arithmetic circuit
JPH06301641A (en) Electronic computer
JPS63204322A (en) Information processor
JPS63197217A (en) Data processor