JP2000113677A - キャッシュメモリ装置およびキャッシュメモリ装置の制御方法 - Google Patents

キャッシュメモリ装置およびキャッシュメモリ装置の制御方法

Info

Publication number
JP2000113677A
JP2000113677A JP28172698A JP28172698A JP2000113677A JP 2000113677 A JP2000113677 A JP 2000113677A JP 28172698 A JP28172698 A JP 28172698A JP 28172698 A JP28172698 A JP 28172698A JP 2000113677 A JP2000113677 A JP 2000113677A
Authority
JP
Japan
Prior art keywords
data
cache memory
cache
memory
bit
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
JP28172698A
Other languages
English (en)
Inventor
Kazuyuki Yamada
和志 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP28172698A priority Critical patent/JP2000113677A/ja
Publication of JP2000113677A publication Critical patent/JP2000113677A/ja
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)
  • Static Random-Access Memory (AREA)

Abstract

(57)【要約】 【課題】 書き込みデータが既にメモリに保存されてい
るデータと同一であっても同一データの書き込みが実施
されてしまい、メモリ書き込み時の消費電力が増大する
といった課題がある。 【解決手段】 キャッシュメモリ31に所定のデータを
書き込む場合に、このデータを直前に読み出したデータ
と比較し、反転するビット以外については、データ入出
力部を非活性化することにより、このキャッシュメモリ
31へのデータの書き込み動作における消費電力を削減
することが可能になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、SRAMを用いた
キャッシュメモリ装置に関し、特に、メモリへのデータ
の書き込み時の平均的な消費電力を削減できるキャッシ
ュメモリ装置およびキャッシュメモリ装置の制御方法に
関する。
【0002】
【従来の技術】従来、この種のSRAMを用いたキャッ
シュメモリ装置は、図2に示す構成がとられる。一般
に、キャッシュSRAMへの書き込みが行われるのは、
次の(A)〜(C)の3通りである。 (A)キャッシュSRAMからの読み出しがミスして、
メインメモリからデータを読み出し、そのデータをキャ
ッシュSRAMへ書き込む場合。 (B)キャッシュSRAMへの書き込みがヒットしたと
き。 (C)キャッシュSRAMへの書き込みがミスしたと
き。
【0003】(A)の動作は図2によって示される。図
2において括弧に囲まれた数字によって示されているの
は、各信号線のビット幅の一例である。括弧によって囲
まれた数字が示されていない信号線のビット幅は、1ビ
ットである。まず、CPU2が、メモリ読み出しアドレ
ス10をキャッシュコントローラ4へ送る(図2では3
2bit)。キャッシュコントローラ4内部で読み出し
アドレス10はデコードされる。すなわち、図2に示す
例では、下位2ビットがバイトオフセットアドレス、続
く下位2ビットがブロックオフセットアドレス11、続
く15ビットはインデックスアドレス12、上位の13
ビットはタグアドレス13というように分割される。
【0004】インデックスアドレス12は、キャッシュ
SRAM51にとってはアドレス信号として入力され
る。キャッシュSRAM51は、メインメモリ3よりも
遥かに高速動作でなければ図2に示すキャッシュシステ
ム全体として実効的な動作速度の向上が見込めない。こ
のため、インデックスアドレス12が入力されると、無
効ビット20、タグデータ21およbキャッシュデータ
54を同時に並行して読み出す必要がある。図2では、
キャッシュデータ54だけがフリップフロップ回路52
を介してキャッシュコントローラ4へ出力する構成と描
かれているが、無効ビット20やタグデータ21もフリ
ップフロップ回路を介してもよい。
【0005】読み出されたデータのうちタグデータ21
は、キャッシュコントローラ4内部の比較器6に、タグ
アドレス13と共に入力される。比較器6は、キャッシ
ュSRAM51からのタグデータ21とタグアドレス1
3のそれぞれ対応する全ビット(図2では13ビット)
を比較する。そして、比較器6は、比較器出力信号19
(1ビット幅)として両者が等しければ論理値”1”を
出力し、両者が1ビットでも異なっておれば論理値”
0”を出力する。
【0006】また、2入力ANDゲート8は、比較器出
力信号19とキャッシュSRAMの無効ビット20を入
力とし、ミス/ヒット信号18を出力する。比較器出力
信号19の値が論理値”0”であるか、あるいはキャッ
シュSRAMの無効ビットが論理値”0”ならば、ミス
/ヒット信号18は論理値”0”となり、このキャッシ
ュSRAMの読み出しはミスしたことになり、前述の動
作(A)に相当することになる。
【0007】逆にミス/ヒット信号18が論理値”1”
であれば、所望のデータがキャッシュSRAM51内に
存在していたことになり、この時点で既にフリップフロ
ップ回路52に読み出されているキャッシュデータ24
を、キャッシュコントローラ4内のメインコントローラ
5を介して4:1マルチプレクサ7へ転送する。4:1
マルチプレクサ7は、ブロックオフセットアドレス11
の値によって、128ビットのマルチプレクサ入力デー
タ17のうち、いずれか32ビットをCPU2へCPU
入力データ16として送る。
【0008】さて、動作(A)のキャッシュ読み出しミ
スの場合、キャッシュコントローラ4はアドレス信号1
4をメインメモリ3に出力しデータ読み出しを行うと共
に、CPU2に対しHALT信号15を出力してCPU
2を一時停止させる。メインメモリ3からの読み出しデ
ータ25は、キャッシュコントローラ4内の4:1マル
チプレクサ7にマルチプレクサ入力データ17として転
送されると同時に、キャッシュSRAM書き込みデータ
24としてキャッシュSRAM51に送られる。4:1
マルチプレクサ7は、ブロックオフセットアドレス11
の値によって、128ビットのマルチプレクサ入力デー
タ17のうち、いずれか32ビットをCPU2へCPU
入力データ16として送る。このときキャッシュコント
ローラ4はCPU2に対するHALT信号15を解除す
る。
【0009】一方、キャッシュSRAM51は、キャッ
シュコントローラ4からの書き込みイネーブル信号WE
22とチップイネーブル信号CE23によって、書き込
みモードに設定される。キャッシュSRAM書き込みデ
ータ24は、フリップフロップ回路52を介してキャッ
シュSRAM書き込みデータ53となり、キャッシュS
RAM51へ実際に書き込まれて動作終了となる。
【0010】以上の要点を繰り返すと、CPU2がメモ
リに対してアクセスするには、読み出し動作または書き
込み動作に関わらず、まず所望のメモリアドレス10が
指し示すデータがキャッシュSRAM51内に存在する
かどうかを調べる。このため、必ず無効ビット20とタ
グデータ21を最初に読み出さなければならない。その
上、前述のようにキャッシュSRAM51は高速動作が
必須なため、無効ビット20とタグデータ21の読み出
し時に、キャッシュデータ54を同時に読み出さなけれ
ばならない。そして、このキャッシュデータ54は、フ
リップフロップ回路52に記憶・保持される。
【0011】上述の動作(A)に示したように、キャッ
シュSRAM51への実際の書き込み動作は、この同時
読み出しの後に同一アドレスに対し実行される。ここで
は詳しく述べないものの、動作(B)、動作(C)につ
いても同様に、無効ビット20、タグデータ21、キャ
ッシュデータ54の同時読み出しの後、同一アドレスに
対しキャッシュSRAM51への実際の書き込み動作が
行われる。
【0012】従来のメモリは、メモリセルに対して書き
込みまたは読み出し動作が実行されると、次のアクセス
動作に備えるため、ビット線を所定の初期電圧に戻して
いる。ビット線の寄生容量が大きいためこの電位の初期
化に多大な電力が消費される。特に書き込み動作ではビ
ット線の振幅が大きいため電力消費が大きくなる。しか
し、次にメモリのどのアドレスがアクセスされるか、読
み出し動作なのか書き込み動作なのかを事前に予測でき
ないためこの初期化時の電力消費は避けられないものと
されていた。
【0013】
【発明が解決しようとする課題】上述した従来のキャッ
シュメモリ装置において、次のような課題があった。す
なわち、キャッシュメモリの所定のアドレスに論理値
「0」または「1」が記憶されている場合、この所定の
アドレスと同一のアドレスに同一の論理値「0」または
「1」を書き込むとき、同一の論理値を書き込む動作な
ので実際は不要の動作であるにも関わらず書き込み動作
が行われてしまう。このため、キャッシュメモリ内のラ
イトドライバがビット線を駆動してしまい、その次の初
期化動作のときに多大な電力が消費されてしまう。従来
の技術に示したように、殊にキャッシュメモリへの書き
込み動作では、必ず書き込み動作の直前に同一アドレス
に対し、読み出し動作を行う必要があり、その読み出し
値は、フリップフロップ回路に記憶されている。これは
他のメモリには見られない特徴である。
【0014】つまり、従来の技術に示したキャッシュ用
のメモリに限定すれば、既に記憶されている論理値に同
一の論理値を書き込もうとしているのか、あるいは異な
る論理値を書き込もうとしているかを事前に判別するこ
とが可能であるにも関わらず上記の電力消費を容認して
いる。
【0015】本発明は、上記課題にかんがみてなされた
もので、SRAMを用いたキャッシュメモリへの書き込
み動作を制御することにより、このメモリ書き込み時の
平均的な消費電力の低減を図ることが可能なキャッシュ
メモリ装置およびその制御方法の提供を目的とする。
【0016】
【課題を解決するための手段】上記目的を達成するため
に、請求項1にかかる発明は、キャッシュSRAMのデ
ータ入出力部所定のデータ単位毎に、SRAMのデータ
入出力部(例えば、ビット線)の活性化/非活性化を制
御する。
【0017】そのために、この発明によれば、キャッシ
ュメモリから最新に読み出したデータの内容を格納する
データ格納手段と、上記キャッシュメモリにデータの書
き込み動作を実行する場合に、この書き込み動作を実行
するデータの内容と上記データ格納手段に格納されてい
るデータの内容との整合性をデータ単位ごとに判定する
データ整合性判定手段と、この整合性判定手段におい
て、不整合と判定されたデータ内容に対応するデータ単
位についてのみ、データの書き込み動作を実行する際
に、データ入出力部を活性化させるデータ書き込み手段
とを具備する構成としてある。すなわち、このデータ書
き込み手段は、整合と判定されたデータ単位について
は、データの書き込み動作を実行する際に、データ入出
力部を非活性化させる。
【0018】上記のように構成した請求項1にかかる発
明においては、上記データ格納手段は、メモリから最新
に読み出したデータの内容を格納する。そして、上記整
合性判定手段は、上記メモリにデータを書き込み動作を
実行する場合に、この書き込み動作を実行するデータの
内容と上記データ格納手段に格納されているデータの内
容との整合性をデータ単位ごとに判定する。この整合性
の判定の結果、上記データ書込手段は、上記整合性判定
手段において不整合と判定されたデータ内容についての
み上記メモリに書き込み動作を実行する。
【0019】すなわち、メモリにデータを書き込み動作
を実行する場合、メモリから最新に読み出したデータ内
容と、この書き込むデータを比較し、不整合、つまり、
データ内容が変化している部分ついてのみ書き込み動作
を実行するため、この書き込み動作ならびにその次のビ
ット線電位初期化動作に伴う消費電力の低減を図ること
が可能になる。また、上記データは、メモリに書込まれ
るあらゆるデータを包含するものであり、インデックス
データであってもよいし、キャッシュデータであっても
よい。
【0020】また、上記データ格納手段の構成の一例と
して、請求項2にかかる発明は、請求項1に記載のキャ
ッシュメモリ装置において、上記データ格納手段は、メ
モリから最新に読み出したデータの内容をビット単位に
より記憶するフリップフロップ回路を備える構成として
ある。上記のように構成した請求項2にかかる発明にお
いて、上記データ格納手段が備えるフリップフロップ回
路は、データのビット数に対応するとともに、このフリ
ップフロップ回路において、キャッシュメモリから読み
出したデータを記憶するとともに保持する。
【0021】さらに、上記整合性判定手段が比較を実行
するデータ単位の一例として、請求項3にかかる発明
は、請求項1または請求項2に記載のキャッシュメモリ
装置において、上記データ単位は、複数ビットからなる
データにおける1ビット単位であるとともに、上記整合
性判定手段は、この1ビット毎にデータの比較を実行す
る構成としてある。上記のように構成した請求項3にか
かる発明においては、上記整合性判定手段は、データ格
納手段に格納されているキャッシュメモリから最新に読
み出したデータ内容と、このキャッシュメモリに書込み
を行うデータの内容を比較する場合に、これらのデータ
は複数のビットにより構成されているため、1ビット単
位毎にデータの内容の比較を実行する。
【0022】さらに、上記データ書込手段の構成の一例
として、請求項4にかかる発明は、請求項1〜請求項3
のいずれかに記載のキャッシュメモリ装置において、上
記データ書込手段は、上記整合性判定手段が不整合であ
ると判定したビットに対応するメモリ書込み線を活性化
するとともに、キャッシュメモリのメモリセルの状態を
遷移させる構成としてある。上記のように構成した請求
項4にかかる発明においては、上記データ書込手段は、
上記整合性判定手段が不整合であると判定したビットに
対応するメモリ書込み線を活性化することにより、キャ
ッシュメモリのメモリセルの状態を遷移する。すなわ
ち、メモリセルの論理値を”0”から”1”に、また
は、”1”から”0”に遷移する。
【0023】さらに、上記データ書込手段の構成の一例
として、請求項5にかかる発明は、請求項1〜請求項4
のいずれかに記載のキャッシュメモリ装置において、上
記データ書込手段は、メモリのメモリセルの状態を遷移
させると、この遷移させた書込みデータを上記キャッシ
ュメモリの最新データとして、上記データ格納手段に格
納する構成としてある。上記のように構成した請求項5
にかかる発明においては、上記データ書込手段は、キャ
ッシュメモリのメモリセルの状態を遷移させると、この
遷移させた書込みデータを上記キャッシュメモリの最新
データとして、上記データ格納手段に格納する。
【0024】上述したように、メモリに所定のデータを
書き込む場合に、格納されているこのメモリから最新に
読み出したデータと、書き込むデータを比較し、変化が
あったビットのみをメモリに書き込む手法は実体のある
装置に限定される必要はなくその方法としても機能する
ことは容易に理解できる。
【0025】そこで、請求項6にかかる発明は、キャッ
シュメモリから最新に読み出したデータの内容を格納す
る工程と、上記キャッシュメモリに所定のデータの書き
込み動作を実行する場合に、この書き込み動作を実行す
るデータの内容と上記データ格納手段に格納されている
データの内容との整合性をデータ単位ごとに判定する工
程と、この整合性判定手段において、不整合と判定され
たデータ内容に対応するデータ単位についてのみ、デー
タの書き込み動作を実行する際に、データ入出力部を活
性化させる工程とを具備する構成としてある。すなわ
ち、必ずしも実体のある装置に限らず、その方法として
も有効であることに相違はない。
【0026】
【発明の実施の形態】以下、図面にもとづいて本発明の
実施形態を説明する。図1は、本発明のキャッシュSR
AM31と、それを取り巻くマイクロプロセッサー(C
PU)2、キャッシュコントローラ4およびメインメモ
リ3とを含めたキャッシュメモリシステムの構成を示し
たブロック図である。図1中の括弧内の数字は、各信号
線のビット幅の一例を示しており、括弧が記載されてい
ない信号線は1ビット幅である。それぞれのビット幅は
あくまで一例であり、この構成に限定されるものではな
い。
【0027】CPU2からキャッシュコントローラ4へ
はメモリアドレス線10が接続されている。キャッシュ
コントローラ4からCPU2へは、データ線16とホー
ルト信号HALT15が接続されている。キャッシュコ
ントローラ4からキャッシュSRAM31へは、キャッ
シュアドレス信号12、書き込みイネーブル信号WE2
2、チップイネーブル信号CE23が接続され、データ
信号24が双方向接続されている。キャッシュコントロ
ーラ4からメインメモリ3へはアドレス信号14が接続
される。メインメモリ3からキャッシュコントローラ4
へは、データ信号25が接続される。
【0028】なお、キャッシュメモリシステムには、C
PU2からキャッシュコントローラ4への制御信号など
図1には示されない他の信号も存在するが、以降の説明
において本発明と関連が薄いので省略する。
【0029】本発明のキャッシュSRAM31では、チ
ップイネーブル信号CEに相当する信号を入出力部1ビ
ットごとに内部信号として新たに設け、BE(ビットイ
ネーブル)信号と呼ぶことにする。BE信号によって、
1ビット毎にライトドライバなどのSRAM入出力部を
活性化して動作許可(BE=論理値”1”)、または、
不活性化して動作不許可(BE=論理値”0”)を制御
可能とする。
【0030】そのために、この実施の形態では、キャッ
シュSRAM31のデータ入出力フリップフロップ32
をデータ格納手段として、これに、キャッシュSRAM
31から最新に読み出したデータの内容を格納する。
【0031】そして、このデータ入出力フリップフロッ
プ32の出力45(つまり直前にキャッシュSRAM3
1から読み出された値)と、キャッシュSRAM内部へ
これから書き込むためのデータ46との、入力としてそ
れぞれ対応する1ビット毎の整合性を判定するために、
排他的論理和を求める2入力EXORゲート34(図1
では128ビット幅)を、整合性判定手段として設け
る。
【0032】さらに、この2入力EXORゲート34の
出力44の各ビットと、キャッシュコントローラ4から
のチップイネーブル信号CE23(1ビット)を入力と
する2入力ANDゲート33(図1では128ビット
幅)を、データ書き込み手段として設ける。この2入力
ANDゲート33の出力43は、キャッシュSRAM3
1内部でビットイネーブル信号BE43として接続され
る。
【0033】なお、キャッシュSRAM31の内部構成
以外の構成、例えば、キャッシュコントローラ4やCP
U2やメインメモリ3は従来の構成と同一である。ま
た、それらの詳細な構成・動作は本明細書において示さ
れた構成・動作に限定されるものではない。
【0034】次に、上記のように構成した本実施形態に
おいてキャッシュメモリ31に対して所定のデータの読
み出し動作を実行し、従来例の動作の説明と同様、読み
出しミスが発生した場合、すなわち、所望のデータがキ
ャッシュメモリ31内に存在しなかった場合の動作につ
いて説明する。同図において、CPU2は、メモリ読み
出しアドレス10をキャッシュコントローラ4に送出す
る。そして、キャッシュコントローラ4の内部では、こ
のメモリ読み出しアドレス10が、下位2ビットがバイ
トオフセットアドレス、続く下位2ビットがブロックオ
フセットアドレス11、続く15ビットがインデックス
アドレス12、そして、上位13ビットがタグアドレス
13に分割される。そして、インデックスアドレス12
はキャッシュメモリ31にキャッシュアドレス信号12
として入力される。
【0035】ここで、キャッシュコントローラ4は、高
速動作を実現するため、キャッシュメモリ31から無効
ビット20と、タグデータ21と、キャッシュデータ4
2とを同時に並行して読み出しを実行する。本実施形態
においては、キャッシュコントローラ4はキャッシュデ
ータ42の読み出しにおいてのみデータ入出力フリップ
フロップ32を介する構成を採用しているが、もちろ
ん、この構成に限定されるものではなく、無効ビット2
0およびタグデータ21の読み出しについてもデータ入
出力フリップフロップ32を介する構成にしてもかまわ
ない。
【0036】読み出されたデータのうちタグデータ22
は、キャッシュコントローラ30内部の比較器6にタグ
アドレス13とともに入力される。そして、比較器6は
キャッシュメモリ31からのタグデータ21と、上述し
たタグアドレス13のそれぞれ対応する全ビットを比較
し、比較器出力信号19として、両者が等しければ論理
値”1”を両者が1ビットでも異なっていれば論理値”
0”を出力する。また、2入力論理積ゲート8は、比較
器出力信号19と、キャッシュメモリ31の無効ビット
20とを入力し、ミス/ヒット信号18を出力する。
【0037】そして、このミス/ヒット信号18を入力
したメインコントローラ5は、比較器出力信号19の論
理値が”0”あるいは、キャッシュメモリ31の無効ビ
ット20の論理値が”0”であると、ミス/ヒット信号
18の論理値は、”0”となるため、このキャッシュメ
モリ31の読み出しはミスしたと判断する。そして、メ
インメモリ3から読み出されたデータをキャッシュメモ
リ31に書き込む。
【0038】一方、ミス/ヒット信号18の論理値が”
1”であれば、所望のデータがキャッシュメモリ31内
に存在していたことになり、この時点ですでにデータ入
出力フリップフロップ32に読み出されているキャッシ
ュデータ24をメインコントローラ5を介して4:1マ
ルチプレクサ7に転送する。この4:1マルチプレクサ
7は、ブロックオフセットアドレス11のアドレス値に
よって、128ビットからなるマルチプレクサ入力デー
タ17のうち、所定の32ビットをCPU2にCPU入
力データ16として転送する。
【0039】ところで、上述したキャッシュメモリ31
からの読み出しがミスした場合、キャッシュコントロー
ラ4はアドレス信号14をメインメモリ3に出力し、デ
ータの読み出しを実行するとともに、CPU2に対して
はホールト信号HALT15を出力し、CPU2を一時
停止させる。そして、メインメモリ3から読み出す読み
出しデータ25は、キャッシュコントローラ4の内部に
設置された4:1マルチプレクサ7にマルチプレクサ入
力信号17として転送される。また、同時にキャッシュ
メモリ31への書き込みデータ24として、キャッシュ
メモリ31に送出される。このとき、4:1マルチプレ
クサ7は、ブロックオフセットアドレス11のアドレス
値に従って、128ビットからなるマルチプレクサ入力
信号のうち、所定の32ビットをCPU2にCPU入力
データ16として転送するとともに、キャッシュコント
ローラ4は、CPU2に対するホールト信号HALT1
5を解除する。
【0040】上述したようにキャッシュメモリ31に送
出された書き込みデータ24は、データ入出力フリップ
フロップ32に入力される。一方、このデータ入出力フ
リップフロップ32は、クロックCLKが入力されるま
で直前に内部に読み込まれた無効ビット20やタグデー
タ21やキャッシュデータ42が記憶・保持されるの
で、データは書き換えられない。
【0041】ここで、データ入出力フリップフロップ3
2に記憶・保持されていたキャッシュデータ45および
キャッシュメモリ31へのキャッシュ書き込みデータ2
4からから分岐する書き込みデータ46は、それぞれ1
ビット毎に2入力排他的論理和ゲート34に入力され
る。この2入力排他的論理和ゲート34の出力信号4
4、および、キャッシュコントローラ4からのチップイ
ネーブル信号23は、それぞれ1ビット毎に2入力論理
和ゲート33に入力される。また、この2入力論理和ゲ
ート33の出力信号43がビットイネーブル信号43と
して入力される。
【0042】従って、チップイネーブル信号23の論理
値が”1”の場合は、データ入出力フリップフロップ3
2に記憶・保持されていたキャッシュデータ45と、こ
れからキャッシュメモリ31に書き込もうとしているキ
ャッシュ書き込みデータ46を比較して、データが反転
しているビットのみ、すなわち、どちらか一方の論理値
が”0”であるとともに、他方の論理値が”1”のビッ
トのみについて、ビットイネーブル信号43の論理値
を”1”にする。従って、クロックCLKが入力されて
データ入出力フリップフロップ32のデータがキャッシ
ュ書き込みデータ24に更新されたとき、キャッシュメ
モリ31の内部の記憶領域を構成するメモリセルの論理
値を”0”から”1”に、あるいは”1”から”0”に
遷移するビット線のみがライトドライバを用いて駆動さ
れ、他のビット線は駆動されないことになる。
【0043】ここで、ビットイネーブル信号43は、キ
ャッシュメモリ31内でいったんデータ入出力フリップ
フロップ32に保持されるものとする。これは、クロッ
クCLKの入力によって、データ入出力フリップフロッ
プ32の出力信号45の値と、キャッシュメモリ31へ
の書き込みデータ46とが一致するため、2入力排他的
論理和ゲート34の出力信号44は、全ビットの論理値
が”0”となってしまうことにより、キャッシュデータ
の書き込み動作中にビットイネーブル信号43の論理値
が遷移することを防止するためである。
【0044】本実施形態においては、キャッシュデータ
42に書き込みデータ24を書き込む場合に、データ入
出力フリップフロップ32,2入力排他的論理和ゲート
34,2入力論理和ゲート33を設置することにより、
反転しないビットの書き込み動作を省略する構成を採用
しているが、もちろん、キャッシュメモリ31の無効ビ
ット20およびタグデータ21に所定のデータを書き込
む場合にも、採用できることはいうまでもない。
【0045】このように、キャッシュメモリ31に所定
のデータを書き込む場合に、このデータを直前に読み出
したデータと比較し、ビットが反転するメモリセルのみ
について、実際の書き込み動作を実行することにより、
このキャッシュメモリ31へのデータの書き込み動作、
および、次のビット線電位初期化動作における消費電力
を削減することが可能になる。
【0046】なお、本発明においては、データ反転しな
いメモリセルに対しては書き込み動作が行われないが、
一般的な構成のSRAMでは、メモリセルのワード線は
選択されてしまう。したがって、データ反転するメモリ
セルへの書き込み動作が行われている期間中、データ反
転しないメモリセルは、読み出し動作時と同様にビット
線を駆動してしまう。その結果、次のビット線電位初期
化動作時に多少の電力消費は伴う。しかし、メモリセル
はライトドライバに比べて遥かに駆動能力が低い。この
ため、SRAMにおいては結果的に消費電力削減が可能
となる。
【0047】これに対して、DRAM(Dynamic Random
Access Memory)を用いたキャッシュメモリに本発明を
適用した場合において、データ反転しないメモリセルの
ワード線が選択されたときは、リフレッシュ動作が必要
となる。このため、書き込み時と同一の電力が消費され
てしまう。したがって、DRAMを用いたキャッシュメ
モリに関しては本発明の利点は損なわれる。
【0048】
【発明の効果】以上説明したように本発明は、SRAM
を用いたキャッシュメモリへの書き込み動作を制御する
ことにより、このメモリ書き込み時の消費電力の低減を
図ることが可能なキャッシュメモリシステムを提供する
ことができる。
【0049】また、請求項2にかかる発明によれば、簡
易な構成によりデータ格納手段を構成することができる
とともに、整合性判定手段における比較判定動作を容易
にすることが可能になる。
【0050】さらに、請求項3にかかる発明によれば、
データ格納手段に格納されれいるデータ内容と、書込み
を実行するデータ内容との比較を1ビット単位により実
行することができる。
【0051】さらに、請求項4にかかる発明によれば、
整合性判定手段により不整合と判定されたビットについ
てのみキャッシュメモリセル内のビット線を活性化する
ため、書込み動作にて消費する電力を低減させることが
可能になる。
【0052】さらに、請求項5にかかる発明によれば、
常にメモリに格納されている最新のデータをデータ格納
手段に記憶するとともに、保持することができる。
【0053】さらに、請求項6にかかる発明によれば、
メモリへの書き込み動作を制御することにより、このメ
モリ書き込み時の消費電力の低減を図ることが可能なキ
ャッシュメモリ装置の制御方法を提供することができ
る。
【図面の簡単な説明】
【図1】本実施形態の一実施形態にかかるキャッシュメ
モリシステムの概略構成を示すブロック図である。
【図2】従来のキャッシュメモリシステムの概略構成を
示すブロック図である。
【符号の説明】
2 CPU 3 メインメモリ 31 キャッシュメモリ 32 データ入出力フリップフロップ 33 2入力論理和ゲート 34 2入力排他的論理和ゲート 4 キャッシュコントローラ 5 メインコントローラ 6 比較器 7 4:1マルチプレクサ 8 2入力論理和ゲート

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 SRAMを用いたキャッシュメモリから
    最新に読み出したデータの内容を格納するデータ格納手
    段と、 上記キャッシュメモリへのデータの書き込み動作を実行
    する場合に、この書き込み動作を実行するデータの内容
    と上記データ格納手段に格納されているデータの内容と
    の整合性をデータ単位ごとに判定する整合性判定手段
    と、 上記整合性判定手段において不整合と判定されたデータ
    内容に対応するデータ単位についてのみ、データの書き
    込み動作を実行する際に、データ入出力部を活性化させ
    るデータ書込手段とを具備することを特徴とするキャッ
    シュメモリ装置。
  2. 【請求項2】 上記請求項1に記載のキャッシュメモリ
    装置において、 上記データ格納手段は、メモリから最新に読み出したデ
    ータの内容をビット単位により記憶するフリップフロッ
    プ回路を備えることを特徴とするキャッシュメモリ装
    置。
  3. 【請求項3】 上記請求項1または2に記載のキャッシ
    ュメモリ装置において、 上記データ単位は、複数ビットからなるデータにおける
    1ビット単位であるとともに、上記整合性判定手段は、
    この1ビット毎にデータの比較を実行することを特徴と
    するキャッシュメモリ装置。
  4. 【請求項4】 上記請求項3に記載のキャッシュメモリ
    装置において、 上記データ書込手段は、上記整合性判定手段が不整合で
    あると判定したビットに対応するメモリ書込み線を活性
    化するとともに、キャッシュメモリのメモリセルの状態
    を遷移させることを特徴とするキャッシュメモリ装置。
  5. 【請求項5】 上記請求項1〜請求項4のいずれかに記
    載のキャッシュメモリ装置において、 上記データ書込手段は、キャッシュメモリのメモリセル
    の状態を遷移させると、この遷移させた書込みデータを
    上記キャッシュメモリの最新データとして、上記データ
    格納手段に格納することを特徴とするキャッシュメモリ
    装置。
  6. 【請求項6】 キャッシュメモリから最新に読み出した
    データの内容を格納する工程と、 上記キャッシュメモリにデータの書き込み動作を実行す
    る場合に、この書き込み動作を実行するデータの内容と
    上記データ格納手段に格納されているデータの内容との
    整合性をデータ単位ごとに判定する工程と、 この整合性判定手段において、不整合と判定されたデー
    タ内容に対応するデータ単位についてのみ、データの書
    き込み動作を実行する際に、データ入出力部を活性化さ
    せる工程とを具備することを特徴とするキャッシュメモ
    リ装置の制御方法。
