双向移位寄存器

上传人:ni****g 文档编号:476869385 上传时间:2023-09-30 格式:DOCX 页数:7 大小:324.01KB
返回 下载 相关 举报
双向移位寄存器_第1页
第1页 / 共7页
双向移位寄存器_第2页
第2页 / 共7页
双向移位寄存器_第3页
第3页 / 共7页
双向移位寄存器_第4页
第4页 / 共7页
双向移位寄存器_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《双向移位寄存器》由会员分享,可在线阅读,更多相关《双向移位寄存器(7页珍藏版)》请在金锄头文库上搜索。

1、学生实验报告实 验 课 名 称: VHDL 硬件描述语言实验项目名称:双向移位寄存器专业名称:电子科学与技术班级:学号:学生姓名:教师姓名:2010 年_11月 _13日实验日期2010 年 11 月 13_日 实验室名称成绩一、实验名称:双向移位寄存器二、实验目的与要求: 设计一个双向移位寄存器,理解移位寄存器的工作原理。掌握串 入/并出端口控制的描述方法。在 QuartusII 上进行功能和时序仿真,之后通过器件及其端口配置 下载程序到SOPC开发平台中。1, 用实验平台的按键实现时钟控制(elk),方向控制(dir),清零 (clr)以及数据输入(din)。2, 用实验平台上的LED发光

2、阵列的LED1LED8显示并行数据的 输出。三、实验内容:通过VHDL编程,实现双向移位寄存器,要求有一个方向控制端, 一个脉冲输入,一个异步清零端,一个数据输入端以及 8 位的数 据输出端。1. 打开 QuartusII 软件,建立一个新的工程。2. 建立VHDL文件。3. 建立矢量波形文件。4. 进行功能仿真。5. 进行时序仿真。6. 器件的下载。四、实验条件:1. WindowsXP 操作系统2. QuartusII EDA 开发系统3. 杭州康芯SOPC硬件开发平台五、实验原理:通过VHDL编程,实现双向移位寄存器,要求有一个方向控制端, 一个脉冲输入,一个异步清零端,一个数据输入端以

3、及 8 位的数 据输出端。具体的接口如下所示:elk:移位寄存器时钟脉冲输入,上升沿有效。 din:串行数据输入端。elr:异步清零信号,高电平有效。dir:方向控制端,要求高电平右移,低电平左移。dout7.0:8 位数据并行输入端。硬件设置原理:根据要求设置个端口,键 7 为时钟控制端,键 8 为数据输入 端,键1为方向控制端,键5为异步清零。用LED发光阵列的LED 1 LED8显示并行数据的输出,依次相对应为dout7dout0. 根据模式 7 对应的开发系统 I/O 管脚映射表以及 I/O 模式 7 示意 图为每一个端口指定引脚。调试原理:软件调试:1、当设置为左移时,低位依次将自己

4、的值给高一位,最后将 din 给 q0 ,然后将 q 赋值给 dout;2、当设置为右移时,高位依次将自己的值给低一位,最后将 din 给 q7 ,然后将 q 赋值给 dout;3、观察结果是否符合结果。在验证结果时,首先进行功能仿真, 观察结果,调试程序,在进行时序仿真。硬件调试:根据端口对应设置端口,设置dir值和输入,观察LED 1LED8改 变是否和要求一致;再设置键5 异步清零端,观察 LED1LED8 的 变化。六、源代码library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity d

5、_reg isport(clk,din,clr,dir:in std_logic;dout:out std_logic_vector(7 downto 0); end entity d_reg;architecture one of d_reg isbegin process(clr,clk) variable q:std_logic_vector(7 downto 0);beginif(clr=1)then dout=00000000;elsif(clkevent and clk=1)then if(dir=1)thenfor i in 1 to 7 loop q(i-1):=q(i);en

6、d loop;q(7):=din; dout=q;elsif(dir=0)thenfor i in 6 downto 0 loopq(i+1):=q(i);end loop;q(0):=din;dout彳Pointer:dir+1 doutdout 0doutl dout2 doutCSdout 4 dout 5 dout6 doutTmXiQi:.2,时序仿真Qaaitus II - C:/Docments and Settings/HP/W/VHD/d_reg/d_reg - d_reg - Siaulation Report - Siaulation laveforis曾 File Ed

7、it View Project kssipnents ocessio Tools Tindov Help匸凰区|d_negSiaultion TvcfrasDevice Design FilesSoftware FilesOther filesDHigdichy-直 Fiet Design Urits |Project Navigator:Jx|Sirralation node: TitingMarierlmeBar1&45ns 出 FVyter 200.49 ns Interval18404n$ StartEnd::RlineValu &tIE. *5 nsps 80.0 as 160 0

8、ns 240.0 ns 320.0 os 400.0 ns 480 0 ns 560.0 ns 640.0 ns 720.0 as 900.0 ns 880.0 ns 960 0 ns *iiiiiiiiiiii16. ascliB 1drB 0dinB 1dirB 1 domtB OOOOOOCdcnitOB 0dknitlB 0dirat2B Ddcnit3B 0dcnit4B 0dlcnit5B 0dlcnit6B 0iratTB D说明:当输入为“1”,并且方向设置为“左”时,两次时钟脉冲控制之 后的数据移位情况。说明:输入为“0”时,再经过两个时钟脉冲移位之后的移位情况。说明:再把方

9、向设置为“右”时,一次时钟脉冲控制之后的数据移位情 况。八、讨论和回答问题及体会:1.实验室的 QuartusII 在第一次不能进行下载调试。通过安装相 应的证书文件解决了上述问题。2. 在进行编译的时候,使用了较多的 if 循环嵌套判断语句,会导 致了仿真波形处出现了很大的延迟。改为使用 case 语句,降低了 延迟,达到比较好的波形仿真效果。3. 安装驱动程序,此 USB 设备的驱动处于 QuartusII 安装目录中 的driversusb-blaster 中,进行 USB 装载连接。4 通过使用 VHDL 对双向移位寄存器的编写可以更加深刻的了解其 功能。在编写过程中对 VHDL 语言程序得到了加深和熟悉,巩固了 所学的知识。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号