Sequence

chisel3.ltl.Sequence
See theSequence companion trait
object Sequence

Prefix-style utilities to work with sequences.

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

Attributes

Companion
trait
Source
LTL.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Sequence.type

Members list

Type members

Classlikes

implicit class BoolSequence(val inner: Bool) extends Sequence, SequenceAtom

Attributes

Source
LTL.scala
Supertypes
trait SequenceAtom
trait Sequence
trait Property
class Object
trait Matchable
class Any
Show all

Value members

Inherited methods

def and(arg0: Sequence, argN: Sequence*)(using SourceInfo): Sequence

Form the conjunction of two sequences. Equivalent to arg0 and arg1 and ... and argN in SVA.

Form the conjunction of two sequences. Equivalent to arg0 and arg1 and ... and argN in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def apply(atoms: SequenceAtom*)(using SourceInfo): Sequence

Convenience constructor for sequences. Allows for the following syntax:

Convenience constructor for sequences. Allows for the following syntax:

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

See SequenceAtom for more details.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def clock(seq: Sequence, clock: Clock)(using SourceInfo): Sequence

Specify a clock relative to which all cycle delays within seq are specified. Equivalent to @(posedge clock) seq in SVA.

Specify a clock relative to which all cycle delays within seq are specified. Equivalent to @(posedge clock) seq in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def concat(arg0: Sequence, argN: Sequence*)(using SourceInfo): Sequence

Concatenate multiple sequences. Equivalent to arg0 ##0 arg1 ##0 ... ##0 argN in SVA.

Concatenate multiple sequences. Equivalent to arg0 ##0 arg1 ##0 ... ##0 argN in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def delay(seq: Sequence, delay: Int = ...)(using SourceInfo): Sequence

Delay a sequence by a fixed number of cycles. Equivalent to ##delay in SVA.

Delay a sequence by a fixed number of cycles. Equivalent to ##delay in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def delayAtLeast(seq: Sequence, delay: Int)(using SourceInfo): Sequence

Delay a sequence by an unbounded range of cycles. Equivalent to ##[delay:$] in SVA.

Delay a sequence by an unbounded range of cycles. Equivalent to ##[delay:$] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def delayRange(seq: Sequence, min: Int, max: Int)(using SourceInfo): Sequence

Delay a sequence by a bounded range of cycles. Equivalent to ##[min:max] in SVA.

Delay a sequence by a bounded range of cycles. Equivalent to ##[min:max] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def gotoRepeat(seq: Sequence, min: Int, max: Int)(using SourceInfo): Sequence

GoTo-style repitition of a sequence a fixed number of non-consecutive times, where the final evaluation of the sequence must hold, e.g. a !b b b !b !b b c represents a matching observation of gotoRepeat(b, 1, 3), but a !b b b !b !b b !b c does not. Equivalent to s[->min:max] in SVA.

GoTo-style repitition of a sequence a fixed number of non-consecutive times, where the final evaluation of the sequence must hold, e.g. a !b b b !b !b b c represents a matching observation of gotoRepeat(b, 1, 3), but a !b b b !b !b b !b c does not. Equivalent to s[->min:max] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def intersect(arg0: Sequence, argN: Sequence*)(using SourceInfo): Sequence

Form the conjunction of two sequences, where the start and end times of both sequences must be identical. Equivalent to arg0 intersect arg1 intersect ... intersect argN in SVA.

Form the conjunction of two sequences, where the start and end times of both sequences must be identical. Equivalent to arg0 intersect arg1 intersect ... intersect argN in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def nonConsecutiveRepeat(seq: Sequence, min: Int, max: Int)(using SourceInfo): Sequence

Repeat a sequence a fixed number of non-consecutive times, where the final evaluation of the sequence does not have to hold, e.g. both a !b b b !b !b b c and a !b b b !b !b b !b c represent matching observations of nonConsecutiveRepeat(b, 1, 3). Equivalent to s[=min:max] in SVA.

Repeat a sequence a fixed number of non-consecutive times, where the final evaluation of the sequence does not have to hold, e.g. both a !b b b !b !b b c and a !b b b !b !b b !b c represent matching observations of nonConsecutiveRepeat(b, 1, 3). Equivalent to s[=min:max] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def or(arg0: Sequence, argN: Sequence*)(using SourceInfo): Sequence

Form the disjunction of two sequences. Equivalent to arg0 or arg1 or ... or argN in SVA.

Form the disjunction of two sequences. Equivalent to arg0 or arg1 or ... or argN in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def repeat(seq: Sequence, n: Int = ...)(using SourceInfo): Sequence

Repeat a sequence a fixed number of consecutive times. Equivalent to s[n] in SVA.

Repeat a sequence a fixed number of consecutive times. Equivalent to s[n] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def repeatAtLeast(seq: Sequence, n: Int)(using SourceInfo): Sequence

Repeat a sequence by an unbounded range of consecutive times. Equivalent to s[n:$] in SVA.

Repeat a sequence by an unbounded range of consecutive times. Equivalent to s[n:$] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def repeatRange(seq: Sequence, min: Int, max: Int)(using SourceInfo): Sequence

Repeat a sequence by a bounded range of consecutive times. Equivalent to s[min:max] in SVA.

Repeat a sequence by a bounded range of consecutive times. Equivalent to s[min:max] in SVA.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala
def until(arg0: Sequence, arg1: Sequence)(using SourceInfo): Sequence

Check that a sequence holds untile another sequence holds. This operator is weak: the property will hold even if input always holds and condition never holds.

Check that a sequence holds untile another sequence holds. This operator is weak: the property will hold even if input always holds and condition never holds.

Attributes

Inherited from:
Sequence$Intf (hidden)
Source
LTLIntf.scala

Implicits

Implicits

final implicit def BoolSequence(inner: Bool): BoolSequence

Attributes

Source
LTL.scala