📄 detector.vhd
字号:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY detector IS
PORT (clk, x: IN STD_LOGIC;
mk: OUT STD_LOGIC);
END detector;
ARCHITECTURE xdetector OF detector IS
TYPE states IS (s0, s1, s2, s3, s4, s5, s6, s7);
SIGNAL state: states;
BEGIN
PROCESS (x, state)
BEGIN
IF rising_edge(clk) THEN
CASE state IS
WHEN s0 => mk <= ′0′;
IF (x = ′1′) THEN
state <= s1;
ELSE
state <= s0;
END IF;
WHEN s1 => mk <= ′0′;
IF (x = ′1′) THEN
state <= s2;
ELSE
state <= s0;
END IF;
WHEN s2 => mk <= ′0′;
IF (x = ′0′) THEN
state <= s3;
ELSE
state <= s2;
END IF;
WHEN s3 => mk <= ′0′;
IF (x = ′0′) THEN
state <= s4;
ELSE
state <= s1;
END IF;
WHEN s4 => mk <= ′0′;
IF (x = ′1′) THEN
state <= s5;
ELSE
state <= s0;
END IF;
WHEN s5 => mk <= ′0′;
IF (x = ′0′) THEN
state <= s6;
ELSE
state <= s2;
END IF;
WHEN s6 => mk <= ′0′;
IF (x = ′0′) THEN
state <= s7;
ELSE
state <= s1;
END IF;
WHEN s7 => mk <= ′1′;
IF (x = ′0′) THEN
state <= s0;
ELSE
state <= s1;
END IF;
END CASE;
END IF;
END PROCESS;
END xdetector;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -