Chisel

ModularCppBackend

class ModularCppBackend extends CppBackend

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

Instance Constructors

  1. new ModularCppBackend()

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 backendElaborate(c: Module): Unit

    Definition Classes
    CppBackend
  11. def block(s: Seq[String]): String

    Definition Classes
    CppBackend
  12. val bpw: Int

    Definition Classes
    CppBackend
  13. def checkPorts(topC: Module): Unit

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

    Definition Classes
    CppBackend
  15. def clone(): AnyRef

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

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

    Definition Classes
    CppBackendBackend
  18. def connectResets: Unit

    Definition Classes
    Backend
  19. def createClkDomain(root: Node, walked: ArrayBuffer[Node]): Unit

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

    Definition Classes
    Backend
  21. def createVertex(nodes: Array[Node]): CppVertex

  22. def createVertices(module: Module): ArrayBuffer[CppVertex]

  23. def depthString(depth: Int): String

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

    Definition Classes
    ModularCppBackendCppBackendBackend
  25. def emitDec(node: Node): String

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

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

    Definition Classes
    CppBackend
  28. def emitDefHis(c: Module): String

    Definition Classes
    CppBackend
  29. def emitDefLo(node: Node): String

    Definition Classes
    CppBackend
  30. def emitDefLos(c: Module): String

    Definition Classes
    CppBackend
  31. def emitInit(node: Node): String

    Definition Classes
    CppBackend
  32. def emitInitHi(node: Node): String

    Definition Classes
    CppBackend
  33. def emitLoWordRef(node: Node): String

    Definition Classes
    CppBackend
  34. def emitMapping(mapping: (String, Node)): String

    Definition Classes
    CppBackend
  35. def emitRef(node: Node): String

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

    Definition Classes
    Backend
  37. def emitTmp(node: Node): String

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

    Definition Classes
    CppBackend
  39. def emitWordRef(node: Node, w: Int): String

    Definition Classes
    CppBackend
  40. def ensureDir(dir: String): String

    Ensures a directory *dir* exists on the filesystem.

    Ensures a directory *dir* exists on the filesystem.

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

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

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

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

    Definition Classes
    Backend
  45. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  46. def fromArray(s: String, x: Node): IndexedSeq[String]

    Definition Classes
    CppBackend
  47. def fullWords(node: Node): Int

    Definition Classes
    CppBackend
  48. def fullyQualifiedName(m: Node): String

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

    Definition Classes
    Backend
  50. def gatherClocksAndResets: Unit

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

    Definition Classes
    CppBackend
  52. def genIndent(x: Int): String

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

    Definition Classes
    CppBackend
  54. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  55. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  56. def initializeDFS: Stack[Node]

    Definition Classes
    Backend
  57. 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 Module.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
  58. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  59. val keywords: HashSet[String]

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

    Definition Classes
    Backend
  61. def makeArray(s: String, x: Node): List[String]

    Definition Classes
    CppBackend
  62. def nameAll(root: Module): Unit

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

    Definition Classes
    Backend
  64. def nameRsts: Unit

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

    Definition Classes
    AnyRef
  66. final def notify(): Unit

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

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

    Definition Classes
    CppBackend
  69. val preElaborateTransforms: ArrayBuffer[(Module) ⇒ Unit]

    Definition Classes
    Backend
  70. 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
  71. def pruneNodes: Unit

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

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

    Insures 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*).

    Insures 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*).

    Definition Classes
    CppBackend
  74. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  75. var threshold: Int

  76. def toArray(s: String, x: Node): List[String]

    Definition Classes
    CppBackend
  77. def toString(): String

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

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

    Definition Classes
    CppBackend
  80. final def wait(): Unit

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

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

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

    Definition Classes
    CppBackend
  84. def words(node: Node): Int

    Definition Classes
    CppBackend

Inherited from CppBackend

Inherited from Backend

Inherited from AnyRef

Inherited from Any

Ungrouped