2015-01-20 69 views
-2
Process(CLK,Clr,Set) 
begin 
    if Clr = '1' then Q <= '0'; 
    elsif Set = '1' then Q <= '1'; 
    elsif CLK'event and CLK <= '0' then Q <= D; 
    end if; 
end process; 

如果Clr = Set ='1'會發生什麼? Q的價值是什麼?VHDL將多個值分配給一個信號

+0

這看起來像一個家庭作業問題。通過跟蹤來看看兩者都是'1'時會發生什麼。考慮信號分配何時生效。 – 2015-01-20 19:06:21

回答

1

「if-elsif」是優先結構。執行解析爲TRUE的第一個替代方案。所有其他人都跳過了。

Blockquote如果Clr = Set ='1'會發生什麼? Q的價值是什麼?

由於Clr首先在您的代碼中,Q將變爲'0'。