JP4608276B2 - トレース制御回路、マイクロプロセッサ及びトレース制御方法 - Google Patents
トレース制御回路、マイクロプロセッサ及びトレース制御方法 Download PDFInfo
- Publication number
- JP4608276B2 JP4608276B2 JP2004291078A JP2004291078A JP4608276B2 JP 4608276 B2 JP4608276 B2 JP 4608276B2 JP 2004291078 A JP2004291078 A JP 2004291078A JP 2004291078 A JP2004291078 A JP 2004291078A JP 4608276 B2 JP4608276 B2 JP 4608276B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- load
- trace control
- microprocessor
- data
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 11
- 239000000872 buffer Substances 0.000 claims description 130
- 230000015654 memory Effects 0.000 claims description 49
- 230000004044 response Effects 0.000 claims 4
- 238000013507 mapping Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 description 17
- 230000000903 blocking effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Advance Control (AREA)
Description
本実施の形態にかかるマイクロプロセッサ10及びトレース制御回路15の構成を図1に示す。本実施の形態にかかるマイクロプロセッサ10は、ノンブロッキングアクセス及びリオーダリングアクセスを行うプロセッサであり、ロード/ストアバッファ104が備える各バッファを識別可能なロード/ストアバッファIDを出力する出力端子109及び111を備えている。また、マイクロプロセッサ10は、ロード/ストア命令実行時にデータアクセス情報を格納したバッファのロード/ストアバッファIDをデータアクセス情報とともに出力する。さらに、ロード命令の場合にはデータアクセスサイクルが完了した後、リードデータ情報と合わせてデータアクセスに使用したロード/ストアバッファのロード/ストアバッファIDを出力する。一方、トレース制御回路15は、マイクロプロセッサ10から受信するロード/ストアバッファIDとトレース制御バッファ153が備える各バッファとが一対一に対応付けられていることを特徴としている。
本実施の形態にかかるマイクロプロセッサ及びトレース制御回路の構成を図2に示す。本実施の形態にかかるマイクロプロセッサは実施の形態1で説明したマイクロプロセッサ10と同様であるため、説明を省略する。トレース制御回路25は、トレース制御バッファ253にロード/ストアバッファIDを保持することを特徴としている。入力選択部252は、受信したAIDとトレース制御情報TCを、トレース制御バッファ253が備えるバッファのうち未使用状態にあるいずれかのバッファに格納する。一方、出力選択部254は、受信したRIDと一致するAIDと共に格納されているトレース制御情報を選択してライトバック情報検出部156に出力する。その他の構成及び動作は発明の実施の形態1と同様である。
102 メモリアクセス制御部
15、25 トレース制御回路
151 データアクセス情報検出部
152、252 入力選択部
153、253 トレース制御バッファ
154、254 出力選択部
156 ライトバック情報検出部
160、161 トレース情報
Claims (7)
- マイクロプロセッサのトレースを行うトレース制御回路であって、
前記マイクロプロセッサでのロード命令の実行開始に応じて、前記マイクロプロセッサが有する複数のロードバッファのうち前記ロード命令の実行時に前記ロード命令の属性を示すデータアクセス情報が格納されるロードバッファを示す第1の識別情報を前記データアクセス情報と関連付けて前記マイクロプロセッサから受信する第1の手段と、ここで、前記複数のロードバッファの各々は、データアクセス情報及びリードデータを格納可能であり、前記データアクセス情報は、前記ロード命令に基づいてアクセスされるメモリのアクセスアドレス、R/W種別、及びデータサイズを含む、
前記データアクセス情報に基づいて生成され、前記ロード命令の実行により前記メモリから読み出されるリードデータ、及び前記複数のロードバッファのうちで当該リードデータの格納に使用されるロードバッファを示す第2の識別情報を解析装置に対して出力するか否かを示すトレース制御情報を保持する第2の手段と、
前記マイクロプロセッサでの前記ロード命令の実行完了に応じて、前記ロード命令の実行により前記メモリから読み出された前記リードデータ、及び前記第2の識別情報を、前記マイクロプロセッサから受信する第3の手段と、
前記第1の識別情報及び前記第2の識別情報に基づいて、前記トレース制御情報と前記リードデータを対応付ける第4の手段と、
を備えるトレース制御回路。 - 前記第2の手段は、
前記トレース制御情報を格納する複数のトレース制御バッファと、
前記第1の識別情報の値に応じて、前記複数のトレース制御バッファから前記トレース制御情報を格納する1のバッファを選択する第5の手段と、
を備え、
前記第4の手段は、前記第2の識別情報の値に応じて、前記複数のトレース制御バッファから前記トレース制御情報が格納されたバッファを選択することによって、前記トレース制御情報と前記リードデータとの対応付けを行う、
請求項1に記載のトレース制御回路。 - 前記複数のロードバッファの各々と前記複数のトレース制御バッファの各々とが一対一に対応づけられ、
前記第5の手段は、前記第1の識別情報に基づいて前記複数のトレース制御バッファのうちの1つを一意的に選択することを特徴とする請求項2に記載のトレース制御回路。 - 前記データアクセス情報と前記第1の識別情報を対応付けて出力し、
前記リードデータと前記第2の識別情報を対応付けて出力する請求項1又は2に記載のトレース制御回路。 - 複数のロードバッファを備え、
ロード命令の実行開始に応じて、前記複数のロードバッファのうち前記ロード命令の実行時に前記ロード命令の属性を示すデータアクセス情報が格納されるロードバッファを示す第1の識別情報を前記データアクセス情報と関連付けて出力できるよう構成され、ここで、前記複数のロードバッファの各々は、データアクセス情報及びリードデータを格納可能であり、前記データアクセス情報は、前記ロード命令に基づいてアクセスされるメモリのアクセスアドレス、R/W種別、及びデータサイズを含む、
ロード命令実行開始時のトレース情報としての前記データアクセス情報とロード命令実行完了時のトレース情報としてのロード命令の実行により前記メモリから読み出されたリードデータとの対応付けを可能とするため、前記ロード命令の実行完了に応じて、前記複数のロードバッファのうちで前記リードデータの格納に使用されたロードバッファを示す第2の識別情報、及び前記リードデータを出力できるよう構成れているマイクロプロセッサ。 - マイクロプロセッサが出力するデータを収集するトレースの制御方法であって、
前記マイクロプロセッサにおけるロード命令の実行開始に応じて、前記マイクロプロセッサが有する複数のロードバッファのうち前記ロード命令の実行時に前記ロード命令の属性を示すデータアクセス情報が格納されるロードバッファを示す第1の識別情報を前記データアクセス情報と関連付けて前記マイクロプロセッサから受信し、ここで、前記複数のロードバッファの各々は、データアクセス情報及びリードデータを格納可能であり、前記データアクセス情報は、前記ロード命令に基づいてアクセスされるメモリのアクセスアドレス、R/W種別、及びデータサイズを含む、
受信した前記データアクセス情報に基づいて、前記ロード命令の実行により前記メモリから読み出されるリードデータ、及び前記複数のロードバッファのうちで当該リードデータの格納に使用されるロードバッファを示す第2の識別情報を解析装置に対して出力するか否かを示すトレース制御情報を生成し、
前記マイクロプロセッサにおけるロード命令の実行完了に応じて、前記ロード命令の実行により前記メモリから読み出された前記リードデータ、及び前記第2の識別情報を前記マイクロプロセッサから受信し、
前記第1の識別情報と前記第2の識別情報に基づいて、前記トレース制御情報と前記リードデータとの対応付けを行うトレース制御方法。 - 受信した前記データアクセス情報と前記第1の識別情報を対応付けて出力し、
受信した前記リードデータと前記第2の識別情報を対応付けて出力する請求項6に記載のトレース制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004291078A JP4608276B2 (ja) | 2004-10-04 | 2004-10-04 | トレース制御回路、マイクロプロセッサ及びトレース制御方法 |
US11/240,766 US7647532B2 (en) | 2004-10-04 | 2005-10-03 | Trace controller, microprocessor, and trace control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004291078A JP4608276B2 (ja) | 2004-10-04 | 2004-10-04 | トレース制御回路、マイクロプロセッサ及びトレース制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006107004A JP2006107004A (ja) | 2006-04-20 |
JP4608276B2 true JP4608276B2 (ja) | 2011-01-12 |
Family
ID=36182214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004291078A Expired - Fee Related JP4608276B2 (ja) | 2004-10-04 | 2004-10-04 | トレース制御回路、マイクロプロセッサ及びトレース制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7647532B2 (ja) |
JP (1) | JP4608276B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8127118B2 (en) * | 2008-02-25 | 2012-02-28 | International Business Machines Corporation | Microarchitecture, method and computer program product for efficient data gathering from a set of trace arrays |
JP5637145B2 (ja) | 2009-11-26 | 2014-12-10 | 日本電気株式会社 | バスモニタ回路及びバスモニタ方法 |
CN102595466A (zh) | 2011-01-10 | 2012-07-18 | 华为技术有限公司 | 最小化路测测量方法、装置和系统 |
US8799719B2 (en) * | 2011-05-19 | 2014-08-05 | International Business Machines Corporation | On demand tracing of application code execution |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000215081A (ja) * | 1999-01-27 | 2000-08-04 | Nec Corp | トレ―ス情報採取機構 |
JP2002244881A (ja) * | 2001-02-01 | 2002-08-30 | Arm Ltd | 順序外データのトレーシング |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06161818A (ja) | 1992-10-14 | 1994-06-10 | Nec Corp | 一次キャッシュメモリ内蔵マイクロプロセッサの命令トレース制御方式 |
US6023561A (en) * | 1995-06-01 | 2000-02-08 | Advanced Micro Devices, Inc. | System for processing traceable cache trace information |
JP3349911B2 (ja) | 1997-02-28 | 2002-11-25 | エヌイーシーマイクロシステム株式会社 | マイクロプロセッサ及びその開発支援装置 |
US6772324B2 (en) * | 1997-12-17 | 2004-08-03 | Intel Corporation | Processor having multiple program counters and trace buffers outside an execution pipeline |
JP3214613B2 (ja) | 1998-07-03 | 2001-10-02 | 日本電気株式会社 | マイクロプロセッサ及びデータ処理システム |
US6859891B2 (en) * | 1999-10-01 | 2005-02-22 | Stmicroelectronics Limited | Apparatus and method for shadowing processor information |
US6539500B1 (en) * | 1999-10-28 | 2003-03-25 | International Business Machines Corporation | System and method for tracing |
US6530076B1 (en) * | 1999-12-23 | 2003-03-04 | Bull Hn Information Systems Inc. | Data processing system processor dynamic selection of internal signal tracing |
US6985848B2 (en) * | 2000-03-02 | 2006-01-10 | Texas Instruments Incorporated | Obtaining and exporting on-chip data processor trace and timing information |
US7134116B1 (en) * | 2001-04-30 | 2006-11-07 | Mips Technologies, Inc. | External trace synchronization via periodic sampling |
US6834365B2 (en) * | 2001-07-17 | 2004-12-21 | International Business Machines Corporation | Integrated real-time data tracing with low pin count output |
US7197671B2 (en) * | 2002-06-07 | 2007-03-27 | Arm Limited | Generation of trace elements within a data processing apparatus |
-
2004
- 2004-10-04 JP JP2004291078A patent/JP4608276B2/ja not_active Expired - Fee Related
-
2005
- 2005-10-03 US US11/240,766 patent/US7647532B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000215081A (ja) * | 1999-01-27 | 2000-08-04 | Nec Corp | トレ―ス情報採取機構 |
JP2002244881A (ja) * | 2001-02-01 | 2002-08-30 | Arm Ltd | 順序外データのトレーシング |
Also Published As
Publication number | Publication date |
---|---|
US7647532B2 (en) | 2010-01-12 |
JP2006107004A (ja) | 2006-04-20 |
US20060085688A1 (en) | 2006-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4038372B2 (ja) | 順序外データのトレーシング | |
US20140075249A1 (en) | Execution History Tracing Method | |
CN107391400A (zh) | 一种支持复杂访存指令的内存扩展方法和系统 | |
JP2002163127A (ja) | トレース制御回路 | |
US7647532B2 (en) | Trace controller, microprocessor, and trace control method | |
US20100318707A1 (en) | External device access apparatus, control method thereof, and system lsi | |
CN112559403B (zh) | 一种处理器及其中的中断控制器 | |
US5475855A (en) | Pipelined computer with half machine cycle alternating write control for avoiding usage conflicts in general registers | |
JPH11110214A (ja) | 命令制御システム及びその方法 | |
JP2001005718A (ja) | プロトコルハンドラ及びその信号処理方法 | |
JPH09212360A (ja) | データ処理装置 | |
JP3456443B2 (ja) | 並列ソート装置及び該装置のプログラムを記録した記録媒体 | |
JPH06230963A (ja) | メモリアクセス制御装置 | |
JP2005165825A (ja) | トレース情報記録装置 | |
CN117762718B (zh) | 一种指令监测方法、装置、设备及存储介质 | |
JPH07114509A (ja) | メモリアクセス装置 | |
JPH03137736A (ja) | マイクロプロセッサ動作トレース方式 | |
US6711655B1 (en) | Finding available memory space by finding its associated memory transfer controller | |
JP2727947B2 (ja) | アドレストレース方式 | |
JPH08171505A (ja) | 半導体装置 | |
KR20060015917A (ko) | 복수개의 기능블럭을 제어하는 제어시스템 | |
JP2000057012A (ja) | トレース装置 | |
US7490226B2 (en) | Method using vector component comprising first and second bits to regulate movement of dependent instructions in a microprocessor | |
JP2967741B2 (ja) | Cpu互換性テスト装置 | |
JPH11184731A (ja) | 逐次命令実行によりアウトオブオーダ命令実行の動作を模擬するシミュレーション装置及びそのシミュレーション処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070914 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090904 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090908 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091106 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100302 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100427 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101005 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101008 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131015 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |