(57)【要約】【課題】  周辺デバイスへのリセット出力機能を持たないＳｏＣを使用する電子機器においても、ＣＰＵが再起動するときに周辺デバイスをリセットすることを可能にする。【解決手段】  ＣＰＵを有する集積回路と集積回路から送出されたアドレス信号と読み出し信号によって情報が読み出される記憶装置を備える電子機器において、特定のアドレスを指定するアドレス信号と読み出し信号とが入力された場合に記憶装置に対してリセット信号を送出する再起動検出部を有している。【選択図】      図１
2014157404.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵを有する集積回路と、
前記集積回路から送出されたアドレス信号と読み出し信号によって情報が読み出される記憶装置と、
特定のアドレスを指定する前記アドレス信号と前記読み出し信号とが入力された場合に前記記憶装置に対してリセット信号を送出する再起動検出部と、
を有することを特徴とする電子機器。
【請求項２】
前記記憶装置では、前記特定のアドレスに、ダミー情報が格納されていることを特徴とする請求項１に記載の電子機器。
【請求項３】
前記特定のアドレスは、前記ＣＰＵが再起動した場合にアクセスするプログラム情報が格納されている領域の最初のアドレスであることを特徴とする請求項１または２に記載の電子機器。
【請求項４】
前記再起動検出部は、前記特定のアドレスを指定する前記アドレス信号を検出すると所定の信号を出力するアドレス監視部と、前記所定の信号と前記読み出し信号から前記リセット信号を生成する回路部を備えることを特徴とする請求項１から３のうちいずれか１項に記載の電子機器。
【請求項５】
前記再起動検出部は、前記アドレス監視部から出力される前記所定の信号を受信して前記記憶装置と前記集積回路の間の情報の授受を停止させるデータ制御部を備えていることを特徴とする請求項４に記載の電子機器。
【請求項６】
前記データ制御部は、前記アドレス監視部から出力される前記所定の信号を受信して前記集積回路にＮＯＰ（Ｎｏ  Ｏｐｅｒａｔｉｏｎ）命令を送出すること特徴とする請求項５に記載の電子機器。
【請求項７】
ＣＰＵを有する集積回路と、
前記集積回路と情報の授受を行う周辺装置と、
前記集積回路の前記情報の授受を行う所定の端子に現れる信号が立下がった場合に、前記周辺装置にリセット信号を送出する再起動検出部と、
を有することを特徴とする電子機器。
【請求項８】
前記集積回路の前記情報の授受を行う所定の端子は、前記ＣＰＵが再起動するときハイインピーダンス状態になることを特徴とする請求項７記載の電子機器。
【請求項９】
前記集積回路の入出力を行う所定の端子は、所定の抵抗値を有する抵抗を介して接地されていることを特徴とする請求項８記載の電子機器。
【請求項１０】
前記周辺装置は記憶装置であることを特徴とする請求項７、８、９のうちいずれか１項に記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  ＵＮＩＴ）を備える集積回路を用いた電子機器に関し、特にＣＰＵが再起動するときに前記集積回路に接続する周辺機器をリセットするリセット回路を備える電子機器に関する。
【背景技術】
【０００２】
多くの電子機器はＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  ａ  ｃｈｉｐ）と呼ばれる集積回路を用いている。ＳｏＣは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  ＵＮＩＴ）ならびにメモリコントローラや各種ＩＦ（ＩｎｔｅｒＦａｃｅ）コントローラを１つにまとめた集積回路である。このＳｏＣは、プログラムが暴走した場合の保護として、ＳｏＣ内にＷＤＴ（Ｗａｔｃｈ  Ｄｏｇ  Ｔｉｍｅｒ）と呼ばれる装置を設けている場合がある。
【０００３】
図６に、関連技術における、ＳｏＣ内部のＣＰＵとＷＤＴ周辺の接続図を示す。ＳｏＣ１４内にあるＷＤＴ１２は減算カウンタを備えている。ＣＰＵ１１は、通常動作時にはＷＤＴ１２のカウンタが０で満了する前にタイマリセット信号を送り、ＷＤＴ１２の減算カウンタをリセットする。機器のプログラムが暴走し、ＣＰＵ１１が、ＷＤＴ１２にタイマリセット信号を送ることが出来なくなると、ＷＤＴ１２のカウンタが満了する。リセット部１３は、タイマが満了したことを受け、ＣＰＵ１１に対してリセット信号を出力し、ＣＰＵ１１をリセットする。
【０００４】
ただし、ＷＤＴ１２によるＣＰＵ１１のリセット処理は、ＳｏＣ１４の中でのみで行われるので、ＳｏＣ１４に接続している周辺デバイスが、ＷＤＴ１２によるＣＰＵ１１のリセット処理情報を直接受け取ることが出来ない場合がある。このためＳｏＣ１４は、リセット後に再起動した状態になるが、周辺デバイスはリセットされないため、ＳｏＣ１４と周辺デバイスの間で状態の不一致が発生してしまう。
【０００５】
特に、システムプログラムを格納しているメモリは、ＳｏＣ１４が再起動した後、システムプログラムが読み出される前にリセットを行わないと、正しいデータを読み出すことが出来ない。
【０００６】
特許文献１には、この課題を解決するために、ＷＤＴによるリセット信号を任意のタイミングに生成し直して、外部周辺デバイスへ出力する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−０７９３４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記問題を解決するには、ＳｏＣがリセット信号を外部周辺デバイスへ出力する機能を備えることが必要になり、そのための回路設計や制御の増加はコストアップの原因になる。
【０００９】
本発明の目的は、上述した課題を解決する電子機器を提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、上記課題を解決するために、ＣＰＵを有する集積回路と、集積回路から送出されたアドレス信号と読み出し信号によって情報が読み出される記憶装置と、特定のアドレスを指定するアドレス信号と読み出し信号とが入力された場合に記憶装置に対してリセット信号を送出する再起動検出部とを有することを特徴としている。
【００１１】
さらに、本発明は、ＣＰＵを有する集積回路と、集積回路と情報の授受を行う周辺装置と、集積回路の情報の授受を行う所定の端子に現れる信号が立下がった場合に、周辺装置にリセット信号を送出する再起動検出部とを有することを特徴としている。
【発明の効果】
【００１２】
本発明によれば、リセット出力の無いＳｏＣを使用した電子機器において、簡易な構成の回路を設置するだけで周辺デバイスをリセットすることができ、誤動作を防ぐことが可能となるという効果が得られる。また上記回路はＳｏＣから独立しているのでプログラムの変更を非常に少なくできる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態における電子機器の基本構成を示すブロック図である。
【図２】本発明の第１の実施形態における電子機器の詳細な構成を示すブロック図である。
【図３】本発明の第１の実施形態におけるメモリのアドレスを示す図である。
【図４】本発明の第１の実施形態におけるＣＰＵが暴走したときの動作遷移図である。
【図５】本発明の第２の実施形態における電子機器の構成を示すブロック図である。
【図６】関連技術における構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１５】
（第１の実施形態）
図１は、本発明の第１の実施形態である電子機器１の基本的な構成例を示す図である。電子機器１は、ＣＰＵを含む集積回路２と周辺装置３と再起動検出部４を備えている。本発明では、集積回路２と周辺装置３の間に再起動検出部４が配置されている。周辺装置３は例えば記憶装置である。
【００１６】
図２に、本発明の第１の実施形態の詳細な構成例を示す。
【００１７】
図２では、電子機器２０１において、その中でシステムプログラムが格納されているメモリ２０３とＳｏＣ２０２とその間に配置される再起動検出部２０４を示している。ＳｏＣ２０２は、ＣＰＵ２１１とＷＤＴ２１３、リセット部２１４を有している。さらにＣＰＵ２１１にはメモリコントローラ２１２が接続しており、メモリコントローラ２１２はメモリ２０３との信号およびデータの送受信を行う。
【００１８】
メモリ２０３は、パラレルタイプの不揮発性メモリであり、複数のアドレス線ならびに複数のデータ線で、ＳｏＣ２０２のメモリコントローラ２１２に接続されている。
【００１９】
再起動検出部２０４は、アドレス監視部２０５とデータ制御部２１０とＯＲ回路２１６を備えている。再起動検出部２０４は、アドレス監視部２０５によって、アドレス線に出力されるアドレス信号２０６を検出し、アドレスがあらかじめ設定した値の場合、検出信号２０８としてＬｏｗ信号を出力する。データ制御部２１０は、データ線Ａ２１５とデータ線Ｂ２０７を接続し、検出信号２０８がＬｏｗとなったとき、データ線Ａ２１５とデータ線Ｂ２０７を切り離し、ＳｏＣ２０２側にのみ、所定のデータを送信することが出来る。ＯＲ回路２１６は、検出信号２０８とリード信号２０９のＯＲをとり、共にＬｏｗのとき、メモリ２０３のリセット端子に接続した信号線にリセット信号としてのＬｏｗ信号を出力する。
【００２０】
ここでは、前提条件として、ＳｏＣ２０２は、メモリ２０３のデータをリードするときは、リード信号２０９をＬｏｗレベルにする。また、メモリ２０３のリセット端子にＬｏｗを入力すると、メモリ２０３はリセットされるものとする。
【００２１】
図３は、メモリ２０３に格納されているデータを示す。メモリ２０３のアドレス０ｘ２０００にはダミーデータが格納され、アドレス０ｘ２００１〜０ｘ４０００にシステムプログラムが格納されている。ＣＰＵ２１１が再起動した場合、ＳｏＣ２０２はシステムプログラムを読むため、メモリ２０３のアドレス０ｘ２０００からデータを読みに行く。
【００２２】
図４にＣＰＵが暴走したときの動作遷移図を示し、動作を説明する。
【００２３】
まずＣＰＵ２１１が暴走する（Ｓ４１）。暴走したＣＰＵ２１１は、ＷＤＴ２１３に対しタイマリセットを行うことが出来ず、ＷＤＴ２１３のカウンタが満了する。リセット部２１４は、ＷＤＴ２１３よりカウンタが満了した情報を受け取り、ＣＰＵ２１１のリセットを行う。ＣＰＵ２１１がリセット後、再起動すると（Ｓ４２）、ＳｏＣ２０２（あるいはＣＰＵ２１１）は、システムプログラムを読み出すためメモリ２０３のデータを読みに行く。このときＳｏＣ２０２は、まずモリ２０３のアドレス０ｘ２０００を読みに行く（Ｓ４３）。再起動検出部２０４内にあるアドレス監視部２０５は、アドレスが０ｘ２０００であることを検出すると、検出信号２０８としてＬｏｗ信号を出力する（Ｓ４４）。ＯＲ回路２１６はアドレス監視部２０５から出力されるＬｏｗ信号とリード信号２０９（Ｌｏｗ信号）を受けとり、メモリ２０３のリセット端子にＬｏｗ信号を出力しメモリ２０３のリセットを行う(Ｓ４５)。また検出信号２０８がＬｏｗになっている間、データ制御部２１０は検出信号２０８を受けて、接続していたデータ線Ａ２１５とデータ線Ｂ２０７を切り離し、データ線Ａ２１５側にＮＯＰ（Ｎｏ―Ｏｐｅｒａｔｉｏｎ）命令を送る（Ｓ４６）。ＮＯＰを受け取ったＳｏＣ２０２は（Ｓ４７）、何も処理を行わず、次にアドレス０ｘ２００１のデータを読みにいく（Ｓ４８）。アドレス０ｘ２０００を、読みにいく動作が終了したため、検出信号２０８はＨｉｇｈ信号になり、メモリ２０３のリセットが解除される。また、データ制御部２１０もデータ線Ａ２１５とデータ線Ｂ２０７の接続を戻す。ＳｏＣ２０２は、メモリ２０３内のアドレス０ｘ２００１以降のデータをアドレス０ｘ４０００まで読み出すと、ＳｏＣ２０２の再起動が完了する（Ｓ４９）。
【００２４】
ＳｏＣ２０２は、起動時もしくは再起動時以外でメモリ２０３のアドレス０ｘ２０００のデータを読みに行くことはなく、再起動検出部２４が、メモリ２３のリセットすることはない。また、メモリ２０３のアドレス０ｘ２０００に対してデータを書き込んでも、リード信号２０９がＬｏｗにならないため再起動検出部２４はメモリ２０３に対しリセットを行わない。
【００２５】
以上述べてきたように、本発明は、ＳｏＣと、システムプログラムを格納しているメモリとの間に簡易な回路を設置することにより、アドレス信号とリード信号を検出してＣＰＵの再起動を検出し、メモリのリセットを行うことが可能となる。
（第２の実施形態）
図５を用いて、本発明の第２の実施形態について、説明する。
【００２６】
図５は、本発明の第２の実施形態における電子機器５１の構成例を示すブロック図である。ＳｏＣ５２と再起動検出部５４とメモリ５３で構成されている。
【００２７】
図５において、ＳｏＣ５２のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）は、再起動検出部５４に接続し、さらに再起動検出部５４は周辺デバイスのメモリ５３のリセット端子に接続している。また、ＧＰＩＯは抵抗を介してＧＮＤにも接続している。ここで、ＧＰＩＯは、ＳｏＣの汎用的に利用できる端子である。
【００２８】
尚、前提条件としてＧＰＩＯは、ＳｏＣ５２がメモリ５３よりシステムプログラムを読み出す前は、Ｈｉｇｈ―Ｚ状態（ＳｏＣ側でＨｉｇｈ信号にもＬｏｗ信号にもドライブしていない状態）である。また、ＳｏＣ５２が、メモリ５３よりシステムプログラムを読み出した後は、システムによりＨｉｇｈ出力/Ｌｏｗ出力の制御をすることが可能である。
【００２９】
再起動検出部５４は、ＧＰＩＯがＨｉｇｈからＬｏｗに変化することを検出する、立下りエッジ検出部５５とリセット信号生成部５６で構成されている。立下りエッジ検出部５５は、ＧＰＩＯの立下りを検出すると、リセット信号生成部５６に信号を伝える。その信号を得たリセット信号生成部５６は、メモリ５３のリセット端子に対して一定の時間リセットパルスを送り、リセットを行う。
【００３０】
次に、第２の実施形態の動作について以下に示す。
【００３１】
まず、ＳｏＣ５２はシステムプログラムを読み出し、正常に動作している状態とする。このとき、ＳｏＣ５２はＧＰＩＯをＨｉｇｈ出力にする。その後、ＳｏＣ５２内のＣＰＵ（図示せず）が再起動すると、ＳｏＣ５２のＧＰＩＯはＨｉｇｈ―Ｚ状態となる。ただし、ＧＰＩＯの端子は、抵抗を介してＧＮＤに接続されているため、Ｌｏｗに変化する。このとき、再起動検出部５４の立下りエッジ検出部５５が立ち下がりエッジを検出する。その後、リセット信号生成部５６は、メモリ５３のリセットに対してリセットパルスを一定時間出力し、メモリ５３をリセットする。ＳｏＣ５２が、メモリ５３にシステムプログラムを読みにいく前に、再起動検出部５４は、メモリ５３のリセットを解除する。その後、ＳｏＣ５２は、システムプログラムをメモリ５３に読み出す。システムプログラムを読み出した後、システム上でＳｏＣ５２のＧＰＩＯをＨｉｇｈ出力としておくと、再度ＷＤＴによる再起動が発生した場合でも、上記動作を行うことが出来る。
【００３２】
以上述べてきたように、本発明は、ＳｏＣのＧＰＩＯ端子を利用することで、ＣＰＵの再起動を検出し、周辺デバイスのリセットを行うことが可能となる。
【００３３】
尚、本願発明は、上述の実施の形態に限定されるものではなく、本願発明の要旨を逸脱しない範囲で種々変更、変形して実施することが出来る。
【産業上の利用可能性】
【００３４】
リセット出力機能を備えていないＳｏＣを使用した電子機器に利用可能である。
【符号の説明】
【００３５】
１    電子機器
２    集積回路
３    周辺装置
４    再起動検出部
１１    ＣＰＵ
１２    ＷＤＴ
１３    リセット部
１４    ＳｏＣ
３１    メモリデータ
５１    電子機器
５２    ＳｏＣ
５３    メモリ
５４    再起動検出部
５５    立下りエッジ検出部
５６    リセット信号生成部
２０１    電子機器
２０２    ＳｏＣ
２０３    メモリ
２０４    再起動検出部
２０５    アドレス監視部
２０６    アドレス信号
２０７    データ線Ｂ
２０８    検出信号
２０９    リード信号
２１０    データ制御部
２１１    ＣＰＵ
２１２    メモリコントローラ
２１３    ＷＤＴ
２１４    リセット部
２１５    データ線Ａ
２１６    ＯＲ回路
【図１】
2014157404.tif 000003
【図２】
2014157404.tif 000004
【図３】
2014157404.tif 000005
【図４】
2014157404.tif 000006
【図５】
2014157404.tif 000007
【図６】
2014157404.tif 000008