JPH05225063A - バッファメモリのクリア方式 - Google Patents
バッファメモリのクリア方式Info
- Publication number
- JPH05225063A JPH05225063A JP4027066A JP2706692A JPH05225063A JP H05225063 A JPH05225063 A JP H05225063A JP 4027066 A JP4027066 A JP 4027066A JP 2706692 A JP2706692 A JP 2706692A JP H05225063 A JPH05225063 A JP H05225063A
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- buffer memory
- generation
- valid
- 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.)
- Withdrawn
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【構成】キーとなるデータを格納するキー格納部Kと、
データが有効であることを示す有効ビット部Vおよび、
データの「世代」を示す世代格納部Gを有するキー部5
と、キーに対応するデータを格納するデータ格納部Dを
有するデータ部6とを有するバッファメモリで、キーと
データとが一致し、かつデータに対する世代と現在の世
代を示すレジスタ1との一致し、更に有効ビットが「有
効」であることを示しているときに「一致」の信号を出
力する比較器とを有している。 【効果】バッファメモリのエントリ数に比例した時間を
必要とするクリアを1サイクルで行うことによりバッフ
ァメモリのクリアに伴うオーバヘッドを少なくできる。
データが有効であることを示す有効ビット部Vおよび、
データの「世代」を示す世代格納部Gを有するキー部5
と、キーに対応するデータを格納するデータ格納部Dを
有するデータ部6とを有するバッファメモリで、キーと
データとが一致し、かつデータに対する世代と現在の世
代を示すレジスタ1との一致し、更に有効ビットが「有
効」であることを示しているときに「一致」の信号を出
力する比較器とを有している。 【効果】バッファメモリのエントリ数に比例した時間を
必要とするクリアを1サイクルで行うことによりバッフ
ァメモリのクリアに伴うオーバヘッドを少なくできる。
Description
【0001】
【産業上の利用分野】本発明はバッファメモリのクリア
方式に関し、特に情報処理装置におけるバッファメモリ
のクリア方式に関する。
方式に関し、特に情報処理装置におけるバッファメモリ
のクリア方式に関する。
【0002】
【従来の技術】バッファメモリは、大量のデータとデー
タの関係、例えばアドレスをデータの関係や仮想メモリ
計算機システムにおける仮想アドレスと実アドレスとの
関係、を高速にアクセスしたい時に、良く用いられるも
のである。このバッファメモリは、比較小量ではある
が、高速な記憶手段を用い、データとデータの関係の集
合の部分集合を一時的に納めておく。バッファメモリの
一般的な構成は図3に示すようにアクセスしたいデータ
に対応するキーとなるデータ(一般的に上位装置から送
られてくる)の上位部分をバッファメモリ内に格納して
おく。バッファメモリのアクセスの度にアクセス要求と
ともに送られてくるキーの下位部分でバッファメモリを
アドレッシングし、バッファメモリ内のキーと比較す
る。もし、送られてくるキーとバッファメモリ内のキー
とが一致した場合、要求元へ対応するデータが送られ
る。もし一致しない場合、予め定められた手段に従っ
て、キーに対応するデータが下位の記憶手段より取り出
され、キーとなるデータの上位部分とともにキーの下位
でアドレッシングされたエントリに格納され、次回のア
クセスから、高速のアクセスが期待できる。
タの関係、例えばアドレスをデータの関係や仮想メモリ
計算機システムにおける仮想アドレスと実アドレスとの
関係、を高速にアクセスしたい時に、良く用いられるも
のである。このバッファメモリは、比較小量ではある
が、高速な記憶手段を用い、データとデータの関係の集
合の部分集合を一時的に納めておく。バッファメモリの
一般的な構成は図3に示すようにアクセスしたいデータ
に対応するキーとなるデータ(一般的に上位装置から送
られてくる)の上位部分をバッファメモリ内に格納して
おく。バッファメモリのアクセスの度にアクセス要求と
ともに送られてくるキーの下位部分でバッファメモリを
アドレッシングし、バッファメモリ内のキーと比較す
る。もし、送られてくるキーとバッファメモリ内のキー
とが一致した場合、要求元へ対応するデータが送られ
る。もし一致しない場合、予め定められた手段に従っ
て、キーに対応するデータが下位の記憶手段より取り出
され、キーとなるデータの上位部分とともにキーの下位
でアドレッシングされたエントリに格納され、次回のア
クセスから、高速のアクセスが期待できる。
【0003】ところで、前述のデータとデータの関係は
時間に従って変更されることがある。その場合、バッフ
ァメモリ内のデータと下位の(本物の)データとにくい
違いを生じるので、バッファメモリ内のデータを無効に
する必要がある。このため、バッファメモリの各データ
の有効性を示す1ビットの情報(有効ビット)が付加さ
れている。これによりたとえ上位装置から送られてくる
キーとバッファメモリ内のキーが一致していても有効ビ
ットが「有効」を示していなければ対応するデータがバ
ッファメモリ内に無いとして下位メモリから新しくデー
タを取り出すようにする。
時間に従って変更されることがある。その場合、バッフ
ァメモリ内のデータと下位の(本物の)データとにくい
違いを生じるので、バッファメモリ内のデータを無効に
する必要がある。このため、バッファメモリの各データ
の有効性を示す1ビットの情報(有効ビット)が付加さ
れている。これによりたとえ上位装置から送られてくる
キーとバッファメモリ内のキーが一致していても有効ビ
ットが「有効」を示していなければ対応するデータがバ
ッファメモリ内に無いとして下位メモリから新しくデー
タを取り出すようにする。
【0004】データとデータの関係が全く変更され、バ
ッファメモリの内容を全て無効にする必要がしばしばあ
る。たとえば、仮想メモリ計算機システムにおける仮想
/実アドレスの関係をバッファリングするTLB(アド
レス変換バッファ)は、TSSなどでプロセス切り換え
が起って、仮想空間が切り換わる毎にクリアされる。
ッファメモリの内容を全て無効にする必要がしばしばあ
る。たとえば、仮想メモリ計算機システムにおける仮想
/実アドレスの関係をバッファリングするTLB(アド
レス変換バッファ)は、TSSなどでプロセス切り換え
が起って、仮想空間が切り換わる毎にクリアされる。
【0005】
【発明が解決しようとする課題】上述した従来のバッフ
ァメモリの一般的な構成においては、バッファメモリの
全エントリをクリアするためには、バッファメモリのア
ドレスを1つずつ加算してゆくので、エントリ数に比例
した時間が必要である。
ァメモリの一般的な構成においては、バッファメモリの
全エントリをクリアするためには、バッファメモリのア
ドレスを1つずつ加算してゆくので、エントリ数に比例
した時間が必要である。
【0006】最近の情報処理装置においては、バッファ
メモリのエントリ数は128エントリ乃至512エント
リにのぼり、バッファメモリのクリアは、命令の実行時
間に比して無視できなくなっている。そのため、上述の
ようなプロセス切換えが頻繁に発生する計算機システム
においては、バッファメモリ(TLB)のクリアによる
オーバヘッドが増大するという事態を招いている。
メモリのエントリ数は128エントリ乃至512エント
リにのぼり、バッファメモリのクリアは、命令の実行時
間に比して無視できなくなっている。そのため、上述の
ようなプロセス切換えが頻繁に発生する計算機システム
においては、バッファメモリ(TLB)のクリアによる
オーバヘッドが増大するという事態を招いている。
【0007】
【課題を解決するための手段】本発明のバッファメモリ
のクリア方式は、キーとなるデータを格納するキー格納
手段と、それに対応するデータを格納するデータ格納手
段と、データが有効であることを示す有効ビットと、キ
ーとデータが一致し、かつ有効ビットが「有効」である
ことを示している時、「一致」の信号を出力する比較器
を持つバッファメモリにおいて、データの「世代」を示
す世代格納手段と、現在の世代を示す世代表示手段と、
前記比較器の機能に加えて、データに対する世代と世代
表示手段の出力を比較し、両者の一致を見たときのみ
「一致」の信号を出力する比較器とを有している。
のクリア方式は、キーとなるデータを格納するキー格納
手段と、それに対応するデータを格納するデータ格納手
段と、データが有効であることを示す有効ビットと、キ
ーとデータが一致し、かつ有効ビットが「有効」である
ことを示している時、「一致」の信号を出力する比較器
を持つバッファメモリにおいて、データの「世代」を示
す世代格納手段と、現在の世代を示す世代表示手段と、
前記比較器の機能に加えて、データに対する世代と世代
表示手段の出力を比較し、両者の一致を見たときのみ
「一致」の信号を出力する比較器とを有している。
【0008】
【実施例】次に、本発明について図面を参照して説明す
る。
る。
【0009】図1は本発明の第一の実施例を示すブロッ
ク図である。図1において、本発明の第1の実施例はキ
ー部5とデータ部6とを有しているバッファメモリでキ
ー部5はキーとなるデータを格納するキー格納部Kと、
データが有効であることを示す有効ビット部Vと、デー
タの「世代」を示す世代格納部Gとを含み、データ部6
はキーに対応するデータを格納するデータ格納部Dを含
む。
ク図である。図1において、本発明の第1の実施例はキ
ー部5とデータ部6とを有しているバッファメモリでキ
ー部5はキーとなるデータを格納するキー格納部Kと、
データが有効であることを示す有効ビット部Vと、デー
タの「世代」を示す世代格納部Gとを含み、データ部6
はキーに対応するデータを格納するデータ格納部Dを含
む。
【0010】レジスタ3は上位装置より与えられたキー
を保持する。キーの下位はバッファメモリのキー部5と
データ部6をアドレッシングする。これにより、キー部
5とデータ部6の特定のエントリが指定される。一方、
レジスタ3内のキーの上位は信号線56を通じて比較器
8により、指定されたエントリのキー上位を保持してい
るキー部5の出力K(信号線62)と比較される。指定
されたエントリの世代を保持しているキー5部の出力G
(信号線60)は、現在の世代を保持するレジスタ1の
出力と比較される。これら二つの比較出力は、指定され
たエントリの有効ビットを保持するキー部5の出力V
(信号線61)の出力を用いてゲート9で有効条件を取
る。キー部5と同様にレジスタ3内のキー下位で指定さ
れたデータ部6のエントリは出力63により読み出さ
れ、上位装置へ返される。上位装置はゲート9の出力6
8により、出力63の有効性を判断する。即ち、ゲート
9の出力68がアクティブ(論理値1)であれば、出力
63が有効であるし、出力68がイナクティブ(論理値
0)であれば出力63は無効である。
を保持する。キーの下位はバッファメモリのキー部5と
データ部6をアドレッシングする。これにより、キー部
5とデータ部6の特定のエントリが指定される。一方、
レジスタ3内のキーの上位は信号線56を通じて比較器
8により、指定されたエントリのキー上位を保持してい
るキー部5の出力K(信号線62)と比較される。指定
されたエントリの世代を保持しているキー5部の出力G
(信号線60)は、現在の世代を保持するレジスタ1の
出力と比較される。これら二つの比較出力は、指定され
たエントリの有効ビットを保持するキー部5の出力V
(信号線61)の出力を用いてゲート9で有効条件を取
る。キー部5と同様にレジスタ3内のキー下位で指定さ
れたデータ部6のエントリは出力63により読み出さ
れ、上位装置へ返される。上位装置はゲート9の出力6
8により、出力63の有効性を判断する。即ち、ゲート
9の出力68がアクティブ(論理値1)であれば、出力
63が有効であるし、出力68がイナクティブ(論理値
0)であれば出力63は無効である。
【0011】出力68がイナクティブのとき、次の動作
が行われる。最初に、予め定められた手続きにより、レ
ジスタ3内のキーに対応するデータが下位の記憶装置
(図示せず)から取り出される。取り出されたデータは
信号線58によりデータ部6に入力される。同時に、キ
ー部の入力K(信号線56)、入力V(信号線70)お
よび入力G(信号線69)にもそれぞれレジスタ3内の
キーの上位、「有効」(論理値1)、レジスタ1の出力
が入力される。ここで、キー部5とデータ部6へ書き込
み信号が印加され、データの登録が終了する。
が行われる。最初に、予め定められた手続きにより、レ
ジスタ3内のキーに対応するデータが下位の記憶装置
(図示せず)から取り出される。取り出されたデータは
信号線58によりデータ部6に入力される。同時に、キ
ー部の入力K(信号線56)、入力V(信号線70)お
よび入力G(信号線69)にもそれぞれレジスタ3内の
キーの上位、「有効」(論理値1)、レジスタ1の出力
が入力される。ここで、キー部5とデータ部6へ書き込
み信号が印加され、データの登録が終了する。
【0012】次に、このバッファメモリのクリアが指示
された場合について述べる。クリア指示によりレジスタ
1の値が1つ加算される。これにより、以後のこのバッ
ファメモリへのアクセスにおいて、上記クリア指示を受
け付ける前に登録された古い世代を持つエントリに対し
ては、比較器7における一致は成り立たなくなる。この
ように、バッファのクリアは1サイクルで終了する。
された場合について述べる。クリア指示によりレジスタ
1の値が1つ加算される。これにより、以後のこのバッ
ファメモリへのアクセスにおいて、上記クリア指示を受
け付ける前に登録された古い世代を持つエントリに対し
ては、比較器7における一致は成り立たなくなる。この
ように、バッファのクリアは1サイクルで終了する。
【0013】レジスタ1の値が0に戻ると、以前の世代
0で登録されたエントリに対して「一致」を出力してし
まうかもしれない。このため、レジスタ1の全ビットが
論理値1でクリア指示を受け取ると、加算器4を用い
て、順次キーの下位(信号線57)を変えながら全エン
トリのクリアを行う。この時キー部5のG部,V部はそ
れぞれ0および「無効」に初期化される。
0で登録されたエントリに対して「一致」を出力してし
まうかもしれない。このため、レジスタ1の全ビットが
論理値1でクリア指示を受け取ると、加算器4を用い
て、順次キーの下位(信号線57)を変えながら全エン
トリのクリアを行う。この時キー部5のG部,V部はそ
れぞれ0および「無効」に初期化される。
【0014】キー上位の一部が一致したときのみクリア
をする部分クリアが行われることがある。この場合を図
2の第二の実施例に示す。
をする部分クリアが行われることがある。この場合を図
2の第二の実施例に示す。
【0015】図2に付した各番号は図1の各番号に対応
している。但し、図1のレジスタ1がキー上位の一部
(信号線70)でアドレッシングされるメモリになって
いる。このバッファメモリのアクセスにおいて、現在の
世代は、キー上位の一部によりメモリ1をアクセスする
ことにより得られ、同時にキー下位でアドレーシングさ
れたキー部5の出力G(信号線60)と比較がなされ
る。図2のバッファメモリに対するクリア指示は、キー
上位の一部をレジスタ3へ納める必要がある。信号線7
0により選択されたメモリ1のエントリがレジスタ11
の出力された後、次のサイクルで+1された世代が同一
エントリへ書き戻される。更新に2サイクルを要するの
はメモリ1が同時に読み書きができないことによる。以
後、クリア指示のなされた同一のキー上位の一部を持つ
キーによる、このバッファメモリの古い世代を持つエン
トリに対するアクセスは、「一致」とならず、順次新し
い世代のエントリに置き換わってゆく。クリア時、アク
セスされたメモリ1のエントリが全ビット1であれば実
施例1と同様に処理する。
している。但し、図1のレジスタ1がキー上位の一部
(信号線70)でアドレッシングされるメモリになって
いる。このバッファメモリのアクセスにおいて、現在の
世代は、キー上位の一部によりメモリ1をアクセスする
ことにより得られ、同時にキー下位でアドレーシングさ
れたキー部5の出力G(信号線60)と比較がなされ
る。図2のバッファメモリに対するクリア指示は、キー
上位の一部をレジスタ3へ納める必要がある。信号線7
0により選択されたメモリ1のエントリがレジスタ11
の出力された後、次のサイクルで+1された世代が同一
エントリへ書き戻される。更新に2サイクルを要するの
はメモリ1が同時に読み書きができないことによる。以
後、クリア指示のなされた同一のキー上位の一部を持つ
キーによる、このバッファメモリの古い世代を持つエン
トリに対するアクセスは、「一致」とならず、順次新し
い世代のエントリに置き換わってゆく。クリア時、アク
セスされたメモリ1のエントリが全ビット1であれば実
施例1と同様に処理する。
【0016】
【発明の効果】以上説明したように、本発明のバッファ
メモリのクリア方式は、バッファメモリのエントリ数に
比例した時間を必要とするクリアを殆どの場合1サイク
ルで行うことにより、バッファメモリのクリアに伴うオ
ーバヘッドを少なくできる効果がある。
メモリのクリア方式は、バッファメモリのエントリ数に
比例した時間を必要とするクリアを殆どの場合1サイク
ルで行うことにより、バッファメモリのクリアに伴うオ
ーバヘッドを少なくできる効果がある。
【図1】本発明の第一の実施例を示すブロック図であ
る。
る。
【図2】本発明の第二の実施例を示すブロック図であ
る。
る。
【図3】バッファメモリの従来例の図である。
1 レジスタ(世代) 1a メモリ(世代) 2 加算器 3 レジスタ(キー) 4 加算器 5 キー部 6 データ部 7 比較器(世代) 8 比較器(キー) 9 ゲート 10 オール1検出器 11 レジスタ 51〜70 信号線
Claims (1)
- 【請求項1】 キーとなるデータを格納するキー格納手
段と、それに対応するデータを格納するデータ格納手段
と、データが有効であることを示す有効ビットと、キー
とデータが一致し、かつ有効ビットが「有効」であるこ
とを示している時、「一致」の信号を出力する比較器を
持つバッファメモリにおいて、データの「世代」を示す
世代格納手段と、現在の世代を示す世代表示手段と、前
記比較器の機能に加えて、データに対する世代と世代表
示手段の出力を比較し、両者の一致を見たときのみ「一
致」の信号を出力する比較器とを有し、バッファメモリ
のクリア要求に対して、世代表示手段の世代を1つだけ
進めることを特徴とするバッファメモリのクリア方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4027066A JPH05225063A (ja) | 1992-02-14 | 1992-02-14 | バッファメモリのクリア方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4027066A JPH05225063A (ja) | 1992-02-14 | 1992-02-14 | バッファメモリのクリア方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05225063A true JPH05225063A (ja) | 1993-09-03 |
Family
ID=12210702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4027066A Withdrawn JPH05225063A (ja) | 1992-02-14 | 1992-02-14 | バッファメモリのクリア方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05225063A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7287124B2 (en) | 2003-11-26 | 2007-10-23 | Microsoft Corporation | Lazy flushing of translation lookaside buffers |
US7788464B2 (en) | 2006-12-22 | 2010-08-31 | Microsoft Corporation | Scalability of virtual TLBs for multi-processor virtual machines |
-
1992
- 1992-02-14 JP JP4027066A patent/JPH05225063A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7287124B2 (en) | 2003-11-26 | 2007-10-23 | Microsoft Corporation | Lazy flushing of translation lookaside buffers |
US7788464B2 (en) | 2006-12-22 | 2010-08-31 | Microsoft Corporation | Scalability of virtual TLBs for multi-processor virtual machines |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0851357B1 (en) | Method and apparatus for preloading different default address translation attributes | |
US5182805A (en) | Method and system for determining copy-on-write condition | |
US5530823A (en) | Hit enhancement circuit for page-table-look-aside-buffer | |
JPH08272692A (ja) | 仮想アドレス変換方法 | |
US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
US6519684B1 (en) | Low overhead method for selecting and updating an entry in a cache memory | |
US5479629A (en) | Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address | |
EP0173909A2 (en) | Look-aside buffer least recently used marker controller | |
JPH05225063A (ja) | バッファメモリのクリア方式 | |
JPH02308349A (ja) | バッファ記憶制御装置 | |
JPH03235143A (ja) | キャッシュメモリ制御装置 | |
CA1328026C (en) | Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit | |
JPH05342101A (ja) | 階層キャッシュ・メモリ | |
JP2000148589A (ja) | メモリ管理装置、方法及びプログラムを記憶した記憶媒体 | |
JP2818562B2 (ja) | アドレス変換回路 | |
JP2641319B2 (ja) | アドレス変換バッファクリア方式 | |
JP2703255B2 (ja) | キャッシュメモリ書込み装置 | |
JPH01161438A (ja) | 先取命令無効化処理方式 | |
JPS61267842A (ja) | Tlb制御装置 | |
JP3290682B2 (ja) | アドレス変換装置 | |
JPH06309196A (ja) | トレース機能付情報処理装置 | |
JP2864548B2 (ja) | 命令キャッシュ装置 | |
JPH06124237A (ja) | アドレス変換バッファ装置 | |
JPS626350A (ja) | Tlb制御装置 | |
JPH0816477A (ja) | マルチプロセッサシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990518 |