(57)【特許請求の範囲】
【請求項１】
ＣＰＵと、メモリと、入出力部と、
前記メモリの内容を伝送路をとおして他の装置にコピーするために送信する送信部と、他の装置のメモリの内容を伝送路をとおして前記メモリにコピーするために受信する受信部からなるメモリ転写部と、
前記ＣＰＵと前記メモリと前記入出力部と前記メモリ転写部とを互いに接続するバスとを備える情報処理装置において、
前記ＣＰＵが前記入出力部をアクセスするバスと、前記メモリ転写部が前記メモリをアクセスするバスを分離することができるバススイッチ手段と、メモリ転写を複数の転送単位に分割して転送する手段と、転送対象のメモリ領域を少量の優先領域と大量の通常領域とに分割し、前記優先領域と前記通常領域とを予め定めた転送単位ごとに交互に転写する手段を有し、前記優先領域は転写周期を短く、前記通常領域は転写周期を長く制御することを特徴とするメモリ転写機能を有する情報処理装置。
【請求項２】
ＣＰＵと、メモリと、入出力部と、
前記メモリの内容を伝送路をとおして他の装置にコピーするために送信する送信部と、他の装置のメモリの内容を伝送路をとおして前記メモリにコピーするために受信する受信部からなるメモリ転写部と、
前記ＣＰＵと前記メモリと前記入出力部と前記メモリ転写部とを互いに接続するバスとを備える情報処理装置において、
前記ＣＰＵが前記入出力部をアクセスするバスと、前記メモリ転写部が前記メモリをアクセスするバスを分離することができるバススイッチ手段と、メモリ転写を複数の転送単位に分割して転送する手段と、転送対象のメモリ領域を少量の優先領域と大量の通常領域とに分割し、前記転送単位内に、前記優先領域のデータと前記通常領域のデータとをある比率で埋めこむ手段を有し、前記優先領域は転写周期を短く、前記通常領域は転写周期を長く制御することを特徴とするメモリ転写機能を有する情報処理装置。
【請求項３】
請求項１又は２記載の装置において、
前記メモリ転写部が前記メモリをアクセスするとき、前記バススイッチ手段により前記バスの分離を行う制御手段を備えたことを特徴とするメモリ転写機能を有する情報処理装置。
【請求項４】
請求項１又は２記載の装置において、
前記バススイッチ手段と協慟し、前記ＣＰＵの前記入出力部へのアクセスと前記メモリ転写部の前記メモリへのアクセスとを並列に実行可能とする制御手段を備えたことを特徴とするメモリ転写機能を有する情報処理装置。
【請求項５】
請求項１又は２の装置において、前記バススイッチ手段と協慟し、前記メモリ転写部の前記メモリへのアクセス要求が発生したとき、該アクセス要求を、同時に発生している前記ＣＰＵの前記メモリへのアクセス要求または前記入出力部の前記メモリへのアクセス要求より優先する制御手段を備えたことを特徴とするメモリ転写機能を有する情報処理装置。
【請求項６】
請求項１〜５のいずれかに記載の装置において
前記メモリ転写部内に転写用メモリを含まず、前記メモリ内にメモリ転写用の領域を備えたことを特徴とするメモリ転写機能を有する情報処理装置。
【請求項７】
請求項１〜６のいずれかに記載の装置において、
前記他の装置から受信したデータを格納する前記メモリ上のメモリ転写用領域を２面設け、前記メモリ転写部が転写を正常終了したとき、前記メモリ転写部がアクセスする面を当該正常終了した面から他方の面へ切り替える手段を有することを特徴とするメモリ転写機能を有する情報処理装置。
【請求項８】
請求項７記載の装置において、
前記転写部からアクセスする面と前記ＣＰＵからアクセスする面が異なる面になるように制御する手段を有することを特徴とするメモリ転写機能を有する情報処理装置。
【請求項９】
請求項７または８記載の装置において、
前記メモリ転写部が転写を正常終了したとき、前記メモリ転写部がアクセスする面と前記ＣＰＵがアクセスする面とを交代させることを特徴としたメモリ転写機能を有する情報処理装置。
【請求項１０】
請求項９記載の装置において、
前記メモリ転写部が転写を異常終了したとき、前記メモリ転写部がアクセスする面と前記ＣＰＵがアクセスする面とを交代させないことを特徴としたメモリ転写機能を有する情報処理装置。
【請求項１１】
請求項１〜１０のいずれかに記載の装置を３つで構成した３重系情報処理装置において、
各装置内に、他の装置のメモリの内容を前記伝送路をとおして前記メモリにコピーする受信部を２つ持つメモリ転写部を内蔵し、
３つの装置Ａ、Ｂ、Ｃの間で、ＡからＢ、ＡからＣ、ＢからＡ、ＢからＣ、ＣからＡ、ＣからＢに直接メモリ転写できる伝送路を有する３重系情報処理装置。
【請求項１２】
請求項第１〜１０のいずれかに記載の装置を２つで構成した２重系情報処理装置において、
各装置内に、他の装置のメモリの内容を前記伝送路をとおして前記メモリにコピーする受信部を２つ持つメモリ転写部を内蔵し、２つの装置Ａ、Ｂ間でＡからＢを２本、ＢからＡを２本と、伝送路を２重化して有する２重系情報処理装置。
【請求項１３】
請求項１〜１０のいずれかに記載の装置において、
異なる入出力に接続され異なった処理を行なう複数の装置の間で共有されるメモリ領域を、前記メモリ転写部の転写対象領域として割り当てることを特徴とするメモリ転写機能を有する情報処理装置。
【請求項１４】
請求項１〜１０のいずれかに記載の装置において、
前記転送単位に転写領域の先頭を示す通信制御情報を埋めこむ手段を有し、受信部が受信中に通信に失敗したとき、次の前記通信制御情報を検出するまで転写を停止する手段と、次の前記通信制御情報を検出したとき転写を開始する手段を有することを特徴としたメモリ転写機能を有する情報処理装置。
【請求項１５】
請求項１又は２記載の装置において、前記ＣＰＵと前記メモリと前記入出力部と前記メモリ転写部とを互いに接続するバスは、前記ＣＰＵと前記入出力部とを接続するプロセッサバスと、該プロセッサバスと前記メモリとを接続するメモリバスと、該メモリバスと前記メモリ転写部とを接続するメモリ転写部バスとを含み、該メモリ転写部バスと前記メモリバスとの接続点と、前記プロセッサバスと前記メモリバスとの接続点との間に前記バススイッチ手段を配置したことを特徴とするメモリ転写機能を有する情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は情報処理計算機の技術分野に属し、特に、情報処理計算機を高信頼化するための装置多重化等に用いられるメモリ転写機能を有する情報処理装置に関する。
【０００２】
【従来の技術】
交通、プラント制御、自動車などで用いられる制御用コントローラは、高い信頼性が要求される。このような高信頼システムでは、装置を多重化し、装置の出力が一致するか否かを調べ、装置が故障していないことを確認する方法がとられる。多重系を構成するにはさまざまな方法があるが、比較的簡便な方法としてメモリ転写方式がある。メモリ転写方式による多重化方式は、信頼性の必要とされるデータをある定められた転写領域に書き込むと、これを各系が継続的に転写しあう。各系は、転写領域に転写された最新データが系間で一致しているかチェックを行って制御が正しいことを確認する。
【０００３】
図２にメモリ転写方式の従来例を示す。多重化システムは装置２００を複数個互いに接続することによって構成される。装置２００は、ＣＰＵ２０１、プロセッサバス２０２、ブリッジ２０３、メモリ２０５、システムバス２０６、メモリ転写部２０７、入出力部２１１〜２１３、伝送路２２０から成る。さらに、メモリ転写部２０７は、メモリ転写用ＣＰＵ２０８、メモリ転写用メモリ２０９、送信部２３１、受信部２３２を含んでいる。ブリッジ２０３は、プロセッサバス２０２を介してＣＰＵ２０１及びメモリ２０５と結ばれ、システムバス２０６を介して入出力部２１１〜２１３、及びメモリ転写部２０７と結ばれている。
【０００４】
次に装置２００の動作を説明する。ＣＰＵ２０１は、プロセッサバス２０２を通してメモリ２０５を読み書きする。また、ＣＰＵ２０１は、プロセッサバス２０２、ブリッジ２０３、システムバス２０６を通して入出力部２１１〜２１３または、メモリ転写部２０７内のメモリ転写用領域２０９を読み書きする。さらに、メモリ転写部２０７は、システムバス２０６、ブリッジ２０３、プロセッサバス２０２を通してメモリ２０５を読み書きする。メモリ転写部２０７は、メモリ転写用プロトコルの生成、エラー時の再送などをＣＰＵ２０８が行い、送信部２３１がメモリ転写用メモリ２０９から他の装置のメモリへ伝送路２２０を用いて送信する。また、受信部２３２が他の装置のメモリの内容を伝送路２２０を用いて受信して、メモリ転写用メモリ２０９に書き込むという動作を継続的におこなう。
【０００５】
以上のように、従来は、メモリ転写部を、システムバスにつなぎ、ＣＰＵボードと分かれた入出力ボード上に置くのが普通であった。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記従来例では、他の入出力部がつながっているシステムバスにメモリ転写部がつながっているため、ＣＰＵボードと分かれた入出力ボード上にメモリ転写部を置かねばならず、メモリ転写用のメモリを入出力部として扱う特別なメモリとして数百〜数千バイト持たねばならず、これが高価になっていた。
【０００７】
また、メモリ転写用のメモリを主メモリ上に割り当てることも考えられるが、他の入出力部がつながっているシステムバスにメモリ転写部がつながっているため、ＣＰＵによる入出力部のアクセスとメモリ転写部によるメモリのアクセスがシステムバス上でぶつかり、定常的にメモリ上の転写領域をアクセスしなければならないメモリ転写部が、なかなかシステムバスのバス権をとりにくいという問題が生じる。通常、ＣＰＵによる入出力部のアクセスは数百サイクル〜数千サイクルに及ぶため、この間システムバスのバス権がとれない状態にそなえて、メモリ転写部の中に数十キロバイトのメモリ転写用の受信バッファを設けバッファリングするということをおこなうことが必要となり、メモリ転写部の論理規模が大きくなり、やはりメモリ転写部が高価なものとなる。
【０００８】
さらに、メモリ転写部のＣＰＵは、メモリ転写用プロトコル、エラー時の再送など通信にかかわる複雑な処理をしており、メモリ転写部が高価なものとなる問題があった。
【０００９】
本発明の目的は、メモリ転写用のメモリを主メモリに置き、その時に生ずるバスの衝突を防ぐ仕掛けを備えることによってメモリ転写部内に設ける受信バッファを削減し、メモリ転写方式を簡単化することでＣＰＵが行っていた複雑な処理を省き、低価格かつ高信頼性の情報処理装置を提供することにある。
【００１０】
【課題を解決するための手段】
本発明は、バスの衝突を防ぐ仕掛けを備えることによってメモリ転写部内に設けるバッファを削減し、メモリ転写方式を簡単化することでＣＰＵが行っていた複雑な処理を省き、低価格の高信頼情報処理装置を構成するという課題を解決するものである。
【００１１】
すなわち、メモリ転写部内に設けるバッファを削減し低価格化を図る課題は、ＣＰＵと、メモリと、入出力部と、メモリの内容を伝送路をとおして他の装置にコピーするために送信する送信部と、他の装置のメモリの内容を伝送路をとおして前記メモリにコピーするために受信する受信部からなるメモリ転写部と、ＣＰＵとメモリと入出力部とメモリ転写部とを互いに接続するバスとを備えた情報処理装置において、ＣＰＵが入出力部をアクセスするバスと、メモリ転写部がメモリをアクセスするバスを分離できるようバススイッチ手段を設けることにより達成できる。
【００１２】
この装置において、前記ＣＰＵと前記メモリと前記入出力部と前記メモリ転写部とを互いに接続するバスは、例えば、前記ＣＰＵと前記入出力部とを接続するプロセッサバスと、該プロセッサバスと前記メモリとを接続するメモリバスと、該メモリバスと前記メモリ転写部とを接続するメモリ転写部バスとを含み、該メモリ転写部バスと前記メモリバスとの接続点と、前記プロセッサバスと前記メモリバスとの接続点との間に前記バススイッチ手段を配置することができる。これにより、メモリ転写部がメモリ転写部バスを介してつながるメモリバス部分をプロセッサバスから分断することができる。
【００１３】
このバススイッチ手段と協慟する制御手段により、前記ＣＰＵの前記入出力部へのアクセスと前記メモリ転写部の前記メモリへのアクセスとを並列に実行可能とする。
【００１４】
あるいは、前記バススイッチ手段と協慟する制御手段により、前記メモリ転写部の前記メモリへのアクセス要求が発生したとき、このアクセス要求を、同時に発生している前記ＣＰＵの前記メモリへのアクセス要求または前記入出力部の前記メモリへのアクセス要求より優先することができる。
【００１５】
本装置は、前記メモリ転写部内に転写用メモリを含まず、前記メモリ内にメモリ転写用の領域を備えることにより、メモリ転写部の論理規模を縮小し、メモリ転写部を安価なものとすることができる。
【００１６】
また、制御の簡単化による小型化を解決するために、前記他の装置から受信したデータを格納する前記メモリ上のメモリ転写用領域を２面設け、前記メモリ転写部が転写を正常終了したとき、前記メモリ転写部がアクセスする面を当該正常終了した面から他方の面へ切り替える手段を有してもよい。
【００１７】
この装置において、前記転写部からアクセスする面と前記ＣＰＵからアクセスする面が異なる面になるように制御する手段を設けることが好ましい。
【００１８】
あるいは、前記メモリ転写部が転写を正常終了したとき、前記メモリ転写部がアクセスする面と前記ＣＰＵがアクセスする面とを交代させることが好ましい。
【００１９】
前記メモリ転写部が転写を異常終了したとき、前記メモリ転写部がアクセスする面と前記ＣＰＵがアクセスする面とを交代させないことが好ましい。
【００２０】
転写対象のメモリ領域を、少量の優先領域と大量の通常領域とに分割して転送する手段を有するようにしてもよい。このように、優先領域と通常領域のデータに優先度の軽重をつけることにより、時間的にクリティカルなデータと、比較的時間に余裕のあるデータとを有効に区別し、後者のデータを必要以上に高頻度で転写することを防止することができる。
【００２１】
例えば、メモリ転写を複数の転送単位に分割して転送する手段と、前記少量の優先領域と前記大量の通常領域とを予め定めた転送単位ごとに交互に転写する手段を有し、前記優先領域は転写周期を短く、前記通常領域は転写周期を長く制御することができる。すなわち、少量の優先領域の転送単位の個数は、大量の通常領域の転送単位の個数はよりも少ないので、交互に転写すれば少量の優先領域の方が転送周期が短くなる。
【００２２】
あるいは、メモリ転写を複数の転送単位に分割して転送する手段と、前記転送単位内に、前記優先領域のデータと前記通常領域のデータとをある比率で埋めこむ手段を有し、前記優先領域は転写周期を短く、前記通常領域は転写周期を長く制御することも可能である。この場合も各転送単位に埋め込むべきデータの個数は、優先領域の方が少ないので優先領域の転写周期が短くなる。
【００２３】
以上のいずれかの装置を３つ組み合わせることにより、３重系情報処理装置を構成することができる。この３重系情報処理装置では、各装置内に、他の装置のメモリの内容を前記伝送路をとおして前記メモリにコピーする受信部を２つ持つメモリ転写部を内蔵し、３つの装置Ａ、Ｂ、Ｃの間で、ＡからＢ、ＡからＣ、ＢからＡ、ＢからＣ、ＣからＡ、ＣからＢに直接メモリ転写できる伝送路を設ける。
【００２４】
あるいは、上記いずれかの装置を２つ組み合わせることにより、２重系情報処理装置を構成することができる。この２重系情報処理装置では、各装置内に、他の装置のメモリの内容を前記伝送路をとおして前記メモリにコピーする受信部を２つ持つメモリ転写部を内蔵し、２つの装置Ａ、Ｂ間でＡからＢを２本、ＢからＡを２本と、伝送路を２重化して有する。
【００２５】
上記の情報処理装置において、各装置は、同一の処理を行うことができるが、異なる入出力に接続され異なった処理を行なう複数の装置の間で共有されるメモリ領域を、前記メモリ転写部の転写対象領域として割り当てることも可能である。
【００２６】
さらに、上記の情報処理装置において、メモリ転写を複数の転送単位に分割して行う手段と、前記転送単位に転写領域の先頭を示す通信制御情報を埋めこむ手段を有し、受信部が受信中に通信に失敗したとき、次の前記通信制御情報を検出するまで転写を停止する手段と、次の前記通信制御情報を検出したとき転写を開始する手段を設けてもよい。これにより、例えば、受信側の同期がずれて受信が不可能になった場合にも容易に受信をやり直すことができる。すなわち、きわめて簡便な通信プロトコルで同期化が行える。
【００２７】
【発明の実施の形態】
以下、本発明の実施の形態を図面に従って説明する。
【００２８】
図１に、メモリ転写機能を有する情報処理装置の実施の形態の構成を示す。
【００２９】
装置１００は、 ＣＰＵ１０１、プロセッサバス１０２、ブリッジ１０３、メモリバス１０４、メモリ１０５、システムバス１０６、メモリ転写部１０７、バススイッチ１０８、メモリ転写部バス１１０、入出力部１１１〜１１３、送信用伝送路１２１、受信用伝送路１２２、１２３、バス制御１５０から成る。入出力部は、本実施の形態ではたまたま例として３つ備えているが、それ以上またはそれ以下でもよい。さらに、メモリ１０５は、メモリ転写用領域１０９を含んでいる。メモリ転写部１０７は、送信部１３１、受信部１３２、１３３を含んでいる。ブリッジ１０３は、プロセッサバス１０２とシステムバス１０６を接続するものであり、バススイッチ１０８は、プロセッサバス１０２とメモリバス１０４を接続したり切ったりするものである。
【００３０】
図２１に、バス制御部１５０と他の各部との接続関係を示す。バス制御部１５０は、ＣＰＵ１０１からＣＰＵメモリアクセス要求１０１ｃを受け、ＣＰＵバス使用許可１５０ｃを返す。ブリッジ１０３からは入出力部メモリアクセス要求１０３ｂを受け、入出力部バス使用許可１５０ｂを返す。メモリ転写部１０７からはメモリ停車部メモリアクセス要求１０７ａを受け、メモリ転写部バス使用許可１５０ａを返す。また、バススイッチ１０８に対してはバススイッチ開閉信号１５０ｄを出力する。図２２に示すとおり、バス制御部１５０は、優先判定回路２２０１により構成することができる。この優先判定回路２２０１は、メモリ転写部メモリアクセス要求１０７ａ、入出力部メモリアクセス要求１０３ｂおよびＣＰＵメモリアクセス要求１０１ｃのを受けて、メモリバス１０４の使用権をいずれのメモリアクセス要求元に与えるかを決定するためのものである。
【００３１】
図２３に示すテーブルにより、この優先判定回路２２０１の動作を説明する。このテーブルから次のことがわかる。すなわち、３つのメモリアクセス要求のいずれも発生しない場合には、当然ながら、バス使用許可１５０ａ，１５０ｂ，１５０ｃのいずれも発生せず、また、バススイッチ開閉信号１５０ｄもオフのままである。いずれか１つのメモリアクセス要求が発生すれば、それに対応するバス使用許可が発生する。なお、バススイッチ開閉信号１５０ｄはメモリ転写部１０７がメモリバス１０４を使用するときのみオンとなるので、バススイッチ開閉信号１５０ｄにはメモリ転写部バス使用許可１５０ａと同じ出力が利用される。３つのメモリアクセス要求のうち２つ以上のアクセス要求が競合した場合には、メモリ転写部メモリアクセス要求１０７ａ、入出力部メモリアクセス要求１０３ｂ、ＣＰＵメモリアクセス要求１０１ｃ、の順に優先的にバス使用権が与えられる。
【００３２】
次に装置１００の動作を説明する。装置１００は、４つの基本動作を行なう。
【００３３】
（１）ＣＰＵ１０１は、プロセッサバス１０２、バススイッチ１０８、メモリバス１０４を通してメモリ１０５を読み書きする。このときバス制御部１５０はプロセッサバス１０２とメモリバス１０４を接続するようにバススイッチ１０８を閉じる。
【００３４】
（２）ＣＰＵ１０１は、プロセッサバス１０２、ブリッジ１０３、システムバス１０６を通して入出力部１１１〜１１３を読み書きする。
【００３５】
（３）入出力部１１１〜１１３は、システムバス１０６、ブリッジ１０３、バススイッチ１０８、メモリバス１０４を通してメモリ１０５を読み書きする。
【００３６】
（４）メモリ転写部１０７は、メモリ転写部バス１１０およびメモリバス１０４を通してメモリ１０５の中のメモリ転写領域１０９を読み書きする。このときバス制御部１５０は、プロセッサバス１０２とメモリバス１０４を切り離すようにバススイッチ１０８を開く。
【００３７】
（１）（２）（３）については一般的であるので説明を省略して、（４）の動作を具体的に説明する。メモリ転写部１０７は、メモリ１０５の中のメモリ転写領域１０９の内容を読み出しては、他の装置のメモリへ送信用伝送路１２１を用いて送信する。また、他の装置のメモリの内容を受信用伝送路１２２、１２３を用いて受信して、メモリ１０５の中のメモリ転写領域１０９へ書き込むことを継続的に行なう動作をする。「継続的に」とは、ある転送領域を転送し終わったら、またその転送領域の先頭に戻って転送を開始し、時間的に途切れることなく転写し続けることを意味する。
【００３８】
図３〜５は、４つの基本動作のバス競合のケースについて、動作を示したタイムチャートである。
【００３９】
図３は、（１）ＣＰＵ１０１からメモリ１０５へのアクセスと、（４）メモリ転写部１０７からメモリ１０５へのアクセスとがぶつかるケースである。図２３で説明したように、メモリ転写部メモリアクセス要求はＣＰＵメモリアクセス要求より優先順位が高いが、ＣＰＵメモリアクセス要求処理中にメモリ転写部メモリアクセス要求が発生したときは、メモリ転写部１０７によるアクセスは、ＣＰＵ１０１によるアクセスが終了し次第、メモリバス１０４のバス権をとることができる。これは、ＣＰＵ１０１によるメモリ１０５のアクセスが１アクセスにつき１０サイクル程度なので、ＣＰＵ１０１によるアクセスが終了するまでメモリ転写部メモリアクセスを待たせても問題とならないからである。メモリ転写部１０７がバス権をとっている間は、バススイッチ１０８はＯＦＦとなり、プロセッサバス１０２とメモリバス１０４とが分離される。
【００４０】
図４は、（２）ＣＰＵ１０１から入出力部１１１〜１１３へのアクセスと、（４）メモリ転写部１０７からメモリ１０５へのアクセスとがぶつかるケースである。ＣＰＵ入出力アクセス要求中にメモリ転写部メモリアクセス要求が発生したとき、ＣＰＵが入出力アクセス中に、バススイッチ１０８はＯＦＦとなってメモリ転写部１０７がメモリバス１０４のバス権をとり、並行して動作することができる。
【００４１】
図５は、（３）入出力部１１１〜１１３からメモリ１０５へのアクセスと、（４）メモリ転写部１０７からメモリ１０５へのアクセスとがぶつかるケースである。前述のように、メモリ転写部メモリアクセス要求は入出力メモリアクセス要求より優先順位が高く設定されており、入出力メモリアクセス要求処理中であってもメモリ転写部メモリアクセス要求が発生したときには、入出力部１１１〜１１３は速やかにメモリバス１０４を開放する。メモリ転写部１０７がバス権を獲得するとバススイッチ１０８はＯＦＦとなって、プロセッサバス１０２とメモリバス１０４とが分離され、メモリ転写部１０７がメモリ１０５をアクセスすることができる。
【００４２】
以上のように、ＣＰＵ１０１が入出力部１１１〜１１３をアクセスするときに、バススイッチ１０８がプロセッサバス１０２とメモリバス１０４を切り離すようにはたらくので、メモリ転写部１０７は、メモリ１０５へのアクセスを同時に行うことができ、従来例に比べるとメモリ転写部１０７がメモリバス１０４のバス権をえるのが容易になっている。このためメモリ転写部１０７の中にバス権を獲得する間データをためておく受信バッファが小さくてすみ、安価なメモリ転写部１０７を構成することができる。
【００４３】
図６、７は、本発明を適用した装置同士の接続方法を示している。図６、図７ともに装置間を１：１で結ぶ構成であり、転送制御が簡単で小型化できる。
【００４４】
図６は、装置１００‐１、装置１００‐２、装置１００‐３及びその間の伝送路５０１、５０２、５０３からなる。装置１００‐１の送信部１３１は、伝送路５０１を介して装置１００‐２の受信部１３３、装置１００‐３の受信部１３２に接続する。装置１００‐２の送信部１３１は、伝送路５０２を介して装置１００‐１の受信部１３２、装置１００‐３の受信部１３３に接続されている。装置１００‐３の送信部１３１は、伝送路５０３を介して装置１００‐１の受信部１３３、装置１００‐２の受信部１３２に接続されている。
【００４５】
このように、受信部を２つ備えた装置では３重系の３つの装置のうちの、すべての装置からすべての装置に直接メモリ転写できる伝送路で構成できる。
【００４６】
図７は装置１００‐１、装置１００‐２及びその間の伝送路６０１、６０２、６０３、６０４からなる。装置１００‐１の送信部１３１は、伝送路６０１及び６０２を介して装置１００‐２のそれぞれ別の受信部１３２、１３３に接続されている。装置１００‐２の送信部１３１は、伝送路６０３及び６０４を介して装置１００‐１のそれぞれ別の受信部１３２、１３３に接続されている。このように、受信部を２つ備えた装置は、２つの装置間で伝送路を２重化して持つ２重系の構成が可能である。
【００４７】
転送の方法を図８に示す。メモリ転写の対象となる制御データは、時間的にクリティカルなデータと、比較的時間に余裕のあるデータがあることを考慮して、メモリ転写用の領域を、少量で転写周期の短い優先領域９２０と大量で転写周期の長い通常領域９３０に分ける。普通、データ転送は、ある定まった転送単位（例えば１２８バイト）を同期を取りながら転送する。９０１から９１１まではこの転送の様子を示しており、１つ１つが１つの転送単位である。今、優先領域９２０がα９２１、β９２２の２つの転送単位からなり、通常領域９３０がＡ９３１、Ｂ９３２、Ｃ９３３、Ｄ９３４の４つの転送単位からなるとき、転送９０１においてα９２１を、転送９０２においてＡ９３１を、転送９０３においてβ９２２を、転送９０４においてＢ９３２、転送９０５においてα９２１を、転送９０６においてＣ９３３を、転送９０７においてβ９２２を、転送９０８においてＤ９３４を、転送９０９においてα９２１を、転送９１０においてＡ９３１を、転送９１１においてβ９２２を、というように優先領域９２０の転送単位と通常領域９３０の転送単位を交互に転送していく。すると、優先領域は４転送単位分を転送周期Ｔ１とすることになり、また通常領域は８転送単位分を転送周期Ｔ２とすることになる。このように、領域の大きさ（転送単位の個数）を調節することにより転送周期をコントロールすることが可能である。
【００４８】
図９は、本実施の形態のメモリ転写の通信で用いる、通信プロトコルを示す。通信プロトコルは、スタートビット１３０１、優先領域のリセット１３０２、通常領域のリセット１３０３、データ１３０４、ＣＲＣコード１３０５からなる。スタートビット１３０１はある定められたビットパターン（８ビット）で、これにより同期化をおこなう。優先領域のリセット１３０２は、１ビットのデータであり、たとえば図８において、９０１、９０５、９０９のように、優先領域の先頭α９２１を送信するときに送信部１３１が”１”にして送る。受信側１３２では、受信側の同期がずれて受信が不可能になったとき、スタートビットとリセットビットにより優先領域の先頭であることを検出して受信をやり直す。すなわち、一旦、受信を停止し、次回の通常領域の先頭から受信を再開する。通常領域のリセット１３０３は１ビットのデータであり、たとえば図８において９０２、９１０のように、通常領域の先頭Ａ９３１を送信するときに送信部１３１が”１”にして送る。受信側１３２では、受信側の同期がずれて受信が不可能になったとき、スタートビットとリセットビットにより通常領域の先頭であることを検出して受信をやり直す。データ１３０４は本来送るべきデータ本体である。ＣＲＣコード１３０５は、周知の誤り検出訂正符号であり、通常１６ビットである。図９の例の場合は、スタートビットを除く優先領域のリセット１３０２、通常領域のリセット１３０３、データ１３０４に関してのＣＲＣコードを計算する。通常、同期化のためには通信プロトコルの中にアドレスなど数バイトの情報を入れるのが普通であるが、メモリ転写の場合は、何回も同じ場所を転送するという性質を利用して、通信プロトコルの中にほんの２ビットのリセットビットを追加するだけで、簡便な同期化を行える。
【００４９】
図１０は、メモリ転写部１０７の送信部１３１の詳細を示したものである。送信部１３１は、送信ベースレジスタ１１０１、優先領域サイズレジスタ１１０２、通常領域サイズレジスタ１１０３、優先領域終了アドレス計算用加算器１１０４、通常領域終了アドレス計算用加算器１１０５、優先領域転送終了判定用比較器１１０６、通常領域転送終了判定用比較器１１０７、優先領域アドレスポインタリセット用セレクタ１１０８、優先領域アドレスポインタ１１０９、優先領域アドレスポインタ加算用加算器１１１０、通常領域アドレスポインタリセット用セレクタ１１１１、通常領域アドレスポインタ１１１２、通常領域アドレスポインタ加算用加算器１１１３、優先領域／通常領域切替え用セレクタ１１１４、リセット制御部１１１５、フェッチバッファ１１１６、シフトバッファ１１１７、ＣＲＣレジスタ１１１８、送信用データ生成セレクタ１１１９、送信用フレーム生成セレクタ１１２０、プロトコル制御部１１２１、５ビット連続１検出部１１２２、同期部１１２３からなる。
【００５０】
送信部の入出力のうち、１０７ａから１０７ｄまでは、メモリバス１０４の一部を構成するものである。送信ベースレジスタ１１０１は、メモリ転写用領域の中の、送信領域の先頭を指し示すアドレスを格納するレジスタである。優先領域サイズレジスタ１１０２は、優先領域の大きさを格納するレジスタである。従って、送信ベースレジスタ１１０１の出力１１０１ａと優先領域サイズレジスタ１１０２の出力１１０２ａを優先領域終了アドレス計算用加算器１１０４で加算することによって、優先領域の終了点を指し示すアドレス１１０４ａを計算する。優先領域アドレスポインタ１１０９は、現在転送しているアドレスを保持し、優先領域アドレスポインタ加算用加算器１１１０は、優先領域アドレスポインタ１１０９とプロトコル制御部１１２１から送られる優先領域のデータを４Ｂ送信したことを示す１１２１ａにより、優先領域アドレスポインタを順に加算して、次に転送するアドレス１１１０ａ を計算する。優先領域アドレスポインタリセット用セレクタ１１０８は優先領域転送中は１１１０ａを選び、そうでないときに１１０１ａの値でポインタ１１０９を優先領域先頭アドレスに戻す。優先領域転送終了判定用比較器１１０６は、優先領域の終了点を指し示すアドレス１１０４ａと現在転送しているアドレス１１０９ａを比較し、一致したら優先領域転送終了と判定してリセット制御部１１１５に転送終了信号１１０６ａを送る。
【００５１】
通常領域サイズレジスタ１１０３は、通常領域の大きさを格納するレジスタである。優先領域と通常領域を連続して配置するような構成とすると、優先領域の終了点を指し示すアドレス１１０４ａは同時に通常領域の先頭を指し示すので、通常領域先頭アドレス１１０４ａと通常領域サイズレジスタ１１０３の出力を通常領域終了アドレス計算用加算器１１０５で加算することによって、通常領域の終了点を指し示すアドレス１１０５ａを計算する。通常領域アドレスポインタ１１１２は、現在転送しているアドレスを保持し、通常領域アドレスポインタ加算用加算器１１１３は、通常領域アドレスポインタ１１１２とプロトコル制御部１１２１から送られる通常領域のデータを４Ｂ送信したことを示す１１２１ｂにより、通常領域アドレスポインタを順に加算して、次に転送するアドレス１１１３ａ を計算する。通常領域アドレスポインタリセット用セレクタ１１１１は通常領域転送中は１１１３ａを選び、そうでないときに１１０４ａの値でポインタ１１１２を通常領域先頭アドレスに戻す。通常領域転送終了判定用比較器１１０７は、通常領域の終了点を指し示すアドレス１１０５ａと現在転送しているアドレス１１１２ａを比較し、一致したら通常領域転送終了と判定してリセット制御部１１１５に転送終了信号１１０７ａを送る。優先領域／通常領域切替え用セレクタ１１１４は、リセット制御部１１１５から優先領域と通常領域のどちらを送っているかを示す信号１１１５ａをうけ、対応するアドレスをメモリ１０５に送るメモリアドレス１０７ｃを生成する。リセット制御部１１１５は、優先領域転送終了信号１１０６ａ、通常領域転送終了信号１１０７ａを受け、プロトコル制御部１１２１にリセット信号１１１５ｂを送る。また、次の転送開始時にセレクタ１１１９をとおして、優先領域リセット信号（ＲＰ）１１１５ｃ、通常領域リセット信号（ＲＮ）１１１５ｄを転送データとする。フェッチバッファ１１１６は、プロトコル制御部１１２１が送出したメモリ要求１０７ｄに対し、メモリがメモリデータ１０７ａ及び読み出し有効信号１０７ｂを返したときに、送られてきたメモリデータ１０７ａを格納する。シフトバッファ１１１７はフェッチバッファ１１１６を受け、１ビットずつシフトさせながら転送データを構成していく。送信用データ生成セレクタ１１１９は、優先領域リセット信号１１１５ｃ、通常領域リセット信号１１１５ｄから、送信用データ（ＲＤ）１１１９ａを生成する。ＣＲＣレジスタ１１１８は、送信用データ１１１９ａからＣＲＣコード（Ｃ）１１１８ａを生成する。送信用フレーム生成セレクタ１１２０は、プロトコル制御部１１２１からのスタートビット１１２１ｄ、送信用データ１１１９ａ、 ＣＲＣコード１１１８ａをプロトコル制御部１１２１の指示に従い切替え、送信データ１０７ｅを伝送路に送る。プロトコル制御部１１２１は、１ビット送信するごとに状態を遷移させ、今プロトコル上何を送っているかを制御し、制御信号１１２１ｃ、１１２１ｅ等によりデータを切り替える。また、シフトバッファ１１１７及びフェッチバッファ１１１６の残りビット数を管理し、バッファ１１１７に空きができたら、メモリにメモリ要求１０７ｄを送る。５ビット連続１検出���１１２２は、送信データ１０７ｅを監視し、５ビット以上”１”が連続したら”０”を埋める。これは、スタートビットを”０１１１１１１０”のパターンとしており、データ送信中にこのパターンが現れないようにする為である。また、プロトコル制御部１１２１からのプロトコル情報１１２１ｆにより、０埋めを行うか否かを決定し、これに基づきシフト指示信号１１２２ａをシフトバッファ１１１７、ＣＲＣバッファ１１１８、プロトコル制御部１１２１に送る。５ビットの”１”を検出すると”０”を埋めてシフト指示信号をネゲートするように動作することで”０”を埋める。同期部１１２３は１ビット送信の時間が経過したら、送信ＯＫ１１２３ａを５ビット連続１検出部１１２２に知らせる。
【００５２】
以上のような送信部のハードウェアにより前述の図９の通信プロトコルを送信することができる。
【００５３】
図１１は、メモリ転写部１０７の受信部１３２の詳細を示したものである。受信部は、受信ベースレジスタ１２０１、優先領域サイズレジスタ１２０２、通常領域サイズレジスタ１２０３、優先領域終了アドレス計算用加算器１２０４、通常領域終了アドレス計算用加算器１２０５、優先領域転送終了判定用比較器１２０６、通常領域転送終了判定用比較器１２０７、優先領域アドレスポインタリセット用セレクタ１２０８、優先領域アドレスポインタ１２０９、優先領域アドレスポインタ加算用加算器１２１０、通常領域アドレスポインタリセット用セレクタ１２１１、通常領域アドレスポインタ１２１２、通常領域アドレスポインタ加算用加算器１２１３、優先領域／通常領域切替え用セレクタ１２１４、リセット制御部１２１５、フェッチバッファ１２１６、シフトバッファ１２１７、ＣＲＣレジスタ１２１８、バッファ制御部１２１９、ＣＲＣエラー検出部１２２０、プロトコル制御部１２２１、スタート検出部１２２２、同期部１２２３からなる。
【００５４】
１２０１から１２１４までは、図１０の１１０１から１１１４までに対応して全く同じハード構造をしており、動作も同様であるので、説明を省略する。
【００５５】
リセット制御部１２１５は、優先領域転送終了判定用比較器１２０６からの優先領域転送終了信号１２０６ａ、通常領域転送終了判定用比較器１２０７からの通常領域転送終了信号１２０７ａ、スタート検出部１２２２からのスタート検出信号１２２２ａ、ＣＲＣエラー検出部１２２０からのＣＲＣエラー検出部信号１２２０ａから、リセットが必要と判断し、プロトコル制御部１２２１、バッファ制御部１２１９へリセット信号１２１５ｂを送り、いろいろな制御をリセットする。また、受信しているのが優先領域か通常領域かをを示す情報を保持し、この情報に基づき、制御信号１２１５ａを通じてセレクタ１２１４を切り替える。シフトバッファ１２１７は、１ビットずつシフトしながら受信データ１０７ｅを１ビットずつ受信し、３２ビットたまったところでフェッチバッファ１２１６にコピーする。バッファ制御部１２１９は、シフトバッファ１２１７に受信されているビット数を管理し、３２ビット以上たまったらメモリ要求１０７ｄをメモリへ送る。ＣＲＣレジスタ１２１８はＣＲＣコードを生成し１転送単位の最後にＣＲＣエラー検出部１２２０でエラー検出する。プロトコル制御部１２２１は、このメモリ要求１０７ｄに対する書き込み有効信号１０７ｂと、プロトコル制御部１２２１からのプロトコル情報１２２１ａにより、シフトバッファ１２１７に受信されているビット数を更新する。プロトコル制御部１２２１はスタート検出部１２２２からの０を抜いた正味の１ビット受信信号１２２２ａにより、状態を遷移させながら、今受信しているのがプロトコル上どこのフィールドであるかを管理する。スタート検出部１２２２はスタートパターン”０１１１１１１０”の検出と、パターンの一意性のためにデータ内にうめこまれた”０”を取り去って元のデータを復元する。同期部１２２３は、１ビット受信するのにかかる時間をはかり、１ビット受信信号１２２３ａをスタート検出部１２２２に送り、受信のためのデータのサンプリングを行なう。
【００５６】
以上のような受信部のハードウェアにより前述の図９の通信プロトコルを受信することができ、送信されたデータを主メモリ上の受信領域に格納することができる。
【００５７】
図１２は、本発明の第２の実施の形態の構成を示す。装置１９００の構成は、第１の実施の形態の装置１００と同様であるが、メモリバス１０４とバススイッチ１０８の間に、アドレス変換部１９０２が追加されている点が異なっている。また、メモリ転写領域１０９の中に、受信用のバッファを２面用意する。本実施の形態におけるアドレス変換部１９０２およびメモリ転写部１０７の具体的な構成例および機能については、図１５により後述する。
【００５８】
図１３、１４により、本発明の第２の実施の形態の動作を説明する。メモリ転写領域１０９の中の２面の受信用のバッファをそれぞれ０面領域領域３００と１面領域領域３０１とする。０面領域領域３００と１面領域領域３０１の各々図８に示したような優先領域と通常領域を有するものとする。
【００５９】
図１３は、メモリ転写部１０７が受信したデータを０面領域３００に書き込んでいる場合を示す。このときＣＰＵ１０１がメモリ転写領域１０９を読み出そうとした場合、０面領域３００におけるデータは、新しく書いたデータと古いデータが混ざっておりデータの一貫性がとれなくなっている可能性がある。そこで、２面化した１面領域３０１の方を読み出すと、古いデータではあるが一貫性がとれた正しいデータが読み出せる。メモリ転写部１０７が受信したデータを０面領域３００に書き込み終った場合、図１４のようにメモリ転写部１０７が受信したデータを１面領域３０１に書き込み、このときＣＰＵ１０１がメモリ転写領域１０９を読み出そうとした場合、アドレス変換部１９０２がバス１９０１上のアドレスを０面領域３００のほうを読み出すよう変換して、０面領域３００を読み出させる。メモリ転写部１０７が受信したデータを１面領域３０１に書き込み終った場合、また図１３のようにメモリ転写部１０７が受信したデータを０面領域３００に書き込み、このときＣＰＵ１０１がメモリ転写領域１０９を読み出そうとした場合、やはりアドレス変換部１９０２がバス１９０１上のアドレスを１面領域３００のほうを読み出すよう変換して、１面領域３０１を読み出させる。
【００６０】
このように、メモリ転写部１０７が受信したデータを０面領域３００と１面領域３０１に交互に書き込み、ＣＰＵ１０１がメモリ転写領域１０９を読み出すとき、メモリ転写部１０７が書き込んでいないほうの面を読み出すことにより、正しく転写を終了した最新の転写データを、次に正しく転写を終了させるまでの間保持しておくことが出来る。転写中にエラーが発生し、正しいデータが転送できなかった時には、面を切り替えずにもう一度先頭からデータを送り直すことで常に正しいデータを保持する。
【００６１】
なお、０面領域３００と１面領域３０１との切替制御は、後述する図１５に示した受信部１３２により行われる。
【００６２】
図１５は、アドレス変換部１９０２、メモリ転写部１０７の第２の実施の形態にかかわる部分を詳細に示したものである。アドレス変換部１９０２はアドレス判定部１５０１、アドレスセレクタ１５０２からなる。また、メモリ転写部１０７は受信部１３２、面指定用ラッチ１５０３、面反転用排他的論理和１５０４、逆面指定用インバータ１５０５からなる。アドレスセレクタ１５０２には、転写領域１０９の０面領域３００と１面領域３０１のいずれを選択するかを指定するアドレスビット信号が入力される。このビット信号は、例えば、各面領域の内部アドレスを指定する下位アドレスの上位のビットに相当する。アドレスバス１９０１の他のアドレスはメモリバス１０４へそのまま供給される。
【００６３】
アドレス判定部１５０１は、バススイッチ１０８及びバス１９０１を通ってやってくるメモリ１０５へのアクセスを監視し、メモリ１０５内にある転写領域１０９へのアクセスか否かを判定する。もし転写領域１０９へのアクセスでないならば、セレクタ１５０２のＡ側を選び、バス１９０１のアドレスをそのままバス１０４にわたす。したがって、メモリバス１９０１のアドレスがそのままメモリバス１０４へ伝わる。もし転写領域１０９へのアクセスであったならば、セレクタ１５０２のＢ側を選び、面指定用ラッチ１５０３に保持されている現在アクセスすべき面を指定するよう、当該アドレスビットをＡ側からＢ側へ切り替える。面指定用ラッチ１５０３は現在アクセスすべき面を保持しており、受信部１３２からの受信領域終了信号１５０６により、面指定用ラッチ１５０３の内容を反転し、現在アクセスすべき面を反対側にする。受信部１３２からメモリ１０５の転写領域１０９にアクセスするときには、面指定用ラッチ１５０３の内容を逆面指定用インバータ１５０５にて反転した１５０７ａを含む（残りのビット１５０７ｂは受信部１３２から出力される）アドレス１０４でアクセスする。この構成により、メモリ転写部１０７が書き込む面と、ＣＰＵ１０１が読み出す面を常に反対側にしておくことができ、正しく転写を終了した最新の転写データを、次に正しく転写を終了させるまでの間保持し、ＣＰＵ１０１が書き込み途中の面を読まないようにすることが出来る。
【００６４】
図１６は第３の実施の形態を示している。第３の実施の形態は、装置の接続のしかたのバリエーションである。図１６は、メモリ転写部１４０７以外は図１と同じである。メモリ転写部１４０７は、それぞれ送信用伝送路１４１１、１４１２につながる送信部１４０１、１４０２、それぞれ受信用伝送路１４１３、１４１４につながる受信部１４０３、１４０４を含んでいる。それぞれ１４１１と１４１２は同一、１４０１、１４０２は同一、１４１３、１４１４は同一、１４０３、１４０４は同一である。
【００６５】
図１７は、装置１４００‐１、装置１４００‐２、装置１４００‐３及びその間の伝送路７０１〜７０６からなる。装置１４００‐１の送信部１４０１は伝送路７０１を介し装置１４００‐２の受信部１４０４に接続する。装置１４００‐１の送信部１４０２は伝送路７０３を介し装置１４００‐３の受信部１４０３に接続する。装置１４００‐２の送信部１４０２は伝送路７０２を介し装置１４００‐１の受信部１４０３に接続する。装置１４００‐２の送信部１４０１は伝送路７０５を介し装置１４００‐３の受信部１４０４に接続する。装置１４００‐３の送信部１４０１は伝送路７０４を介し装置１４００‐１の受信部１４０４に接続する。装置１４００‐３の送信部１４０２は伝送路７０６を介し装置１４００‐２の受信部１４０２に接続する。
【００６６】
このように、受信部を２つと送信部を２つ備えた装置では３重系の３つの装置のうちの、すべての装置からすべての装置に直接メモリ転写できる伝送路を持つ構成が実現できる。
【００６７】
図１８は装置１４００‐１、装置１４００‐２及びその間の伝送路８０１、８０２、８０３、８０４からなる。装置１４００‐１の送信部１４０１は、伝送路８０１を介して装置１４００‐２の受信部１４０４に接続する。装置１４００‐１の送信部１４０２は、伝送路８０３を介して装置１４００‐２の受信部１４０３に接続する。装置１４００‐２の送信部１４０２は、伝送路８０２を介して装置１４００‐１の受信部１４０３に接続する。装置１４００‐２の送信部１４０１は、伝送路８０４を介して装置１４００‐１の受信部１４０４に接続する。
【００６８】
このように、受信部を２つと送信部を２つ備えた装置では、２つの装置間で伝送路を２重化して持つ２重系の構成が実現できる。
【００６９】
図１９は、第４の実施の形態を示す。第４の実施の形態は、転送方法のバリエーションである。メモリ転写の対象となる制御データは、時間的にクリティカルなデータと、比較的時間的に余裕のあるデータがあることを考慮して、メモリ転写用の領域を少量で転写周期の短い優先領域１０２０と大量で転写周期の長い通常領域１０３０に分ける。普通、データ転送は、ある定まった転送単位（例えば１２８バイト）を同期を取りながら転送する。１００１から１０１１まではこの転送の様子を示しており、１つ１つが１つの転送単位である。今、優先領域１０２０がα１０２１、β１０２２、γ１０２３、δ１０２４の４つの単位からなり、通常領域１０３０がＡ１０３１、Ｂ１０３２、Ｃ１０３３、Ｄ１０３４、Ｅ１０３５、Ｆ１０３６、Ｇ１０３７、Ｈ１０３８の８つの転送単位からなるとき、転送１０１において前半の一部にα１０２１、後半の一部にＡ１０３１を転送する。また転送１００２において前半の一部にβ１０２２、後半の一部にＢ１０３２を転送する。転送１００３において前半の一部にγ１０２３、後半の一部にＣ１０３３を転送する。また転送１００４において前半の一部にδ１０２４、後半の一部にＤ１０３４を転送する。転送１００５において前半の一部にα１０２１、後半の一部にＥ１０３５を転送する。また転送１００６において前半の一部にβ１０２２、後半の一部にＦ１０３６を転送する。転送１００７において前半の一部にγ１０２３、後半の一部にＧ１０３７を転送する。また転送１００８において前半の一部にδ１０２４、後半の一部にＨ１０３４を転送する。転送１００９において前半の一部にα１０２１、後半の一部にＡ１０３１を転送する。また転送１０１０において前半の一部にβ１０２２、後半の一部にＢ１０３２を転送する。転送１０１１において前半の一部にγ１０２３、後半の一部にＣ１０３３を転送する。以上のように優先領域の一部と通常領域の一部から転送単位を構成し転送していく。すると、優先領域は４転送単位分を転送周期Ｔ１とすることになり、また通常領域は８転送単位分を転送周期Ｔ２とすることになる。このように、領域の大きさを調節することにより転送周期をコントロールすることが可能である。
【００７０】
図２０は、第５の実施の形態である。第５の実施の形態は、分散型の装置を示している。装置１００‐１、１００‐２は第１の実施の形態の装置１００と全く同じであるが、装置１００‐１には入出力部として２００１〜２００３が接続され、また装置１００‐２には別の入出力部２００４〜２００６が接続されている。装置１００‐１、１００‐２はそれぞれ別の入出力部から別の入出力データを入力あるいは出力しながら、全く別の処理を行う。しかし、装置１００‐１、１００‐２で共通のデータをやり取りすることもあり、このとき転写の機能を用いる。装置１００‐１から装置１００‐２へデータを送る場合、メモリ１０９‐１上のデータがメモリバス１０４‐１を介しメモリ転写部１０７‐１の送信部１３１‐１に送り、伝送路２０１０を通じて受信部１３２‐２及び１３３‐２に送り、メモリバス１０４‐２を介しメモリ１０９‐２に送るよう動作する。装置１００‐２から装置１００‐１へデータを送る場合も同様である。
【００７１】
このように、本装置は、同一の入出力部につながれた多重化システムのみならず、別々の入出力部につながれて別々の処理をする分散型の装置における共有メモリの実現のために用いることも可能である。
【００７２】
以上、本発明の好適な実施の形態について説明したが、種々の変形・変更を行うことが可能である。例えば、ブリッジ２０３は本発明に必須のものではなく、削除してもよい。
【００７３】
【発明の効果】
以上説明したように、本発明によれば、バスの衝突を防ぐ仕掛けを備えることによって、バスの競合が少なく性能を向上することができる。また、バスの競合用のバッファを小さくすることによって、小規模な論理ですむメモリ転写機能を有する情報処理装置を小型で低価格に実現することができる。
【図面の簡単な説明】
【図１】  本発明の第１の実施の形態の構成を示すブロック図である。
【図２】  従来例の構成を示すブロック図である。
【図３】  第１の実施の形態の動作タイムチャートである。
【図４】  第１の実施の形態の動作タイムチャートである。
【図５】  第１の実施の形態の動作タイムチャートである。
【図６】  図１の装置により３重系の構成を実現するための装置間の接続形態の説明図である。
【図７】  図１の装置により２重系の構成を実現するための装置間の接続形態の説明図である。
【図８】  第１の実施の形態におけるメモリ転写時のデータ転送方法の説明図である。
【図９】  第１の実施の形態におけるメモリ転写で用いられる通信プロトコルの説明図である。
【図１０】  図１の装置内のメモリ転写部１０７の送信部１３１の詳細を示す回路ブロック図である。
【図１１】  図１の装置内のメモリ転写部１０７の受信部１３２の詳細を示す回路ブロック図である。
【図１２】  第２の実施の形態の構成を示すブロック図である。
【図１３】  第２の実施の形態の動作（０面領域に書き込む場合）の説明図である。
【図１４】  第２の実施の形態の動作（１面領域に書き込む場合）の説明図である。
【図１５】  第２の実施の形態の詳細構成を示す回路ブロック図である。
【図１６】  第３の実施の形態の構成（送信部が２個の時）を示すブロック図である。
【図１７】  送信部が２個の時の３重系の構成の接続形態の説明図である。
【図１８】  送信部が２個の時の２重系の構成の接続形態の説明図である。
【図１９】  第４の実施の形態（転送方法）の説明図である。
【図２０】  第５の実施の形態（分散型装置の構成）の説明図である。
【図２１】  第１の実施の形態におけるバス制御部と他の各部の間での入出力信号を示すブロック図である。
【図２２】  図２１に示したバス制御部の構成例を示すブロック図である。
【図２３】  図２２に示した優先判定回路２２０１の動作の説明図である。
【符号の説明】
１０１  ＣＰＵ
１０２  プロセッサバス
１０３  ブリッジ
１０４  メモリバス
１０５  メモリ
１０６  システムバス
１０７  メモリ転写部
１０８  バススイッチ
１０９  転写用領域
１１０  メモリ転写部バス
１１１〜１１３  入出力部
１１４  送信用伝送路
１１５  受信用伝送路
【図１】
0003754482.tif 000002
【図２】
0003754482.tif 000003
【図３】
0003754482.tif 000004
【図４】
0003754482.tif 000005
【図５】
0003754482.tif 000006
【図６】
0003754482.tif 000007
【図７】
0003754482.tif 000008
【図８】
0003754482.tif 000009
【図９】
0003754482.tif 000010
【図１０】
0003754482.tif 000011
【図１１】
0003754482.tif 000012
【図１２】
0003754482.tif 000013
【図１３】
0003754482.tif 000014
【図１４】
0003754482.tif 000015
【図１５】
0003754482.tif 000016
【図１６】
0003754482.tif 000017
【図１７】
0003754482.tif 000018
【図１８】
0003754482.tif 000019
【図１９】
0003754482.tif 000020
【図２０】
0003754482.tif 000021
【図２１】
0003754482.tif 000022
【図２２】
0003754482.tif 000023
【図２３】
0003754482.tif 000024