これは、VHDL を初めて使用する人にとって最も一般的な問題に違いありませんが、ここで何が間違っているのかわかりません。これは、私が適切なステート マシンの設計で見た慣用句のすべてに準拠しているようです。私はアルテラ Quartus 9.2 でコンパイルしています。実際のエラーは次のとおりです。
「[file] [line] の "spiclk_out" のレジスタを推測できません。これは、クロック エッジの外で値を保持していないためです」
ENTITY spi_state_machine IS
PORT(
spiclk_internal : IN STD_LOGIC;
reset : IN STD_LOGIC;
spiclk_out : BUFFER STD_LOGIC
);
END spi_state_machine;
PROCESS(spiclk_internal, reset)
BEGIN
IF reset = '1' THEN
spiclk_out <= '0';
END IF;
IF spiclk_internal = '1' AND spiclk_internal'EVENT THEN --error here
spiclk_out <= NOT spiclk_out;
END IF;
END PROCESS;
御時間ありがとうございます。