Device, method and system to determine a mode of processor operation based on page table metadata
US-2024111539-A1 · Apr 4, 2024 · US
US9990202B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9990202-B2 |
| Application number | US-201313931739-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 28, 2013 |
| Priority date | Jun 28, 2013 |
| Publication date | Jun 5, 2018 |
| Grant date | Jun 5, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A processor includes a first mode where the processor is not to use packed data operation masking, and a second mode where the processor is to use packed data operation masking. A decode unit to decode an unmasked packed data instruction for a given packed data operation in the first mode, and to decode a masked packed data instruction for a masked version of the given packed data operation in the second mode. The instructions have a same instruction length. The masked instruction has bit(s) to specify a mask. Execution unit(s) are coupled with the decode unit. The execution unit(s), in response to the decode unit decoding the unmasked instruction in the first mode, to perform the given packed data operation. The execution unit(s), in response to the decode unit decoding the masked instruction in the second mode, to perform the masked version of the given packed data operation.
Opening claim text (preview).
What is claimed is: 1. A processor comprising: a plurality of packed data registers; a first register, wherein the first register is one of a control register of the processor and a configuration register of the processor; a decode unit to decode an unmasked arithmetic packed data instruction for a given packed data operation in a first mode in which the processor is not to use packed data operation masking, and to decode a masked arithmetic packed data instruction for a masked version of the given packed data operation in a second mode in which the processor is to use packed data operation masking, wherein one or more bits in the first register of the processor are to indicate whether the processor is operating in the first mode or the second mode, the unmasked and masked arithmetic packed data instructions having a same instruction length, the masked arithmetic packed data instruction having one or more bits to specify a packed data operation mask which is to be stored in a register of the processor; and one or more execution units coupled with the decode unit, the one or more execution units, in response to the decode of the unmasked arithmetic packed data instruction in the first mode to perform the given packed data operation on at least one operand which is to be stored in a packed data register of the plurality of packed data registers, and the one or more execution units, in response to the decode of the masked arithmetic packed data instruction in the second mode to perform the masked version of the given packed data operation on at least one operand which is to be stored in a packed data register of the plurality of packed data registers using the specified packed data operation mask, wherein the unmasked and masked arithmetic packed data instructions are one of unmasked and masked packed multiply instructions and unmasked and masked packed add instructions. 2. The processor of claim 1 , wherein the instruction length is 32-bits. 3. The processor of claim 1 , wherein the processor comprises a reduced instruction set computing (RISC) processor. 4. The processor of claim 1 , wherein the one or more bits of the masked arithmetic packed data instruction are to specify a first packed data register of the plurality of packed data registers as a source storage location for the packed data operation mask, and wherein the first packed data register to be used to store the packed data operation mask is also capable of storing a plurality of packed data elements. 5. The processor of claim 4 , wherein the packed data operation mask is to comprise a single bit from each of a plurality of different data elements to be stored in the first packed data register. 6. The processor of claim 4 , wherein the first packed data register is to concurrently store the packed data operation mask and at least one other packed data operation mask. 7. The processor of claim 6 , wherein in a first view the first packed data register is to store a greater number of relatively smaller packed data operation masks and in a second view is to store a lesser number of relatively larger packed data operation masks. 8. The processor of claim 1 , further comprising a plurality of architectural packed data operation mask registers, and wherein the one or more bits of the masked arithmetic packed data instruction are to specify a packed data operation mask register of the plurality of architectural packed data operation mask registers as a source storage location for the packed data operation mask. 9. The processor of claim 1 , wherein the unmasked and masked arithmetic packed data instructions are unmasked and unmasked and masked packed add instructions, wherein the instruction length is 32-bits, wherein the first register is the control register, and wherein the processor comprises a reduced instruction set computing (RISC) processor. 10. The processor of claim 1 , wherein the given packed data operation and the masked version of the given packed data operation comprises a packed multiplication operation and a masked packed multiplication operation. 11. The processor of claim 1 , wherein, for the masked version of the given packed data operation, the processor is to suppress at least one of an exception and a violation for a masked off data element of a source packed data. 12. The processor of claim 1 , wherein the masked arithmetic packed data instruction has a field to specify whether zero masking or merge masking is to be used. 13. The processor of claim 1 , wherein, for the masked version of the given packed data operation, the execution unit is to zero a plurality of result data elements that each correspond to a different masked off mask element. 14. A method performed by a processor comprising: decoding an unmasked packed data add instruction for a packed data addition operation in a first mode in which the processor is not to use packed data operation masking; performing the packed data addition operation in response to decoding of the unmasked packed data add instruction in the first mode on first and second operands respectively accessed from a first packed data register and a second packed data register of a plurality of packed data registers of the processor; decoding a masked packed data add instruction for a masked version of the packed data addition operation in a second mode in which the processor is to use packed data operation masking, wherein one or more bits in a first register of the processor, which is one of a control register and a configuration register, indicate whether the processor is operating in the first mode or the second mode, the unmasked and masked packed data add instructions having a same instruction length, the masked packed data add instruction having one or more bits specifying a packed data operation mask which is stored in a third packed data register of the plurality of packed data registers, wherein the third packed data register has at least 128-bits, and wherein the third packed data register that stores the packed data operation mask is also capable of storing a packed data operand having a plurality of packed data elements; and performing the masked version of the packed data addition operation using the specified packed data operation mask accessed from the third packed data register in response to the decoding of the masked packed data add instruction in the second mode on a first source packed data and a second source packed data respectively received from a fourth packed data register and a fifth packed data register of the plurality of packed data registers; and suppressing at least one of an exception and a violation for a masked off data element of the first source packed data while performing the masked version of the packed data addition operation using the specified packed data operation mask but raising at least one of an exception and a violation for a non-masked off data element of the first source packed data while performing the masked version. 15. The method of claim 14 , wherein said decoding comprises decoding the unmasked and masked packed data add instructions that each have the instruction length of 32-bits. 16. The method of claim 14 , wherein said accessing the packed data operation mask comprises accessing a bit from each of a plurality of data elements of the third packed data register as the packed data operation mask. 17. The method of claim 14 , wherein said accessing the packed data operation mask comprises accessing the packed data operation mask from the third packed data register that also stores at least one other packed data operation ma
according to execution mode, e.g. mode flag · CPC title
using a mask · CPC title
Bit or string instructions · CPC title
Instructions to perform operations on packed data, e.g. vector, tile or matrix operations · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.