Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


FPGA Express: Concatenating select bits of mux causes error VSS-1029


Record #3735

Product Family:  Software

Product Line:  Synopsys

Problem Title:
FPGA Express: Concatenating select bits of mux causes error VSS-1029


Problem Description:
Keywords: VSS-1029, Foundation Express, FPGA Express, mux, select, bus

Urgency: Standard

General Description:
In FPGA Express, creating a simple mux in VHDL with two select bits causes
error when concatenating these two bits to form a two signal bus.  Such code
in VHDL could look like this:


begin
sel_bus <= s1 & s0;

process(sel_bus, a, b, c, d)

	begin
	case (sel_bus) is
		when "00" => out <= a;
		when "01" => out <= b;
		when "10" => out <= c;
		when "11" => out <= d;
	end case;
end process;


The error produced by Express is:

"Expression must be the name of an object whose subtype is locally static, or
it must be a qualified expression or type conversion whose type mark denotes
a locally static subtype. (VSS-1029)"

This error points to the line containing "case (sel_bus) is".


Solution 1:

The solution is to remove the parenthesis from line causing the error.	The
resulting code will look like this:


begin
sel_bus <= s1 & s0;

process(sel_bus,a,b,c,d)

	begin
	case sel_bus is
		when "00" => o <= a;
		when "01" => o <= b;
		when "10" => o <= c;
		when "11" => o <= d;
		when others => o <= '-';
	end case;
end process;



End of Record #3735

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals!

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents