chisel6.4.0 < Back


# Packages

-  package root
  Definition Classes
    root
-  package firrtl
  Definition Classes
    root
-  package annotations
  Definition Classes
    firrtl
-  package graph
  Definition Classes
    firrtl
-  package ir
  Definition Classes
    firrtl
- AggregateType
- AliasType
- AnalogType
- AnyRefPropertyType
- AsyncResetType
- Attach
- Block
- BooleanPropertyLiteral
- BooleanPropertyType
- BundleType
- Circuit
- CircuitWithAnnos
- ClassPropertyType
- ClockType
- Conditionally
- Connect
- ConstType
- DefClass
- DefInstance
- DefInstanceChoice
- DefMemory
- DefModule
- DefNode
- DefObject
- DefOption
- DefOptionCase
- DefRegister
- DefRegisterWithReset
- DefTypeAlias
- DefWire
- Default
- Direction
- DoPrim
- DoubleParam
- DoublePropertyLiteral
- DoublePropertyType
- EmptyStmt
- Expression
- ExtModule
- Field
- FileInfo
- FirrtlNode
- Flip
- Formal
- GroundType
- HasInfo
- HasName
- Info
- Input
- IntModule
- IntParam
- IntWidth
- IntegerAddOp
- IntegerMulOp
- IntegerPropertyLiteral
- IntegerPropertyType
- IntegerShrOp
- IsDeclaration
- IsInvalid
- Layer
- LayerBlock
- LayerConvention
- Literal
- Module
- Mux
- NoInfo
- Orientation
- Output
- Param
- PathPropertyLiteral
- PathPropertyType
- Port
- PrimOp
- Print
- ProbeDefine
- ProbeExpr
- ProbeForce
- ProbeForceInitial
- ProbeRead
- ProbeRelease
- ProbeReleaseInitial
- ProbeType
- PropAssign
- PropExpr
- PropPrimOp
- PropertyType
- RWProbeExpr
- RWProbeType
- RawStringParam
- ReadUnderWrite
- Reference
- ResetType
- SIntLiteral
- SIntType
- SequencePropertyType
- SequencePropertyValue
- Serializer
- Statement
- Stop
- StringLit
- StringParam
- StringPropertyLiteral
- StringPropertyType
- SubAccess
- SubField
- SubIndex
- Type
- UIntLiteral
- UIntType
- UnknownType
- UnknownWidth
- ValidIf
- VectorType
- Verification
- Version
- Width
-  package options
  Definition Classes
    firrtl
-  package passes
  Definition Classes
    firrtl
-  package renamemap
  Definition Classes
    firrtl
-  package stage

  The stage package provides Stage/Phase infrastructure for FIRRTL compilers:

  The stage package provides Stage/Phase infrastructure for FIRRTL compilers:

  - A number of support Phases
  - FirrtlOptions, a class representing options common to FIRRTL compilers
  - FirrtlOptionsView, a utility that constructs an OptionsView of FirrtlOptions from an AnnotationSeq
  Definition Classes
    firrtl
-  package transforms
  Definition Classes
    firrtl
-  package util
  Definition Classes
    firrtl

p

firrtl

# ir

#### package ir

Content Hierarchy

Ordering

1. Alphabetic

Visibility

1. Public
2. Protected

### Type Members

1.  abstract class AggregateType extends Type
2.  case class AliasType(name: String) extends Type with UseSerializer with Product with Serializable
3.  case class AnalogType(width: Width) extends GroundType with UseSerializer with Product with Serializable
4.  case class Attach(info: Info, exprs: Seq[Expression]) extends Statement with HasInfo with UseSerializer with Product with Serializable
5.  case class Block(stmts: Seq[Statement]) extends Statement with UseSerializer with Product with Serializable
6.  case class BooleanPropertyLiteral(value: Boolean) extends Expression with UseSerializer with Product with Serializable
7.  case class BundleType(fields: Seq[Field]) extends AggregateType with UseSerializer with Product with Serializable
8.  case class Circuit(info: Info, modules: Seq[DefModule], main: String, typeAliases: Seq[DefTypeAlias] = Seq.empty, layers: Seq[Layer] = Seq.empty, options: Seq[DefOption] = Seq.empty) extends FirrtlNode with HasInfo with UseSerializer with Product with Serializable
9.  case class CircuitWithAnnos(circuit: Circuit, annotations: Seq[Annotation]) extends FirrtlNode with UseSerializer with Product with Serializable
10.  case class ClassPropertyType(name: String) extends PropertyType with Product with Serializable
11.  case class Conditionally(info: Info, pred: Expression, conseq: Statement, alt: Statement) extends Statement with HasInfo with UseSerializer with Product with Serializable
12.  case class Connect(info: Info, loc: Expression, expr: Expression) extends Statement with HasInfo with UseSerializer with Product with Serializable
13.  case class ConstType(underlying: Type) extends Type with UseSerializer with Product with Serializable
14.  case class DefClass(info: Info, name: String, ports: Seq[Port], body: Statement) extends DefModule with UseSerializer with Product with Serializable

    Class definition

15.  case class DefInstance(info: Info, name: String, module: String, tpe: Type = UnknownType) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
16.  case class DefInstanceChoice(info: Info, name: String, default: String, option: String, choices: Seq[(String, String)]) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
17.  case class DefMemory(info: Info, name: String, dataType: Type, depth: BigInt, writeLatency: Int, readLatency: Int, readers: Seq[String], writers: Seq[String], readwriters: Seq[String], readUnderWrite: ReadUnderWrite.Value = ReadUnderWrite.Undefined) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
18.  abstract class DefModule extends FirrtlNode with IsDeclaration

    Base class for modules

19.  case class DefNode(info: Info, name: String, value: Expression) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
20.  case class DefObject(info: Info, name: String, cls: String) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
21.  case class DefOption(info: Info, name: String, cases: Seq[DefOptionCase]) extends Product with Serializable
22.  case class DefOptionCase(info: Info, name: String) extends Product with Serializable
23.  case class DefRegister(info: Info, name: String, tpe: Type, clock: Expression) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
24.  case class DefRegisterWithReset(info: Info, name: String, tpe: Type, clock: Expression, reset: Expression, init: Expression) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
25.  case class DefTypeAlias(info: Info, name: String, tpe: Type) extends Statement with UseSerializer with Product with Serializable

    Record/bundle type definition that names a FIRRTL type with an alias name

26.  case class DefWire(info: Info, name: String, tpe: Type) extends Statement with IsDeclaration with UseSerializer with Product with Serializable
27.  sealed abstract class Direction extends FirrtlNode

    Port Direction

28.  case class DoPrim(op: PrimOp, args: Seq[Expression], consts: Seq[BigInt], tpe: Type) extends Expression with UseSerializer with Product with Serializable
29.  case class DoubleParam(name: String, value: Double) extends Param with UseSerializer with Product with Serializable

    IEEE Double Precision Parameter (for Verilog real)

30.  case class DoublePropertyLiteral(value: Double) extends Expression with UseSerializer with Product with Serializable
31.  abstract class Expression extends FirrtlNode
32.  case class ExtModule(info: Info, name: String, ports: Seq[Port], defname: String, params: Seq[Param]) extends DefModule with UseSerializer with Product with Serializable

    External Module

    External Module

    Generally used for Verilog black boxes

    defname

      Defined name of the external module (ie. the name Firrtl will emit)

33.  case class Field(name: String, flip: Orientation, tpe: Type) extends FirrtlNode with HasName with UseSerializer with Product with Serializable

    Field of BundleType

34.  case class FileInfo(escaped: String) extends Info with Product with Serializable

    Stores the string of a file info annotation in its escaped form.

35.  abstract class FirrtlNode extends AnyRef

    Intermediate Representation

36.  abstract class GroundType extends Type
37.  trait HasInfo extends AnyRef
38.  trait HasName extends AnyRef
39.  abstract class Info extends FirrtlNode with UseSerializer
40.  case class IntModule(info: Info, name: String, ports: Seq[Port], intrinsic: String, params: Seq[Param]) extends DefModule with UseSerializer with Product with Serializable

    Intrinsic Module

    Intrinsic Module

    Used for compiler intrinsics.

    intrinsic

      Defined intrinsic of the module

