⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mseq_sm.vhd

📁 这是一些经典的vhdl example
💻 VHD
字号:
LIBRARY IEEE; 
USE ieee.std_logic_1164.all ;
ENTITY mseq_sm IS
	PORT(
		clk		: IN	STD_logic;                          --时钟
		q	    : OUT	STD_logic_vector(2 DOWNTO 0));      --寄存器输出
END mseq_sm;
ARCHITECTURE behavier OF mseq_sm IS
	SIGNAL present_state: STD_logic_vector(2 downto 0);
	SIGNAL next_state: STD_logic_vector(2 downto 0);
BEGIN
	update :PROCESS(clk)			        --每个时钟上升沿,更新状态
    BEGIN
   	     IF (clk'EVENT AND clk='1') THEN     --状态更新
	 		present_state <= next_state;
	     END IF;
    END PROCESS update;

	statedecoder:PROCESS(present_state)					--状态译码
	BEGIN
		CASE present_state IS
			WHEN B"000" =>
					next_state <= B"001";
			WHEN B"001" =>
					next_state <= B"100";
			WHEN B"100" =>
					next_state <= B"010";
			WHEN B"010" =>
					next_state <= B"101";
			WHEN B"101" =>
					next_state <= B"110";
			WHEN B"110" =>
					next_state <= B"111";
			WHEN B"111" =>
					next_state <= B"011";
			WHEN B"011" =>
					next_state <= B"001";
			WHEN OTHERS =>						--多于状态处理
				    next_state <=B"000";
		END CASE;
	END PROCESS statedecoder;
	q<=present_state;     --输出译码
END behavier;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -