Packages

o

chisel3.ltl

RequireProperty

object RequireProperty extends AssertPropertyLike

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.

Source
LTL.scala
Linear Supertypes
AssertPropertyLike, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RequireProperty
  2. AssertPropertyLike
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply(cond: Bool, clock: Clock, disable: Disable, label: String)(implicit sourceInfo: SourceInfo): Unit

    Assert, assume, or cover that a boolean predicate holds.

    Assert, assume, or cover that a boolean predicate holds.

    Definition Classes
    AssertPropertyLike
  5. def apply(cond: Bool, label: String)(implicit sourceInfo: SourceInfo): Unit

    Assert, assume, or cover that a boolean predicate holds.

    Assert, assume, or cover that a boolean predicate holds.

    Definition Classes
    AssertPropertyLike
  6. def apply(cond: Bool)(implicit sourceInfo: SourceInfo): Unit

    Assert, assume, or cover that a boolean predicate holds.

    Assert, assume, or cover that a boolean predicate holds.

    Definition Classes
    AssertPropertyLike
  7. def apply(prop: => Property, clock: Option[Clock] = Module.clockOption, disable: Option[Disable] = Module.disableOption, label: Option[String] = None)(implicit sourceInfo: SourceInfo): Unit

    Assert, assume, or cover that a property holds.

    Assert, assume, or cover that a property holds.

    clock

    [optional]: specifies a clock with respect to which all cycle delays in the property are expressed. This is a shorthand for prop.clock(clock).

    disable

    [optional]: specifies a condition under which the evaluation of the property is disabled. This is a shorthand for prop.disable(disable).

    label

    [optional]: is used to assign a name to the assert, assume, or cover construct in the output language. In SystemVerilog, this is emitted as label: assert(...).

    Definition Classes
    AssertPropertyLike
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  10. def createIntrinsic(label: Option[String])(implicit sourceInfo: SourceInfo): (Bool, Option[Bool]) => Unit
    Attributes
    protected
    Definition Classes
    RequirePropertyAssertPropertyLike
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AssertPropertyLike

Inherited from AnyRef

Inherited from Any

Ungrouped