41.  case class IntParam(name: String, value: BigInt) extends Param with UseSerializer with Product with Serializable

    Integer (of any width) Parameter

42.  class IntWidth extends Width with Product with UseSerializer
43.  case class IntegerPropertyLiteral(value: BigInt) extends Literal with UseSerializer with Product with Serializable
44.  trait IsDeclaration extends HasName with HasInfo
45.  case class IsInvalid(info: Info, expr: Expression) extends Statement with HasInfo with UseSerializer with Product with Serializable
46.  case class Layer(info: Info, name: String, convention: LayerConvention.Type, body: Seq[Layer]) extends FirrtlNode with IsDeclaration with UseSerializer with Product with Serializable
47.  case class LayerBlock(info: Info, layer: String, body: Statement) extends Statement with UseSerializer with Product with Serializable
48.  abstract class Literal extends Expression
49.  case class Module(info: Info, name: String, ports: Seq[Port], body: Statement) extends DefModule with UseSerializer with Product with Serializable

    Internal Module

    Internal Module

    An instantiable hardware block

50.  case class Mux(cond: Expression, tval: Expression, fval: Expression, tpe: Type = UnknownType) extends Expression with UseSerializer with Product with Serializable
51.  abstract class Orientation extends FirrtlNode

    Orientation of Field

52.  sealed abstract class Param extends FirrtlNode

    Parameters for external modules

53.  case class PathPropertyLiteral(value: String) extends Expression with UseSerializer with Product with Serializable
54.  case class Port(info: Info, name: String, direction: Direction, tpe: Type) extends FirrtlNode with IsDeclaration with UseSerializer with Product with Serializable

    DefModule Port

55.  abstract class PrimOp extends FirrtlNode

    Primitive Operation

    Primitive Operation

    See PrimOps

56.  final class Print extends Statement with HasInfo with IsDeclaration with UseSerializer with Product with Serializable
57.  case class ProbeDefine(info: Info, sink: Expression, probeExpr: Expression) extends Statement with UseSerializer with Product with Serializable
58.  case class ProbeExpr(expr: Expression, tpe: Type = UnknownType) extends Expression with UseSerializer with Product with Serializable
59.  case class ProbeForce(info: Info, clock: Expression, cond: Expression, probe: Expression, value: Expression) extends Statement with UseSerializer with Product with Serializable
60.  case class ProbeForceInitial(info: Info, probe: Expression, value: Expression) extends Statement with UseSerializer with Product with Serializable
61.  case class ProbeRead(expr: Expression, tpe: Type = UnknownType) extends Expression with UseSerializer with Product with Serializable
62.  case class ProbeRelease(info: Info, clock: Expression, cond: Expression, probe: Expression) extends Statement with UseSerializer with Product with Serializable
63.  case class ProbeReleaseInitial(info: Info, probe: Expression) extends Statement with UseSerializer with Product with Serializable
64.  case class ProbeType(underlying: Type) extends Type with UseSerializer with Product with Serializable
65.  case class PropAssign(info: Info, loc: Expression, expr: Expression) extends Statement with HasInfo with UseSerializer with Product with Serializable
66.  case class PropExpr(info: Info, tpe: Type, op: PropPrimOp, args: Seq[Expression]) extends Expression with UseSerializer with Product with Serializable

    Property expressions.

    Property expressions.

    Unlike other primitives, Property expressions serialize as a tree directly in their rvalue context.

67.  sealed abstract class PropPrimOp extends AnyRef

    Property primitive operations.

68.  sealed abstract class PropertyType extends Type with UseSerializer
69.  case class RWProbeExpr(expr: Expression, tpe: Type = UnknownType) extends Expression with UseSerializer with Product with Serializable
70.  case class RWProbeType(underlying: Type) extends Type with UseSerializer with Product with Serializable
71.  case class RawStringParam(name: String, value: String) extends Param with UseSerializer with Product with Serializable

    Raw String Parameter Useful for Verilog type parameters

    Raw String Parameter Useful for Verilog type parameters

    Note

      Firrtl doesn't guarantee anything about this String being legal in any backend

72.  case class Reference(name: String, tpe: Type = UnknownType) extends Expression with HasName with UseSerializer with Product with Serializable
73.  case class SIntLiteral(value: BigInt, width: Width) extends Literal with UseSerializer with Product with Serializable
74.  case class SIntType(width: Width) extends GroundType with UseSerializer with Product with Serializable
75.  case class SequencePropertyType(tpe: PropertyType) extends PropertyType with Product with Serializable
76.  case class SequencePropertyValue(tpe: Type, values: Seq[Expression]) extends Expression with UseSerializer with Product with Serializable
77.  abstract class Statement extends FirrtlNode
78.  final class Stop extends Statement with HasInfo with IsDeclaration with UseSerializer with Product with Serializable
79.  case class StringLit(string: String) extends FirrtlNode with Product with Serializable
80.  case class StringParam(name: String, value: StringLit) extends Param with UseSerializer with Product with Serializable

    String Parameter

81.  case class StringPropertyLiteral(value: String) extends Expression with UseSerializer with Product with Serializable
82.  case class SubAccess(expr: Expression, index: Expression, tpe: Type) extends Expression with UseSerializer with Product with Serializable
83.  case class SubField(expr: Expression, name: String, tpe: Type = UnknownType) extends Expression with HasName with UseSerializer with Product with Serializable
84.  case class SubIndex(expr: Expression, value: Int, tpe: Type) extends Expression with UseSerializer with Product with Serializable
85.  abstract class Type extends FirrtlNode

    Types of FirrtlNode

86.  case class UIntLiteral(value: BigInt, width: Width) extends Literal with UseSerializer with Product with Serializable
87.  case class UIntType(width: Width) extends GroundType with UseSerializer with Product with Serializable
88.  case class ValidIf(cond: Expression, value: Expression, tpe: Type) extends Expression with UseSerializer with Product with Serializable
89.  case class VectorType(tpe: Type, size: Int) extends AggregateType with UseSerializer with Product with Serializable
90.  final class Verification extends Statement with HasInfo with IsDeclaration with UseSerializer with Product with Serializable
91.  case class Version(major: Int, minor: Int, patch: Int) extends Product with Serializable
92.  abstract class Width extends FirrtlNode

### Value Members

1.  case object AnyRefPropertyType extends PropertyType with Product with Serializable
2.  case object AsyncResetType extends GroundType with UseSerializer with Product with Serializable
3.  object Block extends Serializable
4.  case object BooleanPropertyType extends PropertyType with Product with Serializable
5.  case object ClockType extends GroundType with UseSerializer with Product with Serializable
6.  object DefInstance extends Serializable
7.  case object Default extends Orientation with Product with Serializable
8.  case object DoublePropertyType extends PropertyType with Product with Serializable
9.  case object EmptyStmt extends Statement with UseSerializer with Product with Serializable
10.  object FileInfo extends Serializable
11.  case object Flip extends Orientation with Product with Serializable
12.  object Formal extends Enumeration
13.  object GroundType
14.  case object Input extends Direction with Product with Serializable
15.  object IntWidth

    Positive Integer Bit Width of a GroundType

16.  case object IntegerAddOp extends PropPrimOp with Product with Serializable
17.  case object IntegerMulOp extends PropPrimOp with Product with Serializable
18.  case object IntegerPropertyType extends PropertyType with Product with Serializable
19.  case object IntegerShrOp extends PropPrimOp with Product with Serializable
20.  object LayerConvention
21.  case object NoInfo extends Info with Product with Serializable
22.  case object Output extends Direction with Product with Serializable
23.  case object PathPropertyType extends PropertyType with Product with Serializable
24.  object Print extends Serializable
25.  object ReadUnderWrite extends Enumeration
26.  case object ResetType extends GroundType with UseSerializer with Product with Serializable
27.  object SIntLiteral extends Serializable
28.  object Serializer
29.  object Stop extends Serializable
30.  object StringLit extends Serializable
31.  case object StringPropertyType extends PropertyType with Product with Serializable
32.  object UIntLiteral extends Serializable
33.  case object UnknownType extends Type with UseSerializer with Product with Serializable
34.  case object UnknownWidth extends Width with UseSerializer with Product with Serializable
35.  object Verification extends Serializable

### Ungrouped