移位寄存器的设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四移位寄存器的设计

电科092 朱恩遇09401700324 1实验目的:掌握QuartusII的VHDL语言描述输入法

(1)掌握VHDL语言描述输入法

(2)掌握VHDL语言

(3)理解if语句进行描述计数器。

2 、实验内容

(1)设计一个移位寄存器

(2)根据VHDL语言描述输入法编译和波形仿真。

3 、实验要求

(1) 熟悉VHDL语言描述输入法

(2) 设计一个移位寄存器的VHDL程序,具有左、右移位,同步置数、同步清零等功

(3) 用QuartusII软件编译和波形仿真

(4) 把自己认为好的实验结果写成实验报告。(要计成绩)

4、实验步骤

程序:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity yw is

port(data:in std_logic_vector(5 downto 0);

left_da,right_da,reset,clk:in std_logic;

mode :in std_logic_vector(1 downto 0);

qout :buffer std_logic_vector(5 downto 0));

end yw;

architecture behave of yw is

begin

process

begin

wait until rising_edge(clk);

if(reset='1')then

qout<="000000";

else

case mode is

when"00"=>qout<=qout;

when"01"=>qout<=right_da&qout(5 downto 1);

when"10"=>qout<=qout(4 downto 0)&left_da;

when"11"=>qout<=data;

when others=>null;

end case;

end if;

end process;

end behave;

5.仿真结果

6.实验收获与体会

通过这次试验我学习到在quartus中怎么用编辑波形来对程序的实验验证,在波形仿真中对于各种快捷工具的使用,以及对其中器件的延时分析。其中就有编辑波形是的双击选定特定时间赋值的方法,这个我觉得非常有用。

从第一个试验的一无所知到现在的入门界别,当然我相信这只是一个开始,还有好多未知的东西在等着我。

相关文档
最新文档