JPH07234817A - Address converting method - Google Patents

Address converting method

Info

Publication number
JPH07234817A
JPH07234817A JP6027032A JP2703294A JPH07234817A JP H07234817 A JPH07234817 A JP H07234817A JP 6027032 A JP6027032 A JP 6027032A JP 2703294 A JP2703294 A JP 2703294A JP H07234817 A JPH07234817 A JP H07234817A
Authority
JP
Japan
Prior art keywords
page
address
translation
address translation
stored
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
JP6027032A
Other languages
Japanese (ja)
Other versions
JP3288170B2 (en
Inventor
Mamoru Kurata
守 倉田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP02703294A priority Critical patent/JP3288170B2/en
Publication of JPH07234817A publication Critical patent/JPH07234817A/en
Application granted granted Critical
Publication of JP3288170B2 publication Critical patent/JP3288170B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To reduce the generation of a TLB miss by performing address conversion for the periphery of one page when the address of the page is converted, and storing peripheral page conversion table information in a TLB. CONSTITUTION:Once an acknowledgement signal 11 is asserted, a TLB (conversion index buffer mechanism) access signal 12 is asserted for two cycles and TLB indexing is carried out for an (n)th page. In the address converting process stage for the (n)th page, the conversion table information on its peripheral page is stored in the TLB unless the conversion table of pages in the periphery of the (n)th page is stored in the TLB. When the address conversion of a peripheral page becomes necessary in the near future, the conversion table information obtained by the address conversion of the peripheral page need not be transferred from a main storage and stored in the TLB to enable speedy processing. In this case, an (n+1)th page is specially selected as the peripheral page.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、ページアドレス方式に
よる動的アドレス変換と、変換索引緩衝機構(Tran
slation Lookaside Buffer:
以下、TLBと呼ぶ)とを有する情報処理装置に関する
ものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to dynamic address translation by the page address method and translation index buffer mechanism (Tran).
slation Lookaside Buffer:
Hereinafter referred to as TLB).

【0002】[0002]

【従来の技術】従来の通常のコンピュータにおいては、
仮想記憶方式が多く採用されている。このような仮想記
憶方式を採用したコンピュータにおいて、処理装置が主
記憶上に格納されているデータをアクセスする際には、
そのデータの主記憶上での所在位置を表すアドレス(以
下、実アドレスと呼ぶ)とは別個に、所定の論理アドレ
スを用いてアクセスが行われる。したがって、この論理
アドレスから、実アドレスへの変換手段が一般に必要で
ある。
2. Description of the Related Art In a conventional ordinary computer,
Many virtual memory systems are used. In a computer adopting such a virtual memory system, when the processing device accesses the data stored in the main memory,
Access is performed using a predetermined logical address separately from an address (hereinafter, referred to as a real address) indicating the location of the data in the main memory. Therefore, a means for converting this logical address into a real address is generally required.

【0003】また、多重仮想記憶方式においては、複数
個のアドレス空間が設けられており、1つの仮想空間に
は1つのジョブしか存在しない。そのため、この多重仮
想記憶方式においては、同時に動作するジョブの個数に
応じてその個数と同数の仮想空間が用意されるのであ
る。そして、仮想空間のアドレスと実アドレスとの対応
付けを行う処理が各仮想空間ごとに行われることにな
る。かかる対応付けの結果は、オペレーティング・シス
テムが管理する主記憶上のアドレス変換テーブル上に格
納されている。
Further, in the multiple virtual memory system, a plurality of address spaces are provided and only one job exists in one virtual space. Therefore, in this multiple virtual storage system, as many virtual spaces as the number of jobs that operate simultaneously are prepared. Then, the process of associating the address of the virtual space with the real address is performed for each virtual space. The result of such association is stored in the address conversion table on the main memory managed by the operating system.

【0004】このようなアドレス変換手段を有するコン
ピュータにおいては、その変換を高速にするために、い
わゆるTLB(Translation Lookas
ide Buffer)が備えられている。
In a computer having such address conversion means, in order to speed up the conversion, so-called TLB (Translation Lookas) is used.
ide Buffer) is provided.

【0005】図5には、このTLBを備えた仮想記憶方
式を用いた計算機システムの処理装置における一般的な
アドレス変換部分の構成図が示されている。図5に示さ
れているように、アドレス変換の対象である論理アドレ
スは、論理アドレスバス1を介して論理アドレスレジス
タ2に格納される。この格納と同時に、論理アドレスの
一部のビットを用いてTLBのエントリが決定され、こ
のエントリに基づいて、TLB5において索引が行われ
る。図5に示されている例では、6ビットから19ビッ
トまでを用いてTLB5における索引が行われている。
TLB5はこの索引を行うことによって、変換情報を出
力する。この変換情報は、比較回路6において、論理ア
ドレス内の所定のビットと比較される。図5に示されて
いる例では、論理アドレスの1ビットから14ビットま
でが、この変換情報と比較されている。
FIG. 5 is a block diagram of a general address conversion part in a processor of a computer system using the virtual memory system having the TLB. As shown in FIG. 5, the logical address that is the target of address translation is stored in the logical address register 2 via the logical address bus 1. At the same time as this storage, a TLB entry is determined by using a part of the bits of the logical address, and the TLB 5 is indexed based on this entry. In the example shown in FIG. 5, 6 to 19 bits are used for indexing in TLB5.
The TLB 5 outputs the conversion information by performing this index. This conversion information is compared with a predetermined bit in the logical address in the comparison circuit 6. In the example shown in FIG. 5, 1 to 14 bits of the logical address are compared with this conversion information.

【0006】この比較の結果、一致していれば、この状
態をいわゆる「TLBヒット」と呼び、不一致であれば
これを「TLBミス」と呼ぶ。そして、TLBヒットの
場合においては、TLB5内のデータが実アドレスの上
位ビットとして、論理アドレスの下位ビットが実アドレ
スの下位ビットとして、それぞれ実アドレスレジスタ7
に格納される。このようにして、実アドレスレジスタ7
に格納された実アドレスは、実アドレスバス8出力され
る。一方、上記比較の結果、TLBミスであった場合に
は、TLB5は用いられず、図示されていない主記憶か
ら変換テーブル情報をフェッチし、この変換テーブル情
報をデータバス3を介してデータレジスタ4に格納す
る。そして、このデータレジスタ4に格納された変換テ
ーブル情報がTLB5に格納される。これによって、次
回のメモリアクセスからはTLB5によるアドレス変換
が行われる。
As a result of this comparison, if they match, this state is called a "TLB hit", and if they do not match, this state is called a "TLB miss". In the case of a TLB hit, the data in the TLB 5 is used as the upper bits of the real address, the lower bit of the logical address is used as the lower bit of the real address, and the real address register 7 is used.
Stored in. In this way, the real address register 7
The real address stored in is output to the real address bus 8. On the other hand, as a result of the comparison, if the TLB miss is detected, the TLB 5 is not used, the conversion table information is fetched from the main memory (not shown), and the conversion table information is transferred via the data bus 3 to the data register 4. To store. Then, the conversion table information stored in the data register 4 is stored in the TLB 5. As a result, the address conversion by the TLB 5 is performed from the next memory access.

【0007】このように、計算機において命令を実行す
る際には、その実行に先立ち、該当する命令またはオペ
ランドが格納されているアドレスに対応する変換テーブ
ル情報が既にTLB5に格納されているか否かが調べら
れ、もしTLB5内に格納されていればこのTLB5内
の変換テーブル情報を用いて、上述したようにアドレス
変換が行われる。一方、TLB5内に係る変換テーブル
情報が格納されていなければ、主記憶上に記憶されてい
る変換テーブル情報をフェッチし、その変換テーブル情
報を用いてアドレス変換を行うとともに、その変換テー
ブル情報をTLB5内に格納する。
As described above, when an instruction is executed in the computer, whether or not the conversion table information corresponding to the address where the corresponding instruction or operand is stored is already stored in the TLB 5 before the execution. It is checked, and if it is stored in the TLB 5, the address conversion is performed as described above using the conversion table information in the TLB 5. On the other hand, if the conversion table information related to the TLB5 is not stored, the conversion table information stored in the main memory is fetched, the address conversion is performed using the conversion table information, and the conversion table information is stored in the TLB5. Store in.

【0008】図6には、従来のアドレス変換の動作の一
例を説明するタイムチャートが示されている。図6に示
されているタイムチャートは、2相クロック式の計算機
システムにおいて、2段階のページアドレス変換方式を
用いた従来のアドレス変換による主要な信号のタイムチ
ャートである。
FIG. 6 shows a time chart for explaining an example of the conventional address conversion operation. The time chart shown in FIG. 6 is a time chart of main signals by conventional address conversion using a two-stage page address conversion method in a two-phase clock type computer system.

【0009】まず、命令を実行するために、命令リクエ
スト信号10がアサートされると、内部処理がBusy
でなければ、アクノリッジ信号11がアサートされる。
このアクノリッジ信号11がアサートされると、すぐに
TLBアクセス信号12によって、TLB内の索引が実
行される。この索引が実行された結果は、TLBヒット
信号13またはTLBミス信号14によって報告され
る。図6に示されているタイムチャートには、TLBミ
スの場合の例が示されており、図に示されているように
TLBミス信号14がアサートされている。このTLB
ミス信号がアサートされることにより、変換テーブル情
報を主記憶からフェッチしなければならないことが判明
する。したがって、アドレス変換中信号15がアサート
されるとともに、変換テーブルフェッチ要求信号16が
アサートされる。変換テーブルフェッチ要求信号16の
アサートによって、バスの転送優先権が受理されると
(すなわち、バスの使用権が与えられると)、バス転送
優先権アクノリッジ信号17がアサートされる。これに
よって、データバス上にSTE、PTEもしくはKEY
の転送が開始され、バス転送終了信号18のアサートを
以て、STE、PTEもしくはKEYの転送が終了され
る。なお、データバス上に流れるデータの種類は、ST
Eフェッチ信号19、PTEフェッチ信号20もしくは
KEYフェッチ信号21のいずれかがアサートされるこ
とにより、判別される。
First, when an instruction request signal 10 is asserted in order to execute an instruction, internal processing is busy.
Otherwise, the acknowledge signal 11 is asserted.
Immediately after the acknowledge signal 11 is asserted, the TLB access signal 12 executes the index in the TLB. The result of this indexing is reported by the TLB hit signal 13 or TLB miss signal 14. The time chart shown in FIG. 6 shows an example in the case of a TLB miss, and the TLB miss signal 14 is asserted as shown in the figure. This TLB
The assertion of the miss signal reveals that the translation table information must be fetched from main memory. Therefore, the address translation in progress signal 15 is asserted and the translation table fetch request signal 16 is asserted. When the bus transfer priority is accepted by asserting the conversion table fetch request signal 16 (that is, when the bus usage right is given), the bus transfer priority acknowledge signal 17 is asserted. This allows STE, PTE or KEY on the data bus.
Is started, and the bus transfer end signal 18 is asserted to end the transfer of STE, PTE or KEY. The type of data flowing on the data bus is ST
The determination is made by asserting any of the E fetch signal 19, the PTE fetch signal 20, and the KEY fetch signal 21.

【0010】なお、基本的なアドレス変換の方式は、大
須賀節夫、近谷秀明、「ハードウェアの知識」、オーム
社、に詳述されている。
The basic address conversion method is described in detail in Setsuo Osuga, Hideaki Chikaya, "Knowledge of Hardware", Ohmsha.

【0011】[0011]

【発明が解決しようとする課題】以上述べたように、従
来の情報処理装置においては、任意のページに対しての
アドレス変換は、実際にそのページを使用する段階にな
って初めて行われる。また、アドレス変換時にTLBミ
スし、そのアドレスの変換テーブル情報を主記憶からフ
ェッチしてTLBに格納する場合には、そのフェッチに
費やす時間及び読み出し要求時に、フェッチに使用する
主記憶とTLBとの間のバスの優先権がとれるまで、一
定の待ち時間が必要である。このように、実際の処理に
先行するオーバーヘッド時間が大きくなり、命令処理の
性能低下が生じてしまうという問題があった。その一
方、図6において、期間Tで示されているように、次の
命令のリクエストがあるまで、内部処理や、パスなどが
アイドル状態となり効率が悪いという問題があった。
As described above, in the conventional information processing apparatus, address translation for an arbitrary page is performed only when the page is actually used. Further, when a TLB miss occurs during address translation and the translation table information of that address is fetched from the main memory and stored in the TLB, the main memory used for fetching and the TLB are A certain waiting time is required until the priority of the bus in between can be taken. As described above, there is a problem that the overhead time preceding the actual processing becomes large and the performance of the instruction processing deteriorates. On the other hand, as shown in the period T in FIG. 6, there is a problem that internal processing and paths are in an idle state until the next instruction is requested, resulting in poor efficiency.

【0012】本発明は、上記課題に鑑みなされたもので
あり、その目的は、実際にそのページを使用する段階に
なってからアドレス変換を実施したときのアドレス変換
のオーバーヘッドを低減し、アドレス変換における命令
処理性能を向上させることである。
The present invention has been made in view of the above problems, and an object thereof is to reduce the overhead of address translation when the address translation is performed after the page is actually used, and the address translation is performed. Is to improve the instruction processing performance.

【0013】[0013]

【課題を解決するための手段】第一の本発明は上記課題
を解決するために、主記憶上のアドレス変換テーブルを
用いてページアドレス変換方式によるアドレス変換を行
う第一のアドレス変換手段と、前記アドレス変換テーブ
ルの一部のページのテーブルが格納された変換索引緩衝
機構を用いて前記第一のアドレス変換手段より高速にア
ドレス変換を行う第二のアドレス変換手段と、を有する
コンピュータ上のアドレス変換方法において、変換対象
であるアドレスが、前記変換索引緩衝機構に格納されて
いるページに含まれる場合には、前記第二のアドレス変
換手段によってアドレス変換を行う第一のアドレス変換
ステップと、変換対象であるアドレスが、前記変換索引
緩衝機構に格納されているページに含まれていない場合
には、前記第一のアドレス変換手段が、前記主記憶上の
アドレス変換テーブルから、アドレス変換に必要なペー
ジのテーブルを読み出し、この読み出したページのテー
ブルを用いてアドレス変換を行うとともに、その読み出
したページのテーブルを前記変換索引緩衝機構に格納す
る第二のアドレス変換ステップと、を含み、前記第一の
アドレス変換ステップまたは第二のアドレス変換ステッ
プの後に引き続いて実行されるステップであって、前記
変換対象であるアドレスが含まれるnページに隣接する
n+1ページが、前記変換索引緩衝機構に格納されてい
るか否かを検査し、この検査の結果、格納されてない場
合には、前記n+1ページのテーブルを前記主記憶から
読み出し、前記変換索引緩衝機構に格納する格納ステッ
プと、を含むことを特徴とするアドレス変換方法であ
る。
In order to solve the above-mentioned problems, the first aspect of the present invention includes first address conversion means for performing address conversion by a page address conversion method using an address conversion table on a main memory, An address on a computer having a second address translation unit that performs address translation faster than the first address translation unit by using a translation index buffering mechanism that stores a table of some pages of the address translation table. In the translation method, when the address to be translated is included in the page stored in the translation index buffer mechanism, a first address translation step of performing address translation by the second address translation means, If the address of interest is not included in the page stored in the translation lookaside buffer, then the first The address conversion means reads a table of pages required for address conversion from the address conversion table on the main memory, performs address conversion using the read page table, and converts the read page table into the conversion. A second address translation step of storing in the index buffer mechanism, which is a step that is subsequently executed after the first address translation step or the second address translation step, wherein the address to be translated is It is checked whether or not the n + 1 page adjacent to the included n page is stored in the conversion index buffering mechanism. If the result of this check is that it is not stored, the table of the n + 1 page is stored in the main memory. Storing and storing in the conversion index buffering mechanism. It is a scan conversion method.

【0014】第二の本発明は上記課題を解決するため
に、主記憶上のアドレス変換テーブルを用いてページア
ドレス変換方式によるアドレス変換を行う第一のアドレ
ス変換手段と、前記アドレス変換テーブルの一部のペー
ジのテーブルが格納された変換索引緩衝機構を用いて前
記第一のアドレス変換手段より高速にアドレス変換を行
う第二のアドレス変換手段と、を有するコンピュータ上
のアドレス変換方法において、変換対象であるアドレス
が、前記変換索引緩衝機構に格納されているページに含
まれる場合には、前記第二のアドレス変換手段によって
アドレス変換を行う第一のアドレス変換ステップと、変
換対象であるアドレスが、前記変換索引緩衝機構に格納
されているページに含まれていない場合には、前記第一
のアドレス変換手段が、前記主記憶上のアドレス変換テ
ーブルから、アドレス変換に必要なページのテーブルを
読み出し、この読み出したページのテーブルを用いてア
ドレス変換を行うとともに、その読み出したページのテ
ーブルを前記変換索引緩衝機構に格納する第二のアドレ
ス変換ステップと、を含み、前記第一のアドレス変換ス
テップまたは第二のアドレス変換ステップの後に引き続
いて実行されるステップであって、前記変換対象である
アドレスが含まれるnページに隣接するn−1ページ
が、前記変換索引緩衝機構に格納されているか否かを検
査し、この検査の結果、格納されてない場合には、前記
n−1ページのテーブルを前記主記憶から読み出し、前
記変換索引緩衝機構に格納する格納ステップと、を含む
ことを特徴とするアドレス変換方法である。
In order to solve the above-mentioned problems, the second aspect of the present invention includes a first address translation means for performing address translation by a page address translation method using an address translation table on a main memory, and an address translation table. An address translation method on a computer having a second address translation unit that performs address translation faster than the first address translation unit using a translation index buffering mechanism that stores a table of pages When the address that is included in the page stored in the translation index buffer mechanism, the first address translation step of performing address translation by the second address translation unit, and the address that is the translation target, If not included in the page stored in the translation index buffer mechanism, the first address translation means , A page table necessary for address conversion is read from the address conversion table in the main memory, address conversion is performed using the read page table, and the read page table is used as the conversion index buffer mechanism. A second address translation step of storing, a step that is executed subsequent to the first address translation step or the second address translation step, the n pages including the address to be translated. It is checked whether or not an n-1 page adjacent to is stored in the conversion index buffer mechanism. If the result of this check is that it is not stored, the table of the n-1 page is stored in the main memory. A storage step of reading and storing in the translation index buffering mechanism. .

【0015】第三の本発明は上記課題を解決するため
に、主記憶上のアドレス変換テーブルを用いてページア
ドレス変換方式によるアドレス変換を行う第一のアドレ
ス変換手段と、前記アドレス変換テーブルの一部のペー
ジのテーブルが格納された変換索引緩衝機構を用いて前
記第一のアドレス変換手段より高速にアドレス変換を行
う第二のアドレス変換手段と、を有するコンピュータ上
のアドレス変換方法において、変換対象であるアドレス
が、前記変換索引緩衝機構に格納されているページに含
まれる場合には、前記第二のアドレス変換手段によって
アドレス変換を行う第一のアドレス変換ステップと、変
換対象であるアドレスが、前記変換索引緩衝機構に格納
されているページに含まれていない場合には、前記第一
のアドレス変換手段が、前記主記憶上のアドレス変換テ
ーブルから、アドレス変換に必要なページのテーブルを
読み出し、この読み出したページのテーブルを用いてア
ドレス変換を行うとともに、その読み出したページのテ
ーブルを前記変換索引緩衝機構に格納する第二のアドレ
ス変換ステップと、を含み、前記第一のアドレス変換ス
テップまたは第二のアドレス変換ステップの後に引き続
いて実行されるステップであって、前記変換対象である
アドレスが、このアドレスが含まれるnページ内での位
置を判定する判定ステップと、前記判定ステップにおい
て、前記変換対象であるアドレスが前記nページ内で、
後半に存在すると判定された場合に、n+1ページが、
前記変換索引緩衝機構に格納されているか否かを検査
し、この検査の結果、格納されてない場合には、前記n
+1ページのテーブルを前記主記憶から読み出し、前記
変換索引緩衝機構に格納する次ページ格納ステップと、
前記判定ステップにおいて、前記変換対象であるアドレ
スが前記nページ内で、前半に存在すると判定された場
合に、n−1ページが、前記変換索引緩衝機構に格納さ
れているか否かを検査し、この検査の結果、格納されて
ない場合には、前記n−1ページのテーブルを前記主記
憶から読み出し、前記変換索引緩衝機構に格納する前ペ
ージ格納ステップと、を含むことを特徴とするアドレス
変換方法である。
In order to solve the above problems, a third aspect of the present invention includes a first address conversion means for performing address conversion by a page address conversion method using an address conversion table on a main memory, and the address conversion table. An address translation method on a computer having a second address translation unit that performs address translation faster than the first address translation unit using a translation index buffering mechanism that stores a table of pages When the address that is included in the page stored in the translation index buffer mechanism, the first address translation step of performing address translation by the second address translation unit, and the address that is the translation target, If not included in the page stored in the translation index buffer mechanism, the first address translation means , A page table necessary for address conversion is read from the address conversion table in the main memory, address conversion is performed using the read page table, and the read page table is used as the conversion index buffer mechanism. A second address translation step of storing, which is a step that is executed subsequently to the first address translation step or the second address translation step, wherein the address to be translated is In the determining step of determining the position within the included n page, and in the determining step, the address to be converted is within the n page,
When it is determined that the page exists in the second half, n + 1 pages are
It is checked whether or not it is stored in the conversion index buffering mechanism. If the result of this check is that it is not stored, then n
A next page storing step of reading a + 1-page table from the main memory and storing it in the conversion index buffer mechanism;
In the determination step, if it is determined that the address to be translated exists in the first half of the n pages, it is checked whether or not n−1 pages are stored in the translation index buffer mechanism, If the result of this check is that it is not stored, a step of storing the previous page for reading the table of the n−1 page from the main memory and storing it in the translation index buffering mechanism is included. Is the way.

【0016】第四の本発明は上記課題を解決するため
に、第一の本発明のアドレス変換方法において、前記格
納ステップは、前記第一のアドレス変換ステップまたは
第二のアドレス変換ステップの後に引き続いて実行さ
れ、前記変換対象であるアドレスが含まれるnページに
対してn+1ページ方向のページに対して前記変換索引
緩衝機構に格納されているか否かを順に検査し、格納さ
れていないページが見つかるまで検査を行うステップで
あって、前記変換索引緩衝機構に格納されていないペー
ジが発見された場合には、そのページのテーブルを前記
主記憶から読み出し、前記変換索引緩衝機構に格納する
ことを特徴とするアドレス変換方法である。
In order to solve the above-mentioned problems, a fourth aspect of the present invention is the address translation method of the first aspect of the present invention, wherein the storing step continues after the first address translation step or the second address translation step. Is executed to check whether or not n pages including the address to be translated are stored in the translation index buffering mechanism for pages in the direction of n + 1 page, and finds an unstored page. Up to the step of checking, when a page not stored in the conversion index buffer mechanism is found, a table of the page is read from the main memory and stored in the conversion index buffer mechanism. This is the address translation method.

【0017】第五の本発明は上記課題を解決するため
に、第二の本発明のアドレス変換方法において、前記格
納ステップは、前記第一のアドレス変換ステップまたは
第二のアドレス変換ステップの後に引き続いて実行さ
れ、前記変換対象であるアドレスが含まれるnページに
対してn−1ページ方向のページに対して前記変換索引
緩衝機構に格納されているか否かを順に検査し、格納さ
れていないページが見つかるまで検査を行うステップで
あって、前記変換索引緩衝機構に格納されていないペー
ジが発見された場合には、そのページのテーブルを前記
主記憶から読み出し、前記変換索引緩衝機構に格納する
ことを特徴とするアドレス変換方法である。
In order to solve the above-mentioned problems, the fifth aspect of the present invention is the address translation method of the second aspect of the present invention, wherein the storing step continues after the first address translation step or the second address translation step. Executed, and sequentially checks whether or not n pages including the address to be translated are stored in the translation index buffer mechanism with respect to pages in the n−1 page direction, and unstored pages Is found until a page not found in the conversion index buffer is found, the table of the page is read from the main memory and stored in the conversion index buffer. The address translation method is characterized by.

【0018】第六の本発明は上記課題を解決するため
に、第三の本発明のアドレス変換方法において、前記次
ページ格納ステップは、前記第一のアドレス変換ステッ
プまたは第二のアドレス変換ステップの後に引き続いて
実行され、前記変換対象であるアドレスが含まれるnペ
ージの前方のページに対して前記変換索引緩衝機構に格
納されているか否かを順に検査し、格納されていないペ
ージが見つかるまで検査を行うステップであって、前記
変換索引緩衝機構に格納されていないページが発見され
た場合には、そのページのテーブルを前記主記憶から読
み出し、前記変換索引緩衝機構に格納し、前記前ページ
格納ステップは、前記第一のアドレス変換ステップまた
は第二のアドレス変換ステップの後に引き続いて実行さ
れ、前記変換対象であるアドレスが含まれるnページの
後方のページに対して前記変換索引緩衝機構に格納され
ているか否かを順に検査し、格納されていないページが
見つかるまで検査を行うステップであって、前記変換索
引緩衝機構に格納されていないページが発見された場合
には、そのページのテーブルを前記主記憶から読み出
し、前記変換索引緩衝機構に格納することを特徴とする
アドレス変換方法である。
In order to solve the above-mentioned problems, a sixth aspect of the present invention is the address translation method of the third aspect of the present invention, wherein the next page storing step is the first address translation step or the second address translation step. Subsequent execution is performed to sequentially check whether or not the page preceding the n-th page containing the address to be translated is stored in the translation index buffer mechanism, and checks until an unstored page is found. And a page not stored in the conversion index buffer mechanism is found, the table of the page is read from the main memory, stored in the conversion index buffer mechanism, and stored in the previous page. A step is executed after the first address translation step or the second address translation step, and A page after the n-th page containing the address to be stored is sequentially checked whether or not it is stored in the conversion index buffering mechanism, and a check is performed until an unstored page is found. When a page not stored in the buffer mechanism is found, the table of the page is read from the main memory and stored in the translation index buffer mechanism.

