object Driver extends BackendCompilationUtilities
- Source
- Driver.scala
- Alphabetic
- By Inheritance
- Driver
- BackendCompilationUtilities
- BackendCompilationUtilities
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
lazy val
TestDirectory: File
- Definition Classes
- BackendCompilationUtilities
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val chiselVersionString: String
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
compileFirrtlToVerilog(prefix: String, dir: File): Boolean
Compile Chirrtl to Verilog by invoking Firrtl inside the same JVM
Compile Chirrtl to Verilog by invoking Firrtl inside the same JVM
- prefix
basename of the file
- dir
directory where file lives
- returns
true if compiler completed successfully
- Definition Classes
- BackendCompilationUtilities
-
def
copyResourceToFile(name: String, file: File): Unit
- Definition Classes
- BackendCompilationUtilities
-
def
cppToExe(prefix: String, dir: File): ProcessBuilder
- Definition Classes
- BackendCompilationUtilities
-
def
createTestDirectory(testName: String): File
- Definition Classes
- BackendCompilationUtilities
-
def
dumpAnnotations(ir: Circuit, optName: Option[File]): File
Emit the annotations of a circuit
Emit the annotations of a circuit
- ir
The circuit containing annotations to be emitted
- optName
An optional filename (will use s"${ir.name}.json" otherwise)
-
def
dumpFirrtl(ir: Circuit, optName: Option[File]): File
Dump the elaborated Chisel IR Circuit as a FIRRTL String, without invoking FIRRTL.
Dump the elaborated Chisel IR Circuit as a FIRRTL String, without invoking FIRRTL.
If no File is given as input, it will dump to a default filename based on the name of the top Module.
- optName
File to dump to. If unspecified, defaults to "<topmodule>.fir".
- returns
The File the circuit was dumped to.
-
def
dumpProto(c: Circuit, optFile: Option[File]): File
Dump the elaborated Circuit to ProtoBuf.
Dump the elaborated Circuit to ProtoBuf.
If no File is given as input, it will dump to a default filename based on the name of the top Module.
- c
Elaborated Chisel Circuit.
- optFile
Optional File to dump to. If unspecified, defaults to "<topmodule>.pb".
- returns
The File the circuit was dumped to.
-
def
elaborate[T <: RawModule](gen: () ⇒ T): Circuit
Elaborate the Module specified in the gen function into a Chisel IR Circuit.
Elaborate the Module specified in the gen function into a Chisel IR Circuit.
- gen
A function that creates a Module hierarchy.
- returns
The resulting Chisel IR in the form of a Circuit. (TODO: Should be FIRRTL IR)
-
def
emit[T <: RawModule](ir: Circuit): String
Emit the given Chisel IR Circuit as a FIRRTL string, without invoking FIRRTL.
Emit the given Chisel IR Circuit as a FIRRTL string, without invoking FIRRTL.
- ir
Chisel IR Circuit, generated e.g. by elaborate().
-
def
emit[T <: RawModule](gen: () ⇒ T): String
Emit the Module specified in the gen function directly as a FIRRTL string without invoking FIRRTL.
Emit the Module specified in the gen function directly as a FIRRTL string without invoking FIRRTL.
- gen
A function that creates a Module hierarchy.
-
def
emitVerilog[T <: RawModule](gen: ⇒ T): String
Elaborate the Module specified in the gen function into Verilog.
Elaborate the Module specified in the gen function into Verilog.
- gen
A function that creates a Module hierarchy.
- returns
A String containing the design in Verilog.
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
execute(args: Array[String], dut: () ⇒ RawModule): ChiselExecutionResult
Run the chisel3 compiler and possibly the firrtl compiler with options specified via an array of Strings
Run the chisel3 compiler and possibly the firrtl compiler with options specified via an array of Strings
- args
The options specified, command line style
- dut
The device under test
- returns
An execution result with useful stuff, or failure with message
-
def
execute(optionsManager: ExecutionOptionsManager with HasChiselExecutionOptions with HasFirrtlOptions, dut: () ⇒ RawModule): ChiselExecutionResult
Run the chisel3 compiler and possibly the firrtl compiler with options specified
Run the chisel3 compiler and possibly the firrtl compiler with options specified
- optionsManager
The options specified
- dut
The device under test
- returns
An execution result with useful stuff, or failure with message
-
def
executeExpectingFailure(prefix: String, dir: File, assertionMsg: String): Boolean
- Definition Classes
- BackendCompilationUtilities
-
def
executeExpectingSuccess(prefix: String, dir: File): Boolean
- Definition Classes
- BackendCompilationUtilities
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
firrtlToVerilog(prefix: String, dir: File): ProcessBuilder
- Definition Classes
- BackendCompilationUtilities
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
main(args: Array[String]): Unit
This is just here as command line way to see what the options are It will not successfully run TODO: Look into dynamic class loading as way to make this main useful
This is just here as command line way to see what the options are It will not successfully run TODO: Look into dynamic class loading as way to make this main useful
- args
unused args
-
def
makeHarness(template: (String) ⇒ String, post: String)(f: File): File
- Definition Classes
- BackendCompilationUtilities
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def parseArgs(args: Array[String]): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- def targetDir(): String
-
def
timeStamp: String
- Definition Classes
- BackendCompilationUtilities
-
def
toFirrtl(ir: Circuit): Circuit
Convert the given Chisel IR Circuit to a FIRRTL Circuit.
Convert the given Chisel IR Circuit to a FIRRTL Circuit.
- ir
Chisel IR Circuit, generated e.g. by elaborate().
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
verilogToCpp(dutFile: String, dir: File, vSources: Seq[File], cppHarness: File, suppressVcd: Boolean, resourceFileName: String): ProcessBuilder
- Definition Classes
- BackendCompilationUtilities
- val version: String
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
yosysExpectFailure(customTop: String, referenceTop: String, testDir: File, resets: Seq[(Int, String, Int)]): Boolean
- Definition Classes
- BackendCompilationUtilities
-
def
yosysExpectSuccess(customTop: String, referenceTop: String, testDir: File, resets: Seq[(Int, String, Int)]): Boolean
- Definition Classes
- BackendCompilationUtilities
This is the documentation for Chisel.
Package structure
The chisel3 package presents the public API of Chisel. It contains the concrete core types
UInt
,SInt
,Bool
,FixedPoint
,Clock
, andReg
, the abstract typesBits
,Aggregate
, andData
, and the aggregate typesBundle
andVec
.The Chisel package is a compatibility layer that attempts to provide chisel2 compatibility in chisel3.
Utility objects and methods are found in the
util
package.The
testers
package defines the basic interface for chisel testers.