(57)【要約】【課題】複数のバス間で、高機能かつ低コストでメモリを共有することができるようにする。【解決手段】バスシステム１２および１３は、バス２２および２３を介して、割り込み制御部３６用のレジスタに「１」を書き込む。これに対応して、割り込み制御部３６は、割り込み信号を、割り込み信号線２４および２５を介して、バスシステム１１に送信する。バスシステム１１は、割り込み制御部３６より、バスシステム１２および１３からの割り込み信号を受信すると、バス２１を介して、スイッチ制御部３５用のレジスタに「１」を書き込む。これに対応して、スイッチ制御部３５は、バス２２とメモリ３３、およびバス２３とメモリ３２を接続するように、スイッチ３４を制御する。本発明は、例えば、複数のバスシステム間で、複数のメモリを共有する情報処理装置に適用することができる。【選択図】      図１
2004213407.tif 000002
【特許請求の範囲】
【請求項１】
複数のバスシステムが、複数のメモリを共有する情報処理装置において、
前記バスシステムと前記メモリとの接続の切り替えを制御する切り替え制御手段と前記複数のメモリのうちの１つに接続している前記バスシステムが、前記複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、前記切り替え制御手段に受け渡す受け渡し手段とを備え、
前記切り替え制御手段は、前記受け渡し手段により前記接続可能割り込み信号が受け渡された場合に、前記バスシステムと前記メモリとの接続の切り替えを制御することを特徴とする情報処理装置。
【請求項２】
前記バスシステムにより情報の書き込みが行われるレジスタをさらに備え、
前記受け渡し手段は、前記バスシステムから前記レジスタに前記情報の書き込みがあった場合、前記接続可能割り込み信号を受け渡すことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記切り替え制御手段により情報の書き込みが行われるレジスタをさらに備え、前記切り替え制御手段は、前記レジスタに前記情報の書き込みを行うことにより前記バスシステムと前記メモリとの接続の切り替えを制御することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記切り替え制御手段により前記バスシステムと前記メモリとの接続の切り替えが制御された場合、
前記受け渡し手段は、前記バスシステムと前記メモリとの接続の切り替えが終了したことを示す接続完了割り込み信号を前記バスシステムに受け渡し、
前記バスシステムは、前記メモリとの接続の切り替えを認識し、切り替えられた前記メモリへのアクセスを開始することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
複数のバスシステムが、複数のメモリを共有し、前記バスシステムと前記メモリとの接続の切り替えを制御する切り替え制御手段を備える情報処理装置の情報処理方法において、前記複数のメモリのうちの１つに接続している前記バスシステムが、前記複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、前記切り替え制御手段に受け渡す受け渡しステップを含み、
前記切り替え制御手段は、前記受け渡しステップの処理により前記接続可能割り込み信号が受け渡された場合に、前記バスシステムと前記メモリとの接続の切り替えを制御することを特徴とする情報処理方法。
【請求項６】
複数のバスシステムが、複数のメモリを共有し、前記バスシステムと前記メモリとの接続の切り替えを制御する切り替え制御手段を備える情報処理装置用のプログラムであって、
前記複数のメモリのうちの１つに接続している前記バスシステムが、前記複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、前記切り替え制御手段に受け渡す受け渡しステップを含み、
前記切り替え制御手段は、前記受け渡しステップの処理により前記接続可能割り込み信号が受け渡された場合に、前記バスシステムと前記メモリとの接続の切り替えを制御することを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項７】
複数のバスシステムが、複数のメモリを共有し、前記バスシステムと前記メモリとの接続の切り替えを制御する切り替え制御手段を備える情報処理装置用のプログラムにおいて、
前記複数のメモリのうちの１つに接続している前記バスシステムが、前記複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、前記切り替え制御手段に受け渡す受け渡しステップを含み、
前記切り替え制御手段は、前記受け渡しステップの処理により前記接続可能割り込み信号が受け渡された場合に、前記バスシステムと前記メモリとの接続の切り替えを制御することを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、複数のバス間において、高機能かつ低コストでメモリを共有することができるようにした情報処理装置および方法、記録媒体、並びにプログラムに関する。
【０００２】
【従来の技術】
従来より、共有メモリを用いるバスシステムの構成としては、１つのバスシステムに接続される、複数のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などのバスマスタ間でメモリを共有するマルチマスタのバスシステム構成と、複数のバスシステム間で、メモリを共有するバスシステム構成が存在する。
【０００３】
前者のマルチマスタのバスシステムは、１つのバスマスタが共有メモリにアクセスする場合、特許文献１に示されるように、他のバスマスタからのアクセスがないように、共有メモリの排他制御実行したり、または、特許文献２に示されるように、各バスマスタがアクセスするメモリ領域を予め分けて設定する。これにより、マルチマスタのバスシステムにおいては、共有メモリでの各バスマスタ間の衝突が抑制された。
【０００４】
一方、後者の複数のバスシステム間で、メモリを共有するバスシステムは、特許文献３に示されるように、共有メモリとして、デュアルポートメモリやＦＩＦＯ（ｆｉｒｓｔ  ｉｎ  ｆｉｒｓｔ  ｏｕｔ）などのような特殊素子を用いることにより複数のバスシステムとの衝突を抑制していた。
【０００５】
【特許文献１】
特開２０００−２８５０９１号公報（第３ページ、図１）
【特許文献２】
特開平１１−３１０７６号公報（第３−４ページ、図１）
【特許文献３】
ＷＯ００／００９０３号公報（第１１−１２ページ、図１−２）
【０００６】
【発明が解決しようとする課題】
しかしながら、上述したように、共有メモリにおいて、排他制御により他のバスマスタとの衝突を抑制する場合、バスシステムは、メモリのアクセスを調整するための排他制御回路を有する必要がある。この調整の排他制御回路の制御は、複雑であるため、それを設計するためのハードウエアコストがかかってしまう課題があった。
【０００７】
また、共有メモリにおいて、メモリ領域をバスマスタ毎に分けて設定することにより他のバスマスタとの衝突を抑制する場合、バスシステムは、バスマスタ毎にアクセスすべきメモリ領域を認識する必要があり、さらに、複数のバスマスタが同時に同じメモリにアクセスする場合には、やはり、メモリのアクセス制御を必要とする。したがって、このバスシステムにおいても、排他制御の場合と同様に、メモリ領域の認識および排他制御の処理が複雑であり、それらの回路を設計するためのハードウエアコストがかかってしまう課題があった。
【０００８】
一方、デュアルポートメモリを用いたバスシステムは、複数のバスシステムから同時に同じアドレスへのアクセスがないことを保証する仕組みを必要とする。
また、ＦＩＦＯを用いたバスシステムは、一方のバスシステムからデータが書き込まれて初めて、他方でのデータの読み出しをすることができる。すなわち、それぞれのバスシステムが共有メモリに同時にアクセスをする場合、これらのバスシステムは、完全に、他のバスシステムから独立したものにはならない。したがって、一方のバスシステムが共有メモリにアクセスした場合、そのバスシステムは、他のバスシステムに起因する制限を持つことになり、それを解決するための制御回路などを必要とする。したがって、複数のバスシステム間でメモリを共有するバスシステムにおいても、それらの回路を設計するためのハードウエアコストがかかってしまう課題があった。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、複数のバス間において、高機能かつ低コストでメモリを共有することができるようにするものである。
【００１０】
【課題を解決するための手段】
本発明の情報処理装置は、バスシステムとメモリとの接続の切り替えを制御する切り替え制御手段と複数のメモリのうちの１つに接続しているバスシステムが、複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、切り替え制御手段に受け渡す受け渡し手段とを備え、切り替え制御手段は、受け渡し手段により接続可能割り込み信号が受け渡された場合に、バスシステムとメモリとの接続の切り替えを制御することを特徴とする。
【００１１】
バスシステムにより情報の書き込みが行われるレジスタをさらに備え、受け渡し手段は、バスシステムからレジスタに情報の書き込みがあった場合、接続可能割り込み信号を受け渡すようにすることができる。
【００１２】
切り替え制御手段により情報の書き込みが行われるレジスタをさらに備え、切り替え制御手段は、レジスタに情報の書き込みを行うことによりバスシステムとメモリとの接続の切り替えを制御するようにすることができる。
【００１３】
切り替え制御手段によりバスシステムとメモリとの接続の切り替えが制御された場合、受け渡し手段は、バスシステムとメモリとの接続の切り替えが終了したことを示す接続完了割り込み信号をバスシステムに受け渡し、バスシステムは、メモリとの接続の切り替えを認識し、切り替えられたメモリへのアクセスを開始するようにすることができる。
【００１４】
本発明の情報処理方法は、複数のメモリのうちの１つに接続しているバスシステムが、複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、切り替え制御手段に受け渡す受け渡しステップを含み、切り替え制御手段は、受け渡しステップの処理により接続可能割り込み信号が受け渡された場合に、バスシステムとメモリとの接続の切り替えを制御することを特徴とする。
【００１５】
本発明のプログラムの記録媒体は、複数のメモリのうちの１つに接続しているバスシステムが、複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、切り替え制御手段に受け渡す受け渡しステップを含み、切り替え制御手段は、受け渡しステップの処理により接続可能割り込み信号が受け渡された場合に、バスシステムとメモリとの接続の切り替えを制御することを特徴とする。
【００１６】
本発明のプログラムは、複数のメモリのうちの１つに接続しているバスシステムが、複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号を、切り替え制御手段に受け渡す受け渡しステップを含み、切り替え制御手段は、受け渡しステップの処理により接続可能割り込み信号が受け渡された場合に、バスシステムとメモリとの接続の切り替えを制御する
ことを特徴とする
【００１７】
本発明においては、複数のメモリのうちの１つに接続しているバスシステムが、複数のメモリのうちの他の１つのメモリに接続できる状態であることを示す接続可能割り込み信号が受け渡された場合に、バスシステムとメモリとの接続の切り替えが制御される。
【００１８】
【発明の実施の形態】
以下、図を参照して本発明の実施の形態について説明する。
【００１９】
図１は、本発明を適用した情報処理装置１の構成例を表している。図１において、バスシステム１１乃至１３は、図示は省略するが、それぞれ、各バスシステムを制御し、割り込み機能を有するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）に代表されるバスマスタなどにより構成される。なお、以下、各バスシステムのバスマスタが実行する処理も、バスシステムを主語として説明する。
【００２０】
バスシステム１１乃至１３は、それぞれのバスシステム間で、データまたはプログラムの送受信を行うための共有メモリ部１４を共有しており、それぞれバス２１乃至２３を介して共有メモリ部１４と接続され、データなどを送受信する。
さらに、バスシステム１１乃至１３は、バスシステム１１乃至１３のバスマスタへの割り込み信号線２４乃至２７を介して、共有メモリ部１４と接続される。なお、図１の例においては、バスシステム１１は、情報処理装置１の各部を制御するメインシステムとされ、バスシステム１２および１３は、サブシステムとされる。
【００２１】
共有メモリ部１４は、メモリ３１乃至３３、スイッチ３４、スイッチ制御部３５および割り込み制御部３６により構成される。メモリ３１乃至３３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などにより構成され、スイッチ３４およびバス２１乃至２３を介して、それぞれバスシステム１１乃至１３のうちのいずれかと１対１で接続される。スイッチ３４は、スイッチ制御部３５からの制御信号に基づいて、メモリ３１乃至３３とバス２１乃至２３との接続を切り替える。なお、バスシステム１１乃至１３とのバスプロトコルと共有メモリ部１４のバスプロトコルは、同じとは限らないので、スイッチ３４は、バス２１乃至２３の受け口で、バスプロトコルの変換も実行する。
【００２２】
図１の例においては、バスシステム１２および１３は、情報処理装置１のメインシステムとしてのバスシステム１１に、自分の状態が、現在、接続されているメモリから、他のメモリに接続切り替えができる状態（すなわち、他のメモリに接続できる状態）であるという割り込み信号を送信するために、それぞれ、バス２２および２３を介して、図２Ａおよび図２Ｂを参照して後述する、割り込み制御部３６用のレジスタに書き込みを行う。割り込み制御部３６は、バスシステム１２から割り込み制御部３６用のレジスタに書き込みがあった場合、割り込み信号を、割り込み信号線２４を介してバスシステム１１に送信する。また、割り込み制御部３６は、バスシステム１３から割り込み制御部３６用のレジスタに書き込みがあった場合、割り込み信号を、割り込み信号線２５を介してバスシステム１１に送信する。
【００２３】
バスシステム１１は、情報処理装置１のメインシステムとして、メモリ３１乃至３３とバス２１乃至２３との接続の切り替えを制御する。具体的には、バスシステム１１は、バスシステム１２および１３から、それぞれの状態が、現在接続されているメモリから、他のメモリに接続切り替えができる状態（すなわち、他のメモリに接続できる状態）であるという割り込み信号を、割り込み制御部３６を介して受信する。バスシステム１１は、その割り込み信号を受信すると、バス２１を介して、図２Ｃを参照して後述する、スイッチ制御部３５用のレジスタを制御することにより、メモリ３１乃至３３とバス２１乃至２３との接続の切り替えを制御する。
【００２４】
また、バスシステム１１は、他のバスシステム１２および１３に、例えば、メモリの接続切り替えが完了したことを示す割り込み信号を送信するために、バス２１を介して、図２Ｃを参照して後述する、割り込み制御部３６用のレジスタに書き込みを行う。割り込み制御部３６は、メインシステムであるバスシステム１１から、割り込み制御部３６用のレジスタに書き込みがあった場合、割り込み信号を、それぞれ、割り込み信号線２６および２７を介してバスシステム１２および１３に送信する。これにより、バスシステム１２および１３は、接続が切り替えられたメモリにアクセスを開始する。
【００２５】
図２は、共有メモリ部１４における各バスシステム用のコントロールレジスタの構成例を示す図である。図２の例においては、コントロールレジスタの上部の数字は、各レジスタのビット数を示している。
【００２６】
図２Ａは、バスシステム１２用のコントロールレジスタの構成例を示している。バスシステム１２用のコントロールレジスタは、他のバスシステムから見える必要はなく、バスシステム１２からさえ見えればよい。図２Ａの例の場合、ビット０乃至６は、空き領域とされ、ビット７は、割り込み制御部３６用のレジスタであるＲＤＹビット５１とされる。
【００２７】
ＲＤＹビット５１は、バスシステム１２からバスシステム１１に割り込み信号を送信するために、バスシステム１２により書き込まれるビットである。割り込み制御部３６は、バスシステム１２によりＲＤＹビット５１に「１」が書き込まれると、バスシステム１１に割り込み信号を送信する。また、割り込み制御部３６は、割り込み信号の送信が終わると、ＲＤＹビット５１を「０」（無効）に戻す。
【００２８】
図２Ｂは、バスシステム１３用のコントロールレジスタの構成例を示している。バスシステム１３用のコントロールレジスタは、他のバスシステムから見える必要はなく、バスシステム１３からさえ見えればよい。図２Ｂの例の場合、ビット０乃至６は、空き領域とされ、ビット７は、割り込み制御部３６用のレジスタであるＲＤＹビット５２とされる。
【００２９】
ＲＤＹビット５２は、バスシステム１３からバスシステム１１に割り込み信号を送信するために、バスシステム１３により書き込まれるビットである。割り込み制御部３６は、バスシステム１３によりＲＤＹビット５２に「１」が書き込まれると、バスシステム１１に割り込み信号を送信する。また、割り込み制御部３６は、割り込み信号の送信が終わると、ＲＤＹビット５２を「０」（無効）に戻す。
【００３０】
図２Ｃは、バスシステム１１用のコントロールレジスタの構成例を示している。バスシステム１１用のコントロールレジスタは、他のバスシステムから見える必要はなく、バスシステム１１からさえ見えればよい。また、バスシステム１１用のコントロールレジスタは、割り込み制御部３６およびスイッチ制御部３５により監視される。
【００３１】
図２Ｃの例の場合、ビット１乃至ビット５は、空き領域である。ビット６は、バスシステム１１からバスシステム１２に割り込み信号を送信するために、バスシステム１１により書き込まれる割り込み制御部３６用のレジスタであるＲＤＹビット５３とされる。同様に、ビット７は、バスシステム１１からバスシステム１３に割り込み信号を送信するために、バスシステム１１により書き込まれる割り込み制御部３６用のレジスタであるＲＤＹビット５４とされる。
【００３２】
割り込み制御部３６は、バスシステム１１によりＲＤＹビット５３に「１」が書き込まれると、バスシステム１２に割り込み信号を送信し、割り込み信号の送信が終わると、ＲＤＹビット５３を「０」（無効）に戻す。同様に、割り込み制御部３６は、バスシステム１１によりＲＤＹビット５４に「１」が書き込まれると、バスシステム１３に割り込み信号を送信し、割り込み信号の送信が終わると、ＲＤＹビット５４を「０」（無効）に戻す。
【００３３】
また、ビット０のＢＡＮＫビット５５は、メインシステムであるバスシステム１１により制御されるスイッチ制御部３５用のレジスタであり、メモリ３１乃至３３とバス２１乃至２３との接続の切り替えを制御するためのビットである。
【００３４】
図３を参照して、ＢＡＮＫビット５５について説明する。共有メモリ部１４においては、ＢＡＮＫビット５５が「０」の場合、バスシステム１２は、メモリ３２と接続され、バスシステム１３は、メモリ３３と接続されるように設定されている。また、共有メモリ部１４においては、ＢＡＮＫビット５５が「１」の場合、バスシステム１２は、メモリ３２と接続され、バスシステム１３は、メモリ３３と接続されるように設定されている。
【００３５】
したがって、バスシステム１１は、スイッチ制御部３５のＢＡＮＫビット５５に「０」を書き込むことにより、バス２２とメモリ３２、およびバス２３とメモリ３３を接続するように、スイッチ３４を制御する。また、バスシステム１１は、ＢＡＮＫビット５５に「１」を書き込むことにより、バス２２とメモリ３３、およびバス２３とメモリ３２を接続するように、スイッチ３４を制御する。
【００３６】
以上のようにして、バスシステム１１乃至１３は、メモリ３１乃至３３のうちのいずれかに１対１で接続される。すなわち、接続切り替え中でなければ、各バスシステム１１乃至１３は、それぞれ１対１に接続されたメモリ３１乃至３３を占有しているので、メモリアクセスの際に、排他制御などの調整をする必要がなく、各バスシステム１１乃至１３は、それぞれ独立して動作できる。
【００３７】
また、バスシステム１１乃至１３は、これらのメモリ３１乃至３３を、それぞれの有するアドレスマップ上にある１つのメモリとして見ることができる。したがって、共有メモリ部１４において、メモリ共有するために、メモリ３１乃至３３のアクセスする領域をわける必要はない。
【００３８】
さらに、メモリの接続切り替えを行う場合、サブシステムであるバスシステム１２およびバスシステム１３は、それぞれが有するアドレスマップ上で、上述したメモリ以外に、バスシステム１１に割り込み信号を出力するための割り込み制御部３６用のレジスタであるＲＤＹビット５１およびＲＤＹビット５２だけが見えていればよい。メインシステムであるバスシステム１１は、自己のアドレスマップ上で、メモリ以外に、メモリの接続切り替えを制御するためのスイッチ制御部３５用のレジスタであるＢＡＮＫビット５５、並びに、バスシステム１２およびバスシステム１３に割り込み信号を出力するための割り込み制御部３６用レジスタであるＲＤＹビット５３およびＲＤＹビット５４だけが見えていればよい。
【００３９】
したがって、各バスシステム間で、データまたはプログラムの送受信を行う場合、情報処理装置１は、メモリ３１乃至３３（実際は１つのメモリに見える）のアドレスと、各コントロールレジスタのアドレスを、各バスシステムの有するアドレスマップに付加して書き込めるようにするだけでよく、実装が容易に行える。
【００４０】
次に、図４を参照して、図１の情報処理装置１におけるメモリ接続切り替え処理について説明する。
【００４１】
いまの場合、バスシステム１１は、バス２１およびスイッチ３４を介して、メモリ３１に接続されている。バスシステム１２は、バス２２およびスイッチ３４を介して、メモリ３２に接続されている。バスシステム１３は、バス２３およびスイッチ３４を介して、メモリ３３に接続されている。このとき、各バスシステムは、他のバスシステムによる動作とは全く無関係に、独立して動作している。
また、メインシステムであるバスシステム１１は、どのバスシステム間でメモリ接続を切り替えるのかを予め認識している。なお、いまの場合、バスシステム１２およびバスシステム１３の間でのメモリの接続を切り替えるものとする。
【００４２】
バスシステム１２は、ステップＳ１において、自分の状態が、いま接続しているメモリ３２以外の他のメモリに接続できる状態であることをバスシステム１１に通知するために、割り込み信号を送信する。具体的には、バスシステム１２は、バス２２を介して、割り込み制御部３６用レジスタであるＲＤＹビット５１に「１」を書き込む。これに対応して、割り込み制御部３６は、バスシステム１２がメモリ接続切り替えできる状態であるという割り込み信号を、割り込み信号線２４を介して、バスシステム１１に送信する。
【００４３】
バスシステム１１は、ステップＳ２１において、割り込み制御部３６より送信されたバスシステム１２からの割り込み信号を、割り込み信号線２４を介して受信する。
【００４４】
同様に、バスシステム１３は、ステップＳ１１において、自分の状態が、いま接続しているメモリ３３以外の他のメモリに接続できる状態であることをバスシステム１１に通知するために、割り込み信号を送信する。具体的には、バスシステム１３は、バス２３を介して、割り込み制御部３６用レジスタのＲＤＹビット５２に「１」を書き込む。これに対応して、割り込み制御部３６は、バスシステム１３がメモリ接続できるであるという割り込み信号を、割り込み信号線２５を介して、バスシステム１１に送信する。
【００４５】
ステップＳ２２において、バスシステム１１は、割り込み制御部３６より送信されたバスシステム１３からの割り込み信号を、割り込み信号線２５を介して受信する。このとき、バスシステム１１は、バスシステム１２および１３の両方からメモリ接続できる状態であるという割り込み信号を受け取ったと判断し、ステップＳ２３に進む。
【００４６】
ステップＳ２３において、バスシステム１１は、バス２１を介して、スイッチ制御部３５用レジスタのＢＡＮＫビット５５に「１」を書き込み、ステップＳ２４に進む。これに対応して、スイッチ制御部３５は、バス２２とメモリ３３、およびバス２３とメモリ３２を接続するように、スイッチ３４を制御する。
【００４７】
ステップＳ２４において、バスシステム１１は、メモリの接続切り替えが終了したことをバスシステム１２に通知するために、バス２１を介して、割り込み制御部３６用レジスタのＲＤＹビット５３に「１」を書き込み、ステップＳ２５に進む。これに対応して、割り込み制御部３６は、メモリ接続切り替えが終了したという割り込み信号を、割り込み信号線２６を介して、バスシステム１２のバスマスタに送信する。
【００４８】
バスシステム１２は、ステップＳ２において、割り込み制御部３６より送信されたバスシステム１１からの割り込み信号を、割り込み信号線２６を介して受信し、ステップＳ３に進む。ステップＳ３において、バスシステム１２は、バス２２を介して、スイッチ３４により接続が切り替えられたメモリ３３にアクセスを開始する。
【００４９】
ステップＳ２５において、バスシステム１１は、メモリ接続切り替えが終了したことをバスシステム１３に通知するために、バス２１を介して、割り込み制御部３６用レジスタのＲＤＹビット５４に「１」を書き込む。これに対応して、割り込み制御部３６は、メモリ接続切り替えが終了したという割り込み信号を、割り込み信号線２７を介して、バスシステム１３のバスマスタに送信する。
【００５０】
バスシステム１３は、ステップＳ１２において、割り込み制御部３６より送信されたバスシステム１１からの割り込み信号を、割り込み信号線２７を介して受信し、ステップＳ１３に進む。ステップＳ１３において、バスシステム１３は、バス２３を介して、スイッチ３４により接続が切り替えられたメモリ３２にアクセスを開始する。
【００５１】
以上により、サブシステムであるバスシステム１２およびバスシステム１３のメモリ接続が切り替えられる。
【００５２】
以上のように、メモリ接続切り替えを行う場合、サブシステムであるバスシステム１２およびバスシステム１３は、それぞれが有するアドレスマップ上で、メモリ以外に、バスシステム１１に割り込み信号を出力するための割り込み制御部３６用のレジスタであるＲＤＹビット５１およびＲＤＹビット５２だけが見えていればよい。また、メインシステムであるバスシステム１１は、自己のアドレスマップ上で、メモリ以外に、メモリ接続切り替えを制御するためのスイッチ制御部３５用のレジスタであるＢＡＮＫビット５５、並びに、バスシステム１２およびバスシステム１３に割り込み信号を出力するための割り込み制御部３６用レジスタであるＲＤＹビット５３およびＲＤＹビット５４だけが見えていればよい。
【００５３】
したがって、各バスシステム間で、データまたはプログラムの送受信を行う場合、情報処理装置１は、メモリ３１乃至３３（実際は１つのメモリに見える）のアドレスと、各コントロールレジスタのアドレスを、各バスシステムの有するアドレスマップに付加して書き込めるようにするだけでよく、実装が容易に行える。
【００５４】
また、それぞれのバスシステムにおいて、この共有メモリ部１４のアドレスマップは、任意に設定できる。したがって、各バスシステム間で、データまたはプログラムの送受信を行う場合、新たに必要となるハードウエアの拡張は、ごくわずかであり、新規システム設計、既存のバスシステムの再利用にかかわらず、容易に実装ができるため、設計工数が削減される。
【００５５】
さらに、共有メモリ部１４内のメモリ３１乃至３３と、バスシステム１１乃至１３とのメモリ接続切り替えをするとき以外は、各バスシステムが接続されるメモリへのアクセスに制限がされないので、各バスシステムは、個々に独立したものとして動作できる。これにより、複雑な調整機能などのハードウエアコストが削減される。
【００５６】
したがって、各バスシステムにおいては、データを受け取るか受け渡すかに限らず、常に同じアドレスマップ上のメモリにアクセスすればよく、各バスシステムのマスタがアクセスするべきメモリ領域を分けて、個々のマスタでそのことを認識しておく必要もない。これにより、アドレスマップ上に割り当てるメモリ領域を節約でき、トータルで必要となるメモリも節約される。
【００５７】
図５は、本発明を適用した情報処理装置１０１の構成例を示している。図５においては、割り込み機能を有するバスマスタとしてＣＰＵ１１１を有するバスシステム、割り込み機能を有するバスマスタとしてＤＳＰ１１２を有するバスシステム、および、ＣＰＵ１１１を有するバスシステムと、ＤＳＰ１１２を有するバスシステム間でデータを受け渡しを行うための共有メモリユニット１１３により構成される。なお、図５においては、各バスシステムが行う処理の主語を、各バスシステムを制御するバスマスタであるＣＰＵ１１１またはＤＳＰ１１２として説明する。
【００５８】
共有メモリユニット１１３は、ＣＰＵ１１１とバス１１４を介して接続され、ＤＳＰ１１２とバス１１５を介して接続される。さらに、共有メモリユニット１１３は、ＣＰＵ１１１と割り込み信号線１３１を介して接続され、ＤＳＰ１１２と割り込み信号線１３２を介して接続される。なお、図５の例においては、ＣＰＵ１１１を有するバスシステムがメインシステムとされ、ＣＰＵ１１１が、情報処理装置１０１の各部を制御する。
【００５９】
共有メモリユニット１１３は、ＲＡＭ１２１および１２２、マルチプレクサ１２３および１２４、スイッチ１２５、スイッチ制御部１２６、割り込み制御部１２７、およびＯＮスイッチ１２８により構成される。ＲＡＭ１２１および１２２は、２０４８バイトにより構成され、ＣＰＵ１１１からのデータをバス１１４およびマルチプレクサ１２３を介して入出力し、ＣＰＵ１１２からのデータをバス１１５およびマルチプレクサ１２４を介して入出力する。
【００６０】
ＲＡＭ１２１および１２２は、マルチプレクサ１２３および１２４を介してそれぞれバス１１４および１１５のいずれかと１対１で接続をする。したがって、接続切り替え中でなければ、ＣＰＵ１１１およびＤＳＰ１１２は、それぞれ１対１に接続されたＲＡＭ１２１および１２２を占有しているので、メモリのアクセスの際に、排他制御などの調整をする必要がなく、ＣＰＵ１１１およびＤＳＰ１１２は、それぞれ独立して動作する。また、ＣＰＵ１１１およびＤＳＰ１１２は、これらのＲＡＭ１２１および１２２を、それぞれの有するアドレスマップ上にある１つのメモリとして見ることができる。したがって、メモリ共有のために、アクセスする領域をわける必要はない。
【００６１】
マルチプレクサ１２３は、スイッチ１２５からの制御信号に基づいて、ＣＰＵ１１１からバス１１４を介して入力されたデータを１つの信号にして、ＲＡＭ１２１または１２２のどちらか一方に供給する。マルチプレクサ１２４は、スイッチ１２５からの制御信号に基づいて、ＤＳＰ１１２からバス１１５を介して入力されたデータを１つの信号にして、ＲＡＭ１２１または１２２のどちらか一方に供給する。
【００６２】
図５の例において、ＤＳＰ１１２は、自分の状態が、接続されているＲＡＭから、他のＲＡＭに接続切り替えができる状態（すなわち、他のＲＡＭに接続できる状態）であるという割り込み信号をＣＰＵ１１１に送信するために、バス１１５を介して、割り込み制御部１２７用のレジスタ（図示せず）に書き込みを行う。割り込み制御部１２７は、ＣＰＵ１１１と割り込み信号線１３１を介して接続されている。したがって、割り込み制御部１２７は、ＤＳＰ１１２からレジスタに書き込みがあった場合、割り込み信号を、割り込み信号線１３１を介してＣＰＵ１１１に送信する。
【００６３】
ＣＰＵ１１１は、ＤＳＰ１１２からのＲＡＭの接続切り替えができる状態であるという割り込み信号を、割り込み制御部１２７を介して受信することにより、スイッチ制御部１２６にメモリの接続切り替え指示を要求する。具体的には、ＣＰＵ１１１は、バス１１４を介して図７を参照して後述する、スイッチ制御部１２６用のレジスタを制御することにより、ＲＡＭ１２１および１２２と、バス１１４および１１５の接続切り替えを指示する。
【００６４】
スイッチ制御部１２６は、ＣＰＵ１１１の指示に基づいて、スイッチ１２５を切り替える制御を行う。スイッチ１２５は、スイッチ制御部１２６の制御のもと、マルチプレクサ１２３および１２４を制御し、１対１接続であるＲＡＭ１２１および１２２と、バス１１４および１１５の接続切り替えを実行する。
【００６５】
また、ＣＰＵ１１１は、メモリの接続切り替えが完了したことを示す割り込み信号をＤＳＰ１１２に送信するために、バス１１４を介して、図７を参照して後述する、割り込み制御部１２７用のレジスタに書き込みを行う。割り込み制御部１２７は、ＤＳＰ１１２と割り込み信号線１３２を介して接続されている。したがって、割り込み制御部１２７は、ＣＰＵ１１１からＤＳＰコントロールレジスタに書き込みがあった場合、割り込み信号を、割り込み信号線１３２を介してＤＳＰ１１２に送信する。
【００６６】
ＯＮスイッチ１２８は、図１０を参照して後述するＯＮビットに基づいて、共有メモリユニット１１３のオン、オフを切り替える処理を行う。これにより、共有メモリユニット１１３への書き込みが制御され、さらに、共有メモリユニット１１３を使用しない場合には、共有メモリユニット１１３の消費電力を抑えることができる。
【００６７】
図６は、メモリ共有ユニット１１３におけるレジスタの構成図を示している。図６の例においては、メモリ共有ユニット１１３のレジスタは、アドレス「０ｘ０８７０００００」にバイト数「１」で構成されるコントロールレジスタ、アドレス「０ｘ０８７００００４」および「０ｘ０８７００００５」にバイト数「２」で構成されるＤＳＰブートコントロールレジスタ、アドレス「０ｘ０８７００００８」にバイト数「１」で構成されるＤＳＰオンレジスタ、および、アドレス「０ｘ０８７１００００」乃至「０ｘ０８７１０７ＦＦ」にバイト数「２０４８」で構成されるＤＳＰデータにより構成される。なお、各レジスタの詳細は、図７乃至図１０を参照して順に後述する。
【００６８】
図７は、共有メモリユニット１１３のＤＳＰコントロールレジスタの構成例を示す図である。図７の例においては、ＤＳＰコントロールレジスタの上部の数字は、各レジスタのビット数を示している。
【００６９】
図７の例の場合、ＤＳＰコントロールレジスタは、空き領域のビット１乃至６、割り込み制御部３６用のレジスタであるＲＤＹビット１５１（ビット７）、およびスイッチ制御部３５用のレジスタであるＢＡＮＫビット１５２（ビット０）により構成される。
【００７０】
ＲＤＹビット１５１は、ＣＰＵ１１１からＤＳＰ１１２に、メモリの接続切り替えが完了したという割り込み信号を送信するために書き込まれるビットである。割り込み制御部１２７は、ＣＰＵ１１１によりＲＤＹビット１５１に「１」が書き込まれると、ＤＳＰ１１２に割り込み信号を送信する。また、割り込み制御部１２７は、割り込み信号の送信が終わると、ＲＤＹビット１５１を「０」（無効）に戻す。ＢＡＮＫビット１５２は、ＣＰＵ１１１により制御されるスイッチ制御部１２６用のレジスタであり、ＲＡＭ１２１および１２２と、バス１１４および１１５の接続切り替えを制御するためのビットである。
【００７１】
なお、メモリの接続切り替えが可能であるという割り込み信号をＣＰＵ１１１に送信するために、ＤＳＰ１１２により書き込まれるレジスタは、図７のＤＳＰコントロールレジスタにおいて、ビット０のＢＡＮＫビットがない点が異なるだけであり、図示および説明を省略する。なお、このレジスタに「１」が書き込まれると、割り込み制御部１２７は、ＣＰＵ１１１に割り込み信号を送信し、送信が終わると、レジスタを「０」（無効）に戻す。
【００７２】
図８を参照して、ＢＡＮＫビット１５２について説明する。メモリ共有ユニット１１３においては、ＢＡＮＫビット１５２が「０」の場合、ＣＰＵ１１１は、ＲＡＭ１２１と接続され、ＤＳＰ１１２は、ＲＡＭ１２２と接続されるように設定されている。また、ＢＡＮＫビット１５２が「１」の場合、ＣＰＵ１１１は、ＲＡＭ１２２と接続され、ＤＳＰ１１２は、ＲＡＭ１２１と接続されるように設定されている。
【００７３】
したがって、ＣＰＵ１１１は、スイッチ制御部１２５のＢＡＮＫビット１５２に「０」を書き込むことにより、ＣＰＵ１１１とＲＡＭ１２１、およびＤＳＰ１１２とＲＡＭ１２２を接続するように、スイッチ１２５を制御する。また、ＣＰＵ１１１は、ＢＡＮＫビット１５２に「１」を書き込むことにより、ＣＰＵ１１１とＲＡＭ１２２、およびＤＳＰ１１２とＲＡＭ１２１を接続するように、スイッチ１２５を制御する。
【００７４】
以上のようにして、ＣＰＵ１１１およびＤＳＰ１１２は、ＲＡＭ１２１および１２２のうちのいずれかに１対１で接続されるため、その接続されたＲＡＭを占有することができる。
【００７５】
図９は、共有メモリユニット１１３のＤＳＰブートコントロールレジスタの構成例を示す図である。図９の例においては、ＤＳＰブートコントロールレジスタは、「０ｘ０８７００００５」および「０ｘ０８７００００４」の２バイトにより構成され、ＤＳＰブートコントロールレジスタの上部の数字は、各レジスタのビット数を示している。
【００７６】
図９の例の場合、ＤＳＰブートコントロールレジスタのビット１５乃至ビット８のＴＢＴＳＤＡ７乃至ＴＢＴＳＤＡ０は、共有メモリユニット１１３のＤＳＰプログラム格納領域のアドレス上位（ビット１９乃至１２）を設定するビットである。ＤＳＰブートコントロールレジスタのビット１５乃至ビット８のＴＢＴＰＮＭ７乃至ＴＢＴＰＮＭ０は、ＤＳＰのブートルーチンに引き渡すアプリケーション番号を設定するビットである。
【００７７】
図１０は、共有メモリユニット１１３のＤＳＰオンレジスタの構成例を示す図である。図１０の例においては、ＤＳＰオンレジスタの上部の数字は、各レジスタのビット数を示している。
【００７８】
ＤＳＰオンレジスタのビット１乃至７は、空き領域であり、ビット０は、共有メモリユニット１１３のオンオフを制御するＯＮビットである。ＣＰＵ１１１は、バス１１４を介して、ＯＮスイッチ１２８を制御し、ＤＳＰオンレジスタのＯＮビットに、「１」を書き込むことにより、共有メモリユニット１１３のＤＳＰオンレジスタ以外へのＣＰＵ１１１からの書き込みを可能にする（なお、ＤＳＰ１１２からのアクセスは可能）。共有メモリユニット１１３を使用しない場合には、ＤＳＰオンレジスタのＯＮビットに、「０」を書き込むことにより、共有メモリユニット１１３の消費電力を抑えることができる。
【００７９】
次に、図１１のフローチャートを参照して、図５の情報処理装置１０１におけるメモリ接続切り替え処理について説明する。
【００８０】
いまの場合、ＣＰＵ１１１は、バス１１４およびマルチプレクサ１２３を介してＲＡＭ１２１に接続されている。ＤＳＰ１１２は、バス１１５およびマルチプレクサ１２４を介してＲＡＭ１２２に接続されている。このとき、ＣＰＵ１１およびＤＳＰ１１２をバスマスタとする各バスシステムは、他のバスシステムの動作とは全く無関係に、独立して動作している。また、メインシステムであるバスシステムのＣＰＵ１１１は、ＣＰＵ１１１およびＤＳＰ１１２の間でメモリ接続を切り替えるものとして認識している。
【００８１】
ＤＳＰ１１２は、ステップＳ５１において、自分の状態が、いま接続しているＲＡＭ１２２以外の他のＲＡＭ（いまの場合、ＲＡＭ１２１）に接続できる状態であることをＣＰＵ１１１に通知するために、バス１１５を介して、ＤＳＰコントロールレジスタの割り込み制御部１２７用のレジスタであるＲＤＹビット１５１に「１」を書き込む。これに対応して、ステップＳ７１において、割り込み制御部１２７は、ＤＳＰ１１２がメモリ接続切り替えが可能であるという割り込み信号を、割り込み信号線１３１を介して、ＣＰＵ１１１に送信する。なお、ＤＳＰ１１２からＣＰＵ１１１への割り込み信号は、ＤＳＰ１１２側のクロックで１サイクル分の幅をもつパルス信号として出力される。
【００８２】
ＣＰＵ１１１は、ステップＳ９１において、割り込み制御部１２７を介して送信されたＤＳＰ１１２からの割り込み信号を、割り込み信号線１３１を介して受信し、ステップＳ９２に進み、ＣＰＵ１１１は、バス１１４を介して、ＤＳＰコントロールレジスタのスイッチ制御部１２６用レジスタであるＢＡＮＫビット１５２に「１」を書き込む。これに対応して、ステップＳ７２において、スイッチ制御部１２６は、マルチプレクサ１２３がＲＡＭ１２２にデータを入出力し、マルチプレクサ１２４がＲＡＭ１２１にデータを入出力するように、スイッチ１２５を制御し、ステップＳ７３に進む。
【００８３】
ステップＳ７３において、スイッチ制御部１２６は、メモリ接続切り替えが終了したことを、バス１１４を介してＣＰＵ１１１に通知する。ＣＰＵ１１１は、ステップＳ９３において、メモリ接続切り替えの終了の通知をスイッチ制御部１２６より受信し、ステップＳ９４に進む。ステップＳ９４において、ＣＰＵ１１１は、メモリ接続切り替えが終了したことをＤＳＰ１１２に通知するために、バス１１４を介して、ＤＳＰコントロールレジスタの割り込み制御部１２７用のレジスタであるＲＤＹビット１５１に「１」を書き込み、ステップＳ９５に進む。
ステップＳ９５において、ＣＰＵ１１１は、バス１１４およびマルチプレクサ１２３を介して、スイッチ１２５により接続が切り替えられたＲＡＭ１２２にアクセスを開始する。
【００８４】
ステップＳ９４におけるＤＳＰコントロールレジスタのＲＤＹビット１５１の書き込みに対応して、割り込み制御部１２７は、ステップＳ７４において、メモリ接続切り替えが終了したという割り込み信号を、割り込み信号線１３２を介して、ＤＳＰ１１２に送信する。なお、ＣＰＵ１１１からＤＳＰ１１２への割り込み信号は、ＣＰＵ１１１側のクロックで２サイクル分の幅をもつパルス信号として出力される。
【００８５】
ＤＳＰ１１２は、ステップＳ５２において、割り込み制御部１２７より送信されたＣＰＵ１１１からの割り込み信号を、バス１１５を介して受信し、ステップＳ５３に進む。ステップＳ５３において、ＤＳＰ１１２は、バス１１５およびマルチプレクサ１２４を介して、スイッチ１２５により接続が切り替えられたＲＡＭ１２２にアクセスを開始する。
【００８６】
以上により、ＣＰＵ１１１およびＤＳＰ１１２間のメモリ（ＲＡＭ）接続が切り替えられる。なお、このときのＲＡＭ１２１および１２２のクロックについて説明する。
【００８７】
いま、ＣＰＵ１１１のクロックをＣＬＫＣＰＵとし、ＤＳＰ１１２のクロックをＣＬＫＤＳＰとする。ＣＬＫＣＰＵの周波数が、ＣＬＫＤＳＰの周波数よりも大きいならば、ＤＳＰコントロールレジスタのＢＡＮＫビット１５２の書き込みから、メモリ接続が切り替えられた後のクロックが出力されるまで、最大で、ＣＬＫＣＰＵで１サイクル＋ＣＬＫＤＳＰで３サイクルの期間が必要になる。反対に、ＣＬＫＤＳＰの周波数が、ＣＬＫＣＰＵの周波数よりも大きいならば、ＤＳＰコントロールレジスタのＢＡＮＫビット１５２の書き込みから、メモリ接続が切り替えられた後のクロックが出力されるまで、最大で、ＣＬＫＤＳＰで１サイクル＋ＣＬＫＣＰＵで３サイクルの期間が必要になる。
【００８８】
例えば、図１２の例においては、ＣＬＫＣＰＵは、ＣＰＵ１１１のクロックを示しており、ＣＬＫＤＳＰは、ＤＳＰ１１２のクロックを示している。ここで、ＣＬＫＣＰＵとＣＬＫＤＳＰの周波数は、３：２である（すなわち、ＣＬＫＣＰＵ＞ＣＬＫＤＳＰ）とする。ＢＡＮＫは、ＤＳＰコントロールレジスタのＢＡＮＫビット１５２を示しており、ＣＬＫ０およびＣＬＫ１は、それぞれ、ＲＡＭ１２１およびＲＡＭ１２２のクロックを示している。
【００８９】
まず、ＣＰＵ１１１がＲＡＭ１２１に接続され、ＣＬＫＣＰＵ＝ＣＬＫ０であり、かつ、ＤＳＰ１１２がＲＡＭ１２２に接続され、ＣＬＫＤＳＰ＝ＣＬＫ１である場合に、スイッチ制御部１２６は、スイッチ１２５を制御し、ｔ１のタイミングでＤＳＰコントロールレジスタのＢＡＮＫビット１５２に「１」を書き込み、ＣＰＵ１１１がＲＡＭ１２２に接続されるように、ＤＳＰ１１２がＲＡＭ１２１に接続されるようにメモリ接続を切り替える。
【００９０】
図１２の例の場合、ＣＬＫＣＰＵと同じクロックであったＣＬＫ０は、ｔ１のタイミングにおいて、ＤＳＰコントロールレジスタのＢＡＮＫビット１５２に「１」が書き込まれると、ｔ１のタイミング後のＣＬＫ１の立ち上がりエッジのタイミングｔ２から、ＣＬＫＤＳＰで３サイクルの期間を経た後、ｔ４のタイミングにおいて、ＣＬＫＤＳＰと同じクロックで出力される（ｔ１からｔ２までの期間が最大でＣＬＫＣＰＵの１サイクル分となるので、ＢＡＮＫビット１５２への書き込みから、切り替え後のＣＬＫ０が出力されるまでの期間は、最大でＣＬＫＣＰＵで１サイクル＋ＣＬＫＤＳＰで３サイクルとなる）。
【００９１】
一方、ＣＬＫＤＳＰと同じクロックであったＣＬＫ１は、ｔ１のタイミングにおいて、ＤＳＰコントロールレジスタのＢＡＮＫビット１５２に「１」が書き込まれると、ｔ１のタイミング後のＣＬＫ０の立ち上がりエッジのタイミングｔ２から、ＣＬＫＣＰＵで３サイクルの期間を経た後、ｔ３のタイミングにおいて、ＣＬＫＣＰＵと同じクロックで出力される（ＢＡＮＫビット１５２への書き込みから、切り替え後のＣＬＫ１が出力されるまでの期間は、ＣＬＫＣＰＵで４サイクルとなる）。
【００９２】
以上のようなタイミングで、ＲＡＭ１２１および１２２のクロックが切り替えられる。
【００９３】
なお、共有メモリユニット１１３に、ＣＬＫＣＰＵおよびＣＬＫＤＳＰの両方が入力されていないとこれらのクロックは、切り替えることができない。
【００９４】
以上により、図５の情報処理装置１０１においても、図１の情報処理装置１と同様の効果が奏される。すなわち、メモリ接続切り替えを行う場合、サブシステムであるＤＳＰ１１２が有するアドレスマップ上で、メモリ以外に、ＣＰＵ１１１に割り込み信号を出力するための割り込み制御部１２７用のレジスタだけが見えていればよい。また、メインシステムであるＣＰＵ１１１は、自己のアドレスマップ上で、メモリ以外に、メモリ接続切り替えを制御するためのスイッチ制御部１２６用のレジスタであるＢＡＮＫビット１５２、並びに、ＤＳＰ１１２に割り込み信号を出力するための割り込み制御部１２７用レジスタであるＲＤＹビット１５１だけが見えていればよい。
【００９５】
したがって、各バスシステム間で、データまたはプログラムの送受信を行う場合、情報処理装置１０１は、ＲＡＭ１２１および１２２（実際は１つのメモリに見える）のアドレスと、ＤＳＰコントロールレジスタのアドレスを、各バスシステムの有するアドレスマップに付加して書き込めるようにするだけでよく、実装が容易に行える。
【００９６】
また、それぞれのバスシステムにおいて、この共有メモリユニット１１３のアドレスマップは、任意に設定できる。したがって、各バスシステム間で、データまたはプログラムの送受信を行う場合、新たに必要となるハードウエアの拡張は、ごくわずかであり、新規システム設計、既存のバスシステムの再利用にかかわらず、容易に実装ができるため、設計工数が削減される。
【００９７】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、例えば、図１の情報処理装置１および図５の情報処理装置１０１は、図１３に示されるような情報処理装置２０１により構成される。
【００９８】
図１３において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１１は、ＲＯＭ（ＲｅａｄＯｎｌｙ  Ｍｅｍｏｒｙ）  ２１２に記憶されているプログラム、または、記憶部２１８からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ２１３にはまた、ＣＰＵ２１１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００９９】
ＣＰＵ２１１、ＲＯＭ２１２、およびＲＡＭ２１３は、バス２１４を介して相互に接続されている。このバス２１４にはまた、入出力インタフェース２１５も接続されている。
【０１００】
入出力インタフェース２１５には、キーボード、マウスなどよりなる入力部２１６、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などよりなるディスプレイ、並びにスピーカなどよりなる出力部２１７、記録部２１８、モデム、ターミナルアダプタなどより構成される通信部２１９が接続されている。通信部２１９は、バスや図示しないネットワークを介しての通信処理を行う。
【０１０１】
入出力インタフェース２１５にはまた、必要に応じてドライブ２２０が接続され、磁気ディスク２２１、光ディスク２２２、光磁気ディスク２２３、もしくは半導体メモリ２２４などが適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部２１８にインストールされる。
【０１０２】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０１０３】
この記録媒体は、図１３に示すように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク２２１（フレキシブルディスクを含む）、光ディスク２２２（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）を含む）、光磁気ディスク２２３（ＭＤ（Ｍｉｎｉ−Ｄｉｓｋ）（商標）を含む）、もしくは半導体メモリ２２４などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭ２１２や、記憶部２１８などで構成される。
【０１０４】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１０５】
【発明の効果】
以上の如く、本発明によれば、複数のバス間で、高機能かつ低コストでメモリを共有することができる。
【図面の簡単な説明】
【図１】本発明を適用した情報処理装置の構成例を示すブロック図である。
【図２】図１の共有メモリ部のコントロールレジスタの構成例を示す図である。
【図３】図２のＢＡＮＫビットを説明する図である。
【図４】図１の情報処理装置のメモリ接続切り替え処理を説明するフローチャートである。
【図５】本発明を適用した情報処理装置の他の構成例を示すブロック図である。
【図６】図５の共有メモリユニットのレジスタの構成例を示す図である。
【図７】図６のＤＳＰコントロールレジスタの構成例を示す図である。
【図８】図７のＢＡＮＫビットを説明する図である。
【図９】図６のＤＳＰブートコントロールレジスタの構成例を示す図である。
【図１０】図６のＤＳＰオンレジスタの構成例を示す図である。
【図１１】図５の情報処理装置のメモリ接続切り替え処理を説明するフローチャートである。
【図１２】図５の情報処理装置のメモリ接続切り替え時のクロックについて説明する図である。
【図１３】本発明を適用した情報処理装置のさらに他の構成例を示すブロック図である。
【符号の説明】
１  情報処理装置，１１乃至１３  バスシステム，１４  共有メモリ部，２１乃至２３  バス，  ２４乃至２７  割り込み信号線，３１乃至３３  メモリ，３４  スイッチ，３５  スイッチ制御部，３６  割り込み制御部，１０１  情報処理装置，１１１  ＣＰＵ，１１２  ＤＳＰ，１１３  共有メモリユニット，１１４，１１５  バス，１２１，１２２  ＲＡＭ，１２５  スイッチ，１２６  スイッチ制御部，１２７  割り込み制御部，１３１，１３２  割り込み信号線
【図１】
2004213407.tif 000003
【図２】
2004213407.tif 000004
【図３】
2004213407.tif 000005
【図４】
2004213407.tif 000006
【図５】
2004213407.tif 000007
【図６】
2004213407.tif 000008
【図７】
2004213407.tif 000009
【図８】
2004213407.tif 000010
【図９】
2004213407.tif 000011
【図１０】
2004213407.tif 000012
【図１１】
2004213407.tif 000013
【図１２】
2004213407.tif 000014
【図１３】
2004213407.tif 000015