JP2006079230A - 半導体回路装置及び暴走検出方法 - Google Patents

半導体回路装置及び暴走検出方法 Download PDF

Info

Publication number
JP2006079230A
JP2006079230A JP2004260519A JP2004260519A JP2006079230A JP 2006079230 A JP2006079230 A JP 2006079230A JP 2004260519 A JP2004260519 A JP 2004260519A JP 2004260519 A JP2004260519 A JP 2004260519A JP 2006079230 A JP2006079230 A JP 2006079230A
Authority
JP
Japan
Prior art keywords
instruction
address
processing unit
program
instruction processing
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.)
Granted
Application number
JP2004260519A
Other languages
English (en)
Other versions
JP4522799B2 (ja
Inventor
Kimitake Tsuyuno
公丈 露野
Masashi Tsubota
正志 坪田
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.)
NEC Electronics Corp
Original Assignee
NEC 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2004260519A priority Critical patent/JP4522799B2/ja
Priority to US11/214,977 priority patent/US7558990B2/en
Publication of JP2006079230A publication Critical patent/JP2006079230A/ja
Application granted granted Critical
Publication of JP4522799B2 publication Critical patent/JP4522799B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】
非実装空間への暴走を検出する。
【解決手段】
マイクロコンピュータ1は、CPU11におけるプログラム実行の暴走を検出し、復帰プログラムの実行を開始する。プログラム実行の暴走検出は、プログラム空間40における非実装空間42へのアクセスをモニタすることによって行われる。CPU11が非実装空間42のいずれか一つのアドレスへアクセスすると、予め定められた復帰プログラムを実行するようにCPU11へ指示を送る。これによって、非実装空間への暴走を検出し、暴走を止めることができる。
【選択図】 図2

Description

本発明は半導体回路装置及び暴走検出方法に関し、特に、命令処理部におけるプログラム実行における非実装空間への暴走検出に関する。
現在、パーソナルコンピュータなどのコンピュータ・システムに限らず、家電製品やOA機器、自動車や製造装置の制御装置など、多くの電子機器においてマイクロコンピュータが利用されている。マイクロコンピュータは、機能的要素として、命令やアドレスを含むデータを読み出して命令実行の結果に応じてマイクロコンピュータ全体を制御す制御部、算術演算や論理演算を実行する演算処理部、必要なデータを記憶するレジスタ・セットなどを備えている。また、各種装置の制御装置として実装される場合には、ROMやRAMなどのメモリの他、各種周辺機能などを備えている。マイクロコンピュータはプログラムに含まれる命令を順次解読し、それに従って処理を行うことで所望の機能を実現する。
命令はレジスタ・セットに含まれるプログラム・カウンタの示すアドレスからフェッチされる。例えば外部ノイズなどのためにプログラム・カウンタの値が変化すると、マイクロコンピュータは不測のアドレスにアクセスし、マイクロコンピュータのプログラム実行が暴走する問題が知られている。このため、マイクロコンピュータの暴走を自動的に検出し、暴走に対応した復帰処理を行うことが必要とされる。暴走検出の方法としては、これまでにいくつかのものが提案されている。例えば、ROMに記憶されているプログラムにTRAP命令を分散的に配置することによって暴走を検出し、TRAP処理によって所定の復帰プログラムを実行することができる。
この他、例えば特許文献1は、マイクロコンピュータの一つの暴走検出方法について開示している。特許文献1に開示されたマイクロコンピュータは暴走検出カウンタを備え、常にそれを動作させている。暴走検出カウンタがオーバーフローすると暴走と判定し、CPUに異常信号を出力する。マイクロコンピュータは、通常動作時の所定のタイミングで暴走検出カウンタをクリアする。これによって通常動作時に暴走検出カウンタがオーバーフローすることがなく、通常動作と異なる暴走を検出することができる。
具体的には、マイクロコンピュータはプログラムの実行アドレスを監視し、あらかじめ登録されたアドレスを実行していれば暴走検出カウンタのクリアを行なう。また、マイクロコンピュータの周辺ハードウェアの要因がすべて正しく機能している場合に、暴走検出用カウンタのクリアを行なう。暴走検出用カウンタのクリアは、ソフトウェア(プログラム)を介さずハードウェアによって直接に行われる。このように、暴走検出用カウンタのクリアをハードウェアで行なうことによって、プログラム実行の暴走中に誤ってプログラムが暴走検出カウンタをクリアすることを防止し、プログラム実行が暴走したときの暴走検出を確実に行なうことができる。
特開2004−151846号公報
CPUに与えられるプログラム空間は、ROMやRAMなどの実装ハードウェアに割り当てられた実装空間の他、実装されたハードウェアに対応付けられていない非実装空間間を含むことが典型的である。上記の従来技術にように、ROM内のプログラムにTRAP命令を配置することによっては、プログラムが記憶されていない非実装空間への暴走を検出することはできない。また、特許文献1のように正常なプログラム実行を検出し、それによって暴走検出カウンタをクリアする場合も同様である。このため、非実装空間への暴走を検出する方法が要求される。
本発明は上記のような事情を背景としてなされたものであって、本発明の目的は、プログラム空間の非実装空間へのプログラム実行の暴走を検出することである。本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるだろう。
以下に課題を解決するための手段を開示する。本項目において、いくつかの構成要素は、実施の形態において説明された構成要素と対応付けられている。しかし、この対応付けは発明の理解の容易のためになされたものであって、各要素は実施の形態の対応要素にのみ限定されるものでない。
本発明の第1の態様は、プログラムに従って処理を実行する命令処理部(例えばCPU11)を備え、この命令処理部におけるプログラム実行の暴走を検出する、半導体回路装置であって、前記命令処理部がアクセスするプログラム空間のアドレスを判定するアドレス判定部(例えばアドレス判定部152)を備え、前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して復帰処理を実行する。これによって、非実装空間への暴走を検出することができる。
前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して、前記命令処理部に予め定められた復帰プログラムに実行を移すことを指示する指示部(例えば命令発給部153)をさらに備え、前記命令処理部が前記復帰プログラムを実行することによって、前記復帰処理を実行することは、好ましい例の一つである。これによって、所望の復帰プログラムによる復帰処理を行うことができる。
前記アドレス判定部は、前記命令処理部が前記非実装空間に含まれる全てのアドレスのいずれかにアクセスしたかを判定し、前記命令処理部が前記非実装空間に含まれる全てのアドレスのいずれかにアクセスしたと前記アドレス判定部が判定したことに応答して、前記指示部は前記命令処理部に予め定められたプログラムに実行を移すことを指示することが好ましい。これによって、非実装空間への暴走を確実に検出することができる。
前記指示部は、前記命令処理部に割り込み要求を行うことによって、前記命令処理部に予め定められた復帰プログラムに実行を移すことを指示することは、好ましい例の一つである。これによって回路をシンプルにすることができる。
前記指示部は、前記非実装空間の一つもしくは複数のアドレスに対応付けられたレジスタ(例えば発給命令設定レジスタ151、第1の発給命令設定レジスタ521、第2の発給命令設定レジスタ522、第1の発給命令設定レジスタ621、第2の発給命令設定レジスタ622)をさらに備え、前記命令書処理部が前記一つもしくは複数のアドレスへアクセスしたと前記アドレス判定部が判定したことに応答して、前記レジスタに記憶されている命令を前記命令処理部に出力することが好ましい。これによって、アドレスに応じた命令によって回復処理を指示することができる。
前記レジスタ(例えば、発給命令設定レジスタ151あるいは第1及び第2の発給命令設定レジスタ521、522)は前記非実装空間の全てのアドレスに対応付けられていることが好ましい。これによって、非実装空間への暴走を確実に検出することができる。
前記非実装空間は複数のセグメントから構成されており、前記指示部は、それぞれが予め定められた復帰プログラムを示す命令を記憶する複数のレジスタ(例えば、第1の発給命令設定レジスタ521、第2の発給命令設定レジスタ522)を備え、前記複数のセグメントのそれぞれは、前記複数のレジスタのいずれか一つに対応づけられ、前記指示部は、前記命令処理部がアクセスしたアドレスに対応するレジスタに記憶されている命令を前記命令処理部に出力することが好ましい。これによって、アドレスに応じた命令によって回復処理を指示することができる。あるいは、前記判定部は、前記非実装空間の一部のアドレスへの前記命令処理部のアクセスを判定し、前記判定処理部がアクセスを判定しない前記非実装空間のアドレスに前記命令処理部がアクセスした場合、前記命令処理部に非分岐命令が出力されることが好ましい。これによって、非実装空間における一部のアドレスについてアクセス判定を確実に行うことができる。
本発明の第2の態様は、プログラムに従って処理を実行する命令処理部におけるプログラム実行の暴走を検出する、暴走検出方法であって、プログラム空間における非実装空間のアドレスへの前記命令処理部によるアクセスを判定し、前記非実装空間へアクセスしたとの判定に応答して、予め定められた復帰処理を実行する。これによって、非実装空間への暴走検出をより確実に行うことができる。
前記非実装空間のいずれか一つのアドレスにアクセスした場合に、前記命令処理部が前記非実装空間にアクセスしたと判定することが好ましい。これによって、非実装空間への暴走を確実に検出することができる。あるいは、前記非実装空間の予め定められた一部のアドレスにアクセスした場合に、前記命令処理部が前記非実装空間にアクセスしたと判定することができる。
前記非実装空間へアクセスしたとの判定に応答して、予め定められた復帰プログラムに実行を移すことを前記命令処理部に指示し、前記命令処理部において、前記指示に応答して前記復帰プログラムの実行を開始することが好ましい。これによって、所望の復帰プログラムによる復帰処理を行うことができる。
前記非実装空間のアクセスされたアドレスに対応づけられた命令によって、前記復帰プログラムに実行を移すことを前記命令処理部に指示し、前記命令処理部において、前記命令によって示された復帰プログラムを開始することが好ましい。これによって、暴走先のアドレス応じた復帰処理を行うことができる。
前記命令は、前記非実装空間の複数のアドレスに対応づけられていることが好ましい。これによって、非実装空間への暴走検出をより確実に行うことができる。
前記非実装空間の全てのアドレスが一つもしくは複数の命令に対応付けられており、前記非実装空間のアクセスされたアドレスに対応づけられた命令によって、前記復帰プログラムに実行を移すことを前記命令処理部に指示し、前記命令処理部において、前記命令によって示された復帰プログラムを開始することが好ましい。これによって、暴走先のアドレス応じた復帰処理を行うことができる。
割り込み要求によって、前記予め定められた復帰プログラムに実行を移すことを前記命令処理部に指示することが好ましい。これによって、回路構成をシンプルにすることができる。
本発明の第3の態様は、プログラムに従って処理を実行する命令処理部(例えばCPU11)を備え、この命令処理部におけるプログラム実行の暴走を検出する、半導体回路装置であって、前記命令処理部がアクセスするプログラム空間のアドレスを判定するアドレス判定部(例えばアドレス判定部152)と、前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して、前記命令処理部に予め定められたプログラムに実行を移すことを指示する指示部(例えば命令発給部153)と、を有する。これによって、非実装空間への暴走を検出し、それに応じた処理を行うことができる。
本発明によれば、プログラム空間の非実装空間へプログラム実行の暴走を検出することができる。
以下に、本発明を適用可能な実施の形態が説明される。以下の説明は、本発明の実施形態を説明するものであり、本発明が以下の実施形態に限定されるものではない。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、当業者であれば、以下の実施形態の各要素を、本発明の範囲において容易に変更、追加、変換することが可能である
実施の形態1.
本実施形態のマイクロコンピュータは、プロセッサ(本形態ではCPUとして示されている)におけるプログラム実行の暴走を検出し、復帰プログラムの実行を開始する。プログラム実行の暴走検出は、プログラム空間における非実装空間へのアクセスをモニタすることによって行われる。CPUが非実装空間のいずれか一つのアドレスへアクセスすると、予め定められた復帰プログラムを実行するようにCPUへ指示を送る。これによって、非実装空間への暴走を検出し、暴走を止めることができる。
本形態の暴走検出について詳しい説明を行う前に、まず、本形態のマイクロコンピュータのハードウェア構成について、その概略を説明する。図1は、本実施形態に係るマイクロコンピュータ1のハードウェア構成の概略を模式的に示すブロック図である。マイクロコンピュータ1は、外部バス3を介して、外部メモリ2などの外部回路と接続されており、外部回路とデータの入出力を行うことで、制御処理、演算処理などの所望の処理を実行する。
マイクロコンピュータ1は、命令処理部の一例であるCPU11、読み出し専用メモリであるROM12、任意のアドレスを指定してデータの読み書きすることが可能なRAM13、周辺回路との間のデータの入出力をインターフェースする周辺I/O回路14、CPU11の暴走を検出した場合にCPU11に所定の指示を行う命令発給ユニット15を備えている。各回路は内部バスを介して接続されており、各回路は、命令、アドレスあるいは演算データなどの各データを、内部バスを介して互いに入出力する。また、データの種類に応じた専用のバスが用意される。
CPU11は、レジスタ・セット111、制御部112、演算処理部113、バス・インターフェース114などの各回路を備えている。レジスタ・セット111は複数のレジスタからなり、命令やアドレスあるいは演算データを格納する。レジスタ・セット111には、演算データを格納するアキュムレータやプログラム実行アドレスを指示するプログラム・カウンタなどが含まれている。
制御部112は、ROM12などから命令をフェッチする命令フェッチ回路や、命令を解読する命令デコーダなどを備えている。制御部112は、ROM12やRAM13などから命令やアドレスを含むデータをレジスタに読み出し、命令実行の結果に応じてマイクロコンピュータ1全体を制御する。また、外部回路からの割り込み要求があった場合に、割り込み要因に応じた割り込み処理の制御を行う。演算処理部113は、加減算などの数値演算、AND・OR・NOTなどの論理演算及びシフト命令などを実行する。バス・インターフェース114は、外部回路と間のデータや命令の入出力をインターフェースする。
ROM12は、ユーザによって設定された命令や演算データを予め記憶している。ROM12としては、電源が切れても記憶データを保持する不揮発性メモリが使用され、例えば、フラッシュメモリなどのEEPROM(Electrically Erasable Read-Only Memory)を使用することができる。RAM13は揮発性の記憶デバイスであり、再書き込みが不要なSRAM、一定時間毎に再書き込みが必要なDRAMなどを使用することができる。
命令発給ユニット15は、CPU11のプログラム実行の暴走を検出し、暴走を検出した場合にCPU11に予め定められたプログラムの実行を指示する。具体的には、CPU11の命令フェッチ・アドレスを検出し、非実装空間におけるアドレスからの命令フェッチの場合に、CPU11に復帰プログラムの実行を指示する。CPU11のプログラム空間(CPU11に与えられているアドレス空間)のメモリ・マップを使用して、命令発給ユニット15による暴走検出の原理について説明する。
図2は、CPU11のプログラム空間のマッピング及び命令発給ユニット15による暴走検出を説明する図である。プログラム空間40はいくつかのセグメントに分割されている。各セグメントは、マイクロコンピュータ1あるいは外部回路に実装されているハードウェアに割り当てられた実装空間41と、対応するハードウェアが実装されていない非実装空間42に分けられる。実装空間41は、それぞれが固有のハードウェアに対応する複数のセグメントを備えている。図2においては、周辺I/O空間411、RAM空間412及びROM空間413が例示されている。
命令発給ユニット15は発給命令設定レジスタ151を備えており、発給命令設定レジスタ151には予め命令が記憶されている。例えば、JUMP命令やTRAP命令を発給命令設定レジスタ151に設定することができる。発給命令設定レジスタ151を備えることによって、ユーザが所望の命令をセットすることができる。JUMP命令及びTRAP命令によって、予め定められたプログラム、好ましくは復帰プログラムに処理を移す。
CPU11のプログラム実行が暴走し、CPU11が非実装空間42にアクセスすると、発給命令設定レジスタ151の命令がCPU11に入力される。上記のように、発給命令設定レジスタ151は非実装空間42の全てのアドレスに対応付けられているため、CPU11が非実装空間42のいずれか一つのアドレスにアクセスすると、そのアドレスに対応している発給命令設定レジスタ151の命令がCPU11にフェッチされる。発給命令設定レジスタ151は非実装空間42の全てのアドレスに対応付けられていることによって、非実装空間への暴走を迅速に検出することができる。
CPU11は、取得したJUMP命令あるいはTRAP命令に従って、ROM12に記憶されている復帰プログラムの実行を開始する。復帰プログラムは暴走が起きた場合に復帰処理を行うプログラムであり、例えば、リセット後のイニシャライズ処理やレジスタ・セット111に異常値がない場合に通常のメイン・ルーチンに処理を戻すなどの処理を、CPU11は復帰プログラムに従って行うことができる。このように、CPU11が非実装空間へアクセスしたことに応答して、CPU11に復帰プログラムを開始させることによって、非実装空間への暴走を検出し、暴走に応じた復帰処理を行うことができる。
予め設定された命令によってCPU11に復帰プログラムに処理を移すことを指示する他、命令発給ユニット15は、割り込み信号をCPU11に出力することによって、CPU11に復帰プログラムの開始を指示することができる。割り込み処理を使用することによって、レジスタを設けることが不要となり、回路構成を簡素化することができる。また、レジスタ内のデータの不測の変化による不具合を防止することができる。
次に、図3を参照して、命令発給ユニット15の詳細を説明する。図3は命令発給ユニット15の概略構成を示すブロック図である。命令発給ユニット15は、CPU11の命令フェッチ・アドレスを判定するアドレス判定部152、アドレス判定部152の判定結果に基づいてCPU11へ命令を発給する命令発給部153及び命令発給部153からの発給命令の出力を制御する出力制御部154を備えている。命令発給部153は、ユーザによって設定された命令を予め記憶する発給命令設定レジスタ151を備えている。
アドレス判定部152は、開始アドレス設定レジスタ155及び終了アドレス設定レジスタ156を備えている。図4に示すように、開始アドレス設定レジスタ155は非実装空間の開始アドレスを記憶し、終了アドレス設定レジスタ156は非実装空間の終了アドレスを記憶する。図5を参照して、アドレス判定部152はアドレス・バス上のアドレスをモニタし(S11)、CPU11の命令フェッチ・アドレスと、開始アドレス設定レジスタ155及び終了アドレス設定レジスタ156のアドレスと比較し、非実装空間の開始アドレスから終了アドレスまでのいずれかのアドレスであるかを判定する(S12)。
アドレス判定部152が、CPU11がアクセスしたアドレスが非実装空間のアドレスであると判定したことに応答して、命令発給部153は発給命令設定レジスタ151に記憶されている命令を出力制御部154に出力し、出力制御部154は、入力された命令をデータ・バスに出力する(S13)。CPU11はデータ・バス上の命令を取得し、この命令に従った処理を実行する。アドレス判定部152が、CPU11がアクセスしたアドレスが非実装空間のアドレスでないと判定した場合は、出力制御部154はデータ・バスにデータを出力せず、他のハードウェアからのデータがデータ・バスに出力される(S14)。
尚、命令発給部15はCPU11の外部に形成されているが、CPU11の内部に同様の機能を実装し、CPU11(制御部112)がプログラム・カウンタの値に応じてCPU11内部の所定レジスタから命令を取得することも可能である。本形態は発給命令設定レジスタの命令に従って回復処理を実行するが、これに限らず、内部リセットあるいは外部回路からのリセット(外部リセット)によって、回復処理を行うことができる。外部リセットの場合、例えば、アドレス判定部152の判定結果を外部に出力し、その信号に応答して外部からリセットを行う構成とすることができる。また、本発明は、MPU、周辺用LSI(MPR:Micro Peripheral Unit)、マイクロコントローラ、DSP(Digital Signal Processor)など、いずれのタイプのマイクロコンピュータに適用することも可能である。本形態においては、発給命令設定レジスタに命令を記憶するが、この命令をROM12やRAM13に記憶しておくことも可能である。これらの点は、以下の実施形態において同様である。
実施の形態2.
図6〜9を参照して、第2の実施形態に係るマイクロコンピュータについて説明する。本形態のマイクロコンピュータは、第1の実施形態に係るマイクロコンピュータ1とは異なる命令発給ユニットを備え、他の構成については同様である。従って、本形態においては、命令発給ユニットの構成について説明し、他の構成についての説明を省略する。本形態の命令発給ユニットは、複数の発給命令設定レジスタを備えており、非実装空間の異なるセグメントにそれぞれ対応する。これによって、暴走先のアドレスに応じて異なる復帰プログラムを設定することが可能となる。
図6は、本形態のCPUのプログラム空間40のマッピング及び命令発給ユニットによる暴走検出を説明する図である。本形態の命令発給ユニットは複数の発給命令設定レジスタを備えている。図6においては、第1の発給命令設定レジスタ521と第2の発給命令設定レジスタ522の2つの発給命令設定レジスタが例示されている。非実装空間42は2つのセグメントに分割されており、第1のセグメント421が第1の発給命令設定レジスタ521に、第2のセグメント422が第2の発給命令設定レジスタ522にそれぞれ対応している。
第1及び第2の発給命令設定レジスタ521、522には、同一もしくは異なる命令を設定することができる。好ましくは、図6に示すように、セグメントに応じてCPU11が異なる復帰アドレスを実行するように、各発給命令設定レジスタ521、522に命令が設定される。設定する命令は、実施の形態1と同様に、JUMP命令あるいはTRAP命令を利用することができる。図6の例においては、第1のセグメント421への暴走の場合には、第1の復帰プログラムにCPU11の処理が移され、第2のセグメント422への暴走の場合には、第2の復帰プログラムにCPU11の処理が移される。
第1の発給命令設定レジスタ521は第1のセグメント421の全てのアドレスに対応付けら、第2の発給命令設定レジスタ522は第2のセグメント422の全てのアドレスに対応付けられている。従って、CPU11のプログラム実行の暴走先が第1のセグメント421のいずれかのアドレスである場合、第1の発給命令設定レジスタ521に記憶されている命令が、CPU11にフェッチされる。一方、CPU11のプログラム実行の暴走先が第2のセグメント422のいずれかのアドレスである場合、第2の発給命令設定レジスタ522に記憶されている命令が、CPU11にフェッチされる。CPU11は、フェッチした命令に従って、第1の復帰プログラムもしく第2の復帰プログラムの実行を開始する。
また、命令に代えて、割り込み要求によってCPU11に所定プログラムの処理の実行を指示することも可能である。命令発給ユニット50は、セグメントに応じて異なる番号の割り込み要求をCPU11に行う。CPU11は、割り込み番号に応じた割り込み処理を実行する。これによって、暴走先に応じて異なる復帰処理の指示をCPU11に行うことができる。
図7は、本実施形態に係る命令発給ユニット50の構成の概略を示すブロック図である。命令発給ユニット50は、アドレス判定部51、命令発給部52及び出力制御部154を備えている。出力制御部154については実施の形態1において説明したので、ここでは説明を省略する。本形態のアドレス判定部51は、第1、第2及び第3のアドレス設定レジスタ511、512、513の3つのアドレス設定レジスタを備えている。図8のメモリ・マップに示すように、第1のアドレス設定レジスタ511は第1のセグメント421の開始アドレスを記憶し、第2のアドレス設定レジスタ512は第1のセグメント421の終了アドレス(第2セグメントの開始アドレスにも対応する)を記憶し、第3のアドレス設定レジスタ513は第2のセグメント422の終了アドレスを記憶している。
命令発給部52は、第1の発給命令設定レジスタ521及び第2の発給命令設定レジスタ522を備えている。各発給命令設定レジスタ521、522に予め設定されている命令は上記に説明した通りであり、第1もしくは第2の復帰プログラムへ処理を移すための、JUMP命令あるいはTRAP命令などを記憶している。
図9を参照して、アドレス判定部51は、CPU11がアドレス・バスに乗せる命令フェッチ・アドレスをモニタし(S21)、命令フェッチ・アドレスが非実装空間42に含まれるか否かを判定する。具体的には、アドレス・バス上の命令フェッチ・アドレスを取得し、各アドレス設定レジスタ511、512、513に記憶されているアドレス値と比較する。これによって、命令フェッチ・アドレスが、非実装空間42の第1のセグメント421もしくは第2のセグメント422にアクセスしたか否かを判定する(S22)。尚、命令フェッチ・アドレスが第2のアドレス設定レジスタ512の値と一致する場合は、第1のセグメント421もしくは第2のセグメント422のいずれかとする。
アドレス判定部51が、命令フェッチ・アドレスが第1のセグメント421に含まれると判定した場合、命令発給部52は、第1の発給命令設定レジスタ521に予め設定されている命令を出力制御部154に出力する(S23)。出力制御部154は、アドレス判定部51が命令フェッチ・アドレスと非実装空間のいずれか一つのアドレスとが一致すると判定した場合、命令発給部52から取得した命令をデータ・バスに出力する。CPU11はデータ・バス上の命令を取得し、それに従って第1の復帰プログラムによる処理を開始する。
アドレス判定部51が、CPU11からの命令フェッチ・アドレスが第2のセグメント422に含まれると判定した場合、命令発給部52は、第2の発給命令設定レジスタ522に予め設定されている命令を出力制御部154に出力する(S24)。出力制御部154は、アドレス判定部51が命令フェッチ・アドレスと非実装空間のいずれか一つのアドレスとが一致すると判定した場合、命令発給部52から取得した命令をデータ・バスに出力する。CPU11はデータ・バス上の命令を取得し、それに従って第2の復帰プログラムによる処理を開始する。
アドレス判定部51が、命令フェッチ・アドレスが非実装空間に含まれていない、つまり、第1及び第2のセグメント421、422のいずれにも命令フェッチ・アドレスが含まれないと判定した場合、出力制御部154はデータ・バスにデータを出力せず、他のハードウェアからのデータがデータ・バスに出力される(S25)。上記のように、本実施形態によれば、非実装空間のセグメントに対応付けられた複数の発給命令設定レジスタを用意することによって、セグメントに応じた指示をCPU11に行うことができる。特に、非実装空間のアドレスに応じた異なる復帰処理を選択することが可能となる。
尚、本実施形態は2つのセグメントの分割する例を示したが、3以上のセグメントに分割することも可能である。本実施形態は連続する非実装空間を2つのセグメントに分割する例を示したが、非実装空間が離間した領域から構成されている場合にも、複数のセグメントに分割して制御することができる。一つのセグメントは、一つのアドレスから構成されることも可能である。一つの発給命令設定レジスタを複数の異なるセグメントに対応付けることも可能である。セグメントに応じて、命令による指示あるいは割り込み要求による指示を使い分けることも可能である。例えば、第1のセグメントでは命令を使用し、第2のセグメントでは割り込み要求を使用する。
本実施形態においては、非実装空間の全てのアドレスが発給命令設定レジスタと対応付けられているが、非実装空間の一部のアドレスについては対応付けを行わず、非実装空間内から選択された一部のアドレスと発給命令設定レジスタと対応付けることも可能である。例えば、非実装空間を3つのセグメントに分割し、そのうちの2つのセグメントをそれぞれ異なる発給命令設定レジスタと対応付け、一つのセグメントは発給命令設定レジスタと対応付けないことができる。
実施の形態3.
図10〜13を参照して、第3の実施形態に係るマイクロコンピュータについて説明する。本形態のマイクロコンピュータは、第2の実施形態に係るマイクロコンピュータ1とは異なる命令発給ユニットを備え、他の構成については同様である。従って、本形態においては、命令発給ユニットの構成について説明し、他の構成についての説明を省略する。本形態の命令発給ユニットは、第2の実施形態と同様に複数の発給命令設定レジスタを備えているが、各発給命令設定レジスタは非実装空間の異なるアドレスにそれぞれ対応する。これによって、暴走先のアドレスに応じて異なる復帰プログラムを設定することが可能となる。
図10は、本形態のCPUのプログラム空間40のマッピング及び命令発給ユニットによる暴走検出を説明する図である。本形態の命令発給ユニットは複数の発給命令設定レジスタを備えている。図10においては、第1の発給命令設定レジスタ621と第2の発給命令設定レジスタ622の2つの発給命令設定レジスタが例示されている。第1の発給命令設定レジスタ621は非実装空間42の第1のアドレスと対応し、第2の発給命令設定レジスタ622は非実装空間42の第2のアドレスと対応している。
第1及び第2の発給命令設定レジスタ621、622には、同一もしくは異なる命令を設定することができる。好ましくは、図10に示すように、アドレスに応じてCPU11が異なる復帰アドレスを実行するように、各発給命令設定レジスタ621、622に命令が設定される。設定する命令は、実施の形態2と同様に、JUMP命令あるいはTRAP命令を利用することができる。図10の例においては、暴走によって第1のアドレスへのアクセスがあった場合には、第1の復帰プログラムにCPU11の処理が移され、第2のアドレスへのアクセスがあった場合には、第2の復帰プログラムにCPU11の処理が移される。実施の形態2と同様に、命令に代えて、割り込み要求によってCPU11に所定プログラムの処理の実行を指示することも可能である。命令発給ユニットは、アドレスに応じて異なる番号の割り込み要求をCPU11に行う。
図11は、本実施形態に係る命令発給ユニット60の構成の概略を示すブロック図である。命令発給ユニット60は、アドレス判定部61、命令発給部62及び出力制御部154を備えている。出力制御部154については実施の形態1と同様である。本形態のアドレス判定部61は、第1及び第2のアドレス設定レジスタ611、612を備えている。図12のメモリ・マップに示すように、第1のアドレス設定レジスタ611は非実装空間内の第1のアドレス記憶し、第2のアドレス設定レジスタ612は非実装空間内の第2のアドレスを記憶している。
命令発給部62は、第1の発給命令設定レジスタ621及び第2の発給命令設定レジスタ622を備えている。各発給命令設定レジスタ621、622に予め設定されている命令は上記に説明した通りであり、第1もしくは第2の復帰プログラムへ処理を移すための、JUMP命令あるいはTRAP命令などを記憶している。
図13を参照して、アドレス判定部61は、CPU11がアドレス・バスに乗せる命令フェッチ・アドレスをモニタし(S31)、命令フェッチ・アドレスが非実装空間42の予め設定されたアドレスと一致するかを判定する(S32)。具体的には、アドレス・バス上の命令フェッチ・アドレスを取得し、各アドレス設定レジスタ611、612に記憶されているアドレス値と比較する。アドレス判定部61が、命令フェッチ・アドレスが第1のアドレスと一致すると判定した場合、命令発給部62は、第1の発給命令設定レジスタ621に予め設定されている命令を出力制御部154に出力する(S33)。出力制御部154は、アドレス判定部61が命令フェッチ・アドレスと第1のアドレスが一致すると判定したことに応答して、命令発給部62から取得した命令をデータ・バスに出力する。CPU11はデータ・バス上の命令を取得し、それに従って第1の復帰プログラムによる処理を開始する。
アドレス判定部61が、CPU11からの命令フェッチ・アドレスが第2のアドレスと一致すると判定した場合、命令発給部62は、第2の発給命令設定レジスタ622に予め設定されている命令を出力制御部154に出力する(S34)。出力制御部154は、アドレス判定部61が命令フェッチ・アドレスと第2のアドレスとが一致すると判定したことに応答して、命令発給部62から取得した命令をデータ・バスに出力する。CPU11はデータ・バス上の命令を取得し、それに従って第2の復帰プログラムによる処理を開始する。
アドレス判定部51が、第1及び第2のセグメントアドレスのいずれにも命令フェッチ・アドレス一致しないと判定した場合、出力制御部154はデータ・バスにデータを出力せず、他のハードウェアからのデータがデータ・バスに出力される(S35)。非実装空間内のアドレスであって、第1及び第2のアドレスと異なるアドレスに暴走よってアクセスした場合、データ・バスにはAND、ORあるいはNOP命令など、分岐しないでアドレスを順に実効していく非分岐命令が出力される。この非分岐命令は命令発給部もしくはその他の回路構成によってデータ・バス上に出力される。上記のように、本実施形態によれば、非実装空間のアドレスに対応付けられた複数の発給命令設定レジスタを用意することによって、アドレスに応じた指示をCPU11に行うことができる。特に、非実装空間のアドレスに応じた異なる復帰処理を選択することが可能となる。
尚、本実施形態は2つのアドレスを示したが、3以上のアドレスを発給命令設定レジスタに対応付けることが可能である。一つの発給命令設定レジスタを複数の異なるアドレスに対応付けることも可能である。アドレスに応じて、命令による指示あるいは割り込み要求による指示を使い分けることも可能である。例えば、第1のアドレスでは命令を使用し、第2のアドレスでは割り込み要求を使用することができる。
その他の実施形態.
図14及び図15を参照して、第4の実施形態に係るマイクロコンピュータについて説明する。本形態のマイクロコンピュータは、実施の形態1のマイクロコンピュータ1と異なり、バス構成がそれぞれ独立し、バスがバス制御ユニットによって制御される。また、命令発給ユニットは、バス制御ユニットに内蔵されている。
図14は、本形態のマイクロコンピュータ7の概略構成を示すブロック図である。マイクロコンピュータ7は、CPU11、ROM12、RAM13、周辺I/O14の他、バス制御を行うバス制御ユニット71と、外部バスとのインターフェースを行う外部バスI/F72とを備えている。命令発給ユニット73は、バス制御ユニット71に内蔵されている。CPU11、ROM12、RAM13及び周辺I/O14の各構成いついては、上に説明された他の実施形態と同様の構成を採用することができるので説明を省略する。
CPU11及びROM12は、フェッチ・バス741に接続され、RAM13はRAMバスに接続されている。また、周辺I/O14はシステム・バス742に接続されている。外部I/Fはシステム・バス742及び外部バス743に接続されている。バス制御ユニット71は全ての内部バスに接続されており、つまり、フェッチ・バス741、RAMバス742及びシステム・バス743に接続されている。
図15は命令発給ユニット73の概略構成を示すブロック図である。命令発給ユニット73は、アドレス判定部731、命令発給部732及び出力制御部734を備えている。アドレス判定部731、命令発給部732の各構成については、上記他の実施形態と同様の構成を採用することができるので詳細な説明を省略する。
出力制御部734は、フェッチ・バスのアドレス・バス745上のアドレスについてのアドレス判定部731の判定結果に基づいて、フェッチ・バスのデータ・バス744への出力を制御する。出力制御部734は、命令発給部732及びバス選択部75に接続されている。バス選択部75は、フェッチ・バスのアドレス・バス745のアドレスに応じて、データ・バス744へ接続する内部バスをRAMバス742及びシステム・バス743から選択する。
出力制御部734はセレクタを備え、アドレス判定部731の判定結果に応じて、命令発給部732からの出力もしくはバス選択部75(内部バス)からの出力を選択的にフェッチ・バス741に出力する。命令発給部732が動作するアドレスの場合は、出力制御部734は命令発給部732からの出力を選択し、フェッチ・バスのデータ・バス744に出力する。それ以外のアドレスの場合、出力制御部734はバス選択部75からの出力を選択し、RAMバス742もしくはシステム・バス743とフェッチ・バスのデータ・バス744との中継を行う。
第1の実施形態に係るマイクロコンピュータのハードウェア構成の概略を模式的に示すブロック図。 第1の実施形態に係るCPUのプログラム空間のマッピング及び命令発給ユニットによる暴走検出を説明する図。 第1の実施形態に係る命令発給ユニットの概略構成を示すブロック図。 第1の実施形態に係るプログラム空間のマッピングを示す図。 第1の実施形態に係る暴走検出処理のフローチャート。 第2の実施形態に係るCPUのプログラム空間のマッピング及び命令発給ユニットによる暴走検出を説明する図。 第2の実施形態に係る命令発給ユニットの概略構成を示すブロック図。 第2の実施形態に係るプログラム空間のマッピングを示す図。 第2の実施形態に係る暴走検出処理のフローチャート。 第3の実施形態に係るCPUのプログラム空間のマッピング及び命令発給ユニットによる暴走検出を説明する図。 第3の実施形態に係る命令発給ユニットの概略構成を示すブロック図。 第3の実施形態に係るプログラム空間のマッピングを示す図。 第3の実施形態に係る暴走検出処理のフローチャート。 その他の実施形態に係るマイクロコンピュータの概略構成を示すブロック図。 その他の実施形態に係る命令発給ユニットの概略構成を示すブロック図。
符号の説明
1 マイクロコンピュータ、2 外部メモリ、3 外部バス、
7 マイクロコンピュータ、14 周辺I/O回路、15 命令発給ユニット、
15 命令発給部、40 プログラム空間、41 実装空間、42 非実装空間、
50 命令発給ユニット、51 アドレス判定部、52 命令発給部、
60 命令発給ユニット、61 アドレス判定部、62 命令発給部、
71 バス制御ユニット、73 命令発給ユニット、75 バス選択部、
111 レジスタ・セット、112 制御部、113 演算処理部、
114 バス・インターフェース、151 発給命令設定レジスタ、
152 アドレス判定部、153 命令発給部、154 出力制御部、
155 開始アドレス設定レジスタ、156 終了アドレス設定レジスタ、
411 周辺I/O空間、412 RAM空間、413 ROM空間、
421 第1のセグメント、422 第2のセグメント、
511 第1のアドレス設定レジスタ、512 第2のアドレス設定レジスタ、
513 第3のアドレス設定レジスタ、521 第1の発給命令設定レジスタ、
522 第2の発給命令設定レジスタ、611 アドレス設定レジスタ、
611 各アドレス設定レジスタ、612 アドレス設定レジスタ、
621 第1の発給命令設定レジスタ、622 第2の発給命令設定レジスタ、
731 アドレス判定部、732 命令発給部、734 出力制御部、
741 フェッチ・バス、742 システム・バス、742 RAMバス、
743 システム・バス、743 外部バス、744 データ・バス、
745 アドレス・バス

Claims (17)

  1. プログラムに従って処理を実行する命令処理部を備え、この命令処理部におけるプログラム実行の暴走を検出する、半導体回路装置であって、
    前記命令処理部がアクセスするプログラム空間のアドレスを判定するアドレス判定部を備え、
    前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して復帰処理を実行する、半導体回路装置。
  2. 前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して、前記命令処理部に予め定められた復帰プログラムに実行を移すことを指示する指示部をさらに備え、
    前記命令処理部が前記復帰プログラムを実行することによって、前記復帰処理を実行する、
    請求項1に記載の半導体回路装置。
  3. 前記アドレス判定部は、前記命令処理部が前記非実装空間に含まれる全てのアドレスのいずれかにアクセスしたかを判定し、
    前記命令処理部が前記非実装空間に含まれる全てのアドレスのいずれかにアクセスしたと前記アドレス判定部が判定したことに応答して、前記指示部は前記命令処理部に予め定められたプログラムに実行を移すことを指示する、
    請求項2に記載の半導体回路装置。
  4. 前記指示部は、前記命令処理部に割り込み要求を行うことによって、前記命令処理部に予め定められた復帰プログラムに実行を移すことを指示する、請求項2に記載の半導体回路装置。
  5. 前記指示部は、前記非実装空間の一つもしくは複数のアドレスに対応付けられたレジスタをさらに備え、前記命令処理部が前記一つもしくは複数のアドレスへアクセスしたと前記アドレス判定部が判定したことに応答して、前記レジスタに記憶されている命令を前記命令処理部に出力する、請求項2に記載の半導体回路装置。
  6. 前記レジスタは前記非実装空間の全てのアドレスに対応付けられている、請求項5に記載の半導体回路装置。
  7. 前記非実装空間は複数のセグメントから構成されており、
    前記指示部は、それぞれが予め定められた復帰プログラムを示す命令を記憶する複数のレジスタを備え、
    前記複数のセグメントのそれぞれは、前記複数のレジスタのいずれか一つに対応づけられ、
    前記指示部は、前記命令処理部がアクセスしたアドレスに対応するレジスタに記憶されている命令を前記命令処理部に出力する、
    請求項2に記載の半導体回路装置。
  8. 前記判定部は、前記非実装空間の一部のアドレスへの前記命令処理部のアクセスを判定し、
    前記判定処理部がアクセスを判定しない前記非実装空間のアドレスに、前記命令処理部がアクセスした場合、前記命令処理部に非分岐命令が出力される、
    請求項1に記載の半導体回路装置。
  9. プログラムに従って処理を実行する命令処理部におけるプログラム実行の暴走を検出する、暴走検出方法であって、
    プログラム空間における非実装空間のアドレスへの前記命令処理部によるアクセスを判定し、
    前記非実装空間へアクセスしたとの判定に応答して、予め定められた復帰処理を実行する、
    暴走検出方法。
  10. 前記非実装空間のいずれか一つのアドレスにアクセスした場合に、前記命令処理部が前記非実装空間にアクセスしたと判定する、請求項9に記載の暴走検出方法。
  11. 前記非実装空間の予め定められた一部のアドレスにアクセスした場合に、前記命令処理部が前記非実装空間にアクセスしたと判定する、請求項9に記載の暴走検出方法。
  12. 前記非実装空間へアクセスしたとの判定に応答して、予め定められた復帰プログラムに実行を移すことを前記命令処理部に指示し、
    前記命令処理部において、前記指示に応答して前記復帰プログラムの実行を開始する、
    請求項9に記載の暴走検出方法。
  13. 前記非実装空間のアクセスされたアドレスに対応づけられた命令によって、前記復帰プログラムに実行を移すことを前記命令処理部に指示し、
    前記命令処理部において、前記命令によって示された復帰プログラムを開始する、
    請求項12に記載の暴走検出方法。
  14. 前記命令は、前記非実装空間の複数のアドレスに対応づけられている、請求項13に記載の暴走検出方法。
  15. 前記非実装空間の全てのアドレスが一つもしくは複数の命令に対応付けられており、
    前記非実装空間のアクセスされたアドレスに対応づけられた命令によって、前記復帰プログラムに実行を移すことを前記命令処理部に指示し、
    前記命令処理部において、前記命令によって示された復帰プログラムを開始する、
    請求項12に記載の暴走検出方法。
  16. 割り込み要求によって、前記予め定められた復帰プログラムに実行を移すことを前記命令処理部に指示する、請求項12に記載の暴走検出方法。
  17. プログラムに従って処理を実行する命令処理部を備え、この命令処理部におけるプログラム実行の暴走を検出する、半導体回路装置であって、
    前記命令処理部がアクセスするプログラム空間のアドレスを判定するアドレス判定部と、
    前記アドレス判定部が、前記命令処理部が非実装空間のアドレスにアクセスしたと判定したことに応答して、前記命令処理部に予め定められたプログラムに実行を移すことを指示する指示部と、
    を有する半導体回路装置。
JP2004260519A 2004-09-08 2004-09-08 半導体回路装置及び暴走検出方法 Expired - Fee Related JP4522799B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004260519A JP4522799B2 (ja) 2004-09-08 2004-09-08 半導体回路装置及び暴走検出方法
US11/214,977 US7558990B2 (en) 2004-09-08 2005-08-31 Semiconductor circuit device and method of detecting runaway

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004260519A JP4522799B2 (ja) 2004-09-08 2004-09-08 半導体回路装置及び暴走検出方法

Publications (2)

Publication Number Publication Date
JP2006079230A true JP2006079230A (ja) 2006-03-23
JP4522799B2 JP4522799B2 (ja) 2010-08-11

Family

ID=35997556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004260519A Expired - Fee Related JP4522799B2 (ja) 2004-09-08 2004-09-08 半導体回路装置及び暴走検出方法

Country Status (2)

Country Link
US (1) US7558990B2 (ja)
JP (1) JP4522799B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154459A (ja) * 2010-01-26 2011-08-11 Renesas Electronics Corp コンピュータシステムのプログラム異常動作検出装置
JP2014085770A (ja) * 2012-10-22 2014-05-12 Toyota Motor Corp 情報処理装置
US9080661B2 (en) 2011-12-28 2015-07-14 Aisin Aw Co., Ltd. Vehicle control device and method

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7219264B2 (en) * 2003-05-09 2007-05-15 Tekelec Methods and systems for preserving dynamic random access memory contents responsive to hung processor condition
US7269758B2 (en) * 2004-01-20 2007-09-11 International Business Machines Corporation Method and system for identifying runaway software agents
JP4893427B2 (ja) * 2006-06-30 2012-03-07 株式会社デンソー マイクロコンピュータシステム
KR20120085810A (ko) * 2009-10-15 2012-08-01 가부시키가이샤 엘이테크 마이크로 컴퓨터 및 그 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63184848A (ja) * 1987-01-27 1988-07-30 Nec Corp マイクロプロセツサ
JPH06139084A (ja) * 1992-10-26 1994-05-20 Mitsubishi Electric Corp 情報処理装置
JPH08218454A (ja) * 1995-02-16 1996-08-27 Matsushita Electric Works Ltd 給水制御装置
JPH08278902A (ja) * 1995-04-07 1996-10-22 Nippon Steel Corp プログラム暴走検出装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE441872B (sv) * 1984-04-06 1985-11-11 Ericsson Telefon Ab L M Anordning for overvakning av ett databehandlingssystem
US4584666A (en) * 1984-06-21 1986-04-22 Motorola, Inc. Method and apparatus for signed and unsigned bounds check
JPH06105440B2 (ja) * 1990-03-08 1994-12-21 株式会社日立製作所 主メモリ管理方法
US5564030A (en) * 1994-02-08 1996-10-08 Meridian Semiconductor, Inc. Circuit and method for detecting segment limit errors for code fetches
US6047388A (en) * 1997-04-09 2000-04-04 International Business Machines Corporation Method and apparatus for processing an invalid address request
US6049876A (en) * 1998-02-09 2000-04-11 Motorola, Inc. Data processing system and method which detect unauthorized memory accesses
US6842811B2 (en) * 2000-02-24 2005-01-11 Pts Corporation Methods and apparatus for scalable array processor interrupt detection and response
US6985848B2 (en) * 2000-03-02 2006-01-10 Texas Instruments Incorporated Obtaining and exporting on-chip data processor trace and timing information
US6745346B2 (en) * 2000-12-08 2004-06-01 Intel Corporation Method for efficiently identifying errant processes in a computer system by the operating system (OS) for error containment and error recovery
US20030028696A1 (en) * 2001-06-01 2003-02-06 Michael Catherwood Low overhead interrupt
JP2004151846A (ja) 2002-10-29 2004-05-27 Matsushita Electric Ind Co Ltd 暴走検出装置
US7165018B2 (en) * 2002-11-22 2007-01-16 Texas Instruments Incorporated Address range comparator for detection of multi size memory accesses with data matching qualification and full or partial overlap
US7117398B2 (en) * 2002-11-22 2006-10-03 Texas Instruments Incorporated Program counter range comparator with equality, greater than, less than and non-equal detection modes
US20050283770A1 (en) * 2004-06-18 2005-12-22 Karp Alan H Detecting memory address bounds violations

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63184848A (ja) * 1987-01-27 1988-07-30 Nec Corp マイクロプロセツサ
JPH06139084A (ja) * 1992-10-26 1994-05-20 Mitsubishi Electric Corp 情報処理装置
JPH08218454A (ja) * 1995-02-16 1996-08-27 Matsushita Electric Works Ltd 給水制御装置
JPH08278902A (ja) * 1995-04-07 1996-10-22 Nippon Steel Corp プログラム暴走検出装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154459A (ja) * 2010-01-26 2011-08-11 Renesas Electronics Corp コンピュータシステムのプログラム異常動作検出装置
US9080661B2 (en) 2011-12-28 2015-07-14 Aisin Aw Co., Ltd. Vehicle control device and method
JP2014085770A (ja) * 2012-10-22 2014-05-12 Toyota Motor Corp 情報処理装置

