The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Sep. 15, 2020

Filed:

Nov. 16, 2015
Applicant:

Microsoft Technology Licensing, Llc, Redmond, WA (US);

Inventors:

Douglas C. Burger, Bellevue, WA (US);

Aaron L. Smith, Seattle, WA (US);

Assignee:
Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/30 (2018.01); G06F 9/38 (2018.01); G06F 9/46 (2006.01); G06F 9/52 (2006.01); G06F 11/36 (2006.01); G06F 9/26 (2006.01); G06F 9/32 (2018.01); G06F 9/345 (2018.01); G06F 9/35 (2018.01); G06F 12/0806 (2016.01); G06F 12/0862 (2016.01); G06F 12/1009 (2016.01); G06F 13/42 (2006.01); G06F 15/80 (2006.01); G06F 15/78 (2006.01); G06F 9/355 (2018.01); G06F 12/0811 (2016.01); G06F 12/0875 (2016.01);
U.S. Cl.
CPC ...
G06F 9/3016 (2013.01); G06F 9/268 (2013.01); G06F 9/3004 (2013.01); G06F 9/3005 (2013.01); G06F 9/30007 (2013.01); G06F 9/3009 (2013.01); G06F 9/30021 (2013.01); G06F 9/30036 (2013.01); G06F 9/30043 (2013.01); G06F 9/30047 (2013.01); G06F 9/30058 (2013.01); G06F 9/30072 (2013.01); G06F 9/30076 (2013.01); G06F 9/30087 (2013.01); G06F 9/30098 (2013.01); G06F 9/30101 (2013.01); G06F 9/30105 (2013.01); G06F 9/30138 (2013.01); G06F 9/30145 (2013.01); G06F 9/30167 (2013.01); G06F 9/30189 (2013.01); G06F 9/32 (2013.01); G06F 9/345 (2013.01); G06F 9/35 (2013.01); G06F 9/3802 (2013.01); G06F 9/383 (2013.01); G06F 9/3804 (2013.01); G06F 9/3822 (2013.01); G06F 9/3824 (2013.01); G06F 9/3828 (2013.01); G06F 9/3836 (2013.01); G06F 9/3838 (2013.01); G06F 9/3842 (2013.01); G06F 9/3848 (2013.01); G06F 9/3851 (2013.01); G06F 9/3853 (2013.01); G06F 9/3855 (2013.01); G06F 9/3859 (2013.01); G06F 9/3867 (2013.01); G06F 9/3891 (2013.01); G06F 9/466 (2013.01); G06F 9/528 (2013.01); G06F 11/36 (2013.01); G06F 11/3648 (2013.01); G06F 11/3656 (2013.01); G06F 12/0806 (2013.01); G06F 12/0862 (2013.01); G06F 12/1009 (2013.01); G06F 13/4221 (2013.01); G06F 15/80 (2013.01); G06F 15/8007 (2013.01); G06F 9/3013 (2013.01); G06F 9/321 (2013.01); G06F 9/355 (2013.01); G06F 9/3557 (2013.01); G06F 12/0811 (2013.01); G06F 12/0875 (2013.01); G06F 15/7867 (2013.01); G06F 2212/452 (2013.01); G06F 2212/602 (2013.01); G06F 2212/604 (2013.01); G06F 2212/62 (2013.01); Y02D 10/13 (2018.01); Y02D 10/14 (2018.01); Y02D 10/151 (2018.01);
Abstract

Systems and methods are disclosed for supporting debugging of programs in block-based processor architectures. In one example of the disclosed technology, a processor includes a block-based processor core for executing an instruction block comprising an instruction header and a plurality of instructions. The block-based processor core includes execution control logic and core state access logic. The execution control logic can be configured to schedule respective instructions of the plurality of instructions for execution in a dynamic order during a default execution mode and to schedule the respective instructions for execution in a static order during a debug mode. The core state access logic can be configured to read intermediate states of the block-based processor core and to provide the intermediate states outside of the block-based processor core during the debug mode.


Find Patent Forward Citations

Loading…