Review Board 2.0.15


cache: enable multiple stores per cycle

Review Request #2273 - Created May 13, 2014 and updated - Latest diff uploaded

Information
Steve Reinhardt
gem5
default
Reviewers
Default
Changeset 10225:cf108c6a0aa0
---------------------------
cache: enable multiple stores per cycle

Fix cases when we have back to back stores, and 2nd store cannot be
sent to cache because ACK for 1st store is sent at weird Tick:
curTick() + 1, which effectively schedule the ACK to be processed in
the next cycle.

With this change, a potential live lock is possible: When MSHR file is
full, but prefetcher tells us that it has some data. This data should
only be processed when mshrQueue is NOT full.  Otherwise, we may have
a livelock due to event sent from the prefetcher prevents the cache to
be drained out.

This work was done while Binh was an intern at AMD Research.