JP28172698A 1998-10-02 1998-10-02 キャッシュメモリ装置およびキャッシュメモリ装置の制御方法 Pending JP2000113677A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28172698A JP2000113677A (ja) 1998-10-02 1998-10-02 キャッシュメモリ装置およびキャッシュメモリ装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28172698A JP2000113677A (ja) 1998-10-02 1998-10-02 キャッシュメモリ装置およびキャッシュメモリ装置の制御方法

Publications (1)

Publication Number Publication Date
JP2000113677A true JP2000113677A (ja) 2000-04-21

Family

ID=17643136

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28172698A Pending JP2000113677A (ja) 1998-10-02 1998-10-02 キャッシュメモリ装置およびキャッシュメモリ装置の制御方法

Country Status (1)

Country Link
JP (1) JP2000113677A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530648A (ja) * 2005-02-07 2008-08-07 エヌエックスピー ビー ヴィ データ処理システムおよびキャッシュ取り替え方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530648A (ja) * 2005-02-07 2008-08-07 エヌエックスピー ビー ヴィ データ処理システムおよびキャッシュ取り替え方法

Similar Documents

Publication Publication Date Title
US7573753B2 (en) Semiconductor device
US7130962B2 (en) Writing cache lines on a disk drive
US5499353A (en) Cache address strobe control logic for stimulated bus cycle initiation
JPH10208471A (ja) 並列dram操作を可能にするキャッシュ・シンクロナスdramアーキテクチャ
JPS63195752A (ja) キヤツシユメモリ−
JP2000137983A (ja) 半導体記憶装置
CN107257964B (zh) Dram电路、计算机系统和访问dram电路的方法
JPH08185355A (ja) データメモリおよびその動作方法
US5835934A (en) Method and apparatus of low power cache operation with a tag hit enablement
US5513143A (en) Data cache memory internal circuitry for reducing wait states
JP4791714B2 (ja) ダイナミック周波数スケーリングキャッシュメモリの休止時間を利用する方法、回路及びシステム
US6253298B1 (en) Synchronous SRAM having pipelined enable
US6775741B2 (en) Cache system with limited number of tag memory accesses
US5359557A (en) Dual-port array with storage redundancy having a cross-write operation
JP2000113677A (ja) キャッシュメモリ装置およびキャッシュメモリ装置の制御方法
US5611072A (en) Cache with an extended single cycle read/write system and method
US5813028A (en) Cache read miss request invalidation prevention method
KR940001590B1 (ko) 블럭읽기 및 쓰기에서의 메모리 엑세스 시간 단축장치 및 방법
JP3923642B2 (ja) 半導体記憶装置
JPH09319657A (ja) 命令読み込み用バッファを備えたプロセッサ
EP0398191A2 (en) Quadruple word, multiplexed, paged mode and cache memory
JP2007115087A (ja) 半導体装置
JPH07152650A (ja) キャッシュ制御装置
JPH10307762A (ja) メモリ初期化制御方式
KR100456215B1 (ko) 블럭 버퍼링을 사용하는 캐쉬 메모리 장치 및 그 제어방법