JPH09198362A - アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法 - Google Patents
アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法Info
- Publication number
- JPH09198362A JPH09198362A JP954796A JP954796A JPH09198362A JP H09198362 A JPH09198362 A JP H09198362A JP 954796 A JP954796 A JP 954796A JP 954796 A JP954796 A JP 954796A JP H09198362 A JPH09198362 A JP H09198362A
- Authority
- JP
- Japan
- Prior art keywords
- address
- conversion
- processor
- initialization
- processors
- 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
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】
【課題】マルチプロセッサの初期化処理において、複数
のプロセッサよりの各アクセスアドレスを制御すること
を可能とし、簡単な回路で複数のプロセッサの初期化処
理のスピードを向上する。 【解決手段】CPU102、103を備えたマルチプロ
セッサシステムにおいて、ROM105には、各CPU
のそれぞれに対応した初期化プログラムが、各CPUに
対して個別に割り当てられたアドレスに格納されてい
る。CPU103にはアドレス変換部104が設けら
れ、CPU103の初期化処理時のアクセスアドレスを
ROM105のCPU103に対応する初期化プログラ
ムの格納されたアドレスに変換する。アドレス変換部1
04は、当該マルチプロセッサシステムの初期化の開始
時にRESET信号によってアクセスアドレスの変換処
理の実行を開始し、CPU103よりの信号によって変
換処理を停止する。
のプロセッサよりの各アクセスアドレスを制御すること
を可能とし、簡単な回路で複数のプロセッサの初期化処
理のスピードを向上する。 【解決手段】CPU102、103を備えたマルチプロ
セッサシステムにおいて、ROM105には、各CPU
のそれぞれに対応した初期化プログラムが、各CPUに
対して個別に割り当てられたアドレスに格納されてい
る。CPU103にはアドレス変換部104が設けら
れ、CPU103の初期化処理時のアクセスアドレスを
ROM105のCPU103に対応する初期化プログラ
ムの格納されたアドレスに変換する。アドレス変換部1
04は、当該マルチプロセッサシステムの初期化の開始
時にRESET信号によってアクセスアドレスの変換処
理の実行を開始し、CPU103よりの信号によって変
換処理を停止する。
Description
【0001】
【発明の属する技術分野】本発明はマルチプロセッサシ
ステムとその制御方法に関し、特にアドレス変換方法及
び装置に関するものである。
ステムとその制御方法に関し、特にアドレス変換方法及
び装置に関するものである。
【0002】
【従来の技術】近年、マイクロプロセッサシステムの性
能向上のために、パソコンにおいてもマルチプロセッサ
システムが使われるようになってきた。この種のマルチ
プロセッサシステムにおいては、例えば電源投入後等に
おける初期化処理では、他のプロセッサを停止させ、シ
ングルプロセッサとして動作させている。
能向上のために、パソコンにおいてもマルチプロセッサ
システムが使われるようになってきた。この種のマルチ
プロセッサシステムにおいては、例えば電源投入後等に
おける初期化処理では、他のプロセッサを停止させ、シ
ングルプロセッサとして動作させている。
【0003】この動作について、図13及び図14を用
いて説明する。図13は、一般的なマルチプロセッサシ
ステムにおけるメモリ制御構成を示すブロック図であ
る。図13において、1201,1202はCPUであ
る。1203はメモリコントローラであり、CPU12
01及びCPU1202よりのアドレス(ADR1,A
DR2)信号に基づいてRAM1204やROM120
6を制御したり、周辺機器バスへのインターフェースを
行う。1205はReset回路であり、CPU120
1やCPU1202へのReset信号を発生する。こ
の時、各CPUへ印加しているReset信号の解除の
タイミングを同時ではなく、時系列的に順次行うことに
より、初期化処理をシングルプロセッサとして動作させ
る。
いて説明する。図13は、一般的なマルチプロセッサシ
ステムにおけるメモリ制御構成を示すブロック図であ
る。図13において、1201,1202はCPUであ
る。1203はメモリコントローラであり、CPU12
01及びCPU1202よりのアドレス(ADR1,A
DR2)信号に基づいてRAM1204やROM120
6を制御したり、周辺機器バスへのインターフェースを
行う。1205はReset回路であり、CPU120
1やCPU1202へのReset信号を発生する。こ
の時、各CPUへ印加しているReset信号の解除の
タイミングを同時ではなく、時系列的に順次行うことに
より、初期化処理をシングルプロセッサとして動作させ
る。
【0004】図14は、一般的なマルチプロセッサシス
テムにおけるReset信号の印加タイミングを表す図
である。CPU1201のReset信号とその動作状
態が上段に示されており、CPU1202のReset
信号とその動作状態が下段に示されている。なお、ここ
では、CPU1201がマスタプロセッサとして機能す
るものとして説明を行う。図14に示されているよう
に、Reset信号のアサートは両CPUに対して同時
に行うが、ネゲートに関してはCPU1202の方を遅
らせるように制御される。
テムにおけるReset信号の印加タイミングを表す図
である。CPU1201のReset信号とその動作状
態が上段に示されており、CPU1202のReset
信号とその動作状態が下段に示されている。なお、ここ
では、CPU1201がマスタプロセッサとして機能す
るものとして説明を行う。図14に示されているよう
に、Reset信号のアサートは両CPUに対して同時
に行うが、ネゲートに関してはCPU1202の方を遅
らせるように制御される。
【0005】このことにより、マスタプロセッサである
CPU1201はReset信号の解除後にまず自CP
Uに関する個別の初期化を行ない、次にシステム全体の
共通なデバイスに関する初期化を行う。そして、CPU
1202に対するReset信号の解除を行う。Res
et信号のCPU1202が個別の初期化を行っている
間、CPU1201はアイドル状態となり、CPU12
02の初期化終了を待つ。両CPUの個別初期化が終了
した後、通常処理がスタートする。すなわち、この時点
からようやく、マルチプロセッサならではの高いパフォ
ーマンスを持った処理が開始される。
CPU1201はReset信号の解除後にまず自CP
Uに関する個別の初期化を行ない、次にシステム全体の
共通なデバイスに関する初期化を行う。そして、CPU
1202に対するReset信号の解除を行う。Res
et信号のCPU1202が個別の初期化を行っている
間、CPU1201はアイドル状態となり、CPU12
02の初期化終了を待つ。両CPUの個別初期化が終了
した後、通常処理がスタートする。すなわち、この時点
からようやく、マルチプロセッサならではの高いパフォ
ーマンスを持った処理が開始される。
【0006】
【発明が解決しようとする課題】上記のようにマルチプ
ロセッサシステムにおいて、個々のCPUが順次初期化
を行う場合、初期化及びその他の処理に関してマルチプ
ロセッサならではの処理のオーバーヘッドが発生する。
このため、当該マルチプロセッサのCPU数と同じ個数
のシングルプロセッサを順次初期化処理するよりも余計
に初期化時間が必要となり、不合理であった。
ロセッサシステムにおいて、個々のCPUが順次初期化
を行う場合、初期化及びその他の処理に関してマルチプ
ロセッサならではの処理のオーバーヘッドが発生する。
このため、当該マルチプロセッサのCPU数と同じ個数
のシングルプロセッサを順次初期化処理するよりも余計
に初期化時間が必要となり、不合理であった。
【0007】また、各プロセッサごとに独立したROM
を用意して、初期化を並行して行う方法も考えられる
が、複数のROMを実装すると共にチップセレクト信号
等の制御回路が必要となり、実装量の増大化を招き、コ
スト的にも不利となり、実用的ではない。
を用意して、初期化を並行して行う方法も考えられる
が、複数のROMを実装すると共にチップセレクト信号
等の制御回路が必要となり、実装量の増大化を招き、コ
スト的にも不利となり、実用的ではない。
【0008】また、同時に初期化を行わせる場合、1つ
のROMにその初期化プログラムが格納してあると、各
プロセッサのスタートするアドレスが同一であるため
に、初期化プログラムが複雑となる。
のROMにその初期化プログラムが格納してあると、各
プロセッサのスタートするアドレスが同一であるため
に、初期化プログラムが複雑となる。
【0009】さらに、上記従来のマルチプロセッサにお
いては、CPU1201がマスタプロセッサであり、C
PU1201が故障すると当該システム全体が動作しな
くなってしまう。すなわち、従来のマルチプロセッサシ
ステムでは、各プロセッサの実行する役割が固定的であ
るために、フォールトトレラント性が悪くなってしまう
という問題がある。
いては、CPU1201がマスタプロセッサであり、C
PU1201が故障すると当該システム全体が動作しな
くなってしまう。すなわち、従来のマルチプロセッサシ
ステムでは、各プロセッサの実行する役割が固定的であ
るために、フォールトトレラント性が悪くなってしまう
という問題がある。
【0010】本発明は上記の問題に鑑みてなされたもの
であり、マルチプロセッサの初期化処理において、複数
のプロセッサよりの各アクセスアドレスを制御すること
を可能とし、簡単な回路で複数のプロセッサの初期化処
理のスピードを向上するアドレス変換方法及び装置及び
マルチプロセッサシステム及びその制御方法を提供する
ことを目的とする。
であり、マルチプロセッサの初期化処理において、複数
のプロセッサよりの各アクセスアドレスを制御すること
を可能とし、簡単な回路で複数のプロセッサの初期化処
理のスピードを向上するアドレス変換方法及び装置及び
マルチプロセッサシステム及びその制御方法を提供する
ことを目的とする。
【0011】また、本発明の他の目的は、初期化処理時
において各プロセッサの診断を行い、その診断結果によ
って各プロセッサの役割を決定することを可能とし、フ
ォールトトレラント性を向上することにある。
において各プロセッサの診断を行い、その診断結果によ
って各プロセッサの役割を決定することを可能とし、フ
ォールトトレラント性を向上することにある。
【0012】
【課題を解決するための手段】上記の目的を達成するた
めの本発明のアドレス変換装置は、例えば以下の構成を
備える。すなわち、複数のプロセッサを備えたマルチプ
ロセッサシステムにおけるアドレス変換装置であって、
前記複数のプロセッサのそれぞれに対応して設けられ、
各プロセッサのアドレスを変換する変換手段と、前記マ
ルチプロセッサシステムの初期化の開始に際して、前記
変換手段によるアクセスアドレスの変換動作を開始する
開始手段と、前記複数のプロセッサにより、対応する変
換手段の変換動作を停止する停止手段とを備える。
めの本発明のアドレス変換装置は、例えば以下の構成を
備える。すなわち、複数のプロセッサを備えたマルチプ
ロセッサシステムにおけるアドレス変換装置であって、
前記複数のプロセッサのそれぞれに対応して設けられ、
各プロセッサのアドレスを変換する変換手段と、前記マ
ルチプロセッサシステムの初期化の開始に際して、前記
変換手段によるアクセスアドレスの変換動作を開始する
開始手段と、前記複数のプロセッサにより、対応する変
換手段の変換動作を停止する停止手段とを備える。
【0013】また、好ましくは、前記変換手段は、対応
するプロセッサからのアクセスアドレスを構成するビッ
トの一部を所定の値に置換して出力する。例えばセレク
タ等を用いて変換手段を構成することが可能となり、構
成が簡素化される。
するプロセッサからのアクセスアドレスを構成するビッ
トの一部を所定の値に置換して出力する。例えばセレク
タ等を用いて変換手段を構成することが可能となり、構
成が簡素化される。
【0014】また、好ましくは、前記変換手段による前
記置換の有無あるいは置換の内容を設定する設定手段を
さらに備える。各プロセッサによるアクセス先を変更で
きるので、柔軟なシステムが構成できる。
記置換の有無あるいは置換の内容を設定する設定手段を
さらに備える。各プロセッサによるアクセス先を変更で
きるので、柔軟なシステムが構成できる。
【0015】また、上記の目的を達成する本発明のマル
チプロセッサシステムは、複数のプロセッサを備えたマ
ルチプロセッサシステムであって、前記複数のプロセッ
サのそれぞれに対応した初期化プログラムを各プロセッ
サに対して個別に割り当てられたアドレスに格納する格
納手段と、前記複数のプロセッサのそれぞれに対応して
設けられ、各プロセッサの初期化処理時のアクセスアド
レスを前記格納手段の対応する初期化プログラムの格納
されたアドレスに変換する変換手段と、当該マルチプロ
セッサシステムの初期化の開始において前記変換手段に
よるアクセスアドレスの変換の実行を開始する開始手段
と、前記複数のプロセッサの各々の初期化処理により対
応する前記変換手段の変換動作を停止する停止手段とを
備える。
チプロセッサシステムは、複数のプロセッサを備えたマ
ルチプロセッサシステムであって、前記複数のプロセッ
サのそれぞれに対応した初期化プログラムを各プロセッ
サに対して個別に割り当てられたアドレスに格納する格
納手段と、前記複数のプロセッサのそれぞれに対応して
設けられ、各プロセッサの初期化処理時のアクセスアド
レスを前記格納手段の対応する初期化プログラムの格納
されたアドレスに変換する変換手段と、当該マルチプロ
セッサシステムの初期化の開始において前記変換手段に
よるアクセスアドレスの変換の実行を開始する開始手段
と、前記複数のプロセッサの各々の初期化処理により対
応する前記変換手段の変換動作を停止する停止手段とを
備える。
【0016】また、好ましくは、前記変換手段は、対応
するプロセッサからのアクセスアドレスを構成するビッ
トの一部を所定の値に置換して出力する。
するプロセッサからのアクセスアドレスを構成するビッ
トの一部を所定の値に置換して出力する。
【0017】また、好ましくは、前記変換手段によるア
ドレス変換の内容を設定する設定手段をさらに備える。
ドレス変換の内容を設定する設定手段をさらに備える。
【0018】また、好ましくは、前記設定手段によるア
ドレス変換の内容の設定は、前記格納手段に格納された
初期化プログラムとこれを実行するプロセッサの組を決
定するものである。各プロセッサに実行させるべき初期
化処理を設定できるので、各プロセッサの役割分担が柔
軟なマルチプロセッサシステムを提供できる。
ドレス変換の内容の設定は、前記格納手段に格納された
初期化プログラムとこれを実行するプロセッサの組を決
定するものである。各プロセッサに実行させるべき初期
化処理を設定できるので、各プロセッサの役割分担が柔
軟なマルチプロセッサシステムを提供できる。
【0019】また、好ましくは、前記複数のプロセッサ
の初期化処理の実行中に、各プロセッサが正常に動作す
るか否かを診断する診断手段と、前記診断手段によって
異常と診断されたプロセッサを停止状態に保つ保持手段
とをさらに備え、前記設定手段による設定は前記診断手
段の診断結果に基づいて行われる。正常に動作するプロ
セッサを検出し、正常に動作するマルチプロセッサを用
いてシステムを起動することが可能となり、フォールト
トレラント性が向上する。
の初期化処理の実行中に、各プロセッサが正常に動作す
るか否かを診断する診断手段と、前記診断手段によって
異常と診断されたプロセッサを停止状態に保つ保持手段
とをさらに備え、前記設定手段による設定は前記診断手
段の診断結果に基づいて行われる。正常に動作するプロ
セッサを検出し、正常に動作するマルチプロセッサを用
いてシステムを起動することが可能となり、フォールト
トレラント性が向上する。
【0020】また、好ましくは、前記設定手段によって
前記変換手段の設定を終えた後に、再度初期化処理を実
行する実行手段をさらに備える。
前記変換手段の設定を終えた後に、再度初期化処理を実
行する実行手段をさらに備える。
【0021】
【発明の実施の形態】以下に添付の図面を参照して本発
明の実施の形態を説明する。
明の実施の形態を説明する。
【0022】<実施形態1>図1は実施形態1によるマ
ルチプロセッサシステムの構成を表すブロック図であ
る。同図において、101はReset回路であり、電
源ON時や使用者からのリセットスイッチ入力に応じて
Reset信号を発生する。Reset回路101から
出力されるリセット信号は、CPU102、CPU10
3、アドレス変換装置104、メモリコントローラ10
6に供給される。102,103はCPUであり、本シ
ステムはSMP(Symmetrical Multi Processor)であ
る。
ルチプロセッサシステムの構成を表すブロック図であ
る。同図において、101はReset回路であり、電
源ON時や使用者からのリセットスイッチ入力に応じて
Reset信号を発生する。Reset回路101から
出力されるリセット信号は、CPU102、CPU10
3、アドレス変換装置104、メモリコントローラ10
6に供給される。102,103はCPUであり、本シ
ステムはSMP(Symmetrical Multi Processor)であ
る。
【0023】104はアドレス変換部であり、CPU1
03よりのアクセスアドレス(ADR2)を変換して、
ADR2’としてメモリコントローラ106へ出力す
る。アドレス変換部104は、通常の使用状態において
は、CPU103からのアドレス信号をそのままメモリ
コントローラ106に伝達するが、Reset後の初期
化処理においてアドレスの変換が実行される。すなわ
ち、アドレス変換部104は、Reset回路101よ
り出力されるリセット信号によりアドレスの変換動作を
開始し、CPU103からの初期化終了信号(停止信
号)によって当該変換動作を終了する。内部構成に関し
ては図3を用いて後述する。
03よりのアクセスアドレス(ADR2)を変換して、
ADR2’としてメモリコントローラ106へ出力す
る。アドレス変換部104は、通常の使用状態において
は、CPU103からのアドレス信号をそのままメモリ
コントローラ106に伝達するが、Reset後の初期
化処理においてアドレスの変換が実行される。すなわ
ち、アドレス変換部104は、Reset回路101よ
り出力されるリセット信号によりアドレスの変換動作を
開始し、CPU103からの初期化終了信号(停止信
号)によって当該変換動作を終了する。内部構成に関し
ては図3を用いて後述する。
【0024】105はROMであり、本システムの初期
化プログラムを格納する。ここで、ROM105には、
各CPUごとの初期化プログラムのスタート番地が別々
のアドレスとなっている。106はメモリコントローラ
であり、CPU102,CPU103からのアドレス信
号をもとにROM105、RAM107、周辺機器バス
へのアクセスを実行する。107はRAMであり、本シ
ステムにおいて実行されるアプリケーションプログラム
等を格納する。
化プログラムを格納する。ここで、ROM105には、
各CPUごとの初期化プログラムのスタート番地が別々
のアドレスとなっている。106はメモリコントローラ
であり、CPU102,CPU103からのアドレス信
号をもとにROM105、RAM107、周辺機器バス
へのアクセスを実行する。107はRAMであり、本シ
ステムにおいて実行されるアプリケーションプログラム
等を格納する。
【0025】図2は実施形態1のシステムにおけるメモ
リマップを示す図である。図2の(a)は本システム全
体のメモリマップを示し、同図の如くRAM、I/O、
ROMのアドレス空間が割り当てられている。図2の
(b)はROMに割り当てられたアドレス空間を拡大し
て示している。FFF00000からFFFFFFFF
までの1MBytesがROM領域となっている。この
うちFFFFFFF0がCPU102のスタートベクタ
である。本システムに用いているCPUは、本来はこの
アドレス(FFFFFFF0)をReset後のベクタ
として使用するものとする。
リマップを示す図である。図2の(a)は本システム全
体のメモリマップを示し、同図の如くRAM、I/O、
ROMのアドレス空間が割り当てられている。図2の
(b)はROMに割り当てられたアドレス空間を拡大し
て示している。FFF00000からFFFFFFFF
までの1MBytesがROM領域となっている。この
うちFFFFFFF0がCPU102のスタートベクタ
である。本システムに用いているCPUは、本来はこの
アドレス(FFFFFFF0)をReset後のベクタ
として使用するものとする。
【0026】図2の(b)において、FFFF7FF0
は本システムのCPU103のスタートベクタである。
この番地にCPU103用の初期化プログラムの格納番
地を格納しておけば、両CPUが独自に初期化を実行す
ることが可能である。ここで、CPU103もCPU1
02と同じくスタートベクタはFFFFFFF0である
ので、アドレスの15ビット目(以後、A15とする)
をメモリコントローラ106に送らず、「0」(Lo
w)に固定にしておくことで、CPU103の初期化処
理のアクセス開始アドレスをFFFF7FF0とするこ
とができる。
は本システムのCPU103のスタートベクタである。
この番地にCPU103用の初期化プログラムの格納番
地を格納しておけば、両CPUが独自に初期化を実行す
ることが可能である。ここで、CPU103もCPU1
02と同じくスタートベクタはFFFFFFF0である
ので、アドレスの15ビット目(以後、A15とする)
をメモリコントローラ106に送らず、「0」(Lo
w)に固定にしておくことで、CPU103の初期化処
理のアクセス開始アドレスをFFFF7FF0とするこ
とができる。
【0027】図3は本実施形態1のアドレス変換部の内
部構成を示す回路図である。コントロールレジスタ30
1はReset回路101よりのReset信号により
「0」を出力する。セレクタ303は、レジスタ301
からの出力をメモリアクセス時に限ってセレクタ302
へ送る回路である。従って、Reset後のメモリアク
セス時には「0」信号をセレクタ302へ送る。セレク
タ302は、この「0」信号により、Reset時のメ
モリアクセス時にはアドレスAxに関して「0」(Lo
w)を出力すようになる。Reset後、CPU103
がソフトウェアによってコントロールレジスタに「1」
を書く(=変換回路の停止信号)ことによって、セレク
タ302は、「Ax form CPU」を選択し、CPU103
からのアドレスがそのままメモリコントローラ106に
出力されるようになる。
部構成を示す回路図である。コントロールレジスタ30
1はReset回路101よりのReset信号により
「0」を出力する。セレクタ303は、レジスタ301
からの出力をメモリアクセス時に限ってセレクタ302
へ送る回路である。従って、Reset後のメモリアク
セス時には「0」信号をセレクタ302へ送る。セレク
タ302は、この「0」信号により、Reset時のメ
モリアクセス時にはアドレスAxに関して「0」(Lo
w)を出力すようになる。Reset後、CPU103
がソフトウェアによってコントロールレジスタに「1」
を書く(=変換回路の停止信号)ことによって、セレク
タ302は、「Ax form CPU」を選択し、CPU103
からのアドレスがそのままメモリコントローラ106に
出力されるようになる。
【0028】なお、IOアクセス時には、Reset時
のアクセスであっても、セレクタ303より「1」が出
力され、セレクタ302は「Ax form CPU」を選択す
る。従って、IOアクセス時には、Reset時である
か否かに関係なく、CPU103より出力されたアドレ
スがそのままメモリコントローラ106に出力されるこ
とになる。また、初期化処理時において、IOへのアク
セスが発生しないシステムであれば、セレクタ303を
省略して、コントロールレジスタ301の出力をそのま
まセレクタ302へ入力するようにしても良い。
のアクセスであっても、セレクタ303より「1」が出
力され、セレクタ302は「Ax form CPU」を選択す
る。従って、IOアクセス時には、Reset時である
か否かに関係なく、CPU103より出力されたアドレ
スがそのままメモリコントローラ106に出力されるこ
とになる。また、初期化処理時において、IOへのアク
セスが発生しないシステムであれば、セレクタ303を
省略して、コントロールレジスタ301の出力をそのま
まセレクタ302へ入力するようにしても良い。
【0029】図4は本実施形態1の動作概要を示す図で
ある。図に示されるようにReset信号が印加される
と、同一のROM105に対して各プロセッサは別々の
アドレスでアクセスを行い、初期化処理を実行する。こ
の結果、各プロセッサはそれぞれに固有の初期化プログ
ラムの内容に従って個別初期化を行う。次にシステム全
体を分担して初期を行う分担初期化を行う。
ある。図に示されるようにReset信号が印加される
と、同一のROM105に対して各プロセッサは別々の
アドレスでアクセスを行い、初期化処理を実行する。こ
の結果、各プロセッサはそれぞれに固有の初期化プログ
ラムの内容に従って個別初期化を行う。次にシステム全
体を分担して初期を行う分担初期化を行う。
【0030】図5は、各CPUが実行する初期化処理の
手順を説明するフローチャートである。電源投入等によ
りCPUがイニシャライズされると、ステップS11に
おいて、CPUはアドレスFFFFFFF0へアクセス
し、当該番地より格納された処理を実行する。ステップ
S12では、FFFFFFF0へのアクセスの結果、初
期化プログラムの格納番地が獲得される。ここで、CP
U102では、ROM105のFFFFFFF0に書き
込まれたアドレスが獲得されるが、CPU103では、
アドレス変換部104によりFFFFFFF0がFFF
F7FF0に変換され、ROM105のFFFF7FF
0に書き込まれたアドレスが獲得される。
手順を説明するフローチャートである。電源投入等によ
りCPUがイニシャライズされると、ステップS11に
おいて、CPUはアドレスFFFFFFF0へアクセス
し、当該番地より格納された処理を実行する。ステップ
S12では、FFFFFFF0へのアクセスの結果、初
期化プログラムの格納番地が獲得される。ここで、CP
U102では、ROM105のFFFFFFF0に書き
込まれたアドレスが獲得されるが、CPU103では、
アドレス変換部104によりFFFFFFF0がFFF
F7FF0に変換され、ROM105のFFFF7FF
0に書き込まれたアドレスが獲得される。
【0031】ステップS13では、ステップS12で獲
得されたアドレスへプログラムジャンプが行われる。こ
の結果、各CPUの制御は、それぞれの初期化プログラ
ムへジャンプし、それぞれの初期化が行われることにな
る。例えば、図2のメモリマップの場合、CPU102
の初期化プログラムをFFFFF000から、CPU1
03の初期化プログラムをFFFF7000から格納し
ておけば、初期化プログラムのベクトルアドレスとして
は、CPU102、103ともにFFFFF000を格
納しておけばよいことになる。
得されたアドレスへプログラムジャンプが行われる。こ
の結果、各CPUの制御は、それぞれの初期化プログラ
ムへジャンプし、それぞれの初期化が行われることにな
る。例えば、図2のメモリマップの場合、CPU102
の初期化プログラムをFFFFF000から、CPU1
03の初期化プログラムをFFFF7000から格納し
ておけば、初期化プログラムのベクトルアドレスとして
は、CPU102、103ともにFFFFF000を格
納しておけばよいことになる。
【0032】ステップS14では、それぞのジャンプ先
に格納されている初期化プログラムを実行して、各CP
Uの初期化処理が実現される。なお、メモリコントロー
ラ106は、2つのCPUからのアクセスを調停し、両
CPUの並列処理を実現する。そして、ステップS15
ではアドレス変換部104に対してアドレス変換動作を
停止させるべく、図3のレジスタ301へ「1」を書き
込む。この結果、レジスタ301からセレクタ302へ
セレクト信号「1」が出力され、セレクタ302は「Ax
from CPU」を選択して、メモリコントローラ106へ
出力する。すなわち、CPU103よりのアドレス信号
がそのままメモリコントローラ106へ伝達されるよう
になる。
に格納されている初期化プログラムを実行して、各CP
Uの初期化処理が実現される。なお、メモリコントロー
ラ106は、2つのCPUからのアクセスを調停し、両
CPUの並列処理を実現する。そして、ステップS15
ではアドレス変換部104に対してアドレス変換動作を
停止させるべく、図3のレジスタ301へ「1」を書き
込む。この結果、レジスタ301からセレクタ302へ
セレクト信号「1」が出力され、セレクタ302は「Ax
from CPU」を選択して、メモリコントローラ106へ
出力する。すなわち、CPU103よりのアドレス信号
がそのままメモリコントローラ106へ伝達されるよう
になる。
【0033】なお、本実施形態では、図14で示した共
通初期化の部分を複数のCPUで分担し、分担初期化を
行っている。このように共通初期化を分担して初期化す
るので、共通初期化に要する時間も短縮できる。
通初期化の部分を複数のCPUで分担し、分担初期化を
行っている。このように共通初期化を分担して初期化す
るので、共通初期化に要する時間も短縮できる。
【0034】以上の説明でわかるように、実施形態1に
よれば、通常のマルチプロセッサシステムに簡単なハー
ドウェア(アドレス変換部104はセレクタおよびその
制御信号を生成するレジスタで実現可能であり、プロセ
ッサ数が増大しても負担とならない程度の規模である)
を付加することにより、マルチプロセッサシステムの各
CPUの初期化を並列に行うことが可能となり、システ
ムの立ち上げ時間の短縮等、利用者の利便性の向上を図
ることが可能である。
よれば、通常のマルチプロセッサシステムに簡単なハー
ドウェア(アドレス変換部104はセレクタおよびその
制御信号を生成するレジスタで実現可能であり、プロセ
ッサ数が増大しても負担とならない程度の規模である)
を付加することにより、マルチプロセッサシステムの各
CPUの初期化を並列に行うことが可能となり、システ
ムの立ち上げ時間の短縮等、利用者の利便性の向上を図
ることが可能である。
【0035】なお、上記説明では、2つのCPUによる
構成を説明したが、CPUの数はこれに限られるもので
はない。例えばN個のCPUを有する場合、N−1個の
CPUのそれぞれにアドレス変換部を設けて、アドレス
の変換を行う。ここで、変換されるビット数は、N個の
CPUのアクセス先を区別できるだけのビット数が必要
となる。例えば、CPUが4つあれば、2ビットが必要
となる。すなわち、上記実施形態1によれば、1つのR
OMに各CPU別の初期化プログラムを格納し、各CP
U毎に簡易な構成のアドレス変換部を設置し、Rese
t後にプロセッサが出力するアドレスを各プロセッサご
とに変換し、各プロセッサ毎に別の初期化プログラムを
実行させることが可能となる。このため、マルチプロセ
ッサシステムにおいて初期化処理を並列に動作させ、高
いスループットを得ることが可能となると共に、コスト
的にも高い競争力を得ることができる。また、ROMは
1つで済むので、コスト的にも実装面積の縮小からも有
利である。
構成を説明したが、CPUの数はこれに限られるもので
はない。例えばN個のCPUを有する場合、N−1個の
CPUのそれぞれにアドレス変換部を設けて、アドレス
の変換を行う。ここで、変換されるビット数は、N個の
CPUのアクセス先を区別できるだけのビット数が必要
となる。例えば、CPUが4つあれば、2ビットが必要
となる。すなわち、上記実施形態1によれば、1つのR
OMに各CPU別の初期化プログラムを格納し、各CP
U毎に簡易な構成のアドレス変換部を設置し、Rese
t後にプロセッサが出力するアドレスを各プロセッサご
とに変換し、各プロセッサ毎に別の初期化プログラムを
実行させることが可能となる。このため、マルチプロセ
ッサシステムにおいて初期化処理を並列に動作させ、高
いスループットを得ることが可能となると共に、コスト
的にも高い競争力を得ることができる。また、ROMは
1つで済むので、コスト的にも実装面積の縮小からも有
利である。
【0036】また、各プロセッサ固有の初期化処理が終
了すれば、アドレス変換部に対して停止信号がソフトウ
ェアによって出力され、プロセッサが本来持っているア
ドレスによってメモリへのアクセスが可能となる。この
結果、初期化以外のソフトウェアに対しては、何の影響
も及ぼさない。
了すれば、アドレス変換部に対して停止信号がソフトウ
ェアによって出力され、プロセッサが本来持っているア
ドレスによってメモリへのアクセスが可能となる。この
結果、初期化以外のソフトウェアに対しては、何の影響
も及ぼさない。
【0037】<実施形態2>図6は実施形態2によるマ
ルチプロセッサシステムの構成を表すブロック図であ
る。同図において、501はCPU監視部であり、各C
PU(502〜505)のアクティビティを監視する。
すなわち、本システムでは、CPU監視部501によ
り、各CPUの動作が正常であるかどうか判断される。
502〜505はプロセッサ(CPU)であり、各処理
を分担して実行する。
ルチプロセッサシステムの構成を表すブロック図であ
る。同図において、501はCPU監視部であり、各C
PU(502〜505)のアクティビティを監視する。
すなわち、本システムでは、CPU監視部501によ
り、各CPUの動作が正常であるかどうか判断される。
502〜505はプロセッサ(CPU)であり、各処理
を分担して実行する。
【0038】506はReset制御部であり、Res
et操作や電源投入時のリセット動作に応じて、CPU
にReset信号を印加する。また、CPU監視部50
1よりの情報に基づいて、各CPUへのResetの印
加制御を行う。すなわち、異常動作をしているCPUに
対してはReset信号を印加し続け、周りのハードウ
ェアに対して悪影響がないようにする。
et操作や電源投入時のリセット動作に応じて、CPU
にReset信号を印加する。また、CPU監視部50
1よりの情報に基づいて、各CPUへのResetの印
加制御を行う。すなわち、異常動作をしているCPUに
対してはReset信号を印加し続け、周りのハードウ
ェアに対して悪影響がないようにする。
【0039】507はアドレス変換制御部であり、CP
U監視部501から入力されるデータに基づいて、正常
なプロセッサのアドレス変換部(508〜512)が適
切なアドレスへの変換を実行するように制御する。50
8〜512はアドレス変換部であり、アドレス変換制御
部507装置からの信号に基づいて各CPUから発生す
るアドレスを変換する。アドレス変換部について、図7
を参照してさらに説明する。
U監視部501から入力されるデータに基づいて、正常
なプロセッサのアドレス変換部(508〜512)が適
切なアドレスへの変換を実行するように制御する。50
8〜512はアドレス変換部であり、アドレス変換制御
部507装置からの信号に基づいて各CPUから発生す
るアドレスを変換する。アドレス変換部について、図7
を参照してさらに説明する。
【0040】図7は実施形態2におけるアドレス変換部
を説明する図である。本実施形態2におけるアドレス変
換部は、4to1のセレクタが2bitで構成されてい
る。SEL端子にはアドレス変換制御部507からの信
号が入力され、そのbitの状態によりメモリコントロ
ーラへ出力するアドレスのA15,A14(アドレスの
15ビット目と14ビット目)をセレクタのA,B,
C,Dの入力のどれかに決定する。すなわち、CPUか
らのアドレス信号をそのまま通過させる(入力A)か、
固定的なbit“10”(入力B),“01”(入力
C),“00”(入力D)にするか決定するわけであ
る。
を説明する図である。本実施形態2におけるアドレス変
換部は、4to1のセレクタが2bitで構成されてい
る。SEL端子にはアドレス変換制御部507からの信
号が入力され、そのbitの状態によりメモリコントロ
ーラへ出力するアドレスのA15,A14(アドレスの
15ビット目と14ビット目)をセレクタのA,B,
C,Dの入力のどれかに決定する。すなわち、CPUか
らのアドレス信号をそのまま通過させる(入力A)か、
固定的なbit“10”(入力B),“01”(入力
C),“00”(入力D)にするか決定するわけであ
る。
【0041】図8は実施形態2のシステムにおけるRO
M514のメモリマップを示す図である。図8によれ
ば、CPU502はFFFFFFF0から初期化を実行
し、CPU503はFFFFBFF0から初期化を開始
し、CPU504はFFFF7FF0から初期化を開始
し、CPU505はFFFF3FF0から初期化を開始
する。従って、アドレス変換制御部507はアドレス変
換部508に対して入力Aをセレクトする旨の制御信号
を、アドレス変換部509に対して入力Bをセレクトす
る旨の制御信号を、アドレス変換部510に対して入力
Cをセレクトする旨の制御信号を、アドレス変換部51
1に対して入力Dをセレクトする旨の制御信号を出力す
る。
M514のメモリマップを示す図である。図8によれ
ば、CPU502はFFFFFFF0から初期化を実行
し、CPU503はFFFFBFF0から初期化を開始
し、CPU504はFFFF7FF0から初期化を開始
し、CPU505はFFFF3FF0から初期化を開始
する。従って、アドレス変換制御部507はアドレス変
換部508に対して入力Aをセレクトする旨の制御信号
を、アドレス変換部509に対して入力Bをセレクトす
る旨の制御信号を、アドレス変換部510に対して入力
Cをセレクトする旨の制御信号を、アドレス変換部51
1に対して入力Dをセレクトする旨の制御信号を出力す
る。
【0042】図9は図6の1部についてより詳細に表し
た図である。801はパワーオンリセット回路(POR
回路)である。なお、POR回路801は図6では省略
してある。CPU監視部501は、各プロセッサが実行
する初期化プログラムから定期的に送られてくる信号を
受信することによって各プロセッサが正常かどうかを判
断する、いわゆるウォッチドッグタイマによって各プロ
セッサの診断を行う。本実施形態の場合、組み込み型マ
イクロコントローラとそのソフトウェアにより、CPU
監視部501、RESET制御部506、アドレス変換
制御部507(図中点線で囲まれている部分)を構成し
ている。内部ソフトウェアの制御方法に関しては図11
を用いて後述する。なお、RESET制御部506は各
CPUに対して個別にRESET信号を出力し、アドレ
ス変換制御部507は各アドレス変換部に対して個別に
制御信号(各2ビット)を出力する。
た図である。801はパワーオンリセット回路(POR
回路)である。なお、POR回路801は図6では省略
してある。CPU監視部501は、各プロセッサが実行
する初期化プログラムから定期的に送られてくる信号を
受信することによって各プロセッサが正常かどうかを判
断する、いわゆるウォッチドッグタイマによって各プロ
セッサの診断を行う。本実施形態の場合、組み込み型マ
イクロコントローラとそのソフトウェアにより、CPU
監視部501、RESET制御部506、アドレス変換
制御部507(図中点線で囲まれている部分)を構成し
ている。内部ソフトウェアの制御方法に関しては図11
を用いて後述する。なお、RESET制御部506は各
CPUに対して個別にRESET信号を出力し、アドレ
ス変換制御部507は各アドレス変換部に対して個別に
制御信号(各2ビット)を出力する。
【0043】図10は本実施形態におけるReset信
号の一例を示す図である。本例の場合、CPU502と
CPU505は故障のために停止することを仮定してい
る。この場合、図10に示すように、Reset信号は
電源投入後、動作可能電圧に達すると共に、各CPUへ
印加される。その後、CPU監視部501によって各プ
ロセッサのアクティビティがチェックされる。その際、
応答のないもの、すなわち異常動作を起こしているプロ
セッサは、その後Reset信号を印加し続ける。ま
た、残りの正常なプロセッサに関しては、CPU監視部
501によってDeffect ListやCPU Address Table(後
述)に適当な値がセットされる。
号の一例を示す図である。本例の場合、CPU502と
CPU505は故障のために停止することを仮定してい
る。この場合、図10に示すように、Reset信号は
電源投入後、動作可能電圧に達すると共に、各CPUへ
印加される。その後、CPU監視部501によって各プ
ロセッサのアクティビティがチェックされる。その際、
応答のないもの、すなわち異常動作を起こしているプロ
セッサは、その後Reset信号を印加し続ける。ま
た、残りの正常なプロセッサに関しては、CPU監視部
501によってDeffect ListやCPU Address Table(後
述)に適当な値がセットされる。
【0044】図11は実施形態2におけるCPU監視部
の制御手順を示すフローチャートである。ステップS1
001はスタートである。ステップS1002では、CP
U-Addresss-Tableの初期化が行われる。CPU-Address-Ta
ble は各プロセッサがどのアドレスを実行すべきか決定
するためのテーブルであり、CPU監視部501の内部
に存在する。ステップS1003では、各プロセッサが
正常に動作しているかどうかの管理を行うためのDefect
-List の初期化を行う。そして、ステップS1004に
おいて、Reset信号が各CPUに対して出力され
る。すなわち、ステップS1002〜ステップS100
3において初期化したデータを元に各CPUを初期化す
る。
の制御手順を示すフローチャートである。ステップS1
001はスタートである。ステップS1002では、CP
U-Addresss-Tableの初期化が行われる。CPU-Address-Ta
ble は各プロセッサがどのアドレスを実行すべきか決定
するためのテーブルであり、CPU監視部501の内部
に存在する。ステップS1003では、各プロセッサが
正常に動作しているかどうかの管理を行うためのDefect
-List の初期化を行う。そして、ステップS1004に
おいて、Reset信号が各CPUに対して出力され
る。すなわち、ステップS1002〜ステップS100
3において初期化したデータを元に各CPUを初期化す
る。
【0045】ステップS1005では各CPUについ
て、Activity Checkが行われる。上述し
たように、CPU監視部501はウォッチドッグタイマ
によって各CPUの故障を判断する。すなわち、ステッ
プS1004で出力されたReset信号を元に各プロ
セッサが個別の初期化を行い、定期的にCPU監視装置
に信号を送る。CPU監視部501は、これを受信する
ことによって各プロセッサの故障判断を行う。ステップ
S1005による故障判断を終えるとステップS100
6へ進む。
て、Activity Checkが行われる。上述し
たように、CPU監視部501はウォッチドッグタイマ
によって各CPUの故障を判断する。すなわち、ステッ
プS1004で出力されたReset信号を元に各プロ
セッサが個別の初期化を行い、定期的にCPU監視装置
に信号を送る。CPU監視部501は、これを受信する
ことによって各プロセッサの故障判断を行う。ステップ
S1005による故障判断を終えるとステップS100
6へ進む。
【0046】ステップS1006では、ステップS10
05の各CPUの動作チェックの結果に基づいてDefect
-Listをセットする。続くステップS1007では、ス
テップS1005のチェックの結果NGと判断されたプ
ロセッサに対してリセット制御部506よりReset
信号をを印可し、これを保持する。これにより、故障し
ているプロセッサをロックし、システムへの影響を最小
限に抑えることができる。
05の各CPUの動作チェックの結果に基づいてDefect
-Listをセットする。続くステップS1007では、ス
テップS1005のチェックの結果NGと判断されたプ
ロセッサに対してリセット制御部506よりReset
信号をを印可し、これを保持する。これにより、故障し
ているプロセッサをロックし、システムへの影響を最小
限に抑えることができる。
【0047】ステップS1008では、ステップS10
05によるActivity Checkの結果、OK
と判断された順にCPU-Address-Tableへ登録する。従っ
て、一番最初にOKだと判断されたプロセッサにマスタ
プロセッサ的な働きを行わせるようにすることも可能で
ある。ステップS1009ではCPU-Address-Table に登
録されているプロセッサに対してReset信号を印可
し、システムの再スタートを行う。ステップS1010
は終了である。
05によるActivity Checkの結果、OK
と判断された順にCPU-Address-Tableへ登録する。従っ
て、一番最初にOKだと判断されたプロセッサにマスタ
プロセッサ的な働きを行わせるようにすることも可能で
ある。ステップS1009ではCPU-Address-Table に登
録されているプロセッサに対してReset信号を印可
し、システムの再スタートを行う。ステップS1010
は終了である。
【0048】図12は実施形態2におけるCPU-Address-
TableとDefect-Listの内容を示す図である。同図では、
各プロセッサが正常な場合と異常が起きている場合のCP
U-Address-TableとDefect-Listの内容が示されている。
TableとDefect-Listの内容を示す図である。同図では、
各プロセッサが正常な場合と異常が起きている場合のCP
U-Address-TableとDefect-Listの内容が示されている。
【0049】図12の(a)は、全部のプロセッサが正
常な場合である。この場合、Defect-Listは全てのプロ
セッサに関して正常であることを示し、CPU-Address-Ta
bleはCPU502〜505についてそれぞれA,B,
C,Dという値を示している。このテーブルの値はセレ
クタ(すなわちアドレス変換部)の選択すべき入力ポー
トを示している。この結果では各CPUが502〜50
5の順にCPU監視部501にウオッチドッグタイマの
応答を返したことになる。
常な場合である。この場合、Defect-Listは全てのプロ
セッサに関して正常であることを示し、CPU-Address-Ta
bleはCPU502〜505についてそれぞれA,B,
C,Dという値を示している。このテーブルの値はセレ
クタ(すなわちアドレス変換部)の選択すべき入力ポー
トを示している。この結果では各CPUが502〜50
5の順にCPU監視部501にウオッチドッグタイマの
応答を返したことになる。
【0050】図12の(b)はCPU502、CPU5
05が異常動作を起こした場合のDeffect-ListとCPU-Ad
dress-Tableである。CPU502及び504が故障し
ているため、Defect-ListではCPU502及び505
が異常であることが示されている。また、CPU-Address-
Tableでは、CPU502及び505が故障であるた
め、未設定を示す「−」となっている。CPU503、
504に関しては、それぞれ入力入力A及びBが設定さ
れている。
05が異常動作を起こした場合のDeffect-ListとCPU-Ad
dress-Tableである。CPU502及び504が故障し
ているため、Defect-ListではCPU502及び505
が異常であることが示されている。また、CPU-Address-
Tableでは、CPU502及び505が故障であるた
め、未設定を示す「−」となっている。CPU503、
504に関しては、それぞれ入力入力A及びBが設定さ
れている。
【0051】以上のように、上記実施形態2によれば、
一度各プロセッサ間の診断を行ってから改めて正式な処
理を行うアドレスを付加するので、フォールトトレラン
ト性の高い、高性能なシステムを安価に構築することが
可能となる。
一度各プロセッサ間の診断を行ってから改めて正式な処
理を行うアドレスを付加するので、フォールトトレラン
ト性の高い、高性能なシステムを安価に構築することが
可能となる。
【0052】すなわち、マルチプロセッサシステムの各
プロセッサが固定した役割を実行する従来のマルチプロ
セッサシステムの場合、フォールトトレラント性は悪い
ものとなる。特に初期化を集中的に行うマスタプロセッ
サが故障した場合、システム全体がダウンしてしまうこ
とになる。これにたしいて、上記実施形態2によれば、
上述したようにReset後の初期化アドレスが適切に
変更されるので、Reset後にまず各プロセッサの故
障診断を行い、正常なプロセッサのみに適当な初期化ア
ドレスを割り当てれば、上述のようなフォールトトレラ
ント性の悪化はなくなり、正常なプロセッサのみで処理
が継続されるので、合理的である。
プロセッサが固定した役割を実行する従来のマルチプロ
セッサシステムの場合、フォールトトレラント性は悪い
ものとなる。特に初期化を集中的に行うマスタプロセッ
サが故障した場合、システム全体がダウンしてしまうこ
とになる。これにたしいて、上記実施形態2によれば、
上述したようにReset後の初期化アドレスが適切に
変更されるので、Reset後にまず各プロセッサの故
障診断を行い、正常なプロセッサのみに適当な初期化ア
ドレスを割り当てれば、上述のようなフォールトトレラ
ント性の悪化はなくなり、正常なプロセッサのみで処理
が継続されるので、合理的である。
【0053】また、違う種類のプロセッサが集積してい
るマルチプロセッサの場合、Reset後のスタートベ
クタは異なるので、物理的に同一のROMに初期化プロ
グラムを納めるのが困難な場合が発生する。しかしなが
ら、本発明によれば、同一のROMに容易に格納でき、
便利である。例えば、2つのプロセッサを有するシステ
ムで、各々のプロセッサの本来のスタートベクタが00
000、FFFF0であるような場合、これらの初期化
プログラムを1つのROMに納めることはできない。し
かしながら、上述したようなアドレス変換処理を行っ
て、スタートベクタが00000であったプロセッサの
スタートベクタをF0000へ変換することにより、1
つのROMに容易に納めることが可能となる。
るマルチプロセッサの場合、Reset後のスタートベ
クタは異なるので、物理的に同一のROMに初期化プロ
グラムを納めるのが困難な場合が発生する。しかしなが
ら、本発明によれば、同一のROMに容易に格納でき、
便利である。例えば、2つのプロセッサを有するシステ
ムで、各々のプロセッサの本来のスタートベクタが00
000、FFFF0であるような場合、これらの初期化
プログラムを1つのROMに納めることはできない。し
かしながら、上述したようなアドレス変換処理を行っ
て、スタートベクタが00000であったプロセッサの
スタートベクタをF0000へ変換することにより、1
つのROMに容易に納めることが可能となる。
【0054】以上説明したように、上記実施形態1によ
れば、通常のマルチプロセッサシステムにセレクタ等の
少量のハードウェアを追加するだけで、Reset後の
処理時間の短縮を図ることができる。本方法はプロセッ
サ数が増大してもReset信号そのものを加工してい
ないので、プロセッサ間の同期を取る必要もなく簡便な
方法である。
れば、通常のマルチプロセッサシステムにセレクタ等の
少量のハードウェアを追加するだけで、Reset後の
処理時間の短縮を図ることができる。本方法はプロセッ
サ数が増大してもReset信号そのものを加工してい
ないので、プロセッサ間の同期を取る必要もなく簡便な
方法である。
【0055】また、上記実施形態2によれば、一度各プ
ロセッサ間の診断を行ってから改めて正式な処理を行う
アドレスを付加するので、フォールトトレラント性の高
い、高性能なシステムを安価に構築することが可能であ
る。
ロセッサ間の診断を行ってから改めて正式な処理を行う
アドレスを付加するので、フォールトトレラント性の高
い、高性能なシステムを安価に構築することが可能であ
る。
【0056】また、本発明は、複数の機器から構成され
るシステムに適用しても、1つの機器からなる装置に適
用してもよい。また、本発明はシステム或は装置にプロ
グラムを供給することによって達成される場合にも適用
できることは言うまでもない。この場合、本発明に係る
プログラムを格納した記憶媒体が、本発明を構成するこ
とになる。そして、該記憶媒体からそのプログラムをシ
ステム或は装置に読み出すことによって、そのシステム
或は装置が、予め定められた仕方で動作する。
るシステムに適用しても、1つの機器からなる装置に適
用してもよい。また、本発明はシステム或は装置にプロ
グラムを供給することによって達成される場合にも適用
できることは言うまでもない。この場合、本発明に係る
プログラムを格納した記憶媒体が、本発明を構成するこ
とになる。そして、該記憶媒体からそのプログラムをシ
ステム或は装置に読み出すことによって、そのシステム
或は装置が、予め定められた仕方で動作する。
【0057】
【発明の効果】以上説明したように、本発明によれば、
マルチプロセッサの初期化処理において、複数のプロセ
ッサよりの各アクセスアドレスを制御することが可能と
なり、簡単な回路で複数のプロセッサの初期化処理のス
ピードを向上できる。
マルチプロセッサの初期化処理において、複数のプロセ
ッサよりの各アクセスアドレスを制御することが可能と
なり、簡単な回路で複数のプロセッサの初期化処理のス
ピードを向上できる。
【0058】また、本発明によれば、初期化処理時にお
いて各プロセッサの診断を行い、その診断結果によって
各プロセッサの役割を決定することが可能となり、シス
テムのフォールトトレラント性が向上する。
いて各プロセッサの診断を行い、その診断結果によって
各プロセッサの役割を決定することが可能となり、シス
テムのフォールトトレラント性が向上する。
【0059】
【図1】実施形態1によるマルチプロセッサシステムの
構成を表すブロック図である。
構成を表すブロック図である。
【図2】実施形態1のシステムにおけるメモリマップを
示す図である。
示す図である。
【図3】本実施形態1のアドレス変換部の内部構成を示
す回路図である。
す回路図である。
【図4】本実施形態1の動作概要を示す図である。
【図5】各CPUが実行する初期化処理の手順を説明す
るフローチャートである。
るフローチャートである。
【図6】実施形態2によるマルチプロセッサシステムの
構成を表すブロック図である。
構成を表すブロック図である。
【図7】実施形態2におけるアドレス変換部を説明する
図である。
図である。
【図8】実施形態2のシステムにおけるROM514の
メモリマップを示す図である。
メモリマップを示す図である。
【図9】図6の構成の1部をより詳細に表した図であ
る。
る。
【図10】本実施形態におけるReset信号の一例を
示す図である。
示す図である。
【図11】実施形態2におけるCPU監視部の制御手順
を示すフローチャートである。
を示すフローチャートである。
【図12】実施形態2におけるCPU-Address-TableとDef
ect-Listの内容を示す図である。
ect-Listの内容を示す図である。
【図13】一般的なマルチプロセッサシステムにおける
メモリ制御構成を示すブロック図である。
メモリ制御構成を示すブロック図である。
【図14】一般的なマルチプロセッサシステムにおける
Reset信号の印加タイミングを表す図である。 101 RESET回路 102、103 CPU 104 アドレス変換部 105 ROM 106 メモリコントローラ 107 RAM
Reset信号の印加タイミングを表す図である。 101 RESET回路 102、103 CPU 104 アドレス変換部 105 ROM 106 メモリコントローラ 107 RAM
Claims (16)
- 【請求項1】 複数のプロセッサを備えたマルチプロセ
ッサシステムにおけるアドレス変換装置であって、 前記複数のプロセッサのそれぞれに対応して設けられ、
各プロセッサのアドレスを変換する変換手段と、 前記マルチプロセッサシステムの初期化の開始に際し
て、前記変換手段によるアクセスアドレスの変換動作を
開始する開始手段と、 前記複数のプロセッサにより、対応する変換手段の変換
動作を停止する停止手段とを備えることを特徴とするア
ドレス変換装置。 - 【請求項2】 前記変換手段は、対応するプロセッサか
らのアクセスアドレスを構成するビットの一部を所定の
値に置換して出力することを特徴とする請求項1に記載
のアドレス変換装置。 - 【請求項3】 前記変換手段による前記置換の有無ある
いは置換の内容を設定する設定手段をさらに備えること
を特徴とする請求項2に記載のアドレス変換装置。 - 【請求項4】 複数のプロセッサと、該複数のプロセッ
サのそれぞれに対応して設けられ、各プロセッサのアド
レスを変換する変換手段とを有したマルチプロセッサシ
ステムにおけるアドレス変換方法であって、 前記マルチプロセッサシステムの初期化の開始に際し
て、前記変換工程によるアクセスアドレスの変換動作を
開始する開始工程と、 前記複数のプロセッサにより、対応する変換工程の変換
動作を停止する停止工程とを備えることを特徴とするア
ドレス変換方法。 - 【請求項5】 複数のプロセッサを備えたマルチプロセ
ッサシステムであって、 前記複数のプロセッサのそれぞれに対応した初期化プロ
グラムを各プロセッサに対して個別に割り当てられたア
ドレスに格納する格納手段と、 前記複数のプロセッサのそれぞれに対応して設けられ、
各プロセッサの初期化処理時のアクセスアドレスを前記
格納手段の対応する初期化プログラムの格納されたアド
レスに変換する変換手段と、 当該マルチプロセッサシステムの初期化の開始において
前記変換手段によるアクセスアドレスの変換の実行を開
始する開始手段と、 前記複数のプロセッサの各々の初期化処理により対応す
る前記変換手段の変換動作を停止する停止手段とを備え
ることを特徴とするマルチプロセッサシステム。 - 【請求項6】 前記変換手段は、対応するプロセッサか
らのアクセスアドレスを構成するビットの一部を所定の
値に置換して出力することを特徴とする請求項5に記載
のマルチプロセッサシステム。 - 【請求項7】 前記変換手段によるアドレス変換の内容
を設定する設定手段をさらに備えることを特徴とする請
求項5に記載のマルチプロセッサシステム。 - 【請求項8】 前記設定手段によるアドレス変換の内容
の設定は、前記格納手段に格納された初期化プログラム
とこれを実行するプロセッサの組を決定するものである
ことを特徴とする請求項7に記載のマルチプロセッサシ
ステム。 - 【請求項9】 前記複数のプロセッサの初期化処理の実
行中に、各プロセッサが正常に動作するか否かを診断す
る診断手段と、 前記診断手段によって異常と診断されたプロセッサを停
止状態に保つ保持手段とをさらに備え、 前記設定手段による設定は前記診断手段の診断結果に基
づいて行われることを特徴とする請求項7に記載のマル
チプロセッサシステム。 - 【請求項10】 前記設定手段によって前記変換手段の
設定を終えた後に、再度初期化処理を実行する実行手段
をさらに備えることを特徴とする請求項9に記載のマル
チプロセッサシステム。 - 【請求項11】 複数のプロセッサと、該複数のプロセ
ッサのそれぞれに対応した初期化プログラムを各プロセ
ッサに対して個別に割り当てられたアドレスに格納する
格納手段とを有するマルチプロセッサシステムの制御方
法であって、 前記複数のプロセッサのそれぞれに対応して設けられ、
各プロセッサの初期化処理時のアクセスアドレスを前記
格納工程の対応する初期化プログラムの格納されたアド
レスに変換する変換工程と、 当該マルチプロセッサシステムの初期化の開始において
前記変換工程によるアクセスアドレスの変換の実行を開
始する開始工程と、 前記複数のプロセッサの各々の初期化処理により対応す
る前記変換工程の変換動作を停止する停止工程とを備え
ることを特徴とする制御方法。 - 【請求項12】 前記変換工程は、対応するプロセッサ
からのアクセスアドレスを構成するビットの一部を所定
の値に置換して出力することを特徴とする請求項11に
記載の制御方法。 - 【請求項13】 前記変換工程による前記置換の有無あ
るいは置換の内容を設定する設定工程をさらに備えるこ
とを特徴とする請求項12に記載の制御方法。 - 【請求項14】 前記設定工程によるアドレス変換の内
容の設定は、前記格納手段に格納された初期化プログラ
ムとこれを実行するプロセッサの組を決定するものであ
ることを特徴とする請求項13に記載の制御方法。 - 【請求項15】 前記複数のプロセッサの初期化処理の
実行中に、各プロセッサが正常に動作するか否かを診断
する診断工程と、 前記診断工程によって異常と診断されたプロセッサを停
止状態に保つ保持工程とをさらに備え、 前記設定工程による設定は前記診断工程の診断結果に基
づいて行われることを特徴とする請求項13に記載の制
御方法。 - 【請求項16】 前記設定工程によって前記変換工程の
設定を終えた後に、再度初期化処理を実行する実行工程
をさらに備えることを特徴とする請求項15に記載の制
御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP954796A JPH09198362A (ja) | 1996-01-23 | 1996-01-23 | アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP954796A JPH09198362A (ja) | 1996-01-23 | 1996-01-23 | アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09198362A true JPH09198362A (ja) | 1997-07-31 |
Family
ID=11723310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP954796A Withdrawn JPH09198362A (ja) | 1996-01-23 | 1996-01-23 | アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09198362A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217591A (ja) * | 2007-03-06 | 2008-09-18 | Fuji Xerox Co Ltd | 情報処理装置、画像処理装置、画像形成装置、画像形成システム、アドレス変換処理プログラム |
JP2011524038A (ja) * | 2008-05-14 | 2011-08-25 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | 複数のプロセスからメモリ領域へのアクセスを制御する方法、及び、本方法を実現するためのメッセージメモリを備えた通信モジュール |
-
1996
- 1996-01-23 JP JP954796A patent/JPH09198362A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217591A (ja) * | 2007-03-06 | 2008-09-18 | Fuji Xerox Co Ltd | 情報処理装置、画像処理装置、画像形成装置、画像形成システム、アドレス変換処理プログラム |
JP2011524038A (ja) * | 2008-05-14 | 2011-08-25 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | 複数のプロセスからメモリ領域へのアクセスを制御する方法、及び、本方法を実現するためのメッセージメモリを備えた通信モジュール |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7149823B2 (en) | System and method for direct memory access from host without processor intervention wherein automatic access to memory during host start up does not occur | |
US7062615B2 (en) | Multi-channel memory access arbitration method and system | |
US11609874B2 (en) | System-on-chips and methods of controlling reset of system-on-chips | |
EP0818736A2 (en) | System for assigning boot strap processor in symmetric multiprocessor computer with watchdog reset | |
US20060253749A1 (en) | Real-time memory verification in a high-availability system | |
JP2004220218A (ja) | 情報処理装置 | |
GB2079997A (en) | Data processing apparatus | |
US6601165B2 (en) | Apparatus and method for implementing fault resilient booting in a multi-processor system by using a flush command to control resetting of the processors and isolating failed processors | |
EP0817998A1 (en) | Memory testing in a multiple processor computer system | |
US9372702B2 (en) | Non-disruptive code update of a single processor in a multi-processor computing system | |
CN111949320B (zh) | 提供系统数据的方法、系统及服务器 | |
US20030093510A1 (en) | Method and apparatus for enumeration of a multi-node computer system | |
JP4692912B2 (ja) | リソース割り当てシステム、及びリソース割り当て方法 | |
JP4817115B2 (ja) | コンピュータシステム、並列初期化方法、及びブートプログラム | |
JP4402624B2 (ja) | 負荷管理装置および負荷管理方法 | |
JPH09198362A (ja) | アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法 | |
JPH0855097A (ja) | データ処理システム及びそのメモリアクセス方法 | |
US7392329B2 (en) | System and method for applying an action initiated for a portion of a plurality of devices to all of the plurality of devices | |
JPH11232213A (ja) | 入出力装置におけるデータ転送方式 | |
US7478025B1 (en) | System and method to support dynamic partitioning of units to a shared resource | |
JP4853620B2 (ja) | マルチプロセッサシステムと初期立ち上げ方法およびプログラム | |
JP5970846B2 (ja) | 計算機システム及び計算機システムの制御方法 | |
JP2005173830A (ja) | コンピュータシステム及びプログラム | |
CN116662984A (zh) | 内存隔离装置以及基于内存隔离装置的多核计算系统 | |
JPH0312749A (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: 20030401 |