VHDL 为一个信号分配多个值
VHDL Assigning Multiple Values to One Signal
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值是多少?
"if - elsif"是一个优先结构。执行解析为 TRUE 的第一个备选方案。所有其他的都被跳过。
Blockquote What happens if Clr = Set = '1'? What is the value of Q?
由于 Clr 在您的代码中排在首位,因此 Q 将变为“0”。
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值是多少?
"if - elsif"是一个优先结构。执行解析为 TRUE 的第一个备选方案。所有其他的都被跳过。
Blockquote What happens if Clr = Set = '1'? What is the value of Q?
由于 Clr 在您的代码中排在首位,因此 Q 将变为“0”。