JPH077364B2 - Address translation buffer control method - Google Patents
Address translation buffer control methodInfo
- Publication number
- JPH077364B2 JPH077364B2 JP62183314A JP18331487A JPH077364B2 JP H077364 B2 JPH077364 B2 JP H077364B2 JP 62183314 A JP62183314 A JP 62183314A JP 18331487 A JP18331487 A JP 18331487A JP H077364 B2 JPH077364 B2 JP H077364B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- entries
- entry
- column
- memories
- 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.)
- Expired - Lifetime
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置アドレス変換バッファ制御方式に
係り、特にアドレス変換バッファ内の指定された実アド
レスに対するエントリを無効化する処理(以下パーシャ
ル・パージ処理と呼ぶ)に関する。The present invention relates to an information processing device address translation buffer control system, and more particularly to a process for invalidating an entry for a specified real address in an address translation buffer (hereinafter referred to as partial. (Referred to as a purging process).
従来、アドレス変換バッファにおいて指定された実アド
レスに対応するエントリを無効化は、特開昭57−16428
号公報に記載のように、メモリの内容を一つずつ読出し
該当実アドレスと比較して一致を検出すると、一致を検
出したエントリを無効化する方式が知られている。Conventionally, the invalidation of the entry corresponding to the designated real address in the address translation buffer is disclosed in Japanese Patent Laid-Open No. 57-16428
As described in Japanese Patent Publication No. JP-A-2003-264, there is known a method in which the contents of the memory are read one by one and compared with the corresponding real address, and if a match is detected, the entry in which the match is detected is invalidated.
さらに、特開昭60−138654号公報では複数のTLBエント
リを同時に参照可能なメモリ構成を採用し、複数個のエ
ントリを同時に読出し可能とし、さらに読出したエント
リ数に対応した比較回路を施け、比較処理を並列化する
ことにより高速化を実現している。例えば、同時にl個
のTLBエントリを参照すると、TLB読出し・比較に要する
時間は、1エントリずつ読出し・比較した場合に比べ、
1/lの時間となる。同時に比較したlエントリ中で1つ
以上のエントリで一致が検出された場合、無効化処理が
起動されlエントリ全体が無効化される。Furthermore, in JP-A-60-138654, a memory structure that can simultaneously refer to a plurality of TLB entries is adopted, a plurality of entries can be read at the same time, and a comparison circuit corresponding to the number of read entries is provided. Speeding up is achieved by parallelizing the comparison process. For example, if 1 TLB entry is referenced at the same time, the time required for TLB read / comparison is smaller than that for 1 entry read / comparison.
It is 1 / l time. When a match is detected in one or more of the l entries that are compared at the same time, the invalidation process is activated and the entire l entry is invalidated.
読出したlエントリの中に実アドレスと一致するエント
リがある時にlエントリ全体を無効化する方式は、無効
化の時間短縮は達成できるが、無効化の対象でない有効
エントリまでも過剰に無効化してしまう問題がある。The method of invalidating the entire l entry when there is an entry that matches the real address in the read l entries can achieve a reduction in invalidation time, but invalidates even valid entries that are not the target of invalidation excessively. There is a problem that ends up.
本発明の目的は、複数エントリの並列比較による処理の
高速化をはかるとともに、エントリ無効化の精度を向上
させることにある。An object of the present invention is to speed up processing by parallel comparison of a plurality of entries and improve the accuracy of entry invalidation.
アドレス変換バッファに1カラム(1は1≧2の整数)
のメモリをm個(mはm≧2の整数)を用いて、指定さ
れた実アドレスに対するエントリを無効にする際にm個
のメモリの同一カラムのエントリ(m個)の内容を同時
に読出して該当実アドレスと比較し、一致が検出された
エントリの数が予め与えられた値n(nは2≦n≦mの
整数)より小さくない時は前記m個のメモリの同一カラ
ムのエントリ全体を無効化し、nより小さい時は前記m
個のメモリの同一カラムのエントリの内の一致したエン
トリのみ無効化するようにしている。One column in the address translation buffer (1 is an integer 1 ≧ 2)
When m entries (m is an integer of m ≧ 2) are used to invalidate the entry for the specified real address, the contents of the entries (m entries) in the same column of the m memories are read simultaneously. When the number of entries for which a match is detected by comparison with the corresponding real address is not smaller than a predetermined value n (n is an integer of 2 ≦ n ≦ m), the entire entries of the same column of the m memories are Invalidate, and if less than n, then m
Only the matching entry among the entries in the same column of each memory is invalidated.
アドレス変換バッファの無効化処理において、一致が検
出されたエントリの数(p)が予め与えられた値nより
小さい時一致したエントリを一つずつ無効化する。この
時、無効化の為にpサイクル必要であり、真に無効化す
べきエントリのみ無効化され、過剰な無効化は行われな
い。In the invalidation process of the address translation buffer, when the number (p) of entries in which a match is detected is smaller than a predetermined value n, the matched entries are invalidated one by one. At this time, p cycles are required for invalidation, only the entries that should be truly invalidated are invalidated, and excessive invalidation is not performed.
一方、一致が検出されたエントリの数pがnより小さく
ない時、比較した全エントリが無効化される。この時、
1サイクルで無効化処理が行われ、(m−p)個のエン
トリに関しては無効化の対象でないにもかかわらず過剰
な無効化が行われる。前者のケースは無効化の精度をあ
げることに、後者のケースは無効化処理時間の短縮に、
それぞれ重点をおいている。nの値と適当に設定するこ
とにより、全体として無効化の時間および精度に関して
最適化を行える。On the other hand, when the number p of entries for which a match is detected is not smaller than n, all the compared entries are invalidated. At this time,
Invalidation processing is performed in one cycle, and excessive invalidation is performed for (m−p) entries even though they are not targets of invalidation. The former case improves the precision of invalidation, and the latter case shortens the invalidation processing time.
Each has an emphasis. By appropriately setting the value of n, it is possible to optimize the invalidation time and accuracy as a whole.
以下、本発明の一実施例を説明する。第1図は、一実施
例のブロック図である。便宜上、第1図では64カラムの
メモリの8個の構成のアドレス変換バッファを示す。カ
ラム数,メモリ数が異なる場合、ロウを何面か持つ場合
も同様である。第1図においては、1は論理アドレスレ
ジスタ(LAR),2は比較アドレスレジスタ(CAR)、3は
アドレス変換バッファ(TLB)であり、論理アドレス及
び実アドレスは、バイト・ビット表示で(0,1)〜(3,
7)の31ビットから成るものとしている。1バイトは8
ビットとし、例えば、(0,1)は0バイトの第1ビット
目を、(3,7)は3バイトの第7ビット目を意味してい
る。TLB3は64カラムメモリ4〜11と比較回路12〜19から
成る。各64カラムメモリは論理アドレス(1,6)〜(2,
3)をアドレスとして参照される。64カラムメモリ4〜1
1は各々のカラムに対応してエントリをもち、各エント
リは論理アドレスフィールド(ビット(0,1)〜(1,
3))と実アドレスフィールド(ビット(0,1)〜(2,
3))およびVフィールドを含んでいる。他のフィール
ド、例えばセグメントテーブルオリジンSTO,変更(C)
ビットについては本発明には直接関係しないので省略す
る。An embodiment of the present invention will be described below. FIG. 1 is a block diagram of an embodiment. For the sake of convenience, FIG. 1 shows an address conversion buffer having eight structures of a 64-column memory. The same applies when the number of columns and the number of memories are different and when there are several rows. In FIG. 1, 1 is a logical address register (LAR), 2 is a comparison address register (CAR), 3 is an address translation buffer (TLB), and the logical address and the real address are represented by byte and bit (0, 1) ~ (3,
It is assumed to consist of 31 bits in 7). 1 byte is 8
For example, (0,1) means the first bit of 0 byte, and (3,7) means the seventh bit of 3 bytes. The TLB 3 is composed of 64-column memories 4-11 and comparison circuits 12-19. Each 64-column memory has logical addresses (1,6) to (2,
3) is referred to as an address. 64-column memory 4-1
1 has an entry corresponding to each column, and each entry has a logical address field (bits (0,1) to (1,
3)) and the real address field (bits (0,1) to (2,
3)) and the V field. Other fields, eg segment table origin STO, change (C)
The bits are omitted because they are not directly related to the present invention.
第2図は、TLB書込み時の基板動作を示している。WE(W
rite Enable)入力が‘1'の時、書込み動作が行われ
る。書込みモードとして、以下の2通りがある。FIG. 2 shows the substrate operation during TLB writing. WE (W
rite Enable) When the input is '1', write operation is performed. There are the following two write modes.
(1) 8個の64カラム・メモリのうち、指定された1
個に対して書込みが行われるモード(選択的書込みモー
ド)。(1) Specified 1 out of 8 64-column memories
A mode in which writing is performed for each piece (selective writing mode).
(2) 8個の64カラム・メモリすべてに対して書込み
が行われるモード(全書込みモード)。FS(Full Selec
t)入力が‘0'の時、選択的書込みモードが選択され、C
S<0−2>(Column Select)によて書込むべきカラム
・メモリが指定される。FS入力が1′の時、全書込みモ
ードが選択され全ての64カラム・メモリに対して書込み
が行われる。TLB3に対しては、以下の4つの処理が行わ
れる。(2) Mode in which data is written to all eight 64 column memories (all write mode). FS (Full Selec
t) When the input is '0', the selective write mode is selected and C
The column memory to be written is designated by S <0-2> (Column Select). When the FS input is 1 ', the full write mode is selected and writing is done to all 64 column memories. The following four processes are performed on TLB3.
1,読出し。1, read.
2、アドレス変換時のエントリ登録。2. Entry registration at address conversion.
3、オールパージ処理。3, all purge processing.
4、パーシャルパージ処理。4. Partial purge processing.
以下、本発明で特に関連するパーシャルパージ処理につ
いてのみ説明する。パーシャルパージ処理の動作開始に
先立ち、比較アドレスレジスタ2に無効化するエントリ
を指定するための実アドレスを初期値としてセットす
る。パーシャルパージ処理が起動されると、例えばパー
ジ制御手段により論理アドレス(1,6)〜(2,3)の値を
順次0〜63に歩進させて、64カラムメモリ4〜11のエン
トリをカラム0〜63まで順に読出し各エントリの実アド
レスをそれぞれ比較回路12〜19により比較アドレスレジ
スタ2の実アドレスと比較する。比較回路12〜19の比較
結果は一致エントリ数検出回路21及び一致64カラムメモ
リ番号保持レジスタ24に伝えられる。一致エントリ数検
出回路21が一致を検出すると論理アドレスの歩進動作は
一時中断する。一致エントリ数検出回路21の値が予め与
えられた値nより小さくない時8エントリ無効レジスタ
22を‘1'とする。TLB無効化処理制御回路25は書込み制
御回路27に8エントリを無効化させる信号を伝える。書
込み制御回路27はこの信号を受けてFSを‘1'としてTLB3
の8エントリのVフィールドを‘0'にし無効化する。一
致エントリ数検出回路21の値が予め与えられた値nより
小さい時、1エントリ無効レジスタ23を‘1'とする。TL
B無効化処理制御回路25は、1エントリずつ無効化させ
る信号を書込み制御回路27及び64カラムメモリ番号選択
回路26に伝える。64カラムメモリ番号選択回路26は、一
致64カラムメモリ番号保持レジスタ24の値により、第2
図のようにCS(0−2)の値を決め、書込み制御回路27
に伝える。書込み制御回路27はTLB無効化処理制御回路2
5及び64カラムメモリ番号選択回路26からの信号を受け
て、第2図に示すようにFSを‘0',WEを‘1',CS(0−
2)をメモリ番号に対応するように指定して、TLB3の1
エントリのVフィールドを‘0'にし無効化する。nが3
以上の値の時は、この手順を繰り返して他のエントリも
無効化する。このようにして一致を検出した全てのエン
トリの無効化を終了後、論理アドレスの歩進動作を再会
し、64カラムメモリ4〜11の以後のカラムのサーチ動作
を続行する。このようにして、64カラムメモリ4〜11の
0〜63カラムのサーチを同時に全て達成し、所定の実ア
ドレスを含むTLBエントリのパーシャルパージ処理が終
了となる。Only the partial purge process that is particularly relevant to the present invention will be described below. Prior to starting the operation of the partial purge process, a real address for designating an entry to be invalidated is set in the comparison address register 2 as an initial value. When the partial purge process is activated, the values of the logical addresses (1,6) to (2,3) are sequentially incremented to 0 to 63 by, for example, the purge control means, and the entries of the 64 column memories 4 to 11 are columnized. 0 to 63 are read in order and the real address of each entry is compared with the real address of the comparison address register 2 by the comparison circuits 12 to 19, respectively. The comparison results of the comparison circuits 12 to 19 are transmitted to the coincidence entry number detection circuit 21 and the coincidence 64 column memory number holding register 24. When the coincidence entry number detection circuit 21 detects a coincidence, the logical address stepping operation is suspended. 8-entry invalid register when the value of the matching entry number detection circuit 21 is not smaller than a predetermined value n
Set 22 to '1'. The TLB invalidation processing control circuit 25 sends a signal for invalidating 8 entries to the write control circuit 27. The write control circuit 27 receives this signal and sets FS to "1" to TLB3.
The 8 entry V fields are set to "0" and invalidated. When the value of the matching entry number detection circuit 21 is smaller than the value n given in advance, the 1-entry invalid register 23 is set to "1". TL
The B invalidation processing control circuit 25 transmits a signal for invalidating each entry to the write control circuit 27 and the 64-column memory number selection circuit 26. The 64-column memory number selection circuit 26 uses the value of the coincident 64-column memory number holding register 24 to determine the second
Determine the value of CS (0-2) as shown in the figure, and write control circuit 27
Tell. The write control circuit 27 is the TLB invalidation processing control circuit 2
In response to the signals from the 5th and 64th column memory number selection circuits 26, FS is '0', WE is '1', CS (0-
1) of TLB3 by specifying 2) to correspond to the memory number.
The V field of the entry is set to "0" and invalidated. n is 3
If the value is above, repeat this procedure to invalidate other entries. After the invalidation of all the entries for which a match is detected in this way is completed, the logical address stepping operation is reunited and the search operation of the subsequent columns of the 64-column memories 4 to 11 is continued. In this way, the search of 0 to 63 columns of the 64 column memories 4 to 11 is completed at the same time, and the partial purge process of the TLB entry including the predetermined real address is completed.
本発明によれば、TLBのパーシャルパージ実行時間及び
精度の最適化がなされ、該パーシャルパージによる計算
機システムのオーバーヘッドを減らすことが可能にな
る。According to the present invention, the TLB partial purge execution time and accuracy are optimized, and the overhead of the computer system due to the partial purge can be reduced.
第1図は本発明の一実施例を示すブロック図、第2図は
TLB書込み時の基本動作を説明する図である。 1……論理アドレスレジスタ(LAR)、 2……比較アドレスレジスタ(CAR)、 3……アドレス変換バッファ(TLB)、 4−11……64カラムメモリ0−7、 12−19……比較回路、 20……書込みアドレスレジスタ、 21……一致エントリ数検出回路、 25……TLB無効化処理制御回路、 27……書込み制御回路。FIG. 1 is a block diagram showing an embodiment of the present invention, and FIG. 2 is
It is a figure explaining the basic operation at the time of TLB writing. 1 ... Logical address register (LAR), 2 ... Comparison address register (CAR), 3 ... Address conversion buffer (TLB), 4-11 ... 64 column memories 0-7, 12-19 ... Comparison circuit, 20 …… Write address register, 21 …… Matched entry number detection circuit, 25 …… TLB invalidation processing control circuit, 27 …… Write control circuit.
フロントページの続き (56)参考文献 特開 昭56−107377(JP,A) 特開 昭56−80869(JP,A) 特開 昭60−142451JP,A) 特開 昭63−269242(JP,A)Continuation of front page (56) Reference JP-A-56-107377 (JP, A) JP-A-56-80869 (JP, A) JP-A-60-142451JP, A) JP-A-63-269242 (JP, A) )
Claims (1)
換対を登録しておくアドレス変換バッファをもち、主記
憶装置の参照にあたり、前記アドレス変換バッファに該
当仮想アドレスが登録されているか否かチェックして目
的の実アドレスを得る情報処理装置において、前記アド
レス変換バッファに1カラム(1は1≧2の整数)のメ
モリをm個(mはm≧2の整数)を用いて、指定された
実アドレスに対するエントリを無効にする際にm個のメ
モリの同一カラムのエントリ(m個)の内容を同時に読
出して該当実アドレスと比較し、一致が検出されたエン
トリの数が予め与えられた値n(nは2≦n≦mの整
数)より小さくない時は前記m個のメモリの同一カラム
のエントリ全体を無効化し、nより小さい時は前記m個
のメモリの同一カラムのエントリの内の一致したエント
リのみ無効化することを特徴とするアドレス変換バッフ
ァ制御方式。1. An address translation buffer for registering at least a translation pair of a virtual address and a real address. When referring to a main memory device, it is checked whether or not the corresponding virtual address is registered in the address translation buffer. In an information processing device for obtaining a target real address, a specified real address is used by using one column (1 is an integer of 1 ≧ 2) of m memories (m is an integer of m ≧ 2) in the address translation buffer. When invalidating the entry for, the contents of the entries (m) in the same column of the m memory are read at the same time and compared with the corresponding real address, and the number of entries in which a match is detected is given by a predetermined value n ( When n is not smaller than 2≤n≤m), the entire entry of the same column of the m memories is invalidated, and when smaller than n, the same color of the m memories is invalidated. Address conversion buffer controlling method characterized by matching only invalidate entries of the entries.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62183314A JPH077364B2 (en) | 1987-07-24 | 1987-07-24 | Address translation buffer control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62183314A JPH077364B2 (en) | 1987-07-24 | 1987-07-24 | Address translation buffer control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6428757A JPS6428757A (en) | 1989-01-31 |
| JPH077364B2 true JPH077364B2 (en) | 1995-01-30 |
Family
ID=16133528
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62183314A Expired - Lifetime JPH077364B2 (en) | 1987-07-24 | 1987-07-24 | Address translation buffer control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH077364B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2641319B2 (en) * | 1990-08-20 | 1997-08-13 | 日本電気株式会社 | Address translation buffer clear method |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5680869A (en) * | 1979-12-07 | 1981-07-02 | Hitachi Ltd | Address conversion associative buffer system |
| JPS56107377A (en) * | 1980-01-30 | 1981-08-26 | Fujitsu Ltd | Data processing system having partial purge tlb function |
| JPS60142451A (en) * | 1983-12-29 | 1985-07-27 | Fujitsu Ltd | Address conversion control system |
| JPH0679295B2 (en) * | 1986-02-26 | 1994-10-05 | 日本電気株式会社 | Address translator |
| JPS63269242A (en) * | 1987-04-27 | 1988-11-07 | Fujitsu Ltd | Address conversion system |
-
1987
- 1987-07-24 JP JP62183314A patent/JPH077364B2/en not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| 特開昭60−142451JP,A) |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6428757A (en) | 1989-01-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2825550B2 (en) | Multiple virtual space address control method and computer system | |
| 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 | |
| US5379402A (en) | Data processing device for preventing inconsistency of data stored in main memory and cache memory | |
| EP0144268B1 (en) | Method for controlling buffer memory in data processing apparatus | |
| JPH077364B2 (en) | Address translation buffer control method | |
| US4737908A (en) | Buffer memory control system | |
| JPS59112479A (en) | High speed access system of cache memory | |
| JPH0439099B2 (en) | ||
| JP3437224B2 (en) | Delay invalidation method | |
| JPS6042972B2 (en) | Information processing device with address conversion function | |
| JP3149993B2 (en) | Memory circuit controller | |
| JPS6161143B2 (en) | ||
| JPH0664552B2 (en) | Information processing device invalidation processing method | |
| JPH07219845A (en) | Cache memory control system | |
| JPH03271859A (en) | Information processor | |
| JPH02259945A (en) | Storing processing system | |
| JPH0752410B2 (en) | Cache memory control method | |
| JPH03228150A (en) | Cache memory controller | |
| JPS63155347A (en) | Auxiliary circuit for diagnosis of memory | |
| JPS61211752A (en) | Page hysteresis memory device | |
| JPH0769861B2 (en) | Control method of bypass buffer in cache memory controller | |
| JPS61208153A (en) | Page history memory device | |
| JPS6115235A (en) | Central processor | |
| JPH04101252A (en) | Address conversion buffer clearing system | |
| JPH0664550B2 (en) | Buffer memory control system |