Assertion

Status
Not open for further replies.

vinay8287

Newbie level 1
Joined
May 10, 2011
Messages
0
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,280
Location
Banglore
Activity points
1,280
Hi all.

Iam writting system verilog Assertion, i have come across with a problem in below code

$rose (req) |-> ##delay $rose (ack);
in tha above code variable delay i want to be chaging based on contents of some register, but am getting error : delay should be constant ---i tried passing delay through generate construct, since my register is 16 bit i have to generate 65535 gen blocks so its giving memory related issue,whts the solution??????
 

you can't set the "delay" as a veriable.
it must be a constant or a range.
 

can u tell me how to learn system verilog assertions pls .
 

@(posedge clk)(($rose(A),count=0) |-> (1, count++)[*0:MAX_COUNT] ##1 (B and count == m));

Variable delay is supported as long as you know the MAX_COUNT
 

use it:
$rose (req) ||-> ##delay $rose (ack);
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…