计组硬件1117301田志阳.docx
- 文档编号:25039608
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:11
- 大小:47.67KB
计组硬件1117301田志阳.docx
《计组硬件1117301田志阳.docx》由会员分享,可在线阅读,更多相关《计组硬件1117301田志阳.docx(11页珍藏版)》请在冰豆网上搜索。
计组硬件1117301田志阳
硬件实验四运算器(两学时)
专业班级:
软工1512
姓名:
田志阳
学号:
2015117301
任课教师:
王峰
运算器也称作算术逻辑部件(ALU),是CPU中最主要的部件,用于处理各种算术、逻辑、移位运算。
1.1基本运算器实验
一、实验目的
了解运算器的组成结构;掌握运算器的工作原理。
二、实验设备
STARCOP2018实验仪一套、PC机一台。
三、实验原理
运算器原理图
运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),控制信号S3..S0、CN_I决定哪个部件工作、对操作数进行何种运算,S3..S0通过多路选择开关选择这个部件的结果作为ALU的输出;如果运算影响进位标志FC、零标志FZ、正负标志位FS,在T3状态的下降沿,结果分别锁存到FC、FZ、FS;I是中断允许标志位。
ALU中所有模块集成在一片CPLD中。
逻辑运算部件由逻辑门构成,较为简单,后一节有专门的算术运算部件设计实验,在此对这两个部件不再赘述。
移位运算采用的是8×8位桶形移位器,这样,可以使所有的移位操作都可以一次完成。
下图是一个4×4位桶形移位器
所有的输入通过交叉开关与所有的输出端相连。
如右移2位,第2条对角线(右移2)上的2个交叉开关接通,即第3位(in[3])右移至第1位(out[1]),第2位(in[2])移至第0位(out[0])。
又如右环移1位,第3条对角线(右移1)和第7条对角线(左3,3=4-1)同时有效,即可方便地实现右环移。
逻辑左移/右移只须把没连接的输出位同时充以“0”即可实现;算术右移也只须把没连接的输出位用符号位填充即可。
运算器部件由一片CPLD实现。
ALU的输出通过三态门连到CPU内部数据总线(iDBus)上,另外还有指示灯标明进位标志FC、零标志FZ、正负标志FS。
请注意:
图中T1、T2、T3、nRST已与CON单元相连,其它信号都来自于ALU单元的排针上。
实验仪所有单元的T1、T2、T3、nRST已与控制台(CON)单元的T1、T2、T3、nRst连接,nRst提供复位信号;T1、T2、T3是一个微指令周期的三个节拍,高电平有效,瞬间只有一个信号有效,初始状态T1、T2、T3都是低电平。
wA(允许写暂存器A)、wB(允许写暂存器B)、rALU(允许ALU结果输出到内部数据总线(iDBus)上),都是低电平有效。
暂存器A和暂存器B的数据能在LED灯上实时显示,原理如下图:
进位标志FC、零标志FZ、正负标志FS、内部数据总线iD7…iD0的显示原理与此类似;B、寄存器R0-3、堆栈寄存器SP、标志寄存器PSW(含FC、FZ、FS、I)共用R_0..R_7八个发光二极管,通过Select按键选择,按键上方的发光二极管指示R_0..R_7显示那个寄存器的值。
ALU功能表
运算类型
S3S2S1S0
CN_I
功能
逻辑运算
0000
0
F=A(直通)
0000
1
F=B(直通)
0001
X
F=A+B(或)
(FZ)
0010
X
F=A*B(与)
(FZ)
0011
X
F=A^B(异或)
(FZ)
0100
X
F=/A(取反)
(FZ)
移位运算
0101
0
F=A不带进位循环右移B(取低3位)位
(FZ)
1
F=A算术右移一位
(FZ)
0110
0
F=A逻辑右移一位
(FZ)
1
F=A带进位循环右移一位
(FC,FZ)
0111
0
F=A逻辑左移一位
(FZ)
1
F=A带进位循环左移一位
(FC,FZ)
算术运算
1000
0
F=A+B
(FC,FZ,FS)
1
F=A+B+FC
(FC,FZ,FS)
1001
0
F=A-B
(FC,FZ,FS)
1
F=A-B-FC
(FC,FZ,FS)
1010
0
F=A+1
(FZ)
1
F=NEGA(取补)
(FZ)
1011
X
F=A-1
(FZ)
其它
1100
X
置FC=CN_I
(FC)
1101
X
置I=CN_I
(I)
1110
(保留)
1111
(保留)
S3、S2、S1、S0、CN_I为控制信号,FC-进位标志,FZ-零标志,FS-正负标志,I-中断允许标志;表中功能栏内的FC、FZ、FS表示当前运算会影响到该标志。
*表中‘X’表示任意值,下同
四、实验步骤
1、连线说明:
ALU单元:
S0..S3(JP18)
——
开关区单元:
K20..K23(JP89)
ALU单元:
wA、wB、rALU、CN_I(JP19)
——
开关区单元:
K15..K12(JP92)
ALU单元:
ALU_D0..ALU_D7(JP25)
——
扩展区单元:
JP62
ALU单元:
IN0..IN7(JP22)
——
开关区单元:
K0..K7(JP97)
2、打开实验仪电源,按CON单元的nRST按键,将ALU的A、B、FC、FZ、FS、I清零;如果EXEC键上方指示灯不亮,请按一次EXEC键,点亮指示灯,表示实验仪在运行状态。
3、给暂存器A赋初值
(1)拨动开关区单元的K7..K0开关,形成二进制数01011000(或其它值);指示灯亮,表示该位是‘1’,灭为‘0’。
(2)拨动开关区单元K15(wA)、K14(wB)、K13(rALU)、K12(CN_I)开关,赋wA=0(允许写A)、wB=1(禁止写B)、rALU=1(不允许ALU输出)、CN_I=0,按CON单元的STEP按键一次,产生一个T1的下降沿,将二进制数01011000写入暂存器A中,ALU单元的A_7…A_0LED上显示A中的值
4、给暂存器B赋初值
(1)拨动开关区单元的K7..K0开关,形成二进制数10101011(或其它值)。
(2)赋wA=1(禁止写A)、wB=0(允许写B)、rALU=1(不允许ALU输出)、CN_I=0,按CON单元的STEP按键一次,产生一个T2的下降沿,将二进制数10101011写入暂存器B中,ALU单元的R_7…R_0LED上显示B中的值
5、赋wA=1(禁止写A)、wB=1(禁止写B)、rALU(K13)=0,按uSTEP键,进入T3节拍,
节拍
DS169
DS168
T1、T2、T3无效
(T1=0、T2=0、T3=0)
0
0
T1
(T1=1、T2=0、T3=0)
0
1
T2
(T1=0、T2=1、T3=0)
1
0
T3
(T1=0、T2=0、T3=1)
1
1
说明:
1-亮;0-灭
当rALU(K13)=0,
如果S3S2S1S0的值是0000时,T2、T3节拍时,允许ALU结果输出;S3S2S1S0的值是其它数值,T3节拍时,允许ALU结果输出,显示于扩展区的二位数码管、DS94..DS101的LED上。
6、根据后边的“运算结果表”,改变K20(S0)、K21(S1)、K22(S2)、K23(S3)、K12(CN_I)的值,观察并记录运算器的输出。
例如:
S0=0,S1=0,S2=0,S3=0,ALU的D7_D0=58H;FC、FZ、FS、I不变。
注意:
只有按CON单元的STEP按键一次,产生一个T3的下降沿,ALU才将标志位FC、FZ、FS、I写入标志寄存器PSW中,才能在ALU单元的FZ、FC、FS、I指示灯上看到结果。
如果实验仪、PC联机操作,则可通过软件中的数据通路图来观测实验结果,方法是:
打开软件,在星研软件的工具条中选择“运算器实验”,打开运算器实验的数据通路图。
进行上面的手动操作,点击工具条上单节拍或单周期命令图标,数据通路图会反映当前运算器所做的操作。
数据通路图
重复上述操作,并完成下表。
然后改变A、B、CN_I的值,验证FC、FZ、FS、EI的锁存功能。
运算结果表
运算类型
A
B
S3S2S1S0
CN_I
结果
逻辑运算
58
AB
0000
0
ALU=(58)FC=(0)FZ=(0)FS=(0)
58
AB
0000
1
ALU=(AB)FC=(0)FZ=(0)FS=(0)
58
AB
0001
X
ALU=(FB)FC=(0)FZ=(0)FS=(0)
0010
X
ALU=(08)FC=(0)FZ=(0)FS=(0)
0011
X
ALU=(F3)FC=(0)FZ=(0)FS=(0)
0100
X
ALU=(A7)FC=(0)FZ=(0)FS=(0)
移位运算
0101
0
ALU=()FC=()FZ=()FS=()
0101
1
ALU=()FC=()FZ=()FS=()
0110
0
ALU=()FC=()FZ=()FS=()
0110(FC=0)
1
ALU=()FC=()FZ=()FS=()
0110(FC=1)
ALU=()FC=()FZ=()FS=()
0111
0
ALU=()FC=()FZ=()FS=()
0111(FC=0)
1
ALU=()FC=()FZ=()FS=()
0111(FC=1)
ALU=()FC=()FZ=()FS=()
算术运算
1000
0
ALU=()FC=()FZ=()FS=()
1000(FC=0)
1
ALU=()FC=()FZ=()FS=()
1000(FC=1)
ALU=()FC=()FZ=()FS=()
1001
0
ALU=()FC=()FZ=(0)FS=()
1001(FC=0)
1
ALU=()FC=()FZ=()FS=()
1001(FC=1)
ALU=()FC=()FZ=()FS=()
1010
0
ALU=()FC=()FZ=()FS=()
1
ALU=()FC=()FZ=()FS=()
1011
X
ALU=()FC=()FZ=(0)FS=(0)
其它
1100
X
FC=()
1101
X
EI=()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 硬件 1117301 田志阳