JP2677706B2 - Memory access control circuit - Google Patents

Memory access control circuit

Info

Publication number
JP2677706B2
JP2677706B2 JP2279249A JP27924990A JP2677706B2 JP 2677706 B2 JP2677706 B2 JP 2677706B2 JP 2279249 A JP2279249 A JP 2279249A JP 27924990 A JP27924990 A JP 27924990A JP 2677706 B2 JP2677706 B2 JP 2677706B2
Authority
JP
Japan
Prior art keywords
cycle
signal
memory
memory access
hit
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 - Fee Related
Application number
JP2279249A
Other languages
Japanese (ja)
Other versions
JPH04155457A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2279249A priority Critical patent/JP2677706B2/en
Publication of JPH04155457A publication Critical patent/JPH04155457A/en
Application granted granted Critical
Publication of JP2677706B2 publication Critical patent/JP2677706B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔概 要〕 2サイクルのキャッシュのメモリアクセス制御回路に
関し、 キャッシュにミスヒットリードした次のメモリアクセ
ス処理を迅速かつ、正確に行なえるようにすることを目
的とし、 第1サイクルでアドレスを送出し、第2サイクルで次
のアクセスの第1サイクルとオーバラップしてデータ転
送を行う2サイクルキャッシメモリアクセス制御回路に
おいて、第1サイクルでミスヒットした場合に、第2サ
イクルのステージ遷移を抑止する信号を発生するSTINH
発生回路と、ミスヒット時はメモリアクセス要求許可信
号(MRQOK信号)をオフにし、メインメモリよりリード
された最後のデータがキャッシュメモリに到達する直前
のサイクルでMRQOK信号をオフからオンにするMRQOK発生
回路と、MRQOK信号がオフからオンになったときにSTINH
発生回路のステージ遷移抑止信号を停止させるSTINH抑
止回路を、設けるように構成する。
DETAILED DESCRIPTION OF THE INVENTION [Outline] A memory access control circuit for a 2-cycle cache, which aims to enable quick and accurate execution of the next memory access processing that mishit-reads to the cache. In a 2-cycle cache memory access control circuit that sends an address in 1 cycle and transfers data in the 2nd cycle while overlapping with the 1st cycle of the next access, if a miss hit occurs in the 1st cycle, the 2nd cycle STINH that generates a signal to suppress the stage transition of
The generation circuit and the memory access request enable signal (MRQOK signal) are turned off at the time of a miss, and the MRQOK signal is turned on from the cycle immediately before the last data read from the main memory reaches the cache memory. STINH when the circuit and the MRQOK signal goes from off to on
A STINH suppression circuit for stopping the stage transition suppression signal of the generation circuit is provided.

〔産業上の利用分野〕[Industrial applications]

本発明は、第1サイクルでアドレスを送出し、第2サ
イクルで次にアクセスの第1サイクルとオーバラップし
てデータ転送を行う、2サイクルキャッシュメモリアク
セス方式において、キャッシュメモリにミスヒットした
場合、次のアクセスを迅速かつ正確に行なうためのメモ
リアクセス制御回路に関する。
According to the present invention, in a two-cycle cache memory access method in which an address is transmitted in the first cycle, and data is transferred in the second cycle by overlapping with the first cycle of access next, in the case of a miss hit in the cache memory, The present invention relates to a memory access control circuit for performing the next access quickly and accurately.

〔従来の技術〕[Conventional technology]

多くのデータ処理システムにおいては、メインメモリ
へのアクセス時間を実質的に短縮する手段として、キャ
ッシュ装置を付加するようにしている。特に高速化が要
求されるシステムでは、キャッシュメモリを効率良く利
用するために、データ転送サイクルと次のアクセスのア
ドレス送出とがオーバーラップして行われる2サイクル
方式のアクセスパイプライン制御が採用されている。
In many data processing systems, a cache device is added as a means for substantially shortening the access time to the main memory. Especially in a system requiring high speed, in order to efficiently use the cache memory, a 2-cycle access pipeline control in which a data transfer cycle and an address transmission of the next access are overlapped is adopted. There is.

この2サイクル方式のアクセスパイプライン制御で
は、送出されたアドレスのヒット判定をしている間に次
のアクセスのアドレスが送出されているため、ミスヒッ
トとなった場合の制御が複雑になり、次のアクセスの再
開までにかなりのオーバーヘッドが生じるようになる。
In this 2-cycle access pipeline control, since the address of the next access is sent while the hit determination of the sent address is being performed, the control in the case of a mishit becomes complicated. There will be a considerable overhead before resuming access to.

次に、第6図〜第9図を参照して、従来の2サイクル
のメモリアクセス制御方式について説明する。第6図は
ステージ遷移の説明図、第7図は従来のメモリアクセス
制御システムの説明図、第8図は従来のメモリアクセス
制御回路の動作タイミングチャート、第9図は従来のメ
モリアクセス制御システムにおけるミスヒット時でかつ
インバリデーションのあるときの動作タイミングチャー
トの説明図である。
Next, a conventional 2-cycle memory access control system will be described with reference to FIGS. FIG. 6 is an explanatory diagram of stage transition, FIG. 7 is an explanatory diagram of a conventional memory access control system, FIG. 8 is an operation timing chart of a conventional memory access control circuit, and FIG. 9 is a conventional memory access control system. It is explanatory drawing of the operation timing chart at the time of a mishit and when there is an invalidation.

第7図において、21はメインメモリインタフェースコ
ントローラ(MMインタフェースコントローラで示す)で
あり、図示しないメインメモリとメモリアクセス制御回
路とのインタフェース制御を行なう。211はMMインタフ
ェースコントローラ21に設けられた監視ディレクトリで
あり、自己のキャッシュのディレクトリに登録されてい
るメインメモリ領域への、他のプロセッサ又はDMA(直
接記憶アクセス)によるライトを監視する。
In FIG. 7, reference numeral 21 denotes a main memory interface controller (indicated by an MM interface controller), which performs interface control between a main memory (not shown) and a memory access control circuit. Reference numeral 211 denotes a monitoring directory provided in the MM interface controller 21, which monitors a write to the main memory area registered in the directory of its own cache by another processor or DMA (direct memory access).

MABはMMインタフェースコントローラ21とメインメモ
リ間のアドレスバスであり、MADはMMインタフェースコ
ントローラ21とメインメモリ間のデータバスである。
MAB is an address bus between the MM interface controller 21 and the main memory, and MAD is a data bus between the MM interface controller 21 and the main memory.

22はディレクトリメモリであり、タグメモリとも呼ば
れ、キャッシュメモリに登録されているデータのアドレ
スが格納される。
Reference numeral 22 denotes a directory memory, which is also called a tag memory and stores the address of data registered in the cache memory.

HITは、キャッシュメモリにヒットしたことを支持す
るヒット信号であり、ヒットしたときは1を指示し、ミ
スヒットしたときは0を指示する。
HIT is a hit signal that supports a hit in the cache memory, and indicates 1 when a hit occurs and 0 when a miss hit occurs.

23はヒット番号保持レジスタ(HITレジスタで示す)
であり、第1サイクルでディレクトリメモリ22から出力
されたヒット情報が格納される。ディレクトリメモリ22
が複数のブロックで構成される場合、ヒット情報はヒッ
トしたブロックの番号を指示する。このヒット情報によ
り、キャッシュメモリ中のブロックに対応するメモリ域
が選択される。
23 is a hit number holding register (indicated by the HIT register)
The hit information output from the directory memory 22 in the first cycle is stored. Directory memory 22
If is composed of a plurality of blocks, the hit information indicates the number of the hit block. This hit information selects the memory area corresponding to the block in the cache memory.

24はキャッシュ用のバッファメモリであり(以下、キ
ャッシュメモリという)、バイポーラトランジスタ等の
高速メモリ素子で構成され、アクセスされたメインメモ
リのデータが登録される。
Reference numeral 24 is a buffer memory for cache (hereinafter referred to as cache memory), which is composed of a high-speed memory device such as a bipolar transistor, and registers the data of the accessed main memory.

25はキャッシュアドレス保持レジスタ(CMAレジスタ
で示す)であり、第1サイクルで送出されたキャッシュ
メモリ24をアクセスするアドレスを格納して、次の第2
サイクルまで保持する。
Reference numeral 25 is a cache address holding register (indicated by a CMA register), which stores an address for accessing the cache memory 24 sent in the first cycle, and stores the next second address.
Hold until cycle.

26はプロセッサであり、各サイクルにおけるステージ
処理を実行するとともに、システム全体の動作を制御す
る。
A processor 26 executes a stage process in each cycle and controls the operation of the entire system.

261はプロセッサ26に設けられたアドレスレジスタで
あり、メインメモリ、ディレクトリメモリ22、キャッシ
ュメモリ24をアクセスするアドレスが格納される。
An address register 261 is provided in the processor 26, and stores addresses for accessing the main memory, the directory memory 22, and the cache memory 24.

262はプロセッサ26に設けられたデータレジスタであ
り、キャッシュメモリ24又はメインメモリから読み出さ
れたデータが格納される。
A data register 262 is provided in the processor 26 and stores data read from the cache memory 24 or the main memory.

ABはMMインタフェースコントローラ21とプロセッサ26
間のアドレスバスであり、CBは各種制御信号が転送され
る制御信号バスであり、DBはMMインタフェースコントロ
ーラ21とプロセッサ26間のデータを転送するデータバス
である。
AB is MM interface controller 21 and processor 26
CB is a control signal bus for transferring various control signals, and DB is a data bus for transferring data between the MM interface controller 21 and the processor 26.

INVLは、キャッシュメモリ24に登録されているデータ
を無効化するインバリデーション信号であり、このイン
バリデーション信号を受けると、ディレクトリメモリ22
にある無効化対象データ領域に対応する領域に無効フラ
グ(図示せず)が立てられる。
INVL is an invalidation signal that invalidates the data registered in the cache memory 24. When this invalidation signal is received, the directory memory 22
An invalidation flag (not shown) is set in the area corresponding to the invalidation target data area.

30はメモリアクセス制御回路であり、MMインタフェー
スコントローラ21内に設けられ、プロセッサ26からの指
令を受けて、メインメモリに対するメモリアクセス制御
を行う。このメモリアクセス制御回路30の発生する各種
制御信号及びそのメモリアクセス制御動作については、
後記動作説明のところで説明する。なお、メモリアクセ
ス制御回路30のブロック内に括弧に入れて示される各種
制御信号は、メモリアクセス制御回路30の内部で発生す
る各種制御信号を示している。
A memory access control circuit 30 is provided in the MM interface controller 21 and receives a command from the processor 26 to control memory access to the main memory. Regarding various control signals generated by the memory access control circuit 30 and the memory access control operation,
The operation will be described later. Various control signals shown in parentheses in the block of the memory access control circuit 30 indicate various control signals generated inside the memory access control circuit 30.

次に、第7図のメモリアクセス制御回路の制御するス
テージ変移を、第6のステージ遷移説明図を参照して説
明する。
Next, the stage transition controlled by the memory access control circuit of FIG. 7 will be described with reference to the sixth stage transition explanatory diagram.

第6図において、最初のメモリリクエストステージで
は、プロセッサ26より、図示しないメインメモリに対す
るアクセスを要求するメモリアクセス要求信号MRQを送
出する処理が行われる。
In the first memory request stage in FIG. 6, the processor 26 performs a process of transmitting a memory access request signal MRQ requesting access to a main memory (not shown).

メインメモリに対するアクセス要求が受け入れられる
と、次の第1ステージにおいて、メインメモリをアクセ
スするアドレスを送出する処理と、キャッシュメモリに
対するヒット判定処理が行われる。STG1は第1ステージ
を起動する第1ステージ信号であり、メモリアクセス制
御回路30によって発生される。
When the access request to the main memory is accepted, in the next first stage, a process of transmitting an address for accessing the main memory and a hit determination process for the cache memory are performed. STG1 is a first stage signal that activates the first stage and is generated by the memory access control circuit 30.

次の第2ステージにおいては、キャッシュメモリにヒ
ットしたデータを転送する処理が行われる。STG2は第2
ステージを起動する第2ステージ信号であり、メモリア
クセス制御回路30によって発生される。
In the next second stage, processing for transferring the hit data to the cache memory is performed. STG2 is second
This is the second stage signal that activates the stage and is generated by the memory access control circuit 30.

次に、第8図の動作タイミングチャートを参照して、
メモリアクセス制御動作を説明する。第8図において、
CLK1はメモリアクセス制御回路30内で行われる各動作の
タイミングを規制するクロックで、システムに共通のシ
ステムクロックに同期して発生される。τ1等は、
クロックCLK1の各サイクルを示す(第8図(a))。
Next, referring to the operation timing chart of FIG.
The memory access control operation will be described. In FIG.
CLK1 is a clock that regulates the timing of each operation performed in the memory access control circuit 30, and is generated in synchronization with the system clock common to the system. τ 1 , τ 2 etc. are
Each cycle of the clock CLK1 is shown (FIG. 8 (a)).

プロセッサ26は、図示しないメインメモリに対するア
クセスを行う場合は、メモリリクエストステージにおい
て、メモリアクセス要求信号MRQを送出する(第8図
(b))。いま、クロックCLK1のサイクルτ1及び
τにおいて連続してメモリアクセス要求MRQが発生
し、これを図示のように、メモリアクセス要求信号MRQ
,MRQ及びMRQとする(第8図(b))。
When accessing the main memory (not shown), the processor 26 sends a memory access request signal MRQ at the memory request stage (FIG. 8 (b)). Now, in the cycles τ 1 , τ 2 and τ 3 of the clock CLK1, the memory access request MRQ is continuously generated. As shown in the drawing, the memory access request MRQ is generated.
, MRQ and MRQ (FIG. 8 (b)).

