JPH0322056A - マルチ・バス・マイクロコンピユータ・システム - Google Patents
マルチ・バス・マイクロコンピユータ・システムInfo
- Publication number
- JPH0322056A JPH0322056A JP2140170A JP14017090A JPH0322056A JP H0322056 A JPH0322056 A JP H0322056A JP 2140170 A JP2140170 A JP 2140170A JP 14017090 A JP14017090 A JP 14017090A JP H0322056 A JPH0322056 A JP H0322056A
- Authority
- JP
- Japan
- Prior art keywords
- lock
- input
- cache
- cpu
- output
- 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
- 230000015654 memory Effects 0.000 claims abstract description 25
- 230000004044 response Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 abstract description 10
- 239000000872 buffer Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
Classifications
-
- 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
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- 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
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
- Time-Division Multiplex Systems (AREA)
- Elevator Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A.M業上の利用分野
本発明はマイクロコンピュータに関し、詳細にいえばキ
ャッシュ・サブシステムを用いたマイクロコンピュータ
に関するものであり、ロック(LOCK)機能に対しプ
ログラム式の制御を提供する。
ャッシュ・サブシステムを用いたマイクロコンピュータ
に関するものであり、ロック(LOCK)機能に対しプ
ログラム式の制御を提供する。
B.従来の技術
マイクロコンピュータ・システムにキャッシュ・サブシ
ステムを使用することによって、魅力的な作動上の利点
がもたらされる。キャッシュ・サブシステムを用いたマ
イクロコンピュータは、実質的にデュアル・バス・マイ
クロコンピュータである。CPU及びキャッシュ・サブ
システムはCPUローカル・バスと呼ばれるものによっ
て、互いに接続される。CPUローカル・バスとは別に
、他の装置(入出力装置、追加メモリなど)を接続でき
るシステム・バスがある。キャッシュ・システムが存在
することによって、システム・バスのメモリ読取りアク
セスが、求める情報がキャッシュ・サブシステムでも見
つかる程度まで軽減される。所望の情報がすべて必ずし
もキャッシュ・サブシステムで見つかるわけではなく、
また書込み動作が通常キャッシュ・サブシステム及びメ
モリの両方に対して行なわれるのであるから、システム
・バスとCPUローカル・バスの間に何らかの接続がな
ければならないことはもちろんである。
ステムを使用することによって、魅力的な作動上の利点
がもたらされる。キャッシュ・サブシステムを用いたマ
イクロコンピュータは、実質的にデュアル・バス・マイ
クロコンピュータである。CPU及びキャッシュ・サブ
システムはCPUローカル・バスと呼ばれるものによっ
て、互いに接続される。CPUローカル・バスとは別に
、他の装置(入出力装置、追加メモリなど)を接続でき
るシステム・バスがある。キャッシュ・システムが存在
することによって、システム・バスのメモリ読取りアク
セスが、求める情報がキャッシュ・サブシステムでも見
つかる程度まで軽減される。所望の情報がすべて必ずし
もキャッシュ・サブシステムで見つかるわけではなく、
また書込み動作が通常キャッシュ・サブシステム及びメ
モリの両方に対して行なわれるのであるから、システム
・バスとCPUローカル・バスの間に何らかの接続がな
ければならないことはもちろんである。
しかしながら、状況によっては、CPUないしキャッシ
ュ制御装置がいくつかのコマンドに対してキャッシュ動
作を禦じるように構成される。たとえば、80388C
PUはマルチプロセッサ及びマルチマスタ構或に対する
ロック信号を含んでいる。信号は他のバス・マスクに対
して、プロセッサが中断してはならない複数バス・サイ
クルを行なっていることを通知する。たとえば、803
86は割込み確認サイクルの間、セグメント記述子及び
ページ・テーブルを更新する時、ならびに交換(Exc
hange)命令を実行する時に、自動的にロックを活
動化する。8038Bの製造業者は、80386のロッ
ク出力をキャッシュ制御装置のロック入力に結合するこ
とを推奨している。キャッシュ制御装置はCPUローカ
ル・バス(キャッシュ・メモリが常駐している)だけで
はなく、システム・パス(メイン・メモリ及びその他の
メモリが常駐している)もアクセスできるので、キャッ
シュ動作を許可したり、あるいはこれを禁止する能力を
有する。通常、キャッシュ制御装置(たとえば、823
85)はロック入力が活動化される任意のサイクルにお
いて、キャッシュ動作を阻止する。
ュ制御装置がいくつかのコマンドに対してキャッシュ動
作を禦じるように構成される。たとえば、80388C
PUはマルチプロセッサ及びマルチマスタ構或に対する
ロック信号を含んでいる。信号は他のバス・マスクに対
して、プロセッサが中断してはならない複数バス・サイ
クルを行なっていることを通知する。たとえば、803
86は割込み確認サイクルの間、セグメント記述子及び
ページ・テーブルを更新する時、ならびに交換(Exc
hange)命令を実行する時に、自動的にロックを活
動化する。8038Bの製造業者は、80386のロッ
ク出力をキャッシュ制御装置のロック入力に結合するこ
とを推奨している。キャッシュ制御装置はCPUローカ
ル・バス(キャッシュ・メモリが常駐している)だけで
はなく、システム・パス(メイン・メモリ及びその他の
メモリが常駐している)もアクセスできるので、キャッ
シュ動作を許可したり、あるいはこれを禁止する能力を
有する。通常、キャッシュ制御装置(たとえば、823
85)はロック入力が活動化される任意のサイクルにお
いて、キャッシュ動作を阻止する。
8038B及び82385デバイスの特性は「マイクロ
プロセッサ及び周辺装置ハンドブック(Micropr
ocessor and Peripheral Ha
ndbook) J 1r82385高性能32ビット
・キャッシュ制御装置(82385 High Per
formance 32−Bit CacheCont
roller) J s r 8 0 3 8 B入
門(Introduction to the 803
86) J及び「8038E3/)−}’ウェア・リフ
ァレンス・マニュアル(80386 Hardware
Reference Manual) J 1すべて
インテル発行、に記載されている。r82385高性能
32ビット・キャッシュ制御装置」は(80388の)
ロック出力が活動化された場合、シーケンスで参照され
た位置がキャッシュにあるか否かにはかかわりなく、シ
ーケンスがシステム・バシで実行されると述べている(
セクシ日ン3.4.2)。換言すれば、読取りヒットは
これがあたかも読取りミスであるかのようにして実行さ
れる。
プロセッサ及び周辺装置ハンドブック(Micropr
ocessor and Peripheral Ha
ndbook) J 1r82385高性能32ビット
・キャッシュ制御装置(82385 High Per
formance 32−Bit CacheCont
roller) J s r 8 0 3 8 B入
門(Introduction to the 803
86) J及び「8038E3/)−}’ウェア・リフ
ァレンス・マニュアル(80386 Hardware
Reference Manual) J 1すべて
インテル発行、に記載されている。r82385高性能
32ビット・キャッシュ制御装置」は(80388の)
ロック出力が活動化された場合、シーケンスで参照され
た位置がキャッシュにあるか否かにはかかわりなく、シ
ーケンスがシステム・バシで実行されると述べている(
セクシ日ン3.4.2)。換言すれば、読取りヒットは
これがあたかも読取りミスであるかのようにして実行さ
れる。
C.発明が解決しようとする課題
しかしながら、上記とはかかわりなく、ほとんどのパー
ソナル・コンピュータ(PC)環境において、記述子は
システム・プロセッサ間で共有されていない。結果とし
て、ロック信号の活動化の影響は、特に8038Bのプ
ロテクト・モードで動作している場合に、大幅なパフォ
ーマンスの低下を引き起こす。このパフォーマンスの低
下は、82385キャッシュ制御装置がすべてのロック
された動作をキャッシュを使用しないものとして扱うた
めに、生じる。
ソナル・コンピュータ(PC)環境において、記述子は
システム・プロセッサ間で共有されていない。結果とし
て、ロック信号の活動化の影響は、特に8038Bのプ
ロテクト・モードで動作している場合に、大幅なパフォ
ーマンスの低下を引き起こす。このパフォーマンスの低
下は、82385キャッシュ制御装置がすべてのロック
された動作をキャッシュを使用しないものとして扱うた
めに、生じる。
D.課題を解決するための手段
課題を解決するために、本発明は(たとえば、8038
8の)ロック出力と(たとえば、82385の)ロック
入力の間に結合された付加的な論理を提供する。この付
加的な論理は2つの2進状態のいずれかである制御入力
端子を含んでいる。
8の)ロック出力と(たとえば、82385の)ロック
入力の間に結合された付加的な論理を提供する。この付
加的な論理は2つの2進状態のいずれかである制御入力
端子を含んでいる。
付加論理の制御入力端子は、選択された入出力ポートの
特定のビットによって駆動される。入出力ボートの特定
ビットが活動化された場合、論理におけるその効果は、
(80386の)ロック出力と(82385の)ロック
入力の間のあらゆる関係を使用不能とする。詳細にいえ
ば、入出力ボートの選択されたビットが活動状態にある
場合、80386のロック出力にかかわりな<、(82
385の)ロック入力は非活動状態となる。一方、入出
力ポートの選択されたビットが非活動状態にあれば、論
理は82385のロック入力が、80388のロック出
力の状態に追随することを可能とする。
特定のビットによって駆動される。入出力ボートの特定
ビットが活動化された場合、論理におけるその効果は、
(80386の)ロック出力と(82385の)ロック
入力の間のあらゆる関係を使用不能とする。詳細にいえ
ば、入出力ボートの選択されたビットが活動状態にある
場合、80386のロック出力にかかわりな<、(82
385の)ロック入力は非活動状態となる。一方、入出
力ポートの選択されたビットが非活動状態にあれば、論
理は82385のロック入力が、80388のロック出
力の状態に追随することを可能とする。
したがって、入出力ポートの選択されたビットの状態は
、マイクロコンピューター・システムのロック機能を使
用するか、あるいはロック機能を使用禁止とするかのい
ずれかである。
、マイクロコンピューター・システムのロック機能を使
用するか、あるいはロック機能を使用禁止とするかのい
ずれかである。
本出願人が生産している、単一プロセッサまたは単一バ
ス・マスク・システムであるPS/2マイクロコンピュ
ータ・システムで実現された本発明の好ましい実施例に
おいては、ロック機能を使用禁止とすることによって、
OS/2オペレーティング・システムのもとで作動させ
た場合、大幅なパフォーマンスの向上(最高6%)がも
たらされる。パフォーマンスの向上は、キャッシュ・サ
ブシステムの使用によってパフォーマンスの向上が達成
されることに帰せられる。本発明が存在しない場合、C
PU及びキャッシュ制御装置は上述の作動条件のもとで
キャッシュ・サブシステムの使用を禁止する。
ス・マスク・システムであるPS/2マイクロコンピュ
ータ・システムで実現された本発明の好ましい実施例に
おいては、ロック機能を使用禁止とすることによって、
OS/2オペレーティング・システムのもとで作動させ
た場合、大幅なパフォーマンスの向上(最高6%)がも
たらされる。パフォーマンスの向上は、キャッシュ・サ
ブシステムの使用によってパフォーマンスの向上が達成
されることに帰せられる。本発明が存在しない場合、C
PU及びキャッシュ制御装置は上述の作動条件のもとで
キャッシュ・サブシステムの使用を禁止する。
本発明の好ましい実施例において、ロック入力及びロッ
ク出力は低レベルが活動状態であり、追加論理は単一の
ORゲートからなる。この実施例において、ロック機能
は入出力ポートの特定のビットからORゲートへの高い
制御入力によって、使用禁止とされる。他方において、
入出力ポートの特定のビットが低い状態である場合、ロ
ック機能は従来技術と同様に作動する。
ク出力は低レベルが活動状態であり、追加論理は単一の
ORゲートからなる。この実施例において、ロック機能
は入出力ポートの特定のビットからORゲートへの高い
制御入力によって、使用禁止とされる。他方において、
入出力ポートの特定のビットが低い状態である場合、ロ
ック機能は従来技術と同様に作動する。
制御入力のプログラム可能性を追加論理に与えることに
よって、マイクロコンピュータ・システムは入出力ポー
トの特定のビット(制御ビット)が低い場合に、追加論
理が存在しないかのように作動することが可能となる。
よって、マイクロコンピュータ・システムは入出力ポー
トの特定のビット(制御ビット)が低い場合に、追加論
理が存在しないかのように作動することが可能となる。
他方において、特定のビットまたは制御入力が高い場合
、ロック機能は使用禁止とされる。当分野の技術者に明
らかなように、ロック機能に対する制御は、選択された
入出力ポートの特定のビットの状態を制御するソフトウ
ェアにおかれる。
、ロック機能は使用禁止とされる。当分野の技術者に明
らかなように、ロック機能に対する制御は、選択された
入出力ポートの特定のビットの状態を制御するソフトウ
ェアにおかれる。
したがって、本発明は次のものからなるマルチ・バス・
マイクロコンピュータを提供する。
マイクロコンピュータを提供する。
CPU及びキャッシュ・サブシステムがCPUのローカ
ル・バスによって互いに接続され、該キャッシュ・サブ
システムは82385のようなキャッシュ制御装置及び
キャッシュ・メモリからなり、システム・バス手段は該
キャッシュ制御装置をランダム・アクセス・メモリ及び
複数個のアドレス可能機能ユニットに接続し、CPUは
ロック出力を有しており、キャッシュ制御装置はロック
入力を有しており、 論理手段がCPUのロック出力とキャッシュ制御装置の
ロック入力の間に結合されており、該論理手段は該ロッ
ク出力と該ロック入力の間の関係を使用禁止とするため
の制御入力を含んでいる。
ル・バスによって互いに接続され、該キャッシュ・サブ
システムは82385のようなキャッシュ制御装置及び
キャッシュ・メモリからなり、システム・バス手段は該
キャッシュ制御装置をランダム・アクセス・メモリ及び
複数個のアドレス可能機能ユニットに接続し、CPUは
ロック出力を有しており、キャッシュ制御装置はロック
入力を有しており、 論理手段がCPUのロック出力とキャッシュ制御装置の
ロック入力の間に結合されており、該論理手段は該ロッ
ク出力と該ロック入力の間の関係を使用禁止とするため
の制御入力を含んでいる。
当分野の技術者には、本発明を80388CPU182
385キャッシュ制御装置、あるいはこれらのいずれを
も用いていないマイクロコンピュータ・システムに適用
できることが理解されよう。
385キャッシュ制御装置、あるいはこれらのいずれを
も用いていないマイクロコンピュータ・システムに適用
できることが理解されよう。
詳細にいえば、本発明はキャッシュ制御装置がCPUか
らのロック信号に応答して、キャッシュ動作を禁止する
ようなキャッシュ・サブシステムを含むあらゆるマルチ
・バス・マイクロコンピュータに適用可能である。
らのロック信号に応答して、キャッシュ動作を禁止する
ようなキャッシュ・サブシステムを含むあらゆるマルチ
・バス・マイクロコンピュータに適用可能である。
したがって、他の態様にわいて、本発明は次のものを含
んでいるマルチ・バス・マイクロコンピュータを提供す
る。
んでいるマルチ・バス・マイクロコンピュータを提供す
る。
CPU及びキャッシュ・サブシステムがCPUのローカ
ル・バスによって互いに接続され、該キャッシュ・シス
テムはキャッシュ制御装置及びキャッシュ・メモリから
なり、システム・バス手段はキャッシュ制御装置をラン
ダム・アクセス・メモリ及び複数個のアドレス可能機能
ユニットに接続し、CPUはロック出力を有しており、
キャッシュ制御装置はロック入力を有すると共に、活動
ロック入力に関連するあらゆるサイクルをキャッシュ不
能サイクルとして処理するための手段を有しており、 論理手段がCPUのロック出力とキャッシュ制御装置の
ロック入力の間に結合されており、該論理手段はロック
出力とロック入力の間の関係を使用禁止とするための制
御入力を含んでいる。
ル・バスによって互いに接続され、該キャッシュ・シス
テムはキャッシュ制御装置及びキャッシュ・メモリから
なり、システム・バス手段はキャッシュ制御装置をラン
ダム・アクセス・メモリ及び複数個のアドレス可能機能
ユニットに接続し、CPUはロック出力を有しており、
キャッシュ制御装置はロック入力を有すると共に、活動
ロック入力に関連するあらゆるサイクルをキャッシュ不
能サイクルとして処理するための手段を有しており、 論理手段がCPUのロック出力とキャッシュ制御装置の
ロック入力の間に結合されており、該論理手段はロック
出力とロック入力の間の関係を使用禁止とするための制
御入力を含んでいる。
E.実施例
第2図は本発明を用いることのできる典型的なマイクロ
コンピュータ・システムを示している。
コンピュータ・システムを示している。
図示のように、マイクロコンピュータ・システム10は
相互接続された多数の構成要素からなってイル。詳細に
いえば、システム・ユニツ}30は(周知のビデオ・デ
ィスプレイなどの)モニタ20に接続され、これを駆動
している。システム・ユニット30はキーボード40及
びマウス50などの入力装置にも接続されている。プリ
ンタ60などの出力装置も、システム・ユニット30に
接続されている。さらに、システム・ユニット30はデ
ィスク駆動機構70などの1台または複数台のディスク
駆動機構を含んでいることもできる。
相互接続された多数の構成要素からなってイル。詳細に
いえば、システム・ユニツ}30は(周知のビデオ・デ
ィスプレイなどの)モニタ20に接続され、これを駆動
している。システム・ユニット30はキーボード40及
びマウス50などの入力装置にも接続されている。プリ
ンタ60などの出力装置も、システム・ユニット30に
接続されている。さらに、システム・ユニット30はデ
ィスク駆動機構70などの1台または複数台のディスク
駆動機構を含んでいることもできる。
以下で説明するように、システム・ユニット30は信号
を与えるためのキーボード40及びマウス50などの入
力装置、ならびにディスク駆動機横70などの入出力装
置に応答し、モニタ20及びプリンタ60などの出力装
置を駆動する。もちろん、当分野の技術者には、他の周
知の構成要素をシステム・ユニット30と接続し、これ
と相互接続できることが理解されよう。本発明によれば
、マイクロコンピューターシステム10は(以下で詳細
に説明するよウに)キャッシュ・メモリ・サブシステム
を含んでおり、プロセッサ、キャッシュ制御装置及びキ
ャッシュ・メモリを相互接続するCPUローカル・バス
が存在し、とのCPUロ−カル・バスはバッファを介し
てシステム・バスに結合される。システム・バスはキー
ボード401マウス60、ディスク駆動機構701モニ
タ20及びプリンタ60などの入出力装置と相互接続さ
れ、これと対話する。さらに、本発明によれば、システ
ム・ユニット30は、システム・バスト{也の(オプシ
a冫の)入出力装置、メモリなどとの間の相互接続を行
なうマイクロ・チャネル・バスからなる第3のパスを含
むことができる。
を与えるためのキーボード40及びマウス50などの入
力装置、ならびにディスク駆動機横70などの入出力装
置に応答し、モニタ20及びプリンタ60などの出力装
置を駆動する。もちろん、当分野の技術者には、他の周
知の構成要素をシステム・ユニット30と接続し、これ
と相互接続できることが理解されよう。本発明によれば
、マイクロコンピューターシステム10は(以下で詳細
に説明するよウに)キャッシュ・メモリ・サブシステム
を含んでおり、プロセッサ、キャッシュ制御装置及びキ
ャッシュ・メモリを相互接続するCPUローカル・バス
が存在し、とのCPUロ−カル・バスはバッファを介し
てシステム・バスに結合される。システム・バスはキー
ボード401マウス60、ディスク駆動機構701モニ
タ20及びプリンタ60などの入出力装置と相互接続さ
れ、これと対話する。さらに、本発明によれば、システ
ム・ユニット30は、システム・バスト{也の(オプシ
a冫の)入出力装置、メモリなどとの間の相互接続を行
なうマイクロ・チャネル・バスからなる第3のパスを含
むことができる。
第3図は本発明による典型的なマイクロコンピュータ・
システムの各種の構成要素を示す高レベルのブロック図
である。CPUローカル・バス230(データ部、アド
レス部及び制御部からなる)は、マイクロプロセッサ2
25 (80388など)、キャッシュ制御装置280
(82385キャッシュ制御装置を含めることができ
る)、及びランダム・アクセス・キャッシュ・メモリ2
55を接続している。CPUローカル・バス230には
、パッファ240も接続されている。バッファ240自
体はシステム・バス250に接続されており、これもア
ドレス部、データ部及び制御部からなっている。システ
ム・バス250はバッファ240と他のバッファ253
の間を延びている。
システムの各種の構成要素を示す高レベルのブロック図
である。CPUローカル・バス230(データ部、アド
レス部及び制御部からなる)は、マイクロプロセッサ2
25 (80388など)、キャッシュ制御装置280
(82385キャッシュ制御装置を含めることができ
る)、及びランダム・アクセス・キャッシュ・メモリ2
55を接続している。CPUローカル・バス230には
、パッファ240も接続されている。バッファ240自
体はシステム・バス250に接続されており、これもア
ドレス部、データ部及び制御部からなっている。システ
ム・バス250はバッファ240と他のバッファ253
の間を延びている。
システム・バス250はパス制御及びタイミング要素2
85、及びDMA制御装置325にも接続されている。
85、及びDMA制御装置325にも接続されている。
アービトレーシeン制御バス340がバス制御及びタイ
ミング要素265、及び中央アービトレーシeン要素3
35を結合している。
ミング要素265、及び中央アービトレーシeン要素3
35を結合している。
メモリ350もシステム・パス250に接続されている
。メモリ350はメモリ制御装置351、アドレス・マ
ルチブレクサ352及びデータ・バッファ353を含ん
でいる。これらの要素は第3図に示すように、メモリ要
素(DRAM)3E3 1ないし364と相互接続され
ている。
。メモリ350はメモリ制御装置351、アドレス・マ
ルチブレクサ352及びデータ・バッファ353を含ん
でいる。これらの要素は第3図に示すように、メモリ要
素(DRAM)3E3 1ないし364と相互接続され
ている。
他のバッファ254はシステム・バス250とプレーナ
・バス270の間に結合されている。プレーナ・バス2
70はアドレス部、データ部及び制御部を含んでいる。
・バス270の間に結合されている。プレーナ・バス2
70はアドレス部、データ部及び制御部を含んでいる。
プレーナ・パス270とともに、ディスプレイ・アダプ
タ276(モニタ20を駆動するのに使用される)、ク
ロック2801追加ランダム・アクセス・メモリ285
、RS232アダプタ2901プリンタ・アダプタ29
5(プリンタ60を駆動するのに使用できる)、タイマ
3001ディスケット・アダプタ305(ディスク駆動
機構70と協働する)、割込み制御装置310及び読取
り専用メモリ(ROM)3 1 5などの入出力アダプ
タ及びその他の構成要素が結合される。バッファ253
はシステム・バス250と、マイクロチャネル・ソケッ
トによって表されるマイクロチャネル・バス320など
のオプシeン機構バスとの間のインターフェースを提供
する。
タ276(モニタ20を駆動するのに使用される)、ク
ロック2801追加ランダム・アクセス・メモリ285
、RS232アダプタ2901プリンタ・アダプタ29
5(プリンタ60を駆動するのに使用できる)、タイマ
3001ディスケット・アダプタ305(ディスク駆動
機構70と協働する)、割込み制御装置310及び読取
り専用メモリ(ROM)3 1 5などの入出力アダプ
タ及びその他の構成要素が結合される。バッファ253
はシステム・バス250と、マイクロチャネル・ソケッ
トによって表されるマイクロチャネル・バス320など
のオプシeン機構バスとの間のインターフェースを提供
する。
メモリ331などの装置をパス320に結合することも
できる。
できる。
キャッシュ書込み用データは一般にメモリ350から取
り出されるが、このデータをマイクロチャネル・バスに
取り付けられたメモリなどの他のメモリからも取り出す
ことができる。
り出されるが、このデータをマイクロチャネル・バスに
取り付けられたメモリなどの他のメモリからも取り出す
ことができる。
第1図及び第1表はCPU225のロック出力とキャッ
シュ制御装置280のロック入力の間の関係に本発明を
適用したものを示す。第1表はロック出力、ORゲート
100への制御入力、及びキャッシュ制御装置260の
ロック入力に接続されたORゲー}100の出力の間の
関係を示す。
シュ制御装置280のロック入力の間の関係に本発明を
適用したものを示す。第1表はロック出力、ORゲート
100への制御入力、及びキャッシュ制御装置260の
ロック入力に接続されたORゲー}100の出力の間の
関係を示す。
ロック入力及びロック出力は低レベル(0)が活動状態
を表わす。低レベル制御信号は、ロック入力がロック出
力に追随することを可能とし、高レベルテは、ロック出
力の状態のいかんにかかわらず、ロック入力が非活動(
高レベル)にされる。
を表わす。低レベル制御信号は、ロック入力がロック出
力に追随することを可能とし、高レベルテは、ロック出
力の状態のいかんにかかわらず、ロック入力が非活動(
高レベル)にされる。
第1表
−5ユ!j坦匁 里皇 −o−,pコ(匁O O
O 1 0 1 0 1 1 1 1 1 好ましい実施例において、CPU225は80386か
らなり、キャッシュ制御装置280は82385からな
っている。ORゲート100に対する制御入力端子を、
任意の選択された入出力ポートからの任意の特定ビット
に接続することができる。このよろに接続した場合、入
出力ポート・ビットの状態が、キャッシュ制御装置26
0のロック入力がCPU225のロック出力の状態に追
随するかどうかを決定することとなる。キャッシュ制御
装置260のロック入力がCPU225のロック出力の
状態に追随していない場合、これは非活動、すなわち高
レベル状態にある。この状態において、当分野の技術者
に明らかなように、キャッシュ制御装置280はいずれ
かのサイクルが他のパラメータに基づいてキャッシュ可
能であるかどうかを決定することとなる。他方、制御ビ
ットが低レベル(ロックを可能とする)である場合には
、キャッシュ制御装置280はCPU225のロック出
力の低レベル状態に関連するあらゆるサイクルを、他の
パラメータにかかわりなく、キャッシュ不能として取り
扱う。
O 1 0 1 0 1 1 1 1 1 好ましい実施例において、CPU225は80386か
らなり、キャッシュ制御装置280は82385からな
っている。ORゲート100に対する制御入力端子を、
任意の選択された入出力ポートからの任意の特定ビット
に接続することができる。このよろに接続した場合、入
出力ポート・ビットの状態が、キャッシュ制御装置26
0のロック入力がCPU225のロック出力の状態に追
随するかどうかを決定することとなる。キャッシュ制御
装置260のロック入力がCPU225のロック出力の
状態に追随していない場合、これは非活動、すなわち高
レベル状態にある。この状態において、当分野の技術者
に明らかなように、キャッシュ制御装置280はいずれ
かのサイクルが他のパラメータに基づいてキャッシュ可
能であるかどうかを決定することとなる。他方、制御ビ
ットが低レベル(ロックを可能とする)である場合には
、キャッシュ制御装置280はCPU225のロック出
力の低レベル状態に関連するあらゆるサイクルを、他の
パラメータにかかわりなく、キャッシュ不能として取り
扱う。
好ましい実施例において、CPU225が80386か
らなり、キャッシュ制御装置260が82385からな
っているが、本発明の用途がこれらのデバイスを含んだ
マイクロコンピュータ・システムでの使用に限定される
ものでないことが明らかであろう。それどころか、80
388/82385のロック機能の特性を再現するキャ
ッシュ・サブシステムを含んだあらゆるマイクロコンピ
ュータに、本発明を適用できる。ロック信号の高レベル
が活動状態を表わすマイクロコンピュータ・システムに
も本発明を適用できることも明らかであろう。たとえば
、高レベルの活動状態は、ORゲート100をANDゲ
ートと置き換え、かつ制御ビットに対する適切な変更を
行なうことによって、処理することができる。信号の高
レベルが活動状態を表わす場合、ANDゲートを追加論
理として使用して、高レベルの制御信号で、ロック入力
がロック出力に追随できるようにし、低レベルの制御ビ
ットでロック入力を使用禁止ないし非活動とすることが
できる。
らなり、キャッシュ制御装置260が82385からな
っているが、本発明の用途がこれらのデバイスを含んだ
マイクロコンピュータ・システムでの使用に限定される
ものでないことが明らかであろう。それどころか、80
388/82385のロック機能の特性を再現するキャ
ッシュ・サブシステムを含んだあらゆるマイクロコンピ
ュータに、本発明を適用できる。ロック信号の高レベル
が活動状態を表わすマイクロコンピュータ・システムに
も本発明を適用できることも明らかであろう。たとえば
、高レベルの活動状態は、ORゲート100をANDゲ
ートと置き換え、かつ制御ビットに対する適切な変更を
行なうことによって、処理することができる。信号の高
レベルが活動状態を表わす場合、ANDゲートを追加論
理として使用して、高レベルの制御信号で、ロック入力
がロック出力に追随できるようにし、低レベルの制御ビ
ットでロック入力を使用禁止ないし非活動とすることが
できる。
F.発明の効果
したがって、本発明によれば、ソフトウェアの制御によ
り、かつCPU225にとって完全に透過な態様で、ロ
ック機能を使用可能あるいは使用禁止とすることが可能
となる。
り、かつCPU225にとって完全に透過な態様で、ロ
ック機能を使用可能あるいは使用禁止とすることが可能
となる。
第1図は、本発明によるCPU,キャッシュ制御装置及
び追加された論理の間の関係を示すブロック図である。 第2図は、本発明を用いた典型的なマイクロコンピュー
タ・システムの図である。 第3図は、本発明を用いた典型的なマイクロコンピュー
タ・システムの構成要素のブロック図である。
び追加された論理の間の関係を示すブロック図である。 第2図は、本発明を用いた典型的なマイクロコンピュー
タ・システムの図である。 第3図は、本発明を用いた典型的なマイクロコンピュー
タ・システムの構成要素のブロック図である。
Claims (6)
- (1)CPU及びキャッシュ・サブシステムがCPUロ
ーカル・バスによって結合されており、前記キャッシュ
・サブシステムがキャッシュ制御装置及びキャッシュ・
メモリを含み、システム・バス手段が前記キャッシュ制
御装置をランダム・アクセス・メモリ及び複数個のアド
レス可能機能装置に接続しており、前記CPUがロック
出力を有しており、前記キャッシュ制御装置がロック入
力を有しており、 論理手段が前記CPUの前記ロック出力と前記キャッシ
ュ制御装置の前記ロック入力の間に結合されており、該
論理手段が前記ロック出力と前記ロック入力のあらゆる
関係を使用禁止とするための制御入力を含んでいる、 マルチ・バス・マイクロコンピュータ・システム。 - (2)前記論理手段がORゲートからなる、特許請求の
範囲第1項記載のマルチ・バス・マイクロコンピュータ
・システム。 - (3)前記論理手段がある状態の制御入力に応じて、前
記ロック入力を非活動とし、また他の状態において、前
記ロック入力が前記ロック出力に追随することを可能と
する、特許請求の範囲第1項記載のマルチ・バス・マイ
クロコンピュータ・システム。 - (4)CPU及びキャッシュ・サブシステムがCPUロ
ーカル・バスによって結合されており、前記キャッシュ
・サブシステムがキャッシュ制御装置及びキャッシュ・
メモリを含み、システム・バス手段が前記キャッシュ制
御装置をランダム・アクセス・メモリ及び複数個のアド
レス可能機能装置に接続しており、前記CPUがロック
出力を有しており、前記キャッシュ制御装置がロック入
力を有しており、前記キャッシュ制御装置が活動ロック
入力に関連するあらゆるサイクルをキャッシュ不能サイ
クルとして取り扱うための手段を含んでおり、 論理手段が前記CPUの前記ロック出力と前記キャッシ
ュ制御装置の前記ロック入力の間に結合されており、該
論理手段が前記ロック出力と前記ロック入力のあらゆる
関係を使用禁止とするための制御入力を含んでいる、 マルチ・バス・マイクロコンピュータ・システム。 - (5)活動ロック出力が低レベル状態であり、前記論理
手段がORゲートからなる、特許請求の範囲第4項記載
のマルチ・バス・マイクロコンピュータ・システム。 - (6)前記論理手段が高レベル状態の前記制御入力に応
じて、前記ロック出力にかかわりなく、前記ロック入力
を非活動状態に制御し、かつ低レベル状態の前記制御入
力が前記ロック入力が前記ロック出力に追随することを
可能とする、特許請求の範囲第4項記載のマルチ・バス
・マイクロコンピュータ・システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/358,810 US5182809A (en) | 1989-05-31 | 1989-05-31 | Dual bus microcomputer system with programmable control of lock function |
US358810 | 1989-05-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0322056A true JPH0322056A (ja) | 1991-01-30 |
JPH0583936B2 JPH0583936B2 (ja) | 1993-11-30 |
Family
ID=23411134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2140170A Granted JPH0322056A (ja) | 1989-05-31 | 1990-05-31 | マルチ・バス・マイクロコンピユータ・システム |
Country Status (14)
Country | Link |
---|---|
US (1) | US5182809A (ja) |
EP (1) | EP0400840B1 (ja) |
JP (1) | JPH0322056A (ja) |
KR (1) | KR920008457B1 (ja) |
CN (1) | CN1019237B (ja) |
AT (1) | ATE160890T1 (ja) |
AU (1) | AU616604B2 (ja) |
BR (1) | BR9002554A (ja) |
CA (1) | CA2016400C (ja) |
DE (1) | DE69031768T2 (ja) |
ES (1) | ES2112250T3 (ja) |
GB (1) | GB9008144D0 (ja) |
NZ (1) | NZ233538A (ja) |
SG (1) | SG44431A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2026816A1 (en) * | 1989-11-03 | 1991-05-04 | Paul R. Culley | Enhanced locked bus cycle control in a cache memory computer system |
US5452463A (en) * | 1990-05-25 | 1995-09-19 | Dell Usa, L.P. | Processor and cache controller interface lock jumper |
US5430860A (en) * | 1991-09-17 | 1995-07-04 | International Business Machines Inc. | Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence |
US5974508A (en) * | 1992-07-31 | 1999-10-26 | Fujitsu Limited | Cache memory system and method for automatically locking cache entries to prevent selected memory items from being replaced |
EP0598570B1 (en) * | 1992-11-13 | 2000-01-19 | National Semiconductor Corporation | Microprocessor comprising region configuration system and method for controlling memory subsystem operations by address region |
US5974473A (en) * | 1996-06-14 | 1999-10-26 | Texas Instruments Incorporated | System for controlling insertion, locking, and removal of modules by removing plurality of device drivers for module to be removed from BIOS and informing BIOS of module removal |
US6397295B1 (en) | 1999-01-04 | 2002-05-28 | Emc Corporation | Cache mechanism for shared resources in a multibus data processing system |
US6438655B1 (en) * | 1999-04-20 | 2002-08-20 | Lucent Technologies Inc. | Method and memory cache for cache locking on bank-by-bank basis |
CN101403904B (zh) * | 2008-05-23 | 2010-12-15 | 东莞市启微电子有限公司 | 双向输入/输出的可编程控制器 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4357656A (en) * | 1977-12-09 | 1982-11-02 | Digital Equipment Corporation | Method and apparatus for disabling and diagnosing cache memory storage locations |
US4432050A (en) * | 1978-10-02 | 1984-02-14 | Honeywell Information Systems, Inc. | Data processing system write protection mechanism |
US4488217A (en) * | 1979-03-12 | 1984-12-11 | Digital Equipment Corporation | Data processing system with lock-unlock instruction facility |
US4394727A (en) * | 1981-05-04 | 1983-07-19 | International Business Machines Corporation | Multi-processor task dispatching apparatus |
US4435766A (en) * | 1981-06-16 | 1984-03-06 | International Business Machines Corporation | Nested resource control using locking and unlocking routines with use counter for plural processes |
US4590552A (en) * | 1982-06-30 | 1986-05-20 | Texas Instruments Incorporated | Security bit for designating the security status of information stored in a nonvolatile memory |
US4587609A (en) * | 1983-07-01 | 1986-05-06 | Honeywell Information Systems Inc. | Lockout operation among asynchronous accessers of a shared computer system resource |
JPS60107170A (ja) * | 1983-11-15 | 1985-06-12 | Nec Corp | マルチプロセッサ制御方式 |
US4727486A (en) * | 1986-05-02 | 1988-02-23 | Honeywell Information Systems Inc. | Hardware demand fetch cycle system interface |
US4949239A (en) * | 1987-05-01 | 1990-08-14 | Digital Equipment Corporation | System for implementing multiple lock indicators on synchronous pended bus in multiprocessor computer system |
US4984153A (en) * | 1988-04-27 | 1991-01-08 | Unisys Corporation | Storage locking control for a plurality of processors which share a common storage unit |
US4959860A (en) * | 1989-02-07 | 1990-09-25 | Compaq Computer Corporation | Power-on password functions for computer system |
US5041962A (en) * | 1989-04-14 | 1991-08-20 | Dell Usa Corporation | Computer system with means for regulating effective processing rates |
CA2026816A1 (en) * | 1989-11-03 | 1991-05-04 | Paul R. Culley | Enhanced locked bus cycle control in a cache memory computer system |
-
1989
- 1989-05-31 US US07/358,810 patent/US5182809A/en not_active Expired - Lifetime
-
1990
- 1990-04-10 GB GB909008144A patent/GB9008144D0/en active Pending
- 1990-05-02 NZ NZ233538A patent/NZ233538A/en unknown
- 1990-05-09 CA CA002016400A patent/CA2016400C/en not_active Expired - Fee Related
- 1990-05-15 AU AU55066/90A patent/AU616604B2/en not_active Ceased
- 1990-05-16 EP EP90305297A patent/EP0400840B1/en not_active Expired - Lifetime
- 1990-05-16 SG SG1996000365A patent/SG44431A1/en unknown
- 1990-05-16 AT AT90305297T patent/ATE160890T1/de active
- 1990-05-16 ES ES90305297T patent/ES2112250T3/es not_active Expired - Lifetime
- 1990-05-16 DE DE69031768T patent/DE69031768T2/de not_active Expired - Fee Related
- 1990-05-22 KR KR1019900007311A patent/KR920008457B1/ko not_active IP Right Cessation
- 1990-05-24 CN CN90103769A patent/CN1019237B/zh not_active Expired
- 1990-05-30 BR BR909002554A patent/BR9002554A/pt not_active IP Right Cessation
- 1990-05-31 JP JP2140170A patent/JPH0322056A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
BR9002554A (pt) | 1991-08-13 |
AU616604B2 (en) | 1991-10-31 |
CA2016400C (en) | 1996-01-02 |
AU5506690A (en) | 1990-12-06 |
CN1047742A (zh) | 1990-12-12 |
JPH0583936B2 (ja) | 1993-11-30 |
DE69031768T2 (de) | 1998-06-25 |
GB9008144D0 (en) | 1990-06-06 |
SG44431A1 (en) | 1997-12-19 |
ES2112250T3 (es) | 1998-04-01 |
CN1019237B (zh) | 1992-11-25 |
ATE160890T1 (de) | 1997-12-15 |
CA2016400A1 (en) | 1990-11-30 |
KR900018822A (ko) | 1990-12-22 |
NZ233538A (en) | 1992-06-25 |
EP0400840A2 (en) | 1990-12-05 |
EP0400840A3 (en) | 1992-08-05 |
US5182809A (en) | 1993-01-26 |
DE69031768D1 (de) | 1998-01-15 |
KR920008457B1 (ko) | 1992-09-30 |
EP0400840B1 (en) | 1997-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5426765A (en) | Multiprocessor cache abitration | |
KR0185966B1 (ko) | 복식 프로세서 시스템의 프로세서 및 캐시 제어기의 독립 리세팅 장치 및 방법 | |
US5890200A (en) | Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests | |
US6658532B1 (en) | Cache flushing | |
US5490279A (en) | Method and apparatus for operating a single CPU computer system as a multiprocessor system | |
US5446910A (en) | Interrupt controller with automatic distribution of interrupts for a multiple processor computer system | |
US5319766A (en) | Duplicate tag store for a processor having primary and backup cache memories in a multiprocessor computer system | |
KR100303947B1 (ko) | 다중프로세서시스템그리고그의초기화기능분산및자체진단시스템그리고그방법 | |
US5553266A (en) | Update vs. invalidate policy for a snoopy bus protocol | |
US5729760A (en) | 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 | |
US5392436A (en) | Two level system bus arbitration having lower priority multiprocessor arbitration and higher priority in a single processor and a plurality of bus masters arbitration | |
US6219745B1 (en) | System and method for entering a stream read buffer mode to store non-cacheable or block data | |
US5829027A (en) | Removable processor board having first, second and third level cache system for use in a multiprocessor computer system | |
KR100667999B1 (ko) | 버스 마스터 디바이스로 컴퓨터 시스템에서의 전력을감소시키는 방법 | |
JPH0322056A (ja) | マルチ・バス・マイクロコンピユータ・システム | |
US5765195A (en) | Method for distributing interprocessor interrupt requests via cache memory coherency mechanisms | |
US5809534A (en) | Performing a write cycle to memory in a multi-processor system | |
US5596717A (en) | Four state token passing alignment fault state circuit for microprocessor address misalignment fault generation | |
JP2004062910A (ja) | マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法 | |
CA2130407A1 (en) | Store in cache having direct slave interface | |
US5737755A (en) | System level mechanism for invalidating data stored in the external cache of a processor in a computer system | |
US20020129209A1 (en) | Multiprocessor system snoop scheduling mechanism for limited bandwidth snoopers | |
JPH054710B2 (ja) | ||
US20030074506A1 (en) | Extending processors from two-way to four-way configuration | |
JPH0217563A (ja) | 共有メモリの初期化方法 |