Also Published As

Publication number Publication date
US7558990B2 (en) 2009-07-07
US20060053350A1 (en) 2006-03-09
JP4522799B2 (ja) 2010-08-11

Similar Documents

Publication Publication Date Title
US9733950B2 (en) Boot sequencing for multi boot devices
US7558990B2 (en) Semiconductor circuit device and method of detecting runaway
JP2004334486A (ja) ブートコードを用いた起動システム、及び起動方法
JP2009266085A (ja) データ処理装置及びデータ処理装置におけるアクセス制御方法
JP5999216B2 (ja) データ処理装置
JP2008033890A (ja) マイクロコンピュータシステム
JP2000322264A (ja) 電子機器
JP2007299227A (ja) 情報処理装置及び情報処理装置のブート方法
JP2006221606A (ja) データプロセッサ
EP3428799B1 (en) Data access device and access error notification method
WO2007049423A1 (ja) コンピュータシステム、及びそれにおける基本プログラムの起動方法
JP4571462B2 (ja) マイクロコンピュータ
JP4829618B2 (ja) マイクロコンピュータ
JP5071943B2 (ja) 電子制御装置およびプログラム起動切替方法
JP2005018650A (ja) 不揮発性半導体記憶装置およびデータ処理装置
JP5949330B2 (ja) 情報処理装置、情報処理方法
JP2002541582A (ja) エミュレータシステム内のユーザメモリを更新する方法およびシステム
JP5915624B2 (ja) 電子制御装置
JPH1153174A (ja) 計算機及びプログラム実行方法
JP2006313421A (ja) マイクロコンピュータ及びそのデバッグ方法
JP2006099654A (ja) 半導体回路装置
JP2001256061A (ja) 情報記憶装置
JP3127737B2 (ja) ディジタル信号処理装置
JP2003162418A (ja) 割込み起動方法及び情報処理装置
JP2001075798A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100525

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100526

R150 Certificate of patent or registration of utility model

Ref document number: 4522799

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140604

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees