JPH1049440A - Cache memory system - Google Patents

Cache memory system

Info

Publication number
JPH1049440A
JPH1049440A JP8200386A JP20038696A JPH1049440A JP H1049440 A JPH1049440 A JP H1049440A JP 8200386 A JP8200386 A JP 8200386A JP 20038696 A JP20038696 A JP 20038696A JP H1049440 A JPH1049440 A JP H1049440A
Authority
JP
Japan
Prior art keywords
cache memory
address
data
instruction
bus cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8200386A
Other languages
Japanese (ja)
Inventor
Shinjiro Kameda
慎二郎 亀田
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP8200386A priority Critical patent/JPH1049440A/en
Publication of JPH1049440A publication Critical patent/JPH1049440A/en
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a cache memory system which can avoid its useless operations, can reduce its power consumption and also can simplify its circuit configuration. SOLUTION: A CPU 10 outputs a high level of a data/instruction identification signal DCI simultaneously with an address ADR in a data bus cycle mode. Receiving the signal DCI, a cache memory 30 is set in an enable state. The CPU 10 outputs the address ADR to a main memory 20 and the memory 30 respectively via an address bus ADRBUS. The memory 30 holds the address ADR via an address register DAR and also holds the data received form a data bus. Therefore, the memory 30 operates only in the data bus cycle mode to avoid its useless operations and to reduce its power consumption.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、キャッシュメモリ
システム、例えば、CPU(中央演算処理装置)の外部
に設けられた二次キャッシュメモリなどにより構成され
たキャッシュメモリシステムに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cache memory system, for example, a cache memory system including a secondary cache memory provided outside a CPU (Central Processing Unit).

【0002】[0002]

【従来の技術】CPUの一部として形成されるオンチッ
プキャッシュメモリ、いわゆる一次キャッシュメモリで
は、CPUの円滑な演算処理を行うため、命令用のキャ
ッシュメモリとデータ用のキャッシュメモリを分離する
ことが現在の主流になっている。また、命令用のキャッ
シュメモリと、データ用のキャッシュメモリで、連想
性、書き込み時の動作などの仕様を変えることも多い。
2. Description of the Related Art In an on-chip cache memory formed as a part of a CPU, a so-called primary cache memory, a cache memory for instructions and a cache memory for data must be separated in order to perform smooth arithmetic processing of the CPU. It is now mainstream. In addition, the cache memory for instructions and the cache memory for data often change specifications such as associativity and write operation.

【0003】例えば通常、プログラミングされた命令
は、実行中にCPUにより書き換えられることはないた
め、同様にCPUにより命令用のキャッシュメモリへの
書き込みは行われない。そのため、CPUによる書き込
み機能をサポートしていない命令キャッシュメモリを搭
載しているCPUが多い。
For example, normally, a programmed instruction is not rewritten by the CPU during execution, so that the CPU does not similarly write the instruction cache memory. Therefore, many CPUs have an instruction cache memory that does not support the writing function of the CPU.

【0004】[0004]

【発明が解決しようとする課題】ところで、一般的に、
CPUの外部に設けられている二次キャッシュメモリ
は、命令とデータが混在する複合キャッシュメモリがほ
とんどである。このため、無駄な動作を行うという問題
がある。
By the way, generally,
Most secondary cache memories provided outside the CPU are complex cache memories in which instructions and data are mixed. For this reason, there is a problem that a useless operation is performed.

【0005】例えば、CPU内部の命令用キャッシュメ
モリでミスを起こしたとき、二次キャッシュメモリがル
ックアサイド方式で適用されていた場合、CPUはアド
レスその他を出力し、ラインフィルを二次キャッシュメ
モリ、メインメモリに対して同時に要求する。
For example, when an error occurs in the instruction cache memory inside the CPU, and when the secondary cache memory is applied by the look-aside method, the CPU outputs an address and the like, and replaces the line fill with the secondary cache memory. Request to main memory at the same time.

【0006】二次キャッシュメモリでは、送られてきた
アドレスの下位ビットに対応するキャッシュメモリブロ
ックに保持されているものがデータなのか、命令なのか
分からない。そのため、内容の如何に関わらず、CPU
から送られたきたアドレスに対して、ルックアップ動作
を行わなければならない。もし、最初からそこに保持さ
れているものがデータだと分かっていたのならば、今回
のバスサイクルでは、動作する必要はなかったことにな
る。アドレスのルックアップは、メモリアクセスの度に
行われるので、上記のようなルックアップによって無駄
に消費された電力は無視できないものとなる。
In the secondary cache memory, it is not known whether the data held in the cache memory block corresponding to the lower bits of the transmitted address is data or an instruction. Therefore, regardless of the content, CPU
A lookup operation must be performed on the address sent from. If it is known from the beginning that the data held there is data, it is not necessary to operate in this bus cycle. Since the address lookup is performed every time the memory is accessed, the power wastefully consumed by the above lookup cannot be ignored.

【0007】また、複合キャッシュメモリであるため、
命令を管理するには冗長な回路が存在することになる。
例えば、従来のように、複合型のキャッシュメモリで
は、ライトバックキャッシュメモリとして構成されてい
るキャッシュメモリブロックに命令が保持されている場
合がある。命令が保持されているキャッシュメモリブロ
ックには、通常CPUによる書き込みが行われることは
ないので、この場合、ライトバック用の回路は冗長なも
のとなる。
[0007] Also, since it is a composite cache memory,
There are redundant circuits to manage the instructions.
For example, as in the related art, in a combined cache memory, an instruction may be held in a cache memory block configured as a write-back cache memory. Normally, writing by the CPU is not performed on the cache memory block in which the instruction is held, and in this case, the write-back circuit is redundant.

【0008】その他にも、データと命令の連想性、容量
を変えることが複合キャッシュメモリではできない。も
し、最初からデータと命令で独立した二次キャッシュメ
モリを構成できたのであれば、命令専用キャッシュメモ
リはもっと単純な回路で実現できる。また、データと命
令で連想性、記憶容量を変えることも自由になる。
In addition, it is not possible to change the associativity and capacity of data and instructions with a composite cache memory. If an independent secondary cache memory can be constituted by data and instructions from the beginning, an instruction-only cache memory can be realized by a simpler circuit. Also, it is possible to freely change the associativity and storage capacity by data and instructions.

【0009】本発明は、かかる事情に鑑みてなされたも
のであり、その目的は、無駄な動作を回避できることは
もとより、消費電力を低減でき、回路構成を単純化でき
るキャッシュメモリシステムを提供することにある。
The present invention has been made in view of such circumstances, and an object of the present invention is to provide a cache memory system capable of reducing power consumption and simplifying a circuit configuration, in addition to avoiding useless operation. It is in.

【0010】[0010]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、少なくともデータバスサイクルと命令バ
スサイクルの二つのバスサイクルを有し、これらのバス
サイクルを識別するためのデータ/命令識別信号を出力
する制御装置を有するキャッシュメモリシステムであっ
て、上記データ/命令識別信号を受けて、上記データま
たは命令の何れかのバスサイクルのみに動作するキャッ
シュメモリを有する。
In order to achieve the above object, the present invention has at least two bus cycles, a data bus cycle and an instruction bus cycle, and has a data / instruction identification for identifying these bus cycles. A cache memory system having a control device for outputting a signal, comprising: a cache memory that receives the data / instruction identification signal and operates only in one of the data or instruction bus cycles.

【0011】また、本発明では、少なくともデータバス
サイクルと命令バスサイクルの二つのバスサイクルを有
し、これらのバスサイクルを識別するためのデータ/命
令識別信号を出力する制御装置を有するキャッシュメモ
リシステムであって、上記データバスサイクルのみに動
作する第1のキャッシュメモリと、上記命令バスサイク
ルのみに動作する第2のキャッシュメモリとを有する。
Further, according to the present invention, a cache memory system having at least two bus cycles of a data bus cycle and an instruction bus cycle and having a control device for outputting a data / instruction identification signal for identifying these bus cycles is provided. And a first cache memory that operates only in the data bus cycle and a second cache memory that operates only in the instruction bus cycle.

【0012】また、本発明では、上記第1および第2の
キャッシュメモリには、上記制御装置により出力された
アドレスを一時保持する第1および第2のレジスタを有
する。
Further, in the present invention, the first and second cache memories have first and second registers for temporarily holding an address output by the control device.

【0013】さらに、本発明では、上記制御装置により
出力されたアドレスを一時保持するレジスタを有する主
記憶装置を有し、また、当該主記憶装置には連続したバ
スサイクルを一時保持するレジスタを少なくとも二つ有
する。
Further, according to the present invention, there is provided a main memory having a register for temporarily holding an address output by the control device, and the main memory has at least a register for temporarily holding a continuous bus cycle. I have two.

【0014】本発明によれば、制御装置により出力され
たデータ/命令識別信号を受けて、データまたは命令バ
スサイクルの何れかのみに動作するキャッシュメモリを
有し、これにより、制御装置からのデータまたはアドレ
スを記憶する。
According to the present invention, there is provided a cache memory which operates on only a data or an instruction bus cycle in response to a data / instruction identification signal output from a control device, and Or, store the address.

【0015】また、本発明によれば、データバスサイク
ル時のみに動作する第1のキャッシュメモリ、即ち、デ
ータ専用のキャッシュメモリと命令バスサイクル時のみ
に動作する第2のキャッシュメモリ、即ち、命令専用キ
ャッシュメモリが別々に設けられ、データ専用キャッシ
ュメモリにより、データバスサイクル時に制御装置から
のアドレスを記憶し、命令専用キャッシュメモリによ
り、命令バスサイクル時に制御装置からのアドレスを記
憶するので、それぞれのキャッシュメモリはデータバス
サイクルおよび命令バスサイクルに独立に動作し、無駄
な動作を防止でき、キャッシュメモリシステムの消費電
力の低減を図れ、回路の構成を単純化できる。
According to the present invention, the first cache memory which operates only in the data bus cycle, ie, the cache memory dedicated to data, and the second cache memory which operates only in the instruction bus cycle, ie, the instruction A dedicated cache memory is separately provided, and the data dedicated cache memory stores an address from the control device during a data bus cycle, and the instruction dedicated cache memory stores an address from the control device during an instruction bus cycle. The cache memory operates independently of the data bus cycle and the instruction bus cycle, can prevent useless operation, reduce the power consumption of the cache memory system, and simplify the circuit configuration.

【0016】さらに、本発明によれば、主記憶装置にア
ドレスを一時記憶するためのアドレスレジスタを少なく
とも二つ設けることにより、連続したアドレスに対し
て、キャッシュメモリによりヒットするか否かの検索結
果が出力されるまでに、アドレスレジスタによりアドレ
スが保持され、アドレスバスの使用効率の向上とシステ
ム全体の性能の向上を図れる。
Further, according to the present invention, by providing at least two address registers for temporarily storing addresses in the main storage device, a search result as to whether or not a continuous address is hit by the cache memory is determined. By the time the address is output, the address is held by the address register, thereby improving the use efficiency of the address bus and the performance of the entire system.

【0017】[0017]

【発明の実施の形態】第1実施形態 図1は本発明に係るキャッシュメモリシステムの第1の
実施形態を示す回路図である。図1はCPU10、メイ
ンメモリ(主記憶装置)20およびキャッシュメモリ3
0によって構成されたシステムの一例を示すブロック図
である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment FIG. 1 is a circuit diagram showing a first embodiment of a cache memory system according to the present invention. FIG. 1 shows a CPU 10, a main memory (main storage device) 20, and a cache memory 3.
FIG. 1 is a block diagram showing an example of a system constituted by 0.

【0018】本例においては、CPU10に内蔵された
キャッシュメモリ、いわゆる一次キャッシュメモリに対
して、キャッシュメモリ30はCPU10の外部に設け
られたキャッシュメモリ、いわゆる二次キャッシュメモ
リである。なお、本実施形態においては、キャッシュメ
モリ30はデータバスサイクル時のみに動作するデータ
専用キャッシュメモリである。
In this embodiment, the cache memory 30 is a cache memory provided outside the CPU 10, ie, a so-called secondary cache memory, in contrast to a cache memory built in the CPU 10, that is, a so-called primary cache memory. In the present embodiment, the cache memory 30 is a data-only cache memory that operates only during a data bus cycle.

【0019】図示のように、CPU10はアドレスバス
ADRBUSを介してメインメモリ20およびキャッシ
ュメモリ30と接続されている。また、CPU10のデ
ータ/命令識別信号DCIの出力端子D/C#がキャッ
シュメモリ30のチップ選択信号入力端子CSに接続さ
れている。
As shown, the CPU 10 is connected to the main memory 20 and the cache memory 30 via an address bus ADRBUS. The output terminal D / C # of the data / instruction identification signal DCI of the CPU 10 is connected to the chip selection signal input terminal CS of the cache memory 30.

【0020】CPU10はメインメモリ20とデータの
アクセスを行うときに、データのバスサイクルを行うと
きに、ハイレベルのデータ/命令識別信号DCIを出力
し、命令のバスサイクルを行うときに、ローレベルのデ
ータ/命令識別信号DCIをアドレスADRと同じタイ
ミングで出力する。
The CPU 10 outputs a high-level data / instruction identification signal DCI when performing data bus cycles when accessing data with the main memory 20, and outputs a low-level data / instruction identification signal DCI when performing instruction bus cycles. Is output at the same timing as the address ADR.

【0021】メインメモリ20はCPU10からのアド
レスにより指定されたアドレスに、図示しないデータバ
スを介して、CPU10との間にデータのアクセスを行
う。なお、メインメモリ20にはアドレスレジスタMA
R1が設けられ、アドレスバスADRBUSからのアド
レスADRがアドレスレジスタMAR1に一時保持され
る。さらに図示しないデータバスからのデータおよび命
令がメインメモリ20に保持される。
The main memory 20 accesses data at an address specified by an address from the CPU 10 to the CPU 10 via a data bus (not shown). The main memory 20 has an address register MA.
R1 is provided, and the address ADR from the address bus ADRBUS is temporarily held in the address register MAR1. Further, data and instructions from a data bus (not shown) are held in the main memory 20.

【0022】キャッシュメモリ30はハイレベルのチッ
プ選択信号でイネーブルされるので、データのバスサイ
クルを行うとき、CPU10からハイレベルのデータ/
命令識別信号DCIを受けて、キャッシュメモリ30が
イネーブル状態となり、アドレスバスADRBUSから
のアドレスADRがアドレスレジスタDARに格納され
る。また、図示しないデータバスからのデータがキャッ
シュメモリ30に入力され、キャッシュメモリ30によ
り保持される。一方、命令のバスサイクルを行うとき、
CPU10からローレベルのデータ/命令識別信号DC
Iが出力されるので、キャッシュメモリ30がイネーブ
ル状態にならず、動作しない。
Since the cache memory 30 is enabled by a high-level chip select signal, when performing a data bus cycle, the high-level data /
Receiving the instruction identification signal DCI, the cache memory 30 is enabled, and the address ADR from the address bus ADRBUS is stored in the address register DAR. Further, data from a data bus (not shown) is input to the cache memory 30 and held by the cache memory 30. On the other hand, when performing an instruction bus cycle,
Low-level data / instruction identification signal DC from CPU 10
Since I is output, the cache memory 30 is not enabled and does not operate.

