JPH0628038B2 - 被テストユニットの検証のための方法および装置 - Google Patents
被テストユニットの検証のための方法および装置Info
- Publication number
- JPH0628038B2 JPH0628038B2 JP1304515A JP30451589A JPH0628038B2 JP H0628038 B2 JPH0628038 B2 JP H0628038B2 JP 1304515 A JP1304515 A JP 1304515A JP 30451589 A JP30451589 A JP 30451589A JP H0628038 B2 JPH0628038 B2 JP H0628038B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- access
- data
- instruction
- memory
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 技術分野 この発明は、一般的にはマイクロプロセッサベースの電
子システムのテストおよび障害追跡に関し、かつより特
定的には、メモリエミュレーション技術を用いるマイク
ロプロセッサベースの電子システムの核のテストおよび
障害追跡に関する。
子システムのテストおよび障害追跡に関し、かつより特
定的には、メモリエミュレーション技術を用いるマイク
ロプロセッサベースの電子システムの核のテストおよび
障害追跡に関する。
発明の背景 消費者用および産業用製品の両方における複雑なマイク
ロプロセッサベースシステムの幅広い利用とともに、回
路の、特にそのようなシステムの核の、故障テストおよ
び診断の自動化が極めて望ましくなった。そのようなシ
ステムの核は、マイクロプロセッサ(μP)それ自身、
およびマイクロプロセッサが正確に機能するために正確
に相互作用することが必要である関連のエレメント、具
体的にはメモリ、クロック、アドレスバスおよびデータ
バスに関連するということが当該技術においてよく理解
されている。テスト装置によって核のエレメントがエミ
ュレート(emulate)される、いわゆるエミュレーティ
ブテスタが機能テストに関して一般的となったが、それ
はそれらが、核が最小にさえ動作しない場合でも核の詳
細な診断を可能とするからである。
ロプロセッサベースシステムの幅広い利用とともに、回
路の、特にそのようなシステムの核の、故障テストおよ
び診断の自動化が極めて望ましくなった。そのようなシ
ステムの核は、マイクロプロセッサ(μP)それ自身、
およびマイクロプロセッサが正確に機能するために正確
に相互作用することが必要である関連のエレメント、具
体的にはメモリ、クロック、アドレスバスおよびデータ
バスに関連するということが当該技術においてよく理解
されている。テスト装置によって核のエレメントがエミ
ュレート(emulate)される、いわゆるエミュレーティ
ブテスタが機能テストに関して一般的となったが、それ
はそれらが、核が最小にさえ動作しない場合でも核の詳
細な診断を可能とするからである。
エミュレーティブテスタの1つの型は、ケイ・エス・バ
ースカー(K.S.Bhaskar)などに発行されか
つジョン・フルーク・マニュファクチャリング・カンパ
ニー・インコーポレーテッド(John Fluke
Mfg.Co.,Inc.)に譲渡された、米国特許
4,455,654において説明されたテスタによって
例示される、マイクロプロセッサエミュレータである。
そのシステムにおいては、UUT μPを除去しかつテ
ストシステムをUUTのμPソケットを介して接続する
ことによってUUTへの接続がなされる。
ースカー(K.S.Bhaskar)などに発行されか
つジョン・フルーク・マニュファクチャリング・カンパ
ニー・インコーポレーテッド(John Fluke
Mfg.Co.,Inc.)に譲渡された、米国特許
4,455,654において説明されたテスタによって
例示される、マイクロプロセッサエミュレータである。
そのシステムにおいては、UUT μPを除去しかつテ
ストシステムをUUTのμPソケットを介して接続する
ことによってUUTへの接続がなされる。
別の型のエミュレーティブテスタはROM(またはメモ
リ)エミュレータである。ROMはUUTデータおよび
アドレスバスと直接交信し、かつROMソケットのピン
構成は比較的簡単であるので、ROMエミュレーション
は望ましいと考えられる。ROMエミュレータはμPの
ソフトウェア設計および動作検証における利用について
よく知られているけれども、故障検出および診断のため
にはごく最近用いられるようになったばかりであり、な
ぜならばテスト装置をそれが受取るテスト結果と同期さ
せるために、典型的には同期信号が利用できないからで
ある。1988年2月19日に出願された、エム・エイ
チ・スコット(M.H.Scott)などの、米国特許
出願第07/158.223号、「マイクロプロセッサ
ベースの電子システムのテストおよび障害追跡のための
メモリエミュレーションの方法およびシステム」(MEMOR
Y EMULATION METHOD AND SYSTEM FOR TESTING AND TROU
BLESHOOTING MICROPROCESSOR-BASED ELECTRONIC SYSTEM
S)において、この問題の解決法が開示され、かつここに
引用によって十分に援用される。そのテストシステム
は、μPベースのメインフレームおよびインタフェース
ポッド(pod)を含み、それはまたμPとUUTのメ
モリソケットとの両方に接続されるμPベースのシステ
ムを含む。インタフェースポッドは、興味のあるバスサ
イクルの間に微細分解能同期信号パルスを供給するため
にUUT μPに接続される特別な論理回路を含み、そ
れは先行技術のμPエミュレーションによって提供され
るそれと同じぐらい効果的である十分な障害追跡故障分
離を提供し、なぜならばμPから抽出された高分解能同
期パルスはメモリソケットでアドレスおよびデータバス
からモニタされる信号を分離しかつ評価するために、μ
P接続からであるのと同じ容易さで用いられることがで
きるからである。また、その出願において開示されたよ
うに、ROMエミュレーションはメモリエミュレーショ
ン(たとえば、いずれのメモリまたはメモリの一部のエ
ミュレーション)に一般化してもよく、なぜならばμP
ベースのシステムにおける傾向は、RAMを増やし、一
方ROMを減らし、さらにRAMで代替とすることによ
ってROMを完全に除去することであるからである。そ
れゆえ、まだ生産されてはいないが、それにもかかわら
ず、電子マイクロプロセッサベースシステムアーキテク
チャにおける現在の傾向に照らして予期できるシステム
をテストするように、テストシステムが適切に一般化さ
れなければならない。
リ)エミュレータである。ROMはUUTデータおよび
アドレスバスと直接交信し、かつROMソケットのピン
構成は比較的簡単であるので、ROMエミュレーション
は望ましいと考えられる。ROMエミュレータはμPの
ソフトウェア設計および動作検証における利用について
よく知られているけれども、故障検出および診断のため
にはごく最近用いられるようになったばかりであり、な
ぜならばテスト装置をそれが受取るテスト結果と同期さ
せるために、典型的には同期信号が利用できないからで
ある。1988年2月19日に出願された、エム・エイ
チ・スコット(M.H.Scott)などの、米国特許
出願第07/158.223号、「マイクロプロセッサ
ベースの電子システムのテストおよび障害追跡のための
メモリエミュレーションの方法およびシステム」(MEMOR
Y EMULATION METHOD AND SYSTEM FOR TESTING AND TROU
BLESHOOTING MICROPROCESSOR-BASED ELECTRONIC SYSTEM
S)において、この問題の解決法が開示され、かつここに
引用によって十分に援用される。そのテストシステム
は、μPベースのメインフレームおよびインタフェース
ポッド(pod)を含み、それはまたμPとUUTのメ
モリソケットとの両方に接続されるμPベースのシステ
ムを含む。インタフェースポッドは、興味のあるバスサ
イクルの間に微細分解能同期信号パルスを供給するため
にUUT μPに接続される特別な論理回路を含み、そ
れは先行技術のμPエミュレーションによって提供され
るそれと同じぐらい効果的である十分な障害追跡故障分
離を提供し、なぜならばμPから抽出された高分解能同
期パルスはメモリソケットでアドレスおよびデータバス
からモニタされる信号を分離しかつ評価するために、μ
P接続からであるのと同じ容易さで用いられることがで
きるからである。また、その出願において開示されたよ
うに、ROMエミュレーションはメモリエミュレーショ
ン(たとえば、いずれのメモリまたはメモリの一部のエ
ミュレーション)に一般化してもよく、なぜならばμP
ベースのシステムにおける傾向は、RAMを増やし、一
方ROMを減らし、さらにRAMで代替とすることによ
ってROMを完全に除去することであるからである。そ
れゆえ、まだ生産されてはいないが、それにもかかわら
ず、電子マイクロプロセッサベースシステムアーキテク
チャにおける現在の傾向に照らして予期できるシステム
をテストするように、テストシステムが適切に一般化さ
れなければならない。
異なるテスト手順によって提供される機能性の確実性の
異なる程度を示す用語間の区別を理解することが重要で
あろう。ここで用いられる「検証(verification)」と
いう用語は、行なわれるべき後の手順を可能とするのに
十分である機能性の最小レベルを少なくとも確かめるこ
とを示す。「保証(または確証、妥当性検査ないし確
認)(validation)」という用語は、もし故障が見い出さ
れなければ、保証された全体の構成が十分機能する(fun
ctional)と考えられてもよいということを示す。「テス
ト(test)」という用語は、すべての存在する故障が見
い出されるであろうけれども必ずしも分離または識別さ
れない手順を示すために用いられる。ここで用いられる
「診断(diagnosis)」は、すべての故障が見
い出されかつ識別されることを示す。
異なる程度を示す用語間の区別を理解することが重要で
あろう。ここで用いられる「検証(verification)」と
いう用語は、行なわれるべき後の手順を可能とするのに
十分である機能性の最小レベルを少なくとも確かめるこ
とを示す。「保証(または確証、妥当性検査ないし確
認)(validation)」という用語は、もし故障が見い出さ
れなければ、保証された全体の構成が十分機能する(fun
ctional)と考えられてもよいということを示す。「テス
ト(test)」という用語は、すべての存在する故障が見
い出されるであろうけれども必ずしも分離または識別さ
れない手順を示すために用いられる。ここで用いられる
「診断(diagnosis)」は、すべての故障が見
い出されかつ識別されることを示す。
ポルストラ(Polstra)などによる、同時係属中
の出願、「マイクロプロセッサベースのシステムの診断
を自動化するための核テストインタフェースおよび方法
(KERNEL TESTING INTERFACE AND METHOD FOR AUTOMATIN
G DIAGNOSTICS OF MICROPROCESSOR-BASED SYSTEMS)」が
ここに引用により十分に援用されるが、そこの開示され
るように、高度に自動化されたテストおよび診断システ
ムおよび方法がメモリエミュレーションを利用して提供
された。しかしながら、そのような命令が実際に必要と
される前にそれらがメモリから情報をフェッチすること
を可能とする命令プリフェッチ論理を用いる現代のマイ
クロプロセッサ(μP)を用いるシステムのテストにお
いて、困難さに出くわした。この論理は、μPが命令の
フェッチと既にフェッチされた命令の実行とを重ねるこ
とを引き起こし、より良いバスの利用およびより速いプ
ログラム実行速度を可能とする。
の出願、「マイクロプロセッサベースのシステムの診断
を自動化するための核テストインタフェースおよび方法
(KERNEL TESTING INTERFACE AND METHOD FOR AUTOMATIN
G DIAGNOSTICS OF MICROPROCESSOR-BASED SYSTEMS)」が
ここに引用により十分に援用されるが、そこの開示され
るように、高度に自動化されたテストおよび診断システ
ムおよび方法がメモリエミュレーションを利用して提供
された。しかしながら、そのような命令が実際に必要と
される前にそれらがメモリから情報をフェッチすること
を可能とする命令プリフェッチ論理を用いる現代のマイ
クロプロセッサ(μP)を用いるシステムのテストにお
いて、困難さに出くわした。この論理は、μPが命令の
フェッチと既にフェッチされた命令の実行とを重ねるこ
とを引き起こし、より良いバスの利用およびより速いプ
ログラム実行速度を可能とする。
命令プリフェッチ論理がμP内で改良された性能をもた
らす一方で、それはそのようなμPを用いるμPに基づ
くシステムのテストにおいて困難を引き起こし、なぜな
らば命令およびデータフェッチが予知できないオーダで
インタリーブされるからである。メモリアクセスの正確
なシーケンスはプログラム実行の間に決定され、かつμ
Pの実行速度、メモリアクセス時間およびRAMリフレ
ッシュサイクルなどの非CPUトランザクションなどの
多数の要因によって影響されるかもしれない。メモリエ
ミュレーションテストは主として所与の刺激へのシステ
ムの応答の分析(analysis)に基づくので、普通、応答
をそれを引き起こす刺激と関連づけ得ることが必要であ
る。そのとき、明らかに、命令プリフェッチ論理は、テ
ストに対して、かつそのような特徴を有するμPを用い
るシステムのテスティングへのテスト装置の能力の拡張
に対して主な障害を提供する。
らす一方で、それはそのようなμPを用いるμPに基づ
くシステムのテストにおいて困難を引き起こし、なぜな
らば命令およびデータフェッチが予知できないオーダで
インタリーブされるからである。メモリアクセスの正確
なシーケンスはプログラム実行の間に決定され、かつμ
Pの実行速度、メモリアクセス時間およびRAMリフレ
ッシュサイクルなどの非CPUトランザクションなどの
多数の要因によって影響されるかもしれない。メモリエ
ミュレーションテストは主として所与の刺激へのシステ
ムの応答の分析(analysis)に基づくので、普通、応答
をそれを引き起こす刺激と関連づけ得ることが必要であ
る。そのとき、明らかに、命令プリフェッチ論理は、テ
ストに対して、かつそのような特徴を有するμPを用い
るシステムのテスティングへのテスト装置の能力の拡張
に対して主な障害を提供する。
発明の目的 この発明の目的は、命令プリフェッチ論理を有するμP
ベースのシステムの核回路の検証のための方法を提供す
ることである。
ベースのシステムの核回路の検証のための方法を提供す
ることである。
この発明の別の目的は、十分なテストおよび診断手順の
一部として、μPベースのシステムの核の検証のための
装置を提供することである。
一部として、μPベースのシステムの核の検証のための
装置を提供することである。
この発明のさらなる目的は、核回路の自動検証を可能と
する、μPベースのメモリエミュレーションテスト装置
のための向上を提供することである。
する、μPベースのメモリエミュレーションテスト装置
のための向上を提供することである。
この発明のなおも別の目的は、命令プリフェッチ論理を
有するμPを含む核回路の検証を可能とするメモリエミ
ュレーションテストの間のメモリアクセスの分析の方法
を提供することである。
有するμPを含む核回路の検証を可能とするメモリエミ
ュレーションテストの間のメモリアクセスの分析の方法
を提供することである。
発明の開示 この発明は、メモリエミュレーションによってマイクロ
プロセッサベースのシステムの核のデータバスのテスト
および保証のための装置に向けられ、それはメモリアク
セスの分析を行なうための装置も含む。
プロセッサベースのシステムの核のデータバスのテスト
および保証のための装置に向けられ、それはメモリアク
セスの分析を行なうための装置も含む。
この発明はプリフェッチ論理を含むマイクロプロセッサ
を有する被テストユニット(a unit under test)の検証
のための方法を含み、ユニットの核回路をテストするた
めのエミュレーションメモリを提供するステップと、テ
ストプログラムおよび対応するチェックテーブルをエミ
ュレーションメモリ内にロードするステップと、テスト
プログラムを実行するステップと、プログラムの実行の
間に各メモリアクセスのアドレスをモニタするステップ
とを含む。アクセスされる各アドレスは命令アクセスま
たはデータアクセスとして識別される。各命令アクセス
のアドレスが先行の命令アクセスアドレスよりも大きい
かどうか、各データアクセスのアドレスが先行のデータ
アクセスアドレスよりも大きいかどうか、および各デー
タアクセスのアドレスが最も最近アクセスされた命令内
で特定されたデータの位置に対応するかどうかが、それ
から決められ、かつ決定するステップの結果に基づいて
プログラムが完了したとき前記核回路の検証を設定す
る。
を有する被テストユニット(a unit under test)の検証
のための方法を含み、ユニットの核回路をテストするた
めのエミュレーションメモリを提供するステップと、テ
ストプログラムおよび対応するチェックテーブルをエミ
ュレーションメモリ内にロードするステップと、テスト
プログラムを実行するステップと、プログラムの実行の
間に各メモリアクセスのアドレスをモニタするステップ
とを含む。アクセスされる各アドレスは命令アクセスま
たはデータアクセスとして識別される。各命令アクセス
のアドレスが先行の命令アクセスアドレスよりも大きい
かどうか、各データアクセスのアドレスが先行のデータ
アクセスアドレスよりも大きいかどうか、および各デー
タアクセスのアドレスが最も最近アクセスされた命令内
で特定されたデータの位置に対応するかどうかが、それ
から決められ、かつ決定するステップの結果に基づいて
プログラムが完了したとき前記核回路の検証を設定す
る。
この発明はまたプリフェッチ論理を含むマイクロプロセ
ッサを有する被テストユニットの検証のための装置をも
含み、前記被テストユニットの核回路をテストするため
のエミュレーションメモリ手段と、テストプログラムお
よび対応すチェックテーブルを前記エミュレーションメ
モリにロードするための手段と、前記マイクロプロセッ
サがテストプログラムを実行することを引き起こすため
の手段とを含む。エミュレーションメモリ手段はプログ
ラムの実行の間に各メモリアクセスのアドレスをモニタ
するための手段を含む。この発明の装置はまた、少なく
とも命令アクセスおよびデータアクセスのうちの1つと
してアクセスされた各アドレスを識別するための手段
と、各命令アクセスの各アドレスを先行の命令アクセス
アドレスと、および各データアクセスの各アドレスを先
行のデータアクセスアドレスと比較するための比較手段
と、さらに各データアクセスのアドレスが最も最近アク
セスされた命令内で特定されたデータの位置に対応する
かどうかを決める手段とを含む。さらなる手段が前記第
および第2の比較手段および前記決めるための手段に応
答して前記核回路の検証を確立する。
ッサを有する被テストユニットの検証のための装置をも
含み、前記被テストユニットの核回路をテストするため
のエミュレーションメモリ手段と、テストプログラムお
よび対応すチェックテーブルを前記エミュレーションメ
モリにロードするための手段と、前記マイクロプロセッ
サがテストプログラムを実行することを引き起こすため
の手段とを含む。エミュレーションメモリ手段はプログ
ラムの実行の間に各メモリアクセスのアドレスをモニタ
するための手段を含む。この発明の装置はまた、少なく
とも命令アクセスおよびデータアクセスのうちの1つと
してアクセスされた各アドレスを識別するための手段
と、各命令アクセスの各アドレスを先行の命令アクセス
アドレスと、および各データアクセスの各アドレスを先
行のデータアクセスアドレスと比較するための比較手段
と、さらに各データアクセスのアドレスが最も最近アク
セスされた命令内で特定されたデータの位置に対応する
かどうかを決める手段とを含む。さらなる手段が前記第
および第2の比較手段および前記決めるための手段に応
答して前記核回路の検証を確立する。
この発明によって提供される分析は、μPの命令プリフ
ェッチ論理の特徴のためにメモリアクセスシーケンスが
予測され得ないときでも、μPベースのシステムの核回
路の自動検証を可能とする。
ェッチ論理の特徴のためにメモリアクセスシーケンスが
予測され得ないときでも、μPベースのシステムの核回
路の自動検証を可能とする。
この発明の上記および他の目的は、添付の図面と参照し
てこの発明の以下の詳細な説明から当業者には明らかと
なるであろう。
てこの発明の以下の詳細な説明から当業者には明らかと
なるであろう。
この発明を実施する最良のモード 概要 この発明の概要として、第1図を参照すると、UUT1
4に接続されたテスト装置は、メインフレームプロセッ
サ10を含み、それはコンパクトなハウジング内に配置
されかつキーボード20、プローブ32およびディスプ
レイ22、インタフェースポッド12、同期モジュール
アダプタ150およびUUT14のメモリ構成に依存し
て少なくとも1つのメモリモジュール100(2つが示
される)を含む同期モジュール150を含む。メモリモ
ジュール(単数または複数)は多重導体ケーブル92お
よびUUTメモリソケット72に対応するプラグによっ
てUUTに接続する。第2図は第1図において示される
システムの相互接続を略図的に示し、複数個のハウジン
グ内の装置の好ましい配列を示す。システムの素子の特
定の明確な表示が、オペレータの便宜のために好ましく
示されるが、示されるよりもより多いまたはより少ない
素子にパッケージされ得ることを理解するべきである。
たとえば、ポッドはメインフレームと同じハウジング内
に全体が含まれ得る。第2図において、メモリモジュー
ルはUUTメモリのために電気的に代用され、それは物
理的起き換えかまたはUUTメモリを不能化する下での
並列接続によってであり、同期モジュールがUUT回路
内の適所に残されるμPに接続されることもまた注目さ
れる。
4に接続されたテスト装置は、メインフレームプロセッ
サ10を含み、それはコンパクトなハウジング内に配置
されかつキーボード20、プローブ32およびディスプ
レイ22、インタフェースポッド12、同期モジュール
アダプタ150およびUUT14のメモリ構成に依存し
て少なくとも1つのメモリモジュール100(2つが示
される)を含む同期モジュール150を含む。メモリモ
ジュール(単数または複数)は多重導体ケーブル92お
よびUUTメモリソケット72に対応するプラグによっ
てUUTに接続する。第2図は第1図において示される
システムの相互接続を略図的に示し、複数個のハウジン
グ内の装置の好ましい配列を示す。システムの素子の特
定の明確な表示が、オペレータの便宜のために好ましく
示されるが、示されるよりもより多いまたはより少ない
素子にパッケージされ得ることを理解するべきである。
たとえば、ポッドはメインフレームと同じハウジング内
に全体が含まれ得る。第2図において、メモリモジュー
ルはUUTメモリのために電気的に代用され、それは物
理的起き換えかまたはUUTメモリを不能化する下での
並列接続によってであり、同期モジュールがUUT回路
内の適所に残されるμPに接続されることもまた注目さ
れる。
この発明に用いられる方法および装置は、エミュレーシ
ョンメモリによって検出されかつ獲得されたメモリアク
セスを分析しそのようなメモリアクセスのシーケンスが
機能的μPと矛盾がないかどうかを決定し、なぜならば
機能的μPさえも同じプログラムの異なる反復上で同じ
態様でメモリをアクセスしないであろうからである。こ
うしてメモリアクセスのシーケンスの「正しい」順序は
ないであろう。メモリアクセスの典型的なシーケンスさ
えも経験的に決められることはできず、かつμPの機能
性を決めることは価値がないであろう。
ョンメモリによって検出されかつ獲得されたメモリアク
セスを分析しそのようなメモリアクセスのシーケンスが
機能的μPと矛盾がないかどうかを決定し、なぜならば
機能的μPさえも同じプログラムの異なる反復上で同じ
態様でメモリをアクセスしないであろうからである。こ
うしてメモリアクセスのシーケンスの「正しい」順序は
ないであろう。メモリアクセスの典型的なシーケンスさ
えも経験的に決められることはできず、かつμPの機能
性を決めることは価値がないであろう。
この発明の分析技術は2つの基本的な仮定を作る: 1.)命令はそれが実行される前にフェッチされなくて
はならず、さらに 2.)命令フェッチはシーケンシャルな順序でなされる
であろう。
はならず、さらに 2.)命令フェッチはシーケンシャルな順序でなされる
であろう。
これらの仮定の第1のものから、検証のための基準が確
立され、データはそれを要求する命令より先にフェッチ
されないであろう。それゆえ、検証のための別の基準
は、データがシーケンシャルな順序でアクセスされると
いうことであり、上記の第2の仮定と一致する。
立され、データはそれを要求する命令より先にフェッチ
されないであろう。それゆえ、検証のための別の基準
は、データがシーケンシャルな順序でアクセスされると
いうことであり、上記の第2の仮定と一致する。
それゆえ、この発明の分析技術は、命令アクセスがシー
ケンシャルな順序であるということ、データアクセスが
シーケンシャルな順序であるということ、およびデータ
アクセスシーケンスが命令アクセスシーケンスと一致す
るということを見るためにチェックすることとして要約
され得る。これは下記により詳細に説明されるであろう
が、実際問題として、この発明に従えば、非常に簡単な
実現化例、基本的にはメモリアクセスを前のメモリアク
セスまたはデータアクセスとの一致のためにチェックす
ること、によって達成されるであろうことに注目するこ
とが重要である。もし特定のメモリアクセスがどちらと
も一致しなければ、誤りが報告される。
ケンシャルな順序であるということ、データアクセスが
シーケンシャルな順序であるということ、およびデータ
アクセスシーケンスが命令アクセスシーケンスと一致す
るということを見るためにチェックすることとして要約
され得る。これは下記により詳細に説明されるであろう
が、実際問題として、この発明に従えば、非常に簡単な
実現化例、基本的にはメモリアクセスを前のメモリアク
セスまたはデータアクセスとの一致のためにチェックす
ること、によって達成されるであろうことに注目するこ
とが重要である。もし特定のメモリアクセスがどちらと
も一致しなければ、誤りが報告される。
詳細な説明 上記のこの発明の短い概要を念頭に置いて、システムの
動作が、この発明を構成する向上部の動作を理解するた
めの背景として再検討されるであろう。
動作が、この発明を構成する向上部の動作を理解するた
めの背景として再検討されるであろう。
テストシステムは、バステストプリミティブ、データ刺
激プリミティブおよびアドレス刺激プリミティブを含む
複数個の新規の手順を含み、それは個々に下記に要約さ
れるであろう。これらのプリミティブの各々はμPベー
スのシステムの核の特定の部分をテストするためのユー
ティリティを有し、かつこの発明に従うシーケンスで利
用されるとき、これまで利用されてきたよりも、より速
い速度でかつより大きなオペレータの便利さを伴ってよ
り高い程度の自動化されたテストおよび診断を可能とす
る。
激プリミティブおよびアドレス刺激プリミティブを含む
複数個の新規の手順を含み、それは個々に下記に要約さ
れるであろう。これらのプリミティブの各々はμPベー
スのシステムの核の特定の部分をテストするためのユー
ティリティを有し、かつこの発明に従うシーケンスで利
用されるとき、これまで利用されてきたよりも、より速
い速度でかつより大きなオペレータの便利さを伴ってよ
り高い程度の自動化されたテストおよび診断を可能とす
る。
バステストプリミティブがテスト装置のメインフレーム
内のプログラムによって実行される。バステストプリミ
ティブの主要機能は、μPが核内で基本的な読出および
書込動作を行なうことができるかどうかを決めることで
ありかつ単一の読出しおよび書込みだけで成ることがで
きる。もし成功であれば、μPが少なくともメモリ、こ
の場合はエミュレーションメモリにアクセスすることが
でき、データバスを介してビットパターンを受取りかつ
そのビットパターンをアドレスバス上に置き、そこでそ
れがポッドによって受取られかつモニタされることがで
きるということが知られるであろう。しかしながら、テ
スト装置がシグネチャの発生によってデータおよびアド
レスバスの診断を行なうので、好ましい実施例におい
て、バステストプリミティブは、ブートメモリに対応す
るデータおよびアドレスバスの部分を動作させる(exer
cise)のように設計されたプログラムとして実現され
る。単一の動作または動作のシーケンスとして実現され
ても、バステストプリミティブがデータおよびアドレス
バスを含む線について、またはこれらの線またはそれら
の線の一部分上に置かれることができるビットの組合わ
せに関してさえも徹底的(exhaustive)ではなく、かつ
こうして前進/非前進(go/no go)テストとして迅速
に機能できることが重要である。
内のプログラムによって実行される。バステストプリミ
ティブの主要機能は、μPが核内で基本的な読出および
書込動作を行なうことができるかどうかを決めることで
ありかつ単一の読出しおよび書込みだけで成ることがで
きる。もし成功であれば、μPが少なくともメモリ、こ
の場合はエミュレーションメモリにアクセスすることが
でき、データバスを介してビットパターンを受取りかつ
そのビットパターンをアドレスバス上に置き、そこでそ
れがポッドによって受取られかつモニタされることがで
きるということが知られるであろう。しかしながら、テ
スト装置がシグネチャの発生によってデータおよびアド
レスバスの診断を行なうので、好ましい実施例におい
て、バステストプリミティブは、ブートメモリに対応す
るデータおよびアドレスバスの部分を動作させる(exer
cise)のように設計されたプログラムとして実現され
る。単一の動作または動作のシーケンスとして実現され
ても、バステストプリミティブがデータおよびアドレス
バスを含む線について、またはこれらの線またはそれら
の線の一部分上に置かれることができるビットの組合わ
せに関してさえも徹底的(exhaustive)ではなく、かつ
こうして前進/非前進(go/no go)テストとして迅速
に機能できることが重要である。
データ刺激プリミティブは、バステストプリミティブよ
りもμPの動作性のより低いレベルで実現され、特定的
には、μPを繰返してリセットすることによってであ
り、その機能はバステストプリミティブの実行に先立っ
てテストされているであろう。リセットで、μPがブー
トメモリ内の第1の位置にアクセスし、かつそこにスト
アされたビットパターンを検索する。データ刺激はプロ
グラムではないが、しかし各リセットごとにブートメモ
リの第1の位置内のビットパターンを変更することによ
って実行される。この機能はいわゆるベクトル化された
リセットおよびエグゼキュート・オン・リセット型のマ
イクロプロセッサの両方に対して共通であることに注目
することが重要である。いずれの型のμPでも、メモリ
から検索されたビットパターンがデータバスで通信され
かつアドレスバス上に現われるであろう。リセットの間
に、ブートメモリの第1の位置の初期読出しの間に同期
パルスがμPによって発生され、それは同期モジュール
によって捕捉され、ポッドへ通信されかつデータバス上
に現われる信号を評価するために用いられ、それはデー
タバス線シグネチャを収集するためのプロービング(pr
obing)または非プロービングテストのいずれかによっ
てである。後者は、チップ選択線をモニタしながら、ビ
ットパターンの徹底的なデータ刺激シーケンスを用いる
バステストに類似の手順によってなされる。データ刺激
シーケンスは、それが一連の本質的に任意のパターンか
らなるという意味において徹底的であるが、それらは、
それにもかかわらず、データバスの各線上に特有のシグ
ネチャが発生されるであろうように選択される。バステ
ストプリミティブの説明でメモリブートスペースに対し
て言及されたように、チップ選択線(それはアドレスバ
ス上の高位ビットの論理関数である)が、ブートスペー
ス位置を介して循環するときもし1つまたはそれ以上の
高位ビットが予期されるように0でないときのみ、誤り
を反映し、かつもし1つまたはそれ以上の高位バス線が
接地に連結されていてさえ、前進/非前進テストが通過
させられるであろう。同じように、予期されるようなチ
ップ選択信号の存在または不存在が、データ刺激シーケ
ンスを行なう間に、高位線の1つがラッチされるかどう
かを反映するであろう(たとえば、接地に短絡され
る)。もしこのテストが通過させられると、データバス
の線が別のデータバス線に結ばれた、結線欠陥のみが、
残るであろう。これはプロービングまたは、好ましくは
アドレスバスのテストの後に自動診断によって後に診断
されることができ、それはデータバスの検証によって可
能とされた。
りもμPの動作性のより低いレベルで実現され、特定的
には、μPを繰返してリセットすることによってであ
り、その機能はバステストプリミティブの実行に先立っ
てテストされているであろう。リセットで、μPがブー
トメモリ内の第1の位置にアクセスし、かつそこにスト
アされたビットパターンを検索する。データ刺激はプロ
グラムではないが、しかし各リセットごとにブートメモ
リの第1の位置内のビットパターンを変更することによ
って実行される。この機能はいわゆるベクトル化された
リセットおよびエグゼキュート・オン・リセット型のマ
イクロプロセッサの両方に対して共通であることに注目
することが重要である。いずれの型のμPでも、メモリ
から検索されたビットパターンがデータバスで通信され
かつアドレスバス上に現われるであろう。リセットの間
に、ブートメモリの第1の位置の初期読出しの間に同期
パルスがμPによって発生され、それは同期モジュール
によって捕捉され、ポッドへ通信されかつデータバス上
に現われる信号を評価するために用いられ、それはデー
タバス線シグネチャを収集するためのプロービング(pr
obing)または非プロービングテストのいずれかによっ
てである。後者は、チップ選択線をモニタしながら、ビ
ットパターンの徹底的なデータ刺激シーケンスを用いる
バステストに類似の手順によってなされる。データ刺激
シーケンスは、それが一連の本質的に任意のパターンか
らなるという意味において徹底的であるが、それらは、
それにもかかわらず、データバスの各線上に特有のシグ
ネチャが発生されるであろうように選択される。バステ
ストプリミティブの説明でメモリブートスペースに対し
て言及されたように、チップ選択線(それはアドレスバ
ス上の高位ビットの論理関数である)が、ブートスペー
ス位置を介して循環するときもし1つまたはそれ以上の
高位ビットが予期されるように0でないときのみ、誤り
を反映し、かつもし1つまたはそれ以上の高位バス線が
接地に連結されていてさえ、前進/非前進テストが通過
させられるであろう。同じように、予期されるようなチ
ップ選択信号の存在または不存在が、データ刺激シーケ
ンスを行なう間に、高位線の1つがラッチされるかどう
かを反映するであろう(たとえば、接地に短絡され
る)。もしこのテストが通過させられると、データバス
の線が別のデータバス線に結ばれた、結線欠陥のみが、
残るであろう。これはプロービングまたは、好ましくは
アドレスバスのテストの後に自動診断によって後に診断
されることができ、それはデータバスの検証によって可
能とされた。
検証(同時係属中のポルストラ(Polstra)など
の出願において開示されるように)、保証(同時係属中
のホワイト(White)などの出願において開示され
るように)、データバスのテストまたは診断の後、アド
レスバスのテストがデータ刺激プリミティブに対して同
じ刺激シーケンスを用いて行なわれてもよい。しかしな
がら、これらのビットパターンを用いて読出/書込命令
のプログラムされたシーケンスを行なうこと、およびプ
ローブでか、または好ましくは、それからラッチされた
または結ばれた線が推論される分析メモリ内でかのいず
れかでシグネチャを収集することによって、これはなさ
れる。上記で指摘されたように、アドレス線の徹底的な
テストが刺激シーケンスにおいて限られた数のビットパ
ターンのみを用いて行なわれてもよい。一旦アドレスバ
ス線がこうして十分に診断されると、データ線の十分な
診断が可能であろうし、なぜならばデータバス線上に現
われるいかなる欠陥もまたアドレスバス線上に反映され
るであろうからである。アドレスバス線が十分に診断さ
れたので、気付かれるいかなる障害も特定のバスへ分離
されるであろう。エグゼキュート・オン・リセットプロ
セッサに対して、アドレス刺激プリミティブを行なうた
めのプログラムが単一の命令であり得ることを言及する
ことが役に立つ。ベクトル化されたリセットプロセッサ
に対して、それは第1の命令のアドレスに対するブート
位置アドレスを調べるが、アドレス刺激プリミティブは
典型的には全く命令を必要とせず、所望のビットパター
ンがリセットベクトル位置でエミュレーションメモリ内
に単に置かれる。
の出願において開示されるように)、保証(同時係属中
のホワイト(White)などの出願において開示され
るように)、データバスのテストまたは診断の後、アド
レスバスのテストがデータ刺激プリミティブに対して同
じ刺激シーケンスを用いて行なわれてもよい。しかしな
がら、これらのビットパターンを用いて読出/書込命令
のプログラムされたシーケンスを行なうこと、およびプ
ローブでか、または好ましくは、それからラッチされた
または結ばれた線が推論される分析メモリ内でかのいず
れかでシグネチャを収集することによって、これはなさ
れる。上記で指摘されたように、アドレス線の徹底的な
テストが刺激シーケンスにおいて限られた数のビットパ
ターンのみを用いて行なわれてもよい。一旦アドレスバ
ス線がこうして十分に診断されると、データ線の十分な
診断が可能であろうし、なぜならばデータバス線上に現
われるいかなる欠陥もまたアドレスバス線上に反映され
るであろうからである。アドレスバス線が十分に診断さ
れたので、気付かれるいかなる障害も特定のバスへ分離
されるであろう。エグゼキュート・オン・リセットプロ
セッサに対して、アドレス刺激プリミティブを行なうた
めのプログラムが単一の命令であり得ることを言及する
ことが役に立つ。ベクトル化されたリセットプロセッサ
に対して、それは第1の命令のアドレスに対するブート
位置アドレスを調べるが、アドレス刺激プリミティブは
典型的には全く命令を必要とせず、所望のビットパター
ンがリセットベクトル位置でエミュレーションメモリ内
に単に置かれる。
全体のシステムおよび方法の状況において上記で要約さ
れたプリミティブの要点を繰返すと、μPベースのシス
テムの核のテストを行なうことが所望であるとき、エミ
ュレーションメモリが電気的にテストされるべきユニッ
トのメモリの代わりをし、かつ同期モジュールが導体1
40(第3図)によってμPのタイミング情報および強
制ピンに接続される。テスト手順が開始されるとき、或
るチェックがなされて下記に詳細に列挙されるであろう
ように、核のエレメントにパワーが供給されることを確
かめる。それからリセットオーバドライブチェックが行
なわれて、ポッドが実際にμPのリセットを開始し得る
かどうかが決められ、かつ同期モジュールによってモニ
タされてリセット線が最初に活性状態になりそれから非
活性状態になるかどうかが決められる。μPの実際のリ
セットはこのステップにおいてチェックされず、しかし
そうすることができるべきである信号がμPの適当なピ
ンに存在するだけである。
れたプリミティブの要点を繰返すと、μPベースのシス
テムの核のテストを行なうことが所望であるとき、エミ
ュレーションメモリが電気的にテストされるべきユニッ
トのメモリの代わりをし、かつ同期モジュールが導体1
40(第3図)によってμPのタイミング情報および強
制ピンに接続される。テスト手順が開始されるとき、或
るチェックがなされて下記に詳細に列挙されるであろう
ように、核のエレメントにパワーが供給されることを確
かめる。それからリセットオーバドライブチェックが行
なわれて、ポッドが実際にμPのリセットを開始し得る
かどうかが決められ、かつ同期モジュールによってモニ
タされてリセット線が最初に活性状態になりそれから非
活性状態になるかどうかが決められる。μPの実際のリ
セットはこのステップにおいてチェックされず、しかし
そうすることができるべきである信号がμPの適当なピ
ンに存在するだけである。
次に、同期モジュールが評価されるμPのクロック信号
を捕捉する。もしμPクロック信号がポッドによって受
取られなければ、付加的なチェックがクロックになされ
て、それが遅いかまたは短絡されたか、および強制線上
の信号の予期されない値のためなのかを決める。
を捕捉する。もしμPクロック信号がポッドによって受
取られなければ、付加的なチェックがクロックになされ
て、それが遅いかまたは短絡されたか、および強制線上
の信号の予期されない値のためなのかを決める。
この点において、μPそれ自体上ではテストは行なわれ
なかったが、しかし十分に信号が検証されてそのような
テストが今行なわれてもよいことを決める。これらのテ
ストの最も基本、μPリセット、がリセット線をオーバ
ドライブしかつアドレスデコーダ80からのブートメモ
リ位置に対応するチップ選択線上のチップ選択信号を捜
すことによって今なされる。もし成功であれば、ブート
メモリの第1の位置をアクセスするためにアドレスバス
の低位の線上の正しい信号をチェックする目的のために
μPが再びリセットされるであろう。この手順は今、バ
ステストのシーケンス、および上記で略述されたように
データおよびアドレス刺激プリミティブのシーケンスを
進めるために核の十分な機能性を検証したであろう。も
し今までに行なわれたテストのいずれかが欠陥を示せ
ば、μPからのリセットよりも複雑または高いレベルの
機能を必要とせずに、特定の核の故障が明白に示された
であろう。上記で略述されたバステストは、それの第1
の(かつおそらく唯一の)サイクルにおいて、核の残
余、読出しおよび書込動作を十分にテストしかつ診断す
るために必要な唯一のさらなる機能を検証するであろ
う。同期モジュールによって発生された高分解能同期パ
ルスのために、興味のあるバスサイクルが分離されるこ
とができ、かつバスの評価が線を動作させることを課さ
れた刺激パターンに応答して発生されたシグネチャに従
って行なわれ得ることもまた考慮されるべきである。た
とえば、ポルストラなどの出願において開示されたよう
に、12ビットパターンのみが、バスを十分に診断する
ために各線ごとに独特のシグネチャを発生するためにバ
ス内の32の線を動作させるために刺激プリミティブに
おいて必要であるので、テスト速度のかなりの増加が達
成され得る。
なかったが、しかし十分に信号が検証されてそのような
テストが今行なわれてもよいことを決める。これらのテ
ストの最も基本、μPリセット、がリセット線をオーバ
ドライブしかつアドレスデコーダ80からのブートメモ
リ位置に対応するチップ選択線上のチップ選択信号を捜
すことによって今なされる。もし成功であれば、ブート
メモリの第1の位置をアクセスするためにアドレスバス
の低位の線上の正しい信号をチェックする目的のために
μPが再びリセットされるであろう。この手順は今、バ
ステストのシーケンス、および上記で略述されたように
データおよびアドレス刺激プリミティブのシーケンスを
進めるために核の十分な機能性を検証したであろう。も
し今までに行なわれたテストのいずれかが欠陥を示せ
ば、μPからのリセットよりも複雑または高いレベルの
機能を必要とせずに、特定の核の故障が明白に示された
であろう。上記で略述されたバステストは、それの第1
の(かつおそらく唯一の)サイクルにおいて、核の残
余、読出しおよび書込動作を十分にテストしかつ診断す
るために必要な唯一のさらなる機能を検証するであろ
う。同期モジュールによって発生された高分解能同期パ
ルスのために、興味のあるバスサイクルが分離されるこ
とができ、かつバスの評価が線を動作させることを課さ
れた刺激パターンに応答して発生されたシグネチャに従
って行なわれ得ることもまた考慮されるべきである。た
とえば、ポルストラなどの出願において開示されたよう
に、12ビットパターンのみが、バスを十分に診断する
ために各線ごとに独特のシグネチャを発生するためにバ
ス内の32の線を動作させるために刺激プリミティブに
おいて必要であるので、テスト速度のかなりの増加が達
成され得る。
この発明に従いかつ再び第3図を参照すると、導体14
0がリセット線および他の線に接続され、その上でUU
T μPの動作状態(状態ピン)を反映する信号が現わ
れるであろう。たとえば、80386プロセッサ上で、
これらの線はHOLD、HLDA(応答保持)、AD
S、READY、CLK2、およびRESET線であろ
う。これらの信号は線140を介してバッファ152に
よって受取られ、かつバスサイクルステートマシン20
0への入力としてケーブル90を介してポッドへ伝送さ
れるであろう。バスサイクルステートマシン200はこ
れらの信号に対してメインフレーム10の制御の下に論
理演算を行ない、それへ応答して同期信号を発生する同
期パルス発生ステートマシン202を制御するための制
御信号を発生するであろう。この同期信号はメインフレ
ーム10へ送られ、それはそこから制御信号を発生し、
それは示される、ポッドの様々な部分へ、とりわけアナ
ライザRAM62へ戻される。
0がリセット線および他の線に接続され、その上でUU
T μPの動作状態(状態ピン)を反映する信号が現わ
れるであろう。たとえば、80386プロセッサ上で、
これらの線はHOLD、HLDA(応答保持)、AD
S、READY、CLK2、およびRESET線であろ
う。これらの信号は線140を介してバッファ152に
よって受取られ、かつバスサイクルステートマシン20
0への入力としてケーブル90を介してポッドへ伝送さ
れるであろう。バスサイクルステートマシン200はこ
れらの信号に対してメインフレーム10の制御の下に論
理演算を行ない、それへ応答して同期信号を発生する同
期パルス発生ステートマシン202を制御するための制
御信号を発生するであろう。この同期信号はメインフレ
ーム10へ送られ、それはそこから制御信号を発生し、
それは示される、ポッドの様々な部分へ、とりわけアナ
ライザRAM62へ戻される。
この発明に従って、第4図および第5図を参照すると、
アドレス追跡を分析するための機構が以下のように核回
路の検証を提供する。命令およびデータアドレスが単調
に増加する順序で配列される、第4図のそれのような、
テストプログラムがエミュレーションメモリ内にロード
される。これらのコードは16進法において与えられ
る。命令位置がシーケンス0000、0003、000
6および0009で与えられる。対応するデータ位置
は、それぞれ、0100、0200、0400およびジ
ャンプ命令0009である。このプログラムに対応し
て、チェックテーブルが第5図に示されるように設定さ
れる。チェックテーブル内の各エントリは1つのメモリ
アクセスを説明し、かつ命令アドレス、データアドレス
およびデータサイズを規定し、こうしてデータアクセス
および命令の間の依存状態関係を説明し、それはデータ
アクセスが起こることを引き起こす。データアクセスの
みがチェックテーブル内のエントリを有し、なぜならば
命令フェッチのシーケンスが、プログラムが知られてい
るので、検証アルゴリズムによって推論されるからであ
る。
アドレス追跡を分析するための機構が以下のように核回
路の検証を提供する。命令およびデータアドレスが単調
に増加する順序で配列される、第4図のそれのような、
テストプログラムがエミュレーションメモリ内にロード
される。これらのコードは16進法において与えられ
る。命令位置がシーケンス0000、0003、000
6および0009で与えられる。対応するデータ位置
は、それぞれ、0100、0200、0400およびジ
ャンプ命令0009である。このプログラムに対応し
て、チェックテーブルが第5図に示されるように設定さ
れる。チェックテーブル内の各エントリは1つのメモリ
アクセスを説明し、かつ命令アドレス、データアドレス
およびデータサイズを規定し、こうしてデータアクセス
および命令の間の依存状態関係を説明し、それはデータ
アクセスが起こることを引き起こす。データアクセスの
みがチェックテーブル内のエントリを有し、なぜならば
命令フェッチのシーケンスが、プログラムが知られてい
るので、検証アルゴリズムによって推論されるからであ
る。
メモリアクセスの実際のアドレストレースが第6図に示
される。μPがリセットされるとき、位置0000での
命令を捜すことによってそれは機能し始めるであろう
が、この例において、それは位置0100でのデータに
対するロード動作を行なうための命令である。次のサイ
クル上で、それは位置0001での命令を捜すであろ
う、などである。別の命令は位置0003まで供給され
ない(第4図)ので、それはステップ0002を介して
進むであろう。別の命令が位置0003で存在し、かつ
前にフェッチされた命令が実行されていないので、ステ
ップ3(第6図)は実行がアドレス0100でのデータ
アクセスの実行によって始まることを引き起こすであろ
う。第6図に示されるように、アドレス0100でのデ
ータのフェッチはステップ1ないし3のいずれにも適当
であったであろう。ステップ4から始まって、プロセス
が類似の態様で任意の回数だけ繰返される。ステップ1
2において、ジャンプ命令を含むアドレス0009がア
クセスされる。このジャンプはアドレス0009に向け
られ、かつ割込まれるまで実行されるであろうループを
形成する。ジャンプの実行は第6図に示されるように次
の2、3の続くステップのいずれでも適当であろう。注
意するべき大事な点は、メモリアクセスが、前にアクセ
スされた命令アドレスまたは前にアクセスされた命令に
よって特定されるアドレスのいずれかに対し適当でなけ
ればならないことである。もしどちらでもなければ、誤
りが報告される。
される。μPがリセットされるとき、位置0000での
命令を捜すことによってそれは機能し始めるであろう
が、この例において、それは位置0100でのデータに
対するロード動作を行なうための命令である。次のサイ
クル上で、それは位置0001での命令を捜すであろ
う、などである。別の命令は位置0003まで供給され
ない(第4図)ので、それはステップ0002を介して
進むであろう。別の命令が位置0003で存在し、かつ
前にフェッチされた命令が実行されていないので、ステ
ップ3(第6図)は実行がアドレス0100でのデータ
アクセスの実行によって始まることを引き起こすであろ
う。第6図に示されるように、アドレス0100でのデ
ータのフェッチはステップ1ないし3のいずれにも適当
であったであろう。ステップ4から始まって、プロセス
が類似の態様で任意の回数だけ繰返される。ステップ1
2において、ジャンプ命令を含むアドレス0009がア
クセスされる。このジャンプはアドレス0009に向け
られ、かつ割込まれるまで実行されるであろうループを
形成する。ジャンプの実行は第6図に示されるように次
の2、3の続くステップのいずれでも適当であろう。注
意するべき大事な点は、メモリアクセスが、前にアクセ
スされた命令アドレスまたは前にアクセスされた命令に
よって特定されるアドレスのいずれかに対し適当でなけ
ればならないことである。もしどちらでもなければ、誤
りが報告される。
第7図の全体の流れ図が示され、いくらかより詳細にこ
のシーケンスをたどる。この発明の主要データ構成、チ
ェックテーブル、検証を可能にするための機能がいかに
実行されるべきかを示した。分析を容易にするために好
ましくは維持される他のデータ構成は以下のようなもの
である。
のシーケンスをたどる。この発明の主要データ構成、チ
ェックテーブル、検証を可能にするための機能がいかに
実行されるべきかを示した。分析を容易にするために好
ましくは維持される他のデータ構成は以下のようなもの
である。
「アクセスシーケンス数」は、アドレスシーケンスのど
のステップが考えられているかを示す変数である。0で
始まって、連続するアドレスが分析されるに従ってそれ
は直線的に増加する。
のステップが考えられているかを示す変数である。0で
始まって、連続するアドレスが分析されるに従ってそれ
は直線的に増加する。
「命令フェッチポインタ」はチェックテーブル内を指し
かつ命令がフェッチされるに従って増分される。命令フ
ェッチポインタによって示されるアドレスおよび続くア
ドレスがフェッチされなかったと仮定され、一方ポイン
タに先行するアドレスがフェッチされたと仮定する。
かつ命令がフェッチされるに従って増分される。命令フ
ェッチポインタによって示されるアドレスおよび続くア
ドレスがフェッチされなかったと仮定され、一方ポイン
タに先行するアドレスがフェッチされたと仮定する。
「データアクセスポインタ」もまたチェックテーブル内
を指し、かつ同じ態様でシーケンシャルに増分される。
同じ仮定が、それがフェッチされたと仮定されたデータ
アドレスをフェッチされないと仮定されたそれらから分
割するであろうという点を除いて、命令フェッチポイン
タに関して適用される。
を指し、かつ同じ態様でシーケンシャルに増分される。
同じ仮定が、それがフェッチされたと仮定されたデータ
アドレスをフェッチされないと仮定されたそれらから分
割するであろうという点を除いて、命令フェッチポイン
タに関して適用される。
「アクセスタイプフラグ」は分析のいかなる特定の段に
おいてもどの型のメモリアクセスが予期されるかを示
す。可能性があるのは、INST−命令フェッチ、DA
TA−データアクセスおよびJUMP−ジャンプによっ
て引き起こされる非シーケンシャルな命令フェッチであ
る。これらのフラグのうちの1つまたはそれ以上が分析
の各ステップでセットされる。もしINSTおよびDA
TAの両方がセットされれば、命令またはデータフェッ
チのいずれかが適当に受入れられるであろう。もしIN
STのみがセットされれば、命令フェッチが受入れられ
るであろう。DATAおよびJUMPは決して同時にセ
ットされない。
おいてもどの型のメモリアクセスが予期されるかを示
す。可能性があるのは、INST−命令フェッチ、DA
TA−データアクセスおよびJUMP−ジャンプによっ
て引き起こされる非シーケンシャルな命令フェッチであ
る。これらのフラグのうちの1つまたはそれ以上が分析
の各ステップでセットされる。もしINSTおよびDA
TAの両方がセットされれば、命令またはデータフェッ
チのいずれかが適当に受入れられるであろう。もしIN
STのみがセットされれば、命令フェッチが受入れられ
るであろう。DATAおよびJUMPは決して同時にセ
ットされない。
「次の命令アドレス」は次の命令フェッチが起こること
を予測されるアドレスを特定し、かつINSTフラグが
セットされるときのみ用いられる。
を予測されるアドレスを特定し、かつINSTフラグが
セットされるときのみ用いられる。
「次のデータアドレス」は次の予測されるデータフェッ
チまたはジャンプターゲットのアドレスを特定し、かつ
JUMPまたはDATAフラグのいずれかがセットされ
るとき用いられる。
チまたはジャンプターゲットのアドレスを特定し、かつ
JUMPまたはDATAフラグのいずれかがセットされ
るとき用いられる。
「次のデータサイズ」はDATAフラグがセットされる
ときに用いられ、かつ次のデータアクセスの間にアクセ
スされることを予測されるバイトの数を特定する。
ときに用いられ、かつ次のデータアクセスの間にアクセ
スされることを予測されるバイトの数を特定する。
第7図に戻ると、検証プロセスの第1のステップはシス
テムを初期化することである(701)。第8図から、
このステップがフラグをクリアし(801)かつDAT
A(803)またはJUMP(804)フラグのいずれ
かをデータサイズ値に応答してリセットする(802)
ことが理解される。もしDATAフラグがセットされれ
ば、次の命令アドレスおよび次のデータサイズがチェッ
クテーブルからセットされるであろう(805)。もし
JUMPフラグがセットされれば、次のデータアドレス
がチェックテーブルからセットされる(806)。これ
らのチェックテーブルエントリがアクセスされ、データ
アクセスポインタ(807)および命令フェッチポイン
タ(808)が増分される。
テムを初期化することである(701)。第8図から、
このステップがフラグをクリアし(801)かつDAT
A(803)またはJUMP(804)フラグのいずれ
かをデータサイズ値に応答してリセットする(802)
ことが理解される。もしDATAフラグがセットされれ
ば、次の命令アドレスおよび次のデータサイズがチェッ
クテーブルからセットされるであろう(805)。もし
JUMPフラグがセットされれば、次のデータアドレス
がチェックテーブルからセットされる(806)。これ
らのチェックテーブルエントリがアクセスされ、データ
アクセスポインタ(807)および命令フェッチポイン
タ(808)が増分される。
次のステップ(第7図)はアクセスシーケンス数を0に
セットすることである(702)。それから実際のアド
レスがアクセスシーケンス数に等しいようにセットされ
る(703)。次に、実際のアドレス値が命令フェッチ
であり得るかが決められるであろう(704)。第9図
を参照すると、INSTフラグがチェックされる(90
1)。もしセットでなければ、次の命令は命令であり得
ず、かつ第7図の続くステップ(705)が行なわれる
であろう。もしフラグがセットされれば、実際のアドレ
ス値が次の命令アドレス値と比較されるであろうし(9
02)、もし等しければ、プロセスはプロセス命令フェ
ッチステップ(第12図)に分岐し、それは命令フェッ
チポインタ(1201)および次の命令アドレス(12
02)を増分し、かつ更新状態手続(第15図)を行な
う(1203)。そうでなければ、プロセスが続き、可
能なデータアクセスとしてアクセスを評価する。第10
図は第9図のそれに類似の手順を示し、第1にDATA
フラグ(1001)をかつそれから実際のアドレスと次
のデータアドレス値の等しいことをチェックし(100
2)、おそらく示されるように第13図に示されるプロ
セスデータアクセスへ分岐する。
セットすることである(702)。それから実際のアド
レスがアクセスシーケンス数に等しいようにセットされ
る(703)。次に、実際のアドレス値が命令フェッチ
であり得るかが決められるであろう(704)。第9図
を参照すると、INSTフラグがチェックされる(90
1)。もしセットでなければ、次の命令は命令であり得
ず、かつ第7図の続くステップ(705)が行なわれる
であろう。もしフラグがセットされれば、実際のアドレ
ス値が次の命令アドレス値と比較されるであろうし(9
02)、もし等しければ、プロセスはプロセス命令フェ
ッチステップ(第12図)に分岐し、それは命令フェッ
チポインタ(1201)および次の命令アドレス(12
02)を増分し、かつ更新状態手続(第15図)を行な
う(1203)。そうでなければ、プロセスが続き、可
能なデータアクセスとしてアクセスを評価する。第10
図は第9図のそれに類似の手順を示し、第1にDATA
フラグ(1001)をかつそれから実際のアドレスと次
のデータアドレス値の等しいことをチェックし(100
2)、おそらく示されるように第13図に示されるプロ
セスデータアクセスへ分岐する。
プロセスデータアクセスステップ(708)は次のデー
タアドレス値を増分し、かつ次のデータサイズ値を減分
する(1301)。フェッチされたデータは大きな数の
多分隣接するバイトかもしれないので、予測される次の
アドレスは次に高いアドレスにおいてであろうし、一方
データサイズを減分することは第13図の次のステップ
(1302)においてデータフェッチが完了するときを
検出する手段を提供し、それは次のデータサイズ値をテ
ストしてそれが0に等しいかどうかを決める。この特徴
はまた、サイズにかかわりなく、データフェッチのため
のチェックテーブル内の単一のエントリのみを可能とす
る。もし次のデータサイズが0に等しければ(130
2)、データアクセスポインタはチェックテーブルにお
いて増分され(1303)、状態が15図において示さ
れるように更新され(1304)、かつプロセスが第7
図に示される手順に戻る。もしそうでなければ、データ
フラグを除くすべてのフラグがクリアされ(130
5)、なぜならば続くフェッチがより多いデータのもの
でなければならずかつデータフェッチは次のデータサイ
ズを再び減分しかつ次のデータサイズが0に減じられる
までループを繰返すことによって続けられるであろうか
らである。
タアドレス値を増分し、かつ次のデータサイズ値を減分
する(1301)。フェッチされたデータは大きな数の
多分隣接するバイトかもしれないので、予測される次の
アドレスは次に高いアドレスにおいてであろうし、一方
データサイズを減分することは第13図の次のステップ
(1302)においてデータフェッチが完了するときを
検出する手段を提供し、それは次のデータサイズ値をテ
ストしてそれが0に等しいかどうかを決める。この特徴
はまた、サイズにかかわりなく、データフェッチのため
のチェックテーブル内の単一のエントリのみを可能とす
る。もし次のデータサイズが0に等しければ(130
2)、データアクセスポインタはチェックテーブルにお
いて増分され(1303)、状態が15図において示さ
れるように更新され(1304)、かつプロセスが第7
図に示される手順に戻る。もしそうでなければ、データ
フラグを除くすべてのフラグがクリアされ(130
5)、なぜならば続くフェッチがより多いデータのもの
でなければならずかつデータフェッチは次のデータサイ
ズを再び減分しかつ次のデータサイズが0に減じられる
までループを繰返すことによって続けられるであろうか
らである。
もし分岐が起こらなければ、分析は実際のアドレスを評
価して、それが第11図において示されるジャンプター
ゲットかどうかを決めることによって続く。これは再び
第9図および第10図に類似であり、第1にJUMPフ
ラグの状態を評価し(1101)しかしそれから実際の
アドレスをチェックしてそれが次のデータアドレス値に
等しいかどうかを決める(1302)。DATAおよび
JUMPフラグが決して同時にセットされないので、次
のデータアドレスに等しい実際のアドレスが、もしDA
TAフラグがセットされていたら(第10図)データア
クセスの処理の結果となったであろうし、かつJUMP
フラグがセットされていると既に決められているので
(第11図)、有効ジャンプが必然的に特定されかつ分
析が第14図に示されるように進むであろう。
価して、それが第11図において示されるジャンプター
ゲットかどうかを決めることによって続く。これは再び
第9図および第10図に類似であり、第1にJUMPフ
ラグの状態を評価し(1101)しかしそれから実際の
アドレスをチェックしてそれが次のデータアドレス値に
等しいかどうかを決める(1302)。DATAおよび
JUMPフラグが決して同時にセットされないので、次
のデータアドレスに等しい実際のアドレスが、もしDA
TAフラグがセットされていたら(第10図)データア
クセスの処理の結果となったであろうし、かつJUMP
フラグがセットされていると既に決められているので
(第11図)、有効ジャンプが必然的に特定されかつ分
析が第14図に示されるように進むであろう。
もし適切なジャンプが識別されれば、それは第14図に
示されるように処理されるであろう(209)。データ
アクセスポインタがチェックテーブル内で進められ(1
401)かつ次の命令アドレスが次のデータアドレスに
等しくセットされる(1402)。ジャンプが有効であ
ると決められたのでこれがなされ、実際のアドレス値は
次のデータアドレス値に等しいと決められ、かつジャン
プ命令は実際そのアドレスにおいてであろうし、こうし
て分離してそのアドレスをストアする必要性を排除し、
かつジャンプ命令は命令フェッチによってフェッチされ
てもよい(1403)。
示されるように処理されるであろう(209)。データ
アクセスポインタがチェックテーブル内で進められ(1
401)かつ次の命令アドレスが次のデータアドレスに
等しくセットされる(1402)。ジャンプが有効であ
ると決められたのでこれがなされ、実際のアドレス値は
次のデータアドレス値に等しいと決められ、かつジャン
プ命令は実際そのアドレスにおいてであろうし、こうし
て分離してそのアドレスをストアする必要性を排除し、
かつジャンプ命令は命令フェッチによってフェッチされ
てもよい(1403)。
この点において、すべての可能な型のメモリアクセスが
十分に評価され、かつもしアクセスが命令フェッチ、デ
ータフェッチまたはジャンプとして妥当であると考えら
れなけれ、故障が第7図に示されるように報告されるに
違いない。
十分に評価され、かつもしアクセスが命令フェッチ、デ
ータフェッチまたはジャンプとして妥当であると考えら
れなけれ、故障が第7図に示されるように報告されるに
違いない。
上記に示された更新状態手順が第15図に示される。こ
の手順は命令フェッチ(第12図)またはデータアクセ
ス(第13図)の処理で引き起こされるであろう。この
手順は、テストされている特定のμPのプリフェッチリ
ミットに関してこれらの動作の完了で正しくフラグおよ
びポインタがセットされることを保証する。すべてのフ
ラグが第1にクリアされ(1501)かつポインタの相
関的なアドレスが同等のためにチェックされる(150
2)。もしポインタが等しくなければ、次の命令アドレ
スがチェックされて、それが命令フェッチポインタを越
えたプリフェッチリミット内であるかどうかを決める
(1503)。いずれの場合も、INSTフラグがセッ
トされる(1504)。もしプリフェッチリミット内で
はなく、またはINSTフラグのセッティングの後に、
評価がなされて次の予測されるデータアクセスが次の予
測される命令フェッチに対応するかどうかを決め(15
05)、特定的には、それは命令アクセスポインタがデ
ータアクセスポインタよりも大きい(たとえば、チェッ
クテーブルの後のエントリで)かどうかである。そうで
なければ、分析プロセスが続き得る。そうであれば、不
完全なメモリアクセスが示され、かつ次のデータアドレ
スおよびデータサイズがチェックテーブルからリセット
され(1506)かつJUMP(1509)またはデー
タ(1508)フラグが適当にセットされてプロセスが
続くときアクセスを完了する。
の手順は命令フェッチ(第12図)またはデータアクセ
ス(第13図)の処理で引き起こされるであろう。この
手順は、テストされている特定のμPのプリフェッチリ
ミットに関してこれらの動作の完了で正しくフラグおよ
びポインタがセットされることを保証する。すべてのフ
ラグが第1にクリアされ(1501)かつポインタの相
関的なアドレスが同等のためにチェックされる(150
2)。もしポインタが等しくなければ、次の命令アドレ
スがチェックされて、それが命令フェッチポインタを越
えたプリフェッチリミット内であるかどうかを決める
(1503)。いずれの場合も、INSTフラグがセッ
トされる(1504)。もしプリフェッチリミット内で
はなく、またはINSTフラグのセッティングの後に、
評価がなされて次の予測されるデータアクセスが次の予
測される命令フェッチに対応するかどうかを決め(15
05)、特定的には、それは命令アクセスポインタがデ
ータアクセスポインタよりも大きい(たとえば、チェッ
クテーブルの後のエントリで)かどうかである。そうで
なければ、分析プロセスが続き得る。そうであれば、不
完全なメモリアクセスが示され、かつ次のデータアドレ
スおよびデータサイズがチェックテーブルからリセット
され(1506)かつJUMP(1509)またはデー
タ(1508)フラグが適当にセットされてプロセスが
続くときアクセスを完了する。
最後に、いかなるプロセスステップ(第12図ないし第
14図)の後の分析手順の継続が、分析が完了したかど
うかを決めるためにチェックし(710)かつ、テスト
プログラムが好ましくはジャンプによって始められるル
ープ内で終了するので、オペレータの意志でなされる。
手順終了に先立って、アクセスシーケンス数が増分され
かつプロセスが繰返される(711)。
14図)の後の分析手順の継続が、分析が完了したかど
うかを決めるためにチェックし(710)かつ、テスト
プログラムが好ましくはジャンプによって始められるル
ープ内で終了するので、オペレータの意志でなされる。
手順終了に先立って、アクセスシーケンス数が増分され
かつプロセスが繰返される(711)。
上記で述べられたこの発明の詳細な説明に従って、μP
ベースのシステムの核回路の自動検証のための装置およ
び方法が提供され、それはμPの命令プリフェッチに起
因してそのようなメモリアクセスの予想不可能性を十分
に補うメモリアクセスの分析に基づく。この発明によっ
て提供される分析は、予期される型のメモリアクセスの
認識を容易にするためにポインタおよびフラグと共に使
用するためにテストプログラムおよび対応するチェック
テーブルを用いる。
ベースのシステムの核回路の自動検証のための装置およ
び方法が提供され、それはμPの命令プリフェッチに起
因してそのようなメモリアクセスの予想不可能性を十分
に補うメモリアクセスの分析に基づく。この発明によっ
て提供される分析は、予期される型のメモリアクセスの
認識を容易にするためにポインタおよびフラグと共に使
用するためにテストプログラムおよび対応するチェック
テーブルを用いる。
こうしてこの発明を詳細に説明したが、多くの変化およ
び修正が、この発明の精神および範囲から逸脱すること
なしに、当業者には明らかであろうことが理解されるで
あろう。上記に述べられた詳細な説明は制限ではなく例
として意図され、この発明の範囲は前掲の特許請求の範
囲によってのみ制限される。
び修正が、この発明の精神および範囲から逸脱すること
なしに、当業者には明らかであろうことが理解されるで
あろう。上記に述べられた詳細な説明は制限ではなく例
として意図され、この発明の範囲は前掲の特許請求の範
囲によってのみ制限される。
第1図はこの発明を組入れるテスト装置の図である。 第2図はこの発明の簡易ブロック図である。 第3図は第2図に示される全体のシステムの詳細ブロッ
ク図である。 第4図はZ80 μPに対して適合されるこの発明に従
うサンプルテストプログラムを示す図である。 第5図はこの発明に従いかつ第4図のプログラムに対応
する典型的なチェックテーブルを示す図である。 第6図は第4図および第5図のプログラムおよびチェッ
クテーブルの例に従うアドレス追跡を示す図である。 第7図はこの発明に従う全体の流れ図である。 第8図は第7図の初期化ステップの詳細なフロー図であ
る。 第9図は第7図の「実際のアドレスが命令フェッチであ
り得るか」ステップの詳細な流れ図である。 第10図は第7図の「実際のアドレスがデータアクセス
であり得るか」の詳細な流れ図である。 第11図は第7図の「実際のアドレスがジャンプターゲ
ットであり得るか」ステップの詳細な流れ図である。 第12図は第7図の「プロセス命令フェッチ」ステップ
の詳細な流れ図である。 第13図は第7図の「プロセスデータアクセス」ステッ
プの詳細な流れ図である。 第14図は第7図の「プロセスジャンプ」ステップの詳
細な流れ図である。 第15図は第7図の「更新状態」ステップの詳細な流れ
図である。 図において、10はメインフレームプロセッサであり、
12はインタフェースポッドであり、20はキーボード
であり、32はプローブであり、150は同期アダプタ
モジュールであり、100はメモリモジュールである。
ク図である。 第4図はZ80 μPに対して適合されるこの発明に従
うサンプルテストプログラムを示す図である。 第5図はこの発明に従いかつ第4図のプログラムに対応
する典型的なチェックテーブルを示す図である。 第6図は第4図および第5図のプログラムおよびチェッ
クテーブルの例に従うアドレス追跡を示す図である。 第7図はこの発明に従う全体の流れ図である。 第8図は第7図の初期化ステップの詳細なフロー図であ
る。 第9図は第7図の「実際のアドレスが命令フェッチであ
り得るか」ステップの詳細な流れ図である。 第10図は第7図の「実際のアドレスがデータアクセス
であり得るか」の詳細な流れ図である。 第11図は第7図の「実際のアドレスがジャンプターゲ
ットであり得るか」ステップの詳細な流れ図である。 第12図は第7図の「プロセス命令フェッチ」ステップ
の詳細な流れ図である。 第13図は第7図の「プロセスデータアクセス」ステッ
プの詳細な流れ図である。 第14図は第7図の「プロセスジャンプ」ステップの詳
細な流れ図である。 第15図は第7図の「更新状態」ステップの詳細な流れ
図である。 図において、10はメインフレームプロセッサであり、
12はインタフェースポッドであり、20はキーボード
であり、32はプローブであり、150は同期アダプタ
モジュールであり、100はメモリモジュールである。
Claims (11)
- 【請求項1】プリフェッチ論理を含むマイクロプロセッ
サを有する被テストユニットの検証のための方法であっ
て、 前記被テストユニットの核回路をテストするためのエミ
ュレーションメモリを設けるステップと、 テストプログラムおよび対応するチェックテーブルを前
記エミュレーションメモリ内にロードするステップと、 前記マイクロプロセッサが前記テストプログラムを実行
することを引き起こすステップと、 前記テストプログラムの実行の間に各メモリアクセスの
アドレスをモニタするステップと、 少なくとも命令アクセスおよびデータアクセスのうちの
1つとしてアクセスされた各アドレスを識別するステッ
プと、 各命令アクセスのアドレスが先行の命令アクセスアドレ
スよりも大きいかどうかを決めるステップと、 各データアクセスのアドレスが先行のデータアクセスア
ドレスよりも大きいかどうかを決めるステップと、 各データアクセスのアドレスが最も最近アクセスされた
命令内で特定されたデータの位置に対応するかどうかを
決めるステップと、 前記決めるステップの結果に基づいて前記核回路の検証
を確立するステップとを含む、方法。 - 【請求項2】プリフェッチ論理を含むマイクロプロセッ
サを有する被テストユニットの検証のための方法であっ
て、 前記被テストユニットの核回路をテストするためのエミ
ュレーションメモリを設けるステップと、 テストプログラムおよび対応するチェックテーブルを前
記エミュレーションメモリ内にロードするステップと、 前記マイクロプロセッサが前記テストプログラムを実行
することを引き起こすステップと、 前記テストプログラムの実行の間に各メモリアクセスの
アドレスをモニタするステップと、 少なくとも命令アクセスまたはデータアクセスのうちの
1つとしてアクセスされた各アドレスを識別するステッ
プと、 各命令アクセスのアドレスが先行の命令アクセスアドレ
スよりも大きいかどうかを決めるステップと、 各データアクセスのアドレスが先行のデータアクセスア
ドレスよりも大きいかどうかを決めるステップと、 各データアクセスのアドレスが最も最近アクセスされた
命令内で特定化されたデータの位置に対応するかどうか
を決めるステップと、 前記決めるステップのうちのいずれの1つ内でも特定さ
れた状態が合わなければ、前記核回路の検証を妨げるス
テップとを含む、方法。 - 【請求項3】命令アクセスまたはデータアクセスがそれ
ぞれ可能かどうかを示すために、前記命令アクセスおよ
びデータアクセスのうちの前記少なくとも1つに対応す
るフラグを供給するステップを含む、請求項1に記載の
方法。 - 【請求項4】前記テストプログラムと一致するデータア
クセスアドレスおよび命令アドレスに対応する前記チェ
ックテーブル内でデータが供給される、請求項1に記載
の方法。 - 【請求項5】前記チェックテーブル内の前記データは前
記テストプログラムに対応するデータサイズ情報をさら
に備える、請求項4に記載の方法。 - 【請求項6】少なくとも1つの前記決めるステップが、 前記対応するフラグがセットされているかどうかを決め
るステップと、 アクセスされたアドレスが前記チェックテーブル内のア
ドレスに対応するかどうかを決めるステップとを含む、
請求項3に記載の方法。 - 【請求項7】プリフェッチ論理を含むマイクロプロセッ
サを有する被テストユニットの検証のための装置であっ
て、前記被テストユニットの核回路をテストするための
エミュレーションメモリ手段を含み、 テストプログラムおよび対応するチェックテーブルを前
記エミュレーションメモリ内にロードするための手段
と、 前記マイクロプロセッサが前記テストプログラムを実行
することを引き起こすための手段とを含み、 前記エミュレーションメモリ手段は前記テストプログラ
ムの実行の間に各メモリアクセスのアドレスをモニタす
るための手段を含み、さらに、 少なくとも命令アクセスおよびデータアクセスのうちの
1つとしてアクセスされた各アドレスを識別するための
手段と、 各命令アクセスの各アドレスを先立つ命令アクセスアド
レスと比較するための第1の比較手段と、 各データアクセスの各アドレスを先行のデータアクセス
アドレスと比較するための第2の比較手段と、 各データアクセスのアドレスが最も最近アクセスされた
命令内で特定されたデータの位置に対応するかどうかを
決めるための手段と、 前記第1および第2の比較手段および前記決定手段に応
答して前記核回路の検証を確立するための手段とを含
む、装置。 - 【請求項8】命令アクセスまたはデータアクセスがそれ
ぞれ可能であるかどうかを示すための、前記命令アクセ
スおよびデータアクセスの前記少なくとも1つに対応す
るフラグを含むための手段を含む、請求項7に記載の装
置。 - 【請求項9】前記チェックテーブルが、前記テストプロ
グラムと一致するデータアクセスアドレスおよび命令ア
ドレスに対応するデータを含む、請求項7に記載の装
置。 - 【請求項10】前記チェックテーブルが前記テストプロ
グラムに対応するデータサイズ情報をさらに含む、請求
項9に記載の装置。 - 【請求項11】前記比較手段の少なくとも1つが前記フ
ラグの対応する1つによって能動化される、請求項8に
記載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US275,183 | 1981-06-19 | ||
| US07/275,183 US4989207A (en) | 1988-11-23 | 1988-11-23 | Automatic verification of kernel circuitry based on analysis of memory accesses |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02201550A JPH02201550A (ja) | 1990-08-09 |
| JPH0628038B2 true JPH0628038B2 (ja) | 1994-04-13 |
Family
ID=23051230
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1304515A Expired - Lifetime JPH0628038B2 (ja) | 1988-11-23 | 1989-11-22 | 被テストユニットの検証のための方法および装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4989207A (ja) |
| EP (1) | EP0370926A3 (ja) |
| JP (1) | JPH0628038B2 (ja) |
| CN (1) | CN1043021A (ja) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0786811B2 (ja) * | 1990-06-19 | 1995-09-20 | 富士通株式会社 | アレイディスク装置のドライブ位置確認方式 |
| US5325365A (en) * | 1991-10-04 | 1994-06-28 | John Fluke Mfg. Co., Inc. | In a memory emulation test apparatus, a method of and system for fast functional testing of memories in microprocessor-based units |
| US5313618A (en) * | 1992-09-03 | 1994-05-17 | Metalink Corp. | Shared bus in-circuit emulator system and method |
| US5539901A (en) * | 1993-09-30 | 1996-07-23 | Intel Corporation | Method and apparatus for system management mode support for in-circuit emulators |
| US5968188A (en) | 1998-03-10 | 1999-10-19 | Grammar Engine | System for providing real-time code coverage |
| US6412046B1 (en) | 2000-05-01 | 2002-06-25 | Hewlett Packard Company | Verification of cache prefetch mechanism |
| ITTO20010180A1 (it) * | 2001-03-01 | 2002-09-01 | Cselt Centro Studi Lab Telecom | Procedimento e sistema per il controllo della configurazione dei nodidi una rete per telecomunicazione. |
| US6957371B2 (en) * | 2001-12-04 | 2005-10-18 | Intellitech Corporation | Method and apparatus for embedded built-in self-test (BIST) of electronic circuits and systems |
| JP2004199334A (ja) * | 2002-12-18 | 2004-07-15 | Sanyo Electric Co Ltd | マイクロコンピュータおよびその評価装置 |
| JP2004199333A (ja) * | 2002-12-18 | 2004-07-15 | Sanyo Electric Co Ltd | マイクロコンピュータおよびその評価装置 |
| US7426704B2 (en) * | 2004-05-10 | 2008-09-16 | International Business Machines Corporation | Design verification of highly optimized synchronous pipelines via random simulation driven by critical resource scheduling |
| US7584383B2 (en) * | 2006-08-04 | 2009-09-01 | Sun Microsystems, Inc. | Method and system for kernel-level diagnostics using a hardware watchpoint facility |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| NL282320A (ja) * | 1961-08-22 | |||
| US4055801A (en) * | 1970-08-18 | 1977-10-25 | Pike Harold L | Automatic electronic test equipment and method |
| FR2257213A5 (ja) * | 1973-12-04 | 1975-08-01 | Cii | |
| US4108358A (en) * | 1977-03-22 | 1978-08-22 | The Bendix Corporation | Portable circuit tester |
| US4139818A (en) * | 1977-09-30 | 1979-02-13 | Burroughs Corporation | Circuit means for collecting operational errors in IC chips and for identifying and storing the locations thereof |
| US4192451A (en) * | 1978-05-30 | 1980-03-11 | Tektronix, Inc. | Digital diagnostic system employing signature analysis |
| US4402055A (en) * | 1981-01-27 | 1983-08-30 | Westinghouse Electric Corp. | Automatic test system utilizing interchangeable test devices |
| FR2531230A1 (fr) * | 1982-07-27 | 1984-02-03 | Rank Xerox Sa | Ensemble destine au test automatique centralise de circuits imprimes et procede de test de circuits a microprocesseur faisant application de cet ensemble |
| FR2532771B1 (fr) * | 1982-09-08 | 1988-05-13 | Service Sa | Procede et dispositif pour tester statiquement l'ensemble des connexions et des circuits integres peripheriques d'un microprocesseur |
| DE3241412A1 (de) * | 1982-11-09 | 1984-05-10 | Siemens AG, 1000 Berlin und 8000 München | Vorrichtung zum testen eines hochintegrierten mikroprogramm-gesteuerten elektronischen bauteiles |
| US4641207A (en) * | 1983-03-22 | 1987-02-03 | Green George D | Diagnostic device and method for examining the operation of a disk drive |
| US4550406A (en) * | 1983-06-14 | 1985-10-29 | Everett/Charles Test Equipment, Inc. | Automatic test program list generation using programmed digital computer |
| US4641348A (en) * | 1983-11-09 | 1987-02-03 | Hewlett-Packard Company | Timing or logic state analyzer with automatic qualified inferential marking and post processing of captured trace data |
| US4656632A (en) * | 1983-11-25 | 1987-04-07 | Giordano Associates, Inc. | System for automatic testing of circuits and systems |
| US4691316A (en) * | 1985-02-14 | 1987-09-01 | Support Technologies, Inc. | ROM emulator for diagnostic tester |
| US4674089A (en) * | 1985-04-16 | 1987-06-16 | Intel Corporation | In-circuit emulator |
| US4687988A (en) * | 1985-06-24 | 1987-08-18 | International Business Machines Corporation | Weighted random pattern testing apparatus and method |
| US4868822A (en) * | 1988-02-19 | 1989-09-19 | John Fluke Mfg. Co., Inc. | Memory emulation method and system for testing and troubleshooting microprocessor-based electronic systems |
-
1988
- 1988-11-23 US US07/275,183 patent/US4989207A/en not_active Expired - Fee Related
-
1989
- 1989-11-21 CN CN89108773.7A patent/CN1043021A/zh active Pending
- 1989-11-22 EP EP19890420459 patent/EP0370926A3/en not_active Withdrawn
- 1989-11-22 JP JP1304515A patent/JPH0628038B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0370926A3 (en) | 1991-07-10 |
| JPH02201550A (ja) | 1990-08-09 |
| US4989207A (en) | 1991-01-29 |
| EP0370926A2 (en) | 1990-05-30 |
| CN1043021A (zh) | 1990-06-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5136590A (en) | Kernel testing interface and method for automating diagnostics of microprocessor-based systems | |
| US4868822A (en) | Memory emulation method and system for testing and troubleshooting microprocessor-based electronic systems | |
| US7467342B2 (en) | Method and apparatus for embedded built-in self-test (BIST) of electronic circuits and systems | |
| US6032268A (en) | Processor condition sensing circuits, systems and methods | |
| US6704895B1 (en) | Integrated circuit with emulation register in JTAG JAP | |
| US5329471A (en) | Emulation devices, systems and methods utilizing state machines | |
| US6516428B2 (en) | On-chip debug system | |
| US5805792A (en) | Emulation devices, systems, and methods | |
| EP0640920A1 (en) | Boundary-scan-based system and method for test and diagnosis | |
| US20020013918A1 (en) | Devices, systems and methods for mode driven stops | |
| US20030200425A1 (en) | Devices, systems and methods for mode driven stops | |
| US20040193957A1 (en) | Emulation devices, systems and methods utilizing state machines | |
| US4989207A (en) | Automatic verification of kernel circuitry based on analysis of memory accesses | |
| US5068852A (en) | Hardware enhancements for improved performance of memory emulation method | |
| US10970191B2 (en) | Semiconductor device and debug method | |
| US4958347A (en) | Apparatus, method and data structure for validation of kernel data bus | |
| EP0370927A2 (en) | Hardware enhancements for improved performance of memory emulation method | |
| GB2337834A (en) | Processor debugging using scan in-circuit emulation | |
| US20030115523A1 (en) | Apparatus and method for analysis and troubleshooting of electronic devices | |
| JP2000112781A (ja) | 電子回路解析装置及び電子回路解析方法並びに記憶媒体 | |
| HK1069207B (en) | Method and apparatus for embedded built-in self-test (bist) of electronic circuits and systems |