Back to results
US 10,310,868 B2Granted
Instruction and logic for programmable fabric heirarchy and cache
AssigneeIntel Corporation
InventorLeo A. Linsky
Life of this patent
Estimating the term…
Abstract
A processor includes a core within a package and layers of programmable fabric within the same package as the core. The core includes logic to execute an instruction by loading a configuration file to one of the layers of programmable fabric. The configuration is to program an identified execution functionality. The execution functionality is to execute at least part of the instruction.
Claims20
A processor, comprising:
- a core within a package;
- a first layer of programmable fabric within the same package as the core, wherein the first layer of programmable fabric comprises a first set of programmable arrays;
- a second layer of programmable fabric within the same package as the core, wherein the second layer of programmable fabric comprises a second set of programmable arrays;
- a first cache associated with the first layer of programmable fabric;
- and
- a second cache associated with the second layer of programmable fabric,
- wherein the core is to cause an instruction to be executed by:
- selecting the first layer of programmable fabric for use in execution of the instruction, based at least in part on a distance from the first layer of programmable fabric to the core relative to a distance from the second layer of programmable fabric to the core;
- loading a configuration file to the first cache based on selecting the first layer of programmable fabric, wherein the configuration file is to program at least a portion of the first set of programmable arrays with a particular execution functionality, and the execution functionality is to execute at least part of the instruction.
6 more elements
A method comprising, within a processor:
- decoding an instruction;
- determining from decoding results that at least a portion of the instruction is to be executed by programmable fabric within the same package as a core, wherein the programmable fabric comprises a plurality of programmable fabric layers, and each of the plurality of programmable fabric layers comprises one or more respective field programmable arrays;
- selecting a particular one of the plurality of programmable fabric layers to be used to execute the instruction based on distance of the programmable fabric layer to the core relative to distances of other programmable fabric layers in the plurality of programmable fabric layers to the core;
- loading a configuration file to a cache associated with the particular programmable fabric layer based on the selecting, wherein the configuration file is to program one or more of the field programmable arrays of the particular programmable fabric layer with a particular execution functionality;
- and
- performing the particular execution functionality at the particular programmable fabric layer to execute at least part of the instruction.
3 more elements
A system comprising:
- a package comprising:
- a core;
- a first layer of programmable fabric within the same package as the core, wherein the first layer of programmable fabric comprises a first set of programmable arrays;
- a second layer of programmable fabric within the same package as the core, wherein the second layer of programmable fabric comprises a second set of programmable arrays;
- a first cache associated with the first layer of programmable fabric;
- and
- a second cache associated with the second layer of programmable fabric,
- wherein the core is to cause an instruction to be executed by:
- selecting the first layer of programmable fabric for use in execution of the instruction, based at least in part on a distance from the first layer of programmable fabric to the core relative to a distance from the second layer of programmable fabric to the core;
- loading a configuration file to the first cache based on selecting the first layer of programmable fabric, wherein the configuration file is to program at least a portion of the first set of programmable arrays with a particular execution functionality, and the execution functionality is to execute at least part of the instruction.
7 more elements
Dependencies are inferred from the claim text.