JP6149265B2 - データ処理装置 - Google Patents
データ処理装置 Download PDFInfo
- Publication number
- JP6149265B2 JP6149265B2 JP2016075669A JP2016075669A JP6149265B2 JP 6149265 B2 JP6149265 B2 JP 6149265B2 JP 2016075669 A JP2016075669 A JP 2016075669A JP 2016075669 A JP2016075669 A JP 2016075669A JP 6149265 B2 JP6149265 B2 JP 6149265B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- tag
- address information
- parity
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
本発明の代表的な実施の形態に係るデータ処理装置(1)は、複数のウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイ(12,13)の中から、アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成される選択データ(PRTdat)の値に応じて一部のウェイを選択し、選択したウェイの中から、前記アドレス情報の中のインデックスアドレスを用いてキャッシュタグをリードする。また、前記キャッシュメモリはキャッシュフィルを行うとき、前記選択データの値に応ずる一部のウェイの中から選んだキャッシュエントリ(14)にキャッシュフィルを行う。
項1において、前記キャッシュメモリは、前記アドレス情報の一部であるタグアドレス情報に対するパリティデータ(PRTdat)を生成して前記選択データとする。
項1において、前記キャッシュメモリは、前記ウェイからリードされた夫々のキャッシュタグを前記タグアドレスと比較し、それらの比較結果が、全て不一致、一つだけ一致、又は複数一致の何れであるかを判別し、前記複数一致を判別したときはキャッシュエラー信号(41)を生成する。
項3において、前記キャッシュエラーの信号を例外要因又は割込み要因として入力する割込みコントローラ(9)をさらに有する。
項3において、前記キャッシュメモリは、前記一つだけ一致である比較結果に係るキャッシュタグのキャッシュエントリをデータ操作の対象とする。
項1において、前記ウェイは前記インデックスアドレスに対応して前記キャッシュタグを格納するタグウェイ(12)と、前記インデックスアドレスに対応してデータを格納するデータウェイ(13)とを有する。キャッシュエントリは前記キャッシュタグとそれに対応するデータを含み、前記複数のタグウェイのそれぞれはタグウェイ毎に活性又は非活性が選択されるメモリブロック(16)によって構成される。前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データを用いたメモリブロックの活性化によって前記一部のタグウェイの選択を行う。
項6において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の全ビットに対する1ビットのパリティデータPRTdatであり、第1の論理値のパリティデータは前記複数のメモリブロックの半分の選択に用い、第2の論理値のパリティデータは前記複数のメモリブロックの残りの半分の選択に用いる。
項6において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の複数分割部分毎のパリティビットから成る複数ビットのパリティデータ(PRTdat[1:0])であり、前記パリティデータの値は複数のタグウェイの中から選択するタグウェイを決める。
項6において、前記キャッシュメモリは、前記複数のウェイの中から前記選択データにより一部のタグウェイを選択してキャッシュタグをリードする第1モード(PBS=on)と、キャッシュタグをリードする対象タグウェイをすべてのタグウェイとする第2モード(PBS=off)とを有し、前記第1モード又は第2モードを選択するモード選択信号(MOD)を入力する。
項1において、前記ウェイは前記インデックスアドレスに対応して前記キャッシュタグを格納するタグウェイと、前記インデックスアドレスに対応してデータを格納するデータウェイとを有する。キャッシュエントリは前記キャッシュタグとそれに対応するデータを含む。前記複数のタグウェイは所定複数個毎に一つのメモリブロック(16A)に集約されて構成され、同一メモリブロックに構成される複数のタグウェイは相互に異なる選択データによって選択される。前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データと前記インデックスアドレス情報とを用いてキャッシュタグをリードする。
項10において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の全ビットに対する1ビットのパリティデータ(PRTdat)である。第1の論理値のパリティデータは夫々の前記メモリブロックの中の一方のタグウェイの選択に用いる。第2の論理値のパリティデータは夫々の前記メモリブロックの中の他方のタグウェイの選択に用いる。
項10において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の複数分割部分毎のパリティビットから成る複数ビットのパリティデータ(PRTdat[1:0])であり、前記パリティデータの値は夫々のメモリブロックの中から選択するタグウェイを決める。
項1において、前記キャッシュメモリがキャッシュフィルを行うキャッシュエントリを決めるとき、キャッシュフィル対象とするキャッシュエントリを疑似LRUにより特定するための指標として用いるLRUデータ(LRU[1:0]、LRU[2:0])を格納するLRUデータアレイ(15,15A)を有する。前記LRUデータアレイは、キャッシュエントリに対するインデックスアドレス毎に、選択データで選択される一部のウェイ毎の利用履歴を示す複数ビットの履歴データを格納する領域を有する。前記キャッシュメモリは、インデックスアドレス情報を用いてLRUデータアレイから読み出した前記履歴データと、対応する選択データとに基づいてキャッシュフィルを行うキャッシュエントリを選ぶ。
項13において、前記複数のウェイのそれぞれはタグウェイ毎に活性又は非活性が選択されるメモリブロック(16)によって構成される。前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データを用いたメモリブロックの活性化によって前記選択データによる一部のウェイの選択を行う。前記キャッシュメモリはキャッシュフィルを行うとき、夫々のメモリブロックにおいて前記インデックスアドレスが指し示すキャッシュエントリの内、インデックスアドレス情報に基づいて前記LRUデータアレイ(15)から読み出された複数ビットの前記履歴データ(LRU[1:0])と、前記タグアドレスに基づいて生成される前記選択データ(PRTdat)とによって、キャッシュフィルを行うキャッシュエントリを選択する。
項13において、前記複数のウェイは所定複個毎に一つのメモリブロック(16A)に集約されて構成され、同一メモリブロックに構成される複数のウェイは相互に異なる選択データによって選択される。前記キャッシュメモリはキャッシュタグをリードするとき、活性化された夫々のメモリブロックの中の何れのウェイを選択するかを前記選択データによって指定され、指定されたウェイの中のいずれのキャッシュタグを選択するかを前記アドレス情報の中のインデックスアドレス情報によって指定される。前記キャッシュメモリはキャッシュフィルを行うとき、いずれのメモリブロックを選択するかを、前記LRUデータアレイ(15A)からインデックスアドレス情報によって読み出された複数ビットの履歴データ(LRU[2:0」)によって指定され、指定されたメモリブロックの中から何れのウェイを選択するかを、前記選択データ(PRTdat)によって指定され、指定されたウェイの中から何れのキャッシュエントリをキャッシュフィルの対象とするかを、前記インデックスアドレス(IDXadrs)によって指定される。
本発明の別の実施の形態に係るデータ処理装置(1)は、複数ウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から何れの一部のウェイを選択するかを、アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成されるパリティデータ(PRTdat)の値に応じて指定され、指定されたウェイの中から何れのキャッシュタグをリードするかを、前記アドレス情報の中のインデックスアドレス情報によって指定される。リードされたキャッシュタグを前記タグアドレスと比較し、それらの比較結果が、全て不一致、一つだけ一致、又は複数一致の何れであるかを判別し、前記複数一致を判別したときはキャッシュエラー信号(41)を生成する。前記キャッシュメモリはキャッシュフィルを行うとき、前記選択データの値に応ずる一部のウェイの中から選んだキャッシュエントリにキャッシュフィルを行う。
本発明の更に別の実施の形態に係るデータ処理装置(1)は、複数にウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から何れの一部のウェイを選択するかを、アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成されるパリティデータ(PRTdat)の値に応じて指定され、指定されたウェイの中から何れのキャッシュタグをリードするかを、前記アドレス情報の中のインデックスアドレス情報(IDXadrs)によって指定される。リードされたキャッシュタグを前記タグアドレスと比較し、それらの比較結果が、全て不一致、一つだけ一致、又は複数一致の何れであるかを判別し、前記複数一致を判別したときはキャッシュエラー信号(41)を生成する。前記キャッシュメモリは、キャッシュフィルを行うキャッシュエントリを決めるとき、キャッシュフィルの対象とするキャッシュエントリを疑似LRUにより特定するための指標として用いるLRUデータ(LRU[1:0],LRU[2:0])を格納するLRUデータアレイ(15,15A)を有する。前記LRUデータアレイは、キャッシュエントリに対するインデックスアドレス毎に、パリティデータで選択される一部のウェイ毎の利用履歴を示す複数ビットの履歴データを格納する領域を有する。前記キャッシュメモリは、インデックスアドレス情報を用いてLRUデータアレイから読み出した前記履歴データと、対応する選択データとに基づいてキャッシュフィルを行うキャッシュエントリを選ぶ。
本発明の更に別の実施の形態に係るデータ処理装置(1)は、複数のウェイを複数のキャッシュエントリの格納に用いるセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリはアドレス情報に基づいてウェイを操作するとき、前記アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成される選択データ(PRTdat)に応ずる一部のウェイの中から操作対象とするキャッシュエントリを選ぶ。
本発明の更に別の実施の形態に係るデータ処理装置(1)は、複数のウェイを複数のキャッシュエントリの格納に用いるセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリは、アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成される選択データに応ずる一部のウェイの中から、アドレスタグと比較するキャッシュタグをリードし、且つ、キャッシュフィルを行うキャッシュエントリを選ぶ。
本発明の更に別の実施の形態に係るデータ処理装置(1)は、複数のウェイを複数のキャッシュエントリの格納に用いるセットアソシアティブ型のキャッシュメモリ(3)を含む。前記キャッシュメモリはキャッシュタグをリードするとき、複数のウェイの内のどのウェイを選択するかを、アドレス情報の一部であるタグアドレス情報(TAGadrs)に基づいて生成される選択データ(PRTdat)の値に応じて指示され、指示されたウェイの中から何れのキャッシュタグをリードするかを、前記アドレス情報の中のインデックスアドレス(IDXadrs)によって指示される。前記キャッシュメモリはキャッシュフィルを行うとき、全てのウェイのキャッシュエントリについての前記インデックスアドレス単位で参照される使用履歴(LRU[1:0],LRU[2:0])と前記選択データ(PRTdat)の値との組み合わせにしたがって、キャッシュフィルを行うキャッシュエントリの選択を行う。
実施の形態について更に詳述する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
図1にはデータ処理装置の一実施の形態としてマイクロコンピュータ(MCU)1が例示される。同図に示されるマイクロコンピュータ1は、特に制限されないが、単結晶シリコンのような1個の半導体基板にCMOS集積回路製造技術を用いて形成される。
図3にはキャッシュメモリのタグウェイに対するパリティ機能の基本的な構成が例示される。ここではnウェイ・セットアソシアティブキャッシュメモリにおけるn個のタグウェイTagWAY#0〜TagWAY#n−1に着目する。
ここではパリティデータを用いてウェイ毎のメモリブロックに対する活性/非活性制御を行う場合について説明する。
次に、上述したパリティチェック機能(単にPBSとも記す)を選択的にオン/オフできるようにする場合について説明する。
MODの論理値0はパリティチェック機能の非選択を指示する。パリティデータPRTd
atの反転データ又は非反転データを受けるアンドゲートの一方の入力側に、オアゲート
(論理和ゲート)82を介してモード信号MODの反転信号が供給される。81はモード
信号MODを反転するインバータである。したがって、ウェイ#0〜#3の選択はMOD
=1のときは図4と同様にパリティデータPRTdatの値に応じてその半分とされ、M
OD=0のときはすべてのウェイ#0〜#3とされる。
複数ビットのキャッシュメモリ3にパリティデータを用いる場合について説明する。
次に、メモリブロック毎に複数個のウェイを格納してウェイの選択を行う場合について説明する。図11にはメモリブロック毎に2個のウェイを格納するようにした場合におけるキャッシュエントリに対するリード動作系に着目した構成が例示される。図12にはメモリブロック毎に2個のウェイを格納するようにした場合におけるキャッシュエントリに対するフィル動作系に着目した構成が例示される。図4及び図6との相違点はメモリブロックの数が半減され、それに応じて操作対象とするキャッシュエントリの選択制御形態とキャッシュタグに対する判別制御回路が相違される。それら相違点について以下で説明するが、図4及び図6と同一機能を有する構成要素についてはそれと同一符号を付してその詳細な説明を省略する。
アドレス情報が物理アドレスであればタグアドレス情報もその物理アドレス情報の一部の情報とされる。アドレス情報が論理アドレスのときもタグアドレス情報はその論理アドレス情報の一部の情報とされてよいことは言うまでもないが、論理アドレス場合には論理アドレスを物理アドレスに変換するときに必要となる情報(α)が含まれる場合もあり、そのときは、タグアドレス情報として情報αを含めて考えることが得策であり、当然、情報αも含めたタグアドレス情報に対してパリティデータを生成する。例えばマルチスレッドで処理を行う場合には夫々のスレッドの処理を行うバーチャルCPU番号(Virtual CPU ID)が上記情報αとされる。図13にはその場合のタグエントリの構成が例示される。図13においてタグエントリは、当該キャッシュエントリの有効性を示すバリッドビットV、当該キャッシュエントリのリプレース禁止か否かを示すロックビットL、バーチャルCPU番号を示すVirtual CPU ID、論理アドレスキャッシュタグを示すLogical Address[31:12]を有する。
図16にはメモリブロック16,16A,15,15Aの具体例が示される。メモリブロック16,16A,15,15Aは例えばスタティックランダムアクセスメモリ(SRAM)として構成され、メモリアレイ(MCA)110には複数のスタティック型のメモリセルMC(図には代表的に1個が図示される)がマトリクス配置される。メモリセルの選択端子は代表的に示されたワード線WLに接続され、メモリセルのデータ入出力端子は代表的示された相補ビット線BLt、BLbに接続される。
図22にはタグウェイに対するインデックス動作形態の主な態様をまとめとして示す。4個のタグウェイTagWAY#0〜TagWAY#3に対する動作を一例とする。インデックス動作でウェイ単位のメモリブロック(BLCK)16のすべてを活性化する形態では、4個のメモリブロック16を同時アクセスするからそれによる消費電力は以下の動作形態に比べて最も大きくなる。
2 CPU(中央処理装置)
3 キャッシュメモリ(CACHMRY)
4 内部バス
9 割込みコントローラ(INTC)
5 ランダムアクセスメモリ(RAM)
6 ダイレクトメモリアクセスコントローラ(DMAC)
7 フラッシュメモリ(FLASH)
8 その他周辺回路(PRPHRL)
10 キャッシュ制御回路(CACHCNT)
11 メモリマット(MRYMAT)
12 タグウェイ(TagWAY)
13 データウェイ(DataWAY)
14 キャッシュエントリ(CachENTRY)
15 LRUデータアレイ(LRUARY)
16 メモリブロック
TagWAY#0〜TagWAY#n−1 タグウェイ
ACCadrs アクセスアドレス情報
TAGadrs タグアドレス情報
IDXadrs インデックスアドレス情報
30 パリティ生成回路(PRTYG)
31 タグ比較回路(TAGCMP)
32 マルチヒット検出回路(MLTHIT)
PRTdat パリティデータ
cen0〜cen3 cena、cenb イネーブル信号(ブロックイネーブル信号)
Claims (17)
- 複数のウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリを含むデータ処理装置であって、
前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から、アドレス情報の一部であるタグアドレス情報に基づいて生成される選択データの値に応じた一部のウェイを選択回路で選択し、選択したウェイの中から、前記アドレス情報の中のインデックスアドレスを用いてキャッシュタグをリードし、
前記キャッシュメモリはキャッシュフィルを行うとき、前記選択データの値に応ずる一部のウェイの中から選んだキャッシュエントリにキャッシュフィルを行い、
前記キャッシュメモリは、前記アドレス情報の一部であるタグアドレス情報と偶数パリティ又は奇数パリティを指定する偶奇選択信号とに対応するパリティデータを生成して前記選択データとし、
前記ウェイは前記インデックスアドレスに対応して前記キャッシュタグを格納するタグウェイと、前記インデックスアドレスに対応してデータを格納するデータウェイとを有し、キャッシュエントリは前記キャッシュタグとそれに対応するデータを含み、前記複数のタグウェイのそれぞれはタグウェイ毎に活性又は非活性が選択されるメモリブロックによって構成され、
前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データを用いたメモリブロックの活性化によって、前記選択データの値に応ずる一部のタグウェイを活性化し、他のタグウェイを非活性化する、データ処理装置。 - 請求項1において、前記選択データは前記タグアドレス情報の全ビットに対する1ビットのパリティデータであり、
前記偶奇選択信号が第1論理値の場合、前記タグアドレス情報の全ビットについて排他的論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第2論理値とするパリティデータであり、当該全ビット中に第1論理値が奇数個あるとき第1論理値とするパリティデータであり、
前記偶奇選択信号が第2論理値の場合、前記タグアドレス情報の全ビットについて排他的否定論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第1論理値とするパリティデータであり、当該全ビット中に第1論理値が奇数個あるとき第2論理値とするパリティデータである、データ処理装置。 - 請求項1において、前記キャッシュメモリは、前記ウェイからリードされた夫々のキャッシュタグを前記タグアドレスと比較し、それらの比較結果が、全て不一致、一つだけ一致、又は複数一致の何れであるかを判別し、前記複数一致を判別したときはキャッシュエラー信号を生成する、データ処理装置。
- 請求項3において、前記キャッシュエラー信号を例外要因又は割込み要因として入力する割込みコントローラをさらに有する、データ処理装置。
- 請求項3において、前記キャッシュメモリは、前記一つだけ一致である比較結果に係るキャッシュタグのキャッシュエントリをデータ操作の対象とする、データ処理装置。
- 請求項1において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の全ビットに対する1ビットのパリティデータであり、第1の論理値のパリティデータは前記複数のメモリブロックの半分の選択に用い、第2の論理値のパリティデータは前記複数のメモリブロックの残りの半分の選択に用いる、データ処理装置。
- 請求項6において、前記タグアドレス情報の全ビットに対する1ビットのパリティデータは、
前記偶奇選択信号が第1論理値の場合、前記タグアドレス情報の全ビットについて排他的論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第2論理値とするパリティデータであり、当該全ビット中に第1論理値が奇数個あるとき第1論理値とするパリティデータであり、
前記偶奇選択信号が第2論理値の場合、前記タグアドレス情報の全ビットについて排他的否定論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第1論理値とするパリティデータであり、当該全ビット中に第1論理値が奇数個あるとき第2論理値とするパリティデータである、データ処理装置。 - 請求項1において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の複数分割部分毎のパリティビットから成る複数ビットのパリティデータであり、前記パリティデータの値は複数のタグウェイの中から選択するタグウェイを決める、データ処理装置。
- 請求項8において、前記複数ビットのパリティデータの各ビットは、
前記偶奇選択信号が第1論理値の場合、前記タグアドレス情報の全ビットについて排他的論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第2論理値とするデータであり、当該全ビット中に第1論理値が奇数個あるとき第1論理値とするデータであり、
前記偶奇選択信号が第2論理値の場合、前記タグアドレス情報の全ビットについて排他的否定論理和を行い、当該全ビット中に第1論理値が偶数個あるとき第1論理値とするデータであり、当該全ビット中に第1論理値が奇数個あるとき第2論理値とするデータである、データ処理装置。 - 請求項1において、前記キャッシュメモリは、前記複数のウェイの中から前記選択データにより一部のタグウェイを選択してキャッシュタグをリードする第1モードと、キャッシュタグをリードする対象タグウェイをすべてのタグウェイとする第2モードとを有し、前記第1モード又は第2モードを選択するモード選択信号を入力する、データ処理装置。
- 複数のウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリを含むデータ処理装置であって、
前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から、アドレス情報の一部であるタグアドレス情報に基づいて生成される選択データの値に応じた一部のウェイを選択回路で選択し、選択したウェイの中から、前記アドレス情報の中のインデックスアドレスを用いてキャッシュタグをリードし、
前記キャッシュメモリはキャッシュフィルを行うとき、前記選択データの値に応ずる一部のウェイの中から選んだキャッシュエントリにキャッシュフィルを行い、
前記キャッシュメモリは、前記アドレス情報の一部であるタグアドレス情報と偶数パリティ又は奇数パリティを指定する偶奇選択信号とに対応するパリティデータを生成して前記選択データとし、
前記ウェイは前記インデックスアドレスに対応して前記キャッシュタグを格納するタグウェイと、前記インデックスアドレスに対応してデータを格納するデータウェイとを有し、キャッシュエントリは前記キャッシュタグとそれに対応するデータを含み、前記複数のタグウェイは所定複数個毎に互いにセンスアンプを共有する一つのメモリブロックに集約されて構成され、同一メモリブロックに構成される複数のタグウェイは相互に異なる選択データによって選択され、
前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データと前記インデックスアドレス情報とを用いてキャッシュタグをリードする、データ処理装置。 - 請求項11において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の全ビットに対する1ビットのパリティデータであり、第1の論理値のパリティデータは夫々の前記メモリブロックの中の一方のタグウェイの選択に用い、第2の論理値のパリティデータは夫々の前記メモリブロックの中の他方のタグウェイの選択に用いる、データ処理装置。
- 請求項11において、前記選択データは前記アドレス情報の一部であるタグアドレス情報の複数分割部分毎のパリティビットから成る複数ビットのパリティデータであり、前記パリティデータの値は夫々のメモリブロックの中から選択するタグウェイを決める、データ処理装置。
- 複数のウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリを含むデータ処理装置であって、
前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から、アドレス情報の一部であるタグアドレス情報に基づいて生成される選択データの値に応じた一部のウェイを選択回路で選択し、選択したウェイの中から、前記アドレス情報の中のインデックスアドレスを用いてキャッシュタグをリードし、
前記キャッシュメモリはキャッシュフィルを行うとき、前記選択データの値に応ずる一部のウェイの中から選んだキャッシュエントリにキャッシュフィルを行い、
前記キャッシュメモリは、前記アドレス情報の一部であるタグアドレス情報と偶数パリティ又は奇数パリティを指定する偶奇選択信号とに対応するパリティデータを生成して前記選択データとし、
前記キャッシュメモリがキャッシュフィルを行うキャッシュエントリを決めるとき、キャッシュフィル対象とするキャッシュエントリを疑似LRUにより特定するための指標として用いるLRUデータを格納するLRUデータアレイを有し、
前記LRUデータアレイは、キャッシュエントリに対するインデックスアドレス毎に、選択データで選択される一部のウェイ毎の利用履歴を示す複数ビットの履歴データを格納する領域を有し、
前記キャッシュメモリは、インデックスアドレス情報を用いてLRUデータアレイから読み出した前記履歴データと、対応する選択データとに基づいてキャッシュフィルを行うキャッシュエントリを選ぶ、データ処理装置。 - 請求項14において、前記複数のウェイのそれぞれはタグウェイ毎に活性又は非活性が選択されるメモリブロックによって構成され、
前記キャッシュメモリはキャッシュタグをリードするとき、前記選択データを用いたメモリブロックの活性化によって前記選択データによる一部のウェイの選択を行い、
前記キャッシュメモリはキャッシュフィルを行うとき、夫々のメモリブロックにおいて前記インデックスアドレスが指し示すキャッシュエントリの内、インデックスアドレス情報に基づいて前記LRUデータアレイから読み出された複数ビットの前記履歴データと、前記タグアドレスに基づいて生成される前記選択データとによって、キャッシュフィルを行うキャッシュエントリを選択する、データ処理装置。 - 請求項14において、前記複数のウェイは所定複個毎に一つのメモリブロックに集約されて構成され、同一メモリブロックに構成される複数のウェイは相互に異なる選択データによって選択され、
前記キャッシュメモリはキャッシュタグをリードするとき、活性化された夫々のメモリブロックの中の何れのウェイを選択するかを前記選択データによって指定され、指定されたウェイの中のいずれのキャッシュタグを選択するかを前記アドレス情報の中のインデックスアドレス情報によって指定され、
前記キャッシュメモリはキャッシュフィルを行うとき、いずれのメモリブロックを選択するかを、前記LRUデータアレイからインデックスアドレス情報によって読み出された複数ビットの履歴データによって指定され、指定されたメモリブロックの中から何れのウェイを選択するかを、前記選択データによって指定され、指定されたウェイの中から何れのキャッシュエントリをキャッシュフィルの対象とするかを、前記インデックスアドレスによって指定される、データ処理装置。 - 複数にウェイに複数のキャッシュエントリを格納するセットアソシアティブ型のキャッシュメモリを含むデータ処理装置であって、
前記キャッシュメモリはキャッシュタグをリードするとき、前記複数のウェイの中から何れの一部のウェイを選択するかを、アドレス情報の一部であるタグアドレス情報と偶数パリティ又は奇数パリティを指定する偶奇選択信号とに対応するパリティデータの値に応じて選択回路で指定し、指定したウェイの中から何れのキャッシュタグをリードするかを、前記アドレス情報の中のインデックスアドレス情報によって指定し、リードされたキャッシュタグを前記タグアドレスと比較し、それらの比較結果が、全て不一致、一つだけ一致、又は複数一致の何れであるかを判別し、前記複数一致を判別したときはキャッシュエラー信号を生成し、
前記キャッシュメモリは、キャッシュフィルを行うキャッシュエントリを決めるとき、キャッシュフィルの対象とするキャッシュエントリを疑似LRUにより特定するための指標として用いるLRUデータを格納するLRUデータアレイを有し、
前記LRUデータアレイは、キャッシュエントリに対するインデックスアドレス毎に、パリティデータで選択される一部のウェイ毎の利用履歴を示す複数ビットの履歴データを格納する領域を有し、
前記キャッシュメモリは、インデックスアドレス情報を用いてLRUデータアレイから読み出した前記履歴データと、対応する選択データとに基づいてキャッシュフィルを行うキャッシュエントリを選ぶ、データ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016075669A JP6149265B2 (ja) | 2016-04-05 | 2016-04-05 | データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016075669A JP6149265B2 (ja) | 2016-04-05 | 2016-04-05 | データ処理装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013551060A Division JPWO2013098919A1 (ja) | 2011-12-26 | 2011-12-26 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016122474A JP2016122474A (ja) | 2016-07-07 |
JP6149265B2 true JP6149265B2 (ja) | 2017-06-21 |
Family
ID=56327468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016075669A Active JP6149265B2 (ja) | 2016-04-05 | 2016-04-05 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6149265B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10037283B2 (en) * | 2016-08-12 | 2018-07-31 | Advanced Micro Devices, Inc. | Updating least-recently-used data for greater persistence of higher generality cache entries |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0786847B2 (ja) * | 1988-08-09 | 1995-09-20 | 松下電器産業株式会社 | キャッシュメモリ |
JPH04205449A (ja) * | 1990-11-30 | 1992-07-27 | Matsushita Electric Ind Co Ltd | キャッシュ装置 |
JPH04328656A (ja) * | 1991-04-30 | 1992-11-17 | Toshiba Corp | キャッシュメモリ |
US5666513A (en) * | 1996-01-05 | 1997-09-09 | Unisys Corporation | Automatic reconfiguration of multiple-way cache system allowing uninterrupted continuing processor operation |
WO2002008911A1 (fr) * | 2000-07-24 | 2002-01-31 | Hitachi,Ltd | Systeme de traitement de donnees |
JP2002236616A (ja) * | 2001-02-13 | 2002-08-23 | Fujitsu Ltd | キャッシュメモリシステム |
JP2003131945A (ja) * | 2001-10-25 | 2003-05-09 | Hitachi Ltd | キャッシュメモリ装置 |
JP2012022567A (ja) * | 2010-07-15 | 2012-02-02 | Mitsubishi Electric Corp | キャッシュメモリ |
-
2016
- 2016-04-05 JP JP2016075669A patent/JP6149265B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016122474A (ja) | 2016-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2013098919A1 (ja) | データ処理装置 | |
US9552256B2 (en) | Semiconductor memory device including non-volatile memory, cache memory, and computer system | |
US8103830B2 (en) | Disabling cache portions during low voltage operations | |
JP4989872B2 (ja) | 半導体記憶装置および演算処理装置 | |
JP3940539B2 (ja) | 半導体集積回路 | |
US6006311A (en) | Dynamic updating of repair mask used for cache defect avoidance | |
US6023746A (en) | Dual associative-cache directories allowing simultaneous read operation using two buses with multiplexors, address tags, memory block control signals, single clock cycle operation and error correction | |
US20070079184A1 (en) | System and method for avoiding attempts to access a defective portion of memory | |
JPH03286495A (ja) | 半導体記憶装置 | |
US5958068A (en) | Cache array defect functional bypassing using repair mask | |
JPH03141443A (ja) | データ格納方法及びマルチ・ウェイ・セット・アソシアチブ・キャッシュ記憶装置 | |
US20140052924A1 (en) | Selective Memory Scrubbing Based on Data Type | |
US6085288A (en) | Dual cache directories with respective queue independently executing its content and allowing staggered write operations | |
US10528473B2 (en) | Disabling cache portions during low voltage operations | |
US5883904A (en) | Method for recoverability via redundant cache arrays | |
US5943686A (en) | Multiple cache directories for non-arbitration concurrent accessing of a cache memory | |
US5867511A (en) | Method for high-speed recoverable directory access | |
US7649764B2 (en) | Memory with shared write bit line(s) | |
JP6149265B2 (ja) | データ処理装置 | |
US9141552B2 (en) | Memory using voltage to improve reliability for certain data types | |
JPWO2013098919A1 (ja) | データ処理装置 | |
US9141451B2 (en) | Memory having improved reliability for certain data types | |
JP4674865B2 (ja) | 半導体集積回路 | |
JP3672695B2 (ja) | 半導体記憶装置、マイクロコンピュータ、及びデータ処理装置 | |
Mohammad et al. | Cache Architecture and Main Blocks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160405 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160405 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170209 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170330 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170420 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20170421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170425 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6149265 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |