JP2007535760A - 開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキング - Google Patents

開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキング Download PDF

Info

Publication number
JP2007535760A
JP2007535760A JP2007510746A JP2007510746A JP2007535760A JP 2007535760 A JP2007535760 A JP 2007535760A JP 2007510746 A JP2007510746 A JP 2007510746A JP 2007510746 A JP2007510746 A JP 2007510746A JP 2007535760 A JP2007535760 A JP 2007535760A
Authority
JP
Japan
Prior art keywords
data
field
mask
debug
message
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
JP2007510746A
Other languages
English (en)
Other versions
JP2007535760A5 (ja
Inventor
モイヤー,ウィリアム・シー
コリンズ,リチャード・ジー
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.)
NXP USA Inc
Original Assignee
NXP USA Inc
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 NXP USA Inc filed Critical NXP USA Inc
Publication of JP2007535760A publication Critical patent/JP2007535760A/ja
Publication of JP2007535760A5 publication Critical patent/JP2007535760A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • 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/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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

Abstract

現在のリアルタイム・デバッグ・システムにおいて、デバッグ・メッセージが、制限された帯域幅のポート(18)を介して集積回路(10)から外部の開発システム(25)へ送信される。メッセージを発生することが可能である多重バス・マスタ(11,12)及び/又は多重バス(16)が集積回路(10)に更に一層高密度に詰め込まれるようになるにつれ、当該制限された帯域幅ポート(18)が集積回路(10)から外部の開発システム(25)へ送信されることになるデバッグ・メッセージの量を十分にサポートすることが益々難しくなりつつある。帯域幅を著しく改善するため、複数のマスク(70,80,90,100,110,120,130,140,150)及びマスキング回路(36)を用いて、デバッグ・メッセージ(40,50)の一部(41−45,51−55)を選択的にマスキングする。

Description

[関連出願]
本出願は、2000年11月7日に発行され、発明の名称が「データ・プロセッサのための開発インターフェース(Development Interface For A Data Processor)」である米国特許No.6,145,122に関連し、当該特許は、本明細書に援用される。
[発明の分野]
本発明は、一般的に、データ処理システムに関し、より詳細には、開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキングに関する。
[関連技術]
現在のリアルタイム・デバッグ・システムにおいては、デバッグ・メッセージは、制限された帯域幅ポートを介して集積回路から外部の開発システムに送信される。メッセージを発生することが可能である多重バス・マスタ及び/又は多重バスが集積回路に更に一層高密度に詰め込まれるようになるにつれ、当該制限された帯域幅ポートが集積回路から外部の開発システムへ送信されることになるデバッグ・メッセージの量を十分にサポートすることが益々難しくなりつつある。
[発明の詳細な説明]
本発明が、添付図面により一例としてであって限定するものとしてではなく説明され、そこにおいては、類似の参照番号は、類似の構成要素を示す。
当業者は、図面の中の構成要素が単純化及び明瞭化するよう示され、そして必ずしもスケール通りに描かれていないことを認めるであろう。例えば、図面の中の構成要素の幾らかの寸法は、本発明の実施形態の理解を改善するのを助けるため、他の構成要素に対して誇張されている。
本明細書において用いられるように、用語「バス」は、データ、アドレス、制御、又は状態のような1又はそれより多くの様々なタイプの情報を転送するため用いる複数の信号又は導体を指すため用いられる。数字の前にある符号「%」は、その数字がそのバイナリ又は基数2形式で表されることを指示する。数字の前にある符号「0x」は、16進又は基数16形式で表されることを指示する。
図1は、本発明に従ったデータ処理システムをブロック図の形式で示す。図示の実施形態において、データ処理システム10は、1又はそれより多くの処理ユニット11及び1又はそれより多くの他のモジュール12を含む。データ処理システム10は、オプションでバス・インターフェース13を含む。データ処理システム10はまた、開発インターフェース14を含む。データ処理システム10はまた、オプションで1又はそれより多くのメモリ15を含む。そしてこれらの構成要素の全ては、1又はそれより多くのバス16により双方向に結合される。或る実施形態においては、メモリ15は、オプションで、端末装置19によりデータ処理システム10の外部へ結合される。処理ユニット11は、任意に端末装置20によりデータ処理システム10の外部へ結合される。モジュール12は、任意に端末装置21によりデータ処理システム10の外部へ結合される。バス・インターフェース13は、任意に端末装置17によりデータ処理システム10の外部へ結合される。
或る実施形態においては、開発インターフェース14は、端末装置18によりデータ処理システム10の外部へ結合される。一実施形態においては、開発インターフェース14は、端末装置18により外部開発システム25へ結合される。一実施形態においては、外部開発システム25は、端末装置18によりデータ処理システム10に結合されたロジック・アナライザ22を含む。一部の実施形態においては、ロジック・アナライザ22は、コンピュータ23へ双方向に結合され、当該コンピュータ23は、デバッギング・ソフトウエアの機能を格納及び/又は実行する回路24を含む。
本発明の代替実施形態は、データ処理システム10のためのいずれのタイプのアーキテクチャを用い得る。図1に示されるアーキテクチャは、単に1つのあり得るアーキテクチャである。本発明の代替実施形態は、開発システム25のためのいずれのタイプの開発システムを用い得る。端末装置17−21は、情報をデータ処理システム10へ転送する、又は情報をデータ処理システム10から転送するのを可能にするいずれのタイプの端末装置であり得る。他のモジュール12は、いずれの機能を実行し得る。処理ユニット11は、データをいずれの要領で処理し得る。メモリ15は、情報を格納することが可能であるいずれのタイプの回路でよい。バス・インターフェース13は、1又はそれより多くのバス16とバス端末装置17に結合された外部バス(図示せず)との間のインターフェースを可能にするいずれのタイプの回路でよい。
図2は、本発明の一実施形態に従った図1の開発インターフェース14の一部をブロック図の形式で示す。一実施形態においては、開発インターフェース14は、マスク記憶回路32及び他のデバッグ回路30を含み、当該マスク記憶回路32及び他のデバッグ回路30は、互いに、そして更に、バス16及び端末装置18に双方向に、結合される。マスキング回路36は、マスク記憶回路32及び端末装置18に結合される。デバッグ・メッセージ記憶回路34は、他のデバッグ回路30及びマスキング回路36に結合される。一実施形態においては、マスク記憶回路32は、レジスタ38の一部として含められる。本発明の代替実施形態は、結合されたマスク記憶回路32を、開発インターフェース14の中のどこにでも配置し得て、又は代替として、データ処理システム10の中のどこにでも配置し得る。同様に、デバッグ・メッセージ記憶回路34及びマスキング回路36は、開発インターフェース14又はデータ処理システム10の中のどこにでも配置され、そしていずれの方法でも結合され得る。
デバッグ・メッセージ記憶回路34はまた、データ記憶回路と呼ぶことができる。デバッグ・メッセージ記憶回路34は、例えば、開発インターフェース14が開発機能を越えた他の又は追加の機能を実行するとき、端末装置18によりデータ処理システム10の外部に転送されるべきデータを格納し得る。
図3は、本発明の一実施形態に従ったデータ書き込みフォーマット40をブロック図の形式で示す。本発明の一実施形態においては、データ書き込みフォーマット40は、複数のビット・フィールド、即ち、データ値ビット・フィールド41、相対/フル・アドレス・ビット・フィールド42、データ・サイズ・ビット・フィールド43、ソース・プロセッサ・ビット・フィールド44、及びメッセージ・タイプ・ビット・フィールド45を含む。データ書き込みフォーマット40が各ビット・フィールドに対して指示されたビット数を有するよう図示されているにも拘わらず、本発明の代替実施形態は、各ビット・フィールドに対していずれのビット数を用い得る。
本発明の幾つかの実施形態にとっては、アドレス・フィールド42は、フル・アドレスか又は相対アドレスかのいずれかを表すことができる。本発明の代替実施形態は、アドレス・フィールドを異なる仕方で(例えば、フルのみ、相対のみ、等々)用い得る。データ・サイズ・フィールド43を用いて、データ値フィールド41の中で送信されるデータ値の幅を指示し得る。一実施形態にとっては、データ値は、8ビット、16ビット、32ビット、又は64ビットのうちのいずれかの幅を有し得る。代替実施形態は、いずれの所望のデータ・サイズを用い得る。ソース・プロセッサ・フィールド44を用いて、処理ユニット11(図1参照)の中のどのプロセッサが特定のデータ書き込みメッセージに対応するかを指示し得る。本発明の代替実施形態は、代わりに、フィールド44を一般的ソース・フィールドとして用い得て、そこにおいては、まさに処理ユニット11でなくいずれのソース回路が、特定のデータ書き込みメッセージが対応するソース回路であってよい。例えば、ソース回路は、DMA(直接メモリ・アクセス)回路であってよく、またバス16のうちのいずれのバスについてのバス・マスタであってよく、或いはデータ処理システム10の中のいずれの他の回路であってもよい。
メッセージ・タイプ・フィールド45を用いて、どのタイプの情報が現在のメッセージ内に含まれるか(例えば、メッセージがデータ書き込みか又はデータ読み出しかどうか)を指示し得る。また、メッセージ・タイプ・フィールド45を用いて、例えば、エラー状態が生じたか、否かのような特定の情報を与え得る。本発明の一実施形態においては、データ書き込みフォーマット40は、IEEE(米国電気電子工学会)により定義されたNEXUS5001(登録商標)(即ち、IEEEISTO 5001)デバッグ標準と互換性がある。本発明のこの実施形態にとっては、メッセージ・タイプ・フィールド45を用いて、TCODESを送信し得る。
本発明の代替実施形態は、図3に示されるビット・フィールドより多いビット・フィールド、又はそれより少ないビット・フィールド、或いはそれとは異なるビット・フィールドを用い得ることに注目されたい。
図4は、本発明の一実施形態に従ったデータ読み出しフォーマット50をブロック図の形式で示す。図4のデータ読み出しメッセージ・フォーマット50がデータ処理システム10に対する読み出しアクセス用であり、一方図3のデータ書き込みメッセージ・フォーマット40がデータ処理システム10に対する書き込みアクセス用であることに注目されたい。本発明の一実施形態においては、メッセージ・タイプ・フィールド45及び55の中の1ビットを用いて、データ・メッセージ・タイプがフォーマット40におけるような「書き込み」であるか、又はフォーマット50におけるような「読み出し」であるかどうかを区別する。本発明の代替実施形態は、単一のデバッグ・メッセージ・タイプのみを用いるか、又は2より多いデバッグ・メッセージ・フォーマットを用いるか、或いは図3及び図4に示されるフォーマットとは異なるデバッグ・メッセージ・フォーマットを用いてもよい。一実施形態にとって、データ読み出しメッセージ・フォーマット50のビット・フィールド51−55は、上記で説明したデータ書き込みメッセージ・フォーマット40の対応のビット・フィールド41−45と同じ要領で機能する。代替実施形態において、ビット・フィールド51−55は、フォーマット40に関する上記の説明とは異なる機能を有してよい。データ読み出しメッセージ・フォーマット50が各ビット・フィールドに対して指示されたビット数を有するよう図示されているにも拘わらず、本発明の代替実施形態は、各ビット・フィールドに対していずれのビット数を用い得る。本発明の代替実施形態は、図4に示されるビット・フィールドより多くのビット・フィールドを、又はそれより少ないビット・フィールドを、或いはそれとは異なるビット・フィールドを用い得ることに注目されたい。
本発明の一実施形態においては、データ読み出しメッセージ・フォーマット50は、IEEE(米国電気電子工学会)により定義されたNEXUS5001(登録商標)(即ち、IEEEISTO 5001)デバッグ標準と互換性がある。本発明のこの実施形態にとって、メッセージ・タイプ・フィールド45を用いて、TCODESを送信し得る。
図5から図8は、本発明の一実施形態に従ったデータ・マスク制御レジスタ70、80、90及び100をブロック図の形式で示す。図示の実施形態においては、別々のマスクが、異なるデータ幅に対して用いられる。例えば、データ・マスク制御レジスタ70は、2つの32ビット部分71及び72を有し、それら2つの32ビット部分71及び72のそれぞれは、32ビット・マスクを格納する。次いで、32ビット部分71及び72の中のそれぞれの32ビット・マスクは、連結されて、1つの64ビット・マスクを形成する。データ・マスク制御レジスタ80は、32ビット・マスクを格納し、データ・マスク制御レジスタ90は、16ビット・マスクを格納し、データ・マスク制御レジスタ100は、8ビット・マスクを格納する。本発明の代替実施形態は、より多い、又はより少ない、或いは異なるデータ・マスク制御レジスタを用いてもよい。
また、代替実施形態においては、複数のマスク値が、同じレジスタに配置されることができる(例えば、データ・マスク制御レジスタ100に格納されたマスクにより要求される8ビットは、同じ32ビット・レジスタの中に、データ・マスク制御レジスタ90の中に格納されたマスクにより要求される16ビットとして格納されることができる。)。代替実施形態は、所与のデータ幅に対して複数のマスクを有することさえあり得る。例えば、データ・マスク制御レジスタ100は、異なるデバッグ・メッセージを選択的にマスキングするため用い得る4個の異なる8ビット・マスク値を格納し得る。例えば、どの8ビット・マスク値を用いるかは、デバッグ・メッセージ自体の中の1フィールドにより決定され得る。例えば、図3及び図4を参照すると、メッセージ・タイプ・フィールド45及び55を用いて、レジスタ100の中の複数のマスク値からどの8ビット・マスク値がマスキングを実行するため実際に用いられるかを選択し得る。
図2から図8を参照すると、データ・マスク制御レジスタ70、80、90及び100のうちの1つを用いて、マスク値をマスク記憶回路32(図2を参照)からマスキング回路36へ与える。選択されたマスクは、プロセッサ・データ転送のサイズに基づくか、又はアクセスの他の属性に基づいて選択される。次いで、マスキング回路36は、このマスク値を用いて、データ値ビット・フィールド41、51の中の選択されたビットをマスキングする。そこで、データ値ビット・フィールド41、51の中のマスキングされたビットは、端末装置18に送信されず、従って、外部開発システム25へ送信されない。マスキング回路36により与えられるマスキング・プロセスは、端末装置18の実効帯域幅を著しく増大させることを可能にする。
図9は、本発明の一実施形態に従ったアドレス・マスク制御レジスタ110をブロック図の形式で示す。図10は、本発明の一実施形態に従ったアドレス・マスク制御レジスタ120をブロック図の形式で示す。一実施形態においては、別々のマスク(アドレス・マスク制御レジスタ110及び120のそれぞれに格納されている。)は、正常なメッセージのため、そして同期化メッセージのため使用される。代替実施形態においては、アドレス・マスク制御レジスタ110を用いて、相対アドレスをマスキングし、そしてアドレス・マスク制御レジスタ120を用いて、フル・アドレスをマスキングする。また、別々のマスクが、読み出しメッセージのため、そして書き込みメッセージのため与えられる。この一例として、代替実施形態においては、アドレス・マスク制御レジスタ110に格納されたマスクを用いて、データ書き込みフォーマット40(図3参照)のビット・フィールド42の中の選択されたビットをマスキングし、そしてアドレス・マスク制御レジスタ120に格納されたマスクを用いて、データ読み出しメッセージ・フォーマット50(図4参照)のビット・フィールド52の中の選択されたビットをマスキングする。本発明の代替実施形態は、より多くの、又はより少ない、或いは異なるアドレス・マスク制御レジスタを用い得る。
また、代替実施形態においては、複数のマスク値が、同じレジスタの中に配置されることができる。代替実施形態は、所与のアドレス・タイプ(例えば、相対アドレス)に対する複数のマスクすら有し得る。例えば、アドレス・マスク制御レジスタ110は、特定の範囲のアドレスの中のアドレスを選択的にマスキングするため用いられ得るマスク値を格納し、一方アドレス・マスク制御レジスタ120は、異なる範囲のアドレスの中のアドレスを選択的にマスキングするため用いられ得るマスク値を格納し得る。代替として、メッセージ・タイプ・フィールド45及び55(図3及び図4参照)を用いて、複数のアドレス・マスク制御レジスタ110及び120からのどのアドレス・マスク値を実際に用いて、マスキングを実行するかを選択し得る。
図2〜図4及び図9〜図10を参照すると、アドレス・マスク制御レジスタ110及び120のうちの1つを用いて、マスク値をマスク記憶回路32(図2参照)からマスキング回路36へ与える。次いで、マスキング回路36は、このマスク値を用いて、アドレス・フィールド42、52の中の選択されたビットをマスキングする。そこで、アドレス・フィールド42、52の中のマスキングされたビットは、端末装置18へ送信されず、従って、外部開発システム25へ送信されない。マスキング回路36により与えられるマスキング・プロセスは、端末装置18の実効帯域幅を著しく増大させることを可能にする。
図11は、本発明の一実施形態に従ったソース・マスク制御レジスタ130をブロック図の形式で示す。一実施形態においては、データ追跡メッセージのための個々のソース・プロセッサ・ビット・マスクは、ソース・マスク制御レジスタ130の一部に格納される。ソース・マスク制御レジスタ130の中に格納されたこのソース・プロセッサ・ビット・マスクを用いて、ビット・フィールド44(図3参照)及びビット・フィールド54(図4参照)の中の選択されたビットをマスキングし得る。代替実施形態においては、別々のマスクが、読み出しメッセージのため、そして書き込みメッセージのために与えられる。この一例として、代替実施形態においては、ソース・マスク制御レジスタ130の第1の部分に格納された第1のマスクを用いて、データ書き込みメッセージ・フォーマット40(図3参照)のビット・フィールド44の中の選択されたビットをマスキングし得て、そしてソース・マスク制御レジスタ130の第2の部分に格納された第2のマスクを用いて、データ読み出しメッセージ・フォーマット50(図4参照)のビット・フィールド54の中の選択されたビットをマスキングし得る。代替として、メッセージ・タイプ・フィールド45及び55(図3及び図4参照)を用いて、複数のソース・マスク値からどのソース・マスク値を実際に用いて、マスキングを実行するかを選択し得る。本発明の代替実施形態は、ソース・マスク制御レジスタ130の中のより多くの、又はより少ない、或いは異なるサイズ・フィールドを用い得る。
図2から図4及び図11を参照すると、ソース・マスク制御レジスタ130からのマスクを用いて、マスク値をマスク記憶回路32(図2を参照)からマスキング回路36に与える。次いで、マスキング回路36は、このマスク値を用いて、ソース・プロセッサ・フィールド44、54の中の選択されたビットをマスキングする。そこで、ソース・プロセッサ・フィールド44、54の中のマスキングされたビットは、端末装置18へ送信されず、従って外部開発システム25へ送信されない。マスキング回路36により与えられるマスキング・プロセスは、端末装置18の実効帯域幅を著しく増大させることを可能にする。
図12は、本発明の一実施形態に従ったデータ・サイズ・マスク制御レジスタをブロック図の形式で示す。一実施形態においては、データ追跡メッセージに対する個々のデータ・サイズ・ビット・マスクは、データ・サイズ・マスク制御レジスタ140の一部に格納される。データ・サイズ・マスク制御レジスタ140の中の格納されたこのデータ・サイズ・マスクを用いて、ビット・フィールド43(図3参照)及びビット・フィールド53(図4参照)の中の選択されたビットをマスキングする。代替実施形態においては、別々のマスクが、読み出しメッセージのため、そして書き込みメッセージのため与えられる。代替として、メッセージ・タイプ・フィールド54及び55(図3及び図4参照)を用いて、複数のデータ・サイズ・マスク値からのどのデータ・サイズ・マスク値を実際に用いて、マスキングを実行するかを選択する。本発明の代替実施形態は、データ・サイズ・マスク制御レジスタ140の中のより多くの、又は少ない、或いは異なるサイズ・フィールドを用い得る。
図2から図4及び図12を参照すると、データ・サイズ・マスク制御レジスタ140を用いて、マスク値をマスク記憶回路32(図2参照)からマスキング回路36へ与える。次いで、マスキング回路36は、このマスク値を用いて、データ・サイズ・フィールド43、53の中の選択されたビットをマスキングする。そこで、データ・サイズ・フィールド43、53の中のマスキングされたビットは、端末装置18へ送信されず、従って外部開発システム25へ送信されない。マスキング回路36により与えられるマスキング・プロセスは、端末装置18の実効帯域幅を著しく増大させることを可能にする。
図13は、本発明の一実施形態に従ったメッセージ・タイプ・マスク制御レジスタをブロック図の形式で示す。一実施形態において、全てのメッセージに対する個々のメッセージ・タイプ・ビット・マスクが、メッセージ・タイプ・マスク制御レジスタ150の一部に格納される。メッセージ・タイプ・マスク制御レジスタ150に格納されたこのメッセージ・タイプ・マスクを用いて、ビット・フィールド45(図3参照)及びビット・フィールド55(図4参照)の中の選択されたビットをマスキングする。代替実施形態においては、別々のマスクが、読み出しメッセージのため、そして書き込みメッセージのため与えられる。本発明の代替実施形態は、メッセージ・タイプ・マスク制御レジスタ150の中のより多くの、又はより少ない、或いは異なるサイズ・フィールドを用い得る。
図2から図4及び図13を参照すると、メッセージ・タイプ・マスク制御レジスタ150からのマスクを用いて、マスク値をマスク記憶回路32(図2参照)からマスキング回路36へ与える。次いで、マスキング回路36は、このマスク値を用いて、メッセージ・タイプ・フィールド45、55の中の選択されたビットをマスキングする。そこで、メッセージ・タイプ・フィールド45、55の中のマスキングされたビットは、端末装置18へ送信されず、従って外部開発システム25へ送信されない。マスキング回路36をマスキングすることにより与えられるマスキング・プロセスは、端末装置18の実効帯域幅を著しく増大させることを可能にする。
本発明の一実施形態においては、メッセージ・タイプ・マスク制御レジスタ150に格納されたメッセージ・タイプ・マスクを用いて、全てのメッセージをマスキングし得る一方、選択された他のレジスタ(例えば、レジスタ110−150)に格納されたマスクのみを用いて、選択されたメッセージ・タイプ(例えば、データ追跡メッセージ)をマスキングし得る。どんなタイプのメッセージが送られているかは、メッセージ・タイプ・フィールド45及び55(図3及び図4参照)により指示されることに注目されたい。本発明の代替実施形態は、使用可能なマスクのうちの1つ又はそれより多くのマスクを、メッセージ・タイプ、読み出し/書き込み、又はいずれの他の判定基準に基づいて選択的に適用し得る。本発明の一実施形態においては、メッセージ・タイプ・フィールド45及び55を用いて、NEXUS5001(登録商標)デバッグ標準により用いられるTCODESを与える。
レジスタが使用可能な十分なビットを有するならば、図5から図13に示されたマスクのいずれも同じレジスタの中に共に配置され得ることに注目されたい。本発明の一実施形態においては、マスク・レジスタ70、80、90、100、120、130、140及び150は、全て、マスク記憶回路32の一部として配置され得る。本発明の代替実施形態においては、マスク・レジスタ70、80、90、100、120、130、140及び150は、データ処理システム10のいずれのところにも配置され得る。本発明の図示の実施形態は、マスク・レジスタ70、80、90、100、120、130、140及び150を用いて、そして図3及び図4に示されるフォーマット40及び50を用いて、デバッグ・メッセージの中のビットをマスキングするが、代替実施形態は、類似の又は異なるマスク・レジスタを用いて、そしていずれの所望のメッセージ・フォーマットを用いて、いずれの所望のタイプのメッセージの中のビットをマスキングし得る。
例200
図14は、マスキングを用いて、端末装置18上に送信される出力ビットの数(即ち、帯域幅)を低減する仕方の例200を記載する。図14は、メモリの中の2つの制御変数(変数1及び変数2)がプログラムの流れを追跡している間にモニタリングされる例200を示す。図14に中のボックス201を参照すると、変数1は、アドレス0x1300D3C3に配置され、そして8ビットの変数タイプを有する。変数2は、アドレス0x81001BF4に配置され、そして16ビットの変数タイプを有する。図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージが変数1に関して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、52ビットが要求される(ボックス202参照)。同様に、図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージが変数2に関して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、60ビットが要求される(ボックス202参照)。
しかしながら、この例200においては、デバッグ・メッセージの中のビットの多くは、外部開発システム25に対して有効な情報を与えず、従って端末装置18上の重要な帯域幅を空費している。ボックス204を参照すると、いずれの重要な情報を失うこと無しに端末装置18上に送信されるビットの数を著しく低減することが可能である。ボックス204においては、データ・ビットの全てが、有効な情報を含み、従って全くマスキングされない。ボックス204においては、ビットA31のみが、変数1に関するアドレス位置と変数2に関するアドレス位置とを区別するため要求される。従って、A31は、外部開発システム25により要求されるアドレス・フィールド42(図3を参照)の中の唯一のアドレス・ビットである。データ・フィールドの幅が既に外部開発システム25により変数タイプから知られているので、データ・サイズ・フィールド53(図3を参照)からのビットは、外部開発システム25により要求されない。例200においては、唯1つのソース・プロセッサがあり、その結果、ソース・プロセッサ・フィールド44(図3を参照)からのビットは、外部開発システム25により要求されない。例200においては、メッセージ・タイプ・フィールド45(図3を参照)により与えられる唯一の有効な情報は、エラーが生じたか否かを指示する個々のビットである。その結果、メッセージ・タイプ・フィールド45からの唯一のビットが、外部開発システム25により要求される。
変数デバッグ・メッセージの52ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じるマスキングされたメッセージは、著しく少ないビット、ほんの10ビットを有することになる。従って、52ビットを端末装置18に送信しなければならない代わりに、10ビットのみを送信すればよい。これは、外部開発システム25に対する変数1について必要な情報を与える各追跡又はデバッグ・メッセージに関して反復されることができる帯域幅の著しい節約である。同様に、変数2の60ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じるマスキングされたメッセージは、著しく少ないビット、ほんの18ビットを有することになる。従って、60ビットを端末装置18に送信しなければならない代わりに、18ビットのみを送信すればよい。これは、外部開発システム25に対する変数2について必要な情報を与える各追跡又はデバッグ・メッセージに関して反復されることができる帯域幅の著しい節約である。
ボックス206は、マスキングを与えて変数1に関するデバッグ・メッセージから不必要なビット(52ビットがマスキングされてない)を、そして変数2に関するデバッグ・メッセージから不必要なビット(60ビットがマスキングされてない)を取り除くため、マスク・レジスタ150(図13を参照)、マスク・レジスタ140(図12を参照)、及びマスク・レジスタ120(図10参照)に格納される値を示す。データの全てが外部開発システム25により要求されるので、データ・マスク・レジスタ70、80、90及び100をこの例200で用いてなく、従ってマスキングが、データ・フィールド41(図3を参照)について実行されないことに注目されたい。
例200、300及び400で示される本発明の実施形態について、マスク・レジスタ・ビットの中のバイナリ1は、デバッグ・メッセージの対応のビットをマスキングして、それを端末装置18上に送らないようにし、そしてマスク・レジスタ・ビットの中のバイナリ0は、デバッグ・メッセージの対応のビットをマスキングしないで、従ってそれを端末装置18上に送信することを可能にさせる。例200については、メッセージ・タイプ・マスク制御レジスタ150は、%111110を格納し、ソース・マスク制御レジスタ130は、%1111を格納し、データ・サイズ・マスク制御レジスタ140は、%111を格納し、そしてアドレス・(フル)マスク制御レジスタ120は、%11111111111111111111111111111110を格納する。
例300
図15は、マスキングを用いて、端末装置18上に送信される出力ビットの数(即ち、帯域幅)を低減する仕方を記載する。図15は、メモリの中の混合型の単精度及び倍精度の浮動小数点制御変数のアレイが、プログラムの流れを追跡する間にモニタリングされる例300を示す。外部開発システム25が、制御変数が当該変数のデータ・タイプによりサポートされた大きさのほぼ12.5%(即ち、1/8)を超えたときを決定するためモニタリングしている。図15の中のボックス301を参照すると、アレイ1は、アドレス0x1300D300−0x1300D3FFに配置され、そしてランダムにアクセスすることができる16個の倍精度変数及び32個の単精度変数から成る。図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージがアレイ1の中の倍精度変数に対して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、85ビットが要求される(ボックス302を参照)。同様に、図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージがアレイ1の中の単精度変数に対して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、53ビットが要求される(ボックス302を参照)。
しかしながら、この例300においては、デバッグ・メッセージの中のビットの多くは、有効な情報を外部開発システム25に与えてなく、従って端末装置18上の重要な帯域幅を空費している。ボックス304を参照すると、いずれの重要な情報を失うこと無しに、端末装置18上に送信されるビットの数を著しく低減することが可能である。ボックス304においては、データ・フィールド41(図3を参照)のほんの3ビットが、オーバーレンジの状況(指数部の上位3ビット)を決定するための有効な情報を含み、従ってマスキングされてない。ボックス304においては、アドレス・フィールド42(図3を参照)の8ビットが、アレイ1の中のどの変数がこのデバッグ・メッセージに対応するかを識別するため要求される。データ・サイズ・フィールド43(図3を参照)の中の1ビットが、変数が単精度か倍精度かを決定するため要求される。例300においては、唯1つのソース・プロセッサが存在し、その結果、ソース・プロセッサ・フィールド44(図3を参照)からのビットが、外部開発システム25により要求されない。例300においては、メッセージ・タイプ・フィールド45(図3を参照)により与えられる唯一の有効な情報は、エラーが生じたか否かを指示する個々のビットである。その結果、メッセージ・タイプ・フィールド45からの唯1つのビットが、外部開発システム25により要求される。
倍精度アレイ1のデバッグ・メッセージの85ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じたマスキングされたメッセージは、著しく少ないビット、即ちほんの13ビットを有することになる。従って、85ビットを端末装置18に送信しなければならない代わりに、ほんの13ビットを送信すればよい。これは、倍精度アレイ1変数についての必要な情報を外部開発システム25に与える各追跡又はデバッグ・メッセージに関して反復することができる帯域幅の著しい節約である。同様に、単精度アレイ1のデバッグ・メッセージの53ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じるマスキングされたメッセージは、著しく少ないビット、即ちほんの13ビットを有することになる。従って、53ビットを端末装置18に送信しなければならない代わりに、ほんの13ビットを送信すればよい。これは、単精度アレイ1変数についての必要な情報を外部開発システム25に与える各追跡又はデバッグ・メッセージに関して反復することができる帯域幅の著しい節約である。
ボックス306は、マスキングを与えて、倍精度アレイ1変数に対するデバッグ・メッセージ(85ビットがマスキングされてない)及び単精度アレイ1変数に対するデバッグ・メッセージ(53ビットがマスキングされてない)から不必要なビットを取り除くため、マスク・レジスタ150(図13を参照)、マスク・レジスタ130(図11を参照)、マスク・レジスタ140(図12を参照)、マスク・レジスタ110(図9を参照)、マスク・レジスタ70(図5を参照)、及びマスク・レジスタ80(図6を参照)に格納される値を示す。
例200、300及び400に示された本発明の実施形態については、マスク・レジスタ・ビットの中のバイナリ1は、デバッグ・メッセージの対応のビットをマスキングしている状態にして、端末装置18上に送信させず、そしてマスク・レジスタ・ビットのバイナリの中の0は、デバッグ・メッセージの対応のビットをマスキングしてない状態にし、従って端末装置18上に送信することを可能にさせることに注目されたい。例300については、メッセージ・タイプ・マスク制御レジスタ150は、%111110を格納し、ソース・マスク制御レジスタ110は、%1111を格納し、データ・サイズ・マスク制御レジスタ140は、%110を格納し、アドレス(相対)マスク制御レジスタ110は、%11111111111111111111111000000000を格納し、データ・マスク制御レジスタ70は、%1000111111111111111111111111111111111111111111111111111111111111を格納し、データ・マスク制御レジスタ80は、%10001111111111111111111111111111を格納する。
例400
図16は、マスキングを用いて、端末装置18上に送信される出力ビットの数(即ち、帯域幅)を低減する仕方の例400を記載する。図16は、メモリの中の混合型の単精度及び倍精度の浮動小数点制御変数のアレイが、プログラムの流れを追跡する間にモニタリングされる例400を示す。外部開発システム25は、有界の制御変数の近似値をモニタリングしている。図16の中のボックス401を参照すると、アレイ1は、アドレス0x1300D300−0x1300D3FFに配置され、そしてランダムにアクセスすることができる16個の倍精度変数及び32個の単精度変数から成る。図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージがアレイ1の中の倍精度変数に対して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、85ビットが要求される(ボックス402を参照)。同様に、図3及び図4に示されるデータ・メッセージ・フォーマット(書き込みに対して40、読み出しに対して50)を用いたデバッグ・メッセージがアレイ1の中の単精度変数に対して用いられる場合、開発インターフェース14から外部開発システム25へ送られるため、53ビットが要求される(ボックス402を参照)。
しかしながら、この例400においては、デバッグ・メッセージの中のビットの多くは、有効な情報を外部開発システム25に与えてなく、従って端末装置18上の重要な帯域幅を空費している。ボックス404を参照すると、いずれの重要な情報を失うこと無しに、端末装置18上に送信されるビットの数を著しく低減することが可能である。ボックス404においては、データ・フィールド41(図3を参照)の選択されたビットのみが、有効な情報(即ち、符号ビット、単精度指数部の下位5ビット、倍精度指数部の中位5ビット、及び仮数部の最上位ビットの一部分)を含み、従ってマスキングされてない。ボックス404においては、アドレス・フィールド42(図3を参照)の8ビットが、アレイ1の中のどの変数がこのデバッグ・メッセージに対応するかを識別するため要求される。
データ・サイズ・フィールド43(図3を参照)の中の1ビットが、変数が単精度か倍精度かを決定するため要求される。例400においては、唯1つのソース・プロセッサが存在し、その結果、ソース・プロセッサ・フィールド44(図3を参照)からのビットは、外部開発システム25により要求されない。例400においては、メッセージ・タイプ・フィールド45(図3を参照)により与えられる唯一の有効な情報は、エラーが生じたか否かを指示する個々のビットである。その結果、メッセージ・タイプ・フィールド45からの唯1つのビットが、外部開発システム25により要求される。
倍精度アレイ1のデバッグ・メッセージの85ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じたマスキングされたメッセージは、著しく少ないビット、即ちほんの20ビットを有する。従って、85ビットを端末装置18に送信しなければならない代わりに、ほんの20ビットを送信すればよいことになる。これは、倍精度アレイ1変数についての必要な情報を外部開発システム25に与える各追跡又はデバッグ・メッセージに関して反復することができる帯域幅の著しい節約である。同様に、単精度アレイ1のデバッグ・メッセージの53ビットが図5から図13に示される関連のレジスタを用いてマスキングされて、不必要なビットを取り除く場合、その結果生じるマスキングされたメッセージは、著しく少ないビット、即ちほんの20ビットを有する。従って、53ビットを端末装置18に送信しなければならない代わりに、ほんの20ビットを送信すればよいことになる。これは、単精度アレイ1変数についての必要な情報を外部開発システム25に与える各追跡又はデバッグ・メッセージに関して反復することができる帯域幅の著しい節約である。
ボックス406は、マスキングを与えて、倍精度アレイ1変数に対するデバッグ・メッセージ(85ビットがマスキングされてない。)及び単精度アレイ1変数に対するデバッグ・メッセージ(53ビットがマスキングされてない。)から不必要なビットを取り除くため、マスク・レジスタ150(図13を参照)、マスク・レジスタ130(図11を参照)、マスク・レジスタ140(図12を参照)、マスク・レジスタ110(図9を参照)、マスク・レジスタ70(図5を参照)、及びマスク・レジスタ80(図6を参照)に格納される値を示す。
例200、300及び400に示された本発明の実施形態については、マスク・レジスタ・ビットの中のバイナリ1が、デバッグ・メッセージの対応のビットをマスキングさせて、端末装置18上に送信させず、そしてマスク・レジスタ・ビットの中のバイナリ0が、デバッグ・メッセージの対応のビットをマスキングさせず、従って端末装置18上へ送信することを可能にさせることに注目されたい。例400については、メッセージ・タイプ・マスク制御レジスタ150は、%111110を格納し、ソース・マスク制御レジスタ110は、%1111を格納し、データ・サイズ・マスク制御レジスタ140は、%110を格納し、アドレス(相対)マスク制御レジスタ110は、%11111111111111111111111000000000を格納し、データ・マスク制御レジスタ70は、%01110000011100001111111111111111111111111111111111111111を格納し、データ・マスク制御レジスタ80は、%011100001111111111111111を格納する。
図14から図16に示された例200、300及び400は、例示の目的のみに与えられていることに留意されたい。本発明は、いずれの所望の機能に対して用いられ得る。開発インターフェース及びデバッグ機能は、本発明が適用可能である分野の単なる一つである。本発明の様々な実施形態が、マスキング能力を希望するいずれの状況で有効であり得る。
前述の詳細な説明においては、本発明が、特定の実施形態を参照して説明された。しかしながら、当業者は、添付の特許請求の範囲に記載された本発明の範囲から逸脱することなしに様々な変更及び変化を行うことができることを認めるであろう。従って、本明細書及び図面は、限定的意味ではなく例示と考えるべきであり、そしてそのような変更は、本発明の範囲内に含まれることを意図するものである。
便益、他の利点、及び問題に対する解法が、特定の実施形態について上記で説明された。しかしながら、便益、他の利点、問題に対する解法、及びいずれの便益、利点、又はより顕著に生じる又はそうなる解法を生じ得るいずれの構成要素は、特許請求の範囲のいずれか又はその全ての重要な、又は必要な、或いは本質的な特徴又は構成要素と解釈されるべきである。本明細書で用いられるように、用語「備える」、「含む」、又はそれらのいずれの他の変形の用語は、非排他的包含をカバーすることを意図し、それにより一覧の構成要素を備えるプロセス、方法、物品、又は装置は、それらの構成要素のみを含むのではなく、明示的にリストされてない、又はそのようなプロセス、方法、物品又は装置に本来的でない他の構成要素を含んでよい。
図1は、本発明の一実施形態に従ったデータ処理システムをブロック図の形式で示す。 図2は、本発明の一実施形態に従った図1の開発インターフェースの一部をブロック図の形式で示す。 図3は、本発明の一実施形態に従ったデータ書き込みメッセージ・フォーマットをブロック図の形式で示す。 図4は、本発明の一実施形態に従ったデータ読み出しメッセージ・フォーマットをブロック図の形式で示す。 図5は、本発明の一実施形態に従ったデータ・マスク制御レジスタ70をブロック図の形式で示す。 図6は、本発明の一実施形態に従ったデータ・マスク制御レジスタ80をブロック図の形式で示す。 図7は、本発明の一実施形態に従ったデータ・マスク制御レジスタ90をブロック図の形式で示す。 図8は、本発明の一実施形態に従ったデータ・マスク制御レジスタ100をブロック図の形式で示す。 図9は、本発明の一実施形態に従ったアドレス・マスク制御レジスタ110をブロック図の形式で示す。 図10は、本発明の一実施形態に従ったアドレス・マスク制御レジスタ120をブロック図の形式で示す。 図11は、本発明の一実施形態に従ったソース・マスク制御レジスタをブロック図の形式で示す。 図12は、本発明の一実施形態に従ったデータ・サイズ・マスク制御レジスタをブロック図の形式で示す。 図13は、本発明の一実施形態に従ったメッセージ・タイプ・マスク制御レジスタをブロック図の形式で示す。 図14は、端末装置18上に送信される出力ビットの数を低減するため用い得るマスキングの仕方の一例200を表形式で示す。 図15は、端末装置18上に送信される出力ビットの数を低減するため用い得るマスキングの仕方の一例300を表形式で示す。 図16は、端末装置18上に送信される出力ビットの数を低減するため用い得るマスキングの仕方の一例400を表形式で示す。

Claims (45)

  1. デバッグ・メッセージをマスキングする方法であって、
    デバッグ・メッセージを発生するステップと、
    少なくとも1つのユーザが構成可能なマスクを前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生するステップと
    を備える方法。
  2. 前記デバッグ・メッセージが、複数のフィールドを備える請求項1記載の方法。
  3. 前記少なくとも1つのユーザが構成可能なマスクを前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生する前記ステップが、前記少なくとも1つのユーザが構成可能なマスクを適用して、前記複数のフィールドのうちの少なくとも1つをマスキングするステップを備える請求項2記載の方法。
  4. 前記少なくとも1つのユーザが構成可能なマスクを前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生する前記ステップが、前記少なくとも1つのユーザが構成可能なマスクを適用して、前記複数のフィールドのうちの少なくとも1つのフィールドの一部をマスキングするステップを備え、
    前記少なくとも1つのフィールドの前記一部が、前記少なくとも1つのフィールドの全部より小さい
    請求項2記載の方法。
  5. 前記複数のフィールドが、データ・フィールド及びアドレス・フィールドを備える請求項4記載の方法。
  6. 前記複数のフィールドが、データ・サイズ・フィールド、ソース・フィールド及びメッセージ・タイプ・フィールドを備える請求項5記載の方法。
  7. 前記少なくとも1つのユーザが構成可能なマスクを複数のユーザが構成可能なマスクから選択するステップを更に備え、
    前記複数のユーザが構成可能なマスクのそれぞれが、前記デバッグ・メッセージ内の前記複数のフィールドのうちの1つのフィールドに対応する
    請求項2記載の方法。
  8. 少なくとも1つのユーザが構成可能なマスクを前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生する前記ステップが、前記少なくとも1つのユーザが構成可能なマスクを適用して、前記複数のフィールドのうちの少なくとも1つのフィールドの一部をマスキングするステップを備え、
    前記少なくとも1つのフィールドの前記一部が、前記少なくとも1つのフィールドの全部より小さい
    請求項7記載の方法。
  9. 前記複数のフィールドが、データ・フィールド、アドレス・フィールド、データ・サイズ・フィールド、ソース・フィールド及びメッセージ・タイプ・フィールドを備える請求項8記載の方法。
  10. 前記デバッグ・メッセージが、データ・フィールドを備え、
    前記少なくとも1つのユーザが構成可能なマスクが、前記データ・フィールドに対応する複数のユーザが構成可能なマスクから選択され、
    前記少なくとも1つのユーザが構成可能なマスクが、前記データ・フィールドのデータ・タイプに基づいて選択される
    請求項1記載の方法。
  11. 前記データ・タイプが、前記データ・フィールド内のデータのサイズを指示する請求項10記載の方法。
  12. 前記デバッグ・メッセージが、アドレス・フィールドを備え、
    前記少なくとも1つのユーザが構成可能なマスクが、前記アドレス・フィールドに対応する複数のユーザが構成可能なマスクから選択され、
    前記少なくとも1つのユーザが構成可能なマスクが、フル・アドレス又は相対アドレスのいずれが転送されるかに基づいて選択される
    請求項1記載の方法。
  13. デバッグ機能を実行し、当該デバッグ機能に対応するデバッグ・メッセージを発生するデバッグ回路と、
    ユーザが構成可能なマスキング情報を格納するマスク記憶回路と、
    前記マスク記憶回路に結合されたマスキング回路であって、前記ユーザが構成可能なマスキング情報を前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生するマスキング回路と
    を備える装置。
  14. 前記デバッグ回路に結合されたソース回路を更に備え、
    前記デバッグ回路が、前記デバッグ機能を前記ソース回路の少なくとも一部について実行する
    請求項13記載の装置。
  15. 前記ソース回路が、プロセッサを備える請求項14記載の装置。
  16. 前記ユーザが構成可能なマスキング情報が、複数のユーザが構成可能なマスクとして格納される請求項13記載の装置。
  17. 前記マスキング回路が、前記複数のユーザが構成可能なマスクのうちの少なくとも1つを選択して、前記デバッグ・メッセージを適用して、前記のマスキングされたデバッグ・メッセージを発生する請求項16記載の装置。
  18. 前記複数のユーザが構成可能なマスクのそれぞれが、前記マスク記憶回路内のユーザが構成可能なレジスタに格納される請求項16記載の装置。
  19. 前記デバッグ・メッセージが、複数のフィールドを備え、
    前記マスキング回路が、前記マスキング情報を適用して、前記複数のフィールドのうちの少なくとも1つのフィールドの一部をマスキングし、
    前記少なくとも1つのフィールドの前記一部が、前記少なくとも1つのフィールドの全部より小さい
    請求項13記載の装置。
  20. 前記複数のフィールドが、データ・フィールド、アドレス・フィールド、データ・サイズ・フィールド、ソース・フィールド及びメッセージ・タイプ・フィールドを備える請求項19記載の装置。
  21. 前記ユーザが構成可能なマスキング情報が、複数のユーザが構成可能なマスクとして格納され、
    前記ユーザが構成可能なマスクのそれぞれが、前記複数のフィールドの少なくとも1つに対応する
    請求項20記載の装置。
  22. 前記マスキング回路が、前記複数のユーザが構成可能なマスクのうちの少なくとも1つを選択して、前記デバッグ・メッセージの前記複数のフィールドのうちの少なくとも1つフィールドに適用して、前記のマスキングされたデバッグ・メッセージを発生する請求項21記載の装置。
  23. 前記ユーザが構成可能なマスクのうちの少なくとも2つが、前記データ・フィールドに対応し、
    前記マスキング回路が、前記ユーザが構成可能なマスクのうちの前記少なくとも2つのうちの1つを、前記データ・フィールド内のデータのデータ・タイプに基づいて選択する
    請求項21記載の装置。
  24. 前記マスキング回路が、前記のマスキングされたデバッグ・メッセージをデバッグ端末装置を介して与える請求項13記載の装置。
  25. 前記デバッグ回路及び前記マスキング回路に結合されたデバッグ・メッセージ記憶回路であって、前記の発生されたデバッグ・メッセージを格納するデバッグ・メッセージ記憶回路を更に備える請求項13記載の装置。
  26. 前記マスキング回路に結合されたデバッグ・メッセージ記憶回路であって、前記の発生されたマスキングされたデバッグ・メッセージを格納するデバッグ・メッセージ記憶回路を更に備える請求項13記載の装置。
  27. 前記デバッグ・メッセージ記憶回路が、前記のマスキングされたデバッグ・メッセージをデバッグ端末装置を介して与える請求項26記載の装置。
  28. デバッグ・メッセージを発生するデバッグ手段と、
    少なくとも1つのユーザが構成可能なマスクを前記デバッグ・メッセージに適用して、マスキングされたデバッグ・メッセージを発生するマスキング手段と
    を備える装置。
  29. 前記デバッグ・メッセージが、複数のフィールドを備える請求項28記載の装置。
  30. 前記マスキング手段が、前記少なくとも1つのユーザが構成可能なマスクを適用して、前記複数のフィールドのうちの少なくとも1つフィールドの一部をマスキングし、
    前記少なくとも1つフィールドの前記一部が、前記少なくとも1つのフィールドの全部より小さい
    請求項29記載の装置。
  31. 前記複数のフィールドが、データ・フィールド及びアドレス・フィールドを備える請求項30記載の装置。
  32. 前記複数のフィールドが、データ・サイズ・フィールド、ソース・フィールド及びメッセージ・タイプ・フィールドを備える請求項31記載の装置。
  33. 前記少なくとも1つのユーザが構成可能なマスクを複数のユーザが構成可能なマスクから選択する選択手段を更に備え、
    前記複数のユーザが構成可能なマスクのそれぞれが、前記デバッグ・メッセージ内の前記複数のフィールドのうちの1つのフィールドに対応する
    請求項29記載の装置。
  34. 前記マスキング手段が、前記少なくとも1つのユーザが構成可能なマスクを適用して、前記複数のフィールドのうちの少なくとも1つフィールドの一部をマスキングし、
    前記少なくとも1つフィールドの前記一部が、前記少なくとも1つフィールドの全部より小さい
    請求項33記載の装置。
  35. 前記複数のフィールドが、データ・フィールド、アドレス・フィールド、データ・サイズ・フィールド、ソース・フィールド及びメッセージ・タイプ・フィールドを備える請求項34記載の装置。
  36. マスキングする方法であって、
    複数のマスクを設けるステップと、
    前記複数のマスクのうちの1つマスクを、転送されるべきデータのデータ・タイプに基づいて選択するステップと、
    前記複数のマスクのうちの前記の選択された1つのマスクを前記転送されるべきデータに適用して、転送されるべきマスキングされたデータを発生するステップと
    を備える方法。
  37. 前記データ・タイプが、前記転送されるべきデータのサイズを指示する請求項36記載の方法。
  38. 前記転送されるべきデータが、デバッグ・メッセージ内の1つのフィールドである請求項36記載の方法。
  39. 前記複数のマスクのうちの前記の選択された1つのマスクを前記転送されるべきデータに適用した後では、前記転送されるべきデータは、マスキングされたデバッグ・メッセージ内の1つのフィールドである請求項38記載の方法。
  40. 前記の転送されるべきマスキングされたデータが、前記転送されるべきデータより小さい請求項36記載の方法。
  41. 複数のマスクを格納するマスク記憶回路と、
    転送されるべきデータを格納するデータ記憶回路と、
    前記マスク記憶回路及びデータ記憶回路に結合されたマスキング回路であって、前記複数のマスクのうちの1つを、前記転送されるべきデータのデータ・タイプに基づいて選択し、前記複数のマスクのうちの前記の選択された1つのマスクを前記転送されるべきデータに適用するマスキング回路と
    を備える装置。
  42. 前記データ・タイプが、前記転送されるべきデータのサイズを指示する請求項41記載の装置。
  43. 前記マスキング回路が、前記複数のマスクのうちの前記の選択された1つのマスクを前記転送されるべきデータに適用して、転送されるべきマスキングされたデータを発生し、前記の転送されるべきマスキングされたデータを端末装置を介して与える請求項41記載の装置。
  44. 前記転送されるべきデータが、デバッグ回路によりデバッグ機能に応答して発生される請求項41記載の装置。
  45. 前記複数のマスクのそれぞれが、前記転送されるべきデータに対応し、
    前記転送されるべきデータが、前記デバッグ回路により発生されたデバッグ・メッセージのフィールドとして与えられる請求項44記載の装置。
JP2007510746A 2004-04-30 2005-04-06 開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキング Pending JP2007535760A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/836,173 US7434108B2 (en) 2004-04-30 2004-04-30 Masking within a data processing system having applicability for a development interface
PCT/US2005/011277 WO2005111800A2 (en) 2004-04-30 2005-04-06 Masking within a data processing system having applicability for a development interface

Publications (2)

Publication Number Publication Date
JP2007535760A true JP2007535760A (ja) 2007-12-06
JP2007535760A5 JP2007535760A5 (ja) 2008-05-22

Family

ID=35310740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007510746A Pending JP2007535760A (ja) 2004-04-30 2005-04-06 開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキング

Country Status (7)

Country Link
US (1) US7434108B2 (ja)
EP (1) EP1756716A4 (ja)
JP (1) JP2007535760A (ja)
KR (1) KR101050554B1 (ja)
CN (1) CN100568187C (ja)
TW (1) TWI374357B (ja)
WO (1) WO2005111800A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010505195A (ja) * 2006-09-28 2010-02-18 フリースケール セミコンダクター インコーポレイテッド キャッシュ・メモリ・デバッグ・サポートを有するデータ処理システムおよびそのための方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9020854B2 (en) 2004-03-08 2015-04-28 Proxense, Llc Linked account system using personal digital key (PDK-LAS)
US8433919B2 (en) 2005-11-30 2013-04-30 Proxense, Llc Two-level authentication for secure transactions
US8036152B2 (en) 2006-01-06 2011-10-11 Proxense, Llc Integrated power management of a client device via system time slot assignment
US11206664B2 (en) 2006-01-06 2021-12-21 Proxense, Llc Wireless network synchronization of cells and client devices on a network
US8086904B2 (en) * 2006-07-28 2011-12-27 Apple Inc. Event-based setting of process tracing scope
US8116179B2 (en) * 2006-07-28 2012-02-14 Apple Inc. Simultaneous viewing of multiple tool execution results
US9269221B2 (en) 2006-11-13 2016-02-23 John J. Gobbi Configuration of interfaces for a location detection system and application
WO2009062194A1 (en) 2007-11-09 2009-05-14 Proxense, Llc Proximity-sensor supporting multiple application services
US8171528B1 (en) 2007-12-06 2012-05-01 Proxense, Llc Hybrid device having a personal digital key and receiver-decoder circuit and methods of use
WO2009079666A1 (en) 2007-12-19 2009-06-25 Proxense, Llc Security system and method for controlling access to computing resources
US8508336B2 (en) 2008-02-14 2013-08-13 Proxense, Llc Proximity-based healthcare management system with automatic access to private information
US11120449B2 (en) 2008-04-08 2021-09-14 Proxense, Llc Automated service-based order processing
US7958401B2 (en) * 2008-07-25 2011-06-07 Freescale Semiconductor, Inc. Debug trace messaging with one or more characteristic indicators
US8024620B2 (en) * 2008-07-25 2011-09-20 Freescale Semiconductor, Inc. Dynamic address-type selection control in a data processing system
US8402258B2 (en) 2008-07-25 2013-03-19 Freescale Semiconductor, Inc. Debug message generation using a selected address type
US7984206B2 (en) * 2008-08-06 2011-07-19 Texas Instruments Incorporated System for debugging throughput deficiency in an architecture using on-chip throughput computations
US20100042975A1 (en) * 2008-08-13 2010-02-18 Honeywell International Inc. Message logging for software applications
US8589738B2 (en) * 2009-05-05 2013-11-19 Freescale Semiconductor, Inc. Program trace message generation for page crossing events for debug
US8438547B2 (en) * 2009-05-05 2013-05-07 Freescale Semiconductor, Inc. Address translation trace message generation for debug
US9418205B2 (en) 2010-03-15 2016-08-16 Proxense, Llc Proximity-based system for automatic application or data access and item tracking
US8918854B1 (en) 2010-07-15 2014-12-23 Proxense, Llc Proximity-based system for automatic application initialization
US9265450B1 (en) 2011-02-21 2016-02-23 Proxense, Llc Proximity-based system for object tracking and automatic application initialization
WO2014183106A2 (en) 2013-05-10 2014-11-13 Proxense, Llc Secure element as a digital pocket
US9552279B2 (en) * 2013-08-16 2017-01-24 Nxp Usa, Inc. Data bus network interface module and method therefor
GB2520724A (en) * 2013-11-29 2015-06-03 St Microelectronics Res & Dev Debug circuitry
CN115934449B (zh) * 2023-02-08 2023-06-02 合肥智芯半导体有限公司 一种寄存器的校验方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112783A (ja) * 1998-09-30 2000-04-21 Nec Corp プログラム検査方法、プログラム検査装置及びプログラム検査プログラムを記憶した記憶媒体
JP2003271416A (ja) * 2002-03-12 2003-09-26 Seiko Epson Corp 情報処理装置及び電子機器
JP2003280941A (ja) * 2002-03-26 2003-10-03 Toshiba Corp トレースデータ圧縮装置、トレースデータ圧縮方法及びトレースデータ圧縮回路を内蔵したマイクロコンピュータ

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4598364A (en) * 1983-06-29 1986-07-01 International Business Machines Corporation Efficient trace method adaptable to multiprocessors
US5513317A (en) * 1992-09-10 1996-04-30 International Business Machines Corporation System and method for permitting rapid refinement of data output from a debugger
US5826058A (en) * 1995-06-02 1998-10-20 Motorola, Inc. Method and apparatus for providing an external indication of internal cycles in a data processing system
US6513155B1 (en) * 1997-12-12 2003-01-28 International Business Machines Corporation Method and system for merging event-based data and sampled data into postprocessed trace output
US6145122A (en) 1998-04-27 2000-11-07 Motorola, Inc. Development interface for a data processor
US6611924B1 (en) * 1999-07-16 2003-08-26 Lucent Technologies Inc. Reducing code size of debug output statements
US6918065B1 (en) * 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6732311B1 (en) * 2000-05-04 2004-05-04 Agere Systems Inc. On-chip debugger
DE10132313A1 (de) * 2001-07-06 2003-01-23 Infineon Technologies Ag Programmgesteuerte Einheit
WO2003034225A2 (en) 2001-10-12 2003-04-24 Pts Corporation Debugging of processors
US6816989B2 (en) * 2001-12-28 2004-11-09 Hewlett-Packard Development Company, L.P. Method and apparatus for efficiently managing bandwidth of a debug data output port or buffer
GB2389432B (en) * 2002-06-07 2005-09-07 Advanced Risc Mach Ltd Instruction tracing in data processing systems
US7149926B2 (en) * 2003-05-22 2006-12-12 Infineon Technologies Ag Configurable real-time trace port for embedded processors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112783A (ja) * 1998-09-30 2000-04-21 Nec Corp プログラム検査方法、プログラム検査装置及びプログラム検査プログラムを記憶した記憶媒体
JP2003271416A (ja) * 2002-03-12 2003-09-26 Seiko Epson Corp 情報処理装置及び電子機器
JP2003280941A (ja) * 2002-03-26 2003-10-03 Toshiba Corp トレースデータ圧縮装置、トレースデータ圧縮方法及びトレースデータ圧縮回路を内蔵したマイクロコンピュータ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010505195A (ja) * 2006-09-28 2010-02-18 フリースケール セミコンダクター インコーポレイテッド キャッシュ・メモリ・デバッグ・サポートを有するデータ処理システムおよびそのための方法