【0019】第七の本発明は上記課題を解決するため
に、第一または第二または第三または第四または第五ま
たは第六の本発明のアドレス変換方法において、前記格
納ステップもしくは前ページ格納ステップもしくは次ペ
ージ格納ステップにおける処理を実行中に、他のページ
のアドレス変換の要求が生じた場合には、前記格納ステ
ップもしくは前ページ格納ステップもしくは次ページ格
納ステップにおける処理を中止し、前記他のページのア
ドレス変換が実行されることを特徴とするアドレス変換
方法である。
In order to solve the above problems, a seventh aspect of the present invention is the address translation method of the first or second or third or fourth or fifth or sixth aspect of the present invention, wherein the storing step or the previous page storing is performed. When a request for address conversion of another page is made during execution of the process in the step or the next page storing step, the process in the storing step, the previous page storing step or the next page storing step is stopped, and the other This is an address conversion method characterized in that page address conversion is executed.

【0020】[0020]

【作用】第一の本発明から、第三の本発明においては、
第nページに対するアドレス変換処理段階において、そ
の第nページの周辺ページの変換テーブルが変換索引緩
衝機構に格納されていないときには、その周辺ページの
変換テーブル情報を変換索引緩衝機構に格納したのであ
る。したがって、近い将来その周辺ページのアドレス変
換が必要になった場合にその周辺ページのアドレス変換
による変換テーブル情報を主記憶から変換索引緩衝機構
に転送、格納する必要がなくなり、迅速な処理が可能と
なる。
From the first aspect of the present invention to the third aspect of the present invention,
When the translation table of the peripheral page of the n-th page is not stored in the translation index buffer mechanism in the address translation processing stage for the n-th page, the translation table information of the peripheral page is stored in the translation index buffer mechanism. Therefore, when the address conversion of the peripheral page is required in the near future, it is not necessary to transfer and store the conversion table information by the address conversion of the peripheral page from the main memory to the conversion index buffer mechanism, which enables quick processing. Become.

【0021】特に、第一の本発明は周辺ページとして第
n+1ページを選んだものであり、第二の本発明は周辺
ページとして第n−1ページを選んだものである。
In particular, the first aspect of the present invention selects the (n + 1) th page as the peripheral page, and the second aspect of the present invention selects the (n-1) th page as the peripheral page.

【0022】また、第三の本発明は、周辺ページとし
て、第nページに対するアドレス変換の要因となった論
理アドレスが第nページのn−1ページ方向に存在する
のか、それともn+1ページ方向に存在するのかに基づ
いて、周辺ページとしてそれぞれ第n−1ページか、も
しくは、第n+1ページのいずれか一方を自動的に選択
する。
Further, according to the third aspect of the present invention, whether or not the logical address that has caused the address translation for the nth page exists as the peripheral page in the n-1 page direction of the nth page or in the n + 1 page direction. Either the (n-1) th page or the (n + 1) th page is automatically selected as the peripheral page, depending on whether to perform it.

【0023】また、第四の本発明から第六の本発明にお
いては、上記第nページの周辺ページであって、その変
換テーブルが変換索引緩衝機構に格納されていないペー
ジを探し、このページの変換テーブルを変換索引緩衝機
構に格納する。そして、ページを探す方向は、第四の本
発明から第六の本発明まで、それぞれ、上記第一の本発
明から第三の本発明にまで対応している。
Further, in the fourth to sixth inventions, a page which is a peripheral page of the nth page and whose conversion table is not stored in the conversion index buffering mechanism is searched for, and this page is searched. Store the translation table in the translation lookaside buffer. The directions for searching pages correspond to the fourth invention to the sixth invention, and the first invention to the third invention, respectively.

【0024】また、第七の本発明は、上記第一から第六
までの本発明において、中編ページに対する変換テーブ
ルを変換索引緩衝機構に格納する処理が、他のページに
対するメモリアクセスが生じた場合には中止される。し
たがって、プログラムの処理の実行を待たせてしまうこ
とがない。
In the seventh aspect of the present invention, in the first to sixth aspects of the present invention, the process of storing the conversion table for the middle page in the conversion index buffer mechanism causes memory access to other pages. In some cases it will be discontinued. Therefore, the execution of the processing of the program is not kept waiting.

【0025】[0025]

【実施例】以下、本発明の好適な実施例を図面に基づい
て説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT A preferred embodiment of the present invention will be described below with reference to the drawings.

【0026】実施例1.1 本実施例1.1は、第一の本発明の好適な実施例であ
る。図1には、本実施例1.1に係る計算機システムに
おけるアドレス変換時の主要な信号のタイムチャートが
示されている。
Example 1.1 This example 1.1 is a preferred example of the first aspect of the present invention. FIG. 1 shows a time chart of main signals at the time of address conversion in the computer system according to the present embodiment 1.1.

【0027】本実施例に係る計算機システムは、2相ク
ロック式の計算機システムであり、2段階のページアド
レス変換方式を採用している。
The computer system according to this embodiment is a two-phase clock type computer system and employs a two-stage page address conversion system.

【0028】まず、第nページに属するアドレスAの命
令リクエストがあると、命令リクエスト信号10がアサ
ートされる。このとき、内部処理がBusyでなけれ
ば、アクノリッジ信号11がアサートされるとともに内
部処理が開始される。アクノリッジ信号11がアサート
されると、直ちに、TLBアクセス信号12が、2サイ
クルに亘ってアサートされる。この1サイクル目におけ
るTLBアクセス信号のアサートにより、上記第nペー
ジのTLB索引が実施される。このTLB索引の結果が
TLBヒット信号13もしくはTLBミス信号14とし
て報告される。図1に示されている例においては、TL
Bミスが生じた場合の例について説明されている。した
がって、TLBミス信号14がアサートされており、変
換テーブル情報を主記憶からフェッチする必要がある。
First, when there is an instruction request for address A belonging to the nth page, the instruction request signal 10 is asserted. At this time, if the internal processing is not Busy, the acknowledge signal 11 is asserted and the internal processing is started. Immediately after the acknowledge signal 11 is asserted, the TLB access signal 12 is asserted for two cycles. By asserting the TLB access signal in the first cycle, the n-th page TLB index is executed. The result of this TLB index is reported as TLB hit signal 13 or TLB miss signal 14. In the example shown in FIG. 1, TL
An example of the case where a B mistake occurs is described. Therefore, the TLB miss signal 14 is asserted, and the conversion table information needs to be fetched from the main memory.

【0029】変換テーブル情報を主記憶からフェッチす
るために、アドレス変換中信号15がアサートされると
ともに、変換テーブルフェッチ要求信号16がアサート
される。この信号のアサートにより、バス転送優先権が
受理されると、バス転送優先権アクノリッジ信号17が
アサートされ、データバス上にSTE、PTEもしくは
KEYの転送が開始される。そして、バス転送終了信号
18のアサートを以て、STE、PTEもしくはKEY
の転送が終了される。また、上述した従来の動作と同様
に、STEフェッチ信号19、PTEフェッチ信号20
もしくはKEYフェッチ信号21のいずれかの信号がア
サートされることにより示される。
In order to fetch the conversion table information from the main memory, the address conversion in progress signal 15 is asserted and the conversion table fetch request signal 16 is asserted. When the bus transfer priority is accepted by asserting this signal, the bus transfer priority acknowledge signal 17 is asserted, and the transfer of STE, PTE or KEY on the data bus is started. Then, by asserting the bus transfer end signal 18, STE, PTE, or KEY
Transfer is completed. Further, similar to the conventional operation described above, the STE fetch signal 19 and the PTE fetch signal 20
Alternatively, it is indicated by asserting one of the KEY fetch signals 21.

【0030】一方、アクノリッジ信号11をアサートす
ることにより、ページ保持レジスタの内容22が第n+
1ページの情報を保持し、2サイクル目のTLBアクセ
ス信号12がアサートされているので、第n+1ページ
についての索引が開始される。そして、この結果が、T
LBヒット信号13もしくはTLBミス信号14として
報告される。本実施例1においては、TLBミスの場合
を説明する。すなわち、第nページに引き続いて第n+
1ページにおいてもTLBミスが生じ、2サイクル連続
してTLBミス信号14がアサートされている。この第
n+1ページについてのTLBミス信号14がアサート
されると、変換テーブル情報を主記憶からフェッチする
必要があるが、既に第nページについてのアドレス変換
中信号15がアサートされているため、第n+1ページ
については、アドレス変換を実行することができない。
そのため、アドレス変換リクエスト信号23をアサート
し、第nページについてのアドレス変換の終了を待つこ
とになる。
On the other hand, by asserting the acknowledge signal 11, the content 22 of the page holding register is changed to the (n +) th.
Since the information of the first page is held and the TLB access signal 12 of the second cycle is asserted, the index for the (n + 1) th page is started. And this result is T
Reported as LB hit signal 13 or TLB miss signal 14. In the first embodiment, the case of TLB miss will be described. That is, after the nth page, the n + th page
A TLB miss occurs even in one page, and the TLB miss signal 14 is asserted for two consecutive cycles. When the TLB miss signal 14 for the (n + 1) th page is asserted, the translation table information needs to be fetched from the main memory. However, since the address translating signal 15 for the nth page has already been asserted, the (n + 1) th page. Address translation cannot be performed for pages.
Therefore, the address translation request signal 23 is asserted, and the end of the address translation for the nth page is waited for.

