我收到警告
[Synth 8-6014] Unused sequential element count_reg was removed.
当我合成以下代码时:
SPECCOUNT: process (clk, load_cnt)
variable count : integer := 0;
begin
if (rising_edge(clk)) then
if (count = load_cnt) then
count := count + 1;
overflow <= '0';
else
count := 0;
overflow <= '1';
end if;
end if;
end process SPECCOUNT;
警告意味着Synthesizer不需要变量来合成代码。它是否正确?
如果是,这怎么可能?
当不,是否需要修复错误?
答案 0 :(得分:2)
综合完全符合预期(假设“load_cnt”不是0;如果这是[MCVE],我们可以看到它是否是)
编写测试平台并模拟此单元,您将找到它可以完全消除“计数”的原因。