(57)【要約】【課題】コンピュータプログラムを予め記憶したＲＯＭを必要とせず、かつコンピュータプログラムの破損を容易に解消させる、ことを目的とする。【解決手段】情報処理装置１０は、遠隔操作によって動作する遠隔装置に搭載され、コンピュータプログラムを実行するＣＰＵ２０、及び該コンピュータプログラムを記憶する書き込み可能なＲＡＭを備え、地上局５０が備える送受信装置５２から送信されるコンピュータプログラムを受信し、受信したコンピュータプログラムをＲＡＭへ転送し、ＲＡＭにコンピュータプログラムが記憶されている状態でＣＰＵ２０を起動させる。【選択図】図１
2013080399.tif 000002
【特許請求の範囲】
【請求項１】
遠隔操作によって動作する遠隔装置に搭載される情報処理装置であって、
コンピュータプログラムを実行する中央演算処理装置と、
前記コンピュータプログラムを記憶する書き込み可能な記憶手段と、
前記遠隔装置外から送信されたコンピュータプログラムを前記記憶手段へ転送し、前記記憶手段に前記コンピュータプログラムが記憶されている状態で前記中央演算処理装置の起動タイミングを制御する起動制御手段と、
を備えた情報処理装置。
【請求項２】
揮発性記憶媒体を備え、
前記記憶手段は、書き込み可能な不揮発性記憶媒体であり、
前記起動制御手段は、前記中央演算処理装置を起動させる場合に、前記記憶手段に予め記憶されている前記コンピュータプログラムを前記揮発性記憶媒体へ転送し、
前記中央演算処理装置は、前記揮発性記憶媒体に記憶された前記コンピュータプログラムを実行する請求項１記載の情報処理装置。
【請求項３】
前記記憶手段は、記憶している前記コンピュータプログラムに破損が検出され、かつ前記遠隔装置外から送信された前記コンピュータプログラムが上書きされても前記コンピュータプログラムの破損が解消されなかった場合、異なるアドレスに新たに送信された前記コンピュータプログラムが記憶される請求項２記載の情報処理装置。
【請求項４】
前記コンピュータプログラムは、誤り検出符号が付され、
前記起動制御手段は、前記中央演算処理装置が前記コンピュータプログラムを実行する前に、前記誤り検出符号を用いて前記コンピュータプログラムの誤り検出を行う請求項１から請求項３の何れか１項記載の情報処理装置。
【請求項５】
前記コンピュータプログラムは、複数のブロックに分割して前記記憶手段に記憶され、該ブロック毎に前記誤り検出符号が付される請求項４記載の情報処理装置。
【請求項６】
前記記憶手段は、３つ以上である複数の同じ前記コンピュータプログラムを記憶し、
前記記憶手段に記憶された複数の同じ前記コンピュータプログラムから多数決により、前記中央演算処理装置で実行させる前記コンピュータプログラムを決定する多数決手段
を備える請求項１から請求項３の何れか１項記載の情報処理装置。
【請求項７】
遠隔操作によって動作する遠隔装置に搭載され、コンピュータプログラムを実行する中央演算処理装置、及び該コンピュータプログラムを記憶する書き込み可能な記憶手段を備える情報処理装置の起動方法であって、
前記遠隔装置外の送信手段から送信されるコンピュータプログラムを受信する第１工程と、
受信した前記コンピュータプログラムを前記記憶手段へ転送する第２工程と、
前記記憶手段に前記コンピュータプログラムが記憶されている状態で前記中央演算処理装置を起動させる第３工程と、
を含む情報処理装置の起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遠隔装置に搭載される情報処理装置及び情報処理装置の起動方法に関するものである。
【背景技術】
【０００２】
ＮＡＮＤ型フラッシュメモリにコンピュータプログラムを記憶し、コンピュータを起動させるコンピューティングシステムが開発されている。
【０００３】
例えば、特許文献１には、ＮＡＮＤ型フラッシュメモリからのブートプログラムの読み出しを、ＮＡＮＤ型フラッシュメモリデバイスの内部器能により自律的に実行し、読み出したブートプログラムを、ホストＣＰＵ（Central  Processing  Unit）の内部メモリバスと直結するデバイス内のＳＲＡＭ（Static  Random  Access  Memory）にロードし、ホストＣＰＵは、ＳＲＡＭにロードされたブートプログラムの情報に基づきＮＡＮＤインタフェースからＯＳ（Operation  System）をシステムメモリにロードし、システムを起動するという、コンピューティングシステムの起動方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２９９２４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のコンピューティングシステム（情報処理装置）では、システムに電源投入後、ＮＡＮＤ型フラッシュメモリに記憶されるブートプログラムをＳＲＡＭにロードするために、ＣＰＵ、ＲＯＭ（Read  Only  Memory）、及びＲＡＭで構成されるメインファームウエアと呼ばれ、ＮＡＮＤ型フラッシュメモリからデータの読み出しを行うコントローラを統括するためのサブコンピューティングシステムを必要とする。
このため、特許文献１に記載されているコンピューティングシステムでは、ファームウエアを記憶するための、ＮＡＮＤ型フラッシュメモリとは異なる不揮発性のＲＯＭが必要となる。このように、コンピューティングシステムに、ＲＯＭを必要とすることは、コンピューティングシステムの消費電力、実装サイズ、コスト等を減少させることに対する制約となっている。
【０００６】
さらに、特許文献１に記載のコンピューティングシステムでは、コンピュータプログラムの破損対策として、ＮＡＮＤ型フラッシュメモリから読み出されたデータにエラーがないかを判定するＥＣＣ ＤＥＣＯＲＤＥＲ及びエラーを訂正するＥＣＣ ＣＯＲＲＥＣＴＯＲが設けられている。しかし、特許文献１に記載のコンピューティングシステムでは、ＥＣＣ ＣＯＲＲＥＣＴＯＲによって修復が不可能なコンピュータプログラムの破損や、ＮＡＮＤ型フラッシュメモリへの書き込み回数を平準化させるためのデータ移動には対応できない。このため、例えば、人工衛星、無人宇宙機、及び各種プラントや地中に埋設されている配管内を調査するロボット等の遠隔で操作される遠隔装置では、ＮＡＮＤ型フラッシュメモリの交換を必要とする状況となっても、ＮＡＮＤ型フラッシュメモリの交換が困難又は不可能である。
【０００７】
本発明は、このような事情に鑑みてなされたものであって、コンピュータプログラムを予め記憶したＲＯＭを必要とせず、かつコンピュータプログラムの破損を容易に解消できる、遠隔装置に搭載される情報処理装置及び情報処理装置の起動方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の遠隔装置に搭載される情報処理装置及び情報処理装置の起動方法は以下の手段を採用する。
【０００９】
すなわち、本発明の第一態様に係る遠隔装置に搭載される情報処理装置は、コンピュータプログラムを実行する中央演算処理装置と、前記コンピュータプログラムを記憶する書き込み可能な記憶手段と、前記遠隔装置外から送信されたコンピュータプログラムを前記記憶手段へ転送し、前記記憶手段に前記コンピュータプログラムが記憶されている状態で前記中央演算処理装置の起動タイミングを制御する起動制御手段と、を備える。
【００１０】
上記構成によれば、遠隔操作によって動作する遠隔装置に搭載される情報処理装置は、コンピュータプログラムを実行する中央演算処理装置と、コンピュータプログラムを記憶する書き込み可能な記憶手段を備える。遠隔装置は、無人で動作する装置であり、例えば、人工衛星、無人宇宙機、及び各種プラントや地中に埋設されている配管内を調査するロボット等である。このような遠隔装置は、記憶手段に記憶されているコンピュータプログラムに破損が生じても修復が困難である。
【００１１】
記憶手段は、例えばＲＡＭ（ＳＲＡＭ等）やＮＡＮＤ型フラッシュメモリ等であり、各種コンピュータプログラムを記憶する。そして、中央演算処理装置は、記憶手段に記憶されたコンピュータプログラムを実行する。
【００１２】
さらに、起動制御手段によって、遠隔装置外から送信されるコンピュータプログラムが記憶手段へ転送され、記憶手段にコンピュータプログラムが記憶されている状態で中央演算処理装置の起動タイミングが制御される。遠隔装置外からの起動プラグラムの送信は、無線又は有線の何れで行われてもよい。なお、コンピュータプログラムには、中央演算処理装置が起動するときに実行されるブートプログラムが含まれる。
【００１３】
このように、遠隔装置外の送信手段からコンピュータプログラムが送信されてくるので、記憶手段に記憶されているコンピュータプログラムが破損していても、新たにコンピュータプログラムの破損を原因として、中央演算処理装置が起動できなくなることが防止される。
【００１４】
コンピュータプログラムが記憶手段に記憶されていない場合又はコンピュータプログラムが破損している場合に、中央演算処理装置が動作すると、中央演算処理装置が正常に動作しないこととなる。そのため、起動制御手段が、記憶手段に正常なコンピュータプログラムが記憶されている状態で起動するように中央演算処理装置の起動タイミングを制御する。
【００１５】
また、コンピュータプログラムが記憶される記憶手段は、書き込み可能な記憶手段であるため、コンピュータプログラムに破損が生じた場合、送信手段から再送信されたコンピュータプログラムの上書きが可能である。
【００１６】
以上のことから、本構成は、コンピュータプログラムを予め記憶したＲＯＭを必要とせず、かつコンピュータプログラムの破損を容易に解消できる。また、予めコンピュータプログラムを予め記憶したＲＯＭが不必要なため、該ＲＯＭで消費される電力が削減される。
【００１７】
上記第一態様では、揮発性記憶媒体を備え、前記記憶手段が、書き込み可能な不揮発性記憶媒体であり、前記起動制御手段が、前記中央演算処理装置を起動させる場合に、前記記憶手段に予め記憶されている前記コンピュータプログラムを前記揮発性記憶媒体へ転送し、前記中央演算処理装置が、前記揮発性記憶媒体に記憶された前記コンピュータプログラムを実行することが好ましい。
【００１８】
上記構成によれば、書き込み可能な不揮発性記憶媒体に予めコンピュータプログラムが記憶され、中央演算処理装置を起動する場合、不揮発性記憶媒体に記憶されているコンピュータプログラムを用いる。従って、本構成は、遠隔装置外からのコンピュータプログラムの受信を行うことなく、中央演算処理装置を起動できるため、中央演算処理装置の起動時間を短縮することができる。また、本構成は、コンピュータプログラムに破損が検出された場合、不揮発性記憶媒体に新たに送信されてきたコンピュータプログラムを記憶できるので、コンピュータプログラムの破損を容易に解消できる。
【００１９】
上記第一態様では、前記記憶手段が、記憶している前記コンピュータプログラムに破損が検出され、かつ前記遠隔装置外から送信された前記コンピュータプログラムが上書きされても前記コンピュータプログラムの破損が解消されなかった場合、異なるアドレスに新たに送信された前記コンピュータプログラムが記憶されることが好ましい。
【００２０】
上記構成によれば、遠隔装置外から送信されたコンピュータプログラムを記憶手段に上書きしてもコンピュータプログラムの破損が解消されなかった場合は、コンピュータプログラムを記憶している記憶手段のメモリ構造そのものに破損が生じていると考えられる。
【００２１】
そこで、本構成によれば、記憶手段の異なるアドレスに新たに送信されたコンピュータプログラムを記憶させるので、記憶手段のメモリ構造に破損が生じていても、記憶手段を交換することなく、既存の記憶手段にコンピュータプログラムを記憶させることができる。
【００２２】
上記第一態様では、前記コンピュータプログラムに、誤り検出符号が付され、前記起動制御手段が、前記中央演算処理装置が前記コンピュータプログラムを実行する前に、前記誤り検出符号を用いて前記コンピュータプログラムの誤り検出を行うことが好ましい。
【００２３】
上記構成によれば、中央演算処理装置がコンピュータプログラムを実行する前に、誤り検出符号を用いてコンピュータプログラムの誤り検出を行うので、中央演算処理装置が破損したコンピュータプログラムを実行することを防止できる。
【００２４】
上記第一態様では、前記コンピュータプログラムが、複数のブロックに分割して前記記憶手段に記憶され、該ブロック毎に前記誤り検出符号が付されることが好ましい。
【００２５】
上記構成によれば、コンピュータプログラムのブロック毎に誤り検出符号が付されるので、誤りが検出されたコンピュータプログラムのブロック単位でコンピュータプログラムの送信が行われればよく、送信されるコンピュータプログラムのデータ容量を減少させることができる。
【００２６】
上記第一態様では、前記記憶手段が、３つ以上である複数の同じ前記コンピュータプログラムを記憶し、前記記憶手段に記憶された複数の同じ前記コンピュータプログラムから多数決により、前記中央演算処理装置で実行させる前記コンピュータプログラムを決定する多数決手段を備えることが好ましい。
【００２７】
上記構成によれば、記憶手段は、３つ以上である複数の同じコンピュータプログラム、すなわち多重冗長化されたコンピュータプログラムを記憶する。これにより、記憶手段に記憶された複数の同じコンピュータプログラムのうち、破損したコンピュータプログラムは、他のコンピュータプログラムとは異なるものとなる。
【００２８】
そこで、多数決手段によって、記憶手段に記憶された複数の同じコンピュータプログラムから多数決により、中央演算処理装置で実行させるコンピュータプログラムが決定される。多数決手段による多数決とは、多重冗長化されたコンピュータプログラムを比較し、全く同一のコンピュータプログラムの数を検出することであり、コンピュータプログラムが破損していたら、他のコンピュータプログラムとは全く同一とはならないし、破損したプログラムが複数あったとしても、各々が全く同じ破損状態となる可能性は大変低い。このため、多数決により多数を示すコンピュータプログラムは、破損していないと考えられ、多数決手段による多数決は、破損したコンピュータプログラムと破損していないコンピュータプログラムとを区別することとなる。
【００２９】
また、例えばＥＣＣ（Error  Check  and  Correct）メモリでは小ビットのデータ破損に対応できる一方、ブロック単位の破損等のデータの破損の程度が大きいと対応できない。
しかし、コンピュータプログラムを多重冗長化し、多数決により中央演算処理装置で実行させるコンピュータプログラムが決定させることによって、ブロック単位の破損というような大きなデータの破損にも対応できる。
【００３０】
従って、本構成によれば、中央演算処理装置の動作の信頼性をより高くすることができる。
【００３１】
本発明の第二態様に係る情報処理装置の起動方法は、遠隔操作によって動作する遠隔装置に搭載され、コンピュータプログラムを実行する中央演算処理装置、及び該コンピュータプログラムを記憶する書き込み可能な記憶手段を備える情報処理装置の起動方法であって、前記遠隔装置外の送信手段から送信されるコンピュータプログラムを受信する第１工程と、受信した前記コンピュータプログラムを前記記憶手段へ転送する第２工程と、前記記憶手段に前記コンピュータプログラムが記憶されている状態で前記中央演算処理装置を起動させる第３工程と、を含む。
【発明の効果】
【００３２】
本発明によれば、コンピュータプログラムを予め記憶したＲＯＭを必要とせず、かつコンピュータプログラムの破損を容易に解消できる、という優れた効果を有する。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１実施形態に係る遠隔装置に搭載される情報処理装置の電気的構成を示すブロック図である。
【図２】本発明の第１実施形態に係るＣＰＵ起動処理の流れを示すフローチャートである。
【図３】本発明の第２実施形態に係る遠隔装置に搭載される情報処理装置の電気的構成を示すブロック図である。
【図４】本発明の第２実施形態に係るＣＰＵ起動処理の流れを示すフローチャートである。
【図５】本発明の第３実施形態に係る遠隔装置に搭載される情報処理装置の電気的構成を示す図である。
【図６】本発明の第４実施形態に係る遠隔装置に搭載される情報処理装置の電気的構成を示す図である。
【図７】本発明の第４実施形態に係るＣＰＵ起動処理の流れを示すフローチャートである。
【図８】本発明の第５実施形態に係るアドレス変更処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００３４】
以下に、本発明に係る遠隔装置に搭載される情報処理装置及び情報処理装置の起動方法の一実施形態について、図面を参照して説明する。
【００３５】
〔第１実施形態〕
以下、本発明の第１実施形態について説明する。
図１は、本第１実施形態に係る遠隔装置に搭載される情報処理装置１０の電気的構成を示すブロック図である。
遠隔装置は、無人で動作する装置であり、例えば、人工衛星、無人宇宙機、及び各種プラントや地中に埋設されている配管内を調査するロボット等である。このような遠隔装置は、記憶媒体に記憶されているコンピュータプログラムに破損が生じたり、記憶媒体そのものが破損しても修復が困難である。なお、本第１実施形態では、遠隔装置を人工衛星１２とした場合について説明する。
【００３６】
人工衛星１２は、地上局５０が備える送受信装置５２から送信されるコンピュータプログラムを受信する送受信装置１４を備える。人工衛星１２に備えられる情報処理装置１０は、送受信装置１４を介して受信した制御信号がスイッチ回路１６に入力されると、電力の供給が開始される。
【００３７】
情報処理装置１０は、コンピュータプログラムを実行する中央演算処理装置（以下、「ＣＰＵ」という。）２０、コンピュータプログラムを記憶する書き込み可能な記憶媒体であるＳＲＡＭ２２を備える一方で、コンピュータプログラムを予め記憶したＲＯＭを備えていない。さらに、情報処理装置１０は、送受信装置１４によって受信されたコンピュータプログラムをＳＲＡＭ２２へ転送し、ＳＲＡＭ２２にコンピュータプログラムが記憶されている状態でＣＰＵ２０の起動タイミングを制御するＣＰＵ起動装置２４を備えている。
【００３８】
送受信装置１４は、通信インタフェース２６を介してシステムバス２８に接続されており、システムバス２８には、通信インタフェース２６と共に、ＣＰＵ起動装置２４、ＣＰＵ２０、及びＳＲＡＭ２２が接続されている。
また、ＣＰＵ起動装置２４とＣＰＵ２０とは、システムバス２８とは異なる専用信号線３０Ａで接続されている。ＣＰＵ起動装置２４からＣＰＵ２０へは、専用信号線３０Ａを介してＣＰＵ２０をリセット状態とするＣＰＵリセット信号が出力される。
【００３９】
さらに、ＣＰＵ起動装置２４は、ＳＲＡＭ２２に記憶されているコンピュータプログラムの状態、例えばコンピュータプログラムの破損等を示すステータス信号を、専用信号線３０Ｂを介してステータス収集部３２へ出力する。
ステータス収集部３２は、ステータス信号が入力された場合、ステータス信号の入力に応じて通信インタフェース２６を介して送受信装置１４にコンピュータプログラムの送信要求信号を送信させる。
【００４０】
なお、コンピュータプログラムには、ＣＰＵ２０が起動するときに実行されるブートプログラムが含まれる。また、コンピュータプログラムには、コンピュータプログラムの誤りを検出する（例えばＣＲＣ：Cyclic  Redundancy  Check）ための誤り検出符号が付されている。ＣＰＵ起動装置２４は、ＳＲＡＭ２２に記憶されたコンピュータプログラムを読み出して、コンピュータプログラムに付加されている誤り検出符号を用いて、該コンピュータプログラムの破損の有無を検出する機能を有している。
【００４１】
地上局５０は、地球上に設けられた外部ホストであり、各種コンピュータプログラムが記憶された記憶媒体であるＨＤＤ５２から読み出されたコンピュータプログラムを、通信インタフェース５６及び送受信装置５２を介して人工衛星１２へ送信する。なお、人工衛星１２が備える送受信装置１４と地上局５０が備える送受信装置５２とは、コンピュータプログラムの送受信を行うだけでなく、他の各種信号（データ）の送受信も行う。
【００４２】
図２は、本第１実施形態に係る情報処理装置１０に備えられているＣＰＵ２０を起動させるまでの処理（以下、「ＣＰＵ起動処理」という。）の流れを示すフローチャートの一例である。
【００４３】
まず、ステップ１００では、地上局５０からの制御信号を送受信装置１４が受信すると、スイッチ回路１６が情報処理装置１０への電力の供給を開始する。情報処理装置１０への電力の供給が開始されると、情報処理装置１０を構成するＣＰＵ２０、ＳＲＡＭ２２、ＣＰＵ起動装置２４、通信インタフェース２６、及びステータス収集部３２は、動作が可能となるが、ＣＰＵ起動装置２４は、ＣＰＵ２０へＣＰＵリセット信号を出力し、ＣＰＵ２０をリセット状態とする。
【００４４】
次のステップ１０２では、地上局５０から送信されたコンピュータプログラムを送受信装置１４が受信する。なお、地上局５０は、ステータス収集部３２が送受信装置１４を介して送信するコンピュータプログラムの送信要求信号を受信した場合に、コンピュータプログラムを人工衛星１２に送信してもよいし、人工衛星１２へ制御信号を送信すると共に、又は制御信号を送信した所定時間後にコンピュータプログラムを送信してもよい。
【００４５】
次のステップ１０４では、送受信装置１４で受信されたコンピュータプログラムが、ＣＰＵ起動装置２４によって、通信インタフェース２６からＳＲＡＭ２２へ転送され、ＳＲＡＭ２２の予め定められたアドレスへ記憶される。例えば、コンピュータプログラムがブートプログラムの場合は、予め定められたブートアドレスへブートプログラムが記憶される。なお、ＣＰＵ起動装置２４によるコンピュータプログラムの転送制御は地上局５０からの制御に基づいて行われる。
【００４６】
次のステップ１０６では、ＣＰＵ起動装置２４が、ＳＲＡＭ２２に記憶されたコンピュータプログラムを読み出し、コンピュータプログラムに付加されている誤り検出符号を用いて、誤り検出（ＣＲＣ）を行う。ＣＰＵ起動装置２４は、ＣＲＣによって、ＳＲＡＭ２２に記憶されている誤りの有無、すなわちコンピュータプログラムの破損の有無を検出することとなる。この処理は、ＣＰＵ起動装置２４がシステムバス２８をモニタすることで、ステップ１０４の進行と同時に行ってもよい。
そして、誤りが検出された場合、ＣＰＵ起動処理は、ステップ１０６からステップ１０８へ移行する。一方、誤りが検出されなかった場合、ＣＰＵ起動処理は、ステップ１０６からステップ１１４へ移行する。
【００４７】
ステップ１０８では、ＣＰＵ起動装置２４がステータス収集部３２にコンピュータプログラムに破損が生じていることを示すステータス信号を出力する。ステータス収集部３２は、該ステータス信号が入力されると、地上局５０へコンピュータプログラムの送信要求信号を送受信装置１４に送信させ、ステップ１０２へ戻る。
そして、地上局５０からコンピュータプログラムが再送信されると、ＣＰＵ起動装置２４は、ＳＲＡＭ２２に記憶されているコンピュータプログラムを再送信されたコンピュータプログラムで上書きする。
【００４８】
ステップ１１４では、ＣＰＵ起動装置２４がＣＰＵ２０に対するＣＰＵリセット信号の出力を停止し、ＣＰＵ２０のリセット状態を解除させる。これによりＣＰＵ２０は、ＳＲＡＭ２２に記憶されているコンピュータプログラムに含まれるブートプログラムを読み出し、該ブートプログラムを用いて起動する。
【００４９】
このように、揮発性記憶媒体であるＳＲＡＭ２２は、情報処理装置１０に電力が供給され、地上局５０から送信されたブートプログラムを含むコンピュータプログラムを記憶するまで、何らコンピュータプログラムを記憶していない。このため、ＳＲＡＭ２２がコンピュータプログラムを記憶していない状態で、ＣＰＵ２０が起動を開始すると、ＣＰＵ２０はブートプログラムを読み出すことができないため、暴走することとなる。そこで、ＣＰＵ起動装置２４は、ＳＲＡＭ２２がコンピュータプログラム（ブートプログラム）を記憶するまで、ＣＰＵ２０へＣＰＵリセット信号を出力し、ＣＰＵ２０をリセット状態とし、ＳＲＡＭ２２がコンピュータプログラムを記憶するとＣＰＵ２０のリセット状態を解除し、ＣＰＵ２０を起動させる。
【００５０】
以上説明したように、本第１実施形態に係る人工衛星１０に搭載された情報処理装置１０は、コンピュータプログラムを実行するＣＰＵ２０、及び該コンピュータプログラムを記憶する書き込み可能なＳＲＡＭ２２を備え、地上局５０が備える送受信装置５２から送信されるコンピュータプログラムを受信し、受信したコンピュータプログラムをＳＲＡＭ２２へ転送し、ＳＲＡＭ２２にコンピュータプログラムが記憶されている状態でＣＰＵ２０を起動させる。
【００５１】
従って、本第１実施形態に係る情報処理装置１０は、コンピュータプログラムを予め記憶したＲＯＭを必要とせず、かつコンピュータプログラムの破損を容易に解消できる。また、本第１実施形態に係る情報処理装置１０は、コンピュータプログラムを予め記憶したＲＯＭが不必要なため、該ＲＯＭで消費される電力を削減できる。
さらに、人工衛星及び無人宇宙機、並びに原子炉の配管内を調査するロボット等の高放射線環境下で用いられる遠隔装置は、ＲＯＭを用いる場合、耐放射線性を有する高価なＲＯＭを用いる必要がある。しかし、本第１実施形態に係る情報処理装置１０は、そもそもＲＯＭを必要としないため、高放射線環境下で用いられる遠隔装置におけるコスト削減をより可能とする。
【００５２】
〔第２実施形態〕
以下、本発明の第２実施形態について説明する。
図３は、本第２実施形態に係る遠隔装置（人工衛星１２）に搭載される情報処理装置１０の電気的構成を示すブロック図である。なお、図３における図１と同一の構成部分については図１と同一の符号を付して、その説明を省略する。
図３に示されるように、本第２実施形態に係る情報処理装置１０は、書き込み可能な不揮発性記憶媒体であるＮＡＮＤ型フラッシュメモリ６０を備えており、ＮＡＮＤ型フラッシュメモリ６０は、専用のインタフェース（以下、「ＮＡＮＤインタフェース６２」という。）を介してシステムバス２８に接続されている。なお、本第２実施形態に係るＮＡＮＤ型フラッシュメモリ６０には、予めコンピュータプログラムが記憶されている。
【００５３】
図４は、本第２実施形態に係るＣＰＵ起動処理の流れを示すフローチャートの一例である。なお、図４における図２と同一のステップについては図２と同一の符号を付して、その説明を一部又は全部省略する。
【００５４】
まず、ステップ１００では、地上局５０からの制御信号に基づいて、情報処理装置１０へ電力の供給が行われ、ステップ１０４’へ移行する。
【００５５】
ステップ１０４’では、ＮＡＮＤ型フラッシュメモリ６０の予め定められたアドレスに記憶されたコンピュータプログラムが、ＣＰＵ起動装置２４によって、ＳＲＡＭ２２の予め定められたアドレスへ転送、記憶され、ステップ１０６へ移行する。
ＣＰＵ起動処理は、ステップ１０６で誤りが検出された場合、ステップ１０８’へ移行する一方、誤りが検出されなかった場合、ステップ１１４へ移行する。
【００５６】
ステップ１０８'では、ＣＰＵ起動装置２４がステータス収集部３２にコンピュータプログラムに破損が生じていることを示すステータス信号を出力し、ステータス収集部３２は、送受信装置１４に地上局５０へコンピュータプログラムの送信要求信号を送信させ、ステップ１１０へ移行する。
【００５７】
ステップ１１０では、地上局５０から送信されたコンピュータプログラムを送受信装置１４が受信する。
【００５８】
次のステップ１１２では、送受信装置１４で受信されたコンピュータプログラムが、ＣＰＵ起動装置２４によって、通信インタフェース２６からＮＡＮＤ型フラッシュメモリ６０へ転送される。ＮＡＮＤ型フラッシュメモリ６０へ転送されたコンピュータプログラムは、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムが記憶されている予め定められたアドレスへ上書きされる。そして、ＣＰＵ起動処理は、ステップ１０４’へ戻る。
【００５９】
なお、本第２実施形態にＣＰＵ起動装置２４による、通信インタフェース２６からＮＡＮＤ型フラッシュメモリ６０へのコンピュータプログラムの転送制御、及びＮＡＮＤ型フラッシュメモリ６０からＳＲＡＭ２２へのコンピュータプログラムの転送制御は地上局５０からの制御に基づいて行われる。
【００６０】
以上説明したように、本第２実施形態に係る情報処理装置１０は、書き込み可能な不揮発性記憶媒体であるＮＡＮＤ型フラッシュメモリ６０に予めコンピュータプログラムが記憶され、ＣＰＵ２０を起動する場合、ＮＡＮＤ型フラッシュメモリ６０に記憶されているコンピュータプログラムを用いる。従って、本第２実施形態に係る情報処理装置１０は、人工衛星１２外からのコンピュータプログラムの受信を行うことなく、ＣＰＵ２０を起動できるため、ＣＰＵ２０の起動時間を短縮することができる。また、本第２実施形態に係る情報処理装置１０は、コンピュータプログラムに破損が検出された場合、ＮＡＮＤ型フラッシュメモリ６０に新たに送信されてきたコンピュータプログラムを記憶できるので、コンピュータプログラムの破損を容易に解消できる。
【００６１】
〔第３実施形態〕
以下、本発明の第３実施形態について説明する。
図５は、本第３実施形態に係る遠隔装置（人工衛星１２）に搭載される情報処理装置１０の電気的構成を示すブロック図である。なお、図５における図３と同一の構成部分については図３と同一の符号を付して、その説明を省略する。
【００６２】
ＮＡＮＤ型フラッシュメモリ６０及びＳＲＡＭ２２に記憶されるコンピュータプログラム、並びに地上局５０から送信されるコンピュータプログラムは、複数のブロック（以下、「コンピュータプログラムブロック」という。）に分割して記憶され、該コンピュータプログラムブロック毎に誤り検出符号が付される。
【００６３】
従って、本第３実施形態に係る情報処理装置１０は、コンピュータプログラムブロック毎に誤り検出符号が付されるので、誤りが検出されたコンピュータプログラムブロック単位でコンピュータプログラムの送信が地上局５０から行われればよく、送信されるコンピュータプログラムのデータ容量を減少させることができる。このため、本第３実施形態に係る情報処理装置１０は、コンピュータプログラムに誤りが検出されても、ＣＰＵ２０の起動時間を短縮することができる。
【００６４】
〔第４実施形態〕
以下、本発明の第４実施形態について説明する。
図６は、本第４実施形態に係る遠隔装置（人工衛星１２）に搭載される情報処理装置１０の電気的構成を示すブロック図である。なお、図５における図３と同一の構成部分については図３と同一の符号を付して、その説明を省略する。
【００６５】
本第４実施形態に係る情報処理装置１０は、ＮＡＮＤ型フラッシュメモリ６０が、３つ以上である複数の同じコンピュータプログラムを記憶し、複数の同じコンピュータプログラムから多数決により、ＣＰＵ２０で実行させるコンピュータプログラムを決定する多数決部７０を備える。
すなわち、ＮＡＮＤ型フラッシュメモリ６０には、一つのコンピュータプログラムが多重冗長化されて異なるアドレスに記憶される。本第４実施形態では、ＮＡＮＤ型フラッシュメモリ６０に記憶されるコンピュータプログラムを３つ（三重冗長化）とするが、これに限らず、４つ以上としてもよく、奇数が好ましい。
【００６６】
多数決部７０による多数決とは、多重冗長化されたコンピュータプログラムを比較し、全く同一のコンピュータプログラムの数を検出することであり、コンピュータプログラムが破損していたら、他のコンピュータプログラムとは全く同一とはならないし、破損したプログラムが複数あったとしても、各々が全く同じ破損状態となる可能性は大変低い。このため、多数決により多数を示すコンピュータプログラムは、破損していないと考えられ、多数決部７０による多数決は、破損したコンピュータプログラムと破損していないコンピュータプログラムとを区別することとなる。
ここで、例えばＥＣＣ（Error  Check  and  Correct）メモリでは小ビットのデータ破損に対応できる一方、ブロック単位の破損等のデータの破損の程度が大きいと対応できない。
しかし、コンピュータプログラムを多重冗長化し、多数決を行うことは、ブロック単位の破損というような大きなデータの破損にも対応できる。
【００６７】
なお、以下の説明において、図６にも示されるように、ＮＡＮＤ型フラッシュメモリ６０を含み、多数決に係る処理を行う構成をＮＡＮＤ型フラッシュメモリ部１０Ａといい、ＣＰＵ２０を含むその他の構成をホスト部１０Ｂという。
【００６８】
ＮＡＮＤ型フラッシュメモリ部１０Ａは、多数決部７０と共に、ＮＡＮＤインタフェース６２Ａ、バッファマネージャ７２、ＲＡＭ７４、及びハードウエアシーケンサ７６を備える。
【００６９】
ＮＡＮＤインタフェース６２Ａは、多数決部７０及びバッファマネージャ７２、並びにホスト部１０Ｂに備えられると共にシステムバスに接続されているＮＡＮＤインタフェース６２Ｂに接続されている。
【００７０】
バッファマネージャ７２は、ＲＡＭ７４によるデータの読み出し、記憶を管理する。
【００７１】
ハードウエアシーケンサ７６は、ＮＡＮＤ型フラッシュメモリ６０及びＮＡＮＤインタフェース６２Ａと接続され、ＮＡＮＤ型フラッシュメモリ６０に対するデータの書き込み及び読み出しを行う。なお、ハードウエアシーケンサ７６は、ＮＡＮＤ型フラッシュメモリ６０から読み出したコンピュータプログラムを、ＮＡＮＤインタフェース６２Ａ及びバッファマネージャ７２を介してＲＡＭ７４へ転送する。
【００７２】
また、多数決部７０は、ステータス収集部３２に接続され、使用するコンピュータプログラムが多数決により決定しなかった場合に、不一致信号をステータス収集部３２へ出力する。
【００７３】
図７は、本第４実施形態に係るＣＰＵ起動処理の流れを示すフローチャートの一例である。
【００７４】
まず、ステップ２００では、送受信装置１４が地上局５０からの制御信号を受信すると、スイッチ回路１６が情報処理装置への電力の供給を開始する。情報処理装置１０への電力の供給が開始されると、情報処理装置１０を構成するＮＡＮＤ型フラッシュメモリ部１０Ａ及びホスト部１０Ｂは、動作が可能となるが、ホスト部１０Ｂに備えられているＣＰＵ起動装置２４は、ＣＰＵ２０へＣＰＵリセット信号を出力し、ＣＰＵ２０をリセット状態とする。
【００７５】
次のステップ２０２では、ハードウエアシーケンサ７６が、ＮＡＮＤ型フラッシュメモリ６０の予め定められたアドレスに記憶されている多重冗長化（本第４実施形態では三重冗長化）されたコンピュータプログラムを、ＮＡＮＤインタフェース６２Ａ、バッファマネージャ７２を介してＲＡＭ７４へ転送、記憶させる。
【００７６】
次のステップ２０４では、ＲＡＭ７４に記憶されている多重冗長化されたコンピュータプログラムを、バッファマネージャ７２を介して多数決部７０へ転送して多数決を行う。
【００７７】
ステップ２０６では、多数決により使用するコンピュータプログラムが決定できたか否かが、多数決部７０によって判断され、決定できた場合はステップ２０８へ移行し、決定できなかった場合はステップ２１２へ移行する。決定できた場合とは、例えば３重冗長化されているコンピュータプログラムにおいて、全く同じコンピュータプログラムが２つ以上存在していた場合である。一方、決定できない場合とは、例えば３重冗長化されているコンピュータプログラムにおいて、全く同じコンピュータプログラムが存在していない場合であり、すなわち、冗長化された３つのコンピュータプログラムのうち、少なくとも２つのコンピュータプログラムが破損している場合である。
【００７８】
ステップ２０８では、多数決により決定したコンピュータプログラムを、ＮＡＮＤインタフェース６２Ａ，６２Ｂを介してＳＲＡＭ２２へ転送する。
【００７９】
ステップ２１０では、ＣＰＵ起動装置２４がＣＰＵ２０へのＣＰＵリセット信号の出力を停止し、ＣＰＵ２０のリセット状態を解除させる。これによりＣＰＵ２０は、ＳＲＡＭ２２に記憶されているコンピュータプログラムに含まれるブートプログラムを読み出し、該ブートプログラムを用いて起動する。
【００８０】
一方、ステップ２１２では、多数決部７０がステータス収集部３２へ不一致信号を出力する。
【００８１】
ステップ２１４では、ステータス収集部３２に不一致信号が入力されると、ステータス収集部３２が、通信インタフェース２６を介して地上局５０へコンピュータプログラムの送信要求信号を送受信装置１４に送信させる。
【００８２】
ステップ２１６では、地上局５０から送信されたコンピュータプログラムを送受信装置１４が受信する。
【００８３】
次のステップ２１８では、送受信装置１４で受信されたコンピュータプログラムが、ＣＰＵ起動装置２４によって、通信インタフェース２６からＮＡＮＤ型フラッシュメモリ６０へ転送される。そして、ＮＡＮＤ型フラッシュメモリ６０へ転送されたコンピュータプログラムは、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムが記憶されている予め定められたアドレスへ上書きされる。そして、ＣＰＵ起動処理は、ステップ２０２へ戻る。
【００８４】
以上説明したように、本第４実施形態に係る情報処理装置１０は、ＮＡＮＤ型フラッシュメモリ６０が多重冗長化されたコンピュータプログラムを記憶し、多数決部７０がＮＡＮＤ型フラッシュメモリ６０に記憶された多重冗長化されたコンピュータプログラムから多数決により、ＣＰＵ２０で実行させるコンピュータプログラムを決定する。従って、本第４実施形態に係る情報処理装置１０は、ＣＰＵ２０の動作の信頼性をより高くすることができる。
【００８５】
〔第５実施形態〕
以下、本発明の第５実施形態について説明する。
なお、本第５実施形態に係る情報処理装置１０の構成は、図６に示す第４実施形態に係る情報処理装置１０の構成と同様であるので説明を省略する。
【００８６】
本第５実施形態に係るＮＡＮＤ型フラッシュメモリ６０は、記憶しているコンピュータプログラムに破損が検出され、かつ人工衛星１２外である地上局５０から送信されたコンピュータプログラムが上書きされてもコンピュータプログラムの破損が解消されなかった場合、異なるアドレスに新たに送信されたコンピュータプログラムが記憶される。
【００８７】
地上局５０から送信されたコンピュータプログラムをＮＡＮＤ型フラッシュメモリ６０に上書きしてもコンピュータプログラムの破損が解消されなかった場合は、コンピュータプログラムを記憶しているＮＡＮＤ型フラッシュメモリ６０のメモリ構造そのものに破損が生じていると考えられる。
そこで、本第５実施形態に係る情報処理装置１０によれば、ＮＡＮＤ型フラッシュメモリ６０の異なるアドレスに新たに送信されたコンピュータプログラムを記憶させるので、ＮＡＮＤ型フラッシュメモリ６０のメモリ構造に破損が生じていても、ＮＡＮＤ型フラッシュメモリ６０を交換することなく、既存のＮＡＮＤ型フラッシュメモリ６０にコンピュータプログラムを記憶させることができる。
【００８８】
図８は、本第５実施形態に係るＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムを記憶させるアドレスを変更する処理（以下、「アドレス変更処理」という。）の流れを示すフローチャートの一例である。
【００８９】
まず、ステップ３００では、ステータス収集部３２が連続して２回以上不一致信号の入力を受け付けた場合、ステータス収集部３２が、通信インタフェース２６を介して地上局５０へ、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムを記憶させるアドレスを変更するための変更プログラムの送信要求信号を送受信装置１４に送信させる。変更プログラムには、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムを記憶させる新たなアドレスが記述されている。
【００９０】
次のステップ３０２では、送受信装置１４が変更プログラムを受信すると、ＣＰＵ起動装置２４に設定されている、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムを記憶させるアドレスが変更プログラムに示される新たなアドレスに変更される。なお、変更プログラムと共に、新たなコンピュータプログラムが地上局５０から送信された場合には、新たなアドレスに該コンピュータプログラムが記憶される。
【００９１】
次のステップ３０４では、ハードウエアシーケンサ７６に設定されている、ＮＡＮＤ型フラッシュメモリ６０のコンピュータプログラムを読み出すアドレスが変更プログラムに示される新たなアドレスに変更される。
【００９２】
次のステップ３０６では、スイッチ回路１６のオン及びオフが行われることによって、情報処理装置１０のリセットが行われる。その後、図７に示されるＣＰＵ起動処理が行われる。
【００９３】
以上、本発明を、上記各実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記各実施形態に多様な変更または改良を加えることができ、該変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【００９４】
例えば、上記各実施形態では、コンピュータプログラムが遠隔装置へ無線により送信される形態について説明したが、本発明は、これに限定されるものではなく、コンピュータプログラムは有線により送信される形態としてもよい。この形態の場合、例えば、遠隔装置を各種プラントや地中に埋設されている配管内を調査するロボットとした場合に適用される。
【００９５】
また、上記第２実施形態から第５実施形態に係る情報処理装置１０では、予めＮＡＮＤ型フラッシュメモリ６０にコンピュータプログラムが記憶されている形態について説明したが、本発明は、これに限定されるものではなく、ＮＡＮＤ型フラッシュメモリ６０に予めコンピュータプログラムが記憶されていなくてもよい。この形態の場合、ＣＰＵ起動装置２４は、ＣＰＵ２０を起動させる前に、送受信装置１４に地上局５０へコンピュータプログラムの送信要求信号を送信させる。
【００９６】
また、上記各実施形態では、ＣＰＵ起動装置２４がＣＰＵ２０にのみリセット信号を出力する形態について説明したが、本発明は、これに限定されるものではなく、ＣＰＵ起動装置２４がＣＰＵ２０のみならず、情報処理装置１０を構成する全て構成部に対してリセット信号を出力し、各構成部を動作させる場合に適宜各構成部へのリセット信号を解除する形態としてもよい。
【００９７】
また、上記各実施形態では、ＣＰＵ２０やＳＲＡＭ２２以外の不要な構成部への電力の供給を個別に停止する低消費電力モードを備えてもよい。
【符号の説明】
【００９８】
１０    情報処理装置
１２    人工衛星
１４    送受信装置
２０    ＣＰＵ
２２    ＳＲＡＭ
２４    ＣＰＵ起動装置
５０    地上局
５２    送受信装置
６０    ＮＡＮＤ型フラッシュメモリ
【図１】
2013080399.tif 000003
【図２】
2013080399.tif 000004
【図３】
2013080399.tif 000005
【図４】
2013080399.tif 000006
【図５】
2013080399.tif 000007
【図６】
2013080399.tif 000008
【図７】
2013080399.tif 000009
【図８】
2013080399.tif 000010