广东海洋大学计算机组成原理课程实习报告.docx

上传人:b****5 文档编号:7994268 上传时间:2023-01-27 格式:DOCX 页数:13 大小:33.58KB
下载 相关 举报
广东海洋大学计算机组成原理课程实习报告.docx_第1页
第1页 / 共13页
广东海洋大学计算机组成原理课程实习报告.docx_第2页
第2页 / 共13页
广东海洋大学计算机组成原理课程实习报告.docx_第3页
第3页 / 共13页
广东海洋大学计算机组成原理课程实习报告.docx_第4页
第4页 / 共13页
广东海洋大学计算机组成原理课程实习报告.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

广东海洋大学计算机组成原理课程实习报告.docx

《广东海洋大学计算机组成原理课程实习报告.docx》由会员分享,可在线阅读,更多相关《广东海洋大学计算机组成原理课程实习报告.docx(13页珍藏版)》请在冰豆网上搜索。

广东海洋大学计算机组成原理课程实习报告.docx

广东海洋大学计算机组成原理课程实习报告

 

本科生课程实习

 

课程题目:

基本模型机的设计与实现

 

课程名称

计算机组成原理

学生姓名

学生学号

所在专业

计算机科学与技术

所在班级

指导教师

职称

成绩

 

目录

1设计任务与要求1

1.1设计目的1

1.2设计内容1

1.3设计要求1

2.1主要使用芯片2

2.2基本原理2

3.1程序流程图3

3.2接线图4

3.3模块功能5

4.1测试过程6

4.2测试结果7

 

题目

1设计任务与要求

设计目的

综合运用所学过的计算机原理知识,设计并实现用微程序控制器控制模型机的数据通路,掌握运用计算机原理知识解决问题和设计指令程序的能力。

1.2设计内容

通过自己设计微指令,同时设计了7条机器指令:

IN(输入)、ADD(相加)、AND(逻辑与)、STA(存数)、SUB(相减)、NOT(取反)、JMP(无条件转移),然后输入数据来验证这些操作。

1.3设计要求

设计一个完整的程序,程序至少有IN,ADD,STA,OUT,JMP等指令,在此的基础上再多几条指令,使它完成更多的功能。

2设计思想

2.1主要使用芯片

74181算术运算器ALU、74374寄存器堆R0、74161程序计数器、74273地址寄存器AR、74273指令寄存器IR。

2.2基本原理

A.微程序控制的基本思想:

1.若干微命令编制成一条微指令,控制实现一步操作;

2.若干微指令组成一段微程序,解释执行一条机器指令;

3.微程序事先存放在控制存储器中,执行机器指令时再取出。

B.基本组成:

控制存储器,微指令寄存器,微地址寄存器,地址转移逻辑

控制存储器(CM):

用来存放实现全部指令系统的微程序,位于CPU中。

它是一种只读型存储器,要求速度快,读出周期短

微指令寄存器:

存放当前由控制存储器读出的一条微指令信息,分为微地址寄存器和微命令寄存器两个部分。

其中微地址寄存器决定将要访问的下一条微指令的地址,微命令寄存器则保存一条微指令的操作控制字段和判别测试字段(P)的信息

地址转移逻辑:

自动完成修改微地址的任务。

微程序控制器:

微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。

它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。

这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。

微程序存储在一种专用的存储器中,称为控制存储器.

C.微程序控制计算机的工作过程:

下面通过计算机启动、执行程序直到停机的过程,来说明微程序是如何控制计算机工作的:

计算机加电以后,首先由复位信号(Reset)将开机后执行的第一条指令的地址送入PC内,同时将一条"取指"微指令送入微指令寄存器中,并将其他一些有关的状态位或寄存器置于初始状态。

当电压达到稳定值后,自动启动计算机,产生节拍电位和工作脉冲。

为保证计算机正常工作,电路必须保证开机后第一个机器周期信号的完整性,在该CPU周期末,产生开机后第一个工作脉冲。

然后计算机开始执行程序,不断地取出指令、执行指令。

程序可以存放在固定存储器中,也可以利用固化在只读存储器(ROM)中的一小段引导程序,将要执行的程序和数据从外部设备调入主存。

实现各条指令的微程序是存放在微程序控制器中的。

当前正在执行的微指令从微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和数据的传送,并进行相应的处理。

当遇到停机指令或外来停机命令后,应该待当前这条指令执行完毕后再停机或至少在本机器周期结束时停机。

要保证停机后,重新启动计算机能继续工作而且不出现任何错误。

3设计方案

3.1程序流程图

KT控制台

(SW)->BUS

BUS->RAM

00

00

20

KWE(01)KRD(00)RF(11)

212023

2422

01

RAM→BUS

BUS→PC

(DR1)+(DR2)

→R0

SW→R0

RAM→BUS

BUS→IR

PC→AR

PC+1

RP

01

02

P

(1)

10

INADDANDSTASUBNOTJMP

DR1→R0

(DR1)-(DR2)

→R0

R0→BUS

BUS→RAM

DR1^DR2→BUS->R0

10111213141516

030727313540

01

0436

173032

01

05

092533

060137

263401

01

01

01

 

3.2接线图

H24

SIGNALUNIT

SIGNAL

T4

T1

T4

T1

JTUNIT

    

 

R7

.

R0BUS

SE6SWB

SE0SWA

P<1>

P<4>I7

I0

LDGUNIT

SWB

SWA

S3

SNSE6

LDR1SE0

LDR2

ALU_B

P<1>

LDR1P<4>