τサイクルで発行された最初のメモリアクセス要求
信号MRQに対し、メモリアクセス制御回路30は、メモ
リアクセス要求許可条件が満足されると、同じτサイ
クルにおいて、メモリアクセス要求を許容するメモリア
クセス要求許可信号MRQOK(MRQOK信号で示す)をオンに
する(第8図(c))。
When the memory access request permission condition is satisfied for the first memory access request signal MRQ issued in τ 1 cycle, the memory access request circuit 30 permits the memory access request to permit the memory access request in the same τ 1 cycle. The permission signal MRQOK (indicated by the MRQOK signal) is turned on (FIG. 8 (c)).

メモリアクセス制御回路30は、このMRQOK信号がオン
になったときは、クロックCLK1に同期して次のサイクル
τにおいて第1ステージ信号STG1(STG1で示す)発
生し、制御信号バスABを介してプロセッサ26に送る(第
8図(d)の)。
When the MRQOK signal is turned on, the memory access control circuit 30 generates the first stage signal STG1 (indicated by STG1) in the next cycle τ 2 in synchronization with the clock CLK1 and outputs it via the control signal bus AB. It is sent to the processor 26 (FIG. 8 (d)).

この第1ステージ信号STG1を受けると、プロセッサ
26は、第2サイクルτにおいて第1ステージの処理を
行い、アドレスレジスタ261にあるメインメモリをアク
セスするアドレスをアドレスバスABを介して送出し(第
8図(f)の)、更に、キャッシュメモリ24に対する
ヒット判定を行う。
Upon receiving this first stage signal STG1, the processor
26 performs the first stage processing in the second cycle τ 2 , sends out the address for accessing the main memory in the address register 261 via the address bus AB (FIG. 8 (f)), and further caches The hit judgment for the memory 24 is performed.

すなわち、プロセッサ26の送出したアドレスは、先ず
ディレクトリメモリ22をアクセスする。アクセスするア
ドレスに対応するアドレスがディレクトリメモリ22にあ
ると、ヒット信号HITが1になり、キャッシュメモリに
ヒットしたことが指示される。もし、アクセスするアド
レスに対応するアドレスがディレクトリメモリ22にない
と、ヒット信号HITが0になり。キャッシュメモリにミ
スヒットしたことが指示される。
That is, the address sent by the processor 26 first accesses the directory memory 22. If the directory memory 22 has an address corresponding to the address to be accessed, the hit signal HIT becomes 1 to indicate that the cache memory has been hit. If there is no address corresponding to the accessed address in the directory memory 22, the hit signal HIT becomes 0. It is instructed that there is a mishit in the cache memory.

このヒット信号HITは、MMインタフェースコントロー
ラ21を介してメモリアクセス制御回路30に送られる。ま
た、キャッシュメモリのヒット情報がHITレジスタ23に
格納される。ディレクトリメモリ22が複数のブロックか
ら成る場合は、このヒット情報はヒットしたブロックの
番号を指示する。HITレジスタ23にあるヒット情報はキ
ャッシュメモリ24に送られ、ヒット信号HITが1(キャ
ッシュメモリにヒット)のときは、ヒットしたディレク
トリメモリ22のブロック番号に対応するキャッシュメモ
リ24の領域が選択される。
The hit signal HIT is sent to the memory access control circuit 30 via the MM interface controller 21. Further, the hit information of the cache memory is stored in the HIT register 23. If the directory memory 22 is composed of a plurality of blocks, this hit information indicates the number of the hit block. The hit information in the HIT register 23 is sent to the cache memory 24. When the hit signal HIT is 1 (hit the cache memory), the area of the cache memory 24 corresponding to the block number of the hit directory memory 22 is selected. .

以下、キャッシュメモリ24にヒットした場合とミスヒ
ットした場合に分けて説明する。
Hereinafter, description will be given separately for the case where the cache memory 24 is hit and the case where there is a miss hit.

(1) キャッシュメモリにヒットした場合 キャッシュメモリ24にヒットした場合、すなわちヒッ
ト信号HITが1のときは、メモリアクセス制御回路30
は、回路の動作タイミングを規定するクロック信号CLK1
に同期して次のサイクルτにおいて第2ステージ信号
STG2(STG2で示す)を発生し、制御信号バスCBを介し
てプロセッサ26に送る(第8図(e)の)。
(1) When the cache memory is hit When the cache memory 24 is hit, that is, when the hit signal HIT is 1, the memory access control circuit 30
Is the clock signal CLK1 that defines the operation timing of the circuit.
In the next cycle τ 3 in synchronization with the second stage signal
STG2 (indicated by STG2) is generated and sent to the processor 26 via the control signal bus CB (FIG. 8 (e)).

この第2ステージ信号STG2を受けると、プロセッサ
26は、第6図に示すように、第2サイクルτにおいて
第2ステージの処理を行い、キャッシュメモリ24にヒッ
トしたデータ読み出し、データバスDBを介してプロセッ
サ26のデータレジスタ262に転送する。
When receiving this second stage signal STG2, the processor
As shown in FIG. 6, 26 performs the second stage processing in the second cycle τ 3 , reads the hit data in the cache memory 24, and transfers it to the data register 262 of the processor 26 via the data bus DB.

一方、このサイクルτにおいては、最初のメモリア
クセス要求信号MRQに対する第2サイクル(第2ステ
ージ)の処理とオーバラップして、次のメモリアクセス
要求信号MRQに対する第1サイクル(第1ステージ)
の処理が行われる(第6図及び第8図(d)のSTG1及
び(e)のSTG2参照)。
On the other hand, in this cycle τ 3 , the first cycle (first stage) for the next memory access request signal MRQ overlaps with the processing of the second cycle (second stage) for the first memory access request signal MRQ.
Is performed (see STG1 in FIGS. 6 and 8 (d) and STG2 in (e)).

次のメモリアクセス要求信号MRQの第1サイクル
(第8図(d)のτサイクルの第1ステージSTG1)
において、キャッシュメモリ22にヒットすると、続くτ
サイクルにおいて、メモリアクセス要求信号MRQの
第2サイクル、すなわち、第2ステージSTG2の処理が
実行される。
First cycle of next memory access request signal MRQ (first stage STG1 of τ 3 cycle in FIG. 8 (d))
When the cache memory 22 is hit at,
In four cycles, the second cycle of the memory access request signal MRQ, that is, the processing of the second stage STG2 is executed.

以下同様にして、キャッシュメモリにヒットした場合
は、各メモリアクセス要求信号MRQに対する、第1ステ
ージSTG1及び第2ステージSTG2の各処理が連続して実行
される(図示せず)。
Similarly, when the cache memory is hit, each process of the first stage STG1 and the second stage STG2 for each memory access request signal MRQ is continuously executed (not shown).

(2) キャッシュメモリにミスヒットした場合 いま、τで行われたメモリアクセス要求信号MRQ
の第1ステージSTG1の処理において、プロセッサ26か
ら送出されたアドレスがキャッシュメモリ24にミスヒッ
トしたとすると、ヒット信号HITは、サイクルτにお
いて0となる(第8図(j))。
(2) When there is a miss in the cache memory Now, the memory access request signal MRQ made at τ 2
In the processing of the first stage STG1, if the address sent from the processor 26 miss-hits the cache memory 24, the hit signal HIT becomes 0 in the cycle τ 2 (FIG. 8 (j)).

メモリアクセス制御回路30は、ヒット信号HITが0
(ミスヒット)のときは、τサイクルにおいてクロッ
ク抑止信号CLKSPを発生する。
In the memory access control circuit 30, the hit signal HIT is 0
In the case of (miss hit), the clock inhibition signal CLKSP is generated in τ 3 cycle.

更に、メモリアクセス制御回路30は、ヒット信号HIT
が0(ミスヒット)で、かつ、連続するメモリアクセス
要求信号MRQの第1ステージSTG1がオンであるとき
は(第8図(d)のτサイクル)、τサイクルから
ステージ遷移抑止信号STINHをオンにする(第8図
(1))。
Further, the memory access control circuit 30 uses the hit signal HIT
Is 0 (miss) and the first stage STG1 of the continuous memory access request signal MRQ is on (τ 3 cycle in FIG. 8 (d)), the stage transition inhibition signal STINH from τ 4 cycle. Is turned on (Fig. 8 (1)).

これにより、メモリアクセス制御回路30から出力され
るメモリアクセス要求信号MRQの第1ステージ信号STG
1の値は、τサイクル以降は連続して値1を保持す
るようになり(第8図(d))、メモリアクセス要求信
号MRQの第2ステージ信号STG2は、τサイクル以
降は連続して値1を保持するようになる(第8図
(e))。
As a result, the first stage signal STG of the memory access request signal MRQ output from the memory access control circuit 30.
The value of 1 continues to hold the value 1 after τ 3 cycles (FIG. 8 (d)), and the second stage signal STG2 of the memory access request signal MRQ continues after τ 3 cycles. And holds the value 1 (FIG. 8 (e)).

また、前述のようにτサイクルにおいてクロック抑
止信号CLKSPが発生されることにより、τ以降のクロ
ックの発生を抑止されて、τサイクル以降のメモリア
クセス制御回路30の制御動作は、一時中断される(第8
図(n)及び(a))。
Further, as described above, the generation of the clock after τ 4 is suppressed by the generation of the clock suppression signal CLKSP in the τ 3 cycle, and the control operation of the memory access control circuit 30 after the τ 4 cycle is temporarily suspended. Done (8th
(N) and (a)).

キャッシュメモリ24にミスヒットしたことにより、メ
モリアクセス制御回路30の制御動作が一時中断している
間に、MMインタフェースコントローラ21は、図示しない
メインメモリから、ミスヒットしたデータをリードし、
データバスDBを経由してプロセッサ26に転送するととも
に、キャッシュメモリ24にこのリードデータを登録し、
そのアドレス等のタグ情報をディレクトリメモリ22に登
録する処理を行う。このデータ転送処理は、τ〜τ
サイクルの間でおこなわれる。
While the control operation of the memory access control circuit 30 is temporarily suspended due to the miss hit in the cache memory 24, the MM interface controller 21 reads the miss hit data from the main memory (not shown),
While transferring to the processor 26 via the data bus DB, register this read data in the cache memory 24,
A process of registering tag information such as the address in the directory memory 22 is performed. This data transfer process is performed by τ 4 to τ 6
It takes place between cycles.

メインメモリからのデータリードは、ブロック単位で
行われ、メモリアクセス要求信号MRQに対するミスヒ
ットしたデータを含む複数ワード(図ではD−1〜D
−4の4ワード)がリードされて、プロセッサ26及び
キャッシュメモリ24に転送される(第8図(g))。
Data read from the main memory is performed in block units, and a plurality of words (in the figure, D-1 to D in the figure) including the data hit to the memory access request signal MRQ are hit.
-4 words) are read and transferred to the processor 26 and the cache memory 24 (FIG. 8 (g)).

メインメモリより各ブロック単位のデータがリードさ
れるときは、MMインタフェースコントローラ21からデー
タワードD−1〜D−4に対応して、ブロックリー
ド信号BLKRD1〜BLKRD4が、メモリアクセス制御回路30に
送出されるが、第8図(h)及び(i)には、ブロック
リード信号BLKRD3及びBRKRD4が示されている。
When data of each block unit is read from the main memory, block read signals BLKRD1 to BLKRD4 are sent from the MM interface controller 21 to the memory access control circuit 30 corresponding to the data words D-1 to D-4. However, block read signals BLKRD3 and BRKRD4 are shown in FIGS. 8 (h) and (i).

最初のデータD−1が転送された時点でプロセッサ
26は次の処理に移れるので、メモリアクセス制御回路30
のクロックCLKの抑止を止め、その制御を再開させてよ
い。そこで、MMインタフェースコントローラ21は、スタ
ート信号STARTを1(オン)にする(第8図(p)のτ
)。
Processor when the first data D-1 is transferred
Since 26 can move to the next processing, the memory access control circuit 30
The control of the clock CLK may be stopped and its control may be restarted. Therefore, the MM interface controller 21 sets the start signal START to 1 (ON) (τ in FIG. 8 (p)).
7 ).

メモリアクセス制御回路30は、スタート信号STARTが
1になると、次のτサイクルでクロック抑止信号CLKS
Pを0にして、クロックCLKを再開させる(第8図(a)
及び(n)のτのサイクル)。
When the start signal START becomes 1, the memory access control circuit 30 causes the clock inhibition signal CLKS in the next τ 8 cycle.
The clock CLK is restarted by setting P to 0 (Fig. 8 (a)).
And τ 8 cycles of (n)).

ミスヒットデータの転送が終了した時点、すなわちデ
ータD−4が転送された時点(τ11サイクルの終了時
点)で、ステージ遷移を抑止する必要がなくなり、次の
τ12サイクルからステージ遷移を開始して差支えない。
When the transfer of the mishit data is completed, that is, when the data D-4 is transferred (the end of the τ 11 cycle), it is not necessary to suppress the stage transition, and the stage transition is started from the next τ 12 cycle. It doesn't matter.

