JP2008003919A - アクセス制御キャッシュ装置及び方法 - Google Patents

アクセス制御キャッシュ装置及び方法 Download PDF

Info

Publication number
JP2008003919A
JP2008003919A JP2006173906A JP2006173906A JP2008003919A JP 2008003919 A JP2008003919 A JP 2008003919A JP 2006173906 A JP2006173906 A JP 2006173906A JP 2006173906 A JP2006173906 A JP 2006173906A JP 2008003919 A JP2008003919 A JP 2008003919A
Authority
JP
Japan
Prior art keywords
cache
line
access control
instruction
access
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
JP2006173906A
Other languages
English (en)
Other versions
JP4220537B2 (ja
Inventor
Shigeta Kuninobu
茂太 國信
Akinori Ota
暁率 太田
Hiromasa Shin
博正 進
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2006173906A priority Critical patent/JP4220537B2/ja
Priority to EP07252524A priority patent/EP1870815A1/en
Priority to US11/821,331 priority patent/US20080016292A1/en
Priority to CNB2007101126331A priority patent/CN100538666C/zh
Publication of JP2008003919A publication Critical patent/JP2008003919A/ja
Application granted granted Critical
Publication of JP4220537B2 publication Critical patent/JP4220537B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1483Protection against unauthorised use of memory or access to memory by checking the subject access rights using an access-table, e.g. matrix or list
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】MMP方式と同等あるいはより少ないキャッシュ領域とする場合であっても、キャッシュヒット率がより高くなるようなアクセス制御キャッシュ装置及び方法を提供する。
【解決手段】アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュと、CPUが実行しようとするプログラムのアセンブラ命令毎にオブジェクトコードを受け取ってラインを決定するライン決定装置と、決定されたアクセス制御キャッシュのラインをアクセスし、プログラムのアクセス先アドレスがアドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定装置と、を具備する。
【選択図】図1

Description

本発明はアクセス制御キャッシュの高速化に寄与する装置及び方法に関する。
一般に、プログラムの命令毎にアクセス制御表の情報を参照すると実行速度が遅くなるため、高速なメモリからなるアクセス制御キャッシュ上にアクセス制御表の一部を配置するようにしている。そして、プログラム命令がアクセスしようとするメモリ領域に対するアクセス制御情報が同アクセス制御キャッシュ上に配置されていない場合(キャッシュミス)に限り、アクセス制御表を参照するようにしている。
既存の方法として、Mondorian Memory Protection方式(MMP;例えば下記非特許文献1を参照。)では、プログラムの実行環境が保持する汎用レジスタの本数に対応する分だけアクセス制御キャッシュ領域を用意し、プログラム命令がアクセスしようとするメモリアドレスを格納したレジスタ番号をキーとし、キーに対応するキャッシュ領域を参照している。
"Mondrian Memory Protection",Emmett Witchel,Josh Cates,and Krste Asanovic,Tenth International Conference on Architectural Support for Programming Languages and Operating Systems(ASPLOS−X),San Jose,CA,October 2002.
本発明はMMP方式と同等あるいはより少ないキャッシュ領域とする場合であっても、キャッシュヒット率がより高くなるようなアクセス制御キャッシュ装置及び方法を提供することを目的とする。
本発明の一観点に係るアクセス制御キャッシュ装置は、アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュと、CPUが実行しようとするプログラムのアセンブラ命令毎に、該アセンブラ命令のオブジェクトコードを受け取り、該オブジェクトコードに基づいて前記ラインを決定するライン決定装置と、前記アクセス制御キャッシュの前記ラインをアクセスし、前記プログラムのアクセス先アドレスが前記アドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定装置と、を具備する。
本発明によれば、MMP方式と同等あるいはより少ないキャッシュ領域とする場合であっても、キャッシュヒット率がより高くなるようなアクセス制御キャッシュ装置及び方法を提供できる。
アクセス制御キャッシュ方式においてキャッシュのヒット率を上げるためには、プログラムの命令がアクセスしようとするメモリ領域を予測するための情報(キー)をうまく抽出し、参照するキャッシュ領域の決定に利用することが重要である。MMP方式において、プログラムの命令がアクセスしようとするメモリアドレスを格納したレジスタ番号をキーとしているのは、プログラムの命令がアクセスしようとするメモリアドレスを格納したレジスタ番号と、実際にアクセスするメモリ領域との間に相関関係があることを仮定しているためである。
これに対し本実施形態に係るアクセス制御キャッシュ装置は、キャッシュのヒット率をより向上するために、汎用レジスタ番号ではなくプログラムが実行しようとするアセンブラ命令に基づく情報をキーとして用いることとする。プログラムの命令がアクセスしようとするメモリ領域の予測に、アセンブラ命令に基づくキーを利用することが有効である理由は次の通りである。すなわち、一般的にアセンブラ命令はメモリに書き込む命令(Write命令)、メモリから読み出す命令(Read命令)、それ以外の実行命令番地が変更する命令(Execute命令)の3種類に分類することができる。一方、一般的にプログラムをコンパイルするコンパイラやリンカは、メモリ空間を、読み出しのみ許可する領域、読み書き可能な領域、実行命令を格納する領域等に区別し、プログラムを配置する。したがって、実行しようとするアセンブラ命令と実際にアクセスするメモリ領域との間には相関関係があると考えられる。
図1に示すように、一実施形態に係るアクセス制御キャッシュ装置13は、図示しないメモリから読み出されたプログラム10を実行するCPU(中央処理装置)11に接続されており、例えば高速のSRAM等からなるアクセス制御キャッシュ18を制御するものである。
CPU11が実行しようとするアセンブラ命令又はアセンブラ命令の実行形式(Write命令、Read命令、Execute命令)がライン決定装置14に入力されると、ライン決定装置14は、入力された情報を元に、参照するアクセス制御キャッシュ18のラインを決定する。アクセス制御キャッシュ18のラインが決定されると、連想度分のアドレス区間情報がキャッシュ判定装置15に入力される。ここで、「連想度」とは、同時にいくつのキャッシュ内情報のキャッシュ判定が行えるかを表した数のことをいう。連想度の数だけキャッシュ判定装置15が必要となる。例えば連想度が「3」であれば、キャッシュ判定装置15は3台必要であり、3つのキャッシュ判定装置15が並列動作することにより、並列的に3つのキャッシュ判定処理が実行される。
キャッシュ判定装置15の各々はアセンブラ命令がアクセスしようとするメモリアドレスが、入力されたアドレス区間情報に含まれているかどうかを判定する。すなわち、アクセスしようとするメモリアドレスが含まれているアドレス区間情報が存在するならば、そのアドレス区間情報に対応するアクセス許可情報がマルチプレクサ16から出力される。OR回路17は、連想度に対応して複数設けられたいずれかのキャッシュ判定装置15においてキャッシュヒットが発生したら、その旨を表す信号を出力する。
ライン決定装置14は、CPU11が実行しようとするプログラムのアセンブラ命令毎に、アセンブラ命令のオブジェクトコード/命令の実行形式を受け取り、この受け取った情報からアクセス制御キャッシュ18におけるラインを決定するものである。このライン決定装置14について、図2乃至図5を参照していくつかの具体的構成例を説明する。
図2に示すライン決定装置14aは、CPU11が実行しようとするアセンブラ命令に対応するオブジェクトコードを入力とする。入力されたオブジェクトコードはライン決定装置14a内部のハッシュ関数14a1への入力となる。ライン決定装置14aはハッシュ関数14a1からのハッシュ値を出力する。このハッシュ値がアクセス制御キャッシュ18においてラインを選択する際のライン番号に用いられる。ここで、ハッシュ関数14a1の入力と出力の関係は一対一である必要はない。すなわち、複数のオブジェクトコードに対して1つのライン番号を選択させることもできる。
図3に示すライン決定装置14bは、図2に示したライン決定装置14aと同様にCPU11が実行しようとするアセンブラ命令に対応するオブジェクトコードを入力とする。ライン決定装置14bは、入力されたオブジェクトコードをキーとしてライン決定装置14b内部に設けられた対応表14b1を検索し、対応するライン番号を選択する。
図4に示すライン決定装置14cは、CPU11が実行しようとするアセンブラ命令の種類(例えば、Read命令、Write命令、又はExecute命令の3種類のいずれか)を表す情報(命令種別識別情報)を入力とする。Read命令とはアセンブラ命令がメモリからデータを読み込もうとする命令のことであり、Write命令とはアセンブラ命令がデータをメモリへ書き込もうとする命令のことであり、Execute命令とは実行命令番地を変更する命令である。
入力された命令の種類はライン決定装置14c内部のハッシュ関数14c1の入力となる。ライン決定装置14cはハッシュ関数14c1からのハッシュ値を出力する。このハッシュ値がアクセス制御キャッシュ18においてラインを選択する際のライン番号に用いられる。ここで、ハッシュ関数の入力と出力の関係は一対一である必要はない。すなわち、複数の命令の種類に対して1つのライン番号を選択させることもできる。
図5に示すライン決定装置14dは、図4に示したライン決定装置14cと同様にCPU11が実行しようとするアセンブラ命令の種類(例えば、Read命令、Write命令、又はExecute命令の3種類のいずれか)を表す情報(命令種別識別情報)を入力とする。ライン決定装置14dは、入力された命令の種類をキーとしてライン決定装置内14d内部の対応表14d1を検索し、対応するライン番号を選択する。
図6に示すように、アクセス情報キャッシュ18内に格納されるアクセス制御表20には、全メモリ区間に対するアクセス制御情報が記載される。各アクセス制御情報は、アドレス区間情報21とアクセス許可情報22とが含まれている。
本実施形態との比較のために、上述したMMP方式について図7を参照して説明する。
MMP方式では、アクセス先アドレスを格納した汎用レジスタの番号30をキーとして、参照するキャッシュ領域を決定する。MMP方式のキャッシュ判定装置31は、アクセス先アドレス32が与えられると、アクセス先アドレスを格納した汎用レジスタ番号(この例ではレジスタ#1)に対応するアドレス区間について、アクセス許可情報33を得る。
このようなMMP方式と本実施形態について、命令セットシミュレータ上での実装例においてキャッシュミスが両者でどの程度発生するかを計測することにより比較した。以下、図8に示す本実施形態に係るアクセス制御キャッシュ装置の動作の流れに沿って説明する。図8の動作において、プログラムの実行速度にオーバーヘッドが発生するのはソフトウェア処理に移行するキャッシュミスが発生した場合のみであることから、キャッシュミスが減少するとオーバーヘッドも比例して減少する。
(ステップS1) アクセス制御キャッシュ装置13はプログラム10が実行しようとする命令からキーを抽出する。上述したMMP方式では、アクセス先アドレスを格納した汎用アドレス番号をキーとする。これに対し本実施形態では、CPU11が実行するアセンブラ命令からキーを抽出する。具体的には、アセンブラ命令に対応するオブジェクトコードもしくはアセンブラ命令の種類をキーとする。
(ステップS2) キーに対応するキャッシュ領域を参照する。MMP方式では、キーとなる汎用レジスタ番号に対応するキャッシュ領域を参照する。本実施形態におけるプログラム実行環境では汎用レジスタが16本あるので、全キャッシュ領域のサイズはアクセス制御情報16個分である。
一方、本実施形態では、実行しようとするアセンブラ命令のオブジェクトコードもしくは実行形式から、ライン決定装置14がハッシュ関数・対応表等を利用して、参照するキャッシュのラインを決定する(ライン決定装置14の構成例については図2乃至図5を参照)。本実施形態において、キャッシュ領域のサイズは、例えば8個又は12個のアクセス制御情報に相当する。
(ステップS3)アクセスしようとするアドレスは、アクセス制御キャッシュ18内のアドレス区間情報に含まれているかをキャッシュ判定装置15が判定する。含まれている場合はキャッシュヒットであり、含まれていない場合はキャッシュミスとなる。
(ステップS4)上記ステップS3においてキャッシュヒットの場合は、アクセス制御キャッシュ18内で対応するアクセス許可情報が示す内容からアクセスの可否を判定する。
(ステップS5)上記ステップS4においてアクセス可であると判定されたならば、命令実行を継続する。
(ステップS6)上記ステップS4においてアクセス不可と判定された場合は命令実行をさせない(許可しない)。
(ステップS7)上記ステップS3において、キャッシュヒットしなかった場合は、ソフトウェア処理に移行し、アクセス制御表20を二分探索し、対応するアクセス制御情報を探す。
(ステップS8)上記ステップS7において見つかったアクセス制御情報をアクセス制御キャッシュ18に入れる(キャッシュを更新)。その際、該キャッシュ18内の最も古いアクセス制御情報を該キャッシュ18から追い出す(FIFO)。ステップS7及びS8によるソフトウェア処理では、時間オーバーヘッドが発生し、実行速度が低下する。
アクセス制御の対象としてプログラム10及びそれらのプログラム10から作成されるアクセス制御表20に含まれるメモリ区間数は以下の通りであった。アクセス制御表20におけるアドレス区間情報21については、リンカがデフォルトの設定で、メモリ空間を読み出しのみ許可する領域、読み書き可能な領域、実行命令を格納する領域等に区別した時の各区間で分けている。また、アクセス制御表20におけるアクセス許可情報22は、リンカが設定する読み出しのみ許可する領域、読み書き可能な領域、実行命令を格納する領域に対応して、「r−−」,「rw−」,「r−e」等を設定している(図6参照)。
アクセス制御の対象プログラム10としては、例えば以下の2つを用いた。
(1)文字列検査アルゴリズム(文字列内から指定した文字列を探すプログラム)
(2)Dijkstraアルゴリズム(与えられたグラフから最短経路を探すプログラム)
これらのプログラムは、MiBenchと呼ばれる米国ミシガン大のリリースする組込み用途ベンチマークキットに含まれているものである。
アクセス制御表20に含まれるメモリ区間数は、文字列検査アルゴリズムについては19個であり、Dijkstraアルゴリズムについては23個である。
MMP方式については、今回使用した命令セットシミュレータは16個の汎用レジスタをもっている。そこで、キーであるアクセス先アドレスを格納した汎用アドレス番号と一対一対応するようにキャッシュ領域のサイズをアクセス制御情報16個分用意した。例えば、アクセス先アドレスを格納した汎用アドレス番号が1番なら1番目のキャッシュ領域を参照する(図7参照)。
本実施形態については、アセンブラ命令の実行形式(Read命令・Write命令・Execute命令)をキーをして、キャッシュにおけるラインを選択する。ただし、連想度は4とした。上述したように、「連想度」とは同時にいくつのキャッシュ内情報のキャッシュ判定が行えるかを表した数のことである。連想度の数だけ図1における、キャッシュ判定装置15が必要となる。また、本実施形態では下記条件1、2を与えた。
(条件1):キャッシュにおけるラインを2本用意し、アセンブラ命令の実行形式が、Read命令又はWrite命令ならライン1を選択。Execute命令ならライン2を選択するようにハッシュ関数又は対応表をライン決定装置14にもたせた場合(ライン数2、連想度4であるので、キャッシュサイズはアクセス制御情報8個分)。
(条件2):キャッシュにおけるラインを3本用意し、アセンブラ命令の実行形式が、Readキャッシュサイズ、Write命令ならライン2、Execute命令ならライン3を選択するようにハッシュ関数又は対応表をライン決定装置14にもたせた場合(ライン数3、連想度4であるので、キャッシュサイズはアクセス制御情報12個分)
比較結果は以下の通りである。
(1)文字列検査アルゴリズムにおける比較結果
MMP方式ではキャッシュミス回数は20,639回であった。これに対し本実施形態(条件1)ではキャッシュミス回数は3,695回であり、対MMP方式−82.1%であった。また、本実施形態(条件2)ではキャッシュミス回数は2,872回であり、対MMP方式−86.1%であった。
(2)Dijkstraアルゴリズムにおける比較結果
MMP方式ではキャッシュミス回数は230,654回であった。これに対し本実施形態(条件1)ではキャッシュミス回数は148,915回であり、対MMP方式−35.4%であった。また、本実施形態(条件2)ではキャッシュミス回数は88.666回であり、対MMP方式−61.6%であった。
これらの結果から、本実施形態はMMP方式よりも少ないキャッシュサイズで、約35%〜86%程度のキャッシュヒット率の向上が見込まれる。したがって、メモリアクセス制御を行うことによる時間的オーバーヘッドを少なくすることができる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
一実施形態に係るアクセス制御キャッシュ装置を示すブロック図 図1に示すライン決定装置の具体例を示すブロック図 図1に示すライン決定装置の別の具体例を示すブロック図 図1に示すライン決定装置の別の具体例を示すブロック図 図1に示すライン決定装置の別の具体例を示すブロック図 アドレス制御表の構成図 MMP方式について説明するためのブロック図 アクセス制御キャッシュ装置の動作の流れを示すフローチャート
符号の説明
10…プログラム;
11…CPU(中央処理装置);
13…アクセス制御キャッシュ装置;
14…ライン決定装置;
15…キャッシュ判定装置;
16…マルチプレクサ;
17…OR回路;
18…アクセス制御キャッシュ

Claims (8)

  1. アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュと、
    CPUが実行しようとするプログラムのアセンブラ命令毎に、該アセンブラ命令のオブジェクトコードを受け取り、該オブジェクトコードに基づいて前記ラインを決定するライン決定装置と、
    前記アクセス制御キャッシュの前記ラインをアクセスし、前記プログラムのアクセス先アドレスが前記アドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定装置と、を具備するアクセス制御キャッシュ装置。
  2. 前記ライン決定装置はハッシュ関数を有し、前記オブジェクトコードを入力することにより前記ハッシュ関数から出力されるハッシュ値を前記ラインに決定する請求項1記載のアクセス制御キャッシュ装置。
  3. 前記ライン決定装置は、複数のオブジェクトコードと、前記アクセス制御キャッシュの複数のラインとを対応付ける対応表を有する請求項1記載のアクセス制御キャッシュ装置。
  4. アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュと、
    CPUが実行しようとするプログラムのアセンブラ命令毎が、メモリからデータを読み込むRead命令、データをメモリへ書き込むWrite命令、及び実行命令番地を変更するExecute命令のいずれの種類の命令であるかに応じて前記ラインを決定するライン決定装置と、
    前記アクセス制御キャッシュの前記ラインをアクセスし、前記プログラムのアクセス先アドレスが前記アドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定装置と、を具備するアクセス制御キャッシュ装置。
  5. 前記ライン決定装置はハッシュ関数を有し、前記命令の種類を示す識別子の値を入力することにより前記ハッシュ関数から出力されるハッシュ値を前記ラインに決定する請求項4記載のアクセス制御キャッシュ装置。
  6. 前記ライン決定装置は、前記命令の種類と前記アクセス制御キャッシュの複数のラインとを対応付ける対応表を有する請求項4記載のアクセス制御キャッシュ装置。
  7. アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュを用いるキャッシュ判定方法であって、
    CPUが実行しようとするプログラムのアセンブラ命令毎に、該アセンブラ命令のオブジェクトコードを受け取り、該オブジェクトコードに基づいて前記ラインを決定するライン決定ステップと、
    前記アクセス制御キャッシュの前記ラインをアクセスし、前記プログラムのアクセス先アドレスが前記アドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定ステップと、を有するキャッシュ判定方法。
  8. アドレス区間情報とアクセス許可情報とを関連付けるアクセス制御表の一部を記憶し、ライン毎にアクセスが可能なアクセス制御キャッシュを用いるキャッシュ判定方法であって、
    CPUが実行しようとするプログラムのアセンブラ命令毎が、メモリからデータを読み込むRead命令、データをメモリへ書き込むWrite命令、及び実行命令番地を変更するExecute命令のいずれの種類の命令であるかに応じて前記ラインを決定するライン決定ステップと、
    前記アクセス制御キャッシュの前記ラインをアクセスし、前記プログラムのアクセス先アドレスが前記アドレス区間情報に含まれる場合にキャッシュヒットと判定し、対応するアクセス許可情報を出力するキャッシュ判定ステップと、を有するキャッシュ判定方法。
JP2006173906A 2006-06-23 2006-06-23 アクセス制御キャッシュ装置及び方法 Expired - Fee Related JP4220537B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006173906A JP4220537B2 (ja) 2006-06-23 2006-06-23 アクセス制御キャッシュ装置及び方法
EP07252524A EP1870815A1 (en) 2006-06-23 2007-06-21 Access controller and access control method
US11/821,331 US20080016292A1 (en) 2006-06-23 2007-06-22 Access controller and access control method
CNB2007101126331A CN100538666C (zh) 2006-06-23 2007-06-25 访问控制器和访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006173906A JP4220537B2 (ja) 2006-06-23 2006-06-23 アクセス制御キャッシュ装置及び方法

Publications (2)

Publication Number Publication Date
JP2008003919A true JP2008003919A (ja) 2008-01-10
JP4220537B2 JP4220537B2 (ja) 2009-02-04

Family

ID=38524665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006173906A Expired - Fee Related JP4220537B2 (ja) 2006-06-23 2006-06-23 アクセス制御キャッシュ装置及び方法

Country Status (4)

Country Link
US (1) US20080016292A1 (ja)
EP (1) EP1870815A1 (ja)
JP (1) JP4220537B2 (ja)
CN (1) CN100538666C (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2484927A (en) * 2010-10-26 2012-05-02 Advanced Risc Mach Ltd Provision of access control data within a data processing system
CN111414321B (zh) * 2020-02-24 2022-07-15 中国农业大学 一种基于动态映射机制的cache防护方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IE910553A1 (en) * 1991-02-19 1992-08-26 Tolsys Ltd Improvements in and relating to stable memory circuits
US7287140B1 (en) * 2003-07-28 2007-10-23 Massachusetts Institute Of Technology System and technique for fine-grained computer memory protection
JP2006195712A (ja) * 2005-01-13 2006-07-27 Hitachi Ltd ストレージ制御装置、論理ボリューム管理方法及びストレージ装置
JP4519738B2 (ja) * 2005-08-26 2010-08-04 株式会社東芝 メモリアクセス制御装置

Also Published As

Publication number Publication date
JP4220537B2 (ja) 2009-02-04
CN101093465A (zh) 2007-12-26
US20080016292A1 (en) 2008-01-17
CN100538666C (zh) 2009-09-09
EP1870815A1 (en) 2007-12-26

Similar Documents

Publication Publication Date Title
TWI342492B (en) Method of providing extended memory protection
KR102554799B1 (ko) 분기 명령어의 유형에 기초한 사전 분기 예측의 선택적 수행
TWI519955B (zh) 預取單元、資料預取方法以及電腦程式產品
JP5030796B2 (ja) データ転送中にキャッシュへのアクセスを制限するシステムおよびその方法
EP3674877A1 (en) Method for accessing extended memory, device, and system
JP5608594B2 (ja) プレロード命令制御
JP2014182813A (ja) 命令エミュレーションプロセッサ、方法、およびシステム
JP2018538610A (ja) 有界ポインタの使用を制御する装置及び方法
KR20210018415A (ko) 예측 실패 복구에 대한 레이턴시를 줄이기 위한 이차적 분기 예측 저장
JP7269942B2 (ja) 複数ガード・タグ設定命令
US20200272575A1 (en) Controlling guard tag checking in memory accesses
JP5625809B2 (ja) 演算処理装置、情報処理装置及び制御方法
JP4220537B2 (ja) アクセス制御キャッシュ装置及び方法
TWI787451B (zh) 用於資料處理的方法、設備、電腦程式、與儲存器媒體
KR102270789B1 (ko) 프로세서 및 프로세서의 명령어 처리 방법
JP2004334773A (ja) 情報処理装置
JP2006072625A (ja) クラスタ化スーパスカラプロセッサ及びクラスタ化スーパスカラプロセッサにおけるクラスタ間の通信制御方法
US20160179676A1 (en) Cleaning a write-back cache
JP4002288B2 (ja) 情報処理装置
JP2003337790A (ja) バス制御回路およびプロセッサ
TW202403562A (zh) 用於記憶體位址空間之頁面的「讀值只有x」性質
JP2007128236A (ja) プロセッサ評価装置、プロセッサ評価方法、およびプロセッサの製造方法
JP2007011642A (ja) プロセッサ
JP2005157537A (ja) メモリアクセス監視装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080326

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081017

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081113

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

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121121

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131121

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees