IBusCache can now avoid injectorStage in singleStage mode
This commit is contained in:
parent
f4598fbd0a
commit
11f55359c6
|
@ -33,7 +33,8 @@ class IBusCachedPlugin(resetVector : BigInt = 0x80000000l,
|
||||||
keepPcPlus4 : Boolean = false,
|
keepPcPlus4 : Boolean = false,
|
||||||
config : InstructionCacheConfig,
|
config : InstructionCacheConfig,
|
||||||
memoryTranslatorPortConfig : Any = null,
|
memoryTranslatorPortConfig : Any = null,
|
||||||
injectorStage : Boolean = false) extends IBusFetcherImpl(
|
injectorStage : Boolean = false,
|
||||||
|
withoutInjectorStage : Boolean = false) extends IBusFetcherImpl(
|
||||||
resetVector = resetVector,
|
resetVector = resetVector,
|
||||||
keepPcPlus4 = keepPcPlus4,
|
keepPcPlus4 = keepPcPlus4,
|
||||||
decodePcGen = compressedGen,
|
decodePcGen = compressedGen,
|
||||||
|
@ -43,9 +44,10 @@ class IBusCachedPlugin(resetVector : BigInt = 0x80000000l,
|
||||||
injectorReadyCutGen = false,
|
injectorReadyCutGen = false,
|
||||||
prediction = prediction,
|
prediction = prediction,
|
||||||
historyRamSizeLog2 = historyRamSizeLog2,
|
historyRamSizeLog2 = historyRamSizeLog2,
|
||||||
injectorStage = !config.twoCycleCache || injectorStage){
|
injectorStage = (!config.twoCycleCache && !withoutInjectorStage) || injectorStage){
|
||||||
import config._
|
import config._
|
||||||
|
|
||||||
|
assert(!(withoutInjectorStage && injectorStage))
|
||||||
|
|
||||||
var iBus : InstructionCacheMemBus = null
|
var iBus : InstructionCacheMemBus = null
|
||||||
var mmuBus : MemoryTranslatorBus = null
|
var mmuBus : MemoryTranslatorBus = null
|
||||||
|
|
Loading…
Reference in New Issue