【0023】このように、キャッシュメモリ30はデー
タのバスサイクル時のみ動作する、いわゆるデータ専用
のキャッシュメモリとなる。このため、データバスサイ
クル時のみキャッシュメモリ30が動作し、命令バスサ
イクル時、キャッシュメモリ30が動作しないので、命
令のバスサイクル時の無駄な動作が防止され、消費電力
の低減を図れる。
As described above, the cache memory 30 operates only during a data bus cycle, and is a so-called data-only cache memory. Therefore, the cache memory 30 operates only during the data bus cycle, and does not operate during the instruction bus cycle. Therefore, useless operation during the instruction bus cycle is prevented, and power consumption can be reduced.

【0024】以上説明したように、本実施形態によれ
ば、データバスサイクル時にCPU10はアドレスAD
Rと同じタイミングでハイレベルのデータ/命令識別信
号DCIを出力し、これを受けて、キャッシュメモリ3
0がイネーブル状態となり、CPU10はアドレスバス
ADRBUSを介して、アドレスADRをそれぞれメイ
ンメモリ20およびキャッシュメモリ30に転送し、キ
ャッシュメモリ30はアドレスADRをアドレスレジス
タDARに保持し、データバスからのデータをキャッシ
ュメモリ30に保持するので、キャッシュメモリ30は
データバスサイクル時のみ動作し、それ以外のとき動作
しないので、無駄な動作を回避でき、低消費電力化を図
れる。
As described above, according to the present embodiment, the CPU 10 controls the address AD during the data bus cycle.
A high-level data / instruction identification signal DCI is output at the same timing as R.
0 is enabled, the CPU 10 transfers the address ADR to the main memory 20 and the cache memory 30 via the address bus ADRBUS, the cache memory 30 holds the address ADR in the address register DAR, and transfers the data from the data bus. Since the cache memory 30 holds the data, the cache memory 30 operates only during the data bus cycle, and does not operate at other times. Therefore, useless operation can be avoided and power consumption can be reduced.

【0025】第2実施形態 図2は本発明に係るキャッシュメモリシステムの第2の
実施形態を示す回路図である。図示のように、本実施形
態のシステムはCPU10、メインメモリ20、キャッ
シュメモリ30,40により構成されている。キャッシ
ュメモリ30はデータ専用のキャッシュメモリ、キャッ
シュメモリ40は命令専用のキャッシュメモリである。
即ち、キャッシュメモリ30はデータバスサイクル時の
み動作し、キャッシュメモリ40は命令バスサイクル時
のみ動作する。
Second Embodiment FIG. 2 is a circuit diagram showing a second embodiment of the cache memory system according to the present invention. As illustrated, the system of the present embodiment includes a CPU 10, a main memory 20, and cache memories 30 and 40. The cache memory 30 is a cache memory dedicated to data, and the cache memory 40 is a cache memory dedicated to instructions.
That is, the cache memory 30 operates only in the data bus cycle, and the cache memory 40 operates only in the instruction bus cycle.

【0026】図2に示す本第2の実施形態は図1に示す
第1の実施形態に較べると、命令専用キャッシュメモリ
40が改めて設けられ、それ以外の構成部分は図1に示
す第1の実施形態と同様である。以下、図2を参照しつ
つ、本第2の実施形態の動作について説明する。
The second embodiment shown in FIG. 2 is different from the first embodiment shown in FIG. 1 in that an instruction-only cache memory 40 is newly provided, and the other components are the same as those of the first embodiment shown in FIG. This is the same as the embodiment. Hereinafter, the operation of the second embodiment will be described with reference to FIG.

【0027】キャッシュメモリ30は第1の実施形態に
示すものと同じく、データ専用キャッシュメモリであ
り、アドレスレジスタDARを有し、チップ選択信号入
力端子CSにハイレベルの信号が入力されたときにのみ
動作する。
The cache memory 30 is a data-only cache memory similar to that shown in the first embodiment, has an address register DAR, and is used only when a high-level signal is input to the chip select signal input terminal CS. Operate.

【0028】キャッシュメモリ40は命令専用のキャッ
シュメモリである。キャッシュメモリ40はチップ選択
信号入力端子CSBにローレベルの信号が入力されたと
きのみ動作する。チップ選択信号入力端子CSBはCP
U10のデータ/命令識別信号DCIの出力端子に接続
されている。命令バスサイクルを行うとき、CPU10
により、ローレベルのデータ/命令識別信号DCIがア
ドレスADRと同じタイミングで出力される。このた
め、命令バスサイクル時にキャッシュメモリ40がイネ
ーブル状態となり、アドレスバスADRBUSからのア
ドレスADRをアドレスレジスタIARに保持する。
The cache memory 40 is an instruction-only cache memory. The cache memory 40 operates only when a low-level signal is input to the chip select signal input terminal CSB. Chip select signal input terminal CSB is CP
It is connected to the output terminal of the data / command identification signal DCI of U10. When performing an instruction bus cycle, the CPU 10
As a result, the low-level data / command identification signal DCI is output at the same timing as the address ADR. Therefore, the cache memory 40 is enabled in the instruction bus cycle, and holds the address ADR from the address bus ADRBUS in the address register IAR.

