计算机结构与组成实验报告.docx

上传人:b****8 文档编号:29368315 上传时间:2023-07-22 格式:DOCX 页数:40 大小:73.71KB
下载 相关 举报
计算机结构与组成实验报告.docx_第1页
第1页 / 共40页
计算机结构与组成实验报告.docx_第2页
第2页 / 共40页
计算机结构与组成实验报告.docx_第3页
第3页 / 共40页
计算机结构与组成实验报告.docx_第4页
第4页 / 共40页
计算机结构与组成实验报告.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

计算机结构与组成实验报告.docx

《计算机结构与组成实验报告.docx》由会员分享,可在线阅读,更多相关《计算机结构与组成实验报告.docx(40页珍藏版)》请在冰豆网上搜索。

计算机结构与组成实验报告.docx

计算机结构与组成实验报告

 

大连理工大学

 

本科实验报告

 

课程名称:

计算机组成与结构实验

学院(系):

软件学院

专业:

软件工程

班级:

0821班

学号:

200891239

学生姓名:

姜晓宇

 

2010年7月3日

实验项目列表

序号

实验项目名称

学时

成绩

指导教师

预习

操作

结果

1

部件实验

12

刘善射

2

一位数乘法程序实验

16

刘善射

3

二位数乘法程序实验

8

刘善射

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

总计

学分:

1.5

36

 

大连理工大学实验报告

学院(系):

软件学院专业:

软件工程班级:

0821班

姓名:

姜晓宇学号:

200892139组:

___

实验时间:

第12周实验室:

C区108实验台:

9

指导教师签字:

成绩:

 

部件实验—总线数据传输实验

一、实验目的

了解总线的作用及数据传输的原理

实验要求

将两个需要交换的数据分别写入373和374中进行储存,再使用RAM作为第三方介质来交换这两个数据。

二、实验原理和内容(含CPU结构框图其中要把信号连线加方向标,并要把IR寄存器与微译码器联系起来。

实验原理

三态门、锁存器、寄存器、RAM之间的数据传输均要先使OE有效,将数据输出到总线上,然后数据接受方从总线上将数据写入或锁存。

同时根据脉冲信号的有效性来控制输入或输出以及交换数据的进行,并且以三态门来隔离总线对数据的干扰。

 

CPU结构框图如下:

A9……A0

RAM

MCLKMWR

MENMOE

DB

CI(7)

CI(0)

373

374

377

244

OE

GTOEOECK

S7…S0L7...L0

开关输入显示灯

上图中,RAM采用XC2S150内部的RAM组件,它为512×8,有10位地址(A9~A0),8位数据,四根控制线:

CLK—时钟(MCLK),在有跳变时才执行。

行写入或改变读出内容;EN—允许MEN(S15,1有效);WE写入MWR(S16,1有效);RST复位(不用)。

由于该RAM的输出不为三态,故加入MOE(S23,1有效)作为三态控制。

DB为数据总线,接CI(7—0)。

244为三态门,用于从开关(S7-S0)输入数据到总线上,OE(S13,1有效)三态输出允许,373为三态输出的透明锁存器,GT(S11,1有效)为三态输出允许,374为带三态输出的寄存器,CK,(s10,打入脉冲)为时钟,OE(S9,1有效)三态输出允许。

377为8位寄存器,CK为时钟,EN(S8,1有效)时钟允许,377输出接8个LED(L7-L0)。

三、主要仪器设备(所用设备名称、型号)

含有XC2S150内部RAM组件的FD-MCES实验仪;一台PC机

四、

开始

实验步骤与方法

步骤流程图:

把另一个不同数据送到374

中,上拨S13,S10

(上拨S13,S10)

从开关通过244把一个数据

输入到373,上拨S11,S13

 

把373的数据送到RAM中

上拨S12,S16,S15

S16,S15)

 

把374的数据送到373中

上拨S9,S11

S11)

 

把RAM的数据传送到374中

上拨S23,S10

S10)

 

结束

五、实验数据记录和处理

每次上拨开关后观测显示灯亮的情况,具体结果见下题

六、实验结果与分析

1.第一次上拔s12时,灯L0-L7中L0-L4亮;说明数据11110000已送入373.

2.第一次上拔s9时,灯L0-L7中L1,L2,L3,L7灯;说明01110001已送374.

