(57)【要約】【課題】ＲＯＭコレクション機能を搭載したマイクロコンピュータと修正プログラムを格納した不揮発性メモリとを備えた家電製品等の応用システムにおいて、修正プログラムデータが不正な場合でも、マイクロコンピュータ暴走等の異常動作を防止することができ、不揮発性メモリに格納されたデータの書き換えを実施することができるようにする。【解決手段】読み出し専用メモリであるＲＯＭ４と、ＲＯＭの修正プログラムを格納する不揮発性メモリ１と、不揮発性メモリに格納されたＲＯＭの修正プログラムを読出すプログラム読出し手段３と、プログラム読出し手段３により読出された修正プログラムに基づいてＲＯＭのプログラムを修正した動作を行うＲＯＭ修正制御手段２と、ＲＯＭのプログラムを修正した動作を行うかどうかを判定するＲＯＭ修正動作実施判定手段５とを備える。【選択図】図１
2008146530.tif 000002
【特許請求の範囲】
【請求項１】
読み出し専用メモリであるＲＯＭと、前記ＲＯＭのプログラムを修正した修正プログラムを格納する不揮発性メモリと、前記不揮発性メモリに格納された前記ＲＯＭの修正プログラムを読出すプログラム読出し手段と、前記プログラム読出し手段により読出された修正プログラムに基づいて前記ＲＯＭのプログラムを修正した動作を行うＲＯＭ修正制御手段と、前記ＲＯＭ修正制御手段が前記ＲＯＭのプログラムを修正した動作を行うかどうかを判定するＲＯＭ修正動作実施判定手段とを備えたソフトウェア修正装置。
【請求項２】
ＯＮとＯＦＦを切り換えるスイッチをさらに備え、ＲＯＭ修正動作実施判定手段は前記スイッチの入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定することを特徴とする請求項１に記載のソフトウェア修正装置。
【請求項３】
ＲＯＭ修正動作実施判定手段は、少なくとも２つ以上の入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定するすることを特徴とする請求項１〜２のいずれか１項に記載のソフトウェア修正装置。
【請求項４】
ＲＯＭ修正動作実施判定手段は、電源投入直後にＲＯＭのプログラムを修正した動作を行うかどうかを判定することを特徴とする請求項１〜３のいずれか１項に記載のソフトウェア修正装置。
【請求項５】
不揮発性メモリのデータ書き換えを行うデータ書き換え手段を備えた請求項１〜４のいずれか１項に記載のソフトウェア修正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスクＲＯＭに書き込まれたプログラムを修正して、誤りなく実行する技術に関するものである。
【背景技術】
【０００２】
ＣＰＵとメモリなどを１チップ上に構成したシングルチップ型マイクロコンピュータは、種々の電子機器の制御用途に使用されている。ＣＰＵの命令実行部で実行されるプログラムは、一般に、マイクロコンピュータに内蔵されるマスクＲＯＭに書き込まれるが、プログラムのバグなどの不具合点が発見されてもこれを修正することはできない。このような場合にはＲＯＭコレクションと呼ばれるプログラムデータ修正機能を使い、プログラムの修正を行うのが一般的である。ＲＯＭコレクションは、修正プログラムを不揮発性メモリ内に記憶させて、マスクＲＯＭの不具合箇所のプログラムの代わりに使用する機能である（例えば、特許文献１参照）。
【特許文献１】特開平１１−２４９８８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、修正プログラムを不揮発性メモリ内に記憶させる従来のソフトウェア修正装置の構成においては、不揮発性メモリにしかるべき修正プログラムデータが書き込まれていることが前提として成り立っており、別のマイクロコンピュータ用の修正プログラムデータを誤って不揮発性メモリに書き込んでしまった場合や、不揮発性メモリにデータを書き込む際に途中でデータの書き込みを失敗した場合、マイクロコンピュータの制御がどうなるかは予想がつかないという非常に大きな問題となる。この場合、時としてマイクロコンピュータの暴走となり、データの書き換えができないという課題を有していた。
【０００４】
本発明は、上記従来の課題を解決するもので、スイッチ等の外部からの入力信号により、マイクロコンピュータ暴走等の異常動作を防止することができ、また、不揮発性メモリに格納されたデータの書き換えを実施することができるソフトウェア修正装置の提供を目的とする。
【課題を解決するための手段】
【０００５】
前記従来の課題を解決するために、本発明のソフトウェア修正装置は、読み出し専用メモリであるＲＯＭと、ＲＯＭの修正プログラムを格納する不揮発性メモリと、不揮発性メモリに格納されたＲＯＭの修正プログラムの読出しを行うプログラム読出し手段と、プログラム読出し手段により読出された修正プログラムに基づいてＲＯＭのプログラムを修正した動作を行うＲＯＭ修正制御手段と、ＲＯＭ修正制御手段を動作させるかどうかを判定するＲＯＭ修正動作実施判定手段とを備え、ＲＯＭ修正動作実施判定手段への入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定するものである。
【０００６】
これにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、不揮発性メモリに格納されたデータの書き換えを実施することができる。
【発明の効果】
【０００７】
本発明のソフトウェア修正装置は、ＲＯＭ修正動作実施判定手段への入力信号を検知し、ＲＯＭのプログラムを修正した動作を行うかどうかを判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、不揮発性メモリに格納されたデータの書き換えを実施することが
できる。
【発明を実施するための最良の形態】
【０００８】
第１の発明は、読み出し専用メモリであるＲＯＭと、ＲＯＭの修正プログラムを格納する不揮発性メモリと、不揮発性メモリに格納されたＲＯＭの修正プログラムの読出しを行うプログラム読出し手段と、プログラム読出し手段により読出された修正プログラムに基づいてＲＯＭのプログラムを修正した動作を行うＲＯＭ修正制御手段と、ＲＯＭ修正制御手段を動作させるかどうかを判定するＲＯＭ修正動作実施判定手段とを備え、ＲＯＭ修正動作実施判定手段への入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定することにより別のマイクロコンピュータ用の修正プログラムデータを誤って不揮発性メモリに書き込んでしまった場合や、不揮発性メモリにデータを書き込む際に途中でデータの書き込みを失敗した場合においても、ＲＯＭ修正動作実施判定手段へ信号を入力することにより、マイクロコンピュータ暴走等の異常動作を防止することができる。
【０００９】
第２の発明は、ＯＮとＯＦＦを切り換えるスイッチの入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定するＲＯＭ修正動作実施判定手段を備えることにより、外部からの操作で、ＲＯＭのプログラムを修正した動作を行うか行わないかの切り換えが簡単な構成で可能となる。
【００１０】
第３の発明は、少なくとも２つ以上の入力信号によりＲＯＭのプログラムを修正した動作を行うかどうかを判定するＲＯＭ修正動作実施判定手段を備えることにより、ノイズ等による誤動作を防止することができる。
【００１１】
第４の発明は、電源投入直後にＲＯＭのプログラムを修正した動作を行うかどうかを判定するＲＯＭ修正動作実施判定手段を備えることにより、ＲＯＭ修正動作実施判定手段への信号の入力が必要であるのは電源投入時のみで、マイクロコンピュータが動作開始後はＲＯＭ修正動作実施判定手段への信号の入力が不要となる。また、マイクロコンピュータ動作中のノイズ等による誤動作を防止することができる。
【００１２】
第５の発明は、不揮発性メモリのデータ書き換えを行うデータ書き換え手段を備えることにより、別のマイクロコンピュータ用の修正プログラムデータを誤って不揮発性メモリに書き込んでしまった場合や、不揮発性メモリにデータを書き込む際に途中でデータの書き込みを失敗した場合において、ＲＯＭのプログラムを修正した動作を行わずにマイクロコンピュータを動作させ、その後、不揮発性メモリに格納されたデータの書き換えを実施することが可能となる。
【００１３】
以下、本発明の実施の形態について図面を参照しながら説明する。なお、この実施の形態によって本発明が限定されるものではない。
【００１４】
（実施の形態１）
図１は、本発明の実施の形態１におけるソフトウェア修正装置のブロック図を示すものである。図１において、マイクロコンピュータ１０は、ＲＯＭコレクション機能を有するＲＯＭ修正制御部を備えシステムの制御を行う制御部２と、不揮発メモリであるＥＥＰＲＯＭ１のプログラムデータの読み出すプログラム読出し部３と、制御部２の命令実行部で実行されるプログラムを格納するＲＯＭ４と、ＲＯＭコレクション機能を使用するかどうかを判定する修正動作実施判定部５から構成され、ＥＥＰＲＯＭ１とシリアルインタフェース等を介してデータの送受信を行っている。
【００１５】
以上のように構成されたソフトウェア修正装置について、以下、図２のフローチャートを用いて説明する。まず、電源を投入すると、修正動作実施判定部５により、第１のスイ
ッチ（図示せず）の入力（Ｓ１０１）と第２のスイッチ（図示せず）の入力を検出し（Ｓ１０２）、第１のスイッチ入力がＯＮ（Ｓ１０３）かつ第２のスイッチ入力がＯＮ（Ｓ１０４）であれば、ＲＯＭコレクション機能を使用しない（Ｓ１０５）で、ＥＥＰＲＯＭのデータを使用しないでデータ書き換え手段（図示せず）を用いてＥＥＰＲＯＭのデータを正しい値に書き直す。第１のスイッチ入力がＯＦＦまたは第２のスイッチ入力がＯＦＦであれば、プログラム読出し部３によりＥＥＰＲＯＭ１からＲＯＭ４の修正プログラムを読み出し（Ｓ１０６）、ＲＯＭコレクション機能を使用する（Ｓ１０７）。
【００１６】
以上のように、本実施の形態においては、電源投入時に２つのスイッチ入力を検出し、検出したスイッチ入力の状態でＲＯＭ４のプログラムを修正した動作を行うかどうかを判定することにより、別のマイクロコンピュータ用の修正プログラムデータを誤ってＥＥＰＲＯＭ１に書き込んでしまった場合や、ＥＥＰＲＯＭ１にデータを書き込む際に途中でデータの書き込みを失敗した場合においても、外部からの簡単な操作で、ＲＯＭ４のプログラムを修正した動作を行わずにマイクロコンピュータ１０を動作させることができるため、マイクロコンピュータ１０の暴走等の異常動作を防止することができ、その後、ＥＥＰＲＯＭ１に格納されたデータの書き換えが、安全に実施することができる。
【産業上の利用可能性】
【００１７】
以上のように、本発明にかかるソフトウェア修正装置は、外部からの操作で、ＲＯＭのプログラムを修正した動作を行うか行わないかの切り換えを行うことにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、プログラムデータ不正時でも、不揮発性メモリに格納されたデータの書き換えを実施することができるため、電子機器の制御用途に使用されているマイクロコンピュータのソフトウェアを修正する技術として広く有用である。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態１におけるソフトウェア修正装置のブロック図
【図２】本発明の実施の形態１におけるソフトウェア修正装置の動作を示すフローチャート
【符号の説明】
【００１９】
１  ＥＥＰＲＯＭ
２  制御部（ＲＯＭ修正制御部）
３  プログラム読出し部
４  ＲＯＭ
５  修正動作実施判定部
１０  マイクロコンピュータ
【図１】
2008146530.tif 000003
【図２】
2008146530.tif 000004