(57)【特許請求の範囲】
【請求項１】
マイクロコントローラと１又は複数のハードウェア回路との、少なくとも一方のためのリセット装置であって、
リセット線を介して前記マイクロコントローラにリセット信号を与えることができ、
当該リセット装置および前記マイクロコントローラのシステムコールドスタートの際に、いかなる種類のマイクロコントローラであっても確実にスタートするように選択された持続時間を有する第１のリセット信号を供給し、
前記マイクロコントローラのシステムコールドスタートの後に、前記マイクロコントローラの要求に適応した持続時間を有する第２のリセット信号がプログラムされ、
プログラムされた前記第２のリセット信号をリセット信号として、続いて発生するコールドスタートまたはホットスタートの際供給し、
前記マイクロコントローラにリセット信号を与えるための前記リセット線を介して、前記第１のリセット信号及び前記第２のリセット信号が供給され、
前記リセット装置が前記マイクロコントローラの状態を監視している、
ことを特徴とする、リセット装置。
【請求項２】
アナログコンポーネントと、電源用コンポーネントとを備えるシステムチップに設けられていることを特徴とする、請求項１に記載のリセット装置。
【請求項３】
プログラムされた前記第２のリセット信号は、前記第１のリセット信号よりも持続時間が短いことを特徴とする、請求項１に記載のリセット装置。
【請求項４】
コールドスタートまたはホットスタートの際に、前記第２のリセット信号によるマイクロコントローラのリセットが失敗した場合に、続いて前記第１のリセット信号に相当するリセット信号を供給することを特徴とする、請求項１に記載のリセット装置。
【請求項５】
前記第１のリセット信号によるマイクロコントローラのリセットもまた失敗した場合、マイクロコントローラを低電力エラーモードにセットすることを特徴とする、請求項４に記載のリセット装置。
【請求項６】
リセット信号を供給した後リセット線をモニタし、前記マイクロコントローラがリセット後所定の時間が経過してもリセット線を開放しないか、あるいはリセット線が外部の電位にクランプされている場合、前記マイクロコントローラを低電力エラーモードにセットすることを特徴とする、請求項１に記載のリセット装置。
【請求項７】
前記マイクロコントローラを、低電力モードから起動させることができることを特徴とする、請求項１に記載のリセット装置。
【請求項８】
内部的または外部的に起動イベントが発生した際に、前記マイクロコントローラを低電力モードから起動させることを特徴とする、請求項５または７に記載のリセット装置。
【発明の詳細な説明】
【０００１】
本発明は、マイクロコントローラ、および／または、１つ以上のハードウェア回路のためのリセット装置に関する。このリセット装置の目的は、システムコールドスタートの後、および／または、コールドスタートまたはホットスタートの後に、マイクロコントローラ、および／または、ハードウェア回路をリセットすることである。
【０００２】
システムコールドスタートは、リセット装置およびマイクロコントローラに電流が流れていない状態から、初めて作動されるときに行われる。
【０００３】
マイクロコントローラのコールドスタートは、すでに電流が流れ供給されていると共に、システムコールドスタートでリセットされているマイクロコントローラに、電源電圧を加えない状態から電源電圧を加える時に行われる。コールドスタートの時には不確定な状態が発生するため、マイクロコントローラのリセットが必要となる。
【０００４】
ホットスタートとは、すでに電源電圧が印加されている状態で、マイクロコントローラがリセットされることをいう。
【０００５】
従来は、マイクロコントローラのリセット入力端に外部キャパシタンスが接続されていたため、コールドスタートが行われた後に、マイクロコントローラのリセットが遅れて行われた。しかし、例えばホットスタートの場合のように不必要な時でも、リセットの時間は常にキャパシタンスによって決定されてしまうという欠点がある。
【０００６】
さらに、リセットが遅れるタイプの周知のマイクロコントローラでは、マイクロコントローラに接続された発振器がロックインしないときにマイクロコントローラが“リセットアクティブ”状態にクランプされるというリスクがある。これにより、電流消費が増加し、マイクロコントローラは作動できなくなる。また、米国特許第５，４６３，３３６号の周知の回路では、２つの異なるリセット時間が用いられているが、長い方のリセットは、電源電圧が投入された後にトリガされ、短い方のリセットはホットスタートの際にトリガされる。しかし、ここでも、回路設計（レイアウト）によって決定される固定リセット時間が課され、これは後から変更することができない。さらに、このシステムはリセットの結果を制御する機能を持たない。
【０００７】
本発明の目的は、マイクロコントローラやその他の回路に適合した、短時間のリセットを可能にする、リセット装置を提供することである。
【０００８】
本発明によれば、請求項１に記載された構成によって、この目的は達成される。
【０００９】
マイクロコントローラ、および／または、１以上のハードウェア回路用のリセット装置であって、
リセット線を介して前記マイクロコントローラにリセット信号を与えることができ、
当該リセット装置と前記マイクロコントローラとのシステムコールドスタートの際には、いかなる種類のマイクロコントローラであっても確実にスタートするように選択された持続時間を有する第１のリセット信号を供給し、
前記マイクロコントローラのシステムコールドスタートの後に、前記マイクロコントローラの要求に適応した持続時間を有する第２のリセット信号によってプログラムされ、
前記第２のプログラムされたリセット信号をリセット信号として、続いて発生するコールドスタートまたはホットスタートの際供給する、
ことを特徴とする、リセット装置である。
【００１０】
システムコールドスタートの後、すなわち電源投入されていない状態から初めて電源電圧がオンになるときに、リセット装置は第１のリセット信号を供給する。このリセット信号の持続時間は、マイクロコントローラ、および／または他のハードウェア回路が確実にリセットできるように選択される。例えば、第１のリセット信号の持続時間は、リセット回路を接続することができる、異なるタイプのマイクロコントローラ、および異なるタイプのハードウェア回路に用いることができる。さらに、第１のリセット信号の持続時間は、起こりうる全ての要求に応えるべく、比較的長く選択される。
【００１１】
システムコールドスタートが成功すると、リセット装置はマイクロコントローラからの第２のリセット信号によってプログラムされる。すなわち、リセット装置は、マイクロコントローラ、および／または共にリセットされるべきハードウェア回路の要求に適応した持続時間を有する第２のリセット信号を受信する。第２のリセット信号は、マイクロコントローラおよび実在する回路に個別に適応し、第１のリセット信号より短くてもよい、あるいは明らかに短くされる。
【００１２】
システムコールドスタートが成功し、第２のリセット信号によってリセット装置がプログラムされた後、コールドスタートまたはホットスタートが行われる場合、リセット装置は、ホットスタートおよび必要なリセットプロシージャのために、短い持続時間を有するであろう、プログラムされた第２のリセット信号を用いる。
【００１３】
これは、コールドスタートおよびホットスタートの際のリセットプロシージャをシステムコールドスタートと比べて短くできるという利点がある。このリセットプロシージャの持続時間は、実際に設けられているマイクロコントローラと、共にリセットされるべきハードウェア回路が要求するだけの長さになる。さらに、コールドスタートまたはホットスタートの際行われるこのリセットプロシージャの長さはプログラム可能、すなわち選択可能であるため、リセット装置は変更を加えることなく、同じ構成で、異なるタイプのマイクロコントローラと、共にリセットされるべき異なるハードウェア回路用に用いることができる。これらの回路への適応は、第２のプログラムされたリセット信号の長さを変えることによって実現される。
【００１４】
請求項２に記載された本発明の実施の形態では、リセット装置はシステムチップに設けられている。システム・インテグレーションが進むことを考慮して、マイクロコントローラと共に使用されるアナログ回路コンポーネントと電源用のコンポーネントは、システムチップに集積される。そのようなシステムチップを用いることにより、マイクロコントローラを、完全に独立してモニタすることが可能になる。本発明のリセット装置では、そのようなシステムチップへの装置の集積化は有益である。それは、システムチップ自体が例えば電源電圧の切り替えを開始し、関係する情報が供給されるからである。
【００１５】
請求項３に記載された本発明の実施の形態では、第２のプログラムされたリセット信号は、第１のリセット信号よりも短い持続時間を有する。上述したとおり、これはコールドスタートまたはホットスタートがコールドスタートより短くなるよう選択できるため、特に有益である。それにもかかわらず、第２のプログラムされたリセット信号の持続時間が変更されるため、マイクロコントローラおよび／またはハードウェアについて最適な工程を行うことができる。
【００１６】
請求項４および５に記載された本発明の実施の形態では、安全機構が設けられ、第２のリセット信号の長さではリセットが失敗した時に、第１の長さのリセット信号でリセットが行われる。第２の持続時間のリセット信号でのリセットが失敗するような特別な場合には、安全のために、たいていの場合より長い持続時間を有する、第１のリセット信号を用いたリセットが行われる。これもまた失敗に終わったときには、電源電圧を切ることにより、マイクロコントローラは電流が流れない状態に切り替えられ、これにより、低電力エラーモードにセットされる。この方法は、上述のようなことが起こった場合には、マイクロコントローラにエラーが発生していることが考えられることを考慮したものである。マイクロコントローラに電流が流れないようになるため、不必要な電流の消費が回避される。
【００１７】
リセットプロシージャの後、通常所定の時間が経過した後にマイクロコントローラはリセット線を開放する、すなわちリセット用にリセット線に与えられていた電位が、この所定の時間が経過した後にリセット線の「自由状態」に再び戻される。こうならないときには、マイクロコントローラが所定のリセットプロシージャを終えていないか、リセット線自体が異なる電位にクランプされていることが考えられる。どちらの場合も、請求項６に記載されたリセット装置によってエラー状態がモニタされ、リセット装置はマイクロコントローラを電流が流れない状態に切り替え、電流の消費を最低限にするので、エラー状態が終了する。
【００１８】
請求項７に記載された本発明のさらなる実施の形態によると、リセット装置は、マイクロコントローラの動作状態においてエラーを引き起こすことなしに低電力モードにセットすることができるように構成されている。これは、予測可能な時間、マイクロコントローラを非動作状態にできるため、有益である。
【００１９】
請求項８に記載の本発明のさらなる実施の形態によると、内部的、または外部的な起動イベントの発生の後、リセット装置はマイクロコントローラをトリガし、低電力モードから起動させる。このように起動が行われるのは、請求項７に記載されたように低電力モードに切り替えられるときか、エラーが発生し、マイクロコントローラが低電力エラーモードにセットされる時である。
【００２０】
本発明の、上述したアスペクトおよび他のアスペクトは、以下に説明する実施の形態を参照することにより、明らかになる。
【００２１】
図１は、本発明によるリセット装置（図１には図示せず）を備えるシステムチップ１のブロック図である。システムチップ１の一部は、破線で四角く囲われている。この部分は電源電圧ＶＣＣを、図に示されているマイクロコントローラ３に供給する電源回路２を有する。マイクロコントローラ３は、電源電圧を切り替えることができる。
【００２２】
システムチップ１の、電源回路２を含む部分が点線で表されているのは、電源回路２はシステムチップ１の外に置くこともできるからである。
【００２３】
図１に示されるシステム全体の電源電圧は、例えば、電源電圧ＢＡＴをシステムチップ１と電源回路２とに供給するバッテリーによって実現される。
【００２４】
電源回路２は、例えば、この電圧を制御することができるが、特にこの電圧をオンにしたりオフにすることができる。上述した電源電圧ＶＣＣは、特にマイクロコントローラ３に印加されるが、図１には示されていないハードウェアコンポーネントにも印加されてもよい。
【００２５】
電源回路２は、システムチップ１とシステムチップ１に設けられた本発明によるリセット装置とによって制御される。
【００２６】
システムチップ１に設けられた本発明によるリセット装置と、マイクロコントローラ３との間には、基本的に２つの接続線がある。リセット装置がマイクロコントローラ３をトリガするために、リセット線Ｒｅｓが設けられている。リセットの後、リセット線Ｒｅｓの状態はシステムチップ１に設けられたリセット装置によってモニタされる。
【００２７】
さらに、図中でＣｏｎと示される１から数ビット幅の制御接続線が設けられ、一方側のシステムチップ１およびそれに含まれるリセット装置と、他方側のマイクロコントローラ３との間で相互制御を行っている。
【００２８】
システムチップ１内のリセット装置は、マイクロコントローラ３をリセットするという目的を持っている。基本的には、２つの状況の下にこれは必要となる。まず、システムコールドスタートの場合である。システムコールドスタートでは、マイクロコントローラ３には当初電源電圧ＶＣＣが印加されていない。すなわち、マイクロコントローラ３には電圧がかかっておらず、非活性の状態である。電源回路２によって初めて電源電圧ＶＣＣが加えられると、マイクロコントローラ３は不確定状態になる。よって、電源電圧が加えられた後に、リセットプロシージャが必要となる。本発明によれば、システムチップ１のリセット装置はこの様な場合、リセット線Ｒｅｓにリセット信号を与える。このリセット信号は、マイクロコントローラ３の種類には関わりなく、どんな場合にも安全にリセット処理が行われるような長さの、第１の長さを有する。この時点では、どのタイプのマイクロコントローラ３および他のハードウェアが接続されているかはシステムチップ１には知らされていないからである。このように、第１のリセット信号の持続時間は、どんな状況においてもマイクロコントローラ３のリセットが安全に行われるように、比較的長く設定される。
【００２９】
システムコールドスタートの後に、例えば電流を節約するために、電源ＶＣＣが一旦切られてから再びオンになる、コールドスタートを行う場合がある。しかし、マイクロコントローラ３がすでに電源電圧ＶＣＣを加えられている、動作状態においても、リセットプロシージャが必要又は要求される場合がある。このような状況の時ホットスタートは行われる。
【００３０】
そのようなコールドスタートやホットスタートの際、リセット装置は、より短い持続時間を有する、第２のプログラムされたリセット信号を用いる。この第２のプログラムされたリセット信号はまた、リセット線Ｒｅｓを介してマイクロコントローラ３に与えられ、その長さはマイクロコントローラ３と、図１には示されていないが、やはりリセットされるべき回路素子があれば、それらの要求に個々に適応した長さを有する。
【００３１】
第２のリセット信号を最適なものとするために、マイクロコントローラ３はシステムコールドスタートが成功した後、制御線ＣＯＮ経由で信号を送る。この信号は第２のプログラムされたリセット信号の持続時間を示すもので、システムチップ１のリセット装置によって受信される。このプログラムプロシージャの後、コールドスタートまたはホットスタートは、上述のように、第２の、プログラムされたリセット信号の最適化された長さで、それぞれ実行される。
【００３２】
以下に図２を参照して説明するように、リセットプロシージャが不成功に終わった後、電源電圧ＶＣＣを切ることにより、マイクロコントローラ３を低電力モードにセットすることができる。これにより、エネルギーを節約できる。この状態からマイクロコントローラ３が再び活性化しなければならない場合は、システムチップ１内の、本発明によるリセット装置はＷＵ線経由で外部から起動信号を受信する。この信号が与えられると、リセット装置は対応する信号を電源回路２に送り、電源回路２は再び電源電圧ＶＣＣをオンにする。さらに、この場合明らかに事前にリセットの失敗があるので、リセット装置はシステムコールドスタートリセット、すなわち第１のリセット信号を用いたリセット、を行う。
【００３３】
以下に図２のフローチャートを参照して、どのような状況の下にリセットプロシージャが行われるかを説明する。さらに、この図を参照して、どのような状況において、いかにしてマイクロコントローラ３が低電力モードにセットされるかを説明する。
【００３４】
図２の矢印Ａは、システム全体、または少なくともマイクロコントローラ３には当初電力が供給されていなかったが、電源電圧ＢＡＴおよびＶＣＣが加えられるようになった、システム状態を示す。図２の状態Ｒｅｓ１に示されるように、この時マイクロコントローラは第１のリセット信号によってリセットされる。
【００３５】
このリセットプロシージャが成功すると、矢印Ｂで示されるように第２のリセット信号の長さがリセット装置に与えられる。次に、コールドスタートまたはホットスタートに関して、続いて行われるリセットプロシージャが、第２のリセットで実行される。これは、図２の第２の状態Ｒｅｓ２によって示される。図２のブロックＲｅｓ１に従ったコールドスタートリセットがすでに行われているので、所定の時間が経過した後、図１のマイクロコントローラ３がリセット線を開放したかどうかがモニタされる。例えば、もしリセット線のリセット信号に高い電位が与えられていると、リセット線は、上述の所定の時間が経過した後に低い電位に変わらなければならない。そうでない場合は、マイクロコントローラ３の側にエラーがあるか、リセット線Ｒｅｓが高い電位にクランプされることになる。どちらの場合も、図１のチップ１のリセット装置は、ＶＣＣをオフにしてマイクロコントローラ３を低電力モードにセットする。これは、図でブロックＬＰＭ２で示される。これら２つの状態のモニタと、このモードへの移行は、図２の矢印Ｆで示される。
【００３６】
上述したとおり、システムコールドスタートの後、第２のプログラムされた長さを有するリセット信号に基づいてコールドスタートまたはホットスタートが行われるが、これは図２においてブロックＲｅｓ２で表される。そのようなコールドスタートまたはホットスタートの後、マイクロコントローラが応答しているかどうかがモニタされてもよい。これは、例えばウォッチドッグと呼ばれる、マイクロコントローラの状態を常にモニタする一種のタイマ回路によって行われる。コールドスタートまたはホットスタートの後、所定の時間が経過後に、マイクロコントローラが応答しなかった場合、ホットスタートが成功しなかったと考えられる。この時、図２で矢印Ｃで示されるとおり、第１のリセット信号の持続時間を有するスタートがやり直される。このスタ−トが成功すると、矢印Ｂで示される次の処理が行われる。そうならない場合は、エラー状態であり、矢印Ｆで示されるエラー状態の一つに支配されているため、ＶＣＣをオフにして、システムは低電力モードにセットされる。
【００３７】
本発明によるリセット装置を用いることにより、低電力エラーモードＬＰＭ２からシステムを起動することができる。この場合、図１の回路の起動線ＷＵを介してリセット装置に起動信号が与えられ、リセット装置は、電源回路２によって電源電圧をオンにし、第１のリセット信号の持続時間でシステムコールドスタートを実行させる。さらに、図１のマイクロコントローラ３が問題なく動作しており、エラー状態でないときには、マイクロコントローラ３を低電力モードにセットするのが望ましい。これは、エネルギー節約の理由で有益である。本発明によるリセット装置はさらに、以下の目的でも使われる。例えば、制御ソフトウェアの要求により、マイクロコントローラ３はシステムチップ１のリセット装置に制御接続線ＣＯＮを介して対応する信号を送り、それによりリセット装置は電源回路２を切り替えて、マイクロコントローラ３の電源電圧ＶＣＣがオフになるようにする。これは、図２において、矢印Ｄと、低電力モードを表すブロックＬＰＭ１によって示される。低電力モードは、図１の回路の接続線ＷＵの信号によってもトリガされ、電源電圧ＶＣＣは再びオンになり、第２のプログラムされたリセット信号の持続時間を有するリセット信号に接続される。これは、図２の矢印Ｅによって示される。
【００３８】
本発明による装置は、第２のプログラムされるリセット信号の長さを変えることにより実際に起こる状況に個々に適応できる。さらに、リセットプロシージャをモニタでき、エラー状態によっては持続時間のプログラムされた第２のリセット信号を用いてマイクロコントローラをリセットするか、第１の持続時間のリセット信号を用いてマイクロコントローラをリセットし直すことができる。さらに、第１の長さのリセット信号による更なるリセットプロシージャの後でもエラー状態が取り除かれない場合でも、マイクロコントローラを低電力モードにセットすることができる。
【００３９】
マイクロコントローラ３に個々に適応するのに加えて、本発明のリセット装置はマイクロコントローラを最適にモニタし、エラーが取り除けない場合でもエネルギーを節約する。このエネルギーの節約は、マイクロコントローラ３を低電力モードＬＰＭ２にセットすることにより達成される。
【図面の簡単な説明】
【図１】システムチップに設けられた本発明によるリセット装置と、リセットされるべきマイクロコントローラを示すブロック図。
【図２】図１に示すリセット装置のフローチャート。
【図１】
0004090782.tif 000002
【図２】
0004090782.tif 000003