(57)【要約】【課題】テーブル規模を小さくすることのできるアドレス変換システムを提供することにある。【解決手段】外部より供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出する有効仮想アドレス抽出部１と、有効仮想アドレス抽出部１にて抽出される仮想アドレスの各ビットのうちの、上記有効アドレス空間を特定可能な有効アドレスビットが予め設定された有効アドレスビット指定部２とを有する。仮想有効アドレスビット抽出部１は、上記抽出した仮想アドレスのビットのうちから、有効アドレスビット指定部２にて設定された有効アドレスビットを抽出し、該抽出した有効アドレスビットを実アドレスとして実アドレステーブル３に格納する。【選択図】  図１
2004362320.tif 000002
【特許請求の範囲】
【請求項１】
外部より供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出する有効仮想アドレス抽出部と、
前記有効仮想アドレス抽出部にて抽出される仮想アドレスの各ビットのうちの、前記有効アドレス空間を特定可能な有効アドレスビットが予め設定された有効アドレスビット指定部と、
実アドレステーブルと、を有し、
前記仮想有効アドレスビット抽出部は、前記抽出した仮想アドレスのビットのうちから、前記有効アドレスビット指定部にて設定された有効アドレスビットを抽出し、該抽出した有効アドレスビットを実アドレスとして前記実アドレステーブルに格納することを特徴とするアドレス変換システム。
【請求項２】
前記仮想アドレスはビットＶＡ１〜Ｖｍのｍビットよりなり、前記実アドレスはビットＲＡ１〜ＲＡｎのｎビット（ｎ＜ｍ）よりなり、
前記有効アドレスビット指定部は、前記仮想アドレスのビットＶ１〜Ｖｍのそれぞれに対応するｍ個のフラグＳ１〜Ｓｍを備え、該フラグＳ１〜Ｓｍのうち、前記有効アドレスビットに対応するフラグに１が設定され、これ以外のフラグに０が設定されており、
前記仮想有効アドレスビット抽出部は、
前記フラグＳ１〜Ｓｍにそれぞれ対応して設けられたｍ個の加算器よりなり、該ｍ個の加算器にて以下の式によりａｄｄ（１）〜ａｄｄ（ｍ）のそれぞれの加算結果を得る加算部と、
【数１】
2004362320.tif 000004
前記実アドレスの各ビットに対応するｎ（＜ｍ）個のセレクタを備えるビット選択部と、を有し、
前記ｎ個のセレクタは、前記実アドレスのＮ（Ｎ＝１〜ｎ）番目のビットＲＡ（Ｎ）に対応するセレクタにおいて、前記仮想アドレスのビットＶＡ（Ｎ）〜ＶＡ（ｍ−ｎ＋Ｎ）に対応する計（ｍ−ｎ＋１）本のアドレス線の中から、前記加算部における計算結果が以下の条件式を満たすアドレス線を選択するように構成されていることを特徴とする請求項１に記載のアドレス変換システム。
【数２】
ａｄｄ（ｉ）＝Ｎ
ただし、ｉ＝Ｎ〜（ｍ−ｎ＋Ｎ）
【請求項３】
前記仮想アドレスは、所定のパケット通信により供給される仮想チャネルであることを特徴とする、請求項１に記載のアドレス変換システム。
【請求項４】
外部より供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出するステップと、
前記抽出した仮想アドレスのビットのうちから、予め設定された前記有効アドレス空間を特定可能な有効アドレスビットを抽出するステップと、
前記抽出した有効アドレスビットを実アドレスとして実アドレステーブルに格納するステップとを含むことを特徴とするアドレス変換方法。
【請求項５】
前記仮想アドレスは、所定のパケット通信により供給される仮想チャネルであることを特徴とする、請求項４に記載のアドレス変換方法。
【請求項６】
仮想アドレスが共通に供給される複数の処理装置を有し、
前記複数の処理装置のそれぞれは、
前記共通に供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出する有効仮想アドレス抽出部と、
前記有効仮想アドレス抽出部にて抽出される仮想アドレスの各ビットのうちの、前記有効アドレス空間を特定可能な有効アドレスビットが予め設定された有効アドレスビット指定部と、
実アドレステーブルと、を有し、
前記仮想有効アドレスビット抽出部が、前記抽出した仮想アドレスのビットのうちから、前記有効アドレスビット指定部にて設定された有効アドレスビットを抽出し、該抽出した有効アドレスビットを実アドレスとして前記実アドレステーブルに格納するように構成されていることを特徴とするコンピュータシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、仮想アドレス（論理アドレスともいう）を実アドレス（物理アドレスともいう）に変換する方法およびシステムならびにそのようなアドレス変換が適用されるコンピュータシステムに関する。
【０００２】
【従来の技術】
パーソナルコンピュータやマルチプロセッサシステム、入出力システムなどの他、ＡＴＭ網を介したコンピュータ通信システムを含む様々なコンピュータシステムにおいて、仮想アドレスを実アドレスに変換することで実アドレス空間を得る方式が広く採用されている。例えば、特許文献１には、仮想記憶機構を備える入出力システムにおいて、チャネルが、周辺装置から供給される仮想アドレスを実アドレスに変換するものが記載されている。また、特許文献２には、複数のプロセッサが処理を並列的に行うマルチプロセッサシステムにおいて、それぞれのプロセッサで他のプロセッサから供給される仮想アドレスを実アドレスに変換するものが記載されている。
【０００３】
【特許文献１】
特開昭１０−３２０２８４号公報
【特許文献２】
特開平６−１８７２９７号公報
【０００４】
【発明が解決しようとする課題】
上述したような仮想アドレスを実アドレスに変換するコンピュータシステムは、通常、仮想アドレスの全ビットを実アドレスに変換するようになっており、その変換に際して、仮想アドレスと実アドレスの関係を格納するテーブルが用いられる。しかし、このようなアドレス変換では、仮想アドレスには実アドレスの変換に不要な無効部分が含まれているにもかかわらず、その無効部分を含めてテーブル規模が設定されることになるため、どうしてもテーブル規模が大きくなり、その結果、実メモリ空間も大きくなる、という問題があった。
【０００５】
また、仮想アドレスが複数の処理装置に共通に供給されるようなコンピュータシステムを設計する場合、仮想アドレスは、処理装置の数や仕様を考慮して十分なビット長に固定されるが、このようにビット長を固定してしまうと、処理装置の数や仕様に変更が生じた場合に柔軟に対応することができない、という問題もあった。
【０００６】
本発明の目的は、上記問題を解決し、テーブル規模を小さくすることができ、かつ、システムの変更にも柔軟に対応することのできる、アドレス変換システムおよびアドレス変換方法ならびにそのようなアドレス変換が適用されるコンピュータシステムを提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明のアドレス変換システムは、外部より供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出する有効仮想アドレス抽出部と、
前記有効仮想アドレス抽出部にて抽出される仮想アドレスの各ビットのうちの、前記有効アドレス空間を特定可能な有効アドレスビットが予め設定された有効アドレスビット指定部と、
実アドレステーブルと、を有し、
前記仮想有効アドレスビット抽出部が、前記抽出した仮想アドレスのビットのうちから、前記有効アドレスビット指定部にて設定された有効アドレスビットを抽出し、該抽出した有効アドレスビットを実アドレスとして前記実アドレステーブルに格納することを特徴とする。
【０００８】
本発明のアドレス変換方法は、外部より供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出するステップと、
前記抽出した仮想アドレスのビットのうちから、予め設定された前記有効アドレス空間を特定可能な有効アドレスビットを抽出するステップと、
前記抽出した有効アドレスビットを実アドレスとして実アドレステーブルに格納するステップとを含むことを特徴とする。
【０００９】
本発明のコンピュータシステムは、仮想アドレスが共通に供給される複数の処理装置を有し、
前記複数の処理装置のそれぞれは、
前記共通に供給される仮想アドレスから、該仮想アドレスにより特定される仮想アドレス空間のうちの、予め割り振られた有効アドレス空間に対応する仮想アドレスを抽出する有効仮想アドレス抽出部と、
前記有効仮想アドレス抽出部にて抽出される仮想アドレスの各ビットのうちの、前記有効アドレス空間を特定可能な有効アドレスビットが予め設定された有効アドレスビット指定部と、
実アドレステーブルと、を有し、
前記仮想有効アドレスビット抽出部が、前記抽出した仮想アドレスのビットのうちから、前記有効アドレスビット指定部にて設定された有効アドレスビットを抽出し、該抽出した有効アドレスビットを実アドレスとして前記実アドレステーブルに格納するように構成されていることを特徴とする。
【００１０】
上記のとおりの本発明によれば、例えばｍビットの仮想アドレスから有効アドレスビットが抽出されてｎ（＜ｍ）ビットの実アドレスとして実アドレステーブルに格納されることになる。これにより、従来はｍビットのアドレスを格納するテーブル規模が必要だったところが、ｎビットのアドレスを格納するテーブル規模で済むこととなり、テーブル規模は、従来のものに比べて（ｍ−ｎ）ビット分だけ小さくなる。
【００１１】
また、有効アドレスビットは、有効アドレス空間を特定可能な範囲内で任意に設定することができるので、本発明を適用したコンピュータシステムを設計する場合に、システムに変更が生じた場合には、基本的には、有効アドレスビットの指定を変更することで対応することが可能である。
【００１２】
【発明の実施の形態】
次に、本発明の実施形態について図面を参照して説明する。
【００１３】
図１に、本発明の一実施形態であるアドレス変換システムの主要部を示す。このアドレス変換システムは、仮想アドレスが複数の処理装置に共通に供給されるコンピュータシステム、例えば図２に示すような、複数の副装置２００が共通線３００を介して主装置１００と接続され、主装置１００から送出されたｍビットの仮想アドレスが共通線３００を介して各副装置２００に共通に供給されるコンピュータシステムの、それぞれの副装置２００に適用されるものであって、その主要部は、有効仮想アドレス抽出部１、有効アドレスビット指定部２、および実アドレステーブル３からなる。図２に示すコンピュータシステムでは、副装置２００ごとに、主装置１００から供給されるｍビットの仮想アドレスによって特定される仮想アドレス空間のうちのどのアドレス空間が有効なアドレス空間であるかが予め定義されている。
【００１４】
有効仮想アドレス抽出部１は、主装置１００から供給されるｍビットの仮想アドレスから、予め定義された有効アドレス空間に対応する仮想アドレスを抽出することができる。また、有効仮想アドレス抽出部１は、その抽出した有効アドレス空間に対応する仮想アドレスから有効アドレスビット指定部２で指定された、ｎ個の有効アドレスビットを抽出し、該抽出した有効アドレスビットをｎビットの実アドレスとして実アドレステーブル３に格納する。
【００１５】
有効アドレスビット指定部２は、有効仮想アドレス抽出部１にて抽出される有効アドレスビットが予め設定される。この有効アドレスビット指定部２における有効アドレスビットの設定は、本アドレス変換システムの管理者によって行われる。例えば、本アドレス変換システムが適用されるコンピュータシステムの入力装置（キーボードやマウスなど）を使用して所定の入力操作を行うことにより有効アドレスビットの指定を行うことができる。仮想アドレスのビット数「ｍ」の値および有効アドレスビットの数「ｎ」の値は、ｍ＞ｎの条件を満たす範囲で、設計に応じて適宜設定することができる。
【００１６】
実アドレステーブル３は、仮想アドレスと実アドレスの関係を格納するものであって、有効仮想アドレス抽出部１から供給された有効アドレスビット（テーブル用アドレスビット）を実アドレスとして格納する。この実アドレステーブル３に格納された実アドレスにしたがって実メモリ空間を得る。この場合の実アドレスのビット幅は規定されない。また、実アドレステーブル３は、次の実メモリ空間を得るためのテーブル用アドレスビットが供給されると、該供給されたテーブル用アドレスビットが前回格納したテーブル用アドレスビットに代えて格納されるようになっている。
【００１７】
図３に、本実施形態のアドレス変換システムにおける、仮想アドレスから実アドレスへの変換例を模式的に示す。この例では、３ビットの仮想アドレスが有効仮想アドレス抽出部１に供給されている。仮想アドレスのそれぞれのビット位置をＶＡ１、ＶＡ２、ＶＡ３で表し、これらＶＡ１〜ＶＡ３のビット値の組み合わせにより、仮想アドレス空間０〜７が特定されるようになっている。ここでは、最初の空間０は、ＶＡ１＝０、ＶＡ２＝０、ＶＡ３＝０で表され、次の空間１は、ＶＡ１＝０、ＶＡ２＝０、ＶＡ３＝０で表される、といった形で、順次、仮想アドレス空間が特定されるようになっている。これら空間０〜７のうちの空間２、３、６、７が有効アドレス空間として予め定義されている。
【００１８】
有効仮想アドレス抽出部１では、供給された上記３ビットの仮想アドレスから有効アドレス空間である空間２、３、６、７に対応する仮想アドレスビットがそれぞれ抽出される。こうして抽出した空間２、３、６、７に対応する仮想アドレスビットを比較すると、以下のようなことが分かる。
【００１９】
空間２に対応する仮想アドレスビットは「ＶＡ１＝０、ＶＡ２＝１、ＶＡ３＝０」であり、空間３に対応する仮想アドレスビットは「ＶＡ１＝１、ＶＡ２＝１、ＶＡ３＝０」であり、空間６に対応する仮想アドレスビットは「ＶＡ１＝０、ＶＡ２＝１、ＶＡ３＝１」であり、空間７に対応する仮想アドレスビットは「ＶＡ１＝１、ＶＡ２＝１、ＶＡ３＝１」である。これらを比較すると、ＶＡ２はいずれの空間においても「１」になっており、同じであるため、空間２、３、６、７を特定する上で、ＶＡ２は不要であることが分かる。
【００２０】
上記の点に着目し、本実施形態では、有効アドレスビット指定部２にて、その不要なビットであるＶＡを削除するために、ＶＡ１およびＶＡ３の２つのビットが有効なビットとして指定される。これにより、有効仮想アドレス抽出部１では、抽出した空間２、３、６、７に対応する仮想アドレスビットから、有効アドレスビット指定部２で指定された有効アドレスビットであるＶＡ１、ＶＡ３が抜き出され、これがテーブル用アドレスビットとして実アドレステーブル３に格納される。
【００２１】
上記の有効アドレスビットの抜き出しにより得られたテーブル用アドレスビットでは、空間２は「ＲＡ１＝０、ＲＡ２＝０」、空間３は「ＲＡ１＝１、ＲＡ２＝０」、空間６は「ＲＡ１＝０、ＲＡ２＝１」、空間７は「ＲＡ１＝１、ＲＡ２＝１」とされ、これらが実アドレスとして実アドレステーブル３に格納される。こうして実アドレステーブル３に格納された２ビットの実アドレスに従って実アドレス空間４を得る。
【００２２】
次に、有効仮想アドレス抽出部１および有効アドレスビット指定部２の構成および動作について、さらに詳細に説明する。
【００２３】
図４に、図１に示した有効仮想アドレス抽出部１および有効アドレスビット指定部２の具体的な構成を示す。図４を参照すると、有効仮想アドレス抽出部１は、ｎ個のセレクタから構成されるビット選択部１ａとｍ個の加算器から構成される加算部１ｂを有する。
【００２４】
有効アドレスビット指定部２は、ｍビットの仮想アドレスのそれぞれのビットと対応するＳ１〜Ｓｍのｍ個のフラグが用意されており、システム管理者はこれらフラグについて「１」または「０」を任意に設定することで有効アドレスビットを指定することができる。例えば、ｍビットの仮想アドレスのそれぞれのビットをＶＡ１〜ＶＡｍで表す場合、これらビットＶＡ１〜ＶＡｍがＳ１〜Ｓｍにそれぞれ対応する。仮想アドレスのビットＶＡ１を有効アドレスビットとして指定する場合は、Ｓ１のフラグに「１」を立てる。本実施形態では、ｍビットの仮想アドレスをｎビットの実アドレスに変換するようになっているので、「１」を指定することのできるフラグの数は全部でｎ個である。
【００２５】
加算部１ｂは、有効アドレスビット指定部２にて設定されたＳ１〜Ｓｍまでのｍビットのフラグの値を加算する。具体的には、加算部１ｂは、
【００２６】
【数３】
2004362320.tif 000003
【００２７】
により、ａｄｄ（１），ａｄｄ（２），・・・，ａｄｄ（ｍ）のそれぞれの加算結果を求めてビット選択部１ａに供給する。ここで、フラグＳ１〜Ｓｍのうち、「１」が立てられるフラグの数はｎ個であるので、
ａｄｄ（ｍ）＝ｎ
となる。なお、本例では、ａｄｄ（１），ａｄｄ（２），・・・，ａｄｄ（ｍ）の計算をｍ個の加算器で実現しているが、加算器自体は１個でも良い。加算器を１つとする場合は、ａｄｄ（１），ａｄｄ（２），・・・，ａｄｄ（ｍ）のそれぞれの計算を時分割にて行うことになる。
【００２８】
ビット選択部１ａを構成するｎ個のセレクタは、それぞれテーブル用アドレスビット、すなわち実アドレステーブル３に格納される実アドレスＲＡの各ビットに対応する。具体的には、実アドレスＲＡの１ビット目（ＲＡ１），２ビット目（ＲＡ２），・・・，ｎビット目（ＲＡｎ）が、それぞれ１個目のセレクタ、２個目のセレクタ、・・・ｎ個目のセレクタに対応する。これらｎ個のセレクタは、実アドレスＲＡのＮ（Ｎ＝１〜ｎ）番目のビットＲＡ（Ｎ）に対応するセレクタにおいて、仮想アドレスのビットＶＡ（Ｎ）〜ＶＡ（ｍ−ｎ＋Ｎ）に対応する計（ｍ−ｎ＋１）本のアドレス線の中から、加算部１ｂにおける計算結果が以下の条件式を満たすアドレス線を選択するように構成されている。
【００２９】
【数４】
ａｄｄ（ｉ）＝Ｎ
ただし、ｉ＝Ｎ〜（ｍ−ｎ＋Ｎ）
図５に、実アドレスＲＡのＮビット目のＲＡ（Ｎ）におけるアドレス線の選択手順を示す。このアドレス線の選択では、優先順位付けを行う。本例では、１ビット目をＬＳＢ、ｍビット目をＭＳＢとすると、ＬＳＢから加算してａｄｄを算出するようになっているため、ＬＳＢ優先としてアドレス線の選択手順を説明する。なお、ａｄｄの算出は、ＭＳＢからでも良く、その場合は、ＭＳＢ優先でアドレス線の選択を行うことになる。
【００３０】
Ｎビット目のＲＡ（Ｎ）におけるアドレス線の選択では、仮想アドレスのビットＶＡ（Ｎ）〜ＶＡ（ｍ−ｎ＋Ｎ）の計（ｍ−ｎ＋１）本のアドレス線の中から１本のアドレス線が選択される。仮想アドレスのビットＶＡｉは、ａｄｄ（ｉ）と対応する。まず、ステップＳ１０で、ｉにＮを代入し、続くステップＳ１１で、ａｄｄ（ｉ）＝Ｎの検証を行う。この検証で、「Ｙｅｓ」となった場合は、続くステップＳ１２で、ＲＡ（Ｎ）として仮想アドレスのビットＶＡｉに対応するアドレス線を選択して処理を終了する。「Ｎｏ」となった場合は、ステップＳ１３で、ｉにさらに１を足した後、上記ステップＳ１２の検証に戻る。
【００３１】
以上のアドレス選択処理では、ｉがＮ〜（ｍ−ｎ＋Ｎ）の範囲のいずれかの値でステップＳ１１における検証で必ず「Ｙｅｓ」となる。このような選択処理を全てのＲＡ１〜ＲＡｎのビットについて行うことで、ｍビットの仮想アドレスから、指定された有効アドレスビットが抽出されてｎビットの実アドレスを得る。
【００３２】
図６に、図５に示したアドレス選択処理を図３に示したアドレス変換例に当てはめた場合の動作を模式的に示す。この例の場合は、３ｍビットの仮想アドレスを２ビットの実アドレスに変換するので、ビット選択部１ａは、２つのセレクタ１０、１１を備える。セレクタ１０は、仮想アドレスビットＶＡ１、Ｖ２にそれぞれ対応した２本のアドレス線のうちから１本を選択するようになっており、選択したアドレス線の仮想アドレスビットが実アドレスビットＲＡ１として出力される。セレクタ１１は、仮想アドレスビットＶＡ２、Ｖ３にそれぞれ対応した２本のアドレス線のうちから１本を選択するようになっており、選択したアドレス線の仮想アドレスビットが実アドレスＲＡ２として出力される。
【００３３】
システム管理者は、有効アドレスビット指定部２にて有効アドレスビットを設定する。本例では、仮想アドレスビットＶ１、Ｖ３を有効アドレスビットとして指定するので、フラグＳ１＝１、フラグＳ２＝０、フラグＳ３＝１とされる。加算部１ｂは、加算結果としてａｄｄ（１）＝１、ａｄｄ（２）＝１、ａｄｄ（３）＝２をビット選択部１ａに供給する。
【００３４】
ビット選択部１ａでは、まず、実アドレスＲＡの１ビット目のＲＡ１について、図５に示したアドレス選択処理が実行される。この処理では、仮想アドレスビットＶＡ１、ＶＡ２にそれぞれ対応する２本のアドレス線のうちから、ａｄｄ（ｉ）＝Ｎ、すなわちａｄｄ（ｉ）＝１の条件を満たすアドレス線が選択される。まず、ｉに１を代入して、ａｄｄ（ｉ）＝１の検証が行われる。この場合は、ａｄｄ（１）＝１となる。これはａｄｄ（ｉ）＝１の条件を満たすので、セレクタ１０において、仮想アドレスＶＡ１に対応するアドレス線が選択される（ＲＡ１＝ＶＡ１）。
【００３５】
続いて、実アドレスＲＡの２ビット目のＲＡ２について、図５に示したアドレス選択処理が実行される。この処理では、仮想アドレスビットＶＡ２、ＶＡ３にそれぞれ対応する２本のアドレス線のうちから、ａｄｄ（ｉ）＝Ｎ、すなわちａｄｄ（ｉ）＝２の条件を満たすアドレス線が選択される。まず、ｉに２を代入して、ａｄｄ（ｉ）＝２の検証が行われる。この場合は、ａｄｄ（２）＝１となる。これは、ａｄｄ（ｉ）＝２の条件を満たさないので、ｉに１をさらに加算（ｉ＝３）して、再度、ａｄｄ（ｉ）＝２の検証が行われる。この場合は、ａｄｄ（３）＝２となる。これはａｄｄ（ｉ）＝２の条件を満たすので、セレクタ１１において、仮想アドレスＶＡ３に対応するアドレス線が選択される（ＲＡ２＝ＶＡ３）。
【００３６】
以上説明したアドレス変換によれば、ｍビットの仮想アドレスから有効アドレスビットが抽出されてｎビットの実アドレス（テーブル用アドレスビット）として実アドレステーブル３に格納される。この構成によれば、従来はｍビットのアドレスを格納するテーブル規模が必要だったところが、ｎビットのアドレスを格納するテーブル規模でよいこととなる。よって、テーブル規模は、従来のものに比べて（ｍ−ｎ）ビット分だけ小さくなる。
【００３７】
また、有効アドレスビット指定部２では、有効アドレスビットを設計に応じて任意に設定することができるため、例えば、図２に示したようなコンピュータシステムを設計する上で、システムの変更に柔軟に対応することができる。
【００３８】
以上説明した本実施形態のアドレス変換システムは、予め有効アドレス空間が指定されるコンピュータシステムであれば、図２に示したコンピュータシステム以外の構成にも適用することができる。例えば、複数のプロセッサが処理を並列的に行うマルチプロセッサシステムにおいて、仮想アドレスが各プロセッサに共通に供給され、それぞれのプロセッサに対して予め有効アドレス空間が割り振られているような場合は、本発明のアドレス変換システムを適用することができる。この場合は、マイクロプロセッサユニット（ＭＰＵ）におけるアドレスのマッピングにおいて、可変なアドレスのマッピングが実現できる。
【００３９】
また、パケット通信が行われるコンピュータシステムであって、仮想アドレスとして仮想パス（ＶＰ）、仮想チャネル（ＶＣ）が使用され、これらＶＰ、ＶＣの仮想アドレスが複数の処理装置に共通に供給されるとともに、各処理装置に対して予め有効アドレス空間が割り振られるように構成されたものにも、本発明のアドレス変換システムを適用することができる。この場合は、仮想チャネルのビットのうちから有効アドレスビットが指定されることとなる。
【００４０】
【発明の効果】
以上説明したように、本発明によれば、テーブル規模は、有効アドレスビットにより決まる。よって、仮想アドレスの全ビットがテーブルに格納される従来のものに比べて、テーブル規模を小さくすることができる、という効果がある。
【００４１】
また、有効アドレスビットは任意に指定可能なので、コンピュータシステムを設計する上で、システムの変更に柔軟に対応することができる、という効果がある。
【図面の簡単な説明】
【図１】本発明の一実施形態であるアドレス変換システムの主要部を示すブロック図である。
【図２】本発明のアドレス変換システムが適用されるコンピュータシステムの一例を示すブロック図である。
【図３】図１に示すアドレス変換システムにおける、仮想アドレスから実アドレスへの変換例を示す模式図である。
【図４】図１に示す有効仮想アドレス抽出部および有効アドレスビット指定部の具体的な構成を示すブロック図である。
【図５】図１に示すアドレス変換システムにおいて行われる、実アドレスＲＡのＮビット目のＲＡ（Ｎ）におけるアドレス線の選択手順を示すフローチャートである。
【図６】図５に示すアドレス選択処理を図３に示すアドレス変換例に当てはめた場合の動作を説明するための模式図である。
【符号の説明】
１  有効仮想アドレス抽出部
１ａ  ビット選択部
１ｂ  加算部
２  有効アドレスビット指定部
３  実アドレステーブル
４  実アドレス空間
１０、１１  セレクタ
１００  主装置
２００  副装置
３００  共通線
【図１】
2004362320.tif 000005
【図２】
2004362320.tif 000006
【図３】
2004362320.tif 000007
【図４】
2004362320.tif 000008
【図５】
2004362320.tif 000009
【図６】
2004362320.tif 000010