Method and apparatus for resolving write and read conflicts between memory modules accessing blocks of a memory
First Claim
1. A system comprising:
- a memory configured to store and output data in a first-in-first-out order;
a sequence generator configured to (i) generate a sequence of first values, and (ii) randomly assign the first values to blocks of the memory;
a first memory module configured to, based on the sequence of first values, access a first block of the memory; and
a conflict module configured tobased on the sequence of first values and prior to the first memory module writing to or reading from the first block of the memory, read a value from the first block of the memory,based on the value read from the first block of the memory, determine whether a write conflict or a read conflict exists between the first memory module and a second memory module for the first block of the memory, andin response to the write conflict or the read conflict existing between the first memory module and the second memory module, either resolve (i) the write conflict causing the first memory module to write to a second block of the memory instead of the first block of the memory, or (ii) the read conflict by preventing the first memory module from reading from the first block of the memory.
2 Assignments
0 Petitions
Accused Products
Abstract
A system includes a memory that stores and outputs data in a first-in-first-out order. A sequence generator generates a sequence of first values, and randomly assigns the first values to blocks of the memory. A first memory module, based on the sequence of first values, accesses a first block of the memory. A conflict module, in response to a write or read conflict existing between the first and second memory modules due to the first memory module accessing the first block, resolves the write or read conflict. The conflict module resolves the write or read conflict by reading a value from the first block, and based on the value, either (i) causing the first memory module to write to a second block of the memory instead of the first block, or (ii) preventing the first memory module from reading from the first block.
19 Citations
22 Claims
-
1. A system comprising:
-
a memory configured to store and output data in a first-in-first-out order; a sequence generator configured to (i) generate a sequence of first values, and (ii) randomly assign the first values to blocks of the memory; a first memory module configured to, based on the sequence of first values, access a first block of the memory; and a conflict module configured to based on the sequence of first values and prior to the first memory module writing to or reading from the first block of the memory, read a value from the first block of the memory, based on the value read from the first block of the memory, determine whether a write conflict or a read conflict exists between the first memory module and a second memory module for the first block of the memory, and in response to the write conflict or the read conflict existing between the first memory module and the second memory module, either resolve (i) the write conflict causing the first memory module to write to a second block of the memory instead of the first block of the memory, or (ii) the read conflict by preventing the first memory module from reading from the first block of the memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 21, 22)
-
-
11. A method comprising:
-
generating a sequence of first values; randomly assigning the first values to blocks of a memory, wherein the memory is configured to store and output data in a first-in-first-out order; based on the sequence of first values and prior to a first memory module writing to or reading from a first block of the memory, read a value from the first block of the memory via a conflict module, wherein the first memory module is configured to access the first block of the memory based on the sequence of first values; based on the value read from the first block of the memory, determine whether a write conflict or a read conflict exists between the first memory module and a second memory module for the first block of the memory; and in response to the write conflict or the read conflict existing between the first memory module and the second memory module, either resolving (i) the write conflict causing the first memory module to write to a second block of the memory instead of the first block of the memory, or (ii) the read conflict by preventing the first memory module from reading from the first block of the memory. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification