fix partial writes with a functional memory hack
figure out the block size from devices attached to the bus otherwise use a default block size when no devices that care are attached
configs/common/FSConfig.py:
src/mem/bridge.cc:
src/mem/bridge.hh:
src/python/m5/objects/Bridge.py:
fix partial writes with a functional memory hack
src/mem/bus.cc:
src/mem/bus.hh:
src/python/m5/objects/Bus.py:
figure out the block size from devices attached to the bus otherwise use a default block size when no devices that care are attached
src/mem/packet.cc:
fix WriteInvalidateResp to not be a request that needs a response since it isn't
src/mem/port.hh:
by default return 0 for deviceBlockSize instead of panicing. This makes finding the block size the bus should use easier
--HG--
extra : convert_revision : 3fcfe95f9f392ef76f324ee8bd1d7f6de95c1a64
This commit is contained in:
@@ -9,3 +9,5 @@ class Bridge(MemObject):
|
||||
queue_size_b = Param.Int(16, "The number of requests to buffer")
|
||||
delay = Param.Latency('0ns', "The latency of this bridge")
|
||||
write_ack = Param.Bool(False, "Should this bridge ack writes")
|
||||
fix_partial_write_a = Param.Bool(False, "Should this bridge fixup partial block writes")
|
||||
fix_partial_write_b = Param.Bool(False, "Should this bridge fixup partial block writes")
|
||||
|
||||
@@ -11,6 +11,7 @@ class Bus(MemObject):
|
||||
clock = Param.Clock("1GHz", "bus clock speed")
|
||||
width = Param.Int(64, "bus width (bytes)")
|
||||
responder_set = Param.Bool(False, "Did the user specify a default responder.")
|
||||
block_size = Param.Int(64, "The default block size if one isn't set by a device attached to the bus.")
|
||||
if build_env['FULL_SYSTEM']:
|
||||
responder = BadAddr(pio_addr=0x0, pio_latency="1ps")
|
||||
default = Port(Self.responder.pio, "Default port for requests that aren't handled by a device.")
|
||||
|
||||
Reference in New Issue
Block a user