Also Published As

Publication number Publication date
US20050257102A1 (en) 2005-11-17
EP1756716A2 (en) 2007-02-28
CN100568187C (zh) 2009-12-09
WO2005111800A2 (en) 2005-11-24
TW200606630A (en) 2006-02-16
EP1756716A4 (en) 2010-08-04
CN101036125A (zh) 2007-09-12
TWI374357B (en) 2012-10-11
KR20070012845A (ko) 2007-01-29
WO2005111800A3 (en) 2007-04-26
US7434108B2 (en) 2008-10-07
KR101050554B1 (ko) 2011-07-19

Similar Documents

Publication Publication Date Title
JP2007535760A (ja) 開発インターフェースに対する適用性を有するデータ処理システム内におけるマスキング
JP4225851B2 (ja) データ処理装置用トレース要素生成システム
EP1723532B1 (en) Multiple burst protocol device controller
US8201025B2 (en) Debug messaging with selective timestamp control
US8825922B2 (en) Arrangement for processing trace data information, integrated circuits and a method for processing trace data information
US5862148A (en) Microcontroller with improved debug capability for internal memory
US20100095038A1 (en) Driver Transparent Message Signaled Interrupts
EP2324419B1 (en) Debug message generation using a selected address type
CN107636630B (zh) 中断控制器
US20130173837A1 (en) Methods and apparatus for implementing pci express lightweight notification protocols in a cpu/memory complex
US6484273B1 (en) Integrated EJTAG external bus interface
US6092219A (en) Method for use of bus parking states to communicate diagnostic information
US7783809B2 (en) Virtualization of pin functionality in a point-to-point interface
KR100288670B1 (ko) 데이터세그먼트처리방법및정보처리시스템
US8312331B2 (en) Memory testing with snoop capabilities in a data processing system
US6473814B1 (en) System for optimally tuning a burst length by setting a maximum burst length based on a latency timer value and adjusting the maximum burst length based on a cache line size
US7080191B2 (en) Method and system for accessing memory devices
WO2008024336A2 (en) Write data mask method and system
CN106940684B (zh) 一种按比特写数据的方法及装置
US20050081015A1 (en) Method and apparatus for adapting write instructions for an expansion bus
US20030200401A1 (en) Microcomputer system automatically backing-up data written in storage medium in transceiver, and transceiver connected thereto
JP2591514B2 (ja) 1チップメモリデバイス
US9442788B2 (en) Bus protocol checker, system on chip including the same, bus protocol checking method
CN116700795B (zh) 一种位操作控制系统及控制方法
US8862770B1 (en) Processor architecture verification

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080404

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080404

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110411

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110621

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110628

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111024

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120315