IP Library Granted Patent US 8,578,216
Granted Patent B2
US 8,578,216 · App. 12/721,667 · Granted Nov 5, 2013

Execution history tracing method

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 8,578,216
App. No.
12/721,667
Granted
Nov 5, 2013
Kind
B2
Abstract

An execution history tracing method includes tracing an execution history of a CPU upon executing, in a semiconductor device including the CPU, a program by using the CPU, for one or a tracing target, from outside the semiconductor device via software. The execution history tracing method includes recording, in a buffer, target information as trace information about an execution of the one or the tracing target, for each instruction cycle in which the target information is produced as the execution history; and performing data sorting by using the software to group the trace information about the execution of the one or the tracing target, the trace information being recorded for the each instruction execution cycle, for each of the one or the tracing target.

Claims (11)

1. An execution history tracing method of tracing an execution history of a CPU upon executing, in a semiconductor device including the CPU, a program by using the CPU, for a tracing target, from outside the semiconductor device via software, the execution history tracing method comprising:

recording, in a buffer, target information as trace information about an execution of one or more tracing target, for each instruction execution cycle in which the target information is produced as the execution history; and

performing data sorting by using the software to group the trace information about the execution of the one or more tracing target, the trace information being recorded for the each instruction execution cycle, for each of the one or more tracing target,

wherein in the recording, the trace information is recorded in the buffer having a bit width that allows for storing all the target information that is produced in the each instruction execution cycle using a trace frame format having a fixed bit width for the each instruction and is larger than a bit width of the CPU.

2. The execution history tracing method according to claim 1 , wherein a debugging circuit included in the semiconductor device records the trace information in the buffer, and the software executed on a computer coupled to the semiconductor device performs the data sorting.

3. The execution history tracing method according to claim 1 , wherein the one or more tracing target includes branch information representing a history of an instruction execution, and data access information representing a history of a data access execution, and the trace information recorded for the each instruction execution cycle in the buffer includes a bit for storing data representing a branch source, a bit for storing data representing a branch destination, a bit for storing data representing a branch factor, a bit representing an executing program counter value, a bit for storing data representing validity of a read data value, a bit for storing a read data ID, a bit for storing a read data value, a bit for storing data representing validity of a data access, a bit for storing data representing a read or write access, a bit for storing data representing an access size, a bit for storing an access address, a bit for storing write data, and a bit for storing a read access ID.

4. The execution history tracing method according to claim 1 , further comprising: specifying the one or more tracing target, and wherein, in the recording, the trace information is recorded in the buffer for the each instruction execution cycle in which the target information is produced.

5. An execution history tracing method for a semiconductor device including a CPU, the method comprising:

executing a program by using the CPU; and

tracing, from outside the semiconductor device via software, one or more tracing target included in an execution history upon executing the program, wherein for each instruction execution cycle in which target information is produced as the execution history, the target information is recorded as trace information about an execution of the one or more tracing target, in a buffer, and data sorting of the trace information is performed by the software so that data of the trace information is grouped for each of the one or more tracing target,

wherein in the recording, the trace information is recorded in the buffer using a bit width that allows for storing all the target information that is produced in the each instruction execution cycle using a trace frame format having a fixed bit width for the each instruction and is larger than a bit width of the CPU.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE 8647899 PREVIOUSLY RECORDED ON REEL 035240 FRAME 0429. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTERST. Recorded Nov 3, 2020
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058002/0470 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Oct 28, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MUFG UNION BANK, N.A.
Reel/Frame 050896/0366 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2019
From: CYPRESS SEMICONDUCTOR CORPORATION
To: MONTEREY RESEARCH, LLC
Reel/Frame 050829/0230 →
PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS Recorded Sep 26, 2019
From: MUFG UNION BANK, N.A., AS COLLATERAL AGENT
To: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
Reel/Frame 050500/0112 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2015
From: SPANSION, LLC
To: CYPRESS SEMICONDUCTOR CORPORATION
Reel/Frame 036052/0016 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2013
From: FUJITSU SEMICONDUCTOR LIMITED
To: SPANSION LLC
Reel/Frame 031205/0461 →