object Global extends AreaRoot
Define global variables for plugin to share in non-verbose ways
A few notes about physical/virtual/mixed addresses, as they are a tricky thing if you try to scrap away any unecessary bit : In RISC-V, the addresses manipulated by the CPU before the MMU can be physical or virtual. The thing is that Physical addresses are unsigned, while virtual addresses are signed (so sign extended to XLEN). So let's say you have : - 32 bits physical address width - 39 bits virtual address width Then, addresses in the CPU before the MMU (mixed addresses) need to have 40 bits (39 bits + 1 bit of sign extension), that allow for instance : - physical address trap at 0x40_0000_0000 to be stored in let's say MEPC to store that address while avoiding the sign extension
- Alphabetic
- By Inheritance
- Global
- AreaRoot
- Area
- OverridedEqualsHashCode
- ValCallbackRec
- ValCallback
- NameableByComponent
- Nameable
- ContextUser
- ScalaLocated
- GlobalDataUser
- OwnableRef
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
Value Members
- val CODE: NamedType[Bits]
- val CODE_WIDTH: ElementBlocking[Int]
- val COMMIT: NamedType[Bool]
- val COMPLETED: NamedType[Bool]
- val HART_COUNT: ElementBlocking[Int]
- val HART_ID: NamedType[UInt]
- def HART_ID_WIDTH: Int
- val MIXED_ADDRESS: NamedType[UInt]
- val MIXED_WIDTH: ElementBlocking[Int]
- val PC: NamedType[UInt]
- val PC_TARGET: NamedType[UInt]
- val PC_WIDTH: ElementBlocking[Int]
- val PHYSICAL_ADDRESS: NamedType[UInt]
- val PHYSICAL_WIDTH: ElementBlocking[Int]
- val TRAP: NamedType[Bool]
- val TRAP_ARG: NamedType[Bits]
- val TRAP_ARG_WIDTH: ElementBlocking[Int]
- val TVAL: NamedType[Bits]
- val TVAL_WIDTH: ElementBlocking[Int]
- val VIRTUAL_WIDTH: ElementBlocking[Int]
-
val
_context: Capture
- Definition Classes
- Area
-
def
childNamePriority: Byte
- Definition Classes
- Area
-
def
component: Component
- Definition Classes
- ContextUser
-
def
equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- def expendPc(pc: UInt, width: Int): UInt
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
- Definition Classes
- Nameable
-
def
getDisplayName(): String
- Definition Classes
- Nameable
-
def
getInstanceCounter: Int
- Definition Classes
- ContextUser
-
def
getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getName(): String
- Definition Classes
- NameableByComponent → Nameable
-
def
getPartialName(): String
- Definition Classes
- Nameable
-
def
getPath(from: Component, to: Component): Seq[Component]
- Definition Classes
- NameableByComponent
-
def
getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
-
def
getScalaLocationLong: String
- Definition Classes
- ScalaLocated
-
def
getScalaLocationShort: String
- Definition Classes
- ScalaLocated
-
def
getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
- def hartsIds: Range
-
def
hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
-
def
isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
-
final
def
isNamed: Boolean
- Definition Classes
- Nameable
-
def
isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
-
def
isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
-
val
name: String
- Definition Classes
- Nameable
-
def
overrideLocalName(name: String): Global.this.type
- Definition Classes
- Nameable
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
- def pcWithSignMsb: Boolean
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
-
def
reflectNames(): Unit
- Definition Classes
- Nameable
-
def
rework[T](body: ⇒ T): T
- Definition Classes
- Area
-
val
scalaTrace: Throwable
- Definition Classes
- ScalaLocated
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Global.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Global.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): Global.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): Global.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): Global.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): Global.this.type
- Definition Classes
- Nameable
-
def
setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): Global.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): Global.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): Global.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): Global.this.type
- Definition Classes
- Nameable
-
def
setNameAsWeak(): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): Global.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable): Global.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): Global.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): Global.this.type
- Definition Classes
- Nameable
-
def
toString(): String
- Definition Classes
- Area → Nameable → AnyRef → Any
-
def
unsetName(): Global.this.type
- Definition Classes
- Nameable
-
def
valCallback[T](ref: T, name: String): T
- Definition Classes
- ValCallbackRec → ValCallback
-
def
valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
- Definition Classes
- ValCallbackRec
-
def
valCallbackRec(obj: Any, name: String): Unit
- Definition Classes
- Area → ValCallbackRec