2016-09-21 16 views
0

誰かがこのvhdlコードを 'when'ステートメントを使用するように変更する方法を教えてくれますか?whenステートメントに変更する方法

library IEEE; 
use IEEE.std_logic_1164.all; 

entity sel2_1 is 
    port(A, B, SEL : in std_logic; 
     outsgnl : out std_logic); 
end sel2_1; 

architecture EX1 of sel2_1 is 
begin 
    outsgnl <= (not SEL and A) or (SEL and B); 
end EX1; 

次のようにシミュレーション結果は次のとおりです: simulation

+0

私は上記の質問を編集し、シミュレーション結果を入れました。私はステートメントを使用して、私は同じ正確な結果を期待して、VHDLコードを変更しようとしています。 – HAKIM

答えて

2

キーワードが異なるVHDLの割り当てに使用されている場合はここ

は、私が書いたコードです。 SELと仮定するとあなたはまた、あなたが頻繁にの条件付き信号の割り当てを使用することができ、多くの場合、割り当て

with SEL select outsgnl <= 
    A when '0', 
    B when others; 

/選択と称する、選択信号割付によって

outsgnl <= (not SEL and A) or (SEL and B); 

を置き換えるsimpleyことができる唯一の'0'または'1'ですwhen/elseと呼ばれる。

outsgnl <= A when SEL = '0' else B; 
+0

ありがとうございました!上記のシミュレーションと同じように動作します。 – HAKIM

関連する問題