JPH0773047A - コンピュータのためのシステム管理モードアドレス訂正システムおよびコンピュータシステム - Google Patents
コンピュータのためのシステム管理モードアドレス訂正システムおよびコンピュータシステムInfo
- Publication number
- JPH0773047A JPH0773047A JP6075299A JP7529994A JPH0773047A JP H0773047 A JPH0773047 A JP H0773047A JP 6075299 A JP6075299 A JP 6075299A JP 7529994 A JP7529994 A JP 7529994A JP H0773047 A JPH0773047 A JP H0773047A
- Authority
- JP
- Japan
- Prior art keywords
- microprocessor
- signal
- address
- masking
- control signal
- 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
Links
- 230000000873 masking effect Effects 0.000 claims description 26
- 230000004913 activation Effects 0.000 claims 2
- 230000000694 effects Effects 0.000 claims 2
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000015654 memory Effects 0.000 description 68
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 239000003292 glue Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- GGZVJPRZONQVPC-UHFFFAOYSA-N Smipine Natural products O=CN1CCCCC1C2CCN=C2 GGZVJPRZONQVPC-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/463—Program control block organisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Circuits Of Receivers In General (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
- Microcomputers (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】 (修正有)
【目的】コンピュータがシステム管理モードにあるとき
に、アドレスバスに訂正アドレス値を供給する。 【構成】コンピュータがシステム管理モードにあるとき
に、マイクロプロセッサ152は、システム管理割り込
み動作(SMIACT* )信号をアサートする。この信
号は、FORCE A20信号をも受ける回路162に
供給される。SMIACT信号が非動作状態である間
に、上記制御回路162は、上記コンピュータシステム
に真のFORCE A20信号を供給する。SMIが生
じたときに、SMIACT信号は動作状態になり、そし
て、FORCE A20信号はディスエーブルにされ
る。この結果、マイクロプロセッサ152により発生さ
れるアドレスは、アドレスバスにアサートされる。
に、アドレスバスに訂正アドレス値を供給する。 【構成】コンピュータがシステム管理モードにあるとき
に、マイクロプロセッサ152は、システム管理割り込
み動作(SMIACT* )信号をアサートする。この信
号は、FORCE A20信号をも受ける回路162に
供給される。SMIACT信号が非動作状態である間
に、上記制御回路162は、上記コンピュータシステム
に真のFORCE A20信号を供給する。SMIが生
じたときに、SMIACT信号は動作状態になり、そし
て、FORCE A20信号はディスエーブルにされ
る。この結果、マイクロプロセッサ152により発生さ
れるアドレスは、アドレスバスにアサートされる。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータシステム
における割り込みルーチンに関し、そして、より詳細に
は、システム管理割り込みがアサートされるときのアド
レスバスにおける適当な割り込みスターティングアドレ
スのアサーションに関するものである。
における割り込みルーチンに関し、そして、より詳細に
は、システム管理割り込みがアサートされるときのアド
レスバスにおける適当な割り込みスターティングアドレ
スのアサーションに関するものである。
【0002】
【従来の技術】パーソナルコンピュータの初期の時代に
は、インターナショナル・ビジネス・マシーンズ(IB
M)のPCコンピュータが業界を支配していた。IBM
PCは、最初に提供され、しかも、適度に有効なデス
クトップコンピュータの1つであったから、大評判にな
る成功を享楽した。結局は、IBM PCの支配は広範
囲にわたったので、このIBM PCはパーソナルコン
ピュータアーキテクチャ、システム設計およびソフトウ
ェアの規格を作った。
は、インターナショナル・ビジネス・マシーンズ(IB
M)のPCコンピュータが業界を支配していた。IBM
PCは、最初に提供され、しかも、適度に有効なデス
クトップコンピュータの1つであったから、大評判にな
る成功を享楽した。結局は、IBM PCの支配は広範
囲にわたったので、このIBM PCはパーソナルコン
ピュータアーキテクチャ、システム設計およびソフトウ
ェアの規格を作った。
【0003】IBM PCは、システムメモリおよびI
/Oデバイスにアクセスするために20ビットアドレス
バスを採用しているインテル社の8088マイクロプロ
セッサをその中央演算ユニット(CPU)に用いた。I
BM PCはパーソナルコンピュータのマーケットを完
全に支配したので、ソフトウェア販売者は、8088マ
イクロプロセッサおよび8086マイクロプロセッサの
20ビットバスのためのソフトウェアのアレイを作り出
した。このソフトウェアの多くは、近代のソフトウェア
の基礎を形成している。この結果、IBM PCにおけ
る20ビットバスと、そのために作り出された草分けの
ソフトウェアとの初期の支配により、今日用いられてい
る多くの基本的なアプリケーションは、20ビットアド
レスバスに基づいている。
/Oデバイスにアクセスするために20ビットアドレス
バスを採用しているインテル社の8088マイクロプロ
セッサをその中央演算ユニット(CPU)に用いた。I
BM PCはパーソナルコンピュータのマーケットを完
全に支配したので、ソフトウェア販売者は、8088マ
イクロプロセッサおよび8086マイクロプロセッサの
20ビットバスのためのソフトウェアのアレイを作り出
した。このソフトウェアの多くは、近代のソフトウェア
の基礎を形成している。この結果、IBM PCにおけ
る20ビットバスと、そのために作り出された草分けの
ソフトウェアとの初期の支配により、今日用いられてい
る多くの基本的なアプリケーションは、20ビットアド
レスバスに基づいている。
【0004】異常に成功したIBMパーソナルコンピュ
ータの次の世代は、IBM PC/ATであった。メモ
リおよびI/Oデバイスのより広い範囲に対するアクセ
スを与えるために、IBM PC/ATアーキテクチャ
は24ビットバスを組み込んだ。IBM PC/ATの
心臓部も、24ビットアドレスバスを利用しているイン
テル社の80286マイクロプロセッサであった。この
286マイクロプロセッサの24ビットアドレス指定能
力はPC/ATの24ビットバスを駆動することができ
たが、標準的な24ビット構成は20ビット8088マ
イクロプロセッサのために展開されたソフトウエアの或
るものとは互換性がなかった。これは、特に、8088
命令レジスタがFFFFFhというその限界に達したと
きにこの8088命令レジスタは00000hという初
期値にロールオーバーするためであった。したがって、
8088システムのためのメモリスペースは、20ビッ
トアドレスバスの上限(FFFFFh)から初期値(0
0000h)へと連続しているように見られることがで
きる。しかし、24ビットカウンタは、0FFFFFh
の後に100000hの値を発生し、そして、ロールオ
ーバーしない。幾つかのプログラムがロールオーバー特
性を信頼しているので、これらのプログラムは増加し続
ける24ビットアドレスバスと互換性がない。
ータの次の世代は、IBM PC/ATであった。メモ
リおよびI/Oデバイスのより広い範囲に対するアクセ
スを与えるために、IBM PC/ATアーキテクチャ
は24ビットバスを組み込んだ。IBM PC/ATの
心臓部も、24ビットアドレスバスを利用しているイン
テル社の80286マイクロプロセッサであった。この
286マイクロプロセッサの24ビットアドレス指定能
力はPC/ATの24ビットバスを駆動することができ
たが、標準的な24ビット構成は20ビット8088マ
イクロプロセッサのために展開されたソフトウエアの或
るものとは互換性がなかった。これは、特に、8088
命令レジスタがFFFFFhというその限界に達したと
きにこの8088命令レジスタは00000hという初
期値にロールオーバーするためであった。したがって、
8088システムのためのメモリスペースは、20ビッ
トアドレスバスの上限(FFFFFh)から初期値(0
0000h)へと連続しているように見られることがで
きる。しかし、24ビットカウンタは、0FFFFFh
の後に100000hの値を発生し、そして、ロールオ
ーバーしない。幾つかのプログラムがロールオーバー特
性を信頼しているので、これらのプログラムは増加し続
ける24ビットアドレスバスと互換性がない。
【0005】互換性を保つために、アドレスビット20
マスク信号は、8088カウンタのロールオーバーをシ
ミュレートすべく、コンピュータシステムに組み込まれ
た。幾つかの名前および論理的センスがアドレスビット
20マスク信号を指定するために用いられているが、こ
の信号は、この信号に対する共通指定であるFORCE
A20信号としてここに参照されている。アサートさ
れたときに、FORCE A20信号はアドレスバスの
ビット20(ビットA20)がマスクされるようにする
ので、ビット20は、マイクロプロセッサにより発生さ
れる値とは無関係に、いつでもロウ(すなわち、低)に
保持される。FORCE A20信号は、ソフトウエア
により書き込まれてもよいレジスタによって制御され
る。ビットA20をロウに駆動することによって、FO
RCE A20信号は、8088マイクロプロセッサの
ロールオーバーをシミュレートするために、バスにアド
レス値をアサートさせる。例えば、24ビットカウンタ
が値0FFFFFhに達するときに、次の増加がカウン
ト値を100000hにさせる。この結果、アクセスさ
れる次のアドレスは、8088マイクロプロセッサシス
テムにおいてアクセスされる000000hではなく、
100000hになるだろう。しかし、FORCE A
20信号がアサートされるときに、アドレスバスのビッ
トA20はロウに駆動される。この結果、アドレスバス
にアサートされる値は、8088命令レジスタのロール
オーバーをシミュレートするのに必要とする適当な値で
ある000000hである。
マスク信号は、8088カウンタのロールオーバーをシ
ミュレートすべく、コンピュータシステムに組み込まれ
た。幾つかの名前および論理的センスがアドレスビット
20マスク信号を指定するために用いられているが、こ
の信号は、この信号に対する共通指定であるFORCE
A20信号としてここに参照されている。アサートさ
れたときに、FORCE A20信号はアドレスバスの
ビット20(ビットA20)がマスクされるようにする
ので、ビット20は、マイクロプロセッサにより発生さ
れる値とは無関係に、いつでもロウ(すなわち、低)に
保持される。FORCE A20信号は、ソフトウエア
により書き込まれてもよいレジスタによって制御され
る。ビットA20をロウに駆動することによって、FO
RCE A20信号は、8088マイクロプロセッサの
ロールオーバーをシミュレートするために、バスにアド
レス値をアサートさせる。例えば、24ビットカウンタ
が値0FFFFFhに達するときに、次の増加がカウン
ト値を100000hにさせる。この結果、アクセスさ
れる次のアドレスは、8088マイクロプロセッサシス
テムにおいてアクセスされる000000hではなく、
100000hになるだろう。しかし、FORCE A
20信号がアサートされるときに、アドレスバスのビッ
トA20はロウに駆動される。この結果、アドレスバス
にアサートされる値は、8088命令レジスタのロール
オーバーをシミュレートするのに必要とする適当な値で
ある000000hである。
【0006】パーソナルコンピュータシステムにおける
他の重要な展開は、システム管理割り込み(SMI)で
ある。元来は、SMIはポータブルシステムのためにイ
ンテル社により案出された電力管理割り込みであった。
ポータブルコンピュータは、限られた量のエネルギーを
供給するバッテリーから電力をたびたび引き出す。バッ
テリ寿命を最大にするために、SMIは、現在用いられ
ていない任意のシステム構成要素に対する電力を切る
か、または、低減させるためにアサートされる。元来は
ラップトップモデルのための意味であったが、SMIは
デスクトップおよび他の据え付けモデルのために、ま
た、電力管理とは他の目的のために、一般的になった。
他の重要な展開は、システム管理割り込み(SMI)で
ある。元来は、SMIはポータブルシステムのためにイ
ンテル社により案出された電力管理割り込みであった。
ポータブルコンピュータは、限られた量のエネルギーを
供給するバッテリーから電力をたびたび引き出す。バッ
テリ寿命を最大にするために、SMIは、現在用いられ
ていない任意のシステム構成要素に対する電力を切る
か、または、低減させるためにアサートされる。元来は
ラップトップモデルのための意味であったが、SMIは
デスクトップおよび他の据え付けモデルのために、ま
た、電力管理とは他の目的のために、一般的になった。
【0007】SMIは、SMIタイマー、システム要求
または他の手段のいずれかによりアサートされる。SM
Iは、システムにおいて最高の優先度を有するマスクで
きない割り込みである。SMIがアサートされるとき
に、インテル社のマイクロプロセッサは、システム管理
メモリ(SMRAM)として参照されるメモリの1部を
主メモリスペースにマップする。次いで、全CPU状態
は、スタックのようなラスト・イン/ファースト・アウ
ト態様でSMRAMに退避される。CPU状態が退避さ
れた後に、マイクロプロセッサは、SMIハンドラール
ーチンを実行し始める。このSMIハンドラールーチン
は、特定のデバイスに対する電力を低減するような、特
定のシステム管理タスクを行うための割り込みサービス
ルーチンである。このルーチンが実行されている間に
は、他の割り込み要求は、サービスされず、そして、こ
の割り込みルーチンが完了するか、または、マイクロプ
ロセッサがリセットされるまで、無視される。SMIハ
ンドラーがそのタスクを完了するときに、CPU状態は
SMRAMから検索され、そして、主プログラムが続け
られる。
または他の手段のいずれかによりアサートされる。SM
Iは、システムにおいて最高の優先度を有するマスクで
きない割り込みである。SMIがアサートされるとき
に、インテル社のマイクロプロセッサは、システム管理
メモリ(SMRAM)として参照されるメモリの1部を
主メモリスペースにマップする。次いで、全CPU状態
は、スタックのようなラスト・イン/ファースト・アウ
ト態様でSMRAMに退避される。CPU状態が退避さ
れた後に、マイクロプロセッサは、SMIハンドラール
ーチンを実行し始める。このSMIハンドラールーチン
は、特定のデバイスに対する電力を低減するような、特
定のシステム管理タスクを行うための割り込みサービス
ルーチンである。このルーチンが実行されている間に
は、他の割り込み要求は、サービスされず、そして、こ
の割り込みルーチンが完了するか、または、マイクロプ
ロセッサがリセットされるまで、無視される。SMIハ
ンドラーがそのタスクを完了するときに、CPU状態は
SMRAMから検索され、そして、主プログラムが続け
られる。
【0008】SMIを用いた最初のプロセッサであるイ
ンテル社の80386SLおよび80486SLマイク
ロプロセッサにおいては、SMRAMは30000hと
3FFFFhとの間の主メモリスペースにマップされ
る。CPU状態に関するデータは、従来のスタックのよ
うに3FFFFhでスタートして下側のアドレスに移っ
て行くように記憶される。CPU状態がSMRAMに退
避された後には、マイクロプロセッサは、SMRAMス
ペースに位置しているメモリアドレス38000hにお
いてSMIハンドラーをスタートする。80386およ
び80486マイクロプロセッサの世代においては、S
MIスタートアドレスはアクセスできないレジスタに記
憶されているので、それはプログラマーにより変更され
ることはできない。同様に、30000hと3FFFF
hとの間のメモリスペースの使用は、マイクロプロセッ
サにプリセットされ、そして、変更することができな
い。SMRAMおよびスターティングアドレスの配置は
安定性がありかつ知られているが、それはしばしば不便
である。SMIがアサートされる前に30000hと3
FFFFhとの間の主メモリスペースに記憶される任意
のデータは、特別のメモリにマップされかつ従来のメモ
リにマップされるようにハードウエアが展開されないな
らば、SMIハンドラーによって多分重ね書きされて失
われる。このマッピング要求は、余分の論理を必要とす
るという問題を有し、そして、任意のキャシュメモリシ
ステムのフラッシングを必要としてメモリ量における急
激な変更を強制する。これは、コストと性能との障害に
なる。もしマッピングが行われなければ、ソフトウエア
は、データの不注意な損失を阻止するためにSMRAM
により用いられるメモリスペースの周囲について注意深
く設計されなければならない。
ンテル社の80386SLおよび80486SLマイク
ロプロセッサにおいては、SMRAMは30000hと
3FFFFhとの間の主メモリスペースにマップされ
る。CPU状態に関するデータは、従来のスタックのよ
うに3FFFFhでスタートして下側のアドレスに移っ
て行くように記憶される。CPU状態がSMRAMに退
避された後には、マイクロプロセッサは、SMRAMス
ペースに位置しているメモリアドレス38000hにお
いてSMIハンドラーをスタートする。80386およ
び80486マイクロプロセッサの世代においては、S
MIスタートアドレスはアクセスできないレジスタに記
憶されているので、それはプログラマーにより変更され
ることはできない。同様に、30000hと3FFFF
hとの間のメモリスペースの使用は、マイクロプロセッ
サにプリセットされ、そして、変更することができな
い。SMRAMおよびスターティングアドレスの配置は
安定性がありかつ知られているが、それはしばしば不便
である。SMIがアサートされる前に30000hと3
FFFFhとの間の主メモリスペースに記憶される任意
のデータは、特別のメモリにマップされかつ従来のメモ
リにマップされるようにハードウエアが展開されないな
らば、SMIハンドラーによって多分重ね書きされて失
われる。このマッピング要求は、余分の論理を必要とす
るという問題を有し、そして、任意のキャシュメモリシ
ステムのフラッシングを必要としてメモリ量における急
激な変更を強制する。これは、コストと性能との障害に
なる。もしマッピングが行われなければ、ソフトウエア
は、データの不注意な損失を阻止するためにSMRAM
により用いられるメモリスペースの周囲について注意深
く設計されなければならない。
【0009】このような不便さを取り除くために、イン
テル社からのマイクロプロセッサの最新の世代(ペンテ
ィアムまたはP5マイクロプロセッサとして知られてい
る)は、SMIハンドラースターティングアドレスおよ
びSMRAMスペースの配置がユーザにより変更される
ことを可能にしている。このペンティアム設計のもとで
は、マイクロプロセッサレジスタに記憶されるSMIス
ターティングアドレスは、従来の30000hの値に最
初にセットされる。その結果、第1のSMIがアサート
されたときに、SMIハンドラーはアドレス38000
hでスタートする。しかし、SMIハンドラールーチン
が実行している間に、それはSMRAMとして用いられ
るためのメモリの異なった領域を提供するかもしれな
い。この新しいSMRAMは、プログラマーにより選択
される主メモリスペースにおける任意の位置でスタート
するかもしれない。SMRAMは、新しいSMRAMス
タートアドレスで始まる64キロビットブロックから成
っている。SMIハンドラーが終了したときに、新しい
スターティングアドレスは、マイクロプロセッサのSM
Iスターティングアドレスレジスタに古いスターティン
グアドレスを置き換える。
テル社からのマイクロプロセッサの最新の世代(ペンテ
ィアムまたはP5マイクロプロセッサとして知られてい
る)は、SMIハンドラースターティングアドレスおよ
びSMRAMスペースの配置がユーザにより変更される
ことを可能にしている。このペンティアム設計のもとで
は、マイクロプロセッサレジスタに記憶されるSMIス
ターティングアドレスは、従来の30000hの値に最
初にセットされる。その結果、第1のSMIがアサート
されたときに、SMIハンドラーはアドレス38000
hでスタートする。しかし、SMIハンドラールーチン
が実行している間に、それはSMRAMとして用いられ
るためのメモリの異なった領域を提供するかもしれな
い。この新しいSMRAMは、プログラマーにより選択
される主メモリスペースにおける任意の位置でスタート
するかもしれない。SMRAMは、新しいSMRAMス
タートアドレスで始まる64キロビットブロックから成
っている。SMIハンドラーが終了したときに、新しい
スターティングアドレスは、マイクロプロセッサのSM
Iスターティングアドレスレジスタに古いスターティン
グアドレスを置き換える。
【0010】次のSMIがアサートされたときに、マイ
クロプロセッサは、SMRAMとして主メモリスペース
にメモリの新しい64キロバイトブロックをマップし、
そして、新しいSMRAMの中央点における新しいスタ
ーティングアドレスでSMIハンドラーをスタートす
る。例えば、第1のSMIサービスルーチンの間に、プ
ログラマーはSMRAMスターティングポイントを03
0000hから100000hに変更するかもしれな
い。SMIが次にアサートされたときに、マイクロプロ
セッサは、100000hと10FFFFhとの間にお
いて主メモリスペースにSMRAMをマップする。次い
で、マイクロプロセッサは、SMIハンドラーのために
アドレス108000hを参照する。したがって、この
特徴は、プログラマーがSMRAMのために主メモリに
おけるより便利な位置を選択することを許容する。
クロプロセッサは、SMRAMとして主メモリスペース
にメモリの新しい64キロバイトブロックをマップし、
そして、新しいSMRAMの中央点における新しいスタ
ーティングアドレスでSMIハンドラーをスタートす
る。例えば、第1のSMIサービスルーチンの間に、プ
ログラマーはSMRAMスターティングポイントを03
0000hから100000hに変更するかもしれな
い。SMIが次にアサートされたときに、マイクロプロ
セッサは、100000hと10FFFFhとの間にお
いて主メモリスペースにSMRAMをマップする。次い
で、マイクロプロセッサは、SMIハンドラーのために
アドレス108000hを参照する。したがって、この
特徴は、プログラマーがSMRAMのために主メモリに
おけるより便利な位置を選択することを許容する。
【0011】
【発明が解決しようとする課題】SMRAMを再配置す
る能力はプログラマーに便利なオプションを提供する
が、それはコンピュータアーキテクチャの設計者に対し
て問題を提起する。前述のように、FORCE A20
信号がアサートされたときに、マイクロプロセッサによ
りアサートされる値とは無関係に、アドレスバスのビッ
ト20はロウに駆動される。SMIが発生されるとき
に、SMRAMはプログラマーにより指定された主メモ
リスペースにマップされる。もし主メモリの64キロバ
イトブロックが偶数のメガバイトブロックではなくて奇
数のメガバイトブロックであれば、アドレスバスのビッ
ト20はマイクロプロセッサによりハイ(すなわち、
高)に駆動されなければならない。しかし、もしSMI
が開始されるときにFORCE A20信号が動作状態
であれば、FORCE A20信号はアドレスバスのビ
ット20をロウに保持する。その結果、バスに実際にア
サートされるアドレス値は、プログラマーにより与えら
れる割り込みベクトルよりも低い1メガバイトである。
例えば、もしプログラマーにより選択されるスタートア
ドレスが308000hであれば、SMRAMは300
000hと30FFFFhとの間においてメモリスペー
スにマップされるべきである。しかし、もしFORCE
A20信号がアサートされれば、ビット20はロウに
保持されるので、主メモリに実際に与えられるアドレス
範囲は、200000h〜20FFFFhであり、そし
て、バスに現われるSMIハンドラースターティングア
ドレスは208000hである。次いで、CPU状態
は、主メモリに記憶されている重要なデータを潜在的に
重ね書きしながら20FFFFhでスタートして下側の
アドレスに移って行くように、退避される。マイクロプ
ロセッサが新しいスターティングアドレスを得たときに
は、アサートされるアドレスは、SMIハンドラールー
チンを含まない208000hである。その結果、シス
テムは、エラーとなり、そして、リセットされなければ
ならない。
る能力はプログラマーに便利なオプションを提供する
が、それはコンピュータアーキテクチャの設計者に対し
て問題を提起する。前述のように、FORCE A20
信号がアサートされたときに、マイクロプロセッサによ
りアサートされる値とは無関係に、アドレスバスのビッ
ト20はロウに駆動される。SMIが発生されるとき
に、SMRAMはプログラマーにより指定された主メモ
リスペースにマップされる。もし主メモリの64キロバ
イトブロックが偶数のメガバイトブロックではなくて奇
数のメガバイトブロックであれば、アドレスバスのビッ
ト20はマイクロプロセッサによりハイ(すなわち、
高)に駆動されなければならない。しかし、もしSMI
が開始されるときにFORCE A20信号が動作状態
であれば、FORCE A20信号はアドレスバスのビ
ット20をロウに保持する。その結果、バスに実際にア
サートされるアドレス値は、プログラマーにより与えら
れる割り込みベクトルよりも低い1メガバイトである。
例えば、もしプログラマーにより選択されるスタートア
ドレスが308000hであれば、SMRAMは300
000hと30FFFFhとの間においてメモリスペー
スにマップされるべきである。しかし、もしFORCE
A20信号がアサートされれば、ビット20はロウに
保持されるので、主メモリに実際に与えられるアドレス
範囲は、200000h〜20FFFFhであり、そし
て、バスに現われるSMIハンドラースターティングア
ドレスは208000hである。次いで、CPU状態
は、主メモリに記憶されている重要なデータを潜在的に
重ね書きしながら20FFFFhでスタートして下側の
アドレスに移って行くように、退避される。マイクロプ
ロセッサが新しいスターティングアドレスを得たときに
は、アサートされるアドレスは、SMIハンドラールー
チンを含まない208000hである。その結果、シス
テムは、エラーとなり、そして、リセットされなければ
ならない。
【0012】この問題のために、従来のシステムにおい
てSMRAMの位置を選択するプログラマーは、SMR
AMを配置するための潜在的な主メモリスペースの半分
のみに制限される。もしプログラマーが主メモリの奇数
メガバイトブロック内のSMRAM領域を不注意に選択
すれば、重要なデータは重ね書きされるかもしれず、そ
して、システムは故障となる。この結果、SMRAMに
対して便利な位置を選択するためにプログラマーに与え
られる融通性は、利用し得るメモリスペースの半分のみ
に制限される。
てSMRAMの位置を選択するプログラマーは、SMR
AMを配置するための潜在的な主メモリスペースの半分
のみに制限される。もしプログラマーが主メモリの奇数
メガバイトブロック内のSMRAM領域を不注意に選択
すれば、重要なデータは重ね書きされるかもしれず、そ
して、システムは故障となる。この結果、SMRAMに
対して便利な位置を選択するためにプログラマーに与え
られる融通性は、利用し得るメモリスペースの半分のみ
に制限される。
【0013】
【課題を解決するための手段】要約すれば、本発明にし
たがったコンピュータシステムは、SMIハンドラーが
システムを制御している間に、アドレスビット20マス
キング機能をディスエーブルにすることによりSMIの
ために適当なアドレス指定をすることを提供する。コン
ピュータシステムにおける制御回路は、SMIがプログ
ラムにあるかどうかを決定する。もしSMIがプログラ
ムになければ、上記制御回路は、8088マイクロプロ
セッサのロールオーバーをシミュレートするために、コ
ンピュータシステムにFORCE A20信号を供給す
る。しかし、もしSMIがプログラムに有れば、FOR
CE A20信号はディスエーブルにされる。その結果
として、アドレスバスのビット20は、マスクされず、
そして、その真の値をアサートされて、アドレスバスに
適当なアドレスを発生する。
たがったコンピュータシステムは、SMIハンドラーが
システムを制御している間に、アドレスビット20マス
キング機能をディスエーブルにすることによりSMIの
ために適当なアドレス指定をすることを提供する。コン
ピュータシステムにおける制御回路は、SMIがプログ
ラムにあるかどうかを決定する。もしSMIがプログラ
ムになければ、上記制御回路は、8088マイクロプロ
セッサのロールオーバーをシミュレートするために、コ
ンピュータシステムにFORCE A20信号を供給す
る。しかし、もしSMIがプログラムに有れば、FOR
CE A20信号はディスエーブルにされる。その結果
として、アドレスバスのビット20は、マスクされず、
そして、その真の値をアサートされて、アドレスバスに
適当なアドレスを発生する。
【0014】好ましい実施例においては、コンピュータ
システムはペンティアム・マイクロプロセッサを利用し
ている。このペンティアム・マイクロプロセッサは、S
MIがプログラムにある間に、SMIACT* 信号をア
サートする。このSMIACT* 信号は、FORCE
A20信号をも受ける制御回路に供給される。上記SM
IACT* 信号が非動作状態にある間に、上記制御回路
は、コンピュータシステムに真のFORCE A20信
号を供給し、そして、ビットA20がマスクされること
を許容する。SMIが生じたときに、SMI処理は始ま
り、そして、SMIACT* 信号はアサートされる。S
MIACT* 信号が動作状態のときに、FORCE A
20信号はディスエーブルにされる。その結果、FOR
CE A20信号の値は、アドレスバスのビット20の
値に影響しない。したがって、マイクロプロセッサによ
り発生されるアドレスは、アドレスバスにアサートさ
れ、そして、適当なスターティングアドレスがアクセス
される。主メモリスペース内の総てのアドレスは、マス
クされているビットA20なしにアサートされ得るの
で、このコンピュータシステムを用いているプログラマ
ーは、SMRAMのために主メモリの任意の部分を選択
することができる。
システムはペンティアム・マイクロプロセッサを利用し
ている。このペンティアム・マイクロプロセッサは、S
MIがプログラムにある間に、SMIACT* 信号をア
サートする。このSMIACT* 信号は、FORCE
A20信号をも受ける制御回路に供給される。上記SM
IACT* 信号が非動作状態にある間に、上記制御回路
は、コンピュータシステムに真のFORCE A20信
号を供給し、そして、ビットA20がマスクされること
を許容する。SMIが生じたときに、SMI処理は始ま
り、そして、SMIACT* 信号はアサートされる。S
MIACT* 信号が動作状態のときに、FORCE A
20信号はディスエーブルにされる。その結果、FOR
CE A20信号の値は、アドレスバスのビット20の
値に影響しない。したがって、マイクロプロセッサによ
り発生されるアドレスは、アドレスバスにアサートさ
れ、そして、適当なスターティングアドレスがアクセス
される。主メモリスペース内の総てのアドレスは、マス
クされているビットA20なしにアサートされ得るの
で、このコンピュータシステムを用いているプログラマ
ーは、SMRAMのために主メモリの任意の部分を選択
することができる。
【0015】
【実施例】本発明のより充分な理解は、好ましい実施例
についての以下の詳細な記述が図面とともに考慮される
ときに得ることができる。
についての以下の詳細な記述が図面とともに考慮される
ときに得ることができる。
【0016】今、図1を参照すると、本発明の好ましい
実施例にしたがったコンピュータシステムCが示されて
いる。プロセッサ基板Pは、プロセッサ、キャッシュメ
モリ、主メモリ、関連設備およびコネクタ100(好ま
しくは、カードの縁)を含んでいる。システム基板S
は、このコネクタ100を受けるためのコネクタ102
(好ましくは、カードの縁を受けるソケット)を含んで
いる。このシステム基板Sは、共通のシステム素子と交
換可能な回路基板のためのスロットまたはコネクタとを
含んでいる。このシステム基板Sは、追加のコネクタ1
04も含んでいる。このコネクタ104は、入力/出力
(I/O)基板Iのコネクタ106と結合される。好ま
しくは、このI/O基板Iは、フロッピーおよびハード
ディスク・ドライブ制御ユニット、オーディオシステム
ならびに並列および直列ポートのようなコンピュータC
の所定のI/O関連機構を含んでいる。さらに、このI
/O基板Iには、リアルタイムクロックおよびCMOS
メモリがある。これらのプロセッサ基板P、システム基
板SおよびI/O基板Iのそれぞれについては、以下に
おいて詳述する。
実施例にしたがったコンピュータシステムCが示されて
いる。プロセッサ基板Pは、プロセッサ、キャッシュメ
モリ、主メモリ、関連設備およびコネクタ100(好ま
しくは、カードの縁)を含んでいる。システム基板S
は、このコネクタ100を受けるためのコネクタ102
(好ましくは、カードの縁を受けるソケット)を含んで
いる。このシステム基板Sは、共通のシステム素子と交
換可能な回路基板のためのスロットまたはコネクタとを
含んでいる。このシステム基板Sは、追加のコネクタ1
04も含んでいる。このコネクタ104は、入力/出力
(I/O)基板Iのコネクタ106と結合される。好ま
しくは、このI/O基板Iは、フロッピーおよびハード
ディスク・ドライブ制御ユニット、オーディオシステム
ならびに並列および直列ポートのようなコンピュータC
の所定のI/O関連機構を含んでいる。さらに、このI
/O基板Iには、リアルタイムクロックおよびCMOS
メモリがある。これらのプロセッサ基板P、システム基
板SおよびI/O基板Iのそれぞれについては、以下に
おいて詳述する。
【0017】これがコンピュータシステムCの例示的で
かつ好ましい実施例であることに注目し、そして、単一
のシステム基板またはマザーボードに通常のように全部
品を有する多数の他の実施例が容易に開発できることを
理解すべきである。
かつ好ましい実施例であることに注目し、そして、単一
のシステム基板またはマザーボードに通常のように全部
品を有する多数の他の実施例が容易に開発できることを
理解すべきである。
【0018】今、図2を参照すると、システム基板Sの
ブロック図が示されている。2つの主バス(すなわち、
ホストバスHおよびEISAバスE)はこのシステム基
板Sの論理的なバックボーンを形成している。ホストバ
スHは、ホストデータ(すなわち、HD)バス、HA
(すなわち、ホストアドレス)バスおよびHC(すなわ
ち、ホスト制御)バスから成る3つの構成要素を有して
いる。好ましくは、HDバスが64ビット幅であり、H
Aバスが32ビットアドレス指定スペースのために備え
られている。EISAバスEは、SAおよびLA(すな
わち、システムアドレスおよび初期アドレス)バス、S
D(すなわち、システムデータ)バスおよびSC(すな
わち、システム制御)バスから成る4つの主構成要素を
有している。このEISAバスEには、複数のEISA
スロット108が接続されている。EISAバス制御器
110は、ホストバスHサイクルとEISAバスEサイ
クルとの間で変換する必要な性能を提供し、そして、H
AおよびHCバスとSCバスとの間に接続されている。
このEISAバス制御器110は、データEBB(すな
わち、データEISAバスバッファ)112を制御する
ために接続されている。なお、このデータEBBは、ホ
ストバスHおよびEISAバスEの間で必要なデータ送
受信機能を提供し、そして、EISAシステムのデータ
アセンブルおよび逆アセンブル要求を提供する。同様
に、EISAバス制御器110は、アドレスEISAバ
スバッファ(すなわち、アドレスEBB)114のため
の制御機能を提供する。このアドレスEBB114は、
EISAバスEおよびホストバスHの間での転送能力を
提供し、さらに、適切であればSAバス信号を形成する
ためにHAバス信号をラッチする。
ブロック図が示されている。2つの主バス(すなわち、
ホストバスHおよびEISAバスE)はこのシステム基
板Sの論理的なバックボーンを形成している。ホストバ
スHは、ホストデータ(すなわち、HD)バス、HA
(すなわち、ホストアドレス)バスおよびHC(すなわ
ち、ホスト制御)バスから成る3つの構成要素を有して
いる。好ましくは、HDバスが64ビット幅であり、H
Aバスが32ビットアドレス指定スペースのために備え
られている。EISAバスEは、SAおよびLA(すな
わち、システムアドレスおよび初期アドレス)バス、S
D(すなわち、システムデータ)バスおよびSC(すな
わち、システム制御)バスから成る4つの主構成要素を
有している。このEISAバスEには、複数のEISA
スロット108が接続されている。EISAバス制御器
110は、ホストバスHサイクルとEISAバスEサイ
クルとの間で変換する必要な性能を提供し、そして、H
AおよびHCバスとSCバスとの間に接続されている。
このEISAバス制御器110は、データEBB(すな
わち、データEISAバスバッファ)112を制御する
ために接続されている。なお、このデータEBBは、ホ
ストバスHおよびEISAバスEの間で必要なデータ送
受信機能を提供し、そして、EISAシステムのデータ
アセンブルおよび逆アセンブル要求を提供する。同様
に、EISAバス制御器110は、アドレスEISAバ
スバッファ(すなわち、アドレスEBB)114のため
の制御機能を提供する。このアドレスEBB114は、
EISAバスEおよびホストバスHの間での転送能力を
提供し、さらに、適切であればSAバス信号を形成する
ためにHAバス信号をラッチする。
【0019】このコンピュータCは、EISAバスEの
アービトレーション(すなわち、仲介または仲裁)と同
様に、割り込みシステム、DMA制御器および多数のタ
イマーのような所定の基本的な操作を含んでいる。これ
らの構成要素は、HA、HCおよびSCバスに接続され
るEISAシステム周辺装置116に総て含まれてい
る。システムグルーチップ118として参照されている
チップは、EISAバスEとXD(すなわち、Xデー
タ)バスとして参照されているバスとに接続され、そし
て、コンピュータシステムCで必要な多数の補助的な機
能を実行する。
アービトレーション(すなわち、仲介または仲裁)と同
様に、割り込みシステム、DMA制御器および多数のタ
イマーのような所定の基本的な操作を含んでいる。これ
らの構成要素は、HA、HCおよびSCバスに接続され
るEISAシステム周辺装置116に総て含まれてい
る。システムグルーチップ118として参照されている
チップは、EISAバスEとXD(すなわち、Xデー
タ)バスとして参照されているバスとに接続され、そし
て、コンピュータシステムCで必要な多数の補助的な機
能を実行する。
【0020】最後に、XバスXとして参照されている第
3のバスは、コネクタ104に供給される。このXバス
Xは、アドレスXA、データXDおよび制御SCの部分
を有している。XAラインはバッファ120によりSA
バスから展開され、また、XDバスはバッファまたはト
ランシーバ122によりSDバスから形成される。好ま
しくは、XDバスは16ビット幅であり、XAバスはS
Aバスと同じビット幅である。ホストバスHおよびXD
バスは、プロセッサ基板Pへの供給のためにコネクタ1
02に供給される。さらに、XDバスは、EISAシス
テム周辺装置116に接続されている。
3のバスは、コネクタ104に供給される。このXバス
Xは、アドレスXA、データXDおよび制御SCの部分
を有している。XAラインはバッファ120によりSA
バスから展開され、また、XDバスはバッファまたはト
ランシーバ122によりSDバスから形成される。好ま
しくは、XDバスは16ビット幅であり、XAバスはS
Aバスと同じビット幅である。ホストバスHおよびXD
バスは、プロセッサ基板Pへの供給のためにコネクタ1
02に供給される。さらに、XDバスは、EISAシス
テム周辺装置116に接続されている。
【0021】今、図3を参照すると、I/O基板Iがよ
り詳細に示されている。このI/O基板Iのバックボー
ンはXバスXである。このXバスXには、コンピュータ
システムCの基本操作シーケンスを含んでいるROM
(すなわち、読み出し専用メモリ)124が接続されて
いる。このROM124は、基本操作シーケンスを容易
に変更できるようにフラッシュ型EPROMであるのが
好ましい。リアルタイムクロック(RTC)/CMOS
ユニット126は、リアルタイムクロック機能および長
期間メモリ能力を提供するためにXバスXに接続されて
いる。フロッピーディスク制御器128は、XバスXに
接続され、そして、フロッピーディスクユニット130
からのデータを受け入れる。キーボード制御器(典型的
には、8042デバイス)132は、XバスXに接続さ
れ、そして、キーボード134およびマウス(すなわ
ち、位置指定デバイス)136を受け入れる。多重周辺
チップ138は、XバスXに接続され、そして、ハード
ディスクユニット140、並列ポート142ならびに2
つの直列ポート144および146に対するインターフ
ェイスを与えている。最後に、オーディオシステム14
8は、このオーディオシステム148に接続されている
スピーカ150と共にオーディオ機能を提供するため
に、XバスXに接続されている。その他の構成要素は、
所望ならばI/O基板Iに設けることができる。好まし
いコンピュータシステムCのグラフィックスシステム
は、EISAスロット108に配置される着脱自在のア
ドインカードに設けられていて、I/O基板Iには配置
されていないのが好ましい。
り詳細に示されている。このI/O基板Iのバックボー
ンはXバスXである。このXバスXには、コンピュータ
システムCの基本操作シーケンスを含んでいるROM
(すなわち、読み出し専用メモリ)124が接続されて
いる。このROM124は、基本操作シーケンスを容易
に変更できるようにフラッシュ型EPROMであるのが
好ましい。リアルタイムクロック(RTC)/CMOS
ユニット126は、リアルタイムクロック機能および長
期間メモリ能力を提供するためにXバスXに接続されて
いる。フロッピーディスク制御器128は、XバスXに
接続され、そして、フロッピーディスクユニット130
からのデータを受け入れる。キーボード制御器(典型的
には、8042デバイス)132は、XバスXに接続さ
れ、そして、キーボード134およびマウス(すなわ
ち、位置指定デバイス)136を受け入れる。多重周辺
チップ138は、XバスXに接続され、そして、ハード
ディスクユニット140、並列ポート142ならびに2
つの直列ポート144および146に対するインターフ
ェイスを与えている。最後に、オーディオシステム14
8は、このオーディオシステム148に接続されている
スピーカ150と共にオーディオ機能を提供するため
に、XバスXに接続されている。その他の構成要素は、
所望ならばI/O基板Iに設けることができる。好まし
いコンピュータシステムCのグラフィックスシステム
は、EISAスロット108に配置される着脱自在のア
ドインカードに設けられていて、I/O基板Iには配置
されていないのが好ましい。
【0022】今、図4を参照すると、プロセッサ基板P
がより詳細に示される。このプロセッサ基板Pの第1の
構成要素はCPU152で、このCPU152は、好ま
しい実施例においては、インテル社からの80486後
の次世代設計のP5(すなわち、ペンティアム・マイク
ロプロセッサ)であるのが好ましい。このP5は、スー
パースカラー(superscalar)アーキテクチャと内蔵型
および分離型コードおよびデータキャッシュとを有する
非常に高性能なマイクロプロセッサである。インテル社
製品の幾つかの最近の世代のように、P5のマイクロプ
ロセッサは、保護モードとリアルモードとの両方で動作
する。保護モードにおいては、全36ビットアドレスバ
スおよび全命令セットが用いられてよい。P5のマイク
ロプロセッサは、従来の技術として記述したように、シ
ステム管理メモリ(すなわち、SMRAM)機能を含ん
でおり、そして、SMIピンを含んでいる。さらに、8
0486におけるように、P5のCPU152に供給さ
れるFORCE A20信号は、内部キャッシュにおけ
るルックアップを達成する前(すなわち、システムに対
してメモリサイクルを駆動する前)に、アドレスビット
20がマスクされるようにする。ビットA20のマスキ
ングは、8088マイクロプロセッサのロールオーバー
をシミュレートする。
がより詳細に示される。このプロセッサ基板Pの第1の
構成要素はCPU152で、このCPU152は、好ま
しい実施例においては、インテル社からの80486後
の次世代設計のP5(すなわち、ペンティアム・マイク
ロプロセッサ)であるのが好ましい。このP5は、スー
パースカラー(superscalar)アーキテクチャと内蔵型
および分離型コードおよびデータキャッシュとを有する
非常に高性能なマイクロプロセッサである。インテル社
製品の幾つかの最近の世代のように、P5のマイクロプ
ロセッサは、保護モードとリアルモードとの両方で動作
する。保護モードにおいては、全36ビットアドレスバ
スおよび全命令セットが用いられてよい。P5のマイク
ロプロセッサは、従来の技術として記述したように、シ
ステム管理メモリ(すなわち、SMRAM)機能を含ん
でおり、そして、SMIピンを含んでいる。さらに、8
0486におけるように、P5のCPU152に供給さ
れるFORCE A20信号は、内部キャッシュにおけ
るルックアップを達成する前(すなわち、システムに対
してメモリサイクルを駆動する前)に、アドレスビット
20がマスクされるようにする。ビットA20のマスキ
ングは、8088マイクロプロセッサのロールオーバー
をシミュレートする。
【0023】PD(すなわち、プロセッサデータ)バ
ス、PA(すなわち、プロセッサアドレス)バスおよび
PC(すなわち、プロセッサ制御)バスから成る3つの
バスは、P5のCPU152に接続されている。レベル
2(L2)、すなわち、外部キャッシュ154は、これ
らのPDおよびPAバスに接続され、そして、メモリ制
御器156からの制御信号を受け入れる。好ましい実施
例においては、メモリ制御器156は、従来のメモリ制
御器機能を含んでおり、そして、L2キャッシュ154
を操作するために必要なキャッシュ制御能力をさらに含
んでいる。
ス、PA(すなわち、プロセッサアドレス)バスおよび
PC(すなわち、プロセッサ制御)バスから成る3つの
バスは、P5のCPU152に接続されている。レベル
2(L2)、すなわち、外部キャッシュ154は、これ
らのPDおよびPAバスに接続され、そして、メモリ制
御器156からの制御信号を受け入れる。好ましい実施
例においては、メモリ制御器156は、従来のメモリ制
御器機能を含んでおり、そして、L2キャッシュ154
を操作するために必要なキャッシュ制御能力をさらに含
んでいる。
【0024】データバッファ158は、PDバスに接続
され、そして、HD(すなわち、ホストデータ)バスお
よびMD(すなわち、メモリデータ)バスから成る2つ
の新規なバスを展開している。このHDバスは、システ
ム基板Sへの接続のためにコネクタ100に接続されて
いる。データバッファ158は、メモリ制御器156に
より制御される。トランシーバ/ラッチユニット160
は、P5のCPU152およびホストバスHの間でのア
ドレスのラッチおよび送受信の能力を与えるために、P
AバスおよびHAバスの間に接続されている。このトラ
ンシーバ/ラッチ160は、メモリ制御器156により
制御される。
され、そして、HD(すなわち、ホストデータ)バスお
よびMD(すなわち、メモリデータ)バスから成る2つ
の新規なバスを展開している。このHDバスは、システ
ム基板Sへの接続のためにコネクタ100に接続されて
いる。データバッファ158は、メモリ制御器156に
より制御される。トランシーバ/ラッチユニット160
は、P5のCPU152およびホストバスHの間でのア
ドレスのラッチおよび送受信の能力を与えるために、P
AバスおよびHAバスの間に接続されている。このトラ
ンシーバ/ラッチ160は、メモリ制御器156により
制御される。
【0025】プロセッサ・ユーティリティ・チップ16
2は、CPU152との使用に必要なユーティリティ操
作を提供する。このプロセッサ・ユーティリティ・チッ
プ162はXDバスに接続され、そして、メモリ制御器
156により制御される。プロセッサ・ユーティリティ
・チップ162の出力は、好ましくは、P5のCPU1
52の制御機能を提供するために、PCバスに接続され
ている。また、メモリ制御器156は、DDF(すなわ
ち、データ目標機構)164として参照されているユニ
ットに接続されている。このDDF164は、メモリの
モジュール化、アドレスの変換およびメモリ区分(すな
わち、ページ特性記憶)を達成する。DDF164は、
どの特定のメモリバンクがイネーブルにされるかを指示
するメモリ能力を提供し、128キロバイトの境界にお
けるアドレス変換を達成し、それが書き込み保護された
か、高速か、および/または、キャッシュ化できるか、
そして、その部分がライトバックキャッシュにより利用
できるかのような、各128キロバイトブロックの所定
の特徴の指示を供給する。このDDF164の操作は、
1989年11月3日に出願された米国特許願第07/
431,666号および1991年5月8日付けで出願
公開された欧州特許出願公開第0,426,386号に
おいてもっと完全に説明されているので、これらの両者
をここに参考物として参照している。DDF164の出
力は、特定のメモリモジュールをイネーブルにするため
の一連のRASENイネーブル信号、128キロバイト
よりも多いアドレスビットを示す所定の変換アドレスお
よびページ特徴ビットである。
2は、CPU152との使用に必要なユーティリティ操
作を提供する。このプロセッサ・ユーティリティ・チッ
プ162はXDバスに接続され、そして、メモリ制御器
156により制御される。プロセッサ・ユーティリティ
・チップ162の出力は、好ましくは、P5のCPU1
52の制御機能を提供するために、PCバスに接続され
ている。また、メモリ制御器156は、DDF(すなわ
ち、データ目標機構)164として参照されているユニ
ットに接続されている。このDDF164は、メモリの
モジュール化、アドレスの変換およびメモリ区分(すな
わち、ページ特性記憶)を達成する。DDF164は、
どの特定のメモリバンクがイネーブルにされるかを指示
するメモリ能力を提供し、128キロバイトの境界にお
けるアドレス変換を達成し、それが書き込み保護された
か、高速か、および/または、キャッシュ化できるか、
そして、その部分がライトバックキャッシュにより利用
できるかのような、各128キロバイトブロックの所定
の特徴の指示を供給する。このDDF164の操作は、
1989年11月3日に出願された米国特許願第07/
431,666号および1991年5月8日付けで出願
公開された欧州特許出願公開第0,426,386号に
おいてもっと完全に説明されているので、これらの両者
をここに参考物として参照している。DDF164の出
力は、特定のメモリモジュールをイネーブルにするため
の一連のRASENイネーブル信号、128キロバイト
よりも多いアドレスビットを示す所定の変換アドレスお
よびページ特徴ビットである。
【0026】プロセッサー基板Pのメモリ部分は4つの
同一モジュールを備え、各モジュールはアドレス/制御
バッファ166、個々のSIMMユニット168を受け
る1つのソケットおよび基本メモリ170を含んでい
る。アドレス/制御バッファ166は、PAバス、DD
F164のアドレスおよびイネーブル出力ならびにメモ
リ制御器156からの制御信号を受ける。このアドレス
/制御バッファ166の出力は、SIMM168または
基本メモリデバイス170に供給されるアドレスと、R
AS* 、CAS* およびWE* 信号とである。これらの
信号は、SIMM168の各々に供給される。さらに、
各SIMM168または基本メモリデバイス170はメ
モリデータバスMDに接続されている。図示のように、
4つの同様なモジュールがある。プロセッサ基板Pの他
の構成は、以下において詳述するように、当該技術者に
とって明らかである変形例でもって展開することができ
る。
同一モジュールを備え、各モジュールはアドレス/制御
バッファ166、個々のSIMMユニット168を受け
る1つのソケットおよび基本メモリ170を含んでい
る。アドレス/制御バッファ166は、PAバス、DD
F164のアドレスおよびイネーブル出力ならびにメモ
リ制御器156からの制御信号を受ける。このアドレス
/制御バッファ166の出力は、SIMM168または
基本メモリデバイス170に供給されるアドレスと、R
AS* 、CAS* およびWE* 信号とである。これらの
信号は、SIMM168の各々に供給される。さらに、
各SIMM168または基本メモリデバイス170はメ
モリデータバスMDに接続されている。図示のように、
4つの同様なモジュールがある。プロセッサ基板Pの他
の構成は、以下において詳述するように、当該技術者に
とって明らかである変形例でもって展開することができ
る。
【0027】P5のCPU152は、プロセッサアドレ
スバスPAを駆動し、そして、FORCE A20信号
を受ける。図5を参照すると、P5のCPU152、プ
ロセッサ・ユーティリティ・チップ162および一連の
関連した信号が図示されている。この開示の目的のため
に、星印(* )が後続している信号記号は、その信号が
ロウ(すなわち、低)にアサートされたときに動作状態
であることを示している。これとは反対に、星印のない
ものは、その信号がハイ(すなわち、高)に駆動された
ときに動作状態であることを示している。ビット20
は、P5のCPU152により受けられるA20M* 信
号がロウであるときに、P5のCPU152によりロウ
に保持される。したがって、A20M* 信号が非動作状
態であるときに、P5のCPU152は従来のようにプ
ロセッサアドレスビット20を駆動する。A20M* 信
号がロウであるときに、プロセッサアドレスビット20
は、マスクされ、そして、A20M* 信号が動作状態に
留まっている限り、ロウに駆動される。これは、FOR
CE A20信号に対する従来のマイクロプロセッサの
応答である。
スバスPAを駆動し、そして、FORCE A20信号
を受ける。図5を参照すると、P5のCPU152、プ
ロセッサ・ユーティリティ・チップ162および一連の
関連した信号が図示されている。この開示の目的のため
に、星印(* )が後続している信号記号は、その信号が
ロウ(すなわち、低)にアサートされたときに動作状態
であることを示している。これとは反対に、星印のない
ものは、その信号がハイ(すなわち、高)に駆動された
ときに動作状態であることを示している。ビット20
は、P5のCPU152により受けられるA20M* 信
号がロウであるときに、P5のCPU152によりロウ
に保持される。したがって、A20M* 信号が非動作状
態であるときに、P5のCPU152は従来のようにプ
ロセッサアドレスビット20を駆動する。A20M* 信
号がロウであるときに、プロセッサアドレスビット20
は、マスクされ、そして、A20M* 信号が動作状態に
留まっている限り、ロウに駆動される。これは、FOR
CE A20信号に対する従来のマイクロプロセッサの
応答である。
【0028】A20M* 信号は、プロセッサ・ユーティ
リティ・チップ162により発生される。A20M* 信
号は、次式にしたがって制御される。 A20M* =FA20M* +\SMIACT* +RST
SYS FA20M* 信号は、従来のFORCE A20信号で
あり、そして、従来のように発生される。好ましい実施
例においては、システムグルーチップ118は、FA2
0M* 信号を変更するための要求を示すシステムキーボ
ード制御器に対する操作をトラップすることと、要求さ
れた変更を直接に達成することとによって、FA20M
* 信号を発生する。FA20M* 信号は、システムにお
ける特定の制御レジスタに適当なデータビットを書き込
むことによりイネーブルにされる。同様に、FA20M
* 信号は、制御レジスタビットをリセットすることによ
りディスエーブルにされてもよい。
リティ・チップ162により発生される。A20M* 信
号は、次式にしたがって制御される。 A20M* =FA20M* +\SMIACT* +RST
SYS FA20M* 信号は、従来のFORCE A20信号で
あり、そして、従来のように発生される。好ましい実施
例においては、システムグルーチップ118は、FA2
0M* 信号を変更するための要求を示すシステムキーボ
ード制御器に対する操作をトラップすることと、要求さ
れた変更を直接に達成することとによって、FA20M
* 信号を発生する。FA20M* 信号は、システムにお
ける特定の制御レジスタに適当なデータビットを書き込
むことによりイネーブルにされる。同様に、FA20M
* 信号は、制御レジスタビットをリセットすることによ
りディスエーブルにされてもよい。
【0029】SMIACT* 信号は、P5のCPU15
2により発生され、そして、プロセッサ・ユーティリテ
ィ・チップ162に供給される。SMIACT* 信号
は、P5のCPU152がシステム管理モードで動作し
ていることを示している。このシステム管理モードでの
動作は、SMIがアサートされかつP5のCPU152
により現在サービスされていることを示している。マイ
クロプロセッサがシステム管理モードに入るときに、シ
ステム管理メモリ(SMRAM)スペースは、メモリ内
にマップされる。次いで、全CPU状態は、SMRAM
に記憶される。システム管理モードにある間は、マイク
ロプロセッサは、リアルモードで動作するが、32ビッ
ト幅アドレスを用いている。システム管理モードは、ソ
フトウエアに即応し、そして、電力保存および他の特徴
のために設計されている。SMIサービスルーチンが完
了されるときには、SMIACT* 信号は非動作状態で
ある。
2により発生され、そして、プロセッサ・ユーティリテ
ィ・チップ162に供給される。SMIACT* 信号
は、P5のCPU152がシステム管理モードで動作し
ていることを示している。このシステム管理モードでの
動作は、SMIがアサートされかつP5のCPU152
により現在サービスされていることを示している。マイ
クロプロセッサがシステム管理モードに入るときに、シ
ステム管理メモリ(SMRAM)スペースは、メモリ内
にマップされる。次いで、全CPU状態は、SMRAM
に記憶される。システム管理モードにある間は、マイク
ロプロセッサは、リアルモードで動作するが、32ビッ
ト幅アドレスを用いている。システム管理モードは、ソ
フトウエアに即応し、そして、電力保存および他の特徴
のために設計されている。SMIサービスルーチンが完
了されるときには、SMIACT* 信号は非動作状態で
ある。
【0030】RSTSYS信号は、システムリセット要
求信号である。この出力は、プロセッサ・ユーティリテ
ィ・チップ162により発生され、そして、P5のCP
U152とは別のシステム論理をリセットするのに用い
られる。RSTSYS信号は、電源良好(PWRGOO
D)信号が非動作状態を抽出されるとき、または、リセ
ット(DBRST)信号が動作状態を抽出されるとき
に、アサートされる。PWRGOOD信号は、コンピュ
ータシステムの電源が充分な電力を供給し、そして、適
当に動作していることを示している。DBRST信号
は、システムがパワーアップされかつ主プロセッサクロ
ックが安定した後にのみ直ちに動作状態になる。したが
って、RSTSYS信号は、コンピュータシステムのた
めの電源が適当なレベルにあるまで、または、システム
が最初にパワーアップされるときに、動作状態になる。
RSTSYS信号は、PWRGOOD信号が動作状態を
抽出されかつDBRST信号がその非動作状態に戻った
後にその非動作状態にトグルする。換言すれば、RST
SYS信号は、電源が入れられて機能的に動作しかつプ
ロセッサクロック信号が安定したときに、その非動作状
態に戻る。
求信号である。この出力は、プロセッサ・ユーティリテ
ィ・チップ162により発生され、そして、P5のCP
U152とは別のシステム論理をリセットするのに用い
られる。RSTSYS信号は、電源良好(PWRGOO
D)信号が非動作状態を抽出されるとき、または、リセ
ット(DBRST)信号が動作状態を抽出されるとき
に、アサートされる。PWRGOOD信号は、コンピュ
ータシステムの電源が充分な電力を供給し、そして、適
当に動作していることを示している。DBRST信号
は、システムがパワーアップされかつ主プロセッサクロ
ックが安定した後にのみ直ちに動作状態になる。したが
って、RSTSYS信号は、コンピュータシステムのた
めの電源が適当なレベルにあるまで、または、システム
が最初にパワーアップされるときに、動作状態になる。
RSTSYS信号は、PWRGOOD信号が動作状態を
抽出されかつDBRST信号がその非動作状態に戻った
後にその非動作状態にトグルする。換言すれば、RST
SYS信号は、電源が入れられて機能的に動作しかつプ
ロセッサクロック信号が安定したときに、その非動作状
態に戻る。
【0031】図6は、前記論理式を実行するためにプロ
セッサ・ユーティリティ・チップ162に含まれている
論理回路を示している。A20M* 信号は、3つの入力
を有するORゲート200により発生される。第1の入
力はRSTSYS信号を受けるので、A20M* 信号
は、RSTSYS信号が動作状態のときにハイに駆動さ
れる。同様に、ORゲート200の第2の入力は、イン
バータ204からのSMIACT* 信号の反転信号に接
続されている。P5のCPU152がシステム管理モー
ドにあるときに、SMIACT* 信号は、ロウであり、
A20M* 信号をハイに駆動し、そして、ビットA20
がマスクされるのを阻止する。残りの入力はFA20M
* 信号に接続されているので、A20M* 信号は、RS
TSYSおよびSMIACT* が非動作状態にあるとき
にFA20M* 信号に追随する。
セッサ・ユーティリティ・チップ162に含まれている
論理回路を示している。A20M* 信号は、3つの入力
を有するORゲート200により発生される。第1の入
力はRSTSYS信号を受けるので、A20M* 信号
は、RSTSYS信号が動作状態のときにハイに駆動さ
れる。同様に、ORゲート200の第2の入力は、イン
バータ204からのSMIACT* 信号の反転信号に接
続されている。P5のCPU152がシステム管理モー
ドにあるときに、SMIACT* 信号は、ロウであり、
A20M* 信号をハイに駆動し、そして、ビットA20
がマスクされるのを阻止する。残りの入力はFA20M
* 信号に接続されているので、A20M* 信号は、RS
TSYSおよびSMIACT* が非動作状態にあるとき
にFA20M* 信号に追随する。
【0032】前記式および図6に示されているように、
プロセッサアドレスバスのビット20は、FA20M*
信号がアサートされ、システムがリセット状態ではな
く、そして、P5のCPU152がシステム管理モード
でないときのみにマスクされる。したがって、プロセッ
サアドレスビット20は、P5のCPU152がSMI
ルーチンを行っていないときのみにマスクされる。もし
P5のCPU152がシステム管理モードに入るなら
ば、SMIACT* 信号は動作状態になる。これは、A
20M* 信号を非動作状態にさせ、そして、A20M*
は、P5のCPU152がシステム管理モードから退去
しかつ前記式の残りの条件が満足されるまで、非動作状
態に留まる。この結果、P5のCPUは、ビットA20
をマスクすることなく、バスの適当なスターティングア
ドレスを駆動することができる。
プロセッサアドレスバスのビット20は、FA20M*
信号がアサートされ、システムがリセット状態ではな
く、そして、P5のCPU152がシステム管理モード
でないときのみにマスクされる。したがって、プロセッ
サアドレスビット20は、P5のCPU152がSMI
ルーチンを行っていないときのみにマスクされる。もし
P5のCPU152がシステム管理モードに入るなら
ば、SMIACT* 信号は動作状態になる。これは、A
20M* 信号を非動作状態にさせ、そして、A20M*
は、P5のCPU152がシステム管理モードから退去
しかつ前記式の残りの条件が満足されるまで、非動作状
態に留まる。この結果、P5のCPUは、ビットA20
をマスクすることなく、バスの適当なスターティングア
ドレスを駆動することができる。
【0033】この好ましい実施例にしたがったコンピュ
ータシステムは、8088マイクロプロセッサのロール
オーバーをシミュレートするためにビットA20がマス
クされることを許容し、しかも、SMIがアサートされ
ているときにアドレスバスに適当なスターティングアド
レスを供給する。したがって、プログラマーは、主メモ
リにおける任意の位置にシステム管理メモリを再配置す
ることができる。システムが最初にパワーアップされる
ときに、コンピュータはパワーオンセルフテスト(PO
ST)プログラムを実行する。POSTプログラムの1
部は、P5のCPUに対して初期SMIをアサートする
ことを含んでいる。初期SMIがアサートされるとき
に、P5のCPUは、30000hおよび3FFFFh
の間の主メモリスペースにSMRAMをマップする。次
いで、CPU状態は、スタックのような様態で3FFF
Fでスタートして下側のアドレスに移って行くようにS
MRAMに退避される。次いで、P5のCPUは、リア
ルモードに入り、そして、POSTプログラムのために
設計された特別なSMI割り込みサービスルーチンを実
行し始める。この特別なSMIルーチンは、SMIハン
ドラーのためのスターティングアドレスを置き換えるべ
く、SMRAMに退避されたデータのラインの1つを変
える。古いSMIスターティングアドレスは、新しいS
MIスターティングアドレスのためにプログラマーによ
り望まれる値で置き換えられる。次いで、SMIハンド
ラーはSMIルーチンの残りの部分を完了させ、そし
て、記憶されたCPU状態はSMRAMから検索され
る。このCPU状態がCPUに再記憶されるときに、P
5のCPUはSMIハンドラを退去し、そして、動作を
続ける。
ータシステムは、8088マイクロプロセッサのロール
オーバーをシミュレートするためにビットA20がマス
クされることを許容し、しかも、SMIがアサートされ
ているときにアドレスバスに適当なスターティングアド
レスを供給する。したがって、プログラマーは、主メモ
リにおける任意の位置にシステム管理メモリを再配置す
ることができる。システムが最初にパワーアップされる
ときに、コンピュータはパワーオンセルフテスト(PO
ST)プログラムを実行する。POSTプログラムの1
部は、P5のCPUに対して初期SMIをアサートする
ことを含んでいる。初期SMIがアサートされるとき
に、P5のCPUは、30000hおよび3FFFFh
の間の主メモリスペースにSMRAMをマップする。次
いで、CPU状態は、スタックのような様態で3FFF
Fでスタートして下側のアドレスに移って行くようにS
MRAMに退避される。次いで、P5のCPUは、リア
ルモードに入り、そして、POSTプログラムのために
設計された特別なSMI割り込みサービスルーチンを実
行し始める。この特別なSMIルーチンは、SMIハン
ドラーのためのスターティングアドレスを置き換えるべ
く、SMRAMに退避されたデータのラインの1つを変
える。古いSMIスターティングアドレスは、新しいS
MIスターティングアドレスのためにプログラマーによ
り望まれる値で置き換えられる。次いで、SMIハンド
ラーはSMIルーチンの残りの部分を完了させ、そし
て、記憶されたCPU状態はSMRAMから検索され
る。このCPU状態がCPUに再記憶されるときに、P
5のCPUはSMIハンドラを退去し、そして、動作を
続ける。
【0034】POSTプログラムが完了するときに、コ
ンピュータシステムの制御は操作システムに引き渡され
る。コンピュータシステムが従来のように動作している
間に、SMIは、低バッテリ信号、スクリーンセーバー
タイマ、ハードドライブのデッドマンタイマ、プロセッ
サ要求または周期的なベースのような或るソースにより
発生されるかもしれない。SMIがアサートされるとき
に、P5のCPUは、SMRAMスターティングアドレ
スにより指定された主メモリスペースの64キロバイト
部分にシステム管理メモリをマップする。例えば、新し
いSMRAMスターティングアドレスが590000h
であれば、SMRAMは、590000hと59FFF
Fhとの間のメモリスペースにマップされる。主メモリ
にSMRAMをマップするために、P5のCPUは、適
当なアドレスを示すべく、アドレスバスのアドレス値を
駆動する。しかし、SMRAMがメモリにマップされる
前に、SMIACT* 信号は、P5のCPUがシステム
管理モードに入ったことを示すために、ロウに駆動され
る。A20M* 信号は、P5のCPUがリアルモードに
置かれるときに通常は動作状態であるが、動作状態のS
MIACT* 信号は、ORゲート200の出力をハイに
駆動し、そして、A20M* 信号をディスエーブルにす
る。この結果、P5により発生されるSMRAMスター
ティングアドレスは、もしA20M* 信号が動作状態に
留まっていればアサートされるであろう490000h
の代りに、590000hである。SMRAMが主メモ
リにマップされた後には、CPU状態はSMRAMに退
避され、そして、P5のCPUはハンドラースターティ
ングアドレス598000hでSMIハンドラールーチ
ンを実行し始める。したがって、この好ましい実施例に
したがったコンピュータシステムは、FORCE A2
0信号がアサートされるときに、SMIハンドラーのた
めに正確なアドレス指定を与える。この結果、不適当な
アドレス指定によるシステムエラーは回避され、そし
て、プログラマーは、SMRAMのために主メモリスペ
ースにおける任意の位置で主メモリの64キロバイド部
分を選択することを許容される。
ンピュータシステムの制御は操作システムに引き渡され
る。コンピュータシステムが従来のように動作している
間に、SMIは、低バッテリ信号、スクリーンセーバー
タイマ、ハードドライブのデッドマンタイマ、プロセッ
サ要求または周期的なベースのような或るソースにより
発生されるかもしれない。SMIがアサートされるとき
に、P5のCPUは、SMRAMスターティングアドレ
スにより指定された主メモリスペースの64キロバイト
部分にシステム管理メモリをマップする。例えば、新し
いSMRAMスターティングアドレスが590000h
であれば、SMRAMは、590000hと59FFF
Fhとの間のメモリスペースにマップされる。主メモリ
にSMRAMをマップするために、P5のCPUは、適
当なアドレスを示すべく、アドレスバスのアドレス値を
駆動する。しかし、SMRAMがメモリにマップされる
前に、SMIACT* 信号は、P5のCPUがシステム
管理モードに入ったことを示すために、ロウに駆動され
る。A20M* 信号は、P5のCPUがリアルモードに
置かれるときに通常は動作状態であるが、動作状態のS
MIACT* 信号は、ORゲート200の出力をハイに
駆動し、そして、A20M* 信号をディスエーブルにす
る。この結果、P5により発生されるSMRAMスター
ティングアドレスは、もしA20M* 信号が動作状態に
留まっていればアサートされるであろう490000h
の代りに、590000hである。SMRAMが主メモ
リにマップされた後には、CPU状態はSMRAMに退
避され、そして、P5のCPUはハンドラースターティ
ングアドレス598000hでSMIハンドラールーチ
ンを実行し始める。したがって、この好ましい実施例に
したがったコンピュータシステムは、FORCE A2
0信号がアサートされるときに、SMIハンドラーのた
めに正確なアドレス指定を与える。この結果、不適当な
アドレス指定によるシステムエラーは回避され、そし
て、プログラマーは、SMRAMのために主メモリスペ
ースにおける任意の位置で主メモリの64キロバイド部
分を選択することを許容される。
【0035】本発明の以上における開示および記述は、
その図解および説明であり、図解された回路および構成
ならびに操作方法と同様に、サイズ、形状、材料、構成
要素、回路素子、ワイヤ接続および接点における種々の
変更は、本発明の精神から逸脱することなくなされるこ
とができる。
その図解および説明であり、図解された回路および構成
ならびに操作方法と同様に、サイズ、形状、材料、構成
要素、回路素子、ワイヤ接続および接点における種々の
変更は、本発明の精神から逸脱することなくなされるこ
とができる。
【図1】本発明を適用したコンピュータシステムのブロ
ック図である。
ック図である。
【図2】図1のシステム基板のブロック図である。
【図3】図1のI/O基板のブロック図である。
【図4】図1のプロセッサ基板のブロック図である。
【図5】特定の相互接続を示す図4のプロセッサ基板の
一部分のブロック図である。
一部分のブロック図である。
【図6】図5のA20M* 信号を発生する信号の論理図
である。
である。
152 マイクロプロセッサ 154 L2キャッシュ 156 メモリ制御器 162 プロセッサ・ユーティリティ・チップ(制
御回路) 170 基本メモリデバイス 200 ORゲート 204 インバータ
御回路) 170 基本メモリデバイス 200 ORゲート 204 インバータ
Claims (12)
- 【請求項1】コンピュータのためのシステム管理モード
アドレス訂正システムであって、 上記コンピュータは、nアドレス出力を有するマイクロ
プロセッサと、上記アドレス出力に値を与えるためにn
ビットを有するレジスタと、上記マイクロプロセッサの
上記アドレス出力の少くとも1つをマスクするためにマ
スキング制御信号に応答し得るマスキング手段とを備
え、上記出力における上記レジスタ値がnよりも少ない
ビットを有するレジスタのロールオーバーをシュミレー
トするように構成され、 上記マイクロプロセッサは、上記マイクロプロセッサ出
力のnビットの総てを利用し得るシステム管理モードで
動作し得るように構成され、 さらに、上記システムは、上記マスキング手段にマスキ
ング制御信号を選択的に供給するための手段と、上記マ
イクロプロセッサがシステム管理モードで動作している
か否かを決定するために上記マイクロプロセッサに接続
されている決定手段と、上記決定手段に応答することが
でき、そして、上記マイクロプロセッサがシステム管理
モードにあるときに上記マスキング制御信号をディスエ
ーブルにするために上記マスキング制御信号供給手段に
接続されているディスエーブル手段とを備えていること
を特徴とするシステム管理モードアドレス訂正システ
ム。 - 【請求項2】上記マイクロプロセッサは、インテル社の
ペンティアム・マイクロプロセッサであり、 そして、上記決定手段は、上記ペンティアム・マイクロ
プロセッサにより発生されるシステム管理割り込み動作
信号を含んでいることを特徴とする請求項1のシステ
ム。 - 【請求項3】上記nが36であることを特徴とする請求
項1および2のシステム。 - 【請求項4】上記レジスタ出力が20ビットを有するレ
ジスタのロールオーバーをシミュレートするように、上
記マスキング手段が上記マイクロプロセッサ出力のビッ
ト20をマスクすることを特徴とする請求項3のシステ
ム。 - 【請求項5】上記マイクロプロセッサは、インテル社の
ペンティアム・マイクロプロセッサであり、 そして、上記マスキング手段は、上記ペンティアム・マ
イクロプロセッサのアドレスビット20マスク信号入力
に接続されていることを特徴とする請求項1のシステ
ム。 - 【請求項6】上記ディスエーブル手段は、上記マスキン
グ制御信号を供給するために上記マイクロプロセッサに
接続されている出力と、上記マスキング制御信号を受け
るために上記マスキング制御信号供給手段に接続されて
いる第1の入力と、上記決定手段に接続されている第2
の入力とを有するORゲートを含んでいることを特徴と
する請求項1〜5のシステム。 - 【請求項7】訂正されたシステム管理モードアドレス指
定を有するコンピュータシステムであって、 システム管理割り込みルーチンを開始することができる
マイクロプロセッサ(このマイクロプロセッサは、上記
システム管理割り込みルーチンが進行中の間にシステム
管理割り込み動作信号をアサートするための手段と、一
連のnアドレス出力とを含む)と、 上記マイクロプロセッサ出力の1つをマスキングするた
めにマスキング制御信号に応答し得るマスキング手段
と、 上記マスキング手段に上記マスキング制御信号を選択的
に供給するための手段と、 上記システム管理割り込み動作信号アサーション手段に
応答することができ、そして、上記システム管理割り込
み動作信号がアサートされたときに上記マスキング制御
信号をディスエーブルにするように上記マスキング制御
信号供給手段に接続されているアドレス訂正手段とを備
えていることを特徴とするコンピュータシステム。 - 【請求項8】上記マイクロプロセッサは、インテル社の
ペンティアム・マイクロプロセッサであり、 そして、上記システム管理割り込みアサーション手段
は、上記ペンティアム・マイクロプロセッサにより発生
されるシステム管理割り込み動作信号を含んでいること
を特徴とする請求項7のシステム。 - 【請求項9】上記nが36であることを特徴とする請求
項7および8のシステム。 - 【請求項10】上記マスキング制御信号がアサートされ
たときに上記インクリメンタルアドレス出力が20ビッ
トを有する一連のアドレス出力のロールオーバーをシミ
ュレートするように、上記マスキング信号発生手段が上
記マイクロプロセッサ出力のビット20をマスクするこ
とを特徴とする請求項9のシステム。 - 【請求項11】上記マイクロプロセッサは、ペンティア
ム・マイクロプロセッサであり、 そして、上記マスキング制御信号供給手段は、上記ペン
ティアム・マイクロプロセッサのアドレスビット20マ
スク信号入力に接続されていることを特徴とする請求項
7のシステム。 - 【請求項12】上記ディスエーブル手段は、上記マイク
ロプロセッサに接続されている出力と、上記マスキング
制御信号を受けるために上記マスキング制御信号供給手
段に接続されている第1の入力と、上記システム管理割
り込み信号アサーション手段に接続されている第2の入
力とを有するORゲートを含んでいることを特徴とする
請求項7〜11のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/034,300 US5509139A (en) | 1993-03-22 | 1993-03-22 | Circuit for disabling an address masking control signal using OR gate when a microprocessor is in a system management mode |
US34,300 | 1993-03-22 | ||
US034,300 | 1993-03-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0773047A true JPH0773047A (ja) | 1995-03-17 |
JP2631085B2 JP2631085B2 (ja) | 1997-07-16 |
Family
ID=21875549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6075299A Expired - Fee Related JP2631085B2 (ja) | 1993-03-22 | 1994-03-22 | コンピュータのためのシステム管理モードアドレス訂正システムおよびコンピュータシステム |
Country Status (6)
Country | Link |
---|---|
US (2) | US5509139A (ja) |
EP (1) | EP0617367B1 (ja) |
JP (1) | JP2631085B2 (ja) |
AT (1) | ATE185630T1 (ja) |
CA (1) | CA2118781C (ja) |
DE (1) | DE69421107T2 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2634147B2 (ja) * | 1994-09-16 | 1997-07-23 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステム、キャッシュヒットの判定方法 |
US5671422A (en) * | 1994-11-14 | 1997-09-23 | Intel Corporation | Method and apparatus for switching between the modes of a processor |
US5638532A (en) * | 1994-12-06 | 1997-06-10 | Digital Equipment Corporation | Apparatus and method for accessing SMRAM in a computer based upon a processor employing system management mode |
US5764999A (en) * | 1995-10-10 | 1998-06-09 | Cyrix Corporation | Enhanced system management mode with nesting |
US5943506A (en) * | 1996-03-25 | 1999-08-24 | Intel Corporation | System for facilitating data I/O between serial bus input device and non-serial bus cognition application by generating alternate interrupt and shutting off interrupt triggering activities |
US5909696A (en) * | 1996-06-04 | 1999-06-01 | Intel Corporation | Method and apparatus for caching system management mode information with other information |
US5729760A (en) * | 1996-06-21 | 1998-03-17 | Intel Corporation | System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode |
US6557104B2 (en) * | 1997-05-02 | 2003-04-29 | Phoenix Technologies Ltd. | Method and apparatus for secure processing of cryptographic keys |
US6246397B1 (en) | 1997-07-30 | 2001-06-12 | Gateway, Inc. | Screen saver computer program prohibition based on storage device activity |
US6145048A (en) * | 1998-09-17 | 2000-11-07 | Micron Technology, Inc. | Method of processing system management interrupt requests |
US6212592B1 (en) | 1998-09-17 | 2001-04-03 | Micron Technology, Inc. | Computer system for processing system management interrupt requests |
US6564317B1 (en) * | 1999-12-20 | 2003-05-13 | Intel Corporation | Method and apparatus for securing computer firmware wherein unlocking of nonvolatile memory is prohibited unless address line masking Is disabled during an initialization event |
US6418498B1 (en) * | 1999-12-30 | 2002-07-09 | Intel Corporation | Integrated system management memory for system management interrupt handler independent of BIOS and operating system |
US7653123B1 (en) | 2004-09-24 | 2010-01-26 | Cypress Semiconductor Corporation | Dynamic data rate using multiplicative PN-codes |
US7791365B2 (en) * | 2007-10-19 | 2010-09-07 | International Business Machines Corporation | Remotely configurable chip and associated method |
US9418223B2 (en) | 2014-04-22 | 2016-08-16 | Dell Products, Lp | System and method for securing embedded controller communications by verifying host system management mode execution |
US9509217B2 (en) | 2015-04-20 | 2016-11-29 | Altera Corporation | Asymmetric power flow controller for a power converter and method of operating the same |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57105043A (en) * | 1980-12-22 | 1982-06-30 | Fujitsu Ltd | Address extension system |
JPS58115564A (ja) * | 1981-12-29 | 1983-07-09 | Fujitsu Ltd | アドレス空間拡張方式 |
JPS63261446A (ja) * | 1987-04-17 | 1988-10-28 | Fujitsu Ltd | 拡張仮想記憶制御方式 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58102381A (ja) * | 1981-12-15 | 1983-06-17 | Nec Corp | バツフアメモリ |
US5027273A (en) * | 1985-04-10 | 1991-06-25 | Microsoft Corporation | Method and operating system for executing programs in a multi-mode microprocessor |
US4926322A (en) * | 1987-08-03 | 1990-05-15 | Compag Computer Corporation | Software emulation of bank-switched memory using a virtual DOS monitor and paged memory management |
US5226122A (en) * | 1987-08-21 | 1993-07-06 | Compaq Computer Corp. | Programmable logic system for filtering commands to a microprocessor |
US5063499A (en) * | 1989-01-09 | 1991-11-05 | Connectix, Inc. | Method for a correlating virtual memory systems by redirecting access for used stock instead of supervisor stock during normal supervisor mode processing |
CA2028551A1 (en) * | 1989-11-03 | 1991-05-04 | John S. Thayer | Data destination facility |
US5283889A (en) * | 1989-12-29 | 1994-02-01 | Zenith Data Systems Corporation | Hardware based interface for mode switching to access memory above one megabyte |
US5175853A (en) * | 1990-10-09 | 1992-12-29 | Intel Corporation | Transparent system interrupt |
US5261114A (en) * | 1990-11-09 | 1993-11-09 | Ast Research, Inc. | Method and apparatus for providing down-loaded instructions for execution by a peripheral controller |
US5255379A (en) * | 1990-12-28 | 1993-10-19 | Sun Microsystems, Inc. | Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor |
US5303378A (en) * | 1991-05-21 | 1994-04-12 | Compaq Computer Corporation | Reentrant protected mode kernel using virtual 8086 mode interrupt service routines |
US5274834A (en) * | 1991-08-30 | 1993-12-28 | Intel Corporation | Transparent system interrupts with integrated extended memory addressing |
JPH06230979A (ja) * | 1992-06-17 | 1994-08-19 | Cyrix Corp | 改良されたシステム管理方法および装置 |
US5392420A (en) * | 1993-09-30 | 1995-02-21 | Intel Corporation | In circuit emulator(ICE) that flags events occuring in system management mode(SMM) |
-
1993
- 1993-03-22 US US08/034,300 patent/US5509139A/en not_active Expired - Lifetime
-
1994
- 1994-03-10 CA CA002118781A patent/CA2118781C/en not_active Expired - Fee Related
- 1994-03-22 JP JP6075299A patent/JP2631085B2/ja not_active Expired - Fee Related
- 1994-03-22 AT AT94302036T patent/ATE185630T1/de not_active IP Right Cessation
- 1994-03-22 DE DE69421107T patent/DE69421107T2/de not_active Expired - Fee Related
- 1994-03-22 EP EP94302036A patent/EP0617367B1/en not_active Expired - Lifetime
-
1995
- 1995-10-27 US US08/524,799 patent/US5664225A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57105043A (en) * | 1980-12-22 | 1982-06-30 | Fujitsu Ltd | Address extension system |
JPS58115564A (ja) * | 1981-12-29 | 1983-07-09 | Fujitsu Ltd | アドレス空間拡張方式 |
JPS63261446A (ja) * | 1987-04-17 | 1988-10-28 | Fujitsu Ltd | 拡張仮想記憶制御方式 |
Also Published As
Publication number | Publication date |
---|---|
US5509139A (en) | 1996-04-16 |
CA2118781C (en) | 1998-12-22 |
US5664225A (en) | 1997-09-02 |
EP0617367A3 (en) | 1994-10-19 |
JP2631085B2 (ja) | 1997-07-16 |
CA2118781A1 (en) | 1994-09-23 |
DE69421107T2 (de) | 2000-03-30 |
EP0617367B1 (en) | 1999-10-13 |
EP0617367A2 (en) | 1994-09-28 |
ATE185630T1 (de) | 1999-10-15 |
DE69421107D1 (de) | 1999-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5764968A (en) | Clock supply permission/inhibition control system | |
US5987536A (en) | Computer system having flash memory bios which can be accessed while protected mode operating system is running | |
US5805882A (en) | Computer system and method for replacing obsolete or corrupt boot code contained within reprogrammable memory with new boot code supplied from an external source through a data port | |
JP2986299B2 (ja) | 周辺装置接続検出システム | |
JP2631085B2 (ja) | コンピュータのためのシステム管理モードアドレス訂正システムおよびコンピュータシステム | |
US6493803B1 (en) | Direct memory access controller with channel width configurability support | |
US5796984A (en) | Operating system independent apparatus and method for eliminating peripheral device functions | |
US5896534A (en) | Operating system independent apparatus and method for supporting input/output devices unsupported by executing programs | |
JP3364495B2 (ja) | 追加ボード | |
JP3869049B2 (ja) | コンピュータシステムにおけるスタンバイ中のデバイス構成のロス防止方法およびデバイス構成の捕捉のためのコントローラ回路 | |
US5845134A (en) | Suspend/resume control method and system | |
US6128732A (en) | Implementing universal serial bus support with a minimum of system RAM | |
US5729767A (en) | System and method for accessing peripheral devices on a non-functional controller | |
US5675794A (en) | Method and apparatus for configuring multiple agents in a computer system | |
US6145029A (en) | Computer system with enhanced docking support | |
US6513094B1 (en) | ROM/DRAM data bus sharing with write buffer and read prefetch activity | |
JPH06348638A (ja) | Pcmcia周辺装置 | |
JP3618878B2 (ja) | コンピュータシステムおよびバス接続方法 | |
WO2000019292A2 (en) | Upgrade card for a computer system | |
US6775734B2 (en) | Memory access using system management interrupt and associated computer system | |
US6016549A (en) | Peripheral unit having at least two sequencer circuits configured to control data transfers for power saving | |
US6895517B2 (en) | Method of synchronizing operation frequencies of CPU and system RAM in power management process | |
EP0664035B1 (en) | AUTOMATIC LOGICAL CPU ASSIGNMENT OF PHYSICAL CPUs | |
US6457137B1 (en) | Method for configuring clock ratios in a microprocessor | |
WO1994008291A9 (en) | AUTOMATIC LOGICAL CPU ASSIGNMENT OF PHYSICAL CPUs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |