JPH08272688A - 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法 - Google Patents

階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法

Info

Publication number
JPH08272688A
JPH08272688A JP8058025A JP5802596A JPH08272688A JP H08272688 A JPH08272688 A JP H08272688A JP 8058025 A JP8058025 A JP 8058025A JP 5802596 A JP5802596 A JP 5802596A JP H08272688 A JPH08272688 A JP H08272688A
Authority
JP
Japan
Prior art keywords
cache
tag
memory
logic circuit
array
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
Application number
JP8058025A
Other languages
English (en)
Other versions
JP3709235B2 (ja
Inventor
Rooritsutsuen Moogensu
ローリッツェン モーゲンス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPH08272688A publication Critical patent/JPH08272688A/ja
Application granted granted Critical
Publication of JP3709235B2 publication Critical patent/JP3709235B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0884Parallel mode, e.g. in parallel with main memory or CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 本発明は、アーキテクチャーの複雑化、製造
コストの増加、動作速度の低下を伴わず階層化された記
憶項目とキャッシュタグを格納するキャッシュメモリ装
置の提供を目的とする。 【解決手段】 キャッシュメモリ装置は、記憶項目を格
納する記憶項目部と、キャッシュエントリーを識別する
キャッシュタグを格納するキャッシュタグ部とからなる
キャッシュエントリーよりなる単一キャッシュアレイ構
造を有し、キャッシュエントリーの内容を読み出すため
アドレス信号に応答するキャッシュアレイよりなる。上
記装置は、メモリ要求に応答しアドレス信号を発生する
論理回路と、所定の関係に関しキャッシュタグをメモリ
要求と比較する回路と、アドレス信号をキャッシュアレ
イに伝達するアドレスバスと、キャッシュアレイと論理
回路の間でキャッシュタグと記憶項目を伝達するデータ
バスとを更に有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般的にキャッシ
ュメモリ装置と方法に係り、特に、階層化された記憶項
目とキャッシュタグを単一キャッシュアレイ構造内に格
納するキャッシュメモリ装置と方法に関する。
【0002】
【従来の技術】現在のコンピュータシステムは、アクセ
ス時間と記憶容量に関し記憶装置を順序付けする階層的
なメモリ設計を採用している。参考のため引用したスト
ーン(H.S. Stone)の“高性能コンピュータアーキテクチ
ャー(High-Performance Computer Architecture)”、第
2版(1990年)、アディソン−ウェスレイ(Addison
-Wesley)発行、29−87ページに記載されているよう
に、最高速のアクセス時間と、最小の記憶容量が得られ
るキャッシュメモリ装置は階層の最上位に置かれる。キ
ャッシュメモリ装置は、コンピュータのプログラムとデ
ータの中で最も頻繁に使用されるセグメントを格納する
ため使用される。キャッシュメモリよりも下位の階層に
は、アクセス時間が低下し、記憶容量が増加する順序
で、主メモリと2次記憶装置が置かれている。メモリキ
ャッシュは、主メモリから階層化された2種類の記憶項
目:読み出し専用として扱われるプログラム命令と、デ
ータを格納するため使用される。
【0003】キャッシュメモリ装置は:中央処理装置
(CPU)の一体的な部分としてオンチップに設けられ
た1次又はレベル−1キャッシュと、CPUの外部にあ
る2次又はレベル−2キャッシュの二つのタイプに分類
される。1次キャッシュは、より高速のアクセス時間が
得られるが、寸法、電力消費、及びCPUに関連する他
のエンジニアリング上の得失によって1次キャッシュの
設計は制限され得るので、記憶容量は固定されている。
【0004】一方、2次キャッシュはCPUから分離し
た物理的構成部品のため、上記得失による影響を受けな
いので、付加的なメモリチップを追加することにより容
量を増加させることが可能である。典型的に、スタティ
ックランダムアクセスメモリ(SRAM)チップは、通
常のダイナミックランダムアクセスメモリ(DRAM)
チップよりも高速のアクセス時間が得られるので使用さ
れる。
【0005】2次メモリキャッシュの容量は、一般的に
主メモリの容量よりも著しく小さいので、各キャッシュ
エントリーが対応する主メモリの位置を識別するために
キャッシュタグを使用することが必要である。従って、
二つの別個のメモリチップの実体が使用され、これによ
り、実体は少なくとも一つの離散的なメモリチップであ
る可能性があり、一方の実体は階層化された記憶項目を
格納し、もう一方の実体がキャッシュタグを格納する。
階層化された記憶項目とキャッシュタグを格納するため
別個のメモリチップの実体を利用する2次メモリキャッ
シュの例は、クロフォード(Crawford)他の米国特許第5,
210,845 号明細書と、リー(Lee) 他の米国特許第5,339,
399 号明細書と、マックウィリアムズ(MacWilliams) 他
の米国特許第5,239,603 号及び第5,228,134 号明細書に
記載されている。
【0006】
【発明が解決しようとする課題】階層化された記憶項目
とキャッシュタグを格納するための別個のメモリアレイ
構造の使用によって生じる問題は、付加的な構成部品の
ためにアーキテクチャー上の複雑さが増大し、製造コス
トが増加し、動作速度が低下することである。本発明
は、上記従来技術の問題点を解決するため、階層化され
た記憶項目(プログラムの命令又はデータ)とキャッシ
ュタグを格納する単一メモリアレイを使用するキャッシ
ュメモリ装置及び方法の提供を目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、本発明の階層化された記憶項目(プログラムの命令
又はデータ)とキャッシュタグを格納する単一メモリア
レイにおいて、キャッシュタグは複数のメモリチップ上
に広がる連続的なキャッシュエントリーに亘って分散さ
れ、タグは2次メモリキャッシュアレイ構造への連続的
な読みを行なうことにより再構築される。
【0008】本発明の一実施例は、外部メモリから論理
ユニットまで階層化された記憶項目を提供するキャッシ
ュメモリ装置である。上記装置は、複数のキャッシュエ
ントリーよりなる少なくとも一つの単一キャッシュアレ
イ構造を有するキャッシュアレイによって構成される。
各キャッシュエントリーは、記憶項目の少なくとも一部
を記憶する記憶項目部と、キャッシュタグの少なくとも
一部を記憶するキャッシュタグ部よりなる。各キャッシ
ュタグはキャッシュエントリーの中の少なくとも一つを
識別する。キャッシュアレイは、少なくとも一つのキャ
ッシュエントリーの内容を読み出すためのアドレス信号
に応答する。キャッシュメモリ装置は、メモリ要求に応
答しアドレス信号を発生する論理回路と、所定の関係に
関してキャッシュタグをメモリ要求と比較する回路を更
に有する。上記キャッシュメモリ装置は、キャッシュア
レイと論理回路を相互接続し、アドレス信号をキャッシ
ュアレイに伝達するアドレスバスと、キャッシュアレイ
と論理回路を相互接続し、キャッシュアレイと論理回路
の間でキャッシュタグと記憶項目を伝達するデータバス
とを更に有する。
【0009】本発明の他の一実施例は、主メモリからキ
ャッシュメモリまで階層化された記憶項目を、主メモ
リ、又は、もし存在するならばキャッシュメモリの何れ
かから選択的に提供するキャッシュメモリ装置である。
上記キャッシュメモリ装置は、複数の記憶項目を格納
し、2重キャッシュタグを各記憶項目に対応させるキャ
ッシュメモリからなる。各記憶項目に対する2重キャッ
シュタグの複製の各々は対応する記憶項目を識別する。
複数の記憶項目の各々は、複数の記憶項目部からなる。
各記憶項目部は、記憶項目部と関連して2重キャッシュ
タグの複製の一方を格納する。キャッシュタグメモリ
は、記憶項目と、対応するキャッシュタグの中の一つの
複製の一方を読み出すため受け取られたアドレスに応答
する。上記キャッシュメモリ装置は、主メモリへのメモ
リアクセスの要求に応答し、アドレスを発生する論理回
路を更に有する。論理回路は、所定の関係に関して一つ
のキャッシュタグの複製の一方の各々をもう一方の複製
よりも前に比較する回路よりなる。キャッシュメモリ装
置は、キャッシュメモリ構造と論理回路の間でアドレス
と、記憶項目及び対応する一つのキャッシュタグの複製
の一方とを伝達する少なくとも一つのバスを更に有す
る。
【0010】本発明を実施するため考え得るその例に限
定されることのない最良の形態の例による本発明の実施
例だけが以下の詳細な説明に示され説明されている。当
業者は、かかる以下の詳細な説明に基づいて本発明の他
の実施例を容易に知ることができる。本発明の精神と範
囲から逸れることなく、本発明の他の種々の実施例を形
成することが可能であり、かつ、本発明の幾つかの細部
は、種々の明らかな点で変更し得ることが分かる。従っ
て、添付図面及び以下の説明は本質的に例示であり、そ
の例に限定されるものではないと見なす必要がある。
【0011】
【発明の実施の形態】本発明は2個の別々のSRAMチ
ップ上に分散した4個の3ビットセグメントを結合する
ことによりキャッシュタグが形成される2次メモリキャ
ッシュに関する。本発明の一実施例は、パイプライン化
された実行ユニットと共に縮小命令セットコンピュータ
(RISC)設計を利用するSPARC(登録商標)
(スケーラブル プロセッサ アークテクチャー)マイ
クロプロセッサ上で実現されている。SPARCは、カ
リフォルニア州、マウンテン ビューのサンマイクロシ
ステムズ社の登録商標である。
【0012】本発明は、更に、2重キャッシュタグが、
多重の記憶場所への読出しに完全なキャッシュタグを得
ることが必要とされる環境で2次キャッシュの多重の場
所に格納された部分に分割され、これにより、冗長なキ
ャッシュタグを利用してキャッシュラインの多重記憶場
所の全部が読まれる前にキャッシュヒット又はキャッシ
ュミスを検出することが可能になる2次メモリキャッシ
ュに関する。
【0013】図1には本発明の一実施例のキャッシュメ
モリ装置の概略図が示されている。キャッシュメモリ装
置1は、キャッシュアドレスバス4と、キャッシュ制御
信号5の組を用いて共有されたキャッシュデータとキャ
ッシュタグを含む2次キャッシュ3に接続されたマイク
ロプロセッサ2のような論理ユニットからなる。マイク
ロプロセッサ2は、主メモリアドレスバス8と、主メモ
リ制御信号9の組を用いて主メモリ7にも接続されてい
る。2次キャッシュ3と主メモリ7は共に、共有データ
バス6を用いて、マイクロプロセッサとの間で記憶項目
を転送する。4−段の先入れ先出し(FIFO)双方向
記憶バッファ10は、マイクロプロセッサから主メモリ
に書き込まれる記憶項目を緩衝するため使用される。
【0014】マイクロプロセッサ内の実行ユニット(図
示しない)は、28ビットの物理的主メモリアドレスか
らなる読出し要求を発生する。全部で32バイトのキャ
ッシュラインが要求される場合、2次キャッシュのルッ
クアップ(検査)は主メモリのルックアップと並行して
始められる。要求された記憶項目が2次キャッシュで検
出された場合、主メモリへのルックアップは取り消され
る。要求された記憶項目が2次キャッシュで検出されな
かった場合、要求された記憶項目は主メモリから取り出
され、2次キャッシュ内の適当な場所は、取り出された
主メモリの項目が利用可能になると同時に上記取り出さ
れた主メモリの項目で更新される。
【0015】実行ユニットは更にメモリ書込み要求を発
生する。キャッシュメモリ装置は、ライトスルー キャ
ッシュ コヒーレンシー プロトコル(Write-through
cache coherency protocol) を使用する。全てのキャッ
シュラインが書き込まれたとき、新しいデータは2次メ
モリキャッシュと主メモリとに同時に書き込まれ、2次
キャッシュタグは新しいタグの物理アドレスを使用して
更新される。
【0016】2次キャッシュ3は直接アドレスマッピン
グを介してアクセスされる。直接アドレスマッピングと
は、アドレスバス4を介して2次キャッシュ3に送られ
たアドレスがキャッシュ内の固有の場所を直接参照する
ことを意味する。マイクロプロセッサ2は、主メモリ7
内の場所の28ビット物理アドレスの形でメモリアクセ
スの要求を形成する。
【0017】上記28ビット物理アドレスは、三つの構
成要素に分割される。最初の3ビットADDR〔2:
0〕は、単一キャッシュエントリーに対応する64ビッ
トのダブルワード内の1バイトを選択するため実行ユニ
ットによって内部的に使用される。次の15ビットAD
DR〔17:3〕は、キャッシュエントリーを選択する
ため、キャッシュアドレスバス4、即ち、図2のA〔1
4:0〕を介して送られる。2次キャッシュ3は、キャ
ッシュアドレスバス4上でアサートされた15ビットア
ドレスに応答し、2次キャッシュ3はキャッシュエント
リーを読出し始める。2次キャッシュへのルックアップ
は、4個の64ビットのキャッシュエントリーからなる
32バイトのキャッシュラインを使用して行なわれる。
残りの10ビットADDR〔27:18〕は、上記10
ビットを2次キャッシュタグと比較することによりキャ
ッシュヒット又はキャッシュミスを検出するためマイク
ロプロセッサによって内部的に使用される。キャッシュ
タグとビットADDR〔27:18〕の間の一致はキャ
ッシュヒットであり、キャッシュタグとビットADDR
〔27:18〕の間の不一致はキャッシュミスである。
キャッシュヒットとキャッシュミスの両方は、実行ユニ
ットへの信号によってマイクロプロセッサ内で示され
る。
【0018】図2には、マイクロプロセッサと2次キャ
ッシュの間で接続されたアドレスバス及び制御信号と、
キャッシュメモリ装置用のデータバスが示されている。
キャッシュアドレスバス4は、アドレスデータA〔1
4:0〕の15ビットを伝達する一組のアドレス線によ
って構成される。上記15ビットは物理アドレスADD
R〔17:3〕から得られる。このアドレスはキャッシ
ュエントリーを識別するため2次キャッシュで絶対アド
レスとして使用される。キャッシュ制御信号5は、アク
セスするためのメモリチップを選択する3本のチップ選
択信号CS
〔0〕−〔3〕の一組と、ストローブ信号を
伝送するための4本の1ビット信号線と、進行信号と、
2次キャッシュへの書込みイネーブル信号とを含む4組
の信号からなる。
【0019】データバス6は72ビットのデータを伝達
するデータ線の三つのグループからなる。第1のグルー
プはキャッシュタグデータT〔5:0〕の6ビットを伝
達する。第2のグループはパリティP〔1:0〕の2ビ
ットを伝達する。第3のグループはキャッシュデータD
〔63:0〕の64ビットを伝達する。キャッシュタグ
データ線は、マイクロプロセッサ2と2次キャッシュ3
とによって排他的に使用される。
【0020】図3乃至5には2次キャッシュ3の3通り
の構成の概略図が示されている。2次キャッシュ3は、
例えば、図3の256KB(キロバイト)キャッシュ、
図4の512KBキャッシュ、又は、図5の1MB(メ
ガバイト)キャッシュを含むあらゆる数の記憶容量で構
成することが可能であり、これにより、記憶容量は使用
されるメモリチップの数で決まる。256KBの構成は
1対のメモリチップ(20a及び20b)を使用する。
512KBの構成は2対のメモリチップ(20a及び2
0bと、28a及び28b)を使用する。1MBの構成
は、4対のメモリチップ(20a及び20bと、28a
及び28bと、29a及び29bと、30a及び30
b)を使用する。
【0021】図2に示されたチップ選択信号CS
〔0〕
−〔3〕は、所望のメモリチップの対を選択するため使
用され、これにより、CS
〔0〕にアサートされた信号
はチップ対20a及び20bを選択し、CS〔1〕はチ
ップ対28a及び28bを選択し、CS〔2〕はチップ
対29a及び29bを選択し、CS〔3〕はチップ対3
0a及び30bを選択する。
【0022】本発明の一実施例によれば、各メモリチッ
プは、36ビットのデータの32KBのSRAMチップ
により構成される。SRAMチップの一例は、富士通製
の32K × 36 MB82VP036形のSRAM
メモリチップである。以下の説明は256KBの構成だ
けに基づいているが、512KB及び1MBの構成にも
同様に適用される。
【0023】図3には1対のメモリチップ20a及び2
0bからなる256KBキャッシュとして構成された2
次メモリが示されている。各メモリチップは、32,7
68個の36ビットの個別にアドレス指定可能なエント
リーからなる単一キャッシュアレイ構造をなす。各36
ビットのエントリーは、32ビット(又は4バイト)の
データと、1パリティビットと、3ビットのキャッシュ
タグデータを含む。キャッシュエントリーは、常に対の
形で取り出されるので、72ビットの各対がキャッシュ
エントリーとして参照される。キャッシュラインは、3
2バイトのアドレス境界から始まる4個の連続的に格納
されたキャッシュエントリーからなり、かつ、32バイ
トのデータ(1キャッシュエントリー当たり8バイト
× 1キャッシュライン当たり4エントリー)を含む。
【0024】従来技術の場合、典型的に、少なくとも一
つのキャッシュアレイ構造は、階層化された記憶項目
(データ)と、対応するパリティビットとを格納するた
め使用され、少なくとも一つのキャッシュアレイ構造が
キャッシュタグを格納するため使用される。しかし、本
発明によれば、少なくとも一つのデータキャッシュアレ
イ構造内の余分な場所はキャッシュタグを格納するため
使用されるので、キャッシュタグを別の専用の構造に格
納する必要は取り除かれる。
【0025】各単一キャッシュアレイ構造は、キャッシ
ュデータと、パリティビットと、キャッシュタグを格納
する3列に論理的に分割される。図3において、キャッ
シュタグは、メモリチップ20a及び20bの夫々の列
21a及び21bに格納されている。同様に、パリティ
ビットは列22a及び22bに格納され、キャッシュデ
ータは列23a及び23bに格納される。
【0026】72ビットのデータは、1回のアクセスに
つき2次キャッシュメモリとマイクロプロセッサの間で
伝送される。データバス6は2次キャッシュ3の内部デ
ータバス24に接続する。内部データバスは、キャッシ
ュタグセグメントバス25a及び25bと、パリティセ
グメントバス26a及び26bと、キャッシュデータセ
グメントバス27a及び27bを用いて3ビットのキャ
ッシュデータと、1ビットのパリティと、32ビットの
キャッシュデータを得るため、各キャッシュアレイ構造
で枝分かれする。
【0027】図6には2次キャッシュの256KB構成
で使用される内部バスの配線図が示されている。同様の
内部バスは2次キャッシュの512KB又は1MBの構
成で使用される。マイクロプロセッサと2次キャッシュ
の間でキャッシュタグデータを伝達する6本の線のグル
ープは主メモリには延在しないにも係わらず、データバ
ス6と内部データバス24は同一データを伝達する。キ
ャッシュタグセグメントバス25a及び25bは、キャ
ッシュタグを二つの3ビットセグメントのT〔2:0〕
とT〔5:3〕に分割する。パリティビットセグメント
バス26a及び26bは、パリティビットを二つの1ビ
ットセグメントのP
〔0〕とP〔1〕に分割する。キャ
ッシュデータセグメントバス27a及び27bは、キャ
ッシュデータを二つの32ビットセグメントのD〔3
1:0〕とD〔64:32〕に分割する。
【0028】2次キャッシュ内の4個の連続的なキャッ
シュエントリーの4回の連続的な読出しには、一本のキ
ャッシュラインを読むことが要求される。しかし、完全
なキャッシュタグは、キャッシュラインを構成する4個
のキャッシュエントリーの中の2個のキャッシュエント
リーだけに格納することが可能である。図7にはキャッ
シュタグの構成図が示されている。キャッシュタグは、
三つのフィールドを含む12ビット長からなる。ビット
0乃至9よりなる物理アドレスフィールドは、上記キャ
ッシュラインに格納された階層化された記憶項目の物理
アドレスの上位10ビットを含む。ビット10によって
構成される有効ビットフィールドVは、キャッシュライ
ンに有効データが含まれているかどうかを示す。ビット
11からなるパリティビットフィールドPは、2次キャ
ッシュタグのパリティ検査のため使用される。動作中、
キャッシュタグ有効ビットがクリアされている場合、キ
ャッシュタグパリティビットは検査されない。更に、キ
ャッシュタグのパリティエラーにより2次キャッシュの
ミスが発生し、キャッシュタグのパリティエラーはシス
テムソフトウェアでは分からない。
【0029】2次キャッシュタグは四つの3ビットセグ
メント内の二つの連続的なキャッシュエントリーに格納
されている。図8にはキャッシュタグセグメントの記憶
スキームの概略が示されている。キャッシュラインは4
個のキャッシュエントリーからなり、4個のキャッシュ
エントリーの中の2個だけがキャッシュタグを格納する
ため必要とされるので、キャッシュタグを冗長的に格納
し、キャッシュヒット又はキャッシュミスの初期検出を
行なうため使用できる利点がある。
【0030】キャッシュタグを2回格納することによ
り、キャッシュラインを構成する4個のキャッシュエン
トリーの中の二つだけがマイクロプロセッサによって受
け取られた後に、キャッシュヒット又はキャッシュミス
を検出することが可能である。キャッシュヒットは初期
に検出されるので、ラップアラウンドの特徴(以下に説
明する)を使用して、2次キャッシュは、更なる遅延を
受けることなく即座に利用可能になる連続的なキャッシ
ュエントリーを送出し続ける。逆に、キャッシュミスは
既に受信されたデータの取消を要求するだけである。
【0031】本発明の一実施例において、マイクロプロ
セッサは、多段の命令パイプライン(図示しない)と共
に実行ユニット(図示しない)を有する。好ましくは、
マイクロプロセッサは、データと共にロードされ、概念
的なパイプで同時に実行されるプログラム命令の重複を
使用する命令の同時又は並列処理を行なうパイプライン
プロセッサである。キャッシュラインを構成する最初の
二つのキャッシュエントリーは、キャッシュヒット又は
キャッシュミスが発生したかどうかが分かる前に読まれ
る。それにも係わらず、上記エントリーの両方のデータ
は、受取と同時に即座に実行ユニットに進められ、命令
パイプラインの中に置かれる。1クロックサイクル当た
り一つのキャッシュエントリーが受けられる。同様に、
パイプライン中の1段は、1クロックサイクルで実行さ
れる。かくして、最初の二つのエントリーからのデータ
は、キャッシュヒット又はキャッシュミスが検出された
とき、命令パイプラインの中を2段進められている。キ
ャッシュミスが発生したとき、マイクロプロセッサはデ
ータを取り消し、実行ユニットによって使用される前に
パイプラインから実際に取り除く。キャッシュヒットが
発生した場合、データはパイプライン中で2段の深さに
あり、2クロックサイクルが節約される利点がある。
【0032】より一般的に言うと、パイプライン化され
た実行ユニットを有するマイクロプロセッサに適用可能
なだけではなく、キャッシュタグの冗長な格納によっ
て、マイクロプロセッサは、完全なキャッシュラインが
受け取られたときキャッシュヒット又はキャッシュミス
が発生したかどうかを判定することができる。2次キャ
ッシュメモリはラップアラウンドの特徴を利用し、これ
によって、一つのキャッシュエントリーは連続的な各ク
ロックサイクルで出力される。もう一度図2を参照する
と、ストローブ制御信号でローレベルをアサートするこ
とにより、キャッシュエントリーアドレスがキャッシュ
アドレスバス4上でアサートされたことが示されてい
る。応答として、2次キャッシュはアドレスバス4上で
アサートされたアドレスに格納されたキャッシュエント
リーを送出する。進行制御信号上で同様にローレベルが
アサートされている場合、2次キャッシュは、1クロッ
ク当たり1エントリーで、2次キャッシュ内の連続的な
記憶場所にあるキャッシュエントリーを送り続ける。2
次キャッシュは、キャッシュラインを構成する4個のキ
ャッシュエントリーが送られる前にキャッシュラインの
最後に達したとき、キャッシュをキャッシュラインの先
頭にラップアラウンドさせるモジュロー4のカウンタを
使用する。ラップアラウンドの特徴を使用することによ
り、マイクロプロセッサは、完全な4−エントリーのキ
ャッシュラインの32バイト境界に対応する必要がない
一つのキャッシュエントリーアドレスをアサートするだ
けでよい。
【0033】図9には、キャッシュヒット又はキャッシ
ュミスの検出回路を表わす論理図が示されている。上記
回路の目的は、連続的なクロックサイクルで受けられた
キャッシュエントリーに関してキャッシュタグの上側と
下側のセグメントを比較することによりキャッシュヒッ
ト又はキャッシュミスを検出することである。最初に、
キャッシュタグの一方の半分が比較され、その結果が格
納される。次のクロックサイクル中に、キャッシュタグ
のもう一方の半分が比較され、上側及び下側の両方のセ
グメントが一致する結果を有するかどうかを判定するた
め、その結果と前の比較の結果が併せて比較される。上
側及び下側の両方のセグメントが一致する結果を有する
ならば、キャッシュヒットが発生している。上側及び下
側の両方のセグメントが一致しない場合、キャッシュミ
スが発生している。
【0034】上記回路はマイクロプロセッサの内側にあ
る。キャッシュタグの物理アドレスフィールドには、キ
ャッシュラインに格納された階層化された記憶項目の物
理アドレスの上位10ビットが含まれている点に注意す
る必要がある。各キャッシュタグは、二つの連続的なキ
ャッシュエントリーに格納されているので、2次キャッ
シュメモリからデータバスを介して二つの6ビットセグ
メントT〔5:0〕に受け取られる。2次キャッシュか
ら受けられたような各セグメントは、内部キャッシュタ
グバス80に沿って一時記憶装置用のレジスタ81に進
められる。要求された記憶項目の上位10ビットPA
〔27:18〕は、内部物理アドレスバス82上でアサ
ートされ、内部バス83及び84で夫々アサートされた
下位5ビットのPA〔22:18〕及び上位5ビットの
PA〔27:23〕の二つの5ビットセグメントに分割
される。
【0035】レジスタ81に格納されたキャッシュタグ
セグメントは、排他的否定論理和(XNOR)論理ゲー
ト85及び86を用いて両方の5ビット物理アドレスセ
グメントと比較される。XNOR演算から得られた結果
は、上側又は下側の何れが比較されているかに基づいて
適当な結果を選択するためマルチプレクサ87を用いて
選択される。SEL_LOW_TAG信号は、上側又は
下側のキャッシュタグセグメントの比較結果を選択する
ためマルチプレクサ87への入力として制御信号88で
アサートされる。
【0036】マルチプレクサ87からの結果は、共にレ
ジスタ89に格納され、AND論理ゲート90に進めら
れる。レジスタ89は前のクロックサイクルで判定され
た比較演算の結果を含み、次の連続的なクロックサイク
ルがIO_CLK信号97上でアサートされたとき、A
ND論理ゲートに進められる。現在のタグセグメントの
ヒットは線90に沿って示される。前のタグセグメント
のヒットは線91にそって示される。両方の線にアサー
トされた値は、線93でキャッシュヒット又はキャッシ
ュミスを示す信号をアサートするAND論理ゲート92
によって比較される。キャッシュミスが発生し、取消イ
ネーブル信号(ENB_CANCEL)が線94にアサ
ートされた場合、AND論理ゲート95は線96上に取
消信号をアサートし、これにより、前のクロックサイク
ル中に実行ユニットに既に送られたデータ準備完了(D
ATA_RDY)信号を取り消す。上記取消によって、
例えば、命令パイプライン中の記憶項目が取り消され
る。
【0037】図10には、キャッシュエントリーパリテ
ィ検査回路を表わす論理図が示されている。この回路の
目的は、キャッシュエントリーを構成する何れかの36
ビットセグメントに関しパリティエラーが発生したかど
うかを判定することである。上記回路はマイクロプロセ
ッサの内部にある。パリティエラーがない場合を想定す
ると、内部DATA_RDY信号がアサートされ、これ
により、2次キャッシュからの有効データの存在が示さ
れる。2次キャッシュからデータバス6を介して受けら
れた64ビットのキャッシュデータ及び二つのパリティ
ビットは、二つの32ビットセグメントのD〔63:3
2〕及びD〔31:0〕と、2個の別個のパリティビッ
トP〔1〕及びP
〔0〕とに分割される。キャッシュデ
ータセグメントは、内部キャッシュデータバス100及
び101でアサートされ、パリティビットはバス102
及び103に沿ってアサートされる。キャッシュデータ
は、キャッシュデータセグメントのパリティを定めるた
めXOR論理ゲート104及び105に入力される。次
いで、その結果は、XOR論理ゲート106及び107
を用いて上記セグメントに関しパリティビットと比較さ
れる。その結果はOR論理ゲート108によって比較さ
れ、レジスタ109に格納される。レジスタは、CPU
_CLK信号110上でアサートされるような次のクロ
ックサイクルに上記結果を先に進める。準備完了信号イ
ネーブル(ENB_READY)がアサートされ、AN
D論理ゲートによって定められたようなパリティエラー
が存在しない場合、データ準備完了(DATA_RD
Y)信号112がアサートされ、有効キャッシュエント
リーがパリティエラー無しで受け取られたことを示す。
【0038】上記キャッシュメモリ装置は、ライトスル
ー キャッシュ コヒーレンシープロトコルを利用す
る。書込み動作の実行時に、新しいデータが2次キャッ
シュメモリと主メモリとに同時に書き込まれる。全ての
メモリ書込みは上記キャッシュタグを更新する。非ブロ
ック(キャッシュライン以外の)書込みはキャッシュタ
グエントリーを抹消し、一方、ブロック書込みはキャッ
シュタグエントリーを更新する。読出し動作の実行時
に、非ブロック読出しは2次キャッシュメモリを回避
し、一方、ブロック書込みにより2次キャッシュのルッ
クアップが行なわれる。ルックアップの結果がキャッシ
ュミスである場合、対応する主メモリのデータは、利用
可能なときに2次キャッシュに書き込まれ、これに従っ
てキャッシュタグが更新される。
【0039】2次キャッシュの階層化された記憶項目
は、マイクロプロセッサ2内の受取時にパリティエラー
が検査される。パリティエラーが最初の二つのデータエ
ントリーに生じた場合、パリティエラーはキャッシュミ
スと同様に処理され、既に読まれたデータは取り消さ
れ、キャッシュタグは更新される。パリティエラーが最
後の二つのキャッシュデータエントリーに生じた場合、
パリティエラーによってパリティエラーが通知される。
外部主メモリのブロック読出しのパリティエラーは、2
次キャッシュミスがあるならば、指定された2次キャッ
シュラインを抹消する。
【0040】図11には、書込み動作用のキャッシュ
コヒーレンシー プロトコルのフローチャートが示され
ている。書込みがブロック書込みを試みる場合(ステッ
プ40)、キャッシュは、キャッシュラインとそのタグ
を置き換えることにより更新される(ステップ41)。
ブロック書込み以外の場合、非ブロック書込みが行なわ
れるならば、キャッシュラインは、4回の連続的なキャ
ッシュエントリーの書込みでキャッシュタグを無効化、
又は、ヌル値に設定することにより抹消される。
【0041】図12には、読出し動作用のキャッシュ
コヒーレンシー プロトコルのフローチャートが示され
ている。非ブロック読出しが行なわれる場合(ステップ
50)、2次キャッシュメモリは回避され、データは主
メモリから直接読まれる(ステップ51)。非ブロック
読出し以外の場合、2次キャッシュのルックアップが行
なわれる。最初のキャッシュエントリーが読まれ(ステ
ップ52)、データパリティエラーが検出された場合
(ステップ53)、データは取り消され、キャッシュラ
インは、利用可能になったとき主メモリのデータで更新
される(ステップ54)。データパリティが検出されな
かった場合、2次キャッシュメモリが読まれ(ステップ
55)、データパリティが検出された場合(ステップ5
6)、データは取り消され、キャッシュラインは、利用
可能になったとき主メモリのデータで更新される(ステ
ップ57)。
【0042】第1又は第2のキャッシュエントリーの何
れにおいてもパリティエラーが発生していない場合を想
定すると、完全なキャッシュタグが受け取られ、ステッ
プ58から始めるキャッシュヒット又はキャッシュミス
の初期の検出が行なわれる。キャッシュタグの有効ビッ
トが検査され、クリアされている場合(ステップ5
8)、キャッシュラインは取り消される無効データを有
し、キャッシュラインは、利用可能になったとき主メモ
リのデータで更新される(ステップ59)。クリアされ
ていない場合、キャッシュタグパリティビットが検査さ
れ、パリティエラーが検出された場合(ステップ6
0)、パリティエラーが通知され、キャッシュラインは
抹消される(ステップ61)。パリティエラーは検出さ
れなかった場合、キャッシュタグが検査され、キャッシ
ュミスが検出された場合(ステップ62)、データは取
り消され、キャッシュラインは、利用可能になったとき
主メモリのデータで更新される(ステップ63)。キャ
ッシュヒットが検出された場合を想定すると、第3及び
第4のキャッシュエントリーが読まれる(ステップ64
及びステップ67)。データパリティエラーが何れかの
キャッシュエントリーに関し検出された場合(ステップ
65及び68)、パリティエラーが通知され、キャッシ
ュラインは抹消される(ステップ66及び69)。デー
タパリティエラーが発生しなかった場合、2次キャッシ
ュのルックアップは成功する。
【0043】図13には、2次キャッシュのヒットを表
わすタイミングチャートが示されている。読出し要求は
時点T0 で行なわれる。2次キャッシュのストローブ制
御信号と、キャッシュラインのアドレスは、時点T1
アサートされる。時点T2 で2次キャッシュは読出し動
作を開始し、マイクロプロセッサは順次のキャッシュエ
ントリーのルックアップを示す進行制御信号をアサート
する。2次キャッシュは、時点T3 で第1のキャッシュ
エントリーを送り始める。マイクロプロセッサは、第1
のキャッシュエントリーを受け、内部的にその受取を示
すハイレベルの推測的な読出し準備完了(SC Rea
d Ready)信号をアサートし、一方、2次キャッ
シュは、時点T4 で第2のキャッシュエントリーを送り
始める。キャッシュタグのもう一方の半分を含む第2の
キャッシュエントリーは、時点T 5 で受けられ、キャッ
シュヒットの初期検出が時点T5 で行なわれる。キャッ
シュラインを構成する残りの二つのキャッシュエントリ
ーは、時点T6 及びT7 で受けられる。
【0044】図14には、2次キャッシュのミスを表わ
すタイミングチャートが示されている。読出し要求は時
点T0 で行なわれる。2次キャッシュのストローブ制御
信号と、キャッシュラインのアドレスは、時点T1 でア
サートされる。時点T2 で2次キャッシュは読出し動作
を開始し、マイクロプロセッサは順次のキャッシュエン
トリーのルックアップを示す進行制御信号をアサートす
る。2次キャッシュは、時点T3 で第1のキャッシュエ
ントリーを送り始める。マイクロプロセッサは、第1の
キャッシュエントリーを受け、内部的にその受取を示す
ハイレベルの推測的な読出し準備完了信号をアサート
し、一方、2次キャッシュは、時点T4 で第2のキャッ
シュエントリーを送り始める。キャッシュタグのもう一
方の半分を含む第2のキャッシュエントリーは、時点T
5 で受けられ、キャッシュミスの初期検出が時点T5
行なわれる。マイクロプロセッサは、キャッシュミスの
検出時に、ローレベルの読出し準備完了信号をアサート
し、ハイレベルの取消信号をアサートする。
【0045】図15には、主メモリ読出しを伴う2次キ
ャッシュミスを表わすタイミングチャートが示されてい
る。読出し要求は時点T0 で行なわれる。キャッシュラ
インのアドレスは時点T1 でアサートされる。時点T2
で2次キャッシュは読出し動作を開始し、マイクロプロ
セッサは、順次のキャッシュエントリーのルックアップ
を示す進行制御信号をアサートする。2次キャッシュ
は、時点T3 で第1のキャッシュエントリーを送り始め
る。マイクロプロセッサは、第1のキャッシュエントリ
ーを受け、内部的にその受取を示すハイレベルの推測的
な読出し準備完了信号をアサートし、一方、2次キャッ
シュは、時点T4 で第2のキャッシュエントリーを送り
始める。キャッシュタグのもう一方の半分を含む第2の
キャッシュエントリーは、時点T5 で受けられ、キャッ
シュミスの初期検出が時点T5 で行なわれる。マイクロ
プロセッサは、キャッシュミスの検出時に、ローレベル
の読出し準備完了信号をアサートし、ハイレベルの取消
信号をアサートする。2次キャッシュラインの内容は、
時点T23から主メモリより受けられたデータを用いて更
新され、新しいキャッシュエントリーは9クロック周期
毎に受けられる。
【0046】上記本発明を、特に、その実施例を参照し
て示し、かつ、説明しているが、当業者は、本発明の精
神と範囲から逸れるこなく、形態及び細部の点で上記実
施例の上記及び他の変形をなし得ることが分かる。
【0047】
【発明の効果】本発明によれば、少なくとも一つのデー
タキャッシュアレイ構造内の余分な場所はキャッシュタ
グを格納するため使用されるので、キャッシュタグを別
の専用の構造に格納する必要は取り除かれる利点があ
る。本発明によれば、2次キャッシュが用いられるの
で、使用するメモリチップの数で記憶容量を決めること
ができる利点が得られる。
【0048】更に、キャッシュタグを冗長的に格納する
ことができるので、キャッシュヒット及びキャッシュミ
スの初期検出を行なうため使用できる利点がある。
【図面の簡単な説明】
【図1】本発明の一実施例のキャッシュメモリ装置の概
略図である。
【図2】マイクロプロセッサと2次キャッシュの間で接
続されたアドレスバス及び制御信号と、キャッシュメモ
リ装置のデータバスの配線図である。
【図3】2次キャッシュの第1の構成の概略図である。
【図4】2次キャッシュの第2の構成の概略図である。
【図5】2次キャッシュの第3の構成の概略図である。
【図6】2次キャッシュで使用される内部バスの配線図
である。
【図7】キャッシュタグの説明図である。
【図8】キャッシュタグセグメントの記憶スキームを示
す図である。
【図9】キャッシュヒット又はミス検出回路を表わす論
理図である。
【図10】キャッシュエントリーのパリティー検査回路
を表わす論理図である。
【図11】書込み動作用のキャッシュコヒーレンシープ
ロトコルを表わすフローチャートである。
【図12】読出し動作用のキャッシュコヒーレンシープ
ロトコルを表わすフローチャートである。
【図13】2次キャッシュヒットを表わすタイミングチ
ャートである。
【図14】2次キャッシュミスを表わすタイミングチャ
ートである。
【図15】主メモリ読出しを伴う2次キャッシュミスを
表わすタイミングチャートである。
【符号の説明】
1 キャッシュメモリ装置 2 マイクロプロセッサ 3 2次キャッシュ 4 キャッシュアドレスバス 5 キャッシュ制御信号 6 キャッシュデータバス 7 主メモリ 8 主メモリアドレスバス 9 主メモリ制御信号 10 FIFO記憶バッファ

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 外部メモリから論理ユニットまで階層化
    された記憶項目を提供するキャッシュメモリ装置であっ
    て:記憶項目の少なくとも一部を格納する記憶項目部
    と、少なくとも一つのキャッシュエントリーを識別する
    キャッシュタグの少なくとも一部を格納するキャッシュ
    タグ部とからなる複数のキャッシュエントリーを有する
    少なくとも一つの単一キャッシュアレイ構造により構成
    され、アドレス信号に応答し少なくとも一つの上記キャ
    ッシュエントリーの内容を読み出すキャッシュアレイ
    と;メモリ要求に応答し、アドレス信号を発生し、所定
    の関係に関して上記キャッシュタグを上記メモリ要求と
    比較する手段を有する論理回路と;上記キャッシュアレ
    イと上記論理回路を相互接続し、上記アドレス信号を上
    記キャッシュアレイに伝達するアドレスバスと;上記キ
    ャッシュアレイと上記論理回路を相互接続し、上記キャ
    ッシュアレイと上記論理回路の間で上記キャッシュタグ
    と上記記憶項目とを伝達するデータバスとからなるキャ
    ッシュメモリ装置。
  2. 【請求項2】 上記各キャッシュエントリーは、少なく
    とも一つの上記キャッシュエントリーのパリティエラー
    を示すパリティ標識を格納するパリティ標識部を更に有
    し;上記データバスは、上記キャッシュアレイと上記論
    理回路の間で上記パリティ標識を伝達するパリティバス
    を更に有し;上記論理回路は、パリティエラーが発生し
    たかどうかを判定するため上記パリティ標識を検査する
    手段と、上記パリティエラーに応じて上記記憶項目を取
    り消す手段とを更に有する請求項1記載のキャッシュメ
    モリ装置。
  3. 【請求項3】 上記キャッシュアレイは連続的なキャッ
    シュエントリーの系列の内容を送出し、 上記論理回路は、キャッシュミスである上記所定の関係
    に応答し、上記キャッシュアレイは上記系列の内容の送
    出を中止すべきであることを示す手段を更に有する請求
    項1記載のキャッシュメモリ装置。
  4. 【請求項4】 上記論理回路は、上記キャッシュアレイ
    が上記連続的なキャッシュエントリーの系列の内容を読
    み出すべきであることを示すため、進行信号を上記キャ
    ッシュアレイに供給し、 上記キャッシュアレイは、上記進行信号の欠落に応答
    し、上記系列の内容の読み出しを終了させる手段を更に
    有する請求項1記載のキャッシュメモリ装置。
  5. 【請求項5】 上記論理回路は、上記アドレス信号が上
    記アドレスバス上でアサートされたこと、及び、上記キ
    ャッシュアレイは第1のキャッシュエントリーの内容を
    送出すべきであることを示すストローブ信号を発生する
    手段と、進行信号がアサートされている間に上記キャッ
    シュアレイが上記連続的なキャッシュエントリーの内容
    を順次に送出すべきであることを示す進行信号を発生す
    る手段とを更に有し;上記キャッシュアレイと上記論理
    回路を相互接続し、上記ストローブ信号と上記進行信号
    を上記キャッシュアレイに伝達する少なくとも一つの制
    御線を更に有する請求項1記載のキャッシュメモリ装
    置。
  6. 【請求項6】 上記キャッシュエントリーは、連続的な
    キャッシュエントリーの系列からなる複数のキャッシュ
    ラインに分類され、 上記キャッシュアレイは上記キャッシュラインの内容を
    上記データバスを介して順次に送出させる手段を更に有
    する請求項1記載のキャッシュメモリ装置。
  7. 【請求項7】 上記各キャッシュラインは、上記各キャ
    ッシュラインに対し少なくとも一つの同一キャッシュタ
    グが対応するキャッシュラインのキャッシュエントリー
    の中の別のキャッシュエントリーに格納された複数の同
    一キャッシュタグによって識別され、 上記比較手段は、第1の同一キャッシュタグと上記メモ
    リ要求の一つとの間の不一致と、初期に検出されたキャ
    ッシュヒットよりなる上記第1の同一キャッシュタグと
    上記メモリ要求の一つとの間の一致と、初期に検出され
    たキャッシュミスよりなる不一致とに関して、対応する
    キャッシュラインの上記同一キャッシュタグの系列内の
    上記第1の同一キャッシュタグを比較する手段を更に有
    する請求項6記載のキャッシュメモリ装置。
  8. 【請求項8】 上記各キャッシュラインは、上記キャッ
    シュラインの上記複数のキャッシュタグ部の中の一つに
    格納された複数のセグメントに分割されたキャッシュタ
    グによって識別され、 上記論理回路は、上記データバスを介して上記キャッシ
    ュアレイから順次に送出されたキャッシュラインの複数
    のキャッシュタグセグメントを受ける手段と、各キャッ
    シュタグセグメントを上記メモリ要求と比較する手段
    と、上記キャッシュタグセグメントの一つと上記メモリ
    要求の間の不一致に応じて取消信号を発生する手段とを
    更に有する請求項6記載のキャッシュメモリ装置。
  9. 【請求項9】 上記各キャッシュタグは有効性標識を有
    し、 上記論理回路は、上記有効性標識がクリアされているか
    どうかを判定するため上記キャッシュタグの有効性標識
    を検査し、これにより上記キャッシュラインは無効な記
    憶項目を含むことを示す手段と、クリアされた有効性標
    識に応じて上記キャッシュアレイと上記論理回路の間で
    伝達された記憶項目を取り消す手段とを更に有する請求
    項1記載のキャッシュメモリ装置。
  10. 【請求項10】 上記各キャッシュタグはパリティ標識
    を有し、 上記論理回路は、パリティエラーが発生したかどうかを
    判定するため対応するキャッシュラインのキャッシュタ
    グの上記パリティ標識を検査する手段と、上記対応する
    キャッシュラインを抹消する手段とを更に有する請求項
    1記載のキャッシュメモリ装置。
  11. 【請求項11】 階層化された記憶項目を格納する部分
    と、上記階層化された記憶項目を識別するキャッシュタ
    グを格納する部分とからなる単一キャッシュアレイ構造
    内に上記階層化された記憶項目と上記キャッシュタグと
    を格納するキャッシュメモリ装置を使用する方法であっ
    て:実行ユニットからのメモリ要求に応じて論理回路を
    用いてアドレス信号を発生し、上記論理回路と上記キャ
    ッシュアレイ構造を相互接続するアドレスバスに沿って
    上記アドレス信号をアサートする段階と;上記構造の連
    続的な部分にあり、複数の上記階層化された記憶項目と
    上記キャッシュラインに対応する一つのキャッシュタグ
    とからなる複数のキャッシュエントリーよりなるキャッ
    シュラインを、上記アドレス信号に応じて選択する段階
    と;上記複数の階層化された記憶項目の各々と、上記対
    応するキャッシュタグの少なくとも一部を、上記論理回
    路と上記キャッシュアレイ構造を相互接続するデータバ
    スに沿って上記論理回路に順次に送る段階と;上記複数
    のキャッシュエントリーの中の第1のキャッシュエント
    リーの受取の際に、上記キャッシュタグと上記メモリ要
    求の間の一致よりなる初期キャッシュヒット、又は、上
    記キャッシュタグと上記メモリ要求の間の不一致よりな
    る初期キャッシュミスを検出する段階とからなる方法。
  12. 【請求項12】 上記検出段階でキャッシュミスが検出
    されたとき、上記複数のキャッシュエントリーの中の上
    記第1のキャッシュエントリーの受取の前に受けられた
    上記複数の階層化された記憶項目の中の記憶項目を取り
    消すため、上記実行ユニットへの取消信号をアサートす
    る段階を更に有する請求項11記載の方法。
  13. 【請求項13】 最初に、上記アドレス信号が上記アド
    レスバス上でアサートされていることを示すストローブ
    信号を上記アドレス信号と共にアサートする段階と;次
    に、上記進行信号がアサートされなくなり、全てのキャ
    ッシュラインが送出されるまで、上記構造は上記複数の
    連続的なキャッシュエントリーの各々を連続的に送出す
    べきであることを示す進行信号をアサートする段階とを
    更に有する請求項11記載の方法。
  14. 【請求項14】 上記構造は、データパリティ標識を格
    納する部分を更に有し、上記各キャッシュメモリは、上
    記キャッシュエントリー内の上記複数の階層化された記
    憶項目の中の一つに各々が対応する複数のデータパリテ
    ィ標識を更に有し、 上記複数の階層化された記憶項目の各々の受取の際の上
    記データパリティ標識と、上記複数のキャッシュエント
    リーの中の第1のキャッシュエントリーの受取中の対応
    するデータパリティ標識とを用いてデータパリティエラ
    ーが発生したかどうかを判定する段階と;データパリテ
    ィエラーを有する上記複数の階層化された記憶項目の中
    の一つの受取中に受けられたデータパリティエラーの検
    出の際に上記複数の階層化された記憶項目の中の記憶項
    目を取り消す段階とを更に有する請求項11記載の方
    法。
  15. 【請求項15】 上記各キャッシュタグはキャッシュタ
    グパリティ標識を更に有し、 上記複数のキャッシュエントリーの中の第1のキャッシ
    ュエントリーの受取の際に上記キャッシュタグパリティ
    標識を用いてキャッシュタグパリティエラーが発生した
    かどうかを判定する段階と;上記複数の階層化された記
    憶項目の各々の受取の際の上記データパリティ標識と、
    上記複数のキャッシュエントリーの中の第1のキャッシ
    ュエントリーの受取後の対応するデータパリティ標識と
    を用いてデータパリティエラーが発生したかどうかを判
    定する段階と;キャッシュタグパリティエラー又はデー
    タパリティエラーの検出の際に、パリティエラー信号を
    上記実行ユニットに出し、上記キャッシュラインを抹消
    する段階とを更に有する請求項14記載の方法。
  16. 【請求項16】 階層化された記憶項目を格納する部分
    と、上記階層化された記憶項目を識別するキャッシュタ
    グを格納する部分とからなる単一キャッシュアレイ構造
    内に上記階層化された記憶項目と上記キャッシュタグと
    を格納するキャッシュメモリ装置であって:実行ユニッ
    トからのメモリ要求に応じて論理回路を用いてアドレス
    信号を発生する手段、及び、上記論理回路と上記キャッ
    シュアレイ構造を相互接続するアドレスバスに沿って上
    記アドレス信号をアサートする手段と;上記構造の連続
    的な部分にあり、複数の上記階層化された記憶項目と上
    記キャッシュラインに対応する一つのキャッシュタグと
    からなる複数のキャッシュエントリーよりなるキャッシ
    ュラインを、上記アドレス信号に応じて選択する手段
    と;上記複数の階層化された記憶項目の各々と、上記対
    応するキャッシュタグの少なくとも一部を、上記論理回
    路と上記キャッシュアレイ構造を相互接続するデータバ
    スに沿って上記論理回路に順次に送る手段と;上記複数
    のキャッシュエントリーの中の第1のキャッシュエント
    リーの受取の際に、上記キャッシュタグと上記メモリ要
    求の間の一致よりなる初期キャッシュヒット、又は、上
    記キャッシュタグと上記メモリ要求の間の不一致よりな
    る初期キャッシュミスを検出する手段とからなるキャッ
    シュメモリ装置。
  17. 【請求項17】 上記検出手段によってキャッシュミス
    が検出されたとき、上記複数のキャッシュエントリーの
    中の上記第1のキャッシュエントリーの受取の前に受け
    られた上記複数の階層化された記憶項目の中の記憶項目
    を取り消すため、上記実行ユニットへの取消信号をアサ
    ートする手段を更に有する請求項16記載のキャッシュ
    メモリ装置。
  18. 【請求項18】 上記アドレス信号が上記アドレスバス
    上でアサートされていることを示すストローブ信号を上
    記アドレス信号と共にアサートする手段と;上記進行信
    号がアサートされなくなり、全てのキャッシュラインが
    送出されるまで、上記構造は上記複数の連続的なキャッ
    シュエントリーの各々を連続的に送出すべきであること
    を示す進行信号をアサートする手段とを更に有する請求
    項16記載のキャッシュメモリ装置。
  19. 【請求項19】 上記構造は、データパリティ標識を格
    納する部分を更に有し、上記各キャッシュメモリは、上
    記キャッシュエントリー内の上記複数の階層化された記
    憶項目の中の一つに各々が対応する複数のデータパリテ
    ィ標識を更に有し:上記複数の階層化された記憶項目の
    各々の受取の際の上記データパリティ標識と、上記複数
    のキャッシュエントリーの中の第1のキャッシュエント
    リーの受取中の対応するデータパリティ標識とを用いて
    データパリティエラーが発生したかどうかを判定する手
    段と;データパリティエラーを有する上記複数の階層化
    された記憶項目の中の一つの受取中に受けられたデータ
    パリティエラーの検出の際に上記複数の階層化された記
    憶項目の中の記憶項目を取り消す手段とを更に有する請
    求項16記載のキャッシュメモリ装置。
  20. 【請求項20】 上記各キャッシュタグはキャッシュタ
    グパリティ標識を更に有し、 上記複数のキャッシュエントリーの中の第1のキャッシ
    ュエントリーの受取の際に上記キャッシュタグパリティ
    標識を用いてキャッシュタグパリティエラーが発生した
    かどうかを判定する手段と;上記複数の階層化された記
    憶項目の各々の受取の際の上記データパリティ標識と、
    上記複数のキャッシュエントリーの中の第1のキャッシ
    ュエントリーの受取後の対応するデータパリティ標識と
    を用いてデータパリティエラーが発生したかどうかを判
    定する手段と;キャッシュタグパリティエラー又はデー
    タパリティエラーの検出の際に、パリティエラー信号を
    上記実行ユニットに出し、上記キャッシュラインを抹消
    する手段とを更に有する請求項19記載のキャッシュメ
    モリ装置。
  21. 【請求項21】 主メモリからキャッシュメモリまで階
    層化された記憶項目を、上記主メモリ、又は、もし存在
    するならば上記キャッシュメモリの何れかから選択的に
    提供するキャッシュメモリ装置であって:受けられたア
    ドレスに応答し、上記記憶項目と上記各記憶項目の識別
    用の対応するキャッシュタグとを読み出す上記キャッシ
    ュメモリ内で、上記階層化された各記憶項目の少なくと
    も一部(記憶項目)と、上記対応するキャッシュタグの
    少なくとも一部(キャッシュタグ)とを格納する少なく
    とも一つの単一キャッシュメモリアレイと;所定の関係
    に関して上記受けられたキャッシュタグと上記メモリア
    クセスの要求を比較する手段を有し、上記主メモリへの
    メモリアクセスの要求に応答し、アドレスを発生する論
    理回路と;上記少なくとも一つの単一メモリアレイと上
    記論理回路の間で、上記アドレスと、上記記憶項目と、
    上記キャッシュタグとを伝達する少なくとも一つのバス
    とからなるキャッシュメモリ装置。
  22. 【請求項22】 上記各記憶項目用の複数の階層化され
    た記憶項目部分と、上記階層化され記憶項目部分の一つ
    に対応する上記キャッシュタグ用の複数のキャッシュタ
    グ部分とがあり、 上記階層化され記憶項目部分と、上記対応するキャッシ
    ュタグ部分は、互いに関連して上記単一キャッシュメモ
    リアレイで格納、読み出しされる請求項21記載のキャ
    ッシュメモリ装置。
  23. 【請求項23】 各記憶項目の上記キャッシュタグは、
    同一記憶項目の上記記憶項目部分の中の別々の記憶項目
    部分に各々対応し複数の2重キャッシュタグ部分からな
    る2重キャッシュタグを有し、 比較手段は、系列内で上記各2重キャッシュタグ部分を
    比較し、上記メモリアクセスの要求と、上記一つの記憶
    項目の上記2重キャッシュタグ部分の系列の中の第1の
    2重キャッシュタグ部分の間の不一致を検出し、不一致
    の標識を形成するため適合されている請求項22記載の
    キャッシュメモリ装置。
  24. 【請求項24】 主メモリからキャッシュメモリまで階
    層化された記憶項目を、上記主メモリ、又は、もし存在
    するならば上記キャッシュメモリの何れかから選択的に
    提供するキャッシュメモリ装置であって:上記キャッシ
    ュメモリにおいて、複数の記憶項目部分からなる複数の
    記憶項目と、各複製が対応する上記記憶項目を識別する
    2重のキャッシュタグは、上記各記憶項目部分が上記2
    重のキャッシュタグの上記複製の一方に関連して格納さ
    れ、キャッシュタグメモリは、受けられたアドレスに応
    答し、上記記憶項目と、対応する上記キャッシュタグの
    一つの上記複製の一方を読み出し;所定の関係に関して
    上記キャッシュタグの一つの上記複製の一方の各々をも
    う一方の複製の前に比較する手段を有し、上記主メモリ
    へのメモリアクセスの要求に応答し、アドレスを発生す
    る論理回路と;上記キャッシュメモリ構造と上記論理回
    路の間で、上記アドレスと、上記記憶項目と、上記対応
    するキャッシュタグの一つの複製の一方とを伝達する少
    なくとも一つのバスとを有するキャッシュメモリ装置。
  25. 【請求項25】 主メモリからキャッシュメモリまで階
    層化された記憶項目を、上記主メモリ、又は、もし存在
    するならば上記キャッシュメモリの何れかから、論理回
    路に選択的に提供するキャッシュメモリ装置で使用する
    キャッシュメモリであって:複数の記憶項目部分からな
    る複数の記憶項目と、各複製が対応する上記記憶項目を
    識別する2重のキャッシュタグを、上記各記憶項目部分
    が上記2重のキャッシュタグの上記複製の一方に関連す
    るよう格納し、キャッシュタグメモリは、上記論理回路
    から受けたアドレスに応答し、系列内の上記記憶項目
    と、対応する上記キャッシュタグの一つの上記複製の一
    方を読み出す手段と;上記キャッシュメモリ構造と上記
    論理回路の間で、上記アドレスと、上記記憶項目と、上
    記対応するキャッシュタグの一つの複製の一方とを伝達
    する少なくとも一つのバスとからなるキャッシュメモ
    リ。
  26. 【請求項26】 外部メモリからメモリ要求に所定の関
    係があるキャッシュタグを有する記憶項目の要求からな
    るメモリ要求に応答してアドレス信号を発生する論理回
    路まで階層化された記憶項目を提供するキャッシュメモ
    リであって:記憶項目の少なくとも一部を格納する記憶
    項目部と、少なくとも一つのキャッシュエントリーを識
    別するキャッシュタグの少なくとも一部を格納するキャ
    ッシュタグ部とからなる複数のキャッシュエントリーを
    有する少なくとも一つの単一キャッシュアレイ構造によ
    り構成されるキャッシュアレイと;上記キャッシュアレ
    イと上記論理回路を相互接続するアドレスバスを介して
    上記論理回路から送られたアドレス信号に応答し、上記
    キャッシュアレイと上記論理回路を相互接続するデータ
    バスを介して少なくとも一つの上記キャッシュエントリ
    ーの内容を読み出す手段とからなるキャッシュメモリ。
JP05802596A 1995-03-17 1996-03-14 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法 Expired - Lifetime JP3709235B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US406305 1995-03-17
US08/406,305 US5617347A (en) 1995-03-17 1995-03-17 Cache memory system and method thereof for storing a staged memory item and a cache tag within a single cache array structure

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005103792A Division JP3799050B2 (ja) 1995-03-17 2005-03-31 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法

Publications (2)

Publication Number Publication Date
JPH08272688A true JPH08272688A (ja) 1996-10-18
JP3709235B2 JP3709235B2 (ja) 2005-10-26

Family

ID=23607394

Family Applications (2)

Application Number Title Priority Date Filing Date
JP05802596A Expired - Lifetime JP3709235B2 (ja) 1995-03-17 1996-03-14 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法
JP2005103792A Expired - Lifetime JP3799050B2 (ja) 1995-03-17 2005-03-31 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2005103792A Expired - Lifetime JP3799050B2 (ja) 1995-03-17 2005-03-31 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法

Country Status (2)

Country Link
US (1) US5617347A (ja)
JP (2) JP3709235B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6490636B1 (en) 1998-06-12 2002-12-03 Nec Corporation Data processing system for improved input/output command processing
JP2009157775A (ja) * 2007-12-27 2009-07-16 Hitachi Ltd プロセッサ

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3116827B2 (ja) * 1996-07-16 2000-12-11 日本電気株式会社 キャッシュメモリ制御装置
US5916314A (en) * 1996-09-11 1999-06-29 Sequent Computer Systems, Inc. Method and apparatus for cache tag mirroring
US5890219A (en) * 1996-11-27 1999-03-30 Emc Corporation Redundant writing of data to cached storage system
US5884055A (en) * 1996-11-27 1999-03-16 Emc Corporation Method and apparatus including a shared resource and multiple processors running a common control program accessing the shared resource
US5890207A (en) * 1996-11-27 1999-03-30 Emc Corporation High performance integrated cached storage device
US5956746A (en) * 1997-08-13 1999-09-21 Intel Corporation Computer system having tag information in a processor and cache memory
US6446169B1 (en) 1999-08-31 2002-09-03 Micron Technology, Inc. SRAM with tag and data arrays for private external microprocessor bus
US6434665B1 (en) * 1999-10-01 2002-08-13 Stmicroelectronics, Inc. Cache memory store buffer
US7240277B2 (en) * 2003-09-26 2007-07-03 Texas Instruments Incorporated Memory error detection reporting
US20050144397A1 (en) * 2003-12-29 2005-06-30 Rudd Kevin W. Method and apparatus for enabling volatile shared data across caches in a coherent memory multiprocessor system to reduce coherency traffic
US7275202B2 (en) * 2004-04-07 2007-09-25 International Business Machines Corporation Method, system and program product for autonomous error recovery for memory devices
JP2006190402A (ja) * 2005-01-07 2006-07-20 Renesas Technology Corp 半導体装置
US20080052488A1 (en) * 2006-05-10 2008-02-28 International Business Machines Corporation Method for a Hash Table Lookup and Processor Cache
US9563556B2 (en) 2010-11-04 2017-02-07 Rambus Inc. Techniques for storing data and tags in different memory arrays
US9215269B2 (en) 2012-08-23 2015-12-15 Amazon Technologies, Inc. Predictive caching for content
US9712854B2 (en) * 2012-09-06 2017-07-18 Alcatel Lucent Cost-aware cloud-based content delivery
US9588874B2 (en) * 2012-12-14 2017-03-07 Microsoft Technology Licensing, Llc Remote device automation using a device services bridge
US9465740B2 (en) * 2013-04-11 2016-10-11 Apple Inc. Coherence processing with pre-kill mechanism to avoid duplicated transaction identifiers
US9608890B1 (en) * 2013-12-23 2017-03-28 Kabam, Inc. System and method for forwarding external notifications of events in a virtual space from a user device to a presentation control device
US9544388B1 (en) * 2014-05-09 2017-01-10 Amazon Technologies, Inc. Client-side predictive caching for content
US9326046B1 (en) 2015-03-19 2016-04-26 Amazon Technologies, Inc. Uninterrupted playback of video streams using lower quality cached files
CN110737396B (zh) * 2018-07-20 2023-08-11 伊姆西Ip控股有限责任公司 数据复制的方法、设备和计算机存储介质
WO2020190841A1 (en) * 2019-03-18 2020-09-24 Rambus Inc. System application of dram component with cache mode

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067078A (en) * 1989-04-17 1991-11-19 Motorola, Inc. Cache which provides status information
US5307477A (en) * 1989-12-01 1994-04-26 Mips Computer Systems, Inc. Two-level cache memory system
JP2938511B2 (ja) * 1990-03-30 1999-08-23 三菱電機株式会社 半導体記憶装置
JP2822588B2 (ja) * 1990-04-30 1998-11-11 日本電気株式会社 キャッシュメモリ装置
CA2043493C (en) * 1990-10-05 1997-04-01 Ricky C. Hetherington Hierarchical integrated circuit cache memory
US5210845A (en) * 1990-11-28 1993-05-11 Intel Corporation Controller for two-way set associative cache
JP2646854B2 (ja) * 1990-12-18 1997-08-27 三菱電機株式会社 マイクロプロセッサ
US5339399A (en) * 1991-04-12 1994-08-16 Intel Corporation Cache controller that alternately selects for presentation to a tag RAM a current address latch and a next address latch which hold addresses captured on an input bus
US5228134A (en) * 1991-06-04 1993-07-13 Intel Corporation Cache memory integrated circuit for use with a synchronous central processor bus and an asynchronous memory bus
US5293603A (en) * 1991-06-04 1994-03-08 Intel Corporation Cache subsystem for microprocessor based computer system with synchronous and asynchronous data path
US5353424A (en) * 1991-11-19 1994-10-04 Digital Equipment Corporation Fast tag compare and bank select in set associative cache
US5345576A (en) * 1991-12-31 1994-09-06 Intel Corporation Microprocessor simultaneously issues an access to an external cache over an external cache bus and to an internal cache, cancels the external cache access on an internal cache hit, and reissues the access over a main memory bus on an external cache miss
US5471415A (en) * 1993-06-30 1995-11-28 Sgs-Thomson Microelectronics, Inc. Cache tag memory
US5499204A (en) * 1994-07-05 1996-03-12 Motorola, Inc. Memory cache with interlaced data and method of operation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6490636B1 (en) 1998-06-12 2002-12-03 Nec Corporation Data processing system for improved input/output command processing
JP2009157775A (ja) * 2007-12-27 2009-07-16 Hitachi Ltd プロセッサ
JP4484923B2 (ja) * 2007-12-27 2010-06-16 株式会社日立製作所 プロセッサ
US8234453B2 (en) 2007-12-27 2012-07-31 Hitachi, Ltd. Processor having a cache memory which is comprised of a plurality of large scale integration

Also Published As

Publication number Publication date
JP3709235B2 (ja) 2005-10-26
JP3799050B2 (ja) 2006-07-19
JP2005202986A (ja) 2005-07-28
US5617347A (en) 1997-04-01

Similar Documents

Publication Publication Date Title
JP3799050B2 (ja) 階層化された記憶項目とキャッシュタグを単一キャッシュアレイ構造に格納するキャッシュメモリ装置及び方法
US6665774B2 (en) Vector and scalar data cache for a vector multiprocessor
US6751720B2 (en) Method and system for detecting and resolving virtual address synonyms in a two-level cache hierarchy
US12001282B2 (en) Write control for read-modify-write operations in cache memory
US4332010A (en) Cache synonym detection and handling mechanism
US4995041A (en) Write back buffer with error correcting capabilities
US5070502A (en) Defect tolerant set associative cache
US6138209A (en) Data processing system and multi-way set associative cache utilizing class predict data structure and method thereof
US5388247A (en) History buffer control to reduce unnecessary allocations in a memory stream buffer
US5210843A (en) Pseudo set-associative memory caching arrangement
US5696937A (en) Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses
US5500950A (en) Data processor with speculative data transfer and address-free retry
JPH0345407B2 (ja)
GB2296353A (en) Cache memory system with reduced request-blocking
US11720495B2 (en) Multi-level cache security
US20090019306A1 (en) Protecting tag information in a multi-level cache hierarchy
US5590310A (en) Method and structure for data integrity in a multiple level cache system
US5636354A (en) Data processor with serially accessed set associative memory cache interface and method
US5574883A (en) Single chip processing unit providing immediate availability of frequently used microcode instruction words
US6434665B1 (en) Cache memory store buffer
US12038840B2 (en) Multi-level cache security
JPH07234819A (ja) キャッシュメモリ
JPH01296360A (ja) 疑似セツト連想メモリ・キヤツシユ配置
JP3171639B2 (ja) データ処理装置
JP2868655B2 (ja) キャッシュメモリ制御方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040601

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20040601

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040618

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20040825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041203

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050308

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050331

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050527

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: 20050802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050808

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090812

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090812

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090812

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100812

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110812

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110812

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110812

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110812

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120812

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130812

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term