0

Modelsim 告诉我嵌套的 if 语句存在语法问题,我无法确定问题所在。任何帮助都会很棒!

when ZERO =>
        if X_REG = '0' then 
            zero_sig <= '1';
            if zero_count = '15' then
               nextState <= ONE;
            else
               nextState <= ZERO;
            end if;
        else
            nextState <= ZERO;
            zero_reset <= '1';
        end if;
4

1 回答 1

0

假设这zero_count是一个数字(例如整数)类型:

when ZERO =>
    if (X_REG = '0') then 
        zero_sig <= '1';
        if (zero_count = 15) then
           nextState <= ONE;
        else
           nextState <= ZERO
        end if;
    else
        nextState <= ZERO;
        zero_reset <= '1';
    end if;

是的,我知道括号不是必需的,但恕我直言,它们使 VHDL 代码更“可读”。

于 2015-02-12T22:18:00.653 回答