Chisel

package Chisel

Visibility
  1. Public
  2. All

Type Members

  1. abstract class AccessTracker extends Node with Delay

  2. abstract class Aggregate extends Data

  3. class Arbiter[T <: Data] extends LockingArbiter[T]

    Hardware module that is used to sequence n producers into 1 consumer.

  4. class ArbiterIO[T <: Data] extends Bundle

    An I/O bundle for the Arbiter

  5. class Assert extends Node with Delay

  6. class AsyncFifo[T <: Data] extends Module

    Asynchronous Fifo.

  7. class Backend extends FileSystemUtilities

  8. case class BinaryOp(op: String) extends Op with Product with Serializable

  9. class Binding extends Node

  10. class BitPat extends AnyRef

    A class to create bit patterns Use the BitPat object instead of this class directly

  11. abstract class Bits extends Data with proc

    Base class for built-in Chisel types Bits and SInt.

  12. class BitsInObject extends UInt

  13. abstract class BlackBox extends Module

    This class allows the connection to Verilog modules outside of chisel after generation

  14. class Bool extends UInt

  15. case class BoolEx(expr: Ex[Boolean]) extends Product with Serializable

  16. class Bundle extends Aggregate

    Defines a collection of datum of different types into a single coherent whole.

  17. class CEntry extends AnyRef

  18. class CSENode extends AnyRef

  19. case class CStruct(name: String, fields: Array[(String, Bits)]) extends Product with Serializable

  20. class ChiselConfig extends AnyRef

  21. class ChiselError extends AnyRef

  22. class ChiselException extends Exception

  23. class Clock extends Node

    Create a new clock

  24. class Collector extends World

  25. class Complex[T <: Data with Num[T]] extends Bundle with Num[Complex[T]]

    Complex number representation create using the object Complex

  26. class ComponentDef extends AnyRef

  27. class Counter extends AnyRef

    A counter module, can also be created using Counter

  28. class CppBackend extends Backend

  29. abstract class Data extends Node

    *Data* is part of the *Node* Composite Pattern class hierarchy.

  30. class Dbl extends Bits with Num[Dbl]

    A double precision floating point representation Create using Dbl

  31. class DecoupledIO[+T <: Data] extends Bundle

    An I/O Bundle with simple handshaking using valid and ready signals for data 'bits'

  32. trait Delay extends Node

  33. class DeqIO[T <: Data] extends DecoupledIO[T]

    An I/O bundle for dequeuing data with valid/ready handshaking

  34. case class DivisorParam(pname: String, init: Int, min: Int, max: Int, par: Param[Any]) extends Param[Int] with Product with Serializable

  35. class DotBackend extends Backend

  36. class EnqIO[T <: Data] extends DecoupledIO[T]

    An I/O bundle for enqueuing data with valid/ready handshaking

  37. case class EnumParam(pname: String, init: String, values: List[String]) extends Param[String] with Product with Serializable

  38. abstract class Ex[T] extends AnyRef

  39. final case class ExAdd(a: Ex[Int], b: Ex[Int]) extends Ex[Int] with Product with Serializable

  40. final case class ExAnd(a: Ex[Boolean], b: Ex[Boolean]) extends Ex[Boolean] with Product with Serializable

  41. final case class ExEq[T](a: Ex[T], b: Ex[T]) extends Ex[Boolean] with Product with Serializable

  42. final case class ExGt(a: Ex[Int], b: Ex[Int]) extends Ex[Boolean] with Product with Serializable

  43. final case class ExGte(a: Ex[Int], b: Ex[Int]) extends Ex[Boolean] with Product with Serializable

  44. final case class ExLit[T](value: T) extends Ex[T] with Product with Serializable

  45. final case class ExLt(a: Ex[Int], b: Ex[Int]) extends Ex[Boolean] with Product with Serializable

  46. final case class ExLte(a: Ex[Int], b: Ex[Int]) extends Ex[Boolean] with Product with Serializable

  47. final case class ExMod(a: Ex[Int], b: Ex[Int]) extends Ex[Int] with Product with Serializable

  48. final case class ExMul(a: Ex[Int], b: Ex[Int]) extends Ex[Int] with Product with Serializable

  49. final case class ExNeq[T](a: Ex[T], b: Ex[T]) extends Ex[Boolean] with Product with Serializable

  50. final case class ExOr(a: Ex[Boolean], b: Ex[Boolean]) extends Ex[Boolean] with Product with Serializable

  51. final case class ExSub(a: Ex[Int], b: Ex[Int]) extends Ex[Int] with Product with Serializable

  52. final case class ExVar[T](name: Any) extends Ex[T] with Product with Serializable

  53. final case class ExXor(a: Ex[Boolean], b: Ex[Boolean]) extends Ex[Boolean] with Product with Serializable

  54. class Extract extends Node

  55. class FPGABackend extends VerilogBackend

    class with no inline mem

  56. class Fame1CppBackend extends CppBackend with Fame1Transform

  57. class Fame1FPGABackend extends FPGABackend with Fame1Transform

  58. trait Fame1Transform extends Backend

  59. class Fame1VerilogBackend extends VerilogBackend with Fame1Transform

  60. class Fame1Wrapper extends Module

  61. class Fame1WrapperIO extends Bundle

  62. class FameDecoupledIO[+T <: Data] extends Bundle

  63. class FameQueue[T <: Data] extends Module

  64. class FameQueueTracker extends Module

  65. class FameQueueTrackerIO extends Bundle

  66. class Field[T] extends AnyRef

  67. trait FileSystemUtilities extends AnyRef

  68. class Fixed extends Bits with Num[Fixed]

    A Fixed point data type

  69. class Flo extends Bits with Num[Flo]

    A 32 bit floating point representation class Create using the Flo object

  70. class FloBackend extends Backend

  71. class GetWidthException extends Exception

  72. case class GreaterEqParam(pname: String, init: Int, par: Param[Any], max: Int) extends Param[Int] with Product with Serializable

  73. case class GreaterParam(pname: String, init: Int, par: Param[Any], max: Int) extends Param[Int] with Product with Serializable

  74. abstract class IODirection extends AnyRef

  75. class Insert extends Node with proc

  76. class Instance extends World

  77. case class IntEx(expr: Ex[Int]) extends Product with Serializable

  78. final case class Knob[T](name: Any) extends Product with Serializable

  79. class KnobUndefinedException extends RuntimeException

  80. case class LessEqParam(pname: String, init: Int, min: Int, par: Param[Any]) extends Param[Int] with Product with Serializable

  81. case class LessParam(pname: String, init: Int, min: Int, par: Param[Any]) extends Param[Int] with Product with Serializable

  82. class Literal extends Node

    Stores the actual value of a scala literal as a string.

  83. class LockingArbiter[T <: Data] extends LockingArbiterLike[T]

  84. abstract class LockingArbiterLike[T <: Data] extends Module

  85. class LockingRRArbiter[T <: Data] extends LockingArbiterLike[T]

  86. class Log2 extends Log2Like

    Compute Log2 with truncation Use the Log2 object rather than this class directly

  87. abstract class Log2Like extends Op

    A class defining an Operator which has a output width log2 of the number of input bits

  88. case class LogicalOp(op: String) extends Op with Product with Serializable

  89. class MapTester[+T <: Module] extends Tester[T]

    A tester to check a node graph from INPUTs to OUTPUTs directly

  90. class Mem[T <: Data] extends AccessTracker with VecLike[T]

  91. abstract class MemAccess extends Node

  92. class MemRead extends MemAccess

  93. class MemReadWrite extends MemAccess

  94. class MemSeqRead extends MemAccess with Delay

  95. class MemWrite extends MemAccess

  96. abstract class Module extends Nameable

    A Module or block to logically divide a hardware design

  97. class Mux extends Op

    Mux class defined as an operator

  98. trait Nameable extends AnyRef

    This trait allows an instantiation of something to be given a particular name

  99. abstract class Node extends Nameable

    *Node* defines the root class of the class hierarchy for a [Composite Pattern](http://en.

  100. trait Num[T <: Data] extends AnyRef

    This trait enforces numerical properties on the data such as being able to add, subtract, multiply, divide etc

  101. class OHToUInt extends Log2Like

    Converts a One Hot encoding to a UInt Use the OHToUInt object rather than this class directly

  102. abstract class Op extends Node

  103. abstract class Param[+T] extends AnyRef

  104. case class ParamInvalidException(msg: String) extends Exception with Product with Serializable

  105. class ParameterUndefinedException extends RuntimeException

  106. final class Parameters extends AnyRef

  107. class Pipe[T <: Data] extends Module

    A hardware module that delays data coming down the pipeline by the number of cycles set by the latency parameter.

  108. class Printf extends PrintfBase

  109. class PrintfBase extends Node with Delay

  110. class PriorityEncoder extends Log2Like

    A class to detect the trailing bit Use the PriorityEncoder object rather than this class directly

  111. class PutativeMemWrite extends Node with proc

  112. class Queue[T <: Data] extends Module

    A hardware module implementing a Queue

  113. class QueueIO[T <: Data] extends Bundle

    An I/O Bundle for Queues

  114. class ROM[T <: Data] extends Vec[T]

    Class defining a ROM Use the ROM object rather than instantiating the ROM directly

  115. class ROMData extends Node

    ROMData stores the data for ROM

  116. class ROMRead extends Node

    Class to read from ROM - internal, do not use

  117. class RRArbiter[T <: Data] extends LockingRRArbiter[T]

    Hardware module that is used to sequence n producers into 1 consumer.

  118. case class RangeParam(pname: String, init: Int, min: Int, max: Int) extends Param[Int] with Product with Serializable

  119. case class ReductionOp(op: String) extends Op with Product with Serializable

  120. class Reg extends Node with Delay with proc

  121. class RegIO[T <: Data] extends Bundle

  122. class RegReset extends Reg

  123. class SInt extends Bits with Num[SInt]

  124. class SeqMem[T <: Data] extends Mem[T]

  125. class Sprintf extends PrintfBase

  126. class SysCBackend extends CppBackend

    If we have structured/aggregate types as top-level ports, we define suitable structures for encapsulating their components, in order to treat them as sc_fifo elements.

  127. case class TestApplicationException(exitVal: Int, lastMessage: String) extends RuntimeException with Product with Serializable

  128. class TestIO extends AnyRef

  129. class Tester[+T <: Module] extends FileSystemUtilities

    This class is the super class for test cases

  130. trait Tests extends AnyRef

  131. class UInt extends Bits with Num[UInt]

  132. case class UnaryOp(op: String) extends Op with Product with Serializable

  133. trait UsesParameters extends AnyRef

  134. class ValidIO[+T <: Data] extends Bundle

    An I/O Bundle containing data and a signal determining if it is valid

  135. case class ValueParam(pname: String, init: Any) extends Param[Any] with Product with Serializable

  136. class VcdBackend extends Backend

  137. class Vec[T <: Data] extends Aggregate with VecLike[T] with Cloneable

  138. trait VecLike[T <: Data] extends IndexedSeq[T]

  139. class VecProc extends Node with proc

  140. class VerilogBackend extends Backend

  141. class VerilogParameters extends AnyRef

    This class enables the definition of verilog parameters without having to to string building

  142. class Version extends Ordered[Version]

    Version - dotted string with up to three components.

  143. abstract class View extends AnyRef

  144. final case class ViewSym(view: View) extends Product with Serializable

  145. class Width extends Ordered[Width]

    Create a new width

  146. abstract class World extends AnyRef

  147. abstract class _Lookup extends AnyRef

  148. sealed abstract class _Var[T] extends AnyRef

  149. final case class _VarKnob[T](kname: Any) extends _Var[T] with Product with Serializable

  150. final case class _VarLet[T](pname: Any, expr: Ex[T]) extends _Var[T] with Product with Serializable

  151. trait proc extends Node

  152. class when extends AnyRef

    A class representing the when block Use when rather than this class directly

Value Members

  1. object ACos

    Compute the acos or inverse cos value of a Flo or Dbl returning the result in radians

  2. object ASin

    Compute the asin or inverse sin value of a Flo or Dbl returning the result in radians

  3. object ATan

    Compute the atan or inverse tan value of a Flo or Dbl returning the result in radians

  4. package AdvTester

  5. object ArbiterCtrl

    Arbiter Control determining which producer has access

  6. object BinaryOp extends Serializable

  7. object Binding

  8. object BitPat

    A bit pattern object to enable representation of dont cares

  9. object Bits

  10. object Bool

  11. object Bundle

  12. object CSE

  13. object CString

  14. object Cat

  15. object Ceil

    Compute the ceiling of a Flo or Dbl

  16. object ChiselError

    This Singleton implements a log4j compatible interface.

  17. object Clock

    Create a new Clock

  18. object Complex

    Representation for complex numbers

  19. object Concatenate

  20. object Cos

    Compute the cos value of a Flo or Dbl in radians

  21. object Counter

    Counter Object for Counter

  22. object Data

  23. object Dbl

    Create a 64 bit double precision floating point representation

  24. object Decoupled

    Adds a ready-valid handshaking protocol to any interface

  25. object DelayBetween

    DelayBetween works out the number of registers or delays for all possible directional paths between two nodes

  26. object Driver extends FileSystemUtilities

  27. object Dump

  28. object Enum

    An object for creating C style Enums

  29. object Ex

  30. object Extract

  31. object Fame1Transform

  32. object FameDecoupledIO

  33. object Fill

    Fill fans out a Node to multiple copies

  34. object FillInterleaved

  35. object Fixed

    Factory methods for Fixed

  36. object Flo

    Create a 32 bit floating point Object

  37. object Floor

    Compute the floor of a Flo or Dbl

  38. object INPUT extends IODirection

    Define the IODirection INPUT

  39. object ImplicitConversions

  40. object Implicits

  41. object IntParam

  42. object JHFormat

  43. object LFSR16

    linear feedback shift register

  44. object ListLookup

  45. object Lit

    A factory for literal values

  46. object Literal

  47. object Log

    Compute the log of a Flo or Dbl

  48. object Log2

    Compute Log2 with truncation of a UInt in hardware using a Mux Tree An alternative interpretation is it computes the minimum number of bits needed to represent x

  49. object LogicalOp extends Serializable

  50. object Lookup

  51. object Mem

    *seqRead* means that if a port tries to read the same address that another port is writing to in the same cycle, the read data is random garbage (from a LFSR, which returns "1" on its first invocation).

  52. object Module

    Methods to insert Modules into components correctly

  53. object Multiplex

    A multiplexor which is a generalization of Mux to use nodes which aren't bools Mux uses this method internally If the values are not literals a Mux class is created and initialized

  54. object Mux

    Implement a Multiplexor with a Bool A convienient wrapper for Multiplex

  55. object Mux1H

    Builds a Mux tree out of the input signal vector using a one hot encoded select signal.

  56. object MuxCase

    MuxCase returns the first value that is enabled in a map of values

  57. object MuxLookup

    MuxLookup creates a cascade of n Muxs to search for a key value

  58. object NODIR extends IODirection

    Define the IODirection NODIR

  59. object Node

  60. object NodeExtract

  61. object NodeFill

    NodeFill copys an instance of a Node multiple times or fans it out Any change to a Node such as setting inputs or changing width will is applied to all of them

  62. object OHToUInt

    Converts from One Hot Encoding to a UInt indicating which bit is active This is the inverse of UIntToOH

  63. object OUTPUT extends IODirection

    Define the IODirection OUTPUT

  64. object Op

  65. object Parameters

  66. object Params

  67. object PartitionIslands

  68. object Pipe

    Similar to a shift register but with handshaking at start

  69. object PopCount

    Returns the number of bits set (i.

  70. object Pow

    Compute the power of a Flo or Dbl

  71. object Printer

  72. object PriorityEncoder

  73. object PriorityEncoderOH

    Returns a bit vector in which only the least-significant 1 bit in the input vector, if any, is set.

  74. object PriorityMux

    Builds a Mux tree under the assumption that multiple select signals can be enabled.

  75. object Queue

    Generic hardware queue.

  76. object ROM

    Read Only Memory object Optionally create in a map with integer addresses attached Create a Vec of literals rather than ROM directly

  77. object ReductionOp extends Serializable

  78. object Reg

  79. object RegEnable

    A register with an Enable signal

  80. object RegInit

  81. object RegNext

  82. object Reverse

    Litte/big bit endian conversion: reverse the order of the bits in a UInt.

  83. object Round

    Round a Flo or Dbl to the nearest integer

  84. object SCWrapper

  85. object SInt

  86. object Scanner

  87. object SeqMem

  88. object ShiftRegister

    Returns the n-cycle delayed version of the input signal.

  89. object Sin

    Compute the sin value of a Flo or Dbl in radians

  90. object Sqrt

    Compute the square root of a Flo or Dbl

  91. object Tan

    Compute the tan value of a Flo or Dbl in radians

  92. object UInt

  93. object UIntToOH

  94. object UnaryOp extends Serializable

  95. object Valid

    Adds a valid protocol to any interface By default this creates a ValidIO class with valid and bits set to OUTPUT

  96. object Vec

  97. object VecMux

  98. object VerilogBackend

  99. object Version

  100. object Width

    Get the number of bits required

  101. object Wire

    Chisel3 - Wrap a Chisel data type with a Wire.

  102. object World

  103. object andR

  104. object chiselCast

    Cast a node to be Bits

  105. object chiselEnvironmentArguments

    If there is an environment variable chiselArguments, construct an Array[String] of its value split on ' ', otherwise, return a 0 length Array[String]

  106. object chiselMain

    _chiselMain_ behaves as if it constructs an execution tree from the constructor of a sub class of Module which is passed as a parameter.

  107. object chiselMainTest

  108. object conjugate

    Compute the conjugate of a complex number using the function conj

  109. object foldR

    Fold Right with a function

  110. object is

    An object for separate cases in switch It is equivalent to a when block comparing to the condition Use outside of a switch statement is illegal

  111. object isLessThan

    Usefulness is questionable, remove?

  112. object isPow2

    Check if an Integer is a power of 2

  113. object log2Ceil

    Compute the log2 rounded up

  114. object log2Down

    Compute the log2 rounded down with min value of 1

  115. object log2Floor

    Compute the log2 rounded down

  116. object log2Up

    Compute the log2 rounded up with min value of 1

  117. object orR

  118. object switch

    Conditional logic to form a switch block

  119. object throwException

  120. object unless

    This is identical to when with the condition inverted

  121. object when

    An object to create conditional logic See when for functions elsewhen and otherwise

  122. object xorR

Ungrouped