DecoderPlugin now implement forceIllegal API
This commit is contained in:
parent
51b8865b66
commit
9149c42065
|
@ -24,6 +24,7 @@ trait DecoderService{
|
||||||
def add(key : MaskedLiteral,values : Seq[(Stageable[_ <: BaseType],Any)])
|
def add(key : MaskedLiteral,values : Seq[(Stageable[_ <: BaseType],Any)])
|
||||||
def add(encoding :Seq[(MaskedLiteral,Seq[(Stageable[_ <: BaseType],Any)])])
|
def add(encoding :Seq[(MaskedLiteral,Seq[(Stageable[_ <: BaseType],Any)])])
|
||||||
def addDefault(key : Stageable[_ <: BaseType], value : Any)
|
def addDefault(key : Stageable[_ <: BaseType], value : Any)
|
||||||
|
def forceIllegal() : Unit
|
||||||
}
|
}
|
||||||
|
|
||||||
case class ExceptionCause(codeWidth : Int) extends Bundle{
|
case class ExceptionCause(codeWidth : Int) extends Bundle{
|
||||||
|
|
|
@ -71,6 +71,8 @@ class DecoderSimplePlugin(catchIllegalInstruction : Boolean = false,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def forceIllegal() : Unit = if(catchIllegalInstruction) pipeline.decode.input(pipeline.config.LEGAL_INSTRUCTION) := False
|
||||||
|
|
||||||
val defaults = mutable.LinkedHashMap[Stageable[_ <: BaseType], BaseType]()
|
val defaults = mutable.LinkedHashMap[Stageable[_ <: BaseType], BaseType]()
|
||||||
val encodings = mutable.LinkedHashMap[MaskedLiteral,ArrayBuffer[(Stageable[_ <: BaseType], BaseType)]]()
|
val encodings = mutable.LinkedHashMap[MaskedLiteral,ArrayBuffer[(Stageable[_ <: BaseType], BaseType)]]()
|
||||||
var decodeExceptionPort : Flow[ExceptionCause] = null
|
var decodeExceptionPort : Flow[ExceptionCause] = null
|
||||||
|
|
Loading…
Reference in New Issue