JP2014032558A - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP2014032558A
JP2014032558A JP2012173239A JP2012173239A JP2014032558A JP 2014032558 A JP2014032558 A JP 2014032558A JP 2012173239 A JP2012173239 A JP 2012173239A JP 2012173239 A JP2012173239 A JP 2012173239A JP 2014032558 A JP2014032558 A JP 2014032558A
Authority
JP
Japan
Prior art keywords
circuit
voltage
signal
logic circuit
reset
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
Application number
JP2012173239A
Other languages
English (en)
Inventor
Kazuyuki Arai
和幸 新井
Satoru Sonobe
悟 園部
Tetsuya Hashiguchi
哲哉 橋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2012173239A priority Critical patent/JP2014032558A/ja
Publication of JP2014032558A publication Critical patent/JP2014032558A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Safety Devices In Control Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Retry When Errors Occur (AREA)

Abstract

【課題】リセット状態からの復帰をより安全な状態で行うことができる半導体装置を提供すること
【解決手段】CVM130は、内部ロジック回路120の異常監視を行い、異常時にはMCUリセット制御回路110に通知を行う。MCUリセット制御回路110は、CVM130の異常監視に応じてMCU100をリセット状態に遷移させる。MCUリセット制御回路110は、外部端子141を介して端子リセット信号(S2)を受信する。MCUリセット制御回路110は、この端子リセット信号(S2)に応じてMCU100のリセット解除を行う。内部ロジック回路120は、リセット状態の解除の際に、内部機能の異常性を診断する自己診断プログラムを実行する。
【選択図】図1

Description