しかし、メモリアクセス制御回路30は、ブロックリー
ドの3ワード目のデータD−3の転送期間を示すブロ
ックリード信号BLKRD3がτ10でオンになると、次のτ11
よりも1サイクル遅れた次のτ12サイクルでステージ遷
移抑止信号STINHを0(オフ)にする(第8図(l)、
なお、τ11よりも11サイクル遅らせる理由については、
後に説明する)。
However, when the block read signal BLKRD3 indicating the transfer period of the data D-3 of the third word of the block read is turned on at τ 10 , the memory access control circuit 30 makes the next τ 11
The stage transition inhibition signal STINH is set to 0 (off) in the next τ 12 cycle which is delayed by 1 cycle from the above (FIG. 8 (l),
The reason for delaying 11 cycles after τ 11 is:
I'll explain later).

これにより、メモリアクセス要求信号MRQに関する
ステージ処理である第1ステージSTG1はτ12サイクル
までオン状態を維持し続け、キャッシュメモリ24に対す
るヒット判定が可能になったτ12で有効なヒット判定が
行われ、τ13サイクルにおいて第2ステージSTG2が正
常に実行される(第8図(d),(e),(j),
(k))。
As a result, the first stage STG1, which is a stage process related to the memory access request signal MRQ, remains on for up to τ 12 cycles, and a valid hit determination is performed at τ 12, which enables the hit determination to the cache memory 24. , Τ 13 cycles, the second stage STG2 is normally executed (FIGS. 8 (d), (e), (j),
(K)).

τ13サイクルでは、前述のτサイクルの場合と同様
に、メモリアクセス要求信号MRQに対する第2サイク
ルの処理(第2ステージSTG2)と次のメモリアクセス
要求信号MRQ2の第1サイクルの処理(第1ステージST
G1)とが並行して行われる(第8図(d),(e),
(j),(k))。
In the τ 13 cycle, similarly to the case of the τ 3 cycle described above, the second cycle processing (second stage STG2) for the memory access request signal MRQ and the first cycle processing (first stage) for the next memory access request signal MRQ2 (first Stage ST
G1) is performed in parallel (Figs. 8 (d), (e),
(J), (k)).

次に、τ11サイクルより1サイクル遅れた次のτ12
イクルでステージ遷移抑止信号STINHを0(オフ)にす
る理由を、第9図を参照して説明する。
Next, the reason why the stage transition inhibition signal STINH is set to 0 (OFF) in the next τ 12 cycle which is one cycle behind the τ 11 cycle will be described with reference to FIG.

第9図は、第8図と同じく動作タイミングチャートを
示したもので,(a)CLK〜(p)STARTの各記号の意味
及びτサイクルまでの動作内容は、第8図の動作内容
と同じである。
FIG. 9 shows an operation timing chart similar to FIG. 8. The meaning of each symbol of (a) CLK to (p) START and the operation contents up to τ 8 cycle are the same as those of FIG. Is the same.

ただし、第8図(h)及び(i)には、ブロックリー
ド信号BLKRD2及びBLKRD3が示されている。続く(q)の
PINVLはインバリデーション要求信号であり、キャッシ
ュメモリ24に登録されたデータを指定してそれを無効に
することを要求する信号である。このインバリデーショ
ン要求信号PINVLはMMインタフェースコントローラ21の
監視ディレクトリ211により発生され、メモリアクセス
制御回路30に送られる。
However, block read signals BLKRD2 and BLKRD3 are shown in FIGS. 8 (h) and (i). Continued (q)
PINVL is an invalidation request signal, and is a signal requesting that data registered in the cache memory 24 be specified and that it be invalidated. The invalidation request signal PINVL is generated by the monitoring directory 211 of the MM interface controller 21 and sent to the memory access control circuit 30.

また、次の(r)のINVLは、先に説明したように、キ
ャッシュメモリ24に登録されているデータを無効化する
インバリデーション信号であり、このインバリデーショ
ン信号を受けると、ディレクトリメモリ22にある無効化
対象データ領域に対応する領域に無効フラグ(図示せ
ず)が立てられる。
Further, the INVL of the next (r) is an invalidation signal for invalidating the data registered in the cache memory 24, as described above, and when the invalidation signal is received, it is stored in the directory memory 22. An invalid flag (not shown) is set in the area corresponding to the invalidation target data area.

メモリアクセス要求信号MRQのデータD−4の転
送がτ11で終了したとき、次のτ12サイクルにおいてメ
モリアクセス要求信号MRQのデータ転送を行おうとす
る場合は、メモリアクセス制御回路30は、ブロックリー
ドの2ワード目のデータD−2の転送期間を示すブロ
ックリード信号BLKRD2がτでオンになると、次のτ10
よりも1サイクル遅れた次のτ11サイクルでステージ遷
移抑止信号STINHを0(オフ)にする(第9図
(1))。
When the transfer of the data D-4 of the memory access request signal MRQ ends at τ 11 , when the data transfer of the memory access request signal MRQ is to be performed in the next τ 12 cycle, the memory access control circuit 30 performs block read. When the block read signal BLKRD2 indicating the transfer period of the data D-2 of the second word of is turned on at τ 9 , the next τ 10
The stage transition inhibition signal STINH is set to 0 (OFF) in the next τ 11 cycle which is delayed by 1 cycle from the above (STEP (1) in FIG. 9).

これにより、メモリアクセス要求信号MRQに関する
ステージ処理である第1ステージSTG1はτ11サイクル
までオン状態を維持し続け、キャッシュメモリ24に対す
るヒット判定が可能になったτ12で有効なヒット判定が
行われ、τ12サイクルにおいて第2ステージSTG2が正
常に実行される(第8図(d),(e),(j),
(k))。
As a result, the first stage STG1, which is a stage process related to the memory access request signal MRQ, remains in the ON state until τ 11 cycles, and the hit determination for the cache memory 24 becomes possible, and a valid hit determination is performed at τ 12. , Τ 12 cycle, the second stage STG2 is normally executed (FIGS. 8 (d), (e), (j),
(K)).

τ12サイクルでは、前述のτサイクルの場合と同様
に、メモリアクセス要求信号MRQに対する第2サイク
ルの処理(第2ステージSTG2)と次のメモリアクセス
要求信号MRQの第1サイクルの処理(第1ステージSTG
1)とが並行して行われる(第8図(d),(e),
(j),(k))。
In the τ 12 cycle, similar to the case of the τ 3 cycle described above, the second cycle processing (second stage STG2) for the memory access request signal MRQ and the first cycle processing (first stage) for the next memory access request signal MRQ (first Stage STG
And 1) are performed in parallel (Figs. 8 (d), (e),
(J), (k)).

ところが、もし、メモリアクセス要求信号MRQにつ
いてのデータ転送が行われるτ12サイクルの前に、他プ
ロセッサ又はDMAにより自己のキャッシュメモリ24のデ
ィレクトリメモリ22に登録されているメインメモリ領域
に対するライトが行われたとすると、監視ディレクトリ
211は、τ10においてインバリデーション要求信号PINVL
を発生して、メモリアクセス制御回路30に送る。
However, if the memory transfer request signal MRQ is transferred to the main memory area registered in the directory memory 22 of its own cache memory 24 by another processor or DMA before τ 12 cycles before the data transfer is performed. If so, watched directory
211 indicates the validation request signal PINVL at τ 10 .
Is generated and sent to the memory access control circuit 30.

インバリデーション要求はステージ処理に常に優先し
て行う必要があるので、メモリアクセス制御回路30は、
インバリデーション要求信号PINVLを受けると、次のτ
11サイクルにおいてインバリデーション信号INVLを発生
し、ディレクトリメモリ22をインバリデートする。
Since the invalidation request must always be given priority over the stage processing, the memory access control circuit 30
When the validation request signal PINVL is received, the next τ
In 11 cycles, an invalidation signal INVL is generated to invalidate the directory memory 22.

このため、プロセッサ26は、τ11サイクルにおけるメ
モリアクセス要求信号MRQの第1ステージSTG1の処
理が実行できなくなる。この結果、キャッシュメモリ24
に対するヒット判定が不可能になり、以降の各処理も実
行不可能になる。
Therefore, the processor 26 cannot execute the processing of the first stage STG1 of the memory access request signal MRQ in the τ 11 cycle. As a result, the cache memory 24
It becomes impossible to make a hit determination with respect to, and the subsequent processing becomes impossible.

そこで、このようなインバリデーションが発生して
も、キャッシュメモリ24及びディレクトリメモリ22に対
するインバリデーション処理を行った後に、それまでの
ステージ処理が正常に実行できるようにするため、従来
のメモリアクセス制御では、第8図で説明したように、
ミスヒット時のデータD−1〜の転送が終了したτ
11の次のτ12サイクルからステージ遷移抑止信号STINH
をオフにして、ステージ処理を再開させるようにしてい
る。
Therefore, even if such an invalidation occurs, in order to enable the stage processing up to that point to be normally executed after performing the invalidation processing on the cache memory 24 and the directory memory 22, the conventional memory access control is performed. , As explained in FIG.
The transfer of data D-1 to D-1 at the time of a mishit has ended
Stage transition suppression signal STINH from τ 12 cycle next to 11
Is turned off and the stage processing is restarted.

これにより、もし、τ10サイクルにおいてインバリデ
ーション要求信号PINVLが発生しても、次のτ11サイク
ルでディレクトリメモリ22に対する所定のインバリデー
ション処理を行い、続くτ12サイクル以降において、先
に第8図で説明したように、それまでの各ステージ処理
が正常に実行される。
As a result, even if the invalidation request signal PINVL is generated in the τ 10 cycle, a predetermined invalidation process is performed on the directory memory 22 in the next τ 11 cycle, and after the subsequent τ 12 cycle, FIG. As described above, each stage processing up to that point is normally executed.

なお、第9図の(k)に示すヒットディレイ信号HITD
は、ヒット信号HITを1サイクルディレイした信号であ
り、第1ステージ有効信号STG1Vは、第1ステージ処理
が有効であったことを指示する信号である。両信号はメ
モリアクセス制御回路30の内部で発生され、この中で、
ステージ1有効信号STG1Vとヒットディレイ信号HITD
は、ステージ遷移抑止信号STINHの発生に使用されるも
のである。
The hit delay signal HITD shown in (k) of FIG.
Is a signal obtained by delaying the hit signal HIT by one cycle, and the first stage effective signal STG1V is a signal indicating that the first stage processing was effective. Both signals are generated inside the memory access control circuit 30, in which
Stage 1 valid signal STG1V and hit delay signal HITD
Is used to generate the stage transition inhibition signal STINH.

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

従来のメモリアクセス制御は、前述のように、キャッ
シュメモリにミスヒットしたときは、メインメモリから
ミスヒットデータをリードして転送するときにキャッシ
ュメモリに対するインバリデーションが発生しても、メ
モリアクセス制御及びステージ制御が正常に実行できる
ようにするため、ミスヒットデータの転送が終了したサ
イクルよりも1サイクル遅らせて、ステージ処理を再開
させるようにしていた。
As described above, the conventional memory access control is such that when a miss hit occurs in the cache memory, even if an invalidation occurs in the cache memory when the miss hit data is read from the main memory and transferred, In order to allow the stage control to be executed normally, the stage processing is restarted with a delay of one cycle from the cycle in which the transfer of the mishit data is completed.

このため、キャッシュメモリに対してミスヒットした
ときにインバリデーションが発生する確率が通常低いに
もかかわらず、ミスヒット時は常に余分の1サイクルが
挿入され結果、以降の処理がその分遅れ、全体のメモリ
アクセス処理効率で低下するという問題があった。
For this reason, although the probability that invalidation will normally occur when a miss hits the cache memory, an extra 1 cycle is always inserted at the time of a miss hit, and as a result, subsequent processing is delayed by that amount, and the entire process is delayed. However, there was a problem that the efficiency of memory access processing deteriorates.

本発明は、キャッシュメモリにミスヒットした時は、
インバリデーションが発生したときのみミスヒットデー
タのデータ転送終了後に再開されるステージ処理の開始
サイクルを送らせることにより、メモリアクセス処理効
率を向上させるように改良したメモリアクセス制御回路
を提供することを目的とする。
The present invention, when there is a miss hit in the cache memory,
An object of the present invention is to provide an improved memory access control circuit that improves the efficiency of memory access processing by sending the start cycle of stage processing that is restarted after the end of data transfer of mishit data only when invalidation occurs. And

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

前述の課題を解決するために本発明が採用した手段
を、第1図を参照して説明する。第1図は、本発明の基
本構成をブロックで示したものである。
Means adopted by the present invention to solve the above-mentioned problem will be described with reference to FIG. FIG. 1 is a block diagram showing the basic configuration of the present invention.

第1図において、10は全体のメモリアクセス制御回路
であり、第1サイクルでアドレスを送出し、第2サイク
ルで次のアクセスの第1サイクルとオーバラップしてデ
ータ転送を行い、第1サイクルで送出したアドレスと該
アドレスによりタグメモリをアクセスして得られるヒッ
ト情報及びヒットブロック番号情報とを第2サイクルの
間保持し、ヒット情報がヒットを示した場合は、第2サ
イクルで前記保持されたブロック番号とアドレスにより
キャッシュメモリ(図示せず)をアクセスし、ミスヒッ
トした場合は、メインストレージより前記アドレスによ
りブロックリードして、2サイクルでキャッシュメモリ
をアクセスする。
In FIG. 1, reference numeral 10 denotes an entire memory access control circuit, which sends out an address in the first cycle, performs data transfer in the second cycle by overlapping with the first cycle of the next access, and in the first cycle. The sent address and the hit information and hit block number information obtained by accessing the tag memory by the address are held for the second cycle, and if the hit information indicates a hit, the held information is held in the second cycle. A cache memory (not shown) is accessed by a block number and an address. When a mishit occurs, a block read is performed by the address from the main storage and the cache memory is accessed in two cycles.

11はステージ遷移抑止信号発生回路(以下、STINH発
生回路で示す)であり、第1サイクルで出力されたヒッ
ト情報がミスヒットを示した場合に、第2サイクルのス
テージ遷移を抑止するステージ遷移抑止信号STINHを発
生する処理を行う。
Reference numeral 11 denotes a stage transition suppression signal generation circuit (hereinafter referred to as STINH generation circuit), which suppresses the stage transition of the second cycle when the hit information output in the first cycle indicates a mishit. Performs processing to generate the signal STINH.

12はメモリアクセス要求許可信号発生回路(以下、MR
QOK発生回路で示す)であり、ミスヒット時はメモリア
クセス要求許可信号MRQOK(MRQOK信号で示す)をオフに
し、メインストレージより前記アドレスによりリードさ
れた最後のデータがキャッシュメモリに到達する直前の
サイクルで前記MRQOK信号をオフからオンにする処理を
行う。MRQOK信号については、先に説明したとおりであ
る。
12 is a memory access request permission signal generation circuit (hereinafter, MR
The cycle just before the last data read from the main storage by the above address to the cache memory is turned off by turning off the memory access request enable signal MRQOK (shown by the MRQOK signal) at the time of a mishit. The process of turning the MRQOK signal from off to on is performed. The MRQOK signal is as described above.

13はステージ遷移抑止停止回路(以下、STINH停止回
路で示す)であり、前記MRQOK信号がオフからオンにな
ったことを検出して、STINH発生回路11の発生するステ
ージ遷移抑止信号STINHを停止させる処理を行う。
Reference numeral 13 is a stage transition inhibition stop circuit (hereinafter referred to as STINH stop circuit), which detects that the MRQOK signal is turned from OFF to ON and stops the stage transition inhibition signal STINH generated by the STINH generation circuit 11. Perform processing.

14はメモリアクセス要求許可抑止回路(以下、MRQOK
信号抑止回路で示す)であり、MRQOK信号をオンにする
サイクルにおいて、自キャッシュメモリの無効化要求が
なされた場合に、前記サイクルにおいて無効化処理を行
うために、MRQOK発生回路12が発生するMRQOK信号がオン
になるのを抑止する処理を行う。
14 is a memory access request permission suppression circuit (hereinafter, MRQOK
MRQOK generated by the MRQOK generation circuit 12 in order to perform invalidation processing in the cycle when a request to invalidate its own cache memory is made in the cycle in which the MRQOK signal is turned on. Performs processing to prevent the signal from turning on.

〔作 用〕(Operation)

本発明の作用を、(1)キャッシュメモリにヒットし
た場合、(2)キャッシュメモリにミスヒットし、かつ
インバリデーション要求のない場合及び(3)キャッシ
ュメモリにミスし、かつインバリデーション要求のある
場合に分けてそれぞれ説明する。
The effect of the present invention is (1) when the cache memory is hit, (2) when the cache memory is miss-hit and there is no validation request, and (3) when the cache memory is missed and there is an invalidation request. Each will be explained separately.

(1) キャッシュメモリにヒットした場合 キャッシュメモリにヒットする正常動作時では、メモ
リアクセス制御回路10により、2サイクルでメモリアク
セス制御が行われる。
(1) When the cache memory is hit During the normal operation of hitting the cache memory, the memory access control circuit 10 controls the memory access in two cycles.

すなわち、第1サイクルで図示しないメインメモリを
アクセスするアドレスを送出し、第2サイクルで次のア
クセスの第1サイクルとオーバラップしてメインメモリ
からのリードデータ転送を行う。
That is, in the first cycle, an address for accessing the main memory (not shown) is sent out, and in the second cycle, the read data is transferred from the main memory while overlapping with the first cycle of the next access.

第1サイクルで送出したアドレスと該アドレスにより
ディスクトリメモリをアクセスし、得られるヒット情報
とアドレス情報(例えば、ヒットブロック番号情報)と
を第2サイクルの間保持する。
The address sent in the first cycle and the disk memory are accessed by the address, and the obtained hit information and address information (for example, hit block number information) are held for the second cycle.

ヒット情報がキャッシュメモリに対するヒットを示し
た場合は、第2サイクルで前記保持されたアドレス情報
によりキャッシュメモリ(図示せず)をアクセスして、
所定のデータをリードする。
If the hit information indicates a hit to the cache memory, the cache memory (not shown) is accessed by the held address information in the second cycle,
Read the specified data.

以下、各アクセスについて、現アクセスの第2サイク
ル(データ転送ステージ)と次のアクセスの第1サイク
ル(アドレス送出ステージ)とがオーバラップする関係
で、前述の2サイクルのメモリアクセス制御が繰り返さ
れる。
Hereinafter, for each access, the above-mentioned two-cycle memory access control is repeated in a relationship that the second cycle of the current access (data transfer stage) and the first cycle of the next access overlap (address transmission stage).

(2) キャッシュメモリにミスヒットし、インバリデ
ーション要求がない場合 STINH発生回路11は、第1サイクルで出力されたビッ
ト情報がミスヒットを示した場合に、第2サイクルのス
テージ遷移を抑止するステージ遷移抑止信号STINHを発
生して、図示しないプロセッサが第2サイクルで行うス
テージ処理が遷移しないようにする。
(2) When there is a miss hit in the cache memory and there is no validation request The STINH generation circuit 11 is a stage that suppresses the stage transition of the second cycle when the bit information output in the first cycle indicates a miss hit. A transition inhibition signal STINH is generated to prevent the stage processing performed by the processor (not shown) in the second cycle from transitioning.

一方、MRQOK発生回路12は、ミスヒット時はMRQOK信号
をオフにして、メモリアクセス制御回路10の以降のメモ
リアクセス制御を中断させる。
On the other hand, the MRQOK generation circuit 12 turns off the MRQOK signal at the time of a mishit to interrupt the subsequent memory access control of the memory access control circuit 10.

メモリアクセス制御回路10におけるメモリアクセス制
御が中断している間に、プロセッサは、メインメモリよ
り前記アドレス情報によりミスヒットデータを例えばブ
ロック単位でリードする処理が行われる。
While the memory access control in the memory access control circuit 10 is suspended, the processor performs a process of reading the mishit data from the main memory according to the address information, for example, in block units.

MRQOK発生回路12は、このリードされた最後のデータ
がキャッシュメモリに到達する直前のサイクルで前記MR
QOK信号をオフからオンにする。
The MRQOK generation circuit 12 outputs the MR in the cycle immediately before the last read data reaches the cache memory.
Turn the QOK signal from off to on.

STINH停止回路13は、MRQOK発生回路12の発生する前記
MRQOK信号がオフからオンになったことを検出して、STI
NH発生回路11の発生するステージ遷移抑止信号STINHを
停止させる。
The STINH stop circuit 13 is the same as the one generated by the MRQOK generating circuit 12.
Detecting that the MRQOK signal has changed from OFF to ON, the STI
The stage transition inhibition signal STINH generated by the NH generation circuit 11 is stopped.

これにより、メインメモリからミスヒットデータのブ
ロックリードが終了したサイクルの次のサイクルから直
ちに次のアクセスの第1サイクルの処理が実行される。
As a result, the processing of the first cycle of the next access is executed immediately after the cycle following the cycle in which the block read of the mishit data from the main memory is completed.

このように、キャッシュメモリにミスヒットしたがイ
ンバリデーション要求がない場合は、メインメモリから
ミスヒットデータのリードが終了すると、従来方式のよ
うに次の1サイクルを開けることなく、直ちに次のアク
セスの第1サイクルの処理が実行されるので、無駄なサ
イクルが無くなり、メモリアクセス処理効率を向上させ
ることができる。
In this way, when a miss hit is made in the cache memory but there is no invalidation request, when the read of the miss hit data from the main memory is completed, the next access is immediately executed without opening the next one cycle as in the conventional method. Since the processing of the first cycle is executed, useless cycles are eliminated and the memory access processing efficiency can be improved.

(3) キャッシュメモリにミスヒットし、インバリデ
ーション要求がある場合 キャッシュメモリにミスヒットし、メインメモリから
ミスヒットデータをリードして転送するときにキャッシ
ュメモリに対するインバリデーション要求が発生した場
合、すなわち、MRQOK信号が再びオンになるサイクルに
おいて自キャッシュメモリの無効化要求がなされた場合
は、メモリアクセス制御回路10のMRQOK抑止回路14は、
前記サイクルにおいて無効化処理を行うために、前記MR
QOK発生回路12が発生するMRQOK信号がオンになるのを抑
止する処理を行う。
(3) When there is a miss hit in the cache memory and there is an invalidation request When a miss hit occurs in the cache memory and an invalidation request for the cache memory occurs when the miss hit data is read and transferred from the main memory, that is, When a request to invalidate the own cache memory is made in the cycle in which the MRQOK signal is turned on again, the MRQOK suppression circuit 14 of the memory access control circuit 10
In order to perform invalidation processing in the cycle, the MR
Processing is performed to prevent the MRQOK signal generated by the QOK generation circuit 12 from turning on.

これにより、メインメモリからミスヒットデータのブ
ロックリードが終了したサイクルの次のサイクルにおい
ては、次のアクセスの第1サイクルの処理が抑止され
て、無効化対象となったキャッシュメモリ領域に関する
インバリデーション処理が行われる。
As a result, in the cycle next to the cycle in which the block read of the mishit data from the main memory is completed, the processing of the first cycle of the next access is suppressed, and the invalidation processing regarding the cache memory area that is the invalidation target is performed. Is done.

インバリデーション処理が終了すると、次のサイクル
から次のアクセスに対する処理が正常に実行される。
When the invalidation process is completed, the process for the next access is normally executed from the next cycle.

このように、キャッシュメモリにミスヒットしたが、
インバリデーション要求があった場合にのみ、メインメ
モリからミスヒットデータのブロックリードが終了する
と、従来方式のように次の1サイクルが開けられてイン
バリデーション処理が行われることになる。
As you can see, there was a miss in the cache memory,
When the block read of the mishit data from the main memory is completed only when there is an invalidation request, the next cycle is opened and the invalidation processing is performed as in the conventional method.

なお、DMA転送の場合は連続してインバリデーション
要求が発生する場合があるが、その場合は、インバリデ
ーション要求が連続している間MRQOK発生回路12が発生
するMRQOK信号がオンになるのを抑止する処理が行われ
る。
In the case of DMA transfer, invalidation requests may be generated continuously, but in that case, it is possible to prevent the MRQOK signal generated by the MRQOK generation circuit 12 from turning on while the invalidation requests are continuous. Processing is performed.

これにより、インバリデーション要求数に対応して、
それらのインバリデーション処理を行うサイクルが挿入
されて、連続したインバリデーション要求に対するイン
バリデーション処理が正常に行うことができる。
As a result, according to the number of validation requests,
A cycle for performing the invalidation process is inserted, and the invalidation process for continuous invalidation requests can be normally performed.

以上のように、本発明は、キャッシュメモリにミスヒ
ット時には、インバリデーション要求が発生したときの
みミスヒットデータのデータ転送終了後、1サイクル遅
れてステージ処理を再開させるようにしたので、インバ
リデーション要求のないときは無駄なサイクルが無くな
って、メモリアクセス処理効率を向上させることができ
る。
As described above, in the present invention, when a miss hit occurs in the cache memory, the stage processing is restarted with a delay of one cycle after the end of the data transfer of the miss hit data only when the invalidation request occurs. When there is no, there is no wasted cycle, and the memory access processing efficiency can be improved.

また、インバリデーション要求個数に対応するサイク
ル個数だけ遅れてステージ処理を再開させるようにした
ので、連続してインバリデーション要求が発生しても、
これらのインバリデーション処理を正常に処理できると
ともに、中断された各アクセス要求に対するステージ処
理を正常に再開させることができる。
In addition, since the stage processing is restarted with a delay of the number of cycles corresponding to the number of validation requests, even if invalidation requests occur continuously,
These invalidation processes can be normally processed, and the stage process for each interrupted access request can be normally restarted.

〔実施例〕〔Example〕

本発明の一実施例を、第2図乃至第6図を参照して説
明する。第2図は本発明の一実施例のメモリアクセス制
御回路が使用されるメモリアクセス制御システムの構成
の説明図、第3図は本発明の一実施例の構成の説明図、
第4図は同実施例のインバリデーション要求がないとき
の動作タイミングチャート、第5図は同実施例のインバ
リデーション要求があったときの動作タイミングチャー
トである。第6図のステージ遷移説明図については先に
説明したとおりである。
An embodiment of the present invention will be described with reference to FIGS. FIG. 2 is an explanatory diagram of a configuration of a memory access control system in which a memory access control circuit of an embodiment of the present invention is used, and FIG. 3 is an explanatory diagram of a configuration of an embodiment of the present invention.
FIG. 4 is an operation timing chart of the same embodiment when there is no validation request, and FIG. 5 is an operation timing chart of the same embodiment when there is an invalidation request. The stage transition explanatory diagram of FIG. 6 is as described above.

(A)実施例の構成 第2図において、メモリアクセス制御回路10を除いた
他の構成は、第7図で説明した従来のメモリアクセス制
御システムの構成と共通するので、共通する構成要求部
分には同じ符号を付して説明する。
(A) Configuration of the Embodiment In FIG. 2, the configuration other than the memory access control circuit 10 is the same as the configuration of the conventional memory access control system described in FIG. Will be described with the same reference numerals.

すなわち、21はメインメモリインタフェースコントロ
ーラ(MMインタフェースコントローラ)であり、図示し
ないメインメモリとメモリアクセス制御回路とのインタ
フェース制御を行う。211はMMインタフェースコントロ
ーラ21に設けられた監視ディレクトリであり、自己のキ
ャッシュのディレクトリに登録されているメインメモリ
領域への、他のプロセッサ又はDMA(直接記憶アクセ
ス)によるライトを監視する。
That is, reference numeral 21 is a main memory interface controller (MM interface controller), which performs interface control between a main memory (not shown) and a memory access control circuit. Reference numeral 211 denotes a monitoring directory provided in the MM interface controller 21, which monitors a write to the main memory area registered in the directory of its own cache by another processor or DMA (direct memory access).

MABはMMインタフェースコントローラ21とメインメモ
リ間のアドレスバスであり、MADはMMインタフェースコ
ントローラ21とメインメモリ間のデータバスである。
MAB is an address bus between the MM interface controller 21 and the main memory, and MAD is a data bus between the MM interface controller 21 and the main memory.

22はディレクトリメモリであり、キャッシュメモリに
登録されているデータのアドレス情報やそのデータが有
効か無効か指示する情報が登録される。
Reference numeral 22 denotes a directory memory in which address information of data registered in the cache memory and information indicating whether the data is valid or invalid are registered.

HITは、キャッシュメモリ24にヒットしたことを指示
するヒット信号であり、ヒットしたときは1を指示し、
ミスヒットしたときは0を指示する。
HIT is a hit signal which indicates that the cache memory 24 has been hit, and when hit, indicates 1 and
If there is a mis-hit, specify 0.

23はヒット番号保持レジスタ(HITレジスタで示す)
であり、第1サイクルでディレクトリメモリ22から読み
出されたヒット情報が格納される。
23 is a hit number holding register (indicated by the HIT register)
The hit information read from the directory memory 22 in the first cycle is stored.

24はキャッシュメモリであり、バイポーラトランジス
タ等の高速メモリ素子で構成され、アクセスされたメイ
ンメモリのデータが一時登録される。
A cache memory 24 is composed of a high speed memory device such as a bipolar transistor, and temporarily stores the accessed data of the main memory.

25はキャッシュアドレス保持レジスタ(CMAレジス
タ)であり、第1サイクルで送出されたキャッシュメモ
リ24をアクセスするアドレスを格納して、次の第2サイ
クルまで保持する。
A cache address holding register (CMA register) 25 stores the address for accessing the cache memory 24 sent in the first cycle, and holds it until the next second cycle.

26はプロセッサであり、各サイクルにおけるステージ
処理を実行するとともに、システム全体の動作を制御す
る。
A processor 26 executes a stage process in each cycle and controls the operation of the entire system.

261はプロセッサ26に設けられたアドレスレジスタで
あり、メインメモリ、ディレクトリメモリ22、キャッシ
ュメモリ24をアクセスするアドレスが格納される。
An address register 261 is provided in the processor 26, and stores addresses for accessing the main memory, the directory memory 22, and the cache memory 24.

262はプロセッサ26に設けられたデータレジスタであ
り、キャッシュメモリ24又はメインメモリから読み出さ
れたデータが格納される。
A data register 262 is provided in the processor 26 and stores data read from the cache memory 24 or the main memory.

ABはMMインタフェースコントローラ21とプロセッサ26
間のアドレスバスであり、CBは各種制御信号が転送され
る制御信号バスであり、DBはMMインタフェースコントロ
ーラ21とプロセッサ26間のデータを転送するデータバス
である。
AB is MM interface controller 21 and processor 26
CB is a control signal bus for transferring various control signals, and DB is a data bus for transferring data between the MM interface controller 21 and the processor 26.

INVLは、キャッシュメモリ24に登録されているデータ
を無効化するインバリデーション信号であり、このイン
バリデーション信号を受けると、ディレクトリメモリ22
にある無効化対象データ領域に対応する領域に無効フラ
グ(図示せず)が立てられる。
INVL is an invalidation signal that invalidates the data registered in the cache memory 24. When this invalidation signal is received, the directory memory 22
An invalidation flag (not shown) is set in the area corresponding to the invalidation target data area.

メモリアクセス制御回路10は、MMインタフェースコン
トローラ21内に設けられ、プロセッサ26からの指令を受
けて、メインメモリに対するメモリアクセス制御を行
う。メモリアクセス制御回路10の動作はクロックCLK0に
同期して行われるが、このクロックCLK0はシステムクロ
ックSCLKに同期して発生される。
The memory access control circuit 10 is provided in the MM interface controller 21, receives a command from the processor 26, and controls the memory access to the main memory. The operation of the memory access control circuit 10 is performed in synchronization with the clock CLK0, which is generated in synchronization with the system clock SCLK.

また、このメモリアクセス制御回路10の発生する各種
制御信号は、第8図及び第9図の従来のメモリアクセス
制御回路の動作タイミングチャートで説明したものと同
じであるが、次のメモリアクセス制御回路の一実施例の
構成の項においても、必要に応じて適宜説明する。
The various control signals generated by the memory access control circuit 10 are the same as those described in the operation timing charts of the conventional memory access control circuits of FIGS. 8 and 9, but the following memory access control circuit Also in the section of the configuration of the embodiment, the description will be made as needed.

次に、第3図を参照して、本発明のメモリアクセス制
御回路の1実施例の構成について説明する。
Next, the configuration of one embodiment of the memory access control circuit of the present invention will be described with reference to FIG.

第3図において、STINH発生回路11、MRQOK発生回路1
2、STINH停止回路13、MRQOK抑止回路14については、第
1図で説明したとおりである。
In FIG. 3, STINH generation circuit 11 and MRQOK generation circuit 1
2, STINH stop circuit 13, and MRQOK suppression circuit 14 are as described in FIG.

STINH発生回路11は、AND回路111及びJKフリップフロ
ップ(以下、JKFFで示す)112で構成される。AND回路11
1には、後で説明する第1ステージ信号STG1*とHITD信
号とSTGIV信号のアンド出力を入力し、そのアンド出力
をJKFF112のJ端子に入力する。
The STINH generation circuit 11 is composed of an AND circuit 111 and a JK flip-flop (hereinafter referred to as JKFF) 112. AND circuit 11
The AND output of the first stage signal STG1 *, the HITD signal, and the STGIV signal, which will be described later, is input to 1, and the AND output is input to the J terminal of the JKFF112.

JKFF112はシステムクロックに同期したクロックCLK0
に同期して動作し、そのK端子には、MRQOK抑止回路14
からのMRQOK停止信号が入力され、出力端子Qからはス
テージ遷移抑止信号STINHが発生され、反転出力端子
からは反転されたステージ遷移抑止信号*STINHが発生
される。
JKFF112 is a clock CLK0 synchronized with the system clock
, Which operates in synchronism with the MRQOK suppression circuit 14
The MRQOK stop signal is input, the output terminal Q generates the stage transition inhibition signal STINH, and the inverted output terminal generates the inverted stage transition inhibition signal * STINH.

MRQOK発生回路12は、インバータ121、AND回路122及び
JKFF123で構成される。AND回路122には、インバータ121
で反転されたヒット信号HITと第1ステージ信号STG1が
入力され、そのアンド出力はJKFF123のJ端子に入力さ
れる。
The MRQOK generation circuit 12 includes an inverter 121, an AND circuit 122 and
Composed of JKFF123. The AND circuit 122 includes an inverter 121.
The hit signal HIT and the first stage signal STG1 inverted by are input, and the AND output is input to the J terminal of JKFF123.

JKFF123は後で説明するクロックCLK1に同期して動作
し、そのK端子には2番目のブロックリードを指示する
ブロックリード信号BLKRD2が入力され、その反転出力端
子にはMRQOK0信号が発生される。MRQOK0信号は、K端
子のブロックリード信号BLKRD2が1(オン)になったと
きに1(オン)になり、J端子の入力が1(オン)にな
ったときに0(オフ)になる。
The JKFF123 operates in synchronization with a clock CLK1 described later, a block read signal BLKRD2 for instructing the second block read is input to its K terminal, and an MRQOK 0 signal is generated at its inverted output terminal. The MRQOK 0 signal becomes 1 (on) when the block read signal BLKRD2 of the K terminal becomes 1 (on), and becomes 0 (off) when the input of the J terminal becomes 1 (on).

STINH停止回路13は、Dフリップフロップ(以下、DFF
で示す)131及びAND回路132で構成される。
The STINH stop circuit 13 is a D flip-flop (hereinafter, DFF).
131) and an AND circuit 132.

DFF131のD端子には、メモリアクセス要求許可信号MR
QOKが入力される。AND回路132には、DFF131の反転出力
端子の出力とメモリアクセス要求許可信号MRQOKが入
力され、そのアンド出力がSTINH発生回路112のK入力へ
入力される。この構成により、STINH停止回路13は、MRQ
OK抑止回路14からのMRQOK信号がオフからオンになった
のを検出してステージ遷移抑止停止信号(以下、STINH
停止信号で示す)を発生する。
The memory access request permission signal MR is connected to the D terminal of DFF131.
QOK is entered. The output from the inverting output terminal of the DFF 131 and the memory access request permission signal MRQOK are input to the AND circuit 132, and the AND output is input to the K input of the STINH generation circuit 112. With this configuration, the STINH stop circuit 13 is
When the MRQOK signal from the OK suppression circuit 14 is changed from OFF to ON, the stage transition suppression stop signal (hereinafter, STINH
Stop signal).

MRQOK抑止回路14はインバータ141及びAND回路142で構
成される。AND回路142には、MRQOK発生回路12のJKFF123
からのMRQOK0信号とインバータ141で反転されたインバ
リデーション要求信号PINVが入力され、インバリデーシ
ョン要求信号PINVが0(オフ)のとき開いて、MRQOK信
号が出力される。
The MRQOK suppression circuit 14 is composed of an inverter 141 and an AND circuit 142. The AND circuit 142 includes the JKFF123 of the MRQOK generation circuit 12.
Invalidation request signals PINV inverted by the MRQOK 0 signal and the inverter 141 from is inputted, open when invalidation request signal PINV is 0 (off), MRQOK signal is output.

次に、15はステージ信号発生回路であり、アンド・オ
ア回路151、DFF152、AND回路153、DFF154、AND回路155
及びDFF156で構成される。
Next, 15 is a stage signal generation circuit, and AND / OR circuit 151, DFF152, AND circuit 153, DFF154, AND circuit 155.
And DFF156.

アンド・オア回路151は、AND回路151a、151b及びオア
回路151cで構成される。AND回路151aには、MRQOK抑止回
路14からのMRQOK信号とSTINH発生回路11からの反転ステ
ージ遷移抑止信号*STINHが入力され、AND回路152bに
は、STINH発生回路11からのステージ遷移抑止信号STINH
とDFF152からの第1ステージ信号STG1が入力される。オ
ア回路151cは、アンド回路151a及び151bからの各アンド
出力が入力される。
The AND / OR circuit 151 includes AND circuits 151a and 151b and an OR circuit 151c. The AND circuit 151a receives the MRQOK signal from the MRQOK suppression circuit 14 and the inverted stage transition suppression signal * STINH from the STINH generation circuit 11, and the AND circuit 152b receives the stage transition suppression signal STINH from the STINH generation circuit 11.
And the first stage signal STG1 from the DFF152 is input. The OR circuit 151c receives the respective AND outputs from the AND circuits 151a and 151b.

DFF152はクロックCLK1に同期して動作し、そのD端子
には、アンド・オア回路151のオア回路151cのオア出力
が入力され、その出力端子Qからは第1ステージ信号ST
G1が発生される。
The DFF152 operates in synchronization with the clock CLK1, the OR output of the OR circuit 151c of the AND / OR circuit 151 is input to its D terminal, and the first stage signal ST is output from its output terminal Q.
G1 is generated.

AND回路153には、DFF152からのQ端子出力STG1とSTIN
H発生回路11からの反転ステージ遷移抑止信号*STINHが
入力される。
The AND circuit 153 has Q terminal outputs STG1 and STIN from the DFF152.
The inversion stage transition inhibition signal * STINH from the H generation circuit 11 is input.

DFF154はクロックCLK1に同期して動作し、そのD端子
には、AND回路153のアンド出力が入力され、その出力端
子Qからは第2ステージ信号STG2が発生される。
The DFF 154 operates in synchronization with the clock CLK1, the AND output of the AND circuit 153 is input to its D terminal, and the second stage signal STG2 is generated from its output terminal Q.

AND回路155には、DFF152からの第1ステージ信号STG1
とSTINH発生回路11からの反転ステージ遷移抑止信号*S
TINHが入力される。
The AND circuit 155 receives the first stage signal STG1 from the DFF152.
And inversion stage transition suppression signal * S from STINH generation circuit 11
TINH is entered.

DFF156はクロックCLK0に同期して動作し、そのD端子
には、AND回路155のアンド出力が入力され、その出力端
子Qからは第1ステージ有効信号STG1Vを発生する。
The DFF 156 operates in synchronization with the clock CLK0, the AND output of the AND circuit 155 is input to its D terminal, and the output terminal Q thereof generates the first stage enable signal STG1V.

16はHITD発生回路であり、DFF161及びAND回路162で構
成される。
Reference numeral 16 is an HITD generation circuit, which includes a DFF 161 and an AND circuit 162.

DFF161はクロックCLK1に同期して動作し、そのD端子
にはヒット信号HITが入力され、その反転出力端子か
らは、ヒット信号HITをクロックCLK1の1サイクル分遅
延した遅延ヒット信号HITDの反転信号である反転遅延ヒ
ット信号*HITDが発生される。
The DFF161 operates in synchronization with the clock CLK1, the hit signal HIT is input to its D terminal, and its inverted output terminal is an inverted signal of the delayed hit signal HITD delayed by one cycle of the clock CLK1. An inverted delayed hit signal * HITD is generated.

AND回路162には、DFF161からの反転遅延ヒット信号*
HITDとDFF156からの第1ステージ有効信号STG1Vが入力
され、反転遅延ヒット信号*HITD及び第1ステージ有効
信号STG1Vがいずれもオンのときに、反転遅延ヒット信
号*HITDVを出力する。
The AND circuit 162 outputs the inverted delay hit signal from the DFF 161 *
The HITD and the first stage valid signal STG1V from the DFF 156 are input, and when the inverted delay hit signal * HITD and the first stage valid signal STG1V are both on, the inverted delay hit signal * HITDV is output.

17はクロック抑止発生回路であり、インバータ171、A
ND回路172及びJKFF173で構成される。
Reference numeral 17 is a clock suppression generation circuit, which is an inverter 171, A
It is composed of an ND circuit 172 and a JKFF 173.

AND回路171には、インバータ171で反転されたヒット
信号*HITと、STINH発生回路11からの反転ステージ遷移
抑止信号*STINHと、DFF152からの第1ステージ信号STG
1とが入力され、そのアンド出力はJKFF173のJ端子に入
力される。
The AND circuit 171 includes a hit signal * HIT inverted by the inverter 171, an inverted stage transition inhibition signal * STINH from the STINH generation circuit 11, and a first stage signal STG from the DFF152.
1 and are input, and the AND output is input to the J terminal of JKFF173.

JKFF173はクロックCLK0に同期して動作し、そのK端
子にはスタート信号STARTが入力され、その反転出力端
子*Qからは、クロック抑止信号CLKSPの反転信号であ
る反転クロック抑止信号*CLKSPが出力される。
The JKFF173 operates in synchronization with the clock CLK0, the K terminal receives the start signal START, and the inverted output terminal * Q thereof outputs the inverted clock inhibition signal * CLKSP which is the inverted signal of the clock inhibition signal CLKSP. It

18はクロック発生制御回路であり、AND回路181で構成
され、クロックCLK1の発生を制御する。すなわち、AND
回路181には、クロック抑止発生回路17のJKFF173からの
反転クロック抑止信号*CLKSPとクロックCLK0が入力さ
れ、反転クロック抑止信号*CLKSPが1(オン)のと
き、すなわちクロック抑止信号CLKSPがオフである正常
動作時に、クロックCLK0をクロックCLK1として出力す
る。
Reference numeral 18 denotes a clock generation control circuit, which is composed of an AND circuit 181 and controls generation of the clock CLK1. Ie AND
The inverted clock inhibition signal * CLKSP and the clock CLK0 from the JKFF173 of the clock inhibition generation circuit 17 are input to the circuit 181, and when the inverted clock inhibition signal * CLKSP is 1 (on), that is, the clock inhibition signal CLKSP is off. During normal operation, clock CLK0 is output as clock CLK1.

以上説明したメモリアクセス制御回路10の動作につい
ては、次の実施例の動作説明の項で説明する。
The operation of the memory access control circuit 10 described above will be described in the section for explaining the operation of the next embodiment.

(B)実施例の動作 実施例の動作を、第4図及び第5図の動作タイミング
チャート並びに第6図のステージ遷移図を参照して説明
する。
(B) Operation of the Embodiment The operation of the embodiment will be described with reference to the operation timing charts of FIGS. 4 and 5 and the stage transition diagram of FIG.

本発明の実施例においても、第6図に示すステージ遷
移に従って2サイクルのメモリアクセス制御が行われる
が、第6図については、先に説明したとおりである。
Also in the embodiment of the present invention, the memory access control of two cycles is performed according to the stage transition shown in FIG. 6, and FIG. 6 is as described above.

先ず第4図の動作タイミングチャートを参照して、前
記(1)〜(3)に共通なメモリアクセス制御動作につ
いて説明する。第4図において、クロックCLK1はクロッ
ク発生回路18によって、図示しないクロックCLK0に同期
して発生される。τ1等は、クロックCLK0の各サイ
クルを示す(第4図(a))。クロックCLK0は、前述の
ようにシステムクロックSCLKに同期して発生するクロッ
クであり、メモリアクセス制御回路10内で行われる各動
作のタイミングを規定する。
First, the memory access control operation common to the above (1) to (3) will be described with reference to the operation timing chart of FIG. In FIG. 4, the clock CLK1 is generated by the clock generation circuit 18 in synchronization with the clock CLK0 (not shown). τ 1 , τ 2 etc. indicate each cycle of the clock CLK0 (FIG. 4 (a)). The clock CLK0 is a clock generated in synchronization with the system clock SCLK as described above, and defines the timing of each operation performed in the memory access control circuit 10.

プロセッサ26は、図示しないメインメモリに対するア
クセスを行う場合は、第6図に示したメモリリクエスト
ステージにおいて、メモリアクセス要求信号MRQを送出
する(第4図(b))。いま、クロックCLK0のサイクル
τ1及びτにおいて連続してメモリアクセス要求
MRQが発生し、これを図示のように、メモリアクセス要
求信号MRQ,MRQ及びMRQとする(第4図(b))。
When accessing the main memory (not shown), the processor 26 sends out a memory access request signal MRQ at the memory request stage shown in FIG. 6 (FIG. 4 (b)). Now, in the cycles τ 1 , τ 2 and τ 3 of the clock CLK0, memory access requests are continuously issued.
MRQ is generated, and this is used as memory access request signals MRQ, MRQ and MRQ as shown in FIG. 4 (FIG. 4 (b)).

τサイクルで発行された最初のメモリアクセス要求
信号MRQに対し、同じτサイクルにおいて、メモリ
アクセス要求を許可するメモリアクセス要求許可信号MR
QOK(MRQOK信号で示す)が受信されて、メモリアクセス
制御回路に通知される(第4図(c))。
For the first memory access request signal MRQ issued in tau 1 cycle, in the same tau 1 cycle, the memory access request permission signal MR for permitting the memory access request
QOK (indicated by the MRQOK signal) is received and notified to the memory access control circuit (FIG. 4 (c)).

メモリアクセス制御回路10のDFF152は、このMRQOK信
号を受けると、クロックCLK1に同期して次のサイクルτ
において第1ステージ信号STG1(STG1で示す)を発
生し、制御信号バスCBを介してプロセッサ26に送る(第
4図(d)の)。
When the DFF152 of the memory access control circuit 10 receives this MRQOK signal, it synchronizes with the clock CLK1 and the next cycle τ
At 2 , the first stage signal STG1 (indicated by STG1) is generated and sent to the processor 26 via the control signal bus CB (FIG. 4 (d)).

この第1ステージ信号STG1を受けると、プロセッサ
26は、第2サイクルτにおいて第1ステージの処理を
行い、アドレスレジスタ251にあるメインメモリをアク
セスするアドレスをアドレスバスABを介して送出し(第
4図(f)の)、更に、キャッシュメモリに対するヒ
ット判定を行う。
Upon receiving this first stage signal STG1, the processor
26 performs the first stage processing in the second cycle τ 2 , sends out the address for accessing the main memory in the address register 251 via the address bus AB (FIG. 4 (f)), and further caches The hit judgment for the memory is performed.

すなわち、プロセッサ26の送出したアドレスは、先ず
ディレクトリメモリ22をアクセスする。アクセスするア
ドレスに対応するアドレスがディレクトリメモリ22にあ
ると、ヒット信号HITが1になり、キャッシュメモリに
ヒットしたことが指示される。もし、アクセスするアド
レスに対応するアドレスがディレクトリメモリ22にない
と、ヒット信号HITが0になり、キャッシュメモリにミ
スヒットしたことが指示される。
That is, the address sent by the processor 26 first accesses the directory memory 22. If the directory memory 22 has an address corresponding to the address to be accessed, the hit signal HIT becomes 1 to indicate that the cache memory has been hit. If the address corresponding to the accessed address does not exist in the directory memory 22, the hit signal HIT becomes 0, indicating that the cache memory is a mishit.

このヒット信号HITは、MMインタフェースコントロー
ラ21を介してメモリアクセス制御回路10に送られる。
This hit signal HIT is sent to the memory access control circuit 10 via the MM interface controller 21.

また、キャッシュメモリのヒット情報がHITレジスタ2
3に格納される。HITレジスタ23にあるヒット情報はキャ
ッシュメモリ24に送られ、ヒット信号HITが1(キャッ
シュメモリにヒット)のときは、ヒットしたディレクト
リメモリ22のブロック番号に対応するキャッシュメモリ
24の領域が選択される。
Also, the hit information of the cache memory is the HIT register 2
Stored in 3. The hit information in the HIT register 23 is sent to the cache memory 24, and when the hit signal HIT is 1 (hit the cache memory), the cache memory corresponding to the block number of the directory memory 22 that has hit.
24 areas are selected.

以下、実施例の動作を、(1)キャッシュメモリにヒ
ットした場合、(2)キャッシュメモリにミスヒット
し、かつインバリデーション要求のない場合及び(3)
キャッシュメモリにミスし、かつインバリデーション要
求のある場合に分けて説明する。
The operation of the embodiment will be described below (1) when the cache memory is hit, (2) when the cache memory is missed, and there is no validation request, and (3)
It will be explained separately when there is a miss in the cache memory and there is an invalidation request.

(1) キャッシュメモリにヒットした場合 キャッシュメモリにヒットした正常動作時では、メモ
リアクセス制御回路10により、2サイクルでメモリアク
セス制御が行われる。
(1) When the cache memory is hit During normal operation when the cache memory is hit, the memory access control circuit 10 controls the memory access in two cycles.

キャッシュメモリ24にヒットした場合、すなわちヒッ
ト信号HITが1のときは、メモリアクセス制御回路10のD
FF154は、クロックCLK1に同期して次のサイクルτ
おいて第2ステージ信号STG2(STG1で示す)を発生
し、プロセッサ26に送る(第4図(e)の)。
When the cache memory 24 is hit, that is, when the hit signal HIT is 1, D of the memory access control circuit 10
The FF 154 generates the second stage signal STG2 (indicated by STG1) in the next cycle τ 3 in synchronization with the clock CLK1 and sends it to the processor 26 (in FIG. 4 (e)).

この第1ステージ信号STG1を受けると、プロセッサ
26は、第2サイクルτにおいて第2ステージの処理を
行い、キャッシュメモリ24にヒットしたデータを読み出
し、データバスDBを介してデータレジスタ262に転送す
る。
Upon receiving this first stage signal STG1, the processor
26 performs the second stage processing in the second cycle τ 3 , reads the data hit in the cache memory 24, and transfers it to the data register 262 via the data bus DB.

一方、このサイクルτにおいては、最初のメモリア
クセス要求信号MRQに対する第2サイクル(第2ステ
ージ)の処理とオーバーラップして、次のメモリアクセ
ス要求信号MRQに対する第1サイクル(第1ステー
ジ)の処理が行われる(第4図(d)のSTG1及び
(e)のSTG2参照)。
On the other hand, in this cycle τ 3 , the process of the first cycle (first stage) for the next memory access request signal MRQ overlaps with the process of the second cycle (second stage) for the first memory access request signal MRQ. Processing is performed (see STG1 in FIG. 4 (d) and STG2 in (e)).

次のメモリアクセス要求信号MRQの第1サイクル
(第4図(d)のτサイクルの第1ステージSTG1)
において、キャッシュメモリ24にヒットすると、続くτ
サイクルにおいて、メモリアクセス要求信号MRQの
第2サイクル、すなわち、第2ステージSTG2の処理が
実行される。
First cycle of next memory access request signal MRQ (first stage STG1 of τ 3 cycle in FIG. 4 (d))
When the cache memory 24 is hit at,
In four cycles, the second cycle of the memory access request signal MRQ, that is, the processing of the second stage STG2 is executed.

以下同様にして、キャッシュメモリにヒットした場合
は、各メモリアクセス要求信号MRQに対する、第1ステ
ージSTG1及び第2ステージSTG2の各処理が連続して実行
される(図示せず)。
Similarly, when the cache memory is hit, each process of the first stage STG1 and the second stage STG2 for each memory access request signal MRQ is continuously executed (not shown).

(2) キャッシュメモリにミスヒットし、かつインバ
リデーションがない場合 いま、τで行われたメモリアクセス要求信号MRQ
の第1ステージSTG1の処理において、プロセッサ26か
ら送出されたアドレスがキャッシュメモリ24にミスヒッ
トしたとすると、ヒット信号HITは、サイクルτにお
いて0となり(第4図(m))、HITレジスタ23に格納
される。
(2) When there is a miss in the cache memory and there is no validation Now, the memory access request signal MRQ performed at τ 2
In the processing of the first stage STG1 of the above, if the address sent from the processor 26 misses the cache memory 24, the hit signal HIT becomes 0 in the cycle τ 2 (FIG. 4 (m)), and the HIT register 23 Stored in.

メモリアクセス制御回路10のクロック抑止発生回路17
は、ヒット信号HITが0(ミスヒット)のときは、τ
サイクルにおいてDFF173よりクロック抑止信号*CLKSP
(CLKSPの反転信号)を発生する。
Clock suppression generation circuit 17 of memory access control circuit 10
Is τ 3 when the hit signal HIT is 0 (miss hit)
In clock cycle, DFF173 clock inhibit signal * CLKSP
(Inverted signal of CLKSP) is generated.

一方、STINH発生回路11は、ヒット信号HITが0(ミス
ヒット)で、かつ、連続するメモリアクセス要求信号MR
Qの第1ステージSTG1がオンであるときは(第4図
(d)のτサイクル)、JKFF112の出力するステージ
遷移抑止信号STINHをτサイクル以降オンにする(第
4図(p))。
On the other hand, the STINH generation circuit 11 has the hit signal HIT of 0 (miss hit) and the continuous memory access request signal MR.
When the first stage STG1 of Q is on (τ 3 cycle in FIG. 4 (d)), the stage transition inhibition signal STINH output by JKFF112 is turned on after τ 4 cycle (FIG. 4 (p)). .

これにより、メモリアクセス制御回路10のDFF152から
発生されるメモリアクセス要求信号MRQの第1ステー
ジ信号STG1の値は、τサイクル以降は連続して値1
を保持するようになり(第4図(d))、DFF152から発
生されるメモリアクセス要求信号MRQの第2ステージ
信号STG2は、τサイクル以降は連続して値1を保持
するようになり(第4図(e))。
As a result, the value of the first stage signal STG1 of the memory access request signal MRQ generated from the DFF 152 of the memory access control circuit 10 is continuously 1 after the τ 3 cycle.
(FIG. 4 (d)), the second stage signal STG2 of the memory access request signal MRQ generated from the DFF152 continuously holds the value 1 after τ 3 cycles ( FIG. 4 (e)).

また、前述のようにτサイクルにおいてDFF173の発
生する反転クロック抑止信号*CLKSPがオフ(クロック
抑止信号CLKSPはオン)になると、クロック発生回路18
はτ以降のクロックCLK1の発生を抑止されて、τ
イクル以降のメモリアクセス制御回路10の制御動作は、
一時中断される(第4図(r)及び(a))。
Further, as described above, when the inverted clock inhibition signal * CLKSP generated by the DFF173 is turned off (the clock inhibition signal CLKSP is turned on) in the τ 3 cycle, the clock generation circuit 18
Is suppressed from generating the clock CLK1 after τ 4, and the control operation of the memory access control circuit 10 after τ 4 cycle is
It is temporarily suspended (Figs. 4 (r) and (a)).

キャッシュメモリ24にミスヒットしたことにより、メ
モリアクセス制御回路10の制御動作が一時中断している
間に、MMインタフェースコントローラ21は、図示しない
メインメモリから、ミスヒットしたデータをリードし、
データバスDBを経由してプロセッサ26に転送するととも
に、キャッシュメモリ24にこのリードデータを登録し、
そのアドレス等のタグ情報をディレクトリメモリ21に登
録する処理を行う。このデータ転送処理は、τ〜τ
サイクルの間でおこなわれる。
Due to the mishit to the cache memory 24, while the control operation of the memory access control circuit 10 is temporarily suspended, the MM interface controller 21 reads the mishit data from the main memory (not shown),
While transferring to the processor 26 via the data bus DB, register this read data in the cache memory 24,
A process of registering tag information such as the address in the directory memory 21 is performed. This data transfer process is performed by τ 4 to τ 6
It takes place between cycles.

メインメモリからのデータリードは、ブロック単位で
行われ、メモリアクセス要求信号MRQに対するミスヒ
ットしたデータを含む複数ワード(図ではD−1〜D
−4のワード)がリードされて、プロセッサ26及びキ
ャッシュメモリ24に転送される(第4図(g))。各ブ
ロック単位のデータがリードされるときは、MMインタフ
ェースコントローラ21からブロックリード信号BLKRD1〜
BLKRD4がメモリアクセス制御回路10に送出されるが、第
4図(h)及び(i)には、ブロックリード信号BLKRD2
及びBLKRD3が示されている。
Data read from the main memory is performed in block units, and a plurality of words (in the figure, D-1 to D in the figure) including the data hit to the memory access request signal MRQ are hit.
-4 word) is read and transferred to the processor 26 and the cache memory 24 (FIG. 4 (g)). When the data of each block is read, the block read signals BLKRD1 ~
BLKRD4 is sent to the memory access control circuit 10, but the block read signal BLKRD2 is shown in FIGS. 4 (h) and (i).
And BLKRD3 are shown.

最初のデータD−1が転送された時点でプロセッサ
26は次の処理に移れるので、メモリアクセス制御回路10
のクロックCLKの抑止を止め、その制御を再開させてよ
い。そこで、MMインタフェースコントローラ21は、スタ
ート信号STARTを1(オン)にする(第4図(s)のτ
)。
Processor when the first data D-1 is transferred
Since 26 can move to the next processing, the memory access control circuit 10
The control of the clock CLK may be stopped and its control may be restarted. Therefore, the MM interface controller 21 sets the start signal START to 1 (ON) (τ in FIG. 4 (s)).
7 ).

クロック抑止発生回路17のJKFF173は、スタート信号S
TARTが1になると、次のτサイクルで反転クロック抑
止信号*CLKSPをオン(クロック抑止信号CLKSPをオフ)
にする。
JKFF173 of the clock suppression generator circuit 17 has a start signal S
When TART becomes 1, the inverted clock suppression signal * CLKSP is turned on (clock suppression signal CLKSP is turned off) in the next τ 8 cycle.
To

反転クロック抑止信号*CLKSPがオンになると、クロ
ック発生回路18は、クロックCLK0に同期してクロックCL
K1の発生を再開させる(第4図(a)及び(r)のτ
サイクル)。
When the inverted clock suppression signal * CLKSP is turned on, the clock generation circuit 18 synchronizes with the clock CLK0 and the clock CL.
The generation of K1 is restarted (τ 8 in FIGS. 4 (a) and 4 (r)).
cycle).

本実施例では、本発明の主旨に従い、インバリデーシ
ョンのないときは、ミスヒットデータの転送が終了した
時点、すなわちデータD−4が転送された時点(τ11
サイクルの終了時点)で、ステージ遷移抑止を停止し
て、次のτ12サイクルからステージ遷移を開始する。
In the present embodiment, in accordance with the gist of the present invention, when there is no invalidation, the time point when the transfer of the mishit data is completed, that is, the time point when the data D-4 is transferred (τ 11
At the end of the cycle), stop stage transition inhibition and start stage transition from the next τ 12 cycle.

すなわち、τサイクルにおいてブロック2に対する
ブロックリード信号BLKRD2が1(オン)になるとMRQOK
発生回路12のJKFF123はMRQOK信号を0から1(オフから
オン)にする。インバリデーション要求のない時、イン
バリデーション要求信号PINVは0であるので、MRQOK抑
止回路14はMRQOK信号を抑止することなく、JKFF123から
のMRQOK信号をそのまま出力して、オフからオンにする
(第4図(b)のτ10サイクル)。
That is, when the block read signal BLKRD2 for block 2 becomes 1 (ON) in τ 9 cycle, MRQOK
The JKFF123 of the generation circuit 12 changes the MRQOK signal from 0 to 1 (off to on). Since the invalidation request signal PINV is 0 when there is no invalidation request, the MRQOK suppression circuit 14 outputs the MRQOK signal from the JKFF123 as it is without turning off the MRQOK signal and turns it from off to on (fourth). (Τ 10 cycle in figure (b)).

STINH停止回路13は、MRQOK抑止回路14からのMRQOK信
号がオフからオンになったのを検出して、STINH停止信
号を発生し、JKFF112のK端子に入力する。
The STINH stop circuit 13 detects that the MRQOK signal from the MRQOK suppress circuit 14 has changed from OFF to ON, generates a STINH stop signal, and inputs it to the K terminal of JKFF112.

STINH発生回路112は、このSTINH停止信号を受ける
と、ステージ遷移抑止信号STINHをオフ(*STINHはオ
ン)にする(第4図(p)のτ11サイクル)。
Upon receiving this STINH stop signal, the STINH generation circuit 112 turns off the stage transition inhibition signal STINH (* STINH is on) (τ 11 cycle in FIG. 4 (p)).

これにより、メモリアクセス要求信号MRQに関する
ステージ処理である第1ステージSTG1はτ11サイクル
までオン状態を維持し続け、キャッシュメモリ24に対す
るヒット判定が可能になったτ11で有効なヒット判定が
行われ、τ12サイクルにおいて第2ステージSTG2が正
常に実行される(第4図(d),(e),(m))。
As a result, the first stage STG1, which is a stage process related to the memory access request signal MRQ, continues to remain in the ON state until τ 11 cycles, and the hit determination for the cache memory 24 becomes possible, and a valid hit determination is performed at τ 11. , Τ 12 cycle, the second stage STG2 is normally executed (FIG. 4, (d), (e), (m)).

τ12サイクルでは、前述のτサイクルの場合と同様
に、メモリアクセス要求信号MRQに対する第2サイク
ルの処理(第2ステージSTG2)と次のメモリアクセス
要求信号MRQの第1サイクルの処理(第1ステージSTG
1)とが並行して行われる(第4図(d),(e),
(m),(n))。
In the τ 12 cycle, similar to the case of the τ 3 cycle described above, the second cycle processing (second stage STG2) for the memory access request signal MRQ and the first cycle processing (first stage) for the next memory access request signal MRQ (first Stage STG
And 1) are performed in parallel (Figs. 4 (d), (e),
(M), (n)).

