sealed trait SimLog extends SimLogIntf
A file or I/O device to print to in simulation
val log = SimLog.file("logfile.log") log.printf(cf"in = $in%0d\n") val stderr = SimLog.StdErr stderr.printf(cf"in = $in%0d\n") // SimLog filenames themselves can be Printable. // Be careful to avoid uninitialized registers. val idx = Wire(UInt(8.W)) val log2 = SimLog.file(cf"logfile_$idx%0d.log") log2.printf(cf"in = $in%0d\n")
- Source
- SimLog.scala
- Alphabetic
- By Inheritance
- SimLog
- SimLogIntf
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (SimLog, B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def ensuring(cond: (SimLog) => Boolean, msg: => Any): SimLog
- def ensuring(cond: (SimLog) => Boolean): SimLog
- def ensuring(cond: Boolean, msg: => Any): SimLog
- def ensuring(cond: Boolean): SimLog
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def flush()(implicit sourceInfo: SourceInfo): Unit
Flush any buffered output immediately
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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 printf(pable: Printable)(implicit sourceInfo: SourceInfo): Printf
Prints a message in simulation
Prints a message in simulation
Prints a message every cycle. If defined within the scope of a when block, the message will only be printed on cycles that the when condition is true.
Does not fire when in reset (defined as the encapsulating Module's reset). If your definition of reset is not the encapsulating Module's reset, you will need to gate this externally.
May be called outside of a Module (like defined in a function), uses the current default clock and reset. These can be overriden with withClockAndReset.
- pable
Printable to print
- See also
Printable documentation
- macro def printf(fmt: String, data: Bits*)(implicit sourceInfo: SourceInfo): Printf
Prints a message in simulation
Prints a message in simulation
Prints a message every cycle. If defined within the scope of a when block, the message will only be printed on cycles that the when condition is true.
Does not fire when in reset (defined as the encapsulating Module's reset). If your definition of reset is not the encapsulating Module's reset, you will need to gate this externally.
May be called outside of a Module (like defined in a function), uses the current default clock and reset. These can be overriden with withClockAndReset.
Format Strings
This method expects a format string and an argument list in a similar style to printf in C. The format string expects a String that may contain format specifiers For example:
printf("myWire has the value %d\n", myWire)
This prints the string "myWire has the value " followed by the current value of
myWire
(in decimal, followed by a newline.There must be exactly as many arguments as there are format specifiers
Format Specifiers
Format specifiers are prefixed by
%
. If you wish to print a literal%
, use%%
.%d
- Decimal%x
- Hexadecimal%b
- Binary%c
- 8-bit Character%n
- Name of a signal%N
- Full name of a leaf signal (in an aggregate)%%
- Literal percent%m
- Hierarchical name of the current module%T
- Simulation time
- fmt
printf format string
- data
format string varargs containing data to print
- Definition Classes
- SimLogIntf
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from SimLog toStringFormat[SimLog] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (SimLog, B)
- Implicit
- This member is added by an implicit conversion from SimLog toArrowAssoc[SimLog] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.
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
,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.