MEMORY ORDERING IN ACCELERATION HARDWARE
First Claim
1. An integrated circuit comprising:
- a memory interface coupled to a memory, the memory to store data corresponding to instructions being executed for a program;
an operations queue coupled to the memory interface, the operations queue to buffer memory operations corresponding to the instructions;
acceleration hardware to execute a sub-program corresponding to the instructions;
a set of input queues coupled to the acceleration hardware and to the memory interface, wherein the set of input queues are to receive, from the acceleration hardware;
an address, of the memory, associated with a second memory operation of the memory operations; and
a dependency token, associated with the address, that indicates a dependency on data generated by a first memory operation, of the memory operations, which precedes the second memory operation; and
a scheduler circuit coupled to the memory interface, the operations queue, and the set of input queues, wherein the scheduler circuit is to schedule issuance of the second memory operation to the memory in response to receipt, by the set of input queues, of the dependency token and the address.
1 Assignment
0 Petitions
Accused Products
Abstract
An integrated circuit includes a memory interface, coupled to a memory to store data corresponding to instructions, and an operations queue to buffer memory operations corresponding to the instructions. The integrated circuit may include acceleration hardware to execute a sub-program corresponding to the instructions. A set of input queues may include an address queue to receive, from the acceleration hardware, an address of the memory associated with a second memory operation of the memory operations, and a dependency queue to receive, from the acceleration hardware, a dependency token associated with the address. The dependency token indicates a dependency on data generated by a first memory operation of the memory operations. A scheduler circuit may schedule issuance of the second memory operation to the memory in response to the dependency queue receiving the dependency token and the address queue receiving the address.
-
Citations
24 Claims
-
1. An integrated circuit comprising:
-
a memory interface coupled to a memory, the memory to store data corresponding to instructions being executed for a program; an operations queue coupled to the memory interface, the operations queue to buffer memory operations corresponding to the instructions; acceleration hardware to execute a sub-program corresponding to the instructions; a set of input queues coupled to the acceleration hardware and to the memory interface, wherein the set of input queues are to receive, from the acceleration hardware; an address, of the memory, associated with a second memory operation of the memory operations; and a dependency token, associated with the address, that indicates a dependency on data generated by a first memory operation, of the memory operations, which precedes the second memory operation; and a scheduler circuit coupled to the memory interface, the operations queue, and the set of input queues, wherein the scheduler circuit is to schedule issuance of the second memory operation to the memory in response to receipt, by the set of input queues, of the dependency token and the address. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A memory ordering circuit comprising:
-
a memory interface coupled to a memory, the memory to store data corresponding to instructions being executed for a program; an operations queue coupled to the memory interface, the operations queue to buffer memory operations corresponding to the instructions; a set of input queues coupled to acceleration hardware, which is to execute a sub-program corresponding to the instructions, wherein the set of input queues is to receive, from the acceleration hardware; an address, of the memory, from which to retrieve data for a load operation of the memory operations; and a dependency token associated with the address, wherein the dependency token indicates a dependency on data stored by a store operation, of the memory operations, that precedes the load operation; and a scheduler circuit coupled to the memory interface, the operations queue, and the set of input queues, wherein the scheduler circuit is to schedule issuance of the load operation to the memory in response to receipt, by the set of input queues, of the dependency token and the address. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method comprising:
-
queuing memory operations in an operations queue of a memory ordering circuit, the memory operations to interact with a memory in association with acceleration hardware, wherein a processor requests the memory operations to the memory out of program order; receiving, in a set of input queues from the acceleration hardware, an address of the memory associated with a second memory operation of the memory operations; receiving, from the acceleration hardware, a dependency token associated with the address, wherein the dependency token indicates a dependency on data generated by a first memory operation, of the memory operations, which precedes the second memory operation; and scheduling, by the memory ordering circuit, issuance of the second memory operation to the memory in response to receiving the dependency token and the address associated with the dependency token. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification