b2[0]
is signed, whereas b3[0]
isn't", then I am not sure in which logic you are saying 'var1[0]'
is signed. Does the signed keyword of struct not apply as a whole of
var1 variable including [1:0] range? I think yes. Then var1 is
signed but var1[0] is not. Can you please refer any LRM snippet for
your comment.Regards Surya
On 3/22/2011 8:59 AM, Dhiraj Kumar Prasad wrote:Hello, I have a query related with signedness of a variable. In following example module test(); typedef struct packed signed { bit [1:0] bit1; }[1:0]S1; S1 var1; int i; initial begin var1[0] = 2'b10; i = var1[0]; end endmodule Value of i should be 32'b11111111111111111111111111111110 or 32'b00000000000000000000000000000010.
Value ofi
should be32'sb11111111111111111111111111111110
The elements ofvar1
are packed signed structures.
Not sure how you mean "equivalent" here, butDifferent standard simulator are behaving differently. Should the equivalent of struct be like typedef bit signed [1:0] b1; typedef b1[1:0] b2; or typedef bit signed [1:0][1:0] b3;b2[0]
is signed, whereasb3[0]
isn't.
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
This archive was generated by hypermail 2.1.8 : Tue Mar 22 2011 - 19:47:04 PDT