【0031】第nページについてのアドレス変換が終了
すると、アドレス変換中信号15がネゲートされる。こ
の結果、直ちにアドレス変換リクエスト信号23による
要求が受理されて、アドレス変換リクエスト信号23は
ネゲートされる。この結果、アドレス変換中信号24が
アサートされ、変換テーブルフェッチ要求信号16がア
サートされる。変換テーブルフェッチ要求信号16のア
サートにより、バス転送優先権が受理された場合、バス
転送優先権アクノリッジ信号17がアサートされ、デー
タバス上にSTE、PTEもしくはKEYの転送が開始
される。そして、バス転送終了信号18のアサートを以
て、STE、PTEもしくはKEYの転送が終了され
る。また、上述した従来の動作と同様に、STEフェッ
チ信号19、PTEフェッチ信号20もしくはKEYフ
ェッチ信号21のいずれかの信号がアサートされること
により示される。
When the address conversion for the nth page is completed, the address conversion in progress signal 15 is negated. As a result, the request by the address translation request signal 23 is immediately accepted and the address translation request signal 23 is negated. As a result, the address translating signal 24 is asserted and the translation table fetch request signal 16 is asserted. When the bus transfer priority is accepted by asserting the conversion table fetch request signal 16, the bus transfer priority acknowledge signal 17 is asserted, and the transfer of STE, PTE or KEY is started on the data bus. Then, by asserting the bus transfer end signal 18, the transfer of STE, PTE, or KEY is ended. Further, like the conventional operation described above, it is indicated by asserting one of the STE fetch signal 19, the PTE fetch signal 20, and the KEY fetch signal 21.

【0032】実施例1.2 なお、上記実施例1.1においては、第nページに対す
るアドレス変換が行われたときに、第n+1ページに対
してTLBヒットするか否かを検査し、TLBミスした
場合には、第n+1ページに対するアドレス変換情報を
TLBに格納した。
Embodiment 1.2 In Embodiment 1.1, it is checked whether or not there is a TLB hit for the (n + 1) th page when the address translation for the nth page is performed, and a TLB miss is detected. In that case, the address translation information for the (n + 1) th page is stored in the TLB.

【0033】一方、本実施例1.2においては、第nペ
ージに対するアドレス変換が行われたときに、第n−1
ページに対してTLBヒットするか否かを検査した。本
実施例2の場合も同様に、TLBミスした場合には、第
n−1ページに対するアドレス変換情報をTLBに格納
することになる。
On the other hand, in the present embodiment 1.2, when the address conversion for the nth page is performed, the n-1th
It was inspected whether a TLB hit was made to the page. Similarly in the case of the second embodiment, when a TLB miss occurs, the address translation information for the (n-1) th page is stored in the TLB.

