IP Library › Granted Patent US 10,474,610
Granted Patent B1
US 10,474,610 · App. 15/676,530 · Granted Nov 12, 2019

Hardware trace and introspection for productivity platform using a system-on-chip

Inventors: Graham F. Schelle (Longmont, CO); Patrick Lysaght (Los Gatos, CA); Yun Qu (Campbell, CA); Parimal Patel (San Antonio, TX)
Assignee: XILINX, INC.
G06F13/4022G06F11/348G06F11/3466G06F11/364G06F13/28G06F15/7842
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 10,474,610
App. No.
15/676,530
Granted
Nov 12, 2019
Kind
B1
Abstract

An integrated circuit can include programmable circuitry configured to implement an overlay circuit specified by an overlay. The overlay circuit can include a trace buffer configured to receive a probed signal from circuitry within the overlay circuit. The trace buffer can be configured to generate trace data from the probed signal and store the trace data in a runtime allocated memory. The integrated circuit also can include a processor coupled to the programmable circuitry and configured to control operation of the trace buffer. The processor can be configured to read the trace data from the runtime allocated memory.

Claims (40)

1. An integrated circuit, comprising:

programmable circuitry configured to implement an overlay circuit specified by an overlay, wherein the overlay circuit includes a trace buffer configured to receive a probed signal from circuitry within the overlay circuit;

wherein the trace buffer is configured to generate trace data from the probed signal and store the trace data in a runtime allocated memory;

a processor coupled to the programmable circuitry and configured to control operation of the trace buffer, wherein the processor is configured to read the trace data from the runtime allocated memory; and

wherein the processor is configured to execute a software library for a high-productivity language for controlling capture of trace data from the circuitry within the overlay circuit and for analyzing the trace data from the runtime allocated memory.

2. The integrated circuit of claim 1 , wherein the trace buffer comprises:

a direct memory access circuit configured to write the trace data to the runtime allocated memory.

3. The integrated circuit of claim 2 , wherein the trace buffer comprises:

a first-in-first-out memory coupled to the direct memory access circuit, wherein the first-in-first out memory is configured to store the trace data, wherein the direct memory access circuit reads the trace data from the first-in-first-out memory for writing to the runtime allocated memory.

4. The integrated circuit of claim 3 , wherein the trace buffer comprises:

a trigger circuit configured to store data within the first-in-first-out memory.

5. The integrated circuit of claim 1 , wherein the trace buffer further comprises:

a switch coupled to a plurality of signals, wherein the switch is controllable by the processor to pass a selected signal of the plurality of signals as the probed signal.

6. The integrated circuit of claim 1 , wherein the processor, executing the software library, is configured to arm the trace buffer.

7. The integrated circuit of claim 1 , wherein the processor, executing the software library, is configured to control the trace buffer.

8. The integrated circuit of claim 1 , wherein the processor is configured to provide trace data to a data processing system via a browser-enabled interface.

9. The integrated circuit of claim 1 , wherein the processor is configured to generate a visualization of the trace data that is provided to a data processing system via a browser-enabled interface.

10. The integrated circuit of claim 1 , wherein the processor is configured to modify an application implemented within the programmable circuitry in response to detecting a condition in the trace data.

11. A method, comprising:

providing, within an integrated circuit, a programmable circuitry configured to implement an overlay circuit specified by an overlay, wherein the overlay circuit includes a trace buffer configured to receive a probed signal from circuitry within the overlay circuit;

wherein the trace buffer is configured to generate trace data from the probed signal and store the trace data in a runtime allocated memory;

providing, within the integrated circuit, a processor coupled to the programmable circuitry and configured to control operation of the trace buffer, wherein the processor is configured to read the trace data from the runtime allocated memory; and

wherein the processor is configured to execute a software library for a high-productivity language for controlling capture of trace data from the circuitry within the overlay circuit and for analyzing the trace data from the runtime allocated memory.

12. The method of claim 11 , further comprising:

providing a direct memory access circuit within the trace buffer configured to write the trace data to the runtime allocated memory.

13. The method of claim 12 , further comprising:

providing a first-in-first-out memory within the trace buffer, wherein the first-in-first out memory is coupled to the direct memory access circuit and is configured to store the trace data, wherein the direct memory access circuit reads the trace data from the first-in-first-out memory for writing to the runtime allocated memory.

14. The method of claim 13 , further comprising:

providing a trigger circuit within the trace buffer, wherein the trigger circuit is configured to store data within the first-in-first-out memory.

15. The method of claim 11 , further comprising:

providing a switch coupled to a plurality of signals, wherein the switch is controllable by the processor to pass a selected signal of the plurality of signals as the probed signal.

16. The method of claim 11 , wherein the processor, executing the software library, is configured to arm the trace buffer.

17. The method of claim 11 , wherein the processor, executing the software library, is configured to control the trace buffer.

18. The method of claim 11 , wherein the processor is configured to generate a visualization of the trace data that is provided to a data processing system via a browser-enabled interface.

19. An integrated circuit, comprising:

programmable circuitry configured to implement an overlay circuit specified by an overlay, wherein the overlay circuit includes a trace buffer configured to receive a probed signal from circuitry within the overlay circuit;

wherein the trace buffer is configured to generate trace data from the probed signal and store the trace data in a runtime allocated memory;

a processor coupled to the programmable circuitry and configured to control operation of the trace buffer, wherein the processor is configured to read the trace data from the runtime allocated memory; and

wherein the trace buffer comprises a direct memory access circuit configured to write the trace data to the runtime allocated memory.

20. The integrated circuit of claim 19 , wherein the processor is configured to execute a software library for a high-productivity language for controlling capture of trace data from the circuitry within the overlay circuit and for analyzing the trace data from the runtime allocated memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2017
From: SCHELLE, GRAHAM F.; LYSAGHT, PATRICK; QU, YUN; PATEL, PARIMAL
To: XILINX, INC.
Reel/Frame 043286/0658 →
Cited By (11)
US 12,204,940 US 12,259,833 US 12,298,887 US 12,314,735 US 12,332,801 US 12,386,723 US 12,411,780 US 12,411,785 US 12,455,805 US 12,596,626 US 12,717,737