print2.vhd

来自「用VHDL编写的简单POC(并行输出控制)程序」· VHDL 代码 · 共 42 行

VHD
42
字号
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY PRINT2 IS
	PORT (RDY: BUFFER STD_LOGIC; TR, CLK, RESET: IN STD_LOGIC);
END PRINT2;

ARCHITECTURE BEHAVIOR OF PRINT2 IS
	SIGNAL COUNT: INTEGER RANGE 0 TO 3;
    TYPE   STATE_TYPE  IS(WAITING,DOING);
    SIGNAL  PRINT:STATE_TYPE;
BEGIN
  
	PROCESS(CLK, RESET)
	BEGIN
	IF RESET = '1' THEN
		PRINT<=WAITING;
   ELSIF RISING_EDGE(CLK) THEN

CASE   PRINT   IS
WHEN  WAITING=>
		COUNT <= 0;
      RDY<='1';
      IF  TR='1'   THEN  
        PRINT<=DOING;
        RDY<='0';
        END  IF;
WHEN  DOING=>
      IF COUNT = 3 THEN
                COUNT<=0;
				RDY <= '1';
                PRINT<=WAITING;
		ELSIF RDY = '0' THEN
				COUNT <= COUNT + 1;
		END IF;

END  CASE;
	END IF;
	END PROCESS;
END BEHAVIOR;

⌨️ 快捷键说明

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