以上のようにして、キャッシュメモリにミスヒット
し、かつインバリデーション要求がない場合は、ミスヒ
ットしたデータに対するデータ転送が終了したτ11サイ
クルの次のτ12サイクルから、直ちに中断していた各ス
テージ処理が再開される。
As described above, when there is a miss in the cache memory and there is no validation request, each stage that was immediately interrupted from the next τ 12 cycle after the τ 11 cycle in which the data transfer for the miss hit data was completed. The process is restarted.

(3) キャッシュメモリにミスヒットし、かつインバ
リデーション要求がある場合 キャッシュメモリにミスヒットし、かつインバリデー
ション要求がある場合のメモリアクセス制御を、第5図
を参照して説明する。
(3) When there is a miss in the cache memory and there is an invalidation request Memory access control when there is a miss in the cache memory and there is an invalidation request will be described with reference to FIG.

第5図は、第4図と同じく動作タイミングチャートを
示したもので、(a)CLK〜(s)STARTの各記号の意味
及びτサイクルまでの動作内容は、第4図の動作内容
と同じである。
FIG. 5 shows the same operation timing chart as FIG. 4, and the meaning of each symbol of (a) CLK to (s) START and the operation contents up to τ 9 cycle are the same as those of FIG. Is the same.

また、(k)のINVLは、先に説明したように、キャッ
シュメモリ24に登録されているデータを無効化するイン
バリデーション信号であり、このインバリデーション信
号を受けると、ディレクトリメモリ22にある無効化対象
データ領域に対応する領域に無効フラグ(図示せず)が
立てられる。
Further, (k) INVL is an invalidation signal for invalidating the data registered in the cache memory 24, as described above, and upon receipt of this invalidation signal, the invalidation signal in the directory memory 22 is invalidated. An invalid flag (not shown) is set in the area corresponding to the target data area.

もし、メモリアクセス要求信号MRQについてのデー
タ転送が行われるτ11サイクルの前に、他プロセッサ又
はDMAにより自己のキャッシュメモリ24のディレクトリ
メモリ22に登録されているメインメモリ領域に対するラ
イトが行われたとすると、監視ディレクトリ211は、デ
ータ転送が終了するτ11サイクルの1つ前のτ10サイク
ルにおいてインバリデーション要求信号PINVLを発生し
て、メモリアクセス制御回路10に送る。
If the memory access request signal MRQ is written to the main memory area registered in the directory memory 22 of its own cache memory 24 by the other processor or DMA before τ 11 cycles, it is assumed. The monitoring directory 211 generates an invalidation request signal PINVL in the τ 10 cycle, which is one cycle before the τ 11 cycle in which the data transfer is completed, and sends it to the memory access control circuit 10.

インバリデーション要求はステージ処理に常に優先し
て行う必要があるので、メモリアクセス制御回路10のMR
QOK抑止回路14は、インバリデーション要求信号PINVLが
1(オン)になると、MRQOK発生回路12からのMRQOK信号
を遮断して0(オフ)状態を保持させる(第4図(c)
のτ10サイクル)。
Since the invalidation request must always be given priority over the stage processing, the MR of the memory access control circuit 10
When the invalidation request signal PINVL becomes 1 (on), the QOK suppression circuit 14 cuts off the MRQOK signal from the MRQOK generation circuit 12 and holds the 0 (off) state (FIG. 4 (c)).
Τ 10 cycles).

したがって、STINH停止回路13からはSTINH停止信号は
発生されす、STINH発生回路11は、τ10サイクルにおい
ても引続きステージ遷移抑止信号STINHを発生し、ステ
ージ遷移を抑止する。
Therefore, the STINH stop circuit 13 does not generate the STINH stop signal. The STINH generation circuit 11 continues to generate the stage transition suppression signal STINH even in the τ 10 cycle to suppress the stage transition.

インバリデーション要求が1個である場合は、インバ
リデーション要求PINVLがオフになったτ11サイクルに
おいて、MRQOK抑止回路14はMRQOK発生回路12からのMRQO
K信号の抑止を停止し、MRQOK信号を発生させ、オフから
オンにする(第4図(b)のτ11サイクル)。
When there is only one invalidation request, the MRQOK suppression circuit 14 receives the MRQO from the MRQOK generation circuit 12 in the τ 11 cycle when the invalidation request PINVL is turned off.
The suppression of the K signal is stopped, the MRQOK signal is generated, and the signal is turned from off to on (τ 11 cycle in FIG. 4 (b)).

STINH停止回路13は、MRQOK抑止回路14からのはMRQOK
信号がオフからオンになったのを検出して、STINH停止
信号を発生し、JKFF112のK端子に入力する。
STINH stop circuit 13 receives MRQOK from MRQOK suppress circuit 14.
Detecting that the signal has changed from off to on, generate a STINH stop signal and input it to the K terminal of JKFF112.

STINH回路11は、このSTINH停止信号を受けると、ステ
ージ遷移抑止信号STINHをオフ(*STINHはオン)にする
(第4図(p)のτ12サイクル)。
Upon receiving this STINH stop signal, the STINH circuit 11 turns off the stage transition inhibition signal STINH (* STINH is on) (τ 12 cycle in FIG. 4 (p)).

これにより、メモリアクセス要求信号MRQに関する
ステージ処理である第1ステージSTG1はτ12サイクル
までオン状態を維持し続け、キャッシュメモリ24に対す
るヒット判定が可能になったτ12で有効なヒット判定が
行われ、τ13サイクルにおいて第2ステージSTG2が正
常に実行される(第4図(d),(e),(m))。
As a result, the first stage STG1, which is a stage process related to the memory access request signal MRQ, remains on for up to τ 12 cycles, and a valid hit determination is performed at τ 12, which enables the hit determination to the cache memory 24. , Τ 13 cycles, the second stage STG2 is normally executed (FIG. 4, (d), (e), (m)).

一方、τ11サイクルにおいては、ディレクトリメモリ
21に対し、無効化対象データに対するインバリデーショ
ン処理が行われる(第4図(k)のτ11サイクル)。
On the other hand, in τ 11 cycle, the directory memory
For 21, the invalidation processing is performed on the invalidation target data (τ 11 cycle in FIG. 4 (k)).

もし、τ10サイクルにおけるインバリデーション要求
に引続き、複数のインバリデーション要求が連続して発
生した場合は、その期間だけMRQOK抑止回路14はMRQOK信
号の発生を抑止し、STINH回路11は、ステージ遷移抑止
信号STINHを発生し続ける。
If a plurality of validation requests occur consecutively following the validation request in τ 10 cycle, the MRQOK suppression circuit 14 suppresses the generation of the MRQOK signal and the STINH circuit 11 suppresses the stage transition for that period. Continue to generate signal STINH.

