package executable
- Alphabetic
- By Inheritance
- executable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- case class AddBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class AddInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class AddLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class AndBigs(f1: FuncBig, f2: FuncBig, resultWidth: Int) extends BigExpressionResult with Product with Serializable
- case class AndInts(f1: FuncInt, f2: FuncInt, resultWidth: Int) extends IntExpressionResult with Product with Serializable
- case class AndLongs(f1: FuncLong, f2: FuncLong, resultWidth: Int) extends LongExpressionResult with Product with Serializable
- case class AndrBigs(f1: FuncBig, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
and
reduced- width
result bit size
- case class AndrInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
and
reduced- width
result bit size
- case class AndrLongs(f1: FuncLong, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
and
reduced- width
result bit size
- case class AsClockBigs(f1: FuncBig) extends IntExpressionResult with Product with Serializable
- case class AsClockInts(f1: FuncInt) extends IntExpressionResult with Product with Serializable
- case class AsClockLongs(f1: FuncLong) extends IntExpressionResult with Product with Serializable
- case class AsSIntBigs(f1: FuncBig, width: Int) extends BigExpressionResult with Product with Serializable
- case class AsSIntInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
- case class AsSIntLongs(f1: FuncLong, width: Int) extends LongExpressionResult with Product with Serializable
- case class AsUIntBigs(f1: FuncBig, width: Int) extends BigExpressionResult with Product with Serializable
- case class AsUIntInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
- case class AsUIntLongs(f1: FuncLong, width: Int) extends LongExpressionResult with Product with Serializable
- trait Assigner extends AnyRef
- type Big = BigInt
- trait BigExpressionResult extends ExpressionResult
- case class BigToLong(f: FuncBig) extends LongExpressionResult with Product with Serializable
- case class BitsBigs(f1: FuncBig, high: Int, low: Int, originalWidth: Int) extends BigExpressionResult with Product with Serializable
- case class BitsInts(f1: FuncInt, high: Int, low: Int, originalWidth: Int) extends IntExpressionResult with Product with Serializable
- case class BitsLongs(f1: FuncLong, high: Int, low: Int, originalWidth: Int) extends LongExpressionResult with Product with Serializable
- case class BlackBoxCycler(symbol: Symbol, blackBox: ScalaBlackBox, clockSymbol: Symbol, clockTransitionGetter: ClockTransitionGetter, info: Info) extends Assigner with Product with Serializable
Implements an assigner that can be scheduled to publish clock transitions to specific black box implementations
Implements an assigner that can be scheduled to publish clock transitions to specific black box implementations
- symbol
symbol name of instance
- blackBox
the instance
- clockSymbol
clock used by instance
- info
source location
- case class CatBigs(f1: FuncBig, f1Width: Int, f2: FuncBig, f2Width: Int) extends BigExpressionResult with Product with Serializable
- case class CatInts(f1: FuncInt, f1Width: Int, f2: FuncInt, f2Width: Int) extends IntExpressionResult with Product with Serializable
- case class CatLongs(f1: FuncLong, f1Width: Int, f2: FuncLong, f2Width: Int) extends LongExpressionResult with Product with Serializable
- case class ClockAssigners(upAssigner: Assigner, downAssigner: Assigner) extends Product with Serializable
- case class ClockBasedAssigner(assigner: Assigner, clockSymbol: Symbol, prevClockSymbol: Symbol, dataStore: DataStore, requiredTransition: Transition) extends Assigner with Product with Serializable
- case class ClockInfo(name: String = ClockInfo.DefaultName, period: Long = ClockInfo.DefaultPeriod, initialOffset: Long = ClockInfo.DefaultOffset) extends Product with Serializable
ClockInfo associates a clock with the given name and period and offset The period is in an arbitrary number of ticks.
ClockInfo associates a clock with the given name and period and offset The period is in an arbitrary number of ticks. The VCD logger currently sets these ticks to be nanosecond(ns). The first up transition takes place after initialOffset ticks. One or more clocks can be specified through the TreadleOptions clockInfo as a Seq of ClockInfo's or from string command line based --fint-clock-info or -fici which use the format clock-name[:period[:initial-offset] ]
- name
the signal name of a clock
- period
how many ticks between rising edges of this clock
- initialOffset
the tick where the first up transition takes place.
- trait ClockStepper extends AnyRef
- case class ClockTransitionGetter(clockSymbol: Symbol, prevClockSymbol: Symbol, dataStore: DataStore) extends Product with Serializable
Used internally by assigners that care about clock transitions
Used internally by assigners that care about clock transitions
- clockSymbol
the clock
- prevClockSymbol
the previous state of the clock
- dataStore
needed to get current and prev values
- trait DataSize extends AnyRef
- class DataStore extends HasDataArrays
Creates a data store for the three underlying data types.
Creates a data store for the three underlying data types. The meaning of the values of each slot must be maintained outside of this class. This class only supports (2 ** 31) - 1 of any ints, longs or bigs.
- class DataStoreAllocator extends AnyRef
- abstract class DataStorePlugin extends AnyRef
- trait DataType extends AnyRef
- case class DivBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class DivInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class DivLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class DshlBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class DshlInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class DshlLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class DshrBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class DshrInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class DshrLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class EqBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class EqInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class EqLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- class ExecutionEngine extends LazyLogging
- class ExpressionCompiler extends LazyLogging
- trait ExpressionResult extends AnyRef
- type FuncBig = () => Big
- type FuncInt = () => Int
- type FuncLong = () => Long
- type FuncUnit = () => Unit
- case class GeqBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class GeqInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class GeqLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- case class GetBigConstant(n: Big) extends BigExpressionResult with Product with Serializable
- case class GetIntConstant(n: Int) extends IntExpressionResult with Product with Serializable
- case class GetLongConstant(n: Long) extends LongExpressionResult with Product with Serializable
- case class GtBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class GtInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class GtLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- trait HasDataArrays extends AnyRef
- case class HeadBigs(f1: FuncBig, takeBits: Int, originalWidth: Int) extends BigExpressionResult with Product with Serializable
- case class HeadInts(f1: FuncInt, takeBits: Int, originalWidth: Int) extends IntExpressionResult with Product with Serializable
- case class HeadLongs(f1: FuncLong, takeBits: Int, originalWidth: Int) extends LongExpressionResult with Product with Serializable
- case class IndicesAndRadix(indices: Set[Int], radix: Int = 10) extends Product with Serializable
- trait IntExpressionResult extends ExpressionResult
- case class IsPosEdge(symbol: Symbol, symbolPreviousValue: Symbol, dataStore: DataStore) extends IntExpressionResult with Product with Serializable
- case class LeqBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class LeqInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class LeqLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- trait LongExpressionResult extends ExpressionResult
- case class LongToBig(f: FuncLong) extends BigExpressionResult with Product with Serializable
- case class LongToInt(f: FuncLong) extends IntExpressionResult with Product with Serializable
- case class LtBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class LtInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class LtLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- class MemoryInitializer extends LazyLogging
- case class MulBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class MulInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class MulLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- class MultiClockStepper extends ClockStepper
Manage multiple top-level clocks step is interpreted here to mean advance to the next clock cycle considering all the clocks multiple clocks may fire at that time
- case class MuxBigs(condition: FuncInt, trueClause: FuncBig, falseClause: FuncBig) extends BigExpressionResult with Product with Serializable
- case class MuxInts(condition: FuncInt, trueClause: FuncInt, falseClause: FuncInt) extends IntExpressionResult with Product with Serializable
- case class MuxLongs(condition: FuncInt, trueClause: FuncLong, falseClause: FuncLong) extends LongExpressionResult with Product with Serializable
- case class NegBigs(f1: FuncBig) extends BigExpressionResult with Product with Serializable
- case class NegInts(f1: FuncInt) extends IntExpressionResult with Product with Serializable
- case class NegLongs(f1: FuncLong) extends LongExpressionResult with Product with Serializable
- case class NeqBigs(f1: FuncBig, f2: FuncBig) extends IntExpressionResult with Product with Serializable
- case class NeqInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class NeqLongs(f1: FuncLong, f2: FuncLong) extends IntExpressionResult with Product with Serializable
- class NoClockStepper extends ClockStepper
- case class NotBigs(f1: FuncBig, width: Int) extends BigExpressionResult with Product with Serializable
- case class NotInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
- case class NotLongs(f1: FuncLong, width: Int) extends LongExpressionResult with Product with Serializable
- case class OrBigs(f1: FuncBig, f2: FuncBig, resultWidth: Int) extends BigExpressionResult with Product with Serializable
- case class OrInts(f1: FuncInt, f2: FuncInt, resultWidth: Int) extends IntExpressionResult with Product with Serializable
- case class OrLongs(f1: FuncLong, f2: FuncLong, resultWidth: Int) extends LongExpressionResult with Product with Serializable
- case class OrrBigs(f1: FuncBig, width: Int) extends IntExpressionResult with Product with Serializable
are any bits set
are any bits set
- f1
value to be
or
reduced- width
result bit size
- case class OrrInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
are any bits set
are any bits set
- f1
value to be
or
reduced- width
result bit size
- case class OrrLongs(f1: FuncLong, width: Int) extends IntExpressionResult with Product with Serializable
are any bits set
are any bits set
- f1
value to be
or
reduced- width
result bit size
- case class PrintInfo(printSymbol: Symbol, cardinal: Int) extends Ordered[PrintInfo] with Product with Serializable
- case class PrintfOp(symbol: Symbol, info: Info, string: StringLit, args: Seq[ExpressionResult], fieldWidths: Seq[Int], clockTransition: ClockTransitionGetter, condition: IntExpressionResult, scheduler: Scheduler, addWallTime: Boolean) extends Assigner with Product with Serializable
- case class RemBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class RemInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class RemLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- class RenderComputations extends DataStorePlugin
- class ReportAssignments extends DataStorePlugin
- class Scheduler extends LazyLogging
The scheduler holds the ordered assignment statements of the entire circuit.
The scheduler holds the ordered assignment statements of the entire circuit. Clocks have magic shadow symbols "clockName/prev". These shadows are used to make the circuit evaluation idempotent, i.e. evaluating the circuit at the moment of an positive clock transition can be done repeatedly and registers will only be advanced on the first call.
- class SensitivityGraphBuilder extends AnyRef
builds driving and driven by relationships between symbols
- case class ShlBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class ShlInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class ShlLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class ShrBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class ShrInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class ShrLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class SimpleSingleClockStepper(engine: ExecutionEngine, dataStore: DataStore, clockSymbol: Symbol, resetSymbolOpt: Option[Symbol], clockPeriod: Long, clockInitialOffset: Long, wallTime: UTC) extends ClockStepper with Product with Serializable
- class Snapshotter extends AnyRef
- case class StopData(ret: Int, name: String, info: Info) extends Product with Serializable
- case class StopException(stops: Seq[StopData]) extends Exception with Product with Serializable
- case class StopInfo(stopSymbol: Symbol) extends Product with Serializable
- case class StopOp(symbol: Symbol, info: Info, returnValue: Int, condition: IntExpressionResult, hasStopped: Symbol, dataStore: DataStore, clockTransition: ClockTransitionGetter, stopName: String, schedulerOpt: Option[Scheduler]) extends Assigner with Product with Serializable
- case class SubBigs(f1: FuncBig, f2: FuncBig) extends BigExpressionResult with Product with Serializable
- case class SubInts(f1: FuncInt, f2: FuncInt) extends IntExpressionResult with Product with Serializable
- case class SubLongs(f1: FuncLong, f2: FuncLong) extends LongExpressionResult with Product with Serializable
- case class Symbol(name: String, dataSize: DataSize, dataType: DataType, dataKind: Kind, bitWidth: Int, slots: Int, firrtlType: Type, info: Info) extends Product with Serializable
- class SymbolTable extends AnyRef
- case class TailBigs(f1: FuncBig, toDrop: Int, originalWidth: Int) extends BigExpressionResult with Product with Serializable
- case class TailInts(f1: FuncInt, toDrop: Int, originalWidth: Int) extends IntExpressionResult with Product with Serializable
- case class TailLongs(f1: FuncLong, toDrop: Int, originalWidth: Int) extends LongExpressionResult with Product with Serializable
- case class ToBig(f: FuncInt) extends BigExpressionResult with Product with Serializable
- case class ToInt(f: FuncBig) extends IntExpressionResult with Product with Serializable
- case class ToLong(f: FuncInt) extends LongExpressionResult with Product with Serializable
- trait Transition extends AnyRef
- case class TreadleException(message: String) extends Exception with Product with Serializable
Created by chick on 4/21/16.
- case class UndefinedBigs(width: Int) extends Product with Serializable
- case class UndefinedInts(width: Int) extends Product with Serializable
- case class UndefinedLongs(width: Int) extends Product with Serializable
- class VcdHook extends DataStorePlugin
- class VcdMemoryLoggingController extends AnyRef
Controls whether a given memory cell should be logged to vcd output if logAllRadixOpt is defined then all indices for all memories should be logged otherwise if memory has an entry then check the memory index if the set contains -1 then all indices should be logged for that memory
- case class VerifyInfo(verifySymbol: Symbol, cardinal: Int) extends Ordered[VerifyInfo] with Product with Serializable
- case class VerifyOp(symbol: Symbol, info: Info, message: StringLit, clockTransition: ClockTransitionGetter, predicate: IntExpressionResult, enable: IntExpressionResult, op: firrtl2.ir.Formal.Value, dataStore: DataStore) extends Assigner with Product with Serializable
This handles the processing of coverage statements
This handles the processing of coverage statements
- symbol
machine generated symbol for each statement encountered
- info
source information
- message
message associated with statement
- clockTransition
updates clockCount when this is is PosEdge
- predicate
only increments coverCount if this is true
- enable
only increments coverCount if this is true
- case class XorBigs(f1: FuncBig, f2: FuncBig, resultWidth: Int) extends BigExpressionResult with Product with Serializable
- case class XorInts(f1: FuncInt, f2: FuncInt, resultWidth: Int) extends IntExpressionResult with Product with Serializable
- case class XorLongs(f1: FuncLong, f2: FuncLong, resultWidth: Int) extends LongExpressionResult with Product with Serializable
- case class XorrBigs(f1: FuncBig, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
xor
reduced- width
result bit size
- case class XorrInts(f1: FuncInt, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
xor
reduced- width
result bit size
- case class XorrLongs(f1: FuncLong, width: Int) extends IntExpressionResult with Product with Serializable
are all bits set
are all bits set
- f1
value to be
xor
reduced- width
result bit size
Value Members
- object Big
- case object BigSize extends DataSize with Product with Serializable
- object ClockInfo extends Serializable
The default settings for a single clock are here.
The default settings for a single clock are here. Units are in arbitrary ticks
- object DataSize
- object DataStore
- object DataType
- object ExecutionEngine extends LazyLogging
- case object IntSize extends DataSize with Product with Serializable
- case object LongSize extends DataSize with Product with Serializable
- object LongUtils
- object Memory
Provides three different aspects of the code necessary to create read and write register pipelines.
Provides three different aspects of the code necessary to create read and write register pipelines. The three cases are:
- Adding the symbols for the registers to be created
- Adding the rendering code necessary to Expression views of the pipelines
- Actually adding the pipeline registers.
NOTE: See IMPORTANT NOTE above.
- case object NegativeEdge extends Transition with Product with Serializable
- case object NoTransition extends Transition with Product with Serializable
- case object PositiveEdge extends Transition with Product with Serializable
- object PrintfOp extends Serializable
- object Scheduler
- case object SignedInt extends DataType with Product with Serializable
- object StopOp extends Serializable
- object Symbol extends Serializable
- object SymbolTable extends LazyLogging
- case object UnsignedInt extends DataType with Product with Serializable
- object VcdMemoryLoggingController extends LazyLogging
- object VerifyOp extends Serializable