SystemVerilog problem?

D

Davy

Guest
Hi all,

Can I replace
Code:

indexa: coverpoint index_a_logic
{
bins a[] = {[0:51]} iff(VALID & VRESET);
}

with

Code:

indexa: coverpoint index_a_logic
{
if(VALID & VRESET)
bins a[] = {[0:51]} ;
}


I test them on IUS55 but all fail.

Best regards,
Davy
 
Davy,
What exactly is your question? Along with posting code, state your
requirement, then we can suggest a way to code.

When you say:

I test them on IUS55 but all fail.
What is "fail", fail to compile or simulate unexoected result?

Regards
Ajeetha, CVC
www.noveldv.com
Davy wrote:
Hi all,

Can I replace
Code:

indexa: coverpoint index_a_logic
{
bins a[] = {[0:51]} iff(VALID & VRESET);
}

with

Code:

indexa: coverpoint index_a_logic
{
if(VALID & VRESET)
bins a[] = {[0:51]} ;
}


I test them on IUS55 but all fail.

Best regards,
Davy
 
On 22 Jun 2006 01:36:48 -0700, "Davy"
<zhushenli@gmail.com> wrote:

Can I replace

indexa: coverpoint index_a_logic
{
bins a[] = {[0:51]} iff(VALID & VRESET);
}

with

indexa: coverpoint index_a_logic
{
if(VALID & VRESET)
bins a[] = {[0:51]} ;
}
"bins" is not a procedural statement, so your second example
makes no sense to me, and I can't find any mention of this use
of "if" in the SV BNF for coverpoint. (That doesn't mean there
isn't one - there are plenty of things I have failed to find in the
SV LRM that are nonetheless there!).

So, my understanding is that your first example is OK but
your second is not.

I don't know whether the tools are yet supporting iff on
individual bins - haven't tried that yet. I've used iff on
a coverpoint and it seems to be OK:

indexa: coverpoint index_a_logic iff (VALID & VRESET) {
bins a[] = {...};
};

Note also that IUS5.5 is a way out of date now, and I don't
know how much SystemVerilog it supports - not very much,
I fear. See if you can move up to 5.7, which supports very
much more of the SV language.

hth
--
Jonathan Bromley, Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services

Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK
jonathan.bromley@MYCOMPANY.com
http://www.MYCOMPANY.com

The contents of this message may contain personal views which
are not the views of Doulos Ltd., unless specifically stated.
 
Hi Davy,
Are you refering to systemverilog construct?
My understand is you can't replace it in such manner as it is illegal
cosntruct.

Best regards,
ABC

Davy wrote:
Hi all,

Can I replace
Code:

indexa: coverpoint index_a_logic
{
bins a[] = {[0:51]} iff(VALID & VRESET);
}

with

Code:

indexa: coverpoint index_a_logic
{
if(VALID & VRESET)
bins a[] = {[0:51]} ;
}


I test them on IUS55 but all fail.

Best regards,
Davy
 

Welcome to EDABoard.com

Sponsor

Back
Top