JPH0769853B2 - 回路内エミュレータ - Google Patents

回路内エミュレータ

Info

Publication number
JPH0769853B2
JPH0769853B2 JP3509399A JP50939991A JPH0769853B2 JP H0769853 B2 JPH0769853 B2 JP H0769853B2 JP 3509399 A JP3509399 A JP 3509399A JP 50939991 A JP50939991 A JP 50939991A JP H0769853 B2 JPH0769853 B2 JP H0769853B2
Authority
JP
Japan
Prior art keywords
target
signal
access probe
target access
central 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.)
Expired - Lifetime
Application number
JP3509399A
Other languages
English (en)
Other versions
JPH05506119A (ja
Inventor
エル ノーク、ロビン
ティー ジョンソン、マーヴィン
Original Assignee
アプライド マイクロシステムズ コーポレイション
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24076044&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH0769853(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by アプライド マイクロシステムズ コーポレイション filed Critical アプライド マイクロシステムズ コーポレイション
Publication of JPH05506119A publication Critical patent/JPH05506119A/ja
Publication of JPH0769853B2 publication Critical patent/JPH0769853B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3652Software debugging using additional hardware in-circuit-emulation [ICE] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 技術分野 本発明は、コンピュータのソフトウエアコードの補正す
なわちデバッキングをする技術に関し、特にマイクロプ
ロセッサ・エミュレーション技術を利用するソースレベ
ル・ランタイム・ソフトウエアコード・デバッキング機
器に関する。
発明の背景 現在、コンピュータ・ソフトウエアコードのデバッグを
する一般的な2つの技術がプログラマにより使用されて
いる。これらの技術は、プログラムモニタとマイクロプ
ロセッサ・エミュレータとを含む。
プログラムモニタは、コンピュータ・プログラムのデバ
ッグをすべくターゲットメモリに配置された割り込みソ
フトウエアコードである。プログラムモニタは、マイク
ロプロセッサに基づくターゲット回路の機能を制御する
主コンピュータのプログラムの動作と共同して動作しか
つそれを監視する。プログラムモニタコードは、ターゲ
ット回路に備えられた記憶位置に読み出されるかまたは
プログラムにより使用されるリードオンリーメモリ(以
下、「ROM」という。)に記憶された主プログラムコー
ドに結合された割り込みである。モニタプログラムの使
用は、モニタがプログラマに対し主プログラムから独立
して通信することができるように、万能型の非同期送受
信機または他の通信用ハードウエアをターゲット回路に
備えることが必要である。
プログラムモニタを使用すると、比較的安価であり、ま
た主プログラム内の誤りすなわちバグを発見することが
できる、という利点がある。しかし、プログラムモニタ
は、ターゲット回路に資源を必要とし、また共同するプ
ログラムコードに存在するより困難な問題の検出に有効
でない、という欠点を有する。
エミュレータは、ターゲット回路に付けられたマイクロ
プロセッサの透過動作(transeparent operation)を提
供すべく外部ハードウエアを使用する非割り込みのソフ
トウエア・デバッキング器具である。エミュレータ・マ
イクロプロセッサはターゲット回路の試験および実行の
間ターゲット・マイクロプロセッサの代わりをし、また
エミュレータはターゲット・マイクロプロセッサの入出
力端子に生じる全ての活動状態を調べる。エミュレータ
は、ターゲット・マイクロプロセッサの活動状態を監視
しかつ確実なターゲット回路信号の分析のために所定の
ポイントでマイクロプロセッサの動作を停止させる複雑
なブレークポイントシステムを提供する。
エミュレータは、全システム集積における主要な使用の
ためおよび実時間の問題を解決するために用いられてい
る。エミュレータを使用するプログラマは、プログラマ
の予備的なROMをエミュレータに配置されたオーバーレ
イのランダムアクセスメモリ(以下、「RAM」とい
う。)と取り替えることができる。オーバーレイRAM
は、ターゲット回路が物理的に不完全であり、それによ
りマイクロプロセッサの埋め込み回路の開発時間を短縮
するときに、プログラマがプログラムコードのデバッグ
をすることを許す。いくつかのタイプのエミュレータ
は、ターゲット資源の使用を必要とせず、そのためその
ようなエミュレータは非割り込みのコードデバッキング
機器と見ることができる。
エミュレータをターゲットシステムに接続するケーブル
により生じる遅延は、エミュレータの速度を制限する。
エン(Yen)の1977年7月21日付のエレクトロニクス
(「Electronics」50巻15号)108〜112頁のリアルタイ
ムのファスト・エミュレータ・デバック・8085−ベース
・マイクロコンピュータ(Fastemulator debugs 8085−
based micrcomputers in real time)に記載されている
ように、インテル社は、エミュレーティング・マイクロ
プロセッサをターゲットシステムのマイクロプロセッサ
のソケットに差し込まれるケーブルプラグで取り付ける
ことにより、そのICE−85・エミュレータの速度を改良
した。
エミュレータは、トレース・フューチァ(trace featur
e)、複雑なブレークポイントシステムおよびオーバー
レイメモリを使用することによるターゲット回路の集積
位相および時間依存性の問題の必要性を指摘している。
これらは、高価であり、完全なシステム集積には危険で
あるから、このような特徴はランタイムのデバッキング
には必要でない。このため、エミュレータの主な1つの
障害は高価であることであり、それによりマイクロプロ
セッサベースの回路設計作業に加わるソフトウエア技術
者の割合を多くすることができない。
高価なエミュレータの1つの解決法は、1997年7月付の
インテル社のエレクトリカル・デザイン・ニュース
(「Electrical Desin News」 26巻14号)212〜224頁
の機器(Instruments)に記載されているように、より
多様性のあるシステムおよびエミュレータを製作するこ
とである。いくつかのエミュレータは、エミュレータを
各種のターゲット・プロセッサに仕上げるための個人的
なモジュールまたはカードを使用する。しかし、このよ
うに万能のエミュレータは、特殊なマイクロプロセッサ
型のエミュレータに比べて遅い。
発明の概要 本発明の目的は、プログラマによりデバキングをするソ
フトウエアのためのマイクロプロセッサ埋め込みターゲ
ットコンピュータシステムを廉価にかつ早期に提供する
ことにある。
本発明の他の目的は、マイクロプロセッサ埋め込みター
ゲット回路システムの開発期間が短縮する、ソフトウエ
アコード・デバッキング装置を提供することにある。
本発明のさらに他の目的は、ランタイム・コード・デバ
ッキング装置をソフトウエア設計チームの各メンバーに
廉価に提供することにより、ハードウエア技術者に対す
るソフトウエア技術者の割合を増加し、市場に提供する
までの時間を短縮することにある。
本発明のさらに他の目的は、ターゲット資源を機能に使
用しない廉価な透過性ランタイム装置を提供することに
ある。
本発明は、エミュレーション技術を使用するソースレベ
ル・ランタイム・ソフトウエアコード・デバッキング装
置に関する。
本発明のターゲットアクセスプローブは、ターゲット中
央処理ユニット入力信号を入力端子位置から受けかつタ
ーゲット中央処理ユニット出力信号を出力端子位置に発
生するターゲットアクセスプローブ中央処理ユニット
と、回路内エミュレーションプログラム命令を記憶する
回路内エミュレーションプログラムメモリ位置を含みか
つホストコマンド信号に応答して回路内エミュレーショ
ンプログラム命令したがってターゲット中央処理ユニッ
ト出力信号を発生させるためにターゲット中央処理ユニ
ットと通信する回路内エミュレーションプログラム手段
と、ターゲット中央処理ユニット入出力信号のためのホ
ストコンピュータへのおよびこれからの信号リンクを提
供する入出力信号リンク手段とを含む。ターゲットアク
セスプローブ中央処理ユニットと、回路内エミュレーシ
ョンプログラム手段とは、ターゲット回路に直接接続さ
れる手段を備える基板に配置されている。
回路内エミュレーションプログラム命令は、ターゲット
プログラムから回路内エミュレーションプログラムまで
の前記ターゲットアクセスプローブ中央処理ユニットの
動作制御を伝送する命令と、ターゲットプログラムメモ
リ位置から情報を読み出すまたはターゲットプログラム
メモリ位置に情報を書き込む命令とを含む。
対応するターゲット中央処理ユニット出力端子位置への
ターゲット中央処理ユニット出力信号と、対応するター
ゲット中央処理ユニット入力端子位置へのターゲット中
央処理ユニット入力信号とは、ホストコマンド信号に応
答して、記憶されたターゲットプログラム以外の回路内
エミュレーションプログラム命令にしたがう前記ターゲ
ット回路の性能の試験および照合に用いられる。
本発明によれば、ターゲットアクセスプローブ自体が中
央処理ユニットと回路内エミュレーションプログラム手
段とを備えているから、モニタで必要なターゲット資源
を使用する必要がないし、エミュレータにあらわれる複
雑で、高価なデバッキングの特徴を生じることがなく、
その結果、マイクロプロセッサベースの回路の開発のサ
イクルに多くの時間的余裕を与える。また、ターゲット
アクセスプローブ中央処理ユニットと、回路内エミュレ
ーションプログラム手段とは、ターゲット回路に直接接
続される手段を備える基板に配置されているから、ター
ゲット回路とプローブとの間のにおける電気信号にノイ
ズが混入するおそれがないし、電気信号の遅延が著しく
小さくなる。
本発明の好ましい実施例は、ターゲットアクセスプロー
ブ(以下、「TAP」という。)サブシステムと、通信ア
ダプタ(COMDAP)とを含み、両者はホストコンピュータ
で動作するソースレベル・デバッキング・ソフトウエア
のようなホスト分析コード源により提供されたエミュレ
ーションコマンドを処理する。TPAはマイクロプロセッ
サすなわち中央処理ユニット(以下、「CPU」とい
う。)を含み、CPUはターゲットCPU信号を受けかつホス
トコンピュータにより提供されたコマンド信号にしたが
ってターゲット回路によるソフトウエアコードの実行を
制御するためにターゲットCPU出力信号を出力する。ホ
ストコンピュータからのコマンド信号は、TAP・CPUで受
けかつターゲット回路で所望の応答を発生させる動作命
令を形成する。TAPは、また、第1のプログラマブル・
ロジックセルアレイとRAMとを含む。第1のプログラマ
ブル・ロジックセルアレイは、TAP・CPUへのおよびTAP
・CPUからのコマンドおよび信号を、特定のTAP・CPUに
適合可能のディジタル語フォーマットの信号に組合せる
べくなされた信号路に沿って回送する。RAMは、TAPがタ
ーゲット回路を制御しているとき、ターゲット回路を動
作させるべくTAPにより使用する回路内エミュレーショ
ン(以下、「ICE」という。)プログラムを記憶してい
る。
通信アダプタは、TAPから物理的に分離されており、ま
たホストコンピュータとTAPとの間のインターフェース
を提供する。通信アダプタは、第2のプログラマブル・
ロジックセルアレイと、消去可能のプログラマブルROM
(以下、「EPROM」という。)とを含む。第2のプログ
ラマブル・ロジックセルアレイは、通信アダプタへのお
よび通信アダプタからのコマンドおよびデータ信号を、
特定のホスト分析コード源とTAPとに適合可能のディジ
タル語フォーマットの信号に組合せるべくなされた信号
路に沿って回送する。EPROMは、第1および第2のプロ
グラマブル・ロジックセルアレイ内に信号路を構成する
ためのコマンドを記憶していると共に、デバッキング装
置への電力の供給開始に基づいてTAP・RAMに伝送された
TAP・ICEプログラムを記憶する。
フラットケーブルは、TAPと通信アダプタとの間に必要
な信号通信用リンクを提供する。TAPおよび通信アダプ
タの第1および第2のプログラマブル・ロジックセルア
レイに関連してEPROMを使用すると、ソフトウエア技術
者が各種のマイクロプロセッサ用のTAPおよび各種のホ
スト分析コード源用の通信アダプタを構成するソフトウ
エアコードを提供することができる。
本発明は、本発明が従来のコード変更の必要なしに、も
しくはターゲット回路または入出力回路を使用すること
なしに、ターゲット回路内のコードの実行を監視しかつ
制御する、という点でソフトウエアモニタと異なる。本
発明は、TAPのRAM位置と、通信アダプタのEPROM位置と
を含み、それにより、ターゲットRAMまたはROMを使用し
なくてもよい。通信アダプタをデバッキング装置に組み
込むと、ターゲットの万能型非同期送受信機または他の
通信用ハードウエアを使用する必要がない。
TAPにより使用するマイクロプロセッサ信号の特徴のた
め、ホストコンピュータにより運転されるソースレベル
・デバッキング・ソフトウエアは、ターゲット回路周囲
のコードを実行する間、TAP・CPUの内部機能が最高の透
過性窓をソフトウエア技術者に提供する。強力なソース
レベル・デバッキング・ソフトウエアに結合されたTAP
・CPUへの窓は、ラン−タイムの問題を解決する能力を
ソフトウエア技術者に提供する。好ましいソースレベル
・デバッキング・ソフトウエアのパッケージは、データ
構成、動的変数、およびデータブレークポイントに対し
機敏なアクセスを容易にする。ソフトウエア技術者は、
送信レジスタの状態とともに特定のターゲット位置に対
してデータの読み出しおよび書込みをすることができる
し、ソフトウエア技術者に表示するためにデバッキング
プログラムへの他のデータの読み出しおよび書込みをす
ることができる。ソフトウエア技術者は、また、コード
のダウンロードおよびアップロード、現在の値で開始す
るコードの実行、および現在の値でのコードの停止をす
ることができる。ソフトウエア技術者は、エミュレーシ
ョンをされるターゲット回路CPUにしたがってターゲッ
ト遮断資源を使用することができる。
本発明の他の目的および特徴は、好ましい実施例に関す
る詳細な説明および図面から明らかになろう。
図面の簡単な説明 第1図は、フラットケーブルにより接続されたターゲッ
トアクセスプローブ(TAP)サブシステムおよび通信ア
ダプタ(COMDAP)サブシステムを含む、本発明のソフト
ウエアコード・デバッキング装置を示す図である。
第2図は、第1図に示す装置のTAPの拡大底面図であ
る。
第3図は、本発明のTAPサブシステムの機能的なブロッ
ク図である。
第4図は、本発明の通信アダプタサブシステムの機能的
なブロック図である。
第5図は、マイクロプロセッサベースのエミュレーショ
ンを実行する、本発明により使用するソフトウエアの機
能を示すブロック図である。
第6図は、操作のためにTAPおよび通信アダプタを最初
に形成するプロセスのステップを示すブロック図であ
る。
第7図は、TAPの一部として含まれたRAMのアドレスを示
す図である。
第8図は、ワイヤの配置が本発明の好ましい実施例によ
り使用された3つの信号形態をワイヤの配置により接続
することが必要な「Intel」80386マイクロプロセッサチ
ップの形態の一部を示す図である。
好ましい実施例の説明 第1図は、本発明のソフトウエアコード・デバッキング
装置10の好ましい実施例を絵画的に示す。デバッキング
装置10は、ターゲットアクセスプローブ(TAP)サブシ
ステム12と通信アダプタ(COMDAP)14とを含み、両者は
取り外し可能のフラットケーブル16により互いに接続さ
れている。通信アダプタ14は、完全集中窓デバッキング
ソフトウエアプログラム(fully integrated windowed
debugging software program)を実行するホスト分析コ
ード源すなわちホストコンピュータ(図示せず)からRS
−232型の直列通信用リンク18に送られたコマンド信号
を受ける。標準のコンピュータ端子が制御コンピュータ
からのデータの送受信をすべくEIA標準RS−232により規
定された通信用プロトコルを使用することから、通信用
リンク18はRS−232型が好ましい。通信アダプタ14は、
フラットケーブル16の導電体を介してTAP12に出力する
コマンド信号の条件付けをする。
TAP12は、印刷回路基板20を含む。印刷回路基板20は、
その上面22に、マイクロプロセッサすなわち中央処理ユ
ニット(CPU)28のリードピンを受ける第1のソケット2
6と、第1のプログラマブル・ロジックセルアレイ24と
を装着している。ソケット26は、マイクロプロセッサの
リードピンと1つづつ共同する半田パッドにより印刷回
路基板20に接続されている。印刷回路基板20は下面30に
第2のソケット32を備えており、第2のソケット32は下
向きの多数のピン33(第2図参照)を有する。各ピン33
は、印刷回路基板20の導電路によりソケット26の半田パ
ッドに接続されており、またターゲット回路基板(図示
せず)のターゲットCPUの雌型ソケットに挿入される。
印刷回路基板20は、その下面にランダムアクセスメモリ
(RAM)34を備える。プログラマブル・ロジックセルア
レイ24は、正しいディジタル語フォーマットのアドレス
信号およびデータをCPU28およびRAM34に提供するのに必
要な信号通路を確立する。CPU28はターゲット回路基板
のCPUのためのソケットレセプタクルの代わりをしかつ
その作用をし、RAM34はTAP12のためにターゲット回路の
動作を制御するときにTAP12用の回路内エミュレーショ
ン(ICE)用のプログラムメモリとして作用する。
通信アダプタ14は、印刷回路基板40を含む。印刷回路基
板40は、その上面42に、第2のプログラマブル・ロジッ
クセルアレイ44と、削除可能のプログラマブル・リード
オンリーメモリ(EPROM)46とを装着している。通信ア
ダプタ14は、また、30MHzのクリスタル発振器48と、こ
れと共同する周波数分割器50とを含む。周波数分割器50
は、フラットケーブル16を介してTAP12と通信アダプタ1
4との間の高速直列コマンドおよびデータ伝送路をイネ
ーブル状態におくべく、クロック信号をプログラマブル
・ロジックセルアレイ24,44に供給する。
TAP12と通信アダプタ14は、TAP12を異なるタイプのホス
トコンピュータでの使用に適合された通信アダプタ14と
使用することができるように、および通信アダプタ14を
異なるタイプの複数のCPU28での使用に適合されたTAP12
と使用することができるように、物理的に分離可能とす
ることが好ましい。しかし、必要ならば、TAP12と通信
アダプタ14とを、異なる印刷回路基板に配置する代わり
に、共通の印刷回路基板に配置してもよい。
第3図は、TAP12の機能的なブロック図である。第3図
を参照するに、TAP12の第1のプログラマブル・ロジッ
クセルアレイ24は、データ受信用シフトレジスタ60と、
データ送信用シフトレジスタ62とを備える。シフトレジ
スタ60は通信アダプタ14からの直列ディジタルコマンド
をフラットケーブル16を介して受け、シフトレジスタ62
は直列ディジタルデータを通信アダプタ14にフラットケ
ーブル16を介して引き渡す。プログラマブル・ロジック
セルアレイ24として好適な市販のデバイスの1つは、カ
リホルニア州のザイリンクス社(XILINX,Inc.)の部品
番号XC3042のロジックセルアレイである。ロジックセル
アレイ24は、先入れ先出し方式(FIFO)の一対のバッフ
ァレジスタ64,66を備える。レジスタ64はシフトレジス
タ60の出力端子から直列ディジタルコマンドを受け、レ
ジスタ66は直列ディジタルコマンドまたはデータをシフ
トレジスタ62の入力端子に供給する。ロジックセルアレ
イ24は、通信アダプタ14(第1図を参照)のEPROM46に
記憶されたコマンドにしたがって上記したように構成さ
れている。シフトレジスタ60,62は、通信アダプタから
のおよび通信アダプタへの直列ディジタルコマンドまた
はデータを集める。
ロジックセルアレイ24の出力ポートレジスタ68は、FIFO
シフトレジスタ64からのバイト幅のディジタル語を受
け、それを所定の長さおよびCPU28用のフォーマットを
有するアドレス語およびデータ語として提供する。アド
レス語およびデータ語は、それぞれ、CPU78のアドレス
バス70およびデータバス72に別々に現れる。ロジックセ
ルアレイ24の入力ポートレジスタ74と、RAM34とは、そ
れぞれ、CPU28のアドレスバス70およびデータバス72か
らの並列的なディジタルアドレス語およびデータ語を受
ける。入力ポート74は、アドレス情報およびデータ情報
をバイト幅のフォーマットに変換し、シフトレジスタ62
および通信アダプタ14に供給すべくそれをFIFOレジスタ
66に提供する。RAM34は、デバッキング機能を実行する
ためにTAP12用のICEプログラムを表すソフトウエアコー
ドを記憶している。RAM34の内容は、以下に記載のよう
に、TAP12への電力の供給開始時にロードされる。アド
レスバス70およびデータバス72は、それぞれ、RAM34の
アドレス入力線およびデータ入力線に接続されており、
ホストコンピュータによりデバッキング装置10に提供さ
れた動作命令を公式化するコマンド信号に応答して動作
制御をする。
ロジックセルアレイ24のシフトレジスタ60および62は、
ホストコンピュータのデバッキングソフトウエアから装
置10に与えられた命令にしたがってディジタル語をCPU2
8に供給し、先の命令に応答してホストコンピュータの
ソフトウエアによる分析用のターゲットソフトウエアに
より発生された結果を表すアドレス語およびデータ語を
提供する。RAM34に記憶されたICEプログラムソフトウエ
アは、ホストコンピュータからデバッキング装置10に与
えられた命令を正しく実行する。
第3図は、導線76上のブレーク信号および導線78上のリ
セット信号をそれぞれCPU28の対応するブレーク入力端
子およびリセット入力端子に提供するTAP12を示す。ブ
レーク信号は、CPU28によるターゲットプログラムの実
行を停止させるべくホストコンピュータからの命令をFI
FOレジスタ64により受けることを意味する。リセット信
号は、ソフトウエア技術者がターゲットプログラムをそ
の開始アドレスに戻すべく第1図に示すリセット釦82を
操作することにより発生される信号に応答してリセット
回路80において発生される。ブレーク信号およびリセッ
ト信号は、以下に記載する手法でCPU28を動作させる。
第4図は、通信アダプタ14の機能的なブロック図であ
る。第4図を参照するに、通信アダプタ14の第2のプロ
グラマブル・ロジックセルアレイ44は、データ受信用シ
フトレジスタ90と、データ送信用シフトレジスタ92とを
備える。シフトレジスタ90はホストコンピュータからの
直列ディジタルコマンドを通信用リンク18を介して受
け、シフトレジスタ92は直列ディジタルデータを通信用
リンク18を介してホストコンピュータに引き渡す。ロジ
ックセルアレイ44は、ロジックセルアレイ24と同じタイ
プのものである。一対の電圧レベル変換器94および96
は、それぞれ、ホストコンピュータから受けたディジタ
ル信号およびホストコンピュータに伝送するディジタル
信号の条件付けをする。
ロジックセルアレイ44は、また、一対のFIFOバッファア
レジスタ98、100を備える。レジスタ98はシフトレジス
タ90の出力端子からのバイト幅のディジタルコマンドを
受け、レジスタ100はバイト幅のディジタルデータをシ
フトレジスタ92の入力端子に引き渡す。ロジックセルア
レイ44は、第1図に示す通信アダプタ14のEPROM46に記
憶されたコマンドにしたがって上記のように構成されて
いる。FIFOレジスタ98は、シフトレジスタ90から比較的
低いデータ率で受けたバイト幅のディジタル信号を、比
較的高いデータ率でフラットケブル16を介してTAP12に
引き渡すべく一時的に記憶する。FIFOレジスタ100は、T
AP12から高いデータ率で受けたバイト幅のディジタルデ
ータをシフトレジスタ92に引き渡し、通信用リンク18を
介してホストコンピュータに比較的低いデータ率で伝送
させるべく一時的に記憶する。
ロジックセルアレイ44の出力ポートレジスタ102は、FIF
Oレジスタ98からのバイト幅のディジタルコマンドを受
け、それを直列フォーマットの高いデータ率でTAP12の
データ受信用シフトレジスタ60にフラットケーブル16の
導電体104に引き渡す。ロジックセルアレイ44の入力ポ
ート106は、TAP12のデータ送信用シフトレジスタ62から
フラットケーブル16の導電体108に高いデータ率で伝送
された直列ディジタルデータを受ける。
ディジタルコマンドおよびディジタルデータは、TAP12
と通信アダプタ14との間を直列フォーマットで、フラッ
トケーブル16を介して10Mbpsの率で伝送される。これ
は、30MHzの発振器48と、3分の1の分割カウンタ110と
によりなされる。カウンタ110は、発振器48の出力112を
受け、10MHzのクロック信号を発生し、それを出力ポー
トレジスタ102と入力ポートレジスタ106とに供給する。
10MHzのクロック信号は、また、TAP12のデータ受信用シ
フトレジスタ60とデータ送信用シフトレジスタ62とに供
給するためにフラットケーブル16の導電体114に供給さ
れる。30MHzの発振器48の出力112はプログラマブル分周
器116に供給され、分周器116はその出力116にボーレー
トのクロック信号を発生する。このクロック信号は、ホ
ストコンピュータからの直列コマンドを受ける受信用シ
フトレジスタ90の入力と、直列データをホストコンピュ
ータに供給する送信用シフトレジスタ92の入力とに供給
される。ボーレートのクロック信号は、ホストコンピュ
ータからのコマンド信号を受けかつデータ信号をTAP12
と通信アダプタ14との間の10Mbpsの伝送率と異なる率で
ホストコンピュータに引き渡すべく通信アダプタ14をイ
ネーブル状態におく。手動のプログラマブル・ボーレー
ト切換器120は、通信アダプタ14が通信するホストコン
ピュータの種類の能力に適したボーレートの選択を容易
にする。19.2Kのボーレートは、PCタイプのホストコン
ピュータに適している。
ホストコンピュータ、TAP12および通信アダプタ14内の
コマンドおよびデータ信号の伝送は、異なる率で行なわ
れる。また、コマンドは、CPU28への伝送およびCPU28か
らの伝送のためにTAP12においてバイト幅のディジタル
フォーマットに組み立てられる。タイミングの相違に適
合させるために、ホストコンピュータ、TAP12および通
信アダプタ14内のコマンドおよびデータの伝送の調整
は、ハンドシェーキング技術により達成される。
FIFOレジスタ98はホストコンピュータに対する受信ハン
ドシェーク制御信号を電圧レベル変換器124を介して出
力端子122に発生し、FIFOレジスタ100はホストコンピュ
ータからの送信ハンドシェーク制御信号を電圧レベル変
換器128を介して受ける。2つのハンドシェーク信号
は、ホストコンピュータと通信アダプタ14との直列ディ
ジタル信号入出力ポート間のデータ伝送の信号座標を調
整する。FIFOレジスタ98は、TAP12がCPU28への情報の送
信またはCPU28からの情報の受信をすることができない
ときに、いつもFIFOレジスタ64からのTAP話中信号をフ
ラットケーブル16の導電体130を介して受ける。同様
に、FIFOレジスタ100は、通信アダプタ14が命令を処理
するときおよびTAP12のシフトレジスタ62から移される
データを受けることができないときに、いつも通信アダ
プタ話中信号をフラットケーブル16の導電体132を介し
て受ける。
EPROM46は、ロジックセルアレイ24,44のデータ通路を構
成するコマンド信号と、RAM34にオペレーティングプロ
グラムのローディングをするアドレスおよびデータ信号
とを多重の出力用導電体134に発生する。これら全ての
機能は、デバッキング装置10への電力の供給開始にとも
なって発生する。
第5図は、ターゲット回路に送られたコマンド信号を処
理しかつこのようなコマンドに応答してターゲット回路
により発生されたデータ信号を処理するソフトウエアに
組み込まれた機能を示すブロック図である。デバッキン
グ装置10は、窓付けされたソースレベル・デバッキング
ソフトウエアが組み込まれたホストコンピュータと共同
して動作する。デバッキングソフトウエアは、デバッキ
ング装置10が処理しかつランタイムの問題を解決する能
力をソフトウエア技術者に提供すべくターゲット回路に
引き渡すコマンド信号を発生する。
パッキング装置10の好ましい実施例は、「Intel」80386
型32ビットのマイクロプロセッサにより制御されるター
ゲット回路デバッキング用に設計されている。好ましい
ソースレベル・デバッキング用ソフトウエアプログラム
は、「Pharlap 386 ASM/Linkioc」アセンブリ・ソフ
トウエアと共に、「Intel OMF」のコンパティブル言語
のMicro Soft C」を維持する「VALIDATE/Soft−Scop
e III 386」であり、最高のコンパイラである。デバ
ッキング装置10の好ましい実施例は、ターゲット周囲に
おいてソフトウエアコード命令を実行するとき、「Inte
l」80386型マイクロプロセッサの内部機能への完全透過
性窓(full transparent window)をソフトウエア技術
者に提供する。
第5図を参照するに、ホストコンピュータのアプリケー
ションソフトウエア・ドライバ150は、デバッキングソ
フトウエア・アプリケーションプログラムにしたがって
Cコール(C call)のセットとして参照されるコマンド
信号のセットを提供する。CコールはASC IIリモートコ
ントロールドライバ(以下、「ARCD」という。)152に
供給され、ARCD152はCコールのインタプリタすなわち
解釈をし、またそれを通信アダプタ14への送信に適した
フォーマットに条件付ける。ARCD152は、コマンドコー
ドおよびコマンドフィールドを有するコマンドとしてC
コールを解釈する。コマンドコードは、メモリ記録コマ
ンドの“M"、メモリ読み出しコマンドの“m"のように、
Cコールの通常のASC IIキャラクタ(7ビットのASC II
コード)である。コマンドコードは、1以上のフィール
ドコードにより続いてもよい。
ARCD152の基本コマンドのプロトコルは、ホストコンピ
ュータからCコールを受け、ターゲット回路からデバッ
キング装置10により供給された応答を受けることであ
る。ARCD152により解釈されたコマンドは、通信アダプ
タ14によりTAP12にRS−232通信用リンク18の導電体156
に直列ディジタル信号として伝送するためにホストコン
ピュータのハードウエアに組み込まれた直列ポート154
に供給される。TAP12に供給されたコマンドは、電力の
供給開始に基づいてTAP12のRAM34に伝送されかつ通信ア
ダプタ14のEPROM46に最初に記憶されたオペレーション
プログラムにしたがって処理される。
RAM34に記憶されたICEプログラムは、デバッキング装置
10がターゲット回路の動作を制御するときターゲット回
路に提供されたターゲットプログラムの代わりをする。
第5図において、処理ブロック160は、ASC IIフォーマ
ットのコマンドを、RAM34に記憶されたプログラムによ
り、「Intel」80386型マイクロプロセッサベースのター
ゲット回路での使用のためにバイナリ・フォーマットに
変換することを示す。処理ブロック162はコマンドを解
読することを示し、処理ブロック164は、データベース
の構成、またはブレークポイントデータベースの実行ま
たは単一ステップの命令分析のような各種の機能例、な
らびに特定のコマンドを必要とするメモリのアクセスお
よびレジスタのアクセスのような各種の機能例を示す。
処理ブロック166は、「Intel」80386型マイクロプロセ
ッサ用に特に組み込まれたレジスタ・テーブルを示し、
また異種のマイクロプロセッサに選択的に使用するため
に付加的なメモリー空間に配置された付加的なレジスタ
・テーブルを破線で示す。
第6図は、ターゲット回路のデバッキングを可能にする
デバッキング装置10の動作シーケンスを示すブロック図
である。第6図を参照するに、処理ブロック200は、デ
バッキング装置10への電力の供給開始を示す。
処理ブロック202は、電力供給後、直ちに、通信アダプ
タ14およびTAP12のロジックセルアレイ44および24を構
成するために必要なコマンド信号がそれぞれEPROM46の
最下位のアドレスに対応するメモリーから引き続いて読
み出される(16進法0000で開始する。)ことを示す。
一度、ロジックセルアレイ24,44が特定のホストコンピ
ュータおよびCPU28と動作するように正しく構成される
と、EPROM46の最高アドレス(16進で8000−FFFF)に対
応するメモリ位置の2分の1の内容が処理ブロック204
で示すようにRAM34に移される。RAM34への情報の移転
は、TAP12のICEプログラムを表すファームウエアである
(好ましい実施例において、EPROM46は64Kバイトの記憶
容量を有するが、RAM34は32Kバイトの記憶容量を有し、
それにより拡大メモリ容量を有するTPA12が提供され
る)。上記の操作は、コンピュータベースの電子回路を
初期化するための通常のハードウエア技術によりなされ
る。
処理ブロック206は.Intel8086説明書に規定されている
再出発ベクトルにそのプログラムカウンタをリセットす
べく、CPU28のリセット用導電体78にロジック“1"を、
またブレーク用導電体76にロジック“0"をそれぞれ提供
することを示す。
処理ブロック208は、CPU28がターゲットCPUのレジスタ
の内容を、ICEメモリ空間が16進のアドレス60000で開始
するRAM34のICEメモリ空間に移すように、ロジック“0"
をリセット用導電体78に提供し、ロジック“1"をブレー
ク用導電体76に提供することを示す。結果として、ター
ゲットオペレーションプログラムが動作する好機となる
前、およびICEプログラムがターゲット回路を作動させ
る前に、RAM34はターゲットCPUのレジスタの内容を記憶
する。これは、ソフトウエア技術者がレジスタを通して
進めかつそれらの内容を点検することを許す。
処理ブロック210は、CPU28がRAM34に記憶されたICEプロ
グラムを実行するように、ブレーキ用導電体76にロジッ
ク“1"を与えることを示す。これは、ブレーキ用導電体
76がロジック“0"であることを必要とするターゲットプ
ログラムでデバッキング装置10が予め動作していること
を示す。
処理ブロック212は、この段階で、ソフトウエア技術者
が異なるターゲットプログラムを移すことを希望すると
き、それを実行すること示す。
デバッキング装置10は、好ましい実施例においては「In
tel」80386型32ビットのマイクロプロセッサであるCPU2
8により制御されるターゲット回路のエミュレーション
機能を実行する。エミュレーションプロセスの間、完全
な透過性能を提供するために、デバッキング装置10は、
テキサス社の80386チップ(CPUのピンに接着されていな
い)内に組み込まれたエミュレーション用ハードウエア
により提供される3つの信号状態と、いくつかの非文書
化命令の利点を有する。出願人は、IADS、IRDY、および
BREAKとして信号状態を確認し、またLOADALLおよび4つ
のMOV命令として非文書化命令を確認した(用語「非文
書化」は、「Intel」80386型マイクロプロセッサにおい
て実行される命令を引用するが、その説明書には記載さ
れていない)。
IADS(回路内エミュレーションアドレスストローブ)信
号、IRDY(回路内エミュレーションレディ)信号は、ソ
フトウエア技術者による使用のために献じられた通常4
ギガバイトのアドレス空間のイメージおよび代用として
得られる4ギガバイトのアドレス空間を与える。この付
加的な空間は、以下「IECメモリ空間」として参照し、
またRAM34のメモリ状態を表す。IECメモリ空間をアクセ
スするために、「Intel」80386型マイクロプロセッサ
は、文書化された通常のADS信号の代わりにIADS信号を
発生する。適切なIECメモリ状態は、ターゲットメモリ
システムに献じられた文書化された通常のRDY信号の代
わりに、IRDY信号を発生することによりIADS信号の受信
に応答する。
ICEメモリ空間にアドレスを発生させるように「Intel」
80386型マイクロプロセッサを作動させるいくつかの方
法がある。その1つは、ターゲットプログラムを浮遊さ
せ、16進アドレスFFFFFFF0で始まる再開ベクトルでICE
メモリ空間に記憶された命令の実行を開始させるロジッ
ク“0"をブレーク用導電体76に与えることである。ロジ
ック“0"をブレーク用導電体76に与えることは、また、
ICEメモリ空間への移送点で、「Intel」80386型マイク
ロプロセッサのレジスタの内容をICEメモリ空間のLOADA
L空間に蓄積する(これは、LOADALL領域の現在のマイク
ロプロセッサの状態を記憶する「SAVEALL」命令として
考慮することができる)。従って、ターゲットプログラ
ムの実行における現在のマイクロプロセッサの状態は、
検査、ターゲットプログラムの後の再開、または所望の
変更のために利用可能の状態にある。ブレーク信号によ
り、ソフトウエア技術者はターゲットプログラムの制御
を把握することができる。
オプコート(opcode)がOF07である非文書のLOADALL命
令を実行すると、「Intel」80386型マイクロプロセッサ
はICEメモリ空間からターゲットメモリ空間に移行す
る。LOADALL命令を実行することによりターゲットメモ
リ空間に入る前に、ターゲットコードの実行の間適宜な
ときにブレークポイントはCPU28の制御を捕捉するよう
にセットされることを必要とする。1つの方法は、実行
したときICEメモリ空間にブレーク信号を生じる命令の
ようなソフトウエアのブレークポイントをセットするこ
とである。「Intel」80386において、この命令は、信号
コードF1を有し、また実行したとき上記のように、ICE
メモリ空間のLOADALL領域のターゲットCPUの状態を蓄積
する。他の方法は、デバッグレジスタDR7のビット番号1
2にロジック“1"をセットすることである。これによ
り、「Intel」80386のハードウエアのブレークポイント
は、ターゲットメモリ空間より後のICEメモリ空間にブ
レーク信号を生じる。
ハードウエアまたはソフトウエアのブレークポイントが
生じると、CPU28はCPUの内部レジスタの内容を16進アド
レス60000で始まり、再開ベクトルまで処理し、実行を
始めるLOADALL領域に移す。
概略において、LOADALL命令を実行すると、「Intel」80
386型マイクロプロセッサは、ICEメモリ領域からターゲ
ットメモリ領域に移行するブレーク状態(すなわち、SA
VALLの実行)にすることにより、「Intel」80386型マイ
クロプロセッサの全体の状態をICEメモリ空間のLOADALL
領域に記憶することになる。ターゲットプログラムは、
非文書化LOADALL命令を実行することにより再開するこ
とができる。ブレーク状態にすることにより、マイクロ
プロセッサの状態のSAVEALLをICEメモリのアドレス6000
0に生じ、またFFFFFFF0でICEメモリ空間において実行を
始める。「Intel」80386型マイクロプロセッサのSAVEAL
L/LOADALLの性能は、ICEメモリ・アドレス60000〜60124
の記憶部であって潜在的な記述子記憶部を含む全体のマ
イクロプロセッサ状態をロードをする。
表1は、ICEメモリ空間のLOADALL領域に記憶されたター
ゲットCPUレジスタの内容のための16進アドレスを示
す。
表 1 アドレス マイクロプロセッサのレジスタ 60000 CRO 60004 EFLAGS 60008 EIP 6000C EDI 60010 ESI 60014 EBP 60018 ESP 6001C EBX 60020 EDX 60024 ECX 60028 EAX 6002C DR6 60030 DR7 60034 TR 60038 LDTS 6003C GS 60040 FS 60044 DS 60048 SS 6004C CS 60050 ES 60054 TSS Attributes 60058 TSS BASE 6005C TSS LIMIT 60060 IDT Attributes 60064 IDT BASE 60068 IDT LIMIT 6006C GDT Attributes 60070 GDT BASE 60074 GDT LIMIT 60078 LDT Attributes 6007C LDT BASE 60080 LDT LIMIT 60084 GS Attributes 60088 GS BASE 6008C GS LIMIT 60090 FS Attributes 60094 FS BASE 60098 FS LIMIT 6009C DS Attributes 600A0 DS BASE 600A4 DS LIMIT 600A8 SS Attributes 600AC SS BASE 600B0 SS limit 600B4 CS Attributes 600B8 CS BASE 600BC CS LIMIT 600C0 ES Attributes 600C4 ES BASE 600C8 ES LIMIT 60100 Attributes of selector recently loaded 60104 undefined 60108 Desination EIP of last JMP FAR 6010C undefined 60110 undefined 60114 undefined 60118 undefined 6011C undefined 60120 undefined 60124 VEIP Value of virtual EIP 表1の情報により、ソフトウエア技術者は、CPUレジス
タの状態を審査し、それらを変更することができる。
4つの非文書化MOV命令は、ICEメモリアドレス空間から
ターゲットメモリ読み出し書込み動作を実行する。「In
tel」80386型マイクロプロセッサ・ディスアセンブラに
含まれる4つの命令のためのニーモニクスを、それらの
オプコードおよび説明とともに、以下の表2に記載す
る。
表2において、“/r"はレジスタアドレスを特定し、“r
/m"はターゲットメモリ空間内の実行アドレスを特定す
る。ニーモニクス“MVTGT"は“Move to taget spac
e"に関し、“Byte"および“Dword"はそれぞれ8ビット
および32ビットデータに関する。(全てのアドレスは32
ビットの長さである。)上記の命令は、Intel−80386マ
イクロプロセッサの保護モードに完全に作用する。当業
者は、Intel−80386動作に対するこれらの命令の関係を
理解するであろう。
第7図は、非識別化信号および非文書化信号の実行に応
答して記憶された情報用のICEメモリ空間の開始アドレ
スの要約を示すRAM34のメモリマップを示す。保護モー
ドコード、保護モードスタック、および保護モードデー
タのためのメモリ空間のアドレス付与は、オプションで
ある。他のオプションのアドレス付与は、電力の供給開
始時に関するリアルモード・ブートコードと、ホストコ
ンピュータおよびデバッキング装置10間に伝送されるデ
ータおよび命令用のメモリ位置に関するHS(高速)シリ
アルポートポジションとである。
第8図は、CPUピンへのIADS、IRDY、およびBREAK信号の
端子をCPUピンに接続するためにIntel−80386マイクロ
プロセッサチップの幾何学的なブロック図を示す。第8
図を参照するに、詳細Cの矢印13E,13Fおよび詳細Aの
矢印7Cは、それぞれ、IADS、IRDY、およびBREAK信号用
の接続線(破線で示す)の配置範囲を示す。
本発明の原理から逸脱することなしに本発明の好ましい
実施例を種々変更することができることは、当業者にと
って自明である。例えば、第1に、デバッキング装置
は、Intel−80386マイクロプロセッサ以外のCPUにより
制御されるターゲット回路と使用するように適合しても
よい。CPUの種類により、異なるデバッキング・プログ
ラム命令は、ターゲット回路周囲のコードを実行する
間、TPA・CPUの内部機能に完全透過性窓を提供すること
を必要としてもよい。第2に、プログラマブル・ロジッ
クセルアレイを、上記した機能を達成すべく電気的に接
続された個々のディジタル回路要素に置き換えてもよ
い。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョンソン、マーヴィン ティー アメリカ合衆国 98012 ワシントン州 ボーセル ワンハンドレッドエイティース サウスイースト 4305 (56)参考文献 特開 平2−85934(JP,A) 特開 平1−307837(JP,A) 特開 昭61−188638(JP,A)

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】ターゲット回路要素の実習用の主プログラ
    ム命令を記憶するメモリ位置を有するターゲット中央処
    理ユニットであってターゲット中央処理ユニット入力信
    号およびターゲット中央処理ユニット出力信号がそれぞ
    れ現れる入力端子位置および出力端子位置を有するター
    ゲット中央処理ユニットを含むターゲット回路に接続さ
    れ、前記ターゲット中央処理ユニットが電気的に存在し
    ないときにホストコンピュータから供給されるホストコ
    マンド信号に応答して前記ターゲット回路の動作性能を
    試験しかつ照合するターゲットアクセスプローブにおい
    て、 前記ターゲット回路に直接接続される手段を備える基板
    と、 ターゲット中央処理ユニット入力信号を前記入力端子位
    置から受けかつターゲット中央処理ユニット出力信号を
    前記出力端子位置に発生する、前記基板に配置されたタ
    ーゲットアクセスプローブ中央処理ユニットと、 回路内エミュレーションプログラム命令を記憶する回路
    内エミュレーションプログラムメモリ位置を含みかつホ
    ストコマンド信号に応答して回路内エミュレーションプ
    ログラム命令したがってターゲット中央処理ユニット出
    力信号を発生させるために前記ターゲット中央処理ユニ
    ットと通信する回路内エミュレーションプログラム手段
    であって前記回路内エミュレーションプログラム命令は
    ターゲットプログラムから回路内エミュレーションプロ
    グラムまでの前記ターゲットアクセスプローブ中央処理
    ユニットの動作制御を伝送する命令と、ターゲットプロ
    グラムメモリ位置から情報を読み出すまたはターゲット
    プログラムメモリ位置に情報を書き込む命令とを含む、
    前記基板に配置された回路内エミュレーションプログラ
    ム手段と、 ターゲット中央処理ユニット入出力信号のための前記ホ
    ストコンピュータへのおよびこれからの信号リンクを提
    供する入出力信号リンク手段と、 を含み、前記回路内エミュレーションプログラム手段は
    前記ターゲット回路以外に配置されており、対応するタ
    ーゲット中央処理ユニット出力端子位置へのターゲット
    中央処理ユニット出力信号と、対応するターゲット中央
    処理ユニット入力端子位置へのターゲット中央処理ユニ
    ット入力信号とは、ホストコマンド信号に応答して、記
    憶されたターゲットプログラム以外の回路内エミュレー
    ションプログラム命令にしたがう前記ターゲット回路の
    性能の試験および照合に用いられる、ターゲットアクセ
    スプローブ。
  2. 【請求項2】前記ターゲットアクセスプローブは、前記
    回路内エミュレーションメモリ位置にアクセスするイネ
    ーブル状態におく回路内エミュレーションアドレススト
    ローブ信号を発生する、請求の範囲1に記載のプロー
    ブ。
  3. 【請求項3】前記回路内エミュレーションプログラムメ
    モリ位置は、前記回路内エミュレーションアドレススト
    ローブ信号に応答して前記ターゲットアクセスプローブ
    中央処理ユニットに回路内エミュレーションレディー信
    号を発生する、請求の範囲2に記載のプローブ。
  4. 【請求項4】前記ターゲットアクセスプローブ中央処理
    ユニットは、主プログラムメモリ位置に記憶された命令
    の実行を中止しかつ前記回路内エミュレーションプログ
    ラムメモリ位置に記憶された命令の実行を始めるブレー
    ク信号を発生する、請求の範囲1に記載のプローブ。
  5. 【請求項5】さらに、前記ホストコマンド信号をディジ
    タル語フォーマットに組み立てかつ組み立てられたコマ
    ンド信号を前記ターゲットアクセスプローブ中央処理ユ
    ニットに回送するターゲットアクセスプローブ信号回送
    手段を含む、請求の範囲1に記載のプローブ。
  6. 【請求項6】前記ターゲットアクセスプローブ信号回送
    手段は、ターゲットアクセスプローブ信号回送集積回路
    を含む、請求の範囲5に記載のプローブ。
  7. 【請求項7】前記ターゲットアクセスプローブ信号回送
    集積回路は、プログラム可能である、請求の範囲6に記
    載のプローブ。
  8. 【請求項8】前記ターゲットアクセスプローブ信号回送
    集積回路は、再プログラム可能である、請求の範囲6に
    記載のプローブ。
  9. 【請求項9】前記ターゲットアクセスプローブ信号回送
    集積回路は、ロジックセルアレイを含む、請求の範囲6,
    7または8に記載のプローブ。
  10. 【請求項10】さらに、前記ターゲットアクセスプロー
    ブ内に信号路を構成するための情報を記憶するメモリ位
    置を有するターゲットアクセスプローブ信号路構成メモ
    リを含む、請求の範囲1に記載のプローブ。
  11. 【請求項11】ターゲット中央処理ユニット入力信号お
    よびターゲット中央処理ユニット出力信号がそれぞれ現
    れる入力端子位置および出力端子位置を有するターゲッ
    ト中央処理ユニットが電気的に存在ないときにターゲッ
    トコンピュータシステムの動作性能を試験しかつ照合す
    る装置において、 前記ターゲットコンピュータシステムに直接接続される
    手段を有する基板と、ターゲット中央処理ユニット入力
    信号を前記入力端子位置から受け、ターゲット中央処理
    ユニット出力信号を前記出力端子位置に発生するターゲ
    ットアクセスプローブ中央処理ユニットと、回路内プロ
    グラム命令を記憶する回路内プログラムメモリ位置を有
    し、ホストコマンド信号に応答して回路内エミュレーシ
    ョンプログラム命令にしたがってターゲット中央処理ユ
    ニット出力信号を発生させるために前記ターゲットアク
    セスプローブ中央処理ユニットと通信する回路内エミュ
    レーションプログラム手段とを備えるターゲットアクセ
    スプローブ手段と、 ホスト分析コード源と前記ターゲットアクセスプローブ
    手段との間のインターフェースを提供するために前記タ
    ーゲットアクセスプローブ手段と共同する通信アダプタ
    手段と、 前記ターゲットアクセスプローブ手段と前記通信アダプ
    タ手段との間のデータ通信用リンクを提供するデータ通
    信リンク手段と、 を含む試験照合装置。
  12. 【請求項12】前記ターゲットアクセスプローブ手段と
    前記通信アダプタ手段との一方は、前記ターゲットアク
    セスプローブ手段と前記通信アダプタ手段との一方内に
    信号路を構成する信号回送集積回路を含む、請求の範囲
    11に記載の装置。
  13. 【請求項13】前記信号回送集積回路は、プログラム可
    能である、請求の範囲12に記載の装置。
  14. 【請求項14】前記信号回送集積回路は、再プログラム
    可能である、請求の範囲12に記載の装置。
  15. 【請求項15】前記信号回送集積回路は、ロジックセル
    アレイを含む、請求の範囲12,13または14に記載の装
    置。
  16. 【請求項16】前記ターゲットアクセスプローブ手段
    は、前記ターゲットアクセスプローブ手段内に信号路を
    構成するための情報を記憶するターゲットアクセスプロ
    ーブ信号路構成メモリ位置を含む、請求の範囲11に記載
    の装置。
  17. 【請求項17】通信アダプタ手段は、前記通信アダプタ
    内に信号路を構成するための情報を記憶するメモリ位置
    を有する通信アダプタメモリを含む、請求の範囲11に記
    載の装置。
  18. 【請求項18】前記ターゲットアクセスプローブ手段
    は、前記ターゲットアクセスプローブ中央処理ユニット
    にコマンド信号を回送するためのターゲットアクセスプ
    ローブ信号回送手段を含み、 前記通信アダプタ手段は、前記通信アダプタ内に信号路
    を構成するための情報を記憶するメモリ位置を有する通
    信アダプタメモリを含む、請求の範囲11に記載の装置。
  19. 【請求項19】前記通信アダプタメモリは再プログラム
    可能であり、それにより、異種のホスト分析コード源に
    より発生された書込みコマンド信号をイネーブル状態に
    おくべく前記通信アダプタ手段内に異種の信号路を構成
    する情報の記憶の能力を提供する、請求の範囲18に記載
    の装置。
  20. 【請求項20】前記ターゲットアクセスプローブはロジ
    ックセルアレイを備えるターゲットアクセスプローブ信
    号回送手段を含み、前記ターアゲットアクセスプローブ
    ・ロジックセルアレイおよび前記通信アダプタメモリの
    それぞれは再プログラム可能であり、前記通信アダプタ
    メモリは前記ロジックセルアレイ内に信号路を構成する
    情報を記憶するために適合可能である、請求の範囲17に
    記載の装置。
  21. 【請求項21】前記ターゲットアクセスプローブ手段
    は、さらに、ターゲットアクセスプローブ信号回送手段
    を含み、前記回路内エミュレーションプログラムメモリ
    位置は、前記通信アダプタ手段により発生されかつ前記
    ターゲットアクセスプローブ信号回送手段を経て回送さ
    れるコマンド信号によりもたらされる命令を記憶する、
    請求の範囲11に記載の装置。
  22. 【請求項22】前記回路内エミュレーションプログラム
    手段は、ランダムアクセスメモリを含む、請求の範囲21
    に記載の装置。
  23. 【請求項23】前記通信アダプタ手段は、情報を記憶す
    る通信アダプタメモリ位置を有する通信アダプタメモリ
    を含み、前記ターゲットアクセスプローブ手段は情報を
    記憶するメモリ位置を有するターゲットアクセスプロー
    ブメモリを含み、前記通信アダプタメモリと前記ターゲ
    ットアクセスプローブメモリとは互いにデータ通信可能
    であり、前記通信アダプタメモリ位置に記憶された命令
    は装置への電力の供給開始時に前記ターゲットアクセス
    プローブ中央処理ユニットに伝送される、請求の範囲11
    に記載の装置。
  24. 【請求項24】前記ターゲットアクセスプローブ手段と
    前記通信アダプタ手段とは物理的に分離されており、前
    記データ通信リンク手段は前記ターゲットアクセスプロ
    ーブ手段と前記通信アダプタ手段との間にコマンド信号
    をもたらす電気的に絶縁された多重の導電体を含む、請
    求の範囲11に記載の装置。
  25. 【請求項25】前記導電体は、フラットケーブルを構成
    する、請求の範囲24に記載の装置。
  26. 【請求項26】前記データ通信用リンクは、前記ターゲ
    ットアクセスプローブ手段が前記通信アダプタ手段にデ
    ータを提供することができるか否かを前記通信アダプタ
    手段に指示しかつ前記通信アダプタ手段が前記ターゲッ
    トアクセスプローブ手段からデータを受けることができ
    るか否かを前記ターゲットアクセスプローブ手段に指示
    するハンドシェーク信号を含むデータ通信リンク手段
    と、 を含む請求の範囲11に記載の装置。
JP3509399A 1990-05-09 1991-05-03 回路内エミュレータ Expired - Lifetime JPH0769853B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/521,261 US5228039A (en) 1990-05-09 1990-05-09 Source-level in-circuit software code debugging instrument
PCT/US1991/003077 WO1991017505A1 (en) 1990-05-09 1991-05-03 In-circuit emulator
US521261 1995-08-30

Publications (2)

Publication Number Publication Date
JPH05506119A JPH05506119A (ja) 1993-09-02
JPH0769853B2 true JPH0769853B2 (ja) 1995-07-31

Family

ID=24076044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3509399A Expired - Lifetime JPH0769853B2 (ja) 1990-05-09 1991-05-03 回路内エミュレータ

Country Status (6)

Country Link
US (1) US5228039A (ja)
EP (1) EP0530247B1 (ja)
JP (1) JPH0769853B2 (ja)
AT (1) ATE116751T1 (ja)
DE (1) DE69106507T2 (ja)
WO (1) WO1991017505A1 (ja)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
JPH04229337A (ja) * 1990-12-27 1992-08-18 Hitachi Ltd エミュレータ
US5375228A (en) * 1991-02-04 1994-12-20 Analog Devices, Inc. Real-time signal analysis apparatus and method for digital signal processor emulation
JPH0816877B2 (ja) * 1991-06-10 1996-02-21 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム
US5357519A (en) * 1991-10-03 1994-10-18 Apple Computer, Inc. Diagnostic system
GB2266606B (en) * 1992-04-27 1996-02-14 Intel Corp A microprocessor with an external command mode
JPH06230979A (ja) * 1992-06-17 1994-08-19 Cyrix Corp 改良されたシステム管理方法および装置
JPH06148286A (ja) * 1992-10-31 1994-05-27 Sony Corp 回路基板装置
US5475829A (en) * 1993-03-22 1995-12-12 Compaq Computer Corp. Computer system which overrides write protection status during execution in system management mode
US5768563A (en) * 1993-07-20 1998-06-16 Dell Usa, L.P. System and method for ROM program development
GB9320052D0 (en) * 1993-09-29 1993-11-17 Philips Electronics Uk Ltd Testing and monitoring of programmed devices
US5539901A (en) * 1993-09-30 1996-07-23 Intel Corporation Method and apparatus for system management mode support for in-circuit emulators
US5640542A (en) * 1993-10-29 1997-06-17 Intel Corporation On-chip in-circuit-emulator memory mapping and breakpoint register modules
EP0652516A1 (en) * 1993-11-03 1995-05-10 Advanced Micro Devices, Inc. Integrated microprocessor
US5604888A (en) * 1994-04-07 1997-02-18 Zycad Corporation Emulation system employing motherboard and flexible daughterboards
TW421761B (en) * 1994-04-12 2001-02-11 Yokogawa Electric Corp Verification support system
US5572665A (en) * 1994-04-21 1996-11-05 Mitsubishi Denki Kabushiki Kaisha Semiconductor integrated circuit for developing a system using a microprocessor
US5615331A (en) * 1994-06-23 1997-03-25 Phoenix Technologies Ltd. System and method for debugging a computing system
EP0715258B1 (en) * 1994-07-22 1998-10-07 Advanced Micro Devices, Inc. Improved computer system
US5623673A (en) * 1994-07-25 1997-04-22 Advanced Micro Devices, Inc. System management mode and in-circuit emulation memory mapping and locking method
JPH08137823A (ja) * 1994-11-04 1996-05-31 Mitsubishi Electric Corp エミュレータ専用ワンチップマイクロコンピュータ
US5630049A (en) * 1994-11-30 1997-05-13 Digital Equipment Corporation Method and apparatus for testing software on a computer network
US5600790A (en) * 1995-02-10 1997-02-04 Research In Motion Limited Method and system for loading and confirming correct operation of an application program in a target system
WO1996038788A2 (en) * 1995-05-31 1996-12-05 Advanced Micro Devices, Inc. Internal state dump mechanism for saving processor values during system testing
US6067407A (en) * 1995-06-30 2000-05-23 Canon Information Systems, Inc. Remote diagnosis of network device over a local area network
US5898858A (en) * 1995-09-28 1999-04-27 Intel Corporation Method and apparatus for providing emulator overlay memory support for ball grid array microprocessor packages
DE19536622A1 (de) * 1995-09-30 1997-04-03 Kontron Elektronik Emulationsvorrichtung
JPH09223036A (ja) * 1996-02-19 1997-08-26 Mitsubishi Electric Corp エミュレータ用マイクロコンピュータユニット
US5896535A (en) * 1996-08-20 1999-04-20 Telefonaktiebolaget L M Ericsson (Publ) Method and system for testing computer system software
US6098183A (en) * 1996-10-17 2000-08-01 Mitac International Corp. Method of debugging in a computer system
GB9622687D0 (en) * 1996-10-31 1997-01-08 Sgs Thomson Microelectronics An integrated circuit with tap controller
US5983017A (en) * 1996-11-12 1999-11-09 Lsi Logic Corporation Virtual monitor debugging method and apparatus
DE69728513T2 (de) * 1996-12-20 2005-04-07 Texas Instruments Inc., Dallas Prozessortestanschluss mit Abtastketten und Datenströmung
US5903759A (en) * 1997-06-04 1999-05-11 3 Com Corporation Software performance analysis using hardware analyzer
US6016557A (en) * 1997-09-25 2000-01-18 Lucent Technologies, Inc. Method and apparatus for nonintrusive passive processor monitor
GB9805486D0 (en) * 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Adapter
US6357023B1 (en) * 1998-04-08 2002-03-12 Kingston Technology Co. Connector assembly for testing memory modules from the solder-side of a PC motherboard with forced hot air
US6351827B1 (en) * 1998-04-08 2002-02-26 Kingston Technology Co. Voltage and clock margin testing of memory-modules using an adapter board mounted to a PC motherboard
US6178526B1 (en) 1998-04-08 2001-01-23 Kingston Technology Company Testing memory modules with a PC motherboard attached to a memory-module handler by a solder-side adaptor board
US6173419B1 (en) 1998-05-14 2001-01-09 Advanced Technology Materials, Inc. Field programmable gate array (FPGA) emulator for debugging software
US6543048B1 (en) * 1998-11-02 2003-04-01 Texas Instruments Incorporated Debugger with real-time data exchange
JP2000175023A (ja) 1998-12-09 2000-06-23 Sharp Corp 画像形成装置
US6601188B1 (en) 1999-10-28 2003-07-29 International Business Machines Corporation Method and apparatus for external crash analysis in a multitasking operating system
US6973417B1 (en) 1999-11-05 2005-12-06 Metrowerks Corporation Method and system for simulating execution of a target program in a simulated target system
US7100152B1 (en) 2000-01-31 2006-08-29 Freescale Semiconductor, Inc. Software analysis system having an apparatus for selectively collecting analysis data from a target system executing software instrumented with tag statements and method for use thereof
US6587965B1 (en) * 2000-04-29 2003-07-01 Hewlett-Packard Development Company, L.P. System and method for single point observability of a dual-mode control interface
US6690154B2 (en) * 2001-03-06 2004-02-10 Joe David Jones High-frequency tester for semiconductor devices
DE10116864A1 (de) * 2001-04-04 2002-11-07 Infineon Technologies Ag Verfahren zum Emulieren einer programmgesteuerten Einheit
US20020157085A1 (en) * 2001-04-20 2002-10-24 Hiroyuki Yabuno Information processing apparatus
US6889346B2 (en) * 2001-07-16 2005-05-03 International Business Machines Corporation Scoping of real time signals of remote communication systems over a computer network: systems, methods and program products
US6825846B2 (en) * 2001-12-10 2004-11-30 American Megatrends, Inc. Systems and methods for capturing screen displays from a host computing system for display at a remote terminal
US7260624B2 (en) * 2002-09-20 2007-08-21 American Megatrends, Inc. Systems and methods for establishing interaction between a local computer and a remote computer
US7418141B2 (en) * 2003-03-31 2008-08-26 American Megatrends, Inc. Method, apparatus, and computer-readable medium for identifying character coordinates
US7412625B2 (en) * 2003-05-27 2008-08-12 American Megatrends, Inc. Method and system for remote software debugging
US7546584B2 (en) * 2003-06-16 2009-06-09 American Megatrends, Inc. Method and system for remote software testing
US7543277B1 (en) 2003-06-27 2009-06-02 American Megatrends, Inc. Method and system for remote software debugging
US7434205B1 (en) 2004-02-19 2008-10-07 Steenhagen Shawn K Virtual type interpretation, interaction and detection
US7827258B1 (en) * 2004-03-01 2010-11-02 American Megatrends, Inc. Method, system, and apparatus for communicating with a computer management device
US7640155B2 (en) * 2004-06-01 2009-12-29 Quickturn Design Systems, Inc. Extensible memory architecture and communication protocol for supporting multiple devices in low-bandwidth, asynchronous applications
US7519749B1 (en) 2004-08-25 2009-04-14 American Megatrends, Inc. Redirecting input and output for multiple computers
CN100369008C (zh) * 2004-08-25 2008-02-13 义隆电子股份有限公司 整合型的线路实体模拟器
US7552360B2 (en) 2005-03-21 2009-06-23 Texas Instruments Incorporated Debug and test system with format select register circuitry
WO2006060805A2 (en) * 2004-12-02 2006-06-08 Texas Instruments Incorporated Multiple test access port protocols sharing common signals
US8010843B2 (en) * 2005-12-14 2011-08-30 American Megatrends, Inc. System and method for debugging a target computer using SMBus
US7783799B1 (en) * 2006-08-31 2010-08-24 American Megatrends, Inc. Remotely controllable switch and testing methods using same
CN101458652B (zh) * 2007-12-14 2012-01-25 上海海尔集成电路有限公司 微控制器嵌入式在线仿真调试系统
US10903594B2 (en) * 2018-10-01 2021-01-26 Te Connectivity Corporation Board-to-board connector assembly for add-in cards

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61188638A (ja) * 1985-02-14 1986-08-22 サポート・テクノロジーズ・インコーポレーテツド 電子システムのテスト装置及び方法
JPH01307837A (ja) * 1988-06-06 1989-12-12 Fuji Xerox Co Ltd Mpuシミュレーション方法及びmpuシミュレータ
JPH0285934A (ja) * 1988-09-22 1990-03-27 Hitachi Micro Comput Eng Ltd エミュレータ

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4192451A (en) * 1978-05-30 1980-03-11 Tektronix, Inc. Digital diagnostic system employing signature analysis
US4486827A (en) * 1979-11-09 1984-12-04 Zilog, Inc. Microprocessor apparatus
US4569048A (en) * 1983-09-19 1986-02-04 Genrad, Inc. Method and apparatus for memory overlay
US4674089A (en) * 1985-04-16 1987-06-16 Intel Corporation In-circuit emulator
US4809167A (en) * 1985-07-03 1989-02-28 Metalink Corporation Circuitry for emulating single chip microcomputer without access to internal buses
US4899306A (en) * 1985-08-26 1990-02-06 American Telephone And Telegraph Company, At&T Bell Laboratories Test interface circuit which generates different interface control signals for different target computers responding to control signals from host computer
US4788683A (en) * 1986-01-14 1988-11-29 Ibm Corporation Data processing system emulation with microprocessor in place
JPS62247275A (ja) * 1986-03-31 1987-10-28 Ando Electric Co Ltd インサ−キツトエミユレ−タのcpu識別回路
US4796258A (en) * 1986-06-23 1989-01-03 Tektronix, Inc. Microprocessor system debug tool
JPH0193837A (ja) * 1987-10-05 1989-04-12 Nec Corp デバッグ用マイクロプロセッサ
US5073968A (en) * 1988-08-09 1991-12-17 Hewlett-Packard Company Method and apparatus for marking emulation analysis states
JPH02133834A (ja) * 1988-11-14 1990-05-23 Nec Corp インサートキットエミュレータ
US5047926A (en) * 1989-03-15 1991-09-10 Acer Incorporated Development and debug tool for microcomputers
US5053949A (en) * 1989-04-03 1991-10-01 Motorola, Inc. No-chip debug peripheral which uses externally provided instructions to control a core processing unit
US5077657A (en) * 1989-06-15 1991-12-31 Unisys Emulator Assist unit which forms addresses of user instruction operands in response to emulator assist unit commands from host processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61188638A (ja) * 1985-02-14 1986-08-22 サポート・テクノロジーズ・インコーポレーテツド 電子システムのテスト装置及び方法
JPH01307837A (ja) * 1988-06-06 1989-12-12 Fuji Xerox Co Ltd Mpuシミュレーション方法及びmpuシミュレータ
JPH0285934A (ja) * 1988-09-22 1990-03-27 Hitachi Micro Comput Eng Ltd エミュレータ

Also Published As

Publication number Publication date
JPH05506119A (ja) 1993-09-02
US5228039A (en) 1993-07-13
EP0530247A1 (en) 1993-03-10
EP0530247B1 (en) 1995-01-04
DE69106507T2 (de) 1995-05-11
ATE116751T1 (de) 1995-01-15
DE69106507D1 (en) 1995-02-16
WO1991017505A1 (en) 1991-11-14

Similar Documents

Publication Publication Date Title
EP0530247B1 (en) In-circuit emulator
US5581695A (en) Source-level run-time software code debugging instrument
US5838948A (en) System and method for simulation of computer systems combining hardware and software interaction
US5978584A (en) Debugging apparatus for debugging a program by changing hardware environments without changing program operation state
US5572665A (en) Semiconductor integrated circuit for developing a system using a microprocessor
US6173419B1 (en) Field programmable gate array (FPGA) emulator for debugging software
US6957180B1 (en) System and a method for communication between an ICE and a production microcontroller while in a halt state
EP1205848A1 (en) Embedded microcontroller bound-out chip as preprocessor for a logic analyser
JPH011039A (ja) インサーキット・エミュレータ
EP1782204A2 (en) Emulation and debug interfaces for testing an integrated circuit with an asynchronous microcontroller
US7434103B2 (en) Program processing device
US20080126862A1 (en) System and Method for Testing Software Code for Use on a Target Processor
US6263305B1 (en) Software development supporting system and ROM emulation apparatus
CN111427839B (zh) 一种Intel SoC FPGA的远程在线配置、调试方法
US20050044345A1 (en) Program processing device
KR100801759B1 (ko) 슬레이브의 디버깅 방법 및 시스템
US5655111A (en) In-circuit emulator
US6272454B1 (en) Debugging and cosimulation method for wide band switch firmware
US7451074B2 (en) Embedded microprocessor emulation method
US7194401B2 (en) Configuration for in-circuit emulation of a program-controlled unit
US6963829B1 (en) Method and apparatus for interfacing a spectrum digital incorporated TMS470 evaluation board with a spectrum digital incorporated TMS320LC54X evaluation board
JP2002268911A (ja) 電子計算機用開発支援装置
JPS60245052A (ja) デ−タ処理システム
JPH0477834A (ja) インサーキットエミュレータ
JP2004030075A (ja) デバッグ装置及びデバッグ方法