- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五 数据通路
5.1实验目的
1.理解数据通路的组成结构;
2.熟悉ALU、移位寄存器、通用寄存器组的功能和设计方法;
3.掌握运算器的工作原理和信息传递的控制过程;
4.掌握双倍字长加减运算的方法。
5.2实验原理
运算器数据通路实验原理如 REF _Ref347128437 \h 图 5.1。图中没有标出CLK和RESET信号。CLK 信号是移位寄存器 SHIFTER、标志寄存器 PSW、通用寄存器组 GRS、暂存器 A 的时钟输入;RESET信号是PSW和暂存器 A 的复位输入。需要说明的是RESET信号由KEY0提供,从前面实验知道,KEY0按键按一次,产生的是一个负脉冲;而实验电路设计中的控制信号统一以高电平有效,所以将KEY0信号取反以后作为RESET信号。
图 5.1 运算器数据通路
ALU
本实验的ALU在上一个实验加减运算电路的基础上, 扩充了逻辑运算,共10种算术逻辑运算;由于实验板的开关数量有限,对运算控制信号进行了编码, REF _Ref347000362 \h 表 5.1给出了编码与运算功能的对应关系。
表 5. SEQ 表 \* ARABIC \s 1 1 ALU控制信号编码与运算功能
ALU_OP
ALU运算
0000
传送
0001
ADD
0010
ADDC
0011
SUB
0100
SUBB
0101
AND
0110
OR
0111
NOT
1000
XOR
1001
INC
1010
DEC
移位寄存器
移位寄存器具有左移、右移和并行输入功能。在时钟上升沿到来时,根据功能选择信号进行左移、右移、保存操作。和实验 REF _Ref380436174 \r \h 一的移位寄存器基本相同,不同的是对移位控制信号进行了编码(见 REF _Ref380480974 \h 表 5.2),以减少对实验板输入开关数量的要求。
表 5. SEQ 表 \* ARABIC \s 1 2 移位寄存器控制信号编码与操作
ST_OP
移位寄存器操作
00
不变
01
右移
10
左移
11
装入
通用寄存器组GRS
通用寄存器组GRS(General Register Set)包含4个4位的通用寄存器R0~R3,用来存放参加运算的操作数和运算结果。
顶层模块
PSW为状态标记寄存器;A暂存器也和一般寄存器相同。寄存器向总线输出需要增加三态缓冲,在前面实验 REF _Ref380436174 \r \h 中已经使用过三态缓冲器。在顶层模块,实例化各个模块的实例,并将各个模块连接起来。
4.3 预习要求
1)认真阅读、理解实验原理。
2)通过理论分析用铅笔填写实验操作和记录表中空白的栏目,以便实验时与实际结果对比。
4.4实验操作和记录
1.DATA→R1,DATA→R2
R1和R2寄存器中的内容在之后的实验操作中,均延用此步骤中存入的数值。为保证结果,后续表格操作前可先确认R1和R2寄存器中的值,若因为误操作发生改变,重新执行此表格,重置R1和R2寄存器的值。
DATA
DATAoe
INDEX
GRSce
GRSoe
Soe
CLK
GRS_Q
BUS
实验现象分析
①
1001
1
01
1
0
0
9
9
#1001→R1
②
1100
1
10
1
0
0
c
c
#1100-R2
③
—
0
01
0
0
0
0
9
—
确认R1内容
④
—
0
10
0
0
0
0
c
—
确认R2内容
2.(R1)+(R2)→ R3
执行下表操作前用RESET对PSW清零(同时也复位A暂存器和移位寄存器,对寄存器组不产生影响);DATAoe=0,使DATA开关输入不影响总线状态。
INDEX
GRSce
GRSoe
Ace
ALU_OP
PSWce
ST_OP
Soe
CLK
A
BUS
S_Q
PSW
GRS_Q
①
01
0
1
1
——
0
——
0
9
——
——
②
10
0
1
0
1
11
0
③
11
1
0
0
——
0
00
1
——
——
写出表中每一行所完成的操作:
R1→A;
R2-B__ALU.F-SHIFTER(保存)____________________________;
SHIFTER-R3___________________________________________;
运算完成后读出R3寄存器的值为__5_____,运算结果__不正确__(正确/不正确)。
实验现象分析:在①中BUS的值是由___R1___输出,②中BUS值是由__ALU.F___输出,③中BUS值是由_SHIFTER__输出。
仿照上述步骤,验证其他算术、逻辑运算。
3.(R1)→ R3
将R1的内容送到R3,仍然要经过ALU,并不能在寄存器组内部完成传送。操作步骤如下:
文档评论(0)