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!

AR# 9283

3.1i XST - XST does not support a shift on a signal/constant that is greater than 32 bits.

Description

Keywords: XST, Verilog, shift, 32

Urgency: Standard

General Description:
The following Verilog code fails in XST:

module shifter (out, in, shift_val);
output [32:0] out;
input [32:0] in;
input [4:0] shift_val;

wire [32:0] temp;

assign temp = in << shift_val;
assign out = temp;

endmodule

where the shifting is being performed on "in" (which is greater than 32 bits).

Solution

This problem is fixed in the latest 3.1i Service Pack, available at:
http://support.xilinx.com/support/techsup/sw_updates.
The first service pack containing the fix is 3.1i Service Pack 6.
AR# 9283
Date Created 05/16/2000
Last Updated 08/20/2002
Status Archive
Type General Article