一、任务说明
1.主要任务
寄存器实验
2.目的与意义
基本要求
(1)理解CPU运算器中寄存器的作用;
(2)设计并验证寄存器组(至少四个寄存器);
(3)利用寄存器或组合逻辑电路实验移位运算功能(至少含左移、右移、循环左移、循环右移四种运算功能)。
扩展要求
(1)实现更多的寄存器;
(2)实现多总线结构寄存器访问;
思考内容
(1)思考随着寄存器的增多,电路设计的复杂度是什么比例增大;
二、设计思路
1.电路功能分析
在这次电路中,我们使用LOGICSTATE作为一个控制开关,用7 4LS373的主要功能是锁存要访问的存储器低8位地址,用74LS273作为缓冲时钟和直接清除输入,数据独立输入到各触发器。其中1D~8D为数据输入端,1Q~8Q为数据输出端。触发器是带有记忆功能的,包含有两个稳定状态的信息存储器件,也是构成多种时序电路的最基本逻辑单元,也是数字逻辑电路中的单元电路。
三、具体实现
1.整体设计
当进行写的操作时,不能进行写的操作,所以当选择RD时,那么WR为非,REGADD是低电平有效,所以连接是非,然后连接到NAND_3然后连接OE;当进行读操作的时候,就不进行写操作,所以当选择RD为非,WR为WR,REGADD是低电平有效,然后连接到AND然后连接到LE,当你的REGADD选择为0时,选择的寄存器为上面的那个,当你的REGADD为1时,选择的寄存器为下面的;当进行四个寄存器的时候,一个LOGICSTATE只能有两个选择,所以我决定用DIPSWC来设计电路,这样就可以有多余的选择,选择还是比较方便哒;
2.功能模块1设计及电路图
把74LS273和74LS373放下来,看一看哪个适合寄存器的器件,都是使用D0D1D2D3D4D5D6D7来输入信号,Q0Q1Q2Q3Q4Q5Q6Q7来输出信号,区别在于74LS273是使用CLK时钟信号,MR清零信号,而74LS373OE是输出允许,LE是输入允许;U1的OE是地电平有效,当输入为0时,OE无效,当输入为1时,OE有效;U2的MR当输入0是无效,输入1是有效;MR和OE都是低电平有效;
四、仿真测试方案设计
1.信号源设置
POWER LOGICSTATE
2.仿真测试结果
我验证的是CR=1,SR=1,CP为上升沿,最后结果由D3D2D1D0决定;D3D2D1D0=1010 最后结果为Q0为1,Q1Q2Q3由上次结果决定,是表中第三行
五、设计总结
完成这个实验,理解了CPU运算器中寄存器的作用,对寄存器有了直观的认识,让我可以更好的学习。
思考问题:随着寄存器的增多,电路设计的复杂度是什么比例增大?答:随着寄存器的增多,系统的寻址系统越来越复杂,每多一根地址线,寄存器的数量就可以扩大一倍,寻址系统相应的扩大N倍,所以随着寄存器的增多,电路设计的复杂度以1:(1+N)的比例增大。
附1.电原理图
二位寄存器:
四位寄存器:第一个图出现了小错误,完了加NOT之后可以解决;
图二为在二位寄存器上加了一个LOGICSTATE
附2.元器件及真值表
元器件:
74LS373 LOGICSTATE 74LS273
RESPACK DIPSWC POWER
AND_3 NAND_3 GROUND
74LS194
真值表