inorder: add a fetch buffer to fetch unit
Give fetch unit it's own parameterizable fetch buffer to read from. Very inefficient (architecturally and in simulation) to continually fetch at the granularity of the wordsize. As expected, the number of fetch memory requests drops dramatically
This commit is contained in:
@@ -48,6 +48,9 @@ class InOrderCPU(BaseCPU):
|
||||
dcache_port = Port("Data Port")
|
||||
_cached_ports = ['icache_port', 'dcache_port']
|
||||
|
||||
fetchBuffSize = Param.Unsigned(4, "Fetch Buffer Size (Number of Cache Blocks Stored)")
|
||||
memBlockSize = Param.Unsigned(64, "Memory Block Size")
|
||||
|
||||
predType = Param.String("tournament", "Branch predictor type ('local', 'tournament')")
|
||||
localPredictorSize = Param.Unsigned(2048, "Size of local predictor")
|
||||
localCtrBits = Param.Unsigned(2, "Bits per counter")
|
||||
@@ -69,8 +72,6 @@ class InOrderCPU(BaseCPU):
|
||||
functionTraceStart = Param.Tick(0, "Cycle to start function trace")
|
||||
stageTracing = Param.Bool(False, "Enable tracing of each stage in CPU")
|
||||
|
||||
memBlockSize = Param.Unsigned(64, "Memory Block Size")
|
||||
|
||||
multLatency = Param.Unsigned(1, "Latency for Multiply Operations")
|
||||
multRepeatRate = Param.Unsigned(1, "Repeat Rate for Multiply Operations")
|
||||
div8Latency = Param.Unsigned(1, "Latency for 8-bit Divide Operations")
|
||||
|
||||
Reference in New Issue
Block a user