(57)【要約】【課題】  不揮発性メモリへのプログラムが未書き込みのときのマイコンの異常動作を抑止する回路を備える不揮発性メモリ内蔵マイコンを提供する【解決手段】  異常動作抑止回路１０は、チェックサム計算回路１１で求めた不揮発性メモリ１００の出力のチェックサム値と未書き込みチェックサム値レジスタ１２に格納されている不揮発性メモリ１００が未書き込みのときのチェックサム値を比較器１３で比較し、その値が一致するとリセット信号発生回路１４からＣＰＵ２００へリセット信号を出力する。これを受けてＣＰＵ２００は不揮発性マイコン１をリセット状態にする。【選択図】  図１
2005222104.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、前記ＣＰＵが実行するプログラムを書き込むことのできる不揮発性メモリとを備える不揮発性メモリ内蔵マイコンであって、
前記不揮発性メモリの出力データのチェックサム値を計算するチェックサム計算回路と、
前記不揮発性メモリが未書き込みであるときのチェックサム値を格納する未書き込みチェックサム値レジスタと、
前記チェックサム計算回路の出力値と前記未書き込みチェックサム値レジスタの値とを比較する比較回路と、
前記比較回路の一致出力信号に基づいて前記ＣＰＵの実行する動作を抑止する信号を出力する回路と
を有することを特徴とする異常動作抑止回路を備える不揮発性メモリ内蔵マイコン。
【請求項２】
前記ＣＰＵの実行する動作を抑止する信号が、前記ＣＰＵへ入力するリセット信号であることを特徴とする異常動作抑止回路を備える不揮発性メモリ内蔵マイコン。
【請求項３】
前記ＣＰＵの実行する動作を抑止する信号が、前記ＣＰＵへ入力するストップ信号であることを特徴とする異常動作抑止回路を備える不揮発性メモリ内蔵マイコン。
【請求項４】
前記比較回路の一致出力信号を前記不揮発性メモリが未書き込みであることを検出したことを示す未書き込み検出信号として外部へ出力することを特徴とする請求項1乃至３のいずれか1項に記載の異常動作抑止回路を備える不揮発性メモリ内蔵マイコン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリ内蔵マイコンに関し、特に不揮発性メモリが未書き込みのときの異常動作を抑止する回路を備える不揮発性メモリ内蔵マイコンに関する。
【背景技術】
【０００２】
一般に、マイコンは内蔵するＲＯＭにプログラムを搭載し、ＣＰＵがこのＲＯＭからプログラムを一定の順序で読み出して実行する。
【０００３】
しかし、予期せぬ原因で実行するプログラムの順序が狂ったり、ノイズの影響を受けたりした場合に、マイコンがいわゆる暴走状態になって異常動作を行うようになる。そこでマイコンにはこの暴走状態を検出する手段が設けられており、その一つとして、ウォッチドッグタイマがよく用いられる（例えば、特許文献１参照。）。
【０００４】
このような暴走状態を検出する手段から出力される暴走検知信号でＣＰＵに割り込みをかけることなどにより、マイコンの異常動作を停止させることが可能となる。
【特許文献１】特開２００１―１０９６４５号公報  （第４ページ、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、近年、プログラムを内蔵するＲＯＭとして、ユーザの手元でデータの書き込みが可能なＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＯＴＰＲＯＭ（Ｏｎｅ  Ｔｉｍｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、フラッシュメモリなどの不揮発性メモリが使用されるケースが増加している。このような不揮発性メモリを使うと、ユーザはプログラムの書き込みが随時行えるため、プログラムの開発効率の向上やマイコンを搭載した製品の開発期間の短縮などを図ることができる。
【０００６】
しかし、このような不揮発性メモリをプログラムを内蔵するＲＯＭとして使用するときに、時として不揮発性メモリへのプログラムの書き込みの行われていないマイコンを基板に実装し、そのまま誤ってマイコンを動作させてしまうことがある。この場合、マイコンの動作開始後、不揮発性メモリから未書き込みのデータが連続して読み出されるため、マイコンが正常な動作をせず、いわゆる暴走状態になってしまう。そこで、上述したウォッチドッグタイマなどの暴走状態を検出する手段が機能し、暴走検知信号を出力する。
【０００７】
ところが、一般にウォッチドッグタイマの監視期間は一定の長い時間に設定されているため、暴走状態になってから暴走検知信号が出力されるまでにかなりの時間を要してしまう。その間マイコンは暴走を続け、マイコンに接続される周辺回路に悪影響を及ぼし、最悪の場合、マイコンが搭載される機器を故障に至らしめるという問題があった。
【０００８】
そこで、本発明の目的は、内蔵する不揮発性メモリへのプログラムが未書き込みのままマイコンを動作させても周辺回路へ及ぶ影響を少なくすることのできる異常動作抑止回路を備える不揮発性メモリ内蔵マイコンを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一態様によれば、ＣＰＵと、前記ＣＰＵが実行するプログラムを書き込むことのできる不揮発性メモリとを備える不揮発性メモリ内蔵マイコンであって、前記不揮発性メモリの出力データのチェックサム値を計算するチェックサム計算回路と、前記不揮発性メモリが未書き込みであるときのチェックサム値を格納する未書き込みチェックサム値レジスタと、前記チェックサム計算回路の出力値と前記未書き込みチェックサム値レジスタの値とを比較する比較回路と、前記比較回路の一致出力信号に基づいて前記ＣＰＵの実行する動作を抑止する信号を出力する回路とを有することを特徴とする異常動作抑止回路を備える不揮発性メモリ内蔵マイコンが提供される。
【発明の効果】
【００１０】
本発明によれば、マイコンへの電源投入後、短時間で内蔵する不揮発性メモリへのプログラムが未書き込みであることを検出でき、マイコンが異常な動作を行うことを抑止できるので、マイコンに接続される周辺回路へ及ぶ影響を少なくすることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施例を図面を参照して説明する。
【実施例１】
【００１２】
図１は、本発明の第１の実施例に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンのブロック図である。
【００１３】
不揮発性メモリ内蔵マイコン１は、不揮発性メモリ１００と、ＣＰＵ２００とを有している。通常、不揮発性メモリ１００にはユーザにより予めプログラムが書き込まれており、ＣＰＵ２００からのアドレス信号で指定された順にプログラムデータをＣＰＵ２００へ出力する。ＣＰＵ２００は、不揮発性メモリ１００から出力されたプログラムに書かれた命令を解釈し、その命令に従った動作を行なう。
【００１４】
さらに、不揮発性メモリ内蔵マイコン１は、不揮発性メモリ１００が未書き込みであることを検出してＣＰＵ２００へのリセット信号を出力する異常動作抑止回路１０を備えている。
【００１５】
異常動作抑止回路１０は、不揮発性メモリ１００の出力データのチェックサム値を計算するチェックサム計算回路１１と、予め求めておいた不揮発性メモリ１００が未書き込みであるときのチェックサム値を格納した未書き込みチェックサム値レジスタ１２と、チェックサム計算回路１１の出力値と未書き込みチェックサム値レジスタ１２の値を比較する比較器１３と、チェックサム計算回路１１の出力値と未書き込みチェックサム値レジスタ１２の値が一致したときに比較器１３から出力される一致出力信号が入力されてＣＰＵへのリセット信号を出力するリセット信号発生回路１４を有している。
【００１６】
なお、比較器１３から出力される一致出力信号は、不揮発性メモリ１００が未書き込み状態であることをユーザへ報知するために、未書き込み検出信号として不揮発性メモリ内蔵マイコン１の外部へ出力される。
【００１７】
ＣＰＵ２００は、異常動作抑止回路１０からリセット信号が入力されると、不揮発性メモリ内蔵マイコン１をリセット状態に設定するリセット動作を行う。
【００１８】
次に、図２の動作フロー図を用いて、本実施例における異常動作抑止回路１０が、不揮発性メモリ１００の未書き込みに起因する不揮発性メモリ内蔵マイコン１の異常動作を抑止する動作について説明する。
【００１９】
電源が投入されると（ステップＳ１）、ＣＰＵ２００は不揮発性メモリ内蔵マイコン１の初期設定を開始する（ステップＳ２）。このとき、先ずＣＰＵ２００は不揮発性メモリ１００へアドレスを０番地から順次与えて不揮発性メモリ１００の全データを読み出す（ステップＳ３）。
【００２０】
この不揮発性メモリ１００から読み出された全データに対してチェックサム計算回路１１がチェックサム値を計算する（ステップＳ４）。チェックサム値の計算が終わると、その計算した値を、比較器１３で、未書き込みチェックサム値レジスタ１２に格納されている不揮発性メモリ１００が未書き込みのときのチェックサム値と比較する（ステップＳ５）。
【００２１】
チェックサム計算回路１１で計算した値と未書き込みチェックサム値レジスタ１２の値が一致すると（ステップＳ６のＹＥＳ）、比較器１３は一致信号を出力する。この比較器１３から一致信号が出力されるということは、不揮発性メモリ１００が未書き込み状態であることを意味する。そこで、不揮発性メモリ１００が未書き込み状態であることをユーザに知らせるために、この比較器１３からの一致信号を未書き込み検出信号として不揮発性メモリ内蔵マイコン１の外部へ出力する（ステップＳ７）。
【００２２】
なお、チェックサム計算回路１１で計算した値と未書き込みチェックサム値レジスタ１２の値が一致しないときは、不揮発性メモリ１００が未書き込みでないことを意味するので通常の初期設定動作へ移行する（ステップＳ６のＮＯ）。
【００２３】
比較器１３から一致信号が出力されると、リセット信号発生回路１４がＣＰＵ２００へのリセット信号を生成する（ステップＳ８）。
【００２４】
リセット信号発生回路１４からリセット信号が出力されると、ＣＰＵ２００が不揮発性メモリ内蔵マイコン１をリセット状態に設定する（ステップＳ９）。
【００２５】
その後、比較器１３から外部へ出力された未書き込み検出信号による報知を受けてユーザが電源を切断することにより、不揮発性メモリ内蔵マイコン１は動作を終了する（ステップＳ１０）。
【００２６】
このような本実施例によれば、マイコンへの電源投入後の初期設定動作の最初に内蔵する不揮発性メモリへのプログラムが未書き込みであるかどうかをチェックし、不揮発性メモリへのプログラムが未書き込みであるときは、ＣＰＵへのリセット信号を生成してマイコンをリセット状態に設定する。これにより、マイコンが異常な動作を行うことを抑止できる。
【００２７】
また、マイコンの外部へ未書き込み検出信号を出力するので、ユーザは不揮発性メモリが未書き込みであることを知ることができ、マイコンの電源を切る等の適切な処置を取ることができる。
【実施例２】
【００２８】
図３は、本発明の第２の実施例に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンのブロック図である。本実施例の異常動作抑止回路は、図１に示した第１の実施例の異常動作抑止回路のリセット信号発生回路をストップ信号発生回路に代えたものであり、その他の回路は第１の実施例と同じである。そこで、図３において図１と同一のブロックには同一の符号を付し、ここではその詳細な説明を省略する。
【００２９】
本実施例の不揮発性メモリ内蔵マイコン２は、不揮発性メモリ１００と、ＣＰＵ２００と、異常動作抑止回路２０を有する。
【００３０】
本実施例における異常動作抑止回路２０は、チェックサム計算回路１１と、未書き込みチェックサム値レジスタ１２と、チェックサム計算回路１１の出力と未書き込みチェックサム値レジスタ１２の値を比較する比較器１３と、比較器１３から出力される一致出力信号が入力されてＣＰＵ２００へのストップ信号を出力するストップ信号発生回路２４を有している。
【００３１】
ＣＰＵ２００は、異常動作抑止回路２０からストップ信号が入力されると、不揮発性メモリ内蔵マイコン２のクロックの発振を停止し、入出力ポートの出力をハイインピーダンスに保持するストップモードにする。
【００３２】
次に、図４の動作フロー図を用いて、本実施例における異常動作抑止回路２０が、不揮発性メモリ１００の未書き込みに起因する不揮発性メモリ内蔵マイコン２の異常動作を抑止する動作について説明する。ただし、本フローにおける動作は基本的に図２に示した第１の実施例の動作フローと同じであるので、図２と同一の動作のステップには図２と同一のステップ番号を付し、ここではその詳細な説明を省略する。
【００３３】
図４に示したステップＳ１からステップＳ７までの動作は、図２に示した第１の実施例のステップＳ１からステップＳ７までのフローと同じである。すなわち、不揮発性メモリ内蔵マイコン２００に電源が投入されると、不揮発性メモリ１００の出力と未書き込みチェックサム値レジスタ１２の値を比較し、両者の値が一致すると一致信号が比較器１３から出力される。
【００３４】
比較器１３から一致信号が出力されると、ストップ信号発生回路２４がＣＰＵ２００へのストップ信号を生成する（ステップＳ１８）。
【００３５】
ストップ信号発生回路２４からストップ信号が出力されると、ＣＰＵ２００が不揮発性メモリ内蔵マイコン２をストップ状態に設定する（ステップＳ１９）。
【００３６】
その後、比較器１３から外部へ出力された未書き込み検出信号による報知を受けてユーザが電源を切断することにより、メモリ内蔵マイコン２は動作を終了する（ステップＳ１０）。
【００３７】
このような本実施例によれば、マイコンへの電源投入後の初期設定動作の最初に内蔵する不揮発性メモリへのプログラムが未書き込みであるかどうかをチェックし、不揮発性メモリへのプログラムが未書き込みであるときは、ＣＰＵへのストップ信号を生成してマイコンをストップ状態に設定する。これにより、マイコンの入出力ポートの出力がハイインピーダンス状態になり、この入出力ポートに接続される周辺回路の出力との間で信号レベルがコンフリクト状態になることを防止することができる。
【００３８】
また、本実施例においてもマイコンの外部へ未書き込み検出信号が出力されるので、ユーザは不揮発性メモリが未書き込みであることを知ることができ、マイコンの電源を切る等の適切な処置を取ることができる。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施例１に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンのブロック図。
【図２】本発明の実施例１に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンの異常動作を抑止する動作のフローを示すフロー図。
【図３】本発明の実施例２に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンのブロック図。
【図４】本発明の実施例２に係る異常動作抑止回路を備える不揮発性メモリ内蔵マイコンの異常動作を抑止する動作のフローを示すフロー図。
【符号の説明】
【００４０】
１、２  不揮発性メモリ内蔵マイコン
１０、２０  異常動作抑止回路
１１  チェックサム計算回路
１２  未書き込みチェックサム値レジスタ
１３  比較器
１４  リセット信号発生回路
２４  ストップ信号発生回路
１００  不揮発性メモリ
２００  ＣＰＵ
【図１】
2005222104.tif 000003
【図２】
2005222104.tif 000004
【図３】
2005222104.tif 000005
【図４】
2005222104.tif 000006