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# 60054

Vivado Synthesis - "ERROR: [Synth 8-517]" is given when '0' and 'L' or '1' and 'H' values are both used in case statement


The following errors are given when Vivado synthesis detects 'L' and 'H' are used with '0' and '1' at the same time in a case statement.

ERROR: [Synth 8-517] overlapping choice 1'b0 in case statement [*/top.vhd:52]
ERROR: [Synth 8-517] overlapping choice 1'b1 in case statement [*/top.vhd:53]

Below is the code snippet:

case s is

when '1' => return(1);
when '0' => return(0)
when 'L' => return(1);
when 'H' => return(0);
when others => return(0);


This is expected behavior. 

Vivado synthesis treats 'L' and 'H'  the same as  '0' and '1'. 

This error is given when duplicate case items are detected.

To resolve this issue, use either '0'/'1' or 'L'/'H' in the case statement.

AR# 60054
Date Created 04/01/2014
Last Updated 04/16/2014
Status Active
Type Known Issues
  • Vivado Design Suite