Using select? Statements - 2023.2 English

Vivado Design Suite User Guide: Synthesis (UG901)

Document ID
UG901
Release Date
2023-11-01
Version
2023.2 English

Like the case, the select statement now has a way to deal with explicit don’t care assignments. When using the select? statement, the tool now evaluates explicit don’t care terms, for example:

process(clk) begin
if clk'event and clk='1' then
with my_reg select?
out1 <= in1 when "11--",
in2 when "000-",
in3 when "1111",
in4 when others;
end if;
end process;
Note: For this statement to work, the signal in question must be assigned an explicit don’t care.