JPH11231961A - マイクロコンピュータ - Google Patents
マイクロコンピュータInfo
- Publication number
- JPH11231961A JPH11231961A JP10030127A JP3012798A JPH11231961A JP H11231961 A JPH11231961 A JP H11231961A JP 10030127 A JP10030127 A JP 10030127A JP 3012798 A JP3012798 A JP 3012798A JP H11231961 A JPH11231961 A JP H11231961A
- Authority
- JP
- Japan
- Prior art keywords
- register
- oscillation
- value
- data
- selection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
Abstract
(57)【要約】
【課題】 高速動作中に電源が瞬停しても、短時間で高
速動作に復帰できるマイクロコンピュータを提供する。 【解決手段】 電源投入後、比較レジスタ12の値を確
認する。比較レジスタ12が特定値に設定されていない
場合は、比較レジスタ12に特定値をセットし、発振選
択レジスタ13及び補助レジスタ14にセラミック発振
器2を選択する為の選択データを同時セットする。一
方、比較レジスタ12が特定値に設定された状態で電源
が瞬停した場合、補助レジスタ14の値を発振選択レジ
スタ13にセットする。
速動作に復帰できるマイクロコンピュータを提供する。 【解決手段】 電源投入後、比較レジスタ12の値を確
認する。比較レジスタ12が特定値に設定されていない
場合は、比較レジスタ12に特定値をセットし、発振選
択レジスタ13及び補助レジスタ14にセラミック発振
器2を選択する為の選択データを同時セットする。一
方、比較レジスタ12が特定値に設定された状態で電源
が瞬停した場合、補助レジスタ14の値を発振選択レジ
スタ13にセットする。
Description
【0001】
【発明の属する技術分野】本発明は、複数の発振回路を
用途に応じて選択できるマイクロコンピュータに関す
る。
用途に応じて選択できるマイクロコンピュータに関す
る。
【0002】
【従来の技術】マイクロコンピュータは、クロックジェ
ネレータを用いて発振クロックからシステムクロックを
形成し、このシステムクロックに同期して各種論理演算
を実行するものである。マイクロコンピュータは電源投
入と同時に初期化動作を実行しその後通常動作の実行に
移行しなければならない為、電源投入と同時に安定し且
つ発振周波数が高い発振クロックを発生できる発振回路
が要求される。しかし、1個の発振回路が電源投入と同
時に発振安定した高周波数の発振クロックを発生するの
は現状では不可能である。そこで、電源投入と同時に発
振安定する利点を有する反面発振周波数が低く外部要因
(温度等)で特性がばらつき易い欠点を有する第1発振
回路(例えばRC発振回路)と、発振周波数が高く外部
要因の影響を受け難い利点を有する反面電源投入から発
振安定時間の待機を強いられる欠点を有する第2発振回
路(例えば水晶発振回路、セラミック発振回路等)とを
マイクロコンピュータに内蔵し、第1発振回路及び第2
発振回路の各々の利点のみを活用してマイクロコンピュ
ータを動作させる様にしている。
ネレータを用いて発振クロックからシステムクロックを
形成し、このシステムクロックに同期して各種論理演算
を実行するものである。マイクロコンピュータは電源投
入と同時に初期化動作を実行しその後通常動作の実行に
移行しなければならない為、電源投入と同時に安定し且
つ発振周波数が高い発振クロックを発生できる発振回路
が要求される。しかし、1個の発振回路が電源投入と同
時に発振安定した高周波数の発振クロックを発生するの
は現状では不可能である。そこで、電源投入と同時に発
振安定する利点を有する反面発振周波数が低く外部要因
(温度等)で特性がばらつき易い欠点を有する第1発振
回路(例えばRC発振回路)と、発振周波数が高く外部
要因の影響を受け難い利点を有する反面電源投入から発
振安定時間の待機を強いられる欠点を有する第2発振回
路(例えば水晶発振回路、セラミック発振回路等)とを
マイクロコンピュータに内蔵し、第1発振回路及び第2
発振回路の各々の利点のみを活用してマイクロコンピュ
ータを動作させる様にしている。
【0003】詳しくは、電源投入すると、第1発振回路
は直ちに発振安定し、第2発振回路は一定時間を経過し
た後に発振安定する。従って、マイクロコンピュータ
は、電源投入時は第1発振回路の発振クロックに基づい
てメモリ、レジスタ等の初期化をソフトウエア処理で実
行し、電源投入から一定時間経過後は第2発振回路の発
振クロックに基づいて各種演算等の通常動作をソフトウ
エア処理で実行する様に、第1及び第2発振回路を切り
換える機能を有している。尚、マイクロコンピュータの
初期化は、大規模な演算動作を実行する訳ではないの
で、第1発振回路が発生する低周波数の発振クロックで
十分である。
は直ちに発振安定し、第2発振回路は一定時間を経過し
た後に発振安定する。従って、マイクロコンピュータ
は、電源投入時は第1発振回路の発振クロックに基づい
てメモリ、レジスタ等の初期化をソフトウエア処理で実
行し、電源投入から一定時間経過後は第2発振回路の発
振クロックに基づいて各種演算等の通常動作をソフトウ
エア処理で実行する様に、第1及び第2発振回路を切り
換える機能を有している。尚、マイクロコンピュータの
初期化は、大規模な演算動作を実行する訳ではないの
で、第1発振回路が発生する低周波数の発振クロックで
十分である。
【0004】さて、第1及び第2発振回路の選択は、選
択レジスタ(揮発性素子)とデコーダとを用いて実現さ
れる。即ち、電源が投入されると、選択レジスタは第1
発振回路を選択する為の選択データ(例えば00H)が
ハードウエア処理でセットされ、デコーダはこの時の選
択データを解読して第1発振回路を選択し、マイクロコ
ンピュータは第1発振回路の発振クロックに基づいてソ
フトウエア処理で初期化動作を実行する。電源投入から
一定時間が経過すると、選択レジスタは第2発振回路を
選択する為の選択データ(例えば11H)がソフトウエ
ア処理でセットされ、デコーダはこの時の選択データを
解読して第2発振回路を選択し、マイクロコンピュータ
は第2発振回路の発振クロックに基づいて各種演算動作
を実行する。
択レジスタ(揮発性素子)とデコーダとを用いて実現さ
れる。即ち、電源が投入されると、選択レジスタは第1
発振回路を選択する為の選択データ(例えば00H)が
ハードウエア処理でセットされ、デコーダはこの時の選
択データを解読して第1発振回路を選択し、マイクロコ
ンピュータは第1発振回路の発振クロックに基づいてソ
フトウエア処理で初期化動作を実行する。電源投入から
一定時間が経過すると、選択レジスタは第2発振回路を
選択する為の選択データ(例えば11H)がソフトウエ
ア処理でセットされ、デコーダはこの時の選択データを
解読して第2発振回路を選択し、マイクロコンピュータ
は第2発振回路の発振クロックに基づいて各種演算動作
を実行する。
【0005】
【発明が解決しようとする課題】しかしながら、選択レ
ジスタが揮発性素子であるが故に以下の問題がある。即
ち、第2発振回路が選択されてマイクロコンピュータが
高速動作している時、電源電圧が外部要因等の影響を受
けて瞬停し、この瞬停に起因してリセットが働くと、マ
イクロコンピュータが初期化動作を開始して選択レジス
タの値が第1発振回路を選択する為の選択データに戻
り、マイクロコンピュータは電源電圧が僅かな時間で復
帰するにも関わらず再び低速動作を強いられることにな
る。
ジスタが揮発性素子であるが故に以下の問題がある。即
ち、第2発振回路が選択されてマイクロコンピュータが
高速動作している時、電源電圧が外部要因等の影響を受
けて瞬停し、この瞬停に起因してリセットが働くと、マ
イクロコンピュータが初期化動作を開始して選択レジス
タの値が第1発振回路を選択する為の選択データに戻
り、マイクロコンピュータは電源電圧が僅かな時間で復
帰するにも関わらず再び低速動作を強いられることにな
る。
【0006】本来ならば、電源電圧の下降の度合いがR
AM等の格納データを破壊しない程度の瞬停であれば、
マイクロコンピュータは瞬停後であっても瞬停前の高速
動作を継続するのが好ましい。しかし、電源電圧の下降
の度合いに関わらず、マイクロコンピュータは一律に初
期化の為の低速動作に戻ってしまう問題があった。そこ
で、本発明は、高速動作中に電源が瞬停しても、高速動
作を継続できるマイクロコンピュータを提供することを
目的とする。
AM等の格納データを破壊しない程度の瞬停であれば、
マイクロコンピュータは瞬停後であっても瞬停前の高速
動作を継続するのが好ましい。しかし、電源電圧の下降
の度合いに関わらず、マイクロコンピュータは一律に初
期化の為の低速動作に戻ってしまう問題があった。そこ
で、本発明は、高速動作中に電源が瞬停しても、高速動
作を継続できるマイクロコンピュータを提供することを
目的とする。
【0007】
【課題を解決するための手段】本発明は、前記問題点を
解決する為に成されたものであり、第1発振回路と、前
記第1発振回路より発振周波数が高い第2発振回路と、
前記第1発振回路又は前記第2発振回路の何れか一方の
発振出力を選択する選択回路と、電源投入時は前記第1
発振回路の発振出力を選択し且つ所定時間経過後は前記
第2発振回路の発振出力を選択する為の前記選択回路に
供給される選択データがセットされる発振選択レジスタ
と、を内蔵するマイクロコンピュータにおいて、データ
の電気消去が可能であり且つデータの書き込み及び読み
出しが可能な特性を有する第1不揮発性レジスタを備
え、前記所定時間経過後、前記発振選択レジスタ及び前
記第1不揮発性レジスタに前記第2発振回路の発振出力
を選択する為の選択データを同時セットし、その後の電
源瞬停時、前記発振選択レジスタに前記第1不揮発性レ
ジスタの値をセットする様にしたことを特徴とする。
解決する為に成されたものであり、第1発振回路と、前
記第1発振回路より発振周波数が高い第2発振回路と、
前記第1発振回路又は前記第2発振回路の何れか一方の
発振出力を選択する選択回路と、電源投入時は前記第1
発振回路の発振出力を選択し且つ所定時間経過後は前記
第2発振回路の発振出力を選択する為の前記選択回路に
供給される選択データがセットされる発振選択レジスタ
と、を内蔵するマイクロコンピュータにおいて、データ
の電気消去が可能であり且つデータの書き込み及び読み
出しが可能な特性を有する第1不揮発性レジスタを備
え、前記所定時間経過後、前記発振選択レジスタ及び前
記第1不揮発性レジスタに前記第2発振回路の発振出力
を選択する為の選択データを同時セットし、その後の電
源瞬停時、前記発振選択レジスタに前記第1不揮発性レ
ジスタの値をセットする様にしたことを特徴とする。
【0008】前記第1不揮発性メモリはフラッシュメモ
リであることを特徴とする。データの電気消去が可能で
あり且つデータの書き込み及び読み出しが可能な特性を
有し、前記発振選択レジスタ及び前記第1不揮発性レジ
スタに前記第2発振回路の発振出力を選択する為の選択
データを同時セットする以前に、特定値が書き込まれる
第2不揮発性レジスタを備え、電源投入後に前記第2不
揮発性レジスタの値を判断し、前記第2不揮発性レジス
タの値が特定値でない場合は電源投入後の動作開始状態
であるものと判断し、前記第2不揮発性レジスタの値が
特定値である場合は電源瞬停後の動作再開状態であるも
のと判断することを特徴とする。
リであることを特徴とする。データの電気消去が可能で
あり且つデータの書き込み及び読み出しが可能な特性を
有し、前記発振選択レジスタ及び前記第1不揮発性レジ
スタに前記第2発振回路の発振出力を選択する為の選択
データを同時セットする以前に、特定値が書き込まれる
第2不揮発性レジスタを備え、電源投入後に前記第2不
揮発性レジスタの値を判断し、前記第2不揮発性レジス
タの値が特定値でない場合は電源投入後の動作開始状態
であるものと判断し、前記第2不揮発性レジスタの値が
特定値である場合は電源瞬停後の動作再開状態であるも
のと判断することを特徴とする。
【0009】前記第2不揮発性レジスタはフラッシュメ
モリであることを特徴とする。前記第2不揮発性レジス
タの値が特定値である場合は、前記発振選択レジスタに
前記第1不揮発性メモリの値をセットさせることを特徴
とする。
モリであることを特徴とする。前記第2不揮発性レジス
タの値が特定値である場合は、前記発振選択レジスタに
前記第1不揮発性メモリの値をセットさせることを特徴
とする。
【0010】
【発明の実施の形態】本発明の詳細を図面に従って具体
的に説明する。図1は本発明のマイクロコンピュータを
示すブロック図である。図1において、(1)はRC発
振器(第1発振回路)であり、抵抗の抵抗値及びコンデ
ンサの容量で定まる周波数の発振クロックを発生するも
のである。RC発振器(1)は、電源投入と同時に安定
発振を開始する利点を有するが、発振周波数が低く(例
えば数百KHz)且つ外部要因(温度変化等)で発振周
波数がばらつく欠点も有する。(2)はセラミック発振
器(第2発振回路)であり、セラミック振動子の振動周
波数に従い、RC発振器(1)より高い周波数の発振ク
ロックを発生するものである。セラミック発振器(2)
は、発振周波数が高く(例えば最大数十MHz)且つ発
振周波数が外部要因の影響を受け難い利点を有するが、
電源投入から一定時間(規定は数msec)経過しない
と安定発振できない欠点も有する。マイクロコンピュー
タは、RC発振器(1)及びセラミック発振器(2)の
両方の利点を利用し、電源投入時はRC発振器(1)の
出力を選択して初期化の為の低速動作を実行し、電源投
入から一定時間経過後はセラミック発振器(2)の出力
を選択して各種論理演算の為の高速動作を実行する。
的に説明する。図1は本発明のマイクロコンピュータを
示すブロック図である。図1において、(1)はRC発
振器(第1発振回路)であり、抵抗の抵抗値及びコンデ
ンサの容量で定まる周波数の発振クロックを発生するも
のである。RC発振器(1)は、電源投入と同時に安定
発振を開始する利点を有するが、発振周波数が低く(例
えば数百KHz)且つ外部要因(温度変化等)で発振周
波数がばらつく欠点も有する。(2)はセラミック発振
器(第2発振回路)であり、セラミック振動子の振動周
波数に従い、RC発振器(1)より高い周波数の発振ク
ロックを発生するものである。セラミック発振器(2)
は、発振周波数が高く(例えば最大数十MHz)且つ発
振周波数が外部要因の影響を受け難い利点を有するが、
電源投入から一定時間(規定は数msec)経過しない
と安定発振できない欠点も有する。マイクロコンピュー
タは、RC発振器(1)及びセラミック発振器(2)の
両方の利点を利用し、電源投入時はRC発振器(1)の
出力を選択して初期化の為の低速動作を実行し、電源投
入から一定時間経過後はセラミック発振器(2)の出力
を選択して各種論理演算の為の高速動作を実行する。
【0011】(3)はROMであり、マイクロコンピュ
ータの動作制御の為のプログラムデータ、テーブルデー
タ等が予め格納されたものである。(4)はプログラム
カウンタであり、ROM(3)をアドレス指定するもの
である。(5)はインストラクションレジスタであり、
ROM(3)の読み出しデータを保持するものである。
(6)はインストラクションデコーダであり、インスト
ラクションレジスタ(5)がプログラムデータを保持し
ている時、このプログラムデータを解読して制御信号を
出力するものである。(7)はCPUであり、制御信号
に従って各種論理演算を実行するものである。(8)は
RAMであり、CPU(7)の演算データを内部バス
(9)を介して書き込み及び読み出しするものである。
(10)はスタックポインタであり、割り込み要求が発
生した時、プログラムカウンタ(4)の現在のアドレス
値を割り込み処理が終了するまで保持するものである。
(11)はタイマであり、電源投入後、RC発振器
(1)の発振出力を用いて計数を開始し、電源投入から
一定時間経過後にオーバーフロー信号OFを出力するも
のである。CPU(7)は、ROM(3)のプログラム
データの解読結果に従ってタイマ(11)の計数値を監
視し、タイマ(11)の計数値が電源投入から一定時間
経過後を表す値となった時、RC発振器(1)からセラ
ミック発振器(2)への発振切換制御を実行する。
ータの動作制御の為のプログラムデータ、テーブルデー
タ等が予め格納されたものである。(4)はプログラム
カウンタであり、ROM(3)をアドレス指定するもの
である。(5)はインストラクションレジスタであり、
ROM(3)の読み出しデータを保持するものである。
(6)はインストラクションデコーダであり、インスト
ラクションレジスタ(5)がプログラムデータを保持し
ている時、このプログラムデータを解読して制御信号を
出力するものである。(7)はCPUであり、制御信号
に従って各種論理演算を実行するものである。(8)は
RAMであり、CPU(7)の演算データを内部バス
(9)を介して書き込み及び読み出しするものである。
(10)はスタックポインタであり、割り込み要求が発
生した時、プログラムカウンタ(4)の現在のアドレス
値を割り込み処理が終了するまで保持するものである。
(11)はタイマであり、電源投入後、RC発振器
(1)の発振出力を用いて計数を開始し、電源投入から
一定時間経過後にオーバーフロー信号OFを出力するも
のである。CPU(7)は、ROM(3)のプログラム
データの解読結果に従ってタイマ(11)の計数値を監
視し、タイマ(11)の計数値が電源投入から一定時間
経過後を表す値となった時、RC発振器(1)からセラ
ミック発振器(2)への発振切換制御を実行する。
【0012】(12)は比較レジスタ(第2不揮発性レ
ジスタ)であり、データの電気消去が可能であり且つデ
ータの書き込み及び読み出しが可能な不揮発性の特性を
有し、電源がいつ瞬停したのかを判断する為のものであ
る。比較レジスタ(12)は、タイマ(11)がオーバ
ーフロー信号OFを出力した後、特定値(例えば55
H、AAH等)がセットされる。即ち、電源が瞬停した
時、比較レジスタ(12)の値が初期化されたままの状
態「00H」ならば、マイクロコンピュータがRC発振
器(1)の発振出力で低速動作しているものと判断し、
一方、比較レジスタ(12)の値が特定値ならば、マイ
クロコンピュータがセラミック発振器(2)の発振出力
で高速動作しているものと判断する。尚、比較レジスタ
(12)として不揮発性メモリ(EEPROM、フラッ
シュメモリ等)を使用し、単独で設けても、マイクロコ
ンピュータの内部又は外部に配置した不揮発性メモリの
一部領域を利用しても良い。また、比較レジスタ(1
2)のアドレス数が多い程、電源の瞬停の判断は一層確
実となる。
ジスタ)であり、データの電気消去が可能であり且つデ
ータの書き込み及び読み出しが可能な不揮発性の特性を
有し、電源がいつ瞬停したのかを判断する為のものであ
る。比較レジスタ(12)は、タイマ(11)がオーバ
ーフロー信号OFを出力した後、特定値(例えば55
H、AAH等)がセットされる。即ち、電源が瞬停した
時、比較レジスタ(12)の値が初期化されたままの状
態「00H」ならば、マイクロコンピュータがRC発振
器(1)の発振出力で低速動作しているものと判断し、
一方、比較レジスタ(12)の値が特定値ならば、マイ
クロコンピュータがセラミック発振器(2)の発振出力
で高速動作しているものと判断する。尚、比較レジスタ
(12)として不揮発性メモリ(EEPROM、フラッ
シュメモリ等)を使用し、単独で設けても、マイクロコ
ンピュータの内部又は外部に配置した不揮発性メモリの
一部領域を利用しても良い。また、比較レジスタ(1
2)のアドレス数が多い程、電源の瞬停の判断は一層確
実となる。
【0013】(13)は発振選択レジスタであり、電源
投入時、RC発振器(1)を選択する為の選択データが
ハードウエア処理でセットされるものである。(14)
は補助レジスタ(第1不揮発性レジスタ)であり、デー
タの電気消去が可能であり且つデータの書き込み及び読
み出しが可能な不揮発性の特性を有し、発振選択レジス
タ(13)と対をなすものである。即ち、電源投入から
一定時間経過後は、発振選択レジスタ(13)及び補助
レジスタ(14)にセラミック発振器(2)を選択する
為の選択データが同時にセットされ、マイクロコンピュ
ータがセラミック発振器(2)の発振出力に基づく高速
動作中の瞬停時は、補助レジスタ(14)の値が発振選
択レジスタ(13)にセットされる。尚、RC発振器
(1)及びセラミック発振器(2)の選択の為のデータ
はROM(3)にテーブルデータとして格納されている
ものとする。(15)は転送制御回路であり、ROM
(3)のプログラム命令の解読結果に従って、発振選択
レジスタ(13)及び補助レジスタ(14)へのデータ
転送、及び、補助レジスタ(14)から発振選択レジス
タ(13)へのデータ転送を実行するものである。(1
6)は選択回路であり、発振選択レジスタ(13)の内
容を解読し、RC発振器(1)又はセラミック発振器
(2)の何れか一方の発振出力を選択するものである。
マイクロコンピュータは、選択回路(16)から得られ
る発振出力に基づいて動作する。
投入時、RC発振器(1)を選択する為の選択データが
ハードウエア処理でセットされるものである。(14)
は補助レジスタ(第1不揮発性レジスタ)であり、デー
タの電気消去が可能であり且つデータの書き込み及び読
み出しが可能な不揮発性の特性を有し、発振選択レジス
タ(13)と対をなすものである。即ち、電源投入から
一定時間経過後は、発振選択レジスタ(13)及び補助
レジスタ(14)にセラミック発振器(2)を選択する
為の選択データが同時にセットされ、マイクロコンピュ
ータがセラミック発振器(2)の発振出力に基づく高速
動作中の瞬停時は、補助レジスタ(14)の値が発振選
択レジスタ(13)にセットされる。尚、RC発振器
(1)及びセラミック発振器(2)の選択の為のデータ
はROM(3)にテーブルデータとして格納されている
ものとする。(15)は転送制御回路であり、ROM
(3)のプログラム命令の解読結果に従って、発振選択
レジスタ(13)及び補助レジスタ(14)へのデータ
転送、及び、補助レジスタ(14)から発振選択レジス
タ(13)へのデータ転送を実行するものである。(1
6)は選択回路であり、発振選択レジスタ(13)の内
容を解読し、RC発振器(1)又はセラミック発振器
(2)の何れか一方の発振出力を選択するものである。
マイクロコンピュータは、選択回路(16)から得られ
る発振出力に基づいて動作する。
【0014】図2は、マイクロコンピュータがROMの
プログラム命令の解読結果に従ってどの様に動作するの
かを説明する為のフローチャートである。以下、図1の
動作を図2のフローチャートを用いて説明する。先ず、
電源が投入されると、電源投入と同時にRC発振器
(1)が発振を開始し且つマイクロコンピュータの特定
素子がリセットされる。即ち、マイクロコンピュータの
リセット時は比較レジスタ(12)の値がハードウエア
処理で「00H」となる(ステップ1)。その後、電源
電圧がマイクロコンピュータを正常動作させる電圧まで
上昇すると、マイクロコンピュータはリセット解除され
る(ステップ2)。すると、選択回路(16)がRC発
振器(1)を選択し、マイクロコンピュータはRC発振
器(1)の発振出力で低速動作を開始し、即ち、ROM
(3)のプログラムデータの解読結果に従って初期プロ
グラムの実行を開始する(ステップ3)。初期プログラ
ムでは、比較レジスタ(12)の値が特定値であるかど
うかをCPU(7)で演算する(ステップ4)。比較レ
ジスタ(12)の値が特定値でない場合(ステップ5N
O)、マイクロコンピュータが初期プログラムを実行し
ている過程と判断する。この時、タイマ(11)が計数
を開始し(ステップ6)、マイクロコンピュータの残り
の内部素子が初期設定される(ステップ7)。その後、
タイマ(11)が計数動作を継続してオーバーフロー信
号OFを出力すると(ステップ8YES)、セラミック
発振器(2)が安定発振したものと判断する。この時、
プログラムカウンタ(4)の現状値をスタックポインタ
(10)に一時待避し、且つ、プログラムカウンタ
(4)を現状値からタイマ割り込み処理を実行する値に
変更する。すると、ROM(3)から特定値(テーブル
データ)を読み出してインストラクションレジスタ
(5)に保持した後、内部バス(9)を介して比較レジ
スタ(12)に書き込む(ステップ9)。また、ROM
(3)からセラミック発振器(2)を選択する為の選択
データ(テーブルデータ)を読み出してインストラクシ
ョンレジスタ(5)に保持した後、内部バス(9)を介
して転送制御回路(15)に供給し、発振制御レジスタ
(13)及び補助レジスタ(14)に同時セットする
(ステップ10)。これでタイマ割り込み処理は終了す
る。この時点から、選択回路(16)はセラミック発振
器(2)を選択し、マイクロコンピュータはセラミック
発振器(2)の発振出力で高速動作する。即ち、スタッ
クポインタ(10)の値をプログラムカウンタ(4)に
戻し、ROM(3)のプログラムデータの解読結果に従
ってメインルーチンプログラム処理を実行する(ステッ
プ11)。電源が瞬停しない場合はメインルーチンプロ
グラム処理を継続する(ステップ12NO)。
プログラム命令の解読結果に従ってどの様に動作するの
かを説明する為のフローチャートである。以下、図1の
動作を図2のフローチャートを用いて説明する。先ず、
電源が投入されると、電源投入と同時にRC発振器
(1)が発振を開始し且つマイクロコンピュータの特定
素子がリセットされる。即ち、マイクロコンピュータの
リセット時は比較レジスタ(12)の値がハードウエア
処理で「00H」となる(ステップ1)。その後、電源
電圧がマイクロコンピュータを正常動作させる電圧まで
上昇すると、マイクロコンピュータはリセット解除され
る(ステップ2)。すると、選択回路(16)がRC発
振器(1)を選択し、マイクロコンピュータはRC発振
器(1)の発振出力で低速動作を開始し、即ち、ROM
(3)のプログラムデータの解読結果に従って初期プロ
グラムの実行を開始する(ステップ3)。初期プログラ
ムでは、比較レジスタ(12)の値が特定値であるかど
うかをCPU(7)で演算する(ステップ4)。比較レ
ジスタ(12)の値が特定値でない場合(ステップ5N
O)、マイクロコンピュータが初期プログラムを実行し
ている過程と判断する。この時、タイマ(11)が計数
を開始し(ステップ6)、マイクロコンピュータの残り
の内部素子が初期設定される(ステップ7)。その後、
タイマ(11)が計数動作を継続してオーバーフロー信
号OFを出力すると(ステップ8YES)、セラミック
発振器(2)が安定発振したものと判断する。この時、
プログラムカウンタ(4)の現状値をスタックポインタ
(10)に一時待避し、且つ、プログラムカウンタ
(4)を現状値からタイマ割り込み処理を実行する値に
変更する。すると、ROM(3)から特定値(テーブル
データ)を読み出してインストラクションレジスタ
(5)に保持した後、内部バス(9)を介して比較レジ
スタ(12)に書き込む(ステップ9)。また、ROM
(3)からセラミック発振器(2)を選択する為の選択
データ(テーブルデータ)を読み出してインストラクシ
ョンレジスタ(5)に保持した後、内部バス(9)を介
して転送制御回路(15)に供給し、発振制御レジスタ
(13)及び補助レジスタ(14)に同時セットする
(ステップ10)。これでタイマ割り込み処理は終了す
る。この時点から、選択回路(16)はセラミック発振
器(2)を選択し、マイクロコンピュータはセラミック
発振器(2)の発振出力で高速動作する。即ち、スタッ
クポインタ(10)の値をプログラムカウンタ(4)に
戻し、ROM(3)のプログラムデータの解読結果に従
ってメインルーチンプログラム処理を実行する(ステッ
プ11)。電源が瞬停しない場合はメインルーチンプロ
グラム処理を継続する(ステップ12NO)。
【0015】ところが、メインルーチンプログラム処理
を実行している時、電源が瞬停した場合(ステップ12
YES)、マイクロコンピュータをリセットし、ステッ
プ2に戻る(ステップ13)。この時、発振選択レジス
タ(13)の値が「00H」に戻る為、選択回路(1
6)はRC発振器(1)を再び選択する。さて、比較レ
ジスタ(12)は不揮発性であるが故に比較レジスタ
(12)の値はマイクロコンピュータのリセットに関わ
らず特定値のまま変わることはない。従って、比較レジ
スタ(12)の値が特定値である場合に該当し(ステッ
プ5YES)、電源の瞬停は、マイクロコンピュータが
メインルーチンプログラムを高速処理している時のもの
と判断する。また、補助レジスタ(14)も不揮発性で
あるが故に補助レジスタ(14)の値はマイクロコンピ
ュータのリセットに関わらずセラミック発振器(2)を
選択する為の選択データのまま変わることはない。そこ
で、比較レジスタ(12)の値が特定値に設定されてい
ることに伴い、転送制御回路(15)は補助レジスタ
(14)の値を発振選択レジスタ(13)にセットする
(ステップ14)。この時点から、選択回路(16)は
セラミック発振器(2)を選択し、マイクロコンピュー
タはセラミック発振器(2)の発振出力で高速動作を開
始する。そして、RAM(8)の特定番地のデータを読
み出してCPU(7)で所定演算を行い、RAM(8)
の特定番地のデータが本来書き込まれているべきデータ
であるかどうかを判断する(RAM(8)の内容はマイ
クロコンピュータをリセットしても不定である)。つま
り、RAM(8)は揮発性であるが故に電源が瞬停した
場合に瞬停前のデータを保持しているかどうか定かなも
のではない。そこで、RAM(8)の特定番地のデータ
を確認し、電源瞬停(ステップ12)の際の電圧下降に
対するRAM(8)のデータ保持具合を判断する(ステ
ップ15)。尚、RAM(8)の特定番地を多く設定す
る程、RAM(8)の状態を正確に判断できる。RAM
(8)の特定番地のデータが本来書き込まれているべき
データと一致しない場合(ステップ16NO)、電源瞬
停の際の電圧がRAM(8)のデータ保持電圧より低い
値まで下降したものと判断する。この時、RAM(8)
の保持内容が不定となっている為、CPU(7)が電源
瞬停前の状態から論理演算を継続しても、正しい演算結
果を得ることができない。そこで、発振選択レジスタ
(13)を除く全てのブロックを初期設定し(ステップ
17)、メインルーチンプログラム処理を実行する(ス
テップ18)。このメインルーチンプログラム処理を実
行している時、電源が瞬停した場合(ステップ19YE
S)、マイクロコンピュータをリセットし、ステップ2
に再び戻る(ステップ20)。
を実行している時、電源が瞬停した場合(ステップ12
YES)、マイクロコンピュータをリセットし、ステッ
プ2に戻る(ステップ13)。この時、発振選択レジス
タ(13)の値が「00H」に戻る為、選択回路(1
6)はRC発振器(1)を再び選択する。さて、比較レ
ジスタ(12)は不揮発性であるが故に比較レジスタ
(12)の値はマイクロコンピュータのリセットに関わ
らず特定値のまま変わることはない。従って、比較レジ
スタ(12)の値が特定値である場合に該当し(ステッ
プ5YES)、電源の瞬停は、マイクロコンピュータが
メインルーチンプログラムを高速処理している時のもの
と判断する。また、補助レジスタ(14)も不揮発性で
あるが故に補助レジスタ(14)の値はマイクロコンピ
ュータのリセットに関わらずセラミック発振器(2)を
選択する為の選択データのまま変わることはない。そこ
で、比較レジスタ(12)の値が特定値に設定されてい
ることに伴い、転送制御回路(15)は補助レジスタ
(14)の値を発振選択レジスタ(13)にセットする
(ステップ14)。この時点から、選択回路(16)は
セラミック発振器(2)を選択し、マイクロコンピュー
タはセラミック発振器(2)の発振出力で高速動作を開
始する。そして、RAM(8)の特定番地のデータを読
み出してCPU(7)で所定演算を行い、RAM(8)
の特定番地のデータが本来書き込まれているべきデータ
であるかどうかを判断する(RAM(8)の内容はマイ
クロコンピュータをリセットしても不定である)。つま
り、RAM(8)は揮発性であるが故に電源が瞬停した
場合に瞬停前のデータを保持しているかどうか定かなも
のではない。そこで、RAM(8)の特定番地のデータ
を確認し、電源瞬停(ステップ12)の際の電圧下降に
対するRAM(8)のデータ保持具合を判断する(ステ
ップ15)。尚、RAM(8)の特定番地を多く設定す
る程、RAM(8)の状態を正確に判断できる。RAM
(8)の特定番地のデータが本来書き込まれているべき
データと一致しない場合(ステップ16NO)、電源瞬
停の際の電圧がRAM(8)のデータ保持電圧より低い
値まで下降したものと判断する。この時、RAM(8)
の保持内容が不定となっている為、CPU(7)が電源
瞬停前の状態から論理演算を継続しても、正しい演算結
果を得ることができない。そこで、発振選択レジスタ
(13)を除く全てのブロックを初期設定し(ステップ
17)、メインルーチンプログラム処理を実行する(ス
テップ18)。このメインルーチンプログラム処理を実
行している時、電源が瞬停した場合(ステップ19YE
S)、マイクロコンピュータをリセットし、ステップ2
に再び戻る(ステップ20)。
【0016】RAM(8)の特定番地のデータが本来書
き込まれているべきデータと一致した場合(ステップ1
6YES)、電源瞬停の際の電圧がRAM(8)のデー
タ保持電圧の限界値以下には下降しなかったものと判断
する。即ち、RAM(8)は電源瞬停前のデータを保持
しているものと判断する。この時、RAM(8)及び発
振選択レジスタ(13)を除く全てのブロックを初期設
定し(ステップ21)、RAM(8)の保持データを使
用してメインルーチンプログラム処理を実行する(ステ
ップ22)。このメインルーチンプログラム処理を実行
している時、電源が瞬停した場合(ステップ23YE
S)、マイクロコンピュータをリセットし、ステップ2
に再び戻り、RAM(8)の特定番地のデータが本来書
き込まれているべきデータであるかどうかの判断を繰り
返す(ステップ24)。
き込まれているべきデータと一致した場合(ステップ1
6YES)、電源瞬停の際の電圧がRAM(8)のデー
タ保持電圧の限界値以下には下降しなかったものと判断
する。即ち、RAM(8)は電源瞬停前のデータを保持
しているものと判断する。この時、RAM(8)及び発
振選択レジスタ(13)を除く全てのブロックを初期設
定し(ステップ21)、RAM(8)の保持データを使
用してメインルーチンプログラム処理を実行する(ステ
ップ22)。このメインルーチンプログラム処理を実行
している時、電源が瞬停した場合(ステップ23YE
S)、マイクロコンピュータをリセットし、ステップ2
に再び戻り、RAM(8)の特定番地のデータが本来書
き込まれているべきデータであるかどうかの判断を繰り
返す(ステップ24)。
【0017】以上より、本発明の実施の形態によれば、 補助レジスタ(14)を設けた作用効果として、マイ
クロコンピュータがセラミック発振器(2)の発振出力
で高速動作している時、電源電圧が何らかの外部要因の
影響を受けて瞬停した場合であっても、従来より短い時
間で高速動作に復帰できる。
クロコンピュータがセラミック発振器(2)の発振出力
で高速動作している時、電源電圧が何らかの外部要因の
影響を受けて瞬停した場合であっても、従来より短い時
間で高速動作に復帰できる。
【0018】比較レジスタ(12)を設けた作用効果
として、発振選択レジスタ(13)及び補助レジスタ
(14)に選択データを同時セットするタイミングと、
補助レジスタ(14)から発振選択レジスタ(13)へ
選択データを転送するタイミングとを、確実に認識でき
る。等の利点を有する。
として、発振選択レジスタ(13)及び補助レジスタ
(14)に選択データを同時セットするタイミングと、
補助レジスタ(14)から発振選択レジスタ(13)へ
選択データを転送するタイミングとを、確実に認識でき
る。等の利点を有する。
【0019】尚、図2のフローチャートは図1の動作を
説明する為の本発明の実施の形態の一実施例に過ぎず、
これに限定されるものではない。
説明する為の本発明の実施の形態の一実施例に過ぎず、
これに限定されるものではない。
【0020】
【発明の効果】本発明によれば、第1不揮発性レジスタ
を設けた作用効果として、マイクロコンピュータが第2
発振回路の発振出力で高速動作している時、電源電圧が
何らかの外部要因の影響を受けて瞬停した場合であって
も、従来より短い時間で高速動作に復帰できる。また、
第2不揮発性メモリを設けた作用効果として、発振選択
レジスタ及び第1不揮発性レジスタに選択データを同時
セットするタイミングと、第1不揮発性レジスタから発
振選択レジスタへ選択データを転送するタイミングと
を、確実に認識できる。といった利点が得られる。
を設けた作用効果として、マイクロコンピュータが第2
発振回路の発振出力で高速動作している時、電源電圧が
何らかの外部要因の影響を受けて瞬停した場合であって
も、従来より短い時間で高速動作に復帰できる。また、
第2不揮発性メモリを設けた作用効果として、発振選択
レジスタ及び第1不揮発性レジスタに選択データを同時
セットするタイミングと、第1不揮発性レジスタから発
振選択レジスタへ選択データを転送するタイミングと
を、確実に認識できる。といった利点が得られる。
【図1】本発明のマイクロコンピュータを示すブロック
図である。
図である。
【図2】図1の動作を示すフローチャートである。
(1) RC発振器 (2) セラミック発振器 (12) 比較レジスタ (13) 発振選択レジスタ (14) 補助レジスタ (15) 転送制御回路 (16) 選択回路
Claims (5)
- 【請求項1】 第1発振回路と、前記第1発振回路より
発振周波数が高い第2発振回路と、前記第1発振回路又
は前記第2発振回路の何れか一方の発振出力を選択する
選択回路と、電源投入時は前記第1発振回路の発振出力
を選択し且つ所定時間経過後は前記第2発振回路の発振
出力を選択する為の前記選択回路に供給される選択デー
タがセットされる発振選択レジスタと、を内蔵するマイ
クロコンピュータにおいて、 データの電気消去が可能であり且つデータの書き込み及
び読み出しが可能な特性を有する第1不揮発性レジスタ
を備え、 前記所定時間経過後、前記発振選択レジスタ及び前記第
1不揮発性レジスタに前記第2発振回路の発振出力を選
択する為の選択データを同時セットし、その後の電源瞬
停時、前記発振選択レジスタに前記第1不揮発性レジス
タの値をセットする様にしたことを特徴とするマイクロ
コンピュータ。 - 【請求項2】 前記第1不揮発性レジスタはフラッシュ
メモリであることを特徴とする請求項1記載のマイクロ
コンピュータ。 - 【請求項3】 データの電気消去が可能であり且つデー
タの書き込み及び読み出しが可能な特性を有し、前記発
振選択レジスタ及び前記第1不揮発性レジスタに前記第
2発振回路の発振出力を選択する為の選択データを同時
セットする以前に、特定値が書き込まれる第2不揮発性
レジスタを備え、 電源投入後に前記第2不揮発性レジスタの値を判断し、
前記第2不揮発性レジスタの値が特定値でない場合は電
源投入後の動作開始状態であるものと判断し、前記第2
不揮発性レジスタの値が特定値である場合は電源瞬停後
の動作再開状態であるものと判断することを特徴とする
請求項1記載のマイクロコンピュータ。 - 【請求項4】 前記第2不揮発性レジスタはフラッシュ
メモリであることを特徴とする請求項3記載のマイクロ
コンピュータ。 - 【請求項5】 前記第2不揮発性レジスタの値が特定値
である場合は、前記発振選択レジスタに前記第1不揮発
性メモリの値をセットさせることを特徴とする請求項3
記載のマイクロコンピュータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10030127A JPH11231961A (ja) | 1998-02-12 | 1998-02-12 | マイクロコンピュータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10030127A JPH11231961A (ja) | 1998-02-12 | 1998-02-12 | マイクロコンピュータ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11231961A true JPH11231961A (ja) | 1999-08-27 |
Family
ID=12295121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10030127A Pending JPH11231961A (ja) | 1998-02-12 | 1998-02-12 | マイクロコンピュータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11231961A (ja) |
-
1998
- 1998-02-12 JP JP10030127A patent/JPH11231961A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5974528A (en) | Microcomputer with embedded flash memory having on-chip programming capability and method of programming data into the embedded flash memory | |
US7449926B2 (en) | Circuit for asynchronously resetting synchronous circuit | |
US6601131B2 (en) | Flash memory access control via clock and interrupt management | |
KR970066888A (ko) | 불 휘발성 메모리를 사용한 마이크로컴퓨터 | |
JP3988636B2 (ja) | マイクロコンピュータ及び車両用ecu | |
JP2004355362A (ja) | マイクロコンピュータおよびその初期設定方法 | |
US20050283626A1 (en) | Semiconductor integrated circuit operable to control power supply voltage | |
JP3291569B2 (ja) | マイクロコンピュータ | |
CN107102868B (zh) | 嵌入式系统及其快速启动方法和装置 | |
JPH11231961A (ja) | マイクロコンピュータ | |
JP2006209451A (ja) | マイクロコンピュータおよびマイクロコンピュータの最適化方法 | |
JP2004070854A (ja) | データプロセッサ | |
JPH11231965A (ja) | マイクロコンピュータ | |
JP3214469B2 (ja) | マイクロコンピュータによるフラッシュeepromの書き込み制御方法及び装置 | |
JPH11231962A (ja) | マイクロコンピュータ | |
JPH11231963A (ja) | マイクロコンピュータ | |
JPH11231966A (ja) | マイクロコンピュータ | |
JPH11231964A (ja) | マイクロコンピュータ | |
US6370651B1 (en) | Synchronizing user commands to a microcontroller in a memory device | |
JP2000200110A (ja) | 電圧降下回路 | |
KR101031417B1 (ko) | 비휘발성 레지스터를 갖는 마이크로 프로세서 장치 및제어 방법 | |
JP4037953B2 (ja) | 車両用表示装置 | |
JPH11288409A (ja) | マイクロコンピュータ | |
JPH11272642A (ja) | 1チップマイクロコンピュータ及び起動アドレス設定方法 | |
JP2002244916A (ja) | マイクロコントローラ |