From ac42db8134bff8617e20e1a034dc0d65158335ae Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Mon, 19 Aug 2013 03:52:31 -0400 Subject: mem: Perform write merging in the DRAM write queue This patch implements basic write merging in the DRAM to avoid redundant bursts. When a new access is added to the queue it is compared against the existing entries, and if it is either intersecting or immediately succeeding/preceeding an existing item it is merged. There is currently no attempt made at avoiding iterating over the existing items in determining whether merging is possible or not. --- src/mem/simple_dram.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/mem/simple_dram.hh') diff --git a/src/mem/simple_dram.hh b/src/mem/simple_dram.hh index 313ad067b..9473f010f 100644 --- a/src/mem/simple_dram.hh +++ b/src/mem/simple_dram.hh @@ -209,13 +209,13 @@ class SimpleDRAM : public AbstractMemory * reason is to keep the address offset so we can accurately check * incoming read packets with packets in the write queue. */ - const Addr addr; + Addr addr; /** * The size of this dram packet in bytes * It is always equal or smaller than DRAM burst size */ - const unsigned int size; + unsigned int size; /** * A pointer to the BurstHelper if this DRAMPacket is a split packet -- cgit v1.2.3