Method and apparatus for regulating write burst lengths
First Claim
Patent Images
1. A method, comprising:
- monitoring data traffic through a memory controller;
dynamically and automatically selecting a burst length for data transactions through a memory controller in response to the monitored data traffic, the burst length including a first burst length and a second burst length; and
selecting the first burst length if a total amount of data transactions is below a predetermined level, wherein if the total amount of data transactions is equal or above the predetermined level, the method further comprises determining whether an amount of read transactions and an amount of write transactions in the period are approximately equal;
if the amount of read transactions is approximately equal to the amount of write transactions, selecting the second burst length; and
if the amount if read transactions is not approximately equal to the amount of write transactions, selecting the first burst length.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, monitoring data traffic through a memory controller; and dynamically and automatically selecting a burst length for data transactions through a memory controller in response to the monitored data traffic.
43 Citations
11 Claims
-
1. A method, comprising:
-
monitoring data traffic through a memory controller;
dynamically and automatically selecting a burst length for data transactions through a memory controller in response to the monitored data traffic, the burst length including a first burst length and a second burst length; and
selecting the first burst length if a total amount of data transactions is below a predetermined level, wherein if the total amount of data transactions is equal or above the predetermined level, the method further comprises determining whether an amount of read transactions and an amount of write transactions in the period are approximately equal;
if the amount of read transactions is approximately equal to the amount of write transactions, selecting the second burst length; and
if the amount if read transactions is not approximately equal to the amount of write transactions, selecting the first burst length. - View Dependent Claims (2, 3)
incrementing a count for each write transaction;
decrementing a count for each read transaction; and
determining whether the absolute value of the count is less than a threshhold.
-
-
3. The method of claim 2 wherein the memory controller is selected from the group comprising:
-
a DRAM controller;
a processor controller; and
a peripheral device controller.
-
-
4. A computer readable medium having instructions which, when executed by a processing system, cause the system to perform a method, the method comprising:
-
monitoring data traffic through a memory controller;
dynamically and automatically selecting a burst length for data transactions through a memory controller in response to the monitored data traffic, the burst length including a first burst length and a second burst length; and
selecting the first burst length if a total amount of data transactions is below a predetermined level, wherein if the total amount of data transactions is equal or above the predetermined level, the method further comprises determining whether an amount of read transactions and an amount of write transactions in the period are approximately equal;
if the amount of read transactions is approximately equal to the amount of write transactions, selecting the second burst length; and
if the amount if read transactions is not approximately equal to the amount of write transactions, selecting the first burst length. - View Dependent Claims (5, 6)
incrementing a count for each write transaction;
decrementing a count for each read transaction; and
determining whether the absolute value of the count is less than a threshhold.
-
-
6. The medium of claim 5 wherein the memory controller is selected from the group comprising;
- a DRAM controller;
a processor controller; and
a peripheral device controller.
- a DRAM controller;
-
7. An apparatus, comprising:
-
means for monitoring data traffic through a memory controller;
means for dynamically and automatically selecting a burst length for data transactions through a memory controller in response to the monitored data traffic, the burst length including a first burst length and a second burst length; and
means for selecting the first burst length if a total amount of data transactions is below a predetermined level, wherein if the total amount of data transactions is equal or above the predetermined level, the apparatus further comprises means for determining whether an amount of read transactions and an amount of write transactions in the period are approximately equal;
means for selecting the second burst length if the amount of read transactions is approximately equal to the amount of write transactions; and
means for selecting the first burst length if the amount if read transactions is not approximately equal to the amount of write transactions. - View Dependent Claims (8)
means for incrementing a count for each write transaction;
means for decrementing a count for each read transaction; and
means for determining whether the absolute value of the count is less than a threshhold.
-
-
9. An apparatus comprising:
-
a sampling period register to determine a period;
a saturating counter to count in response to read and write transactions in the period;
a comparator to provide an output indicating whether the read and write transactions in the period are approximately equal; and
a burst length policy register to receive the output of the comparator and to generate a burst length policy enable signal in response to the output of the comparator. - View Dependent Claims (10, 11)
the burst length policy enable signal has a first state associated with a first burst length, and a second state associated with a second burst length, wherein the bandwidth of the first burst length is smaller than the second burst length.
-
-
11. The apparatus of claim 10 further comprising:
-
a first burst length value register having a first value associated with the first burst length to output the first value when enabled;
a second burst length value register having a second value associated with the second burst length to output the second value when enabled; and
a multiplexer to receive the burst length policy enable signal and to enable either the first burst length value register or the second burst length register in response to the burst length policy enable signal.
-
Specification