Packages

  • package root

    This is the documentation for Chisel.

    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, and Reg, the abstract types Bits, Aggregate, and Data, and the aggregate types Bundle and Vec.

    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.

    Definition Classes
    root
  • package chisel3

    This package contains the main chisel3 API.

    This package contains the main chisel3 API.

    Definition Classes
    root
  • package aop
    Definition Classes
    chisel3
  • package choice

    This package contains Chisel language definitions for describing configuration options and their accepted values.

    This package contains Chisel language definitions for describing configuration options and their accepted values.

    Definition Classes
    chisel3
  • package connectable
    Definition Classes
    chisel3
  • package experimental

    Package for experimental features, which may have their API changed, be removed, etc.

    Package for experimental features, which may have their API changed, be removed, etc.

    Because its contents won't necessarily have the same level of stability and support as non-experimental, you must explicitly import this package to use its contents.

    Definition Classes
    chisel3
  • package interface
    Definition Classes
    chisel3
  • package layers

    This package contains common layer.Layers used by Chisel generators.

    This package contains common layer.Layers used by Chisel generators.

    Definition Classes
    chisel3
  • package ltl
    Definition Classes
    chisel3
  • AssertProperty
  • AssertPropertyLike
  • AssumeProperty
  • CoverProperty
  • Delay
  • EnsureProperty
  • Property
  • RequireProperty
  • Sequence
  • SequenceAtom
  • package naming
    Definition Classes
    chisel3
  • package probe
    Definition Classes
    chisel3
  • package properties

    The properties package includes functionality related to non-hardware data.

    The properties package includes functionality related to non-hardware data.

    This entire package is currently very experimental, so expect some rough edges and rapid API evolution.

    Definition Classes
    chisel3
  • package reflect
    Definition Classes
    chisel3
  • package simulator
    Definition Classes
    chisel3
  • package stage
    Definition Classes
    chisel3
  • package test
    Definition Classes
    chisel3
  • package testing
    Definition Classes
    chisel3
  • package util

    The util package provides extensions to core chisel for common hardware components and utility functions

    The util package provides extensions to core chisel for common hardware components and utility functions

    Definition Classes
    chisel3

package ltl

Content Hierarchy
Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed abstract class AssertPropertyLike extends AnyRef

    The base class for the AssertProperty, AssumeProperty, and CoverProperty verification constructs.

  2. sealed trait Property extends AnyRef

    A Linear Temporal Logic (LTL) property.

  3. sealed trait Sequence extends Property

    A Linear Temporal Logic (LTL) sequence.

  4. sealed trait SequenceAtom extends AnyRef

    A single item that may be used in the Sequence(...) convenience constructor for sequences.

    A single item that may be used in the Sequence(...) convenience constructor for sequences. These atoms may either be Sequences themselves, like a or a and b, or a DelayAtom, like Delay. Together they enable a shorthand notation for sequences like:

    Sequence(a, Delay(), b, Delay(2), c, Delay(3, 9), d, Delay(4, None), e).

Value Members

  1. object AssertProperty extends AssertPropertyLike

    Assert that a property holds.

    Assert that a property holds.

    Use like AssertProperty(p). See AssertPropertyLike.apply for optional clock, disable_iff, and label parameters.

  2. object AssumeProperty extends AssertPropertyLike

    Assume that a property holds.

    Assume that a property holds.

    Use like AssumeProperty(p). See AssertPropertyLike.apply for optional clock, disable_iff, and label parameters.

  3. object CoverProperty extends AssertPropertyLike

    Cover that a property holds.

    Cover that a property holds.

    Use like CoverProperty(p). See AssertPropertyLike.apply for optional clock, disable_iff, and label parameters.

  4. object Delay

    The delay atoms available to users.

    The delay atoms available to users. Can be interleaved with actual sequences in Sequence(...). See SequenceAtom for details.

  5. object EnsureProperty extends AssertPropertyLike

    Ensure that a property holds as a post-condition of a contract.

    Ensure that a property holds as a post-condition of a contract. Behaves like an AssertProperty if used outside of a contract. When used inside of a contract, the behavior differs depending on how the contract is used in a formal proof:

    - During a proof that the contract is upheld by the surrounding circuit, the property given to EnsureProperty is asserted to hold. - During a larger proof where the contract is already assumed to be proven, the property given to EnsureProperty is assumed to hold.

    Use like EnsureProperty(p). See AssertPropertyLike.apply for optional clock, disable_iff, and label parameters.

  6. object Property

    Prefix-style utilities to work with properties.

    Prefix-style utilities to work with properties.

    This object exposes the primary API to create and compose properties from booleans, sequences, and other properties.

  7. object RequireProperty extends AssertPropertyLike

    Require that a property holds as a pre-condition of a contract.

    Require that a property holds as a pre-condition of a contract. Behaves like an AssertProperty if used outside of a contract. When used inside of a contract, the behavior differs depending on how the contract is used in a formal proof:

    - During a proof that the contract is upheld by the surrounding circuit, the property given to RequireProperty is assumed to hold. - During a larger proof where the contract is already assumed to be proven, the property given to RequireProperty is asserted to hold.

    Use like RequireProperty(p). See AssertPropertyLike.apply for optional clock, disable_iff, and label parameters.

  8. object Sequence

    Prefix-style utilities to work with sequences.

    Prefix-style utilities to work with sequences.

    This object exposes the primary API to create and compose sequences from booleans and shorter sequences.

Ungrouped