Fix fixPacket assert function.
Stop timing port from forwarding the request if a response was found in its queue on a read.
src/cpu/memtest/memtest.cc:
src/cpu/memtest/memtest.hh:
src/python/m5/objects/MemTest.py:
Add parameter to configure what percentage of mem accesses are functional
src/mem/cache/base_cache.cc:
src/mem/cache/cache_impl.hh:
Use fix Packet function
src/mem/packet.cc:
Fix an assert that was checking the wrong thing
src/mem/tport.cc:
Properly detect if we need to do the access to the functional device
--HG--
extra : convert_revision : 447cc1a9a65ddd2a41e937fb09dc0e7c74e9c75e
25 lines
1.0 KiB
Python
25 lines
1.0 KiB
Python
from m5.SimObject import SimObject
|
|
from m5.params import *
|
|
from m5.proxy import *
|
|
from m5 import build_env
|
|
|
|
class MemTest(SimObject):
|
|
type = 'MemTest'
|
|
max_loads = Param.Counter("number of loads to execute")
|
|
atomic = Param.Bool(False, "Execute tester in atomic mode? (or timing)\n")
|
|
memory_size = Param.Int(65536, "memory size")
|
|
percent_dest_unaligned = Param.Percent(50,
|
|
"percent of copy dest address that are unaligned")
|
|
percent_reads = Param.Percent(65, "target read percentage")
|
|
percent_source_unaligned = Param.Percent(50,
|
|
"percent of copy source address that are unaligned")
|
|
percent_functional = Param.Percent(50, "percent of access that are functional")
|
|
percent_uncacheable = Param.Percent(10,
|
|
"target uncacheable percentage")
|
|
progress_interval = Param.Counter(1000000,
|
|
"progress report interval (in accesses)")
|
|
trace_addr = Param.Addr(0, "address to trace")
|
|
|
|
test = Port("Port to the memory system to test")
|
|
functional = Port("Port to the functional memory used for verification")
|