Gathering and scattering multiple data elements
First Claim
Patent Images
1. A processor comprising:
- a decoder stage to decode a single instruction for accessing data elements at a plurality of non-register memory locations; and
at least one execution unit, coupled to the decode stage to receive the decoded instruction and responsive to the decoded instruction, to;
issue accesses to at least one of the plurality of memory locations;
detect when any exceptions occur due to the accesses to the at least of the plurality of non-register memory locations;
store accessed data elements that do not have exceptions; and
handle any pending interrupts upon completion of the single instruction.
0 Assignments
0 Petitions
Accused Products
Abstract
According to a first aspect, efficient data transfer operations can be achieved by: decoding by a processor device, a single instruction specifying a transfer operation for a plurality of data elements between a first storage location and a second storage location; issuing the single instruction for execution by an execution unit in the processor; detecting an occurrence of an exception during execution of the single instruction; and in response to the exception, delivering pending traps or interrupts to an exception handler prior to delivering the exception.
56 Citations
25 Claims
-
1. A processor comprising:
-
a decoder stage to decode a single instruction for accessing data elements at a plurality of non-register memory locations; and at least one execution unit, coupled to the decode stage to receive the decoded instruction and responsive to the decoded instruction, to; issue accesses to at least one of the plurality of memory locations; detect when any exceptions occur due to the accesses to the at least of the plurality of non-register memory locations; store accessed data elements that do not have exceptions; and handle any pending interrupts upon completion of the single instruction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A processor comprising:
-
a decoder stage to decode a single instruction for accessing data elements at a plurality of non-register memory locations; and at least one execution unit, coupled to the decoder to receive the decoded instruction and responsive to the decoded instruction, to; issue accesses to at least one of the plurality of memory locations; detect when any interrupts occur; record detected traps or interrupts as pending interrupts; detect when any exceptions occur due to the accesses to the at least of the plurality of memory locations; and handle any pending interrupts upon completion of the single instruction. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
decoding a single instruction for accessing data elements at a plurality of non-register memory locations; and receiving the decoded instruction in at least one execution unit and responsive to receiving the decoded instruction; issuing accesses to at least one of the plurality of memory locations; detecting when any faults or exceptions occur due to the accesses to the at least of the plurality of memory locations; storing accessed data elements that do not have exceptions; and handling any pending interrupts upon completion of the single instruction. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A system comprising:
-
a memory controller coupled to a plurality of memory locations; and a processor coupled to the memory controller, the processor comprising; a decoder stage to decode a single instruction for accessing data elements at the plurality of non-register memory locations; and at least one execution unit, coupled to the decoder to receive the decoded instruction and responsive to the decoded instruction, to; issue accesses to at least one of the plurality of memory locations; detect when any exceptions occur due to the accesses to the at least of the plurality of memory locations; store accessed data elements that do not have exceptions; and handle any pending interrupts upon completion of the single instruction. - View Dependent Claims (23, 24, 25)
-
Specification