Chisel

CppBackend

class CppBackend extends Backend

Linear Supertypes
Backend, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. CppBackend
  2. Backend
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CppBackend()

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val analyses: ArrayBuffer[(Module) ⇒ Unit]

    Definition Classes
    Backend
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def asValidName(name: String): String

    Definition Classes
    Backend
  9. def assignClockAndResetToModules: Unit

    Definition Classes
    Backend
  10. def backannotationAnalyses: Unit

    Definition Classes
    Backend
  11. def backannotationTransforms: Unit

    Definition Classes
    Backend
  12. def backendElaborate(c: Module): Unit

  13. def block(s: Seq[String]): String

  14. val bpw: Int

  15. def checkPorts(topC: Module): Unit

    Definition Classes
    Backend
  16. def clkName(clock: Clock): String

  17. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. def collectNodesIntoComp(dfsStack: Stack[Node]): Unit

    Definition Classes
    Backend
  19. def compile(c: Module, flagsIn: String): Unit

    Definition Classes
    CppBackendBackend
  20. def connectResets: Unit

    Definition Classes
    Backend
  21. def createOutputFile(name: String): FileWriter

    Definition Classes
    Backend
  22. def depthString(depth: Int): String

    Definition Classes
    Backend
  23. def elaborate(c: Module): Unit

    Definition Classes
    CppBackendBackend
  24. def emitCircuitAssign(srcPrefix: String, node: Node): String

  25. def emitDatRef(x: Node): String

  26. def emitDec(node: Node): String

    Definition Classes
    CppBackendBackend
  27. def emitDef(node: Node): String

    Definition Classes
    Backend
  28. def emitDefHi(node: Node): String

  29. def emitDefHis(c: Module): String

  30. def emitDefLo(node: Node): String

  31. def emitDefLos(c: Module): String

  32. def emitInit(node: Node): String

  33. def emitInitHi(node: Node): String

  34. def emitLit(value: BigInt, w: Int = 0): String

  35. def emitLoWordRef(node: Node): String

  36. def emitLog2(x: Node, priEnc: Boolean = false): String

  37. def emitMapping(mapping: (String, Node)): String

  38. def emitRef(node: Node): String

    Definition Classes
    CppBackendBackend
  39. def emitRef(c: Module): String

    Definition Classes
    Backend
  40. def emitRefHi(node: Node): String

  41. def emitTmp(node: Node): String

    Definition Classes
    CppBackendBackend
  42. def emitTmpDec(node: Node): String

  43. def emitWordRef(node: Node, w: Int): String

  44. def ensureDir(dir: String): String

    Ensures a directory *dir* exists on the filesystem.

    Ensures a directory *dir* exists on the filesystem.

    Definition Classes
    Backend
  45. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  46. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  47. def execute(c: Module, walks: ArrayBuffer[(Module) ⇒ Unit]): Unit

    Definition Classes
    Backend
  48. def extractClassName(comp: Module): String

    Definition Classes
    Backend
  49. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  50. def fullWords(node: Node): Int

  51. def fullyQualifiedName(m: Node): String

    Definition Classes
    Backend
  52. def gatherChildren(root: Module): ArrayBuffer[Module]

    Definition Classes
    Backend
  53. def gatherClocksAndResets: Unit

    Definition Classes
    Backend
  54. def genHarness(c: Module, name: String): Unit

  55. def genIndent(x: Int): String

    Attributes
    protected
    Definition Classes
    Backend
  56. def generateNodeMapping(nodes: Seq[Node]): ArrayBuffer[(String, Node)]

    Takes a list of nodes and returns a list of tuples with the names attached.

    Takes a list of nodes and returns a list of tuples with the names attached. Used to preserve original node names before the rename process.

  57. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  58. def getPseudoPath(c: Module, delim: String = "/"): String

    Definition Classes
    Backend
  59. def getSignalPathName(n: Node, delim: String = "/", isRealName: Boolean = false): String

    Definition Classes
    Backend
  60. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  61. def initBackannotation: Unit

    Definition Classes
    Backend
  62. def initializeDFS: Stack[Node]

    Definition Classes
    Backend
  63. def isBitsIo(node: Node, dir: IODirection): Boolean

    Nodes which are created outside the execution trace from the toplevel component constructor (i.

    Nodes which are created outside the execution trace from the toplevel component constructor (i.e. through the () => Module(new Top()) ChiselMain argument) will have a component field set to null. For example, genMuxes, forceMatchWidths and transforms (all called from Backend.elaborate) create such nodes.

    This method walks all nodes from all component roots (outputs, debugs). and reassociates the component to the node both ways (i.e. in Driver.nodes and Node.component).

    We assume here that all nodes at the components boundaries (io) have a non-null and correct node/component association. We further assume that nodes generated in elaborate are inputs to a node whose component field is set.

    Implementation Node: At first we did implement *collectNodesIntoComp* to handle a single component at a time but that did not catch the cases where Regs are passed as input to sub-module without being tied to an output of *this.component*.

    Definition Classes
    Backend
  64. def isEmittingComponents: Boolean

    Definition Classes
    Backend
  65. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  66. def isLit(node: Node): Boolean

  67. val keywords: HashSet[String]

    Definition Classes
    CppBackendBackend
  68. def levelChildren(root: Module): Unit

    Definition Classes
    Backend
  69. def nameAll(root: Module): Unit

    Definition Classes
    Backend
  70. def nameChildren(root: Module): Unit

    Definition Classes
    Backend
  71. def nameRsts: Unit

    Definition Classes
    Backend
  72. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  73. val needsLowering: Set[String]

    Definition Classes
    Backend
  74. def nodeVars(node: Node): List[(String, String)]

  75. final def notify(): Unit

    Definition Classes
    AnyRef
  76. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  77. def opFoldLeft(o: Op, initial: (String, String) ⇒ String, subsequent: (String, String, String) ⇒ String): String

  78. val preElaborateTransforms: ArrayBuffer[(Module) ⇒ Unit]

    Definition Classes
    Backend
  79. def printStack: Unit

    Prints the call stack of Component as seen by the push/pop runtime.

    Prints the call stack of Component as seen by the push/pop runtime.

    Attributes
    protected
    Definition Classes
    Backend
  80. def pruneNodes: Unit

    Definition Classes
    Backend
  81. def pruneUnconnectedIOs(m: Module): Unit

    Definition Classes
    Backend
  82. def renameNodes(c: Module, nodes: Seq[Node]): Unit

    Ensures each node such that it has a unique name accross the whole hierarchy by prefixing its name by a component path (except for "reset" and all nodes in *c*).

  83. def setPseudoNames(c: Module): Unit

    Definition Classes
    Backend
  84. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  85. def toString(): String

    Definition Classes
    AnyRef → Any
  86. val transforms: ArrayBuffer[(Module) ⇒ Unit]

    Definition Classes
    Backend
  87. def trunc(x: Node): String

  88. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  89. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  90. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  91. def wordMangle(x: Node, w: Int): String

  92. def wordMangle(x: Node, w: String): String

  93. def words(node: Node): Int

  94. def writeOutGraph(c: Module): Unit

    Definition Classes
    Backend

Inherited from Backend

Inherited from AnyRef

Inherited from Any

Ungrouped