IP Library Granted Patent US 7,134,116
Granted Patent B1
US 7,134,116 · App. 09/844,668 · Granted Nov 7, 2006

External trace synchronization via periodic sampling

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,134,116
App. No.
09/844,668
Granted
Nov 7, 2006
Kind
B1
Abstract

A system and method for program counter and data tracing is disclosed. The tracing mechanism of the present invention enables increased visibility into the hardware and software state of the processor core.

Claims (28)

1. A tracing system, comprising:

a multi-tasking embedded processor, said multi-tasking embedded processor including,

a processor core for executing instructions; and

trace generation logic that is operative to periodically generate trace synchronization information, wherein said trace synchronization information is periodically generated in accordance with specified information;

wherein said specified information includes fields to specify an instruction set architecture, an operating mode of said embedded processor, a current process being executed by said multi-tasking embedded processor, and load and store address information, wherein said operating mode is selected from a kernel mode, a supervisor mode, a user mode and a debug mode.

2. The tracing system of claim 1 , wherein said specified information enables multiple instances of said periodically generated trace synchronization information to be stored at one time in a trace memory.

3. The tracing system of claim 2 , wherein said multi-tasking embedded processor includes said trace memory.

4. The tracing system of claim 2 , wherein said multi-tasking embedded processor further includes a trace capture block that receives trace data from said trace generation logic.

5. The tracing system of claim 4 , wherein said trace capture block sends trace data to an off-chip trace memory.

6. The tracing system of claim 4 , wherein said trace capture block sends trace data to an on-chip trace memory.

7. A tracing method, comprising:

periodically generating trace synchronization information in accordance with specified information, said trace synchronization information including program counter information, instruction set architecture information and information that enables a determination of a characteristic of an operating state of a multi-tasking processor, wherein said operating state is selected from a kernel mode, a supervisor mode, a user mode and a debug mode; and

outputting said trace synchronization information to a trace memory.

8. The tracing method of claim 7 , wherein said characteristic identifies a current process being executed by said multi-tasking processor.

9. The tracing method of claim 8 , wherein said characteristic includes application space identity information.

10. The tracing method of claim 7 , wherein said periodically generated synchronization information includes load and store address information.

11. A physical computer program comprising:

computer-readable program code for causing a computer to describe an embedded multi-tasking processor, said embedded multi-tasking processor including a processor core for executing instructions, and trace generation logic that is operative to periodically generate trace synchronization information, wherein said trace synchronization information is periodically generated in accordance with specified information;

wherein said specified information includes fields to selectively generate software state information within said trace synchronization information, said software state information being selectable from an instruction set architecture, an operating mode of said multi-tasking embedded processor, a current process being executed by said multi-tasking embedded processor, and load and store address information, wherein said operating mode is selected from a kernel mode, a supervisor mode, a user mode and a debug mode; and

a computer-usable medium configured to store the computer-readable program codes.

12. A physical computer usable medium therefor comprising:

computer-readable program code for causing a computer to describe a multi-tasking embedded processor, said multi-tasking embedded processor including a processor core for executing instructions, and trace generation logic that is operative to periodically generate trace synchronization information, wherein said trace synchronization information is periodically generated in accordance with specified information;

wherein said specified information includes fields to selectively generate software state information within said trace synchronization information, said software state information being selectable from an instruction set architecture, an operating mode of said embedded processor, a current process being executed by said multi-tasking embedded processor, and load and store address information, wherein said operating mode is selected from a kernel mode, a supervisor mode, a user mode and a debug mode.

13. A method for enabling a computer to generate a tracing system, comprising:

transmitting computer-readable program code to a computer, said computer-readable program code including:

computer-readable program code for causing a computer to describe a multi-tasking embedded processor, said multi-tasking embedded processor including a processor core for executing instructions, and trace generation logic that is operative to periodically generate trace synchronization information, wherein said trace synchronization information is periodically generated in accordance with specified information;

wherein said specified information includes fields to selectively generate software state information within said trace synchronization information, said software state information being selectable from an instruction set architecture, an operating mode of said multi-tasking embedded processor, a current process being executed by said multi-tasking embedded processor, and load and store address information, wherein said operating mode is selected from a kernel mode, a supervisor mode, a user mode and a debug mode.

14. The method of claim 13 , wherein computer-readable program code is transmitted to said computer over the Internet.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2014
From: BRIDGE CROSSING, LLC
To: ARM FINANCE OVERSEAS LIMITED
Reel/Frame 033074/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2013
From: MIPS TECHNOLOGIES, INC.
To: BRIDGE CROSSING, LLC
Reel/Frame 030202/0440 →