Processors, methods, systems, and instructions to generate sequences of integers in which integers in consecutive positions differ by a constant integer stride and where a smallest integer is offset from zero by an integer offset

US10732970B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10732970-B2
Application numberUS-201916271675-A
CountryUS
Kind codeB2
Filing dateFeb 8, 2019
Priority dateDec 22, 2011
Publication dateAug 4, 2020
Grant dateAug 4, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of an aspect includes receiving an instruction. The instruction indicates an integer stride, indicates an integer offset, and indicates a destination storage location. A result is stored in the destination storage location in response to the instruction. The result includes a sequence of at least four integers in numerical order with a smallest one of the at least four integers differing from zero by the integer offset and with all integers of the sequence in consecutive positions differing by the integer stride. Other methods, apparatus, systems, and instructions are disclosed.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a system memory; and a processor coupled to the system memory, the processor comprising: a plurality of vector registers, including a destination vector register; a plurality of general-purpose registers; a plurality of mask registers; a decoder to decode an instruction specifying an integer offset, specifying an integer stride, and having a field specifying the destination vector register, wherein the instruction has one of an immediate specifying the integer offset and a field specifying a source register specifying the integer offset, wherein the instruction has one of an immediate specifying the integer stride and a field specifying a source register specifying the integer stride; and an execution unit coupled to the decoder and coupled to the plurality of vector registers, the execution unit to execute the instruction to generate and store a result in the destination vector register, the result including a sequence of at least eight integer indexes in numerical order, in which a least significant integer index of the sequence is equal to the integer offset, and in which all integer indexes of the sequence in consecutive positions differ by the integer stride. 2. The system of claim 1 , wherein the instruction has the immediate specifying the integer offset, and the instruction has the field specifying the source register specifying the integer stride. 3. The system of claim 1 , wherein the instruction has the immediate specifying the integer stride, and the instruction has the field specifying the source register specifying the integer offset. 4. The system of claim 1 , wherein the instruction has one or more immediates specifying the integer offset and the integer stride. 5. The system of claim 1 , wherein the instruction has one or more fields specifying one or more source registers specifying the integer offset and the integer stride. 6. The system of claim 1 , wherein the result is to include the sequence of at least thirty-two integer indexes in the numerical order. 7. The system of claim 1 , wherein the destination vector register comprises 512-bits. 8. The system of claim 1 , wherein the processor further comprises: a level 1 cache; and a level 2 cache. 9. The system of claim 1 , wherein the decoder and the execution unit are included in an out-of-order core, and wherein the out-of-order core comprises a reorder buffer (ROB). 10. The system of claim 1 , wherein the processor is a reduced instruction set computing (RISC) processor. 11. The system of claim 1 , further comprising a mass storage device coupled to the processor. 12. The system of claim 1 , further comprising a disk drive coupled to the processor. 13. The system of claim 1 , further comprising an I/O device coupled to the processor. 14. The system of claim 1 , further comprising a communication device coupled to the processor. 15. The system of claim 1 , further comprising a second processor coupled to the processor. 16. The system of claim 1 , further comprising a Peripheral Component Interconnect (PCI) Express bus coupled to the processor. 17. The system of claim 1 , further comprising audio I/O coupled to the processor. 18. The system of claim 1 , wherein the system memory comprises a dynamic random access memory (DRAM). 19. A system comprising: a system memory; a processor coupled to the system memory, wherein the processor is a reduced instruction set computing (RISC) processor, the processor comprising: a plurality of vector registers, including a destination vector register; a plurality of general-purpose registers; a plurality of mask registers; a decoder to decode an instruction specifying an integer offset, specifying an integer stride, and having a field specifying the destination vector register, wherein the instruction has an immediate specifying the integer offset, wherein the instruction has a field specifying a source register specifying the integer stride; and an execution unit coupled to the decoder and coupled to the plurality of vector registers, the execution unit to execute the instruction to generate and store a result in the destination vector register which has at least 512-bits, the result including a sequence of at least thirty-two integer indexes in numerical order, in which a least significant integer index of the sequence is equal to the integer offset, and in which all integer indexes of the sequence in consecutive positions differ by the integer stride, wherein the decoder and the execution unit are included in an out-of-order core, and wherein the out-of-order core further comprises a reorder buffer (ROB); a communication device coupled to the processor; and a Peripheral Component Interconnect (PCI) Express bus coupled to the processor. 20. A system comprising: a system memory; a processor coupled to the system memory, wherein the processor is a reduced instruction set computing (RISC) processor, the processor comprising: a plurality of vector registers, including a destination vector register; a plurality of general-purpose registers; a plurality of mask registers; a decoder to decode an instruction specifying an integer offset, specifying an integer stride, and having a field specifying the destination vector register, wherein the instruction has a field specifying a source register specifying the integer offset, wherein the instruction has an immediate specifying the integer stride; and an execution unit in an out-of-order portion of the processor that is coupled to the decoder and coupled to the plurality of vector registers, the execution unit to execute the instruction to generate and store a result in the destination vector register which has at least 512-bits, the result including a sequence of at least thirty-two integer indexes in numerical order, in which a least significant integer index of the sequence is equal to the integer offset, and in which all integer indexes of the sequence in consecutive positions differ by the integer stride; a communication device coupled to the processor; and a Peripheral Component Interconnect (PCI) Express bus coupled to the processor. 21. A method comprising: accessing data in a system memory; storing data in a plurality of vector registers of a processor; storing data in a plurality of general-purpose registers of the processor; storing data in a plurality of mask registers of the processor; decoding an instruction specifying an integer offset, specifying an integer stride, and having a field specifying the destination vector register, wherein the instruction has one of an immediate specifying the integer offset and a field specifying a source register specifying the integer offset, wherein the instruction has one of an immediate specifying the integer stride and a field specifying a source register specifying the integer stride; executing the instruction including generating and storing a result in a destination vector register of the plurality of vector registers, the result including a sequence of at least eight integer indexes in numerical order, in which a least significant integer index of the sequence is equal to the integer offset, and in which all integer indexes of the sequence in consecutive positions differ by the integer stride; storing data in a mass storage device; and accessing an I/O device.

Assignees

Inventors

Classifications

  • using a mask · CPC title

  • Instructions to perform operations on packed data, e.g. vector, tile or matrix operations · CPC title

  • G06F9/3001Primary

    Arithmetic instructions · CPC title

  • with implied specifier, e.g. top of stack · CPC title

  • Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10732970B2 cover?
A method of an aspect includes receiving an instruction. The instruction indicates an integer stride, indicates an integer offset, and indicates a destination storage location. A result is stored in the destination storage location in response to the instruction. The result includes a sequence of at least four integers in numerical order with a smallest one of the at least four integers differi…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/3001. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 04 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).