インバリデーション要求PINVLがオフになったサイク
ルにおいて、MRQOK抑止回路14はMRQOK信号の抑止を停止
し、これを受けて、STINH回路11は、ステージ遷移抑止
信号STINHをオフ(*STINHはオン)にする。
In the cycle in which the invalidation request PINVL is turned off, the MRQOK suppression circuit 14 stops the suppression of the MRQOK signal, and in response to this, the STINH circuit 11 turns off the stage transition suppression signal STINH (* STINH is on). .

これにより、前述と同様にして、一時中断していた各
ステージの処理が正常に続行される。
As a result, in the same manner as described above, the processing of each temporarily suspended stage is continued normally.

以上のようにして、キャッシュメモリにミスヒット
し、かつインバリデーション要求がある場合のみ、ミス
ヒットしたデータに対するデータ転送が終了したサイク
ルの次のサイクルが1サイクルが開けられて、インバリ
デーション処理が行われ、更に次のサイクルから、直ち
に中断していた各ステージ処理が再開される。
As described above, only when there is a miss hit in the cache memory and there is an invalidation request, one cycle is opened next to the cycle in which the data transfer for the miss hit data is completed, and the invalidation processing is performed. Then, from the next cycle, each stage processing which has been interrupted immediately is restarted.

以上本発明の一実施例について説明したが、本発明は
この実施例に限定されるものではなく、その発明の主旨
に従った各種の変形が可能である。
Although one embodiment of the present invention has been described above, the present invention is not limited to this embodiment, and various modifications in accordance with the gist of the invention are possible.

例えば、キャッシュメモリにミスヒットした場合のデ
ータ転送量は4ワードに限定されるものではない。ま
た、ミスヒット時のインバリデーション要求が複数個連
続した場合にも本発明が適用できるものであることは、
先に実施例の所で説明したとおりである。
For example, the data transfer amount in the case of a mishit in the cache memory is not limited to 4 words. In addition, the present invention can be applied even when a plurality of validation requests at the time of a miss hit are consecutive,
This is as described above in the embodiment.

〔効 果〕(Effect)

以上説明したように、本発明によれば、次の諸効果が
得られる。
As described above, according to the present invention, the following effects can be obtained.

(1) キャッシュメモリにミスヒット時には、インバ
リデーション要求が発生したときのみミスヒットデータ
のデータ転送終了後、1サイクル遅れてステージ処理を
再開させるようにしたので、インバリデーション要求の
ないときは無駄なサイクルが無くなって、メモリアクセ
ス処理効率を向上させることができる。
(1) At the time of a miss hit in the cache memory, the stage processing is restarted with a delay of one cycle after the end of the data transfer of the miss hit data only when an invalidation request occurs, so it is useless when there is no invalidation request. The cycle is eliminated, and the memory access processing efficiency can be improved.

(2) インバリデーション要求個数に対応するサイク
ル個数だけ遅れてステージ処理を再開させるようにすれ
ば、連続してインバリデーション要求が発生しても、こ
れらのインバリデーション処理を正常に処理できるとと
もに、中断された各アクセス要求に対するステージ処理
を正常に再開させることができる。
(2) If the stage processing is restarted with a delay of the number of cycles corresponding to the number of invalidation requests, even if invalidation requests are continuously generated, these invalidation processing can be normally processed and interrupted. It is possible to normally resume the stage processing for each access request made.

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

第1図は本発明の基本構成の説明図、 第2図は本発明の一実施例に係るメモリアクセス制御回
路が使用されるメモリアクセス制御システムの説明図、 第3図は本発明の一実施例の構成の説明図、 第4図は同実施例の動作タイミングチャートの説明図、 第5図は同実施例のミスヒット時でかつインバリデーシ
ョンのあるときの動作タイミングチャートの説明図、 第6図はステージ遷移の説明図、 第7図は従来のメモリアクセス制御システムの説明図、 第8図は従来のメモリアクセス制御システムの動作タイ
ミングチャートの説明図、 第9図は従来のメモリアクセス制御システムにおけるミ
スヒット時でかつインバリデーションのあるときの動作
タイミングチャートの説明図。 第1図及び第2図において、 10……メモリアクセス制御回路、11……ステージ遷移抑
止発生回路(STINH発生回路)、12……メモリアクセス
要求許可信号発生回路(MRQOK発生回路)、13……ステ
ージ遷移抑止停止回路(STINH停止回路)、14……メモ
リアクセス要求許可抑止回路(MRQOK抑止回路)。
FIG. 1 is an explanatory diagram of a basic configuration of the present invention, FIG. 2 is an explanatory diagram of a memory access control system in which a memory access control circuit according to an embodiment of the present invention is used, and FIG. FIG. 4 is an explanatory diagram of the configuration of an example, FIG. 4 is an explanatory diagram of an operation timing chart of the same embodiment, and FIG. 5 is an explanatory diagram of an operation timing chart of the same embodiment when there is a miss and there is an invalidation. FIG. 7 is an explanatory diagram of stage transition, FIG. 7 is an explanatory diagram of a conventional memory access control system, FIG. 8 is an explanatory diagram of an operation timing chart of the conventional memory access control system, and FIG. 9 is a conventional memory access control system. Explanatory diagram of the operation timing chart at the time of a mishit in and also when there is invalidation. 1 and 2, 10 ... Memory access control circuit, 11 ... Stage transition suppression generation circuit (STINH generation circuit), 12 ... Memory access request permission signal generation circuit (MRQOK generation circuit), 13 ... Stage transition suppression circuit (STINH stop circuit), 14 ... Memory access request permission suppression circuit (MRQOK suppression circuit).

フロントページの続き (72)発明者 星 健二 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 金谷 英治 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭61−165154(JP,A) 特開 昭61−221845(JP,A) 特開 昭63−214849(JP,A) 特開 平3−271843(JP,A) 特開 平2−90265(JP,A)Front Page Continuation (72) Kenji Hoshi, Inventor Kenji Hoshiodachu, Nakahara-ku, Kawasaki-shi, Kanagawa 1015, Fujitsu Limited (72) Inventor Eiji Kanaya 1015, Uedotachu, Nakahara-ku, Kawasaki, Kanagawa Prefecture, Fujitsu Limited (56) Reference References JP 61-165154 (JP, A) JP 61-221845 (JP, A) JP 63-214849 (JP, A) JP 3-271843 (JP, A) JP 2- 90265 (JP, A)

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】第1サイクルでアドレスを送出し、第2サ
イクルで次のアクセスの第1サイクルとオーバラップし
てデータ転送を行い、第1サイクルで送出したアドレス
と該アドレスによりディレクトリメモリをアクセスして
得られるヒット情報とアドレス情報とを第2サイクルの
間保持し、ヒット情報がヒットを示した場合は、第2サ
イクルで前記保持されたアドレス情報によりキャッシュ
メモリをアクセスし、ミスヒットした場合は、メインメ
モリより前記アドレス情報によりデータをリードし、ア
クセスの第1サイクルで出力されたヒット情報がミスヒ
ットを示した場合にクロック発生を抑止してメインメモ
リから前記アドレス情報によりリードしたブロックデー
タのうち最初のデータが転送された時点で抑止を止める
クロック抑止信号発生回路を備え、2サイクルでキャッ
シュメモリをアクセスするメモリアクセス制御回路にお
いて、 第1サイクルで出力されたヒット情報がミスヒットを示
しており、かつ、連続するアクセスの第1サイクルのス
テージがオンであるとき、前記ミスヒットを示していた
最初のアクセスの第2サイクルのステージ遷移を抑止す
るステージ遷移抑止信号を発生するステージ遷移抑止信
号発生回路(11)と、 ミスヒット時はメモリアクセス要求許可信号をオフに
し、メインメモリより前記アドレス情報によりリードさ
れた最後のデータがキャッシュメモリに到達する直前の
サイクルで前記メモリアクセス要求許可信号をオフから
オンにするメモリアクセス要求許可信号発生回路(12)
と、 前記メモリアクセス要求許可信号がオフからオンになっ
たことを検出して、遷移抑止信号発生回路(11)の発生
するステージ遷移抑止信号を停止させるステージ遷移抑
止停止回路(13)、 を備えたことを特徴とするメモリアクセス制御回路。
1. An address is sent in the first cycle, data is transferred in the second cycle by overlapping with the first cycle of the next access, and the directory memory is accessed by the address sent in the first cycle and the address. When the hit information and the address information obtained by the above are held for the second cycle, and the hit information indicates a hit, the cache memory is accessed by the held address information in the second cycle, and a miss hit occurs. Block data read from the main memory according to the address information, and when the hit information output in the first cycle of access indicates a mishit, block the clock generation and read from the main memory according to the address information. Clock suppression signal that stops suppression when the first data of In a memory access control circuit that includes a raw circuit and that accesses a cache memory in two cycles, the hit information output in the first cycle indicates a mishit, and the stage of the first cycle of continuous access is ON. A stage transition inhibition signal generation circuit (11) that generates a stage transition inhibition signal that inhibits the stage transition of the second cycle of the first access that had indicated the above-mentioned mishit, and a memory access request permission signal at the time of mishit And a memory access request permission signal generation circuit (12) for turning on the memory access request permission signal in the cycle immediately before the last data read from the main memory by the address information reaches the cache memory.
And a stage transition inhibition stop circuit (13) that detects that the memory access request permission signal is turned from off to on and stops the stage transition inhibition signal generated by the transition inhibition signal generation circuit (11). A memory access control circuit characterized by the above.
【請求項2】前記メモリアクセス要求許可信号をオンに
するサイクルにおいて、自キャッシュメモリの無効化要
求がなされた場合、前記サイクルにおいて無効化処理を
行うために、前記メモリアクセス要求許可信号がオンに
なるのを抑止するメモリアクセス要求許可抑止回路(1
4)を設けたことを特徴とする請求項(1)記載のメモ
リアクセス制御回路。
2. In the cycle for turning on the memory access request permission signal, when an invalidation request for the self cache memory is made, the memory access request permission signal is turned on for performing invalidation processing in the cycle. Memory access request permission suppression circuit (1
4. The memory access control circuit according to claim 1, further comprising: 4).
【請求項3】アクセス要求許可抑止回路(14)が、前記
メモリアクセス要求許可信号をオンにするサイクルにお
いて、自キャッシュメモリの無効化要求が連続して成さ
れた場合は、その期間引続きメモリアクセス要求許可信
号を抑止し、無効化が不要になったサイクルからメモリ
アクセス要求許可信号をオンにするものであることを特
徴とする請求項(2)記載のメモリアクセス制御回路
3. An access request permission suppression circuit (14), in the cycle of turning on the memory access request permission signal, if invalidation requests of its own cache memory are continuously issued, memory access continues during that period. 3. The memory access control circuit according to claim 2, wherein the request permission signal is suppressed, and the memory access request permission signal is turned on from a cycle in which invalidation is no longer required.
JP2279249A 1990-10-19 1990-10-19 Memory access control circuit Expired - Fee Related JP2677706B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2279249A JP2677706B2 (en) 1990-10-19 1990-10-19 Memory access control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2279249A JP2677706B2 (en) 1990-10-19 1990-10-19 Memory access control circuit

Publications (2)

Publication Number Publication Date
JPH04155457A JPH04155457A (en) 1992-05-28
JP2677706B2 true JP2677706B2 (en) 1997-11-17

Family

ID=17608519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2279249A Expired - Fee Related JP2677706B2 (en) 1990-10-19 1990-10-19 Memory access control circuit

Country Status (1)

Country Link
JP (1) JP2677706B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4695943A (en) * 1984-09-27 1987-09-22 Honeywell Information Systems Inc. Multiprocessor shared pipeline cache memory with split cycle and concurrent utilization
JPH071487B2 (en) * 1985-03-05 1995-01-11 富士通株式会社 Buffer memory invalidation address generation method
JPS63214849A (en) * 1987-03-04 1988-09-07 Nec Corp Memory access control system
US5148536A (en) * 1988-07-25 1992-09-15 Digital Equipment Corporation Pipeline having an integral cache which processes cache misses and loads data in parallel
JPH03271843A (en) * 1990-03-20 1991-12-03 Fujitsu Ltd Memory access control system

Also Published As

Publication number Publication date
JPH04155457A (en) 1992-05-28

Similar Documents

Publication Publication Date Title
EP0748481B1 (en) Highly pipelined bus architecture
JP3451103B2 (en) Data communication device and method
US5893153A (en) Method and apparatus for preventing a race condition and maintaining cache coherency in a processor with integrated cache memory and input/output control
JPH06309230A (en) Bus snooping method
US5987570A (en) Performing overlapping burst memory accesses and interleaved memory accesses on cache misses
JP4131789B2 (en) Cache control apparatus and method
US8688890B2 (en) Bit ordering for communicating an address on a serial fabric
JPH0340047A (en) Cash-line-storage method
JPH02103656A (en) System for controlling successive reference to main storage
JP3018038B2 (en) Data processing device having cache
JPS6126702B2 (en)
JP2677706B2 (en) Memory access control circuit
JPH0353657B2 (en)
KR940005769B1 (en) Multi-process system with cache memory
JP2825983B2 (en) Information processing device
JP3039391B2 (en) Memory system
JP2845754B2 (en) Multiprocessor system
JP3287239B2 (en) Hierarchical cache memory and its state transition control method
CA2181704C (en) Highly pipelined bus architecture
JP2719227B2 (en) Processing equipment
JPH0721133A (en) Information processor
JPS62224846A (en) Memory controller
JPH02224158A (en) Cache memory device, data processor, data access method, and method for storing data in cache memory
JPS60123944A (en) Buffer memory controlling system of information processor
JPH10254853A (en) Vector data processor

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees