Systems and methods for using memory commands
AssigneeAltera Corporation
InventorsGordon Raymond Chiu, Teik Ming Goh, Muhamad Aidil Jazmi, Yu Ying Ong
Life of this patent
Estimating the term…
Abstract
Systems and methods for using memory commands are described. The systems include a memory controller. The memory controller receives a plurality of user transactions. The memory controller converts each user transaction into one or more row and column memory commands. The memory controller reorders the memory commands associated with the plurality of user transactions before sending the memory commands to a memory device.
Claims20
A memory controller comprising:
- an interface operable to receive user transactions;
- an interface for connecting to a memory device;
- and
- logic circuitry configured to
- assign a user transaction to a user transaction pool slot in a memory command pool;
- calculate row and column command dependencies of the user transaction by determining one or more row or column memory commands associated therewith;
- and
- generate at least one bit-vector associated with the row and column command dependencies, wherein each bit vector corresponds to one of said one or more row or column memory commands, wherein said each bit vector comprises dependency information relating to dependencies between the one of said one or more row or column memory commands, and other memory commands in the memory command pool.
A method comprising:
- assigning a user transaction to a user transaction pool slot in a memory command pool;
- calculating row and column command dependencies of the user transaction by determining one or more row or column memory commands associated therewith;
- and
- generating at least one bit-vector associated with the row and column command dependencies, wherein each bit vector corresponds to one of said one or more row or column memory commands, wherein said each bit vector comprises dependency information relating to dependencies between the one of said one or more row or column memory commands, and other memory commands in the memory command pool
A method for implementing dependency detection in a reordering memory controller, said method comprising:
- determining, at the reordering memory controller, dependencies of a plurality of memory commands;
- and
- generating two sets of bit vectors to identify the dependencies,
- wherein a first set of bit vectors represents dependencies of row commands of the plurality of memory commands, and a second set of bit vectors represents dependencies of column commands of the plurality of memory commands.
A computer-readable medium having instructions stored thereon that, if executed by a processor, cause the processor to perform operations comprising:
- assigning a user transaction to a user transaction pool slot in a memory command pool;
- calculating row and column command dependencies of the user transaction by determining one or more row and column memory commands associated therewith;
- and
- generating at least one or more bit-vectors associated with the row and column command dependencies, wherein each bit vector is associated with one of said one or more row and column memory commands, wherein said each bit vector comprises dependency information between the one of said one or more row or column memory commands and a plurality of other memory commands stored in the memory command pool.
Dependencies are inferred from the claim text.