JP2540959B2 - Information processing device - Google Patents

Information processing device

Info

Publication number
JP2540959B2
JP2540959B2 JP1265032A JP26503289A JP2540959B2 JP 2540959 B2 JP2540959 B2 JP 2540959B2 JP 1265032 A JP1265032 A JP 1265032A JP 26503289 A JP26503289 A JP 26503289A JP 2540959 B2 JP2540959 B2 JP 2540959B2
Authority
JP
Japan
Prior art keywords
instruction
execution address
memory
decode information
execution
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 - Lifetime
Application number
JP1265032A
Other languages
Japanese (ja)
Other versions
JPH03127126A (en
Inventor
道夫 阿部
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP1265032A priority Critical patent/JP2540959B2/en
Publication of JPH03127126A publication Critical patent/JPH03127126A/en
Application granted granted Critical
Publication of JP2540959B2 publication Critical patent/JP2540959B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置に係り、特にキャッシュ・メモ
リを用いて命令を高速に実行する情報処理装置に関す
る。
The present invention relates to an information processing apparatus, and more particularly to an information processing apparatus that executes instructions at high speed using a cache memory.

〔従来の技術〕[Conventional technology]

コンピュータ等の情報処理装置は、一般に実行する命
令を主記憶装置に格納している。中央処理装置では、主
記憶装置から命令を順次読み出し、命令のデコードを行
い、更に実行アドレスの読み出し、処理の実行、実行ア
ドレスへの結果の格納という順序で処理を行う。
An information processing apparatus such as a computer generally stores instructions to be executed in a main storage device. In the central processing unit, instructions are sequentially read from the main memory, the instructions are decoded, the execution address is read, the processing is executed, and the result is stored in the execution address.

このような情報処理装置で、命令の実行を行う中央処
理装置は大規模集積回路等の論理回路により高速化され
ている。一方、命令が格納されている主記憶装置の記録
容量は増大しているが、その命令をアクセスする速度は
中央処理装置に比べて低速である。このため、中央処理
装置が高速化されても情報処理装置としての処理速度は
主記憶装置の処理速度に制限されてしまう。
In such an information processing apparatus, a central processing unit that executes instructions is accelerated by a logic circuit such as a large scale integrated circuit. On the other hand, although the recording capacity of the main storage device in which the instruction is stored is increasing, the speed of accessing the instruction is lower than that of the central processing unit. Therefore, even if the central processing unit is speeded up, the processing speed of the information processing apparatus is limited to the processing speed of the main storage device.

このような問題を解決するために、主記憶装置と中央
処理装置の間に高速のキャッシュ・メモリを配置した情
報処理装置がある。キャッシュ・メモリは、一般に高価
であるため主記憶装置よりも小容量であるが、中央処理
装置に比べて充分高速にアクセスすることができるメモ
リである。一般的なプログラムに従い限られた時間に主
記憶装置から読み出される命令やデータのアドレスは、
近接する一定の範囲に存在している可能性が高い。従っ
て、ある時点に必要な主記憶装置の領域は一部で十分で
ある。そこで、必要とされる一部の命令やデータを高速
処理が可能なキャッシュ・メモリに格納することによっ
て、主記憶装置に対するアクセスを見かけ上高速化して
いる。
In order to solve such a problem, there is an information processing device in which a high speed cache memory is arranged between a main storage device and a central processing unit. Since the cache memory is generally expensive and has a smaller capacity than the main memory, it is a memory that can be accessed at a sufficiently high speed as compared with the central processing unit. The addresses of instructions and data read from the main memory in a limited time according to a general program are
It is highly likely that they exist in a certain range in close proximity. Therefore, a part of the main storage area required at a certain time is sufficient. Therefore, some of the required instructions and data are stored in a cache memory capable of high-speed processing to apparently speed up access to the main storage device.

そして、更に高速処理を可能とするために、デコード
情報キャッシュが提案されている。これは、主記憶装置
から読み出された命令を命令実行部の動作に必要な形態
にデコードする時間を適宜省略することにより処理の高
速化を達成するものである。すなわち、デコード済みの
命令を中央処理装置内のキャッシュ・メモリに保存し、
次の命令がキャッシュ・メモリにあればデコードをせ
ず、既にデコードされている命令を使用するものであ
る。デコード情報キャッシュは、命令が複雑になるに従
い、デコードする時間が命令の実行に比べて大きな時間
を消費するようになってきている場合に特に有効であ
る。
A decode information cache has been proposed to enable higher speed processing. This achieves speeding up of the processing by appropriately omitting the time for decoding the instruction read from the main storage device into a form necessary for the operation of the instruction execution unit. That is, the decoded instructions are stored in the cache memory in the central processing unit,
If the next instruction is in the cache memory, it is not decoded and the already decoded instruction is used. The decode information cache is particularly effective when the time required for decoding becomes longer as the instructions become more complicated than the execution of the instructions.

デコード情報キャッシュを持った中央処理装置では、
命令を実行する場合に既にデコード情報キャッシュ内に
命令があれば、主記憶から命令をアクセスすることを行
わず、また、デコードも行う必要がないので、高速に命
令を実行することができる。
In a central processing unit that has a decode information cache,
If an instruction already exists in the decode information cache when the instruction is executed, the instruction is not accessed from the main memory and the decoding need not be performed, so that the instruction can be executed at high speed.

〔発明が解決しようとする課題〕[Problems to be Solved by the Invention]

しかし、命令の実行時には、命令の必要とする情報が
格納されている実行アドレスや、命令の実行結果を保存
する実行アドレスを計算し、この実行アドレスからデー
タの読み出しや書き込みを行うことが頻繁に発生する。
この実行アドレスの計算には、主記憶装置の読み出し
や、中央処理装置内のレジスタの読み出しを伴うことが
あり、高速に行うことができない場合がある。このた
め、情報処理装置の高速処理の障害となる場合があっ
た。
However, when an instruction is executed, it is often necessary to calculate the execution address that stores the information required by the instruction and the execution address that saves the execution result of the instruction, and then read or write data from this execution address. appear.
This calculation of the execution address may involve reading of the main storage device or reading of the register in the central processing unit, and thus it may not be possible to perform it at high speed. For this reason, there are cases where it becomes an obstacle to high-speed processing of the information processing apparatus.

そこで本発明の目的は、更に高速で処理することので
きる情報処理装置を提供することにある。
Then, the objective of this invention is providing the information processing apparatus which can process at a higher speed.

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

本発明の情報処理装置は、実行する命令とその命令の
実行に必要なデータを格納する主記憶装置と、この主記
憶装置から実行する命令を順次読み出す命令読出手段
と、この命令読出手段で読み出される命令をデコードす
るデコード手段と、命令読出手段で読み出される命令の
実行に必要な主記憶装置上のデータの実行アドレスを求
める実行アドレス算出手段と、命令読出手段で読み出さ
れる命令に対応して、デコード手段から出力されるデコ
ード情報を格納するための第1のメモリと、実行アドレ
ス算出手段から出力される実行アドレスとこれが有効か
無効かを表わすフラグとを格納するための第2のメモリ
とを備えたデコード情報キャッシュと、実行する命令が
このデコード情報キャッシュに格納されていないときデ
コード手段の出力するデコード情報を第1のメモリに実
行アドレス算出手段の出力する実行アドレスを第2のメ
モリにそれぞれ格納するとともにフラグを実行アドレス
が有効であることを示す値にセットする第1の書込手段
と、実行する命令がデコード情報キャッシュに格納され
ていないときデコード手段の出力するデコード情報と実
行アドレス算出手段の出力する実行アドレスを選択する
第1の選択手段と、実行する命令がデコード情報キャッ
シュに格納されておりかつその命令に対応するフラグが
実行アドレスの有効を表わしているとき第1のメモリに
格納されたデコード情報と第2のメモリに格納された実
行アドレスを選択する第2の選択手段と、実行する命令
がデコード情報キャッシュに格納されておりかつその命
令に対応するフラグが実行アドレスの無効を表わしてい
るとき第1のメモリに格納されたデコード情報と実行ア
ドレス算出手段の出力する実行アドレスを選択する第3
の選択手段と、この第3の選択手段によって実行アドレ
ス算出手段の出力する実行アドレスが選択されたとき第
2のメモリに実行アドレス算出手段の出力する実行アド
レスを格納するとともに対応するフラグを実行アドレス
が有効であることを示す値にセットする第2の書込手段
と、第1から第3の選択手段によって選択されたデコー
ド情報および実行アドレスを基に命令を実行する命令実
行手段と、この命令実行手段が第2のメモリに格納され
た実行アドレスを基に命令を実行した結果その実行アド
レスが変化するときその命令に対応するフラグを実行ア
ドレスが無効であることを表わす値に変更するフラグ変
更手段とを具備している。
An information processing apparatus according to the present invention includes a main storage device that stores an instruction to be executed and data required to execute the instruction, an instruction reading unit that sequentially reads the instructions to be executed from the main storage device, and an instruction reading unit that reads the instruction. Corresponding to the instruction read by the instruction reading unit, the decoding unit for decoding the instruction read by the instruction reading unit, the execution address calculating unit for obtaining the execution address of the data on the main memory necessary for executing the instruction read by the instruction reading unit, A first memory for storing the decoding information output from the decoding means; and a second memory for storing the execution address output from the execution address calculation means and a flag indicating whether the execution address is valid or invalid. Output of decoding means provided and decoding means when the instruction to be executed is not stored in this decoding information cache First writing means for storing the code information in the first memory and the execution address output from the execution address calculating means in the second memory, and setting the flag to a value indicating that the execution address is valid; When the instruction to be executed is not stored in the decode information cache, the first selecting means for selecting the decode information output by the decoding means and the execution address output by the execution address calculating means, and the instruction to be executed are stored in the decode information cache. And a flag corresponding to the instruction indicates that the execution address is valid, the second selection means selects the decode information stored in the first memory and the execution address stored in the second memory, The instruction to be executed is stored in the decode information cache and the flag corresponding to that instruction has no execution address. The selecting output to perform address of the first stored in the memory decode information and execution address calculating means when represents a 3
And the execution flag output by the execution address calculation means when the execution address output by the execution address calculation means is selected by the third selection means and the execution address output by the execution address calculation means is stored in the second memory. Is set to a value indicating that is valid, instruction executing means for executing an instruction based on the decode information and execution address selected by the first to third selecting means, and this instruction. When the execution means executes an instruction based on the execution address stored in the second memory and the execution address changes, the flag corresponding to the instruction is changed to a value indicating that the execution address is invalid. And means.

すなわち本発明の情報処理装置は、デコード情報キャ
ッシュに、格納されているデコード情報が主記憶装置上
のどこに格納されている命令であるかを示す情報と、デ
コード部の出力情報の他に、命令の実行アドレスと、実
行アドレスが何から生成されたかを示す情報と、実行ア
ドレスが命令の実行によって無効になったか否かを示す
情報を付加するようにしたものである。
That is, in the information processing apparatus of the present invention, in addition to the information indicating where in the decode information cache the stored decode information is the instruction, and the output information of the decoding unit, Of the execution address, information indicating from what the execution address was generated, and information indicating whether the execution address was invalidated by the execution of the instruction.

〔実施例〕〔Example〕

以下、実施例につき本発明を詳細に説明する。 Hereinafter, the present invention will be described in detail with reference to Examples.

第1図は、本発明の一実施例における情報処理装置の
構成をブロックで示したものである。
FIG. 1 is a block diagram showing the configuration of an information processing apparatus according to an embodiment of the present invention.

情報処理装置は中央処理装置11を備えている。中央処
理装置11の命令読出部12は、データバス13で接続された
主記憶装置14から順次命令を読み出し、データバス16を
通して命令デコード部17に供給するようになっている。
主記憶装置14には、中央処理装置11で実行される命令お
よびデータが格納されている。
The information processing device includes a central processing unit 11. The instruction reading unit 12 of the central processing unit 11 sequentially reads the instructions from the main storage device 14 connected by the data bus 13 and supplies them to the instruction decoding unit 17 through the data bus 16.
The main storage device 14 stores instructions and data executed by the central processing unit 11.

命令デコード部17は、供給された命令をデコードする
ことによってデコード情報を作成し、また命令が必要と
する主記憶装置上のデータのアドレスを示す実行アドレ
スを計算する。本実施例において実行アドレスは、指定
された相対アドレスと図示しないレジスタの値から計算
する。命令デコード部17は、バス18を通してデコード情
報を、またバス19を通して実行アドレスをそれぞれ命令
実行部21およびデコード情報キャッシュ22に供給する。
命令デコード部17は、実行している命令の命令アドレス
をバス23を通してデコード情報キャッシュ22に供給する
ようになっている。
The instruction decoding unit 17 creates decode information by decoding the supplied instruction, and also calculates an execution address indicating the address of the data on the main memory required by the instruction. In this embodiment, the execution address is calculated from the designated relative address and the value of the register (not shown). The instruction decoding unit 17 supplies the decode information through the bus 18 and the execution address through the bus 19 to the instruction executing unit 21 and the decode information cache 22, respectively.
The instruction decoding unit 17 supplies the instruction address of the instruction being executed to the decode information cache 22 via the bus 23.

デコード情報キャッシュ22は、デコード情報、実行ア
ドレスおよび命令アドレスをひとまとまりとして、それ
ぞれ第1のメモリ24、第2のメモリ26および第3のメモ
リ27に格納する。デコード情報キャッシュ22は図示しな
い制御部を備えている。制御部は、命令デコーダ17から
供給される命令アドレスと第3のメモリ27の内容を比較
し、命令アドレスが既に登録されているか否かを確認す
る。登録済みであることが確認されるとデコード情報キ
ャッシュ22は、その命令に対応するデコード情報をバス
28を通して、実行アドレスをバス29を通して命令実行部
21に供給する。また、登録状態信号31も同時に命令実行
部21に供給される。第3のメモリ27には、第2のメモリ
26に格納された実行アドレスが有効か否かを示す実行ア
ドレス有効ビット32が、対応する命令アドレスごとに付
加されている。
The decode information cache 22 stores the decode information, the execution address and the instruction address as a group in the first memory 24, the second memory 26 and the third memory 27, respectively. The decode information cache 22 includes a control unit (not shown). The control unit compares the instruction address supplied from the instruction decoder 17 with the contents of the third memory 27, and confirms whether the instruction address has already been registered. When it is confirmed that the instruction has been registered, the decode information cache 22 stores the decode information corresponding to the instruction in the bus.
28, execution address via bus 29, instruction execution unit
Supply to 21. The registration status signal 31 is also supplied to the instruction execution section 21 at the same time. In the third memory 27, the second memory
An execution address valid bit 32 indicating whether the execution address stored in 26 is valid is added to each corresponding instruction address.

命令実行部21は、命令デコード部17もしくはデコード
情報キャッシュ22から供給される、デコード情報および
実行アドレスから命令の実行を行う。命令実行部21は、
命令を実行した結果、図示しないレジスタや主記憶装置
14の書き換えを行った場合、デコード情報キャッシュ22
に書換情報33を出力するようになっている。
The instruction executing unit 21 executes an instruction from the decode information and the execution address supplied from the instruction decoding unit 17 or the decode information cache 22. The instruction execution unit 21
As a result of executing the instruction, a register or main storage device not shown
If rewriting 14 is performed, the decoding information cache 22
The rewrite information 33 is output to.

次に、このように構成された情報処理装置の動作につ
いて説明する。
Next, the operation of the information processing apparatus thus configured will be described.

中央処理装置11が命令を実行する場合、命令読出部12
がデータバス15を通じて主記憶装置14から順次命令を読
み出す。命令読出部12で読み出された命令は、データバ
ス16を介して命令デコード部17に供給される。
When the central processing unit 11 executes an instruction, the instruction reading unit 12
Sequentially read the instructions from the main memory 14 via the data bus 15. The instruction read by the instruction reading unit 12 is supplied to the instruction decoding unit 17 via the data bus 16.

命令デコード部17は、命令読出部12から供給された命
令の命令アドレスをデコード情報キャッシュ22に供給す
る。命令デコード部17は、命令読出部12から供給された
命令をデコードして、命令実行部21で命令を実行するた
めに必要なデコード情報を作成する。また命令デコード
部17は、命令が必要とする主記憶装置14上のデータのア
ドレスを示す実行アドレスを同時に計算する。これらデ
コード情報と実行アドレスは、それぞれバス18、19を通
して命令実行部21とデコード情報キャッシュ22に供給さ
れる。
The instruction decoding unit 17 supplies the instruction address of the instruction supplied from the instruction reading unit 12 to the decoding information cache 22. The instruction decoding unit 17 decodes the instruction supplied from the instruction reading unit 12, and creates decode information necessary for the instruction executing unit 21 to execute the instruction. Further, the instruction decoding unit 17 simultaneously calculates the execution address indicating the address of the data on the main memory 14 required by the instruction. The decode information and the execution address are supplied to the instruction execution unit 21 and the decode information cache 22 through the buses 18 and 19, respectively.

デコード情報キャッシュ22の図示しない制御部は、命
令デコード部17からバス23を通して供給された命令アド
レスと第3のメモリ27の内容を比較し、既に登録されて
いるか否かを調べる。本登録の場合、命令デコード部17
から供給された命令アドレスは、第3のメモリ27に格納
される。また、命令デコード部17で計算されたデコード
情報および実行アドレスは、それぞれバス18、19を通し
て第1のメモリ24および第2のメモリ26の各領域に命令
アドレスと対応して格納されると共に、命令実行部21に
供給される。命令実行部21は、命令デコード部17から供
給されたデコード情報および実行アドレスを使用して命
令の実行を行う。
The control unit (not shown) of the decode information cache 22 compares the instruction address supplied from the instruction decode unit 17 through the bus 23 with the content of the third memory 27 to check whether or not the instruction address has already been registered. In the case of main registration, the instruction decoding unit 17
The instruction address supplied from is stored in the third memory 27. The decode information and the execution address calculated by the instruction decoding unit 17 are stored in the respective areas of the first memory 24 and the second memory 26 through the buses 18 and 19 in association with the instruction address, and It is supplied to the execution unit 21. The instruction executing section 21 executes the instruction using the decode information and the execution address supplied from the instruction decoding section 17.

命令アドレスが既に登録されており、実行アドレス有
効ビット32がセットされていれば、デコード情報キャッ
シュ22は、登録状態信号31を命令実行部21および命令デ
コード部17に供給する。デコード情報キャッシュ22は、
同時に第1のメモリ24および第2のメモリ26に登録され
ているデコード情報および実行アドレスを命令実行部21
に供給する。命令実行部21は、登録状態信号31の供給を
受けると命令デコード部17におけるデコード等を待たず
に、デコード情報キャッシュ22から供給されるデコード
情報と実行アドレスから命令を実行する。登録状態信号
31の供給を受けた命令デコード部17は、デコード情報の
作成および実行アドレスの計算をキャンセルする。
If the instruction address is already registered and the execution address valid bit 32 is set, the decode information cache 22 supplies the registration status signal 31 to the instruction executing section 21 and the instruction decoding section 17. The decode information cache 22 is
At the same time, the instruction execution unit 21 receives the decode information and execution address registered in the first memory 24 and the second memory 26.
Supply to. Upon receiving the supply of the registration status signal 31, the instruction executing unit 21 executes the instruction from the decode information and the execution address supplied from the decode information cache 22 without waiting for the decoding in the instruction decoding unit 17. Registration status signal
The instruction decoding unit 17, which has been supplied with 31, cancels the generation of the decode information and the calculation of the execution address.

命令実行部21で命令を実行した結果、主記憶装置14あ
るいは中央処理装置11の図示しないレジスタの書き換え
を行う場合がある。これらの書き換えにより実行アドレ
スが変化するので、命令デコード部17で計算され第2の
メモリ26に既に格納されている実行アドレスは無効とな
る。そこで、命令実行部21は、書換情報33をデコード情
報キャッシュ22に供給する。デコード情報キャッシュ22
は、供給された書換情報33によって第1のメモリ24内の
実行アドレス生成情報を参照し、書き換えられた情報を
使用した命令の実行アドレス有効ビット32をクリアす
る。
As a result of executing the instruction in the instruction executing unit 21, there are cases where the main memory 14 or the register (not shown) of the central processing unit 11 is rewritten. Since the execution address is changed by rewriting these, the execution address calculated by the instruction decoding unit 17 and already stored in the second memory 26 becomes invalid. Therefore, the instruction execution unit 21 supplies the rewrite information 33 to the decode information cache 22. Decode information cache 22
Refers to the execution address generation information in the first memory 24 with the supplied rewriting information 33, and clears the execution address valid bit 32 of the instruction using the rewritten information.

命令デコード部17からの命令アドレスは既に登録され
ているが、実行アドレス有効ビット32がクリアされてい
る場合、デコード情報キャッシュ22は、実行アドレスの
無効を示す登録状態信号31を命令実行部21および命令デ
コード部17に供給する。命令実行部21の供給を受けると
デコード情報キャッシュ22は、第1のメモリ24に登録さ
れているデコード情報のみをバス28を介して命令実行部
21に供給する。一方、登録状態信号31の供給を受けた命
令デコード部17は、実行アドレスのみを計算し、これを
バス19を介して命令実行部21とデコード情報キャッシュ
22に供給する。命令実行部21は、デコード情報キャッシ
ュ22から供給されるデコード情報と、命令デコード部17
から供給される実行アドレスに従って命令を実行する。
デコード情報キャッシュ22は、第2のメモリ26に格納さ
れ無効となっている実行アドレスを、命令デコード部17
から新たに供給された実行アドレスに書き換える。
Although the instruction address from the instruction decoding unit 17 has already been registered, if the execution address valid bit 32 is cleared, the decode information cache 22 sends the registration status signal 31 indicating that the execution address is invalid to the instruction execution unit 21 and It is supplied to the instruction decoding unit 17. When the decode information cache 22 receives the supply of the instruction execution unit 21, only the decode information registered in the first memory 24 is transmitted via the bus 28 to the instruction execution unit 21.
Supply to 21. On the other hand, the instruction decoding unit 17, which receives the supply of the registration status signal 31, calculates only the execution address, and outputs it to the instruction execution unit 21 and the decode information cache via the bus 19.
Supply to 22. The instruction execution unit 21 includes the decode information supplied from the decode information cache 22 and the instruction decode unit 17
The instruction is executed according to the execution address supplied from
The decode information cache 22 stores the invalid execution address stored in the second memory 26 into the instruction decode unit 17
It is rewritten to the execution address newly supplied from.

以上の動作を各命令ごとに行うことにより、デコード
情報キャッシュ22内は次第にデコードされた命令で満た
されていく。一般的な命令の列は同じ命令を多数実行す
ることが多く、命令の実行に従って以前に既にデコード
を行いデコード情報キャッシュ22内にある命令が使用さ
れる頻度が高くなる。この場合、命令の読み出し、デコ
ード、実行アドレスの計算を行う必要がなくなり、高速
な命令の実行を行うことができる。
By performing the above operation for each instruction, the decode information cache 22 is gradually filled with the decoded instructions. A general instruction string often executes the same instruction many times, and the instruction already in the decoding is executed and the instruction in the decode information cache 22 is used more frequently as the instruction is executed. In this case, it is not necessary to read and decode the instruction and calculate the execution address, and the instruction can be executed at high speed.

以上説明した実施例では、命令の実行により主記憶装
置内のデータや図示しないレジスタが書き換えられ、第
2のメモリに格納されている実行アドレスが無効になっ
ても、これを検出することができる構成としているの
で、書き換えによる命令の実行に矛盾を生じることがな
い。なお、命令実行部による命令の実行によっても実行
アドレスが変化することがないような、特定用途のため
の情報処理装置の場合には、実行アドレス有効ビットは
不要である。
In the embodiment described above, even if the data in the main memory or the register (not shown) is rewritten by the execution of the instruction and the execution address stored in the second memory becomes invalid, this can be detected. Since it is configured, there is no contradiction in the execution of instructions by rewriting. The execution address valid bit is not necessary in the case of an information processing device for a specific purpose in which the execution address does not change even if the instruction execution unit executes the instruction.

〔発明の効果〕〔The invention's effect〕

このように本発明によれば、デコード情報キャッシュ
に命令アドレスに対応してデコード情報だけでなく実行
アドレスも格納する構成としたので、より高速に命令を
実行することができる。さらに命令を実行した結果、デ
コード情報キャッシュに格納されている実行アドレスの
変化するときは、それが無効となったことを表わすフラ
グをセットしている。そしてこのフラグが実行アドレス
の無効を示しているときは、デコード情報についてはデ
コード情報キャッシュに格納されている値を用い、実行
アドレスについては新たに算出した値を用いるようにし
ている。これらにより、命令の実行により実行アドレス
の変化する命令についても、キャッシュメモリを利用し
てデコード時間の短縮を図ることができる。
As described above, according to the present invention, not only the decode information but also the execution address is stored in the decode information cache in correspondence with the instruction address, so that the instruction can be executed at a higher speed. Further, when the execution address stored in the decode information cache changes as a result of executing the instruction, a flag indicating that the execution address is invalid is set. When this flag indicates that the execution address is invalid, the value stored in the decode information cache is used for the decode information, and the newly calculated value is used for the execution address. As a result, even for an instruction whose execution address changes due to the execution of the instruction, the decoding time can be shortened by using the cache memory.

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

第1図は本発明の一実施例における情報処理装置の回路
構成を示すブロック図である。 11……中央処理装置、12……命令読出部、 17……命令デコード部、 21……命令実行部、 22……デコード情報キャッシュ、 24……第1のメモリ、 26……第2のメモリ、 27……第3のメモリ。
FIG. 1 is a block diagram showing the circuit configuration of an information processing apparatus according to an embodiment of the present invention. 11 ... Central processing unit, 12 ... Instruction reading unit, 17 ... Instruction decoding unit, 21 ... Instruction execution unit, 22 ... Decode information cache, 24 ... First memory, 26 ... Second memory , 27 ... Third memory.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】実行する命令とその命令の実行に必要なデ
ータを格納する主記憶装置と、 この主記憶装置から実行する命令を順次読み出す命令読
出手段と、 この命令読出手段で読み出される命令をデコードするデ
コード手段と、 前記命令読出手段で読み出される命令の実行に必要な前
記主記憶装置上のデータの実行アドレスを求める実行ア
ドレス算出手段と、 前記命令読出手段で読み出される命令に対応して、前記
デコード手段から出力されるデコード情報を格納するた
めの第1のメモリと、前記実行アドレス算出手段から出
力される実行アドレスとこれが有効か無効かを表わすフ
ラグとを格納するための第2のメモリとを備えたデコー
ド情報キャッシュと、 実行する命令がこのデコード情報キャッシュに格納され
ていないとき前記デコード手段の出力するデコード情報
を第1のメモリに前記実行アドレス算出手段の出力する
実行アドレスを前記第2のメモリにそれぞれ格納すると
ともに前記フラグを実行アドレスが有効であることを示
す値にセットする第1の書込手段と、 実行する命令が前記デコード情報キャッシュに格納され
ていないとき前記デコード手段の出力するデコード情報
と前記実行アドレス算出手段の出力する実行アドレスを
選択する第1の選択手段と、 実行する命令が前記デコード情報キャッシュに格納され
ておりかつその命令に対応する前記フラグが実行アドレ
スの有効を表わしているとき前記第1のメモリに格納さ
れたデコード情報と前記第2のメモリに格納された実行
アドレスを選択する第2の選択手段と、 実行する命令が前記デコード情報キャッシュに格納され
ておりかつその命令に対応する前記フラグが実行アドレ
スの無効を表わしているとき前記第1のメモリに格納さ
れたデコード情報と前記実行アドレス算出手段の出力す
る実行アドレスを選択する第3の選択手段と、 この第3の選択手段によって前記実行アドレス算出手段
の出力する実行アドレスが選択されたとき前記第2のメ
モリに実行アドレス算出手段の出力する実行アドレスを
格納するとともに対応するフラグを実行アドレスが有効
であることを示す値にセットする第2の書込手段と、 前記第1から第3の選択手段によって選択されたデコー
ド情報および実行アドレスを基に命令を実行する命令実
行手段と、 この命令実行手段が前記第2のメモリに格納された実行
アドレスを基に命令を実行した結果その実行アドレスが
変化するときその命令に対応する前記フラグを実行アド
レスが無効であることを表わす値に変更するフラグ変更
手段 とを具備することを特徴とする情報処理装置。
1. A main storage device for storing an instruction to be executed and data necessary for executing the instruction, an instruction reading means for sequentially reading out the instructions to be executed from the main storage device, and an instruction read by the instruction reading means. Decoding means for decoding, execution address calculating means for obtaining an execution address of data on the main storage device necessary for executing the instruction read by the instruction reading means, and instruction corresponding to the instruction read by the instruction reading means, A first memory for storing the decode information output from the decoding means, a second memory for storing the execution address output from the execution address calculation means, and a flag indicating whether the execution address is valid or invalid. And a decode information cache with an instruction to execute if the decode information cache is not stored in the decode information cache. Storing the decode information output by the means in a first memory, the execution address output by the execution address calculating means in the second memory, and setting the flag to a value indicating that the execution address is valid; 1 writing means, and 1st selection means for selecting the decode information output by the decode means and the execution address output by the execution address calculation means when the instruction to be executed is not stored in the decode information cache, When the instruction to be executed is stored in the decode information cache and the flag corresponding to the instruction indicates that the execution address is valid, the decode information stored in the first memory and the second memory are stored. Second selecting means for selecting the executed execution address, and an instruction to be executed in the decode information cache. A third information storage unit that selects the decode information stored in the first memory and the execution address output by the execution address calculation unit when the flag corresponding to the instruction indicates that the execution address is invalid. When the execution address output by the execution address calculation means is selected by the selection means and the third selection means, the execution address output by the execution address calculation means is stored in the second memory and the corresponding flag is executed. Second writing means for setting a value indicating that the address is valid; instruction executing means for executing an instruction based on the decode information and the execution address selected by the first to third selecting means, As a result of the instruction execution means executing the instruction based on the execution address stored in the second memory, the execution address changes. The information processing apparatus characterized by comprising a flag change means for executing address the flag corresponding to the instruction to change a value representing an invalid time.
JP1265032A 1989-10-13 1989-10-13 Information processing device Expired - Lifetime JP2540959B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1265032A JP2540959B2 (en) 1989-10-13 1989-10-13 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1265032A JP2540959B2 (en) 1989-10-13 1989-10-13 Information processing device

Publications (2)

Publication Number Publication Date
JPH03127126A JPH03127126A (en) 1991-05-30
JP2540959B2 true JP2540959B2 (en) 1996-10-09

Family

ID=17411642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1265032A Expired - Lifetime JP2540959B2 (en) 1989-10-13 1989-10-13 Information processing device

Country Status (1)

Country Link
JP (1) JP2540959B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1397613B1 (en) 2009-07-16 2013-01-18 Termal Srl IRRADIATION HEATING DEVICE
US10603040B1 (en) 2015-02-09 2020-03-31 Tva Medical, Inc. Methods for treating hypertension and reducing blood pressure with formation of fistula

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63254532A (en) * 1987-04-10 1988-10-21 Nec Corp Address conversion system for central processing unit

Also Published As

Publication number Publication date
JPH03127126A (en) 1991-05-30

Similar Documents

Publication Publication Date Title
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
JPS58102381A (en) Buffer memory
US5016169A (en) Data processor capable of correctly re-executing instructions
US5594917A (en) High speed programmable logic controller
JPH0748190B2 (en) Microprocessor with cache memory
US5274776A (en) Information processing system having mode signal holding means and selecting operand access mode based on mode signal indicating type of currently executed instruction
JP2540959B2 (en) Information processing device
JPS6319058A (en) Memory device
JP2659007B2 (en) Information processing method and apparatus
JPS6232508B2 (en)
JP2613258B2 (en) Information processing method and apparatus
KR930002324B1 (en) Microprocessor with buffer
JPH0784884A (en) Virtual computer system
JPH03141444A (en) Data processor
JPH0883213A (en) Storage device including cache memory
JPS6367213B2 (en)
JPH024016B2 (en)
JPS63237133A (en) Central processing unit
JPH09106347A (en) Information processor and stack storing method for information processor
JPH1027153A (en) Bus transfer device
JPH0548498B2 (en)
JPH01118944A (en) Cache memory controller
JPH024017B2 (en)
JPH0444126A (en) Argument delivering system for subroutine
JPH06314236A (en) Memory allocating method for memory cartridge