JP2001134467A - 内部バス情報取得方法および内部バス情報取得装置 - Google Patents

内部バス情報取得方法および内部バス情報取得装置

Info

Publication number
JP2001134467A
JP2001134467A JP31721399A JP31721399A JP2001134467A JP 2001134467 A JP2001134467 A JP 2001134467A JP 31721399 A JP31721399 A JP 31721399A JP 31721399 A JP31721399 A JP 31721399A JP 2001134467 A JP2001134467 A JP 2001134467A
Authority
JP
Japan
Prior art keywords
internal bus
information
address
bus
count value
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
JP31721399A
Other languages
English (en)
Inventor
Shohei Maeda
昇平 前田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP31721399A priority Critical patent/JP2001134467A/ja
Priority to US09/553,448 priority patent/US6704896B1/en
Publication of JP2001134467A publication Critical patent/JP2001134467A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • 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
    • 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/079Root cause analysis, i.e. error or fault diagnosis

Abstract

(57)【要約】 【課題】 マイクロコンピュータのチップの外部からメ
モリとCPUとの間のデータの授受を直接的にモニタす
ることはできないので、プログラム中でメモリが誤動作
した箇所を特定することは手間がかかるという課題があ
った。 【解決手段】 内部バス情報取得方法において、問題と
なるメモリアクセスについての処理対象アドレスを割り
込み処理プログラムを実行してレジスタに設定するステ
ップ(ST1)と、アドレスが一致したことをトリガと
して、内部バス上に出力された情報をラッチするステッ
プ(ST3)と、ラッチされた情報を読み取るステップ
(ST4)とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、マイクロコンピ
ュータ内部のメモリの不具合箇所を特定することを支援
するために内部バス上に出力された情報を取得する内部
バス情報取得方法および内部バス情報取得装置に関する
ものである。
【0002】
【従来の技術】近年のマイクロコンピュータはプログラ
ムの増大化、処理内容の高度化等の理由からさらなる性
能の向上が要求されている。クロックの高速化はマイク
ロコンピュータの処理性能を向上させる上で有効であ
り、性能向上のための手段として一般的に用いられてい
る。クロックの高速化はまずCPUに対して行われるこ
とが普通であり、マイクロコンピュータの性能を表す指
標として用いられる「最小命令実行時間」を短縮するこ
とができる。
【0003】次に高速化が求められるのは、マイクロコ
ンピュータの内蔵メモリである。マイクロコンピュータ
にはメモリを内蔵するものと内蔵しないものとがある
が、マイクロコンピュータ内にメモリを内蔵しないで外
部から直接命令を供給する方式では高速化には向かない
ために、高速用途向けにはマイクロコンピュータ内にメ
モリを内蔵して当該メモリからCPUに命令を供給する
手段がとられる。本願発明はメモリを内蔵するマイクロ
コンピュータを対象とするものであり、「メモリ」とい
う用語はマイクロコンピュータに内蔵されたメモリを指
すものとする。マイクロコンピュータ内蔵メモリとして
は、マスクROM、EPROM、EEPROM、SRA
M等が頻繁に用いられる。メモリに高速化が求められる
のは、CPUの高速化に伴ってCPUの命令を供給する
手段にも高速化が求められるからである。CPUが高速
な動作クロックで動作しても、命令を供給するメモリが
低速では、CPUは「空回り」することになる。
【0004】一般的にメモリを高速化することはCPU
等のロジックを高速化するよりも困難であり、メモリの
容量が増大するのに応じて高速化についての困難性も増
大する。したがって、メモリの高速化とメモリの大容量
化とはトレード・オフの関係にあり、メモリの設計をよ
り困難にする要因となっている。すなわち、メモリのタ
イミング設計はマージン(余裕)のないことが多く、ま
た設計仕様を満足させるためにはメモリを構成するトラ
ンジスタにも電流駆動能力の非常に大きなものを使用す
ることが多い。このため、消費電力が大きく、またノイ
ズによる誤動作の危険性も大きくなる。
【0005】上述したように、メモリはマイクロコンピ
ュータ全体の設計のなかでも最も厳しい仕様が要求され
る部分であり、チップ完成後の評価においても予定通り
に動作しない危険性が最も高い部分でもある。したがっ
て、メモリが予定通りの動作をしない場合には、メモリ
が誤動作した箇所を特定する必要が生じるから、メモリ
の入出力信号をモニタして、期待値と異なる部分を探索
する必要がある。
【0006】
【発明が解決しようとする課題】しかし、メモリとCP
Uとの間のデータの授受はマイクロコンピュータ内の内
部バスで実施されるために、チップの外部からメモリと
CPUとの間のデータの授受を直接的にモニタすること
はできない。したがって、通常は、プログラム中でメモ
リが誤動作した箇所を特定することは非常に手間がかか
るという課題があった。
【0007】また、ICE(インサーキットエミュレー
タ)等のツールを使用して解析を支援することはできる
が、同様にプログラムの実行結果からメモリの出力デー
タを推測するという間接的な手法を採るから、手間がか
かるとともに充分な確実性を得ることができないという
課題があった。
【0008】この発明は、上記のような課題を解決する
ためになされたもので、マイクロコンピュータ内蔵メモ
リの解析における手間を削減して、確実かつ迅速にメモ
リの不具合箇所を特定することを支援する内部バス情報
取得方法および内部バス情報取得装置を得ることを目的
とする。
【0009】
【課題を解決するための手段】この発明に係る内部バス
情報取得方法は、誤動作が生じると予見されるメモリア
クセスについての処理対象アドレスを割り込み処理プロ
グラムを実行してレジスタに設定するステップと、内部
バス上に出力されたアドレスと前記レジスタに設定され
たアドレスとが一致したことをトリガとして、内部バス
上に出力された情報をラッチして保持するステップと、
ラッチされた情報を読み取るステップとを有するように
したものである。
【0010】この発明に係る内部バス情報取得方法は、
内部バス上に出力されたアドレスとレジスタに設定され
たアドレスとが一致したことをトリガとして、割り込み
信号を発生して主プログラムの実行動作を停止させるス
テップを有するようにしたものである。
【0011】この発明に係る内部バス情報取得方法は、
実行される主プログラムの動作に対する動作確認範囲を
動作クロック数として規定するためのカウント値をダウ
ンカウンタに設定するステップと、ダウンカウンタに設
定されたカウント数分の動作クロックが経過したことを
トリガとして、内部バス上に出力された情報をラッチし
て保持するステップと、ラッチされた情報を読み取って
期待値と比較し、誤動作が生じたか否かを判定するステ
ップと、誤動作が生じる範囲を特定できるまで、カウン
ト値をダウンカウンタに設定するタイミングを遅らせて
主プログラムを実行するステップと、誤動作が生じると
特定された範囲を2分の1に絞り込むために、ダウンカ
ウンタに設定するカウント値を前回使用したカウント値
の2分の1にして、前記特定された範囲の2分の1の範
囲について誤動作が生じるか否かを判定するステップと
を有するようにしたものである。
【0012】この発明に係る内部バス情報取得装置は、
動作確認対象となる主プログラムの動作範囲を規定する
ための動作クロック数をカウント値として設定可能で、
カウント値の設定と同時にダウンカウントを開始して動
作クロック毎にカウント値を1ずつ減分させ、アンダー
フローした際にアンダーフロー信号を出力するダウンカ
ウンタと、アンダーフロー信号をトリガとして、内部バ
ス上に出力された情報を保持するラッチとを備えるよう
にしたものである。
【0013】この発明に係る内部バス情報取得装置は、
複数のバスアクセスに応じて内部バス上に出力される複
数の情報を保持するための複数のラッチを備えるように
したものである。
【0014】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1は、この発明の実施の形態1による
内部バス情報取得装置を備えたマイクロコンピュータの
全体構成を示す図である。図1において、1はマイクロ
コンピュータ、2はCPU、3はRAM、4はROM、
5はCPU2、RAM3、ROM4を接続する内部バ
ス、6は内部バス5に接続され、設定されたトリガ条件
を基にして内部バス5上に出力された情報をラッチして
保持する内部バス情報取得装置である。
【0015】図2は、この発明の実施の形態1による内
部バス情報取得装置の構成を示す図である。図2におい
て、10は内部アドレスバス(内部バス)、11は内部
データバス(内部バス)、12は誤動作が生じると予見
されるメモリアクセスについての対象アドレスを設定す
るトリガアドレス設定レジスタ(レジスタ)、13は内
部アドレスバス10上に出力されたアドレスとトリガア
ドレス設定レジスタ12に設定されたアドレスとを比較
して、一致する場合にはアドレス一致信号を出力するア
ドレス比較器、14はバスアクセス開始信号を出力する
バスアクセス開始信号源、15はバスアクセス終了信号
を出力するバスアクセス終了信号源である。ここで、バ
スアクセス開始信号およびバスアクセス終了信号をCP
Uから出力されるREAD信号またはWRITE信号と
して与えて、これらの信号の立ち上がりエッジまたは立
ち下がりエッジを検出することでバスアクセスの開始時
点またはバスアクセスの終了時点を識別することが可能
である。また、バスアクセス開始信号およびバスアクセ
ス終了信号を、バスアクセス開始およびバスアクセス終
了を個別に通知するパルス状の信号として与えることも
可能である。
【0016】次に、16はアドレス比較器13から出力
されるアドレス一致信号およびバスアクセス開始信号を
受けてアクセス属性情報をラッチするためのイネーブル
信号を出力するアクセス属性情報ラッチ起動部、17は
アクセス属性情報ラッチ起動部16から出力されるイネ
ーブル信号を受けてアクセス属性情報をラッチするアク
セス属性情報ラッチ部、18はアクセス属性情報を出力
するアクセス属性情報源である。アクセス属性情報は、
CPUから出力されるREAD信号またはWRITE信
号、バスコントローラから出力される制御信号等から与
えられ、本願発明ではアクセス属性情報源18から延び
る信号線も内部バスに属するものとみなす。
【0017】また、19はアドレス比較器13から出力
されるアドレス一致信号およびバスアクセス終了信号を
受けて内部データバス11上に出力された情報をラッチ
するためのイネーブル信号を出力するデータバスラッチ
起動部、20はデータバスラッチ起動部19から出力さ
れるイネーブル信号を受けて内部データバス11上に出
力された情報をラッチするデータバスラッチ部である。
【0018】次に動作について説明する。図3は、この
発明の実施の形態1による内部バス情報取得装置の動作
を示すフローチャートである。第1に、誤動作が生じて
いると予見されるメモリアクセスについてのアドレス
(以下、トリガアドレスと称す。)をトリガアドレス設
定レジスタ12に設定する(ステップST1)。このト
リガアドレス設定レジスタ12に対するトリガアドレス
の設定は、アドレス設定プログラムを実行することで、
CPUのオペランドアクセスにより実施する。しかし、
ここで注意すべきは、アドレス設定プログラムを付加し
て全体的なプログラム構成が変化することで誤動作が再
現しなくなる可能性があることである。すなわち、主プ
ログラムを少しでも修正すれば、命令の配置されるアド
レスが変化して、誤動作が生じた際と内部バスの状態に
差異が生じることに起因して誤動作の再現性を確保でき
なくなる場合がある。このような場合には、内部バスの
状態を変化させないために、主プログラムとは異なる記
憶領域に記憶される割り込み処理用プログラムを用い
て、トリガアドレスの設定を実施するのが好適である。
【0019】トリガアドレスが設定されると、アドレス
比較器13がトリガアドレスと内部アドレスバス10上
に出力されたアドレスとを動作クロック毎に比較し、ア
ドレスが一致した場合にはアドレス一致信号を出力する
(ステップST2)。そして、アクセス属性情報ラッチ
起動部16は、アドレス一致信号が出力された状態で当
該アドレスへのバスアクセスの開始を検出すると、アク
セス属性情報をラッチするためのイネーブル信号を出力
する。このイネーブル信号を入力したアクセス属性情報
ラッチ部17は、アクセス属性情報をラッチする(ステ
ップST3)。このアクセス属性情報としては、実行さ
れたメモリアクセスについてのREAD/WRITE識
別情報、命令フェッチ/オペランドアクセス識別情報等
の情報が与えられる。
【0020】次に、データバスラッチ起動部19は、ア
ドレス一致信号が出力された状態で、トリガアドレスに
一致するアドレスへのバスアクセスの終了を検出する
と、内部データバス11上の情報をラッチするためのイ
ネーブル信号を出力する。このイネーブル信号を入力し
たデータバスラッチ部20は、内部データバス11上の
データ情報をラッチする(ステップST3)。一般的
に、バスアクセスによるデータは、バスアクセスの終了
時に内部データバス11上に出力される。
【0021】次に、上記のアクセス属性情報ラッチ部1
7およびデータバスラッチ部20にラッチされ保持され
たデータを読み出す。データバスラッチ部20にラッチ
されたデータを読み出すことで、トリガアドレス設定レ
ジスタ12に設定されたアドレスに対するアクセスが正
しく実行されたか否かを識別できる。さらに、正しく動
作していなかった場合には、データ内のどのビットに不
具合が生じたかも正確に識別できる。また、アクセス属
性情報ラッチ部17にラッチされた情報を読み出すこと
で、実行されたメモリアクセスの種類等の情報を識別で
きる。
【0022】また、データバスラッチ起動部19がイネ
ーブル信号を出力すると、割り込み信号を発生するよう
な機能を設けるのも好適である。割り込み信号を発生す
ることで、主プログラムの実行動作を誤動作の発生が予
見されるメモリアクセスが生じた段階で停止して、不具
合が生じる際の内部状態を保存する。
【0023】以上のように、この実施の形態1によれ
ば、内蔵メモリが誤動作を行ったアドレスをある程度特
定できる場合に、メモリアクセスの対象アドレスがトリ
ガアドレスに一致すると、内部データバス上に出力され
た情報等をラッチして、ラッチされた情報を読み取るよ
うにしたので、内部バス情報を外部から詳細に得ること
ができるから、内蔵メモリの誤動作原因解析を効率よく
実施することができるという効果を奏する。
【0024】また、割り込み処理用プログラムを用いて
誤動作が生じていると予見されるアドレスをトリガアド
レス設定レジスタに設定するので、アドレス設定プログ
ラムを実行しても誤動作が生じた際と比較して内部バス
状態の変化はなく、誤動作の再現性を確保することがで
きて、メモリの不具合の解析を迅速かつ確実に実施する
ことができるという効果を奏する。
【0025】また、誤動作が生じていると予見されるア
ドレスとの一致を検出してデータバス上に出力された情
報をラッチするためのイネーブル信号を出力すると、割
り込み信号を発生させて主プログラムの実行動作を停止
させて不具合が生じる際の内部状態を保存できるから、
不具合の解析をさらに効率的に実施することができると
いう効果を奏する。
【0026】実施の形態2.図4は、この発明の実施の
形態2による内部バス情報取得装置の構成を示す図であ
る。図4において、21は内部アドレスバス(内部バ
ス)、22は内部データバス(内部バス)、23はデー
タの書き込みと同時にダウンカウントを開始して動作ク
ロック毎にカウント値を1ずつ減分させ、アンダーフロ
ーした際にアンダーフロー信号を出力するダウンカウン
タ、24はバスアクセス開始信号を出力するバスアクセ
ス開始信号源、25はバスアクセス終了信号を出力する
バスアクセス終了信号源、26はダウンカウンタ23か
ら出力されるアンダーフロー信号およびバスアクセス開
始信号を受けてアクセス属性情報をラッチするためのイ
ネーブル信号を出力するアクセス属性情報ラッチ起動
部、27はアクセス属性情報ラッチ起動部26から出力
されるイネーブル信号を受けてアクセス属性情報をラッ
チするアクセス属性情報ラッチ部、28はアクセス属性
情報を出力するアクセス属性情報源、29はダウンカウ
ンタ23から出力されるアンダーフロー信号およびバス
アクセス開始信号を受けて内部アドレスバス21上に出
力された情報をラッチするためのイネーブル信号を出力
するアドレスバスラッチ起動部、30はアドレスバスラ
ッチ起動部29から出力されるイネーブル信号を受けて
内部アドレスバス21上に出力された情報をラッチする
アドレスバスラッチ部、31はダウンカウンタ23から
出力されるアンダーフロー信号およびバスアクセス終了
信号を受けて内部データバス22上に出力された情報を
ラッチするためのイネーブル信号を出力するデータバス
ラッチ起動部、32はデータバスラッチ起動部31から
出力されるイネーブル信号を受けて内部データバス22
上に出力された情報をラッチするデータバスラッチ部で
ある。なお、この発明の実施の形態2による内部バス情
報取得装置とマイクロコンピュータ内の他の構成要素と
の関係、およびバスアクセス開始信号、バスアクセス終
了信号、アクセス属性情報等の内容は実施の形態1と同
様であるので、その説明を省略する。
【0027】次に動作について説明する。図5は、この
発明の実施の形態2による内部バス情報取得装置の動作
を示すフローチャートである。第1に、ダウンカウンタ
23に設定可能な最大値を設定する(ステップST1
1)。例えば、ダウンカウンタ23が32ビットのカウ
ンタである場合には、FFFFFFFFを設定する。
ダウンカウンタ23は、カウンタへの書き込みと同時に
ダウンカウントを開始して、FFFFFFFF+1動
作クロック後にアンダーフローしてアンダーフロー信号
を出力する。すなわち、動作クロック毎にカウント値は
1ずつ減分される。また、動作確認を実施するにあたっ
ては、誤動作の発生が予見される動作範囲の先頭部分が
実行されるよりも前のタイミングでダウンカウンタ23
へのカウント値の書き込みを実行する。
【0028】次に、アンダーフロー信号が出力される
と、最初のバスアクセス開始信号をトリガとしてアドレ
スバスラッチ部30が内部アドレスバス21上の情報を
ラッチするとともにアクセス属性情報ラッチ部27がア
クセス属性情報をラッチする。また、当該バスアクセス
についてのバスアクセス終了信号をトリガとして、デー
タバスラッチ部32が内部データバス22上の情報をラ
ッチする。この後、アドレスバスラッチ部30、アクセ
ス属性情報ラッチ部27およびデータバスラッチ部32
にラッチされた情報を読み出す(ステップST12)。
そして、それぞれの値を期待値と比較することで誤動作
が生じたか否かを判定する(ステップST13)。メモ
リが誤動作を起こした場合には、それ以後のプログラム
の動作は正常な動作とは異なった動作を行うので、正常
に動作していた場合の期待値と比較することで、ダウン
カウンタ23にカウント値を設定してからアンダーフロ
ーが生じるまでの間に誤動作が生じたか否かを判定する
ことができる。期待値の取得方法については、正常動作
するチップがある場合には当該チップを用いて得た値を
期待値とする方法、また正常動作する動作条件が整って
いる場合には当該動作条件の下で得た値を期待値とする
方法、さらに正常動作する動作条件がない場合には論理
シミュレーションから期待値を得る方法等が考えられ
る。
【0029】ステップST13において、期待値との比
較の結果が一致する場合には、ダウンカウンタ23によ
りダウンカウントされた範囲において誤動作は発生しな
かったことになるので、ダウンカウントする範囲を変更
するために、主プログラムを実行する際におけるダウン
カウンタ23へのカウント値の書き込みのタイミングを
所定の動作クロック数だけ遅らせる(ステップST1
4)。通常は、前回に動作確認を実施した範囲の直後の
範囲を次の動作確認の対象とするために、前回ダウンカ
ウンタ23にカウント値を書き込んだタイミングからダ
ウンカウンタ23に設定可能な最大値の動作クロック数
分だけタイミングを遅らせるのが好適である。そして、
ステップST11に復帰して、上記の手順と同様の処理
を実施して変更された範囲において誤動作が生じたか否
かを判定する。
【0030】ステップST13において、期待値との比
較の結果が一致しない場合には、ダウンカウンタ23に
よりダウンカウントされた範囲において誤動作が発生し
たことになり、誤動作が生じる動作範囲が特定される。
そして、誤動作が生じる動作範囲を1/2ずつ絞り込む
にあたって、範囲縮減の指標となる変数Nに1を設定す
る(ステップST15)。
【0031】誤動作が生じる動作範囲が特定されると、
前回ダウンカウンタ23に設定したカウント値の1/2
のカウント値を所定のタイミングでダウンカウンタ23
に設定する(ステップST16)。N=1の場合には、
前回と同じタイミングでカウント値を設定するものとす
る。この際、カウント値としては前回の1/2である7
FFFFFFFを設定する。
【0032】ダウンカウンタ23にカウント値を設定し
た後、所定の動作クロック数が経過してアンダーフロー
信号が出力されると、ステップST12と同様に、内部
アドレスバス21上の情報、内部データバス22上の情
報およびアクセス属性情報をラッチする。その後、アド
レスバスラッチ部30、アクセス属性情報ラッチ部27
およびデータバスラッチ部32にラッチされた情報を読
み出す(ステップST17)。そして、ラッチされてい
たそれぞれの値と期待値とを比較することで誤動作が生
じたか否かを判定する(ステップST18)。
【0033】ステップST18において、期待値との比
較の結果が一致する場合には、ダウンカウンタ23によ
りダウンカウントされた範囲において誤動作は発生しな
かったことになり、誤動作はアンダーフローが生じた次
の動作クロックから今回設定されたカウント値の動作ク
ロック数分だけ進んだ位置までの動作範囲で生じたこと
になる。このように、前回動作確認を実施した範囲の後
半部分で誤動作が生じる場合には、ダウンカウンタ23
へのカウント値設定のタイミングを、前回のタイミング
から今回設定したカウント値の動作クロック数分だけ遅
らせる(ステップST19)。
【0034】また、ステップST18において、期待値
との比較の結果が一致しない場合には、ダウンカウンタ
23によりダウンカウントされた範囲において誤動作が
発生したことになり、誤動作はカウント値が設定されて
からアンダーフローが生じるまでの動作範囲で生じたこ
とになる。このように、前回動作確認を実施した範囲の
前半部分で誤動作が生じる場合には、ダウンカウンタ2
3へのカウント値設定のタイミングを変更しない。
【0035】次に、誤動作が生じる動作範囲の絞り込み
の程度の指標となる変数Nを1だけ増分する(ステップ
ST20)。そして、Nが所定の閾値を越えたか否かを
判定する(ステップST21)。この閾値としては、例
えばダウンカウンタ23のビット数またはビット数に近
い値を設定することが考えられる。
【0036】ステップST21において、Nが閾値を越
える場合には、処理を終了する(ステップST22)。
また、Nが閾値を越えない場合には、処理をステップS
T16に復帰させて、さらにカウント値を1/2にし
て、誤動作が発生する動作範囲を特定する処理を継続す
る。
【0037】以上のように、この実施の形態2によれ
ば、任意のカウント値を設定可能でカウント値の設定と
同時にダウンカウントを開始するダウンカウンタ23
と、ダウンカウントの終了をトリガとして内部バス上の
情報をラッチするラッチ27,30,32とを備えるよ
うに構成したので、実行される主プログラムの任意の動
作範囲に対して動作確認を実施することができるから、
効率的に誤動作が発生する動作範囲を特定することがで
きるという効果を奏する。
【0038】また、誤動作の発生する動作範囲を1/2
ずつ絞り込んでいくので、有限回の操作で確実に誤動作
の発生する動作範囲を特定することができるという効果
を奏する。
【0039】また、上記の実施の形態1および実施の形
態2において、アクセス属性情報ラッチ部、アドレスバ
スラッチ部およびデータバスラッチ部を複数個備えるよ
うに構成することも可能である。このように構成するこ
とで、トリガが発生した時点の近傍で複数回のバスアク
セスについての情報を保持することができるので、一度
の試行でより多くのアクセス情報を得ることができると
いう効果を奏する。
【0040】
【発明の効果】以上のように、この発明によれば、誤動
作が生じると予見されるメモリアクセスについての処理
対象アドレスを割り込み処理プログラムを実行してレジ
スタに設定するステップと、内部バス上に出力されたア
ドレスとレジスタに設定されたアドレスとが一致したこ
とをトリガとして、内部バス上に出力された情報をラッ
チして保持するステップと、ラッチされた情報を読み取
るステップとを有するように構成したので、内部バス情
報を外部から詳細に得ることができるから、内蔵メモリ
の誤動作原因解析を効率良く実施することができるとい
う効果を奏する。また、割り込み処理を実行すること
で、処理対象アドレスをレジスタに設定するプログラム
を実行しても主プログラムが変化することがなく、誤動
作が生じた際と比較して内部バスの状態が同一に保持さ
れるから、誤動作の再現性を確保することができてメモ
リの不具合の解析を迅速かつ確実に実施することができ
るという効果を奏する。
【0041】この発明によれば、内部バス上に出力され
たアドレスとレジスタに設定されたアドレスとが一致し
たことをトリガとして、割り込み信号を発生して主プロ
グラムの実行動作を停止させるステップを有するように
構成したので、メモリに不具合が生じた際の内部状態を
保存できるから、不具合の解析をさらに効率的に実施す
ることができるという効果を奏する。
【0042】この発明によれば、実行される主プログラ
ムの動作に対する動作確認範囲を動作クロック数として
規定するためのカウント値をダウンカウンタに設定する
ステップと、ダウンカウンタに設定されたカウント数分
の動作クロックが経過したことをトリガとして、内部バ
ス上に出力された情報をラッチして保持するステップ
と、ラッチされた情報を読み取って期待値と比較し、誤
動作が生じたか否かを判定するステップと、誤動作が生
じる範囲を特定できるまで、カウント値をダウンカウン
タに設定するタイミングを遅らせて主プログラムを実行
するステップと、誤動作が生じると特定された動作範囲
を2分の1に絞り込むために、ダウンカウンタに設定す
るカウント値を前回使用したカウント値の2分の1にし
て、前記特定された範囲の2分の1の範囲について誤動
作が生じるか否かを判定するステップとを有するように
構成したので、誤動作の発生する動作範囲を1/2ずつ
絞り込むことができるから、有限回の操作で確実に誤動
作が発生する動作範囲を特定することができるという効
果を奏する。
【0043】この発明によれば、動作確認対象となる主
プログラムの動作範囲を規定するための動作クロック数
をカウント値として設定可能で、カウント値の設定と同
時にダウンカウントを開始して動作クロック毎にカウン
ト値を1ずつ減分させ、アンダーフローした際にアンダ
ーフロー信号を出力するダウンカウンタと、アンダーフ
ロー信号をトリガとして、内部バス上に出力された情報
を保持するラッチとを備えるように構成したので、実行
される主プログラムに対して任意のタイミングで任意の
カウント値を設定することができるから、主プログラム
の任意の動作範囲に対して動作確認を実行することがで
きて、効率的に誤動作が発生する動作範囲を特定するこ
とができるという効果を奏する。
【0044】この発明によれば、複数のバスアクセスに
応じて内部バス上に出力される複数の情報を保持するた
めの複数のラッチを備えるように構成したので、トリガ
が発生した時点近傍の複数回のバスアクセスについての
情報を保持することができるから、一度の試行でより多
くのアクセス情報を得ることができるという効果を奏す
る。
【図面の簡単な説明】
【図1】 この発明の実施の形態1による内部バス情報
取得装置を備えたマイクロコンピュータの全体構成を示
す図である。
【図2】 この発明の実施の形態1による内部バス情報
取得装置の構成を示す図である。
【図3】 この発明の実施の形態1による内部バス情報
取得装置の動作を示すフローチャートである。
【図4】 この発明の実施の形態2による内部バス情報
取得装置の構成を示す図である。
【図5】 この発明の実施の形態2による内部バス情報
取得装置の動作を示すフローチャートである。
【符号の説明】
1 マイクロコンピュータ、2 CPU、3 RAM、
4 ROM、5 内部バス、6 内部バス情報取得装
置、10,21, 内部アドレスバス(内部バス)、1
1,22 内部データバス(内部バス)、12 トリガ
アドレス設定レジスタ(レジスタ)、13 アドレス比
較器、14,24 バスアクセス開始信号源、15,2
5 バスアクセス終了信号源、16,26 アクセス属
性情報ラッチ起動部、17,27 アクセス属性情報ラ
ッチ部、18,28 アクセス属性情報源、19,31
データバスラッチ起動部、20,32 データバスラ
ッチ部、23 ダウンカウンタ、29 アドレスバスラ
ッチ起動部、30 アドレスバスラッチ部。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 マイクロコンピュータ内部のメモリの不
    具合箇所を特定することを支援するために内部バス上に
    出力された情報を取得する内部バス情報取得方法におい
    て、 誤動作が生じると予見されるメモリアクセスについての
    処理対象アドレスを割り込み処理プログラムを実行して
    レジスタに設定するステップと、 内部バス上に出力されたアドレスと前記レジスタに設定
    されたアドレスとが一致したことをトリガとして、内部
    バス上に出力された情報をラッチして保持するステップ
    と、 ラッチされた情報を読み取るステップとを有することを
    特徴とする内部バス情報取得方法。
  2. 【請求項2】 内部バス上に出力されたアドレスとレジ
    スタに設定されたアドレスとが一致したことをトリガと
    して、割り込み信号を発生して主プログラムの実行動作
    を停止させるステップを有することを特徴とする請求項
    1に記載の内部バス情報取得方法。
  3. 【請求項3】 マイクロコンピュータ内部のメモリの不
    具合箇所を特定することを支援するために内部バス上に
    出力された情報を取得する内部バス情報取得方法におい
    て、 実行される主プログラムの動作に対する動作確認範囲を
    動作クロック数として規定するためのカウント値をダウ
    ンカウンタに設定するステップと、 前記ダウンカウンタに設定されたカウント数分の動作ク
    ロックが経過したことをトリガとして、内部バス上に出
    力された情報をラッチして保持するステップと、 ラッチされた情報を読み取って期待値と比較し、誤動作
    が生じたか否かを判定するステップと、 誤動作が生じる範囲を特定できるまで、カウント値をダ
    ウンカウンタに設定するタイミングを遅らせて主プログ
    ラムを実行するステップと、 誤動作が生じると特定された範囲を2分の1に絞り込む
    ために、ダウンカウンタに設定するカウント値を前回使
    用したカウント値の2分の1にして、前記特定された範
    囲の2分の1の範囲について誤動作が生じるか否かを判
    定するステップとを有することを特徴とする内部バス情
    報取得方法。
  4. 【請求項4】 マイクロコンピュータ内部のメモリの不
    具合箇所を特定することを支援するために内部バス上に
    出力された情報を取得する内部バス情報取得装置におい
    て、 動作確認対象となる主プログラムの動作範囲を規定する
    ための動作クロック数をカウント値として設定可能で、
    カウント値の設定と同時にダウンカウントを開始して動
    作クロック毎にカウント値を1ずつ減分させ、アンダー
    フローした際にアンダーフロー信号を出力するダウンカ
    ウンタと、 アンダーフロー信号をトリガとして、内部バス上に出力
    された情報を保持するラッチとを備えることを特徴とす
    る内部バス情報取得装置。
  5. 【請求項5】 複数のバスアクセスに応じて内部バス上
    に出力される複数の情報を保持するための複数のラッチ
    を備えることを特徴とする請求項4記載の内部バス情報
    取得装置。
JP31721399A 1999-11-08 1999-11-08 内部バス情報取得方法および内部バス情報取得装置 Pending JP2001134467A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP31721399A JP2001134467A (ja) 1999-11-08 1999-11-08 内部バス情報取得方法および内部バス情報取得装置
US09/553,448 US6704896B1 (en) 1999-11-08 2000-04-19 Method of and device for getting internal bus information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31721399A JP2001134467A (ja) 1999-11-08 1999-11-08 内部バス情報取得方法および内部バス情報取得装置

Publications (1)

Publication Number Publication Date
JP2001134467A true JP2001134467A (ja) 2001-05-18

Family

ID=18085740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31721399A Pending JP2001134467A (ja) 1999-11-08 1999-11-08 内部バス情報取得方法および内部バス情報取得装置

Country Status (2)

Country Link
US (1) US6704896B1 (ja)
JP (1) JP2001134467A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176392A (ja) * 2009-01-29 2010-08-12 Renesas Electronics Corp 不良解析装置と方法及びプログラム
US7934043B2 (en) 2006-08-08 2011-04-26 Renesas Electronics Corporation Data processing apparatus for controlling access to a memory based upon detection of completion of a DMA bus cycle

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100571802B1 (ko) * 2001-09-03 2006-04-17 삼성전자주식회사 통신 효율을 높이는 이동통신 시스템 및 그 방법
US7945070B2 (en) * 2006-02-24 2011-05-17 Digimarc Corporation Geographic-based watermarking keys
FR2960664B1 (fr) * 2010-05-27 2012-08-03 Airbus Operations Sas Procede et dispositif de simulation d'un logiciel a executer dans un systeme

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4542453A (en) * 1982-02-19 1985-09-17 Texas Instruments Incorporated Program patching in microcomputer
JPH0535528A (ja) 1991-07-31 1993-02-12 Nec Corp マイクロコンピユータシステムのトレーサ回路
US5371742A (en) * 1992-08-12 1994-12-06 At&T Corp. Table driven fault recovery system with redundancy and priority handling
US5923676A (en) * 1996-12-20 1999-07-13 Logic Vision, Inc. Bist architecture for measurement of integrated circuit delays

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7934043B2 (en) 2006-08-08 2011-04-26 Renesas Electronics Corporation Data processing apparatus for controlling access to a memory based upon detection of completion of a DMA bus cycle
JP2010176392A (ja) * 2009-01-29 2010-08-12 Renesas Electronics Corp 不良解析装置と方法及びプログラム

Also Published As

Publication number Publication date
US6704896B1 (en) 2004-03-09

Similar Documents

Publication Publication Date Title
US6857084B1 (en) Multiprocessor system and method for simultaneously placing all processors into debug mode
JP2505950B2 (ja) ハ―ドウェア支援ブレ―クポイント・システム
US7636870B2 (en) Semiconductor integrated circuit device, and debugging system and method for the semiconductor integrated circuit device
JP4094724B2 (ja) ソフトウェアをデバッグする際に例外を識別するための装置および方法
US6721885B1 (en) Reducing start-up time and avoiding customer-induced system failures for personal computers
US6282601B1 (en) Multiprocessor data processing system and method of interrupt handling that facilitate identification of a processor requesting a system management interrupt
JP2000332205A (ja) プロセッサ内蔵半導体集積回路装置
US5987585A (en) One-chip microprocessor with error detection on the chip
TW201835765A (zh) 死結偵測器、包括其之系統與其方法
US5678003A (en) Method and system for providing a restartable stop in a multiprocessor system
US5136595A (en) Microprocessor operable in a functional redundancy monitor mode
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
EP0869434A2 (en) Method for outputting trace information of a microprocessor
JPH10333939A (ja) マイクロプロセッサ
JP2001134467A (ja) 内部バス情報取得方法および内部バス情報取得装置
US20090204384A1 (en) Debugging device, debugging method and hardware emulator
US20180308560A1 (en) Data processing
US7899640B2 (en) Integrated circuit characterisation system and method
US7251751B2 (en) Diagnostic mechanisms within multi processing systems
US4890285A (en) Cycle counter for timeout microdiagnostics
JPH11316695A (ja) ス―パ―スカラ―マイクロプロセッサ―の停止点インタ―ラプト発生装置
US6769057B2 (en) System and method for determining operand access to data
JP2022520914A (ja) メモリ組込み自己テストコントローラを用いる読み出し専用メモリのテスト
JP3419392B2 (ja) メモリアクセス監視装置、メモリアクセス監視方法およびメモリアクセス監視用プログラムを記録した記録媒体
JP2677609B2 (ja) マイクロコンピュータ