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:
Mar. 02, 2021

Filed:

Feb. 02, 2016
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 15/78 (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 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/7867 (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 2212/452 (2013.01); G06F 2212/602 (2013.01); G06F 2212/604 (2013.01); G06F 2212/62 (2013.01); Y02D 10/00 (2018.01);
Abstract

Apparatus and methods are disclosed for controlling execution of memory access instructions in a block-based processor architecture using an instruction decoder that decodes instructions having variable numbers of target operands. In one example of the disclosed technology, a block-based processor core includes an instruction decoder configured to decode target operands for an instruction in an instruction block, the instruction being encoded to allow for a variable number of target operands and a control unit configured to send data for at least one of the decoded target operands for an operation performed by the at least one of the cores. In some examples, the instruction indicates target instructions with a vector encoding. In other examples, a variable length format allows for the indication of one or more targets.


Find Patent Forward Citations

Loading…