JPH0553798A - Information processor - Google Patents

Information processor

Info

Publication number
JPH0553798A
JPH0553798A JP3234002A JP23400291A JPH0553798A JP H0553798 A JPH0553798 A JP H0553798A JP 3234002 A JP3234002 A JP 3234002A JP 23400291 A JP23400291 A JP 23400291A JP H0553798 A JPH0553798 A JP H0553798A
Authority
JP
Japan
Prior art keywords
instruction
block
cache
hit
instruction word
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
JP3234002A
Other languages
Japanese (ja)
Inventor
Takatoshi Hashimoto
孝寿 橋本
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 Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP3234002A priority Critical patent/JPH0553798A/en
Publication of JPH0553798A publication Critical patent/JPH0553798A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To shorten waiting time for an instruction language block load to a cache at the time of a cache mistake hit. CONSTITUTION:When the cache mistake hit is detected in a hit detecting circuit 8, a block load instruction circuit 11 generates instruction for taking-out an erroneously hitted instruction language block from a main storing device. During the block load, a succeeding block address generating circuit 3 generates a succeeding block address so as to index address array 7. When the succeeding block is the mistake hit and also there is not branching instruction in whole instruction after detecting the presence or absence of branching in instruction within the present block loads by a branching instruction judging circuit 4, the succeeding block load is instructed.

Description

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

【0001】[0001]

【技術分野】本発明は情報処理装置に関し、特に主記憶
装置に格納されている命令語の一部をブロック単位で格
納する命令語キャッシュ回路の制御方式に関するもので
ある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing device, and more particularly to a control system for an instruction word cache circuit that stores a part of an instruction word stored in a main storage device in block units.

【0002】[0002]

【従来技術】この種の命令語キャッシュ回路では、キャ
ッシュヒットする命令語ブロックの命令をキャッシュか
ら全て取出した後に、次の命令語ブロックをキャッシュ
から取出そうとしてミスヒットが発生すると、主記憶装
置からこのミスヒットした命令語のブロックの取出しを
開始するようになっている。
2. Description of the Related Art In this type of instruction word cache circuit, when all the instructions of an instruction word block that causes a cache hit are fetched from the cache and a mishit occurs when the next instruction word block is fetched from the cache, the main memory device The fetch of the block of the instruction word that has a mis-hit is started.

【0003】この様な従来のキャッシュ回路では、キャ
ッシュからキャッシュヒットした命令語ブロックの命令
を全て取出した後に次のミスヒットブロックを主記憶装
置から取出すようになっているので、当該ミスヒットブ
ロックの命令語のブロックロード(キャッシュへの命令
語ブロックの登録)が終了するまでは、次のブロックの
命令語の処理を開始することができず、よってその間の
待ち時間が長いという欠点がある。
In such a conventional cache circuit, the next mishit block is fetched from the main storage device after fetching all the instructions of the instruction word block that has made a cache hit from the cache. There is a disadvantage that the processing of the instruction word of the next block cannot be started until the block loading of the instruction word (registration of the instruction word block in the cache) is completed, and therefore the waiting time between them is long.

【0004】[0004]

【発明の目的】本発明の目的は、キャッシュミスヒット
時における命令語ブロックロードの待ち時間を短縮する
ことが可能な情報処理装置を提供することである。
SUMMARY OF THE INVENTION It is an object of the present invention to provide an information processing apparatus capable of shortening the instruction word block load waiting time at the time of a cache miss.

【0005】[0005]

【発明の構成】本発明による情報処理装置は、主記憶装
置と、前記主記憶装置に格納されている命令語の一部を
ブロック単位で格納するキャッシュ回路と、前記キャッ
シュ回路に対する命令語ブロックアドレスによる索引に
応答してキャッシュヒット状態を検出するヒット検出手
段と、前記ヒット検出手段のキャッシュミスヒットの検
出に応答して主記憶装置からキャッシュミスヒット時の
命令語ブロックを取出して前記キャッシュ回路へのロー
ドを指示する制御手段と、このロード動作中に次命令語
ブロックアドレスを生成して前記キャッシュ回路を索引
する次ブロック索引手段と、前記主記憶装置から取出さ
れた命令語ブロック中の命令語を順次デコードしつつ分
岐命令の有無を判定する分岐命令判定手段と、前記命令
語ブロックの取出し終了時に、前記ヒット検出手段がミ
スヒットを検出しかつ前記分岐命令判定手段が分岐命令
無しと判定したときに、前記制御手段に対して前記主記
憶手段から前記次命令語ブロックの取出し指示をなす手
段とを含むことを特徴とする。
An information processing apparatus according to the present invention comprises a main memory device, a cache circuit for storing a part of an instruction word stored in the main memory device in block units, and an instruction word block address for the cache circuit. Hit detecting means for detecting a cache hit state in response to the index by the cache detecting means, and an instruction word block at the time of a cache miss hit from the main memory device in response to the detection of the cache miss hit by the hit detecting means to the cache circuit. Control means for instructing the loading of data, a next block indexing means for indexing the cache circuit by generating a next instruction word block address during the load operation, and an instruction word in the instruction word block fetched from the main memory device. Branch instruction determining means for determining the presence or absence of a branch instruction while sequentially decoding the At the end, when the hit detection means detects a mishit and the branch instruction determination means determines that there is no branch instruction, the control means is instructed to take out the next instruction word block from the main storage means. And means.

【0006】[0006]

【実施例】以下、図面を用いて本発明の実施例について
詳述する。
Embodiments of the present invention will be described in detail below with reference to the drawings.

【0007】図1は本発明の一実施例のブロック図であ
る。本発明の情報処理装置は、命令語を取出す命令取出
しアドレス100 を保持するアドレスレジスタ1、ブロッ
クデータ101 を1クロックだけ保持するブロックデータ
レジスタ2、キャッシュミスヒット時に次ブロックアド
レスを生成する次ブロックアドレス生成回路3、取出し
ブロック104 中の全ての命令語を順次分岐命令かどうか
判定する分岐命令判定回路4、通常の索引アドレス103
とミスヒット時の次ブロックアドレスとの一方を選択す
るアドレス選択回路5、キャッシュ回路のデータをブロ
ック単位で保持する命令語データアレイ6及びその対応
アドレスを保持する命令語アドレスアレイ7、キャッシ
ュヒットを命令語アドレスアレイ7の出力107 とキャッ
シュキーアドレス102 とによって検出するキャッシュヒ
ット検出回路8、次ブロックがキャッシュにあるかどう
かを保持する第二フリップフロップ9、取出しブロック
に分岐命令が有るかを示す第三フリップフロップ10、
図示せぬ主記憶装置からのブロックの取出しを指示する
指示信号112 を作成するブロックロード指示回路11、
このブロックの取出し指示信号112 を保持する第一フリ
ップフロップ12を有して構成されている。
FIG. 1 is a block diagram of an embodiment of the present invention. The information processing apparatus of the present invention includes an address register 1 for holding an instruction fetch address 100 for fetching an instruction word, a block data register 2 for holding block data 101 for one clock, and a next block address for generating a next block address when a cache miss occurs. A branch instruction determination circuit 4 for determining whether all the instruction words in the generation circuit 3 and the fetch block 104 are sequential branch instructions, a normal index address 103
And an address selection circuit 5 for selecting one of the next block address at the time of a mishit, an instruction word data array 6 for holding the data of the cache circuit in block units, an instruction word address array 7 for holding the corresponding address, and a cache hit. A cache hit detection circuit 8 for detecting the output 107 of the instruction word address array 7 and the cache key address 102, a second flip-flop 9 for holding whether or not the next block is in the cache, and a branch instruction in the fetch block are shown. The third flip-flop 10,
A block load instruction circuit 11 for generating an instruction signal 112 for instructing the fetching of a block from a main memory (not shown),
It has a first flip-flop 12 which holds a take-out instruction signal 112 of this block.

【0008】以下に、図2のタイムチャートを参照し
て、本発明の実施例の動作を説明する。
The operation of the embodiment of the present invention will be described below with reference to the time chart of FIG.

【0009】命令語取出し時、命令語取出しアドレスの
命令語取出しアドレス100 が命令取出しアドレスレジス
タ1で保持され、命令語データが入っている命令語デー
タアレイ6及びキャッシュに命令語データが有るかどう
かの情報が入っている命令語アドレスアレイ7をキャッ
シュ索引アドレス103 により索引する。このときのアド
レス選択回路5はキャッシュ索引アドレス103 を選択す
る。
At the time of fetching the command word, whether the command word fetch address 100 of the command word fetch address is held in the command fetch address register 1, and whether the command word data array 6 containing the command word data and the command word data exist in the cache. The instruction word address array 7 containing the information is indexed by the cache index address 103. At this time, the address selection circuit 5 selects the cache index address 103.

【0010】索引されたキャッシュ内の命令語データの
命令語出力108 が有効であるかはキャッシュヒット検出
回路8で判断され、キャッシュヒットの場合は命令語が
命令語出力108 として導出される。
Whether the command word output 108 of the command word data in the indexed cache is valid is judged by the cache hit detection circuit 8, and in the case of a cache hit, the command word is derived as the command word output 108.

【0011】キャッシュミスヒットの場合、キャッシュ
ヒット信号109 のミスヒット信号によりブロックロード
指示回路11はミスヒットブロックの主記憶装置からの
取出し指示信号112 を作成し第一フリップフロップ12
に保持する。
In the case of a cache mishit, the block load instructing circuit 11 produces a fetch instructing signal 112 from the main memory of the mishit block by the mishit signal of the cache hit signal 109 and the first flip-flop 12
Hold on.

【0012】このあと次ブロックアドレス生成回路3で
作成される次ブロックのアドレスをアドレス選択回路5
は選択し、このアドレス選択回路5の出力105 によって
次ブロックの命令語アドレスアレイ7が索引される。こ
の次ブロックアドレスは現アドレス103 の値が“n”で
あれれば“n+1”となる。
After that, the address of the next block created by the next block address generation circuit 3 is set to the address selection circuit 5.
The address 105 of the next block is indexed by the output 105 of the address selection circuit 5. This next block address is "n + 1" if the value of the current address 103 is "n".

【0013】索引された命令語アドレスアレイ7の出力
107 とキャッシュキーアドレス102とにより、キャッシ
ュヒット検出回路8は当該次ブロックがキャッシュにあ
るかどうか判断し、この結果109 を第二フリップフロッ
プ9に保持する。
Output of indexed instruction word address array 7
Based on 107 and the cache key address 102, the cache hit detection circuit 8 determines whether or not the next block is in the cache, and holds the result 109 in the second flip-flop 9.

【0014】先にミスヒットとなったミスヒットブロッ
クのデータが、主記憶装置から取出されてブロックデー
タ101 としてブロックデータレジスタ2に順次保持され
る。このとき命令語データアレイ6にデータが書込まれ
分岐命令判定回路4で分岐命令があるかどうか判断され
る。分岐命令があったかどうかの信号である分岐命令判
定回路4の出力106 は第三フリップフロップ10で保持
される。
The data of the mishit block which has previously become a mishit is fetched from the main memory and sequentially held in the block data register 2 as the block data 101. At this time, data is written in the instruction word data array 6 and the branch instruction determination circuit 4 determines whether or not there is a branch instruction. The output 106 of the branch instruction determination circuit 4, which is a signal indicating whether or not there is a branch instruction, is held in the third flip-flop 10.

【0015】この時点での第二フリップフロップ9が次
ブロックのミスヒットを示しかつ第三フリップフロップ
10が取出したブロック中に分岐命令の無存在を示して
いる場合、ブロックロード指示回路11で次ブロックの
取出し指示信号が作成される。
When the second flip-flop 9 at this point indicates a mishit of the next block and the third flip-flop 10 indicates that there is no branch instruction in the fetched block, the block load instructing circuit 11 indicates the next instruction. A block take-out instruction signal is created.

【0016】また第二フリップフロップ9が次ブロック
のヒットを示すかまたは第三フリップフロップ10が取
出したブロック中に分岐命令の存在を示している場合、
ブロックロード指示回路11は次ブロックの取出し指示
信号は作成しない。
If the second flip-flop 9 indicates the next block hit or the third flip-flop 10 indicates the presence of a branch instruction in the fetched block,
The block load instruction circuit 11 does not create a fetch instruction signal for the next block.

【0017】[0017]

【発明の効果】以上説明したように本発明によれば、ミ
スヒット時にキャッシュにブロックロードする前に命令
語を判別して分岐命令がなければ直ちに次のミスヒット
ブロックの取出しを指示するので、次ブロックのロード
の待ち時間が短縮できるという効果がある。
As described above, according to the present invention, at the time of a mishit, the instruction word is discriminated before the block is loaded into the cache, and if there is no branch instruction, the fetch of the next mishit block is immediately instructed. This has the effect of reducing the waiting time for loading the next block.

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

【図1】本発明の実施例のブロック図である。FIG. 1 is a block diagram of an embodiment of the present invention.

【図2】本発明の実施例の動作を示すタイムチャートで
ある。
FIG. 2 is a time chart showing the operation of the embodiment of the present invention.

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

1 命令語取出しアドレスレジスタ 2 ブロックデータレジスタ 3 次ブロックアドレス生成回路 4 分岐命令判定回路 5 アドレス選択回路 6 命令語データアレイ 7 命令語アドレスアレイ 8 キャッシュヒット検出回路 9,10,12 フリップフロップ 11 ブロックロード指示回路 1 instruction word fetch address register 2 block data register tertiary block address generation circuit 4 branch instruction determination circuit 5 address selection circuit 6 instruction word data array 7 instruction word address array 8 cache hit detection circuit 9, 10, 12 flip-flop 11 block load Indicator circuit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 主記憶装置と、前記主記憶装置に格納さ
れている命令語の一部をブロック単位で格納するキャッ
シュ回路と、前記キャッシュ回路に対する命令語ブロッ
クアドレスによる索引に応答してキャッシュヒット状態
を検出するヒット検出手段と、前記ヒット検出手段のキ
ャッシュミスヒットの検出に応答して主記憶装置からキ
ャッシュミスヒット時の命令語ブロックを取出して前記
キャッシュ回路へのロードを指示する制御手段と、この
ロード動作中に次命令語ブロックアドレスを生成して前
記キャッシュ回路を索引する次ブロック索引手段と、前
記主記憶装置から取出された命令語ブロック中の命令語
を順次デコードしつつ分岐命令の有無を判定する分岐命
令判定手段と、前記命令語ブロックの取出し終了時に、
前記ヒット検出手段がミスヒットを検出しかつ前記分岐
命令判定手段が分岐命令無しと判定したときに、前記制
御手段に対して前記主記憶手段から前記次命令語ブロッ
クの取出し指示をなす手段とを含むことを特徴とする情
報処理装置。
1. A cache hit in response to a main memory device, a cache circuit for storing a part of an instruction word stored in the main memory device in block units, and an index by an instruction word block address for the cache circuit. Hit detecting means for detecting a state; and control means for, in response to the detection of the cache miss hit by the hit detecting means, fetching an instruction word block at the time of the cache miss hit from the main storage device and instructing a load to the cache circuit. , A next block index means for generating a next instruction word block address during the load operation to index the cache circuit, and a branch instruction while sequentially decoding the instruction words in the instruction word block fetched from the main memory device. Branch instruction determining means for determining the presence or absence, and at the end of extracting the instruction word block,
Means for instructing the control means to fetch the next instruction word block from the main memory means when the hit detection means detects a mishit and the branch instruction determination means determines that there is no branch instruction. An information processing device comprising:
JP3234002A 1991-08-21 1991-08-21 Information processor Pending JPH0553798A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3234002A JPH0553798A (en) 1991-08-21 1991-08-21 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3234002A JPH0553798A (en) 1991-08-21 1991-08-21 Information processor

Publications (1)

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

Family

ID=16964020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3234002A Pending JPH0553798A (en) 1991-08-21 1991-08-21 Information processor

Country Status (1)

Country Link
JP (1) JPH0553798A (en)

Similar Documents

Publication Publication Date Title
US5961633A (en) Execution of data processing instructions
JP3729545B2 (en) Access to cache memory
EP0223150B1 (en) Information processing apparatus
JP2570859B2 (en) Data processing device
US5287483A (en) Prefetched operand storing system for an information processor
JPS5991551A (en) Instruction prefetching device forecasting address to be branched
JPH0553798A (en) Information processor
JPS6312030A (en) Error processing mechanism for information processor
JPH05241827A (en) Command buffer controller
JP3035108B2 (en) Parallel processing unit
JPS6236258B2 (en)
JPS63314644A (en) Data processor
JPH0520350A (en) Vector processing device
JPS60164842A (en) Instruction prefetching device
JP3476314B2 (en) Microprocessor
JPH06149569A (en) Register number changing device
JPH10154072A (en) Pipeline processor
JP3118802B2 (en) Debug circuit using branch history table
JPS61136145A (en) Cache memory control circuit
JP2002149438A (en) Method for controlling buffer storage for recovery control
JP2000347931A (en) Cache memory and method for controlling cache memory
JPH04242431A (en) Information processor
JPH0527972A (en) Instruction prefetch device
JPH05143362A (en) Interruption processing system
JPH08202621A (en) Cache controller