JPH04155457A - Memory access control circuit - Google Patents
Memory access control circuitInfo
- Publication number
- JPH04155457A JPH04155457A JP2279249A JP27924990A JPH04155457A JP H04155457 A JPH04155457 A JP H04155457A JP 2279249 A JP2279249 A JP 2279249A JP 27924990 A JP27924990 A JP 27924990A JP H04155457 A JPH04155457 A JP H04155457A
- Authority
- JP
- Japan
- Prior art keywords
- cycle
- signal
- memory access
- memory
- stage
- 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.)
- Granted
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
〔概 要〕 ゛
2サイクルのキャッシュのメモリアクセス制御回路に関
し、
キャッシュにミスヒットリードした次のメモリアクセス
処理を迅速かつ、正確に行なえるようにすることを目的
とし、
第1サイクルでアドレスを送出し、第2サイクルで次の
アクセスの第1サイクルとオーハラツブしてデータ転送
を行う2サイクルキャッシュメモリアクセス制御回路に
おいて、第1サイクルでミスヒットした場合に、第2サ
イクルのステージ遷移を抑止する信号を発生する5TI
NH発生回路と、ミスヒツト時はメモリアクセス要求許
可信号(MRQOK信号)をオフにし、メインメモリよ
りリードされた最後のデータがキャッシュメモリに到達
する直前のサイクルでMRQOK信号をオフからオンに
するMRQOK発生回路と、MRQOK信号がオフから
オンになったときに5TINH発生回路のステージ遷移
抑止信号を停止させる5TINH抑止回路を、設けるよ
うに構成する。[Detailed Description of the Invention] [Summary] [Object of the present invention] Regarding a two-cycle cache memory access control circuit, an object of the present invention is to quickly and accurately perform the next memory access process after a mishit read to the cache. In a two-cycle cache memory access control circuit that sends out an address in the first cycle and overwrites with the first cycle of the next access in the second cycle to transfer data, if a miss occurs in the first cycle, the second cycle 5TI that generates a signal to suppress the stage transition of
NH generation circuit and MRQOK generation that turns off the memory access request permission signal (MRQOK signal) in the event of a miss and turns on the MRQOK signal from off in the cycle immediately before the last data read from the main memory reaches the cache memory. The present invention is configured to include a 5TINH suppressing circuit and a 5TINH suppressing circuit that stops the stage transition suppressing signal of the 5TINH generating circuit when the MRQOK signal changes from off to on.
[産業上の利用分野]
本発明は、第1サイクルでアドレスを送出し、第2サイ
クルで次にアクセスの第1サイクルとオーバラップして
データ転送を行う、2サイクルキャッシュメモリアクセ
ス方式において、キャッシュメモリにミスヒツトした場
合に、次のアクセスを迅速かつ正確に行なうためのメモ
リアクセス制御回路に関する。[Industrial Application Field] The present invention provides a two-cycle cache memory access method in which an address is sent in the first cycle and data is transferred in the second cycle, overlapping with the first cycle of the next access. The present invention relates to a memory access control circuit for quickly and accurately performing the next access in the event of a memory mishit.
多くのデータ処理システムにおいては、メインメモリへ
のアクセス時間を実質的に短縮する手段として、キャッ
シュ装置を付加するようにしている。特に高速化が要求
されるシステムでは、キャッシュメモリを効率良く利用
するために、データ転送サイクルと次のアクセスのアド
レス送出とがオーバーラツプして行われる2サイクル方
式のアクセスパイプライン制御が採用されている。In many data processing systems, a cache device is added as a means to substantially reduce access time to main memory. Particularly in systems that require high speed, two-cycle access pipeline control is adopted in which the data transfer cycle and address transmission for the next access overlap to make efficient use of cache memory. .
この2サイクル方式のアクセスパイプライン制御では、
送出されたアドレスのヒツト判定をしている間に次のア
クセス7のアドレスが送出されているため、ミスヒツト
となった場合の制御が複雑になり、次のアクセスの再開
までにかなりのオーバーヘッドが生しるようになる。In this two-cycle access pipeline control,
Since the address for the next access 7 is being sent while the sent address is being judged as a hit, control in the event of a miss becomes complicated, and considerable overhead is generated until the next access is resumed. I started to do it.
次に、第6図〜第9図を参照して、従来の2サイクルの
メモリアクセス制御方式について説明する。第6図はス
テージ遷移の説明図、第7図は従来のメモリアクセス制
御システムの説明図、第8図は従来のメモリアクセス制
御回路の動作タイミングチャート、第9図は従来のメモ
リアクセス制御システムにおけるミスヒツト時でかつイ
ンバリデーションのあるときの動作タイミングチャート
の説明図である。Next, a conventional two-cycle memory access control system will be described with reference to FIGS. 6 to 9. 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 an explanatory diagram of a conventional memory access control system. FIG. 6 is an explanatory diagram of an operation timing chart when there is a mishit and invalidation.
第7図において、21はメインメモリインタフェースコ
ントローラ(MMインタフェースコントローラで示す)
であり、図示しないメインメモリとメモリアクセス制御
回路とのインタフェース制御を行う。211はMMゼイ
ンフェースコントローラ21に設けられた監視ディレク
トリであり、自己のキャッシュのディレクトリに登録さ
れているメインメモリ領域への、他のプロセッサ又はD
MA (直接記憶アクセス)によるライトを監視する。In FIG. 7, 21 is a main memory interface controller (indicated by MM interface controller).
It performs interface control between the main memory and a memory access control circuit (not shown). Reference numeral 211 is a monitoring directory provided in the MM interface controller 21, and the monitoring directory 211 is a monitoring directory provided in the MM interface controller 21.
Monitor writes by MA (direct memory access).
MABはMMインタフェースコントローラ2Iとメイン
メモリ間のアドレスバスであり、MADはMMインタフ
ェースコントローラ21とメインメモリ間のデータバス
である。MAB is an address bus between the MM interface controller 2I 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, also called a tag memory, in which addresses of data registered in the cache memory are stored.
HITは、キャッシュメモリにヒツトしたことを指示す
るヒツト信号であり、ヒットしたときは1を指示し、ミ
スヒツトしたときは0を指示する。HIT is a hit signal that indicates that the cache memory has been hit, and indicates 1 when there is a hit, and indicates 0 when there is a miss.
23はヒツト番号保持レジスタ(HITレジスタで示す
)であり、第1サイクルでディレクトリメモリ22から
出力されたヒツト情報が格納される。ディレクトリメモ
リ22が複数のブロックで構成される場合、ヒツト情報
はヒツトしたブロックの番号を指示する。このヒツト情
報により、キャッシュメモリ中のブロックに対応するメ
モリ域が選択される。Reference numeral 23 is a hit number holding register (indicated by HIT register), in which hit information outputted from the directory memory 22 in the first cycle is stored. If the directory memory 22 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 denotes a Hanwha memory for cache (hereinafter referred to as cache memory), which is composed of high-speed memory elements such as bipolar transistors, and stores accessed data in the main memory.
25はキャンンユアトレス保持レジスタ(cMAレジス
タで示す)であり、第1サイクルで送出されたキャッシ
ュメモリ24をアクセスするアドレスを格納して、次の
第2サイクルまで保持する。25 is a cancel address holding register (indicated by cMA register), which stores the address for accessing the cache memory 24 sent out in the first cycle and holds it until the next second cycle.
26はプロセッサであり、各サイクルにおけるステージ
処理を実行するととも巳こ、システム全体の動作を制御
する。A processor 26 executes stage processing in each cycle and also controls the operation of the entire system.
261はプロセッサ26に設けられたアドレスレジスタ
であり、メインメモリ、ディレクトリメモリ22、キャ
ッシュメモリ24をアクセスするアドレスが格納される
。261 is an address register provided in the processor 26, in which addresses for accessing the main memory, directory memory 22, and cache memory 24 are stored.
262はプロセッサ26に設けられたデータレジスタで
あり、キャッシュメモリ24又はメインメモリから読み
出されたデータが格納される。262 is a data register provided in the processor 26, in which data read from the cache memory 24 or main memory is stored.
ABはMMインタフェースコントローラ21とプロセッ
サ26間のアドレスバスであり、CBは各種制御信号が
転送される制御信号ハスであり、DBはMMインタフェ
ースコントローラ21とプロセッサ26間のデータを転
送するデータバスである。AB is an address bus between the MM interface controller 21 and the processor 26, CB is a control signal bus to which various control signals are transferred, and DB is a data bus to transfer data between the MM interface controller 21 and the processor 26. .
INVLは、キャッシュメモリ24に登録されているデ
ータを無効化するインバリデーション信号であり、この
インバリデーション信号を受けると、ディレクトリメモ
リ22にある無効化対象データ領域に対応する領域に無
効フラグ(図示せず)が立てられる。INVL is an invalidation signal that invalidates data registered in the cache memory 24. When this invalidation signal is received, an invalidation flag (not shown in the figure) is set in the area corresponding to the invalidation target data area in the directory memory 22. ) will be erected.
30はメモリアクセス制御回路であり、MMゼインフェ
ースコントローラ21内に設けられ、プロセンサ26か
らの指令を受けて、メインメモリに対するメモリアクセ
ス制御を行う。このメモリアクセス制御回路30の発生
する各種制御信号及びそのメモリアクセス制御動作につ
いては、後記動作説明のところで説明する。なお、メモ
リアクセス制御回路30のブロック内に括弧に入れて示
される各種制御信号は、メモリアクセス制御回路30の
内部で発生する各種制御信号を示している。Reference numeral 30 denotes a memory access control circuit, which is provided within the MM interface controller 21 and receives instructions from the processor 26 to control memory access to the main memory. Various control signals generated by the memory access control circuit 30 and their memory access control operations will be explained later in the operation description. Note that various control signals shown in parentheses within 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 explained with reference to the stage transition explanatory diagram of FIG. 6.
第6図において、最初のメモリリクエストステージでは
、プロセッサ26より、図示しないメインメモリに対す
るアクセスを要求するメモリアクセス要求信号MRQを
送出する処理が行われる。In FIG. 6, in the first memory request stage, the processor 26 sends out a memory access request signal MRQ requesting access to a main memory (not shown).
メインメモリに対するアクセス要求が受は入れられると
、次の第1ステージにおいて、メインメモリをアクセス
するアドレスを送出する処理と、キャッシュメモリに対
するヒット判定処理が行われる。5TGIは第1ステー
ジを起動する第1ステージ信号であり、メモリアクセス
制御回路30によって発生される。When the access request to the main memory is accepted, in the next first stage, processing for sending an address for accessing the main memory and hit determination processing for the cache memory are performed. 5TGI is a first stage signal that activates the first stage and is generated by the memory access control circuit 30.
次の第2ステージにおいては、キャッシュメモリにヒツ
トしたデータを転送する処理が行われる。In the next second stage, processing is performed to transfer the hit data to the cache memory.
5TG2は第2ステージを起動する第2ステージ信号で
あり、メモリアクセス制御回路30によって発生される
。5TG2 is a second stage signal that activates the second stage and is generated by the memory access control circuit 30.
次に、第8図の動作タイミングチャートを参照して、メ
モリアクセス制御動作を説明する。 第8図において、
CLKIはメモリアクセス制御回路30内で行われる各
動作のタイミングを規制するクロツタで、システムに共
通のシステムクロンクに同期して発生される。τ1 、
τ2等は、クロックCLKIの各サイクルを示す(第8
図(a))。Next, the memory access control operation will be explained with reference to the operation timing chart of FIG. In Figure 8,
CLKI is a clock that regulates the timing of each operation performed within the memory access control circuit 30, and is generated in synchronization with a system clock common to the system. τ1,
τ2 etc. indicate each cycle of the clock CLKI (the 8th
Figure (a)).
プロセッサ26は、図示しないメインメモリに対するア
クセスを行う場合は、メモリリクエストステージにおい
て、メモリアクセス要求信号MRQを送出する(第8図
(b))。いま、クロックCLK1のサイクルτ1、τ
2及びτ、においで連続してメモリアクセス要求MRQ
が発生し、これを図示のように、メモリアクセス要求信
号MRQ■、MRQ■及びMRQ■とする(第8図(b
))。When accessing a main memory (not shown), the processor 26 sends out a memory access request signal MRQ in the memory request stage (FIG. 8(b)). Now, cycles τ1, τ of clock CLK1
2 and τ, consecutive memory access requests MRQ
occurs, and these are designated as memory access request signals MRQ■, MRQ■, and MRQ■ as shown in FIG. 8(b).
)).
τ1サイクルで発行された最初のメモリアクセス要求信
号MRQ■に対し、メモリアクセス制御回路30は、メ
モリアクセス要求許可条件が満足されると、同じτ1サ
イクルにおいて、メモリアクセス要求を許可するメモリ
アクセス要求許可信号MRQOK (MRQOK信号で
示す)をオンにする(第8図(c))。In response to the first memory access request signal MRQ issued in the τ1 cycle, when the memory access request permission condition is satisfied, the memory access control circuit 30 issues a memory access request permission that allows the memory access request in the same τ1 cycle. The signal MRQOK (indicated by the MRQOK signal) is turned on (FIG. 8(c)).
メモリアクセス制御回路30は、このMRQOK信号が
オンになったときは、クロックCLKIに同期して次の
サイクルτ2において第1ステージ信号5TGI (S
TGI■で示す)を発生し、制御信号バスABを介して
プロセッサ26に送る(第8図(d)の■)。When this MRQOK signal is turned on, the memory access control circuit 30 outputs a first stage signal 5TGI (S
TGI (indicated by ■) is generated and sent to the processor 26 via the control signal bus AB (■ in FIG. 8(d)).
この第1ステージ信号5TGI■を受けると、プロセッ
サ26は、第2サイクルτ2において第1ステージの処
理を行い、アドレスレジスタ261にあるメインメモリ
をアクセスするアドレスをアドレスバスABを介して送
出しく第8図げ)の■)、更に、キャッシュメモリ24
に対するヒツト判定を行う。Upon receiving this first stage signal 5TGI■, the processor 26 performs the first stage processing in the second cycle τ2, and sends out the address for accessing the main memory in the address register 261 via the address bus AB. In addition, the cache memory 24
Performs a human judgment for.
すなわち、プロセッサ26の送出したアドレスは、先ず
ディレクトリメモリ22をアクセスする。That is, the address sent by the processor 26 first accesses the directory memory 22.
アクセスするアドレスに対応するアドレスがディレクト
リメモリ22にあると、ヒツト信号HITが1になり、
キャッシュメモリにヒツトしたことが指示される。もし
、アクセスするアドレスに対応するアドレスがディレク
トリメモリ22にないと、ヒツト信号I(ITがOにな
り、キャッシュメモリにミスヒツトしたことが指示され
る。When the address corresponding to the address to be accessed is in the directory memory 22, the hit signal HIT becomes 1,
Indicates 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 I (IT) becomes O, indicating that there has been a miss in the cache memory.
このヒット信号HITは、MMゼインフェースコントロ
ーラ21を介してメモリアクセス制御回路30に送られ
る。また、キャッシュメモリのヒツト情報がHITレジ
スタ23に格納される。ディレクトリメモリ22が複数
のブロックから成る場合は、このヒツト情報はヒツトし
たブロックの番号を指示する。HITレジスタ23にあ
るヒツト情報はキャッシュメモリ24に送られ、ヒツト
信号HITが1(キャッシュメモリにヒツト)のときは
、ヒツトしたディレクトリメモリ22のブロック番号に
対応するキャッシュメモリ24の領域が選択される。This hit signal HIT is sent to the memory access control circuit 30 via the MM interface controller 21. Further, hit information of the cache memory is stored in the HIT register 23. If directory memory 22 consists of multiple 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, and when the hit signal HIT is 1 (hit to the cache memory), the area of the cache memory 24 corresponding to the hit block number of the directory memory 22 is selected. .
以下、キャッシュメモリ24にヒツトした場合とミスヒ
ツトした場合に分けて説明する。In the following, cases in which the cache memory 24 is hit and cases in which it is a miss will be explained separately.
(1)キャッシュメモリにヒツトした場合キャッシュメ
モリ24にヒツトした場合、すなわちヒット信号HIT
が1のときは、メモリアクセス制御回路30は、回路の
動作タイミングを規定するクロックCLKIに同期して
次のサイクルτ、において第2ステージ信号5TG2
(STG2■で示す)を発生し、制御信号ハスCBを介
してプロセッサ26に送る(第8図(e)の■)。(1) When the cache memory is hit When the cache memory 24 is hit, that is, the hit signal HIT
is 1, the memory access control circuit 30 outputs the second stage signal 5TG2 in the next cycle τ in synchronization with the clock CLKI that defines the operation timing of the circuit.
(denoted as STG2) and sends it to the processor 26 via the control signal HAS CB (■ in FIG. 8(e)).
この第2ステージ信号5TG2■を受けると、プロセッ
サ26は、第6図に示すように、第2サイクルτ3にお
いて第2ステージの処理を行い、キャッシュメモリ24
にヒツトしたデータ読み出し、データバスDBを介して
プロセッサ26のデータレジスタ262に転送する。Upon receiving this second stage signal 5TG2■, the processor 26 performs second stage processing in the second cycle τ3, as shown in FIG.
The data hit is read and transferred to the data register 262 of the processor 26 via the data bus DB.
一方、このサイクルτ3においては、最初のメモリアク
セス要求信号MRQのに対する第2サイクル(第2ステ
ージ)の処理とオーバーラツプして、次のメモリアクセ
ス要求信号MRQ■に対する第1サイクル(第1ステー
ジ)の処理が行われる(第6図及び第8図(d)の5T
G1■及び(e)の5TG2■参照)。On the other hand, in this cycle τ3, the processing of the second cycle (second stage) for the first memory access request signal MRQ overlaps with the processing of the first cycle (first stage) for the next memory access request signal MRQ■. Processing is performed (5T in Figures 6 and 8(d))
(See G1■ and (e) 5TG2■).
次のメモリアクセス要求信号MRQ■の第1サイクル(
第8図(d)のτ、サイクルの第1ステージ5TG1■
)において、キャッシュメモリ22にヒツトすると、続
くで4サイクルにおいて、メモリアクセス要求信号MR
Q■の第2サイクル、すなわち、第2ステージ5TG2
■の処理が実行される。The first cycle of the next memory access request signal MRQ■ (
τ in Figure 8(d), the first stage of the cycle 5TG1■
), when the cache memory 22 is hit, the memory access request signal MR is activated in the following 4 cycles.
The second cycle of Q■, that is, the second stage 5TG2
Processing (2) is executed.
以下同様にして、キャッシュメモリにヒットした場合は
、各メモリアクセス要求信号MRQに対する、第1ステ
ージ5TGI及び第2ステージ5TG2の各処理が連続
して実行される(図示せず)。Similarly, when the cache memory is hit, the processes of the first stage 5TGI and the second stage 5TG2 are sequentially executed for each memory access request signal MRQ (not shown).
(2) キャッシュメモリにミスヒツトした場合いま
、τ2で行われたメモリアクセス要求信号MRQ■の第
1ステージ5TGI■の処理において、プロセッサ26
から送出されたアドレスがキャッシュメモリ24にミス
ヒツトしたとすると、ヒツト信号HITは、サイクルτ
2においてOとなる(第8図(j))。(2) In the case of a cache memory miss In the processing of the first stage 5TGI■ of the memory access request signal MRQ■ performed at τ2, the processor 26
Suppose that the address sent from the cache memory 24 misses, the hit signal HIT is
2 becomes O (Fig. 8 (j)).
メモリアクセス制御回路30は、ヒツト信号HITが0
(ミスヒット)のときは、τ3サイクルにおいてクロッ
ク抑止信号CLKSPを発生する。The memory access control circuit 30 has a hit signal HIT of 0.
(Mishit), the clock inhibit signal CLKSP is generated in the τ3 cycle.
更に、メモリアクセス制御回路30は、ヒット信号HI
Tが0(ミスヒツト)で、かつ、連続するメモリアクセ
ス要求信号MRQ■の第1ステージ5TG1■がオンで
あるときは(第8図(d)のτ3サイクル)、τ4サイ
クルからステージ遷移抑止信号5TINHをオンにする
(第8図(]))。Furthermore, the memory access control circuit 30 receives a hit signal HI.
When T is 0 (miss) and the first stage 5TG1■ of the continuous memory access request signal MRQ■ is on (τ3 cycle in FIG. 8(d)), the stage transition inhibition signal 5TINH is activated from the τ4 cycle. Turn on (Figure 8 (])).
これにより、メモリアクセス制御回路30から出力され
るメモリアクセス要求信号MRQ■の第1ステージ信号
STG 1■の値は、τ、サイクル以降は連続して値1
を保持するようになり(第8図(d))、メモリアクセ
ス要求信号MRQ■の第2ステージ信号5TG2■は、
τ3サイクル以降は連続して値1を保持するようになる
(第8図(e))。As a result, the value of the first stage signal STG1■ of the memory access request signal MRQ■ output from the memory access control circuit 30 is continuously 1 from the cycle onwards.
(FIG. 8(d)), the second stage signal 5TG2■ of the memory access request signal MRQ■ is
After the τ3 cycle, the value 1 is continuously held (FIG. 8(e)).
また、前述のようにて3サイクルにおいてクロック抑止
信号CLKSPが発生されることにより、τ4以降のク
ロックの発生を抑止されて、τ4サイクル以降のメモリ
アクセス制御回路30の制御動作は、−時中断される(
第8図(n)及び(a))。Furthermore, by generating the clock inhibit signal CLKSP in the 3rd cycle as described above, the generation of clocks after τ4 is inhibited, and the control operation of the memory access control circuit 30 after the τ4 cycle is interrupted at - time. (
Figures 8(n) and (a)).
キャッシュメモリ24にミスヒツトしたことにより、メ
モリアクセス制御回路30の制御動作が一時中断してい
る間に、MMゼインフェースコントローラ21は、図示
しないメインメモリから、ミスヒツトしたデータをリー
ドし、データバスDBを経由してプロセッサ26に転送
するとともに、キャッシュメモリ24にこのリードデー
タを登録し、そのアドレス等のタグ情報をディレクトリ
メモリ22に登録する処理を行う。このデータ転送処理
は、τ4〜τ6サイクルの間でおこなわれる。While the control operation of the memory access control circuit 30 is temporarily suspended due to a miss in the cache memory 24, the MM interface controller 21 reads the missed data from the main memory (not shown) and connects the data bus DB. The read data is transferred to the processor 26 via the read data, and the read data is registered in the cache memory 24, and the tag information such as its address is registered in the directory memory 22. This data transfer process is performed between τ4 and τ6 cycles.
メインメモリからのデータリードは、ブロック単位で行
われ、メモリアクセス要求信号M R,Q■に対するミ
スヒツトしたデータを含む複数ワード(図ではD■−1
〜D■−4の4ワード)がリードされて、プロセッサ2
6及びキャッシュメモリ24に転送される(第8図(g
))。Data reading from the main memory is performed in block units, and multiple words (D■-1 in the figure) containing mishit data in response to memory access request signals M R, Q■.
~D■-4 words) are read and the processor 2
6 and the cache memory 24 (Fig. 8 (g)
)).
メインメモリより各ブロック単位のデータがリードされ
るときは、MMゼインフェースコントローラ21からデ
ータワードD■−1〜D■−4に対応して、ブロックリ
ード信号BLKRDI−BLKRD4が、メモリアクセ
ス制御回路30に送出されるが、第8図ら)及び(i)
には、ブロックリード信号BLKRD3及びBLKRD
4が示されている。When data in each block is read from the main memory, block read signals BLKRDI to BLKRD4 are sent to the memory access control circuit 30 in response to data words D■-1 to D■-4 from the MM interface controller 21. Figure 8 et al.) and (i)
block read signals BLKRD3 and BLKRD
4 is shown.
最初のデータD■−1が転送された時点でプロセッサ2
6は次の処理に移れるので、メモリアクセス制御回路3
0のクロックCLKの抑止を止め、その制御を再開させ
てよい。そこで、MMゼインフェースコントローラ21
は、スタート信号5TARTを1 (オン)にする(第
8図Φ)のτ7)。When the first data D■-1 is transferred, the processor 2
6 can move on to the next process, so the memory access control circuit 3
The suppression of the 0 clock CLK may be stopped and its control resumed. Therefore, MM Zein Face Controller 21
Then, the start signal 5TART is turned on (τ7 in FIG. 8 Φ)).
メモリアクセス制御回路30は、スタート信号5TAR
Tが1になると、次のτ8サイクルでクロック抑止信号
CLKSPを0にして、クロックCLKを再開させる(
第8図(a)及び(n)のτ、サイクル)。The memory access control circuit 30 receives a start signal 5TAR.
When T becomes 1, the clock inhibit signal CLKSP is set to 0 in the next τ8 cycle and the clock CLK is restarted (
8(a) and (n), τ, cycle).
ミスヒツトデータの転送が終了した時点、すなわちデー
タD■−4が転送された時点(τ、サイクルの終了時点
)で、ステージ遷移を抑止する必要がなくなり、次のτ
、2サイクルからステージ遷移を開始して差支えない。At the point when the transfer of the mishit data is completed, that is, when the data D■-4 is transferred (τ, the end of the cycle), there is no longer a need to suppress the stage transition, and the next τ
, stage transition may start from the second cycle.
しかし、メモリアクセス制御回路30は、ブロックリー
ドの3ワード目のデータD■−3の転送期間を示すブロ
ックリード信号BLKRD3がτ1゜でオンになると、
次のτ11よりも1サイクル遅れた次のτ12サイクル
でステージ遷移抑止信号5TINHをO(オフ)にする
(第8図(1))、なお、τ5.よりも1サイクル遅ら
せる理由については後に説明する)。However, in the memory access control circuit 30, when the block read signal BLKRD3 indicating the transfer period of the third word of block read data D■-3 is turned on at τ1°,
In the next τ12 cycle, which is one cycle later than the next τ11, the stage transition inhibition signal 5TINH is turned O (off) (FIG. 8 (1)). The reason for delaying by one cycle will be explained later).
これにより、メモリアクセス要求信号MRQ(に関する
ステージ処理である第1ステージST+l■はτ、2サ
イクルまでオン状態を維持し続け、キャッシュメモリ2
4に対するヒツト判定が可真になったτ12で有効なヒ
ツト判定が行われ、τ1サイクルにおいて第2ステージ
5TG2■が正Iに実行される(第8図(d) 、 (
e) 、 (j) 、(財))。As a result, the first stage ST+l, which is the stage processing related to the memory access request signal MRQ, continues to be on until τ, 2 cycles, and the cache memory 2
A valid hit determination is made at τ12 when the hit determination for 4 becomes valid, and the second stage 5TG2■ is executed as positive I in the τ1 cycle (FIG. 8(d), (
e), (j), (goods)).
τ1サイクルでは、前述のτ3サイクルの場イと同様に
、メモリアクセス要求信号MRQ■に文する第2サイク
ルの処理(第2ステージ5TG2■)と次のメモリアク
セス要求信号MRQ−■の輝1サイクルの処理(第1ス
テージ5TG1■)とが並行して行われる(第8図(d
) 、 (e) 、 (j) 、 Qc) )。In the τ1 cycle, as in the case of the above-mentioned τ3 cycle, the second cycle processing (second stage 5TG2) corresponding to the memory access request signal MRQ■ and the bright 1 cycle of the next memory access request signal MRQ-■ are performed. (1st stage 5TG1■) is performed in parallel (Fig. 8(d)
), (e), (j), Qc)).
次に、τ、1サイクルより1サイクル遅れた次のτ12
サイクルでステージ遷移抑止信号ST I NHをO(
オフ)にする理由を、第9図を参照して説明する。Next, the next τ12, which is one cycle later than τ, 1 cycle
cycle, the stage transition inhibit signal ST I NH is set to O(
The reason for turning off) will be explained with reference to FIG.
第9図は、第8図と同じく動作タイミングチャートを示
したもので、(a)CLK−(p)STARTの各記号
の意味及びτ8サイクルまでの動作内容は、の 第8
図の動作内容と同しである。FIG. 9 shows an operation timing chart similar to FIG.
The operation content is the same as that shown in the figure.
3 ただし、第8図(h)及び(i)には、ブロッ
クリード信号BLKRD2及びBLKRD3が示されて
い辷 る。続<(q)のPINV’Lはインバリデ
ーション要求信号であり、キャッシュメモリ24に登録
されi たデータを指定してそれを無効にすることを
要求する信号である。このインバリデーション要求信’
号P I N V LはMMインタフェースコン
トローラt 21の監視ディレクトリ211によ
り発生され、メモリアクセス制御回路30に送られる。3. However, block read signals BLKRD2 and BLKRD3 are shown in FIGS. 8(h) and (i). PINV'L in continuation <(q) is an invalidation request signal, which is a signal that specifies data registered in the cache memory 24 and requests that it be invalidated. This invalidation request message'
The number P I N V L is generated by the monitoring directory 211 of the MM interface controller t 21 and sent to the memory access control circuit 30 .
また、次の(r)のINVLは、先に説明したように、
キャッシュメモリ24に登録されているデータを無効化
するインバリデーション信号であり、このインバリデー
ション信号を受けると、ディレクトリメモリ22にある
無効化対象データ領域に対応する領域に無効フラグ(図
示せず)が立てられる。Also, the INVL of the following (r) is, as explained earlier,
This is an invalidation signal that invalidates data registered in the cache memory 24. When this invalidation signal is received, an invalidation flag (not shown) is set in the area corresponding to the invalidation target data area in the directory memory 22. Can be erected.
メモリアクセス要求信号MRQ■のデータD■−4の転
送がτ8.で終了したとき、次のτ1□サイクルにおい
てメモリアクセス要求信号MRQ■のデータ転送を行お
うとする場合は、メモリアクセス制御回路30は、ブロ
ンクリートの2ワード目のデータD■−2の転送期間を
示すプロ、クリート信号BLKRD2がτ、でオンにな
ると、次のτ、。よりも1サイクル遅れた次のτ1.サ
イクルでステージ遷移抑止信号5TINHを0(オフ)
にする(第9図(1))。Data D■-4 of memory access request signal MRQ■ is transferred at τ8. If the memory access request signal MRQ■ is to be transferred in the next τ1□ cycle, the memory access control circuit 30 sets the transfer period of the second word data D■-2 of the bronze read to As shown, when the cleat signal BLKRD2 is turned on at τ, the next τ,. The next τ1. which is one cycle later than τ1. Set stage transition inhibition signal 5TINH to 0 (off) in cycles.
(Figure 9 (1)).
これにより、メモリアクセス要求信号MRQ■に関する
ステージ処理である第1ステージ5TG1■はτ1.サ
イクルまでオン状態を維持し続け、キャッシュメモリ2
4に対するヒツト判定が可能になったτ、2で有効なヒ
ツト判定が行われ、τI2サイクルにおいて第2ステー
ジ5TG2■が正常に実行される(第8図(ロ)、 (
e) 、 (j> 、(財))。As a result, the first stage 5TG1■, which is a stage process related to the memory access request signal MRQ■, performs τ1. Cache memory 2 continues to remain on until the cycle.
A valid hit determination is made at τ, 2 when the hit determination for 4 becomes possible, and the second stage 5TG2■ is normally executed in the τI2 cycle (Figure 8 (b),
e) , (j> , (goods)).
τltサイクルでは、前述のτ3サイクルの場合と同様
に、メモリアクセス要求信号MRQ■に対する第2サイ
クルの処理(第2ステージ5TG2■)と次のメモリア
クセス要求信号MRQ■の第1サイクルの処理(第1ス
テージ5TGI■)とが並行して行われる(第8図(d
) 、 (e) 、 (j) 、 (k) )。In the τlt cycle, as in the case of the τ3 cycle described above, the second cycle processing (second stage 5TG2) for the memory access request signal MRQ■ and the first cycle processing (second stage 5TG2) for the next memory access request signal MRQ■ are performed. 1 stage 5 TGI ■) is carried out in parallel (Fig. 8 (d)
), (e), (j), (k)).
ところが、もし、メモリアクセス要求信号MRQ■につ
いてのデータ転送が行われるτ1□サイクルの前に、他
プロセ・ンサ又はDMAにより自己のキャッシュメモリ
24のディレクトリメモリ22に登録されているメイン
メモリ領域に対するライトが行われたとすると、監視デ
ィレクトリ211は、τ1゜においてインバリデーショ
ン要求信号PINVLを発生して、メモリアクセス制御
回路30に送る。However, if the main memory area registered in the directory memory 22 of the own cache memory 24 is written by another processor or DMA before the τ1□ cycle in which the data transfer for the memory access request signal MRQ■ is performed. If this occurs, the monitoring directory 211 generates an invalidation request signal PINVL at τ1° and sends it to the memory access control circuit 30.
インバリデーション要求はステージ処理に常に優先して
行う必要があるので、メモリアクセス制御回路30は、
インバリデーション要求信号PINVLを受けると、次
のτ、Iサイクルにおいてインバリデーション信号IN
VLを発生し、ディレクトリメモリ22をインバリデー
トする。Since the invalidation request must always be given priority over stage processing, the memory access control circuit 30
Upon receiving the invalidation request signal PINVL, the invalidation signal IN is activated in the next τ, I cycle.
VL is generated and the directory memory 22 is invalidated.
このため、プロセッサ26は、τ11サイクルにおける
メモリアクセス要求信号MRQ■の第1ステージ5TG
I■の処理が実行できなくなる。この結果、キャンツユ
メモリ24に対するヒツト判定が不可能Qこなり、以降
の各処理も実行不可能になる。Therefore, the processor 26 receives the first stage 5TG of the memory access request signal MRQ■ in the τ11 cycle.
Processing I■ becomes impossible to execute. As a result, it becomes impossible to perform hit determination on the candidate memory 24, and subsequent processes also become impossible.
そこで、このようなインバリデーションが発生しても、
キセノシュメモリ24及びディレクトリメモリ22に対
するインバリデーション処理を行った後に、それまでの
ステージ処理が正常に実行できるようにするため、従来
のメモリアクセス制御では、第8図で説明したように、
ミスヒット時のデータD■−1〜■の転送が終了したτ
11の次のτ1□サイクルからステージ遷移抑止信号5
TINHをオフにして、ステージ処理を再開させるよう
にしている。Therefore, even if such an invalidation occurs,
In order to allow the previous stage processing to be executed normally after performing the invalidation processing on the xenosh memory 24 and the directory memory 22, conventional memory access control performs the following steps as explained in FIG.
τ when the transfer of data D■-1 to ■ at the time of mishit is completed
Stage transition inhibit signal 5 from the next τ1□ cycle of 11
TINH is turned off and stage processing is restarted.
これにより、もし、τ、。サイクルにおいてインバリデ
ーション要求信号PINVLが発生しても、次のτ、サ
イクルでディレクトリメモリ22に対する所定のインバ
リデーション処理を行い、続くτ1□サイクル以降にお
いて、先に第8図で説明したように、それまでの各ステ
ージ処理が正常に実行される。With this, if,τ,. Even if the invalidation request signal PINVL is generated in a cycle, a predetermined invalidation process is performed on the directory memory 22 in the next τ cycle, and from the following τ1□ cycle onwards, as explained earlier in FIG. Each stage of processing up to this point is executed successfully.
なお、第9図の(2)に示すヒツトデイレイ信号HIT
Dは、ヒツト信号HITを1サイクルデイレイした信号
であり、第1ステージ有効信号5TG1■は、第1ステ
ージ処理が有効であったことを指示する信号である。両
信号はメモリアクセス制御回路30の内部で発生され、
この中で、ステージ1有効信号5TGI Vとヒツトデ
イレイ信号HITDは、ステージ遷移抑止信号ST I
NHの発生に使用されるものである。Note that the hit delay signal HIT shown in (2) in FIG.
D is a signal obtained by delaying the hit signal HIT by one cycle, and the first stage valid signal 5TG1■ is a signal indicating that the first stage processing is valid. Both signals are generated inside the memory access control circuit 30,
Among these, the stage 1 valid signal 5TGIV and the hit delay signal HITD are the stage transition inhibit signal ST I
It is used to generate NH.
〔発明が解決しようとする課題]
従来のメモリアクセス制御は、前述のように、キャッシ
ュメモリにミスヒツトしたときは、メインメモリからミ
スヒツトデータをリードして転送するときにキャッシュ
メモリに対するインバリデーションが発生しても、メモ
リアクセス制御及びステージ制御が正常に実行できるよ
うにするため、ミスヒツトデータの転送が終了したサイ
クルよりも1サイクル遅らせて、ステージ処理を再開さ
せるようにしていた。[Problems to be Solved by the Invention] As mentioned above, in conventional memory access control, when a cache memory miss occurs, invalidation of the cache memory occurs when reading and transferring the missed data from the main memory. However, in order to ensure that memory access control and stage control can be executed normally, stage processing is restarted one cycle after the cycle in which mishit data transfer is completed.
このため、キャッシュメモリに対してミスヒツトしたと
きにインバリデーションか発生する確率が通常低いにも
かかわらず、ミスヒツト時は常に余分の1サイクルが挿
入され結果、以降の処理がその分遅れ、全体のメモリア
クセス処理効率で低下するという問題があった。For this reason, even though the probability of invalidation occurring when a cache memory miss occurs is usually low, an extra cycle is always inserted when a cache memory miss occurs, resulting in subsequent processing being delayed by that amount and reducing the overall memory capacity. There was a problem that access processing efficiency decreased.
本発明は、キャッシュメモリにミスヒツトした時は、イ
ンバリデーションが発生したときのみミスヒツトデータ
のデータ転送終了後に再開されるステージ処理の開始サ
イクルを遅らせることにより、メモリアクセス処理効率
を向上させるように改良したメモリアクセス制御回路を
提供することを目的とする。The present invention improves memory access processing efficiency by delaying the start cycle of stage processing, which is resumed after the data transfer of the missed data is resumed only when invalidation occurs, when a cache memory miss occurs. The purpose of the present invention is to provide a memory access control circuit with improved performance.
〔課題を解決するための手段]
前述の課題を解決するために本発明が採用した手段を、
第1図を参照して説明する。第1図は、本発明の基本構
成をブロックで示したものである。[Means for solving the problems] The means adopted by the present invention to solve the above-mentioned problems are as follows:
This will be explained with reference to FIG. FIG. 1 shows the basic configuration of the present invention in blocks.
第1図において、10は全体のメモリアクセス制御回路
であり、第1サイクルでアドレスを送出し、第2サイク
ルで次のアクセスの第1サイクルとオーバラップしてデ
ータ転送を行い、第1サイクルで送出したアドレスと該
アドレスによりタグメモリをアクセスして得られるヒツ
ト情報及びヒツトブロック番号情報とを第2サイクルの
間保持し、ヒツト情報がヒツトを示した場合は、第2サ
イクルで前記保持されたブロック番号とアドレスにより
キャッシュメモリ(図示せず)をアクセスし、ミスヒツ
トした場合は、メインストレージより前記アドレスによ
りブロックリードして、2サイクルでキャッシュメモリ
をアクセスする。In FIG. 1, 10 is the entire memory access control circuit, which sends out an address in the first cycle, transfers data 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 using the address are held during the second cycle, and if the hit information indicates a hit, the held address is stored in the second cycle. A cache memory (not shown) is accessed using the block number and address, and if there is a miss, the block is read from the main storage using the address and the cache memory is accessed in two cycles.
11はステージ遷移抑止信号発生回路(以下、5TIN
H発生回路で示す)であり、第1サイクルで出力された
ヒツト情報がミスヒツトを示した場合に、第2サイクル
のステージ遷移を抑止するステージ遷移抑止信号ST
I NHを発生する処理を行う。11 is a stage transition inhibition signal generation circuit (hereinafter referred to as 5TIN
H generation circuit), and a stage transition suppression signal ST that suppresses stage transition in the second cycle when the hit information output in the first cycle indicates a miss.
Perform processing to generate I NH.
12はメモリアクセス要求許可信号発生回路(以下、M
RQOK発生回路で示す)であり、ミスヒツト時はメモ
リアクセス要求許可信号MRQOK (MRQOK信号
で示す)をオフにし、メインストレージより前記アドレ
スによりリードされた最後のデータがキャッシュメモリ
に到達する直前のサイクルで前記MRQOK信号をオフ
からオンにする処理を行う。MRQOK信号については
、先に説明したとおりである。12 is a memory access request permission signal generation circuit (hereinafter referred to as M
(represented by the RQOK generation circuit), and when a miss occurs, the memory access request permission signal MRQOK (represented by the MRQOK signal) is turned off, and in the cycle immediately before the last data read from the main storage at the address reaches the cache memory. Processing is performed to turn the MRQOK signal from off to on. The MRQOK signal is as described above.
13はステージ遷移抑止停止回路(以下、5TINH停
止回路で示す)であり、前記MRQOK信号′がオフか
らオンになったことを検出して、5TINH発生回路1
1の発生するステージ遷移抑止信号5TINHを停止さ
せる処理を行う。Reference numeral 13 denotes a stage transition inhibition stop circuit (hereinafter referred to as 5TINH stop circuit), which detects that the MRQOK signal' is turned on from off, and turns on the 5TINH generation circuit 1.
Processing is performed to stop the stage transition inhibition signal 5TINH generated by 1.
14はメモリアクセス要求許可抑止回路(以下、MRQ
OK抑止回路で示す)であり、MRQOK信号をオンに
するサイクルにおいて、自キャッシュメモリの無効化要
求がなされた場合に、前記サイクルにおいて無効化処理
を行うために、MRQOK発生回路12が発生するMR
QOK信号がオンになるのを抑止する処理を行う。14 is a memory access request permission suppression circuit (hereinafter referred to as MRQ).
(shown as an OK suppression circuit), and when a request to invalidate the own cache memory is made in a cycle in which the MRQOK signal is turned on, the MRQOK generation circuit 12 generates an MR signal in order to perform invalidation processing in the cycle.
Performs processing to prevent the QOK signal from turning on.
本発明の作用を、(1)キャッシュメモリにヒツトした
場合、(2)キャンシメモリにミスヒットし、かつイン
バリデーション要求のない場合及ヒ(3)キャッシュメ
モリにミスし、かつインバリデーション要求のある場合
に分けてそれぞれ説明する。The effects of the present invention are as follows: (1) When there is a hit in the cache memory, (2) When there is a miss on the cache memory and there is no invalidation request, and (3) When there is a miss on the cache memory and there is no invalidation request. Each case will be explained separately.
(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 performs memory access control in two cycles.
すなわち、第1サイクルで図示しないメインメモリをア
クセスするアドレスを送出し、第2サイクルで次のアク
セスの第1サイクルとオーバランプしてメインメモリか
らのり−ドデータ転送を行う。That is, in the first cycle, an address for accessing the main memory (not shown) is sent, and in the second cycle, data is transferred from the main memory by overlapping with the first cycle of the next access.
第1サイクルで送出したアドレスと該アドレスによりデ
ィレクトリメモリをアクセスし、得られるヒツト情報と
アドレス情報(例えば、ヒツトブロック番号情報)とを
第2サイクルの間保持する。The directory memory is accessed using the address sent in the first cycle and the address, and the obtained hit information and address information (for example, hit block number information) are held during the second cycle.
ヒツト情報がキャッシュメモリに対するヒツトを示した
場合は、第2サイクルで前記保持されたアドレス情報に
よりキャッシュメモリ(図示せず)をアクセスして、所
定のデータをリードする。If the hit information indicates a hit to the cache memory, the cache memory (not shown) is accessed in the second cycle using the held address information to read predetermined data.
以下、各アクセスについて、現アクセスの第2サイクル
(データ転送ステージ)と次のアクセスの第1サイクル
、(アドレス送出ステージ)とがオーバラップする関係
で、前述の2サイクルのメモリアクセス制御が繰り返さ
れる。Thereafter, for each access, the aforementioned two-cycle memory access control is repeated in such a way that the second cycle (data transfer stage) of the current access and the first cycle (address sending stage) of the next access overlap. .
(2)キャッシュメモリにミスヒツトし、インバリデー
ション要求がない場合
5TINH発生回路11は、第1サイクルで出力された
ヒツト情報がミスヒツトを示した場合に、第2サイクル
のステージ遷移を抑止するステージ遷移抑止信号5TI
NHを発生して、図示しないプロセッサが第2サイクル
で行うステージ処理が遷移しないようにする。(2) When there is a miss in the cache memory and there is no invalidation request, the 5TINH generation circuit 11 suppresses stage transition in the second cycle when the hit information output in the first cycle indicates a miss. Signal 5TI
NH is generated to prevent transition of stage processing performed by a processor (not shown) in the second cycle.
一方、MRQOK発生回路12は、ミスヒツト時はMR
QOK信号をオフにして、メモリアクセス制御面110
の以鋒のメモリアクセス制御を中断させる。On the other hand, the MRQOK generation circuit 12 generates MR
With the QOK signal turned off, the memory access control surface 110
interrupts memory access control.
メモリアクセス制御回路10におけるメモリアクセス制
御が中断している間に、プロセッサは、メインメモリよ
り前記、アドレス情報によりミスヒツトデータを例えば
ブロック単位でリードする処理が行われる。While the memory access control in the memory access control circuit 10 is suspended, the processor performs a process of reading mishit data from the main memory in block units, for example, based on the address information.
MRQOK発生回路12は、このリードされた最後のデ
ータがキャッシュメモリに到達する直前のサイクルで前
記MRQOK信号をオフからオンにする。The MRQOK generation circuit 12 turns the MRQOK signal from off to on in a cycle immediately before the last read data reaches the cache memory.
5TINH停止回路13は、MRQOK発生回路12の
発生する前記MRQOK信号がオフからオンになったこ
とを検出して、5TINH発生回路110発生するステ
ージ遷移抑止信号5TINHを停止させる。The 5TINH stop circuit 13 detects that the MRQOK signal generated by the MRQOK generation circuit 12 is turned on from off, and stops the stage transition inhibit signal 5TINH generated by the 5TINH generation circuit 110.
これにより、メインメモリからミスヒツトデータのブロ
ックリードが終了したサイクルの次のサイクルから直ち
に次のアクセスの第1サイクルの処理が実行される。As a result, the first cycle of the next access is executed immediately from the cycle following the cycle in which block reading of the mishit data from the main memory is completed.
このように、キャッシュメモリにミスヒツトしたがイン
バリデーション要求がない場合は、メインメモリからミ
スヒツトデータのリードが終了すると、従来方式のよう
に次の1サイクルを開けることなく、直ちに次のアクセ
スの第1サイクルの処理が実行されるので、無駄なサイ
クルが無くなり、メモリアクセス処理効率を向上させる
ことができる。In this way, if there is a miss in the cache memory but there is no invalidation request, when reading of the missed data from the main memory is completed, the next access is immediately started without waiting for the next cycle as in the conventional method. Since one cycle of processing is executed, there are no wasted cycles, and memory access processing efficiency can be improved.
(3) キャッシュメモリにミスヒットし、インバリ
デーション要求がある場合
キャッシュメモリにミスヒツトし、メインメモリからミ
スヒットデータをリードして転送するときにキャソンユ
メモリに対するインバリデーション要求が発生した場合
、すなわち、MRQOK信号が再びオンになるサイクル
において自キャッシュメモリの無効化要求がなされた場
合は、メモリアクセス制御回路10のMRQOK抑止回
路14は、前記サイクルにおいて無効化処理を行うため
に、前記MRQOK発生回路12が発生するMRQOK
信号がオンになるのを抑止する処理を行う。(3) When there is a cache memory mishit and an invalidation request If there is a cache memory mishit and an invalidation request is generated for the cassonry memory when reading and transferring the mishit data from the main memory, that is, the MRQOK signal If a request to invalidate its own cache memory is made in a cycle in which the MRQOK generation circuit 12 is turned on again, the MRQOK suppression circuit 14 of the memory access control circuit 10 generates the MRQOK generation circuit 12 in order to perform invalidation processing in the cycle. MRQ OK
Performs processing to prevent the signal from turning on.
これにより、メインメモリからミスヒツトデータのブロ
ックリードが終了したサイクルの次のサイクルにおいて
は、次のアクセスの第1サイクルの処理が抑止されて、
無効化対象となったキャッシュメモリ領域に関するイン
バリデーション処理が行われる。As a result, in the cycle following the cycle in which block reading of mishit data from the main memory is completed, the processing of the first cycle of the next access is suppressed.
Invalidation processing is performed regarding the cache memory area targeted for invalidation.
インバリデーション処理が終了すると、次のサイクルか
ら次のアクセスに対する処理が正常に実行される。When the invalidation process is completed, the process for the next access is normally executed from the next cycle.
このように、キャッシュメモリにミスヒットしたが、イ
ンバリデーション要求があった場合にのみ、メインメモ
リからミスヒツトデータのブロックリードが終了すると
、従来方式のように次の1サイクルが開けられてインバ
リデーション処理が行われることになる。In this way, only when there is a mishit in the cache memory but an invalidation request is made, when the block read of the missed data from the main memory is completed, the next cycle is opened like in the conventional method and the invalidation is performed. Processing will take place.
なお、DMA転送の場合は連続してインバリデーション
要求が発生する場合があるが、その場合は、インバリデ
ーション要求が連続している間MRQOK発生回路12
が発生するMRQOK信号がオンになるのを抑止する処
理が行われる。Note that in the case of DMA transfer, invalidation requests may occur continuously, but in that case, the MRQOK generation circuit 12
Processing is performed to prevent the MRQOK signal generated by the MRQOK signal from turning on.
これにより、インバリデーション要求数に対応して、そ
れらのインバリデーション処理を行うサイクルが挿入さ
れて、連続したインバリデーション要求に対するインバ
リデーション処理が正常に行うことができる。As a result, cycles for performing invalidation processing are inserted in accordance with the number of invalidation requests, and invalidation processing for successive invalidation requests can be performed normally.
以上のように、本発明は、キャッシュメモリにミスヒッ
ト時には、インバリデーション要求が発生したときのみ
ミスヒツトデータのデータ転送終了後、1サイクル遅れ
てステージ処理を再開させるようにしたので、インバリ
デーション要求のないときは無駄なサイクルが無くなっ
て、メモリアクセス処理効率を向上させることができる
。As described above, in the case of a cache memory mishit, the stage processing is restarted with a one-cycle delay after data transfer of the mishit data is completed only when an invalidation request occurs. When there is no wasted cycles, memory access processing efficiency can be improved.
また、インバリデーション要求個数に対応するサイクル
個数だけ遅れてステージ処理を再開させるようにしたの
で、連続してインバリデーション要求が発生しても、こ
れらのインバリデーション処理を正常に処理できるとと
もに、中断された各アクセス要求に対するステージ処理
を正常に再開させることができる。In addition, stage processing is restarted after a delay of the number of cycles corresponding to the number of invalidation requests, so even if invalidation requests occur consecutively, these invalidation processes can be processed normally and are not interrupted. The stage processing for each access request can be restarted normally.
〔実施例]
本発明の一実施例を、第2図乃至第6図を参照して説明
する。第2図は本発明の一実施例のメモリアクセス制御
回路が使用されるメモリアクセス制御システムの構成の
説明図、第3図は本発明の一実施例の構成の説明図、第
4図は同実施例のインバリデーション要求がないときの
動作タイミングチャート、第5図は同実施例のインバリ
デーション要求があったときの動作タイミングチャート
である。第6図のステージ遷移説明図については先に説
明したとおりである。[Embodiment] An embodiment of the present invention will be described with reference to FIGS. 2 to 6. FIG. 2 is an explanatory diagram of the configuration of a memory access control system in which a memory access control circuit according to an embodiment of the present invention is used, FIG. 3 is an explanatory diagram of the configuration of an embodiment of the present invention, and FIG. FIG. 5 is an operation timing chart when there is no invalidation request in the embodiment, and FIG. 5 is an operation timing chart when there is an invalidation request in the same embodiment. The stage transition explanatory diagram of FIG. 6 is as described above.
(A)実施例の構成
第2図において、メモリアクセス制御回路10を除いた
他の構成は、第7図で説明した従来のメモリアクセス制
御システムの構成と共通するので、共通する構成要素部
分には同じ符号を付して説明する。(A) Configuration of 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 explained in FIG. will be explained using the same reference numerals.
すなわち、21はメインメモリインタフェースコントロ
ーラ(MMインタフェースコントローラ)であり、図示
しないメインメモリとメモリアクセス制御回路とのイン
タフェース制御を行う。211はMMゼインフェースコ
ントローラ21に設けられた監視ディレクトリであり、
自己のキヤ・ンシュのディレクトリに登録されているメ
インメモリ領域への、他のプロセンサ又はDMA (直
接記憶アクセス)によるライトを監視する。That is, 21 is a main memory interface controller (MM interface controller), which performs interface control between the main memory and a memory access control circuit (not shown). 211 is a monitoring directory provided in the MM Zeinface controller 21;
It monitors writes by other processors or DMA (direct memory access) to the main memory area registered in the directory of its cache.
MARはMMゼインフェースコントローラ21とメイン
メモリ間のアドレスバスであり、MADはMMゼインフ
ェースコントローラ21とメインメモリ間のデータバス
である。MAR 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はディレクトリメモリであり、キャッシュメモリに
登録されているデータのアドレス情報やそのデータが有
効か無効か指示する情報が登録される。22 is 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 indicating that the cache memory 24 has been hit, and indicates 1 when there is a hit, and indicates 0 when there is a miss.
23はヒツト番号保持レジスタ(HITレジスタで示す
)であり、第1サイクルでディレクトリメモリ22から
読み出されたヒツト情報が格納される。23 is a hit number holding register (indicated by HIT register), in which hit information read from the directory memory 22 in the first cycle is stored.
24はキャッシュメモリであり、バイポーラトランジス
タ等の高速のメモリ素子で構成され、アクセスされたメ
インメモリのデータが一時登録される。A cache memory 24 is composed of high-speed memory elements such as bipolar transistors, and temporarily registers accessed data in the main memory.
25はキャッシュアドレス保持レジスタ(cMAレジス
タ)であり、第1サイクルで送出されたキャッシュメモ
リ24をアクセスするアドレスを格納して、次の第2サ
イクルまで保持する。A cache address holding register (cMA register) 25 stores an address for accessing the cache memory 24 sent out in the first cycle and holds it until the next second cycle.
26はプロセッサであり、各サイクルにおけるステージ
処理を実行するとともに、システム全体の動作を制御す
る。A processor 26 executes stage processing in each cycle and controls the operation of the entire system.
261はプロセッサ26に設けられたアドレスレジスタ
であり、メインメモリ、ディレクトリメモリ22、キャ
ッシュメモリ24をアクセスするアドレスが格納される
。261 is an address register provided in the processor 26, in which addresses for accessing the main memory, directory memory 22, and cache memory 24 are stored.
262はプロセッサ26に設けられたデータレジスタで
あり、キャッシュメモリ24又はメインメモリから読み
出されたデータが格納される。262 is a data register provided in the processor 26, in which data read from the cache memory 24 or main memory is stored.
ABはMMゼインフェースコントローラ21とプロセッ
サ26間のアドレスバスであり、CBは各種制御信号が
転送される制御信号ハスであり、DBはMMゼインフェ
ースコントローラ21とプロセッサ26間のデータを転
送するデータバスである。AB is an address bus between the MM interface controller 21 and the processor 26, CB is a control signal bus to which various control signals are transferred, and DB is a data bus to transfer data between the MM interface controller 21 and the processor 26. It is.
INVLは、キャッシュメモリ24に登録されているデ
ータを無効化するインバリデーション信号であり、この
インバリデーション信号を受けると、ディレクトリメモ
リ22にある無効化対象データ領域に対応する領域に無
効フラグ(図示せず)が立てられる。INVL is an invalidation signal that invalidates data registered in the cache memory 24. When this invalidation signal is received, an invalidation flag (not shown in the figure) is set in the area corresponding to the invalidation target data area in the directory memory 22. ) will be erected.
メモリアクセス制御回路lOは、MMゼインフェースコ
ントローラ21内に設けられ、プロセッサ26からの指
令を受けて、メインメモリに対するメモリアクセス制御
を行う。メモリアクセス制御回路10の動作はクロック
CLKOに同期して行われるが、このクロックCLKO
はシステムクロック5CLKに同期して発生される。The memory access control circuit IO is provided in the MM interface controller 21 and receives instructions from the processor 26 to control memory access to the main memory. The operation of the memory access control circuit 10 is performed in synchronization with the clock CLKO.
is generated in synchronization with the system clock 5CLK.
また、このメモリアクセス制御回路lOの発生する各種
制御信号は、第8図及び第9図の従来のメモリアクセス
制御回路の動作タイミングチャートで説明したものと同
じであるが、次のメモリアクセス制御回路の一実施例の
構成の項においても、必要に応じて適宜説明する。Furthermore, the various control signals generated by this memory access control circuit IO are the same as those explained in the operation timing charts of the conventional memory access control circuit in FIGS. 8 and 9, but the following memory access control circuit Also in the section of the configuration of one embodiment, explanations will be given as necessary.
次に、第3図を参照して、本発明のメモリアクセス制御
回路の1実施例の構成について説明する。Next, with reference to FIG. 3, the configuration of one embodiment of the memory access control circuit of the present invention will be described.
第3図において、5TINH発生回路ILMRQOK発
生回路12.5TINH停止回路13、MRQOK抑止
回路14については、第1図で説明したとおりである。In FIG. 3, the 5TINH generation circuit ILMRQOK generation circuit 12, the 5TINH stop circuit 13, and the MRQOK suppression circuit 14 are as described in FIG.
5TINH発生回路11は、AND回路111及びJK
フリップフロップ(以下、JKFFで示す)112で構
成される。AND回路111には、後で説明する第1ス
テージ信号5TG1と*HITD信号と5TGIV信号
のアンド出力を入力し、そのアンド出力をJKFF11
2のJ端子に入力する。The 5TINH generation circuit 11 includes an AND circuit 111 and a JK
It is composed of a flip-flop (hereinafter referred to as JKFF) 112. The AND circuit 111 receives the AND output of the first stage signal 5TG1, the *HITD signal, and the 5TGIV signal, which will be explained later, and outputs the AND output from the JKFF11.
Input to the J terminal of 2.
JKFF112はシステムクロックに同期したクロック
CLKOに同期して動作し、そのに端子には、MRQO
K抑止回路14からのMRQOK停止信号が入力され、
出力端子Qからはステージ遷移抑止信号ST I NH
が発生され、反転出力端子口からは反転されたステージ
遷移抑止信号*5TINHが発生される。JKFF112 operates in synchronization with the clock CLKO which is synchronized with the system clock, and the MRQO
The MRQOK stop signal from the K suppression circuit 14 is input,
A stage transition inhibition signal ST I NH is output from the output terminal Q.
is generated, and an inverted stage transition inhibit signal *5TINH is generated from the inverted output terminal.
MRQOK発生回路12は、インバータ121、AND
回路122及びJKFF123で構成される。The MRQOK generation circuit 12 includes an inverter 121 and an AND
It is composed of a circuit 122 and a JKFF 123.
+1ND回路122には、インバータ121で反転され
たヒツト信号HITと第1ステージ信号5TG1が入力
され、そのアンド出力はJKFF123のJ端子に入力
される。The hit signal HIT inverted by the inverter 121 and the first stage signal 5TG1 are input to the +1ND circuit 122, and the AND output thereof is input to the J terminal of the JKFF 123.
JKFF123は後で説明するクロックCLK1に同期
して動作し、そのに端子には2番目のブロックリードを
指示するブロックリード信号BLKRD2が入力され、
その反転出力端子口にはMRQOK。信号が発生される
。MRQOK、信号は、K端子のブロックリード信号B
LKRD2が1(オン)になったときに1 (オン)に
なり、j端子の入力が1 (オン)になったときに0(
オフ)になる。JKFF123 operates in synchronization with clock CLK1, which will be explained later, and a block read signal BLKRD2 instructing to read the second block is input to its terminal.
MRQOK is connected to the inverted output terminal. A signal is generated. MRQOK, signal is block read signal B of K terminal
It becomes 1 (ON) when LKRD2 becomes 1 (ON), and becomes 0 (ON) when the input of the j terminal becomes 1 (ON).
off).
5TINH停止回路13は、Dフリンプフロップ(以下
、DFFで示す)131及びAND回路132で構成さ
れる。The 5TINH stop circuit 13 includes a D flip-flop (hereinafter referred to as DFF) 131 and an AND circuit 132.
DFF l 31のD4子には、メモリアクセス要求許
可信号MRQOKが入力される。AND回路132には
、DFF131の反転出力端子この出力とメモリアクセ
ス要求許可信号MRQOKが入力され、そのアント出力
が5TINH発生回路112のに入力へ入力される。こ
の構成により、5TINH停止回路13は、MRQOK
抑止回路14からのM’RQOK信号がオフからオンに
なったのを検出してステージ遷移抑止停止信号(以下、
5TINH停止信号で示す)を発生する。A memory access request permission signal MRQOK is input to the D4 child of the DFF 1 31. The AND circuit 132 receives the inverted output terminal of the DFF 131 and the memory access request permission signal MRQOK, and its ant output is input to the 5TINH generation circuit 112. With this configuration, the 5TINH stop circuit 13
It is detected that the M'RQOK signal from the suppression circuit 14 is turned on from off, and a stage transition suppression stop signal (hereinafter referred to as
5TINH stop signal).
MRQOK抑止回路14はインバータ141及びAND
回路142で構成される。AND回路142には、MR
QOK発生回路12のJKFF123からのMRQOK
、信号とインバータ141で反転されたインバリデーシ
ョン要求信号PINVが入力され、インバリデーション
要求信号PINVがO(オフ)のとき開いて、MRQO
K信号が出力される。The MRQOK suppression circuit 14 is an inverter 141 and an AND
It is composed of a circuit 142. The AND circuit 142 includes MR
MRQOK from JKFF123 of QOK generation circuit 12
, and the invalidation request signal PINV inverted by the inverter 141 are input, and when the invalidation request signal PINV is O (off), the MRQO
A K signal is output.
次に、15はステージ信号発生回路であり、アンド・オ
ア回路151、DFF152、AND回路153、DF
F154、AND回路155及びDFF156で構成さ
れる。Next, 15 is a stage signal generation circuit, which includes an AND-OR circuit 151, a DFF 152, an AND circuit 153, and a DF
It is composed of an F154, an AND circuit 155, and a DFF156.
アンド・オア回路151は、AND回路151a、15
1b及びオア回路151Cで構成される。静り回路15
1aには、MRQOK抑止回路14からのMRQOK信
号と5TINH発生回路11からの反転ステージ遷移抑
止信号*ST I NHが入力され、AND回路152
bには、5TINH発生回路11からのステージ遷移抑
止信号ST I NHとDFF 152からの第1ステ
ージ信号5TGIが入力される。オア回路151Cは、
アンド回路151a及び151bからの各アンド出力が
入力される。AND OR circuit 151 includes AND circuits 151a, 15
1b and an OR circuit 151C. Quiet circuit 15
The MRQOK signal from the MRQOK suppression circuit 14 and the inverted stage transition suppression signal *ST I NH from the 5TINH generation circuit 11 are input to 1a, and the AND circuit 152
The stage transition inhibiting signal ST I NH from the 5TINH generation circuit 11 and the first stage signal 5TGI from the DFF 152 are input to b. The OR circuit 151C is
AND outputs from AND circuits 151a and 151b are input.
DFF152はクロックCLKIに同期して動作し、そ
のD端子には、アンド・オア回路151のオア回路15
1cのオア出力が入力され、その出力端子Qからは第1
ステージ信号5TG1が発生される。The DFF 152 operates in synchronization with the clock CLKI, and the OR circuit 15 of the AND OR circuit 151 is connected to its D terminal.
The OR output of 1c is input, and the first
A stage signal 5TG1 is generated.
AND回路153には、DFF152からのQ端子出力
5TGIと5TINH発生回路11からの反転ステージ
遷移抑止信号*ST I NHが入力される。The Q terminal output 5TGI from the DFF 152 and the inversion stage transition inhibition signal *ST I NH from the 5TINH generation circuit 11 are input to the AND circuit 153 .
DFF154はクロックCLKIに同期して動作し、そ
のD端子には、AND回路153のアンド出力が入力さ
れ、その出力端子Qからは第2ステージ信号5TG2が
発生される。The DFF 154 operates in synchronization with the clock CLKI, the AND output of the AND circuit 153 is input to its D terminal, and the second stage signal 5TG2 is generated from its output terminal Q.
AND回路155には、DFF152からの第1ステー
ジ信号5TG1と5TINH発生回路11からの反転ス
テージ遷移抑止信号*5TINHが入力される。The first stage signal 5TG1 from the DFF 152 and the inverted stage transition inhibition signal *5TINH from the 5TINH generation circuit 11 are input to the AND circuit 155.
DFF 156はクロックCLKOに同期して動作し、
そのD端子には、AND回路155のアンド出力が入力
され、その出力端子Qからは第1ステージ有効信号5T
GIVを発生する。DFF 156 operates in synchronization with clock CLKO,
The AND output of the AND circuit 155 is input to the D terminal, and the first stage valid signal 5T is output from the output terminal Q.
Generates GIV.
16はHrTD発生回路であり、DFF161及びAN
D回路162で構成される。16 is an HrTD generation circuit, which includes DFF161 and AN
It is composed of a D circuit 162.
DFF161はクロックCLKIに同期して動作し、そ
のD端子にはヒツト信号HITが入力され、その反転出
力端子ごからは、ヒツト信号HITをクロックCLKI
の1サイクル分遅延した遅延ヒフ)信号HTTDの反転
信号である反転遅延ヒツト信号*HITDが発生される
。The DFF161 operates in synchronization with the clock CLKI, the hit signal HIT is input to its D terminal, and the hit signal HIT is input to the clock CLKI from its inverted output terminal.
An inverted delayed hit signal *HITD, which is an inverted signal of the delayed hit signal HTTD, which is delayed by one cycle of the delayed hit signal *HITD, is generated.
AND回路162には、DFF 161からの反転遅延
ヒツト信号*HrTDとDFF156からの第1ステー
ジ有効信号5TGIVが入力され、反転遅延ヒツト信号
*HITD及び第1ステージ有効信号5TGIVがいず
れもオンのときに、反転遅延ヒツト信号*HITDVを
出力する。The AND circuit 162 receives the inverted delayed hit signal *HrTD from the DFF 161 and the first stage valid signal 5TGIV from the DFF 156, and when both the inverted delayed hit signal *HITD and the first stage valid signal 5TGIV are on, , outputs an inverted delayed hit signal *HITDV.
エフはクロック抑止発生回路であり、インバータ171
、AND回路172及びJKFF173で構成される。F is a clock inhibition generation circuit, and inverter 171
, an AND circuit 172, and a JKFF 173.
AND回路171には、インバータ171で反転された
ヒツト信号*HITと、5TINH発生回路11からの
反転ステージ遷移抑止信号*s’rrNHと、DFF1
52からの第1ステージ信号5T(1,1とが入力され
、そのアンド出力はJKFF173のJ端子に入力され
る。The AND circuit 171 receives the hit signal *HIT inverted by the inverter 171, the inverted stage transition suppression signal *s'rrNH from the 5TINH generation circuit 11, and the DFF1.
The first stage signal 5T (1, 1) from 52 is input, and the AND output thereof is input to the J terminal of the JKFF 173.
JKFF173はクロックCLKOに同期して動作し、
そのに端子にはスタート信号5TARTが人力され、そ
の反転出力端子*Qからは、クロック抑止信号CLKS
Pの反転信号である反転クロック抑止信号*CLKSP
が出力される。JKFF173 operates in synchronization with clock CLKO,
The start signal 5TART is input to that terminal, and the clock suppression signal CLKS is output from its inverted output terminal *Q.
An inverted clock suppression signal *CLKSP which is an inverted signal of P
is output.
18はクロック発生制御回路であり、AND @路18
1で構成され、クロックCLKIの発生を制御する。す
なわち、へND回路181には、クロック抑止発生回路
17のJKFF173からの反転クロック抑止信号*C
LKSPとクロックCLKOが入力され、反転クロック
抑止信号*CLKSPが1(オン)のとき、すなわちク
ロック抑止信号CLKSPがオフである正常動作時に、
クロックCLKOをクロックCLKIとして出力する。18 is a clock generation control circuit, AND @route 18
1 and controls the generation of the clock CLKI. That is, the ND circuit 181 receives the inverted clock suppression signal *C from the JKFF 173 of the clock suppression generation circuit 17.
When LKSP and clock CLKO are input and the inverted clock suppression signal *CLKSP is 1 (on), that is, during normal operation when the clock suppression signal CLKSP is off,
Clock CLKO is output as clock CLKI.
以上説明したメモリアクセス制御回路10の動作につい
ては、次の実施例の動作説明の項で説明する。The operation of the memory access control circuit 10 described above will be explained in the section describing the operation of the next embodiment.
(B)実施例の動作
実施例の動作を、第4図及び第5図の動作タイミングチ
ャート並びに第6図のステージ遷移図を参照して説明す
る。(B) Operation of the Embodiment The operation of the embodiment will be explained with reference to the operation timing charts of FIGS. 4 and 5 and the stage transition diagram of FIG. 6.
本発明の実施例においても、第6図に示すステージ遷移
に従って2サイクルのメモリアクセス制御が行われるが
、第6図については、先に説明したとおりである。In the embodiment of the present invention as well, two-cycle memory access control is performed according to the stage transition shown in FIG. 6, but FIG. 6 is as described above.
先ず第4図の動作タイミングチャートを参照して、前記
(1)〜(3)に共通なメモリアクセス制御動作につい
て説明する。第4図において、クロックCLKIはクロ
ック発生回路18によって、図示しないクロックCLK
Oに同期して発生される。τ1、τ2等は、クロックC
LKOの各サイクルを示す(第4図(a))。クロック
CLKOは、前述のようにシステムクロック5CLKに
同期して発生するクロックであり、メモリアクセス制御
回路10内で行われる各動作のタイミングを規定する。First, the memory access control operations common to the above (1) to (3) will be explained with reference to the operation timing chart of FIG. In FIG. 4, the clock CLKI is generated by the clock generation circuit 18 into a clock CLK (not shown).
Generated in synchronization with O. τ1, τ2, etc. are clock C
Each cycle of LKO is shown (FIG. 4(a)). The clock CLKO is a clock generated in synchronization with the system clock 5CLK as described above, and defines the timing of each operation performed within the memory access control circuit 10.
プロセッサ26は、図示しないメインメモリに対するア
クセスを行う場合は、第6図に示したメモリリクエスト
ステージにおいて、メモリアクセス要求信号MRQを送
出する(第4図(b))。いま、クロックCLKOのサ
イクルτ1 、τ2及びτ3において連続してメモリア
クセス要求MRQが発生し、これを図示のように、メモ
リアクセス要求信号MRQ■、MRQ■及びMRQ■と
する(第4回出))。When accessing the main memory (not shown), the processor 26 sends out a memory access request signal MRQ in the memory request stage shown in FIG. 6 (FIG. 4(b)). Now, memory access requests MRQ are generated successively in cycles τ1, τ2, and τ3 of clock CLKO, and these are designated as memory access request signals MRQ■, MRQ■, and MRQ■ as shown in the figure (4th output). ).
τ1サイクルで発行された最初のメモリアクセス要求信
号MRQ■に対し、同しτ、サイクルにおいて、メモリ
アクセス要求を許可するメモリアクセス要求許可信号M
RQOK (MRQOK信号で示す)が受信されて、メ
モリアクセス制御回路に通知される(第4図(c))。In response to the first memory access request signal MRQ issued in τ1 cycle, a memory access request permission signal M is issued in the same τ cycle to permit the memory access request.
RQOK (indicated by the MRQOK signal) is received and notified to the memory access control circuit (FIG. 4(c)).
メモリアクセス制御回路10のDFF152は、このM
RQOK信号を受けると、クロックCLK1に同期して
次のサイクルτ2において第1ステージ信号5TGI
(STGI■で示す)を発生し、制御信号バスCBを介
してプロセッサ26に送る(第4図(ロ)の■)。The DFF 152 of the memory access control circuit 10
Upon receiving the RQOK signal, the first stage signal 5TGI is activated in the next cycle τ2 in synchronization with the clock CLK1.
STGI (indicated by ■) is generated and sent to the processor 26 via the control signal bus CB (■ in FIG. 4(b)).
この第1ステージ信号5TGI■を受けると、プロセッ
サ26は、第2サイクルτ2において第1ステージの処
理を行い、アドレスレジスタ251にあるメインメモリ
をアクセスするアドレスをアドレスバスABを介して送
出しく第4図げ)の■)、更に、キャッシュメモリに対
するヒット判定を行う。Upon receiving this first stage signal 5TGI, the processor 26 performs the first stage processing in the second cycle τ2, and sends out the address for accessing the main memory in the address register 251 via the address bus AB. In (2) of Figure 1), a hit determination for the cache memory is also performed.
すなわち、プロセッサ26の送出したアドレスは、先ず
ディレクトリメモリ22をアクセスする。That is, the address sent by the processor 26 first accesses the directory memory 22.
アクセスするアドレスに対応するアドレスがディレクト
リメモリ22にあると、ヒ・ノド信号HITが1になり
、キャッシュメモリにヒツトしたことが指示される。も
し、アクセスするアドレスに対応するアドレスがディレ
クトリメモリ22にないと、ヒツト信号HITが0にな
り、キャッシュメモリにミスヒツトしたことが指示され
る。When the address corresponding to the address to be accessed exists in the directory memory 22, the hit signal HIT becomes 1, indicating 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 there has been a miss in the cache memory.
このヒツト信号HITは、MMインタフェースコントロ
ーラ21を介してメモリアクセス制御回路10に送られ
る。This hit signal HIT is sent to the memory access control circuit 10 via the MM interface controller 21.
また、キャッシュメモリのヒツト情報がHITレジスタ
23に格納される。HITレジスタ23にあるヒット情
報はキャンシメモリ24に送られ、ヒツト信号HITが
1(キャッシュメモリにヒツト)のときは、ヒットした
ディレクトリメモリ22のブロンク番号Sこ対応するキ
ャッシュメモリ24の領域が選択される。Further, hit information of the cache memory is stored in the HIT register 23. The hit information in the HIT register 23 is sent to the cache memory 24, and when the hit signal HIT is 1 (hit in the cache memory), the area of the cache memory 24 corresponding to the hit bronch number S of the directory memory 22 is selected. be done.
以下、実施例の動作を、(1)キャッシュメモリにヒッ
トした場合、(2)キャッシュメモリにミスヒ、ツトし
、かつインバリデーション要求のない場合及び(3)キ
ャッシュメモリにミスし、かつインバリデーション要求
のある場合に分けて説明する。The operation of the example is described below: (1) When there is a hit in the cache memory, (2) When there is a miss on the cache memory and there is no invalidation request, and (3) When there is a miss on the cache memory and there is no invalidation request. We will explain the cases in which there is.
(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 performs memory access control in two cycles.
キャッシュメモリ24にヒットした場合、すなわちヒツ
ト信号HITが1のときは、メモリアクセス制御回路1
0のDFF154は、クロ、7りCLKIに同期して次
のサイクルτ3において第2ステージ信号5TG2 (
STGI■で示す)を発生し、プロセッサ26に送る(
第4図(e)の■)。When there is a hit in the cache memory 24, that is, when the hit signal HIT is 1, the memory access control circuit 1
The DFF 154 of 0 outputs the second stage signal 5TG2 (
STGI (indicated by ■) is generated and sent to the processor 26 (
■ in Figure 4(e)).
この第1ステージ信号5TGI■を受けると、プロセッ
サ26は、第2サイクルτ3において第一 2ステージ
の処理を行い、キャッシュメモリ24にヒツトしたデー
タを読み出し、データバスDBを介してデータレジスタ
262に転送する。Upon receiving this first stage signal 5TGI■, the processor 26 performs the first two stage processing in the second cycle τ3, reads out the hit data from the cache memory 24, and transfers it to the data register 262 via the data bus DB. do.
一方、このサイクルτ3においては、最初のメモリアク
セス要求信号MRQ■に対する第2サイクル(第2ステ
ージ)の処理とオーバーラツプして、次のメモリアクセ
ス要求信号MRQ■に対する第1サイクル(第1ステー
ジ)の処理が行われる(第4図(d)の5TGI■及び
(e)の5TG2■参照)。On the other hand, in this cycle τ3, the processing of the second cycle (second stage) for the first memory access request signal MRQ■ overlaps with the processing of the first cycle (first stage) for the next memory access request signal MRQ■. Processing is performed (see 5TGI■ in FIG. 4(d) and 5TG2■ in FIG. 4(e)).
次のメモリアクセス要求信号MRQ■の第1サイクル(
第4図(d)のτ3サイクルの第1ステージ5TG1■
)において、キャッシュメモリ24にヒツトすると、続
くτ4サイクルにおいて、メモリアクセス要求信号MR
Q■の第2サイクル、すなわち、第2ステージ5TG2
■の処理が実行される。The first cycle of the next memory access request signal MRQ■ (
The first stage 5TG1 of the τ3 cycle in Fig. 4(d)
), when the cache memory 24 is hit, the memory access request signal MR is activated in the following τ4 cycle.
The second cycle of Q■, that is, the second stage 5TG2
Processing (2) is executed.
以下同様にして、キャッシュメモリにヒツトした場合は
、各メモリアクセス要求信号MRQに対する、第1ステ
ージ5TGI及び第2ステージ5TG2の各処理が連続
して実行される(図示せず)。Similarly, when the cache memory is hit, each process of the first stage 5TGI and second stage 5TG2 is executed successively for each memory access request signal MRQ (not shown).
(2) キャッシュメモリにミスヒットし、かつイン
バリデーションがない場合
いま、τ2で行われたメモリアクセス要求信号MRQ■
の第1ステージ5TGI■の処理において、プロセッサ
26から送出されたアドレスがキャッシュメモリ24に
ミスヒットしたとすると、ヒツト信号BITは、サイク
ルτ2においてOとなり(第4図(ホ))、HITレジ
スタ23に格納される。(2) If there is a miss in the cache memory and there is no invalidation, the memory access request signal MRQ made at τ2 is now
In the processing of the first stage 5TGI■, if the address sent from the processor 26 misses the cache memory 24, the hit signal BIT becomes O in cycle τ2 (FIG. 4 (e)), and the HIT register 23 is stored in
メモリアクセス制御回路10のクロック抑止発生回路1
7は、ヒツト信号HITが0(ミスヒット)のときは、
τ3サイクルにおいてDFF173よりクロック抑止信
号*CLKSP (cLKSPの反転信号)を発生する
。Clock inhibition generation circuit 1 of memory access control circuit 10
7, when the hit signal HIT is 0 (miss hit),
In the τ3 cycle, the DFF 173 generates a clock inhibit signal *CLKSP (an inverted signal of cLKSP).
一方、5TINH発生回路11は、ヒツト信号HITが
0(ミスヒツト)で、かつ、連続するメモリアクセス要
求信号MRQ■の第1ステージ5TGl■がオンである
ときは(第4図(ハ)のτ3サイクル)、JKFF11
2の出力するステージ遷移抑止信号5TINHをτ4サ
イクル以陣オンにする(第4図(p))。On the other hand, when the hit signal HIT is 0 (miss) and the first stage 5TGl■ of the continuous memory access request signal MRQ■ is on, the 5TINH generation circuit 11 generates a τ3 cycle in FIG. ), JKFF11
The stage transition inhibiting signal 5TINH outputted by No. 2 is turned on for τ4 cycles (FIG. 4(p)).
これにより、メモリアクセス制御回路10の[FF15
2から発生されるメモリアクセス要求ね号MRQ■の第
1ステージ信号STC,1■の値番:τ、サイクル以降
は連続して値lを保持するようになり(第4図(d))
、DFF l 52から発生さt。As a result, [FF15 of the memory access control circuit 10
The value number of the first stage signal STC, 1■ of the memory access request number MRQ■ generated from 2: τ, starts to hold the value 1 continuously after the cycle (Fig. 4(d)).
, generated from DFF l 52 t.
るメモリアクセス要求信号MRQ■の第2ステージ信号
5TG2■は、τ3サイクル以降は連続して値1を保持
するようになり(第4図(e))。The second stage signal 5TG2■ of the memory access request signal MRQ■ continues to hold the value 1 after the τ3 cycle (FIG. 4(e)).
また、前述のようにτ3サイクルにおいてDFF173
の発生する反転クロック抑止信号*CLKSPがオフ(
クロック抑止信号CLKSPはオン)になると、クロッ
ク発生回路18はτ4以閾のクロックCLKIの発生を
抑止されて、τ4サイクル以降のメモリアクセス制御回
路lOの制御動作は、−時中断される(第4図(r)及
び(a))。Also, as mentioned above, in the τ3 cycle, the DFF173
The inverted clock suppression signal *CLKSP generated by *CLKSP is turned off (
When the clock inhibit signal CLKSP turns on), the clock generation circuit 18 is inhibited from generating a clock CLKI with a threshold of τ4 or more, and the control operation of the memory access control circuit IO from the τ4 cycle onwards is interrupted at - time (the fourth Figures (r) and (a)).
キャッシュメモリ24にミスヒツトしたことにより、メ
モリアクセス制御回路10の制御動作が一時中断してい
る間に、MMゼインフェースコントローラ21は、図示
しないメインメモリから、ミスヒツトしたデータをリー
トし、データバスD) Bを経由してプロセンサ2
6に転送するとともに、ゝ キャッシュメモリ24に
このリードデータを登録=・ し、そのアドレス等の
タグ情報をディレクトリメモリ21に登録する処理を行
う。このデータ転送□ 処理は、τ4〜τ、サイクル
の間でおこなわれる。While the control operation of the memory access control circuit 10 is temporarily suspended due to a miss in the cache memory 24, the MM interface controller 21 retrieves the missed data from the main memory (not shown) and transfers the data to the data bus D). Prosensor 2 via B
6, this read data is registered in the cache memory 24, and the tag information such as its address is registered in the directory memory 21. This data transfer □ process is performed during cycles τ4 to τ.
メインメモリからのデータリードは、ブロック単位で行
われ、メモリアクセス要求信号MRQ■に対するミスヒ
ットしたデータを含む複数ワード(図ではD■−1〜D
■−4のワード)がリードされて、プロセッサ26及び
キャッシュメモリ24に転送される(第4図(9))。Data reading from the main memory is performed in block units, and multiple words (in the figure, D■-1 to D
-4 word) is read and transferred to the processor 26 and cache memory 24 (FIG. 4 (9)).
各ブロック単位のデータがリードされるときは、MMゼ
インフェースコントローラ21からブロックリード信号
BLKRDI〜BLKRD4がメモリアクセス制御回路
10に送出されるが、第4図(社)及び(i)には、ブ
ロックリード信号BLKRD2及びBLKRD3が示さ
れている。When data in each block is read, block read signals BLKRDI to BLKRD4 are sent from the MM interface controller 21 to the memory access control circuit 10. Read signals BLKRD2 and BLKRD3 are shown.
最初のデータD■−1が転送された時点でプロセッサ2
6は次の処理に移れるので、メモリアクセス制御回路1
0のクロックCLKの抑止を止め、その制御を再開させ
てよい。そこで、MMゼインフェースコントローラ21
は、スタート信号5TARTを1(オン)にする(第4
図(S)のτ、)。When the first data D■-1 is transferred, the processor 2
6 can move on to the next process, so the memory access control circuit 1
The suppression of the 0 clock CLK may be stopped and its control resumed. Therefore, MM Zein Face Controller 21
sets the start signal 5TART to 1 (on) (the fourth
τ in Figure (S)).
クロック抑止発生回路17のJKFF173は、スター
ト信号5TARTが1になると、次のτ。When the start signal 5TART becomes 1, the JKFF 173 of the clock inhibition generation circuit 17 generates the next τ.
サイクルで反転クロック抑止信号*CLKSPをオン(
クロック抑止信号CLKSPをオフ)にする。Turn on the inverted clock inhibit signal *CLKSP in the cycle (
(turn off the clock suppression signal CLKSP).
反転クロック抑止信号*CLKSPがオンになると、ク
ロック発生回路18は、クロックCLKOに同期してク
ロックCLKIの発生を再開させる(第4図(a)及び
(r)のτ會すイクル)。When the inverted clock inhibit signal *CLKSP is turned on, the clock generation circuit 18 restarts generation of the clock CLKI in synchronization with the clock CLKO (the cycle τ in FIGS. 4(a) and 4(r)).
本実施例では、本発明の主旨に従い、インバリデーショ
ンのないときは、ミスヒツトデータの転送が終了した時
点、すなわちデータD■−4が転送された時点(τ、サ
イクルの終了時点)で、ステージ遷移抑止を停止して、
次のτ、2サイクルからステージ遷移を開始する。In this embodiment, in accordance with the gist of the present invention, when there is no invalidation, the stage Stop transition suppression,
Stage transition starts from the next τ, 2 cycles.
すなわち、τ、サイクルにおいてブロック2に対するブ
ロックリード信号BLKRD2が1 (オン)になると
MRQOK発生回路12のJKFF123はMRQOK
信号を0から1(オフからオン)にする。インバリデー
ション要求のない時、インバリデーション要求信号PI
NVはOであるので、MRQOK抑止回路14はMRQ
OK信号を抑止することなく、JKFF123からのM
RQOK信号をそのまま出力して、オフからオンにする
(第4図(b)のτ、。サイクル)。That is, when the block read signal BLKRD2 for block 2 becomes 1 (on) in cycle τ, JKFF123 of the MRQOK generation circuit 12 outputs MRQOK.
Change the signal from 0 to 1 (off to on). When there is no invalidation request, invalidation request signal PI
Since NV is O, the MRQOK suppression circuit 14
M from JKFF123 without suppressing the OK signal
The RQOK signal is output as is and turned on from off (τ, .cycle in FIG. 4(b)).
5TINH停止回路13は、MRQOK抑止回路14か
らのMRQOK信号がオフからオンになったのを検出し
て、5TINH停止信号停止性し、JKFFl12のに
端子に入力する。The 5TINH stop circuit 13 detects that the MRQOK signal from the MRQOK suppression circuit 14 is turned on from off, and outputs the 5TINH stop signal to the terminal of JKFFl12.
5TINH発生回路112は、この5TINH停止信号
停止性ると、ステージ遷移抑止信号5TINI(をオフ
(*5TINHはオン)にする(第4図Φ)のτ11サ
イクル)。When the 5TINH stop signal is stopped, the 5TINH generation circuit 112 turns off the stage transition inhibiting signal 5TINI (*5TINH is turned on) (τ11 cycle of Φ in FIG. 4).
これにより、メモリアクセス要求信号MRQ■に関する
ステージ処理である第1ステージ5TG1■はτ1.サ
イクルまでオン状態を維持し続け、キャッシュメモリ2
4に対するヒット判定が可能になったτ、で有効なヒツ
ト判定が行われ、τ1□サイクルにおいて第2ステージ
5TG2■が正常に実行される(第4図(d) 、 (
e) 、(ロ))。As a result, the first stage 5TG1■, which is a stage process related to the memory access request signal MRQ■, performs τ1. Cache memory 2 continues to remain on until the cycle.
A valid hit determination is made at τ, when the hit determination for 4 becomes possible, and the second stage 5TG2■ is normally executed in the τ1□ cycle (Fig. 4(d), (
e), (b)).
τ1□サイクルでは、前述のτ3サイクルの場合と同様
に、メモリアクセス要求信号MRQ■に対する第2サイ
クルの処理(第2ステージ5TG2■)と次のメモリア
クセス要求信号MRQ■の第1サイクルの処理(第1ス
テージ5TGI■)とが並行して行われる(第4図(d
) 、 (e) 、 (m) 、 (n) )。In the τ1□ cycle, as in the case of the τ3 cycle described above, the second cycle processing for the memory access request signal MRQ■ (second stage 5TG2■) and the first cycle processing for the next memory access request signal MRQ■ ( The first stage 5TGI■) is carried out in parallel (Fig. 4(d)
), (e), (m), (n)).
以上のようにして、キャッシュメモリにミスヒツトし、
かつインバリデーション要求がない場合は、ミスヒット
したデータに対するデータ転送が終了したτ11サイク
ルの次のτ1□サイクルから、直ちに中断していた各ス
テージ処理が再開される。As described above, a miss occurs in the cache memory,
If there is no invalidation request, the suspended processing of each stage is immediately resumed from the τ1□ cycle following the τ11 cycle in which the data transfer for the mishit data has been completed.
(3)キャッシュメモリにミスヒットし、かつインバリ
デーション要求がある場合
キャッシュメモリにミスヒツトし、かつインハリデーシ
コン要求がある場合のメモリアクセス制御を、第5図を
参照して説明する。(3) When there is a cache memory miss and an invalidation request Memory access control when there is a cache memory miss and an invalidation request will be described with reference to FIG.
第5図は、第4回と同しく動作タイミングチャートを示
したもので、(a)CL K 〜(s)S TA RT
(7)各記号の意味及びτ9サイクルまでの動作内容は
、第4図の動作内容と同じである。Figure 5 shows the operation timing chart as in the 4th time, (a) CLK ~ (s) S T A RT
(7) The meaning of each symbol and the operation contents up to the τ9 cycle are the same as the operation contents in FIG. 4.
また、(2)のrNVLは、先に説明したように、キャ
ッシュメモリ24に登録されているデータを無効化する
インバリデーション信号であり、このインバリデーショ
ン信号を受けると、ディレクトリメモリ22にある無効
化対象データ領域に対応する領域に無効フラグ(図示せ
ず)が立てられる。Furthermore, as explained earlier, rNVL in (2) is an invalidation signal that invalidates the data registered in the cache memory 24, and when this invalidation signal is received, the invalidated data in the directory memory 22 is invalidated. An invalid flag (not shown) is set in an area corresponding to the target data area.
もし、メモリアクセス要求信号MRQ■についてのデー
タ転送が行われるτ、1サイクルの前に、他プロセツサ
又はDMAにより自己のキャッシュメモリ24のディレ
クトリメモリ22に登録されているメインメモリ領域に
対するライトが行われたとすると、監視ディレクトリ2
11は、データ転送が終了するτ1、サイクルの1つ前
のτ1゜サイクルにおいてインバリデーション要求信号
PINVLを発生して、メモリアクセス制御回路10に
送る。If a write is performed to the main memory area registered in the directory memory 22 of the own cache memory 24 by another processor or DMA one cycle τ before the data transfer for the memory access request signal MRQ■ is performed. For example, monitoring directory 2
11 generates an invalidation request signal PINVL and sends it to the memory access control circuit 10 in the τ1° cycle one cycle before the data transfer ends τ1.
インバリデーション要求はステージ処理に常に優先して
行う必要があるので、メモリアクセス制御回路10のM
RQOK抑止回路14は、インバリデーション要求信号
P INVLが1 (オン)になると、MRQOK発生
回路12からのMRQOK信号を遮断して0(オフ)状
態を保持させる(第4図(c)のτ1゜サイクル)。Since the invalidation request must always be performed with priority over stage processing, M of the memory access control circuit 10
When the invalidation request signal P INVL becomes 1 (ON), the RQOK suppression circuit 14 blocks the MRQOK signal from the MRQOK generation circuit 12 and maintains the 0 (OFF) state (τ1° in FIG. 4(c)). cycle).
したがって、5TINH停止回路13からは5TINH
停止信号停止体されず、5TINH発生回路11は、τ
1゜サイクルにおいても引続きステージ遷移抑止信号5
TINHを発生し、ステージ遷移を抑止する。Therefore, from the 5TINH stop circuit 13, 5TINH
The stop signal is not stopped, and the 5TINH generation circuit 11 generates τ
Even in the 1° cycle, the stage transition inhibition signal 5 continues.
Generates TINH and inhibits stage transition.
インバリデーション要求が1個である場合は、インハリ
デーシコン要求PINVLがオフになったτ、サイクル
において、MRQOK抑止回路14はMRQOK発生回
路I2からのMRQOK信号の抑止を停止し、MRQO
K信号を発生させ、オフからオンにする(第4図(b)
のτ11サイクル)。If there is one invalidation request, the MRQOK suppression circuit 14 stops suppressing the MRQOK signal from the MRQOK generation circuit I2 in the cycle τ in which the invalidation request PINVL is turned off, and the MRQOK suppression circuit 14 stops suppressing the MRQOK signal from the MRQOK generation circuit I2.
Generate the K signal and turn it from off to on (Figure 4 (b)
τ11 cycles).
5TINH停止回路13は、MRQOK抑止回路14か
らのはMRQOK信号がオフからオンになっだのを検出
して、5TINH停止信号停止体し、JKFF112の
に端子に入力する。The 5TINH stop circuit 13 detects that the MRQOK signal from the MRQOK suppression circuit 14 has changed from off to on, outputs the 5TINH stop signal, and inputs it to the terminal of the JKFF 112.
5TTNH回路11は、このST I NH停止信号を
受けると、ステージ遷移抑止信号5TINHをオ□フ(
*5TINHはオン)にする(第4図(p)のτ1□サ
イクル)。Upon receiving this ST I NH stop signal, the 5TTNH circuit 11 turns off the stage transition inhibition signal 5TINH (
*5TINH is turned on) (τ1□ cycle in Figure 4 (p)).
これにより、メモリアクセス要求信号MRQ■に関する
ステージ処理である第1ステージ5TG1■はτ1□サ
イクルまでオン状態を維持し続け、キャッシュメモリ2
4に対するヒツト判定が可能になったτ目で有効なヒツ
ト判定が行われ、τ。As a result, the first stage 5TG1■, which is the stage processing related to the memory access request signal MRQ■, continues to maintain the on state until the τ1□ cycle, and the cache memory 2
An effective hit determination is made at the τth time when the hit determination for 4 becomes possible, and τ.
サイクルにおいて第2ステージ5TG2■が正常に実行
される(第4図(d) 、 (e) 、 (m) )。In the cycle, the second stage 5TG2■ is normally executed (FIG. 4(d), (e), (m)).
一方、τ11サイクルにおいては、ディレクトリメモリ
21に対し、無効化対象データに対するインバリデーシ
ョン処理が行われる(第4図(2)のτ目すイクル)。On the other hand, in the τ11 cycle, invalidation processing is performed on the invalidation target data in the directory memory 21 (τ cycle in FIG. 4(2)).
もし、τ、。サイクルにおけるインバリデーション要求
に引続き、複数のインバリデーション要求が連続して発
生した場合は、その期間だけMRQOK抑止回路14は
MRQOK信号の発生を抑止し、5TIN)1回路11
は、ステージ遷移抑止信号5TrNHを発生し続ける。If, τ,. If multiple invalidation requests occur consecutively following an invalidation request in a cycle, the MRQOK suppression circuit 14 suppresses generation of the MRQOK signal for that period, and
continues to generate the stage transition inhibit signal 5TrNH.
インバリデーション要求P rNVLがオフになったサ
イクルにおいて、MRQOK抑止回路14はMRQOK
信号の抑止を停止し、これを受けて、5TINH回路1
1は、ステージ遷移抑止信号5TINHをオフ(*5T
INHはオン)にする。In the cycle in which the invalidation request P rNVL is turned off, the MRQOK suppression circuit 14
The suppression of the signal is stopped, and in response to this, the 5TINH circuit 1
1 turns off the stage transition inhibition signal 5TINH (*5T
INH is on).
これにより、前述と同様にして、−時中断していた各ス
テージの処理が正常に続行される。As a result, in the same way as described above, the processing of each stage that was interrupted at - is continued normally.
以上のようにして、キャッシュメモリにミスヒツトし、
かつインバリデーション要求がある場合のみ、ミスヒツ
トしたデータに対するデータ転送が終了したサイクルの
次のサイクルが1サイクルが開けられて、インバリデー
ション処理が行われ、更に次のサイクルから、直ちに中
断していた各ステージ処理が再開される。As described above, a miss occurs in the cache memory,
And only if there is an invalidation request, one cycle is opened next to the cycle in which the data transfer for the mishit data has finished, invalidation processing is performed, and from the next cycle, each interrupted data transfer is immediately resumed. Stage processing is resumed.
以上本発明の一実施例について説明したが、本発明はこ
の実施例に限定されるものではなく、その発明の主旨に
従った各種の変形が可能である。Although one embodiment of the present invention has been described above, the present invention is not limited to this embodiment, and various modifications can be made in accordance with the gist of the invention.
例えば・、キャッシュメモリにミスヒツトした場合のデ
ータ転送量は4ワードに限定されるものではない。また
、ミスヒツト時のインバリデーション要求が複数個連続
した場合にも本発明が適用できるものであることは、先
に実施例の所で説明したとおりである。For example, the amount of data transferred when a cache memory miss occurs is not limited to 4 words. Further, as explained in the embodiments above, the present invention is applicable even when a plurality of invalidation requests are made in succession at the time of a mishit.
以上説明したように、本発明によれば、次の諸効果が得
られる。As explained above, according to the present invention, the following effects can be obtained.
(1)キャッシュメモリにミスヒツト時には、インバリ
デーション要求が発生したときのみミスヒツトデータの
データ転送終了後、lサイクル遅れてステージ処理を再
開させるようにしたので、インバリデーション要求のな
いときは無駄なサイクルが無くなって、メモリアクセス
処理効率を向上させることができる。(1) When there is a miss in the cache memory, stage processing is restarted with a delay of 1 cycle after the data transfer of the miss data is completed only when an invalidation request occurs, so there is no wasted cycles when there is no invalidation request. As a result, memory access processing efficiency can be improved.
(2)インバリデーション要求個数に対応するサイクル
個数だけ遅れてステージ処理を再開させるようにすれば
、連続してインバリデーション要求が発生しても、これ
らのインバリデーション処理を正常に処理できるととも
に、中断された各アクセス要求に対するステージ処理を
正常に再開させることができる。(2) If stage processing is restarted after a delay of the number of cycles corresponding to the number of invalidation requests, even if invalidation requests occur consecutively, these invalidation processes can be processed normally, and the interruption can be prevented. The stage processing for each access request made can be restarted normally.
第1図は本発明の基本構成の説明図、
第2図は本発明の一実施例に係るメモリアクセス制御回
路が使用されるメモリアクセス制御システムの説明図、
第3図は本発明の一実施例の構成の説明図、第4図は同
実施例の動作タイミングチャートの説明図、
第5図は同実施例のミスヒツト時でかつインバリデーシ
ョンのあるときの動作タイミングチャートの説明図、
第6図はステージ遷移の説明図、
第7図は従来のメモリアクセス制御システムの説明図、
第8図は従来のメモリアクセス制御システムの動作タイ
ミングチャートの説明図、
第9図は従来のメモリアクセス制御システムにおけるミ
スヒツト時でかつインバリデーションのあるときの動作
タイミングチャートの説明図。
第1図及び第2図において、
10・・・メモリアクセス制御回路、11・・・ステー
ジ遷移抑止発生回路(STINH発生回路)、12・・
・メモリアクセス要求許可信号発生回路(MRQOK発
生回路)、13・・・ステージ遷移抑止停止回路(ST
IN)I停止回路)、14・・・メモリアクセス要求許
可抑止回路(MRQOK抑止回路)。FIG. 1 is an explanatory diagram of the 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. 3 is an explanatory diagram of an embodiment of the present invention. An explanatory diagram of the configuration of the example, FIG. 4 is an explanatory diagram of the operation timing chart of the same embodiment, FIG. 5 is an explanatory diagram of the operation timing chart of the same embodiment when there is a mishit and invalidation, and FIG. 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 a conventional memory access control system, and FIG. 9 is an explanatory diagram of a conventional memory access control system. FIG. 6 is an explanatory diagram of an operation timing chart when there is a mishit and invalidation. 1 and 2, 10... memory access control circuit, 11... stage transition inhibition generation circuit (STINH generation circuit), 12...
・Memory access request permission signal generation circuit (MRQOK generation circuit), 13... Stage transition suppression stop circuit (ST
IN) I stop circuit), 14...Memory access request permission suppression circuit (MRQOK suppression circuit).
Claims (3)
で次のアクセスの第1サイクルとオーバラップしてデー
タ転送を行い、第1サイクルで送出したアドレスと該ア
ドレスによりディレクトリメモリをアクセスして得られ
るヒット情報とアドレス情報とを第2サイクルの間保持
し、ヒット情報がヒットを示した場合は、第2サイクル
で前記保持されたアドレス情報によりキャッシュメモリ
をアクセスし、ミスヒットした場合は、メインメモリよ
り前記アドレス情報によりデータをリードし、2サイク
ルでキャッシュメモリをアクセスするメモリアクセス制
御回路において、 (a)第1サイクルで出力されたヒット情報がミスヒッ
トを示した場合に、第2サイクルのステージ遷移を抑止
するステージ遷移抑止信号を発生するステージ遷移抑止
信号発生回路(11)と、 (b)ミスヒット時はメモリアクセス要求許可信号をオ
フにし、メインメモリより前記アドレス情報によりリー
ドされた最後のデータがキャッシュメモリに到達する直
前のサイクルで前記メモリアクセス要求許可信号をオフ
からオンにするメモリアクセス要求許可信号発生回路(
12)と、 (c)前記メモリアクセス要求許可信号がオフからオン
になったことを検出して、遷移抑止信号発生回路(11
)の発生するステージ遷移抑止信号を停止させるステー
ジ遷移抑止停止回路(13)、 を備えたことを特徴とするメモリアクセス制御回路。(1) Send an address in the first cycle, perform data transfer in the second cycle by overlapping with the first cycle of the next access, and access the directory memory using the address sent in the first cycle and the address. The obtained hit information and address information are held for a second cycle, and if the hit information indicates a hit, the cache memory is accessed in the second cycle using the held address information, and if a miss occurs, In a memory access control circuit that reads data from the main memory based on the address information and accesses the cache memory in two cycles, (a) If the hit information output in the first cycle indicates a miss, the second cycle a stage transition inhibiting signal generation circuit (11) that generates a stage transition inhibiting signal to inhibit stage transitions; a memory access request permission signal generation circuit that turns on the memory access request permission signal from off in a cycle immediately before the last data reaches the cache memory;
12), and (c) detects that the memory access request permission signal is turned on from off, and activates the transition suppression signal generation circuit (11).
1. A memory access control circuit comprising: a stage transition inhibition stop circuit (13) for stopping a stage transition inhibition signal generated by ).
イクルにおいて、自キャッシュメモリの無効化要求がな
された場合、前記サイクルにおいて無効化処理を行うた
めに、前記メモリアクセス要求許可信号がオンになるの
を抑止するメモリアクセス要求許可抑止回路(14)を
設けたことを特徴とする請求項(1)記載のメモリアク
セス制御回路。(2) If a request to invalidate the own cache memory is made in the cycle in which the memory access request permission signal is turned on, the memory access request permission signal is turned on in order to perform the invalidation process in the cycle. 2. The memory access control circuit according to claim 1, further comprising a memory access request permission suppression circuit (14) for suppressing memory access requests.
リアクセス要求許可信号をオンにするサイクルにおいて
、自キャッシュメモリの無効化要求が連続して成された
場合は、その期間引続きメモリアクセス要求許可信号を
抑止し、無効化が不要になったサイクルからメモリアク
セス要求許可信号をオンにするものであることを特徴と
する請求項(2)記載のメモリアクセス制御回路。(3) In the cycle in which the access request permission suppression circuit (14) turns on the memory access request permission signal, if a request to invalidate the own cache memory is made consecutively, the memory access request will continue to be permitted for that period. 3. The memory access control circuit according to claim 2, wherein the memory access control circuit suppresses the signal and turns on the memory access request permission signal from a cycle in which invalidation is no longer necessary.
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 true JPH04155457A (en) | 1992-05-28 |
| JP2677706B2 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) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61165154A (en) * | 1984-09-27 | 1986-07-25 | ハネイウエル・インフオメ−ション・システムス・インコ−ポレ−テッド | Pipeline cache memory and data processing system equipped with it |
| JPS61221845A (en) * | 1985-03-05 | 1986-10-02 | Fujitsu Ltd | Producing system for invalidated address of buffer memory |
| JPS63214849A (en) * | 1987-03-04 | 1988-09-07 | Nec Corp | Memory access control system |
| JPH0290265A (en) * | 1988-07-25 | 1990-03-29 | Digital Equip Corp <Dec> | Pipeline having integrating cash for computer processor |
| JPH03271843A (en) * | 1990-03-20 | 1991-12-03 | Fujitsu Ltd | Memory access control system |
-
1990
- 1990-10-19 JP JP2279249A patent/JP2677706B2/en not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61165154A (en) * | 1984-09-27 | 1986-07-25 | ハネイウエル・インフオメ−ション・システムス・インコ−ポレ−テッド | Pipeline cache memory and data processing system equipped with it |
| JPS61221845A (en) * | 1985-03-05 | 1986-10-02 | Fujitsu Ltd | Producing system for invalidated address of buffer memory |
| JPS63214849A (en) * | 1987-03-04 | 1988-09-07 | Nec Corp | Memory access control system |
| JPH0290265A (en) * | 1988-07-25 | 1990-03-29 | Digital Equip Corp <Dec> | Pipeline having integrating cash for computer processor |
| JPH03271843A (en) * | 1990-03-20 | 1991-12-03 | Fujitsu Ltd | Memory access control system |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2677706B2 (en) | 1997-11-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0748481B1 (en) | Highly pipelined bus architecture | |
| US6799252B1 (en) | High-performance modular memory system with crossbar connections | |
| US5577229A (en) | Computer system and method for pipelined transfer of data between modules utilizing a shared memory and a pipeline having a plurality of registers | |
| JP2003504757A (en) | Buffering system bus for external memory access | |
| TW459201B (en) | Flash memory system that ensures normal operation of synchronous cache access and the access method of flash memory | |
| JP3018038B2 (en) | Data processing device having cache | |
| JPH06318178A (en) | Cache tag control device and control method for cache tag memory | |
| JP3789937B2 (en) | Chunk chain for vector processors | |
| JPH04155457A (en) | Memory access control circuit | |
| JP2000181891A (en) | Shared memory access order guarantee method | |
| JP4633334B2 (en) | Information processing apparatus and memory access arbitration method | |
| JPH0353657B2 (en) | ||
| JPH0478908A (en) | Clock control system | |
| JP3288261B2 (en) | Cash system | |
| JPH0769825B2 (en) | Parallel processor | |
| JP3039391B2 (en) | Memory system | |
| JP3298504B2 (en) | Memory controller | |
| JP2003122626A (en) | High performance graphics controller | |
| JPH06161891A (en) | Computer system and cache control method in cache control means | |
| JP2638505B2 (en) | Bus interface device | |
| JP4856373B2 (en) | Memory system, control method thereof, and method of maintaining data coherency | |
| JPH03271843A (en) | Memory access control system | |
| JPH0346033A (en) | Inter-job data transfer control method | |
| JPH04149653A (en) | Read/comparison system for duplex memory | |
| JPH02259945A (en) | Storing processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |