VHDL 中多个if else的问题!!!!!!!!!!!!!

2024-12-16 17:26:27
推荐回答(2个)
回答1:

if(en='0') then
count_sig<=count_sig;
elsif(m_reset='1') then
count_sig<='00000';
elsif(m_reset='0')then 这个elseif多余,直接用else,或者和下面的if一起用elsif(p_load='1)then
if(p_load='1') then
elsif (updown='1') then
count_sig<=count_sig+1;
elsif(updown='0') then 错误同上,ifelse本身就是if(updown='0')的意思,没必要再判定条件
count_sig<=count_sig-1;
else
count_sig<=P;
end if;
end if;
如果你还想不清楚的话,就画一个二叉树,else用在同一层的判定中,而elseif则用在下一层,自己好好想想

回答2:

其实就是简单的逻辑嵌套,注意end if 的使用。
你问题的描述也很乱,说实话看不懂~。问题描述清楚了别人才好帮你解答啊