Memory management system and method
AssigneeNeo-Core, L.L.C.
InventorChristopher Lockton Brandin
Life of this patent
Estimating the term…
Abstract
The memory management system (20) includes a transform generator (22) capable of generating an address (28) and a confirmer (30) from a key. A controller (24) is connected to the transform generator (22) and sends the key to the transform generator (22) and receives the address (28) and the confirmer (30). A store (26) is connected to the controller (24) and has a plurality of addresses (28), each of the plurality of addresses (28) has a confirmer location (30), a forward pointer location (34), a primary flag (36), an allocated flag (38) and an association location (32).
Claims36
A method of operating a memory management system, comprising the steps of:
- (a) specifying a store having a plurality of addresses;
- (b) defining a confirmer location for each of the plurality of addresses;
- (c) defining a forward pointer location for each of the plurality of addresses;
- (d) entering a forward address pointer in the forward pointer location for each of the plurality of address;
- (e) defining a primary flag for each of the plurality of addresses;
- (f) defining an allocated flag for each of the plurality of addresses;
- (g) defining an association for each of the plurality of addresses;
- and
- (h) entering a reverse address pointer in a free location for each of the plurality of addresses.
A memory management system comprising:
- a transform generator capable of generating an address and a confirmer from a key;
- a controller connected to the transform generator and sending the key to the transform generator and receiving the address and the confirmer;
- and
- a store connected to the controller having a plurality of addresses, each of the plurality of addresses having a confirmer location, a forward pointer location, a primary flag, an allocated flag and an association location.
A method of operating a memory management system, comprising the steps of:
- (a) receiving a key and a command;
- (b) when the command is a lookup command, determining a lookup confirmer and a lookup address from the key;
- (c) determining if an allocated flag is set at the lookup address of a store;
- (d) when the allocated flag is set, comparing the lookup confirmer with the stored confirmer at the lookup address;
- and
- (e) when the lookup confirmer and the stored confirmer match, reading an association at the lookup address.
A method of operating a memory management system, comprising the steps of:
- (a) determining a number of required entries;
- (b) selecting a transform having a first number of bits;
- (c) determining an address number of bits required to cover all the number of required entries;
- (d) setting a forward pointer number of bits equal to the address number of bits;
- and
- (e) setting a confirmer number of bits equal to the first number of bits less the forward pointer number of bits.
A memory management system comprising:
- a transform generator capable of generating an address and a confirmer from a key;
- a controller connected to the transform generator and sending the key to the transform generator and receiving the address and the confirmer;
- and
- a store having a plurality of addresses, each of the plurality of addresses having a confirmer location, a forward pointer location, a primary flag, and an allocated flag.
A method of operating a memory management system, comprising the steps of:
- (a) receiving a key and a write command;
- (b) determining a lookup address from the key;
- (c) determining if a primary flag is set at the lookup address of the store;
- and
- (d) when the primary flag is not set and an allocated flag is set, moving an entry at the lookup address to a next free address.
Dependencies are inferred from the claim text.