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;

ええ、括弧が必要ないことは知っていますが、IMHO は VHDL コードをより「読みやすく」します。

于 2015-02-12T22:18:00.653 に答える