[go: up one dir, main page]

JPH0553808A - Arithmetic processing unit - Google Patents

Arithmetic processing unit

Info

Publication number
JPH0553808A
JPH0553808A JP3242758A JP24275891A JPH0553808A JP H0553808 A JPH0553808 A JP H0553808A JP 3242758 A JP3242758 A JP 3242758A JP 24275891 A JP24275891 A JP 24275891A JP H0553808 A JPH0553808 A JP H0553808A
Authority
JP
Japan
Prior art keywords
instruction
descriptors
descriptor
arithmetic processing
alu
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
JP3242758A
Other languages
Japanese (ja)
Inventor
Eiji Yokoi
英二 横井
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP3242758A priority Critical patent/JPH0553808A/en
Publication of JPH0553808A publication Critical patent/JPH0553808A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

PURPOSE:To execute a processing without fail even when an instruction having the arbitrary number of instruction codes is inputted. CONSTITUTION:This unit is equipped with a descripter number register 11 to designate a number (n) of descripters required for storing entire instruction codes C1-Cn of the inputted instruction. When there are any excess ALU exceeding the number of descripters instructed by the descripter number register 11, this instruction is made invalid. When the number of descripters is lacked, all the instruction codes are divided into plural parts and processed by using the ALU plural times.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は複数のALU(論理演算
ユニット)を用いて高速演算処理を行う演算処理装置に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic processing unit for performing high speed arithmetic processing using a plurality of ALUs (logical operation units).

【0002】[0002]

【従来の技術】一般のマイクロプロセッサにはALUが
1個設けられ、このALUは、入力する命令を解読し、
指定されたレジスタに格納されたデータに、その命令に
応じた演算処理を施して出力する、といった動作を行
う。しかしながら、例えばVLIW(Very long instru
ction word)アーキテクチャのデータ処理を行う演算処
理装置においては、複数のALUを設け複数の命令コー
ドから成る命令を各ALUで一挙に解読し、処理するも
のがある。図2に、このような従来の演算処理装置ブロ
ック図を示す。図2において、この装置にはそれぞれn
個の命令コードから構成される命令M1,M2…Msが
順に入力し、解読され処理される。これらの命令は、主
記憶装置等に格納される。その主記憶装置は、命令バス
10に接続されている。また、この命令バス10にはn
個のディスクリプタD1,D2…Dnが接続されてい
る。そしてこれらのディスクリプタD1,D2…Dn
は、それぞれALU1,ALU2…ALUnに接続され
ている。以上の構成の演算処理装置は、例えば命令M1
を構成する命令コードC1〜Cnを、それぞれ1つずつ
ディスクリプタD1〜Dnに格納し、これに接続された
対応するALU1〜ALUnによって命令コードを解読
し演算処理を実行する。このような構成によれば、同一
時間で複雑な演算処理を高速に行うことができる。
2. Description of the Related Art A general microprocessor is provided with one ALU, which decodes an input instruction,
The data stored in the designated register is subjected to arithmetic processing according to the instruction and output. However, for example, VLIW (Very long instru
2. Description of the Related Art In some arithmetic processing devices that perform data processing of a ction word) architecture, a plurality of ALUs are provided and each ALU decodes and processes an instruction consisting of a plurality of instruction codes at once. FIG. 2 shows a block diagram of such a conventional arithmetic processing unit. In FIG. 2, this device has n
Instructions M1, M2, ... Ms composed of individual instruction codes are sequentially input, decoded and processed. These instructions are stored in the main storage device or the like. The main memory device is connected to the instruction bus 10. The instruction bus 10 has n
Descriptors D1, D2 ... Dn are connected. These descriptors D1, D2 ... Dn
Are connected to ALU1, ALU2 ... ALUn, respectively. The arithmetic processing device having the above-described configuration is, for example, the instruction M1.
Each of the instruction codes C1 to Cn configuring the above is stored in the descriptors D1 to Dn one by one, and the instruction codes are decoded by the corresponding ALU1 to ALUn connected to the descriptors and the arithmetic processing is executed. With such a configuration, complex arithmetic processing can be performed at high speed in the same time.

【0003】[0003]

【発明が解決しようとする課題】ところで、この種の演
算処理装置は、上記ディスクリプタ数を増加させ、一度
に解読できる命令コードを増加すればそれだけ性能が向
上する。従って、命令コードの互換性をを保ちながら次
第にディスクリプタ数を増加させ、その性能向上を図っ
てきた。従って、実際にはディスクリプタ数が様々な演
算処理装置が実用化されている。しかしながら、上記の
ような構成の演算処理装置では、ディスクリプタ数の少
ない演算処理装置で使用されている命令を、そのままデ
ィスクリプタ数の多い演算処理装置に入力しても、命令
長の不整合により適切な演算処理を実行することができ
ない。そこで予めディスクリプタ数を合わせるために、
命令コードに新たな命令コードをつなぎ合わせる等の前
処理が必要であった。また逆に、ディスクリプタ数の多
い演算処理装置で使用されていた命令が、ディスクリプ
タ数の少ない演算処理装置に入力した場合には、処理が
不可能で、実用上の互換性がないという問題があった。
本発明は以上の点に着目してなされたもので、ディスク
リプタ数の多い演算処理装置もディスクリプタ数の少な
い演算処理装置も、入力する命令の構成にかかわらず柔
軟に対処し得る演算処理装置を提供することを目的とす
るものである。
By the way, in the arithmetic processing unit of this type, the performance is improved by increasing the number of descriptors and increasing the number of instruction codes that can be decoded at one time. Therefore, the number of descriptors has been gradually increased while maintaining the compatibility of instruction codes, and the performance has been improved. Therefore, in practice, arithmetic processing devices with various descriptor numbers have been put to practical use. However, in the arithmetic processing device having the above-described configuration, even if an instruction used in an arithmetic processing device with a small number of descriptors is directly input to an arithmetic processing device with a large number of descriptors, it is appropriate due to an instruction length mismatch. Arithmetic processing cannot be executed. Therefore, in order to match the number of descriptors in advance,
Preprocessing such as joining a new instruction code to the instruction code was necessary. On the other hand, if an instruction used in a processor with a large number of descriptors is input to a processor with a small number of descriptors, processing cannot be performed and there is a problem in that there is no practical compatibility. It was
The present invention has been made in view of the above points, and provides an arithmetic processing device capable of flexibly coping with an arithmetic processing device having a large number of descriptors and an arithmetic processing device having a small number of descriptors regardless of the configuration of an input instruction. The purpose is to do.

【0004】[0004]

【課題を解決するための手段】本発明の第1発明は、複
数のALUと、前記ALUの処理すべき命令を格納する
複数のディスクリプタと、入力する前記命令が複数の命
令コードから構成され、一の命令コードを一のディスク
リプタに格納するものとしたとき、全命令コードの格納
に必要なディスクリプタ数を指定するディスクリプタレ
ジスタと、前記命令コードを処理するALUを特定する
とともに、前記ディスクリプタレジスタの指示するディ
スクリプタ数を越える余剰のALUの出力を無効にする
ことを特徴とする演算処理装置である。本発明の第2発
明は、複数のALUと、前記ALUの処理すべき命令を
格納する複数のディスクリプタと、入力する前記命令が
複数の命令コードから構成され、一の命令コードを一の
ディスクリプタに格納するものとしたとき、全命令コー
ドの格納に必要なディスクリプタ数を指定するディスク
リプタレジスタと、前記全命令コードを複数に分割し
て、前記ディスクリプタレジスタの指示するディスクリ
プタ数の命令コードを、前記ALUを複数回使用して処
理することを特徴とする演算処理装置である。
According to a first aspect of the present invention, a plurality of ALUs, a plurality of descriptors for storing instructions to be processed by the ALUs, and a plurality of instruction codes for inputting the instructions are input, When one instruction code is stored in one descriptor, the descriptor register that specifies the number of descriptors required to store all instruction codes and the ALU that processes the instruction code are specified, and the instruction of the descriptor register is specified. The arithmetic processing device is characterized by invalidating the output of the surplus ALU exceeding the number of descriptors to be processed. According to a second aspect of the present invention, a plurality of ALUs, a plurality of descriptors for storing instructions to be processed by the ALUs, and the input instruction are made up of a plurality of instruction codes, and one instruction code is assigned to one descriptor. When stored, the descriptor register that specifies the number of descriptors required to store all instruction codes, the all instruction code is divided into a plurality of instruction codes, and the instruction code of the number of descriptors that the descriptor register indicates is stored in the ALU. It is an arithmetic processing unit characterized by using and processing a plurality of times.

【0005】[0005]

【作用】この装置は、入力した命令の全命令コードの格
納に必要なディスクリプタ数を指定するディスクリプタ
数レジスタ11を備えている。そしてディスクリプタ数
レジスタ11の指示するディスクリプタ数を超える余剰
のALUがある場合、これを無効にし、ディスクリプタ
数が不足する場合には、全命令コードを複数に分割し
て、ALUを複数回使用して処理する。これにより、任
意の命令コード数の命令が入力してもその処理を誤りな
く実行することができる。
This device is provided with a descriptor number register 11 for designating the number of descriptors required to store all the instruction codes of the input instruction. If there is a surplus ALU exceeding the number of descriptors indicated by the descriptor number register 11, it is invalidated, and if the number of descriptors is insufficient, all instruction codes are divided into a plurality of ALUs and the ALU is used a plurality of times. To process. As a result, even if an instruction having an arbitrary instruction code number is input, the processing can be executed without error.

【0006】[0006]

【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明の第1発明の演算処理装置実施
例を示すブロック図である。この装置は、命令コードC
1,C2…Cnから成る命令M1〜Msを順に処理する
ものである。これらの命令は記憶装置に格納され、命令
バス10を介して読み取られる。ここで、この命令バス
10には、上記命令コードを一つずつ格納し、それぞれ
m個のALU1〜ALUmに命令コードを供給するディ
スクリプタD1〜Dmが備えられている。また、本発明
においては、命令バス10にこの他に、ディスクリプタ
数レジスタ11が接続されている。このディスクリプタ
数レジスタ11は、各命令コードをそれぞれ一つのディ
スクリプタに格納するものとした時、命令M1〜Msを
構成する命令コードの格納に必要なディスクリプタ数を
指定するためのものである。図1の例では、例えば命令
M1はC1〜Cnのn個の命令コードから構成されるた
め、ディスクリプタ数レジスタ11には数値nが格納さ
れる。また、この実施例では、命令M1を構成する命令
コードC1〜Cnの数nは、装置に設けられたディスク
リプタ数mよりも小さいとする。
The present invention will be described in detail below with reference to the embodiments shown in the drawings. FIG. 1 is a block diagram showing an embodiment of an arithmetic processing unit of the first invention of the present invention. This device has the instruction code C
Instructions M1 to Ms composed of 1, C2 ... Cn are sequentially processed. These instructions are stored in memory and read via instruction bus 10. Here, the instruction bus 10 is provided with descriptors D1 to Dm that store the above instruction codes one by one and supply the instruction codes to m ALU1 to ALUm, respectively. Further, in the present invention, the descriptor number register 11 is also connected to the instruction bus 10. The descriptor number register 11 is for designating the number of descriptors required to store the instruction codes forming the instructions M1 to Ms when each instruction code is stored in one descriptor. In the example of FIG. 1, for example, the instruction M1 is composed of n instruction codes C1 to Cn, so that the numerical value n is stored in the descriptor number register 11. Further, in this embodiment, the number n of the instruction codes C1 to Cn forming the instruction M1 is smaller than the number m of descriptors provided in the device.

【0007】上記のような装置においては、まず、n個
の命令コードから成る命令M1を処理する前に、ディス
クリプタ数レジスタ11に数値nを格納しておく。そし
て、そのディスクリプタ数nの格納により、装置に設け
られたディスクリプタD1〜Dm及びこれに接続される
ALU1〜ALUmのうち、ディスクリプタD1〜Dn
とALU1〜ALUnのみを有効に動作させる構成とす
る。即ち、n個以上のディスクリプタについてはその内
容が無効となり、また、これに接続されたALUの出力
も無効となる。このような構成は、具体的には、例えば
不要なディスクリプタについて、その書込みストローブ
信号を書込み不可の状態に固定しておくことで実現でき
る。ディスクリプタ数レジスタ11からはそのような制
御信号が所定のディスクリプタに供給されるものとす
る。なお、変形例としては、不要なALUのディスクリ
プタに演算処理をしないという命令を格納するようにし
てもよい。この場合には、この種の命令を生成し、格納
するといった処理が必要となる。
In the above-mentioned device, first, the numerical value n is stored in the descriptor number register 11 before processing the instruction M1 consisting of n instruction codes. By storing the descriptor number n, the descriptors D1 to Dn among the descriptors D1 to Dm provided in the device and the ALU1 to ALUm connected to the descriptors D1 to Dn are stored.
And ALU1 to ALUn are operated effectively. That is, the contents of n or more descriptors are invalid, and the output of the ALU connected thereto is also invalid. Such a configuration can be realized by, for example, fixing the write strobe signal to an unwritable state for an unnecessary descriptor. It is assumed that such a control signal is supplied from the descriptor number register 11 to a predetermined descriptor. As a modification, an instruction not to perform arithmetic processing may be stored in a descriptor of an unnecessary ALU. In this case, it is necessary to generate and store this type of instruction.

【0008】図3に本発明の第2発明の演算処理装置実
施例ブロック図を示す。図の装置の全体構成は、図1に
示したものとほぼ同様である。しかしながらここでは、
そのディスクリプタが命令M1を構成する命令コードC
1〜Cnの数nよりも少ないk個とされている。このよ
うな場合においても、ディスクリプタ数レジスタ11
に、命令を構成する命令コードの数nを格納しておき、
以下の処理を実行することによって演算処理が可能とな
る。図4に第2発明の動作説明図を示す。第2発明にお
いては、まず、n個の命令コードのうち、初めのk個の
命令コードC1,C2…CkをディスクリプタD1〜D
kに格納する。この状態を図4(a)に示す。このよう
な状態で1回目の演算処理を実行する。その演算処理結
果は図示しないメモリの所定のアドレスに書き込まれ
る。次にこの演算が終了すると、命令M1のn番目より
も後の命令コードが取り出され、これがディスクリプタ
に格納される。即ち、命令コードCk+1…Cnがディ
スクリプタD1…Dn−kに格納される。なお、この場
合、ディスクリプタ数よりも命令コード数が少ない状態
となる。従って、第1発明で説明したように過剰のディ
スクリプタはその出力を無効にしておく。
FIG. 3 shows a block diagram of a second embodiment of the arithmetic processing unit of the present invention. The overall configuration of the device shown in the figure is almost the same as that shown in FIG. However, here
The instruction code C whose descriptor constitutes the instruction M1
The number k is smaller than the number n of 1 to Cn. Even in such a case, the descriptor number register 11
Stores the number n of instruction codes that make up an instruction,
The arithmetic processing can be performed by executing the following processing. FIG. 4 shows an operation explanatory diagram of the second invention. In the second invention, first of the n instruction codes, the first k instruction codes C1, C2, ...
Store in k. This state is shown in FIG. In such a state, the first arithmetic processing is executed. The calculation processing result is written in a predetermined address of a memory (not shown). Next, when this operation is completed, the instruction code after the n-th instruction of the instruction M1 is fetched and stored in the descriptor. That is, the instruction codes Ck + 1 ... Cn are stored in the descriptors D1 ... Dn-k. In this case, the number of instruction codes is smaller than the number of descriptors. Therefore, as described in the first aspect of the invention, the excessive descriptors invalidate their output.

【0009】こうして2回目の処理を行い、その出力を
所定のメモリに格納する。これらの処理が終了した段階
では、当初からn個のディスクリプタを備えた演算処理
装置を用いて処理した結果と同様の結果が得られる。従
って、第2発明によって、実際のディスクリプタ数より
も長い命令が入力した場合においても、これを円滑に処
理することができる。上記のような構成によれば、VL
IWアーキテクチャのプロセッサについて、それぞれデ
ィスクリプタ数、即ちALU数が異なる装置間で命令コ
ードの互換性を保ち、命令の構成を変更することなくそ
のまま必要な処理が実行できる。従って、例えばディス
クリプタ数の非常に多い高性能の装置によってディスク
リプタ数の少ない装置で使用されていた命令をそのまま
処理することができるし、高速処理を要求される場合に
は、従来通り、命令に含まれる命令コード数を増加さ
せ、所定の性能を発揮するようにすればよい。
In this way, the second processing is performed and the output is stored in a predetermined memory. At the stage where these processes are completed, the same result as the result obtained by using the arithmetic processing device having n descriptors from the beginning is obtained. Therefore, according to the second invention, even when an instruction longer than the actual number of descriptors is input, this can be smoothly processed. According to the above configuration, the VL
With regard to the processor of the IW architecture, the instruction code compatibility is maintained between devices having different descriptor numbers, that is, ALU numbers, and the necessary processing can be executed without changing the instruction configuration. Therefore, for example, an instruction used in a device with a small number of descriptors can be directly processed by a high-performance device with a large number of descriptors, and if high-speed processing is required, it is included in the instruction as usual. The number of instruction codes to be generated may be increased so that the prescribed performance is exhibited.

【0010】[0010]

【発明の効果】以上発明した本発明の演算処理装置は、
複数のALUを備えたVLIWアーキテクチャの処理装
置において、入力する命令の一の命令コードを一のディ
スクリプタに格納するものとした時、全命令コードの格
納に必要なディスクリプタ数を、予めディスクリプタ数
レジスタに格納し、ディスクリプタ数を超える余剰のA
LUの出力を無効にし、あるいは、命令コードを複数に
分割し、ALUを複数回使用して処理を行うため、異な
る装置間での命令コードの互換性を保つことができる。
The arithmetic processing unit of the present invention as invented above is
In a processor having a VLIW architecture including a plurality of ALUs, when one instruction code of an input instruction is stored in one descriptor, the descriptor number required for storing all instruction codes is previously stored in the descriptor number register. Store the surplus A that exceeds the number of descriptors
The output of the LU is invalidated, or the instruction code is divided into a plurality of pieces and the ALU is used a plurality of times to perform the processing, so that the compatibility of the instruction code between different devices can be maintained.

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

【図1】本発明の第1発明の演算処理装置実施例を示す
ブロック図である。
FIG. 1 is a block diagram showing an embodiment of an arithmetic processing unit of the first invention of the present invention.

【図2】従来の演算処理装置を示すブロック図である。FIG. 2 is a block diagram showing a conventional arithmetic processing unit.

【図3】本発明の第2発明の演算処理装置実施例を示す
ブロック図である。
FIG. 3 is a block diagram showing an embodiment of an arithmetic processing unit of the second invention of the present invention.

【図4】本発明の第2発明の動作説明図である。FIG. 4 is an operation explanatory diagram of the second invention of the present invention.

【符号の説明】[Explanation of symbols]

C1〜Cn 命令コード D1〜Dn ディスクリプタ 11 ディスクリプタ数レジスタ C1 to Cn instruction code D1 to Dn descriptor 11 descriptor number register

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 複数のALUと、 前記ALUの処理すべき命令を格納する複数のディスク
リプタと、 入力する前記命令が複数の命令コードから構成され、一
の命令コードを一のディスクリプタに格納するものとし
たとき、全命令コードの格納に必要なディスクリプタ数
を指定するディスクリプタ数レジスタと、 前記命令コードを処理するALUを特定するとともに、
前記ディスクリプタ数レジスタの指示するディスクリプ
タ数を越える余剰のALUの出力を無効にすることを特
徴とする演算処理装置。
1. A plurality of ALUs, a plurality of descriptors for storing instructions to be processed by the ALUs, and a plurality of instruction codes for inputting the instructions to be input, wherein one instruction code is stored in one descriptor. Then, the descriptor number register that specifies the number of descriptors required to store all the instruction codes, and the ALU that processes the instruction code are specified.
An arithmetic processing unit, which invalidates the output of a surplus ALU exceeding the number of descriptors designated by the descriptor number register.
【請求項2】 複数のALUと、 前記ALUの処理すべき命令を格納する複数のディスク
リプタと、 入力する前記命令が複数の命令コードから構成され、一
の命令コードを一のディスクリプタに格納するものとし
たとき、全命令コードの格納に必要なディスクリプタ数
を指定するディスクリプタ数レジスタと、 前記全命令コードを複数に分割して、前記ディスクリプ
タ数レジスタの指示するディスクリプタ数の命令コード
を、前記ALUを複数回使用して処理することを特徴と
する演算処理装置。
2. A plurality of ALUs, a plurality of descriptors for storing instructions to be processed by the ALUs, and a plurality of instruction codes for inputting the instructions, wherein one instruction code is stored in one descriptor. In this case, the descriptor number register that specifies the number of descriptors required to store all instruction codes, the all instruction code is divided into a plurality, and the instruction code of the number of descriptors that the descriptor number register indicates is stored in the ALU. An arithmetic processing device characterized by being used a plurality of times for processing.
JP3242758A 1991-08-28 1991-08-28 Arithmetic processing unit Pending JPH0553808A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3242758A JPH0553808A (en) 1991-08-28 1991-08-28 Arithmetic processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3242758A JPH0553808A (en) 1991-08-28 1991-08-28 Arithmetic processing unit

Publications (1)

Publication Number Publication Date
JPH0553808A true JPH0553808A (en) 1993-03-05

Family

ID=17093834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3242758A Pending JPH0553808A (en) 1991-08-28 1991-08-28 Arithmetic processing unit

Country Status (1)

Country Link
JP (1) JPH0553808A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241200A (en) * 1994-12-09 1996-09-17 Mitsubishi Electric Res Lab Inc Vliw processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241200A (en) * 1994-12-09 1996-09-17 Mitsubishi Electric Res Lab Inc Vliw processor

Similar Documents

Publication Publication Date Title
US3949379A (en) Pipeline data processing apparatus with high speed slave store
US5204953A (en) One clock address pipelining in segmentation unit
US6128614A (en) Method of sorting numbers to obtain maxima/minima values with ordering
US4835733A (en) Programmable access memory
KR940009094B1 (en) Data processing system
US4037213A (en) Data processor using a four section instruction format for control of multi-operation functions by a single instruction
US5341500A (en) Data processor with combined static and dynamic masking of operand for breakpoint operation
KR100346515B1 (en) Temporary pipeline register file for a superpipe lined superscalar processor
US4954943A (en) Data processing system
JPH0248931B2 (en)
JPS6019809B2 (en) data processing equipment
JPH06332695A (en) Data processor and control circuit thereof
US5452427A (en) Data processing device for variable word length instruction system having short instruction execution time and small occupancy area
JPS58161042A (en) Data processing system
KR920004279B1 (en) Microprocessor with Pointer Register
JPS6368971A (en) Vector processor
US4812970A (en) Microprogram control system
US3480917A (en) Arrangement for transferring between program sequences in a data processor
JPH0553808A (en) Arithmetic processing unit
JPH02293931A (en) Control unit
JPS60107137A (en) Data processor with tag
GB2108737A (en) Byte addressable memory for variable length instructions and data
US5187782A (en) Data processing system
JP2583506B2 (en) Data processing device
JPH0628034B2 (en) Calculator with tag