【0029】また、図示しないデータバスからの命令が
キャッシュメモリ40に入力され、キャッシュメモリ4
0により保持される。なお、本例における命令専用キャ
ッシュメモリ40においては、命令のバスサイクル時の
み動作するので、その中には命令のみが保持されること
になる。通常の命令には、CPU10により書き込み動
作は行われないので、キャッシュメモリ40の制御はデ
ータ専用のキャッシュメモリ30よりも単純になり、回
路もより簡素なものにすることが可能である。さらに、
データ専用キャッシュメモリ30と命令専用キャッシュ
メモリ40が互いに独立した動作が可能となることで、
それぞれ異なった連想性、記憶容量を持つことができ
る。
An instruction from a data bus (not shown) is input to the cache memory 40, and the
It is held by 0. Since the instruction-only cache memory 40 in this example operates only during the instruction bus cycle, only the instruction is held therein. Since a write operation is not performed by the CPU 10 for a normal instruction, the control of the cache memory 40 is simpler than that of the data-only cache memory 30, and the circuit can be simpler. further,
Since the data-only cache memory 30 and the instruction-only cache memory 40 can operate independently of each other,
Each can have different associativity and storage capacity.

【0030】メインメモリ20においては、図1に示す
第1の実施形態と同様に、アドレスバスADRBUSか
らのアドレスADRがメインメモリ20にあるアドレス
レジスタMAR1に保持され、さらに図示しないデータ
バスからのデータおよび命令がメインメモリ20に保持
される。
In the main memory 20, as in the first embodiment shown in FIG. 1, an address ADR from the address bus ADRBUS is held in an address register MAR1 in the main memory 20, and data from a data bus (not shown) is stored. And instructions are held in the main memory 20.

【0031】以上説明したように、本実施形態によれ
ば、データ専用キャッシュメモリ30および命令専用キ
ャッシュメモリ40を設け、キャッシュメモリ30にア
ドレスレジスタDAR、キャッシュメモリ40にアドレ
スレジスタIARをそれぞれ独立に設け、CPU10か
らのデータ/命令識別信号DCIの制御で、キャッシュ
メモリ30はデータバスサイクル時のみ動作し、キャッ
シュメモリ40は命令バスサイクル時のみ動作するの
で、メモリセルへの無駄なアクセスを回避でき、消費電
力の低減を図れる。
As described above, according to this embodiment, the data-only cache memory 30 and the instruction-only cache memory 40 are provided, and the cache memory 30 is provided with the address register DAR, and the cache memory 40 is provided with the address register IAR, respectively. The cache memory 30 operates only in the data bus cycle and the cache memory 40 operates only in the instruction bus cycle under the control of the data / instruction identification signal DCI from the CPU 10, so that useless access to the memory cells can be avoided. Power consumption can be reduced.

【0032】第3実施形態 図3は本発明に係るキャッシュメモリシステムの第3の
実施形態を示す回路図である。図示のように、本実施形
態のシステムはCPU10、メインメモリ20a、キャ
ッシュメモリ30,40により構成されている。メイン
メモリ20a以外の構成部分は、図2に示す本発明の第
2の実施形態の各構成部分と同様であり、以下、第2の
実施形態と異なるメインメモリ20aについてのみ詳細
に説明する。
Third Embodiment FIG. 3 is a circuit diagram showing a third embodiment of the cache memory system according to the present invention. As illustrated, the system of the present embodiment includes a CPU 10, a main memory 20a, and cache memories 30 and 40. The components other than the main memory 20a are the same as the respective components of the second embodiment of the present invention shown in FIG. 2, and only the main memory 20a different from the second embodiment will be described below in detail.

【0033】図3に示すように、メインメモリ20aは
二つのアドレスレジスタMAR1,MAR2を備え、こ
れらのアドレスレジスタにより、それぞれ異なる種類の
アドレスを保持できる。また、本実施形態においては、
前述した第2の実施形態と同様に、データ専用キャッシ
ュメモリ30および命令専用キャッシュメモリ40に、
それぞれ独立にアドレスレジスタDARおよびIARを
備えている。このため、CPU10により、命令とデー
タの連続した二つのアドレス転送を行ったとき、それぞ
れのレジスタで競合することなく、それぞれのレジスタ
により、命令のアドレスおよびデータのアドレスを保持
できる。
As shown in FIG. 3, the main memory 20a has two address registers MAR1 and MAR2, which can hold different types of addresses. In the present embodiment,
As in the second embodiment, the data-only cache memory 30 and the instruction-only cache memory 40
Each has an address register DAR and an IAR independently. Therefore, when the CPU 10 transfers two consecutive addresses of the instruction and the data, the respective registers can hold the address of the instruction and the address of the data without conflict between the respective registers.

【0034】図4は本実施形態のタイミングチャートの
一例を示している。図4にシステムクロック信号CL
K、アドレスバスADRBUS、およびデータ/命令識
別信号DCIの波形をそれぞれ示している。また、ここ
では、キャッシュメモリ30およびキャッシュメモリ4
0がルックアップペナルティのない、ルックアサイドキ
ャッシュメモリで、ワンウエイト動作をサポートすると
仮定する。以下、図4を参照しながら、本実施形態の動
作を説明する。
FIG. 4 shows an example of a timing chart of the present embodiment. FIG. 4 shows the system clock signal CL.
K, the address bus ADRBUS, and the data / instruction identification signal DCI are shown respectively. Also, here, the cache memory 30 and the cache memory 4
Assume that 0 is a look-aside cache memory with no lookup penalty and supports one-wait operation. Hereinafter, the operation of the present embodiment will be described with reference to FIG.

【0035】図4に示すように、システムクロック信号
CLKのクロック1において、アドレスバスADRBU
SにアドレスAD1およびデータ/命令識別信号DCI
が出力されている。ここで、データ/命令識別信号DC
Iがローレベルに設定されているので、クロック1にお
けるバスサイクルは命令バスサイクルであることを示し
ている。
As shown in FIG. 4, at clock 1 of system clock signal CLK, address bus ADRBU
S has an address AD1 and a data / instruction identification signal DCI
Is output. Here, the data / command identification signal DC
Since I is set to the low level, it indicates that the bus cycle at clock 1 is an instruction bus cycle.

【0036】このため、図3に示すシステムにおいて
は、命令専用キャッシュメモリ40がイネーブル状態に
設定され、動作し、データ専用キャッシュメモリ30は
動作しない。このため、キャッシュメモリ40のアドレ
スレジスタIARおよびメインメモリ20aのアドレス
レジスタMAR1に、アドレスAD1が入力され、保持
される。キャッシュメモリ30が動作しないので、アド
レスレジスタDARには、アドレスAD1が入力されな
い。
Therefore, in the system shown in FIG. 3, the instruction-only cache memory 40 is set to the enabled state and operates, and the data-only cache memory 30 does not operate. Therefore, the address AD1 is input to and held in the address register IAR of the cache memory 40 and the address register MAR1 of the main memory 20a. Since the cache memory 30 does not operate, the address AD1 is not input to the address register DAR.

【0037】そして、キャッシュメモリ40において、
アドレスAD1を用いてアドレスルックアップ動作が行
われ、図4に示すクロック3までにアドレスルックアッ
プの結果、例えば、ヒット、もしくはミスがCPU10
およびメインメモリ20aに出力される。
Then, in the cache memory 40,
An address lookup operation is performed using the address AD1, and as a result of the address lookup, for example, a hit or a miss is detected by the CPU 10 by the clock 3 shown in FIG.
And output to the main memory 20a.

【0038】図2に示す第2の実施形態のように、メイ
ンメモリ20にアドレスレジスタをMAR1一つのみ備
えた場合では、CPU10は早くともキャッシュメモリ
40によりアドレスルックアップの結果が出る、例えば
クロック3のタイミングまでは次のアドレスを出力する
ことができない。なぜなら、従来のメインメモリ20の
アドレスレジスタには、ただ一つのアドレスしか格納で
きないために、新たなアドレスAD2が入力されると、
先に格納されたアドレスAD1が上書きされてしまう。
そうなると、もしキャッシュメモリ40によるアドレス
ルックアップの結果がミスだった場合、間違ったアドレ
スがメインメモリ20aから読み出され、CPU10に
転送されてしまう。
When only one MAR 1 is provided in the main memory 20 as in the second embodiment shown in FIG. Until the timing 3, the next address cannot be output. Because only one address can be stored in the address register of the conventional main memory 20, when a new address AD2 is input,
The address AD1 stored earlier is overwritten.
Then, if the result of the address lookup by the cache memory 40 is a mistake, the wrong address is read from the main memory 20a and transferred to the CPU 10.

【0039】本実施形態においては、メインメモリ20
aには二つのアドレスレジスタMAR1,MAR2が備
えられたので、CPU10により、クロック1のタイミ
ングで最初のアドレスAD1が出力されたあと、次のク
ロック2のタイミングで、例えば、データバスサイクル
のアドレスAD2が出力される。これと同時に出力され
たデータ/命令識別信号DCIが、例えばハイレベルに
保持され、クロック2がデータバスサイクルであること
を示す。
In this embodiment, the main memory 20
Since a is provided with two address registers MAR1 and MAR2, the CPU 10 outputs the first address AD1 at the timing of the clock 1 and then outputs the address AD2 of the data bus cycle at the timing of the next clock 2, for example. Is output. At the same time, the output data / instruction identification signal DCI is held at, for example, a high level, indicating that clock 2 is a data bus cycle.

【0040】そして、クロック1の命令バスサイクルに
おけるアドレスAD1がメインメモリ20aのアドレス
レジスタMAR1に格納され、クロック2の命令バスサ
イクルにおけるアドレスAD2がメインメモリ20aの
アドレスレジスタMAR2に格納される。
Then, the address AD1 in the instruction bus cycle of clock 1 is stored in the address register MAR1 of the main memory 20a, and the address AD2 in the instruction bus cycle of clock 2 is stored in the address register MAR2 of the main memory 20a.

【0041】また、クロック2において、データ/命令
識別信号DCIがハイレベルに保持されているので、命
令専用キャッシュメモリ40が動作せず、データ専用キ
ャッシュメモリ30がイネーブル状態に設定され、動作
する。これにより、アドレスAD2がキャッシュメモリ
30のアドレスレジスタDARに保持される。
At clock 2, since the data / instruction identification signal DCI is held at the high level, the instruction-only cache memory 40 does not operate, and the data-only cache memory 30 is set to the enabled state and operates. As a result, the address AD2 is held in the address register DAR of the cache memory 30.

【0042】そして、キャッシュメモリ30において、
このアドレスAD2を用いて、アドレスルックアップ動
作が行われ、図4に示すクロック4までに、ヒットもし
くはミスの結果がCPU10およびメインメモリ20a
に出力される。
Then, in the cache memory 30,
Using this address AD2, an address lookup operation is performed, and by clock 4 shown in FIG. 4, the result of the hit or miss is determined by the CPU 10 and the main memory 20a.
Is output to

【0043】同様に、もしクロック1はデータのバスサ
イクルだったとしたら、クロック2は命令のバスサイク
ルとして、命令専用キャッシュメモリ30およびメイン
メモリ20aがそれぞれ動作することができる。
Similarly, if the clock 1 is a data bus cycle, the clock 2 is an instruction bus cycle, and the instruction cache memory 30 and the main memory 20a can operate.

【0044】以上説明したように、本実施形態によれ
ば、それぞれ独立したアドレスレジスタDAR,IAR
を持つデータ専用キャッシュメモリ30、命令専用キャ
ッシュメモリ40および二つのアドレスレジスタMAR
1,MAR2を備えたメインメモリ20aによりシステ
ムを構成し、データバスサイクルではキャッシュメモリ
30が動作し、命令バスサイクルではキャッシュメモリ
40が動作し、連続したアドレスがメインメモリ20a
の二つのアドレスレジスタMAR1,MAR2にそれぞ
れ格納するので、アドレスバスADRBUSの使用効率
が向上でき、システム全体の性能の向上を実現できる。
As described above, according to this embodiment, independent address registers DAR and IAR are provided.
Dedicated cache memory 30, instruction dedicated cache memory 40 and two address registers MAR having
1 and MAR2, a system is configured. The cache memory 30 operates in a data bus cycle, the cache memory 40 operates in an instruction bus cycle, and continuous addresses are stored in the main memory 20a.
Are stored in the two address registers MAR1 and MAR2, respectively, so that the use efficiency of the address bus ADRBUS can be improved and the performance of the entire system can be improved.

【0045】[0045]

【発明の効果】以上説明したように、本発明のキャッシ
ュメモリシステムによれば、消費電力の低減を図れ、無
駄な動作を省略でき、回路構成を単純化でき、アドレス
バスの使用効率およびシステム全体の性能の向上を図れ
る利点がある。
As described above, according to the cache memory system of the present invention, the power consumption can be reduced, unnecessary operations can be omitted, the circuit configuration can be simplified, the use efficiency of the address bus and the entire system can be reduced. There is an advantage that the performance of the device can be improved.

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

【図1】本発明に係るキャッシュメモリシステムの第1
の実施形態を示す回路図である。
FIG. 1 shows a first example of a cache memory system according to the present invention.
FIG. 3 is a circuit diagram showing the embodiment.

【図2】本発明に係るキャッシュメモリシステムの第2
の実施形態を示す回路図である。
FIG. 2 shows a second example of the cache memory system according to the present invention.
FIG. 3 is a circuit diagram showing the embodiment.

【図3】本発明に係るキャッシュメモリシステムの第3
の実施形態を示す回路図である。
FIG. 3 shows a third example of the cache memory system according to the present invention;
FIG. 3 is a circuit diagram showing the embodiment.

【図4】第3の実施形態のタイミングチャートである。FIG. 4 is a timing chart of the third embodiment.

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

10…CPU、20…メインメモリ、30,40…キャ
ッシュメモリ、ADRBUS…アドレスバス、IAR,
DAR,MAR1,MAR2…アドレスレジスタ、CL
K…システムクロック信号、ADR,AD1,AD2…
アドレス、DCI…データ/命令識別信号。
10 CPU, 20 main memory, 30 40 cache memory, ADRBUS address bus, IAR,
DAR, MAR1, MAR2 ... address register, CL
K: system clock signal, ADR, AD1, AD2 ...
Address, DCI ... data / instruction identification signal.

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 少なくともデータバスサイクルと命令バ
スサイクルの二つのバスサイクルを有し、これらのバス
サイクルを識別するためのデータ/命令識別信号を出力
する制御装置を有するキャッシュメモリシステムであっ
て、 上記データ/命令識別信号を受けて、上記データまたは
命令の何れかのバスサイクルのみに動作するキャッシュ
メモリを有するキャッシュメモリシステム。
1. A cache memory system having a control device having at least two bus cycles, a data bus cycle and an instruction bus cycle, and outputting a data / instruction identification signal for identifying these bus cycles. A cache memory system having a cache memory that operates in only one of the data or instruction bus cycles in response to the data / instruction identification signal.
【請求項2】 少なくともデータバスサイクルと命令バ
スサイクルの二つのバスサイクルを有し、これらのバス
サイクルを識別するためのデータ/命令識別信号を出力
する制御装置を有するキャッシュメモリシステムであっ
て、 上記データ/命令識別信号を受けて、上記データバスサ
イクルのみに動作する第1のキャッシュメモリと、 上記命令バスサイクルのみに動作する第2のキャッシュ
メモリとを有するキャッシュメモリシステム。
2. A cache memory system having at least two bus cycles, a data bus cycle and an instruction bus cycle, and a control device for outputting a data / instruction identification signal for identifying these bus cycles, A cache memory system comprising: a first cache memory that operates only in the data bus cycle in response to the data / instruction identification signal; and a second cache memory that operates only in the instruction bus cycle.
【請求項3】 上記制御装置により、上記データ/命令
識別信号とともにアドレスが出力され、 上記第1のキャッシュメモリには、上記アドレスを一時
保持するレジスタを有する請求項1記載のキャッシュメ
モリシステム。
3. The cache memory system according to claim 1, wherein an address is output together with the data / instruction identification signal by the control device, and the first cache memory has a register for temporarily holding the address.
【請求項4】 上記制御装置により、上記データ/命令
識別信号とともにアドレスが出力され、 上記第1のキャッシュメモリに、上記アドレスを一時保
持する第1のレジスタと、 上記第2のキャッシュメモリに、上記アドレスを一時保
持する第2のレジスタとを有する請求項2記載のキャッ
シュメモリシステム。
4. The control device outputs an address together with the data / instruction identification signal. The first cache memory temporarily stores the address, the first register temporarily stores the address, and the second cache memory stores the address. 3. The cache memory system according to claim 2, further comprising a second register for temporarily storing the address.
【請求項5】 上記制御装置により、上記データ/命令
識別信号とともにアドレスが出力され、 上記アドレスを一時保持するレジスタを備えた主記憶装
置を有する請求項1記載のキャッシュメモリシステム。
5. The cache memory system according to claim 1, wherein an address is output together with the data / instruction identification signal by the control device, and the main memory includes a register for temporarily holding the address.
【請求項6】 上記制御装置により、上記データ/命令
識別信号とともにアドレスが出力され、 上記アドレスを一時保持するレジスタを備えた主記憶装
置を有する請求項2記載のキャッシュメモリシステム。
6. The cache memory system according to claim 2, wherein an address is output together with the data / instruction identification signal by the control device, and the main memory includes a register for temporarily holding the address.
【請求項7】 上記主記憶装置に連続したバスサイクル
のアドレスを一時保持するレジスタを少なくとも二つ有
する請求項6記載のキャッシュメモリシステム。
7. The cache memory system according to claim 6, wherein said main memory device has at least two registers for temporarily storing addresses of successive bus cycles.
JP8200386A 1996-07-30 1996-07-30 Cache memory system Pending JPH1049440A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8200386A JPH1049440A (en) 1996-07-30 1996-07-30 Cache memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8200386A JPH1049440A (en) 1996-07-30 1996-07-30 Cache memory system

Publications (1)

Publication Number Publication Date
JPH1049440A true JPH1049440A (en) 1998-02-20

Family

ID=16423467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8200386A Pending JPH1049440A (en) 1996-07-30 1996-07-30 Cache memory system

Country Status (1)

Country Link
JP (1) JPH1049440A (en)

Similar Documents

Publication Publication Date Title
US20080270707A1 (en) Data processor
JPH04217051A (en) Microprocessor
JP2003501747A (en) Programmable SRAM and DRAM cache interface
JP2002196981A (en) Data processor
US6785770B2 (en) Data processing apparatus with a cache memory and method of using such an apparatus
US20100223414A1 (en) Data transfer coherency device and methods thereof
US5615348A (en) Microprocessor having register bank architecture
US6851036B1 (en) Method and apparatus for controlling external devices through address translation buffer
US5287483A (en) Prefetched operand storing system for an information processor
JP2003131945A (en) Cache memory device
US5012410A (en) Data processor with instruction cache memory
JP2000207203A (en) Micro controller
JPH1049440A (en) Cache memory system
JP3583844B2 (en) Cache memory method
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
US6356976B1 (en) LSI system capable of reading and writing at high speed
JP4034032B2 (en) Microcomputer with built-in cache
JP3001464B2 (en) Microprocessor device
JP3155840B2 (en) Microprocessor
JP2952884B2 (en) Cache controller
EP1121643A1 (en) System and method for improving memory access
US6564303B1 (en) Dual port memory for digital signal processor
JPH1055308A (en) Cache memory
JPH0320834A (en) Initial diagnostic method for information processor
JPS607825B2 (en) memory system