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

📄 shfrt.txt

📁 基于vhdl的移位寄存器设计
💻 TXT
字号:
--**************************************************************************************
--  Author		: 白银河
--  Date  		: 20011/04/26
--  Function	: 16位带有并行预置功能的右移移位寄存器,CLK1是时钟信号,
--		   		  LOAD是并行数据使能信号,QB是串行输出端口
--		   		  输出16位数据的最低位。	
--  CPLD   		: EPM1270T144C5
--  C Compiler 	: Quartus II 7.2 (32-Bit)            
--**************************************************************************************
--************************************库定义、 包定义***********************************
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
--***************************************实体定义***************************************
ENTITY YIWEI IS
PORT(	CLK1 : IN STD_LOGIC;---16路光耦TLP181状态判断		
		OP_STATE : IN STD_LOGIC_VECTOR(15 DOWNTO 0);
		LOAD : IN STD_LOGIC;
		QB : OUT STD_LOGIC;--分频
		REG: OUT STD_LOGIC_VECTOR(15 DOWNTO 0)
	);
END YIWEI;
--**************************************结构体定义**************************************
ARCHITECTURE shfrt OF YIWEI IS
--SIGNAL QB : STD_LOGIC;--分频
BEGIN
--*****************************16路光耦TLP181状态判断模块*******************************
PROCESS(CLK1)--用移位来判断
VARIABLE REG16: STD_LOGIC_VECTOR(15 DOWNTO 0);
	BEGIN
	IF CLK1'EVENT AND CLK1 ='1' THEN 
		IF LOAD='1' THEN REG16 := OP_STATE;--由 LOAD='1' 装载新数据
		ELSE REG16(14 DOWNTO 0) := REG16(15 DOWNTO 1);
		END IF;
	END IF;
	QB<=REG16(0);REG<=REG16;
END PROCESS;	
END shfrt;

⌨️ 快捷键说明

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