VHDL で 2 つのトライステート バッファーとプルアップ抵抗を備えた回路をシミュレートするコードを作成しようとしています。以下は私のコードです:
library ieee;
use ieee.std_logic_1164.all;
entity PullUpResistor is
port (
A, S, B, T : IN std_logic; -- select one of these four inputs
TriOut : OUT std_logic -- output (no ";" after last port)
);
end entity PullUpResistor;
architecture behavioral of PullUpResistor is
begin
process(A, S, B, T) is
when (S = '1') and (T = '0') => TriOut <= A;
when (S = '0') and (T = '1') => TriOut <= B;
when (S = '0') and (T = '0') => TriOut <= 'H';
when (S = '1') and (T = '1') => TriOut <= 'X';
end process;
end architecture behavioral;
near "when": syntax error
行である14行目でコンパイラエラーが発生していwhen (S = '1') and (T = '0') => TriOut <= A;
ます。私の人生では、構文エラーが何であるかを理解することはできません。
どんな助けでも大歓迎です。
ありがとう。