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

📄 fenpinqi.txt

📁 《分频器设计》绝对好用的EDA实验程序!已经通过测试。VHDL语言编写
💻 TXT
字号:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY singt IS
	PORT
	(
		CLK			:	IN 	STD_LOGIC;	--//信号源时钟
		DOUT		:	OUT	STD_LOGIC_VECTOR(7 DOWNTO 0)	--//8位波形数据输出
	);
END;

ARCHITECTURE DACC OF singt IS
	COMPONENT data_rom	--//调用波形数据存储器LPM_ROM文件:data_rom.vhd
		PORT
		(
			address		:	IN	STD_LOGIC_VECTOR(5 DOWNTO 0);	--//6位地址信号
			inclock		:	IN	STD_LOGIC;						--//地址锁存时钟
			q			:	OUT	STD_LOGIC_VECTOR(7 DOWNTO 0)
		);
	END COMPONENT;

		SIGNAL Q1 : STD_LOGIC_VECTOR(5 DOWNTO 0);	--//内部节点作为地址计数器
		
	BEGIN
			
		---------------------------
		PROCESS (CLK)
		BEGIN
			IF CLK'EVENT AND CLK= '1' THEN
				Q1<=Q1+1;
			END IF;
		END PROCESS;

	u1:data_rom PORT MAP(address=>Q1,q=>DOUT,inclock=>CLK);--//例化
END DACC;


             next_state<=S4;
         END IF;

      WHEN S4=>  OutputS<='0';  -- Detect 5th bit 0
         IF InputS= '1' THEN
             next_state<=S1;
         ELSE
             next_state<=S5;
         END IF;

      WHEN S5=>  OutputS<='0';  -- Detect 6th bit 1
         IF InputS= '1' THEN
             next_state<=S6;
         ELSE
             next_state<=S0; 
        -- if not ,back to s0,since none will be fit other than the s0
         END IF;

     WHEN S6=>  OutputS<='0';  -- Detect 7th bit 0
         IF InputS= '1' THEN
             next_state<=S2;
         ELSE
             next_state<=S7;
         END IF;

     WHEN S7=>  OutputS<='1';   --we have got the code
         IF InputS= '1' THEN    -- if 1,maybe the next cycle, to s1
             next_state<=S1;     
         ELSE
             next_state<=S0; -- if 0,maybe the next cycle, to s0
         END IF;
   END CASE;

END PROCESS state_comb;

GOT_N<=NOT OutputS;---FOR EASY TO SHOW ON THE LOW_LEVEL SENSITIVE LED


PROCESS(CLK)
BEGIN
IF(CLK'EVENT AND CLK='1') THEN
    present_state<=next_state;
END IF;
END PROCESS;
end a;

⌨️ 快捷键说明

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