[sv-bc] SV-BC 26-2: System tasks and functions extensions


Subject: [sv-bc] SV-BC 26-2: System tasks and functions extensions
From: Francoise Martinolle (fm@cadence.com)
Date: Fri Mar 07 2003 - 13:05:37 PST


Gordon,

%u and %z format specifiers:
why wouldn't we restrict the %u and %z specifier to only work on packed data
or scalar? This would force the user to use index selects of field selects to
get the binary or 4 state value of any other complex type.
$display("r[1] = %u", r[1]);
$display("r.a = %u", r.a);

I think it may be dangerous to say that %u on a union returns the value of
the first
member. And for unpacked structures, is it a raw dump of the whole struct? How
does the user interprets the value coming back?
Does the raw dump include pad bits?

$fread.
I don't understand the proposal at all! An example and detailed description
would help

Are you adding a new $fread( mystruct, fd)? and $fread(myunion, fd)?
What is the use for start and count?
We could define that start indicates which starting member of the struct
and count the number of members to load

For $readmem, I am assuming you are keeping the same definition as
IEEE 1364:
$reamemb("filename", memory_name[start_addr [, finish_addr]]);

Since memories are 2 dimensional arrays (1 dim on the packed side and 1 dim
on the unpacked side) and IEEE 1364 did not extend this system task to work
on multi-dim
arrays, you may want to add the restriction that unpacked arrays of packed data
are limited to 1 dimension on the unpacked side, otherwise you have to
define in which
order each element of the multi-dimensional array is loaded first in the
memory.

Francoise
        '



This archive was generated by hypermail 2b28 : Fri Mar 07 2003 - 13:06:31 PST