US5751942A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Trace event detection during trace enable transitions
Assignee: Intel Corp
•
Filing: 1996-05-09
•
Granted: 1998-05-12
•
Expires: 2016-05-09
Abstract
Abstract A method and apparatus for providing trace fault information to a trace fault handler. The trace fault information is evaluated prior to beginning execution of a micro code flow. The evaluated trace fault information is stored in a buffer and the micro code flow is executed. While the micro code flow is executing, if a micro code instruction of the micro code flow is executed that enables tracing, the trace fault information stored in the buffer is written to a data storage area. The data storage area is accessible to the trace fault handler.
Inventors
- 👤 Reed K. Christensen
- 👤 Robert W. Martell
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-02 17:09
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362; G06F11/3636
Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
129 words
A method for testing one of software and an electronic device, the method comprising the steps of: monitoring for an occurrence of a trace event during execution of macro code instructions prior to execution of a plurality of micro code instructions; determining whether or not tracing has been enabled; storing the trace information in a buffer inaccessible to a trace fault decision handler if tracing has been disabled and the trace event has occurred; executing the plurality of micro code instructions; and while the plurality of micro code instructions are executing, if one of the plurality of micro code instructions enabling tracing is executed, writing the trace information stored in the buffer to a data storage area, the data storage area being accessible to the trace fault decision handler.
Claim 2
Independent Claim
129 words
A method for testing one of software and an electronic device, the method comprising the steps of: monitoring for an occurrence of a trace event during execution of macro code instructions prior to execution of a plurality of micro code instructions; determining whether or not tracing has been enabled; storing the trace information in a buffer inaccessible to a trace fault decision handler if tracing has been disabled and the trace event has occurred; executing the plurality of micro code instructions; and while the plurality of micro code instructions are executing, if one of the plurality of micro code instructions enabling tracing is executed, writing the trace information stored in the buffer to a data storage area, the data storage area being accessible to the trace fault decision handler.
Claim 3
Dependent Claim
42 words
The method as set forth in claim 1, prior to the monitoring step, the method further comprising the step of: setting at least one mode bit of a control register in accordance with a type of instruction associated with the trace event.
Claim 4
Dependent Claim
54 words
The method as set forth in claim 1 further comprising the step of: while the plurality of micro code instructions are executing, if tracing is not enabled and a micro code instruction of the plurality of micro code instructions that changes the trace information is executed, updating the trace information stored in the buffer.
Claim 5
Dependent Claim
37 words
The method as set forth in claim 3 wherein the trace information that changed is updated in the buffer through the use of a read-modify-write operation so that trace information that did not change is not affected.
Claim 6
Independent Claim
171 words
An apparatus for providing trace information to a trace fault decision handler for testing one of software and hardware, the apparatus comprising: detection means for checking for an occurrence of a trace event during execution of macro code instructions prior to beginning execution of a plurality of micro code instructions; buffer means for temporarily storing the trace information for use if tracing is initially disabled, said buffer means being coupled to said detection means; execution means for executing said plurality of micro code instructions; data storage means for storing the trace information for use by the trace fault decision handler when tracing is enabled; and trace enable sensing means for writing the trace information stored in the buffer means to the data storage area if a first micro code instruction of the plurality of micro code instructions, which enables tracing after said detection means previously detected that tracing was disabled, is executed, said trace enable sensing means being coupled to said execution means, said buffer means and said data storage means.
Claim 7
Independent Claim
171 words
An apparatus for providing trace information to a trace fault decision handler for testing one of software and hardware, the apparatus comprising: detection means for checking for an occurrence of a trace event during execution of macro code instructions prior to beginning execution of a plurality of micro code instructions; buffer means for temporarily storing the trace information for use if tracing is initially disabled, said buffer means being coupled to said detection means; execution means for executing said plurality of micro code instructions; data storage means for storing the trace information for use by the trace fault decision handler when tracing is enabled; and trace enable sensing means for writing the trace information stored in the buffer means to the data storage area if a first micro code instruction of the plurality of micro code instructions, which enables tracing after said detection means previously detected that tracing was disabled, is executed, said trace enable sensing means being coupled to said execution means, said buffer means and said data storage means.
Claim 8
Dependent Claim
24 words
The apparatus as set forth in claim 5, wherein the trace event is associated with one of a branch, a call and a return.
Claim 9
Dependent Claim
61 words
The apparatus as set forth in claim 5 further comprising: updating means for updating the trace information stored in the buffer means if (i) tracing is not enabled and a second micro code instruction of the plurality of micro code instructions that changes the trace information is executed, said updating means being coupled to the detection means and the buffer means.
Claim 10
Dependent Claim
38 words
The apparatus as set forth in claim 7 wherein the trace information that changed is updated in the buffer means through the use of a read-modify-write operation so that trace information that did not change is not affected.
Claim 11
Independent Claim
168 words
An apparatus for providing trace information to a trace fault decision handler in order to test software or an electronic device, the apparatus comprising: a trace detection logic configured to monitor for an occurrence of a trace event during execution of macro code instructions prior to beginning execution of a plurality of micro code instructions; a buffer coupled to the trace detection logic, said buffer is inaccessible to the trace fault decision handler and temporarily contains the trace information when tracing is disabled; a core circuit configured to execute the plurality of micro code instructions; a data storage element to contain the trace information for use by the trace fault decision handler when tracing is enabled; and a trace enable sensor coupled to the core circuit, the buffer and the data storage element, to write the trace information stored in the buffer to the data storage element, if a micro code instruction of the plurality of micro code instructions that enables tracing when tracing is disabled is executed.
Claim 12
Independent Claim
168 words
An apparatus for providing trace information to a trace fault decision handler in order to test software or an electronic device, the apparatus comprising: a trace detection logic configured to monitor for an occurrence of a trace event during execution of macro code instructions prior to beginning execution of a plurality of micro code instructions; a buffer coupled to the trace detection logic, said buffer is inaccessible to the trace fault decision handler and temporarily contains the trace information when tracing is disabled; a core circuit configured to execute the plurality of micro code instructions; a data storage element to contain the trace information for use by the trace fault decision handler when tracing is enabled; and a trace enable sensor coupled to the core circuit, the buffer and the data storage element, to write the trace information stored in the buffer to the data storage element, if a micro code instruction of the plurality of micro code instructions that enables tracing when tracing is disabled is executed.
Claim 13
Independent Claim
240 words
A system for performing debugging operations, the system comprising: an external debugger; and a processor including execution means for executing a micro code flow, detection means for checking for an occurrence of a trace event during execution of macro code instructions by the processor prior to beginning execution of the micro code flow to determine whether or not tracing has been enabled, said detection means being coupled to said execution means, buffer means for containing the trace information if tracing is not enabled, said buffer means being coupled to said executing means and is inaccessible to said external debugger, trace fault decision means, for providing control of the execution means by the external debugger upon completion of execution of the micro code flow if tracing was enabled during execution of the micro code flow, said trace fault decision means being coupled to said execution means and said external debugger, data storage means for containing the trace information for use by the trace fault decision means when tracing is enabled, said data storage means being coupled to said trace fault decision means, and trace enable sensing means for writing the trace information stored in the buffer means to the data storage means if a micro code instruction of the micro code flow that enables tracing when tracing is not enabled is executed, said tracing enable sensing means being coupled to said execution means, said buffer means and said data storage means.
Claim 14
Independent Claim
240 words
A system for performing debugging operations, the system comprising: an external debugger; and a processor including execution means for executing a micro code flow, detection means for checking for an occurrence of a trace event during execution of macro code instructions by the processor prior to beginning execution of the micro code flow to determine whether or not tracing has been enabled, said detection means being coupled to said execution means, buffer means for containing the trace information if tracing is not enabled, said buffer means being coupled to said executing means and is inaccessible to said external debugger, trace fault decision means, for providing control of the execution means by the external debugger upon completion of execution of the micro code flow if tracing was enabled during execution of the micro code flow, said trace fault decision means being coupled to said execution means and said external debugger, data storage means for containing the trace information for use by the trace fault decision means when tracing is enabled, said data storage means being coupled to said trace fault decision means, and trace enable sensing means for writing the trace information stored in the buffer means to the data storage means if a micro code instruction of the micro code flow that enables tracing when tracing is not enabled is executed, said tracing enable sensing means being coupled to said execution means, said buffer means and said data storage means.
Claim 15
Dependent Claim
60 words
The system as set forth in claim 10, wherein said processor further comprises: updating means for updating the trace information stored in the buffer means if tracing is not enabled and a micro code instruction of the micro code flow that changes the trace information is executed, said updating means is coupled to the execution means and the buffer means.
Claim 16
Dependent Claim
38 words
The system as set forth in claim 11 wherein the trace information that changed is updated in the buffer means through the use of a read-modify-write operation so that trace information that did not change is not affected.
Claim 17
Dependent Claim
20 words
The system as set forth in claim 10 wherein the external debugger is a host system for performing in-circuit emulation.
Claim 18
Dependent Claim
22 words
The system as set forth in claim 10 wherein the external debugger is a trace fault handler code for performing software debugging.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-05-11 | 2001-11-10 | 2002-05-12 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-05-11 | 2005-11-10 | 2006-05-12 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-05-11 | 2009-11-10 | 2010-05-12 | $7700.00 | Window Closed / Lapsed |