IP Library › Granted Patent US 9,734,263
Granted Patent B2
US 9,734,263 · App. 13/721,790 · Granted Aug 15, 2017

Method and apparatus for efficient pre-silicon debug

Inventors: Erez Kohavi (Haifa, IL); Evgeniy Ainbinder (Haifa, IL)
Assignee: Intel Corporation
G06F17/50G06F17/5081
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 9,734,263
App. No.
13/721,790
Granted
Aug 15, 2017
Kind
B2
Abstract

Described is a method and apparatus for efficient pre-silicon validation of an integrated circuit. The method comprises: analyzing an architectural verification environment associated with a hardware description language (HDL) architecture of an integrated circuit, recognizing method calls associated with the architectural verification environment, and generating a list of recognized method calls that is loaded for a debug program to debug the HDL architecture of the integrated circuit.

Claims (90)

1. A method of designing an electronic circuit, comprising:

analyzing an architectural verification environment associated with a hardware description language (HDL) architecture of an integrated circuit;

recognizing method calls associated with the architectural verification environment, the method calls having been expressed at a program code level that is higher than a machine instruction level, the recognizing of the method calls including, for at least one method call of the method calls, recognizing each of the following in a single method call:

input parameters of the single method call;

result type of the single method call; and,

start time of the single method call; and

generating, by a computing device, a list of recognized method calls, the list being loaded for a debug program to debug the HDL architecture of the integrated circuit.

2. The method of claim 1 , wherein recognizing method calls comprises:

detecting structure and units declared in the architectural verification environment; and

identifying method calls in the detected structure.

3. The method of claim 2 , wherein recognizing the method calls further comprises:

identifying parameters, associated with the method calls, including at least one of:

name;

input parameters;

result type;

sampling event; and,

source code link.

4. The method of claim 3 , wherein recognizing method calls further comprises:

generating a file with identified parameters.

5. The method of claim 1 , further comprising providing a user an option to specify modules, structure, and method calls to be ignored.

6. The method of claim 1 , further comprising accepting a user command through a graphical user interface (GUI) to load a log file containing testing information for presentation to the user through the GUI.

7. The method of claim 6 , wherein the GUI provides at least one of:

a tree of started threads with information about executed thread and method call;

a visual flow of a test;

a visual flow of an executed thread;

information about multiple calls to a same method;

information about threads or method calls that never ended;

information about integrity checker methods which did not stop on reset resulting in false alarms;

a search pane to find any method or event which occurred during execution of the debug program; or

information about parameters of a method call made during execution of the debug program.

8. The method of claim 7 , wherein the information about parameters of a method call made during execution of the debug program include at least one of:

source reference of the method call;

direct link to start of a thread making the method call;

input parameters of the method call; or

result of the method that is called by the method call.

9. The method of claim 1 , wherein the integrated circuit is a microprocessor or part of a processor.

10. The method of claim 1 , wherein the HDL is one of:

Verilog;

VHDL;

Analog HDL (AHDL);

Verilog for Analog and Mixed Signal (Verilog-AMS); or

VHDL with Analog and Mixed Signal Extension (VHDL-AMS).

11. The method of claim 1 , further comprising recognizing event occurrences associated with the architectural verification environment.

12. A computer executable storage medium having computer executable instructions that, when executed, cause a processor to perform a method for designing an electronic circuit, comprising:

analyzing architectural verification environment associated with a hardware description language (HDL) architecture of an integrated circuit;

recognizing method calls associated with the architectural verification environment, the method calls having been expressed at a program code level that is higher than a machine instruction level, the recognizing of the method calls including, for at least one method call of the method calls, recognizing each of the following in a single method call:

input parameters of the single method call;

result type of the single method call; and,

start time of the single method call; and

generating by the processor a list of recognized method calls, the list being loaded for a debug program to debug the HDL architecture of the integrated circuit.

13. The computer executable storage medium of claim 12 , wherein recognizing method calls comprises:

detecting structure and units declared in the architectural verification environment; and

identifying method calls in the detected structure.

14. The computer executable storage medium of claim 13 , wherein recognizing method calls further comprises:

identifying parameters, associated with the method calls, including at least one of:

name;

input parameters;

result type;

sampling event; and,

source code link.

15. The computer executable storage medium of claim 14 , wherein recognizing method calls further comprises:

generating a file with identified parameters.

16. The computer executable storage medium of claim 12 , having further computer executable instructions that, when executed, cause the processor to perform a further method comprising:

providing a user an option to specify certain ones of the method calls to be ignored;

accepting a user command through a graphical user interface (GUI) to load a log file containing testing information for presentation to the user through the GUI; and

recognizing event occurrences associated with the architectural verification environment.

17. A computer system for designing an electronic circuit, comprising:

a processor;

a memory unit, the processor coupled to the memory unit, the memory unit having stored therein program code instructions that when executed by the processor cause the computer system to perform a method, the method comprising:

analyzing an architectural verification environment associated with a hardware description language (HDL) architecture of an integrated circuit;

recognizing method calls associated with the architectural verification environment, the method calls having been expressed at a program code level that is higher than a machine instruction level, the recognizing of the method calls including, for at least one method call of the method calls, recognizing each of the following in a single method call:

input parameters of the single method call;

result type of the single method call;

start time of the single method call; and

generating a list of recognized method calls, the list being loaded for a debug program to debug the HDL architecture of the integrated circuit; and

a display unit to display debug information, generated by the processor, in a graphical user interface (GUI).

18. The computer system of claim 17 , wherein the method further comprises:

providing a user an option to specify modules structure, and method calls to be ignored;

accepting a user command through the GUI to load a log file containing testing information for presentation to the user through the GUI; and

recognizing event occurrences associated with the architectural verification environment.

19. The computer system of claim 17 , wherein the method further comprises:

identifying parameters, associated with the method calls, including at least one of:

name;

input parameters;

result type;

sampling event; and,

source code link.

20. The computer system of claim 17 , wherein the recognizing of method calls further comprises:

detecting structure and units declared in the architectural verification environment; and

identifying method calls in the detected structure.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2026
From: INTEL CORPORATION
To: INTEL FOUNDRY IP LLC
Reel/Frame 076065/0923 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2013
From: KOHAVI, EREZ; AINBINDER, EVGENIY
To: INTEL CORPORATION
Reel/Frame 030180/0568 →
Continuity (1)
Related Publication 20140181767A1 · Jun 26, 2014