3.第二次上拔s12时,灯L0-L7中L1,L2,L3,L7亮;

第二次上拔s9时,灯L0-L7中L0-L4亮;说明373,374中的数据交换成功

七、讨论、建议、质疑

实验体会:

通过本次实验,我对计算机内部数据的存储,数据在总线上的传输有了进一定的了解。

例如,向总线传入数据时,三态门使寄存器或锁与总线隔离,发送或接受数据之前需要先是输出或出入有效;要实现数据在部件之间传递,总线的桥梁作用不可或缺——这些以前在课本上的知识终于通过具体的实践得到了验证!

本次实验虽然简单,但如此近距离地操作计算机内部构件,还是多少能够提升自身的动手操作能力,唯一的缺憾是实验很快就能结束,希望能够再拓展一些内容。

 

大连理工大学实验预习报告

学院(系):

软件学院专业:

软件工程班级:

0821班

姓名:

姜晓宇学号:

200892139组:

___

实验时间:

第14周实验室:

C区108实验台:

9

指导教师签字:

成绩:

一位数乘法程序实验

一、实验目的和要求(此处不写)

二、实验原理和内容(只列一位数乘法的*.LST文件,内有注释行).

一位数乘法的*.LST文件:

10000ORG0

20000STRT:

30000600000JKBSTRT键盘输入被乘数

40003408001LDA8001H

500060FMOVR7,A

60007L1:

70007600007JKBL1键盘输入乘数

8000A408001LDA8001H

9000D0EMOVR6,A打印*

10000E3004MOVA,#4

110010488002STA8002H

120013L2:

130013680013JPBL2空打

140016300AMOVA,#0AH

150018488002STA8002H

16001BL3:

17001B68001BJPBL3打印被乘数并换行

18001E3010MOVA,#10H

19002027ADDA,R7

200021488002STA8002H

210024L4:

220024680024JPBL4打印=

2300273009MOVA,#9

240029488002STA8002H

25002CL5:

26002C68002CJPBL5空打

27002F300AMOVA,#0AH

280031488002STA8002H

290034L6:

300034680034JPBL6打印乘数值并换行

3100373010MOVA,#10H

32003926ADDA,R6

33003A488002STA8002H

34003DL7:

35003D68003DJPBL7

360040300AMOVA,#0AH空打

370042488002STA8002H

380045L8:

390045680045JPBL8

400048300AMOVA,#0AH空打

41004A488002STA8002H

42004D3D00MOVR5,#0将0置入R5

43004F3B00MOVR4,#0将0置入R4

440051L9:

450051680051JPBL9

4600543801MOVR0,#1将1置入R0

47005606MOVA,R6将被乘数置入ACC

48005728SUBA,R0被乘数-1

4900580EMOVR6,A结果放回R6

500059500065JCN1判断R6是否<0

51005CL10:

52005C68005CJPBL10累积乘数

53005F07MOVA,R7将乘数置入ACC

54006025ADDA,R5+累加的和

5500610DMOVR5,A将此时的和放回R5

560062580051JMPL9返回继续累加

570065N1:

5800653A0AMOVR2,#10将10置入R2

59006705MOVA,R5将累加结果置入ACC

6000682ASUBA,R2累加结果-10

610069500074JCN2判断是否<10

62006C0DMOVR5,A将差放回R5

63006D3001MOVA,#1将1置入ACC

64006F23ADDA,R41+R4

6500700BMOVR4,AR4+1后放回R4

660071580065JMPN1返回继续-10

670074N2:

开始打印结果

680074680074JPBN2

69007705MOVA,R5打印个位

700078488002STA8002H

71007BL11:

72007B68007BJPBL11打印十位并换行

73007F3C10MOVA,#10H

74008124ADDA,R4

750082488002STA8002H

760085580000JMPSTRT回到初始状态

三、实验步骤(只写出该程序的流程图即可)

STRT

置R2=10

键盘输入否

N

R5=R5-R2

被乘数=>R7

R5>=10

N

键盘输入否

N

R4=R4+1

Y

Y

乘数=>R6

依次打印*、被乘数、=、乘数

R5=>A=>打印机

打印个位

依次设置R5=0、R4=0、R0=1

R4=>A=>打印机

打印十位

R6=R6-R0

R6>=0

N

Y典型结果:

9_*

R5=R5+R7

8_=

56

大连理工大学实验报告

学院(系):

软件学院专业:

软件工程班级:

0821班

姓名:

姜晓宇学号:

200892139组:

___

实验时间:

15-16周实验室:

C区108实验台:

9

指导教师签字:

成绩:

 

二位数乘法程序实验

一、实验目的

1.了解微程序计算机的工作原理及实现方法

2.初步学会微程序设计的方法并独立设计简单的位乘法程序。

实验要求

1.创建指令集文件(*.DEF)

2.创建微程序文件(*.M19)

3.编写二位乘法程序并调试生成最终结果

二、实验原理和内容(含CPU结构框图其中要把信号连线加方向标,并要把IR寄存器与微译码器联系起来。

12条指令集(*.def)与指令流程表以及12条指令所对应的微程序表)另外写出微程序控制计算机的原理。

1)CPU结构框图(见下页):

A为累加器,CA为它的打入脉冲,X0、X1为选择控制器,X1X0=11为并行接数:

01为右移一位,10为左移一位,00为无操作。

另外有SL、SR分别为左移、右移的串行数据移入端。

ACT为暂存寄存器,CC和CG分别为它的打入脉冲和允许端:

R0-R7为8个寄存器,RA、RB、RC为选择端,用于选择中某个寄存器,WRC和WRE分别为写入脉冲和允许端。

ALU为8位的算术逻辑运算单元,FA、FB为两路输入,FF为输出;S2、S1、S0用于选择工作方式。

CIN为加法的进位输出或减法的借位输出。

如果需执行带进位(或借位)的加法(减法)时,ALU应该还有进位输入。

OB为三态门的控制端,将ALU输出的数据加至总线。

IR为指令寄存器,它存放指令的第一字节,CIR和GI分别为它的打入脉冲和允许端。

ADRH和ADRL为第二、三字节寄存器,存放直接寻址指令的16为地址值。

CA2、CA1和GA2、GA1分别为它们的打入脉冲和允许端。

PC为16为程序计数器。

PCK为脉冲端,PINC为加1控制端。

PLD为并行接数控制端,它的输入端来自多路开关,可选择为“1”、“0”。

CY。

其中“1”对应于JMP指令,CY对应于JC指令,KRIX对应于JKB指令,PRIX对应于JPB指令,其他情况接“0”。

PC的输出和ADR的输出通过多路开关加至地址总线AB。

2.)12条指令集(*.DEF):

-MOV

A,Ri

00000iii

-MOV

Ri,A

00001iii

-ADD

A,Ri

00100iii

-SUB

A,Ri

00101iii

-MOV

A,#data8

00110000

dddddddd

-MOV

Ri,#data8

00111iii

dddddddd

-LDA

addr

01000000

aaaaaaaa

aaaaaaaa

-STA

addr

01001000

aaaaaaaa

aaaaaaaa

-JC

addr

01010000

aaaaaaaa

aaaaaaaa

-JMP

addr

01011000

aaaaaaaa

aaaaaaaa

-JKB

addr

01100000

aaaaaaaa

aaaaaaaa

-JPB

addr

01101000

aaaaaaaa

aaaaaaaa

-enddef

 

3.)指令执行流程表:

指令助记符

指令功能

指令编码

1716151413121110

微操作

控制信号

控制信号的有效性

取微指令

T0

(PC)->AB

(M)->IR

(PC)+1->PC

(A)->ACT

MXAI

MPLD,GI,CRD

PINC

CG

0

0,0,0

1

0

MOVA,Ri

A->(Ri)

00000iii

T1

(Ri)->ALU->DB->A

S2,S1,S0

OBX1,X0

0,1,1

0,1,1

MOVRi,A

Ri->(A)

00001iii

T1

(ACT)->ALU->DB->Ri

S2,S1,S0,OB,WRE

0,1,0,0,0

ADDA,Ri

(A)+Ri->(A)

00100iii

T1

(ACT)+(Ri)->DB->A

->CIN->CY

S2,S1,S0,OB,X1,X0,CP

0,0,0,0

1,1,0

SUBA,Ri

(A)-Ri→A

00101iii

T1

(ACT)-(Ri)->DB->A

->CIN->CY

RC,RB,RA,S2,S1,S0,

OB,X1,X0,CP

I2,I1,I0,0,0,

1,0,1,1,0

MOVA,#

data8

data8→A

00110000

dddddddd

T1

(PC)→AB

(M)→DB→A

(PC)+1→PC

MXA1

X1,X0,CRD

PINC

0

1,1,0

0

MOVRi,#

data8

data8→Ri

00111iii

dddddddd

T1

(PC)→AB

(M)→DB→Ri

(PC)+1→PC

MXA1

WRE,RC,RB,RA,WRD

PINC

0

0,I2,I1,I0,0

1

LDAaddr

(addr)→A

01000000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

(PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB,(M)→A

MXA1,GA2,PINC,CRD

 

MXA1,GA1,PINC,CRD

 

MXA1,CRD,X1,X0

0,0,1,0

 

0,0,1,0

 

1,1,1,0

STAaddr

(A)→addr

01001000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

(PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB

(ACT)→ALU→DB→M

MXA1,GA2,PINC,CRD

 

MXA1,GA1,PINC,CRD

 

MXA1,OB,CWR

0,0,1,0

 

0,0,1,0

 

0,0,1,0

JCaddr

IfCY=1

then

addr→PC

else

(PC)+3→PC

01010000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

(PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB

(cy=1)→PC

MXA1,GA2,PINC,

CRD

MXA1,GA1,PINC,

CRD

MXA1,PL2,PL1,PL0

0,0,1,0

 

0,0,1,0

 

1,0,0,1

JMPaddr

addr→PC

01011000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

(PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB→PC

MXA1,GA1,PINC,CRD

 

MXA1,GA2,PINC,CRD

 

MXA1,PL2,PL1,PL0

0,0,1,0

 

0,0,1,0

 

1,0,1,0

JKBaddr

IfKRIX=0

then

addr→PCelse

(PC)+3→PC

01100000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB_

(KRIX=0)→PC

MXA1,GA2,PINC,CRD

 

MXA1,GA1,PINC,CRD

 

MXA1,PL2,PL1,PL0

0,0,1,0

 

0,0,1,0

 

1,0,1,1

JPBaddr

IfPRIX=0

then

addr→PCelse

(PC)+3→PC

01101000

aaaaaaaa

aaaaaaaa

T1

 

T2

T3

(PC)→AB,

(M)→ADRH

(PC)+1→PC

(PC)→AB,

(M)→ADRL

(PC)+1→PC

(ADR)→AB_

(PRIX=0)→PC

MXA1,GA2,PING,CRD

 

MXA1,GA1,PING,CRD

 

MXA1,PL2,PL1,PL0

0,0,1,0

 

0,0,1,0

 

1,1,0,0

4.)微程序表

指令

助记符

30

29

28

27

26

25

24

21

18

16

15

14

13

12

11

10

9

7

2

1

0

信号

S2

S1

S0

CIN

X1

X0

CG

CP

WRE

OB

GI

GA1

GA2

PINC

PL2

PL1

PL0

MXA1

CWR

CRD

MPLD

微指令码

16进制

有效

电平

*

*

*

*

*

*

0

0

0

0

0

0

0

1

*

*

*

*

0

0

0

微地址

取指令

0000H

0

0

0

0

0

0

0

1

1

1

0

1

1

1

0

0

0

0

1

0

0

00257004

mova,ri

0007H

0

1

1

0

1

1

1

1

1

0

1

1

1

0

0

0

0

0

1

1

1

3724E287

0008H

0

0

0

0

0

0

0

1

1

1

0

1

1

1

0

0

0

0

1

0

0

00257004

movri,a

000FH

0

1

0

0

0

0

1

1

0

0

1

1

1

0

0

0

0

0

1

1

1

2120E007

0010H

0

0

0

0

0

0

0

1

1

1

0

1

1

1

0

0

0

0

1

0

0

00257004

addra,ri

0027H

0

0

0

0

1

1

1

0

1

0

1

1

1

0

0

0

0

0

1

1

1

0704E007

0028H

0

0

0

0

0

0

0

1

1

1

0

1

1

1

0

0

0

0

1

0

0

00257004

suba,ri

002FH

0

0

0

0

1

1

1

0

1

0

1

1

1

1

0

0

0

0

1

1

1

1704E007

0030H

0

0

0

0

0

0

0

1

1

1

0

1

1

1

0

0

0

0

1

0

0

00257004

mova,#data8

0037H

0

0

0

0

1

1

1

1

1

1

1

1

1

1

0

0

0

0

1

0

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1