UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Contributor
Contributor
5,137 Views
Registered: ‎12-29-2013

Bug in XSIM when combining reduce op and $signed/$unsigned

I have previously reported this as bug for isim 14.7 and learned that there won't be any fixes in ISIM. As it turns out, there is the same bug in xsim, so here is an updated bug report:

 

The following module should return 3'b001:

 

module issue_017(y);
  output [2:0] y;
  assign y = &($signed(2'b11));
  initial #10 $display("%b", y);
endmodule

But xsim 2013.4 returns 3'b000 instead.

 

I get the the same bug when I replace $signed with $unsigned. The bug goes away if I do not use $signed or $unsigned or reduce the size of y. Somehow the size of y "leaks through" to the self-determined operand of the & reduce operator when used with $signed or $unsigned.

 

In my tests I have run this module with:

 

xvlog issue_017.v
xelab -R work.issue_017

Crosscheck: Vivado 2013.4, XST 14.7, Quartus 13.1 and Modelsim 10.1d implement this correctly.

0 Kudos
1 Reply
Moderator
Moderator
4,983 Views
Registered: ‎04-17-2011

Re: Bug in XSIM when combining reduce op and $signed/$unsigned

Thanks for posting. We would file bug report for this one and provide you the CR number.
Regards,
Debraj
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos