八位移位寄存器八位移位寄存器VHDL程序设计程序设计
本文主要讲了一下关于八位移位寄存器vhdl程序设计,希望对你的学习有所帮助。
用vhdl表示八位寄存器的程序如下所示:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity a is
port(clk:in std_logic;
data_in:in std_logic;
data_out:out std_logic_vector(7 downto 0));//定义输出为8位向量;
end a;
architcture art of a is //程序主体;
signal temp:std_logic_vector(7 downto 0);
begin
process(clk) //进程主体;
begin
if rising_edge(clk) then //等待脉冲上升沿到来;
temp<=temp(7 downto 1)&datain; //进行移位赋值;
end if;
end process;
end art;
VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可
靠性和缩减开发周期的一种使用范围较小的设计语言 。VHDL翻译成中文就是超高速集成电路硬件描述语言,主要是应用在数
字电路的设计中。它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。当然在一些实力较为雄厚的单位,它也被用来设
计ASIC。
8位移位寄存器
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY shifter IS
PORT (
data_in: IN STD_LOGIC_VECTOR(7 DOWNTO 0);--输入的数据
n: IN STD_LOGIC_VECTOR(2 DOWNTO 0);--移位的数量
dir: IN STD_LOGIC--移动的方向 0:左 1:右
kind: IN STD_LOGIC_VECTOR(1 DOWNTO 0);--移动类型 00:算术移 01:逻辑移 10:循环移
clock: IN BIT;--手动时钟PULSE
data_out: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--移位的结果
);
END shifter;ARCHITECTURE behav of shifter IS
评论0