JPS6017538A - Instruction processing device - Google Patents
Instruction processing deviceInfo
- Publication number
- JPS6017538A JPS6017538A JP12471583A JP12471583A JPS6017538A JP S6017538 A JPS6017538 A JP S6017538A JP 12471583 A JP12471583 A JP 12471583A JP 12471583 A JP12471583 A JP 12471583A JP S6017538 A JPS6017538 A JP S6017538A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- operand
- adder
- address
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は命令処理に係り、特に2つ以上のオペランド金
記憶装置から読出して演算を施す命令全高速に処理する
ために好適な命令処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to instruction processing, and more particularly to an instruction processing device suitable for processing at high speed an instruction that reads and performs an operation on two or more operands from a storage device. .
2つの記憶装置上のオペランドを必要とする命令のフォ
ーマットの一例を第1図に示す。1ではビット0−7が
オペV−ションコー)” (OP ) (を表わし、ビ
ット8−15がオペランドの長さくL)金表わし、ビッ
ト16−19およびビット2〇−31はそれぞれベース
部(Bl)、ディスプレースメント部(Dl)でちり、
記憶装置上のオペランド(第1オペランド)のアドレス
算出に用いる汎用レジスタ番号と偏位値を表わしている
オペランドアドレスはB1で示された番号のレジスタの
内容にDlの値を加えることによって得られる。An example of the format of an instruction requiring operands on two storage devices is shown in FIG. 1, bits 0-7 represent the operand length (OP), bits 8-15 represent the length of the operand, bits 16-19 and bits 20-31 represent the base part (Bl), respectively. ), dust at the displacement part (Dl),
The operand address representing the general-purpose register number and deviation value used to calculate the address of the operand (first operand) on the storage device is obtained by adding the value of Dl to the contents of the register numbered B1.
ビット32−35およびビット36−47は、同じく記
憶装置」二のオペランド(第2オペランド)のアドレス
算出に用いる汎用レジスタ番号と偏位値を表わしている
。Bits 32-35 and bits 36-47 represent a general-purpose register number and offset value used to calculate the address of the second operand (second operand) of the storage device.
2ではビット8−11:i、・、j二びビニソ’t1.
2−15が一亡第1、イげれ第i 2A<ランドとI)
2オペランドの長さを表わ1〜でおpl−その他は1と
同じである。2, bits 8-11: i, . . .
2-15 is the first loss, the second loss i 2A<Land and I)
2 Represents the length of the operands 1 to pl-others are the same as 1.
3ではピッ)0−15がオペレーションコードを表わし
ており、ビット16−47は1と同じである。3, bits 0-15 represent the operation code, and bits 16-47 are the same as 1.
と記のフォーマツトラ有する命令に対する命令処理装置
は、従来第2図に示す如く構成されていた。Conventionally, an instruction processing device for instructions having a formatter as shown in FIG. 2 was constructed as shown in FIG.
ここで、11は記憶装置から読出した複数の命令を一時
的に保持している命令バッファであり、その中から必要
な命令を命令切出し回路12によって命令レジスタ13
に取出す。従来、命令切出し回路12は4バイトの命令
切出し機能を持ち、命令レジスタ13は4バイト分用意
されていた。Here, reference numeral 11 denotes an instruction buffer that temporarily holds a plurality of instructions read from the storage device, and necessary instructions from among them are transferred to an instruction register 13 by an instruction extraction circuit 12.
Take it out. Conventionally, the instruction extraction circuit 12 has a 4-byte instruction extraction function, and the instruction register 13 has been prepared for 4 bytes.
図1に示した各命令のオペランドアドレスを計算する場
合、まず命令レジスタ13のB1部で指定された汎用レ
ジスタ14の内容を信号線20゜21によって読出し、
加算器15に入力する。同時に命令レジスタ13のD1
部を直接加算器15に入力しで、第1オペランドのアド
レス計算を行う。その結果音用いて記憶装置16を参照
し、第1オペランドを演算器17に読出す。次に、命令
切出し回路12によって命令の残りの2パイ) fc命
令レジスタ13に取出す。第1オペランドの場合と同様
に、信号線20.21によってB2部で指定された汎用
レジスタの内容を加算器15に読出し、B2部を信号線
22により直接加算器15に入力して、第2オペランド
のアドレス計算を行う。その結果を用いて記憶装置16
を参照し、第2オペランドを演算器17に読出す。この
後演算器17ではオペレーションコードで示された演算
の実行を開始することが可能となる。When calculating the operand address of each instruction shown in FIG.
Input to adder 15. At the same time, D1 of the instruction register 13
The address of the first operand is calculated by inputting the part directly to the adder 15. As a result, the memory device 16 is referred to using the sound, and the first operand is read out to the arithmetic unit 17. Next, the instruction extraction circuit 12 takes out the remaining two instructions (2 bits) to the fc instruction register 13. As in the case of the first operand, the contents of the general-purpose register designated by the B2 part are read to the adder 15 via the signal line 20.21, and the B2 part is directly input to the adder 15 via the signal line 22, and Performs address calculation of operand. The storage device 16 uses the result.
, and reads out the second operand to the arithmetic unit 17. Thereafter, the arithmetic unit 17 can start executing the operation indicated by the operation code.
このように、図1に示した各命令のオペランドのアドレ
ス計算および記憶装置からのオペランド読出しは、第1
オペランド、第2オペランドそれぞれについて独立に処
理できるにもかかわらず、命令切出し回路12、命令レ
ジスタ13が4バイト分しかないこと、汎用レジスタ1
4の読出し口が1つであること、アドレス計算用加算器
15および記憶装置16がそれぞれ1つであること等の
理由から、オペランドを1つずつ順番に処理せざるを得
す、演算器の演算実行開始が2回の記憶装置参照終了ま
で待たされる、という問題がちった。In this way, the address calculation of the operand of each instruction shown in FIG. 1 and the operand reading from the storage device are performed in the first
Although the operand and second operand can be processed independently, the instruction extraction circuit 12 and instruction register 13 are only 4 bytes long, and the general-purpose register 1
4 has one readout port, one adder 15 for address calculation, one storage device 16, and so on. A problem arose in that the start of calculation execution had to wait until the end of two storage device references.
本発明の目的は、図1に示したツメ−マツ)k有する命
令を高速に処理するために、オペランドアドレスの算出
とそれを利用した記憶装置の参照を、2つ以上のオペラ
ンドに対して同時に処理することができる命令処理装置
を提供することにある。An object of the present invention is to calculate an operand address and use it to refer to a storage device for two or more operands at the same time, in order to process the instruction having the same function as shown in FIG. 1 at high speed. An object of the present invention is to provide an instruction processing device capable of processing instructions.
オペランドアドレスの算出と、それを利用した記憶装置
の参照を2つ以上のメモリオペランドに対して独立かつ
同時に行うためには、まず命令バッファから1度に命令
長に応じたバイト数だけ命令レジスタに切出せる構成に
しオペランドアドレス算出用加算器と加算結果を利用し
てオペランド管読出すととのできる記憶装置を、各オペ
ランドに対応させて別個に用意し、各々を独立かつ同時
に動作可能な構成にすれば良い。In order to calculate the operand address and use it to refer to the storage device independently and simultaneously for two or more memory operands, first transfer the number of bytes corresponding to the instruction length from the instruction buffer to the instruction register at one time. An adder for calculating the operand address and a storage device that can read out the operand tube using the addition result are prepared separately for each operand, and each is configured to be able to operate independently and simultaneously. Just do it.
以下、本発明の一実施例金第3図により説明する。10
1は命令バッファでめる。102は命令長に応じて必要
なバイト数を命令バッファより切出す回路で、最大6バ
イト命令の切出しが可能な命令切出し回路である。命令
レジスタ103は6バイト命令を保持することができる
。命令レジスタ1030B1部で指定されたペースレジ
スタの値は、信号線200,201を利用して汎用レジ
スタ104から読出し、加算器+1 105に入力する
。一方、命令レジスタ103のB2部で指定されたペー
スレジスタの値は、信号線202゜203’5利用して
汎用レジスタ104から読出し、加算器す2108に入
力する。B1部および52部で指定されたレジスタの読
出しは、互いに独立かつ同時に行うことができる。命令
レジスタのD1部、B2部は七れぞれ加算器≠1105
、加算器+2108に直接入力する。加算器す1105
、加算器≠2108で(rよ上記入力データによりアド
レス目算全行い、その結果を用いて記憶装置費1 10
6、記憶f:置豐2 ]09♀それぞれ参照し、読出し
たオペランドを演算器107にへカシる。演算器107
における演算実行は、2つのオペランドの読出しが終了
すると同時に開始するととができる。Hereinafter, one embodiment of the present invention will be explained with reference to FIG. 10
1 is stored in the instruction buffer. Reference numeral 102 designates a circuit that extracts the necessary number of bytes from the instruction buffer according to the instruction length, and is an instruction extraction circuit that can extract a maximum of 6 byte instructions. Instruction register 103 can hold 6-byte instructions. The value of the pace register specified in the instruction register 1030B1 section is read from the general-purpose register 104 using signal lines 200 and 201 and input to the adder +1 105. On the other hand, the value of the pace register designated by the B2 section of the instruction register 103 is read from the general-purpose register 104 using the signal lines 202 and 203'5, and is input to the adder 2108. Reading of the registers designated by portions B1 and 52 can be performed independently and simultaneously. The D1 and B2 parts of the instruction register are each seven adders≠1105
, directly input to adder +2108. Adder 1105
, the adder≠2108 performs all address calculations using the above input data (r), and uses the result to calculate the storage device cost 1 10
6. Memory f: Setting 2]09♀ is referred to and the read operands are transferred to the arithmetic unit 107. Arithmetic unit 107
The execution of the operation in can be started at the same time as the reading of the two operands is completed.
このように本実施例によれば、図1に示した6バイトの
各命令t1回で命令レジスタ103に切出すことが可能
である。さらに、汎用レジスタ104の読出し口を2つ
設け、それぞれの読出し口から読出した値を命令レジス
タ103内の値を利用してオペランドアドレスを計算で
きる加算器と、算出アドレスによって参照可能な記憶装
置を各々2組ずつ備えたことにより、第1オペランドと
第2オペランドの読出しに必要な一連の処理を同時かつ
独立に行うことができる。どの結果、従来2回の記憶装
置参照径演算器107における演算が開始可能であった
ものが、1回の記憶装置参照終了後即座に演算を行える
ようになった。記憶参照は従来時間のかかる処理であり
、本実施例ではその処理時間を半減することが可能で、
非常に効果が大きい。As described above, according to this embodiment, each 6-byte instruction shown in FIG. 1 can be extracted to the instruction register 103 by t1 times. Furthermore, two read ports are provided for the general-purpose register 104, and an adder that can calculate an operand address using the value read from each read port using the value in the instruction register 103, and a storage device that can be referenced by the calculated address are provided. By providing two sets of each, a series of processes necessary for reading the first operand and the second operand can be performed simultaneously and independently. As a result, the calculation in the storage device reference diameter calculator 107, which could conventionally be started twice, can now be performed immediately after one storage device reference is completed. Memory reference is conventionally a time-consuming process, but in this embodiment, the processing time can be halved.
Very effective.
本発明によれば、対象とする命令のバイト数に応じ、命
令を切出す回路金柑いC1命令金一度に命令レジスタに
取出すことができ、命令レジスタに命令が確定後は、全
く異なる汎用レジスタ読出しパスと互いに独立に動作可
能な加算器および記憶装置を利用することにより、2つ
以上のオペランドを全く独立かつ同時に読出すことがで
きるので、各々のオペランドアドレスの計算に必要な命
令の部分を命令レジスタに順次繰り返しセットし、一つ
の汎用レジスタ読出しパスと加算器および記憶装置を繰
り返し利用して複数のオペランドを連続的に読出してい
た従来構成に比べ、各オペランドの読出しを高速化する
ことができ、その結果演算器における演算処理の開始を
早めるととができるという効果がある。According to the present invention, the circuit that extracts the instructions according to the number of bytes of the target instruction can take out the instructions at once to the instruction register, and after the instructions are fixed in the instruction register, a completely different general-purpose register reading is performed. By using paths, adders and storage devices that can operate independently of each other, two or more operands can be read completely independently and simultaneously, so that the portion of the instruction required to calculate the address of each operand can be Compared to the conventional configuration, which repeatedly sets registers in sequence and repeatedly uses one general-purpose register read path, adder, and storage device to read multiple operands sequentially, each operand can be read faster. As a result, the start of arithmetic processing in the arithmetic unit can be accelerated.
第1図は本発明で対象としている命令フォーマットの一
例でちる。第2図は従来技術による命令処理装置の概略
構成図である。第3図は本発明を利用した場合の命令処
理装置の概略構成図である。
13.103・・・命令レジスタ、14,104・・・
汎用レジスタ(GR)、15,108,105・・・オ
ペランドアドレス算出用加算器、16,106゜109
・・・記憶装置、17,107・・・演算器、11゜1
01・・・命令バッファ、12,1.02・・・命令切
出203
菌 1 図
)52 図
第 3 図FIG. 1 shows an example of the instruction format targeted by the present invention. FIG. 2 is a schematic configuration diagram of a conventional instruction processing device. FIG. 3 is a schematic configuration diagram of an instruction processing device using the present invention. 13.103...Instruction register, 14,104...
General-purpose register (GR), 15, 108, 105... Adder for calculating operand address, 16, 106° 109
...Storage device, 17,107...Arithmetic unit, 11゜1
01...Instruction buffer, 12,1.02...Instruction extraction 203 Bacteria 1 Figure) 52 Figure 3
Claims (1)
る装置において、対象とする命令をその命令長に応じて
切出し、一度に該命令を命令レジスタに保持できる機能
を有し、かつ各々のメモリオペランドのオペランドアド
レスtX出するために必要な値を命令データを利用して
それぞれ独立に読出し得る機能を備えたレジスタ群と、
該レジスタ群よυ読出した値と命令データより定まる値
との加算を各オペランドに対して独立にかつ同時に行い
、加算結果を出力し得るアドレス加算器を設けたこと全
特徴とする命令処理装置。 2、各オペランドに対するアドレス加算結果金利用して
、対応するオペランドをそれぞれ独立かつ同時に読出し
得る記憶装置tヲ設はプにと全特徴とする第1項の命令
処理装置。1. A device that processes instructions with two or more memory operands has a function of extracting the target instruction according to its instruction length and holding the instruction in an instruction register at a time, and a group of registers each having a function of independently reading out the values necessary to output the operand address tX using instruction data;
An instruction processing device comprising an address adder capable of independently and simultaneously adding the value read from the register group and the value determined by the instruction data for each operand and outputting the addition result. 2. The instruction processing device according to item 1, which is characterized in that it includes a storage device capable of independently and simultaneously reading the corresponding operands by using the result of address addition for each operand.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12471583A JPS6017538A (en) | 1983-07-11 | 1983-07-11 | Instruction processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12471583A JPS6017538A (en) | 1983-07-11 | 1983-07-11 | Instruction processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6017538A true JPS6017538A (en) | 1985-01-29 |
Family
ID=14892310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12471583A Pending JPS6017538A (en) | 1983-07-11 | 1983-07-11 | Instruction processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6017538A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0193654A2 (en) * | 1984-12-29 | 1986-09-10 | Hitachi, Ltd. | Data-processing apparatus fetching operands from independently accessible memories |
JPS61253541A (en) * | 1985-05-07 | 1986-11-11 | Hitachi Ltd | Instruction processor |
JPS61282933A (en) * | 1985-06-07 | 1986-12-13 | Matsushita Electric Ind Co Ltd | Digital signal processor |
JPS6429932A (en) * | 1987-07-27 | 1989-01-31 | Mitsubishi Electric Corp | Address control system for signal processing |
JPH01311338A (en) * | 1988-06-10 | 1989-12-15 | Oki Electric Ind Co Ltd | Data memory address generating circuit |
JPH0326825U (en) * | 1989-07-25 | 1991-03-19 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS4941040A (en) * | 1972-08-26 | 1974-04-17 | ||
JPS5447455A (en) * | 1977-09-22 | 1979-04-14 | Toshiba Corp | Data processor |
JPS5481045A (en) * | 1977-12-12 | 1979-06-28 | Hitachi Ltd | Data processor |
-
1983
- 1983-07-11 JP JP12471583A patent/JPS6017538A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS4941040A (en) * | 1972-08-26 | 1974-04-17 | ||
JPS5447455A (en) * | 1977-09-22 | 1979-04-14 | Toshiba Corp | Data processor |
JPS5481045A (en) * | 1977-12-12 | 1979-06-28 | Hitachi Ltd | Data processor |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0193654A2 (en) * | 1984-12-29 | 1986-09-10 | Hitachi, Ltd. | Data-processing apparatus fetching operands from independently accessible memories |
JPS61253541A (en) * | 1985-05-07 | 1986-11-11 | Hitachi Ltd | Instruction processor |
JPS61282933A (en) * | 1985-06-07 | 1986-12-13 | Matsushita Electric Ind Co Ltd | Digital signal processor |
JPS6429932A (en) * | 1987-07-27 | 1989-01-31 | Mitsubishi Electric Corp | Address control system for signal processing |
JPH01311338A (en) * | 1988-06-10 | 1989-12-15 | Oki Electric Ind Co Ltd | Data memory address generating circuit |
JPH0326825U (en) * | 1989-07-25 | 1991-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8417922B2 (en) | Method and system to combine multiple register units within a microprocessor | |
KR20030011071A (en) | Digital signal processor with coupled multiply-accumulate units | |
TW200816045A (en) | Processor circuit and method of executing a packed half-word addition and subtraction operation, and method of performing an efficient butterfly computation | |
US4954947A (en) | Instruction processor for processing branch instruction at high speed | |
JPS6017538A (en) | Instruction processing device | |
JPH0477338B2 (en) | ||
JPS6124729B2 (en) | ||
GB1523005A (en) | Data processing apparatus | |
US5047973A (en) | High speed numerical processor for performing a plurality of numeric functions | |
CN100378651C (en) | Result partitioning within simd data processing systems | |
US4924377A (en) | Pipelined instruction processor capable of reading dependent operands in parallel | |
JPS59114677A (en) | Vector processor | |
GB1593136A (en) | Data processing | |
JPS59106043A (en) | Pipeline operating circuit | |
JPH03189868A (en) | Data processor | |
JPH0991118A (en) | Floating point arithmetic unit | |
JP2764947B2 (en) | Instruction control method | |
JPS6238748B2 (en) | ||
JPS58105370A (en) | Data processing system | |
JPH02188887A (en) | Packet combining/separating system | |
JPH02181821A (en) | Arithmetic device | |
JPS61296435A (en) | Microprogram control system | |
JPH05165875A (en) | Vector arithmetic processor | |
JPS62126442A (en) | Data processor | |
JPH037971B2 (en) |