RS_B

 

CELDIRD

WE

LDAR

LDAD

PC_A

PC_B

 

SW_B

 

MICRC_CDNTRLER

 

S3

R7

CN

LDR1

R0LDR2

ALU_B

 

I7

I0

LDIR

INSUNIT

 

R7LDR0

R0R0_B

 

R7

CE

R0WE

B7LDAR

LDAD

B0PC_B

LDPC

 

SW_B

B7

B0DATAUNIT

 

   

3.3模块功能

IN为单元字长(8位),含义是将数据开关8位数据输入到RO寄存器

ADD为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相加,结果放在R0。

STA为双字长指令。

含义是将R0中的内容存储到以第二字A为地址的内存单元中。

AND为双字长指令。

第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相与,结果放在R0。

SUB为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相减,结果放在R0。

NOT为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容求反,把结果放在R0中。

JMP为双字长指令,执行该指令时,程序无条件转移到第二字所指定的内存单元地址。

 

4测试结果及分析

4.1测试过程

地址(二进制)

内容(二进制)

00000000

IN(00000000)

00000001

ADD(00010000)

00000010

(00110010)

00000011

STA(00110000)

00000100

(00110011)(存数)

00000101

AND(00100000)

00000110

(00110100)

00000111

STA(00110000)

00001000

(00110001)(存数)

00001001

SUB(01000000)

00001010

(00010110)

00001011

STA(00110000)

00001100

(00110111)(存数)

00001101

NOT(01010000)

00001110

STA(00110000)

00001111

(00111000)(存数)

00010000

JMP(01100000)

00010001

(00000000)

00110010(ADD)

(00000001)(ADD)

00110011(ADDSTA)

初始(00000000)(ADD结果存数)

00110100(AND)

(00000010)(AND)

00110101(ANDSTA)

初始(00000000)(AND结果存数)

00011110(SUB)

(00000001)(SUB)

00110111

初始(00000000)(SUB结果存数)

00111000

初始(00000000)(NOT结果存数)

根据实验连线图连接好,使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。

拨动总清开关CLR(0—》1),微地址寄存器清零,此时用“DATAUNIT”单元的8位二进制开关给出要写入RAM区的首地址(00000000),控制台SWB,SWA开关置为“01”,按动显示“010010”,再按动一次“START”,微地址灯显示“010100”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即

完成该条指令的写入。

机器指令的首地址只要第一次输入即可,PC会自动加1,所

以按动START,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。

4.2测试结果

地址(二进制)

内容(二进制)

00000000(IN)

00000010

00110010(ADD)

(00000001)(ADD)

00110011(ADDSTA)

(00000011)(ADD结果存数)

00110100(AND)

(00000010)(AND)

00110101(ANDSTA)

(00000001)(AND结果存数)

00011110(SUB)

(00000001)(SUB)

00110111

(00000000)(SUB结果存数)

00111000

(11111111)(NOT结果存数)

 

5源程序

微地址

S3S2S1S0MCNWECELDPC

A

B

P

UA5…UA0

00

000000011

101

110

100

010000

01

000000011

110

111

000

000010

02

000000000

100

000

001

001000

03

000000000

110

000

000

000100

04

000000000

011

000

000

000101

05

000000010

010

001

000

000110

06

100101010

001

101

000

000001

07

000000000

110

000

000

001111

10

000000010

001

110

000

000001

11

000000011

110

111

000

000011

12

000000011

110

111

000

000111

13

000000011

110

111

000

010111

14

000000011

110

111

000

011001

15

000000011

110

111

000

011101

16

000000011

110

111

000

100000

17

000000000

011

000

000

010101

20

000000011

110

111

000

010010

21

000000011

110

111

000

010100

22

000000000

000

000

000

010000

23

000000010

000

000

000

000001

24

000000100

000

110

000

010001

25

000000010

010

001

000

010110

26

101110010

001

101

000

000001

27

000000000

110

000

000

011000

30

000000100

000

001

000

000001

31

000000000

110

000

000

011010

32

000000000

011

000

000

011011

33

000000010

010

001

000

011100

34

011000010

001

101

000

000001

35

000000000

110

000

000

011110

36

000000010

010

001

000

011111

37

000010010

001

101

000

000001

40

000000001

101

000

000

000001

6总结

通过一周的课程实习,对模型机的设计,微指令是如何设计与运行,机器码又是怎样找到它所对应的微指令,从而实现各种功能,有了更深一步的了解,在实习中提高了与组员共同协作的能力,自己动手操作的能力也得到了很好的提高。

 

本设计的难点在于测试字位P

(1)、P(4)的功能,只要理解了它是怎么实现程序的顺序、分支、循环运行的,以及机器码是怎样找到所对应微指令的入口的,其它的步骤即可迎刃而解。

 

通过这次实践,使我们懂得,只要自己在每一次实践中都能仔细思考,能亲自动手,课程设计中遇到的难点都可以顺利解决。

只有多操作才能从中发现问题,及时解决问题,从而更好的掌握实验的基本原理。

课程设计目的除工作量和设计质量之外,更重要的是认真去对待,通过设计实践对理论知识有了更深刻的认识,并从中学到书本上学不到的知识和实践经验 

参考文献[1].白中英,计算机组成原理(第四版*立体化),科学出版社,2008版[2].白中英,杨春武,冯一兵,计算机硬件基础实验教程,清华大社,2005[3].百中英,杨春武,计算机组成原理题解,题库实验(第三版),科学出版社,2005

 

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

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

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

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