文档介绍:河南科技学院新科学院
EDA课程设计报告
题目:32位移位寄存器设计
专业班级:电气工程及其自动化106
姓名: 程琦
指导教师: 付广春
完成日期:2013年01月 01 日
32位双向移位寄存器设计
设计要求:完成以下功能特性的双向 32 位移位寄存器。同时要求有使能端,用 1602 显示。
摘要:移位寄存器的功能即是对每一个上升沿到来时,并且寄存器使能是0时,对输入按照移位模式控制信号的要求实现输出的左移和右移。32位移位寄存器可有4个八位的移位寄存器的逻辑关系来实现
关键词:寄存器,上升沿,使能端
1 引言
移位寄存器使我们学习生活包括开发研究道路上不可或缺的一部分。随着社会的发展,社会主义市场经济不断繁荣,各种装饰用的流水灯、广告彩灯、宣传画越来越多的出现在人民的生活当中,在大型晚会的现场,更是用的淋漓尽致,这些装饰控制设备多数要用移位寄存器来实现,因此,移位寄存器的研究和设计就变的至关重要。
2 总体设计方案
因移位寄存器由多种不同的描述和设计方案,我们可以依据要求设列出最好最简单的设计方案。首先,要完成双向的32位移位寄存器,就首先必须要实现8位移位寄存器作为基础。其次,在4个8个移位寄存器的基础上达到32位移位寄存器的功能。第一要有模式控制输入,来控制移位寄存器的移位方向;第二,有使能端,即在什么情况下移位寄存器才可以正常工作,才可以实现模位控制,是左移还是右移,这就要求使能是模式控制输入的前提;然后是脉冲控制信号,由题意可知,移位寄存器是在上升沿触发的,即在每一次上升沿到来时,移位寄存器使输入按照模位控制的要求向左或向右移一位;最后输入和输出,都要用到32并行输入和输出。
设计思路
① 8位移位寄存器
由设计要求可知,要实现8位的双向移位寄存器,并且还有使能端。我们可令CLK为移位时钟信号,D为8位并行预置数据端口,LOAD为并行数据预置使能信号,QB为串行输出端口,LEFT_RIGHT为移位模式控制数。此移位寄存器的工作方式是:当CLK得上升沿到来时,过程被启动,如果这时预置使能端LOAD为低电平,且移位模式控制数LEFT_RIGHT为1时,则最高位被移入寄存器中,其他7位依次左移一位同步并行置入移位寄存器中;如果移位模式控制数LEFT_RIGHT为0时,则最低位被移入寄存器中,其他7位依次左移一位同步并行置入移位寄存器中。但如果这时预置使能端LOAD为高电平时,则移位寄存器将输入数据并行依次送往输出,最后在8位的基础上来实现32位的更高功能。
② 32位移位寄存器
在8位的基础上,运用元件例化,引入一种逻辑关系,将预先设计好的8位移位寄存器模块定义为一个元件,然后利用特定的语句将此元件与当前的设计实体中指定端口相连接,从而为32位移位寄存器的设计实体引进一个新的、低一级的设计层次。
3 设计原理分析
分布设计
① 8位移位寄存器的设计
当使能端使能,即LOAD=0,且脉冲信号上升沿到来时,可根据移位模式控制数LEFT_RIGHT来确定移位的方向,若移位模式控制数LEFT_RIGHT=0,则实现循环向右移,这时可先将输入的最低位放入输出的最高位寄存器中,输出的其他位依次向右移一位,放入输出的低7个寄存器中,可用以下语句实现: REG[7]<=d[0] ; RE