【0034】実施例2 第三の本発明の好適な実施例を説明する。例えば、図5
に示されているように、論理アドレスの1ビット目から
19ビット目まで(これを、本文ではアドレス(1:1
9)のように表す)により、ページ情報が確定する場
合、論理アドレスの20ビット目(これを、本文では、
アドレス(20)のように表す)が0ならばアドレスの
所在位置は、第nページ目の前半であることがわかり、
また、論理アドレス(20)=1である場合には、アド
レスの所在位置は、第nページ目の後半であることがわ
かる。
Embodiment 2 A preferred embodiment of the third invention will be described. For example, in FIG.
, The first to 19th bits of the logical address (this is the address (1: 1
When the page information is decided by the expression (9), the 20th bit of the logical address (this is
If the address (represented like 20) is 0, it can be seen that the location of the address is the first half of the nth page,
Further, when the logical address (20) = 1, it can be seen that the location of the address is the latter half of the nth page.

【0035】論理アドレスの所在位置がページの後半、
すなわちn+1ページに近い位置に存在している場合に
は、上記実施例1.1と同様の処理を行う。すなわち、
第n+1ページ目についてTLBミスが生じるか否かが
判断されるのである。
The location of the logical address is the latter half of the page,
That is, when it exists at a position close to the page n + 1, the same processing as that in the above-mentioned Embodiment 1.1 is performed. That is,
It is determined whether or not a TLB miss occurs for the (n + 1) th page.

【0036】一方、論理アドレスの所在位置がページの
前半、すなわちn−1ページに近い位置に存在している
場合には、上記実施例1.2と同様の処理を行う。すな
わち、第n−1ページ目についてTLBミスが生じるか
否かが判断されるのである。
On the other hand, when the location of the logical address is in the first half of the page, that is, at a position close to the (n-1) th page, the same processing as that in the above-mentioned Example 1.2 is performed. That is, it is determined whether or not a TLB miss occurs on the (n-1) th page.

【0037】実施例3.1 図2には、第四の本発明の好適な実施例3.1にかかる
アドレス変換方法を表すタイムチャートが示されてい
る。このタイムチャートは、2相クロック式の計算機シ
ステムの2段階のページアドレス変換方式を用いた従来
のアドレス変換による主要な信号のタイムチャートであ
る。
Embodiment 3.1 FIG. 2 is a time chart showing an address conversion method according to a preferred embodiment 3.1 of the fourth invention. This time chart is a time chart of main signals by conventional address conversion using a two-stage page address conversion method of a two-phase clock type computer system.

【0038】第nページに属するアドレスにおける命令
の命令リクエスト信号があると、命令リクエスト信号1
0がアサートされる。この命令リクエスト信号10がア
サートされたときに、内部処理がBusyでなければア
クノリッジ信号11がアサートされるとともに、内部処
理が開始される。アクノリッジ信号11がアサートされ
ると直ちにTLBアクセス信号12が2サイクル分アサ
ートされる。1サイクル目のTLBアクセス信号12の
アサートによって、第nページについてのTLBの索引
が実行され、その結果がTLBヒット信号13もしくは
TLBミス信号14として報告される。図2に示されて
いる例においては、TLBミスが生じた場合の例につい
て説明されている。したがって、TLBミス信号14が
アサートされており、変換テーブル情報を主記憶からフ
ェッチする必要がある。
When there is an instruction request signal for an instruction at an address belonging to the nth page, the instruction request signal 1
0 is asserted. When the instruction request signal 10 is asserted, if the internal processing is not busy, the acknowledge signal 11 is asserted and the internal processing is started. Immediately after the acknowledge signal 11 is asserted, the TLB access signal 12 is asserted for two cycles. By asserting the TLB access signal 12 in the first cycle, the TLB index for the nth page is executed, and the result is reported as the TLB hit signal 13 or the TLB miss signal 14. In the example shown in FIG. 2, an example in which a TLB miss has occurred is described. Therefore, the TLB miss signal 14 is asserted, and the conversion table information needs to be fetched from the main memory.

【0039】変換テーブル情報を主記憶からフェッチす
るために、アドレス変換中信号15がアサートされると
ともに、変換テーブルフェッチ要求信号16がアサート
される。この信号のアサートにより、バス転送優先権が
受理されると、バス転送優先権アクノリッジ信号17が
アサートされ、データバス上にSTE、PTEもしくは
KEYの転送が開始される。そして、バス転送終了信号
18のアサートを以て、STE、PTEもしくはKEY
の転送が終了される。また、上述した従来の動作と同様
に、STEフェッチ信号19、PTEフェッチ信号20
もしくはKEYフェッチ信号21のいずれかの信号がア
サートされることにより示される。
In order to fetch the conversion table information from the main memory, the address conversion in progress signal 15 is asserted and the conversion table fetch request signal 16 is asserted. When the bus transfer priority is accepted by asserting this signal, the bus transfer priority acknowledge signal 17 is asserted, and the transfer of STE, PTE or KEY on the data bus is started. Then, by asserting the bus transfer end signal 18, STE, PTE, or KEY
Transfer is completed. Further, similar to the conventional operation described above, the STE fetch signal 19 and the PTE fetch signal 20
Alternatively, it is indicated by asserting one of the KEY fetch signals 21.

【0040】一方、アクノリッジ信号11をアサートす
ることにより、ページ保持レジスタの内容23が第n+
1ページの情報を保持し、2サイクル目のTLBアクセ
ス信号12がアサートされているので、第n+1ページ
についての索引が開始される。そして、この結果が、T
LBヒット信号13もしくはTLBミス信号14として
報告される。本実施例3.1においては、第n+1ペー
ジにおいては、TLBヒットであるので、TLBヒット
信号13がアサートされている。TLBヒット信号13
がアサートされると、ページ保持レジスタの内容23
は、第n+2ページの情報を示し、第n+2ページにつ
いてのTLBの索引が実施される。そして、その結果
が、TLBヒット信号13もしくはTLBミス信号14
がアサートされることにより報告される。本実施例3に
おいては、第n+1ページに関してはTLBミスであっ
たので、TLBヒット信号13がアサートされている。
第n+2ページについてのTLBミス信号14がアサー
トされると、変換テーブル情報を主記憶からフェッチし
なければならないが、既に第nページについてのアドレ
ス変換中信号15がアサートされているため、第n+2
ページについては、アドレス変換を実行することができ
ない。そのため、アドレス変換リクエスト信号23をア
サートし、第nページについてのアドレス変換の終了を
待つことになる。
On the other hand, by asserting the acknowledge signal 11, the content 23 of the page holding register is changed to the (n +) th.
Since the information of the first page is held and the TLB access signal 12 of the second cycle is asserted, the index for the (n + 1) th page is started. And this result is T
Reported as LB hit signal 13 or TLB miss signal 14. In the present Example 3.1, since there is a TLB hit in the (n + 1) th page, the TLB hit signal 13 is asserted. TLB hit signal 13
Is asserted, the contents of the page holding register 23
Indicates information on page n + 2, and the TLB index for page n + 2 is implemented. The result is the TLB hit signal 13 or the TLB miss signal 14
Is reported by being asserted. In the third embodiment, since the TLB miss is for the (n + 1) th page, the TLB hit signal 13 is asserted.
When the TLB miss signal 14 for the (n + 2) th page is asserted, the translation table information has to be fetched from the main memory, but since the address translating signal 15 for the (n) th page has already been asserted, the (n + 2) th.
Address translation cannot be performed for pages. Therefore, the address translation request signal 23 is asserted, and the end of the address translation for the nth page is waited for.

【0041】第nページについてのアドレス変換が終了
すると、アドレス変換中信号15がネゲートされる。こ
の結果、直ちにアドレス変換リクエスト信号23による
要求が受理されて、アドレス変換リクエスト信号23は
ネゲートされる。この結果、アドレス変換中信号24が
アサートされ、変換テーブルフェッチ要求信号16がア
サートされる。変換テーブルフェッチ要求信号16のア
サートにより、バス転送優先権が受理された場合、バス
転送優先権アクノリッジ信号17がアサートされ、デー
タバス上にSTE、PTEもしくはKEYの転送が開始
される。そして、バス転送終了信号18のアサートを以
て、STE、PTEもしくはKEYの転送が終了され
る。また、上述した従来の動作と同様に、STEフェッ
チ信号19、PTEフェッチ信号20もしくはKEYフ
ェッチ信号21のいずれかの信号がアサートされること
により示される。
When the address conversion for the nth page is completed, the address conversion in progress signal 15 is negated. As a result, the request by the address translation request signal 23 is immediately accepted and the address translation request signal 23 is negated. As a result, the address translating signal 24 is asserted and the translation table fetch request signal 16 is asserted. When the bus transfer priority is accepted by asserting the conversion table fetch request signal 16, the bus transfer priority acknowledge signal 17 is asserted, and the transfer of STE, PTE or KEY is started on the data bus. Then, by asserting the bus transfer end signal 18, the transfer of STE, PTE, or KEY is ended. Further, like the conventional operation described above, it is indicated by asserting one of the STE fetch signal 19, the PTE fetch signal 20, and the KEY fetch signal 21.

【0042】実施例3.2 なお、上記実施例3.1においては、第n+1ページ方
向、すなわち、後方方向のページに対して、TLBに登
録されているか否かをサーチした例を示したが、上記実
施例1.2と同様に、第n−1ページ方向、すなわち前
方方向のページに対して、TLBに登録されているか否
かをサーチしても好適である。
Embodiment 3.2 In the above-mentioned embodiment 3.1, an example in which the page in the (n + 1) th page direction, that is, the backward direction is searched for whether or not it is registered in the TLB has been shown. Similarly to the above-described Example 1.2, it is preferable to search the n−1th page direction, that is, the page in the forward direction as to whether or not the page is registered in the TLB.

【0043】実施例3.3 また、上記実施例2と同様に、第nページのアドレス変
換の原因である論理アドレスが、その第nページ内で前
半にあるか、後半にあるかに基づいて、上記サーチの方
向を決定することも好適である。
Embodiment 3.3 Also, as in the case of Embodiment 2 above, based on whether the logical address causing the address translation of the nth page is in the first half or the second half of the nth page. It is also preferable to determine the search direction.

【0044】実施例4 図3及び図4には、第五の本発明の好適な実施例のアド
レス変換方法を説明するタイムチャートが示されてい
る。このタイムチャートは、2相クロック式の計算機シ
ステムの2段階のページアドレス変換方式を用いた従来
のアドレス変換による主要な信号のタイムチャートであ
る。
Embodiment 4 FIGS. 3 and 4 are time charts for explaining the address conversion method of the fifth preferred embodiment of the present invention. This time chart is a time chart of main signals by conventional address conversion using a two-stage page address conversion method of a two-phase clock type computer system.

【0045】まず、第nページに属するアドレスにおけ
る命令の命令リクエスト信号があると、命令リクエスト
信号10がアサートされる。これによって、第nページ
のアドレス変換を実施した後、第n+2頁のアドレス変
換中に第k頁に属するアドレスの命令リクエストがあ
り、命令リクエスト信号10がアサートされると、直ち
にバス転送キャンセル信号25がアサートされ、実行中
のバス転送はキャンセルされる。これとともに、第n+
2ページのアドレス変換中を示すアドレス変換中信号2
4がネゲートされる。
First, when there is an instruction request signal for an instruction at an address belonging to the nth page, the instruction request signal 10 is asserted. As a result, after the address conversion of the n-th page, there is an instruction request for the address belonging to the k-th page during the address conversion of the (n + 2) th page, and when the instruction request signal 10 is asserted, the bus transfer cancel signal 25 is immediately issued. Is asserted and the bus transfer in progress is canceled. Along with this, the n +
Address conversion in progress signal 2 which indicates that the address conversion of page 2 is in progress
4 is negated.

【0046】これによって、実行していた第n+2ペー
ジに関するアドレス変換は、はじめから実行していない
ものと見なすことが可能である。その結果、直ちに第k
ページについてのアドレス変換の実行に移行することが
可能である。
As a result, it is possible to regard that the address conversion regarding the (n + 2) th page that has been executed is not executed from the beginning. As a result, immediately kth
It is possible to move on to performing address translation for the page.

【0047】図4においては、同様に、まず、第nペー
ジに属するアドレスにおける命令の命令リクエスト信号
があり、これによって、第nページのアドレス変換を実
施した後、第n+2ページのアドレス変換を行うべく、
アドレス変換リクエスト信号23がアサートされている
ときに第kページに属するアドレスの命令リクエストが
あり、命令リクエスト信号10がアサートされたときに
は、直ちにアドレス変換リクエスト信号23がネゲート
される。これによって、第n+2ページに関するアドレ
ス変換は、はじめから変換リクエストが要求されていな
いものと見なすことができ、直ちに第kページについて
のアドレス変換の実行に移行する。
In FIG. 4, similarly, first, there is an instruction request signal of an instruction at an address belonging to the nth page, whereby the address translation of the nth page is performed after performing the address translation of the nth page. In order
When the address translation request signal 23 is asserted, there is an instruction request for an address belonging to the k-th page, and when the instruction request signal 10 is asserted, the address translation request signal 23 is negated immediately. As a result, the address conversion for the (n + 2) th page can be regarded as a request for no conversion being requested from the beginning, and the process immediately shifts to the execution of the address conversion for the kth page.

【0048】[0048]

【発明の効果】以上述べたように、第一から第六までの
本発明によれば、あるページのアドレス変換をする際
に、その周辺のページに対するアドレス変換も実施し、
その周辺ページ変換テーブル情報をTLB内に格納す
る。
As described above, according to the first to sixth aspects of the present invention, when the address conversion of a certain page is performed, the address conversion for the peripheral pages is also performed,
The peripheral page conversion table information is stored in the TLB.

【0049】すなわち、本発明によれば、命令リクエス
トに先行してアドレス変換を行うことが可能であるの
で、実際のメモリに対するアクセスの際、TLBミスを
少なくする効果がある。
That is, according to the present invention, it is possible to perform address conversion prior to an instruction request, so that there is an effect of reducing TLB misses when actually accessing a memory.

【0050】したがって、TLBミスによるアドレス変
換のオーバーヘッドがなくなり、装置を効率よく動作さ
せることが可能である。
Therefore, the overhead of address translation due to a TLB miss is eliminated, and the device can be operated efficiently.

【0051】また、第七の本発明によれば、命令リクエ
ストに先行してアドレス変換を行うという動作を、他の
ページに対する命令リクエスト等が生じた場合に中止さ
せるようにしたので、装置本来の処理に影響を及ぼす恐
れない。
Further, according to the seventh aspect of the present invention, the operation of performing the address conversion prior to the instruction request is stopped when an instruction request for another page or the like occurs, so that the apparatus original There is no fear of affecting the processing.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の好適な実施例1に係るアドレス変換の
動作を表すタイムチャートである。
FIG. 1 is a time chart showing an address conversion operation according to a preferred first embodiment of the present invention.

【図2】本発明の好適な実施例3に係るアドレス変換の
動作を表すタイムチャートである。
FIG. 2 is a time chart showing the operation of address conversion according to the preferred third embodiment of the present invention.

【図3】本発明の好適な実施例4に係るアドレス変換の
動作を表すタイムチャートである。
FIG. 3 is a time chart showing an operation of address conversion according to a preferred fourth embodiment of the present invention.

【図4】本発明の好適な実施例4に係るアドレス変換の
動作を表すタイムチャートである。
FIG. 4 is a time chart showing the operation of address conversion according to the preferred fourth embodiment of the present invention.

【図5】一般的なアドレス変換部の構成図である。FIG. 5 is a configuration diagram of a general address conversion unit.

【図6】従来のアドレス変換の動作を表すタイムチャー
トである。
FIG. 6 is a time chart showing a conventional address conversion operation.

【符号の説明】[Explanation of symbols]

1 論理アドレスバス 2 論理アドレスレジスタ 3 データバス 4 データレジスタ 5 変換索引緩衝機構(TLB) 6 比較回路 7 実アドレスレジスタ 8 実アドレスバス 9 クロック信号 10 命令リクエスト信号 11 リクエストアクノリッジ信号 12 TLBアクセス(起動)信号 13 TLBヒット信号 14 TLBミス信号 15 アドレス変換中信号 16 変換テーブルフェッチ要求信号 17 バス転送優先権アクノリッジ信号 18 バス転送終了信号 19 STEフェッチ信号 20 PTEフェッチ信号 21 KEYフェッチ信号 22 ページ保持レジスタ内容 23 アドレス変換リクエスト信号 24 ページ保持レジスタ内容に従うアドレス変換のア
ドレス変換中信号 25 バス転送キャンセル信号
1 logical address bus 2 logical address register 3 data bus 4 data register 5 translation lookaside buffer (TLB) 6 comparison circuit 7 real address register 8 real address bus 9 clock signal 10 instruction request signal 11 request acknowledge signal 12 TLB access (start) Signal 13 TLB hit signal 14 TLB miss signal 15 Address conversion in progress signal 16 Conversion table fetch request signal 17 Bus transfer priority acknowledge signal 18 Bus transfer end signal 19 STE fetch signal 20 PTE fetch signal 21 KEY fetch signal 22 Page holding register contents 23 Address conversion request signal 24 Address conversion in progress signal for address conversion according to page holding register contents 25 Bus transfer cancel signal

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 主記憶上のアドレス変換テーブルを用い
てページアドレス変換方式によるアドレス変換を行う第
一のアドレス変換手段と、前記アドレス変換テーブルの
一部のページのテーブルが格納された変換索引緩衝機構
を用いて前記第一のアドレス変換手段より高速にアドレ
ス変換を行う第二のアドレス変換手段と、を有するコン
ピュータ上のアドレス変換方法において、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれる場合には、前記第二のア
ドレス変換手段によってアドレス変換を行う第一のアド
レス変換ステップと、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれていない場合には、前記第
一のアドレス変換手段が、前記主記憶上のアドレス変換
テーブルから、アドレス変換に必要なページのテーブル
を読み出し、この読み出したページのテーブルを用いて
アドレス変換を行うとともに、その読み出したページの
テーブルを前記変換索引緩衝機構に格納する第二のアド
レス変換ステップと、 を含み、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行されるステップであ
って、前記変換対象であるアドレスが含まれるnページ
に隣接するn+1ページが、前記変換索引緩衝機構に格
納されているか否かを検査し、この検査の結果、格納さ
れてない場合には、前記n+1ページのテーブルを前記
主記憶から読み出し、前記変換索引緩衝機構に格納する
格納ステップと、 を含むことを特徴とするアドレス変換方法。
1. A first address translation means for performing an address translation by a page address translation method using an address translation table on a main memory, and a translation index buffer storing a table of some pages of the address translation table. A second address translation means for performing address translation faster than the first address translation means using a mechanism, wherein an address to be translated is stored in the translation lookaside buffer mechanism. If it is included in the page stored in the translation index buffer mechanism, the first address translation step of performing the address translation by the second address translation means, and the address to be translated is included in the page stored in the translation index buffer mechanism. If it is not included, the first address conversion means is the address conversion table on the main memory. A second address translation step of reading a table of pages necessary for address translation, performing address translation using the read page table, and storing the read page table in the translation index buffer mechanism. , Which is a step subsequent to the first address translation step or the second address translation step, wherein n + 1 pages adjacent to the n page containing the address to be translated are A storage step of checking whether or not the table is stored in the index buffer, and if the result of this check is that it is not stored, the table of page n + 1 is read from the main memory and stored in the conversion index buffer. An address translation method comprising:
【請求項2】 主記憶上のアドレス変換テーブルを用い
てページアドレス変換方式によるアドレス変換を行う第
一のアドレス変換手段と、前記アドレス変換テーブルの
一部のページのテーブルが格納された変換索引緩衝機構
を用いて前記第一のアドレス変換手段より高速にアドレ
ス変換を行う第二のアドレス変換手段と、を有するコン
ピュータ上のアドレス変換方法において、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれる場合には、前記第二のア
ドレス変換手段によってアドレス変換を行う第一のアド
レス変換ステップと、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれていない場合には、前記第
一のアドレス変換手段が、前記主記憶上のアドレス変換
テーブルから、アドレス変換に必要なページのテーブル
を読み出し、この読み出したページのテーブルを用いて
アドレス変換を行うとともに、その読み出したページの
テーブルを前記変換索引緩衝機構に格納する第二のアド
レス変換ステップと、 を含み、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行されるステップであ
って、前記変換対象であるアドレスが含まれるnページ
に隣接するn−1ページが、前記変換索引緩衝機構に格
納されているか否かを検査し、この検査の結果、格納さ
れてない場合には、前記n−1ページのテーブルを前記
主記憶から読み出し、前記変換索引緩衝機構に格納する
格納ステップと、 を含むことを特徴とするアドレス変換方法。
2. A first address translation means for performing an address translation by a page address translation method using an address translation table on a main memory, and a translation index buffer storing a table of some pages of the address translation table. A second address translation means for performing address translation faster than the first address translation means using a mechanism, wherein an address to be translated is stored in the translation lookaside buffer mechanism. If it is included in the page stored in the translation index buffer mechanism, the first address translation step of performing the address translation by the second address translation means, and the address to be translated is included in the page stored in the translation index buffer mechanism. If it is not included, the first address conversion means is the address conversion table on the main memory. A second address translation step of reading a table of pages necessary for address translation, performing address translation using the read page table, and storing the read page table in the translation index buffer mechanism. , Which is a step subsequent to the first address translation step or the second address translation step and which is adjacent to the n page containing the address to be translated, It is checked whether or not it is stored in the conversion index buffering mechanism. If the result of this check is that it is not stored, the table of page n-1 is read from the main memory and stored in the conversion index buffering mechanism. An address translation method comprising:
【請求項3】 主記憶上のアドレス変換テーブルを用い
てページアドレス変換方式によるアドレス変換を行う第
一のアドレス変換手段と、前記アドレス変換テーブルの
一部のページのテーブルが格納された変換索引緩衝機構
を用いて前記第一のアドレス変換手段より高速にアドレ
ス変換を行う第二のアドレス変換手段と、を有するコン
ピュータ上のアドレス変換方法において、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれる場合には、前記第二のア
ドレス変換手段によってアドレス変換を行う第一のアド
レス変換ステップと、 変換対象であるアドレスが、前記変換索引緩衝機構に格
納されているページに含まれていない場合には、前記第
一のアドレス変換手段が、前記主記憶上のアドレス変換
テーブルから、アドレス変換に必要なページのテーブル
を読み出し、この読み出したページのテーブルを用いて
アドレス変換を行うとともに、その読み出したページの
テーブルを前記変換索引緩衝機構に格納する第二のアド
レス変換ステップと、 を含み、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行されるステップであ
って、前記変換対象であるアドレスが、このアドレスが
含まれるnページ内での位置を判定する判定ステップ
と、 前記判定ステップにおいて、前記変換対象であるアドレ
スが前記nページ内で、後半に存在すると判定された場
合に、n+1ページが、前記変換索引緩衝機構に格納さ
れているか否かを検査し、この検査の結果、格納されて
ない場合には、前記n+1ページのテーブルを前記主記
憶から読み出し、前記変換索引緩衝機構に格納する次ペ
ージ格納ステップと、 前記判定ステップにおいて、前記変換対象であるアドレ
スが前記nページ内で、前半に存在すると判定された場
合に、n−1ページが、前記変換索引緩衝機構に格納さ
れているか否かを検査し、この検査の結果、格納されて
ない場合には、前記n−1ページのテーブルを前記主記
憶から読み出し、前記変換索引緩衝機構に格納する前ペ
ージ格納ステップと、 を含むことを特徴とするアドレス変換方法。
3. A first address translation means for performing an address translation by a page address translation method using an address translation table on a main memory, and a translation index buffer storing a table of a part of the page of the address translation table. A second address translation means for performing address translation faster than the first address translation means using a mechanism, wherein an address to be translated is stored in the translation lookaside buffer mechanism. If it is included in the page stored in the translation index buffer mechanism, the first address translation step of performing the address translation by the second address translation means, and the address to be translated is included in the page stored in the translation index buffer mechanism. If it is not included, the first address conversion means is the address conversion table on the main memory. A second address translation step of reading a table of pages necessary for address translation, performing address translation using the read page table, and storing the read page table in the translation index buffer mechanism. , Which is a step that is executed subsequent to the first address translation step or the second address translation step, wherein the address to be translated is the position within the n page that includes this address. In the determining step of determining, and in the determining step, if it is determined that the address to be translated exists in the latter half of the n pages, whether or not n + 1 page is stored in the translation index buffer mechanism. Is checked, and if the result of this check is that it is not stored, the table of n + 1 pages is In the next page storing step of reading from the main memory and storing in the conversion index buffering mechanism, and in the determining step, when it is determined that the address to be translated exists in the first half of the n page, n− It is checked whether or not one page is stored in the conversion index buffering mechanism. If the result of this check is that it is not stored, the table of the n-1 page is read from the main memory and the conversion index is read. And a step of storing a previous page for storing in a buffer mechanism.
【請求項4】 請求項1記載のアドレス変換方法におい
て、 前記格納ステップは、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行され、前記変換対象
であるアドレスが含まれるnページに対してn+1ペー
ジ方向のページに対して前記変換索引緩衝機構に格納さ
れているか否かを順に検査し、格納されていないページ
が見つかるまで検査を行うステップであって、 前記変換索引緩衝機構に格納されていないページが発見
された場合には、そのページのテーブルを前記主記憶か
ら読み出し、前記変換索引緩衝機構に格納することを特
徴とするアドレス変換方法。
4. The address translation method according to claim 1, wherein the storing step is executed subsequent to the first address translation step or the second address translation step, and includes the address to be translated. a step of sequentially checking whether or not n + 1 pages are stored in the translation index buffering mechanism, and performing an inspection until an unstored page is found. When a page not stored in the mechanism is found, the table of the page is read from the main memory and stored in the conversion index buffer mechanism.
【請求項5】 請求項2記載のアドレス変換方法におい
て、 前記格納ステップは、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行され、前記変換対象
であるアドレスが含まれるnページのn−1ページ方向
のページに対して前記変換索引緩衝機構に格納されてい
るか否かを順に検査し、格納されていないページが見つ
かるまで検査を行うステップであって、前記変換索引緩
衝機構に格納されていないページが発見された場合に
は、そのページのテーブルを前記主記憶から読み出し、
前記変換索引緩衝機構に格納することを特徴とするアド
レス変換方法。
5. The address translation method according to claim 2, wherein the storing step is executed after the first address translation step or the second address translation step, and includes the address to be translated. A step of sequentially checking whether or not n-th page in the direction of n−1 page is stored in the conversion index buffering mechanism, and checking until a page not stored is found. When a page not stored in the mechanism is found, the table of the page is read from the main memory,
An address translation method characterized by storing in the translation index buffer mechanism.
【請求項6】 請求項3記載のアドレス変換方法におい
て、 前記次ページ格納ステップは、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行され、前記変換対象
であるアドレスが含まれるnページに対してn+1ペー
ジ方向のページに対して前記変換索引緩衝機構に格納さ
れているか否かを順に検査し、格納されていないページ
が見つかるまで検査を行うステップであって、 前記変換索引緩衝機構に格納されていないページが発見
された場合には、そのページのテーブルを前記主記憶か
ら読み出し、前記変換索引緩衝機構に格納し、前記前ペ
ージ格納ステップは、 前記第一のアドレス変換ステップまたは第二のアドレス
変換ステップの後に引き続いて実行され、前記変換対象
であるアドレスが含まれるnページに対してn−1ペー
ジ方向のページに対して前記変換索引緩衝機構に格納さ
れているか否かを順に検査し、格納されていないページ
が見つかるまで検査を行うステップであって、 前記変換索引緩衝機構に格納されていないページが発見
された場合には、そのページのテーブルを前記主記憶か
ら読み出し、前記変換索引緩衝機構に格納することを特
徴とするアドレス変換方法。
6. The address translating method according to claim 3, wherein the next page storing step is executed after the first address translating step or the second address translating step, and the address to be translated is A step of sequentially inspecting, for the included n pages, whether or not the pages in the direction of n + 1 page are stored in the conversion index buffering mechanism, and performing an inspection until an unstored page is found. When a page not stored in the index buffer is found, the table of the page is read from the main memory and stored in the translation index buffer, and the previous page storing step includes the first address translation. Step or the second address translation step, which is subsequently executed and includes the address to be translated. A step of sequentially checking whether or not n-1 pages are stored in the conversion index buffering mechanism with respect to n pages, and performing a check until an unstored page is found. When a page not stored in the translation index buffer mechanism is found, a table of the page is read from the main memory and stored in the translation index buffer mechanism.
【請求項7】 特許請求の範囲1または2または3また
は4または5または6記載のアドレス変換方法におい
て、 前記格納ステップもしくは前ページ格納ステップもしく
は次ページ格納ステップにおける処理を実行中に、他の
ページのアドレス変換の要求が生じた場合には、前記格
納ステップもしくは前ページ格納ステップもしくは次ペ
ージ格納ステップにおける処理を中止し、前記他のペー
ジのアドレス変換が実行されることを特徴とするアドレ
ス変換方法。
7. The address translation method according to claim 1, 2 or 3 or 4 or 5 or 6, wherein another page is executed while the processing in the storing step, the previous page storing step or the next page storing step is being executed. Address conversion request is generated, the processing in the storing step, the previous page storing step, or the next page storing step is stopped, and the address conversion of the other page is executed. .
JP02703294A 1994-02-24 1994-02-24 Address translation method Expired - Fee Related JP3288170B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02703294A JP3288170B2 (en) 1994-02-24 1994-02-24 Address translation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02703294A JP3288170B2 (en) 1994-02-24 1994-02-24 Address translation method

Publications (2)

Publication Number Publication Date
JPH07234817A true JPH07234817A (en) 1995-09-05
JP3288170B2 JP3288170B2 (en) 2002-06-04

Family

ID=12209737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02703294A Expired - Fee Related JP3288170B2 (en) 1994-02-24 1994-02-24 Address translation method

Country Status (1)

Country Link
JP (1) JP3288170B2 (en)

Also Published As

Publication number Publication date
JP3288170B2 (en) 2002-06-04

Similar Documents

Publication Publication Date Title
JPS6341100B2 (en)
KR20150066526A (en) Reducing cold tlb misses in a heterogeneous computing system
JPH0630075B2 (en) Data processing device having cache memory
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
JPH0512126A (en) Device and method for address conversion for virtual computer
JP2768503B2 (en) Virtual memory address space access control method
JP4131789B2 (en) Cache control apparatus and method
JPS63238646A (en) Microprocessor
JPH0550776B2 (en)
US7617380B2 (en) System and method for synchronizing translation lookaside buffer access in a multithread processor
US20050015552A1 (en) System for supporting unlimited consecutive data stores into a cache memory
US4737908A (en) Buffer memory control system
JPH07234817A (en) Address converting method
US5426749A (en) Buffer control system using synonymic line address to retrieve second tag portion for fetch and store accesses while first tag portion is invalidated
JPS623354A (en) Cache memory access system
JPH0679296B2 (en) Multiple virtual address space access method and data processing device
EP0349757B1 (en) Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit
JP2507785B2 (en) Pageable entry invalidation device
JPH086853A (en) Storage control method
JP3013996B2 (en) Information processing device
JPH08137756A (en) Address conversion buffer mechanism
JPH02168332A (en) Data processor
JPS61136145A (en) Cache memory control circuit
JPH0336647A (en) Cache buffering control system
JPH04358241A (en) Store buffer controller

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees