JPH11110290A - メモリコントローラ - Google Patents
メモリコントローラInfo
- Publication number
- JPH11110290A JPH11110290A JP27571397A JP27571397A JPH11110290A JP H11110290 A JPH11110290 A JP H11110290A JP 27571397 A JP27571397 A JP 27571397A JP 27571397 A JP27571397 A JP 27571397A JP H11110290 A JPH11110290 A JP H11110290A
- Authority
- JP
- Japan
- Prior art keywords
- address
- mode
- memory
- bit
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000015654 memory Effects 0.000 title claims abstract description 123
- 238000000034 method Methods 0.000 claims description 14
- 230000002194 synthesizing effect Effects 0.000 claims description 8
- 241001279686 Allium moly Species 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Abstract
(57)【要約】
【課題】 リアルモードのままメインメモリの上位空間
に割り当てられたメモリのアクセスを可能とする。 【解決手段】 ベースアドレスレジスタ1−9には予め
メインメモリの上位空間に割り当てられたアドレスの上
位12ビットが格納される。CPU3−2からのリアル
モードによる20ビットのアクセスアドレスが入力アド
レスレジスタ1−4に、プロテクトモードを示す”1
“がモードレジスタ1−1に夫々格納されると、選択制
御回路1−7はベースアドレスレジスタに格納された上
位12ビットと入力アドレスレジスタに格納された20
ビットのアドレスをセレクタ回路1−8に合成させ32
ビットのアドレスを生成する。この32ビットのアドレ
スによりメインメモリの上位空間に割り当てられたメモ
リのアクセスが可能となる。
に割り当てられたメモリのアクセスを可能とする。 【解決手段】 ベースアドレスレジスタ1−9には予め
メインメモリの上位空間に割り当てられたアドレスの上
位12ビットが格納される。CPU3−2からのリアル
モードによる20ビットのアクセスアドレスが入力アド
レスレジスタ1−4に、プロテクトモードを示す”1
“がモードレジスタ1−1に夫々格納されると、選択制
御回路1−7はベースアドレスレジスタに格納された上
位12ビットと入力アドレスレジスタに格納された20
ビットのアドレスをセレクタ回路1−8に合成させ32
ビットのアドレスを生成する。この32ビットのアドレ
スによりメインメモリの上位空間に割り当てられたメモ
リのアクセスが可能となる。
Description
【0001】
【発明の属する技術分野】本発明はメモリコントローラ
に関し、特にリアルモード及びプロテクトモードにてメ
モリアクセスを制御するメモリコントローラに関する。
に関し、特にリアルモード及びプロテクトモードにてメ
モリアクセスを制御するメモリコントローラに関する。
【0002】
【従来の技術】一般に86系プロセッサ(CPU)とい
われるIntel社製80X86CPUには、リアルモ
ード(real mode)とプロテクトモード(pr
otected mode)があり、80386以上の
32ビットCPUにおいて、各モードでアクセス可能な
メモリ空間を以下に示す。
われるIntel社製80X86CPUには、リアルモ
ード(real mode)とプロテクトモード(pr
otected mode)があり、80386以上の
32ビットCPUにおいて、各モードでアクセス可能な
メモリ空間を以下に示す。
【0003】リアルモードではCPUからアクセスでき
る物理メモリの大きさは1Mバイト(00000h〜F
FFFFh)であり、プロテクトモードは4Gバイト
(00000000h〜FFFFFFFFh)の物理メ
モリにアクセスが可能である。この物理メモリへのアク
セスには、リアルモードの場合、20ビットのアドレス
指定が必要であり、プロテクトモードでは、32ビット
アドレス指定する必要がある。
る物理メモリの大きさは1Mバイト(00000h〜F
FFFFh)であり、プロテクトモードは4Gバイト
(00000000h〜FFFFFFFFh)の物理メ
モリにアクセスが可能である。この物理メモリへのアク
セスには、リアルモードの場合、20ビットのアドレス
指定が必要であり、プロテクトモードでは、32ビット
アドレス指定する必要がある。
【0004】このプロテクトモード/リアルモードは、
次のような設定により移行することができる。通常、8
0X86CPUでOS(operating syst
em)を動作させると、OSの互換性を維持するため
に、リアルモード動作にてスタートする仕組みになって
いる。
次のような設定により移行することができる。通常、8
0X86CPUでOS(operating syst
em)を動作させると、OSの互換性を維持するため
に、リアルモード動作にてスタートする仕組みになって
いる。
【0005】リアルモードからプロテクトモードへの移
行手順を示すフローチャートを図2に示す。リアルモー
ドから、セグメント(segment:物理メモリを管
理する単位)設定(S1),割込み設定(S2),アド
レス制限解除(S3)を行い、CPUのレジスタである
CR0の最下位ビットに1を設定することにより、プロ
テクトモードに移行する(S4)。
行手順を示すフローチャートを図2に示す。リアルモー
ドから、セグメント(segment:物理メモリを管
理する単位)設定(S1),割込み設定(S2),アド
レス制限解除(S3)を行い、CPUのレジスタである
CR0の最下位ビットに1を設定することにより、プロ
テクトモードに移行する(S4)。
【0006】また、プロテクトモードからリアルモード
への移行手順を示すフローチャートを図3に示す。プロ
テクトモードから、割込みの設定(S11),セグメン
トの設定(S12),CPUの最下位ビットに0を設定
し(S13)、アドレス制限の設定を行うことにより、
リアルモードに移行する(S14)。
への移行手順を示すフローチャートを図3に示す。プロ
テクトモードから、割込みの設定(S11),セグメン
トの設定(S12),CPUの最下位ビットに0を設定
し(S13)、アドレス制限の設定を行うことにより、
リアルモードに移行する(S14)。
【0007】一般のOSのシステムコール(syste
m call)は、リアルモードでのみ実行可能であ
り、プロテクトモードで動作している場合は、この手順
によりリアルモードに移行を行い、システムコールを実
行する。
m call)は、リアルモードでのみ実行可能であ
り、プロテクトモードで動作している場合は、この手順
によりリアルモードに移行を行い、システムコールを実
行する。
【0008】86系CPUを搭載し、PCIバス(Pe
ripheral ComponentInter−c
onnection bus)を持つシステムにおい
て、PCIオプションの実装されている場合の構成例を
図4に示す。図4は従来のメモリコントローラの一例の
構成図である。
ripheral ComponentInter−c
onnection bus)を持つシステムにおい
て、PCIオプションの実装されている場合の構成例を
図4に示す。図4は従来のメモリコントローラの一例の
構成図である。
【0009】同図にはメモリコントローラのみならず周
辺装置も含み表示されている。システム3−1は、CP
U3−2と、メモリコントローラ3−3と、メインメモ
リ3−4とからなり、オプション3−5は、ローカルメ
モリ3−6と、コントローラ3−7とからなる。
辺装置も含み表示されている。システム3−1は、CP
U3−2と、メモリコントローラ3−3と、メインメモ
リ3−4とからなり、オプション3−5は、ローカルメ
モリ3−6と、コントローラ3−7とからなる。
【0010】即ち、アクセス対象のメモリはメインメモ
リ3−4とローカルメモリ3−6との2つが存在する。
リ3−4とローカルメモリ3−6との2つが存在する。
【0011】メモリアクセス(メインメモリ3−4又は
PCIバス3−10に接続されているオプション3−5
内のローカルメモリ3−6)を行う場合、CPU3−2
から出力される制御信号P11とアドレス信号P12を
メモリコントローラ3−3が受け、メインメモリ3−4
に対し、メモリ制御信号P13とアドレス信号P14を
出力する。
PCIバス3−10に接続されているオプション3−5
内のローカルメモリ3−6)を行う場合、CPU3−2
から出力される制御信号P11とアドレス信号P12を
メモリコントローラ3−3が受け、メインメモリ3−4
に対し、メモリ制御信号P13とアドレス信号P14を
出力する。
【0012】また、オプション3−5のローカルメモリ
3−6へのアクセスの場合には、PCIバス3−10上
にPCI制御信号P15とアドレス信号P16を出力
し、オプション3−5内のコントローラ3−7がこれら
の信号P15,P16を受け、コントローラ3−7がロ
ーカルメモリ3−6に対し、メモリ制御信号P17とア
ドレス信号P18を出力する。なお、アドレス信号に対
応するデータ信号が同図に示すように出力される。
3−6へのアクセスの場合には、PCIバス3−10上
にPCI制御信号P15とアドレス信号P16を出力
し、オプション3−5内のコントローラ3−7がこれら
の信号P15,P16を受け、コントローラ3−7がロ
ーカルメモリ3−6に対し、メモリ制御信号P17とア
ドレス信号P18を出力する。なお、アドレス信号に対
応するデータ信号が同図に示すように出力される。
【0013】図5はメインメモリとローカルメモリの構
成図である。同図には一例としてシステム3−1内のメ
インメモリ3−4が4Gバイトのメモリ空間を有し、オ
プション3−5内のローカルメモリ3−6が1Mバイト
の容量を有する場合が示されている。
成図である。同図には一例としてシステム3−1内のメ
インメモリ3−4が4Gバイトのメモリ空間を有し、オ
プション3−5内のローカルメモリ3−6が1Mバイト
の容量を有する場合が示されている。
【0014】PCIバス3−10を持つシステム3−1
では、PCIバス3−10に接続されるローカルメモリ
3−6を持つオプション3−5に対し、PCIの自動コ
ンフィグレーション(configuration)機
能により、システム3−1のアクセス可能な4Gバイト
のメモリ空間の上位に、ローカルメモリ3−6のオフセ
ットアドレス(セグメント先頭からの位置を示すアドレ
ス)を割当て、オプション3−5内に持つPCIコンフ
ィグレジスタ3−8にオフセット数値を書込む。
では、PCIバス3−10に接続されるローカルメモリ
3−6を持つオプション3−5に対し、PCIの自動コ
ンフィグレーション(configuration)機
能により、システム3−1のアクセス可能な4Gバイト
のメモリ空間の上位に、ローカルメモリ3−6のオフセ
ットアドレス(セグメント先頭からの位置を示すアドレ
ス)を割当て、オプション3−5内に持つPCIコンフ
ィグレジスタ3−8にオフセット数値を書込む。
【0015】オプション3−5のローカルメモリ3−6
が1Mバイトと仮定すると、オプション3−5のローカ
ルメモリ3−6にアクセスするためには、ローカルメモ
リ3−6の物理アドレス値でアクセスするのではなく、
プロテクトモードによる32ビットアドレスを指定する
必要がある。
が1Mバイトと仮定すると、オプション3−5のローカ
ルメモリ3−6にアクセスするためには、ローカルメモ
リ3−6の物理アドレス値でアクセスするのではなく、
プロテクトモードによる32ビットアドレスを指定する
必要がある。
【0016】また、通常は1Mバイト全てをメインメモ
リ3−4に割当てるのではなく、図5のようにオプショ
ンのローカルメモリ3−6を128個のバンクに分割
し、1バンク=8kバイトを上位メモリ空間に割当て、
バンク切替えによりローカルメモリ4−2のアクセスを
行っている。
リ3−4に割当てるのではなく、図5のようにオプショ
ンのローカルメモリ3−6を128個のバンクに分割
し、1バンク=8kバイトを上位メモリ空間に割当て、
バンク切替えによりローカルメモリ4−2のアクセスを
行っている。
【0017】即ち、アクセスされた32ビットアドレス
に応じてこの1バンク(8Kバイト)の領域がメインメ
モリ空間3−4の4Gバイト内に設定されるのである。
に応じてこの1バンク(8Kバイト)の領域がメインメ
モリ空間3−4の4Gバイト内に設定されるのである。
【0018】
【発明が解決しようとする課題】しかし、前述したよう
にメインメモリの上位空間に割り当てられたローカルメ
モリにアクセスを行う場合、一般のOS上で動作するプ
ログラムがシステムコールする場合にはリアルモードか
らプロテクトモードへの移行を行わなければならない。
にメインメモリの上位空間に割り当てられたローカルメ
モリにアクセスを行う場合、一般のOS上で動作するプ
ログラムがシステムコールする場合にはリアルモードか
らプロテクトモードへの移行を行わなければならない。
【0019】この移行を行う場合、前述した手順(図2
及び図3参照)に従う必要があり、このため長時間を要
し、システム全体のパフォーマンスが低下するという問
題があった。
及び図3参照)に従う必要があり、このため長時間を要
し、システム全体のパフォーマンスが低下するという問
題があった。
【0020】この種のリアルモードとプロテクトモード
を有するメモリコントローラの一例が特開平3−253
955号公報に開示されている。この公報記載の技術
は、プロテクトモードアドレス空間の最終位置に強制配
置されたROMをCPUリセット直後以後にリアルモー
ド空間の最終位置に再配置するというものである。
を有するメモリコントローラの一例が特開平3−253
955号公報に開示されている。この公報記載の技術
は、プロテクトモードアドレス空間の最終位置に強制配
置されたROMをCPUリセット直後以後にリアルモー
ド空間の最終位置に再配置するというものである。
【0021】又、特開平1−502221号公報にリア
ルモードないしこれと互換性のあるモードで動作しつ
つ、拡張メモリ空間に窓を設定することにより拡張メモ
リ空間の機能を利用する技術が開示されている。
ルモードないしこれと互換性のあるモードで動作しつ
つ、拡張メモリ空間に窓を設定することにより拡張メモ
リ空間の機能を利用する技術が開示されている。
【0022】しかし、これらの公報に開示された技術は
いずれもリアルモードからプロテクトモードへの移行を
容易にするための技術ではない。
いずれもリアルモードからプロテクトモードへの移行を
容易にするための技術ではない。
【0023】そこで本発明の目的は、リアルモードのま
まメインメモリの上位空間に割り当てられたメモリにア
クセスが可能で、もってリアルモードからプロテクトモ
ードへの移行手順を省略することが可能なメモリコント
ローラを提供することにある。
まメインメモリの上位空間に割り当てられたメモリにア
クセスが可能で、もってリアルモードからプロテクトモ
ードへの移行手順を省略することが可能なメモリコント
ローラを提供することにある。
【0024】
【課題を解決するための手段】前記課題を解決するため
に本発明は、ビット数n(nは正の整数)のアドレスで
メモリアクセスを行う第1のモードと、前記nにm(m
は正の整数)を加算したビット数のアドレスでメモリア
クセスを行う第2のモードとを含むメモリコントローラ
であって、上位装置からの前記ビット数nのアドレスを
保持する第1の保持手段と、前記第2のモードでアクセ
スすべきアドレスの上位mビットを保持する第2の保持
手段と、前記上位装置からの前記第1及び第2のモード
のいずれによるメモリアクセスかの判別情報を保持する
第3の保持手段と、この第3の保持手段に保持された判
別情報に基づき前記第1の保持手段に保持されたビット
数nのアドレスと前記第2の保持手段に保持された上位
mビットのアドレスとを合成するアドレス合成手段と、
このアドレス合成手段より出力されるアドレスによりメ
モリアクセスを行うメモリアクセス手段とを含むことを
特徴とする。
に本発明は、ビット数n(nは正の整数)のアドレスで
メモリアクセスを行う第1のモードと、前記nにm(m
は正の整数)を加算したビット数のアドレスでメモリア
クセスを行う第2のモードとを含むメモリコントローラ
であって、上位装置からの前記ビット数nのアドレスを
保持する第1の保持手段と、前記第2のモードでアクセ
スすべきアドレスの上位mビットを保持する第2の保持
手段と、前記上位装置からの前記第1及び第2のモード
のいずれによるメモリアクセスかの判別情報を保持する
第3の保持手段と、この第3の保持手段に保持された判
別情報に基づき前記第1の保持手段に保持されたビット
数nのアドレスと前記第2の保持手段に保持された上位
mビットのアドレスとを合成するアドレス合成手段と、
このアドレス合成手段より出力されるアドレスによりメ
モリアクセスを行うメモリアクセス手段とを含むことを
特徴とする。
【0025】本発明によれば、ビット数nのアドレス、
即ち第1のモード(リアルモード)によるアクセスと、
第2のモード(プロテクトモード)であることを示す判
別情報が上位装置よりメモリコントローラへ入力される
と、メモリコントローラはまず、そのビット数nのアド
レスを第1の保持手段に、その判別情報を第3の保持手
段に夫々保持させる。
即ち第1のモード(リアルモード)によるアクセスと、
第2のモード(プロテクトモード)であることを示す判
別情報が上位装置よりメモリコントローラへ入力される
と、メモリコントローラはまず、そのビット数nのアド
レスを第1の保持手段に、その判別情報を第3の保持手
段に夫々保持させる。
【0026】一方、メモリコントローラはメインメモリ
の上位メモリ空間をアクセスするために必要なアドレス
の上位mビットを予め保持する第2の保持手段を有して
いる。
の上位メモリ空間をアクセスするために必要なアドレス
の上位mビットを予め保持する第2の保持手段を有して
いる。
【0027】そこで、アドレス合成手段は判別情報が第
2のモードであるのでビット数nのアドレスと上位mビ
ットのアドレスとを合成し第2のモード(プロテクトモ
ード)のアクセスアドレスを生成する。
2のモードであるのでビット数nのアドレスと上位mビ
ットのアドレスとを合成し第2のモード(プロテクトモ
ード)のアクセスアドレスを生成する。
【0028】これにより、リアルモードにてメインメモ
リの上位メモリ空間をアクセスすることが可能となる。
リの上位メモリ空間をアクセスすることが可能となる。
【0029】
【発明の実施の形態】以下、本発明の実施の形態につい
て添付図面を参照しながら説明する。図1は本発明に係
るメモリコントローラの最良の実施の形態の構成図であ
る。なお、便宜上図1にはメモリコントローラの周辺装
置も表示されている。又、従来例(図4)と同様の構成
部分については同一番号を付し、その説明を省略する。
て添付図面を参照しながら説明する。図1は本発明に係
るメモリコントローラの最良の実施の形態の構成図であ
る。なお、便宜上図1にはメモリコントローラの周辺装
置も表示されている。又、従来例(図4)と同様の構成
部分については同一番号を付し、その説明を省略する。
【0030】図1のシステム1−0はCPU3−2とメ
モリコントローラ1−1とメインメモリ3−4で構成さ
れ、PCIバス3−10にはオプション3−5が接続さ
れる。
モリコントローラ1−1とメインメモリ3−4で構成さ
れ、PCIバス3−10にはオプション3−5が接続さ
れる。
【0031】メモリコントローラ1−1には入力アドレ
スレジスタ1−4と出力アドレスレジスタ1−5と、選
択制御回路1−7とセレクタ回路1−8と、ベースアド
レスレジスタ1−9とモードレジスタ1−10により構
成され、また、第2のメモリコントローラ1−6を含ん
でいる。
スレジスタ1−4と出力アドレスレジスタ1−5と、選
択制御回路1−7とセレクタ回路1−8と、ベースアド
レスレジスタ1−9とモードレジスタ1−10により構
成され、また、第2のメモリコントローラ1−6を含ん
でいる。
【0032】入力アドレスレジスタ1−4は、CPU3
−2から入力するアドレス信号を一時格納するためのレ
ジスタである。出力アドレスレジスタ1−5はセレクタ
回路1−8で生成されたアドレス信号を一時格納してお
くためのレジスタである。
−2から入力するアドレス信号を一時格納するためのレ
ジスタである。出力アドレスレジスタ1−5はセレクタ
回路1−8で生成されたアドレス信号を一時格納してお
くためのレジスタである。
【0033】ベースアドレスレジスタ1−9は、PCI
オプション3−5のコントローラ3−7内にあるコンフ
ィグレーションレジスタ3−8(図5参照)のベースア
ドレスレジスタと同じ値を格納するためのものである。
オプション3−5のコントローラ3−7内にあるコンフ
ィグレーションレジスタ3−8(図5参照)のベースア
ドレスレジスタと同じ値を格納するためのものである。
【0034】モードレジスタ1−10は、CPU3−2
からの制御コマンドP1によりセットされる。選択制御
回路1−7はモードレジスタ1−10の値により、アド
レス生成の切替信号をセレクタ回路1−8に出力する。
セレクタ回路1−8は、選択制御回路1−7からの信号
を受け、ベースアドレスレジスタ1−9と入力アドレス
レジスタ1−4により出力アドレスを生成するものであ
る。
からの制御コマンドP1によりセットされる。選択制御
回路1−7はモードレジスタ1−10の値により、アド
レス生成の切替信号をセレクタ回路1−8に出力する。
セレクタ回路1−8は、選択制御回路1−7からの信号
を受け、ベースアドレスレジスタ1−9と入力アドレス
レジスタ1−4により出力アドレスを生成するものであ
る。
【0035】PCIオプション3−5をシステム1−0
に実装し電源を入れると、PCIの自動コンフィグレー
ションにより、オプション3−5内のローカルメモリ3
−6が、システム1−0のアクセス可能なメモリ空間3
−4(図5参照)の上位アドレスに割当てられる。この
時、オプション3−5内のコントローラ3−7が持つコ
ンフィグレーションレジスタ3−8(図5参照)にベー
スアドレスがセットされる。同時に、このベースアドレ
スの値のうち、上位12ビットの数値をメモリコントロ
ーラ1−1内のベースアドレスレジスタ1−9にセット
する。
に実装し電源を入れると、PCIの自動コンフィグレー
ションにより、オプション3−5内のローカルメモリ3
−6が、システム1−0のアクセス可能なメモリ空間3
−4(図5参照)の上位アドレスに割当てられる。この
時、オプション3−5内のコントローラ3−7が持つコ
ンフィグレーションレジスタ3−8(図5参照)にベー
スアドレスがセットされる。同時に、このベースアドレ
スの値のうち、上位12ビットの数値をメモリコントロ
ーラ1−1内のベースアドレスレジスタ1−9にセット
する。
【0036】CPU3−2の動作モードは、リアルモー
ドで起動するものとして、20ビットのアドレス指定に
て32ビットアドレスを生成する場合について説明す
る。
ドで起動するものとして、20ビットのアドレス指定に
て32ビットアドレスを生成する場合について説明す
る。
【0037】20ビットのアドレス指定にて32ビット
アドレスを生成する場合、即ち、プロテクトモード時の
アクセスを行う場合、CPU3−2は制御コマンドP1
として”1“をモードレジスタ1−10へ出力する。
アドレスを生成する場合、即ち、プロテクトモード時の
アクセスを行う場合、CPU3−2は制御コマンドP1
として”1“をモードレジスタ1−10へ出力する。
【0038】この”1“の制御コマンドP1がモードレ
ジスタ1−10へ出力されると、モードレジスタ1−1
0は”1“にセットされる。
ジスタ1−10へ出力されると、モードレジスタ1−1
0は”1“にセットされる。
【0039】これとほぼ同時にCPU3−2はメモリア
クセスするための任意の20ビットのアドレスを入力ア
ドレスレジスタ1−4へ出力する。入力アドレスレジス
タ1−4はこの20ビットのアドレスを格納する。
クセスするための任意の20ビットのアドレスを入力ア
ドレスレジスタ1−4へ出力する。入力アドレスレジス
タ1−4はこの20ビットのアドレスを格納する。
【0040】選択制御回路1−7はモードレジスタ1−
10を監視し、モードレジスタ1−10が”1“にセッ
トされているためベースアドレスレジスタ1−9による
アドレス生成を行うと判定し、セレクタ回路1−8にベ
ースアドレスレジスタを有効にする通知を行う。
10を監視し、モードレジスタ1−10が”1“にセッ
トされているためベースアドレスレジスタ1−9による
アドレス生成を行うと判定し、セレクタ回路1−8にベ
ースアドレスレジスタを有効にする通知を行う。
【0041】セレクタ回路1−8は、選択制御回路1−
7からの通知に従い、ベースアドレスレジスタ1−9を
有効にして、入力アドレスレジスタ1−4のうち、格納
されている下位20ビットと合成し、32ビットアドレ
スを生成し、出力アドレスレジスタ1−5に格納する。
7からの通知に従い、ベースアドレスレジスタ1−9を
有効にして、入力アドレスレジスタ1−4のうち、格納
されている下位20ビットと合成し、32ビットアドレ
スを生成し、出力アドレスレジスタ1−5に格納する。
【0042】そして、出力アドレスレジスタ1−5の値
を第2のメモリコントローラ1−6に出力することによ
りメインメモリ3−4に割当てられたローカルメモリ3
−6に対してアクセスを行う。
を第2のメモリコントローラ1−6に出力することによ
りメインメモリ3−4に割当てられたローカルメモリ3
−6に対してアクセスを行う。
【0043】このローカルメモリ3−6がアクセスされ
たことにより、メインメモリ3−4の4Gバイトのメモ
リ空間のうちの上位がアクセスされたことになる。
たことにより、メインメモリ3−4の4Gバイトのメモ
リ空間のうちの上位がアクセスされたことになる。
【0044】次に、20ビットのアドレス指定で20ビ
ットアドレスを指定する場合について説明する。
ットアドレスを指定する場合について説明する。
【0045】20ビットのアドレス指定にて20ビット
アドレスを生成する場合、即ち、リアルモードのアクセ
スを行う場合、CPU3−2は制御コマンドP1とし
て”0“をモードレジスタ1−10へ出力する。
アドレスを生成する場合、即ち、リアルモードのアクセ
スを行う場合、CPU3−2は制御コマンドP1とし
て”0“をモードレジスタ1−10へ出力する。
【0046】この”0“の制御コマンドP1がモードレ
ジスタ1−10へ出力されると、モードレジスタ1−1
0は”0“にリセットされる。
ジスタ1−10へ出力されると、モードレジスタ1−1
0は”0“にリセットされる。
【0047】これとほぼ同時にCPU3−2はメモリア
クセスするための任意の20ビットのアドレスを入力ア
ドレスレジスタ1−4へ出力する。入力アドレスレジス
タ1−4はこの20ビットのアドレスを格納する。
クセスするための任意の20ビットのアドレスを入力ア
ドレスレジスタ1−4へ出力する。入力アドレスレジス
タ1−4はこの20ビットのアドレスを格納する。
【0048】選択制御回路1−7はモードレジスタ1−
10を監視し、モードレジスタ1−10が”0“にリセ
ットされているためベースアドレスレジスタ1−9によ
るアドレス生成を行わないと判定し、セレクタ回路1−
8にベースアドレスレジスタを無効にする通知を行う。
10を監視し、モードレジスタ1−10が”0“にリセ
ットされているためベースアドレスレジスタ1−9によ
るアドレス生成を行わないと判定し、セレクタ回路1−
8にベースアドレスレジスタを無効にする通知を行う。
【0049】セレクタ回路1−8は、選択制御回路1−
7からの通知に従い、ベースアドレスレジスタを無効に
して、入力アドレスレジスタ1−4に格納されている2
0ビットのアドレスのみをそのまま出力レジスタ1−5
に格納する。
7からの通知に従い、ベースアドレスレジスタを無効に
して、入力アドレスレジスタ1−4に格納されている2
0ビットのアドレスのみをそのまま出力レジスタ1−5
に格納する。
【0050】そして、出力レジスタ1−5の値を第2の
メモリコントローラ1−6に出力することによりメイン
メモリ3−4に割り当てられた下位の1Mバイトに対し
てアクセスを行う。
メモリコントローラ1−6に出力することによりメイン
メモリ3−4に割り当てられた下位の1Mバイトに対し
てアクセスを行う。
【0051】なお、従来どおり、32ビットのアドレス
指定にてメモリ空間4Gバイトの上位アドレスにアクセ
スするためには、入力アドレスレジスタ1−4に32ビ
ットのアドレスが入力されたことを検出する検出部をこ
のメモリコントローラ1−1内に追加し、この検出部で
32ビットのアドレスが入力されたことが検出されると
セレクタ回路1−8がその32ビットのアドレスをその
まま出力レジスタ1−5へ出力するように構成する必要
がある。
指定にてメモリ空間4Gバイトの上位アドレスにアクセ
スするためには、入力アドレスレジスタ1−4に32ビ
ットのアドレスが入力されたことを検出する検出部をこ
のメモリコントローラ1−1内に追加し、この検出部で
32ビットのアドレスが入力されたことが検出されると
セレクタ回路1−8がその32ビットのアドレスをその
まま出力レジスタ1−5へ出力するように構成する必要
がある。
【0052】なお、メインメモリ3−4のメモリ空間と
して4Gバイト、ローカルメモリ3−6のメモリ容量と
して1Mバイトを割り当てたが、これに限定されるもの
ではなく任意のバイト数にて実現が可能である。ただ
し、メインメモリ3−4のメモリ空間の大きさをローカ
ルメモリ3−6のメモリ容量より大きくすることが必要
であることはいうまでもない。
して4Gバイト、ローカルメモリ3−6のメモリ容量と
して1Mバイトを割り当てたが、これに限定されるもの
ではなく任意のバイト数にて実現が可能である。ただ
し、メインメモリ3−4のメモリ空間の大きさをローカ
ルメモリ3−6のメモリ容量より大きくすることが必要
であることはいうまでもない。
【0053】
【発明の効果】本発明によれば、ビット数n(nは正の
整数)のアドレスでメモリアクセスを行う第1のモード
と、前記nにm(mは正の整数)を加算したビット数の
アドレスでメモリアクセスを行う第2のモードとを含む
メモリコントローラであって、そのメモリコントローラ
を、上位装置からの前記ビット数nのアドレスを保持す
る第1の保持手段と、前記第2のモードでアクセスすべ
きアドレスの上位mビットを保持する第2の保持手段
と、前記上位装置からの前記第1及び第2のモードのい
ずれによるメモリアクセスかの判別情報を保持する第3
の保持手段と、この第3の保持手段に保持された判別情
報に基づき前記第1の保持手段に保持されたビット数n
のアドレスと前記第2の保持手段に保持された上位mビ
ットのアドレスとを合成するアドレス合成手段と、この
アドレス合成手段より出力されるアドレスによりメモリ
アクセスを行うメモリアクセス手段とを含み構成したた
め、リアルモード(第1のモード)のままメインメモリ
の上位空間に割り当てられたメモリにアクセスが可能
で、もってリアルモード(第1のモード)からプロテク
トモード(第2のモード)への移行手順を省略すること
が可能となる。これにより、システム全体のパフォーマ
ンスの低下を防止することができる。
整数)のアドレスでメモリアクセスを行う第1のモード
と、前記nにm(mは正の整数)を加算したビット数の
アドレスでメモリアクセスを行う第2のモードとを含む
メモリコントローラであって、そのメモリコントローラ
を、上位装置からの前記ビット数nのアドレスを保持す
る第1の保持手段と、前記第2のモードでアクセスすべ
きアドレスの上位mビットを保持する第2の保持手段
と、前記上位装置からの前記第1及び第2のモードのい
ずれによるメモリアクセスかの判別情報を保持する第3
の保持手段と、この第3の保持手段に保持された判別情
報に基づき前記第1の保持手段に保持されたビット数n
のアドレスと前記第2の保持手段に保持された上位mビ
ットのアドレスとを合成するアドレス合成手段と、この
アドレス合成手段より出力されるアドレスによりメモリ
アクセスを行うメモリアクセス手段とを含み構成したた
め、リアルモード(第1のモード)のままメインメモリ
の上位空間に割り当てられたメモリにアクセスが可能
で、もってリアルモード(第1のモード)からプロテク
トモード(第2のモード)への移行手順を省略すること
が可能となる。これにより、システム全体のパフォーマ
ンスの低下を防止することができる。
【図1】本発明に係るメモリコントローラの最良の実施
の形態の構成図である。
の形態の構成図である。
【図2】リアルモードからプロテクトモードへの移行手
順を示すフローチャートである。
順を示すフローチャートである。
【図3】プロテクトモードからリアルモードへの移行手
順を示すフローチャートである。
順を示すフローチャートである。
【図4】従来のメモリコントローラの一例の構成図であ
る。
る。
【図5】メインメモリとローカルメモリの構成図であ
る。
る。
1−1 メモリコントローラ 1−4 入力アドレスレジスタ 1−6 第2メモリコントローラ 1−7 選択制御回路 1−8 セレクタ回路 1−9 ベースアドレスレジスタ 1−10 モードレジスタ 3−4 メインメモリ 3−6 ローカルメモリ
Claims (4)
- 【請求項1】 ビット数n(nは正の整数)のアドレス
でメモリアクセスを行う第1のモードと、前記nにm
(mは正の整数)を加算したビット数のアドレスでメモ
リアクセスを行う第2のモードとを含むメモリコントロ
ーラであって、 上位装置からの前記ビット数nのアドレスを保持する第
1の保持手段と、前記第2のモードでアクセスすべきア
ドレスの上位mビットを保持する第2の保持手段と、前
記上位装置からの前記第1及び第2のモードのいずれに
よるメモリアクセスかの判別情報を保持する第3の保持
手段と、この第3の保持手段に保持された判別情報に基
づき前記第1の保持手段に保持されたビット数nのアド
レスと前記第2の保持手段に保持された上位mビットの
アドレスとを合成するアドレス合成手段と、このアドレ
ス合成手段より出力されるアドレスによりメモリアクセ
スを行うメモリアクセス手段とを含むことを特徴とする
メモリコントローラ。 - 【請求項2】 前記アドレス合成手段は前記第3の保持
手段に保持される判別情報が第2のモードを選択する情
報の場合に前記ビット数nのアドレスと前記上位mビッ
トのアドレスとを合成することを特徴とする請求項1記
載のメモリコントローラ。 - 【請求項3】 前記アドレス合成手段は前記第3の保持
手段に保持される判別情報が第1のモードを選択する情
報の場合に前記ビット数nのアドレスのみを出力するこ
とを特徴とする請求項1記載のメモリコントローラ。 - 【請求項4】 前記第2のモードでアクセス可能なメモ
リ空間のうち少なくとも前記第2のモードでアクセスし
たアドレスが割り当てられる第2のメモリを有し、前記
アドレス合成手段で合成されたアドレスにより前記第2
のメモリがアクセスされることを特徴とする請求項1〜
3いずれかに記載のメモリコントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27571397A JPH11110290A (ja) | 1997-10-08 | 1997-10-08 | メモリコントローラ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27571397A JPH11110290A (ja) | 1997-10-08 | 1997-10-08 | メモリコントローラ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11110290A true JPH11110290A (ja) | 1999-04-23 |
Family
ID=17559344
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP27571397A Withdrawn JPH11110290A (ja) | 1997-10-08 | 1997-10-08 | メモリコントローラ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11110290A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006285798A (ja) * | 2005-04-01 | 2006-10-19 | Ark Joho Systems:Kk | リアルモードにて1M以上のメインメモリを利用するx86系計算機 |
-
1997
- 1997-10-08 JP JP27571397A patent/JPH11110290A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006285798A (ja) * | 2005-04-01 | 2006-10-19 | Ark Joho Systems:Kk | リアルモードにて1M以上のメインメモリを利用するx86系計算機 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6226732B1 (en) | Memory system architecture | |
| US5721874A (en) | Configurable cache with variable, dynamically addressable line sizes | |
| US6321314B1 (en) | Method and apparatus for restricting memory access | |
| EP0902922B1 (en) | Method and apparatus for caching system management mode information with other information | |
| RU2427892C2 (ru) | Способ и устройство для установки политики кэширования в процессоре | |
| JPS6136667B2 (ja) | ||
| US9146879B1 (en) | Virtual memory management for real-time embedded devices | |
| US6851036B1 (en) | Method and apparatus for controlling external devices through address translation buffer | |
| US6842790B2 (en) | Host computer virtual memory within a network interface adapter | |
| US6952761B2 (en) | Bus interface selection by page table attributes | |
| US6321332B1 (en) | Flexible control of access to basic input/output system memory | |
| JPH11110290A (ja) | メモリコントローラ | |
| US6324635B1 (en) | Method and apparatus for address paging emulation | |
| US20010029561A1 (en) | Apparatus for extending the available number of configuration registers | |
| US6243775B1 (en) | System for extending the available number of configuration registers | |
| JPH10293684A (ja) | コンピュータシステムおよびその立ち上げ制御方法 | |
| JPH07334420A (ja) | 拡張メモリ制御回路 | |
| JPH05313999A (ja) | メモリ制御装置 | |
| JPS6120160A (ja) | アドレツシング例外検出方式 | |
| JPH04324194A (ja) | Rom回路 | |
| JP2853736B2 (ja) | クラスタ番号変換回路 | |
| JPH10247150A (ja) | データ処理システム | |
| JPH077353B2 (ja) | アドレス選択方式 | |
| JP3242847B2 (ja) | データ制御装置 | |
| JP2003196087A (ja) | マイクロコントローラのメモリアドレッシング方法及びページマッピング装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050104 |