(57)【要約】【課題】本発明の目的は、メインプログラムの更新が失敗しても、機器が動作しなくなることを回避し、正常な状態で再起動する撮像装置を提供することにある。【解決手段】ブートプログラムに従ってメインプログラムを起動する信号処理装置において、新たな第一のメインプログラムを書込み、該第一のメインプログラムにマーカを付与し、新たな第二のメインプログラムを書込み、該第二のメインプログラムにマーカを付与し、再起動した際に、ブートプログラムに従って前記第一のメインプログラムおよび前記第二のメインプログラムの内でマーカが付してある方のメインプログラムを起動し、第一のメインプログラムおよび第二のメインプログラムにマーカが付してあるかを判定し、いずれかのメインプログラムにマーカが付されていなかった場合に、マーカのないメインプログラムをもう一方のメインプログラムで上書き保存する【選択図】図４
2011085977.tif 000002
【特許請求の範囲】
【請求項１】
信号の処理を行うＣＰＵと、
前記ＣＰＵの信号処理に用いる第一のメモリと、
ブートプログラム、第一のメインプログラムおよび第二のメインプログラムを格納する第二のメモリと、を備え
メインプログラムを更新する際、前記第一のメインプログラムまたは前記第二のメインプログラムの更新が完了すると更新完了を示すマーカを付与し、
起動時には、前記ＣＰＵは、前記ブートプログラムに従って、前記第一のメインプログラムおよび前記第二のメインプログラムの内でマーカが付してある方を用いて処理を実行することを特徴とする信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器を起動するための情報の更新中に障害が生じて更新が失敗しても、再起動を問題なく行える信号処理装置に関する。
【背景技術】
【０００２】
以下に、従来のについて、図１，５，６，７を用いて説明する。図１は、撮像装置の構成を示すブロック図である。図５は従来の撮像装置のプログラムメモリの構成を示すブロック図である。図６は本発明の撮像装置のプログラム更新の一実施例の動作を示すフローチャートである。図７は従来の撮像装置の起動の動作を示すフローチャートである。
【０００３】
図１において、１は監視領域内の光を取り込んで画像信号に光電変換する撮像部、２は画像処理部、３は撮像装置の各種制御を行うＣＰＵ（Ｃｅｎｔｒａｌ
Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）、４はＣＰＵの動作に用いるＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ Ｄｙｎａｍｉｃ Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）等のワークメモリ、５はブートプログラムやメインプログラム等のプログラムを格納するＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ
Ｅｒａｓａｂｌｅ ａｎｄ Ｐｒｏｇｒａｍｍａｂｌｅ Ｒｅａｄ Ｏｎｌｙ
Ｍｅｍｏｒｙ）等のプログラムメモリ、６はネットワークと信号をやり取りするネットワークＩ／Ｆ、７はネットワークである。
【０００４】
図５において、９はプログラムメモリの格納領域、９０１はブートプログラム格納領域、９０２はメインプログラム書込み領域、９０３はその他のデータ格納領域である。
【０００５】
撮像装置が起動すると、撮像装置内の機器はＣＰＵ３の制御を基に撮像動作を行う。撮像部１は、被写体からの反射光を撮像装置内部に取り込んで光電変換し、画像信号として画像処理部２へ出力する。画像処理部２は、画像信号に対して種々の処理を行いネットワークＩ／Ｆ６へ出力する。ネットワークＩ／Ｆ６は、画像信号をネットワーク７に適合するフォーマット・サイズに変換してネットワーク７へ出力する。
【０００６】
プログラムのバージョンアップ等によりメインプログラムの更新が必要になると、ネットワーク７より新たなメインプログラムが送られてくる。ネットワークＩ／Ｆ６は新たなメインプログラムを受信しＣＰＵ３に出力する。ＣＰＵ３は新たなメインプログラムを受け取ると、プログラムメモリ５のメインプログラム格納領域９０２に格納された今までのメインプログラムを更新する処理を行う。
【０００７】
ここで、プログラムメモリに新しいデータを書き込むには、書き込む前に書き込む領域のデータを消去し、新しいデータを書き込む処理を行う必要がある。ＣＰＵ３はプログラムメモリ５のメインプログラム格納領域９０２に格納された今までのメインプログラムを削除し（Ｓ３０１）、新たなメインプログラムをメインプログラム格納領域９０２に書き込む（Ｓ３０２）。その後、撮像装置を再起動し、ＣＰＵ３は、プログラムメモリ５のブートプログラム格納領域９０１からブートプログラムを読み出して起動し（Ｓ４０１）、ブートプログラムに従って、プログラムメモリ５のメインプログラム格納領域９０２からメインプログラムをワークメモリ４にコピーし（Ｓ４０２）、メインプログラムへ処理を移行し（Ｓ４０３）、メインプログラムの処理を行う（Ｓ４０４）ことで、新たなメインプログラムで撮像装置が起動し、メインプログラムの更新が完了する。
【０００８】
しかし、メインプログラムの更新中に電源が落ちる等、何らかの原因で更新が中断すると、異常なメインプログラムが書込まれている状態となる。この状態で機器の起動した場合、ブートプログラムが異常なメインプログラムを起動させようとするので、撮像装置は正常に動作しなくなってしまう。また、メインプログラムの更新は、撮像装置が正しく動作している状態でなければ行うことができないため、更新をやり直すこともできないため、撮像装置は起動できない状態になってしまう。
【０００９】
なお、ファームウェアの更新の際に、不揮発性メモリに記憶しているファームウェアを一時記憶するためのＲＡＭを設けることで、ファームウェアの更新が失敗しても更新前のファームウェアで起動する技術が、特許文献１に開示されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６−２９３９４４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明の目的は、メインプログラムの更新が失敗しても、機器が動作しなくなることを回避し、正常な状態で再起動する撮像装置を提供することにある。
【００１２】
また、本発明の別の目的は、再起動時に自動でメインプログラムを復旧することができる撮像装置を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の信号処理装置は、信号の処理を行うＣＰＵと、前記ＣＰＵの信号処理に用いる第一のメモリと、ブートプログラム、第一のメインプログラムおよび第二のメインプログラムを格納する第二のメモリと、を備えメインプログラムを更新する際、前記第一のメインプログラムまたは前記第二のメインプログラムの更新が完了すると更新完了を示すマーカを付与し、起動時には、前記ＣＰＵは、前記ブートプログラムに従って、前記第一のメインプログラムおよび前記第二のメインプログラムの内でマーカが付してある方を用いて処理を実行することを特徴とする。
【００１４】
また、上述の信号処理装置は、前記第一のメインプログラムまたは前記第二のメインプログラムに前記マーカが付されていない場合に、マーカのないメインプログラムをもう一方のメインプログラムで上書き保存することを特徴とする。
【００１５】
また、本発明の撮像装置は、上述の信号処理装置を用いた撮像装置であって、物体を撮像して画像信号に変換する撮像部と、前記画像信号に対して所定の処理を行う画像処理部と、ネットワークと信号のやり取りを行うネットワークＩ／Ｆと、を備えることを特徴とする。
【００１６】
また、本発明のプログラム更新方法は、ブートプログラムに従ってメインプログラムを起動する信号処理装置において、第一のメインプログラムのマーカおよび第一のメインプログラムを削除し、新たな第一のメインプログラムを書込み、該第一のメインプログラムにマーカを付与し、第二のメインプログラムのマーカおよび第二のメインプログラムを削除し、新たな第二のメインプログラムを書込み、該第二のメインプログラムにマーカを付与することでメインプログラムを更新し、再起動した際に、ブートプログラムに従って前記第一のメインプログラムおよび前記第二のメインプログラムの内でマーカが付してある方のメインプログラムを起動し、第一のメインプログラムおよび第二のメインプログラムにマーカが付してあるかを判定し、いずれかのメインプログラムにマーカが付されていなかった場合に、マーカのないメインプログラムをもう一方のメインプログラムで上書き保存することを特徴とする。
【発明の効果】
【００１７】
本発明によると、メインプログラムの更新の際に更新が失敗しても、正常に再起動することができる。
【図面の簡単な説明】
【００１８】
【図１】撮像装置の構成を示すブロック図である。
【図２】本発明の撮像装置の一実施例のプログラムメモリの構成を示すブロック図である。
【図３】本発明の撮像装置のプログラム更新の一実施例の動作を示すフローチャートである。
【図４】本発明の撮像装置の起動の一実施例の動作を示すフローチャートである。
【図５】従来の撮像装置のプログラムメモリの構成を示すブロック図である。
【図６】従来の撮像装置のプログラム更新の動作を示すフローチャートである。
【図７】従来の撮像装置の起動の動作を示すフローチャートである。
【発明を実施するための形態】
【００１９】
本発明の撮像装置の一実施形態を図１，２，３，４によって説明する。図１の構成は上述した通りである。図２は、本発明の撮像装置の一実施例のプログラムメモリの構成を示すブロック図である。図３は本発明の撮像装置のプログラム更新の一実施例の動作を示すフローチャートである。
【００２０】
８はプログラムメモリの格納領域、８０１はブートプログラム格納領域、８０２は第一メインプログラム書込み完了マーカ領域、８０３は第一メインプログラム格納領域、８０４は第二メインプログラム書込み完了マーカ領域、８０５は第二メインプログラム格納領域、８０６はその他のデータ格納領域である。なお、ここで第一メインプログラムと第二メインプログラムは同一内容とする。
【００２１】
プログラムのバージョンアップ等によりメインプログラムの更新が必要になると、ネットワーク７より新たなメインプログラムが送られてくる。ネットワークＩ／Ｆ６は新たなメインプログラムを受信しＣＰＵ３に出力する。ＣＰＵ３は新たなメインプログラムを受け取ると、プログラムメモリ５のメインプログラム格納領域９０２に格納された今までのメインプログラムを更新する処理を行う。
【００２２】
ＣＰＵ３は、プログラムメモリ５の第一メインプログラム書込み完了マーカ領域８０２の書込み完了マーカを削除し（Ｓ１０１）、第一メインプログラム格納領域８０３に格納された今までのメインプログラムを削除し（Ｓ１０２）、第一メインプログラム格納領域８０３に新たな第一メインプログラムを書込み（Ｓ１０３）、書込みが成功したら第一メインプログラム書込み完了マーカ領域８０２に第一書込み完了マーカを書き込む（Ｓ１０４）。続けて、第二メインプログラム書込み完了マーカ領域８０４の書込み完了マーカを削除し（Ｓ１０５）、第二メインプログラム格納領域８０５に格納された今までのメインプログラムを削除し（Ｓ１０６）、第二メインプログラム格納領域８０５に新たな第二メインプログラムを書込み（Ｓ１０７）、書込みが成功したら第二メインプログラム書込み完了マーカ領域８０４に第二書込み完了マーカを書き込む（Ｓ１０８）。その後、撮像装置を再起動し、ＣＰＵ３は、プログラムメモリ５のブートプログラム格納領域９０１からブートプログラムを読み出し、ブートプログラムに従って、プログラムメモリ５の第一メインプログラム格納領域８０３または第二メインプログラム格納領域８０５に格納された第一メインプログラムまたは第二メインプログラムをワークメモリ４にコピーし、メインプログラムの処理を行うことで、新たなメインプログラムで撮像装置が起動し、メインプログラムの更新が完了する。
【００２３】
ここで、メインプログラムの更新中に電源断による中断等によって更新が失敗した場合の処理について図４を用いて説明する。図４は本発明の撮像装置の起動の一実施例の動作を示すフローチャートである。
【００２４】
Ｓ１０１〜Ｓ１０８の間に更新処理が中断等して失敗すると、ＣＰＵ３は再起動し、プログラムメモリ５のブートプログラム格納領域８０１に格納されたブートプログラムを読み出して起動し（Ｓ２０１）、正常プログラムの選択処理を行う。まず、ブートプログラムに従って、第一メインプログラム書込み完了マーカ領域８０２に第一書込み完了マーカがあるか否かを判定し（Ｓ２０２）、第一書込み完了マーカがある場合（Ｙｅｓ）には第一メインプログラム格納領域８０３に格納された第一メインプログラムを起動（Ｓ２０３）する。第一書込み完了マーカがない場合（Ｎｏ）には第二メインプログラム書込み完了マーカ領域８０４に第二書込み完了マーカがあるか否かを判定し（Ｓ２０４）、第二書込み完了マーカがある場合（Ｙｅｓ）には第二メインプログラム格納領域８０５に格納された第二メインプログラムを起動する（Ｓ２０５）。第二書込み完了マーカがない場合（Ｎｏ）には異常信号をネットワークに出力し（Ｓ２０６）、ブート処理を中止（Ｓ２０７）する。Ｓ２０３またはＳ２０５の後、メインプログラムへの移行処理を行い（Ｓ２０８）、異常プログラムの復旧処理を行う。Ｓ２０８の後、第一メインプログラム書込み完了マーカ領域８０２に第一書込み完了マーカがあるか否かを判定し（Ｓ２０９）、第一書込み完了マーカがある場合（Ｙｅｓ）には第二メインプログラム書込み完了マーカ領域８０４に第二書込み完了マーカがあるか否かを判定し（Ｓ２１０）、第二書込み完了マーカがある場合（Ｙｅｓ）にはメイン処理を開始する（Ｓ２１７）。Ｓ２０９で第一書込み完了マーカがない場合（Ｎｏ）には第一メインプログラム書込み完了マーカ領域８０２を削除し、第一メインプログラム格納領域８０３の第一メインプログラムを削除し（Ｓ２１１）、第二メインプログラム格納領域８０５の第二メインプログラムを第一メインプログラム格納領域８０３へコピーし（Ｓ２１２）、第一メインプログラム書込み完了マーカ領域８０２へ第一書込み完了マーカを書込み（Ｓ２１３）、Ｓ２１５へ進む。Ｓ２１０で第二書込み完了マーカがない場合（Ｎｏ）には第二メインプログラム書込み完了マーカ領域８０４を削除し、第二メインプログラム格納領域８０５の第二メインプログラムを削除し（Ｓ２１４）第一メインプログラム格納領域８０３の第一メインプログラムを第二メインプログラム格納領域８０５へコピーし（Ｓ２１５）、第二メインプログラム書込み完了マーカ領域８０４の書込み完了マーカを書込み（Ｓ２１６）、Ｓ２１５へ進む。Ｓ２１５のメイン処理が完了すると、撮像装置は再起動し、メインプログラムの復旧も完了する。その後、再度メインプログラムの更新を行う。
【００２５】
上述の一実施例により、メインプログラムの更新が失敗しても、機器が動作しなくなることを回避し、正常な状態で再起動することが可能であり、また、再起動時に自動でメインプログラムを復旧することが可能である。
【００２６】
また、更新するメインプログラムは、予め記憶しているメモリーカードやハードディスク等の外部記憶装置から提供される構成にしても良い。
【００２７】
以上に本発明の一実施例である撮像装置について説明したが、本発明は上記の様な構成に限られることはなく、撮像装置以外の電子機器に広く適用することが可能であり、種々の構造が用いられても良いことは言うまでもない。
【符号の説明】
【００２８】
１：撮像部、２：画像処理部、３：ＣＰＵ、４：ワークメモリ、５：プログラムメモリ、６：ネットワークＩ／Ｆ、７：ネットワーク、８，９：プログラムメモリの格納領域、７０１,９０１：ブートプログラム格納領域、８０２：第一メインプログラム書込み完了マーカ領域、８０３：第一メインプログラム格納領域、８０４：第二メインプログラム書込み完了マーカ領域、８０５：第二メインプログラム格納領域、８０６，９０３：その他のデータ格納領域、９０２：メインプログラム書込み領域。
【図１】
2011085977.tif 000003
【図２】
2011085977.tif 000004
【図３】
2011085977.tif 000005
【図４】
2011085977.tif 000006
【図５】
2011085977.tif 000007
【図６】
2011085977.tif 000008
【図７】
2011085977.tif 000009