Section 23.5 (New)

LRM-135

Change (changes in red and blue):

23.5 Range system function

 

range_function ::=                                               // not in Annex A

$isunbounded ( constant_expression )

 

Syntax 23-4—Range function syntax (not in Annex A)

 

The $isunbounded system function returns true if the argument is $. Given the declaration:

 

parameter int foo = $;

 

Then $isunbounded shall return true.

Section 23.10

LRM-134

Change (changes in red and blue):

All of the above system functions shall have a return type of bit. A return value of 1’b1 shall indicate true, and a return value of 1’b0 shall indicate false.

 

A function is provided to return sampled value of an expression.

 

$sampled ( expression [,clocking_event])

 

Three functions are provided for assertions to detect changes in values between two adjacent clock ticks.

 

$rose ( expression [,clocking_event])

 

$fell ( expression [,clocking_event])

 

$stable ( expression [,clocking_event])

 

These functions are discussed in Section 17.7.3.

 

The past values can be accessed with the $past function.

 

$past ( expression [ , number_of_ticks] [,expression2] [,clocking_event])

 

$sampled,$rose, $fell, $stable and $past are discussed in Section 17.7.3.

 

The number of 1s in a bit vector expression can be determined with the $countones function.

 

$countones ( expression)

 

$past and $countones are is discussed in Section 17.9.