本発明は半導体装置に関し、例えば異常検出時にリセット状態に遷移する半導体装置に関する。
近年の自動車は、走行制御を含む様々な機能を有している。これらの機能を実現するために、自動車は車載システムを搭載している。これらの車載システムの誤動作は、人命に関わる事故を引き起こす可能性がある。そのため車載システムには、フェイルセーフ機能が備えられていることが強く要求されている。
車載システムでは、MCU(Micro Controller Unit)内にある内部ロジック回路の動作電圧、CPU(Central Processing Unit)の動作、及びクロック周波数等の正常動作を監視する機構(内部動作監視機構)が備えられる。これらの内部動作監視機構が異常状態を検出した場合、車載システム内のMCUをリセット状態にすることが一般的である。
上記の動作リセットに関連する先行文献について以下に説明する。特許文献1には、リセット信号の外部出力と外部リセット信号の入力を同一端子で兼用するデータプロセッサが開示されている。特許文献2には、ハードウェア異常が時間経過により解消されていた場合の自動復帰制御を行う電子装置が開示されている。当該電子装置では、暴走箇所の電力供給を制御することによりリセットからの復帰を行う。特許文献3にはマイコンの異常監視を行う異常監視装置の一態様が開示されている。当該異常監視装置は、突発的な異常対応のみならず、異常の生じた回数が所定数以上となった場合にマイコンのリセットを行う。特許文献4には、マイコンの異常を検出した際にマイコンへの割り込みを禁止し、その間に異常時処理を行う電子制御装置が開示されている。特許文献5には、メインマイコンとサブマイコンを含むECUを開示している。当該メインマイコンにリセット信号が入力された場合、当該メインマイコン内のCPUは出力端子からの信号出力を禁止する。
特開2011−238211号公報 特開2011−095955号公報 特開2004−265322号公報 特開2008−293420号公報 特開2011−134025号公報
ところで、上述のようにMCU内において異常が検出された場合にはMCUをリセット状態にすることにより異常状態を回避する。ここで、MCUがリセット状態となった後に、MCU内部の回路がリセット解除信号を出力することによりリセット状態が解除されることが一般的である。
しかしながら、ひとたび内部動作監視機構により異常が検出されたMCUは、通常の(異常が検出されていない)MCUよりも信頼性が劣る。そのため、車載システム等の安全性が高く要求されるシステムでは、MCU内部の回路がリセット解除信号を生成する構成は、安全性の面で十分ではない。
さらに、例えばMCUの内部電圧が動作保障電圧よりも高くなってしまった場合、MCU内部のトランジスタが故障する場合もある。トランジスタ故障のような異常が生じた場合には、リセット状態に遷移させたとしても当該異常を解決することができない。このような場合には、トランジスタ故障のような重要な異常性を認識できないままMCUがリセット状態から通常状態に復帰してしまい、MCU動作の安全性を保障できなくなってしまう。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
一実施の形態によれば、半導体装置は、リセット状態に移行した際に外部からのリセット解除信号が第1端子に入力され、かつ当該リセット解除信号の入力後に自己診断プログラムを実行した後にリセット状態からの復帰を行う。
前記一実施の態様によれば、リセット状態からの復帰をより安全に行うことができる半導体装置を提供することができる。
実施の形態1にかかる制御システムの構成を示すブロック図である。 実施の形態1にかかるリセット信号統合回路112の内部構成を示すブロック図である。 実施の形態1にかかる検出電圧設定レジスタ131−1の構成を示す概念図である。 実施の形態1にかかる検出電圧設定レジスタ123−1及び検出電圧設定レジスタ131−1の構成を示す概念図である。 実施の形態1にかかるエラーフラグレジスタ134−1の構成を示す概念図である。 実施の形態1にかかるエラーフラグレジスタ124−1及びエラーフラグレジスタ134−1の構成を示す概念図である。 実施の形態1にかかるMCU100の電圧異常時の各回路の動作や出力信号の遷移を示すタイミングチャートである。 実施の形態2にかかるMCU100の構成を示すブロック図である。 実施の形態3にかかるMCU100の構成を示すブロック図である。 実施の形態4にかかる制御システムの構成を示すブロック図である。 実施の形態5にかかる制御システムの構成を示すブロック図である。 実施の形態5にかかるポート入出力回路の内部構成を示すブロック図である。 実施の形態6にかかる制御システムの構成を示すブロック図である。
<実施の形態1>
以下、図面を参照して本発明の実施の形態について説明する。図1は、一般乗用車、業務用乗用車(トラック等)などに搭載され得る制御システムの構成を示すブロック図である。制御システムは、車両の制御を行うシステムの総称である。なお、以下の説明において、図面中で同一名称及び同一符号を付した処理部は同一であるものとして重複する説明は適宜省略する。
制御システムは、MCU100、及び監視ASIC(Application Specific Integrated Circuit)200を備える。監視ASIC200は、エラー回数カウンタ210、及び端子リセット制御回路220を備える。監視ASIC200は、MCU100との信号入出力を行う端子230及び端子231を備える。MCU100は、MCUリセット制御回路110、内部ロジック回路120、及びCVM(Core Voltage Monitor)130を備える。またMCU100は、監視ASIC200との信号入出力に用いる端子140、及び端子141(第1外部端子)を備える。
まず監視ASIC200の構成について説明する。エラー回数カウンタ210には、端子140及び端子230を介して電圧エラー信号(S1)が入力される。ここで電圧エラー信号(S1)は、後述するCVM130が異常を検出した場合にのみハイレベルとなる2値信号である。エラー回数カウンタ210は、電圧エラー信号(S1)の入力回数(すなわちエラーとなった回数。以下の説明ではエラー回数とも記載する。)をカウントアップして保持する。換言するとエラー回数カウンタ210は、MCU100のエラー状態を保持する。エラー回数カウンタ210は、エラー回数の情報を端子リセット制御回路220に供給する。
端子リセット制御回路220には、端子140及び端子230を介して電圧エラー信号(S1)が入力される。さらに、端子リセット制御回路220には、電圧エラー信号(S1)がハイレベルとなった場合に、エラー回数カウンタ210がカウントしたカウント数が入力される。
端子リセット制御回路220は、電圧エラー信号(S1)がハイレベルとなった場合に、ロウレベルの値を持つ端子リセット信号(S2)を端子231から出力する。ここで、端子リセット信号(S2)は、リセットを指示する場合にロウレベルに立ち下がり、リセット解除を指示する場合にハイレベルに立ち上がる2値信号である。端子リセット制御回路220は、端子リセット信号(S2)をロウレベルに遷移させた後に、エラー回数カウンタ210から入力されたエラー回数が所定値未満であるか否かを判定する。所定値未満であった場合、端子リセット信号(S2)をハイレベルに遷移させる。すなわち、端子リセット制御回路220は、エラー回数が所定値未満であった場合にリセット解除を指示する端子リセット信号(S2)を出力する。
一方、エラー回数が所定値以上である場合、端子リセット制御回路220は、端子リセット信号(S2)をロウレベルのままにする。そして、端子リセット制御回路220は、図示しない上位システムにエラー通知信号(図示せず)を送信する。ここで上位システムとは、例えば車両の乗員(ドライバー)にシステム故障を通知するコントロールパネル制御等を行う処理部である。上位システムは、端子リセット制御回路220からエラー通知信号を受信した場合、図示しないサブMCU等により動作を継続する等の制御を行う。
続いてMCU100内部の各回路について説明する。MCUリセット制御回路110は、イベント保持回路111、およびリセット信号統合回路112を有する。
イベント保持回路111には、電圧エラー信号(S1)及び端子リセット信号(S2)が入力される。イベント保持回路111は、電圧エラー信号(S1)がハイレベルに遷移してから端子リセット信号(S2)が立ち下がる(ロウレベルに遷移する)までの期間を保持する回路である。
イベント保持回路111は、例えば一般的なSR(Set-Reset)ラッチにより構成すればよい。当該SRラッチのセット入力端子には、電圧エラー信号(S1)が入力される。また、当該SRラッチのリセット入力端子には、端子リセット信号(S2)が入力される。イベント保持回路111は、出力信号(S3)をリセット信号統合回路112に入力する。
リセット信号統合回路112には、端子リセット信号(S2)及びイベント保持回路111の出力信号(S3)が入力される。リセット信号統合回路112は、リセット命令信号(S4)を生成する回路である。リセット命令信号(S4)は、ハイレベルの場合にリセットを指示し、ロウレベルの場合に通常状態への遷移を指示する2値信号である。
リセット信号統合回路112の構成例の詳細を図2を参照して説明する。リセット信号統合回路112は、例えばインバータ1121、及びOR回路1122を備える。インバータ1121には、端子リセット信号(S2)が入力される。OR回路1122には、イベント保持回路111の出力信号(S3)及びインバータ1121の出力信号(端子リセット信号(S2)の反転信号)が入力される。OR回路1112は、両入力信号の論理和値をリセット命令信号(S4)としてリセット信号統合回路112に供給する。
内部ロジック回路120(監視対象ロジック回路)は、CPU121、記憶部122、検出電圧設定レジスタ123−1、及びエラーフラグレジスタ124−1を有する。内部ロジック回路120は、後述するCVM130の監視対象となるロジック回路である。なお、内部ロジック回路120は、図示しないレジスタ等を適宜備えているものとする。
ここで、内部ロジック回路120と、MCU100内の他の回路と、は異なる動作電圧で動作することが一般的である。例えば内部ロジック回路120は、1.2Vの動作電圧で動作する。また例えばMCU100内の他の回路は、5.0Vの動作電圧で動作する。内部ロジック回路120を低い電圧で動作させることにより、高集積化及び低消費電力化を図ることができる。
記憶部122は、任意のデータを記憶する処理部であり、RAM(Random Access Memory)等のメモリ装置やレジスタ等を含む概念である。記憶部122は、例えば後述する自己診断プログラム等を保持する。
CPU(Central Processing Unit)121は、MCU100内の中心的な処理装置として機能する電子回路である。CPU121は、記憶部122や図示しない記憶装置等からプログラムを読み出して様々な数値計算や情報処理等を行う。
ハイレベルのリセット命令信号(S4)が内部ロジック回路120に入力された場合、すなわちリセットの指示が入った場合、CPU121は、所定のリセット処理を行い、MCU100をリセット状態に遷移させる。その後にリセット命令信号(S4)がロウレベルに遷移した場合(リセット解除が指示された場合)、CPU121は、MCU100をリセット状態から復帰させる。
リセット状態からの復帰とは、自己診断プログラムの実行、及び通常動作の再開を意味する。はじめにCPU121は、記憶部122に書き込まれた自己診断プログラムを読み出す。ここで自己診断プログラムとは、MCU100の状態を診断するための各種の診断処理が記述されたプログラムである。自己診断プログラムには、記憶部122やMCU100内部の各回路(アナログ回路、デジタル回路)に対する診断処理が含まれる。例えば、自己診断プログラムには、記憶部122及び任意のレジスタに対して書き込みを行い、当該書込みを行った箇所(アドレス)からの読み出しを行い、書き込んだ値と読み出した値が等しいか否かを診断する処理が含まれている。同様に、自己診断プログラムには、回路の入出力の正しさを検証する(例えばMCU100内部で生成したアナログ信号をA/D変換器に入力し、当該A/D変換器が出力した値が所望の値となっているかを検証する)処理が含まれている。すなわち、自己診断プログラムには、MCU100内の各機能が正常に動作するか否かを把握するための全ての検証処理が含まれている。
なお自己診断プログラムは、あくまで各機能を診断する処理が記載されており、不具合の修正処理を行うものではない。そのためCPU121は、自己診断プログラムの実行によって異常を検出した場合、その異常を記憶部122(または他の記憶装置)に書き込む。詳細にはCPU121は、エンドユーザが指定した記憶装置122のアドレスに自己診断プログラムの実行結果を書き込む。これにより、どのようなエラーが生じたのかを把握することができる。なおCPU121は、内部ロジック回路120外の記憶装置に自己診断プログラムの実行結果を書き込んでも良い。さらにCPU121は、検出した異常の種類に応じて適切な対応を取る。以下、具体例を何点か説明する。
自己診断プログラムの実行によりあるレジスタの不具合を検出した場合、CPU121は当該レジスタが商品安全に関する情報(例えば車両のアクセルに関する情報)を保持するレジスタであるか否かを判断する。商品安全に関する情報を保持するレジスタではない場合、CPU121は当該レジスタを冗長セル等に置き換える。
また、自己診断プログラムの実行によりある回路の不具合を検出した場合、CPU121は当該回路が代替可能であるか否かを判断し、代替可能である場合には代替処理を行う。
一方、不具合箇所が商品安全に関するような箇所である場合(例えば車両の走行制御に関連する箇所である場合)、CPU121は、上位システムに通知を行う。上位システムに通知を行い、当該上位システムが当該MCU100を停止させること等により安全性を担保する。
なお、不具合箇所が商品安全上の観点においてそれほど重要な箇所ではない場合(例えば車両のルームライトを制御する回路等である場合)、CPU121は当該不具合に対する対応処理を行わなくても良い。
また、自己診断プログラムの実行結果が書き込まれる記憶装置122の異常を検出した場合、CPU121は上位システムにエラー通知を行い、リセット状態を維持しても良い。これにより、異常な書き込みを参照してエラー対応を行うことが無くなり、不要なリセット等の対応が行われることを防止することができる。以上が不具合検出時における対応例であるが、上記の例に限られないことは勿論である。
検出電圧設定レジスタ123−1は、CPU121から内部ロジック回路120の動作補償電圧の上限値が設定されるレジスタである。検出電圧設定レジスタ123−1は、書き込まれた上限値を検出電圧設定レジスタ131−1に書き込む。検出電圧レジスタ123−1、後述する検出電圧設定レジスタ131−1、エラーフラグレジスタ124−1、及びエラーフラグレジスタ134−1の詳細については図3及び図4を参照して後述する。
エラーフラグレジスタ124−1は、後述するCVM130が動作電圧エラーを検出した場合に、エラーフラグが設定されるレジスタである。エラーフラグとは異常状態であるか否かを示す2値情報である(以下、異常状態を示す場合にはON、異常状態ではない場合をOFFと記載する。)。エラーフラグレジスタ124−1には、エラーフラグレジスタ134−1からエラーフラグの値が書き込まれる。
CVM130は、内部ロジック回路120の動作電圧の異常を検出する。なお、CVM130は、内部ロジック回路120の動作状態の異常性を監視する動作監視回路の一態様である。MCU100は、用途に応じてCVM130に代わり、他の動作状態の異常性を監視する動作監視回路を備えても良い。
検出電圧設定レジスタ131−1は、CPU121から内部ロジック回路120の動作補償電圧の上限値が設定されるレジスタである。基準電圧生成回路132−1は、検出電圧設定レジスタ131−1に書き込まれた値(内部ロジック回路120の動作保証電圧の上限値)を読み出し、当該値の電圧値を持つ信号を生成する。基準電圧生成回路132−1内の構成は、一般的に知られた構成であればよく、例えば定電流源や複数の抵抗値を用いた構成等が考えられる。基準電圧生成回路132−1は、当該電圧値を持つ信号を電圧比較回路133−1に供給する。
電圧比較回路133−1は、基準電圧生成回路132−1の出力信号の電圧と、内部ロジック回路120の動作電圧と、を比較する。電圧比較回路133−1は、内部ロジック回路120の動作電圧が基準電圧生成回路132−1の出力信号の電圧よりも高い場合、電圧エラー信号(S1)をハイレベルにして出力するとともに、エラーフラグレジスタ134−1にエラーフラグを設定する(エラーが生じたことを示す値を書き込む)。なお、電圧エラー信号(S1)は、内部ロジック回路120の異常性を示すエラー検出信号の一態様である。また電圧比較回路133−1は、内部ロジック回路120の異常を検出する検出部と解釈できる。
エラーフラグレジスタ134−1は、エラーフラグとは異常状態であるか否かを示す2値情報であるエラーフラグ(以下、異常状態を示す場合にはON、異常状態ではない場合をOFFと記載する。)を保持するレジスタであり、書き込まれたエラーフラグの値をエラーフラグレジスタ124−1に書き込む。
続いて、図3及び図4を参照して検出電圧設定レジスタ123−1、検出電圧設定レジスタ131−1の構成について説明する。図1に示すMCU100は、電圧比較に関する検出電圧設定レジスタ123−1及び検出電圧設定レジスタ131−1といった2つのレジスタ回路を持つ構成を示した概念図である。しかしながら、CVM130内にのみレジスタ回路(検出電圧レジスタ131−1)を設ける構成も技術的には可能である。そこで、MCU100が電圧比較に関するレジスタ回路を1つ(131−1)のみ持つ場合の構成、及び図1のように電圧比較に関するレジスタ回路を2つ(123−1、131−1)持つ場合の構成をそれぞれ説明する。そして、図1のように電圧比較に関するレジスタ回路を2つ(123−1、131−1)持つ場合の構成の利点について説明する。
一般的にCPU121からレジスタ回路へのアクセスは、バスを介したアクセスにより実行される。バスアクセスに必要な信号は、以下の信号である。
<1>バスクロック(CLK)
<2>ライトデータ(WDATA)
<3>リードデータ(RDATA)
<4>リセット(RESET)
<5>アドレス信号/IP選択信号(ADDR/SEL)
<6>イネーブル信号/ライトストローブ信号(ENABLE/STRB)
<7>ライト信号(WRITE)
<8>転送延長信号(READY)
なお、以下の説明では上記の<5>?<8>の信号群をまとめて「制御信号」とも呼称する。
図3は、MCU100が電圧比較に関するレジスタ回路を1つ(131−1)のみ持つ場合の構成を示す概念図である。検出電圧設定レジスタ131−1は、データ保持部1311、及びバスIF部1312を備える。さらに、内部ロジック回路120とCVM130との間に各信号(上述の<1>〜<8>)に対応するレベルシフタ150−1〜150−4を有する。なお、図面中ではレベルシフタを5つ(150−0〜150−4)図示しているが、実際には各信号線に対応する数のレベルシフタが設けられる。上述のように、内部ロジック回路120の動作電圧(1.2V)とCVM130の動作電圧(5V)は異なる。そのため、上述のバスクロック(CLK)、ライトデータ(WDATA)、リードデータ(RDATA)、リセット(RESET)、制御信号の電圧レベルを変換するレベルシフタを必要とする。レベルシフタ150−0〜150−4は、各信号を電圧レベル変換した後に検出電圧設定レジスタ131−1に供給する。
データ保持部1311は、CPU121から書き込まれたデータを保持する。バスIF部1312は、内部にアドレスデコーダや制御信号のデコードを行うデコード回路を有する。
次に、電圧比較に関するレジスタ回路を2つ(123−1、131−1)持つ場合の構成について説明する。図4は、MCU100が電圧比較に関するレジスタ回路を2つ(123−1、131−1)持つ場合の構成を示す概念図である。検出電圧設定レジスタ123−1は、データ保持部1231及びバスIF部1232を有する。検出電圧設定レジスタ131−1は、データ保持部1311を有する。さらに、内部ロジック回路120とCVM130との間にレベルシフタ150−5及びレベルシフタ150−6を有する。
CPU121と検出電圧設定レジスタ123−1の間に制御信号、ライトデータ(WDATA)、リードデータ(RDATA)に関するバスアクセスが発生する。また、検出電圧設定レジスタ123−1にバスクロック(CLK)及びリセット(RESET)が入力される。
データ保持部1231は、CPU121から書き込まれたデータを保持する。バスIF部1232は、内部に制御信号をデコードするデコード回路等を有する。バスIF部1232は、制御信号をデコードし、バスクロック(CLK)及びリセット(RESET)の入力を用いてラッチ信号を生成する。ここでラッチ信号とは、制御信号をデコードすることにより生成される1ショットパルスであり、データの書き込みに用いるパルス信号である。図3の構成では、検出電圧設定レジスタ131−1内のバスIF部1312において制御信号をデコードしてラッチ信号を生成し、このラッチ信号を用いてデータ保持部1311にデータ書き込みを行う。図4の構成では、検出電圧レジスタ131−1は、制御信号に代わってラッチ信号を検出電圧設定レジスタ131−1に供給する。すなわち、図4の構成では、制御信号よりもビット幅の小さいラッチ信号を予め内部ロジック120内で生成し、このラッチ信号を供給している。
レベルシフタ150−5は、バスIF部1232が生成したラッチ信号の電圧レベル変換を行い、変換後のラッチ信号を検出電圧設定レジスタ131−1に入力する。レベルシフタ150−6は、ライトデータ(WDATA)の電圧レベル変換を行い、変換後のライトデータ(WDATA')を検出電圧設定レジスタ131−1に供給する。
検出電圧設定レジスタ131−1は、データ保持部1311のみを有する。換言すると検出電圧設定レジスタ131−1は、バスIF部に相当する回路を持たない。検出電圧設定レジスタ131−1は、ラッチ信号を元にデータ保持部1311にライトデータ(WDATA)を格納する。
続いて、図3に示す構成と図4に示す構成の比較を行う。上述したように図3の構成(レジスタ回路が1つのみの構成)の場合、各信号線に対応する数(RDATA32ビット+WDATA32ビット+制御信号10〜15ビット=75〜80個)のレベルシフタを必要とする。一方、図4に示す構成(レジスタ回路が2つの構成)の場合、ライトデータ(WDATA'=32ビット)及びラッチ信号に対応する33個のレベルシフタのみを必要とする。すなわち、図4の構成ではレベルシフタの個数を減らすことができ、回路規模を縮小することができる。なお、図4の構成では、データ保持部を図3の構成よりも1個多く必要とするが、データ保持部はレベルシフタに比べて回路規模が小さいため、全体としての回路規模は図4に示す構成のほうが小さくできる。
図3に示す構成は、バスクロック(CLK)を高電圧(5V)のCVM130内で扱う構成である。バスクロック(CLK)は、定期的に値が遷移する(すなわち値が頻繁に変化する)2値信号である。このバスクロック(CLK)を5V領域内のCVM130が処理するために、動作電流が大きくなってしまう。一方、図4に示す構成は、バスクロック(CLK)を低電圧(1.2V)領域の内部ロジック回路120内で扱う構成であるため、動作電流を小さくすることができ、消費電力を削減することができる。さらに、図4に示す構成は高電圧(5V)領域であるCVM130内の回路点数を少ないため、リーク電流が低減する。
さらにまた、図4に示す構成は設計容易性も高い。CPU121がレベルシフタにアクセスする場合に信号伝達の遅延を引き起こす可能性があり、タイミング設計に悪影響を及ぼす。図4の構成では、CPU121がレベルシフタにアクセスしない構成であるため、設計の難易度を低くすることができる。
続いて、図5及び図6を参照してエラーフラグレジスタ124−1、エラーフラグレジスタ134−1の構成について説明する。エラーフラグに関してもCVM130内にのみレジスタ回路(エラーフラグレジスタ134−1)を設ける構成も技術的には可能である。そこで、MCU100が電圧比較に関するレジスタ回路を1つ(134−1)のみ持つ場合の構成、及び図1のように電圧比較に関するレジスタ回路を2つ(124−1、134−1)持つ場合の構成をそれぞれ説明する。
図5は、MCU100が電圧比較に関するレジスタ回路を1つ(134−1)のみ持つ場合の構成を示す概念図である。エラーフラグレジスタ134−1は、イベント保持部1343及びバスIF部1342を備える。さらに、内部ロジック回路120とCVM130との間に各信号(上述の<1>〜<8>)に対応するレベルシフタ150−7〜150−11を有する。このレベルシフタ150−7〜150−11を介して、各信号の入出力が行われる。
バスIF部1342は、内部にアドレスデコーダや制御信号のデコードを行うデコード回路を有する。イベント保持部1343は、SRラッチにより構成されており、このSRラッチのセット入力端子には電圧エラー信号(S1)が入力される。また、SRラッチのリセット入力端子にはCPU121からの信号が入力される。CPU121は、自己診断プログラムの実行後に当該SRラッチをリセットする。SRラッチの出力は、レベルシフタ150−11を介してCPU121に供給される。
図6は、MCU100が電圧比較に関するレジスタ回路を2つ(124−1、134−1)持つ場合の構成を示す概念図である。エラーフラグレジスタ134−1は、イベント保持部1343を有する。エラーフラグレジスタ124−1は、データサンプリング部1243及びバスIF部1242を有する。
イベント保持部1343は、SRラッチにより構成されており、このSRラッチのセット入力端子には電圧エラー信号(S1)が入力される。また、SRラッチのリセット入力端子にはCPU121からの信号が入力される。SRラッチの出力は、レベルシフタ150−12を介してエラーフラグレジスタ124−1に入力される。
バスIF部1242には、制御信号、バスクロック(CLK)、リセット(RESET)が入力される。バスIF部1242は、制御信号をデコードし、バスクロック(CLK)及びリセット(RESET)の入力を用いてラッチ信号を生成する。データサンプリング部1243は、バスクロック(CLK)を用いて、エラーフラグレジスタ134からの入力をサンプリングする。
本構成においても制御信号のデコード等は、エラーフラグレジスタ124−1において行われるため、各電圧領域を跨ぐ信号のビット幅が削減される。これにより、レベルシフタの減少による回路規模の削減、消費電力の削減等の効果を奏することができる。
次に、電圧異常時の各回路の動作や出力信号の遷移について図7を参照して説明する。図7は、電圧異常時の各回路の状態や出力信号を示すタイミングチャートである。本例ではタイミングT11において、内部ロジック回路120の動作電圧が動作保障電圧よりも高くなったものとする。
また本例では、電圧異常に起因してMCU100内のある機能の状態が異常となったものとする(タイミングT11')。なお、機能異常が起こるタイミングは、不定である(たとえばタイミングT12の前である可能性も後である可能性もある)。
タイミングT11以前のタイミングでは、MCU100は通常動作状態(RUN)であり、MCU100内の各機能(回路等)も通常状態で動作する。タイミングT11直後のタイミングT12において、電圧比較回路133−1は、電圧異常を検出し、電圧エラー信号(S1)をロウレベルからハイレベルに遷移させる(T12)。また電圧比較回路133−1は、エラーフラグレジスタ134−1を介してエラーフラグレジスタ124−1内のエラーフラグをONに設定する。電圧エラー信号(S1)の遷移に応じて、イベント保持回路111は、出力信号(S3)をロウレベルからハイレベルに遷移させる(T13)。リセット信号統合回路112は、出力信号(S3)のハイレベルへの遷移に応じて、リセット命令信号(S4)をロウレベルからハイレベルに遷移させる(T13)。リセット命令信号(S4)がハイレベルとなった場合(タイミングT13)、MCU100はリセット状態(RESET)に遷移する。
次に電圧異常から復帰時の各回路の状態及び出力信号の遷移について説明する。内部ロジック回路120の電圧がタイミングT21において通常状態となったものとする。この場合、異常状態となったMCU100内のある機能は、通常状態となる場合もあり、ひとたび異常状態となったためにそのまま異常状態となる場合もある(図中の"異常/通常")。
電圧比較回路133−1は、内部ロジック回路120が電圧異常状態から電圧通常状態に遷移したことを検出し、電圧エラー信号(S1)をハイレベルからロウレベルに遷移させる(T22)。
端子リセット制御回路220は、電圧エラー信号(S1)の立ち上がり(T12)に応じて、端子リセット信号(S2)をハイレベルからロウレベルに立ち下げる(タイミングT23)。なお端子リセット信号(S2)の立ち下がりタイミングは、電圧異常から正常に戻るタイミング(T21)よりも前の可能性もある。
イベント保持回路111は、端子リセット信号(S2)のロウレベルへの遷移に応じて、出力信号(S3)をハイレベルからロウレベルに遷移させる(T24)。端子リセット制御回路220は、エラー回数カウンタ210から入力されたエラー回数が所定値未満である場合に端子リセット信号(S2)をロウレベルからハイレベルに遷移させる(T25)。なお、図示しないもののエラー回数が所定値以上である場合、端子リセット制御回路220は、端子リセット信号(S2)の値の遷移を行うことなく、上位システムにエラー通知信号(図示せず)を送信する。
端子リセット制御回路220は、端子リセット信号(S2)のハイレベルへの遷移に応じて、リセット命令信号(S4)をハイレベルからロウレベルに遷移させる(T26)。すなわち、MCU100に対するリセット解除が指示される。このように、外部からの信号であるリセット命令信号(S4)がロウレベルとなった場合に、リセット解除が行われる。リセット命令信号(S4)がロウレベルの遷移に応じて、MCU100の状態がリセット状態(RESET)から自己診断状態に遷移する。
自己診断状態において、CPU121は上述の自己診断プログラムを実行し、実行結果を記憶部122に書き込む。CPU121は自己診断プログラムの実行後にエラーフラグレジスタ124−1内のエラーフラグをOFFに設定する(T28)。自己診断プログラムの実行により異常が無いことが確認された場合や検出された異常が無視できるような場合、MCU100は通常動作状態(RUN)に遷移し、通常動作を行う(T28)。
なお自己診断プログラムの実行により異常が検出された場合、MCU100は上述の例のように検出した異常の種類に応じて適切な対応を取る。
続いて、本実施の形態の効果について説明する。上述したようにひとたび異常が検出されたMCU100は、通常の(異常が検出されていない)MCUよりも信頼性が劣る。MCUリセット制御回路110は、端子141を介して入力される端子リセット信号(S2)によってのみリセット状態からの復帰を行う。端子リセット信号(S2)は、MCU100の状態を監視する監視ASIC200によって出力される。そのためMCU100は、フェールセールの観点から十分な安全性を担保した上でリセット状態からの復帰を行うことができる。
さらにMCU100は、リセット状態からの復帰時に自己診断プログラムを実行し、MCU100内の各機能の異常性を診断する。これにより、ある機能が異常状態であるか否かが不明なままMCU100が動作状態となってしまうことを防止することができる。さらに検出した異常状態や異常個所に応じて適切な対応を行うことにより、MCU100の動作安全性を担保することができる。
上述したように、内部ロジック回路120とMCU100内の他の回路の動作電圧が異なることが一般的である。図1に示すように、各動作電圧領域内にデータ受け渡しを行うレジスタ回路を設ける構成により、回路規模の縮小や消費電力の削減等の効果を奏することができる。
<実施の形態2>
本実施の形態にかかるMCU100は、内部ロジック回路120の動作補償電圧の上限値のみならず下限値も考慮してMCU100の動作を監視することを特徴とする。本実施の形態にかかるMCU100について図8を参照して実施の形態1と異なる点を説明する。
図8は、本実施の形態にかかるMCU100の構成を示すブロック図である。なお監視ASIC200の構成は図1と同様であるため、図示は行わない。内部ロジック回路121は、図1の構成に加えて検出電圧設定レジスタ123−2及びエラーフラグレジスタ124−2を備える。CVM130は、図1の構成に加えて検出電圧設定レジスタ131−2、基準電圧生成回路132−2、電圧比較回路133−2、及びエラーフラグレジスタ134−2を備える。さらにMCU100は、OR回路160を有する。
検出電圧設定レジスタ131−2は、CPU121から内部ロジック回路120の動作補償電圧の下限値が設定されるレジスタである。基準電圧生成回路132−2は、検出電圧設定レジスタ131−2に書き込まれた値(内部ロジック回路120の動作保証電圧の下限値)を読み出し、当該値の電圧値を持つ信号を生成する。
電圧比較回路133−2は、基準電圧生成回路132−2の出力信号の電圧と、内部ロジック回路120の動作電圧と、を比較する。電圧比較回路133−2は、内部ロジック回路120の動作電圧が基準電圧生成回路132−2の出力信号の電圧よりも低い場合、電圧エラー信号(S1−2)をハイレベルにしてOR回路160及びリセット信号統合回路112に出力するとともに、エラーフラグレジスタ134−2にエラーフラグを設定する(エラーが生じたことを示す値(ON)を書き込む)。
なお、電圧比較回路132−1の出力する電圧エラー信号(S1−1)は、図1における電圧エラー信号(S1)と対応する。電圧エラー信号(S1−1)は、イベント保持回路111に入力される。OR回路160は、電圧エラー信号(S1−1)と電圧エラー信号(S1−2)の論理和値を電圧エラー信号(S1)として端子140から監視ASIC200に出力する。
リセット信号統合回路112には、電圧エラー信号(S1−2)が入力される。本実施の形態にかかるリセット信号統合回路112は、図2に示す構成において、OR回路1122に対して電圧エラー信号(S1−2)が更に入力される。OR回路1122は、3入力の論理和値をリセット命令信号(S4)として出力する。
すなわちリセット信号統合回路112は、内部ロジック回路120の動作電圧が動作補償電圧の下限値を下回り、その後に動作補償電圧の範囲となった場合には、端子141からの端子リセット信号(S2)に関わらずリセット命令信号(S4)をロウレベル(すなわちリセットの解除を指示する値)に遷移させる。
CPU121は、リセット状態からの復帰時にエラーフラグレジスタ124−1及びエラーフラグレジスタ124−2の保持するエラーフラグを参照する。エラーフラグレジスタ124−1のエラーフラグがONに設定されている場合、すなわち内部ロジック回路120の動作電圧が動作補償電圧の上限値よりも高かった場合、CPU121は自己診断プログラムを実行する。一方、エラーフラグレジスタ124−2のエラーフラグがONに設定されている場合、すなわち内部ロジック回路120の動作電圧が動作補償電圧の下限値よりも低かった場合、CPU121は自己診断プログラムを実行することなく即座に通常状態に移行する。
続いて本実施の形態にかかるMCU100の効果について説明する。一般的に動作補償電圧よりも高い電圧で内部ロジック回路120が動作した場合、内部のトランジスタが破壊される可能性がある。一方で動作補償電圧よりも低い電圧で内部ロジック回路120が動作した場合、出力値等の補償は出来ないものの上述のトランジスタの破壊等の重大な問題は生じない。
本実施の形態では、内部ロジック回路120の動作電圧が動作補償電圧の上限値よりも高い状態から復帰した場合、CPU121は自己診断プログラムを実行する。一方、内部ロジック回路120の動作電圧が動作補償電圧の下限値よりも低い状態から復帰した場合、CPU121は自己診断プログラムを実行することなく通常動作に移行する。これにより、トランジスタの破壊等の重大な問題がある状態のままMCU100が動作することを回避するとともに、重大な問題が無いと思われる場合には即座に通常状態に遷移することができる。
なおCPU121は、エラーフラグレジスタ124−2のエラーフラグが設定されていた場合には自己診断プログラムを実行しなくても良いことを確実に認識することが出来る。
<実施の形態3>
本実施の形態では、内部ロジック回路120の動作電圧が動作補償電圧を大幅に超えた場合の対応を行うことを特徴とする。以下、実施の形態1と異なる点を説明する。
図9は、本実施の形態にかかるMCU100の構成を示すブロック図である。内部ロジック回路121は、図1の構成に加えて検出電圧設定レジスタ123−3及びエラーフラグレジスタ124−3を備える。CVM130は、図1の構成に加えて検出電圧設定レジスタ131−3、基準電圧生成回路132−3、電圧比較回路133−3、及びエラーフラグレジスタ134−3を備える。さらにMCU100は、OR回路160を有する。
検出電圧設定レジスタ131−3は、CPU121から内部ロジック回路120の動作補償電圧の上限値よりも高い値(例えば上限値+0.2V)が設定されるレジスタである。基準電圧生成回路132−3は、検出電圧設定レジスタ131−3に書き込まれた値(内部ロジック回路120の動作保証電圧の上限値よりも高い値)を読み出し、当該値の電圧値を持つ信号を生成する。
電圧比較回路133−3は、基準電圧生成回路132−3の出力信号の電圧と、内部ロジック回路120の動作電圧と、を比較する。電圧比較回路133−3は、内部ロジック回路120の動作電圧が基準電圧生成回路132−3の出力信号の電圧よりも高い場合、電圧エラー信号(S1−3)をハイレベルにしてOR回路160に出力するとともに、エラーフラグレジスタ134−3にエラーフラグを設定する(エラーが生じたことを示す値(ON)を書き込む)。なお、電圧比較回路132−1の出力する電圧エラー信号(S1−1)は、図1における電圧エラー信号(S1)と対応する。
CPU121は、MCU100の動作周波数を内部設定により制御する。CPU121は、通常状態では高速周波数(例えば96〜160MHz)でMCU100を動作させ、リセット状態では中速周波数(例えば8MHz)でMCU100を動作させる。CPU121は、リセット状態からの復帰時にエラーフラグレジスタ124−1及びエラーフラグレジスタ124−3の保持するエラーフラグを参照する。エラーフラグレジスタ124−3のエラーフラグがONに設定されている場合、CPU121は、最低レベルでの動作周波数(例えば240kHz)にCPU内部の設定を変更する。すなわちMCU100を最低動作周波数で動作させる。CPU121は、その後に自己診断プログラムを実行する。CPU121は、自己診断プログラムの実行後に端子142からアラーム信号を監視ASIC200に通知する。
監視ASIC200は、アラーム信号を受信した場合に所定の対応(例えばMCU100をリセット状態のままにする、上位システムに通知する)を行う。なお、この所定の対応とは、MCU100の用途等に応じて定められれば良い。
続いて本実施の形態の効果について説明する。上述のようにMCU100は、内部ロジック回路120の動作電圧が動作補償電圧を大幅に超えた場合に、最低動作周波数(例えば240kHz)で通常動作を行う。これにより、再び電圧エラーが起こる可能性を低くし、MCU100の動作安全を図ることができる。更に、内部ロジック回路120の動作電圧が動作補償電圧を大幅に超えた場合、MCU100はアラーム信号を端子142を介して監視ASIC200に通知する。これにより、監視ASIC200は、MCU100の用途に応じた対応処理を行うことができる。
<実施の形態4>
本実施の形態では、さらにウォッチドッグタイマーによる異常監視を行うことを特徴とする。以下、実施の形態1と異なる点を説明する。
図10は、本実施の形態の構成を示すブロック図である。なお図8において、MCUリセット制御回路110、内部ロジック回路120、CVM130の内部構成は図1と同様であるため、当該回路は簡略記載としている。
内部ロジック回路120は、端子143を介してMCU監視WDT(ウォッチドッグタイマー)300と接続する。MCU監視WDT300は、CPU121の動作正常性を確認するハードウェア時間計測器である。MCU監視WDT300は、内部にカウンタを備え、カウント処理を行う。CPU121は、MCU100の通常状態において定期的にウォッチドッグタイマークリア信号(S5)を出力する。MCU監視WDT300は、内部ロジック回路120からウォッチドッグタイマークリア信号(S5)が入力された場合に内部カウント値をクリアする。MCU監視WDT300は、カウント数が所定数に達した場合、CPU121が正常動作していないと判断し、上位システムに対してエラー通知を行う。
ここで、エラーを示す値(ハイレベル)を持つ電圧エラー信号(S1)が出力されている間に、端子231と端子141の間において信号線の断線が生じたと仮定する。この場合、端子リセット信号(S2)が入力されず、MCU100がリセット状態から通常状態へ遷移しない。すなわちCPU121は、リセット状態のままとなりウォッチドッグタイマークリア信号(S5)を出力しない。これによりMCU監視WDT300は、CPU121が正常に動作していないと判断し、上位システムに対してエラー通知を行う。
次に、端子230と端子140との間に信号線の断線が生じている間に、エラーを示す値(ハイレベル)を持つ電圧エラー信号(S1)がCVM130から出力されたと仮定する。この場合、電圧エラー信号(S1)が監視ASIC200に入力されないため、リセット解除を指示する端子リセット信号(S2)がMCUリセット制御回路110に入力されない。この場合、MCU100がリセット状態のままとなり、ウォッチドッグタイマークリア信号(S5)を出力しない。これによりMCU監視WDT300は、CPU121が正常に動作していないと判断し、上位システムに対してエラー通知を行う。
続いて本実施の形態の効果について説明する。本実施の形態では、内部ロジック回路120がMCU監視WDT300と接続している。実施の形態1と同様に、MCU100は、監視ASIC200と接続する端子141から入力される端子リセット信号(S2)によってリセット状態からの復帰を行う。上述したように、MCU100は、内部信号ではなく、外部からの端子リセット信号(S2)によるリセット状態からの復帰を行うことにより信頼性の高い状態で通常状態に遷移することができる。そのため本実施の形態の構成では、CPU121は不安定な状態のままウォッチドッグタイマークリア信号(S5)を出力することが無くなる。これによりMCU監視WDT300は、より正確にCPU121の動作監視を行うことができる。
<実施の形態5>
本実施の形態にかかるMCU100は、ポート入出力回路を考慮した構成であることを特徴とする。本実施の形態にかかるMCU100について、実施の形態1と異なる点を以下に説明する。
はじめにMCU100内部に備えられるポート入出力回路について説明する。ポート入出力回路は、MCU100外部にある制御対象回路とのデータ入出力の制御を行うインターフェイスとして動作する。ポート入出力回路は、上述の内部ロジック回路120からのデータ出力、または内部ロジック回路120へのデータ入力を制御する。
ここで内部ロジック回路120が異常状態となった場合、内部ロジック回路120と外部の制御対象回路とのインターフェイスとなるポート入出力回路からの出力値も不定値となる可能性がある。すなわち、ポート入出力回路から制御対象回路に対して意図しない出力値が供給されてしまう可能性がある。また、ポート入出力回路が意図しないデータ出力を行うことにより制御対象回路のデータ出力とのデータ衝突を引き起こす可能性がある。本実施の形態では、このポート入出力回路からの不定値の出力を回避する機能を提供する。
図11は、本実施の形態にかかる構成を示すブロック図である。本実施の形態にかかるMCU100は、図1に示す構成に加えてポート入出力回路170を有する。内部ロジック回路120は、ポート入出力回路170を介して制御対象回路400とのデータ入出力処理を行う。
制御対象回路400は、内部ロジック回路120とのデータのやり取りを行う任意の回路である。ポート入出力回路170は、端子144を介して制御対象回路400と接続する。ポート入出力回路170には、端子リセット信号(S2)が入力される。図12を参照して、ポート入出力回路170の詳細構成例を説明する。
図12は、ポート入出力回路170の構成を示すブロック図である。ポート入出力回路170は、AND回路171、AND回路172、AND回路173、インバータ174、NOR回路175、NAND回路176、NMOS177、及びPMOS178を備える。図12は、端子リセット信号(S2)がロウレベル(0)の場合の各回路の出力値を示している。端子リセット信号(S2)がロウレベル(0)の場合、内部ロジック回路120はリセット状態となり、内部ロジック回路120からの各出力信号(ポート入力許可信号、ポート出力許可信号、ポート出力データ)は不定値となる可能性がある。以下、これらの信号が不定値となったものとして説明する。なお、前述のように内部ロジック回路120の動作電圧とMCU100内の他の領域の動作電圧は異なるため、内部ロジック回路120と他の領域の回路との間にはレベルシフタが適宜設けられる。
AND回路171は、ポート入力許可信号と端子リセット信号(S2)との論理積値をAND回路172に入力する。AND回路172は、端子144からの入力とAND回路171の出力信号との論理積値をポート入力データとして内部ロジック回路120に供給する。
AND回路173は、ポート出力許可信号と端子リセット信号(S2)との論理積値をインバータ174及びNAND回路176に入力する。インバータ174は、AND回路173の出力値を反転してNOR回路175に入力する。NOR回路175は、インバータ174の出力値とポート出力データの否定論理和値をNMOS177のゲートに入力する。NAND回路176は、ポート出力データとAND回路173の出力値との否定論理積値をPMOS178のゲートに入力する。NMOS177とPMOS178は、図示するように縦積みで接続される。これにより、端子144から出力値が出力される。
図示するように、端子リセット信号(S2)がロウレベル、すなわちリセットを指示する値である場合、端子144の端子状態はHi−Z状態となる。つまり、リセット状態となった場合の制御対象回路400へは不定値が出力されないように制御する。なお、制御対象回路400の構成等によっては、リセット状態になった場合に必ずHi−Z状態にする必要はなく、例えばリセット状態になった場合にロウレベルを固定的に出力しても良い。
本実施の形態にかかるMCU100は、内部ロジック回路120がリセット状態となった場合、すなわち不定値を出力する恐れがある場合、ポート入出力回路170の入力及び出力制御を固定(上述の例ではHi−Z)している。不定値が制御対象回路400に出力されることを防止することにより、制御対象回路400の誤動作の防止やデータの出力の回避を実現することができる。
<実施の形態6>
本実施の形態にかかるMCU100は、電圧異常のみならず他の異常をも考慮した構成であることを特徴とする。本実施の形態にかかるMCU100は、実施の形態5の拡張であるため、実施の形態5と異なる点を以下に説明する。
図13は、本実施の形態にかかる構成を示すブロック図である。MCU100は、図11の構成に加えてエラー出力回路180を備える。さらに、内部ロジック回路120は、通信IP127を備える。
本実施の形態では、制御対象回路400はシリアル通信が可能なメモリIP、例えばEEPROM(Electrically Erasable Programmable Read-Only Memory)である。通信IP127は、制御対象回路400(例えばEEPROM)とのデータ通信制御を行う。例えば通信IP127は、ポート入出力回路170及び端子144を介して制御対象回路400に対してACK等の制御信号を送信し、制御対象回路400からACKに対する応答があるか否かを判定する。ACKに対する応答が無かった場合、通信IP127は、通信エラー信号(S6)をハイレベルにしてエラー出力回路180に供給する。通信IP127は、ACK信号の他に制御対象回路400に対する書込みデータ、読み出しアドレス等のデータをポート入出力回路170を介して送信する。
エラー出力回路180には、MCU100内における異常を通知する全ての信号(図示しない信号も含む)が入力される。これらの通知信号は、異常であるか否かを示す2値信号である。エラー出力信号180は、これらの信号の論理積値を統合エラー信号(S1')として監視ASIC200に出力する。監視ASIC200は、統合エラー信号(S1')を基にエラー回数を比較する等の処理を行う。監視ASIC200は、端子231から端子リセット信号(S2)を端子141に入力するとともに制御対象回路400にも入力する。なお監視ASIC200は、制御対象回路400の用途や性質に応じて端子リセット信号(S2)を入力しない構成とすることもできる。
制御対象回路400は、端子リセット信号(S2)の入力に応じてリセット状態への遷移を行う。
続いて本実施の形態の効果について説明する。上述のようにMCU100は、内部ロジック回路120の電圧異常のみならず、EEPROM等の記憶装置との通信異常の場合であってもリセット状態に遷移する。このように様々な異常を考慮してリセットを行うため、MCU100は安全性の高い状態でのみ動作を行うことになる。安全性の高い状態でのみ動作を行うことにより、MCU100の動作の信頼性を向上させることができる。
さらにMCU監視ASIC200は、MCU100のリセットを行う端子リセット信号(S2)をMCU100の動作と関連する制御対象回路400にも入力する。これにより、制御対象回路400もMCU100の異常時にリセットが行われることになり、システム全体としての信頼性を高めることができる。
上述の説明では通信IP127が異常検出を行ったが必ずしもこれに限られず、他の異常検出を行っても良い。たとえばCPU121は、演算異常が生じているか否かを反転する定期プログラムを実行し、実行エラーが生じた場合にエラー出力回路160に通知しても良い。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更すること、及び各実施の形態を組み合わせることも可能である。例えば監視ASIC200は、MCU100の異常を検出した場合に他のMCUにより適宜必要なバックアップ処理を行うように指示信号を出力しても良い。
上述のMCU100は、例えば一般車両等の車載システムに用いられる。当該車載システムは、複数のMCU100を有し、各MCU100はアクセル駆動制御、ブレーキ制御、ドアミラー制御、テールランプ制御、ダッシュボード制御、ルームランプ制御等の様々な用途に用いられる。
さらにMCU100は、車載システムのみならず他の情報処理システムに適宜用いられても良いことは勿論である。例えばMCU100は、産業用ロボット等の制御等に用いられても良い。
100 MCU
110 MCUリセット制御回路
111 イベント保持回路
112 リセット信号統合回路
1121 インバータ
1122 OR回路
120 内部ロジック回路
121 CPU
122 記憶部
123−1、123−2、123−3 検出電圧設定レジスタ
1231 データ保持部
1232 バスIF部
124−1、124−2、124−3 エラーフラグレジスタ
1242 バスIF部
1243 データサンプリング部
127 通信IP
130 CVM
131−1、131−2、131−3 検出電圧設定レジスタ
1311 データ保持部
1312 バスIF部
132−1、132−2、132−3 基準電圧生成回路
133−1、133−2、133−3 電圧比較回路
134−1、134−2、134−3 エラーフラグレジスタ
1342 バスIF部
1343 イベント保持部
140〜144 端子
150−0〜150−12 レベルシフタ
160 OR回路
170 ポート入出力回路
171〜173 AND回路
174 インバータ
175 NOR回路
176 NAND回路
177 NMOS
178 PMOS
180 エラー出力回路
200 監視ASIC
210 エラー回数カウンタ
220 端子リセット制御回路
230、231 端子
300 MCU監視WDT
400 制御対象回路

Claims (10)

  1. 異常状態であるか否かを示す値が設定される第1レジスタを有する監視対象ロジック回路と、
    前記監視対象ロジック回路の異常検出を行い、検出時に異常通知を行うエラー検出信号を出力するとともに前記第1レジスタに異常を示す値を設定する動作監視回路と、
    前記エラー検出信号に応じて各回路をリセット状態に遷移させ、外部監視回路と接続する第1外部端子からのリセット解除信号の入力によって前記リセット状態の解除を行うリセット制御回路と、を備え、
    前記監視対象ロジック回路は、前記リセット状態の解除の際に前記第1レジスタを参照し、異常を示す値が設定されている場合に、内部の各機能が正常であるか否かを判定する自己診断プログラムを実行する、半導体装置。
  2. 前記監視対象ロジック回路と前記動作監視回路は、異なる動作電圧で動作し、
    前記動作監視回路は、前記監視対象ロジック回路の異常検出を行う検出部と、異常状態であるか否かを示す値が設定される第2レジスタと、を有し、
    前記検出部は、前記監視対象ロジック回路の異常検出時に、異常通知を行うエラー検出信号を出力するとともに異常を示す値を前記第2レジスタに入力し、
    前記第2レジスタは、入力された値を前記第1レジスタに入力する、請求項1に記載の半導体装置。
  3. 前記第2レジスタは、異常状態であるか否かを示す値が入力されるイベント保持部と、を有し、
    前記第1レジスタは、各制御信号やクロック信号に応じてデータ入出力に用いるラッチ信号を生成するデータインターフェイス部と、前記イベント保持部の出力値をサンプリングして取得するデータサンプリング部と、を備える、請求項2に記載の半導体装置。
  4. 前記監視対象ロジック回路は、前記自己診断プログラムの実行結果を所定の記憶部に書き込む、請求項1に記載の半導体装置。
  5. 前記監視ロジック回路は、前記自己診断プログラムの実行結果として前記記憶部の異常を検出した場合、外部システムにエラー通知を行う請求項4に記載の半導体装置。
  6. 前記動作監視回路は、
    前記監視対象ロジック回路の動作補償電圧の上限値よりも前記監視対象ロジック回路の動作電圧が高い場合に異常通知を行う前記エラー検出信号を出力する第1電圧比較回路と、
    前記監視対象ロジック回路の動作補償電圧の下限値よりも前記監視対象ロジック回路の動作電圧が低い場合に異常通知を行う前記エラー検出信号を出力する第2電圧比較回路と、を備える請求項1に記載の半導体装置。
  7. 前記リセット制御回路は、前記監視対象ロジック回路の動作電圧が前記監視対象ロジック回路の動作補償電圧の下限値よりも高くなったことを前記第2電圧比較回路が検出した場合、前記第1外部端子からの前記リセット解除信号によらずに前記リセット状態を解除する、請求項6に記載の半導体装置。
  8. 前記監視ロジック回路は、高電圧異常状態であるか否かを示す値が設定される第2レジスタを有し、
    前記動作監視回路は、
    前記監視対象ロジック回路の動作補償電圧の上限値より更に高い高電圧値よりも前記監視対象ロジック回路の動作電圧が高い場合に異常通知を行う前記エラー検出信号を出力するとともに前記第2レジスタに高電圧異常であることを設定する第3電圧比較回路を更に備え、
    前記監視ロジック回路は、前記リセット状態の解除の際に前記第1レジスタを参照し、異常を示す値が設定されている場合に、前記半導体装置の動作周波数を下げることを特徴とする請求項6に記載の半導体装置。
  9. 前記監視対象ロジック回路は、
    前記監視対象ロジック回路の動作検証を行うウォッチドッグタイマーに対し、通常動作時にウォッチドッグタイマークリア信号を出力する請求項1に記載の半導体装置。
  10. 請求項1〜請求項9のいずれか1項に記載の車載制御システム。
JP2012173239A 2012-08-03 2012-08-03 半導体装置 Pending JP2014032558A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012173239A JP2014032558A (ja) 2012-08-03 2012-08-03 半導体装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012173239A JP2014032558A (ja) 2012-08-03 2012-08-03 半導体装置

Publications (1)

Publication Number Publication Date
JP2014032558A true JP2014032558A (ja) 2014-02-20

Family

ID=50282333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012173239A Pending JP2014032558A (ja) 2012-08-03 2012-08-03 半導体装置

Country Status (1)

Country Link
JP (1) JP2014032558A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017062697A (ja) * 2015-09-25 2017-03-30 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
KR101826777B1 (ko) * 2016-09-12 2018-03-22 현대오트론 주식회사 마이크로컨트롤러 유닛 감시 장치 및 방법
US10006455B2 (en) 2015-04-24 2018-06-26 Fuji Electric Co., Ltd Drive control apparatus
JP2019054359A (ja) * 2017-09-14 2019-04-04 株式会社デンソーウェーブ 産業用制御装置
CN109917293A (zh) * 2017-12-13 2019-06-21 瑞萨电子株式会社 半导体器件

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10006455B2 (en) 2015-04-24 2018-06-26 Fuji Electric Co., Ltd Drive control apparatus
JP2017062697A (ja) * 2015-09-25 2017-03-30 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
KR101826777B1 (ko) * 2016-09-12 2018-03-22 현대오트론 주식회사 마이크로컨트롤러 유닛 감시 장치 및 방법
JP2019054359A (ja) * 2017-09-14 2019-04-04 株式会社デンソーウェーブ 産業用制御装置
CN109917293A (zh) * 2017-12-13 2019-06-21 瑞萨电子株式会社 半导体器件

Similar Documents

Publication Publication Date Title
JP2014032558A (ja) 半導体装置
US8996927B2 (en) Electronic control device with watchdog timer and processing unit to diagnose malfunction of watchdog timer
US9323595B2 (en) Microcontroller, control device and determination method
JP5126393B2 (ja) 車載電子制御装置
EP3460632B1 (en) Microcontroller and control method of the same
US20170131698A1 (en) Motor control device
JP6742899B2 (ja) 半導体装置
JP5094777B2 (ja) 車載用電子制御装置
JP6341795B2 (ja) マイクロコンピュータ及びマイクロコンピュータシステム
JP2012181564A (ja) 自己診断回路および自己診断方法
US20130325206A1 (en) Data processing device, microcontroller, and self-diagnosis method of data processing device
JP2014048849A (ja) 安全制御システム、及び安全制御システムのプロセッサ
JP5909423B2 (ja) 半導体装置
JP2014209312A (ja) 集積回路
JP5459370B2 (ja) 車載電子制御装置
JP2019121043A (ja) 車両制御システムおよび車両制御装置
JP2018134964A (ja) 自動車用電子制御装置
WO2015092991A1 (ja) 情報処理装置、情報処理装置の起動方法、及び情報処理装置の起動プログラム製品
JP4836844B2 (ja) リセット回路及びシステム
JP4613019B2 (ja) コンピュータシステム
JP2018097442A (ja) 電子制御装置
JP2015114847A (ja) 情報処理装置
JP5561329B2 (ja) 車載電子制御装置
JP6457149B2 (ja) 電子制御装置
WO2023079339A1 (en) Decision unit for fail operational sensors