(57)【要約】【課題】第２の演算処理装置用の初期起動後のプログラムを第１の演算処理装置に接続された第１の不揮発性メモリに格納するようにした構成において第１の演算処理装置に動作異常が発生した場合でも、第２の演算処理装置を起動させて動作を行わせることを可能にする。【解決手段】ＤＳＰ２０は、故障検知回路４２によりＣＰＵ１０の動作異常が検知されない場合、シリアルＲＯＭ６０に格納されたＤＳＰ用初期ブートプログラム６１により動作し、ＲＯＭ３０のＤＳＰ用初期ブート後のプログラム３２をＲＡＭ５０に転送して実行する。ＤＳＰ２０は、故障検知回路４２によりＣＰＵ１０の動作異常が検知された場合、シリアルＲＯＭ６０に格納されたＤＳＰ用故障解析プログラム６２により動作する。【選択図】図１
2012190131.tif 000002
【特許請求の範囲】
【請求項１】
第１の演算処理装置と、
前記第１の演算処理装置と伝送線路により接続された第２の演算処理装置と、
前記第１の演算処理装置と第１のバスインタフェースにより接続され、前記第１の演算処理装置に予め設定された処理を行わせるための第１の演算処理装置用プログラムと、初期起動後の前記第２の演算処理装置に動作を行わせるための前記第２の演算処理装置用の初期起動後のプログラムとが格納された第１の不揮発性メモリと、
前記第２の演算処理装置に対して初期起動動作のみを行わせるための第２の演算処理装置用の初期起動プログラムと、前記第２の演算処理装置に対して限定された動作を行わせるための前記第２の演算処理装置用の限定プログラムとが格納され、第２のバスインタフェースによって前記第２の演算処理装置と接続された第２の不揮発性メモリと、
前記第２の演算処理装置に接続された揮発性メモリと、
前記第１の演算処理装置の動作異常を検知する検知手段と、
前記検知手段により前記第１の演算処理装置の動作異常が検知されない場合には、前記第２の不揮発性メモリに格納された前記第２の演算処理装置用の初期起動プログラムにより前記第２の演算処理装置を動作させ、前記検知手段により前記第１の演算処理装置の動作異常が検知された場合には、前記第２の不揮発性メモリに格納された前記第２の演算処理装置用の限定プログラムにより前記第２の演算処理装置を動作させるよう切り替える切替手段と、
を備えた情報処理装置。
【請求項２】
前記第２の演算処理装置用の初期起動プログラムは、前記第２の演算処理装置に対して、前記第１の不揮発性メモリに格納されている前記第２の演算処理装置用の初期起動後のプログラムを前記第１の演算処理装置を介して前記揮発性メモリに転送して格納する動作を行わせる請求項１記載の情報処理装置。
【請求項３】
前記限定プログラムは、前記第２の演算処理装置に対して、前記第１の演算処理装置の動作異常の原因を解析するための動作を行わせるための解析プログラムである請求項１または２記載の情報処理装置。
【請求項４】
前記第２のバスインタフェースは、前記第１のバスインタフェースおよび前記伝送線路よりも転送速度が遅く、
前記限定プログラムは、前記第２の演算処理装置に対して、前記第１の不揮発性メモリに格納されている前記第２の演算処理装置用の初期起動後のプログラムと同様の通常の動作を行わせるためのプログラムである請求項１または２記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関する。
【背景技術】
【０００２】
特許文献１には、上位ユニットと下位ユニットとの間に共有ＲＡＭを設け、上位ユニットのＲＯＭに格納された下位ＣＰＵ用のプログラムを共有ＲＡＭを介して下位ＲＡＭに転送することにより下位ユニットにＲＯＭを設けることなく下位ＣＰＵの起動を可能にした制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２４４８５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、第２の演算処理装置用の初期起動後のプログラムを第１の演算処理装置に接続された第１の不揮発性メモリに格納するようにした構成において第１の演算処理装置に動作異常が発生した場合でも、第２の演算処理装置を起動させて動作を行わせることが可能な情報処理装置を提供することである。
【課題を解決するための手段】
【０００５】
請求項１に係る本発明は、第１の演算処理装置と、
前記第１の演算処理装置と伝送線路により接続された第２の演算処理装置と、
前記第１の演算処理装置と第１のバスインタフェースにより接続され、前記第１の演算処理装置に予め設定された処理を行わせるための第１の演算処理装置用プログラムと、初期起動後の前記第２の演算処理装置に動作を行わせるための前記第２の演算処理装置用の初期起動後のプログラムとが格納された第１の不揮発性メモリと、
前記第２の演算処理装置に対して初期起動動作のみを行わせるための第２の演算処理装置用の初期起動プログラムと、前記第２の演算処理装置に対して限定された動作を行わせるための前記第２の演算処理装置用の限定プログラムとが格納され、第２のバスインタフェースによって前記第２の演算処理装置と接続された第２の不揮発性メモリと、
前記第２の演算処理装置に接続された揮発性メモリと、
前記第１の演算処理装置の動作異常を検知する検知手段と、
前記検知手段により前記第１の演算処理装置の動作異常が検知されない場合には、前記第２の不揮発性メモリに格納された前記第２の演算処理装置用の初期起動プログラムにより前記第２の演算処理装置を動作させ、前記検知手段により前記第１の演算処理装置の動作異常が検知された場合には、前記第２の不揮発性メモリに格納された前記第２の演算処理装置用の限定プログラムにより前記第２の演算処理装置を動作させるよう切り替える切替手段とを備えた情報処理装置である。
【０００６】
請求項２に係る本発明は、前記第２の演算処理装置用の初期起動プログラムが、前記第２の演算処理装置に対して、前記第１の不揮発性メモリに格納されている前記第２の演算処理装置用の初期起動後のプログラムを前記第１の演算処理装置を介して前記揮発性メモリに転送して格納する動作を行わせる請求項１記載の情報処理装置である。
【０００７】
請求項３に係る本発明は、前記限定プログラムが、前記第２の演算処理装置に対して、前記第１の演算処理装置の動作異常の原因を解析するための動作を行わせるための解析プログラムである請求項１または２記載の情報処理装置である。
【０００８】
請求項４に係る本発明は、前記第２のバスインタフェースが、前記第１のバスインタフェースおよび前記伝送線路よりも転送速度が遅く、
前記限定プログラムが、前記第２の演算処理装置に対して、前記第１の不揮発性メモリに格納されている前記第２の演算処理装置用の初期起動後のプログラムと同様の通常の動作を行わせるためのプログラムである請求項１または２記載の情報処理装置である。
【発明の効果】
【０００９】
請求項１に係る本発明によれば、第２の演算処理装置用の初期起動後のプログラムを第１の演算処理装置に接続された第１の不揮発性メモリに格納するようにした構成において第１の演算処理装置に動作異常が発生した場合でも、第２の演算処理装置を起動させて動作を行わせることが可能な情報処理装置を提供することができる。
【００１０】
請求項２に係る本発明によれば、請求項１に係る本発明により得られる効果に加えて、第１の演算処理装置に動作異常が発生していない場合には、第１の不揮発性メモリに格納されている第２の演算処理装置用の初期起動後のプログラムを揮発性メモリに転送して格納することにより第２の演算処理装置に動作を行わせることが可能な情報処理装置を提供することができる。
【００１１】
請求項３に係る本発明によれば、請求項１または２に係る本発明により得られる効果に加えて、第１の演算処理装置に動作異常が発生した場合には、第２の演算処理装置により第１の演算処理装置の動作異常の原因を解析することが可能な情報処理装置を提供することができる。
【００１２】
請求項４に係る本発明によれば、請求項１または２に係る本発明により得られる効果に加えて、第２の演算処理装置の通常の起動時間を遅くすることなく、第１の演算処理装置に動作異常が発生した場合でも、第２の演算処理装置に通常の動作を行わせることが可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態の情報処理装置のシステム構成を示す図である。
【図２】ＣＰＵ１０が正常に動作している場合における起動時の動作を示したフローチャートである。
【図３】ＣＰＵ１０が正常に動作している場合における起動時の動作を説明するための図である。
【図４】ＣＰＵ１０に動作異常が発生した場合におけるＤＳＰ２０の起動時の動作を示したフローチャートである。
【図５】ＣＰＵ１０に動作異常が発生した場合におけるＤＳＰ２０の起動時の動作を説明するための図である。
【発明を実施するための形態】
【００１４】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
図１は本発明の一実施形態の情報処理装置のシステム構成を示す図である。
【００１５】
本実施形態の情報処理装置は、図１に示されるように、ＣＰＵ(Central Processing Unit)１０とＤＳＰ(Digital Signal Processor)２０という２つのＣＰＵ（演算処理装置）を有している。ＣＰＵ１０は上位ＣＰＵとして機能し、ＤＳＰ２０は下位ＣＰＵとして機能する。下位ＣＰＵとして機能するＤＳＰ２０は、上位ＣＰＵとして機能するＣＰＵ１０の制御に基づいて、指定された処理を実行する。例えば、ＣＰＵ１０が実行すべき処理の一部をＤＳＰ２０に対して実行するような指示を行い処理負荷を分散するような動作が行われる。
【００１６】
ＣＰＵ１０とＤＳＰ２０との間は、ＰＣＩ（Peripheral Component Interconnect）バスという伝送線路により接続されている。
【００１７】
また、本実施形態の情報処理装置は、ＣＰＵ１０、ＤＳＰ２０とともに、ＲＯＭ３０と、ロジックＩＣ４０と、ＲＡＭ５０と、シリアルＲＯＭ６０とを有している。
【００１８】
ＲＯＭ３０は、パラレル接続のローカルバスによりＣＰＵ１０と接続された不揮発性メモリであり、ＣＰＵ用プログラム３１とＤＳＰ用初期ブート後のプログラム３２とを格納している。ＣＰＵ用プログラム３１は、ＣＰＵ１０に予め設定された処理を行わせるためのプログラムである。また、ＤＳＰ用初期ブート後のプログラム３２は、初期起動後のＤＳＰ２０に動作を行わせるためのプログラムである。
【００１９】
ＲＡＭ５０は、ローカルバスによりＤＳＰ２０により接続され、ＤＳＰ２０の起動時には、ＤＳＰ用初期ブート後のプログラム３２を格納するための揮発性メモリである。
【００２０】
シリアルＲＯＭ６０は、シリアル接続のローカルバスによりロジックＩＣ４０を介してＤＳＰ２０と接続された不揮発性メモリであり、ＤＳＰ用初期ブートプログラム６１と、ＤＳＰ用故障解析プログラム６２とを格納している。
【００２１】
ＤＳＰ用初期ブートプログラム６１は、ＤＳＰ２０に対して初期動作のみを行わせるための初期起動プログラムである。具体的には、ＤＳＰ用初期ブートプログラム６１は、ＤＳＰ２０に対して、ＲＯＭ３０に格納されているＤＳＰ用初期ブート後のプログラム３２をＣＰＵ１０を介してＲＡＭ５０に転送して格納する動作を行わせるプログラムである。
【００２２】
また、ＤＳＰ用故障解析プログラム６２は、ＤＳＰ２０に対して、ＣＰＵ１０の動作異常の原因を解析するための動作を行わせるための解析プログラムである。
【００２３】
ＤＳＰ初期ブートプログラム６１やＤＳＰ用故障解析プログラム６２は、ＲＯＭ３０に格納されたＤＳＰ用初期ブート後のプログラム３２と比較して、データサイズが小さい。そのため、シリアルＲＯＭ６０の記憶容量は小さくて良い。その結果、１つのＲＯＭ３０にＣＰＵ用プログラム３１とＤＳＰ用初期ブート後のプログラム３２をまとめて格納することにより、ＤＳＰ２０の動作プログラムを記憶するためにＲＯＭ３０とは独立してもう１つＲＯＭを設ける場合と比較してコスト低減が図られている。
【００２４】
ロジックＩＣ４０は、ＤＳＰ２０およびシリアルＲＯＭ６０とシリアル接続のローカルバスにより接続され、制御回路４１と故障検知回路４２を備えている。故障検知回路４２は、ＣＰＵ１０からのＣＰＵ故障検知用信号に基づいて、ＣＰＵ１０の動作異常を検知する。
【００２５】
制御回路４１は、故障検知回路４１がＣＰＵ１０の動作異常を検知しているか否かに基づいて、シリアルＲＯＭ６０から読み出すプログラムを切り替えるような制御を行う。具体的には、制御回路４１は、故障検知回路４２によりＣＰＵ１０の動作異常が検知されない場合には、シリアルＲＯＭ６０に格納されたＤＳＰ用初期ブートプログラム６１によりＤＳＰ２０を動作させる。そして、制御回路４１は、故障検知回路４２によりＣＰＵ１０の動作異常が検知された場合には、シリアルＲＯＭ６０に格納されたＤＳＰ用故障解析プログラム６２によりＤＳＰ２０を動作させる。
【００２６】
シリアルＲＯＭ６０は、２線式シリアルインターフェイスバスを備えたＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）である。そのため、特殊な処理が行なわれることにより、シリアルＲＯＭ６０に対してデータを書き込むことが可能な構成となっている。また、シリアルＲＯＭ６０に備えられたシリアルインタフェースバスは、ＳＰＩ（Serial Peripheral Interface）バスと呼ばれるバスインタフェースであり、ＲＯＭ６０とロジックＩＣ４０との間、およびロジックＩＣ４０ＤＳＰ２０との間は、このＳＰＩバスと呼ばれるバスにより接続されている。
【００２７】
このＳＰＩバスは、一般的に低速なバスであり、ＲＯＭ３０とＣＰＵ１０との間を接続しているパラレルの高速なローカルバスや、ＣＰＵ１０とＤＳＰ２０との間を接続しているＰＣＩバスと比較して転送速度が遅くなっている。
【００２８】
なお、本実施形態では、故障検知回路４２がＣＰＵ１０の動作異常を検知した場合、ＤＳＰ用故障解析プログラム６２によりＤＳＰ２０の動作が行われるものとして説明したが、ＤＳＰ２０に対して限定的な動作を行わせるための限定プログラムによりＤＳＰ２０の動作が行われるようにしてもよい。
【００２９】
次に、本実施形態の情報処理装置の動作について図面を参照して詳細に説明する。
【００３０】
先ず、ＣＰＵ１０が正常に動作している場合における起動時の動作を図２のフローチャートを参照して説明する。
【００３１】
情報処理装置の起動が行われる場合、先ずロジックＩＣ４０がＣＰＵ１０のリセットを解除する（ステップＳ１０１）。すると、ＣＰＵ１０は、パラレルのローカルバスに接続されたＲＯＭ３０から、ＣＰＵ用プログラム３１を実行する。なお、本実施形態では、ＲＯＭ３０内に格納されているＣＰＵ用プログラム３１を実行する場合について説明するが、ＣＰＵ用プログラム３１をＲＡＭ（図示せず）に格納しておいて実行するようにしてもよい。
【００３２】
次に、ＣＰＵ用プログラム３１により起動が行われたＣＰＵ１０がロジックＩＣ４０に対してＤＳＰ起動指示信号によりＤＳＰ２０の起動を指示する（ステップＳ１０２）。すると、ロジックＩＣ４０の制御回路４１は、ＤＳＰ２０のリセットを解除する（ステップＳ１０３）。
【００３３】
ここでは、故障検知回路４２は、ＣＰＵ１０の動作異常を検知していない。そのため、ＤＳＰ２０は、図３に示すように、ロジックＩＣ４０を介してシリアルＲＯＭ６０内のＤＳＰ用初期ブートプログラム６１を実行する（ステップＳ１０４）。
【００３４】
このＤＳＰ用初期ブートプログラム６１には、ＤＳＰ２０に対してＲＯＭ３２内の初期ブート後のプログラム３２をＲＯＭ３０からＲＡＭ５０に転送する命令が記述されている。そのため、ＤＳＰ用初期ブートプログラム６１を実行したＤＳＰ２０は、図３に示すように、ＤＳＰ用初期ブート後のプログラム３２をＲＯＭ３０からＲＡＭ５０に転送する（ステップＳ１０５）。
【００３５】
そして、ＤＳＰ２０は、ＲＡＭ５０に格納されたＤＳＰ用初期ブート後のプログラムを実行する（ステップＳ１０６）。
【００３６】
次に、ＣＰＵ１０に動作異常が発生した場合におけるＤＳＰ２０の起動時の動作を図４のフローチャートを参照して説明する。
【００３７】
ＤＳＰ２０がＤＳＰ用初期ブート後のプログラムを実行して通常動作を行っている最中に、図５に示すようにＣＰＵ１０に何等かの障害が発生した場合、故障検知回路４２によりＣＰＵ１０の動作異常（何等かの障害または故障）が検知される（ステップＳ２０１、２０２）。すると、ロジックＩＣ４０の制御回路４１は、ＤＳＰ２０に対してリセット及びリセット解除を行う（ステップＳ２０３）。
【００３８】
そして、ロジックＩＣ４０では、図５に示されるように動作モードの変換を行い、シリアルＲＯＭ６０から読み出すプログラムをＤＳＰ用初期ブートプログラム６１からＤＳＰ用故障解析プログラム６２に変更する（ステップＳ２０４）。
【００３９】
そのため、リセット解除後のＤＳＰ２０が、ロジックＩＣ４０を介しシリアルＲＯＭ６０からＤＳＰ用初期ブートプログラム６１を実行しようとするが、ロジックＩＣ４０は、ＤＳＰ用初期ブートプログラム６１の替わりにＤＳＰ用故障解析プログラム６２をＤＳＰ２０に実行させる（ステップＳ２０５）。
【００４０】
その結果、ＤＳＰ２０は、ＤＳＰ２０周辺の動作テストおよび共通バスであるＰＣＩバスを介してＣＰＵ１０周辺の動作テストを実施する。そして、ＤＳＰ２０は、ロジックＩＣ４０に接続されたシリアルＲＯＭ６０に対してテスト結果を書き込む（ステップＳ２０６）。なお、ＤＳＰ２０は、テスト結果をシリアルＲＯＭ６０に書き込む代わりに、上位装置に対してテスト結果を通知するようにしてもよい。
【００４１】
［変形例］
上記実施形態では、ＤＳＰ用故障解析プログラム６２をシリアルＲＯＭ６０に格納しておき、ＣＰＵ１０の動作異常が検出された場合には、このＤＳＰ用故障解析プログラム６２によりＤＳＰ２０を起動させて動作を行わせる場合を用いて説明したが、本発明はこれに限定されるものではない。このＤＳＰ用故障解析プログラム６２の替わりに、ＲＯＭ３０に格納されているＤＳＰ用初期ブート後のプログラム３２と同様の通常の動作を行わせるためのプログラムを限定プログラムとしてシリアルＲＯＭ６０に格納するようにしてもよい。
【００４２】
このような構成とすることにより、ＣＰＵ１０の動作が正常な場合には、ＤＳＰ２０は高速なパラレルのローカルバス、ＰＣＩバスを介して、ＲＯＭ３０内のＤＳＰ用初期ブート後のプログラム３２をＲＡＭ５０に転送してから実行する。そして、ＣＰＵ１０の動作が異常な場合には、ＤＳＰ２０は、低速なシリアルのローカルバスを介してではあるが、シリアルＲＯＭ６０内に格納された通常の動作を行わせるためのプログラムに基づいて通常の動作を行う。
【００４３】
また、本発明はロジックＩＣ４０が読み出すプログラムをＤＳＰ用初期ブートプログラム６１からＤＳＰ用故障解析プログラム６２に変更する構成以外にも、ロジックＩＣ４０が動作モードの変換を行い、ＤＳＰ２０に対して通知信号を出力し、ＤＳＰ２０は通知信号を検知して、シリアルＲＯＭ６０から読み出すプログラムをＤＳＰ用初期ブートプログラム６１からＤＳＰ用故障解析プログラム６２に変更する構成にしてもよい。
【符号の説明】
【００４４】
１０    ＣＰＵ（上位ＣＰＵ）
２０    ＤＳＰ（下位ＣＰＵ）
３０    ＲＯＭ
３１    ＣＰＵ用プログラム
３２    ＤＳＰ用初期ブート後のプログラム
４０    ロジックＩＣ
４１    制御回路
４２    故障検知回路
５０    ＲＡＭ
６０    シリアルＲＯＭ
６１    ＤＳＰ用初期ブートプログラム
６２    ＤＳＰ用故障解析プログラム
【図１】
2012190131.tif 000003
【図２】
2012190131.tif 000004
【図３】
2012190131.tif 000005
【図４】
2012190131.tif 000006
【図５】
2012190131.tif 000007